:root{--navy:#0B192C;--navy2:#16325A;--yellow:#E5A93B;--yellow2:#D6E8F7;--bg:#EEF4FA;--card:#fff;--text:#172033;--muted:#6b768a;--line:#e3e8f0;--ok:#16805d;--bad:#b42318;--shadow:0 12px 32px rgba(11,31,58,.09)}
*{box-sizing:border-box}body{margin:0;font-family:Tahoma,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select{font:inherit}.hidden{display:none!important}
.top{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:14px 20px;position:sticky;top:0;z-index:30;box-shadow:0 8px 24px rgba(11,31,58,.18)}.topin{max-width:1460px;margin:auto;display:flex;align-items:center;gap:14px}.logo{width:62px;height:62px;object-fit:cover;border-radius:50%;border:3px solid var(--yellow);background:#fff}.grow{flex:1}.title{font-weight:900;font-size:22px}.subtitle{opacity:.85;font-size:13px;margin-top:4px}.tbadge{background:var(--yellow);color:var(--navy);font-weight:900;padding:8px 12px;border-radius:999px;font-size:12px}.wrap{max-width:1460px;margin:auto;padding:18px}.nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.nav button,.btn{border:0;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer}.nav button{background:#fff;color:var(--navy);box-shadow:var(--shadow)}.nav button.active,.btn.yellow{background:var(--yellow);color:var(--navy)}.btn.primary{background:var(--navy);color:#fff}.btn.ghost{background:#edf1f6;color:var(--navy)}.btn.bad{background:#fdeceb;color:var(--bad)}.btn:disabled{opacity:.45;cursor:not-allowed}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.c12{grid-column:span 12}.c8{grid-column:span 8}.c6{grid-column:span 6}.c4{grid-column:span 4}.c3{grid-column:span 3}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow)}.h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.h h2,.h h3{margin:0;color:var(--navy)}.hint,.muted{color:var(--muted);font-size:12px}.form{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12px;color:var(--muted);font-weight:800}input,select{width:100%;padding:10px 11px;border:1px solid #d6deea;border-radius:10px;background:#fff}.tabs{display:flex;gap:7px;overflow:auto;margin-bottom:12px}.tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;white-space:nowrap;font-weight:800;color:var(--navy);cursor:pointer}.tabs button.active{background:var(--yellow);border-color:var(--yellow)}.table{overflow:auto;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:right;font-size:13px}th{background:#f7f9fc;color:var(--navy)}.tag{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf2f8;font-size:11px;font-weight:800}.tag.DEF{background:#fff1c7}.tag.MID{background:#e8f6ee}.tag.ATT{background:#fdebec}.tag.GK{background:#e7efff}.teams{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.teamCard{border:1px solid var(--line);border-radius:14px;padding:12px;background:linear-gradient(180deg,#fff,#fbfcff)}.teamCard h3{margin:0 0 8px;color:var(--navy)}.rosters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.roster{border:1px solid var(--line);border-radius:12px;padding:10px}.roster h4{margin:0 0 7px;color:var(--navy)}.roster ul{margin:0;padding-right:18px;line-height:1.85}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.kpi{background:#f5f7fb;padding:8px;border-radius:10px;text-align:center;font-size:11px}.kpi b{display:block;font-size:16px;color:var(--navy)}.rule{background:#EEF5FC;border:1px solid #CFE5F5;border-radius:13px;padding:12px;color:#5a4900;line-height:1.8}.selectGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:430px;overflow:auto}.pickRow{border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;gap:9px;align-items:center;background:#fff}.pickRow input{width:auto}.approvalGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.approval{border:1px solid var(--line);border-radius:12px;padding:10px;text-align:center}.approval.ok{background:#e8f7f0;border-color:#b7e1cf}.approval.wait{background:#F4F9FD}.order{display:flex;gap:7px;flex-wrap:wrap}.order span{background:#eef2f7;padding:8px 10px;border-radius:999px;font-weight:900}.order span:first-child{background:var(--yellow)}.numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.num{aspect-ratio:1;border:2px solid #d8e0eb;background:#fff;border-radius:18px;font-size:34px;font-weight:900;color:var(--navy);cursor:pointer}.num.used{background:#edf1f6;color:#98a2b3}.now{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:15px;padding:14px}.now b{color:var(--yellow);font-size:20px}.qrgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.qrcard{border:1px solid var(--line);border-radius:14px;padding:12px;text-align:center}.qrcard img{width:150px;height:150px;background:#fff;border-radius:8px}.link{direction:ltr;word-break:break-all;font-size:11px;color:var(--muted);margin-top:6px}.msg{padding:10px 12px;border-radius:10px;margin:10px 0;font-weight:800}.msg.ok{background:#e8f7f0;color:#126b50}.msg.bad{background:#fdeceb;color:#9d1c13}.mobileShell{max-width:820px;margin:auto;padding:14px}.captainHead{display:flex;align-items:center;gap:10px;margin-bottom:12px}.captainHead img{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid var(--yellow)}.stickyTeam{position:sticky;top:94px}.bigGroup{font-size:36px;font-weight:900;color:var(--yellow)}.tvWrap{padding:18px;max-width:1600px;margin:auto}.tvHero{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:22px;padding:22px}.tvGroup{font-size:52px;font-weight:900;color:var(--yellow)}.tvTeams{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.tvTeam{background:#fff;color:var(--text);border-radius:16px;padding:14px}.tvTeam h3{color:var(--navy);margin-top:0}.tvNames{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.tvName{background:#fff;color:var(--navy);border-radius:14px;padding:14px;text-align:center;font-weight:900}.toast{position:fixed;left:18px;bottom:18px;background:#101828;color:#fff;padding:12px 14px;border-radius:10px;opacity:0;transform:translateY(8px);transition:.2s;z-index:50}.toast.show{opacity:1;transform:none}
@media(max-width:980px){.c8,.c6,.c4,.c3{grid-column:span 12}.teams,.qrgrid,.tvTeams,.tvNames{grid-template-columns:repeat(2,1fr)}.form{grid-template-columns:repeat(2,1fr)}.rosters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.top{padding:10px}.logo{width:50px;height:50px}.title{font-size:17px}.tbadge{display:none}.wrap,.mobileShell{padding:10px}.form,.teams,.qrgrid,.rosters,.approvalGrid{grid-template-columns:1fr}.numbers{grid-template-columns:repeat(2,1fr)}.selectGrid{grid-template-columns:1fr}.stickyTeam{position:static}.tvTeams,.tvNames{grid-template-columns:1fr 1fr}.tvGroup{font-size:38px}}
/* TV draw-first presentation */
.tvStage{min-height:100vh;padding:16px;background:radial-gradient(circle at 20% 0%,#16325A 0,#0B192C 48%,#071529 100%);color:#fff}.tvMainPanel{max-width:1700px;margin:auto;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.22)}.tvTopLine{display:flex;justify-content:space-between;align-items:center;gap:18px}.tvTournament{color:#dbe6f5;font-size:18px;font-weight:800}.tvProgram{font-size:30px;font-weight:950;margin-top:4px}.tvLive{background:#E5A93B;color:#0B192C;padding:10px 18px;border-radius:999px;font-weight:950;font-size:17px}.tvGroupHeader{display:grid;grid-template-columns:1fr 2fr 2fr;gap:14px;margin-top:22px}.tvGroupHeader>div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:14px 18px;display:flex;flex-direction:column;gap:5px}.tvGroupHeader strong{font-size:31px;color:#fff}.tvGroupHeader>div:first-child strong{font-size:56px;color:#E5A93B;line-height:1}.tvLabel{font-size:15px;color:#cdd9e8;font-weight:800}.tvTurnBox{background:linear-gradient(135deg,rgba(229,169,59,.2),rgba(229,169,59,.06))!important;border-color:rgba(229,169,59,.5)!important}.tvTurnBox strong{color:#E5A93B!important}.tvStatusTitle{text-align:center;font-size:27px;font-weight:950;margin:24px 0 14px;color:#fff}.tvPendingNames{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tvPendingPlayer{background:#fff;color:#0B192C;border-radius:18px;padding:18px;text-align:center;box-shadow:0 10px 28px rgba(0,0,0,.18)}.tvPendingPlayer b{font-size:23px;display:block}.tvPendingPlayer span{display:block;margin-top:7px;color:#69758a;font-weight:800}.tvApprovalStrip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.tvApproval{border-radius:15px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:900}.tvApproval.ok{background:#dff6eb;color:#126b50}.tvApproval.wait{background:#fff4c7;color:#765d00}.tvNotice{margin-top:16px;text-align:center;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:12px 15px;font-weight:800;color:#e4ecf6}.tvNotice.ok{background:rgba(22,128,93,.2);border-color:rgba(63,200,154,.42)}.tvOrder{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.tvOrderItem{background:rgba(255,255,255,.08);border:2px solid transparent;border-radius:16px;padding:11px 12px;display:flex;align-items:center;gap:9px;min-height:64px}.tvOrderItem .seq{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#0B192C;font-weight:950}.tvOrderItem b{font-size:18px}.tvOrderItem small{margin-right:auto;color:#cbd6e6}.tvOrderItem.current{background:#E5A93B;color:#0B192C;border-color:#D6E8F7;transform:scale(1.02)}.tvOrderItem.current small{color:#0B192C}.tvOrderItem.done{opacity:.55}.tvDrawCards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px}.tvDrawCard{min-height:260px;border-radius:24px;background:linear-gradient(160deg,#fff,#e9eef5);color:#0B192C;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.24);border:3px solid transparent}.tvDrawCard:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(229,169,59,.25),transparent 48%);pointer-events:none}.tvDrawNumber{font-size:92px;font-weight:1000;line-height:1;color:#0B192C}.tvHiddenText{margin-top:14px;color:#748196;font-size:17px;font-weight:800}.tvDrawCard.revealed{background:linear-gradient(150deg,#E5A93B,#D6E8F7);border-color:#fff}.tvDrawCard.revealed .tvDrawNumber{position:absolute;left:14px;top:10px;font-size:42px;opacity:.26}.tvReveal{text-align:center;padding:24px 12px;position:relative;z-index:2}.tvRevealTeam{display:inline-block;background:#0B192C;color:#fff;border-radius:999px;padding:7px 12px;font-weight:900;margin-bottom:16px}.tvRevealName{font-size:30px;font-weight:1000;line-height:1.25}.tvRevealPos{font-size:18px;font-weight:900;margin-top:10px;color:#3c4758}.tvLastPick{margin:18px auto 0;max-width:880px;background:#fff;color:#0B192C;border-radius:20px;padding:13px 18px;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:12px;text-align:center}.tvLastPick span{background:#0B192C;color:#fff;padding:7px 10px;border-radius:999px;font-weight:900}.tvLastPick b{color:#766000}.tvLastPick strong{font-size:24px}.tvLastPick small{font-size:15px;color:#6d7888;font-weight:800}.tvLastPick.flash{animation:tvFlash .75s ease}@keyframes tvFlash{0%{transform:scale(.96);box-shadow:0 0 0 rgba(229,169,59,0)}50%{transform:scale(1.025);box-shadow:0 0 0 9px rgba(229,169,59,.22)}100%{transform:scale(1)}}.tvTeamRibbon{max-width:1700px;margin:14px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.tvRibbonTeam{background:#fff;color:#172033;border-radius:18px;padding:12px 14px;min-height:125px}.tvRibbonHead{display:flex;justify-content:space-between;gap:8px;align-items:center;color:#0B192C}.tvRibbonHead b{font-size:18px}.tvRibbonHead span{font-size:12px;color:#6b768a}.tvRibbonCounts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.tvRibbonCounts span{background:#f2f5f9;padding:5px 7px;border-radius:8px;font-size:11px}.tvRibbonPlayers{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.tvRibbonPlayers span{font-size:11px;background:#EEF5FC;color:#5a4900;padding:4px 7px;border-radius:999px}.tvEmpty{text-align:center;padding:70px 20px}.tvEmpty img{width:100px;height:100px;border-radius:50%;border:4px solid #E5A93B}.tvEmpty h1{font-size:44px;margin:18px 0 8px}.tvEmpty p{color:#d8e2ef;font-size:18px}
@media(max-width:1050px){.tvPendingNames,.tvDrawCards,.tvOrder,.tvApprovalStrip,.tvTeamRibbon{grid-template-columns:repeat(2,1fr)}.tvGroupHeader{grid-template-columns:1fr 1fr}.tvGroupHeader>div:last-child{grid-column:1/-1}.tvLastPick{grid-template-columns:1fr 1fr}.tvLastPick strong{grid-column:1/-1}}

/* Full teams showcase on شاشة العرض */
.tvShowcaseGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}.tvShowcaseTeam{background:#fff;color:#172033;border-radius:22px;padding:16px;min-height:560px;box-shadow:0 16px 44px rgba(0,0,0,.22)}.tvShowcaseHead h2{margin:0;color:#0B192C;font-size:26px}.tvShowcaseHead span{display:block;color:#6b768a;font-weight:800;font-size:13px;margin-top:5px}.tvShowcaseCounts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:13px}.tvShowcaseCounts div{background:#EEF4FA;border-radius:10px;text-align:center;padding:8px 4px}.tvShowcaseCounts span{display:block;font-size:11px;color:#6b768a;font-weight:800}.tvShowcaseCounts b{display:block;font-size:21px;color:#0B192C;margin-top:2px}.tvShowcasePlayers{margin-top:12px;display:flex;flex-direction:column;gap:7px}.tvShowcasePlayer{border:1px solid #e3e8f0;border-radius:11px;padding:8px 10px;display:flex;justify-content:space-between;gap:8px;align-items:center}.tvShowcasePlayer b{font-size:13px;color:#0B192C}.tvShowcasePlayer span{font-size:11px;color:#6b768a;font-weight:800}.tvShowcasePlayer.captain{background:#EEF5FC;border-color:#CFE5F5}.tvShowcaseEmpty{color:#6b768a;text-align:center;padding:16px;font-weight:800}@media(max-width:1150px){.tvShowcaseGrid{grid-template-columns:repeat(2,1fr)}.tvShowcaseTeam{min-height:auto}}

.tvOrderStats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.tvOrderStat{background:#fff;border:1px solid #dde5ee;border-radius:16px;padding:14px;text-align:center}.tvOrderStat>b{display:block;font-size:20px;color:#0F2440}.tvOrderStat>span{display:block;color:#66788b;margin:4px 0 10px}.tvOrderStat>div{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.tvOrderStat strong{background:#f4f6f9;border-radius:9px;padding:7px;font-size:14px}@media(max-width:900px){.tvOrderStats{grid-template-columns:repeat(2,1fr)}}

/* v17: وضوح ترتيب القرعة + قرعة التعادل العلنية */
.orderStatsTable th,.orderStatsTable td{text-align:center}.orderStatsTable .seq1{background:#E3EFFA;color:#5a4300}.orderStatsTable .seq2{background:#eaf2ff;color:#16325A}.orderStatsTable .seq3{background:#eaf8f0;color:#176846}.orderStatsTable .seq4{background:#f5edf9;color:#6a3d78}.orderStatsTable thead .seq1,.orderStatsTable thead .seq2,.orderStatsTable thead .seq3,.orderStatsTable thead .seq4{font-weight:950}
.tvOrderStat strong{color:#0F2440!important;border:1px solid #e1e6ee}.tvOrderStat:nth-child(1) strong:nth-child(1),.tvOrderStat:nth-child(2) strong:nth-child(1),.tvOrderStat:nth-child(3) strong:nth-child(1),.tvOrderStat:nth-child(4) strong:nth-child(1){background:#E3EFFA}.tvOrderItem{color:#fff}.tvOrderItem b{color:#fff}.tvOrderItem.current b{color:#0B192C}.tvOrderItem.current .seq{background:#0B192C;color:#fff}
.tieCards{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:12px}.tieCard{min-height:145px;border:2px solid #d5deea;border-radius:18px;background:linear-gradient(155deg,#fff,#eef3f8);color:#0B192C;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 8px 22px rgba(11,31,58,.08)}.tieCard>b{font-size:42px}.tieCard>span{font-weight:800;color:#6b768a;text-align:center}.tieCard.picked{background:linear-gradient(145deg,#E5A93B,#D6E8F7);border-color:#d2ab2e}.tieCard.picked>span{color:#0B192C}.tieCard:disabled{cursor:not-allowed;opacity:.72}
.tvTieTeams{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.tvTieTeams>div{background:#fff;color:#0B192C;border-radius:15px;padding:12px;text-align:center}.tvTieTeams b{display:block;font-size:20px}.tvTieTeams span{display:block;color:#6b768a;font-weight:800;margin-top:3px}.tvTieCards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px}.tvTieCard{min-height:210px;border-radius:22px;background:linear-gradient(155deg,#fff,#e9eef5);color:#0B192C;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-shadow:0 14px 38px rgba(0,0,0,.22);border:3px solid transparent}.tvTieCard>b{font-size:72px;line-height:1}.tvTieCard>span{font-size:17px;font-weight:850;color:#6b768a}.tvTieCard>strong{font-size:27px}.tvTieCard.revealed{background:linear-gradient(150deg,#E5A93B,#D6E8F7);border-color:#fff}.tvTieCard.revealed>span{color:#0B192C}
.tvShuffleArena{position:relative;min-height:330px;margin-top:18px;border-radius:24px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);overflow:hidden}.tvShuffleName{position:absolute;min-width:250px;max-width:36%;padding:18px 24px;border-radius:18px;background:#fff;color:#0B192C;text-align:center;font-size:24px;font-weight:950;box-shadow:0 14px 34px rgba(0,0,0,.24);animation:shuffleFloat 1s ease-in-out infinite alternate}.tvShuffleName.n1{right:7%;top:13%;animation-delay:0s}.tvShuffleName.n2{left:8%;top:18%;animation-delay:.15s}.tvShuffleName.n3{right:26%;bottom:12%;animation-delay:.3s}.tvShuffleName.n4{left:28%;bottom:8%;animation-delay:.45s}@keyframes shuffleFloat{0%{transform:translate3d(-18px,-8px,0) rotate(-2deg) scale(.96);filter:blur(.2px)}100%{transform:translate3d(20px,12px,0) rotate(2deg) scale(1.04);filter:blur(0)}}
.soundEnable{position:fixed;left:18px;bottom:18px;z-index:80;border:0;border-radius:999px;padding:11px 16px;background:#fff;color:#0B192C;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.22);cursor:pointer}.soundEnable.enabled{background:#dff6eb;color:#126b50}
@media(max-width:900px){.tieCards,.tvTieCards,.tvTieTeams{grid-template-columns:repeat(2,1fr)}.tvShuffleName{min-width:190px;font-size:18px;max-width:44%}}

/* v21: شريط الإدارة بعرض كامل + قرعة بصرية وصوتية أوضح */
.nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;width:100%;align-items:stretch}
.nav button,.nav>a{width:100%;display:flex;align-items:center;justify-content:center;text-align:center;min-height:52px;box-sizing:border-box}
@media(max-width:1100px){.nav{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.nav{grid-template-columns:repeat(2,minmax(0,1fr))}}

.tvShuffleArena{perspective:1200px;display:block}
.tvShuffleName{animation:shuffleOrbit 1.05s cubic-bezier(.45,.05,.55,.95) infinite alternate;transform-style:preserve-3d;border:3px solid rgba(229,169,59,.2)}
.tvShuffleName.n1{animation-delay:0s}.tvShuffleName.n2{animation-delay:-.26s}.tvShuffleName.n3{animation-delay:-.52s}.tvShuffleName.n4{animation-delay:-.78s}
@keyframes shuffleOrbit{
  0%{transform:translate3d(-42px,-24px,80px) rotateY(-18deg) rotateZ(-4deg) scale(.9);opacity:.72}
  35%{transform:translate3d(70px,34px,140px) rotateY(20deg) rotateZ(5deg) scale(1.05);opacity:1}
  70%{transform:translate3d(-18px,72px,30px) rotateY(-10deg) rotateZ(2deg) scale(.96);opacity:.88}
  100%{transform:translate3d(58px,-18px,100px) rotateY(16deg) rotateZ(-3deg) scale(1.02);opacity:1}
}
.tvDrawCard{transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.75,.25,1),box-shadow .5s ease}
.tvDrawCard.revealed{animation:cardRevealV21 .72s cubic-bezier(.2,.8,.2,1)}
@keyframes cardRevealV21{0%{transform:rotateY(90deg) scale(.82);opacity:.3}55%{transform:rotateY(-8deg) scale(1.06);opacity:1}100%{transform:rotateY(0) scale(1)}}
.tvTieCard{transform-style:preserve-3d;transition:.35s ease}.tvTieCard.revealed{animation:cardRevealV21 .7s cubic-bezier(.2,.8,.2,1)}
.soundEnable{font-size:15px}.soundEnable:not(.enabled){animation:soundPulse 1.2s ease-in-out infinite}
@keyframes soundPulse{0%,100%{transform:scale(1);box-shadow:0 8px 24px rgba(0,0,0,.22)}50%{transform:scale(1.06);box-shadow:0 0 0 9px rgba(229,169,59,.2)}}
.soundPrompt{position:fixed;inset:0;z-index:75;display:grid;place-items:center;background:rgba(4,14,28,.56);backdrop-filter:blur(3px)}
.soundPrompt>button{border:3px solid #D6E8F7;background:#E5A93B;color:#0B192C;border-radius:24px;padding:22px 32px;font-size:24px;font-weight:1000;cursor:pointer;box-shadow:0 22px 60px rgba(0,0,0,.35)}
.confettiPiece{position:fixed;z-index:100;top:-20px;width:10px;height:18px;border-radius:2px;pointer-events:none;animation:confettiFall 1.35s ease-in forwards}
@keyframes confettiFall{0%{transform:translate3d(0,-10px,0) rotate(0);opacity:1}100%{transform:translate3d(var(--dx),105vh,0) rotate(720deg);opacity:.05}}

/* v22: لا توجد أزرار استعراض فرق مؤقت. شريط الإدارة 8 تبويبات فقط بعرض كامل. */
.nav{grid-template-columns:repeat(8,minmax(0,1fr))!important}

/* ===== V23: مسار قرعة موحّد + وضوح العدالة ===== */
.nav.navV23{grid-template-columns:repeat(7,minmax(0,1fr))!important;position:sticky;top:96px;z-index:20;background:rgba(244,246,250,.96);backdrop-filter:blur(10px);padding:8px 0}
.nav.navV23 button:first-child{background:var(--yellow);color:var(--navy);box-shadow:0 0 0 2px #0B192C inset}
.drawHubHead{position:relative;overflow:hidden}.drawHubHead:after{content:"";position:absolute;inset:auto -80px -110px auto;width:280px;height:280px;border-radius:50%;background:rgba(229,169,59,.12)}
.drawQuick{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.drawSteps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:14px 0}.drawStep{display:flex;align-items:center;gap:8px;padding:10px;border-radius:14px;background:#f3f6fa;border:1px solid #e1e7ef;color:#6b768a}.drawStep span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#dfe6ef;color:#526071;font-weight:950}.drawStep.active{background:#fff4bf;border-color:#E5A93B;color:#0B192C;box-shadow:0 6px 20px rgba(229,169,59,.16)}.drawStep.active span{background:#E5A93B;color:#0B192C}.drawStep.done{background:#e8f7f0;border-color:#b7e1cf;color:#126b50}.drawStep.done span{background:#16805d;color:#fff}.fairnessRule{font-size:14px}.drawBuilder{padding:18px}.drawBuilderGrid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,2.2fr);gap:18px}.drawBuilderGrid>section{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fbfcfe}.stepTitle{display:flex;align-items:center;gap:10px;margin-bottom:12px}.stepTitle>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:20px;font-weight:950}.stepTitle h3{margin:0;color:var(--navy);font-size:21px}.selectionBadge{margin-right:auto;background:#fff1b9;color:#675200;border-radius:999px;padding:7px 11px}.bigTabs{display:grid;grid-template-columns:repeat(2,1fr);overflow:visible}.bigTabs button{font-size:16px;padding:12px}.drawSearch{margin-bottom:10px}.chosenBar{background:#eef7ff;border:1px solid #cfe4f7;border-radius:12px;padding:9px 11px;margin-bottom:10px;color:#23415e}.drawSelectGrid{max-height:480px}.pickRow.chosen{border-color:#E5A93B;background:#fff9de;box-shadow:0 0 0 2px rgba(229,169,59,.15)}.approveGroupBtn{width:100%;margin-top:12px;font-size:17px;padding:13px}.summaryBtn{cursor:pointer;font-weight:900;color:var(--navy);padding:4px 0}.orderStatsTable .seq1,.orderStatsTable td.seq1{background:#fff1a8!important;color:#6a5300!important}.orderStatsTable .seq2,.orderStatsTable td.seq2{background:#dce9ff!important;color:#153c77!important}.orderStatsTable .seq3,.orderStatsTable td.seq3{background:#dff5e9!important;color:#0f6b4a!important}.orderStatsTable .seq4,.orderStatsTable td.seq4{background:#f1e4f7!important;color:#6a2e7d!important}.orderStatsTable td b{font-size:18px}.orderStatsTable th{font-size:14px}

/* شاشة العرض: خلط أوضح وحماسي */
.tvShuffleArena{min-height:390px;background:radial-gradient(circle at center,rgba(229,169,59,.14),rgba(255,255,255,.045));border:2px solid rgba(229,169,59,.24)}
.tvShuffleName{min-width:290px;padding:22px 28px;font-size:27px;border:3px solid rgba(229,169,59,.45);box-shadow:0 20px 55px rgba(0,0,0,.34);animation:shuffleV23 1.05s cubic-bezier(.45,.05,.55,.95) infinite alternate!important}
.tvShuffleName.n1{right:5%;top:8%}.tvShuffleName.n2{left:6%;top:16%}.tvShuffleName.n3{right:25%;bottom:11%}.tvShuffleName.n4{left:25%;bottom:7%}
@keyframes shuffleV23{0%{transform:translate3d(-70px,-20px,40px) rotateY(-15deg) rotateZ(-4deg) scale(.9);opacity:.82}35%{transform:translate3d(65px,34px,110px) rotateY(20deg) rotateZ(5deg) scale(1.08);opacity:1}70%{transform:translate3d(-25px,65px,20px) rotateY(-8deg) rotateZ(2deg) scale(.97)}100%{transform:translate3d(80px,-48px,85px) rotateY(14deg) rotateZ(-3deg) scale(1.04);opacity:.9}}
.tvDrawCard:not(.revealed){animation:idleCardV23 2.3s ease-in-out infinite alternate}.tvDrawCard:nth-child(2){animation-delay:-.5s}.tvDrawCard:nth-child(3){animation-delay:-1s}.tvDrawCard:nth-child(4){animation-delay:-1.5s}@keyframes idleCardV23{from{transform:translateY(0) rotateX(0deg)}to{transform:translateY(-7px) rotateX(2deg)}}

@media(max-width:1050px){.nav.navV23{grid-template-columns:repeat(4,minmax(0,1fr))!important;top:88px}.drawBuilderGrid{grid-template-columns:1fr}.drawSteps{grid-template-columns:repeat(5,minmax(130px,1fr));overflow:auto}.drawQuick{justify-content:flex-start}}
@media(max-width:640px){.nav.navV23{grid-template-columns:repeat(2,minmax(0,1fr))!important;position:static}.drawSteps{grid-template-columns:1fr 1fr}.drawStep:last-child{grid-column:1/-1}.bigTabs{grid-template-columns:1fr 1fr}.tvShuffleName{min-width:180px;font-size:18px}}

/* ===== V25: ميزان العدالة يحسب المجموعات المكتملة فقط ===== */
.fairnessInfo{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-radius:12px;padding:10px 12px;margin:0 0 10px;font-size:13px}
.fairnessInfo.ok{background:#e9f7ef;border:1px solid #b9e3ca;color:#126b50}
.fairnessInfo.warn{background:#fff1e8;border:1px solid #f2c5ae;color:#9a3d1c}
.fairnessInfo span{font-weight:700;opacity:.9}

/* ===== V26 Mobile-first overhaul + tournament/match/media ===== */
:root{--navy:#0B192C;--navy2:#16325A;--yellow:#E5A93B;--bg:#eef2f7;--card:#fff;--line:#dce4ee;--muted:#6b768a;--ok:#0f9d68;--bad:#d73b3e;--orange:#f49b18}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{overflow-x:hidden;background:var(--bg)}img{max-width:100%}.wrap,.mobileShell,.publicShell{width:min(100%,1680px);margin:auto;padding:14px}.topin{padding-inline:14px}.top .title{font-size:clamp(18px,2vw,32px)}
.nav.navV26{display:grid!important;grid-template-columns:repeat(11,minmax(0,1fr))!important;gap:8px;position:sticky;top:0;z-index:60;background:rgba(238,242,247,.96);backdrop-filter:blur(12px);padding:10px 0;margin-bottom:12px}.nav.navV26>*{min-width:0!important;min-height:48px!important;font-size:14px!important;padding:8px 10px!important;white-space:normal!important;line-height:1.25}
@media(max-width:1280px){.nav.navV26{grid-template-columns:repeat(6,minmax(0,1fr))!important}}
@media(max-width:760px){.wrap,.mobileShell,.publicShell{padding:8px}.topin{padding:8px 10px}.tbadge{display:none}.logo{width:54px;height:54px}.nav.navV26{position:static;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px}.nav.navV26>*{min-height:46px!important;font-size:13px!important}.grid{display:block!important}.card{margin-bottom:10px;border-radius:18px!important;padding:14px!important}.h{align-items:flex-start;gap:8px;flex-wrap:wrap}.h h2{font-size:20px}.form{grid-template-columns:1fr!important}.kpis{grid-template-columns:repeat(2,1fr)!important}.teams{grid-template-columns:1fr!important}.drawBuilderGrid{display:block!important}.drawBuilderGrid>section{margin-bottom:10px}.drawSteps{display:grid!important;grid-template-columns:1fr 1fr!important;overflow:visible!important}.drawStep:last-child{grid-column:1/-1}.tabs{overflow-x:auto;display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;scroll-snap-type:x proximity}.tabs button{flex:0 0 auto;scroll-snap-align:start}.table{overflow-x:auto;-webkit-overflow-scrolling:touch}.table table{min-width:760px}.captainGrid{display:block!important}.stickyTeam{position:static!important}}

/* Player media */
.photoAdmin{display:flex;align-items:center;gap:5px;min-width:150px}.photoAdmin img,.pickAvatar,.playerMiniAvatar{width:58px;height:58px;object-fit:cover;border-radius:16px;border:2px solid #fff;box-shadow:0 3px 12px rgba(11,31,58,.14)}.iconBtn{width:34px;height:34px;border:0;border-radius:10px;background:#eef3f8;display:inline-grid;place-items:center;cursor:pointer;font-weight:900}.badMini{background:#fde9e9;color:#b82020}.rowActions{display:flex;gap:6px;flex-wrap:wrap}.playersTable input,.playersTable select{min-width:150px}
.playerPickCard{display:grid!important;grid-template-columns:auto 64px 1fr auto;align-items:center;gap:10px;min-height:84px!important;padding:10px!important}.playerPickCard>input{width:22px;height:22px}.playerPickCard .pickAvatar{width:64px;height:64px;border-radius:18px}.playerPickCard .pickInfo{min-width:0}.playerPickCard .pickInfo b{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pickCheck{width:32px;height:32px;border-radius:50%;background:#e8edf4;color:#8b96a8;display:grid;place-items:center;font-weight:1000}.playerPickCard.chosen .pickCheck{background:var(--yellow);color:var(--navy)}
@media(max-width:640px){.selectGrid.drawSelectGrid{grid-template-columns:1fr!important;max-height:none!important}.playerPickCard{grid-template-columns:24px 58px 1fr 32px}.playerPickCard .pickAvatar{width:58px;height:58px}.playersTable{display:block}.playersTable thead{display:none}.playersTable tbody,.playersTable tr,.playersTable td{display:block;width:100%}.playersTable tr{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;margin:10px 0}.playersTable td{border:0!important;padding:5px!important}.playersTable td:first-child{float:right;width:auto}.playersTable input,.playersTable select{width:100%;min-width:0}.photoAdmin{justify-content:flex-start}.rowActions .btn{flex:1}}

/* Tournament & fixtures */
.tournamentCodes{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.codeCard{min-height:130px;border-radius:20px;background:linear-gradient(145deg,#0B192C,#173f70);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 12px 28px rgba(11,31,58,.18)}.codeCard b{font-size:48px;color:var(--yellow)}.codeCard span{font-weight:900}.scheduleSettings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.scheduleSettings label{font-weight:900;color:var(--navy)}.scheduleSettings input{width:100%;margin-top:6px}.fixturesGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fixtureMini{background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:12px}.fixtureMini.live{border-color:#87d5b7;background:#effaf5}.fixtureMini.final{background:#f3f5f8}.fixtureMini>div{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:8px 0}.fixtureMini>div>b:last-child{text-align:left}.fixtureMini strong{font-size:20px;color:var(--navy)}.fixtureMini span{font-size:12px;font-weight:900;color:var(--muted)}
@media(max-width:700px){.tournamentCodes{grid-template-columns:repeat(2,1fr)}.fixturesGrid,.scheduleSettings{grid-template-columns:1fr}}

/* Live match control */
.matchAdminList{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.matchAdminItem{border:1px solid var(--line);border-radius:15px;background:#f8fafc;padding:10px;text-align:right;cursor:pointer}.matchAdminItem.active{border-color:var(--yellow);box-shadow:0 0 0 2px rgba(229,169,59,.25)}.matchAdminItem small,.matchAdminItem span{display:block;color:var(--muted);margin-top:4px}.liveMatchHead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.liveMatchHead h2{margin:4px 0}.liveMatchHead h2 span{color:#fff;background:var(--navy);border-radius:12px;padding:5px 12px}.matchTeamTabs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}.matchTeamTabs>section{background:#f6f8fb;border:1px solid var(--line);border-radius:18px;padding:12px}.eventGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.eventPlayer{background:#fff;border:1px solid var(--line);border-radius:16px;padding:9px;display:grid;grid-template-columns:64px 1fr;gap:9px;align-items:center}.eventPlayer img{width:64px;height:64px;object-fit:cover;border-radius:16px}.eventPlayer small{display:block;color:var(--muted);margin-top:3px}.eventBtns{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.eventBtns button{border:0;border-radius:10px;padding:8px 4px;font-weight:900;cursor:pointer;background:#eaf0f6;color:var(--navy)}.eventBtns .yellowCard{background:#ffe794}.eventBtns .redCard{background:#ffd0d0;color:#8f1111}.pendingEvents{background:#EEF5FC;border:1px solid #f3d56b;border-radius:14px;padding:10px;margin:12px 0}.pendingEvents>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:5px 0}.pendingEvents button{border:0;background:#fff;border-radius:8px;padding:5px 9px;cursor:pointer}.countdown{color:#aa5d00}.motmBox{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:15px;padding:12px;border-radius:15px;background:#EEF5FC}.motmBox h3{margin:0 auto 0 0}.motmBox select{min-width:240px}
@media(max-width:1100px){.matchAdminList{grid-template-columns:repeat(2,1fr)}.matchTeamTabs{grid-template-columns:1fr}.eventGrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.matchAdminList,.eventGrid{grid-template-columns:1fr}.eventPlayer{grid-template-columns:58px 1fr}.eventPlayer img{width:58px;height:58px}.liveMatchHead{display:block}.liveMatchHead .rowActions{margin-top:10px}.motmBox{display:grid;grid-template-columns:1fr}.motmBox h3{margin:0}.motmBox select{min-width:0;width:100%}}

/* Media library */
.mediaPlayers{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.mediaPlayers>div{background:#f8fafc;border:1px solid var(--line);border-radius:15px;padding:8px;text-align:center}.mediaPlayers img{width:86px;height:86px;object-fit:cover;border-radius:20px;display:block;margin:auto}.mediaPlayers span{display:block;font-size:12px;font-weight:900;margin-top:6px}.bannerUpload{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin:12px 0}.bannerGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bannerGrid article{border:1px solid var(--line);border-radius:16px;padding:9px}.bannerGrid img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px}.bannerGrid b{display:block;margin:7px 0}
@media(max-width:900px){.mediaPlayers{grid-template-columns:repeat(4,1fr)}.bannerGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.mediaPlayers{grid-template-columns:repeat(3,1fr)}.bannerUpload,.bannerGrid{grid-template-columns:1fr}}

/* Captain tournament draw + roster */
.tournamentDrawCard{margin-bottom:12px}.captainTournamentCards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.captainTournamentCards button{min-height:120px;border:2px solid #dbe3ed;border-radius:18px;background:linear-gradient(145deg,#fff,#edf2f7);color:var(--navy);cursor:pointer;box-shadow:0 8px 20px rgba(11,31,58,.09)}.captainTournamentCards b{display:block;font-size:34px}.captainTournamentCards span{font-weight:900}.tournamentCode{font-size:42px;background:var(--yellow);color:var(--navy);width:74px;height:74px;border-radius:20px;display:grid;place-items:center;font-weight:1000}.captainRosterList{margin-top:10px}.captainRosterRow{display:grid;grid-template-columns:48px 1fr;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line)}.captainRosterRow img{width:48px;height:48px;object-fit:cover;border-radius:14px}.captainRosterRow small{display:block;color:var(--muted);margin-top:2px}
@media(max-width:600px){.captainTournamentCards{grid-template-columns:repeat(2,1fr)}}

/* Public audience */
.publicShell{max-width:1280px}.publicHero{background:#0B192C;border-radius:24px;overflow:hidden;color:#fff;box-shadow:0 16px 42px rgba(11,31,58,.16)}.liveTicker{height:42px;background:#06152b;border-bottom:2px solid var(--yellow);overflow:hidden;display:flex;align-items:center;white-space:nowrap}.liveTicker span{display:inline-block;min-width:100%;animation:tickerMove 24s linear infinite;font-weight:900;padding-inline:20px}@keyframes tickerMove{from{transform:translateX(-100%)}to{transform:translateX(100%)}}.heroSlider{height:360px;position:relative;overflow:hidden}.heroImage{width:100%;height:100%;object-fit:cover}.heroShade{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78));padding:70px 30px 25px;font-size:30px}.heroFallback{height:100%;display:flex;align-items:center;justify-content:center;gap:25px;background:radial-gradient(circle at 30% 20%,#1c5a99,#0B192C 62%)}.heroFallback img{width:120px;height:120px;border-radius:50%}.publicTabs{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.1)}.publicTabs button,.publicTabs a{border:0;background:#0f315d;color:#fff;padding:14px;text-align:center;font-weight:900;text-decoration:none;cursor:pointer}.publicTabs .active{background:var(--yellow);color:var(--navy)}.publicContent{background:#fff;margin-top:14px;border-radius:22px;padding:18px}.publicMatch{border:1px solid var(--line);border-radius:18px;padding:12px;margin:10px 0}.publicMatch.live{border-color:#4fc18f;background:#effbf6}.matchMeta{display:flex;justify-content:space-between;color:var(--muted);font-size:13px}.matchSides{display:grid;grid-template-columns:1fr auto 1fr;gap:15px;align-items:center;text-align:center;margin-top:10px}.matchSides strong{font-size:30px;color:var(--navy)}.liveClock{text-align:center;color:#0a8c5d;font-weight:900;margin-top:7px}.scorerGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.scorerCard{display:grid;grid-template-columns:auto 58px 1fr auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:16px;padding:8px}.scorerCard>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:900}.scorerCard img{width:58px;height:58px;object-fit:cover;border-radius:16px}.scorerCard small{display:block;color:var(--muted)}.scorerCard>strong{font-size:28px;color:var(--navy)}
@media(max-width:700px){.heroSlider{height:240px}.publicTabs{grid-template-columns:repeat(2,1fr)}.publicTabs>*:last-child{grid-column:1/-1}.scorerGrid{grid-template-columns:1fr}.heroFallback{gap:12px;padding:20px}.heroFallback img{width:74px;height:74px}.heroFallback h1{font-size:22px}.heroShade{font-size:20px;padding:50px 18px 18px}}
.tvPendingMedia{display:grid!important;grid-template-columns:76px 1fr;gap:12px;align-items:center;text-align:right!important}.tvPendingMedia img{width:76px;height:76px;object-fit:cover;border-radius:18px}.tvPendingMedia span{display:block;color:#6b768a;margin-top:4px}.tvRevealPhoto{width:100px;height:100px;object-fit:cover;border-radius:24px;border:3px solid #fff;margin:0 auto 8px;box-shadow:0 10px 24px rgba(0,0,0,.22)}.tvShuffleName{display:flex!important;align-items:center;justify-content:center;gap:12px}.tvShuffleName img{width:66px;height:66px;object-fit:cover;border-radius:18px}.tvShuffleName span{display:block}
@media(max-width:700px){.tvPendingMedia{grid-template-columns:56px 1fr}.tvPendingMedia img{width:56px;height:56px}.tvShuffleName img{width:46px;height:46px}.tvRevealPhoto{width:76px;height:76px}}
.teamLogoAdmin{display:grid;grid-template-columns:76px 1fr 1fr;gap:7px;align-items:center;margin-top:9px}.teamLogoAdmin img{width:76px;height:76px;object-fit:cover;border-radius:18px;border:1px solid var(--line)}@media(max-width:560px){.teamLogoAdmin{grid-template-columns:64px 1fr}.teamLogoAdmin img{width:64px;height:64px}.teamLogoAdmin .yellow{grid-column:2}}
html,body{max-width:100%;overflow-x:hidden}.wrap,.mobileShell,.publicShell,.tvStage{max-width:100vw;overflow-x:clip}.card,.grid>*,.drawBuilderGrid>*,.teamCard{min-width:0}.nav.navV26{top:92px}.drawQuick{max-width:100%}.drawQuick .btn,.drawQuick a{flex:1 1 150px}.selectGrid{width:100%}
@media(max-width:760px){.top{position:relative!important}.nav.navV26{top:auto!important}.drawQuick{display:grid!important;grid-template-columns:1fr 1fr}.drawQuick>*{width:100%!important;min-width:0!important}.drawQuick>*:last-child:nth-child(odd){grid-column:1/-1}.rule{font-size:13px;line-height:1.7}.tvStage{padding:6px}.tvMainPanel{padding:12px;border-radius:18px}.tvGroupHeader{grid-template-columns:1fr!important}.tvPendingNames,.tvApprovalStrip,.tvOrder,.tvDrawCards{grid-template-columns:repeat(2,1fr)!important}.tvProgram{font-size:20px}.tvTournament{font-size:13px}.tvLive{font-size:12px;padding:7px 10px}.tvTopLine{align-items:flex-start}.tvGroupHeader strong{font-size:21px!important}.tvGroupHeader>div:first-child strong{font-size:34px!important}}
.nominationTools{display:grid;grid-template-columns:1fr auto;gap:8px;margin:12px 0}.eventHistory{margin:12px 0;border:1px solid var(--line);border-radius:14px;padding:10px;background:#f9fbfd}.eventHistory summary{cursor:pointer;font-weight:900;color:var(--navy)}.eventHistory>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--line)}.eventHistory button{border:0;border-radius:8px;background:#fde8e8;color:#a52222;padding:6px 9px;cursor:pointer;font-weight:800}@media(max-width:600px){.nominationTools{grid-template-columns:1fr}.eventHistory>div{align-items:flex-start;flex-direction:column}}
.matchSideSwitch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.matchSideSwitch button{border:1px solid var(--line);border-radius:14px;background:#eef3f8;color:var(--navy);padding:12px;font-weight:950;cursor:pointer}.matchSideSwitch button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.eventGrid.singleTeam{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1050px){.eventGrid.singleTeam{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.eventGrid.singleTeam{grid-template-columns:1fr}}

/* V27 updater — mobile-first */
.updateDrop{border:2px dashed #b9c7d8;border-radius:18px;background:#f8fafc;padding:22px 16px;text-align:center;cursor:pointer;transition:.18s;margin-top:16px;outline:none}.updateDrop:hover,.updateDrop:focus,.updateDrop.drag{border-color:#D49A30;background:#F4F9FD;box-shadow:0 0 0 4px rgba(212,167,44,.12)}.updateDrop.hasFile{border-style:solid;border-color:#2da36b;background:#f0fbf6}.updateIcon{font-size:30px;margin-bottom:6px}.updateDrop strong{display:block;color:var(--navy);font-size:18px}.updateDrop span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.selectedFile{margin:12px auto 0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;max-width:620px;overflow-wrap:anywhere;font-weight:800;color:var(--navy)}.updateActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.updateActions .btn{min-width:180px}.updateProgressWrap{margin-top:14px}.updateProgress{height:12px;background:#e8edf4;border-radius:999px;overflow:hidden}.updateProgress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#D49A30,#f1d77a);transition:width .18s}.updateFallback{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.updateFallback summary{cursor:pointer;color:var(--muted);font-weight:800}.updateCard code{overflow-wrap:anywhere}@media(max-width:600px){.updateDrop{padding:22px 12px}.updateDrop strong{font-size:16px}.updateActions{display:grid;grid-template-columns:1fr}.updateActions .btn{width:100%;min-width:0}}


/* V28 — mobile interaction hardening */
button,.btn,.nav a,.tabs button,.matchAdminItem,.matchSideSwitch button,.eventBtns button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button,.btn,.nav a{ -webkit-user-select:none; user-select:none }
.nav.navV26>*{position:relative;pointer-events:auto!important}
@media(max-width:760px){
  .nav.navV26>*{min-height:54px!important;font-size:15px!important}
  .nav.navV26 button,.nav.navV26 a{display:flex!important;align-items:center;justify-content:center}
  button,.btn{min-height:46px}
  .rowActions{gap:8px}
  .rowActions>.btn,.rowActions>button,.rowActions>a{min-height:46px}
}

/* V31 additions — no new main navigation tabs */
.committeeLoginWrap{max-width:560px;margin-inline:auto}.committeeLoginCard{margin-top:24px}.committeeTop{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.committeeTop h2,.votePage h2{margin:0}.committeeManage{display:grid;gap:12px}.committeeMembers{display:grid;gap:8px;margin-top:12px}.committeeMember{display:grid;grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line,#dfe5ec);border-radius:14px;background:#fff}.checkLine{display:flex;gap:8px;align-items:center;padding:8px 0}.cardPreset{min-height:42px;border-radius:10px;padding:0 10px}.voteControl{margin-top:18px;padding:14px;border:1px solid rgba(212,167,44,.32);border-radius:16px;background:rgba(212,167,44,.06)}.voteQr{display:flex;align-items:center;gap:16px;margin-top:12px}.voteQr img{width:180px;max-width:42vw;background:#fff;padding:8px;border-radius:14px}.miniVoteResults{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:7px;margin-top:12px}.miniVoteResults span{padding:7px 9px;border-radius:10px;background:#fff}.votePage{max-width:760px;margin-inline:auto}.voteMatchHead{text-align:center;margin-bottom:16px}.voteTeamBlock{margin:18px 0}.votePlayers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.votePlayer{display:flex;align-items:center;gap:10px;text-align:right;border:1px solid #dce3eb;border-radius:14px;background:#fff;padding:10px;min-height:78px}.votePlayer.featured{border-color:#D49A30;background:linear-gradient(135deg,#fff,#fff9e6)}.votePlayer img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}.votePlayer div{display:grid;gap:2px}.votePlayer small{color:#637083}.voteTeamBlock details{margin-top:10px}.voteTeamBlock summary{cursor:pointer;font-weight:700;padding:8px 0}.publicArchive{margin-top:22px}.publicArchive summary{font-weight:800;cursor:pointer}.archiveGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:12px}.archiveGrid a{text-decoration:none;color:inherit;display:grid;gap:6px}.archiveGrid img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px}.msg.warn{background:#fff7df;color:#765a00;border:1px solid #efd88b}.msg.ok{background:#edf9f1;color:#1f6d3d;border:1px solid #b8e3c6}
@media(max-width:720px){.committeeTop{align-items:flex-start;flex-direction:column}.committeeMember{grid-template-columns:1fr}.votePlayers{grid-template-columns:1fr}.voteQr{align-items:flex-start;flex-direction:column}.eventBtns{grid-template-columns:repeat(2,minmax(0,1fr))}.cardPreset{width:100%}}

/* ===== V34: approved regulation ticker, no extra main tabs ===== */
.rulesBoard{overflow:hidden}.rulesTickerHead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.rulesTickerHead>div{display:grid;gap:3px}.rulesTickerHead b{color:var(--navy);font-size:17px}.rulesTickerHead span{color:var(--muted);font-size:12px}.rulesTickerLine{margin-top:12px;display:grid;grid-template-columns:minmax(170px,.45fr) minmax(0,1.55fr);gap:12px;align-items:center;border:1px solid rgba(212,167,44,.35);background:linear-gradient(135deg,#F4F9FD,#fff);border-radius:14px;padding:12px 14px;min-height:78px}.rulesTickerLine strong{color:var(--navy);font-size:14px}.rulesTickerLine span{color:#39485c;line-height:1.75;font-weight:700}.rulesDetails{margin-top:10px}.rulesDetails>summary{cursor:pointer;font-weight:900;color:var(--navy);padding:7px 0}.rulesArticles{display:grid;gap:10px;margin-top:10px}.rulesArticles article{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfcfe}.rulesArticles h3{margin:0 0 3px;font-size:16px;color:var(--navy)}.rulesArticles small{color:var(--muted)}.rulesArticles ol{margin:8px 0 0;padding-right:22px;line-height:1.8}.publicRuleTicker{display:grid;grid-template-columns:minmax(160px,.42fr) minmax(0,1.58fr);gap:10px;align-items:center;background:#fff7d8;color:#0B192C;border-top:1px solid rgba(11,31,58,.08);padding:10px 14px;min-height:62px}.publicRuleTicker b{font-size:13px}.publicRuleTicker span{font-size:13px;line-height:1.65;font-weight:700;color:#33445b}
@media(max-width:700px){.rulesTickerLine,.publicRuleTicker{grid-template-columns:1fr}.rulesTickerLine{min-height:94px}.rulesTickerHead .tag{width:auto}.rulesArticles article{padding:10px}}

/* V35: fixed tournament blueprint + committee personal access */
.scheduleFixedInfo{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.scheduleFixedInfo span{background:#f7f9fc;border:1px solid var(--line);border-radius:14px;padding:11px 12px;color:var(--navy);font-size:13px}.blueprintSchedule{display:grid;gap:14px}.blueprintRound{border:1px solid var(--line);border-radius:18px;padding:12px;background:#fbfcfe}.blueprintRound h3{margin:0 0 10px;color:var(--navy)}.blueprintMatch{display:grid;grid-template-columns:180px 1fr;gap:12px;align-items:center;padding:10px 0;border-top:1px dashed #dfe5ec}.blueprintMatch:first-of-type{border-top:0}.blueprintMeta{display:flex;gap:8px;align-items:center;justify-content:flex-start;color:var(--muted);font-size:12px}.blueprintMeta b{color:var(--gold,#B07F22);font-size:15px}.blueprintSides{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;font-weight:900}.blueprintSides span:last-child{text-align:left}.blueprintSides strong{color:var(--gold,#B07F22)}
.committeeMemberAccess{grid-template-columns:1fr!important}.committeeIdentity{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:center}.committeeIdentity img{width:96px;height:96px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px}.committeeIdentity>div{display:grid;gap:4px;min-width:0}.committeeIdentity .link{direction:ltr;text-align:left;overflow-wrap:anywhere;font-size:12px;color:var(--muted)}
@media(max-width:720px){.scheduleFixedInfo{grid-template-columns:1fr 1fr}.blueprintMatch{grid-template-columns:1fr}.blueprintMeta{justify-content:space-between}.committeeIdentity{grid-template-columns:76px 1fr}.committeeIdentity img{width:76px;height:76px}}

/* V36: فصل إدارة البطولة عن إدارة القرعة بدون زحمة تبويبات */
.adminModeSwitch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 8px}
.adminModeSwitch button{border:1px solid #d7e0ea;background:#fff;color:#0b2345;border-radius:18px;padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:74px;font:inherit}
.adminModeSwitch button b{font-size:19px}.adminModeSwitch button span{font-size:12px;color:#718096}
.adminModeSwitch button.active{background:#0F2440;color:#fff;border-color:#0F2440;box-shadow:0 8px 22px rgba(11,39,77,.16)}
.adminModeSwitch button.active span{color:#e7edf5}
.adminAreaNote{background:#fff8dd;border:1px solid #efd681;color:#6d5713;border-radius:12px;padding:9px 12px;margin:0 0 10px;text-align:center;font-size:13px}
.navV36{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:8px}
.navV36 [hidden]{display:none!important}.navV36 button{min-height:48px}.adminUtilities{display:flex;gap:8px;justify-content:flex-start;flex-wrap:wrap;margin:0 0 14px}.adminUtilities .btn{min-width:110px}
.tournamentSummary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.tournamentSummary>div{background:#f6f8fb;border:1px solid #e0e6ee;border-radius:14px;padding:14px;text-align:center}.tournamentSummary b{display:block;font-size:24px;color:#0F2440}.tournamentSummary span{font-size:12px;color:#6f7f94}
.scheduleEditor{margin-top:16px;border:1px solid #dbe3ed;border-radius:14px;padding:12px;background:#f8fafc}.scheduleEditor>summary{cursor:pointer;font-weight:800;color:#0F2440}.scheduleEditRows{display:grid;gap:10px;margin-top:12px}.scheduleEditRow{display:grid;grid-template-columns:110px 1.8fr 130px 145px 110px 1fr 1fr;gap:8px;align-items:center;padding:10px;background:#fff;border:1px solid #e2e8f0;border-radius:12px}.scheduleEditRow input{width:100%;min-width:0}.optionalSection>summary{cursor:pointer;font-weight:800;font-size:18px;color:#0F2440}
.blueprintMatch .blueprintNo{background:#0F2440;color:#fff;border-radius:999px;padding:4px 8px;font-size:12px}
@media(max-width:800px){.adminModeSwitch{grid-template-columns:1fr 1fr}.adminModeSwitch button{padding:11px 8px;min-height:68px}.adminModeSwitch button b{font-size:16px}.adminModeSwitch button span{font-size:10px}.navV36{grid-template-columns:repeat(2,minmax(0,1fr))!important}.adminUtilities{display:grid;grid-template-columns:repeat(3,1fr)}.adminUtilities .btn{min-width:0;padding:10px 6px;font-size:13px}.tournamentSummary{grid-template-columns:repeat(2,1fr)}.scheduleEditRow{grid-template-columns:1fr 1fr}.scheduleEditRow>b{grid-column:1/-1}.scheduleEditRow input[id^="schLabel"]{grid-column:1/-1}.scheduleFixedInfo{display:grid!important;grid-template-columns:1fr!important}.committeeIdentity{align-items:flex-start}.committeeIdentity img,.qrcard img{max-width:220px;height:auto}}

/* =====================================================================
   قدامى البطولة 1 — طبقة الهوية البصرية الرسمية
   الكحلي الملكي • السماوي البارد • الثلجي • الأبيض • لمسات ذهبية فقط
   ===================================================================== */
:root{
 --navy:#0B192C;--navy2:#13294B;--navy-deep:#08131F;--navy-soft:#0D1B2A;
 --sky:#3A86C8;--sky2:#4A90E2;--ice:#D6E8F7;--ice2:#CFE5F5;--ice-soft:#EAF3FB;
 --gold:#E5A93B;--gold2:#D49A30;--yellow:#E5A93B;--yellow2:#D6E8F7;
 --bg:#EEF4FA;--card:#fff;--text:#0D1B2A;--muted:#5B6B82;--line:#DCE7F2;
 --ok:#12805C;--bad:#C2342F;--shadow:0 10px 30px rgba(11,25,44,.08);
 --f-head:"Cairo","Almarai",Tahoma,Arial,sans-serif;--f-body:"Almarai","Cairo",Tahoma,Arial,sans-serif;--f-en:"Montserrat","Barlow Semi Condensed",Arial,sans-serif;
}
body{font-family:var(--f-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
h1,h2,h3,.title,.tvProgram,.tvGroup{font-family:var(--f-head)}
h2{color:var(--navy)}
a{color:var(--sky)}

/* Header */
.top{background:radial-gradient(120% 160% at 85% -40%,rgba(74,144,226,.35) 0,transparent 55%),linear-gradient(135deg,#0B192C 0%,#0D1B2A 60%,#13294B 100%);border-bottom:2px solid var(--gold);box-shadow:0 8px 26px rgba(8,19,31,.25)}
.topin{max-width:1500px}
.top .logo{border:3px solid var(--ice);box-shadow:0 0 0 3px rgba(74,144,226,.35)}
.top .title{font-family:var(--f-head);font-weight:900;font-size:23px;letter-spacing:.2px}
.top .subtitle{display:flex;gap:8px;align-items:center;flex-wrap:wrap;opacity:1;color:var(--ice);font-size:13px}
.top .sloganAr{font-family:var(--f-head);font-weight:800;color:var(--ice)}
.top .sloganSep{color:var(--gold)}
.top .sloganEn{font-family:var(--f-en);font-weight:700;letter-spacing:2.2px;font-size:11.5px;color:#fff}
.top .tbadge{background:transparent;border:1.5px solid var(--gold);color:#fff;display:flex;align-items:center;gap:6px;padding:6px 12px}
.top .tbadge small{color:var(--ice);font-weight:700;font-size:11px}
.top .tbadge b{color:var(--gold);font-family:var(--f-en);font-size:20px;line-height:1}

/* Cards, buttons, inputs */
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.card h2{font-family:var(--f-head);font-weight:800}
.hint{color:var(--muted)}
.btn{font-family:var(--f-head);font-weight:800;border-radius:12px;transition:transform .12s ease,box-shadow .12s ease,background .12s}
.btn:active{transform:scale(.98)}
.btn.primary{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;box-shadow:0 6px 16px rgba(11,25,44,.18)}
.btn.yellow{background:linear-gradient(135deg,#EDB54C,var(--gold2));color:var(--navy);box-shadow:0 6px 16px rgba(212,154,48,.28)}
.btn.ghost{background:var(--ice-soft);color:var(--navy);border:1px solid var(--ice)}
.btn.sky{background:linear-gradient(135deg,var(--sky2),var(--sky));color:#fff}
.btn.bad{background:#FCECEB;color:var(--bad)}
input,select,textarea{border:1px solid #C9D9EA;border-radius:12px;background:#fff;color:var(--text);font-family:var(--f-body)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--sky);box-shadow:0 0 0 3px rgba(58,134,200,.18)}
.tag{background:var(--ice-soft);color:var(--navy);border:1px solid var(--ice)}
.tabs button{background:var(--ice-soft);color:var(--navy);border:1px solid var(--ice)}
.tabs button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.kpi{background:var(--ice-soft);border:1px solid var(--ice);color:var(--muted)}
.kpi b{color:var(--navy);font-family:var(--f-en)}
.rule{background:var(--ice-soft);border:1px solid var(--ice);border-inline-start:4px solid var(--sky);color:var(--navy)}
.table thead th,table thead th{background:var(--navy);color:#fff;font-family:var(--f-head);font-weight:800}
.table tbody tr:nth-child(even) td{background:#F6FAFD}
.msg.ok{background:#E7F6EF;color:var(--ok)}
.msg.bad{background:#FCECEB;color:var(--bad)}
.toast{background:var(--navy);color:#fff;border:1px solid var(--gold);font-family:var(--f-head)}
.now{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff}
.now b{color:var(--gold)}

/* ===== Admin shell: sidebar + content ===== */
.appShell{display:grid;grid-template-columns:278px minmax(0,1fr);gap:20px;max-width:1500px;margin:auto;padding:18px;align-items:start}
.sideNav{position:sticky;top:100px;max-height:calc(100vh - 116px);overflow:auto;background:linear-gradient(180deg,#0D1B2A,#0B192C);border-radius:22px;padding:14px 12px;color:#fff;box-shadow:0 18px 40px rgba(8,19,31,.22);border:1px solid rgba(214,232,247,.12);scrollbar-width:thin}
.areaSwitch{display:none}
.sideGroup{margin-bottom:12px}
.sideGroupHead{display:flex;align-items:center;gap:8px;padding:8px 10px 10px;color:var(--gold);font-family:var(--f-head);font-weight:800;font-size:13px;letter-spacing:.2px;border-bottom:1px solid rgba(214,232,247,.1);margin-bottom:6px}
.sideGroupHead small{display:block;color:rgba(214,232,247,.55);font-family:var(--f-en);font-size:9.5px;letter-spacing:1.6px;font-weight:700}
.sideGroupHead .ico{width:30px;height:30px;border-radius:10px;background:rgba(229,169,59,.12);display:grid;place-items:center;flex:0 0 auto}
.navItem{display:flex;align-items:center;gap:11px;width:100%;border:0;background:transparent;color:rgba(234,243,251,.82);padding:10px 12px;border-radius:13px;cursor:pointer;font-family:var(--f-head);font-weight:700;font-size:14.5px;text-align:start;position:relative;text-decoration:none;transition:background .15s,color .15s}
.navItem svg{width:20px;height:20px;flex:0 0 auto;stroke:currentColor}
.navItem:hover{background:rgba(214,232,247,.07);color:#fff}
.navItem.active{background:linear-gradient(135deg,rgba(74,144,226,.32),rgba(58,134,200,.16));color:#fff;box-shadow:inset 0 0 0 1px rgba(214,232,247,.18)}
.navItem.active::before{content:"";position:absolute;inset-inline-start:-12px;top:9px;bottom:9px;width:4px;border-radius:0 4px 4px 0;background:var(--gold)}
.navItem.active svg{stroke:var(--gold)}
.sideUtil{border-top:1px solid rgba(214,232,247,.1);padding-top:10px;margin-top:6px;display:grid;gap:2px}
.sideUtil .navItem{font-size:13.5px;color:rgba(214,232,247,.7)}
.sideUtil .navItem.logout{color:#F3A39F}
.sideVersion{color:rgba(214,232,247,.45);font-size:11px;padding:8px 12px 0;font-family:var(--f-en);letter-spacing:.5px}
.appMain{min-width:0}
.appMain>#view>.grid{gap:16px}
.pageHead{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:16px 18px;border-radius:20px;background:linear-gradient(135deg,#fff 0%,var(--ice-soft) 100%);border:1px solid var(--line);box-shadow:var(--shadow)}
.pageHead .phIcon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--navy2),var(--navy));display:grid;place-items:center;flex:0 0 auto;box-shadow:0 8px 18px rgba(11,25,44,.25)}
.pageHead .phIcon svg{width:26px;height:26px;stroke:var(--gold)}
.pageHead .phText{flex:1;min-width:0}
.pageHead .phCrumb{color:var(--sky);font-family:var(--f-head);font-weight:800;font-size:12.5px}
.pageHead h1{margin:2px 0 3px;font-size:25px;font-weight:900;color:var(--navy);line-height:1.25}
.pageHead p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.6}
.pageHead .phActions{display:flex;gap:8px;flex-wrap:wrap}
.sectionLoading{padding:28px;text-align:center}

/* Workflow steps (overview pages) */
.flowSteps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}
.flowStep{border:1px solid var(--line);background:#fff;border-radius:16px;padding:12px;cursor:pointer;text-align:start;font:inherit;color:var(--text);display:grid;gap:5px;transition:border-color .15s,transform .15s}
.flowStep:hover{border-color:var(--sky);transform:translateY(-1px)}
.flowStep .n{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--ice-soft);color:var(--navy);font-family:var(--f-en);font-weight:800;font-size:13px;border:1px solid var(--ice)}
.flowStep b{font-family:var(--f-head);font-size:14px;color:var(--navy)}
.flowStep span{font-size:12px;color:var(--muted)}
.flowStep.done .n{background:var(--ok);color:#fff;border-color:var(--ok)}
.flowStep.current{border-color:var(--gold);box-shadow:0 0 0 3px rgba(229,169,59,.15)}
.flowStep.current .n{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.statRow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.statTile{border-radius:18px;padding:14px 16px;background:linear-gradient(140deg,var(--navy) 0%,var(--navy2) 100%);color:#fff;position:relative;overflow:hidden;border:1px solid rgba(214,232,247,.12)}
.statTile::after{content:"";position:absolute;inset-inline-end:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(74,144,226,.35),transparent 70%)}
.statTile span{display:block;color:var(--ice);font-size:12.5px;font-weight:700}
.statTile b{display:block;font-family:var(--f-en);font-size:30px;font-weight:800;margin-top:4px;line-height:1.1}
.statTile b.gold{color:var(--gold)}
.statTile small{color:rgba(214,232,247,.7);font-size:11.5px}
.nextMatch{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:16px;border-radius:18px;background:radial-gradient(120% 120% at 50% 0,rgba(74,144,226,.28),transparent 60%),linear-gradient(135deg,#0B192C,#13294B);color:#fff}
.nextMatch .side{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.nextMatch .side img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--ice);background:#fff}
.nextMatch .side b{font-family:var(--f-head);font-size:18px}
.nextMatch .mid{text-align:center}
.nextMatch .mid strong{display:block;font-family:var(--f-en);font-size:34px;color:var(--gold);font-weight:900}
.nextMatch .mid small{color:var(--ice);font-size:12px}
.readyBadge{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;font-family:var(--f-head);font-weight:800;font-size:13px}
.readyBadge.ok{background:#E7F6EF;color:var(--ok)}
.readyBadge.wait{background:#FFF4E0;color:#9A6200}
.rosterBoard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.rosterCol{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.rosterCol header{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;padding:12px;display:flex;gap:10px;align-items:center}
.rosterCol header img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--ice);background:#fff}
.rosterCol header b{font-family:var(--f-head);font-size:16px;display:block}
.rosterCol header small{color:var(--ice);font-size:11.5px}
.rosterCol .cnt{display:flex;gap:5px;flex-wrap:wrap;padding:10px 10px 0}
.rosterCol .cnt span{background:var(--ice-soft);border:1px solid var(--ice);border-radius:999px;padding:3px 9px;font-size:11.5px;font-weight:700;color:var(--navy)}
.rosterCol ol{margin:0;padding:10px 30px 12px 12px;font-size:13px;line-height:1.85}
.rosterCol li.cap{color:var(--gold2);font-weight:800}

/* Card studio */
.studio{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:16px;align-items:start}
.studioTypes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.studioType{border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 8px;cursor:pointer;font:inherit;display:grid;justify-items:center;gap:6px;text-align:center;color:var(--navy)}
.studioType svg{width:24px;height:24px;stroke:var(--sky)}
.studioType b{font-family:var(--f-head);font-size:13px}
.studioType small{font-family:var(--f-en);font-size:9.5px;letter-spacing:1px;color:var(--muted)}
.studioType.active{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-color:var(--navy)}
.studioType.active svg{stroke:var(--gold)}
.studioType.active small{color:var(--ice)}
.studioOptions{display:grid;gap:10px;margin-top:12px}
.studioOptions .field label{font-weight:800;font-family:var(--f-head);font-size:13px;color:var(--navy)}
.studioOptions textarea{width:100%;min-height:80px;padding:10px;resize:vertical}
.studioPreview{background:repeating-conic-gradient(#e9f0f7 0 25%,#f5f9fc 0 50%) 0 0/22px 22px;border-radius:18px;border:1px solid var(--line);padding:14px;display:grid;place-items:center;min-height:320px}
.studioPreview canvas{max-width:100%;max-height:78vh;height:auto;border-radius:10px;box-shadow:0 18px 40px rgba(8,19,31,.35)}
.studioActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.brandGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.brandLogo{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:12px}
.brandLogo img{width:72px;height:72px;object-fit:contain;border-radius:14px;background:var(--navy);padding:6px}
.brandLogo .emptyLogo{width:72px;height:72px;border-radius:14px;background:var(--navy);display:grid;place-items:center;color:var(--gold);font-family:var(--f-en);font-weight:900;font-size:30px}
.sponsorList{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sponsorChip{display:flex;align-items:center;gap:8px;background:var(--navy);color:#fff;border-radius:999px;padding:6px 8px 6px 12px;border:1px solid rgba(214,232,247,.25)}
.sponsorChip img{width:28px;height:28px;object-fit:contain;border-radius:50%;background:#fff}
.sponsorChip button{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:50%;width:24px;height:24px;cursor:pointer}
.archiveGrid img{border-radius:12px}

/* QR cards */
.qrcard img,.voteQr img,.committeeIdentity img{background:#fff;border-radius:12px;padding:6px;border:1px solid var(--ice)}
.qrcard h3{font-family:var(--f-head);color:var(--navy)}

/* Score/match UI accents */
.liveMatchHead{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:18px;padding:16px}
.liveMatchHead h2{color:#fff}
.liveMatchHead h2 span{color:var(--gold);font-family:var(--f-en)}
.matchAdminItem.active{border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(229,169,59,.18)}
.codeCard b{color:var(--gold);font-family:var(--f-en)}

/* ===== Responsive admin ===== */
@media(max-width:1180px){.rosterBoard{grid-template-columns:repeat(2,minmax(0,1fr))}.studio{grid-template-columns:1fr}.flowSteps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){
 .appShell{display:block;padding:0 0 18px}
 .sideNav{position:sticky;top:0;z-index:28;max-height:none;overflow:visible;border-radius:0 0 20px 20px;padding:10px 10px 8px;border:0;border-bottom:1px solid rgba(214,232,247,.12)}
 .areaSwitch{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:rgba(214,232,247,.07);padding:4px;border-radius:14px;margin-bottom:8px}
 .areaSwitch button{border:0;border-radius:11px;padding:9px 6px;background:transparent;color:var(--ice);font-family:var(--f-head);font-weight:800;font-size:13.5px;cursor:pointer}
 .areaSwitch button.active{background:var(--gold);color:var(--navy)}
 .sideGroupHead,.sideVersion{display:none}
 .sideNav[data-area="draw"] .sideGroup[data-group="tournament"],.sideNav[data-area="tournament"] .sideGroup[data-group="draw"]{display:none}
 .sideGroup{margin:0}
 .sideGroup nav,.sideUtil{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}
 .sideGroup nav::-webkit-scrollbar,.sideUtil::-webkit-scrollbar{display:none}
 .navItem{flex:0 0 auto;width:auto;flex-direction:column;gap:4px;padding:8px 11px;font-size:12px;min-width:76px;align-items:center;text-align:center;background:rgba(214,232,247,.05)}
 .navItem.active::before{inset-inline-start:auto;left:22%;right:22%;top:auto;bottom:-1px;width:auto;height:3px;border-radius:3px 3px 0 0}
 .sideUtil{border:0;margin-top:6px;padding-top:0}
 .sideUtil .navItem{flex-direction:row;min-width:0;padding:6px 10px;font-size:11.5px}
 .sideUtil .navItem svg{width:15px;height:15px}
 .appMain{padding:12px 10px 0}
 .pageHead{padding:12px;gap:10px}
 .pageHead .phIcon{width:42px;height:42px;border-radius:13px}
 .pageHead h1{font-size:20px}
 .pageHead .phActions{display:none}
 .statRow{grid-template-columns:repeat(2,minmax(0,1fr))}
 .top{position:relative!important}
}
@media(max-width:640px){
 .flowSteps{grid-template-columns:1fr 1fr}
 .rosterBoard,.brandGrid{grid-template-columns:1fr}
 .studioTypes{grid-template-columns:repeat(2,minmax(0,1fr))}
 .nextMatch .side img{width:48px;height:48px}
 .nextMatch .mid strong{font-size:26px}
 .top .sloganEn,.top .sloganSep{display:none}
}
.btn svg{width:18px;height:18px;vertical-align:-4px;margin-inline-end:4px}
.studioActions .btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px}
.checkLine{display:inline-flex;align-items:center;gap:7px;font-weight:700;color:var(--navy)}
.checkLine input{width:18px;height:18px;accent-color:var(--sky)}
.brandLogo .rowActions .btn{padding:8px 14px}
.navItem.mobileOnly{display:none}
@media(max-width:980px){
 .sideUtil{display:none}
 .navItem.mobileOnly{display:flex}
 .navItem.mobileOnly.logout{color:#F3A39F}
}
@media(max-width:640px){
 .top{padding:9px 12px}
 .top .logo{width:46px;height:46px}
 .top .title{font-size:17px}
 .top .subtitle{font-size:11.5px;margin-top:2px}
 .top .tbadge{display:none}
 .areaSwitch button{padding:8px 4px;font-size:13px}
}
.scheduleEditRow.schRow{display:grid;grid-template-columns:110px repeat(6,minmax(0,1fr)) auto;gap:8px;align-items:end}
.schRow label{display:grid;gap:4px;font-size:11.5px;color:var(--muted);font-weight:700}
.schRow input{padding:8px;min-width:0}
.schRow input[readonly]{background:#F3F6FA;color:var(--muted)}
.schRow.locked{opacity:.6}
.schRow .schClear{padding:8px 10px;font-size:12px}
.tbd{color:#9A6200;font-weight:800}
@media(max-width:980px){.scheduleEditRow.schRow{grid-template-columns:1fr 1fr}.scheduleEditRow.schRow>b{grid-column:1/-1}}
/* thanks card: draggable sponsor badges */
.cardStage{position:relative;display:inline-block;max-width:100%;line-height:0;touch-action:none;-webkit-user-select:none;user-select:none}
.studioPreview .cardStage canvas{display:block;max-width:100%;max-height:78vh}
.spLayer{position:absolute;inset:0;direction:ltr;touch-action:none;line-height:normal}
.spGuide{position:absolute;border:2px dashed rgba(214,232,247,.5);border-radius:14px;pointer-events:none;background:rgba(74,144,226,.06)}
.spSlot{position:absolute;transform:translate(-50%,-50%);border:1.5px dashed rgba(229,169,59,.5);border-radius:999px;pointer-events:none;transition:background .12s,border-color .12s}
.spSlot.hot{background:rgba(229,169,59,.18);border-color:#E5A93B}
.spBadge{position:absolute;display:grid;place-items:center;border:1.5px solid rgba(229,169,59,.8);border-radius:999px;background:linear-gradient(180deg,rgba(214,232,247,.18),rgba(214,232,247,.07));color:#fff;font-family:var(--f-head);font-weight:800;white-space:nowrap;overflow:visible;cursor:grab;touch-action:none;box-sizing:border-box;padding:0 6%}
.spBadge::before{content:"";position:absolute;inset:-12px}
.spBadge img{max-width:100%;max-height:72%;object-fit:contain;pointer-events:none}
.spBadge span{max-width:100%;pointer-events:none}
.spBadge.drag{cursor:grabbing;box-shadow:0 0 0 3px rgba(74,144,226,.45),0 10px 24px rgba(0,0,0,.35)}
.spBadge.sel{outline:2px dashed #D6E8F7;outline-offset:5px}
.spBadge i{display:none;position:absolute;width:24px;height:24px;border-radius:50%;background:#fff;color:#0B192C;border:2px solid #3A86C8;font-style:normal;font-size:14px;line-height:20px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.35)}
.spBadge.sel i{display:block}
.spBadge i svg{width:14px;height:14px;margin-top:3px}
.spBadge .spMove{left:50%;top:-34px;transform:translateX(-50%);pointer-events:none;background:#E5A93B;border-color:#fff}
.spBadge .spRotate{right:-30px;top:50%;transform:translateY(-50%);cursor:alias}
.spBadge .spResize{left:-30px;bottom:-26px;cursor:nwse-resize}
.spTools{margin-top:10px;display:grid;gap:8px}
.spBtns{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.spBtns b{font-family:var(--f-head);color:var(--navy);margin-inline-end:6px}
.spBtns .btn{padding:7px 11px;font-size:13px}
.testTag{font-style:normal;background:#FFF4E0;color:#9A6200;border:1px solid #F0D29A;border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:800}
.testMatchBox summary{font-family:var(--f-head);font-weight:800;color:var(--navy);cursor:pointer}
.liveClock{display:inline-flex;align-items:center;gap:10px;background:rgba(8,19,31,.55);border:1px solid rgba(229,169,59,.6);border-radius:999px;padding:5px 14px;margin-top:6px}
.liveClock .mcLabel{color:var(--ice);font-family:var(--f-head);font-weight:800;font-size:13px}
.liveClock .mcTime{color:var(--gold);font-family:var(--f-en);font-weight:800;font-size:22px;letter-spacing:1px}
.capTag{font-style:normal;background:var(--gold);color:var(--navy);border-radius:999px;padding:0 7px;font-size:11px;font-weight:800}
.undoSetting{display:grid;gap:6px}.undoSetting label{font-family:var(--f-head);font-weight:800;color:var(--navy)}
.teamLogoAdmin img{object-fit:contain;background:var(--navy);padding:6px}
.nextMatch .side img,.rosterCol header img{object-fit:contain;background:rgba(214,232,247,.12)}

/* ===== قدامى البطولة 12 — طبقة الرموز والتدقيق (شبكة 4/8، WCAG AA، أهداف لمس 44px) ===== */
:root{
 --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;
 --r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:9999px;
 --gold-ink:#8A5A00;          /* ذهبي للنص على الخلفيات الفاتحة: 5.9:1 */
 --muted:#5A6578;             /* 5.9:1 على الأبيض بدل 4.6:1 */
 --focus:0 0 0 3px #fff,0 0 0 6px #3A86C8;
 --z-toast:500;
 --e1:0 1px 2px hsl(215 60% 10% / .06),0 1px 3px hsl(215 60% 10% / .06);
 --e2:0 1px 2px hsl(215 60% 10% / .06),0 4px 8px hsl(215 60% 10% / .06),0 8px 16px hsl(215 60% 10% / .05);
}
/* أهداف اللمس وارتفاع الحقول */
.btn,button.btn,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{min-height:44px}
.btn{padding:var(--s2) var(--s4);gap:var(--s2)}
input:not([type=checkbox]):not([type=radio]),select{padding:var(--s2) var(--s3)}
textarea{padding:var(--s3)}
.tabs{gap:var(--s2)}
.tabs button{min-height:44px;padding:var(--s2) var(--s4)}
.posTabs button,.subTabs button{min-height:44px}
.spBtns{gap:var(--s2)}.spBtns .btn{padding:var(--s2) var(--s3);min-height:44px}
.spBtns b{margin-inline-end:var(--s2)}
.spTools{margin-top:var(--s3)}
.brandLogo .rowActions .btn{padding:var(--s2) var(--s4)}
.pendingEvents button{min-height:44px;min-width:44px;padding:var(--s2) var(--s3);border-radius:var(--r-sm)}
.eventBtns{gap:var(--s2)}.eventBtns button{min-height:48px;padding:var(--s2) var(--s1);border-radius:var(--r-md)}
/* المسافات على شبكة 4/8 */
.card{padding:var(--s4)}
.grid{gap:var(--s4)}
.h{gap:var(--s3);margin-bottom:var(--s3)}
.form{gap:var(--s3)}
.field{gap:var(--s2)}
.rowActions{gap:var(--s2)}
.msg{padding:var(--s3) var(--s4);margin:var(--s3) 0}
.teams,.rosters,.qrgrid,.approvalGrid,.matchAdminList{gap:var(--s3)}
.teamCard,.roster,.approval,.qrcard,.pickRow,.matchAdminItem{padding:var(--s3)}
.selectGrid{gap:var(--s2)}
.kpis{gap:var(--s2)}.kpi{padding:var(--s2)}
th,td{padding:var(--s3)}
.scheduleFixedInfo{gap:var(--s3);margin:var(--s4) 0}.scheduleFixedInfo span{padding:var(--s3)}
.blueprintSchedule{gap:var(--s4)}
.blueprintRound{padding:var(--s3) var(--s4)}
.blueprintRound h3{margin:0 0 var(--s2)}
.blueprintMatch{gap:var(--s3);padding:var(--s3) 0}
.blueprintMeta{gap:var(--s2)}
.blueprintSides{gap:var(--s3)}
.liveClock{gap:var(--s3);padding:var(--s1) var(--s4);margin-top:var(--s2)}
.testTag{padding:0 var(--s2)}.capTag{padding:0 var(--s2)}
.undoSetting{gap:var(--s2)}
.motmBox{gap:var(--s2);margin-top:var(--s4);padding:var(--s3)}
.pendingEvents{padding:var(--s3);margin:var(--s3) 0}.pendingEvents>div{gap:var(--s2);margin:var(--s1) 0}
.eventGrid{gap:var(--s2)}.eventPlayer{padding:var(--s2);gap:var(--s2)}
.matchTeamTabs{gap:var(--s4)}.matchTeamTabs>section{padding:var(--s3)}
.updateDrop{padding:var(--s5) var(--s4);margin-top:var(--s4)}.updateActions{gap:var(--s3);margin-top:var(--s3)}
.selectedFile{padding:var(--s3)}
/* تباين: الذهبي للمسات على الداكن فقط، وعلى الفاتح يتحول إلى ذهبي داكن */
.rosterCol li.cap{color:var(--gold-ink)}
.blueprintMeta b,.blueprintSides strong{color:var(--gold-ink)}
.statTile b.gold{color:var(--gold-ink)}
.countdown{color:var(--gold-ink)}
.rule{color:var(--text)}
.hint,.muted,.link{color:var(--muted)}
/* محرر المواعيد: لا خروج عن الإطار */
.scheduleEditRow{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:var(--s2);padding:var(--s3)}
.scheduleEditRow>*{min-width:0}
.scheduleEditRow>b{grid-column:1/-1}
.scheduleEditRow label{display:grid;gap:var(--s1);min-width:0}
.scheduleEditRow label span{font-size:12px;color:var(--muted);font-weight:800}
.scheduleEditRows{gap:var(--s3);margin-top:var(--s3)}
/* أرقام جدولية في الجداول والأوقات والساعة */
table,td,th,.mcTime,.blueprintMeta,.statTile b,.nextMatch .mid strong,.kpi b,.fixtureMini strong{font-variant-numeric:tabular-nums}
/* حالة التركيز المرئية للوحة المفاتيح */
:where(a,button,.btn,input,select,textarea,summary,[tabindex]):focus-visible{outline:none;box-shadow:var(--focus);border-radius:var(--r-sm)}
.navItem:focus-visible,.tabs button:focus-visible{box-shadow:var(--focus)}
/* مقبض حذف الراعي: منطقة لمس 44px مع بقاء الشكل 24px */
.spBadge i{position:absolute}
.spBadge i::after{content:"";position:absolute;inset:-10px}
/* التنبيه فوق كل الطبقات */
.toast{z-index:var(--z-toast)}
/* تقليل الحركة */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:800px){.scheduleEditRow{grid-template-columns:1fr 1fr}.scheduleEditRow input[id^="schLabel"]{grid-column:1/-1}}
/* 12 — تصحيحات الشبكة المتبقية */
.scheduleEditRow.schRow{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s3) var(--s2);align-items:end}
.scheduleEditRow.schRow>b{grid-column:1/-1}
.schRow .schClear{padding:var(--s2) var(--s3);min-height:44px}
.tbd{color:var(--gold-ink)}
.kpis{grid-template-columns:repeat(auto-fit,minmax(56px,1fr))}.kpi{min-width:0}
.iconBtn{width:44px;height:44px;border-radius:var(--r-md)}
.photoAdmin{gap:var(--s2)}
.sponsorChip{gap:var(--s2);padding:var(--s1) var(--s1) var(--s1) var(--s3)}
.sponsorChip button{width:36px;height:36px;position:relative}
.sponsorChip button::after{content:"";position:absolute;inset:-4px}
.studioType{padding:var(--s3) var(--s2);gap:var(--s2)}
.checkLine{gap:var(--s2)}
.checkLine input{margin:0}
.teamLogoAdmin{gap:var(--s2);margin-top:var(--s2)}
.teamLogoAdmin img,.brandLogo img{padding:var(--s2)}
.field{margin-top:0}
.rowActions{margin-top:var(--s2)}
.bannerGrid{gap:var(--s3)}.bannerGrid>article{padding:var(--s2)}
.fixturesGrid{gap:var(--s3)}
.rule{margin-top:var(--s3)}
.form{margin-top:var(--s4)}
.h{gap:var(--s2)}
.sideUtil{padding-top:var(--s3);margin-top:var(--s2);gap:var(--s1)}
.sideGroupHead{padding:var(--s2) var(--s3) var(--s3)}
.areaSwitch{gap:var(--s2)}
.sideGroup nav{gap:var(--s1)}
@media(min-width:981px){.navItem{gap:var(--s3);padding:var(--s3);min-height:44px}}
@media(max-width:980px){
 .navItem{gap:var(--s1);padding:var(--s2) var(--s3);min-height:56px}
 .sideUtil .navItem{padding:var(--s2) var(--s3);min-height:44px}
 .sideGroup nav,.sideUtil{gap:var(--s2)}
 .areaSwitch button{padding:var(--s2);min-height:44px}
 .pageHead{padding:var(--s3);gap:var(--s3)}
 .appMain{padding:var(--s3) var(--s3) 0}
 .scheduleEditRow.schRow{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){.card{padding:var(--s4)!important}}
@media(max-width:640px){
 .playersTable tr{padding:var(--s3)!important;margin:var(--s3) 0!important}
 .playersTable td{padding:var(--s1)!important}
}
.blueprintMatch{grid-template-columns:minmax(0,320px) minmax(0,1fr)}
.blueprintMeta{flex-wrap:wrap;row-gap:var(--s1)}
.blueprintMeta span,.blueprintMeta b{white-space:nowrap}
@media(max-width:640px){.blueprintMatch{grid-template-columns:1fr}}
.iconBtn,.sponsorChip button{padding:0;display:inline-grid;place-items:center}
.mediaPlayers span{margin-top:var(--s2)}
.sponsorChip button{flex:0 0 36px;font-size:18px;line-height:1}
.bannerUpload input[type=file]{min-height:44px}
.studioPreview{padding:var(--s4)}.studioOptions{gap:var(--s3)}.sponsorList{margin-top:var(--s3)}
.rowActions .btn,.rowActions>a,.rowActions>button{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;text-align:center}
/* 12 — شهادة الداعمين */
.certTexts{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3);background:#fff;display:grid;gap:var(--s3)}
.certTexts[open]{gap:var(--s3)}
.certTexts>summary{cursor:pointer;font-family:var(--f-head);font-weight:800;color:var(--navy);min-height:44px;display:flex;align-items:center}
.certTexts .field{margin-bottom:var(--s3)}
.certSigs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--s3)}
@media(max-width:640px){.certSigs{grid-template-columns:1fr}}
.studioTypes>.studioType:last-child:nth-child(3n+1){grid-column:1/-1;grid-auto-flow:column;justify-content:center;align-items:center;column-gap:var(--s3)}
/* 13 — بوابة جوال القائد + قرعة A–D للقادة */
#capMain[hidden],#tournamentDraw[hidden],#capGate[hidden]{display:none!important}
.capGate{max-width:480px;margin:var(--s6) auto;text-align:center;padding:var(--s6) var(--s5)!important;display:grid;gap:var(--s3);justify-items:center}
.capGate h2{margin:0;color:var(--navy);font-family:var(--f-head)}
.capGateLead{margin:0;color:var(--muted);line-height:1.8;max-width:40ch}
.capGateIcon{width:64px;height:64px;border-radius:var(--r-lg);background:var(--navy);display:grid;place-items:center}
.capGateIcon svg{width:32px;height:32px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.capGateForm{display:grid;gap:var(--s2);width:100%;text-align:start}
.capGateForm label{font-family:var(--f-head);font-weight:800;color:var(--navy)}
.capGateForm input{font-family:var(--f-en);font-size:20px;letter-spacing:1px;text-align:center;min-height:52px;font-variant-numeric:tabular-nums}
.capGateForm .btn{min-height:52px;width:100%}
.capGate .msg{width:100%;margin:0}
.captainTournamentCards{gap:var(--s3);margin-top:var(--s3)}
.captainTournamentCards button{min-height:132px;border:1px solid rgba(229,169,59,.55);border-radius:var(--r-lg);background:linear-gradient(160deg,#13294B,#0B192C);color:#fff;box-shadow:0 8px 20px rgba(11,25,44,.18);display:grid;place-items:center;align-content:center;gap:var(--s1);transition:transform .12s ease,box-shadow .12s ease}
.captainTournamentCards button b{font-family:var(--f-en);font-size:44px;line-height:1;color:var(--gold)}
.captainTournamentCards button span{font-family:var(--f-head);font-weight:800;color:var(--ice);font-size:14px}
.captainTournamentCards button:active{transform:scale(.98)}
.captainTournamentCards button:disabled{opacity:.55;cursor:wait}
.captainTournamentCards button.picking{opacity:1;box-shadow:0 0 0 3px var(--gold);animation:capPulse .8s ease-in-out infinite alternate}
@keyframes capPulse{from{transform:scale(1)}to{transform:scale(1.03)}}
.capBoard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2);margin-top:var(--s4)}
.capSlot{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s2);text-align:center;background:#F7FAFD;min-width:0}
.capSlot b{display:block;font-family:var(--f-en);font-size:24px;color:var(--navy);line-height:1.2}
.capSlot span{display:block;font-size:12px;font-weight:800;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.capSlot.taken{background:#fff;border-color:#C9D9EA}.capSlot.taken span{color:var(--navy)}
.capSlot.mine{background:var(--navy);border-color:var(--navy)}.capSlot.mine b{color:var(--gold)}.capSlot.mine span{color:#fff}
.capReveal{display:grid;place-items:center;padding:var(--s4) 0}
.capRevealCard{width:min(280px,100%);aspect-ratio:3/4;border-radius:var(--r-lg);background:radial-gradient(120% 90% at 50% 0,rgba(74,144,226,.35),transparent 60%),linear-gradient(160deg,#13294B,#0B192C);border:1.5px solid var(--gold);display:grid;place-items:center;align-content:center;gap:var(--s2);color:#fff;box-shadow:0 16px 40px rgba(11,25,44,.35);animation:capFlip .6s cubic-bezier(.2,.8,.2,1) both}
.capRevealCard small{color:var(--ice);font-family:var(--f-head);font-weight:800}
.capRevealCard b{font-family:var(--f-en);font-size:112px;line-height:1;color:var(--gold)}
.capRevealCard span{font-family:var(--f-head);font-weight:800;font-size:20px}
@keyframes capFlip{from{transform:perspective(800px) rotateY(90deg);opacity:0}to{transform:none;opacity:1}}
/* إدارة: حالة روابط القادة في قرعة A–D */
.capStatus{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2);margin-top:var(--s3)}
.capStatus>div{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s2) var(--s3);background:#fff;min-width:0;display:grid;gap:var(--s1)}
.capStatus b{font-family:var(--f-head);color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.capStatus small{font-size:12px;font-weight:800}
.capStatus .ok{color:var(--ok)}.capStatus .wait{color:var(--muted)}.capStatus .bad{color:var(--bad)}
@media(max-width:700px){.capStatus{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.capBoard{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rowActions>.tag{align-self:center;flex:0 0 auto}
/* 15 — رمز القائد السري */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.capGateForm input#capPin{font-size:32px;letter-spacing:16px;text-indent:16px;min-height:60px}
.capGateLead b{color:var(--navy)}
.capTimer{margin-top:var(--s2);font-weight:800;color:var(--navy);font-size:14px}
.capTimer b{font-family:var(--f-en);font-variant-numeric:tabular-nums;color:var(--gold-ink);font-size:18px}
.pinBox{display:flex;align-items:center;justify-content:center;gap:var(--s2);margin-top:var(--s2)}
.pinBox code{font-family:var(--f-en);font-size:26px;font-weight:800;letter-spacing:6px;color:var(--navy);background:var(--ice-soft,#EEF5FC);border:1px dashed #9FC3E6;border-radius:var(--r-md);padding:var(--s1) var(--s3);direction:ltr}
.drawTimer{font-family:var(--f-en);font-variant-numeric:tabular-nums}
.drawWindow{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;border:1px solid var(--ice);background:var(--ice-soft);border-radius:var(--r-md);padding:var(--s3);margin-bottom:var(--s3)}
.drawWindow span{font-family:var(--f-head);font-weight:800;color:var(--navy)}
.drawWindow b{font-size:24px;color:var(--navy)}
.drawWindow .rowActions{margin:0;margin-inline-start:auto}
.drawWindow.over{background:#FDF1F0;border-color:#F3C6C2}.drawWindow.over b{color:var(--bad)}
.capSignNote{margin:0;font-size:14px;color:var(--ink2,#2A3547);font-weight:700;line-height:1.7;max-width:42ch}
.capPledgeView{width:100%;text-align:start;border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s2) var(--s3)}
.capPledgeView summary{cursor:pointer;font-family:var(--f-head);font-weight:800;color:var(--navy);min-height:44px;display:flex;align-items:center}
.capPledgeView ol{margin:var(--s2) 0;padding-inline-start:var(--s5);display:grid;gap:var(--s2);line-height:1.8;font-size:14px}
.capRules{max-height:320px;overflow:auto;border-top:1px solid var(--line);padding-top:var(--s2);font-size:13px;line-height:1.8}
.capRules h4{margin:var(--s3) 0 var(--s1);color:var(--gold-ink);font-family:var(--f-head)}
.capRules p{margin:0 0 var(--s1)}
#capHead{align-items:center;gap:var(--s3)}
/* 17 — سطر النتيجة على سطر واحد */
.liveMatchHead>div:first-child{min-width:0;flex:1 1 280px}
.liveMatchHead h2.scoreLine{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--s2);font-size:clamp(15px,4.2vw,24px);line-height:1.3;margin:var(--s1) 0}
.scoreLine b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.scoreLine b:first-child{text-align:start}.scoreLine b:last-child{text-align:end}
.scoreLine span{white-space:nowrap;font-family:var(--f-en);font-variant-numeric:tabular-nums;font-size:1.1em}
/* إحصاءات اللاعب داخل المباراة */
.pstats{display:flex;flex-wrap:wrap;gap:var(--s1);margin-top:var(--s1)}
.pst{font-style:normal;display:inline-flex;align-items:center;gap:var(--s1);font-size:12px;font-weight:800;line-height:1;padding:var(--s1) var(--s2);border-radius:var(--r-pill);background:var(--ice-soft);color:var(--navy);border:1px solid var(--ice);font-variant-numeric:tabular-nums}
.pst u{display:inline-block;width:9px;height:12px;border-radius:2px;text-decoration:none}
.pst.yel u{background:#F2C200;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.pst.redc u{background:#D32F2F}
.pst.out{background:#FDECEB;color:#9D1C13;border-color:#F3C6C2}
.eventPlayer.sentOff{opacity:.55;background:#FBF3F2}
.eventPlayer.sentOff img{filter:grayscale(1)}
.sentOffMsg{margin:var(--s2) 0}
/* صلاحيات أعضاء اللجنة */
.permPick{display:grid;gap:var(--s2);margin-top:var(--s3);padding-top:var(--s3);border-top:1px dashed var(--line)}
.permPick>b{font-family:var(--f-head);color:var(--navy)}
.permBoxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--s1) var(--s3)}
.permPick .btn{justify-self:start}
.cmTabs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin:var(--s3) 0}
.cmTabs>b{font-family:var(--f-head);color:var(--navy)}
body.cmMode .areaSwitch,body.cmMode .sideGroup[data-group="draw"],body.cmMode .adminUtilities{display:none!important}
.cmTabs a.btn{text-decoration:none}
body.cmMode #sectionNav .mobileOnly{display:none!important}
.qrcard img,img[src*="qr.png"]{image-rendering:pixelated}
/* ===== 20 — تفتيح الواجهة: أزرق رمادي هادئ بدل الكحلي القاتم (التباين AA محقق: ذهبي/أبيض فوق 5.6:1) ===== */
:root{--navy:#162a45;--navy2:#20385c;--ui-deep:#132238;--ui-base:#162a45;--ui-raised:#20385c;--ui-card:#223a5e}
.top{background:radial-gradient(120% 160% at 85% -40%,rgba(74,144,226,.30) 0,transparent 55%),linear-gradient(135deg,#162a45 0%,#1a2f4c 60%,#20385c 100%)}
.sideNav{background:linear-gradient(180deg,#1a2f4c,#162a45)}
.codeCard{background:linear-gradient(145deg,#1a2f4c,#2a4a78)}
.nextMatch{background:radial-gradient(120% 120% at 50% 0,rgba(74,144,226,.28),transparent 60%),linear-gradient(135deg,#1a2f4c,#223a5e)}
.liveMatchHead{background:linear-gradient(135deg,#1a2f4c,#223a5e)}
.liveClock{background:rgba(19,34,56,.6)}
.toast{background:#1a2f4c}
.now,.tvHero{background:linear-gradient(135deg,#1a2f4c,#223a5e)}
/* البوابات الأربع: أزرار ضخمة 2×2 (54px+) بإطار ذهبي مضيء للبوابة النشطة */
.areaSwitch.gateSwitch{display:grid!important;grid-template-columns:1fr 1fr;gap:var(--s2);background:transparent;padding:0;margin:0 0 var(--s3)}
.gateSwitch button{min-height:60px;display:flex;align-items:center;justify-content:center;gap:var(--s2);border:1.5px solid rgba(214,232,247,.18);border-radius:var(--r-lg);background:rgba(214,232,247,.08);color:#EAF3FB;font-family:var(--f-head);font-weight:800;font-size:15px;line-height:1.25;padding:var(--s2) var(--s3);cursor:pointer;position:relative;text-align:center;transition:background .15s,border-color .15s,box-shadow .15s}
.gateSwitch button svg{width:22px;height:22px;flex:0 0 auto;stroke:currentColor}
.gateSwitch button b{font-weight:800}
.gateSwitch button .lockMark{font-style:normal;font-size:12px;position:absolute;top:4px;inset-inline-start:8px}
.gateSwitch button:hover{background:rgba(214,232,247,.14)}
.gateSwitch button.active{background:rgba(229,169,59,.14);border:2.5px solid var(--gold);color:#fff;box-shadow:0 0 0 4px rgba(229,169,59,.22),0 0 18px rgba(229,169,59,.35)}
.gateSwitch button.active svg{stroke:var(--gold)}
/* تبويبات البوابة الحالية فقط */
.sideNav .sideGroup{display:none!important}.sideNav .sideGroup.current{display:block!important}
.sideNav .sideGroupHead{display:none!important}
.navItem{min-height:54px;font-size:15px;font-weight:800}
.navItem svg{width:22px;height:22px}
.navItem.active{box-shadow:inset 0 0 0 2px var(--gold)}
@media(max-width:980px){
 .areaSwitch.gateSwitch{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s1)}
 .gateSwitch button{flex-direction:column;min-height:64px;font-size:12px;gap:var(--s1);padding:var(--s1)}
 .navItem{min-height:54px;font-size:13px}
}
/* شريط اللائحة (كل 15 ثانية) */
.rulesTicker{display:flex;gap:var(--s3);align-items:baseline;background:#fff;border:1px solid var(--line);border-inline-start:4px solid var(--gold);border-radius:var(--r-md);padding:var(--s2) var(--s4);margin-bottom:var(--s3);font-size:14px;line-height:1.7;color:var(--text)}
.rulesTicker b{color:var(--gold-ink);font-family:var(--f-head);white-space:nowrap}
.rulesTicker span{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rulesTicker.tick span{animation:tickIn .4s cubic-bezier(.2,.8,.2,1)}
@keyframes tickIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:640px){.rulesTicker{flex-direction:column;gap:var(--s1)}}
/* وضع التركيز في المباراة المباشرة */
body.focusMode .sideNav,body.focusMode .pageHead,body.focusMode .rulesTicker,body.focusMode .top{display:none!important}
body.focusMode #view .grid>.card:not(#matchControl){display:none!important}
body.focusMode .appMain{padding-top:var(--s3)}
body.focusMode .appShell{display:block}
/* بوابة المالك */
.ownerGate{max-width:480px;margin:var(--s5) auto;text-align:center;display:grid;gap:var(--s3);justify-items:center}
.voteAdmin{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s3) var(--s4);margin-top:var(--s3);background:#fff}
.voteAdmin h3{margin:0 0 var(--s1);color:var(--navy)}
.phase{display:inline-block;font-size:12px;font-weight:800;border-radius:var(--r-pill);padding:var(--s1) var(--s3)}
.phase.open{background:#E8F7F0;color:#126B50}.phase.com{background:#FFF4E0;color:#8A5A00}.phase.done{background:var(--ice-soft);color:var(--navy)}
.voteTable{min-width:0!important}.voteTable td small{display:block;color:var(--muted);font-size:11px}
.voteTable td.score{font-family:var(--f-en);font-weight:800;color:var(--navy)}
.voteTable tr.lead td{background:#FFF8E8}
body.cmMode .areaSwitch.gateSwitch{display:grid!important}
.cvTeam{margin-top:var(--s3)}.cvTeam>b{font-family:var(--f-head);color:var(--navy)}
.cvList{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--s2);margin-top:var(--s2)}
.cvPick{display:flex;align-items:center;gap:var(--s2);min-height:56px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;padding:var(--s1) var(--s2);cursor:pointer;text-align:start;font-weight:700;color:var(--navy)}
.cvPick img{width:40px;height:40px;border-radius:var(--r-sm);object-fit:cover;flex:0 0 auto}
.cvPick span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cvPick.on{border:2px solid var(--gold);background:#FFF8E8}
.motmBanner{display:grid;gap:var(--s1);width:100%;text-align:center;border:2px solid var(--gold);background:linear-gradient(135deg,#1a2f4c,#223a5e);color:#fff;border-radius:var(--r-lg);padding:var(--s3) var(--s4);margin-bottom:var(--s3);cursor:pointer;min-height:56px}
.motmBanner b{font-family:var(--f-head);font-size:17px;color:var(--gold)}.motmBanner span{font-size:13px;color:var(--ice)}
.motmFrame{width:100%;min-height:1300px;border:0;border-radius:var(--r-lg);background:#fff}
.publicTabs [hidden]{display:none!important}
@media(min-width:981px){.areaSwitch.gateSwitch{grid-template-columns:1fr}.gateSwitch button{justify-content:flex-start;min-height:56px;font-size:15px}}
.gateSwitch button .lockMark svg{width:14px;height:14px;fill:none;stroke:var(--gold);stroke-width:2}
/* ===== 21 — خلفية رمادية فاتحة + 3 بوابات + أرشيف التأسيس ===== */
:root{--bg:#F3F4F6}
body{background:var(--bg)}
.areaSwitch.gateSwitch{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:981px){.areaSwitch.gateSwitch{grid-template-columns:1fr}}
.sideGroup[data-group="setup"] .sideGroupHead{display:flex!important;color:var(--gold)}
.navItem.setupLink.active{background:rgba(229,169,59,.14);color:#fff;box-shadow:inset 0 0 0 2px var(--gold)}
.adminVote{margin-top:var(--s4)}
@media(max-width:980px){.areaSwitch.gateSwitch{grid-template-columns:repeat(3,minmax(0,1fr))}.gateSwitch button{min-height:64px;font-size:13px}}
/* ===== 22 — تخطيط تطبيق: رئيسية + وصول سريع + شريط سفلي بالسحب ===== */
.sideNav{display:none!important}
.appShell{display:block!important;max-width:1100px;margin:0 auto}
.appMain{padding-bottom:128px!important}
body.onHome .pageHead,body.onHome .rulesTicker{display:none!important}
/* الشريط السفلي */
.bottomBar{position:fixed;inset-inline:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:220;max-width:1076px;margin:0 auto;display:flex;gap:var(--s1);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#fff;border:1px solid var(--line);border-radius:28px;padding:var(--s2);box-shadow:0 12px 32px rgba(22,42,69,.18);cursor:grab;user-select:none}
.bottomBar::-webkit-scrollbar{display:none}
.bbItem{flex:0 0 auto;min-width:92px;min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s1);border:0;background:transparent;border-radius:var(--r-lg);color:var(--muted);font-family:var(--f-head);font-weight:800;font-size:13px;padding:var(--s1) var(--s3);cursor:pointer;scroll-snap-align:center;position:relative;white-space:nowrap}
.bbItem svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bbItem.active{color:var(--navy)}
.bbItem.active::before{content:"";position:absolute;top:0;inset-inline:22%;height:4px;border-radius:0 0 4px 4px;background:var(--navy)}
.bbItem.active svg{stroke:var(--navy);stroke-width:2.2}
.bbItem:focus-visible{box-shadow:var(--focus)}
/* الرئيسية */
.homeWrap{display:grid;gap:var(--s4)}
.homeSearch{display:flex;align-items:center;gap:var(--s2);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:0 var(--s4);min-height:56px}
.homeSearch svg{width:20px;height:20px;fill:none;stroke:var(--muted);stroke-width:2;flex:0 0 auto}
.homeSearch input{border:0!important;box-shadow:none!important;padding:0!important;min-height:52px;font-size:16px;background:transparent}
.homeResults{display:grid;gap:var(--s2)}.homeResults:empty{display:none}
.homeHit{display:flex;align-items:center;gap:var(--s3);background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s2) var(--s3)}
.homeHit img{width:44px;height:44px;border-radius:var(--r-sm);object-fit:cover}.homeHit small{display:block;color:var(--muted)}
.quickHead{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}
.quickHead h2{margin:0;font-family:var(--f-head);font-size:24px;color:var(--navy)}
.quickGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
@media(min-width:760px){.quickGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.quickCard{display:grid;justify-items:center;align-content:center;gap:var(--s2);min-height:176px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:var(--s5) var(--s3);cursor:pointer;text-align:center;position:relative;transition:transform .12s ease,box-shadow .12s ease}
.quickCard:hover{box-shadow:0 10px 24px rgba(22,42,69,.10)}
.quickCard:active{transform:scale(.98)}
.qIco{width:64px;height:64px;border-radius:20px;background:var(--ice-soft);display:grid;place-items:center}
.qIco svg{width:30px;height:30px;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.quickCard b{font-family:var(--f-head);font-size:18px;color:var(--navy);line-height:1.35}
.quickCard small{color:var(--muted);font-size:13px;line-height:1.5}
.qLock{position:absolute;top:var(--s2);inset-inline-start:var(--s3);font-style:normal;font-size:11px;font-weight:800;color:var(--gold-ink);background:#FFF4E0;border-radius:var(--r-pill);padding:2px var(--s2)}
.quickEdit{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--s1) var(--s3);background:#fff;border:1px dashed var(--line);border-radius:var(--r-lg);padding:var(--s3) var(--s4)}
.quickEdit .hint{grid-column:1/-1}
/* السلايدر */
.qSlider{position:relative;overflow:hidden;border-radius:24px;background:#1a2f4c;aspect-ratio:16/9;max-height:440px;width:100%;touch-action:pan-y;isolation:isolate}
.homeSlider{box-shadow:0 10px 28px rgba(22,42,69,.16)}
.qSlide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.qSlide.on{opacity:1}
.qSlide img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);user-select:none;-webkit-user-drag:none}
.qSlide.on img{animation:kenBurns 9s ease-out forwards}
@keyframes kenBurns{from{transform:scale(1.02)}to{transform:scale(1.12)}}
.qSlideFallback{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(90% 90% at 70% 20%,rgba(74,144,226,.45),transparent 60%),linear-gradient(135deg,#162a45,#20385c)}
.qSlideFallback img{height:70%;width:auto;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.35))}
.qShade{position:absolute;inset:0;background:linear-gradient(270deg,rgba(19,34,56,.78) 0%,rgba(19,34,56,.25) 45%,transparent 70%),linear-gradient(0deg,rgba(19,34,56,.55),transparent 40%);pointer-events:none}
.qCaption{position:absolute;inset-inline-start:var(--s5);top:50%;transform:translateY(-50%);display:grid;gap:var(--s2);color:#fff;max-width:60%;pointer-events:none}
.qCaption b{font-family:var(--f-head);font-size:clamp(22px,5.4vw,40px);line-height:1.2;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.qCaption span{font-size:clamp(14px,3.4vw,20px);color:var(--ice)}
.qEdit{position:absolute;top:var(--s3);inset-inline-end:var(--s3);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.88);display:grid;place-items:center;z-index:2}
.qEdit svg{width:20px;height:20px;fill:none;stroke:var(--navy);stroke-width:2}
.qDots{position:absolute;bottom:var(--s3);inset-inline:0;display:flex;justify-content:center;gap:var(--s2);z-index:2}
.qDots button{width:10px;height:10px;min-height:0;padding:0;border:0;border-radius:var(--r-pill);background:rgba(255,255,255,.6);cursor:pointer;transition:width .3s}
.qDots button.on{width:34px;background:var(--gold)}
.qDots button::after{content:"";position:absolute;inset:-12px}
.qDots button{position:relative}
/* خط التجوّل */
.qMarquee{display:flex;align-items:center;gap:var(--s3);background:#fff;border:1px solid var(--line);border-radius:var(--r-pill);padding:var(--s2);min-height:56px;overflow:hidden}
.qMqLabel{flex:0 0 auto;background:var(--navy);color:#fff;font-family:var(--f-head);font-weight:800;border-radius:var(--r-pill);padding:var(--s2) var(--s4);font-size:15px}
.qMqTrack{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.qMqMove{display:flex;width:max-content;animation:qmq var(--qmq-dur,30s) linear infinite}
.qMqMove span{white-space:nowrap;padding-inline-end:var(--s6);font-family:var(--f-head);font-weight:800;font-size:17px;color:var(--navy)}
.qSep{font-style:normal;color:var(--gold);margin:0 var(--s3)}
@keyframes qmq{from{transform:translateX(0)}to{transform:translateX(50%)}}
@media (prefers-reduced-motion:reduce){.qMqMove{animation:none}.qSlide.on img{animation:none}}
/* تعارض قديم: الشريط العلوي للتبويبات لم يعد مستخدمًا */
.gateSwitch{display:none!important}
.qSlideFallback{place-items:center end;padding-inline-end:6%}
.qSlideFallback img{height:78%}
.bbItem{min-width:80px}
.tvSlider{border-radius:28px;aspect-ratio:auto;height:34vh;max-height:none;margin:0 auto 16px;width:min(100%,1600px)}
.tvSlider[hidden]{display:none!important}
.publicHero .heroSlider.qSlider{aspect-ratio:16/9;max-height:460px}
a.bbItem{text-decoration:none}
.bbItem.bbOut{color:#B42318}
.ownerGate h2{margin:0}
/* 23 — صفحة التحديثات: زرّا العودة وشاشة العرض أفقيان جنبًا إلى جنب */
.updNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3);margin:0 0 var(--s4)}
.updNav .btn{display:flex;align-items:center;justify-content:center;min-height:52px;white-space:nowrap;text-decoration:none;font-size:16px;writing-mode:horizontal-tb}
@media(min-width:760px){.updNav{display:flex;justify-content:flex-start}.updNav .btn{min-width:200px}}
/* ===== 24 — نظام خطوط موحّد (IBM Plex Sans Arabic) + مقياس طباعي للجوال + شبكة 4/8 ===== */
:root{
 --f-ui:"Tajawal","IBM Plex Sans Arabic",Tahoma,Arial,sans-serif;
 --f-head:var(--f-ui);--f-body:var(--f-ui);
 --fs-h1:24px;--fs-h2:20px;--fs-h3:18px;--fs-body:15px;--fs-sm:14px;--fs-label:12px;
 --lh-body:1.5;--lh-head:1.2;
}
@media(min-width:760px){:root{--fs-h1:28px;--fs-body:16px}}
@media(min-width:1200px){:root{--fs-h1:32px}}
body{font-family:var(--f-body);font-size:var(--fs-body);line-height:var(--lh-body)}
button,input,select,textarea{font-family:var(--f-body)}
h1,h2,h3,h4{font-family:var(--f-head);line-height:var(--lh-head);font-weight:700}
h1{font-size:var(--fs-h1)}h2,.card h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}
.hint,.pageHead p{font-size:var(--fs-sm);line-height:var(--lh-body)}
small,.muted small,.phCrumb{font-size:var(--fs-label)}
.btn{font-weight:600;font-size:var(--fs-sm)}
.top .title{font-size:20px;font-weight:700;line-height:var(--lh-head)}
@media(max-width:640px){.top .title{font-size:18px}}
.pageHead h1{font-size:var(--fs-h1);font-weight:700;line-height:var(--lh-head);margin:var(--s1) 0}
.pageHead .phCrumb{font-size:var(--fs-label);font-weight:600}
/* الرئيسية */
.homeWrap{gap:var(--s4)}
.homeSearch{min-height:48px;border-radius:var(--r-md)}
.homeSearch input{min-height:44px;font-size:16px}
.qSlider{border-radius:var(--s5)}
.qCaption{inset-inline-start:var(--s4);gap:var(--s1);max-width:64%}
.qCaption b{font-size:clamp(20px,1rem + 2.2vw,30px);font-weight:700;line-height:var(--lh-head)}
.qCaption span{font-size:clamp(13px,.75rem + .6vw,16px);line-height:var(--lh-body)}
.qMarquee{min-height:48px;gap:var(--s2);padding:var(--s1)}
.qMqLabel{font-size:var(--fs-label);font-weight:700;padding:var(--s1) var(--s3);line-height:24px}
.qMqMove span{font-size:var(--fs-sm);font-weight:600;line-height:24px;padding-inline-end:var(--s5)}
.qSep{margin:0 var(--s2)}
.quickHead h2,.featList h2{font-size:var(--fs-h2);font-weight:700;margin:0}
.quickHead .btn{min-height:40px;padding:0 var(--s4)}
.quickGrid{gap:var(--s3)}
.quickCard{min-height:128px;padding:var(--s4) var(--s3);border-radius:var(--r-lg);gap:var(--s2)}
.qIco{width:48px;height:48px;border-radius:var(--r-md)}
.qIco svg{width:24px;height:24px}
.quickCard b{font-size:16px;font-weight:700;line-height:1.3}
.quickCard small{font-size:var(--fs-label);line-height:var(--lh-body)}
.qLock{font-size:11px;font-weight:600}
@media(min-width:760px){.quickCard{min-height:144px}.quickCard b{font-size:17px}}
/* الشريط السفلي */
.bbItem{min-width:72px;min-height:56px;font-size:var(--fs-label);font-weight:600;gap:2px;padding:var(--s1) var(--s2)}
.bbItem svg{width:22px;height:22px}
/* مزايا البرنامج */
.featList{display:grid;gap:var(--s3);margin-top:var(--s2)}
.featGrid{display:grid;grid-template-columns:1fr;gap:var(--s2)}
@media(min-width:760px){.featGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.featItem{display:flex;align-items:center;gap:var(--s3);min-height:64px;padding:var(--s3) var(--s4);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);color:var(--text);text-align:start;text-decoration:none;cursor:pointer;font:inherit;transition:box-shadow .12s ease,transform .12s ease}
.featItem:hover{box-shadow:0 6px 16px rgba(22,42,69,.08)}
.featItem:active{transform:scale(.98)}
.featItem:focus-visible{box-shadow:var(--focus);outline:0}
.fIco{flex:0 0 auto;width:40px;height:40px;border-radius:var(--r-md);background:var(--ice-soft);display:grid;place-items:center;color:var(--navy)}
.fIco svg{width:20px;height:20px}
.fTxt{display:grid;gap:2px;min-width:0}
.fTxt b{font-size:15px;font-weight:700;color:var(--navy);line-height:1.3}
.fTxt small{font-size:var(--fs-label);color:var(--muted);line-height:var(--lh-body)}
/* هيكل تحميل صامت بدل رسالة «جارٍ تحميل القسم» */
.tabSkel{display:grid;gap:var(--s3)}
.tabSkel i{display:block;height:96px;border-radius:var(--r-lg);background:linear-gradient(90deg,#E9ECF1 0%,#F5F6F8 40%,#E9ECF1 80%);background-size:200% 100%;animation:skel 1.2s linear infinite}
.tabSkel i:first-child{height:64px}
@keyframes skel{from{background-position:200% 0}to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.tabSkel i{animation:none}}
/* ===== 25 — أربعة مداخل، شريط رجوع/رئيسية ثابت، أقسام المدخل فقط، حالة الحفظ ===== */
.bottomBar,.sideNav,.rulesTicker{display:none!important}
.appMain{padding:var(--s4) var(--s4) calc(var(--s7) + env(safe-area-inset-bottom))!important}
@media(max-width:640px){.appMain{padding:var(--s3) var(--s4) calc(var(--s7) + env(safe-area-inset-bottom))!important}}
.appBar{position:sticky;top:0;z-index:200;display:flex;align-items:center;gap:var(--s2);background:rgba(243,244,246,.94);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);margin:calc(-1 * var(--s3)) calc(-1 * var(--s4)) var(--s3);padding:var(--s2) var(--s4);border-bottom:1px solid var(--line)}
.appBar:empty{display:none}
.abBtn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s1);min-height:44px;min-width:44px;padding:0 var(--s3);border:1px solid var(--line);background:#fff;border-radius:var(--r-md);color:var(--navy);font:600 14px/1 var(--f-ui);cursor:pointer}
.abBtn svg{width:20px;height:20px}
.abBtn:active{transform:scale(.98)}.abBtn:focus-visible{box-shadow:var(--focus);outline:0}
.abTitle{flex:1;min-width:0;text-align:center;display:grid}
.abTitle small{font-size:12px;color:var(--muted);line-height:1.4}
.abTitle b{font-size:16px;font-weight:700;color:var(--navy);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:420px){.abBtn span{display:none}.abBtn{padding:0}}
.subNav{display:flex;gap:var(--s2);overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--s4)) var(--s3);padding:0 var(--s4) var(--s1);scroll-snap-type:x proximity}
.subNav::-webkit-scrollbar{display:none}
.subNav[hidden]{display:none}
.snItem{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:0 var(--s4);border-radius:var(--r-pill);border:1px solid var(--line);background:#fff;color:var(--navy);font:600 14px/1 var(--f-ui);cursor:pointer;scroll-snap-align:center;white-space:nowrap}
.snItem svg{width:18px;height:18px}
.snItem.active{background:var(--navy);border-color:var(--navy);color:#fff}
.snItem:focus-visible{box-shadow:var(--focus);outline:0}
.pageHead{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s3);padding:0;margin:0 0 var(--s4);background:none;border:0;box-shadow:none;border-radius:0}
.pageHead:empty{display:none}
.pageHead .phText{flex:1 1 280px;min-width:0}
.pageHead h1{margin:0 0 var(--s1)}
.pageHead p{margin:0;color:var(--muted)}
.pageHead .phActions{display:flex!important;flex-wrap:wrap;gap:var(--s2)}
.pageHead .phActions .btn{min-height:44px;display:inline-flex;align-items:center;gap:var(--s2);text-decoration:none}
.pageHead .phActions svg,.studioActions svg,.libBtns svg,.rowActions svg{width:18px;height:18px}
/* الرئيسية */
.homeH{font-size:var(--fs-h2);font-weight:700;margin:0 0 var(--s3);color:var(--navy)}
.cmHello{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s3) var(--s4);font-weight:600;color:var(--navy)}
.entGrid{display:grid;grid-template-columns:1fr;gap:var(--s3)}
@media(min-width:760px){.entGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}}
.entCard{display:flex;align-items:center;gap:var(--s4);min-height:88px;padding:var(--s4);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);text-align:start;cursor:pointer;color:var(--text);font:inherit;transition:box-shadow .12s ease,transform .12s ease}
.entCard:hover{box-shadow:0 1px 2px rgba(22,42,69,.06),0 8px 20px rgba(22,42,69,.08)}
.entCard:active{transform:scale(.98)}.entCard:focus-visible{box-shadow:var(--focus);outline:0}
.entIco{flex:0 0 auto;width:56px;height:56px;border-radius:var(--r-lg);background:linear-gradient(135deg,var(--navy2),var(--navy));display:grid;place-items:center}
.entIco svg{width:28px;height:28px;stroke:var(--gold)}
.entTxt{flex:1;min-width:0;display:grid;gap:var(--s1)}
.entTxt b{font-size:18px;font-weight:700;color:var(--navy);line-height:1.3}
.entTxt small{font-size:13px;color:var(--muted);line-height:1.5}
.entGo svg{width:20px;height:20px;stroke:var(--muted)}
@media(min-width:1024px){.entCard{min-height:112px;padding:var(--s5)}.entTxt b{font-size:20px}}
.moreBox .moreList{display:flex;flex-wrap:wrap;gap:var(--s2)}
.moreItem{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;padding:0 var(--s4);background:#fff;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--navy);font:600 14px/1 var(--f-ui);text-decoration:none;cursor:pointer}
.moreItem svg{width:18px;height:18px}
.moreItem.out{color:#B42318}
.homeVer{font-size:12px;color:var(--muted);text-align:center}
/* نافذة التعديلات غير المحفوظة */
.leaveModal{position:fixed;inset:0;z-index:400;background:rgba(11,25,44,.45);display:grid;place-items:center;padding:var(--s4)}
.leaveModal[hidden]{display:none}
.lmBox{background:#fff;border-radius:var(--r-lg);padding:var(--s5);width:min(100%,440px);box-shadow:0 24px 48px rgba(11,25,44,.25)}
.lmBox h2{margin:0 0 var(--s2)}.lmBox p{margin:0 0 var(--s4);color:var(--muted)}
.lmBtns{display:grid;gap:var(--s2)}.lmBtns .btn{min-height:48px}
body.hasDirty .phActions .btn.primary{box-shadow:0 0 0 3px rgba(229,169,59,.55)}
/* حالة حفظ الأحداث */
.saveState{display:inline-flex;align-items:center;gap:var(--s1);margin-top:var(--s2);padding:var(--s1) var(--s3);border-radius:var(--r-pill);font-size:12px;font-weight:600;background:#EEF2F6;color:var(--muted)}
.saveState.saving{background:#FFF4E0;color:#8A5A00}
.saveState.saved{background:#E7F5EE;color:#0E6B4B}
.saveState.error,.saveState.offline{background:#FCECEB;color:#B42318}
/* الاستوديو بخطوات */
.studioSteps{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;margin:0 0 var(--s4);padding:0;counter-reset:st}
.studioSteps li{counter-increment:st;display:inline-flex;align-items:center;gap:var(--s2);font-size:13px;font-weight:600;color:var(--muted)}
.studioSteps li::before{content:counter(st);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ice-soft);color:var(--navy);font-size:12px}
.studioSteps li+li::after{content:none}
.stepH{display:flex;align-items:center;gap:var(--s2);margin:var(--s4) 0 var(--s2);font-weight:700;color:var(--navy);font-size:15px}
.stepH b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;font-size:12px}
.stepH span{display:inline-flex;align-items:center;gap:var(--s2)}
.studioGroup{margin-bottom:var(--s3)}
.studioGroup h3{font-size:14px;color:var(--muted);margin:0 0 var(--s2);font-weight:600}
.studioGroup .studioTypes{margin:0}
/* المكتبة */
.libGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s3)}
.libCard{display:grid;gap:var(--s2);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s2)}
.libCard.pub{border-color:#9FD4BC}
.libImg{display:block;border-radius:var(--r-md);overflow:hidden;background:#EEF2F6;aspect-ratio:4/5}
.libImg img{width:100%;height:100%;object-fit:contain}
.libMeta{display:grid;gap:2px;padding:0 var(--s1)}
.libMeta b{font-size:14px;color:var(--navy)}.libMeta small{font-size:12px;color:var(--muted)}
.libMeta .tag{justify-self:start;margin-top:var(--s1)}
.libBtns{display:flex;flex-wrap:wrap;gap:var(--s1)}
.libBtns .btn{min-height:40px;padding:0 var(--s3);font-size:13px;display:inline-flex;align-items:center;gap:var(--s1);text-decoration:none}
.tag.live{background:#E7F5EE;color:#0E6B4B;border-color:#9FD4BC}
/* الأعضاء والصلاحيات */
.permTree{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--s3);margin-top:var(--s3)}
.ptTab{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s3);margin:0;min-width:0;background:#FAFBFC}
.ptTab legend{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);width:100%;padding:0;float:left;margin-bottom:var(--s2)}
.ptTab legend small{font-size:12px;color:var(--muted)}
.ptSecs{clear:both;display:grid;gap:var(--s1);padding-inline-start:var(--s5)}
.ptSecs .checkLine,.ptTab legend .checkLine{min-height:40px}
.memberCard{display:grid;gap:var(--s3)}
.committeeMember.off{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}
/* القرارات */
.decList{display:grid;gap:var(--s3)}
.decItem{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s4);background:#fff;display:grid;gap:var(--s2)}
.decHead{display:flex;align-items:center;justify-content:space-between;gap:var(--s2)}
.decItem h3{margin:0}.decItem p{margin:0;color:var(--text);line-height:1.7;white-space:pre-wrap}
textarea{width:100%;font:inherit;padding:var(--s3);border-radius:var(--r-md);line-height:1.7}
/* حماية القرعة */
.drawGuard{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;border-radius:var(--r-lg);padding:var(--s3) var(--s4);margin-bottom:var(--s4);border:1px solid var(--line);background:#fff}
.drawGuard>svg{width:24px;height:24px;flex:0 0 auto}
.drawGuard div{flex:1 1 220px;display:grid;gap:2px}.drawGuard span{font-size:13px;color:var(--muted)}
.drawGuard.ro{background:#F4F7FB;border-color:#C9D9EA}.drawGuard.ro>svg{stroke:var(--navy)}
.drawGuard.open{background:#FFF8E8;border-color:#F0D49A}.drawGuard.open>svg{stroke:#8A5A00}
.drawRO button,.drawRO input,.drawRO select,.drawRO textarea{pointer-events:none;opacity:.55}
.drawRO a{pointer-events:auto}
/* النتائج */
.resTable td.score{font-weight:700;font-size:16px;white-space:nowrap}
/* واجهة الجمهور: المكتبة المنشورة */
.pubGallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--s3)}
.pubGallery a{display:grid;gap:var(--s1);text-decoration:none;color:var(--navy);font-size:13px;font-weight:600}
.pubGallery img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-md);background:#EEF2F6}
.approveBox{border-color:var(--gold)}
/* الطباعة: المحتوى فقط */
@media print{
 .top,.appBar,.subNav,.phActions,.leaveModal,.toast,.rowActions,.libBtns,.studioActions,button{display:none!important}
 body{background:#fff}
 .appMain{padding:0!important}
 .card{box-shadow:none!important;border:1px solid #ddd;break-inside:avoid}
 .pageHead h1{font-size:20px}
}
body:has(.appShell) .top{position:relative!important}
.appBar{margin-top:calc(-1 * var(--s4))}
@media(max-width:640px){.appBar{margin-top:calc(-1 * var(--s3))}}
.memberPerms>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:var(--s2);font-weight:700;color:var(--navy)}
.memberPerms>summary small{font-weight:400;color:var(--muted);font-size:12px}
[hidden]{display:none!important}
.libGrid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}@media(max-width:400px){.libGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2)}.libBtns .btn{flex:1 1 auto;justify-content:center}}

/* ===== 27: لوحة رجل المباراة ===== */
.qmRoot,#motmMount{display:block;margin-top:var(--s4,16px)}
.qmHead{display:flex;align-items:center;justify-content:space-between;gap:var(--s3,12px);flex-wrap:wrap;margin-bottom:var(--s3,12px)}
.qmHead h2{margin:0;font-size:20px;line-height:1.25}
.qmPhase{padding:4px 12px;border-radius:999px;font-size:13px;font-weight:700;border:1px solid rgba(11,25,44,.12);background:#fff;color:#0B192C}
.qmPhase.live{background:#0B192C;color:#E5A93B}.qmPhase.done{background:#E8F5EC;color:#14532D}.qmPhase.warn{background:#FFF6E0;color:#7A4B00}
.qmSec{border:1px solid rgba(11,25,44,.1);border-radius:12px;padding:var(--s4,16px);margin-bottom:var(--s3,12px);background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 16px rgba(0,0,0,.03)}
.qmSec h3{margin:0 0 var(--s3,12px);font-size:16px;line-height:1.3}.qmSec h3 small{display:block;font-weight:400;color:#5A6578;font-size:13px;margin-top:4px}
.qmTeams{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--s3,12px)}
.qmTeam{border:1px solid rgba(11,25,44,.08);border-radius:8px;padding:var(--s3,12px)}
.qmTeamH{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.qmCount{font-variant-numeric:tabular-nums;font-weight:700;color:#7A4B00}.qmCount.ok{color:#14532D}
.qmNom{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid rgba(11,25,44,.06)}
.qmNom img{width:40px;height:40px;border-radius:50%;object-fit:cover}.qmNom div{flex:1;min-width:0}.qmNom small{display:block;color:#5A6578}
.qmX,.qmAdd{min-height:44px;min-width:44px;border:1px solid rgba(11,25,44,.15);border-radius:8px;background:#fff;cursor:pointer;font:inherit;padding:0 12px}
.qmX:hover,.qmAdd:hover{background:#F4F6FA}.qmX:focus-visible,.qmAdd:focus-visible,.qmSec select:focus-visible,.qmSec input:focus-visible{outline:2px solid #B07A1E;outline-offset:2px}
.qmChips,.qmPick,.qmRow,.qmGk{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}
.qmPick select,.qmGk select{min-height:44px;flex:1;min-width:160px}.qmGk label{display:flex;flex-direction:column;gap:4px;flex:1;min-width:200px}
.qmHint{color:#5A6578;font-size:13px}.qmOk{color:#14532D;font-weight:700}
.qmRates{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.qmRate{display:flex;flex-direction:column;gap:4px}.qmRate input{min-height:44px;font-variant-numeric:tabular-nums}
.qmTable{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.qmTable th,.qmTable td{padding:8px;border-bottom:1px solid rgba(11,25,44,.08);text-align:center}.qmTable td:first-child,.qmTable th:first-child{text-align:start}
.qmTable tr.lead td{background:#FFF9EA}.qmTable tr.win td{background:#E8F5EC}.qmTotal{font-weight:800}
.qmLog{margin-top:8px}.qmLog ul{margin:8px 0;padding-inline-start:20px}
.qmApprove textarea{width:100%;margin:8px 0}
@media (prefers-reduced-motion:reduce){.qmSec{transition:none}}
.mcShell{display:grid;gap:var(--s4,16px)}.mcBar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
.mcStage{display:flex;justify-content:center;margin:16px 0;min-height:240px}.mcStage canvas{border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 16px rgba(0,0,0,.03);max-height:78vh;width:auto}
.mcSizes,.mcActions{display:flex;gap:8px;flex-wrap:wrap}
/* ===== 28: جدولة المباريات ===== */
.qsHead{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s3,12px);flex-wrap:wrap;margin-bottom:var(--s4,16px)}
.qsHead h2{margin:0}
.qsList{display:grid;gap:var(--s3,12px)}
.qsRow{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) auto;gap:var(--s3,12px);align-items:center;padding:var(--s3,12px) var(--s4,16px);border:1px solid rgba(11,25,44,.1);border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 16px rgba(0,0,0,.03)}
.qsRow.post{border-color:#E5A93B;background:#FFFBF1}
.qsMain,.qsWhen{display:flex;flex-direction:column;gap:4px;min-width:0}.qsMain span{color:#5A6578}
.qsWhen small{color:#5A6578}.qsOrig{color:#7A4B00!important}
.qsState{align-self:flex-start;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#EAF1F9;color:#0B192C}.qsState.warn{background:#FFF0CC;color:#7A4B00}
.qsAct{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.qsAct .btn{min-height:44px}
.qsTag{color:#5A6578;font-size:13px}
.qsForm{border:1px solid rgba(11,25,44,.12);border-radius:12px;padding:var(--s4,16px);margin-bottom:var(--s4,16px);background:#F8FAFD}
.qsForm .form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s3,12px);margin-top:var(--s3,12px)}
.qsWide{grid-column:1/-1}.qsForm textarea{width:100%}
.qsTable{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.qsTable th,.qsTable td{padding:8px;border-bottom:1px solid rgba(11,25,44,.08);text-align:start;vertical-align:top}
.qsTable td.chg{background:#FFF9EA;font-weight:700}
.qsSum{margin-top:var(--s3,12px)}
@media(max-width:760px){.qsRow{grid-template-columns:1fr}.qsAct{justify-content:flex-start}}
/* ===== 28: إصلاحات التخطيط والتوحيد ===== */
.form{align-items:end}
.form .field label{line-height:1.4}
.form .field input,.form .field select,.form .field textarea{min-height:44px}
.permTree{display:block;columns:260px;column-gap:var(--s3,12px)}
.ptTab{break-inside:avoid;-webkit-column-break-inside:avoid;margin-bottom:var(--s3,12px);display:block}
.ptTab legend{float:none;display:flex}
.ptFold{min-width:44px;min-height:44px;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;color:var(--navy);font-weight:800}
.ptTab.folded .ptSecs{display:none}
.ptTab.folded .ptFold{transform:rotate(180deg)}
.nav,.tabs{gap:8px}
.nav button,.tabs button{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #B8892B;outline-offset:2px}
.btn,.nav button,.tabs button{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease}
.btn:active:not(:disabled){transform:scale(.98)}
.btn[aria-busy="true"],.btn.loading{opacity:.6;pointer-events:none}
table,.qsTable,.kpi b,.scoreLine,.liveClock{font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}
/* ===== 28: المظهر + صور المداخل ===== */
.entCard{position:relative;overflow:hidden}
.entImg{display:none;position:absolute;inset-block:0;inset-inline-end:0;width:36%;background-size:cover;background-repeat:no-repeat;-webkit-mask-image:linear-gradient(to left,#000 55%,transparent);mask-image:linear-gradient(to left,#000 55%,transparent);pointer-events:none}
.entCard .entIco,.entCard .entTxt,.entCard .entGo{position:relative;z-index:1}
.apRow{display:flex;gap:var(--s3,12px);align-items:flex-start;padding:var(--s3,12px) 0;border-bottom:1px solid var(--line)}
.apThumb{flex:0 0 96px;height:72px;border:1px solid var(--line);border-radius:8px;background:#F4F7FB;display:grid;place-items:center;overflow:hidden}
.apThumb img{width:100%;height:100%;object-fit:contain}
.apBody{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.apSl{display:grid;gap:8px}.apSl label{display:flex;align-items:center;gap:8px;font-size:13px}.apSl input[type=range]{flex:1;min-height:44px}
.apGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 var(--s4,16px)}
.apForm input[type=color]{min-height:44px;padding:4px}
.memberCard{grid-template-columns:minmax(0,1fr)!important}.memberPerms{min-width:0}
/* ===== 28: التاريخ المزدوج ===== */
.qdd{display:inline-flex;flex-direction:column;gap:2px;line-height:1.35;vertical-align:middle}
.qdd .qg{font-weight:800;color:var(--navy)}
.qdd .qh{font-size:.86em;color:var(--muted);font-variant-numeric:tabular-nums}
.qdd.tbd{color:#7A4B00;font-weight:700}

.adjBox .adjRow{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;min-height:44px}.adjBox .adjRow input[type=range]{width:100%;min-height:44px}

/* ===== 30: واجهة الجمهور المعاد تنظيمها ===== */
.pubTopIn{max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;direction:ltr}
.pubTop .pubTitle{direction:rtl;text-align:center;min-width:0}
.pubTop .pubTitle h1{margin:0;font-family:var(--f-head);font-weight:900;font-size:clamp(18px,3.6vw,28px);line-height:1.3;color:#fff}
.pubTop .subtitle{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;color:var(--ice,#D6E8F7);font-size:13px;margin-top:4px}
.pubTop .pubLogoT,.pubTop .pubLogoH{justify-self:start;height:64px;width:64px;object-fit:contain;border-radius:16px;background:#F4F1EA;padding:4px;box-shadow:0 0 0 2px rgba(229,169,59,.7)}
.pubTop .pubLogoH{justify-self:end;object-fit:cover;padding:0;border-radius:50%;box-shadow:0 0 0 3px rgba(74,144,226,.45),0 0 0 5px rgba(214,232,247,.9)}
.todayBar{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;margin:12px 0;background:#fff;border:1px solid var(--line);border-radius:16px;font-weight:800;color:var(--navy);min-height:48px}
.todayBar b{background:var(--navy);color:#fff;border-radius:999px;padding:4px 14px}.todayBar:empty{display:none}
.publicTabs{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important}
.publicTabs button.hot:not(.active){background:#14437a}
.dotLive{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3ddc97;margin-inline-start:6px;animation:pulseDot 1.4s infinite}@keyframes pulseDot{50%{opacity:.35}}
.pubActions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.pubActions[hidden]{display:none}
.pubAct{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:start;min-height:84px;padding:16px 18px;border-radius:18px;border:2px solid transparent;cursor:pointer;font-family:inherit}
.pubAct b{font-size:19px;font-weight:900}.pubAct span{font-size:14px;font-weight:700}
.pubAct.gold{background:linear-gradient(135deg,#F0BB52,#D89A25);color:#0B192C;border-color:#fff3}
.pubAct.navy{background:linear-gradient(135deg,#0B192C,#16325A);color:#fff;border-color:var(--yellow)}
.pubAct.off{opacity:.82}.pubAct:focus-visible{outline:3px solid #4A90E2;outline-offset:2px}
.qSlider{container-type:inline-size}
.qSlideHtml{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(90% 90% at 70% 20%,rgba(74,144,226,.40),transparent 60%),linear-gradient(135deg,#0B192C,#16325A);color:#fff}
.qSlider.hasHtml .qShade,.qSlider.hasHtml .qCaption{display:none}
.hs,.hsFull{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2.2cqw;padding:3cqw 6cqw;text-align:center}
.hsFull{padding:0;position:relative}.hsFull img{width:100%;height:100%;object-fit:contain;background:#0B192C;animation:none!important;transform:none!important}
.hsTag{background:var(--yellow);color:#0B192C;font-weight:900;border-radius:999px;padding:.5cqw 3cqw;font-size:clamp(12px,2.6cqw,22px)}.hsFull .hsTag{position:absolute;top:2.5cqw;inset-inline-start:2.5cqw}
.hsRow{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:3cqw;width:100%}
.hsT{display:flex;flex-direction:column;align-items:center;gap:1cqw;min-width:0}.hsT b{font-size:clamp(13px,3cqw,26px);font-weight:900;overflow-wrap:anywhere}
.hsT img,.hsT i{width:clamp(34px,9cqw,84px);height:clamp(34px,9cqw,84px);border-radius:50%;object-fit:cover;background:#F4F1EA;display:grid;place-items:center;font-style:normal;font-weight:900;color:#0B192C;font-size:clamp(16px,4cqw,34px)}
.hsRow strong{font-size:clamp(18px,5cqw,44px);color:var(--yellow);font-weight:900}
.hsMeta{font-size:clamp(11px,2.3cqw,19px);color:#D6E8F7;font-weight:700}
.hs.two{gap:1.2cqw}.hs.two .hsBlock{width:100%;border-top:1px solid rgba(255,255,255,.18);padding-top:1cqw}.hs.two .hsRow{grid-template-columns:1fr auto 1fr}.hs.two .hsT{flex-direction:row;justify-content:center;gap:2cqw}.hs.two .hsT img,.hs.two .hsT i{width:clamp(26px,6cqw,50px);height:clamp(26px,6cqw,50px)}
.publicMatch .matchMeta{align-items:flex-start;gap:10px}.matchMeta .mmTime{font-weight:900;color:var(--navy)}.mmState{font-weight:900;padding:2px 10px;border-radius:999px;background:#eef2f7;color:#52677e}.mmState.live{background:#1f9d68;color:#fff}.mmState.final{background:#0B192C;color:#fff}.mmState.scheduled{background:#FFF3D6;color:#7a5200}
.mSec{margin:16px 0 4px;color:var(--navy)}.restWeeks{margin-top:18px;border:1px solid var(--line);border-radius:14px;padding:6px 14px}.restWeeks summary{cursor:pointer;font-weight:900;padding:10px 0;min-height:44px}
.emptyState{display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center;padding:28px 16px;border:1px dashed var(--line);border-radius:16px;color:#52677e;grid-column:1/-1}.emptyState b{color:var(--navy);font-size:17px}
.predCard{border:1px solid var(--line);border-radius:20px;padding:18px;background:linear-gradient(180deg,#fff,#f6f9fd)}
.predTeams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;text-align:center}.predTeams>div{display:flex;flex-direction:column;align-items:center;gap:8px}.predTeams b{font-size:19px}.predTeams strong{font-size:28px;color:#C98F1F}
.predTeams img,.predTeams i{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#0B192C;color:#fff;display:grid;place-items:center;font-style:normal;font-weight:900;font-size:30px}
.predCard .hsMeta{color:#52677e;text-align:center;margin-top:8px}.predState{text-align:center;margin:14px 0;padding:10px;border-radius:12px;font-weight:800}.predState.open{background:#FFF3D6;color:#6b4a00}.predState.closed{background:#FCECEB;color:#b42318}.predState span{font-variant-numeric:tabular-nums;font-size:22px;font-weight:900}
.prdPick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pickBtn{min-height:56px;border-radius:14px;border:2px solid var(--line);background:#fff;font-family:inherit;font-weight:900;font-size:16px;color:var(--navy);cursor:pointer;padding:8px}
.pickBtn.sel{background:var(--navy);color:#fff;border-color:var(--yellow)}.pickBtn:disabled{opacity:.55;cursor:not-allowed}.pickBtn:focus-visible{outline:3px solid #4A90E2;outline-offset:2px}
.pickBars{margin-top:16px}.pbRow{display:grid;grid-template-columns:minmax(0,1.2fr) 2fr 48px;gap:10px;align-items:center;margin:8px 0}.pbTrack{height:12px;background:#e8eef6;border-radius:99px;overflow:hidden}.pbTrack i{display:block;height:100%;background:linear-gradient(90deg,#16325A,#4A90E2)}
.motmFrame{width:100%;min-height:640px;border:0;border-radius:16px;background:#fff}
@media(max-width:700px){
 .publicTabs>*:last-child{grid-column:auto!important}.publicTabs>*:last-child:nth-child(odd){grid-column:1/-1!important}
 .publicHero .heroSlider.qSlider{aspect-ratio:4/3!important}
 .hsT b{font-size:15px}.hsMeta{font-size:12px}.hsTag{font-size:14px}.hsT img,.hsT i{width:52px;height:52px}.hs.two .hsT img,.hs.two .hsT i{width:34px;height:34px}.hs.two .hsT b{font-size:13px}.hsRow strong{font-size:24px}
 .pubTop .pubLogoT,.pubTop .pubLogoH{height:48px;width:48px;border-radius:12px}.pubTop .pubLogoH{border-radius:50%}.pubTop .subtitle{font-size:11px}
 .pubActions{grid-template-columns:1fr}.publicTabs{grid-template-columns:repeat(2,1fr)!important}
 .publicHero .heroSlider.qSlider{height:auto;max-height:none}.qSlide img{object-fit:contain;background:#0B192C}.qSlide.on img{animation:none}
 .prdPick{grid-template-columns:1fr}.predTeams img,.predTeams i{width:56px;height:56px}
}
.voteBack{margin-top:16px;text-align:center}.votePage .btn.yellow{min-height:44px}
.pcGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:12px 0}.pcRow{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:10px 0}

.modelPick{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.modelPick .btn{min-height:44px}.motmPhotoBox .btn.yellow{cursor:pointer}

.ctr{text-align:center}th.ctr,td.ctr{text-align:center}input.ctr,select.ctr{text-align:center;text-align-last:center}
/* v30 — سجل الدعوات */
.invList{display:grid;gap:8px;max-height:280px;overflow:auto}
.invRow{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:12px;border:1px solid rgba(15,31,51,.12);border-radius:12px;background:#fff}
.invRow.on{border-color:#c9a14a;background:#fbf6e9}
.invRow small{display:block;color:#5b6677}
.invRow .rowActions{grid-column:1/-1}
.sizePick{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:8px}
.sizePick .btn{display:flex;flex-direction:column;align-items:center;min-height:48px;gap:2px}
.sizePick small{opacity:.75;font-size:12px}
.invSizeGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}
.invSizeGrid figure{margin:0;padding:8px;border:1px solid rgba(15,31,51,.12);border-radius:12px;background:#fff;text-align:center}
.invThumb{display:flex;justify-content:center;background:#0b1626;border-radius:8px;padding:4px}
.invThumb canvas{max-width:100%;height:auto}
.invSizeGrid figcaption{margin:8px 0;font-size:13px}
.authOpenBar{background:#fdecc8;color:#6b4a00;border-bottom:2px solid #c9a14a;padding:12px 16px;font-weight:700;text-align:center}
