:root{
  --bg:#f4f7fb;--panel:#ffffff;--panel2:#f8faff;--line:#e3e9f2;--text:#162033;--muted:#708096;
  --accent:#356df3;--accent-soft:#eaf0ff;--mint:#17b77a;--mint-soft:#e8f9f2;--danger:#e64c61;--danger-soft:#fff0f2;
  --gold:#d99b16;--cyan:#168bb8;--shadow:0 18px 55px rgba(28,48,82,.09)
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select{font:inherit}.hidden{display:none!important}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#f7f9fd}
.login-art{padding:54px 7vw;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 18% 72%,rgba(23,183,122,.13),transparent 31%),radial-gradient(circle at 78% 16%,rgba(53,109,243,.14),transparent 30%),linear-gradient(145deg,#f6f9ff,#eef4ff);position:relative;overflow:hidden;border-right:1px solid #e4eaf3}
.login-art:after{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(53,109,243,.09);border-radius:50%;right:-300px;bottom:-260px;box-shadow:0 0 0 70px rgba(53,109,243,.025),0 0 0 140px rgba(23,183,122,.02)}
.brand-mark{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--accent),#5b8cff);color:#fff;display:grid;place-items:center;font-weight:1000;letter-spacing:-2px;box-shadow:0 12px 30px rgba(53,109,243,.22)}
.brand-mark.small{width:42px;height:42px;border-radius:13px;font-size:14px}.eyebrow{font-size:12px;letter-spacing:.17em;color:var(--accent);font-weight:900;margin-bottom:20px}
.login-art h1{font-size:clamp(48px,6vw,86px);line-height:.95;margin:0;letter-spacing:-.06em;color:#17243a}.login-art h1 span{color:var(--accent)}
.login-art p{max-width:650px;color:#66768b;font-size:18px;line-height:1.6}.rules-mini{display:flex;gap:12px;z-index:1}.rules-mini div{width:145px;padding:16px;border:1px solid #dfe7f2;background:rgba(255,255,255,.75);border-radius:18px;box-shadow:0 10px 30px rgba(36,64,108,.06)}.rules-mini b{font-size:28px;color:var(--accent);display:block}.rules-mini span{font-size:12px;color:var(--muted)}
.login-panel{display:grid;place-items:center;background:#fff;color:var(--text);padding:40px}.login-card{width:min(430px,100%);background:#fff;border:1px solid #e5ebf3;border-radius:28px;padding:38px;box-shadow:0 30px 80px rgba(35,61,100,.11)}
.login-card .pill{background:var(--mint-soft);color:#0a7650;border:1px solid #c9efdf;padding:7px 11px;border-radius:999px;font-weight:800;font-size:11px}.login-card h2{font-size:32px;letter-spacing:-.04em;margin:24px 0 8px}.login-card p{color:#66768b;line-height:1.5;margin:0 0 28px}.login-card label{font-size:12px;font-weight:800;display:block;margin:16px 0 8px}.login-card input,.field{width:100%;border:1px solid #dfe6ef;background:#f8fafc;color:var(--text);padding:14px 15px;border-radius:13px;outline:none}.login-card input:focus,.field:focus{border-color:#7da1ff;box-shadow:0 0 0 4px rgba(53,109,243,.10)}
.btn{border:0;border-radius:12px;padding:12px 16px;font-weight:800;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 8px 18px rgba(53,109,243,.18)}.btn.secondary{background:#eef3fb;color:#31527e;border:1px solid #dae4f1}.btn.danger{background:var(--danger-soft);color:var(--danger);border:1px solid #ffd5db}.btn.wide{width:100%;margin-top:20px;display:flex;align-items:center;justify-content:space-between;padding:15px 17px}.demo-note{font-size:11px;color:#738198;background:#f6f8fb;border-radius:11px;padding:10px 12px;margin-top:16px}.mobile-brand{display:none}
.app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:fixed;width:250px;height:100vh;background:#fff;border-right:1px solid #e4eaf2;padding:24px 16px;display:flex;flex-direction:column;z-index:20;box-shadow:8px 0 35px rgba(35,59,94,.035)}.logo-row{display:flex;align-items:center;gap:11px;padding:0 7px 24px}.logo-row b{display:block;font-size:16px}.logo-row span{font-size:11px;color:var(--muted)}nav{display:grid;gap:6px}.nav{border:0;background:transparent;color:#718199;text-align:left;padding:11px 13px;border-radius:11px;display:flex;gap:11px;align-items:center;cursor:pointer;font-weight:700}.nav span{width:18px;text-align:center}.nav:hover{color:var(--accent);background:#f4f7fd}.nav.active{color:var(--accent);background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.sidebar-bottom{margin-top:auto}.season-card{background:linear-gradient(135deg,#eef4ff,#f4fbf8);border:1px solid #dfe8f4;border-radius:17px;padding:15px;margin-bottom:10px}.season-card span{color:var(--accent);font-size:9px;letter-spacing:.12em;font-weight:900}.season-card b{display:block;margin:8px 0 4px}.season-card small{color:var(--muted)}
.main-area{grid-column:2;min-width:0}.topbar{height:76px;position:sticky;top:0;z-index:10;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid #e4eaf2;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar small{color:var(--muted)}.live-dot{display:inline-block;width:7px;height:7px;background:var(--mint);border-radius:50%;box-shadow:0 0 0 5px rgba(23,183,122,.10);margin-right:10px}.user-chip{display:flex;align-items:center;gap:10px}.user-chip b,.user-chip span{display:block}.user-chip span{font-size:10px;color:var(--muted)}.avatar{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#dfe8ff,#dff8ef);color:var(--accent);display:grid;place-items:center;font-weight:1000}.menu-btn{display:none}.content{padding:34px;max-width:1500px;margin:auto}
.hero{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.hero .eyebrow{margin:0 0 8px}.hero h1{font-size:38px;margin:0;letter-spacing:-.045em}.hero p{color:var(--muted);margin:7px 0 0}.week-switch{display:flex;background:#fff;border:1px solid var(--line);padding:5px;border-radius:13px;gap:4px;max-width:100%;overflow:auto;box-shadow:0 7px 22px rgba(35,61,100,.04)}.week-switch button{background:transparent;border:0;color:#718199;padding:8px 12px;border-radius:9px;white-space:nowrap;cursor:pointer;font-weight:800;font-size:12px}.week-switch button.active{background:var(--accent);color:#fff}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stat{background:#fff;border:1px solid #e3eaf3;border-radius:18px;padding:18px;position:relative;overflow:hidden;box-shadow:0 8px 26px rgba(35,61,100,.04)}.stat:after{content:"";position:absolute;width:75px;height:75px;background:var(--accent);opacity:.05;border-radius:50%;right:-20px;top:-24px}.stat span{font-size:11px;color:var(--muted);font-weight:800}.stat b{font-size:31px;display:block;margin-top:6px;letter-spacing:-.04em}.stat small{color:#8394a9}
.two-col{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,.7fr);gap:20px}.panel{background:#fff;border:1px solid #e1e8f1;border-radius:20px;overflow:hidden;box-shadow:0 10px 34px rgba(35,61,100,.045)}.panel-head{padding:18px 20px;border-bottom:1px solid #e8edf4;display:flex;align-items:center;justify-content:space-between}.panel-head h3{margin:0;font-size:15px}.panel-head span{font-size:11px;color:var(--muted)}
.match-list{padding:8px}.match-card{display:grid;grid-template-columns:minmax(130px,1fr) 165px minmax(130px,1fr);align-items:center;gap:15px;padding:17px 14px;border-bottom:1px solid #edf1f6}.match-card:last-child{border:0}.team{display:flex;align-items:center;gap:10px;font-weight:800}.team.away{justify-content:flex-end;text-align:right}.crest{min-width:42px;width:42px;height:42px;border-radius:12px;background:#f2f5fa;border:1px solid #dfe6ef;display:grid;place-items:center;font-size:10px;color:#52657e;font-weight:1000;overflow:hidden}.crest img{width:100%;height:100%;object-fit:contain;padding:4px;background:#fff}.score-box{text-align:center}.score-inputs{display:flex;align-items:center;justify-content:center;gap:7px}.score-inputs input{width:48px;height:43px;background:#f8fafc;color:var(--text);border:1px solid #cfd9e6;border-radius:10px;text-align:center;font-weight:900;font-size:17px;outline:none}.score-inputs input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(53,109,243,.08)}.score-inputs input:disabled{opacity:.55}.score-box small{display:block;color:var(--muted);font-size:9px;margin-top:6px}.save-pred{margin-top:7px;background:transparent;border:0;color:var(--accent);font-size:10px;font-weight:900;cursor:pointer}.locked{color:var(--gold)!important}.result-score{font-size:22px;font-weight:1000}.prediction-note{font-size:10px;color:var(--cyan);display:block;margin-top:4px}
.leader-list{padding:8px}.leader-row{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:13px 10px;border-bottom:1px solid #edf1f6}.leader-row:last-child{border:0}.rank{width:30px;height:30px;border-radius:10px;background:#f0f3f8;color:#55677e;display:grid;place-items:center;font-weight:900;font-size:12px}.rank.r1{background:#fff4cc;color:#a96f00}.rank.r2{background:#edf1f6;color:#637084}.rank.r3{background:#fff0e7;color:#b56a32}.leader-row b{font-size:13px}.leader-row small{display:block;color:var(--muted);margin-top:2px}.points{font-weight:1000;color:var(--accent)}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:680px}.table th{text-align:left;color:#7f91a8;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:13px 16px;border-bottom:1px solid #e4eaf2;background:#fbfcfe}.table td{padding:15px 16px;border-bottom:1px solid #edf1f6;font-size:13px}.table tr.me{background:#f4f7ff}.table .bigpts{font-size:17px;font-weight:1000;color:var(--accent)}.badge{padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;display:inline-block}.badge.win{background:#e8f9f2;color:#12825c}.badge.exact{background:#edf3ff;color:#315fd1}.badge.zero{background:#fff0f2;color:#d64359}.empty{padding:50px;text-align:center;color:var(--muted)}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px}.form-grid .full{grid-column:1/-1}.form-grid label{font-size:10px;color:var(--muted);font-weight:800;display:block;margin-bottom:6px}.field{background:#f8fafc;border-color:#dbe3ed;color:var(--text)}.admin-list{padding:8px 14px 16px;max-height:430px;overflow:auto}.admin-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid #edf1f6}.admin-item b{font-size:13px}.admin-item small{display:block;color:var(--muted);margin-top:3px}.mini-actions{display:flex;gap:6px;flex-wrap:wrap}.icon-btn{border:1px solid #d7e0eb;background:#f7f9fc;color:#405570;border-radius:9px;padding:7px 9px;cursor:pointer}.icon-btn:hover{border-color:#b8c8dd;background:#f0f4fa}
.team-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.team-edit-card{background:#fff;border:1px solid #e1e8f1;border-radius:18px;padding:16px;box-shadow:0 8px 26px rgba(35,61,100,.035)}.team-edit-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}.team-edit-top .crest{width:54px;height:54px;min-width:54px;border-radius:15px}.team-edit-top b{font-size:14px}.team-edit-top small{display:block;color:var(--muted);margin-top:3px}.team-edit-card label{font-size:10px;color:var(--muted);font-weight:900;display:block;margin:10px 0 6px}.team-edit-card .btn{margin-top:12px;width:100%}.teams-note{padding:13px 15px;background:#eef4ff;border:1px solid #dbe6ff;color:#4b6592;border-radius:13px;font-size:12px;line-height:1.5;margin-bottom:18px}.logo-help{font-size:10px;color:var(--muted);margin-top:5px;display:block}.team-select-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.toast{position:fixed;right:24px;bottom:24px;z-index:100;background:#17243a;color:#fff;padding:12px 16px;border-radius:12px;font-weight:800;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:var(--danger);color:#fff}
@media(max-width:1180px){.team-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.login-shell{grid-template-columns:1fr}.login-art{display:none}.mobile-brand{display:flex;align-items:center;gap:12px;margin-bottom:25px}.app{display:block}.sidebar{transform:translateX(-100%);transition:.2s;box-shadow:var(--shadow)}.sidebar.open{transform:none}.main-area{display:block}.menu-btn{display:block;background:transparent;border:0;color:var(--text);font-size:20px}.topbar{padding:0 16px}.topbar>div:first-of-type small{display:none}.content{padding:22px 16px}.stats-grid{grid-template-columns:1fr 1fr}.two-col,.admin-grid{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.week-switch{width:100%}}
@media(max-width:700px){.team-admin-grid{grid-template-columns:1fr}}
@media(max-width:620px){.login-panel{padding:20px}.login-card{padding:26px 22px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.stat b{font-size:25px}.match-card{grid-template-columns:1fr 108px 1fr;gap:8px;padding:15px 7px}.team{font-size:11px;flex-direction:column}.team.away{flex-direction:column-reverse}.crest{width:36px;height:36px;min-width:36px}.score-inputs input{width:42px;height:40px}.hero h1{font-size:30px}.user-chip>div:last-child{display:none}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.team-select-row{grid-template-columns:1fr}}
