:root{--bg: #f3f6f4;--surface: #ffffff;--surface-2: #eef3f0;--text: #0f1f18;--muted: #5b6b63;--border: #dbe4df;--brand: #0b6b45;--brand-2: #0b3d2e;--brand-ink: #ffffff;--accent: #f5c518;--danger: #c62828;--warn: #b45309;--ok: #15803d;--info: #1d4ed8;--radius: 14px;--shadow: 0 1px 2px rgba(15, 31, 24, .06), 0 6px 20px rgba(15, 31, 24, .06);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0b1411;--surface: #12201b;--surface-2: #182a23;--text: #e8f1ec;--muted: #9db0a6;--border: #23362e;--brand: #22a06b;--brand-2: #0b3d2e;--shadow: none;color-scheme:dark}}:root[data-theme=dark]{--bg: #0b1411;--surface: #12201b;--surface-2: #182a23;--text: #e8f1ec;--muted: #9db0a6;--border: #23362e;--brand: #22a06b;--brand-2: #0b3d2e;--shadow: none;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}h1,h2,h3{margin:0 0 .4em;line-height:1.2}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1rem}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em}.num{font-variant-numeric:tabular-nums}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;background:var(--brand-2);color:#fff;display:flex;align-items:center;gap:12px;padding:10px 16px}.logo{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:.02em;color:#fff}.logo-ball{width:28px;height:28px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--brand-2);font-size:16px}.topbar .spacer{flex:1}.topbar .who{font-size:.85rem;text-align:right;line-height:1.2}.topbar .who small{opacity:.75;display:block}.shell{flex:1;display:flex;width:100%;max-width:1180px;margin:0 auto}.sidenav{width:220px;padding:16px 10px;display:none}.sidenav a,.bottomnav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--muted);font-weight:600}.sidenav a.active{background:var(--surface);color:var(--brand);box-shadow:var(--shadow)}.main{flex:1;min-width:0;padding:16px 16px 96px}.bottomnav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:space-around;background:var(--surface);border-top:1px solid var(--border);padding:4px 4px calc(4px + env(safe-area-inset-bottom))}.bottomnav a{flex-direction:column;gap:2px;font-size:.7rem;padding:6px 4px;flex:1;justify-content:center;text-align:center}.bottomnav a.active{color:var(--brand)}.bottomnav .ico,.sidenav .ico{font-size:1.15rem;line-height:1}@media (min-width: 860px){.sidenav{display:block}.bottomnav{display:none}.main{padding:24px 24px 48px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.card+.card,.stack>*+*{margin-top:14px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}.card-head h2,.card-head h3{margin:0}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}.grid>.card+.card,.grid>*+*{margin-top:0}.grid-4{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr))}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.between{justify-content:space-between}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.page-head p{margin:0}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:10px;padding:9px 14px;font:inherit;font-weight:650;cursor:pointer;background:var(--brand);color:var(--brand-ink);display:inline-flex;align-items:center;gap:6px;justify-content:center;min-height:40px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn.danger{background:var(--danger)}.btn.warn{background:var(--accent);color:#1a1a1a}.btn.sm{padding:5px 10px;min-height:32px;font-size:.85rem}.btn.block{width:100%}.link-btn{background:none;border:0;color:var(--brand);font:inherit;font-weight:600;cursor:pointer;padding:0}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.field .lbl{font-size:.82rem;font-weight:650;color:var(--muted)}.input,select.input,textarea.input{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:9px 11px;width:100%;min-height:40px}.input:focus{outline:2px solid color-mix(in srgb,var(--brand) 40%,transparent);border-color:var(--brand)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:.74rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);white-space:nowrap}.badge.ok{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}.badge.danger{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.badge.warn{background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--warn)}.badge.info{background:color-mix(in srgb,var(--info) 14%,transparent);color:var(--info)}.badge.live{background:var(--danger);color:#fff;animation:pulse 1.4s infinite}@keyframes pulse{50%{opacity:.55}}.tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--border);margin-bottom:14px;scrollbar-width:none}.tabs button{background:none;border:0;padding:10px 12px;font:inherit;font-weight:650;color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.tabs button.active{color:var(--brand);border-color:var(--brand)}.table-wrap{overflow-x:auto}table.table{width:100%;border-collapse:collapse;font-size:.9rem}.table th{text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:8px 6px;border-bottom:1px solid var(--border)}.table td{padding:9px 6px;border-bottom:1px solid var(--border)}.table td.c,.table th.c{text-align:center}.table tr.hl td{background:color-mix(in srgb,var(--accent) 16%,transparent)}.table tr:last-child td{border-bottom:0}.dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex:none;border:2px solid rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--border)}.crest{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:.8rem;flex:none}.form-pill{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:4px;font-size:.65rem;font-weight:800;color:#fff;margin-right:2px}.form-pill.G{background:var(--ok)}.form-pill.E{background:#8a9790}.form-pill.P{background:var(--danger)}.stat{padding:14px}.stat .v{font-size:1.7rem;font-weight:800}.stat .l{color:var(--muted);font-size:.82rem;font-weight:600}.list>*{display:flex;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px solid var(--border)}.list>*:last-child{border-bottom:0}.list .grow{flex:1;min-width:0}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.match .team{display:flex;align-items:center;gap:8px;min-width:0;font-weight:650}.match .team.away{justify-content:flex-end;text-align:right}.match .score{font-size:1.15rem;font-weight:800;min-width:70px;text-align:center;font-variant-numeric:tabular-nums}.match-card{padding:12px 14px}.match-meta{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:.78rem;color:var(--muted)}.empty{text-align:center;padding:28px 12px;color:var(--muted)}.empty .big{font-size:2rem}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:50;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border-radius:16px;width:100%;max-width:460px;max-height:90vh;overflow:auto;padding:18px}.modal h2{margin-bottom:14px}.toast{position:fixed;left:50%;bottom:84px;transform:translate(-50%);background:#111;color:#fff;padding:10px 16px;border-radius:10px;z-index:60;font-weight:600;max-width:calc(100% - 32px)}.toast.error{background:var(--danger)}.hero-auth{min-height:100vh;display:grid;place-items:center;padding:16px;background:radial-gradient(circle at 20% 0%,#13734c 0,transparent 50%),linear-gradient(160deg,#0b3d2e,#06231a)}.auth-card{width:100%;max-width:420px}.auth-card .logo{color:var(--text);justify-content:center;font-size:1.3rem;margin-bottom:4px}.auth-card .logo-ball{background:var(--brand-2);color:#fff}.role-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.role-pick button{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:10px 6px;font:inherit;font-weight:650;cursor:pointer;color:var(--text);font-size:.85rem}.role-pick button .ico{display:block;font-size:1.4rem}.role-pick button.active{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--brand)}.demo-users button{justify-content:flex-start}.blocked{max-width:520px;margin:40px auto;text-align:center}.blocked .big{font-size:3rem}.fut-card{width:220px;aspect-ratio:3 / 4.2;border-radius:18px;padding:16px;color:#2b1d00;position:relative;overflow:hidden;background:linear-gradient(155deg,#fde68a,#f5c518 40%,#b88a00);box-shadow:0 10px 30px #00000040;display:flex;flex-direction:column}.fut-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%)}.fut-card .rt{font-size:2.6rem;font-weight:900;line-height:1}.fut-card .pos{font-weight:800;font-size:.8rem;letter-spacing:.08em}.fut-card .avatar{width:84px;height:84px;border-radius:50%;background:#ffffff73;display:grid;place-items:center;font-size:2rem;font-weight:900;margin:4px auto 6px}.fut-card .nm{text-align:center;font-weight:900;text-transform:uppercase;font-size:.95rem;border-bottom:1px solid rgba(0,0,0,.2);padding-bottom:6px;margin-bottom:6px}.fut-card .sts{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;font-size:.8rem;font-weight:700}.fut-card .sts b{font-weight:900}.fut-card.silver{background:linear-gradient(155deg,#f1f5f9,#cbd5e1 45%,#94a3b8)}.fut-card.bronze{background:linear-gradient(155deg,#fed7aa,#d97706,#92400e)}.scoreboard{background:var(--brand-2);color:#fff;border-radius:var(--radius);padding:16px}.scoreboard .match .score{font-size:clamp(1.7rem,8vw,2.6rem);color:#fff;min-width:0;padding:0 6px}.scoreboard .team{color:#fff;flex-direction:column;text-align:center;justify-content:center}.scoreboard .team.away{flex-direction:column-reverse;justify-content:center;text-align:center}.ev-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.ev-btns .btn{padding:6px;min-height:36px;font-size:.8rem}.player-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.player-row:last-child{border-bottom:0}.player-row .nbr{width:30px;height:30px;border-radius:8px;background:var(--surface-2);display:grid;place-items:center;font-weight:800;font-size:.85rem;flex:none}.timeline>div{display:flex;gap:10px;align-items:center;padding:6px 0;font-size:.9rem}.timeline .min{width:34px;color:var(--muted);font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.yc,.rc{display:inline-block;width:11px;height:15px;border-radius:2px;background:#facc15;vertical-align:-2px}.rc{background:#dc2626}.qr-box{background:#fff;padding:12px;border-radius:12px;display:inline-block}.callout{border-radius:12px;padding:12px 14px;background:color-mix(in srgb,var(--accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}.callout.danger{background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.demo-bar{background:var(--accent);color:#1a1a1a;text-align:center;font-size:.8rem;font-weight:700;padding:4px 8px}.demo-bar button{background:none;border:0;text-decoration:underline;font:inherit;cursor:pointer;color:inherit}
