.empty-t,.group-title,.hdr-qname,.home-greeting,.inv-code,.login-logo h1,.my-pts,.pi-pts,.snum,.sv{font-family:'Barlow Condensed',sans-serif}:root{--bg:#0F1117;--bg2:#161A22;--card:#1C2028;--card2:#242830;--accent:#E61D25;--gold:#C9A020;--green:#3CAC3B;--blue:#2A398D;--purple:#7C3AED;--text:#EEF0F6;--muted:#7A8494;--border:rgba(255,255,255,0.08);--r:14px;--sh:0 4px 24px rgba(0,0,0,.5)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}.btn,.btn-confirm,.btn-p,.btn-paypal,.btn-reject,.btn-s,.ico-btn,.inv-copy-btn,.nav-btn,.phase-tab,.pill,.save-btn,.sc,.sc-bracket,.sc-pos,.sc-pts,.sc-sim,.step-btn,button{touch-action:manipulation}.fullscreen,.otros-scroll,.page{-webkit-overflow-scrolling:touch}body,html{height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:var(--bg);color:var(--text);max-width:480px;margin:0 auto;position:relative;padding-bottom:env(safe-area-inset-bottom);opacity:0;transition:opacity .2s ease}body.app-ready{opacity:1}.hdr{padding-top:max(12px,calc(env(safe-area-inset-top) + 4px))}.page{padding-bottom:max(24px,calc(env(safe-area-inset-bottom) + 16px))}@keyframes pageIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page.on{animation:pageIn .18s ease both}@keyframes shimmer{0%{background-position:-300% 0}100%{background-position:300% 0}}.skeleton{background:linear-gradient(90deg,#1c2028 25%,#242830 50%,#1c2028 75%);background-size:300% 100%;animation:shimmer 1.6s infinite;border-radius:var(--r);border:none!important;box-shadow:none!important;will-change:background-position}.sk-card{height:158px;margin-bottom:10px}.sk-card::before{display:none!important}@keyframes confetti-fly{0%{transform:translate(0,0) scale(1) rotate(0);opacity:1}100%{transform:translate(var(--cx),var(--cy)) scale(0) rotate(var(--cr));opacity:0}}.confetti-p{position:fixed;width:9px;height:9px;border-radius:2px;pointer-events:none;z-index:9999;animation:confetti-fly .75s ease forwards;will-change:transform,opacity}.pi-stepper{display:flex;align-items:center;gap:5px}.step-btn{width:30px;height:30px;border-radius:50%;border:1.5px solid rgba(255,255,255,.13);background:var(--card2);color:var(--text);font-size:18px;font-weight:300;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .14s;flex-shrink:0;user-select:none;-webkit-user-select:none}.step-btn:active{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(.88)}.step-btn:disabled{opacity:.35;cursor:not-allowed}.pct-bar-wrap{width:44px;height:4px;background:rgba(0,0,0,.1);border-radius:3px;overflow:hidden;flex-shrink:0}.pct-bar-fill{height:100%;background:linear-gradient(90deg,var(--green),var(--accent));border-radius:3px;transition:width .4s}.hdr{background:var(--bg2);padding:12px 16px 10px;position:sticky;top:0;z-index:100;box-shadow:0 2px 12px rgba(0,0,0,.08);border-bottom:1px solid var(--border);border-top:4px solid transparent;border-image:linear-gradient(90deg,#E61D25 33%,#2A398D 33% 66%,#3CAC3B 66%) 1}.hdr-row1{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.hdr-notif-btn{display:flex;align-items:center;gap:5px;background:0 0;border:none;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;padding:0;transition:color .2s}.hdr-notif-btn:active{color:var(--text)}.hdr-row2{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.hdr-qname{font-size:17px;font-weight:800;line-height:1.2}.hdr-pts-clean{display:flex;align-items:baseline;gap:2px;flex-shrink:0;font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:var(--gold)}.hdr-pts-unit{font-size:11px;font-weight:700;color:var(--muted)}.hdr-username{font-size:11px;color:var(--muted);margin-bottom:10px;font-weight:500}.hdr-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.logo{display:flex;align-items:center;gap:9px}.logo-ico{font-size:26px}.logo h1{font-size:16px;font-weight:800}.logo p{font-size:10px;color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:1px}.hdr-right{display:flex;gap:8px;align-items:center}.ico-btn{background:rgba(0,0,0,.05);border:none;border-radius:9px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:17px;color:var(--text);transition:background .2s}.ico-btn:active{background:rgba(0,0,0,.1)}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--gold));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;cursor:pointer}.nav{display:flex;gap:3px;background:rgba(0,0,0,.06);border-radius:10px;padding:3px}.live-pts-row{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:8px 0 4px}.live-pts-row strong{color:var(--text)}.pts-badge.live{background:rgba(230,29,37,.15);color:var(--accent);border:1px solid rgba(230,29,37,.3);animation:pulse 1.5s infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.6}}.otros-btn{width:100%;margin-top:8px;background:var(--card2);border:1px solid var(--border);border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;color:var(--text);cursor:pointer;text-align:center;transition:background .15s}.otros-btn:hover{background:var(--border)}.otros-btn.on{border-color:var(--blue);color:var(--blue)}.otros-panel{margin-top:6px;background:var(--card2);border:1px solid var(--border);border-radius:8px;overflow:hidden}.otros-scroll{max-height:calc(6*42px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent}.otros-scroll::-webkit-scrollbar{width:4px}.otros-scroll::-webkit-scrollbar-thumb{background:rgba(0,0,0,.18);border-radius:4px}.otros-row{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--border);font-size:12px;min-height:40px}.otros-row:last-child{border-bottom:none}.otros-av{display:none}.otros-name{flex:1;font-weight:600;color:var(--text);font-size:12px}.otros-pred{font-weight:800;color:#8aa8ff;min-width:36px;text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:15px;letter-spacing:.5px}.otros-pts{font-family:'Barlow Condensed',sans-serif;font-size:17px;font-weight:900;color:var(--gold);min-width:44px;text-align:right}.cd-chip{display:inline-flex;align-items:center;gap:4px;background:rgba(201,160,32,.12);border:1px solid rgba(201,160,32,.28);border-radius:20px;padding:2px 8px;font-size:10px;font-weight:700;color:var(--gold);margin-top:5px}.pred-count-chip{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:var(--muted);margin-top:3px;padding:1px 0}.lock-msg{margin-top:8px;font-size:10px;color:var(--muted);text-align:center;opacity:.75}.sub-nav{display:flex;gap:6px;margin:12px 0 14px;background:var(--card2);border-radius:12px;padding:4px;border:1px solid var(--border)}.sub-nav-btn{flex:1;background:0 0;border:none;border-radius:9px;padding:8px 4px;font-size:11px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .2s;white-space:nowrap}.sub-nav-btn.on{background:var(--card);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.12)}.nav-btn{flex:1;border:none;background:0 0;color:var(--muted);border-radius:8px;font-size:10.5px;font-weight:600;cursor:pointer;padding:7px 2px;display:flex;flex-direction:column;align-items:center;gap:2px;transition:all .18s}.nav-btn .ni{font-size:14px;transition:transform .18s}.nav-btn.on{background:rgba(230,29,37,.12);color:var(--accent);box-shadow:inset 0 0 0 1px rgba(230,29,37,.22)}.nav-btn.on .ni{transform:scale(1.12)}.page{display:none;padding:14px 14px 24px}.page.on{display:block}.phase-scroll{display:flex;gap:6px;overflow-x:auto;padding:6px 2px;margin-bottom:10px;scrollbar-width:none}.phase-scroll::-webkit-scrollbar{display:none}.phase-chip{flex-shrink:0;padding:7px 14px;background:var(--card);border:1.5px solid var(--border);border-radius:20px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap;color:var(--muted)}.phase-chip.on{border-color:var(--accent);color:var(--accent);background:rgba(230,29,37,.08);box-shadow:0 0 10px rgba(230,29,37,.15)}.group-row{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}.group-row::-webkit-scrollbar{display:none}.grp-chip{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--card);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;cursor:pointer;transition:border-color .2s,color .2s,background .2s;color:var(--muted);box-sizing:border-box}.grp-chip.on{border-color:var(--gc,var(--gold));color:var(--text);background:rgba(128,128,128,.08)}.group-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.group-title{font-size:18px;font-weight:800}.sim-btn{background:rgba(230,29,37,.15);border:1px solid rgba(230,29,37,.3);border-radius:8px;padding:5px 10px;font-size:11px;font-weight:700;color:var(--accent);cursor:pointer}.mc{background:var(--card);border-radius:var(--r);padding:12px 14px;margin-bottom:10px;border:1px solid var(--border);border-left:3px solid rgba(255,255,255,.08);position:relative;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.14)}.mc-grp{border-left-color:var(--grp-color,rgba(201,160,32,.55));transition:border-left-color .35s ease}@keyframes grpIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}.mc-grp{animation:grpIn .22s ease both}.mc-ko{border-left-color:rgba(42,57,141,.65)}.mc-pl{border-left-color:rgba(111,63,182,.65)}.mc.is-live{border-left-color:var(--accent)!important}.mc::before{display:none}.mc-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.mc-info{text-align:center;margin-bottom:8px}.mc-time{font-size:11px;color:var(--text);font-weight:600;margin-bottom:2px}.mc-venue{font-size:10px;color:rgba(238,240,246,.65)}.mc-phase{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--gold);background:rgba(201,160,32,.12);padding:2px 7px;border-radius:5px}.status{font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:5px}.status.live{background:rgba(230,29,37,.2);color:var(--accent)}.status.soon{background:rgba(42,57,141,.35);color:#8aa8ff}.status.done{background:rgba(255,255,255,.08);color:rgba(238,240,246,.65)}.teams{display:flex;align-items:center;gap:4px}.team{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.flag{font-size:38px;line-height:1}.pl-badge{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.tname{font-size:13px;font-weight:700;text-align:center;line-height:1.2}.tabbr{font-size:10px;color:rgba(238,240,246,.5);letter-spacing:.3px}.score-c{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:80px}.score-d{display:flex;align-items:center;gap:4px}.snum{font-size:36px;font-weight:900;line-height:1;letter-spacing:-.5px}.ssep{font-size:16px;font-weight:300;color:rgba(238,240,246,.4)}.slbl{font-size:10px;color:rgba(238,240,246,.55);text-transform:uppercase;letter-spacing:.4px}.pred{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}.pred-lbl{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:rgba(238,240,246,.4);margin-bottom:8px;display:flex;align-items:center;gap:8px;justify-content:center}.pred-lbl::after,.pred-lbl::before{content:'';flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent)}.pred-row{display:flex;align-items:center;gap:6px;justify-content:center}.pt{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.pt-n{font-size:10px;color:rgba(238,240,246,.6);font-weight:600;text-transform:uppercase;letter-spacing:.4px}.pi{width:50px;height:50px;border-radius:11px;background:var(--card2);border:1.5px solid rgba(255,255,255,.12);color:var(--text);font-size:22px;font-weight:900;text-align:center;font-family:'Barlow Condensed',sans-serif;-moz-appearance:textfield;transition:all .18s;touch-action:manipulation}.pi:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(230,29,37,.18),inset 0 0 0 1px rgba(230,29,37,.25);background:rgba(230,29,37,.07)}.pi:not(:placeholder-shown):not(:disabled){border-color:rgba(201,160,32,.55);background:rgba(201,160,32,.07)}.pi::-webkit-inner-spin-button,.pi::-webkit-outer-spin-button{-webkit-appearance:none}.pi:disabled{opacity:.5;cursor:not-allowed}.pv{font-size:13px;color:rgba(238,240,246,.35);font-weight:400}.save-btn{display:block;margin:10px auto 0;padding:10px 36px;width:auto;background:linear-gradient(135deg,#e61d25,#b01820);border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:all .18s;letter-spacing:.3px;box-shadow:0 3px 10px rgba(230,29,37,.25)}.save-btn:active{transform:scale(.96);box-shadow:0 1px 4px rgba(230,29,37,.2)}.save-btn.saved{background:linear-gradient(135deg,#3cac3b,#258a25);box-shadow:0 3px 10px rgba(60,172,59,.25);color:#fff!important;border-color:transparent!important}.save-btn:disabled{opacity:.5;cursor:not-allowed}.pts-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(201,160,32,.14);border:1px solid rgba(201,160,32,.3);border-radius:7px;padding:3px 8px;font-size:11px;font-weight:700;color:var(--gold)}.stcard{background:var(--card);border-radius:var(--r);overflow:hidden;border:1px solid var(--border)}.st-hdr{padding:13px 15px;background:linear-gradient(135deg,rgba(201,160,32,.15),rgba(201,160,32,.05));display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid rgba(201,160,32,.2)}.st-hdr h3{font-size:15px;font-weight:700}.st-row{display:flex;align-items:center;padding:12px 15px;gap:11px;border-bottom:1px solid var(--border);transition:background .15s}.st-row:last-child{border-bottom:none}.st-row.r1-row{background:linear-gradient(90deg,rgba(201,160,32,.07),transparent)}.st-row.r2-row{background:linear-gradient(90deg,rgba(180,190,200,.05),transparent)}.st-row.r3-row{background:linear-gradient(90deg,rgba(180,120,60,.05),transparent)}.rank{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0}.r1{background:linear-gradient(135deg,#d4af37,#9a7b0a);color:#000;box-shadow:0 2px 8px rgba(201,160,32,.35)}.r2{background:linear-gradient(135deg,#cbd6e2,#8899af);color:#111}.r3{background:linear-gradient(135deg,#cd7f32,#8b4e12);color:#fff;box-shadow:0 2px 6px rgba(160,80,0,.2)}.rn{background:rgba(255,255,255,.05);color:var(--muted)}.pi-info{flex:1}.pi-name{font-size:13px;font-weight:600}.pi-sub{font-size:11px;color:var(--muted)}.pi-pts{font-size:20px;font-weight:900;background:linear-gradient(135deg,#b8900c,#8b6a0a);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.sg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.sc{border-radius:12px;padding:14px 10px;text-align:center;border:1px solid transparent;position:relative;overflow:hidden}.sc-sim{background:linear-gradient(145deg,rgba(42,57,141,.45),rgba(42,57,141,.25));border-color:rgba(42,57,141,.5)!important;cursor:pointer;transition:opacity .15s;border-top:3px solid #2a398d!important}.sc-sim:active{opacity:.8}.sc-sim .sv{color:#8aa8ff}.sc-pts{background:linear-gradient(145deg,rgba(230,29,37,.4),rgba(230,29,37,.2));border-color:rgba(230,29,37,.45)!important;border-top:3px solid var(--accent)!important}.sc-pts .sv{color:#ff7b7b}.sc-pos{background:linear-gradient(145deg,rgba(201,160,32,.35),rgba(201,160,32,.18));border-color:rgba(201,160,32,.4)!important;border-top:3px solid var(--gold)!important}.sc-pos .sv{color:#e8c14a}.sc-grn{background:linear-gradient(145deg,rgba(60,172,59,.3),rgba(60,172,59,.14));border-color:rgba(60,172,59,.35)!important;border-top:3px solid var(--green)!important}.sc-grn .sv{color:#5dd65c}.sc-bracket{background:linear-gradient(145deg,rgba(60,172,59,.3),rgba(60,172,59,.14));border-color:rgba(60,172,59,.35)!important;border-top:3px solid var(--green)!important;cursor:pointer;transition:opacity .15s}.sc-bracket:active{opacity:.8}.sc-bracket .sv{color:#5dd65c}.sc-neu{background:linear-gradient(145deg,rgba(100,116,139,.15),rgba(100,116,139,.06));border-color:rgba(100,116,139,.2)!important;border-top:3px solid rgba(100,116,139,.4)!important}.sc-neu .sv{color:#d0d8e8}.sc-clickable{cursor:pointer;transition:filter .15s}.sc-clickable:active{filter:brightness(1.2)}.sv{font-size:26px;font-weight:900;font-family:'Barlow Condensed',sans-serif}.sl{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:3px;font-weight:700}.my-card{background:linear-gradient(145deg,rgba(201,160,32,.16) 0,rgba(230,29,37,.1) 55%,rgba(42,57,141,.13) 100%);border-radius:var(--r);padding:18px;margin-bottom:14px;border:1px solid rgba(201,160,32,.25);border-left:3px solid rgba(201,160,32,.6);position:relative;overflow:hidden;box-shadow:0 4px 28px rgba(0,0,0,.45)}.my-card::before{display:none}.my-card::after{content:'🏆';position:absolute;right:-8px;bottom:-12px;font-size:80px;opacity:.05}.my-lbl{font-size:12px;color:var(--muted);margin-bottom:6px}.my-pts{font-size:46px;font-weight:900;line-height:1;background:linear-gradient(135deg,#e8c14a 0,#c9a020 60%,gold 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.my-rank{font-size:13px;color:var(--muted);margin-top:4px}.my-rank span{color:var(--accent);font-weight:700}.pts-break{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.pb{background:rgba(0,0,0,.05);border-radius:7px;padding:5px 9px;font-size:11px}.pb strong{color:var(--gold)}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.spec-card{background:var(--card);border-radius:var(--r);padding:14px;border:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.3)}.spec-card.full{grid-column:1/-1}.spec-ico{font-size:28px;margin-bottom:6px}.spec-title{font-size:12px;font-weight:700;margin-bottom:4px}.spec-pts{font-size:10px;color:var(--gold);font-weight:700;margin-bottom:10px}.spec-input{width:100%;padding:9px 11px;background:var(--card2);border:1.5px solid var(--border);border-radius:9px;color:var(--text);font-size:13px;font-weight:600}.spec-input:focus{outline:0;border-color:var(--accent)}.spec-input:disabled{opacity:.5;cursor:not-allowed}select.spec-input{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%236B7A99' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:20px;padding-right:28px}select.spec-input option{background:var(--card)}.sec-btn{padding:5px 10px;background:var(--card2);border:1px solid var(--border);border-radius:8px;font-size:11px;font-weight:700;color:var(--text);cursor:pointer}.sec-btn:active{background:var(--border)}.admin-tabs{display:flex;gap:0;background:var(--bg);border-radius:11px;padding:3px;margin-bottom:14px;border:1px solid var(--border)}.at{flex:1;border:none;background:0 0;color:var(--muted);border-radius:8px;font-size:13px;font-weight:800;cursor:pointer;padding:10px 4px;transition:all .2s;text-align:center;letter-spacing:.2px}.at.on{background:linear-gradient(135deg,var(--accent),#b01820);color:#fff;box-shadow:0 2px 8px rgba(230,29,37,.3)}.admin-sub{display:none}.admin-sub.on{display:block}.prize-mode-toggle{display:flex;gap:4px;background:rgba(0,0,0,.06);border-radius:9px;padding:3px;margin-bottom:14px}.pmt-btn{flex:1;border:none;background:0 0;color:var(--muted);border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;padding:8px 4px;transition:all .2s;text-align:center}.pmt-btn.on{background:var(--card);color:var(--text);box-shadow:0 1px 4px rgba(0,0,0,.1)}.prize-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.prize-medal{font-size:20px;flex-shrink:0;width:28px;text-align:center}.prize-input-wrap{flex:1;position:relative}.prize-input-wrap input{width:100%;box-sizing:border-box}.prize-suffix{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:700;color:var(--muted);pointer-events:none}.prize-result{min-width:80px;text-align:right;font-size:12px;font-weight:700;color:var(--gold);flex-shrink:0}.prize-bar-wrap{background:rgba(0,0,0,.06);border-radius:20px;height:8px;margin:10px 0 4px;overflow:hidden}.prize-bar-fill{height:100%;border-radius:20px;transition:width .3s,background .3s}.prize-bar-ok{background:linear-gradient(90deg,var(--gold),#f97316)}.prize-bar-over{background:var(--accent)}.bote-display{background:rgba(201,160,32,.08);border:1px solid rgba(201,160,32,.2);border-radius:10px;padding:10px 14px;margin-bottom:12px;display:flex;align-items:center;gap:10px}.bote-ico{font-size:24px}.bote-amount{font-size:20px;font-weight:900;color:var(--gold)}.bote-label{font-size:10px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.money-input-wrap{position:relative;display:flex;align-items:center}.money-prefix{position:absolute;left:12px;font-size:13px;font-weight:700;color:var(--muted);pointer-events:none;z-index:1}.money-input-wrap input{padding-left:40px!important}.pago-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;border-radius:20px;padding:2px 8px;text-transform:uppercase;letter-spacing:.5px}.pago-badge.paid{background:rgba(0,180,80,.15);color:#00b450}.pago-badge.pending{background:rgba(230,165,0,.15);color:#e6a500}.pago-badge.free{background:rgba(100,100,120,.15);color:var(--muted)}.pago-badge.rejected{background:rgba(230,29,37,.15);color:var(--accent)}.pago-pill{position:absolute;top:8px;right:8px}.cuota-selector{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.cuota-opt{border:2px solid var(--border);border-radius:10px;padding:10px 8px;text-align:center;cursor:pointer;transition:all .2s;background:var(--card)}.cuota-opt.selected{border-color:var(--gold);background:rgba(201,160,32,.07)}.cuota-opt .co-ico{font-size:22px;margin-bottom:4px}.cuota-opt .co-label{font-size:11px;font-weight:700;color:var(--text)}.cuota-opt .co-sub{font-size:10px;color:var(--muted)}.pago-block{text-align:center;padding:30px 20px}.pago-block .pb-ico{font-size:52px;margin-bottom:14px}.pago-block .pb-title{font-size:18px;font-weight:800;margin-bottom:8px}.pago-block .pb-sub{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:20px}.pago-instr{background:rgba(201,160,32,.1);border:1px solid rgba(201,160,32,.25);border-radius:10px;padding:14px;font-size:13px;line-height:1.6;margin-bottom:16px;white-space:pre-wrap;text-align:left}.btn-paypal{background:#0070ba;color:#fff;border:none;border-radius:12px;padding:14px 20px;font-size:15px;font-weight:700;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.btn-paypal:hover{background:#005a9e}.pot-line{font-size:11px;color:var(--gold);font-weight:700;margin-top:3px}.admin-pago-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border)}.admin-pago-item:last-child{border-bottom:none}.admin-pago-av{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--gold));display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;flex-shrink:0}.admin-pago-info{flex:1;min-width:0}.admin-pago-name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-pago-email{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-pago-actions{display:flex;gap:6px;flex-shrink:0}.btn-confirm{background:rgba(0,180,80,.15);color:#00b450;border:1px solid rgba(0,180,80,.3);border-radius:8px;padding:5px 10px;font-size:11px;font-weight:700;cursor:pointer;transition:all .2s}.btn-confirm:hover{background:rgba(0,180,80,.25)}.btn-reject{background:rgba(230,29,37,.1);color:var(--accent);border:1px solid rgba(230,29,37,.2);border-radius:8px;padding:5px 10px;font-size:11px;font-weight:700;cursor:pointer;transition:all .2s}.btn-reject:hover{background:rgba(230,29,37,.2)}.lock-banner{background:rgba(42,57,141,.15);border:1px solid rgba(42,57,141,.3);border-left:3px solid #2a398d;border-radius:10px;padding:12px 14px;margin-bottom:14px;display:flex;gap:10px;align-items:flex-start}.lock-ico{font-size:20px;flex-shrink:0;margin-top:1px}.lock-text h4{font-size:13px;font-weight:700;color:#7a9fff;margin-bottom:3px}.lock-text p{font-size:12px;color:var(--muted);line-height:1.5}.lock-banner.warn{background:linear-gradient(135deg,#fffbee,#fffdf5);border-color:rgba(184,144,12,.22);border-left-color:var(--gold)}.lock-banner.warn h4{color:var(--gold)}.settings-section{background:var(--card);border-radius:var(--r);padding:16px;margin-bottom:12px;border:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.3)}.settings-section h3{font-size:14px;font-weight:700;margin-bottom:14px;color:var(--text)}.fg{margin-bottom:12px}.fl{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:5px}.fi{width:100%;padding:10px 12px;background:var(--card2);border:1.5px solid var(--border);border-radius:9px;color:var(--text);font-size:14px}.fi:focus{outline:0;border-color:var(--accent)}.fi:disabled{opacity:.5;cursor:not-allowed}textarea.fi{resize:vertical;min-height:72px;line-height:1.5}.fi-row{display:flex;gap:8px;align-items:center}.fi-row .fi{flex:1}.fi-unit{font-size:13px;color:var(--muted);white-space:nowrap}.fi-hint{font-size:11px;color:var(--muted);margin-top:4px}.scoring-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.scoring-header h3{font-size:14px;font-weight:700}.toggle-all{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;color:var(--muted)}.toggle-all input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.rule-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.rule-row:last-child{border-bottom:none}.rule-check{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.rule-info{flex:1}.rule-name{font-size:13px;font-weight:600}.rule-desc{font-size:11px;color:var(--muted);margin-top:1px}.rule-pts-wrap{display:flex;align-items:center;gap:5px;flex-shrink:0}.rule-pts-input{width:52px;height:36px;background:var(--card2);border:1.5px solid var(--border);border-radius:8px;color:var(--gold);font-size:15px;font-weight:800;text-align:center;-moz-appearance:textfield}.rule-pts-input:focus{outline:0;border-color:var(--accent)}.rule-pts-input::-webkit-inner-spin-button,.rule-pts-input::-webkit-outer-spin-button{-webkit-appearance:none}.rule-pts-input:disabled{opacity:.5;cursor:not-allowed}.rule-pts-lbl{font-size:11px;color:var(--muted)}.rule-row.disabled .rule-desc,.rule-row.disabled .rule-name{opacity:.4}.result-select{width:100%;padding:10px 12px;background:var(--card2);border:1.5px solid var(--border);border-radius:9px;color:var(--text);font-size:13px;margin-bottom:12px;-webkit-appearance:none;appearance:none}.result-select option{background:var(--card)}.score-entry{display:flex;gap:12px;align-items:center;margin-bottom:14px}.score-entry .fi{text-align:center;font-size:22px;font-weight:900;padding:10px 8px}.invite-box{background:linear-gradient(135deg,#fffdf0,#fffbec);border:2px dashed rgba(184,144,12,.35);border-radius:12px;padding:16px;text-align:center;margin-bottom:14px}.inv-code{font-size:30px;font-weight:900;letter-spacing:6px;color:var(--gold);font-family:'Barlow Condensed',sans-serif}.inv-sub{font-size:11px;color:var(--muted);margin-top:3px}.pl-item{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid var(--border)}.pl-item:last-child{border-bottom:none}.pl-av{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--accent));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex-shrink:0}.pl-name{font-size:13px;font-weight:600}.pl-sub{font-size:11px;color:var(--muted)}.pl-pts{font-size:15px;font-weight:800;color:var(--gold)}.act-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.act-item:last-child{border-bottom:none}.act-ico{font-size:24px;flex-shrink:0}.act-text{font-size:13px;font-weight:600}.act-sub{font-size:11px;color:var(--muted);margin-top:2px}.btn-p{width:100%;padding:13px;background:linear-gradient(135deg,#e61d25 0,#b01820 100%);border:none;border-radius:11px;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;margin-top:6px;box-shadow:0 3px 14px rgba(230,29,37,.3)}.btn-p:active{opacity:.88;transform:scale(.98)}.btn-s{width:100%;padding:11px;background:0 0;border:1.5px solid rgba(255,255,255,.14);border-radius:11px;color:var(--text);font-size:14px;font-weight:600;cursor:pointer;margin-top:8px}.btn-row{display:flex;gap:8px}.btn-row .btn-p,.btn-row .btn-s{margin-top:0}.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;align-items:flex-end;justify-content:center;backdrop-filter:blur(4px)}.overlay.open{display:flex}.modal{background:var(--card);border-radius:22px 22px 0 0;border-top:3px solid var(--accent);width:100%;max-width:480px;padding:22px 18px 40px;animation:up .3s ease;max-height:85vh;overflow-y:auto;box-shadow:0 -8px 40px rgba(0,0,0,.6)}@keyframes up{from{transform:translateY(100%)}to{transform:translateY(0)}}.modal-handle{width:38px;height:4px;background:rgba(255,255,255,.15);border-radius:2px;margin:0 auto 18px}.modal h2{font-size:17px;font-weight:700;margin-bottom:15px}.modal-box{background:var(--bg);width:100%;max-width:480px;border-radius:22px 22px 0 0;border-top:3px solid var(--accent);animation:up .3s ease;box-shadow:0 -8px 32px rgba(0,0,0,.15)}.modal-hdr{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid var(--border)}.modal-hdr span{font-size:17px;font-weight:800}.modal-close{background:var(--card2);border:none;cursor:pointer;width:30px;height:30px;border-radius:50%;font-size:14px;display:flex;align-items:center;justify-content:center;color:var(--muted);flex-shrink:0}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#0d1520;border:1px solid rgba(0,0,0,.07);color:#eef3ff;padding:11px 22px;border-radius:100px;font-size:13px;font-weight:600;z-index:900;opacity:0;pointer-events:none;transition:opacity .3s;white-space:nowrap;box-shadow:0 4px 20px rgba(0,0,0,.3)}.toast.show{opacity:1}.sec-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sec-title{font-size:15px;font-weight:700}.sec-link{font-size:12px;color:var(--accent);cursor:pointer}.admin-badge{background:rgba(201,160,32,.15);color:var(--gold);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:2px 6px;border-radius:5px}.divider{height:1px;background:var(--border);margin:14px 0}.chip-sel{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}.chip-sel::-webkit-scrollbar{display:none}.chip{flex-shrink:0;padding:7px 14px;background:var(--card);border:1.5px solid var(--border);border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;color:var(--muted)}.chip.on{border-color:var(--accent);color:var(--accent)}.empty{text-align:center;padding:40px 20px;border-radius:var(--r);background:linear-gradient(160deg,var(--card) 0,var(--bg2) 100%);border:1px dashed rgba(0,0,0,.07);margin-bottom:10px}.empty-svg{width:72px;height:72px;margin:0 auto 14px;opacity:.55}.empty-ico{font-size:48px;margin-bottom:10px}.empty-t{font-size:15px;font-weight:700;margin-bottom:6px;font-family:'Barlow Condensed',sans-serif;letter-spacing:.2px}.empty-s{font-size:13px;color:var(--muted);line-height:1.5}.tag{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:6px;font-size:10px;font-weight:700;margin-left:5px}.tag-admin{background:rgba(201,160,32,.15);color:var(--gold)}.tag-you{background:rgba(27,111,232,.15);color:#5b9bf5}@keyframes fadeSlideUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.mc{animation:none}.qm-fresh .mc{animation:fadeSlideUp .28s ease both}.qm-fresh .mc:first-child{animation-delay:.03s}.qm-fresh .mc:nth-child(2){animation-delay:.07s}.qm-fresh .mc:nth-child(3){animation-delay:.11s}.qm-fresh .mc:nth-child(4){animation-delay:.15s}.qm-fresh .mc:nth-child(5){animation-delay:.19s}.qm-fresh .mc:nth-child(6){animation-delay:.22s}.qm-fresh .mc:nth-child(n+7){animation-delay:.25s}.mc{cursor:default;transition:transform .1s ease,box-shadow .1s ease}.mc:active{transform:scale(.985);box-shadow:0 1px 6px rgba(0,0,0,.5)}@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.4)}}@keyframes live-glow{0%,100%{box-shadow:0 0 0 0 rgba(230,29,37,.5)}70%{box-shadow:0 0 0 8px rgba(230,29,37,0)}}.live-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);display:inline-block;animation:pulse-dot 1.3s ease-in-out infinite;flex-shrink:0;will-change:transform,opacity}.live-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(230,29,37,.18);border:1px solid rgba(230,29,37,.5);border-radius:20px;padding:3px 9px;font-size:10px;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.6px}.live-min{font-size:11px;color:var(--muted);font-weight:600;font-variant-numeric:tabular-nums}.live-section{margin-bottom:6px}.live-section-hdr{display:flex;align-items:center;gap:8px;margin-bottom:10px}.live-section-hdr h3{font-size:14px;font-weight:700;flex:1}.mc.is-live{border-color:rgba(230,29,37,.5);animation:live-glow 2s ease-in-out infinite;background:linear-gradient(160deg,rgba(230,29,37,.12) 0,var(--card) 100%);will-change:box-shadow}.mc.is-live::before{background:linear-gradient(90deg,#e61d25,#ff4040)}.live-score-num{font-size:30px;font-weight:900;line-height:1;color:var(--accent)}.auto-sync-banner{background:rgba(60,172,59,.1);border:1px solid rgba(60,172,59,.25);border-left:3px solid var(--green);border-radius:10px;padding:10px 13px;margin-bottom:12px;display:flex;gap:9px;align-items:flex-start;font-size:12px;color:var(--green)}.auto-sync-banner span{line-height:1.5}.api-status-row{display:flex;align-items:center;gap:7px;font-size:12px;margin-top:8px}.api-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.api-dot.ok{background:var(--green)}.api-dot.err{background:var(--accent)}.api-dot.off{background:var(--muted)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.toggle-row:last-child{border-bottom:none}.toggle-lbl{font-size:13px;font-weight:600}.toggle-sub{font-size:11px;color:var(--muted);margin-top:2px}.sw{position:relative;display:inline-block;width:44px;height:24px}.sw input{opacity:0;width:0;height:0}.sw-slider{position:absolute;cursor:pointer;inset:0;background:rgba(0,0,0,.12);border-radius:24px;transition:.3s}.sw-slider:before{content:'';position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.sw input:checked+.sw-slider{background:var(--green)}.sw input:checked+.sw-slider:before{transform:translateX(20px)}#login-screen{position:fixed;top:0;right:0;bottom:0;left:0;inset:0;background:#101318;z-index:500;display:flex;flex-direction:column;align-items:center;overflow-y:auto;opacity:1!important}#login-screen::before{content:'';display:block;width:100%;height:5px;flex-shrink:0;background:linear-gradient(90deg,#e61d25 33%,#2a398d 33% 66%,#3cac3b 66%)}.login-wrap{width:100%;max-width:400px;display:flex;flex-direction:column;padding:0 20px 40px;flex:1}.login-logo{text-align:center;padding:28px 24px 18px;position:relative}.login-ball{width:172px;height:auto;display:block;margin:0 auto 16px;filter:drop-shadow(0 10px 32px rgba(201,160,32,.45)) drop-shadow(0 0 48px rgba(201,160,32,.18));border-radius:18px}.login-logo h1{font-size:26px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.5px;line-height:1;font-family:'Barlow Condensed',sans-serif;margin-top:0}.login-logo p{font-size:11px;color:rgba(255,255,255,.35);font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-top:5px}.login-card{background:#1c2028;border-radius:20px;padding:22px 20px;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px rgba(0,0,0,.4);margin-top:6px}.login-card h2{font-size:18px;font-weight:800;margin-bottom:3px;color:#fff}.login-card .login-sub{font-size:12px;color:#8a9099;margin-bottom:18px}.login-card .fi{background:#262b35;border-color:rgba(255,255,255,.1);color:#fff}.login-card .fi::placeholder{color:#555d6b}.login-card .fi:focus{border-color:var(--accent);background:#2a2f3a}.login-card label.fl{color:#a0a8b4}.login-card .btn-p{background:linear-gradient(135deg,#e61d25,#b01820);box-shadow:0 4px 16px rgba(230,29,37,.4)}.login-footer{text-align:center;margin-top:16px;font-size:13px;color:#6b7480}.login-footer span{color:var(--accent);font-weight:700;cursor:pointer}.login-err{display:none;color:#ff6b6b;font-size:12px;margin-bottom:10px;text-align:center;font-weight:600;background:rgba(230,29,37,.12);padding:8px 12px;border-radius:8px;border:1px solid rgba(230,29,37,.25)}#registerModal{z-index:700}.reg-err{display:none;color:var(--accent);font-size:12px;margin-bottom:10px;text-align:center;font-weight:600}#home-screen{position:fixed;inset:0;background:var(--bg);z-index:400;overflow-y:auto;display:none;color:var(--text)}.home-wrap{padding:0;max-width:480px;margin:0 auto;padding-bottom:48px}.home-hero{position:relative;padding:24px 18px 20px;overflow:hidden;background:var(--bg2);border-bottom:1px solid var(--border)}.home-hero::after{content:'';display:none}.home-hero-top{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.home-hero-title{font-size:10px;color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:1.8px;margin-bottom:6px}.home-greeting{font-size:26px;font-weight:900;line-height:1.1;font-family:'Barlow Condensed',sans-serif;letter-spacing:-.3px;color:var(--text)}.home-sub{font-size:12px;color:var(--muted);margin-top:4px;font-weight:500}.home-tribar{height:4px;background:linear-gradient(90deg,#e61d25 33%,#2a398d 33% 66%,#3cac3b 66%)}.home-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--gold));display:flex;align-items:center;justify-content:center;font-weight:900;font-size:17px;flex-shrink:0;font-family:'Barlow Condensed',sans-serif;color:#fff;box-shadow:0 0 0 3px rgba(230,29,37,.2),0 4px 12px rgba(0,0,0,.15)}.home-content{padding:16px 16px 0}.ql-card{background:var(--card);border-radius:var(--r);padding:15px 14px 15px 16px;margin-bottom:10px;border:1px solid var(--border);display:flex;align-items:center;gap:0;transition:all .15s;overflow:hidden;position:relative;box-shadow:0 2px 12px rgba(0,0,0,.3)}.ql-card:active{background:var(--card2);transform:scale(.99)}.ql-stripe{width:4px;height:100%;position:absolute;left:0;top:0;bottom:0;background:linear-gradient(180deg,#e61d25,#2a398d,#3cac3b)}.ql-ico{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0;margin:0 13px}.ql-info{flex:1;min-width:0}.ql-name{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ql-meta{font-size:11px;color:var(--muted);margin-top:3px}.ql-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0;margin-left:10px}.ql-enter{background:var(--accent);border:none;border-radius:8px;color:#fff;font-size:11px;font-weight:700;padding:7px 13px;cursor:pointer;white-space:nowrap}.ql-cfg{background:rgba(201,160,32,.15);border:1px solid rgba(201,160,32,.3);border-radius:7px;color:var(--gold);font-size:10px;font-weight:700;padding:4px 10px;cursor:pointer;white-space:nowrap}.ql-empty{background:#fff;border-radius:var(--r);padding:28px 20px;text-align:center;border:1px dashed rgba(0,0,0,.14);margin-bottom:14px}.ql-empty-ico{font-size:40px;margin-bottom:8px}.ql-empty-t{font-size:14px;font-weight:700;margin-bottom:4px}.ql-empty-s{font-size:12px;color:var(--muted)}.gr-card{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);box-shadow:0 1px 6px rgba(0,0,0,.06)}.gr-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(0,0,0,.06);position:relative}.gr-row:last-child{border-bottom:none}.gr-row.gr-me{background:rgba(201,16,32,.05)}.gr-rank{width:24px;text-align:center;font-size:13px;font-weight:900;color:var(--muted);flex-shrink:0;font-variant-numeric:tabular-nums}.gr-rank.top1{font-size:17px}.gr-rank.top2{font-size:17px}.gr-rank.top3{font-size:17px}.gr-info{flex:1;min-width:0}.gr-name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-sub{font-size:10px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-pts{font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:900;color:var(--gold);line-height:1;white-space:nowrap}.gr-pts-lbl{font-size:11px;font-weight:600;color:var(--muted)}.gr-view-more{display:block;text-align:center;padding:10px;font-size:12px;color:var(--accent);font-weight:700;background:rgba(201,16,32,.04);border-top:1px solid var(--border);cursor:pointer;letter-spacing:.3px}.gr-my-row{border-top:1px dashed var(--border);background:rgba(201,16,32,.04)}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.ac{background:var(--card);border-radius:var(--r);padding:18px 14px;border:1px solid var(--border);cursor:pointer;text-align:center;transition:all .15s;box-shadow:var(--sh);position:relative;overflow:hidden}.ac:active{background:var(--card2);transform:scale(.97)}.ac-ico{font-size:28px;margin-bottom:8px;position:relative;z-index:1}.ac-title{font-size:13px;font-weight:700;margin-bottom:2px;position:relative;z-index:1}.ac-sub{font-size:11px;color:var(--muted);position:relative;z-index:1}.ac-crear{border-color:rgba(230,29,37,.2);background:linear-gradient(145deg,rgba(230,29,37,.1),var(--card))}.ac-crear::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent);border-radius:var(--r) var(--r) 0 0}.ac-unirse{border-color:rgba(201,160,32,.2);background:linear-gradient(145deg,rgba(201,160,32,.1),var(--card))}.ac-unirse::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold);border-radius:var(--r) var(--r) 0 0}.ac.full{grid-column:1/-1;display:flex;align-items:center;gap:14px;text-align:left;padding:14px 16px}.ac.full .ac-ico{font-size:20px;margin-bottom:0;flex-shrink:0}.ac.full .ac-text{flex:1}.ac-info{border-color:rgba(42,57,141,.2);background:linear-gradient(135deg,rgba(42,57,141,.1),var(--card))}.ac-info::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--blue);border-radius:var(--r) var(--r) 0 0}.ac-settings{border-color:rgba(100,116,139,.2);background:linear-gradient(135deg,rgba(100,116,139,.08),var(--card))}.ac-settings::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:rgba(100,116,139,.5);border-radius:var(--r) var(--r) 0 0}.ac-chevron{font-size:16px;color:var(--muted);flex-shrink:0}#config-screen{position:fixed;inset:0;background:var(--bg);z-index:450;overflow-y:auto;display:none;color:var(--text)}.config-wrap{padding:16px;max-width:480px;margin:0 auto;padding-bottom:48px}.config-back{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;padding:10px 0 20px;border:none;background:0 0}.config-back:active{opacity:.7}.config-title{font-size:22px;font-weight:900;margin-bottom:20px}.pass-field{position:relative}.pass-field .fi{padding-right:44px}.pass-eye{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:0 0;border:none;color:var(--muted);font-size:18px;cursor:pointer;padding:4px}.chpass-form{display:none;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.chpass-form.open{display:block}#simulador-modal{position:fixed;inset:0;z-index:2000;background:var(--bg);display:flex;flex-direction:column;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);max-width:480px;margin:0 auto}#simulador-modal.open{transform:translateY(0)}.sim-topbar{display:flex;align-items:center;gap:10px;padding:max(14px,calc(env(safe-area-inset-top)+8px)) 14px 12px;background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0}.sim-topbar h2{flex:1;font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:800;color:var(--text)}.sim-topbar .close-btn{width:32px;height:32px;border-radius:50%;background:var(--card2);border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sim-phase-tabs{display:flex;overflow-x:auto;padding:8px 10px;gap:6px;background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0;scrollbar-width:none}.sim-phase-tabs::-webkit-scrollbar{display:none}.spt{flex-shrink:0;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;border:2px solid var(--border);background:var(--card2);color:var(--muted);cursor:pointer;white-space:nowrap;transition:all .15s}.spt.on{background:var(--accent);color:#fff;border-color:var(--accent)}.sim-body{flex:1;overflow-y:auto;padding:14px}.sim-pair{margin-bottom:2px}.sim-pair-sep{height:1px;background:var(--border);margin:10px 0}.sim-pair-brace{display:flex;align-items:stretch;margin:3px 0;gap:0}.spb-bar{width:10px;flex-shrink:0;border-right:2.5px solid var(--blue);border-top:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);border-radius:0 8px 8px 0;margin-right:8px}.spb-content{flex:1;display:flex;flex-direction:column;justify-content:center;background:rgba(27,111,232,.06);border-radius:10px;padding:6px 10px;border:1px solid rgba(27,111,232,.18)}.spb-round{font-size:9px;font-weight:800;color:var(--blue);text-transform:uppercase;letter-spacing:.7px}.spb-matchup{font-size:12px;font-weight:700;color:var(--text);margin-top:2px;line-height:1.3}.spb-matchup.known{color:var(--green)}.spb-matchup .spb-vs{font-size:10px;color:var(--muted);font-weight:600;margin:0 4px}.sim-ko-team.winner .sim-ko-name{color:var(--green);font-weight:800}.sim-ko-team.winner .sim-ko-flag{filter:drop-shadow(0 0 5px rgba(0,137,74,.55))}.sim-ko-team.loser{opacity:.38}.sim-group-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.sgt{padding:5px 10px;border-radius:14px;font-size:13px;font-weight:700;border:2px solid var(--border);background:var(--card2);color:var(--muted);cursor:pointer;transition:all .15s;min-width:34px;text-align:center}.sgt.on{background:var(--blue);color:#fff;border-color:var(--blue)}.sim-match-row{display:flex;align-items:center;gap:8px;background:var(--card);border-radius:12px;border:1px solid var(--border);padding:10px 10px;margin-bottom:8px}.sim-team-name{flex:1;font-size:13px;font-weight:600;text-align:right;line-height:1.2}.sim-team-name.away{text-align:left}.sim-flag{font-size:22px;flex-shrink:0}.sim-score-box{display:flex;align-items:center;gap:4px;flex-shrink:0}.sim-score-inp{width:38px;height:38px;text-align:center;border-radius:10px;border:2px solid var(--border);background:var(--card2);color:var(--text);font-size:18px;font-weight:700;outline:0;transition:border-color .15s}.sim-score-inp:focus{border-color:var(--accent)}.sim-score-inp.filled{border-color:var(--green);background:rgba(0,137,74,.06)}.sim-score-sep{font-size:18px;font-weight:800;color:var(--muted)}.sim-standings{margin-top:12px;background:var(--card);border-radius:12px;border:1px solid var(--border);overflow:hidden}.sim-std-hdr{display:grid;grid-template-columns:20px 1fr 28px 28px 28px 28px 28px 28px;padding:6px 10px;background:var(--card2);font-size:10px;font-weight:700;color:var(--muted);gap:2px}.sim-std-row{display:grid;grid-template-columns:20px 1fr 28px 28px 28px 28px 28px 28px;padding:7px 10px;font-size:12px;align-items:center;gap:2px;border-top:1px solid var(--border)}.sim-std-row.qualifies{background:rgba(0,137,74,.06)}.sim-std-row.q3rd{background:rgba(27,111,232,.06)}.sim-std-pos{font-weight:700;color:var(--muted);font-size:11px}.sim-std-team{display:flex;align-items:center;gap:5px}.sim-std-flag{font-size:14px}.sim-std-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sim-std-num{text-align:center;color:var(--muted)}.sim-std-pts{text-align:center;font-weight:700;color:var(--text)}.sim-ko-scroll{max-height:calc(8 * 76px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent;padding-right:2px}.sim-ko-scroll::-webkit-scrollbar{width:4px}.sim-ko-scroll::-webkit-scrollbar-thumb{background:rgba(0,0,0,.18);border-radius:4px}.sim-ko-match{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--card);border-radius:12px;border:1px solid var(--border);padding:12px 10px;margin-bottom:8px}.sim-ko-team{flex:1;display:flex;align-items:center;gap:8px}.sim-ko-team.away{flex-direction:row-reverse;text-align:right}.sim-ko-flag{font-size:24px;flex-shrink:0}.sim-ko-name{font-size:13px;font-weight:600;line-height:1.2;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:90px}.sim-ko-name.away{text-align:right}.sim-ko-pending{font-size:10px;color:var(--muted);font-style:italic}.sim-ko-score{display:flex;gap:4px;align-items:center;flex-shrink:0}.sim-ko-inp{width:44px;height:44px;text-align:center;border-radius:10px;border:2px solid var(--border);background:var(--card2);color:var(--text);font-size:18px;font-weight:700;outline:0;transition:border-color .15s}.sim-ko-inp:focus{border-color:var(--accent)}.sim-ko-inp.filled{border-color:var(--green);background:rgba(0,137,74,.06)}.sim-ko-inp:disabled{opacity:.45;cursor:not-allowed;background:var(--card2)}.sim-pen-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px 2px;flex-wrap:wrap;width:100%;margin-top:2px;border-top:1px solid var(--border)}.sim-pen-label{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.sim-pen-btn{padding:5px 10px;border-radius:8px;border:1.5px solid var(--border);background:var(--card2);color:var(--muted);font-size:11px;font-weight:700;cursor:pointer;transition:all .15s;white-space:nowrap}.sim-pen-btn.active{border-color:#f59e0b;background:rgba(245,158,11,.15);color:#f59e0b}.sim-hints-wrap{margin-bottom:14px}.sim-hints-hdr{font-size:10px;font-weight:800;color:var(--gold);text-transform:uppercase;letter-spacing:.9px;margin-bottom:8px;display:flex;align-items:center;gap:5px}.sim-hints-podium{display:grid;grid-template-columns:1fr 1.18fr 1fr;gap:5px;margin-bottom:5px;align-items:end}.shp-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:8px 5px 10px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}.shp-champ{background:rgba(201,160,32,.09);border-color:rgba(201,160,32,.38);padding-top:10px;padding-bottom:12px;border-radius:14px}.shp-medal{font-size:20px;line-height:1;margin-bottom:1px}.shp-champ .shp-medal{font-size:24px}.shp-lbl{font-size:8.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.shp-flag{font-size:18px;line-height:1;margin:2px 0 1px}.shp-name{font-size:10.5px;font-weight:700;color:var(--text);line-height:1.25;padding:0 2px}.shp-champ .shp-name{font-size:12px;color:var(--gold)}.shp-vs{font-size:8px;color:var(--muted);font-weight:700;margin:1px 0}.sim-hints-stats{display:grid;grid-template-columns:1fr 1fr;gap:5px}.shs-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:8px 10px}.shs-hdr{font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;display:flex;align-items:center;gap:3px}.shs-row{display:flex;align-items:center;gap:4px;margin-bottom:3px}.shs-row:last-child{margin-bottom:0}.shs-medal{font-size:11px;flex-shrink:0;width:15px}.shs-flag{font-size:13px;flex-shrink:0}.shs-name{font-size:10.5px;font-weight:600;color:var(--text);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shs-num{font-size:9.5px;font-weight:700;color:var(--muted);flex-shrink:0;background:var(--card2);border-radius:5px;padding:1px 4px}.sim-bottom-bar{flex-shrink:0;padding:12px 16px;padding-bottom:max(16px,calc(env(safe-area-inset-bottom)+12px));background:var(--bg2);border-top:1px solid var(--border);display:none}.sim-bottom-bar.open{display:block}.sim-apply-btn{width:100%;padding:14px;border-radius:14px;background:var(--accent);color:#fff;font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:800;letter-spacing:.5px;border:none;cursor:pointer;transition:opacity .15s}.sim-apply-btn:active{opacity:.85}.sim-esp-item{margin-bottom:14px}.sim-esp-label{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:6px}.sim-esp-select{width:100%;padding:10px 12px;border-radius:12px;border:2px solid var(--border);background:var(--card);color:var(--text);font-size:14px;font-weight:600;outline:0}.sim-esp-select:focus{border-color:var(--accent)}.sim-section-title{font-size:14px;font-weight:700;margin-bottom:10px;color:var(--text)}.sim-progress{background:var(--card);border-radius:10px;border:1px solid var(--border);padding:8px 12px;margin-bottom:12px;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.sim-prog-bar-wrap{flex:1;background:var(--card2);border-radius:6px;height:6px}.sim-prog-bar{height:6px;border-radius:6px;background:var(--green);transition:width .3s}.toggle-switch{position:relative;display:inline-block;width:50px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.ts-slider{position:absolute;cursor:pointer;inset:0;background:rgba(0,0,0,.12);border-radius:26px;transition:.3s}.ts-slider::before{content:'';position:absolute;height:20px;width:20px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}input:checked+.ts-slider{background:var(--accent)}input:checked+.ts-slider::before{transform:translateX(24px)}.settings-section .sec-hd{display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:8px;user-select:none;-webkit-user-select:none;padding:2px 0;-webkit-tap-highlight-color:transparent}.settings-section .sec-hd h3{margin:0;flex:1;font-size:14px;font-weight:800}.settings-section.collapsible .sec-hd{background:0 0;padding:2px 0}.sec-arrow{width:26px;height:26px;border-radius:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:var(--text);font-weight:700;transition:transform .25s ease,background .2s;flex-shrink:0}.settings-section.collapsible .sec-bd{overflow:hidden;max-height:3000px;transition:max-height .35s ease,opacity .25s ease,margin-top .25s ease;opacity:1;margin-top:14px}.settings-section.collapsible.closed .sec-bd{max-height:0;opacity:0;margin-top:0}.settings-section.collapsible.closed .sec-arrow{transform:rotate(-90deg)}.sa-dash{padding:0 0 16px}.sa-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.sa-kpi{background:var(--card);border-radius:14px;padding:14px 14px 12px;border:1px solid var(--border);position:relative;overflow:hidden}.sa-kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--kpi-color,var(--accent))}.sa-kpi-val{font-family:'Barlow Condensed',sans-serif;font-size:36px;font-weight:900;line-height:1;color:var(--kpi-color,var(--accent))}.sa-kpi-lbl{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.sa-kpi-sub{font-size:10px;color:var(--muted);margin-top:3px}.sa-section-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin:16px 0 8px}.sa-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.sa-bar-label{font-size:12px;font-weight:600;min-width:80px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sa-bar-wrap{flex:1;height:8px;background:var(--card2);border-radius:4px;overflow:hidden}.sa-bar-fill{height:100%;border-radius:4px;background:var(--accent);transition:width .5s ease}.sa-bar-val{font-size:11px;font-weight:700;color:var(--muted);min-width:28px;text-align:right;flex-shrink:0}.sa-q-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.sa-q-row:last-child{border-bottom:none}.sa-q-ico{width:36px;height:36px;border-radius:10px;background:var(--card2);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.sa-q-info{flex:1;min-width:0}.sa-q-name{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sa-q-meta{font-size:11px;color:var(--muted);margin-top:2px}.sa-q-pts{text-align:right;flex-shrink:0}.sa-q-pts-val{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:900;color:var(--green)}.sa-q-pts-lbl{font-size:9px;color:var(--muted)}.sa-sponsor-box{background:linear-gradient(135deg,rgba(230,29,37,.07),rgba(184,144,12,.07));border:1px solid rgba(184,144,12,.25);border-radius:14px;padding:14px;text-align:center;margin-top:4px}.sa-sponsor-title{font-size:13px;font-weight:800;color:var(--gold);margin-bottom:4px}.sa-sponsor-sub{font-size:11px;color:var(--muted)}.fullscreen{position:fixed;inset:0;background:var(--bg);z-index:500;overflow-y:auto;display:none;animation:pageIn .2s ease both}.fullscreen.open{display:block}.fs-hdr{background:var(--bg2);border-top:4px solid transparent;border-image:linear-gradient(90deg,#E61D25 33%,#2A398D 33% 66%,#3CAC3B 66%) 1;border-bottom:1px solid var(--border);padding:max(12px,calc(env(safe-area-inset-top)+8px)) 16px 12px;position:sticky;top:0;z-index:10;box-shadow:0 2px 12px rgba(0,0,0,.08)}.fs-hdr-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.fs-back{background:0 0;border:none;cursor:pointer;font-size:13px;font-weight:600;color:var(--muted);padding:0;-webkit-tap-highlight-color:transparent;transition:opacity .15s}.fs-back:active{opacity:.6}.fs-action-btn{background:rgba(0,0,0,.05);border:none;cursor:pointer;border-radius:20px;padding:6px 13px;font-size:12px;font-weight:700;color:var(--text);flex-shrink:0;white-space:nowrap;transition:background .15s;-webkit-tap-highlight-color:transparent}.fs-action-btn:active{background:rgba(0,0,0,.15)}.fs-action-btn.on{background:var(--accent);color:#fff}.fs-action-btn.blue.on{background:var(--blue);color:#fff}.fs-title{font-family:'Barlow Condensed',sans-serif;font-size:20px;font-weight:900;letter-spacing:.3px;line-height:1;color:var(--text)}.fs-body{padding:16px;padding-bottom:max(32px,calc(env(safe-area-inset-bottom)+24px));max-width:480px;margin:0 auto}.filter-row{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}.filter-row::-webkit-scrollbar{display:none}.fchip{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;border:1.5px solid rgba(255,255,255,.1);background:var(--card2);color:var(--muted);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s}.fchip.active{background:var(--accent);border-color:var(--accent);color:#fff}.fchip.blue.active{background:var(--blue);border-color:var(--blue);color:#fff}.fchip.gold.active{background:var(--gold);border-color:var(--gold);color:#000}.gr-table{background:var(--card);border-radius:14px;border:1px solid var(--border);overflow:hidden;margin-bottom:12px}.gr-table-hdr{display:grid;grid-template-columns:52px 1fr auto;gap:8px;padding:9px 16px;background:var(--card2);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);border-bottom:1px solid var(--border)}.gr-row2{display:grid;grid-template-columns:52px 1fr auto;gap:8px;padding:12px 16px;border-top:1px solid var(--border);align-items:center;transition:background .12s}.gr-row2:first-of-type{border-top:none}.gr-row2.gr-me{background:rgba(230,29,37,.06);border-left:3px solid var(--accent)}.gr-row2:not(.gr-me):active{background:var(--card2)}.gr-pos{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:900;color:var(--muted);text-align:center;line-height:1}.gr-pos.top1{color:#c9a020;font-size:20px}.gr-pos.top2{color:#94a3b8;font-size:20px}.gr-pos.top3{color:#b87333;font-size:20px}.gr-name2{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-qname{font-size:10px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-pts2{font-family:'Barlow Condensed',sans-serif;font-size:26px;font-weight:900;color:var(--gold);text-align:right;line-height:1}.gr-pts2 span{font-size:11px;font-weight:600;color:var(--muted)}.gr-you{background:var(--accent);color:#fff;font-size:9px;font-weight:800;border-radius:3px;padding:1px 4px;margin-left:4px;vertical-align:middle}.my-pos-banner{background:linear-gradient(135deg,rgba(230,29,37,.1),rgba(184,144,12,.08));border:1px solid rgba(184,144,12,.3);border-radius:14px;padding:14px 16px;display:flex;align-items:center;gap:12px;margin-bottom:14px}.my-pos-num{font-family:'Barlow Condensed',sans-serif;font-size:48px;font-weight:900;color:var(--gold);line-height:1;flex-shrink:0}.my-pos-info{flex:1;min-width:0}.my-pos-name{font-size:14px;font-weight:800}.my-pos-sub{font-size:11px;color:var(--muted);margin-top:2px}.dash-kpi-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.dash-kpi{background:var(--card);border-radius:14px;padding:16px 14px 12px;border:1px solid var(--border);border-top:3px solid var(--kpi-color,var(--accent));position:relative}.dash-kpi-val{font-family:'Barlow Condensed',sans-serif;font-size:42px;font-weight:900;color:var(--kpi-color,var(--accent));line-height:1}.dash-kpi-lbl{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:6px}.dash-kpi-sub{font-size:10px;color:var(--muted);margin-top:3px}.dash-card{background:var(--card);border-radius:14px;border:1px solid var(--border);padding:14px;margin-bottom:12px}.dash-card-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin-bottom:12px}.dash-q-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.dash-q-row:last-child{border-bottom:none}.dash-sponsor{background:linear-gradient(135deg,rgba(230,29,37,.07),rgba(184,144,12,.07));border:1px solid rgba(184,144,12,.25);border-radius:14px;padding:18px;text-align:center}.dash-sponsor-nums{display:flex;justify-content:space-around;margin:14px 0 10px;gap:6px;flex-wrap:wrap}.dash-sponsor-num{text-align:center;flex:1;min-width:60px}.dash-sponsor-val{font-family:'Barlow Condensed',sans-serif;font-size:32px;font-weight:900}.dash-sponsor-lbl{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-top:2px}#onb-rules-list>div:last-child{border-bottom:none!important}.mc-grp:nth-child(1){animation-delay:0ms}.mc-grp:nth-child(2){animation-delay:40ms}.mc-grp:nth-child(3){animation-delay:80ms}.mc-grp:nth-child(4){animation-delay:120ms}.mc-grp:nth-child(5){animation-delay:160ms}#group-matches .save-btn{border-color:var(--grp-color,var(--gold));color:var(--grp-color,var(--gold))}#group-matches .pi:focus{border-color:var(--grp-color,var(--gold))!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--grp-color,var(--gold)) 20%,transparent)}
/* ── ANIMACIONES v70 ──────────────────────────── */

/* 1. Slide between pages */
.page{transition:opacity .22s ease,transform .22s ease}
.page:not(.on){opacity:0;transform:translateX(18px);pointer-events:none;position:absolute;top:0;width:100%}
.page.on{opacity:1;transform:translateX(0)}

/* 2. Nav pill sliding indicator */
.nav-bar{position:relative}
#nav-pill{position:absolute;bottom:5px;height:3px;border-radius:3px;background:var(--accent);transition:left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1);pointer-events:none}

/* 3. Group background gradient */
#phase-grupos{position:relative}
#group-matches::before{content:"";position:absolute;top:-60px;left:-20px;width:220px;height:220px;border-radius:50%;background:var(--grp-color,rgba(201,160,32,.1));opacity:.08;filter:blur(50px);pointer-events:none;transition:background .4s ease;z-index:0}
#group-matches{position:relative}
#group-matches>*{position:relative;z-index:1}

/* 4. Ranking arrows */
.rank-arrow{font-size:10px;font-weight:700;margin-left:4px;display:inline-block}
.rank-arrow.up{color:#3CAC3B;animation:arrowUp .5s ease both}
.rank-arrow.down{color:#E61D25;animation:arrowDown .5s ease both}
.rank-arrow.same{color:var(--muted);opacity:.5}
@keyframes arrowUp{from{transform:translateY(6px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes arrowDown{from{transform:translateY(-6px);opacity:0}to{transform:translateY(0);opacity:1}}
.rank-row-anim{animation:rankIn .3s ease both}
@keyframes rankIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}

/* 5. Confetti fullscreen */
@keyframes confettiFall{0%{opacity:1;transform:translate(0,0) rotate(0deg) scale(1)}100%{opacity:0;transform:translate(var(--cfx),var(--cfy)) rotate(var(--cfr)) scale(.4)}}
.cf-p{position:fixed;width:8px;height:8px;border-radius:2px;pointer-events:none;z-index:9999;animation:confettiFall var(--cfd,.9s) ease-out both}

/* 6. Score flip animation */
@keyframes scoreFlip{0%{transform:translateY(-100%);opacity:0}60%{transform:translateY(8%)}100%{transform:translateY(0);opacity:1}}
.score-changed{animation:scoreFlip .35s cubic-bezier(.34,1.56,.64,1) both}

/* Sub-nav pill */
.sub-nav-wrap{position:relative}
#subnav-pill{position:absolute;bottom:3px;height:3px;border-radius:3px;background:var(--accent);transition:left .22s cubic-bezier(.4,0,.2,1),width .22s cubic-bezier(.4,0,.2,1);pointer-events:none}

/* ── DESKTOP ENHANCEMENTS ─────────────────────── */
@media(min-width:520px){
  body{max-width:520px}
  .mc{transition:transform .15s ease,box-shadow .15s ease}
  .mc:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(0,0,0,.25)}
  .grp-chip:hover{border-color:var(--gc,var(--gold))}
  .nav-btn:hover .ni{transform:scale(1.18) translateY(-1px)}
  .save-btn:hover{transform:scale(1.03)}
  .pts-badge{transition:transform .2s ease}
  .pts-badge:hover{transform:scale(1.06)}
  .sc:hover{background:var(--card2);transform:scale(1.03)}
}
@media(min-width:768px){
  body{max-width:640px}
  .mc{border-radius:16px;padding:16px 18px}
  .hdr{padding-left:8px;padding-right:8px}
  .nav{padding:0 8px}
  .grp-chip{width:42px;height:42px;font-size:13px}
  .mc .tname{font-size:15px}
  .score-d .snum{font-size:36px}
}
@media(min-width:1024px){
  body{max-width:480px}
}
/* Cursor pointer on interactive cards */
.mc-grp,.mc-ko,.mc-pl{cursor:default}
.sc,.sc-bracket,.sc-sim{cursor:pointer}
/* Focus ring for keyboard nav */
.grp-chip:focus-visible,.nav-btn:focus-visible,.save-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* ── Próximos compact mode (+1/+2) ───────────────────── */
.mc-compact{padding:10px 12px!important;margin-bottom:6px!important}
.mc-compact .mc-meta{justify-content:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}
.mc-compact .mc-info{display:none}
.mc-compact .teams{display:flex;align-items:center;justify-content:center;gap:0;width:100%}
.mc-compact .team{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center;gap:2px}
.mc-compact .tname{font-size:12px;font-weight:700;text-align:center}
.mc-compact .flag{font-size:22px;display:block;text-align:center;line-height:1}
.mc-compact .score-c{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 72px;text-align:center}
.mc-compact .score-d{justify-content:center}
.mc-compact .snum{font-size:24px!important}
.mc-compact .ssep{font-size:18px!important;margin:0 2px}
.mc-compact .slbl{font-size:11px!important;text-align:center;display:block}
.pred-compact{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 0 2px;border-top:1px solid var(--border);margin-top:6px;text-align:center}
.pred-compact>div{display:flex;align-items:center;justify-content:center;gap:6px}
.pred-compact strong{color:var(--text);font-size:13px;font-weight:700}
.pred-compact .pts-badge{font-size:11px;padding:3px 8px}
.pi-compact{width:40px;height:40px;border:1.5px solid var(--border);border-radius:8px;background:var(--card2);color:var(--text);font-size:16px;font-weight:700;text-align:center;-moz-appearance:textfield;padding:0;cursor:text}
.pi-compact:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px rgba(230,29,37,.15)}
.pi-compact::-webkit-outer-spin-button,.pi-compact::-webkit-inner-spin-button{-webkit-appearance:none}
.pred-compact-sep{font-size:18px;font-weight:700;color:var(--muted)}
.btn-compact{padding:6px 20px;border-radius:9px;border:1.5px solid var(--gold);background:transparent;color:var(--gold);font-size:12px;font-weight:700;cursor:pointer;touch-action:manipulation;white-space:nowrap;transition:all .18s}
.btn-compact.saved{border-color:var(--green);color:var(--green);background:rgba(60,172,59,.08)}

/* Live badge in Grupos tab */
.mc-live-badge{display:flex;align-items:center;gap:6px;padding:8px 12px;background:rgba(230,29,37,.08);border-radius:8px;margin-top:6px;font-size:12px;color:var(--accent);font-weight:600}
.mc-live-badge .live-dot{margin:0;flex-shrink:0}

/* ══════════════════════════════════════════════════════════
   DESKTOP 3-COLUMN SKELETON (≥900px)
   Solo afecta desktop. Mobile intacto.
   Sidebars con position:fixed — NO tocan el flujo central.
   ══════════════════════════════════════════════════════════ */
#desktop-left,#desktop-right{display:none}

@media(min-width:900px){
  /* override del max-width:480px que aplica el @media(min-width:1024px) */
  body{max-width:none !important;padding-left:252px !important;padding-right:332px !important;padding-bottom:32px !important}

  #desktop-left,#desktop-right{
    display:flex !important;flex-direction:column;gap:12px;
    position:fixed;top:16px;bottom:16px;
    background:var(--card);border:1px solid var(--border);border-radius:var(--r);
    padding:14px;overflow-y:auto;
    overscroll-behavior:contain;
    z-index:45;
  }
  #desktop-left{left:16px;width:220px}
  /* Col 3: sidebar NO scrollea — el pane activo es el que tiene scroll interno (flex:1 + min-height:0) */
  #desktop-right{right:16px;width:300px;overflow:hidden}

  #desktop-left .dl-title,#desktop-right .dr-title{
    font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;
    color:var(--muted);margin:0 0 4px 0;
  }
  #desktop-left .dl-placeholder,#desktop-right .dr-placeholder{
    border:1px dashed var(--border);border-radius:10px;
    padding:24px 12px;text-align:center;color:var(--muted);font-size:12px;line-height:1.5;
  }
  #desktop-left .dl-placeholder small,#desktop-right .dr-placeholder small{
    color:var(--muted);opacity:.75;font-size:11px;
  }

  /* ── FASE 1: Home (Mis Quinielas) como contenido central ── */
  /* Deja de ser fullscreen fijo; fluye en el área central entre las sidebars */
  #home-screen{
    position:relative !important;
    inset:auto !important;
    z-index:auto !important;
    min-height:auto;
    background:transparent;
    overflow:visible;
    padding-top:16px;
  }
  #home-screen .home-wrap{
    max-width:none;
    padding:0 0 32px;
  }
  /* Hero pasa a card redondeada, no full-bleed */
  #home-screen .home-hero{
    border:1px solid var(--border);
    border-radius:var(--r);
    margin-bottom:14px;
    padding:22px 24px;
  }
  #home-screen .home-tribar{
    border-radius:3px;
    margin-bottom:18px;
  }
  #home-screen .home-content{
    padding:0;
  }
  /* Cards de quinielas en grid de 2 columnas */
  #home-screen #home-quinielas-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:18px !important;
  }
  #home-screen #home-quinielas-list > *{min-width:0}
  /* En desktop ocultamos Clasificación Global, Acciones y Acciones de Superadmin
     dentro del home — ya están duplicadas como botones en Col 1 (#desktop-left).
     Usamos !important para vencer cualquier display inline puesto por el JS móvil. */
  #home-screen #home-global-ranking-section,
  #home-screen #home-actions-section,
  #home-screen #home-superadmin-actions{
    display:none !important;
  }
  /* Action grid un poco más respirada en desktop */
  #home-screen .action-grid{
    grid-template-columns:1fr 1fr;
    gap:12px;
  }

  /* ══════════════════════════════════════════════════════════════════
     FASE 2 — Home rediseñado (Hero contextual + Cards grandes + Activity)
     ══════════════════════════════════════════════════════════════════ */

  /* Hero estático se oculta en desktop cuando hay contenido contextual */
  #home-screen .home-hero-static{display:none}
  #home-screen .home-hero-ctx{display:block}

  /* Hero contextual — base (rediseñado) */
  #home-screen .home-hero{
    padding:0;
    background:linear-gradient(135deg,rgba(230,29,37,.16) 0%,rgba(212,160,23,.08) 50%,rgba(34,197,94,.12) 100%);
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    overflow:hidden;
    margin-bottom:24px;
  }
  .hh-ctx-inner{
    padding:22px 26px;
    display:flex;
    align-items:center;
    gap:20px;
    min-height:140px;
  }
  .hh-ctx-left{flex:1;min-width:0}
  .hh-ctx-right{flex-shrink:0}
  .hh-ctx-eyebrow{
    font-size:11px;
    font-weight:800;
    letter-spacing:1.6px;
    text-transform:uppercase;
    margin-bottom:8px;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .hh-ctx-eyebrow .hh-ctx-qname{
    color:var(--muted);
    font-weight:700;
    letter-spacing:.4px;
    text-transform:none;
    font-size:11px;
  }
  .hh-ctx-eyebrow .hh-ctx-sep{color:var(--border)}

  /* Estado: en vivo */
  .hh-ctx.hh-live .hh-ctx-eyebrow{color:var(--accent)}
  .hh-live .hh-pulse{
    width:8px;height:8px;border-radius:50%;
    background:var(--accent);
    box-shadow:0 0 0 0 rgba(230,29,37,.6);
    animation:hh-pulse 1.6s infinite;
  }
  @keyframes hh-pulse{
    0%{box-shadow:0 0 0 0 rgba(230,29,37,.5)}
    70%{box-shadow:0 0 0 12px rgba(230,29,37,0)}
    100%{box-shadow:0 0 0 0 rgba(230,29,37,0)}
  }
  .hh-live-row{
    display:flex;align-items:center;gap:14px;
  }
  .hh-team{
    display:flex;align-items:center;gap:10px;
    flex:1;min-width:0;
    font-weight:700;font-size:18px;
  }
  .hh-team.hh-team-away{justify-content:flex-end;text-align:right}
  .hh-team .flag,.hh-team img{width:36px;height:28px;border-radius:4px;object-fit:cover;flex-shrink:0}
  .hh-score{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;
    font-size:48px;
    line-height:1;
    color:var(--text);
    letter-spacing:-1px;
    min-width:100px;
    text-align:center;
  }
  .hh-live .hh-score{color:var(--text)}
  .hh-pred-line{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.08);
    font-size:13px;
    color:var(--muted);
    display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  }
  .hh-pred-line strong{color:var(--text);font-weight:700}
  .hh-pts-pill{
    background:rgba(212,160,23,.16);
    color:var(--gold);
    border:1px solid rgba(212,160,23,.4);
    padding:5px 11px;
    border-radius:8px;
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;
    font-size:14px;
    letter-spacing:.4px;
    text-transform:uppercase;
  }
  .hh-cta-btn{
    background:linear-gradient(135deg,var(--accent),#B01820);
    color:#fff;border:none;
    padding:11px 22px;border-radius:10px;
    font-weight:800;font-size:13px;
    letter-spacing:.5px;
    cursor:pointer;
    box-shadow:0 4px 16px rgba(230,29,37,.32);
    transition:transform .15s,box-shadow .15s;
  }
  .hh-cta-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(230,29,37,.4)}

  /* Estado: próximo cercano */
  .hh-ctx.hh-soon .hh-ctx-eyebrow{color:var(--gold)}
  .hh-countdown{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;
    font-size:32px;
    color:var(--gold);
    line-height:1;
    letter-spacing:-.5px;
  }

  /* Estado: idle (saludo + stats) */
  .hh-ctx.hh-idle{
    background:transparent;
  }
  .hh-idle .hh-ctx-inner{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
  }
  .hh-idle-greet{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;
    font-size:30px;
    line-height:1;
    letter-spacing:-.4px;
  }
  .hh-idle-sub{font-size:13px;color:var(--muted);margin-top:4px}
  .hh-idle-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    width:100%;
    padding-top:14px;
    border-top:1px solid var(--border);
  }
  .hh-stat{
    display:flex;flex-direction:column;gap:2px;
  }
  .hh-stat-num{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:24px;line-height:1;
    color:var(--text);
  }
  .hh-stat-num.hh-gold{color:var(--gold)}
  .hh-stat-num.hh-accent{color:var(--accent)}
  .hh-stat-lbl{
    font-size:10px;font-weight:700;
    color:var(--muted);
    letter-spacing:.6px;text-transform:uppercase;
  }

  /* ══════════════════════════════════════════════════════════════════
     PARTIDOS — Grid 2 columnas + cards compactas en desktop
     ══════════════════════════════════════════════════════════════════ */
  #proximos-matches,
  #live-matches-container,
  #recientes-matches,
  #group-matches,
  #premier-matches,
  #knockout-16avos,
  #knockout-octavos,
  #knockout-cuartos,
  #knockout-semis,
  #knockout-final{
    display:grid;
    /* 2 cols default; 3 cols en pantallas grandes (≥1280px). Nunca 4. */
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    align-items:start;
  }
  @media(min-width:1280px){
    #proximos-matches,
    #live-matches-container,
    #recientes-matches,
    #group-matches{
      grid-template-columns:repeat(3, minmax(0, 1fr));
    }
  }
  /* Lo que NO es .mc (chips, day labels, dividers, "ver más" buttons) span full row */
  #proximos-matches > *:not(.mc),
  #live-matches-container > *:not(.mc),
  #recientes-matches > *:not(.mc),
  #group-matches > *:not(.mc),
  #premier-matches > *:not(.mc),
  #knockout-16avos > *:not(.mc),
  #knockout-octavos > *:not(.mc),
  #knockout-cuartos > *:not(.mc),
  #knockout-semis > *:not(.mc),
  #knockout-final > *:not(.mc){
    grid-column: 1 / -1;
  }
  /* Cards súper compactas en desktop — TODO centrado y uniforme */
  #proximos-matches > .mc,
  #live-matches-container > .mc,
  #recientes-matches > .mc,
  #group-matches > .mc,
  #premier-matches > .mc,
  #knockout-16avos > .mc,
  #knockout-octavos > .mc,
  #knockout-cuartos > .mc,
  #knockout-semis > .mc,
  #knockout-final > .mc{
    margin-bottom:0;
    padding:8px 8px 10px;
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:4px;
  }
  /* Header compacto: phase + status centrados con menos margin */
  #proximos-matches > .mc .mc-meta,
  #live-matches-container > .mc .mc-meta,
  #recientes-matches > .mc .mc-meta,
  #group-matches > .mc .mc-meta,
  #premier-matches > .mc .mc-meta,
  #knockout-16avos > .mc .mc-meta,
  #knockout-octavos > .mc .mc-meta,
  #knockout-cuartos > .mc .mc-meta,
  #knockout-semis > .mc .mc-meta,
  #knockout-final > .mc .mc-meta{
    margin-bottom:0;font-size:9px;
    display:flex;justify-content:space-between;align-items:center;
    gap:4px;width:100%;
  }
  #proximos-matches > .mc .mc-meta .mc-phase,
  #live-matches-container > .mc .mc-meta .mc-phase,
  #recientes-matches > .mc .mc-meta .mc-phase,
  #group-matches > .mc .mc-meta .mc-phase,
  #premier-matches > .mc .mc-meta .mc-phase,
  #knockout-16avos > .mc .mc-meta .mc-phase,
  #knockout-octavos > .mc .mc-meta .mc-phase,
  #knockout-cuartos > .mc .mc-meta .mc-phase,
  #knockout-semis > .mc .mc-meta .mc-phase,
  #knockout-final > .mc .mc-meta .mc-phase{font-size:9px;padding:2px 5px;line-height:1.4}
  #proximos-matches > .mc .mc-meta .status,
  #live-matches-container > .mc .mc-meta .status,
  #recientes-matches > .mc .mc-meta .status,
  #group-matches > .mc .mc-meta .status,
  #premier-matches > .mc .mc-meta .status,
  #knockout-16avos > .mc .mc-meta .status,
  #knockout-octavos > .mc .mc-meta .status,
  #knockout-cuartos > .mc .mc-meta .status,
  #knockout-semis > .mc .mc-meta .status,
  #knockout-final > .mc .mc-meta .status{font-size:9px;padding:2px 5px;line-height:1.4}
  /* Esconder info extra (venue, etc.) en cards desktop para hacerlas más cuadradas */
  #proximos-matches > .mc .mc-info,
  #live-matches-container > .mc .mc-info,
  #recientes-matches > .mc .mc-info,
  #group-matches > .mc .mc-info,
  #premier-matches > .mc .mc-info,
  #knockout-16avos > .mc .mc-info,
  #knockout-octavos > .mc .mc-info,
  #knockout-cuartos > .mc .mc-info,
  #knockout-semis > .mc .mc-info,
  #knockout-final > .mc .mc-info{display:none}
  /* Teams compactos — flex centrado, ancho completo, súper compacto */
  #proximos-matches > .mc .teams,
  #live-matches-container > .mc .teams,
  #recientes-matches > .mc .teams,
  #group-matches > .mc .teams,
  #premier-matches > .mc .teams,
  #knockout-16avos > .mc .teams,
  #knockout-octavos > .mc .teams,
  #knockout-cuartos > .mc .teams,
  #knockout-semis > .mc .teams,
  #knockout-final > .mc .teams{
    display:flex;align-items:center;justify-content:center;
    gap:3px;margin-top:0;width:100%;
  }
  #proximos-matches > .mc .team,
  #live-matches-container > .mc .team,
  #recientes-matches > .mc .team,
  #group-matches > .mc .team,
  #premier-matches > .mc .team,
  #knockout-16avos > .mc .team,
  #knockout-octavos > .mc .team,
  #knockout-cuartos > .mc .team,
  #knockout-semis > .mc .team,
  #knockout-final > .mc .team{
    flex:1;display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:1px;
    text-align:center;min-width:0;
  }
  #proximos-matches > .mc .team .tname,
  #live-matches-container > .mc .team .tname,
  #recientes-matches > .mc .team .tname,
  #group-matches > .mc .team .tname,
  #premier-matches > .mc .team .tname,
  #knockout-16avos > .mc .team .tname,
  #knockout-octavos > .mc .team .tname,
  #knockout-cuartos > .mc .team .tname,
  #knockout-semis > .mc .team .tname,
  #knockout-final > .mc .team .tname{
    font-size:10.5px;font-weight:700;text-align:center;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;
    line-height:1.2;
  }
  #proximos-matches > .mc .team .tabbr,
  #live-matches-container > .mc .team .tabbr,
  #recientes-matches > .mc .team .tabbr,
  #group-matches > .mc .team .tabbr,
  #premier-matches > .mc .team .tabbr,
  #knockout-16avos > .mc .team .tabbr,
  #knockout-octavos > .mc .team .tabbr,
  #knockout-cuartos > .mc .team .tabbr,
  #knockout-semis > .mc .team .tabbr,
  #knockout-final > .mc .team .tabbr{display:none}
  #proximos-matches > .mc .team .flag,
  #live-matches-container > .mc .team .flag,
  #recientes-matches > .mc .team .flag,
  #group-matches > .mc .team .flag,
  #premier-matches > .mc .team .flag,
  #knockout-16avos > .mc .team .flag,
  #knockout-octavos > .mc .team .flag,
  #knockout-cuartos > .mc .team .flag,
  #knockout-semis > .mc .team .flag,
  #knockout-final > .mc .team .flag{font-size:20px;line-height:1}
  /* MARCADOR — Barlow grande, sin desperdiciar ancho */
  #proximos-matches > .mc .score-c,
  #live-matches-container > .mc .score-c,
  #recientes-matches > .mc .score-c,
  #group-matches > .mc .score-c,
  #premier-matches > .mc .score-c,
  #knockout-16avos > .mc .score-c,
  #knockout-octavos > .mc .score-c,
  #knockout-cuartos > .mc .score-c,
  #knockout-semis > .mc .score-c,
  #knockout-final > .mc .score-c{flex:0 0 56px;text-align:center}
  #proximos-matches > .mc .score-d,
  #live-matches-container > .mc .score-d,
  #recientes-matches > .mc .score-d,
  #group-matches > .mc .score-d,
  #premier-matches > .mc .score-d,
  #knockout-16avos > .mc .score-d,
  #knockout-octavos > .mc .score-d,
  #knockout-cuartos > .mc .score-d,
  #knockout-semis > .mc .score-d,
  #knockout-final > .mc .score-d{
    display:flex;align-items:center;justify-content:center;
    gap:0;line-height:1;
  }
  #proximos-matches > .mc .snum,
  #live-matches-container > .mc .snum,
  #recientes-matches > .mc .snum,
  #group-matches > .mc .snum,
  #premier-matches > .mc .snum,
  #knockout-16avos > .mc .snum,
  #knockout-octavos > .mc .snum,
  #knockout-cuartos > .mc .snum,
  #knockout-semis > .mc .snum,
  #knockout-final > .mc .snum{
    font-family:'Barlow Condensed',sans-serif!important;
    font-size:26px!important;font-weight:900!important;
    line-height:1!important;letter-spacing:-1px;
  }
  #proximos-matches > .mc .ssep,
  #live-matches-container > .mc .ssep,
  #recientes-matches > .mc .ssep,
  #group-matches > .mc .ssep,
  #premier-matches > .mc .ssep,
  #knockout-16avos > .mc .ssep,
  #knockout-octavos > .mc .ssep,
  #knockout-cuartos > .mc .ssep,
  #knockout-semis > .mc .ssep,
  #knockout-final > .mc .ssep{font-size:18px!important;margin:0 3px;font-weight:600;color:var(--muted)}
  #proximos-matches > .mc .slbl,
  #live-matches-container > .mc .slbl,
  #recientes-matches > .mc .slbl,
  #group-matches > .mc .slbl,
  #premier-matches > .mc .slbl,
  #knockout-16avos > .mc .slbl,
  #knockout-octavos > .mc .slbl,
  #knockout-cuartos > .mc .slbl,
  #knockout-semis > .mc .slbl,
  #knockout-final > .mc .slbl{
    font-size:9px!important;display:block;margin-top:0;letter-spacing:.3px;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;
  }
  /* Pred area súper compacto — sin separador grande, todo apretado */
  #proximos-matches > .mc .pred,
  #live-matches-container > .mc .pred,
  #recientes-matches > .mc .pred,
  #group-matches > .mc .pred,
  #premier-matches > .mc .pred,
  #knockout-16avos > .mc .pred,
  #knockout-octavos > .mc .pred,
  #knockout-cuartos > .mc .pred,
  #knockout-semis > .mc .pred,
  #knockout-final > .mc .pred{
    padding-top:4px;margin-top:2px;width:100%;
    border-top:1px solid var(--border);
    display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;
  }
  #proximos-matches > .mc .pred-lbl,
  #live-matches-container > .mc .pred-lbl,
  #group-matches > .mc .pred-lbl,
  #premier-matches > .mc .pred-lbl,
  #knockout-16avos > .mc .pred-lbl,
  #knockout-octavos > .mc .pred-lbl,
  #knockout-cuartos > .mc .pred-lbl,
  #knockout-semis > .mc .pred-lbl,
  #knockout-final > .mc .pred-lbl{
    font-size:11px;text-align:center;display:block;margin-bottom:6px;
    letter-spacing:.6px;text-transform:uppercase;color:var(--muted);font-weight:700;
  }
  #proximos-matches > .mc .pred-row,
  #live-matches-container > .mc .pred-row,
  #group-matches > .mc .pred-row,
  #premier-matches > .mc .pred-row,
  #knockout-16avos > .mc .pred-row,
  #knockout-octavos > .mc .pred-row,
  #knockout-cuartos > .mc .pred-row,
  #knockout-semis > .mc .pred-row,
  #knockout-final > .mc .pred-row{display:flex;gap:8px;padding:0;justify-content:center;align-items:center}
  #proximos-matches > .mc .pt,
  #live-matches-container > .mc .pt,
  #group-matches > .mc .pt,
  #premier-matches > .mc .pt,
  #knockout-16avos > .mc .pt,
  #knockout-octavos > .mc .pt,
  #knockout-cuartos > .mc .pt,
  #knockout-semis > .mc .pt,
  #knockout-final > .mc .pt{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:3px}
  #proximos-matches > .mc .pt-n,
  #live-matches-container > .mc .pt-n,
  #group-matches > .mc .pt-n,
  #premier-matches > .mc .pt-n,
  #knockout-16avos > .mc .pt-n,
  #knockout-octavos > .mc .pt-n,
  #knockout-cuartos > .mc .pt-n,
  #knockout-semis > .mc .pt-n,
  #knockout-final > .mc .pt-n{font-size:10px;color:var(--muted);font-weight:700;letter-spacing:.4px}
  #proximos-matches > .mc .pi,
  #live-matches-container > .mc .pi,
  #group-matches > .mc .pi,
  #premier-matches > .mc .pi,
  #knockout-16avos > .mc .pi,
  #knockout-octavos > .mc .pi,
  #knockout-cuartos > .mc .pi,
  #knockout-semis > .mc .pi,
  #knockout-final > .mc .pi{
    width:36px;height:32px;font-size:18px;font-weight:900;
    font-family:'Barlow Condensed',sans-serif;
  }
  #proximos-matches > .mc .step-btn,
  #live-matches-container > .mc .step-btn,
  #group-matches > .mc .step-btn,
  #premier-matches > .mc .step-btn,
  #knockout-16avos > .mc .step-btn,
  #knockout-octavos > .mc .step-btn,
  #knockout-cuartos > .mc .step-btn,
  #knockout-semis > .mc .step-btn,
  #knockout-final > .mc .step-btn{width:24px;height:32px;font-size:14px;font-weight:800}
  #proximos-matches > .mc .pi-stepper,
  #live-matches-container > .mc .pi-stepper,
  #group-matches > .mc .pi-stepper,
  #premier-matches > .mc .pi-stepper,
  #knockout-16avos > .mc .pi-stepper,
  #knockout-octavos > .mc .pi-stepper,
  #knockout-cuartos > .mc .pi-stepper,
  #knockout-semis > .mc .pi-stepper,
  #knockout-final > .mc .pi-stepper{gap:0}
  #proximos-matches > .mc .pv,
  #live-matches-container > .mc .pv{font-size:16px;margin:0 4px;color:var(--muted);font-weight:700}
  #proximos-matches > .mc .save-btn,
  #live-matches-container > .mc .save-btn,
  #group-matches > .mc .save-btn,
  #premier-matches > .mc .save-btn,
  #knockout-16avos > .mc .save-btn,
  #knockout-octavos > .mc .save-btn,
  #knockout-cuartos > .mc .save-btn,
  #knockout-semis > .mc .save-btn,
  #knockout-final > .mc .save-btn{
    padding:7px 18px;font-size:12px;margin-top:6px;
    display:block;margin-left:auto;margin-right:auto;font-weight:700;
  }
  /* Live pts row más compacta dentro de cards — centrada */
  #proximos-matches > .mc .live-pts-row,
  #live-matches-container > .mc .live-pts-row,
  #group-matches > .mc .live-pts-row,
  #premier-matches > .mc .live-pts-row,
  #knockout-16avos > .mc .live-pts-row,
  #knockout-octavos > .mc .live-pts-row,
  #knockout-cuartos > .mc .live-pts-row,
  #knockout-semis > .mc .live-pts-row,
  #knockout-final > .mc .live-pts-row{
    padding:3px 0;gap:3px;font-size:10.5px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;width:100%;
  }
  /* Otros pronósticos botón centrado */
  #proximos-matches > .mc .otros-btn,
  #live-matches-container > .mc .otros-btn,
  #group-matches > .mc .otros-btn,
  #premier-matches > .mc .otros-btn,
  #knockout-16avos > .mc .otros-btn,
  #knockout-octavos > .mc .otros-btn,
  #knockout-cuartos > .mc .otros-btn,
  #knockout-semis > .mc .otros-btn,
  #knockout-final > .mc .otros-btn{
    font-size:10px;padding:4px 8px;margin-top:4px;
    display:block;margin-left:auto;margin-right:auto;
  }
  /* Otros pronósticos panel: cuando se expande, queda centrado */
  #proximos-matches > .mc .otros-panel,
  #live-matches-container > .mc .otros-panel,
  #group-matches > .mc .otros-panel,
  #premier-matches > .mc .otros-panel,
  #knockout-16avos > .mc .otros-panel,
  #knockout-octavos > .mc .otros-panel,
  #knockout-cuartos > .mc .otros-panel,
  #knockout-semis > .mc .otros-panel,
  #knockout-final > .mc .otros-panel{width:100%;margin-top:4px}
  /* Lock msg centrada */
  #proximos-matches > .mc .lock-msg,
  #live-matches-container > .mc .lock-msg,
  #group-matches > .mc .lock-msg,
  #premier-matches > .mc .lock-msg,
  #knockout-16avos > .mc .lock-msg,
  #knockout-octavos > .mc .lock-msg,
  #knockout-cuartos > .mc .lock-msg,
  #knockout-semis > .mc .lock-msg,
  #knockout-final > .mc .lock-msg{
    font-size:9px;margin-top:5px;text-align:center;width:100%;
  }
  /* Otros Pronósticos modal — filas estilo "leaderboard" */
  .otros-modal-list{display:flex;flex-direction:column;gap:1px}
  .otros-modal-row{
    display:grid;
    grid-template-columns:1fr auto auto;
    align-items:center;gap:12px;
    padding:10px 16px;
    border-bottom:1px solid rgba(255,255,255,.06);
    transition:background .15s;
  }
  .otros-modal-row:hover{background:rgba(255,255,255,.03)}
  .otros-modal-row:last-child{border-bottom:none}
  .otros-modal-name{
    font-size:13px;font-weight:600;color:var(--text);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .otros-modal-pred{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:18px;color:var(--text);
    letter-spacing:-.5px;
    background:var(--card2);
    padding:2px 10px;border-radius:6px;
    border:1px solid var(--border);
    min-width:50px;text-align:center;
  }
  .otros-modal-pts{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:18px;
    line-height:1;text-align:right;min-width:48px;
    display:flex;flex-direction:column;align-items:flex-end;
  }
  .otros-modal-pts small{
    font-size:9px;color:var(--muted);font-weight:700;
    letter-spacing:.4px;text-transform:uppercase;margin-top:2px;
  }
  .otros-modal-pts.otros-pts-pos{color:var(--gold)}
  .otros-modal-pts.otros-pts-zero{color:var(--muted)}
  .otros-modal-pts.otros-pts-na{color:var(--muted);opacity:.6}

  /* Goleadores debajo del nombre del equipo (movidos por _restructureGoals) */
  .goals-split{display:none} /* el wrapper original se quita; los sides se mueven */
  .mc .team .goals-side{
    margin-top:8px;
    padding-top:8px;
    border-top:1px dashed var(--border);
    width:100%;
    display:flex;flex-direction:column;gap:3px;
    align-items:center;
    /* Limita a ~5 líneas. Si hay más, scroll vertical interno (no rompe layout) */
    max-height:90px;overflow-y:auto;
    scrollbar-width:thin;
  }
  .mc .team .goals-side::-webkit-scrollbar{width:3px}
  .mc .team .goals-side::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}
  .mc .team .goal-row{
    font-size:10px;color:var(--muted);
    line-height:1.3;font-weight:600;
    text-align:center;
    display:flex;align-items:center;gap:3px;
    flex-wrap:wrap;justify-content:center;
  }
  .mc .team .goal-row .goal-min{
    color:var(--text);font-weight:700;
  }
  /* Placeholder cuando un equipo no anotó: mantiene altura para simetría */
  .mc .team .goals-side-empty{opacity:.25}
  .mc .team .goal-row-empty{color:var(--muted);font-size:14px;line-height:1}
  /* Ensure team div tiene espacio para goleadores */
  .mc .teams > .team{padding-bottom:4px}

  /* ── Uniformidad de cards de partidos ───────────────────────────
     Todas las cards tienen min-height para verse parejas en grid.
     Teams se alinean al TOP (align-items:flex-start) para que el
     score y los logos siempre queden a la misma altura, aunque un
     equipo tenga muchos goleadores y el otro ninguno.            */
  #proximos-matches > .mc,
  #live-matches-container > .mc,
  #recientes-matches > .mc,
  #group-matches > .mc,
  #premier-matches > .mc,
  #knockout-16avos > .mc,
  #knockout-octavos > .mc,
  #knockout-cuartos > .mc,
  #knockout-semis > .mc,
  #knockout-final > .mc{
    min-height:210px;
  }
  #proximos-matches > .mc .teams,
  #live-matches-container > .mc .teams,
  #recientes-matches > .mc .teams,
  #group-matches > .mc .teams,
  #premier-matches > .mc .teams,
  #knockout-16avos > .mc .teams,
  #knockout-octavos > .mc .teams,
  #knockout-cuartos > .mc .teams,
  #knockout-semis > .mc .teams,
  #knockout-final > .mc .teams{
    align-items:flex-start !important;
    width:100%;
  }
  /* score-c con altura mínima fija (alinea con la fila de logos+nombres) */
  #proximos-matches > .mc .score-c,
  #live-matches-container > .mc .score-c,
  #recientes-matches > .mc .score-c,
  #group-matches > .mc .score-c,
  #premier-matches > .mc .score-c,
  #knockout-16avos > .mc .score-c,
  #knockout-octavos > .mc .score-c,
  #knockout-cuartos > .mc .score-c,
  #knockout-semis > .mc .score-c,
  #knockout-final > .mc .score-c{
    padding-top:14px; /* aprox altura de bandera+name del team */
  }
  /* Pts badge dentro de live-pts-row: bien centrado, no flotante */
  #proximos-matches > .mc .pts-badge,
  #live-matches-container > .mc .pts-badge,
  #group-matches > .mc .pts-badge,
  #premier-matches > .mc .pts-badge,
  #knockout-16avos > .mc .pts-badge,
  #knockout-octavos > .mc .pts-badge,
  #knockout-cuartos > .mc .pts-badge,
  #knockout-semis > .mc .pts-badge,
  #knockout-final > .mc .pts-badge{
    display:inline-block;text-align:center;
  }
  /* "Tu pronóstico: X-Y" línea centrada */
  #proximos-matches > .mc .live-pts-row > span,
  #live-matches-container > .mc .live-pts-row > span,
  #group-matches > .mc .live-pts-row > span,
  #premier-matches > .mc .live-pts-row > span,
  #knockout-16avos > .mc .live-pts-row > span,
  #knockout-octavos > .mc .live-pts-row > span,
  #knockout-cuartos > .mc .live-pts-row > span,
  #knockout-semis > .mc .live-pts-row > span,
  #knockout-final > .mc .live-pts-row > span{text-align:center}
  /* Score-c y goalsHtml: el mini-listado de goleadores también centrado */
  #proximos-matches > .mc .score-c > div,
  #live-matches-container > .mc .score-c > div,
  #recientes-matches > .mc .score-c > div,
  #group-matches > .mc .score-c > div,
  #premier-matches > .mc .score-c > div,
  #knockout-16avos > .mc .score-c > div,
  #knockout-octavos > .mc .score-c > div,
  #knockout-cuartos > .mc .score-c > div,
  #knockout-semis > .mc .score-c > div,
  #knockout-final > .mc .score-c > div{text-align:center}

  /* ── Mis Quinielas: PILLS horizontal scroll (rediseño v158) ── */
  #home-screen #home-quinielas-list{
    -ms-overflow-style:none;scrollbar-width:none;
  }
  #home-screen #home-quinielas-list::-webkit-scrollbar{display:none}
  .ql-pill{
    flex-shrink:0;
    display:flex;align-items:center;gap:10px;
    padding:10px 14px;border-radius:10px;
    background:var(--card);border:1px solid rgba(255,255,255,.10);
    cursor:pointer;transition:all .15s;
    min-width:200px;max-width:280px;
  }
  .ql-pill:hover{border-color:rgba(255,255,255,.20);transform:translateY(-1px)}
  .ql-pill.ql-pill-admin{border-left:3px solid var(--gold)}
  .ql-pill-dot{
    width:8px;height:8px;border-radius:50%;flex-shrink:0;
  }
  .ql-pill-dot-ok{background:var(--green)}
  .ql-pill-dot-warn{background:var(--accent);animation:pulse 1.5s ease-in-out infinite}
  .ql-pill-name{
    font-size:13px;font-weight:700;color:var(--text);
    flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .ql-pill-stats{
    display:flex;align-items:center;gap:8px;flex-shrink:0;
  }
  .ql-pill-pts{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:18px;color:var(--gold);
    line-height:1;display:flex;align-items:baseline;gap:2px;
  }
  .ql-pill-pts small{font-size:9px;color:var(--muted);font-weight:700}
  .ql-pill-pos{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:14px;color:var(--accent);
    line-height:1;
  }
  .ql-pill-admin-badge{font-size:12px;line-height:1;flex-shrink:0}

  /* ── Cards de quinielas — versión grande (rediseñado) ── */
  #home-screen #home-quinielas-list .ql-card{
    flex-direction:column;
    align-items:stretch;
    padding:16px;
    gap:0;
    border:1px solid rgba(255,255,255,.10);
    border-left:3px solid rgba(255,255,255,.10);
    border-radius:12px;
    background:var(--card);
    transition:border-color .18s,transform .18s,box-shadow .18s;
    cursor:pointer;
    overflow:hidden;
  }
  #home-screen #home-quinielas-list .ql-card.ql-admin{
    border-left-color:var(--gold);
  }
  #home-screen #home-quinielas-list .ql-card:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 18px rgba(0,0,0,.25);
  }
  #home-screen #home-quinielas-list .ql-card.ql-admin:hover{
    border-color:rgba(212,160,23,.35);border-left-color:var(--gold);
  }
  #home-screen #home-quinielas-list .ql-card:not(.ql-admin):hover{
    border-color:rgba(255,255,255,.18);border-left-color:rgba(255,255,255,.18);
  }
  /* Quitamos la stripe absoluta — ahora va como border-left */
  #home-screen #home-quinielas-list .ql-card .ql-stripe{display:none}
  #home-screen #home-quinielas-list .ql-card .ql-info{
    flex:1;min-width:0;padding-left:0;
  }
  /* Header card: nombre + admin badge */
  #home-screen .ql-card .ql-name{
    font-size:15px;font-weight:700;
    margin-bottom:4px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  #home-screen .ql-card .ql-meta{
    font-size:11px;color:var(--muted);
    margin-bottom:14px;
  }
  /* Stats row: 3 columnas centradas (puntos / posición / grupos) */
  .ql-stats-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin:0 0 12px;
  }
  .ql-stat-box{
    text-align:center;
    padding:0 4px;
  }
  .ql-stat-box + .ql-stat-box{border-left:none}
  .ql-stat-num{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:24px;line-height:1;
    color:var(--text);
  }
  .ql-stat-num.gold{color:var(--gold)}
  .ql-stat-num.accent{color:var(--accent)}
  .ql-stat-num.green{color:var(--green)}
  .ql-stat-lbl{
    font-size:10px;font-weight:600;
    color:var(--muted);
    letter-spacing:.4px;text-transform:uppercase;
    margin-top:3px;
  }
  /* Footer card: status semántico + CTA */
  .ql-footer-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding-top:12px;
    border-top:1px solid rgba(255,255,255,.06);
  }
  .ql-status{
    display:flex;align-items:center;gap:6px;
    font-size:10px;font-weight:700;letter-spacing:.3px;
  }
  .ql-status-dot{
    width:5px;height:5px;border-radius:50%;flex-shrink:0;
  }
  .ql-status.ok{color:var(--green)}
  .ql-status.ok .ql-status-dot{background:var(--green)}
  .ql-status.warn{color:var(--accent)}
  .ql-status.warn .ql-status-dot{background:var(--accent)}
  .ql-status.pending{color:var(--gold)}
  .ql-status.pending .ql-status-dot{background:var(--gold)}
  .ql-cta-enter{
    flex-shrink:0;
    background:transparent;
    color:var(--text);
    border:none;
    padding:0;
    font-weight:600;font-size:11px;
    cursor:pointer;
    transition:transform .15s;
  }
  .ql-card:hover .ql-cta-enter{
    transform:translateX(2px);color:var(--accent);
  }
  .ql-chip-row{display:none} /* Chips reemplazados por el ql-status */

  /* ── Sección Actividad reciente ── */
  .home-desktop-only{display:block}
  #home-activity-section{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--r);
    padding:14px 16px;
  }
  .ha-head{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:10px;
    padding-bottom:10px;
    border-bottom:1px solid var(--border);
  }
  .ha-title{
    font-size:12px;font-weight:800;
    letter-spacing:.6px;text-transform:uppercase;
    color:var(--text);
  }
  .ha-empty{
    text-align:center;
    color:var(--muted);
    padding:18px 8px;font-size:12px;
  }
  .ha-list{display:flex;flex-direction:column;gap:8px}
  .ha-item{
    display:flex;align-items:center;gap:12px;
    padding:8px 6px;
    border-radius:8px;
    transition:background .15s;
  }
  .ha-item:hover{background:var(--bg2)}
  .ha-ico{
    width:34px;height:34px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:16px;
    flex-shrink:0;
    background:var(--bg2);
    border:1px solid var(--border);
  }
  .ha-ico.ha-ico-final{background:rgba(0,166,81,.12);border-color:rgba(0,166,81,.3)}
  .ha-ico.ha-ico-pred{background:rgba(184,144,12,.1);border-color:rgba(184,144,12,.3)}
  .ha-ico.ha-ico-live{background:rgba(230,29,37,.12);border-color:rgba(230,29,37,.3)}
  .ha-body{flex:1;min-width:0}
  .ha-line1{
    font-size:13px;font-weight:700;
    color:var(--text);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .ha-line2{
    font-size:11px;color:var(--muted);
    margin-top:2px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .ha-meta{
    flex-shrink:0;
    font-size:11px;color:var(--muted);
    display:flex;flex-direction:column;align-items:flex-end;gap:2px;
  }
  .ha-pts{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:18px;
    line-height:1;
  }
  .ha-pts.ha-pts-pos{color:var(--green)}
  .ha-pts.ha-pts-zero{color:var(--muted)}

  /* ══════════════════════════════════════════════════════════════════
     FASE 3 — Info del Mundial (Grupos / Goleadores / Asistencias)
     ══════════════════════════════════════════════════════════════════ */
  /* Eyebrow utility para todas las secciones del dashboard home */
  .dash-eyebrow{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:14px;margin-top:8px;
  }
  .dash-eyebrow-label{
    font-size:11px;font-weight:700;
    letter-spacing:1px;text-transform:uppercase;
    color:var(--muted);
  }
  .dash-eyebrow-meta{
    font-size:11px;color:var(--muted);font-weight:500;
  }

  /* Card madre que envuelve todo Info del Mundial */
  #home-info-mundial-section{
    border:1px solid rgba(255,255,255,.10);border-radius:12px;
    background:var(--card);padding:16px;
  }
  .him-head{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:14px;
  }
  .him-title{
    font-size:13px;font-weight:700;color:var(--text);
  }
  .him-subtitle{
    font-size:11px;color:var(--muted);font-weight:500;
  }

  /* Split: Goleadores | Asistencias lado a lado */
  .him-split{
    display:grid;grid-template-columns:1fr 1fr;gap:12px;
    margin-top:0;
  }
  .him-split-col{
    background:var(--card2);
    border:1px solid rgba(255,255,255,.06);
    border-radius:10px;
    padding:12px;
    min-width:0;
  }
  .him-split-title{
    display:flex;align-items:center;justify-content:space-between;
    font-size:11px;font-weight:700;
    color:var(--muted);letter-spacing:.6px;
    text-transform:uppercase;
    margin-bottom:10px;padding-bottom:10px;
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  .him-split-title-l{display:flex;align-items:center;gap:6px}
  .him-split-tag{
    font-size:9px;font-weight:600;
    color:var(--muted);text-transform:none;letter-spacing:0;
    opacity:.7;
  }
  .him-split-ico{font-size:14px;line-height:1}

  /* Ocultamos Actividad reciente — la reemplaza Info del Mundial expandido */
  #home-activity-section{display:none !important}

  /* ── Grupos ── */
  .him-grp-chips{
    display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px;
  }
  .him-grp-chip{
    width:32px;height:32px;border-radius:8px;
    border:1px solid rgba(255,255,255,.10);background:var(--card2);
    color:var(--muted);font-weight:700;font-size:12px;
    cursor:pointer;display:flex;align-items:center;justify-content:center;
    transition:all .15s;font-family:inherit;
  }
  .him-grp-chip:hover{color:var(--text);border-color:rgba(255,255,255,.18)}
  .him-grp-chip.on{
    background:var(--gc,var(--gold));color:#0B0E14;
    border-color:var(--gc,var(--gold));
    font-weight:800;
  }

  .him-grp-table{
    border:1px solid rgba(255,255,255,.06);border-radius:10px;overflow:hidden;
    background:var(--card2);
    margin-bottom:12px;
  }
  .him-grp-table table{
    width:100%;border-collapse:collapse;font-size:12px;
    table-layout:fixed; /* fija anchos de columna — el equipo no empuja al resto */
  }
  /* Anchos fijos: Pos 30px · Equipo flex · Pts/PJ/G/E/P/Goles/DG anchos parejos */
  .him-grp-table colgroup col.col-pos{width:30px}
  .him-grp-table colgroup col.col-team{width:auto}
  .him-grp-table colgroup col.col-pts{width:38px}
  .him-grp-table colgroup col.col-pj{width:32px}
  .him-grp-table colgroup col.col-g{width:30px}
  .him-grp-table colgroup col.col-e{width:30px}
  .him-grp-table colgroup col.col-p{width:30px}
  .him-grp-table colgroup col.col-goles{width:54px}
  .him-grp-table colgroup col.col-dg{width:42px}

  .him-grp-table thead th{
    text-align:center;padding:10px 2px;
    background:rgba(255,255,255,.02);
    color:var(--muted);font-weight:700;font-size:10px;
    letter-spacing:.6px;text-transform:uppercase;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .him-grp-table thead th.col-pos,
  .him-grp-table tbody td.col-pos{text-align:center;padding-left:6px;padding-right:0}
  .him-grp-table thead th.col-team,
  .him-grp-table tbody td.col-team{text-align:left;padding-left:6px;padding-right:6px}
  .him-grp-table tbody td{
    padding:10px 2px;text-align:center;
    border-bottom:1px solid rgba(255,255,255,.06);
    color:var(--muted);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .him-grp-table tbody tr{
    border-left:2px solid transparent; /* stripe lateral por estado */
  }
  .him-grp-table tbody tr:last-child td{border-bottom:none}
  /* Pts en Barlow + dorado */
  .him-grp-table tbody td.col-pts{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:16px;color:var(--gold);
  }
  /* DG con color semántico */
  .him-grp-table tbody tr.him-is-avanza td.col-dg{color:var(--green);font-weight:700}
  .him-grp-table tbody tr.him-is-eliminado td.col-dg{color:var(--accent)}
  .him-grp-table .him-grp-pos{
    color:var(--muted);font-weight:700;font-size:11px;
  }
  .him-grp-table .him-grp-team{
    display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text);
  }
  .him-grp-table .him-grp-flag{font-size:18px;line-height:1;flex-shrink:0}
  /* Stripe lateral (border-left) en lugar de bg-tint */
  .him-grp-table tbody tr.him-is-avanza{
    background:rgba(34,197,94,.05);
    border-left-color:var(--green);
  }
  .him-grp-table tbody tr.him-is-avanza .him-grp-pos{color:var(--green);font-weight:800}
  .him-grp-table tbody tr.him-is-posible{
    background:rgba(212,160,23,.04);
    border-left-color:var(--gold);
  }
  .him-grp-table tbody tr.him-is-posible .him-grp-pos{color:var(--gold);font-weight:800}
  .him-grp-table tbody tr.him-is-eliminado{
    opacity:.45;
    border-left-color:var(--accent);
  }
  .him-grp-table tbody tr.him-is-eliminado .him-grp-pos{color:var(--accent)}

  .him-grp-legend{
    display:flex;gap:8px;flex-wrap:wrap;
    margin-bottom:16px;
  }
  .him-lg{
    font-size:10px;font-weight:700;padding:3px 8px;border-radius:5px;
    letter-spacing:.3px;text-transform:uppercase;
  }
  .him-lg-g{background:rgba(34,197,94,.14);color:var(--green)}
  .him-lg-o{background:rgba(212,160,23,.14);color:var(--gold)}
  .him-lg-r{background:rgba(230,29,37,.14);color:var(--accent)}

  /* ── Goleadores / Asistencias ── */
  .him-empty{
    padding:30px 16px;text-align:center;
    color:var(--muted);font-size:12px;
  }
  .him-empty small{display:block;margin-top:4px;opacity:.7;font-size:11px}
  .him-list{display:flex;flex-direction:column;gap:4px}
  .him-row{
    display:flex;align-items:center;gap:8px;
    padding:6px 4px;border-radius:7px;
    transition:background .15s;
    min-width:0;
  }
  .him-row:hover{background:rgba(255,255,255,.04)}
  .him-row-rank{
    min-width:18px;text-align:center;
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:16px;color:var(--muted);
    line-height:1;
  }
  .him-row:nth-child(1) .him-row-rank{color:var(--gold)}
  .him-row:nth-child(2) .him-row-rank{color:#cdd2db}
  .him-row:nth-child(3) .him-row-rank{color:#cd7f32}
  .him-row-photo{
    width:28px;height:28px;border-radius:50%;
    background:var(--card);object-fit:cover;flex-shrink:0;
    border:1px solid var(--border);
  }
  .him-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
  .him-row-name{
    font-size:12px;font-weight:700;color:var(--text);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    line-height:1.2;
  }
  .him-row-meta{
    font-size:10px;color:var(--muted);
    display:flex;align-items:center;gap:4px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    line-height:1.2;
  }
  .him-row-meta img{width:12px;height:12px;border-radius:2px;flex-shrink:0}
  .him-row-stat{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:900;font-size:20px;color:var(--gold);
    line-height:1;text-align:right;flex-shrink:0;
    padding-left:4px;
  }
  .him-row-stat small{
    display:block;font-size:8px;color:var(--muted);font-weight:700;
    letter-spacing:.3px;margin-top:2px;
  }

  /* ── FASE 2: Col 1 (desktop-left) — brand, quinielas, nav, usuario ── */
  #desktop-left{padding:16px 12px;gap:14px}

  /* Brand */
  #desktop-left .dl-brand{
    display:flex;align-items:center;gap:10px;
    padding:2px 4px 10px;
    border-bottom:1px solid var(--border);
  }
  #desktop-left .dl-brand-ico{
    width:36px;height:36px;border-radius:10px;
    background:linear-gradient(135deg,var(--accent),#8a1015);
    display:flex;align-items:center;justify-content:center;
    font-size:18px;flex-shrink:0;
  }
  #desktop-left .dl-brand-t1{
    font-family:'Barlow Condensed',sans-serif;
    font-size:18px;font-weight:700;color:var(--text);line-height:1;
  }
  #desktop-left .dl-brand-t2{
    font-family:'Barlow Condensed',sans-serif;
    font-size:13px;color:var(--gold);line-height:1;margin-top:2px;
    letter-spacing:.5px;text-transform:uppercase;
  }

  /* Secciones y labels */
  #desktop-left .dl-section{display:flex;flex-direction:column;gap:6px}
  #desktop-left .dl-label{
    font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;
    color:var(--muted);padding:0 4px;margin-bottom:2px;
  }

  /* Lista compacta de quinielas (cards clonadas del home) */
  #desktop-left .dl-q-list{display:flex;flex-direction:column;gap:8px}
  #desktop-left .dl-q-empty{
    padding:14px 10px;text-align:center;font-size:12px;color:var(--muted);
    border:1px dashed var(--border);border-radius:10px;
  }
  /* Cards clonadas — vista compacta */
  #desktop-left .dl-q-card{
    border-radius:10px !important;
    padding:10px 12px !important;
    margin:0 !important;
    font-size:12px;
    cursor:pointer;
    position:relative;
    transition:background .15s, border-color .15s, transform .1s;
  }
  #desktop-left .dl-q-card:hover{
    background:var(--card2) !important;
  }
  #desktop-left .dl-q-card:active{
    transform:scale(.98);
  }
  /* Todos los hijos pasan el click al contenedor (sin selección de texto) */
  #desktop-left .dl-q-card *{pointer-events:none; user-select:none}
  /* Ocultar piezas pesadas del card original en la versión compacta */
  #desktop-left .dl-q-card .btn-p,
  #desktop-left .dl-q-card .btn-s,
  #desktop-left .dl-q-card button,
  #desktop-left .dl-q-card .inv-code,
  #desktop-left .dl-q-card .pl-sub-extra,
  #desktop-left .dl-q-card [class*="bote"],
  #desktop-left .dl-q-card [class*="pred"]{display:none !important}
  #desktop-left .dl-q-card .pl-title,
  #desktop-left .dl-q-card .qcard-title,
  #desktop-left .dl-q-card h3,
  #desktop-left .dl-q-card h4{
    font-size:13px !important;font-weight:700 !important;
    margin:0 0 2px 0 !important;color:var(--text);
  }
  #desktop-left .dl-q-card .pl-sub,
  #desktop-left .dl-q-card .qcard-meta{
    font-size:11px !important;color:var(--muted) !important;
    margin:0 !important;
  }
  #desktop-left .dl-q-card .my-pts,
  #desktop-left .dl-q-card .pts-badge{
    font-size:13px !important;
  }

  /* ── Col 1: quiniela activa destacada ── */
  #desktop-left .dl-q-card.dl-q-active{
    border:2px solid var(--accent) !important;
    background:linear-gradient(135deg, rgba(230,29,37,.10), rgba(230,29,37,.02)) !important;
    box-shadow:0 2px 12px rgba(230,29,37,.18);
    padding:9px 11px !important;  /* compensar +1px del borde para no "saltar" */
  }
  /* Línea inline "#pos · Npts" inyectada sólo en la card activa */
  #desktop-left .dl-q-card .dl-q-mypos{
    display:flex;align-items:baseline;gap:6px;
    margin-top:6px;padding-top:6px;
    border-top:1px dashed rgba(230,29,37,.25);
    font-family:'Barlow Condensed',sans-serif;
    line-height:1;
  }
  #desktop-left .dl-q-card .dl-q-pos{
    font-size:15px;font-weight:700;color:var(--accent);
  }
  #desktop-left .dl-q-card .dl-q-sep{
    font-size:12px;color:var(--muted);font-weight:700;
  }
  #desktop-left .dl-q-card .dl-q-pts{
    font-size:15px;font-weight:700;color:var(--gold);
    margin-left:auto;
  }
  #desktop-left .dl-q-card .dl-q-pts small{
    font-size:9px;font-weight:500;color:var(--muted);
    margin-left:2px;letter-spacing:.5px;text-transform:uppercase;
  }

  /* Nav items */
  /* Items de quinielas en sidebar (renderizados por mirrorQuinielas) */
  #desktop-left .dl-q-item{
    display:flex;align-items:center;gap:8px;
    width:100%;padding:8px 10px;
    background:transparent;border:1px solid transparent;
    border-radius:8px;
    color:var(--text);cursor:pointer;text-align:left;
    transition:all .15s;font-family:inherit;
  }
  #desktop-left .dl-q-item:hover{
    background:var(--card2);
    border-color:rgba(255,255,255,.08);
  }
  #desktop-left .dl-q-item.dl-q-active{
    background:var(--card2);
    border-color:rgba(212,160,23,.3);
  }
  #desktop-left .dl-q-item.dl-q-item-admin{
    border-left:2px solid var(--gold);
  }
  #desktop-left .dl-q-item.dl-q-item-admin:hover,
  #desktop-left .dl-q-item.dl-q-item-admin.dl-q-active{
    border-left-color:var(--gold);
  }
  #desktop-left .dl-q-dot{
    width:7px;height:7px;border-radius:50%;flex-shrink:0;
  }
  #desktop-left .dl-q-dot.dl-q-dot-ok{background:var(--green)}
  #desktop-left .dl-q-dot.dl-q-dot-warn{background:var(--accent);animation:pulse 1.5s ease-in-out infinite}
  #desktop-left .dl-q-dot.dl-q-dot-pending{background:var(--gold)}
  #desktop-left .dl-q-name{
    flex:1;font-size:12px;font-weight:600;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  #desktop-left .dl-q-meta{
    font-family:'Barlow Condensed',sans-serif;
    font-size:14px;font-weight:900;color:var(--gold);
    line-height:1;flex-shrink:0;
    display:flex;align-items:baseline;gap:2px;
  }
  #desktop-left .dl-q-meta small{
    font-size:9px;color:var(--muted);font-weight:700;letter-spacing:.3px;
  }

  /* Nueva quiniela: botón + menu desplegable */
  #desktop-left .dl-nueva-btn{
    background:rgba(212,160,23,.08);
    border:1px solid rgba(212,160,23,.25);
    color:var(--gold);
    margin:8px 0 4px;
  }
  #desktop-left .dl-nueva-btn:hover{
    background:rgba(212,160,23,.14);
    border-color:rgba(212,160,23,.4);
  }
  #desktop-left .dl-nueva-menu{
    display:flex;flex-direction:column;gap:2px;
    margin:0 0 8px 12px;padding-left:8px;
    border-left:1px solid var(--border);
  }
  #desktop-left .dl-nueva-item{font-size:12px;padding:6px 8px}
  /* Footer minimal con cómo funciona + ajustes */
  #desktop-left .dl-footer-section{
    margin-top:auto;padding-top:8px;
    border-top:1px solid var(--border);
    gap:2px;
  }
  #desktop-left .dl-footer-item{
    font-size:12px;padding:7px 10px;
    color:var(--muted);
  }
  #desktop-left .dl-footer-item:hover{color:var(--text)}

  #desktop-left .dl-navitem{
    display:flex;align-items:center;gap:10px;
    width:100%;padding:9px 10px;
    background:transparent;border:1px solid transparent;border-radius:9px;
    color:var(--text);font-size:13px;font-weight:500;
    cursor:pointer;text-align:left;
    transition:background .15s, border-color .15s;
  }
  #desktop-left .dl-navitem:hover{
    background:var(--card2);
    border-color:var(--border);
  }
  #desktop-left .dl-navitem-ico{
    font-size:15px;width:20px;text-align:center;flex-shrink:0;
  }

  /* Botón Inicio — destacado como item independiente arriba de "Mis quinielas" */
  #desktop-left .dl-home-btn{
    margin:0 0 14px 0;
    padding:11px 12px;
    font-weight:700;
    font-size:13.5px;
    border-radius:10px;
    background:rgba(255,255,255,.03);
    border:1px solid var(--border);
  }
  #desktop-left .dl-home-btn:hover{
    background:var(--card2);
    border-color:#2a3040;
  }
  #desktop-left .dl-home-btn.active{
    background:linear-gradient(135deg, rgba(16,185,129,.14), rgba(16,185,129,.06));
    border-color:rgba(16,185,129,.45);
    color:var(--green);
  }
  #desktop-left .dl-home-btn.active .dl-navitem-ico{
    filter:drop-shadow(0 0 4px rgba(16,185,129,.6));
  }

  /* Footer usuario — pegado abajo con flex:1 spacer */
  #desktop-left .dl-user{
    margin-top:auto;
    display:flex;align-items:center;gap:10px;
    padding:10px;
    border-top:1px solid var(--border);
  }
  #desktop-left .dl-user-avatar{
    width:34px;height:34px;border-radius:50%;
    background:linear-gradient(135deg,var(--accent),#8a1015);
    display:flex;align-items:center;justify-content:center;
    font-weight:700;color:#fff;font-size:14px;
    flex-shrink:0;
  }
  #desktop-left .dl-user-txt{flex:1;min-width:0}
  #desktop-left .dl-user-name{
    font-size:13px;font-weight:700;color:var(--text);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  #desktop-left .dl-user-sub{font-size:10px;color:var(--muted)}
  #desktop-left .dl-user-logout{
    width:28px;height:28px;border-radius:7px;
    background:transparent;border:1px solid var(--border);
    color:var(--muted);cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    transition:color .15s, border-color .15s, background .15s;
  }
  #desktop-left .dl-user-logout:hover{
    color:var(--accent);border-color:var(--accent);background:rgba(230,29,37,.08);
  }

  /* ── FASE 3a: Col 3 (desktop-right) — Tabla de posiciones de la quiniela activa ── */
  #desktop-right{padding:16px 12px;gap:10px}

  #desktop-right .dr-head{
    padding:2px 4px 10px;
    border-bottom:1px solid var(--border);
  }
  #desktop-right .dr-label{
    font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;
    color:var(--muted);
  }
  #desktop-right .dr-qname{
    font-family:'Barlow Condensed',sans-serif;
    font-size:17px;font-weight:700;color:var(--text);
    margin-top:2px;line-height:1.15;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }

  #desktop-right .dr-tabla{
    display:flex;flex-direction:column;gap:4px;
    overflow-y:auto;flex:1;min-height:0;
  }
  #desktop-right .dr-empty{
    padding:24px 12px;text-align:center;font-size:12px;color:var(--muted);
    border:1px dashed var(--border);border-radius:10px;line-height:1.55;
  }

  /* Filas */
  #desktop-right .dr-row{
    display:grid;
    grid-template-columns:34px 1fr auto;
    align-items:center;gap:8px;
    padding:8px 10px;border-radius:8px;
    font-size:12.5px;
    transition:background .15s;
  }
  #desktop-right .dr-row:hover{background:var(--card2)}
  #desktop-right .dr-pos{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;color:var(--muted);font-size:14px;text-align:center;
  }
  #desktop-right .dr-nom{
    color:var(--text);font-weight:500;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
  }
  #desktop-right .dr-crown{margin-left:2px;font-size:11px;vertical-align:baseline}
  #desktop-right .dr-pts{
    font-family:'Barlow Condensed',sans-serif;
    font-weight:700;color:var(--gold);font-size:15px;line-height:1;
    white-space:nowrap;
  }
  #desktop-right .dr-pts small{
    font-size:9px;font-weight:500;color:var(--muted);margin-left:2px;
    text-transform:uppercase;letter-spacing:.5px;
  }

  /* Fila #1 con dorado sutil */
  #desktop-right .dr-row:first-child .dr-pos{color:var(--gold)}

  /* Fila del usuario actual — resaltada en rojo */
  #desktop-right .dr-row.is-me{
    background:rgba(230,29,37,.10);
    border:1px solid rgba(230,29,37,.35);
    padding:7px 9px;
  }
  #desktop-right .dr-row.is-me .dr-pos,
  #desktop-right .dr-row.is-me .dr-nom{color:var(--accent);font-weight:700}
  #desktop-right .dr-row.is-me .dr-pts{color:var(--text)}

  /* Subtexto de stats bajo la fila del user */
  #desktop-right .dr-row-sub{
    font-size:10px;color:var(--muted);
    padding:0 10px 6px 44px;margin-top:-4px;margin-bottom:4px;
    letter-spacing:.3px;
  }

  /* ── FASE 3b-1: Ocultar nav superior (los tabs se mueven a Col 3) ── */
  .hdr nav.nav-bar{display:none !important}

  /* Sub-navegación de pills en Col 3 */
  #desktop-right .dr-subnav{
    display:flex;gap:4px;
    padding:4px;
    background:var(--card2);
    border-radius:10px;
    margin-bottom:4px;
  }
  #desktop-right .dr-pill{
    flex:1;min-width:0;
    display:flex;align-items:center;justify-content:center;gap:5px;
    padding:7px 6px;border:0;background:transparent;border-radius:7px;
    color:var(--muted);font-size:11.5px;font-weight:600;
    cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    transition:background .15s, color .15s;
  }
  #desktop-right .dr-pill-ico{font-size:13px;line-height:1}
  #desktop-right .dr-pill:hover{color:var(--text)}
  #desktop-right .dr-pill.on{
    background:var(--card);color:var(--text);
    box-shadow:0 1px 2px rgba(0,0,0,.25);
  }

  /* Panes de contenido — solo uno visible a la vez */
  #desktop-right .dr-pane{display:none;flex:1;min-height:0;flex-direction:column;overflow:hidden}
  #desktop-right .dr-pane.on{display:flex}
  #desktop-right .dr-pane > .dr-tabla{flex:1;min-height:0}
  /* Panes con .page injectada (especiales/admin) → scroll vertical propio, contenido no escapa */
  #desktop-right .dr-pane[data-pane="especiales"],
  #desktop-right .dr-pane[data-pane="admin"]{
    overflow-x:hidden;overflow-y:auto;
    overscroll-behavior:contain;
    padding-right:4px;
    -webkit-overflow-scrolling:touch;
  }

  /* ── FASE 3b-4: Pane Tabla con 2 secciones apiladas (Tabla + Grupo) ── */
  #desktop-right .dr-pane[data-pane="tabla"]{overflow-y:auto;flex-direction:column}
  #desktop-right .dr-pane[data-pane="tabla"].on{display:block}
  #desktop-right .dr-section{margin-bottom:14px}
  #desktop-right .dr-section:last-child{margin-bottom:0}
  #desktop-right .dr-section-head{margin:0 2px 8px}
  #desktop-right .dr-section-title{
    font-size:11px;font-weight:800;color:var(--muted);
    text-transform:uppercase;letter-spacing:.6px;
    display:flex;align-items:center;gap:6px;
  }
  /* Tabla de la quiniela: cap a ~10 filas con scroll interno */
  #desktop-right .dr-pane[data-pane="tabla"] .dr-tabla{
    flex:none;max-height:340px;overflow-y:auto;
    padding-right:2px;
  }
  /* Dot de color del grupo activo */
  #desktop-right .dr-grupo-dot{
    display:inline-block;width:10px;height:10px;border-radius:50%;
    background:var(--muted);flex-shrink:0;
    box-shadow:0 0 0 2px rgba(255,255,255,.04);
  }
  /* Wrap del HTML inyectado por buildGroupTableHTML */
  #desktop-right .dr-grupo-wrap{
    background:var(--card2);border-radius:10px;
    padding:10px;font-size:11px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  /* Anula el overflow-x interno del buildGroupTableHTML para que el scroll
     viva en el wrap (un solo contenedor con scrollbar visible) */
  #desktop-right .dr-grupo-wrap > div[style*="overflow-x"]{
    overflow-x:visible !important;margin-bottom:0 !important;
  }
  /* Permitir que la tabla crezca más allá del contenedor → scroll horizontal */
  #desktop-right .dr-grupo-wrap table{
    font-size:11px !important;
    width:auto !important;min-width:100%;
  }
  #desktop-right .dr-grupo-wrap th,
  #desktop-right .dr-grupo-wrap td{
    padding:5px 4px !important;font-size:10.5px !important;
    white-space:nowrap;
  }
  /* Scrollbar visible pero sutil en el wrap del grupo */
  #desktop-right .dr-grupo-wrap::-webkit-scrollbar{height:6px}
  #desktop-right .dr-grupo-wrap::-webkit-scrollbar-thumb{
    background:rgba(255,255,255,.15);border-radius:3px;
  }
  #desktop-right .dr-grupo-wrap::-webkit-scrollbar-track{background:transparent}

  /* ── Texto de la tabla unificado, diferenciación por fondo de fila ── */
  #desktop-right .dr-grupo-wrap thead th{
    color:var(--muted) !important;
    font-weight:700 !important;
  }
  /* PTS header sigue un poco más fuerte para anclar la lectura */
  #desktop-right .dr-grupo-wrap thead th:nth-child(3){color:var(--text) !important;font-weight:800 !important}
  #desktop-right .dr-grupo-wrap tbody td{
    color:var(--text) !important;
    font-weight:600 !important;
  }
  /* PTS sigue siendo el campo dominante */
  #desktop-right .dr-grupo-wrap tbody td:nth-child(3){font-weight:800 !important}
  /* Posición en los bordes queda con su emoji, fuerzo color uniforme */
  #desktop-right .dr-grupo-wrap tbody td:first-child{color:var(--text) !important}
  /* Nombre del equipo legible, sin override del minúsculo alias */
  #desktop-right .dr-grupo-wrap tbody td:nth-child(2) > div{color:var(--text) !important}

  /* Fondo de fila por estado (clases añadidas en post-proceso) */
  #desktop-right .dr-grupo-wrap tbody tr.is-avanza{
    background:rgba(60,172,59,.14) !important;
    box-shadow:inset 3px 0 0 var(--green);
  }
  #desktop-right .dr-grupo-wrap tbody tr.is-posible{
    background:rgba(201,160,32,.14) !important;
    box-shadow:inset 3px 0 0 var(--gold);
  }
  #desktop-right .dr-grupo-wrap tbody tr.is-eliminado{
    background:rgba(230,29,37,.10) !important;
    box-shadow:inset 3px 0 0 var(--accent);
  }

  /* ── Leyenda de colores debajo de la tabla ── */
  #desktop-right .dr-legend{
    display:flex;gap:5px;flex-wrap:wrap;
    margin:10px 0 4px;
  }
  #desktop-right .dr-lg{
    padding:3px 8px;border-radius:12px;
    font-size:9.5px;font-weight:700;
    letter-spacing:.3px;text-transform:uppercase;
    white-space:nowrap;
  }
  #desktop-right .dr-lg-g{background:rgba(60,172,59,.18);color:var(--green)}
  #desktop-right .dr-lg-o{background:rgba(201,160,32,.18);color:var(--gold)}
  #desktop-right .dr-lg-r{background:rgba(230,29,37,.18);color:var(--accent)}

  /* ── "Regla FIFA 2026" colapsable ── */
  #desktop-right .dr-regla-wrap{margin-top:10px}
  #desktop-right .dr-regla{
    background:var(--card2);border-radius:8px;
    padding:8px 10px;
    border:1px solid var(--border);
  }
  #desktop-right .dr-regla > summary{
    cursor:pointer;list-style:none;
    font-size:10.5px;font-weight:700;color:var(--muted);
    text-transform:uppercase;letter-spacing:.5px;
    display:flex;align-items:center;justify-content:space-between;
    gap:8px;
  }
  #desktop-right .dr-regla > summary::-webkit-details-marker{display:none}
  #desktop-right .dr-regla > summary::marker{content:''}
  #desktop-right .dr-regla > summary::after{
    content:'▾';font-size:12px;color:var(--muted);
    transition:transform .2s ease;
    display:inline-block;
  }
  #desktop-right .dr-regla[open] > summary::after{transform:rotate(180deg)}
  #desktop-right .dr-regla-body{
    font-size:11px;color:var(--muted);line-height:1.55;
    margin-top:8px;padding-top:8px;
    border-top:1px solid var(--border);
  }
  #desktop-right .dr-regla-body strong{color:var(--text)}

  /* ── FASE 3b-2: #page-especiales (y #page-admin) injertados en Col 3 ── */
  /* Forzamos visibilidad: el `.on` global no rige aquí; siempre visibles dentro del pane */
  /* Crítico: cancelar opacity:0, pointer-events:none y position:absolute de .page:not(.on) */
  #desktop-right .dr-pane .page,
  #desktop-right .dr-pane .page:not(.on){
    display:block !important;
    opacity:1 !important;
    transform:none !important;
    pointer-events:auto !important;
    position:static !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    padding:0 !important;
    margin:0 !important;
    max-width:none !important;
    min-height:0 !important;
    background:transparent !important;
    overflow:visible !important;
  }

  /* Compactar cabeceras de sección y botones primarios dentro del pane */
  #desktop-right .dr-pane .sec-hdr{
    margin:0 0 10px;padding:0 2px;
    display:flex;align-items:center;justify-content:space-between;
  }
  #desktop-right .dr-pane .sec-hdr .sec-title{
    font-size:12px;font-weight:800;color:var(--text);
    text-transform:none;letter-spacing:0;
  }
  #desktop-right .dr-pane .btn-p{
    width:100%;margin-top:10px;padding:10px 12px;
    font-size:12px;
  }

  /* ── FASE 3b-3: Ajustes para #page-admin en Col 3 (ancho 300px) ── */
  /* Tabs admin (Config / Pagos) compactos */
  #desktop-right .dr-pane[data-pane="admin"] .admin-tabs{
    display:flex;gap:6px;margin:0 0 10px;
  }
  #desktop-right .dr-pane[data-pane="admin"] .admin-tabs .at{
    flex:1;padding:7px 8px;font-size:11.5px;
    border-radius:8px;font-weight:700;
  }
  /* Aviso de lock compacto */
  #desktop-right .dr-pane[data-pane="admin"] #tournament-lock-notice .lock-banner{
    padding:10px 12px;margin-bottom:10px;
    display:flex;gap:8px;align-items:flex-start;
  }
  #desktop-right .dr-pane[data-pane="admin"] .lock-banner h4{font-size:12px;margin:0 0 2px}
  #desktop-right .dr-pane[data-pane="admin"] .lock-banner p{font-size:10.5px;margin:0;line-height:1.35}
  #desktop-right .dr-pane[data-pane="admin"] .lock-banner .lock-ico{font-size:18px}
  /* Secciones colapsables más compactas */
  #desktop-right .dr-pane[data-pane="admin"] .settings-section{
    padding:10px 12px;margin-bottom:10px;
  }
  #desktop-right .dr-pane[data-pane="admin"] .settings-section .sec-hd h3{font-size:12.5px}
  #desktop-right .dr-pane[data-pane="admin"] .settings-section .sec-bd{padding-top:10px}
  /* Código de invitación: tamaño más chico */
  #desktop-right .dr-pane[data-pane="admin"] #admin-invite-code{
    font-size:30px !important;letter-spacing:4px !important;
  }
  /* Grids 2 columnas → 1 columna (WhatsApp + Copiar mensaje, etc.) */
  #desktop-right .dr-pane[data-pane="admin"] div[style*="grid-template-columns:1fr 1fr"]{
    grid-template-columns:1fr !important;gap:6px !important;
  }
  /* Inputs / textareas dentro de admin más compactos */
  #desktop-right .dr-pane[data-pane="admin"] .fi{font-size:12.5px;padding:8px 10px}
  #desktop-right .dr-pane[data-pane="admin"] .fl{font-size:11px}
  #desktop-right .dr-pane[data-pane="admin"] .fi-hint{font-size:10.5px}
  /* Bote acumulado más compacto */
  #desktop-right .dr-pane[data-pane="admin"] .bote-display{padding:10px;gap:8px}
  #desktop-right .dr-pane[data-pane="admin"] .bote-amount{font-size:18px}
  #desktop-right .dr-pane[data-pane="admin"] .bote-ico{font-size:22px}

  /* ══════════════════════════════════════════════════════════
     MODALES DESKTOP — centrados en pantalla, no bottom-sheet
     Transformar .overlay / .modal / .modal-box / .fullscreen
     de estilo móvil (drop-up) a estilo desktop (centrado)
     ══════════════════════════════════════════════════════════ */
  .overlay{align-items:center !important;padding:20px}
  .modal,.modal-box{
    border-radius:var(--r) !important;
    border-top:1px solid var(--border) !important;
    border:1px solid var(--border) !important;
    box-shadow:0 20px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.04) !important;
    max-width:560px !important;
    max-height:80vh !important;
    animation:desktopModalIn .22s ease both !important;
    padding:24px 22px 26px !important;
  }
  .modal{border-top:3px solid var(--accent) !important}
  .modal-handle{display:none !important}
  @keyframes desktopModalIn{
    from{opacity:0;transform:translateY(-8px) scale(.98)}
    to{opacity:1;transform:translateY(0) scale(1)}
  }
  /* ──────────────────────────────────────────────────────────
     Pantallas tipo "fullscreen" → modal centrado con backdrop
     Aplica a:
       • .fullscreen (global-ranking-screen, dashboard-screen)
       • #config-screen (Configuración)
       • #reglasModalOverlay (Cómo funciona — creado dinámicamente)
     ────────────────────────────────────────────────────────── */
  .fullscreen,
  #config-screen,
  #reglasModalOverlay{
    inset:auto !important;
    top:50% !important;
    left:50% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%, -50%) !important;
    width:calc(100vw - 80px) !important;
    max-height:85vh !important;
    border-radius:var(--r) !important;
    border:1px solid var(--border) !important;
    box-shadow:0 20px 60px rgba(0,0,0,.5) !important;
    background:var(--card) !important;
    animation:desktopModalIn .22s ease both !important;
  }
  /* Cómo funciona → modal estándar */
  #reglasModalOverlay{max-width:560px !important}
  /* Configuración + Clasificación global + Dashboard → modal ancho */
  #config-screen,
  #global-ranking-screen,
  #dashboard-screen{max-width:820px !important}

  /* ──────────────────────────────────────────────────────────
     Backdrop real (bloquea clicks detrás del modal)
     Se activa cuando alguna de estas pantallas está visible.
     z-index:400 → debajo de modales (450-3000), encima de sidebars.
     ────────────────────────────────────────────────────────── */
  body:has(.fullscreen.open)::before,
  body:has(#config-screen[style*="display: block"])::before,
  body:has(#config-screen[style*="display:block"])::before,
  body:has(#reglasModalOverlay[style*="display: flex"])::before,
  body:has(#reglasModalOverlay[style*="display:flex"])::before{
    content:'';
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.6);
    backdrop-filter:blur(4px);
    z-index:400;
    animation:backdropFade .22s ease both;
  }
  @keyframes backdropFade{from{opacity:0}to{opacity:1}}

  /* ──────────────────────────────────────────────────────────
     Botones "back" → X de cerrar estilo "Cómo funciona"
     Aplica a .fs-back (Clasificación global, Dashboard) y
     .config-back (Configuración). Oculta el texto y los
     convierte en un botón X compacto arriba a la derecha.
     ────────────────────────────────────────────────────────── */
  .fs-back,
  .config-back{
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    left:auto !important;
    font-size:0 !important;
    background:rgba(255,255,255,.07) !important;
    border:1px solid var(--border) !important;
    color:var(--text) !important;
    padding:7px 12px !important;
    border-radius:8px !important;
    cursor:pointer;
    z-index:10;
    line-height:1 !important;
    width:auto !important;
    margin:0 !important;
    min-width:0 !important;
    box-shadow:none !important;
  }
  .fs-back::before,
  .config-back::before{
    content:"✕";
    font-size:15px;
    font-weight:700;
    color:var(--text);
  }
  .fs-back:hover,
  .config-back:hover{background:rgba(255,255,255,.14) !important}

  /* ──────────────────────────────────────────────────────────
     COL 3 — Widget "Próximos partidos" (home general)
     Se muestra cuando NO hay quiniela activa.
     ────────────────────────────────────────────────────────── */
  .dr-home-wrap{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .dr-home-list{display:flex;flex-direction:column;gap:6px}
  .dr-home-match{
    display:flex;align-items:center;gap:8px;
    padding:9px 10px;
    background:#1c2028;border:1px solid #2a3040;border-radius:10px;
  }
  .dr-home-match-date{
    font-size:10px;font-weight:700;color:#64748b;
    text-transform:uppercase;letter-spacing:.6px;
    min-width:42px;text-align:center;line-height:1.15;
  }
  .dr-home-match-date b{display:block;color:var(--text);font-size:13px;font-weight:800}
  .dr-home-match-teams{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
  .dr-home-match-team{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#e2e8f0;font-weight:600}
  .dr-home-match-team .f{font-size:15px;line-height:1}
  .dr-home-match-team .a{font-size:10.5px;color:#64748b;font-weight:700;margin-left:auto}
  .dr-home-match-meta{
    display:flex;flex-direction:column;align-items:flex-end;gap:2px;
    font-size:10.5px;color:#64748b;font-weight:700;
  }
  .dr-home-match-meta .t{color:var(--text);font-size:12px;font-weight:800}
  .dr-home-match-meta .g{background:rgba(245,158,11,.12);color:#f59e0b;padding:1px 6px;border-radius:6px;font-size:9.5px}
  .dr-live-dot{
    display:inline-block;width:8px;height:8px;border-radius:50%;
    background:#ef4444;box-shadow:0 0 0 0 rgba(239,68,68,.7);
    animation:drLivePulse 1.4s ease-in-out infinite;margin-right:4px;
  }
  @keyframes drLivePulse{
    0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.6)}
    50%{box-shadow:0 0 0 6px rgba(239,68,68,0)}
  }

  /* ──────────────────────────────────────────────────────────
     COL 3 — Card "Criterios de puntos" (pane Especiales)
     Siempre visible arriba del pane cuando hay quiniela activa.
     ────────────────────────────────────────────────────────── */
  .dr-criterios-card{
    background:#1c2028;border:1px solid #2a3040;border-radius:12px;
    padding:11px 12px;margin-bottom:12px;
  }
  .dr-criterios-head{
    font-size:11.5px;font-weight:800;text-transform:uppercase;
    letter-spacing:.8px;color:#94a3b8;margin-bottom:9px;
  }
  .dr-criterios-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}
  .dr-criterios-row{
    display:flex;align-items:center;gap:7px;
    padding:5px 0;border-bottom:1px solid #1e2533;
  }
  .dr-criterios-row:nth-last-child(-n+2){border-bottom:none}
  .dr-criterios-ico{font-size:13px;line-height:1;flex-shrink:0}
  .dr-criterios-label{
    flex:1;font-size:11px;font-weight:600;color:#e2e8f0;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;
  }
  .dr-criterios-pts{
    font-family:'Barlow Condensed',sans-serif;
    font-size:15px;font-weight:900;color:#f59e0b;flex-shrink:0;
  }
  .dr-criterios-pts.purple{color:#a78bfa}
  .dr-criterios-pts.green{color:#34d399}
  .dr-criterios-empty{
    font-size:11px;color:#64748b;padding:6px 0;grid-column:1 / -1;text-align:center;
  }
}



