/* v28.27 — البلياردو: ألوان نيون ساطعة وقوية */
.bil-lobby{padding:calc(70px + env(safe-area-inset-top)) 16px 120px;direction:rtl;color:#fff}
.bil-hero{padding:22px 18px;border-radius:24px;background:linear-gradient(135deg,#ff2d87 0%,#ff9100 45%,#ffea00 100%);color:#1a0033;box-shadow:0 14px 40px -10px #ff2d87aa}
.bil-hero span{display:inline-block;padding:4px 12px;border-radius:999px;background:#1a0033;color:#ffea00;font-weight:900;font-size:12px}
.bil-hero h2{margin:10px 0 4px;font-size:26px;font-weight:900}
.bil-hero p{margin:0;font-size:13px;font-weight:700}
.bil-bot-btn{width:100%;margin:14px 0 6px;padding:15px;border:0;border-radius:18px;font-weight:900;font-size:15px;color:#fff;background:linear-gradient(100deg,#00e5ff,#2979ff);box-shadow:0 10px 26px -8px #00e5ffaa;cursor:pointer}
.bil-sec{margin:18px 0 8px;font-size:16px;font-weight:900;color:#ffea00}
.bil-row{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:10px;border-radius:18px;background:#1a0a3a;border:1px solid #ff2d8755}
.bil-row img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none;background:#2a1656;box-shadow:0 0 0 2px #ff2d87}
.bil-row div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.bil-row b{font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bil-row small{font-size:12px;color:#ffffff99}
.bil-row small.on{color:#39ff88;font-weight:800;text-shadow:0 0 8px #39ff88}
.bil-ch{flex:none;padding:9px 14px;border:0;border-radius:999px;font-weight:900;font-size:12px;color:#1a0033;background:linear-gradient(100deg,#ffea00,#39ff88);cursor:pointer}
.bil-none{opacity:.8;font-size:14px;line-height:1.7;text-align:center;margin-top:24px}

/* ساحة اللعب */
.bil-ov{position:fixed;inset:0;z-index:95;direction:rtl;color:#fff;display:flex;flex-direction:column;align-items:center;padding:calc(10px + env(safe-area-inset-top)) 8px 12px;background:radial-gradient(120% 80% at 50% 0%,#5b00c7 0%,#1a0033 55%,#07000f 100%);overflow:hidden}
.bil-top{width:100%;max-width:620px;display:flex;align-items:center;gap:8px}
.bil-pl{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:16px;background:#ffffff12;border:2px solid transparent;transition:box-shadow .2s,border-color .2s}
.bil-pl img{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none;background:#2a1656}
.bil-pl div{min-width:0;display:flex;flex-direction:column}
.bil-pl b{font-size:13px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bil-pl small{font-size:11px;color:#ffffffaa;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bil-pl.turn{border-color:#39ff88;box-shadow:0 0 18px #39ff88aa,inset 0 0 12px #39ff8833}
.bil-vs{font-weight:900;font-size:13px;color:#ffea00;text-shadow:0 0 10px #ffea00}
.bil-x{width:38px;height:38px;border-radius:50%;border:0;background:#ff1744;color:#fff;font-size:22px;font-weight:900;flex:none;box-shadow:0 0 14px #ff1744aa;cursor:pointer}
.bil-status{margin:10px 0 6px;padding:6px 16px;border-radius:999px;font-weight:900;font-size:14px;background:#ffffff14;color:#fff}
.bil-status.mine{background:linear-gradient(100deg,#39ff88,#00e5ff);color:#04110a;box-shadow:0 0 18px #39ff88aa}
.bil-stage{width:100%;display:flex;justify-content:center;align-items:center;flex:1;min-height:0}
.bil-stage canvas{touch-action:none;display:block;border-radius:14px;max-width:100%}
.bil-hint{font-size:12px;color:#ffffffbb;font-weight:700;margin-top:6px;text-align:center}

/* دعوة واردة */
.bil-invite{position:fixed;top:calc(12px + env(safe-area-inset-top));left:8px;right:8px;z-index:200;direction:rtl}
.bil-inv-card{display:flex;align-items:center;gap:10px;padding:12px;border-radius:20px;background:linear-gradient(135deg,#1a0033,#3a0ca3);border:2px solid #ffea00;box-shadow:0 0 26px #ffea00aa;color:#fff}
.bil-inv-card img{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;background:#2a1656}
.bil-inv-card div{flex:1;min-width:0;display:flex;flex-direction:column}
.bil-inv-card b{font-size:14px;font-weight:900}
.bil-inv-card small{font-size:12px;color:#ffea00;font-weight:800}
.bil-inv-btns{display:flex;gap:6px}
.bil-inv-btns button{border:0;border-radius:999px;padding:9px 12px;font-weight:900;font-size:12px;cursor:pointer}
.bil-no{background:#ffffff22;color:#fff}
.bil-yes{background:linear-gradient(100deg,#39ff88,#00e5ff);color:#04110a}

/* نتيجة المباراة */
.bil-res{justify-content:center}
.bil-res-card{width:min(90vw,360px);padding:26px 20px;border-radius:26px;text-align:center;background:linear-gradient(160deg,#ff2d87,#8b5cf6 50%,#00e5ff);box-shadow:0 0 40px #ff2d87aa;color:#fff}
.bil-trophy{font-size:14px;font-weight:900;letter-spacing:.5px;color:#ffea00;text-shadow:0 0 10px #ffea00}
.bil-res-card h3{margin:8px 0 4px;font-size:24px;font-weight:900}
.bil-res-card p{margin:0 0 16px;font-size:20px;font-weight:900}
.bil-res-btns{display:flex;gap:8px}
.bil-res-btns button{flex:1;padding:12px;border:0;border-radius:16px;font-weight:900;font-size:14px;cursor:pointer}
.bil-again{background:#ffea00;color:#1a0033}
.bil-close{background:#1a0033;color:#fff}

/* v28.31 — نقاط الكرات المتبقية أعلى الشاشة */
.bil-dots{display:flex;gap:3px;margin-top:3px;flex-wrap:nowrap}
.bil-dot{display:inline-block;width:10px;height:10px;border-radius:50%;box-shadow:0 0 6px currentColor;border:1px solid #ffffff88}
.bil-dot.gone{opacity:.18;box-shadow:none}
