:root{
  --bg:#050814;
  --panel:rgba(15,23,42,.82);
  --line:rgb(30 41 59);
  --line-2:rgb(51 65 85);
  --muted:#94a3b8;
  --text:#f1f5f9;
  --violet:#8b5cf6;
  --green:#22c55e;
}
html{color-scheme:dark;scroll-behavior:smooth}
body{font-family:Manrope,ui-sans-serif,system-ui,sans-serif;overflow-x:clip;color:var(--text)}
h1{font-size:clamp(1.7rem,4.2vw,2.55rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}
h2{font-size:1.2rem;font-weight:800;letter-spacing:-.02em}
h3{font-size:1.02rem;font-weight:800}
button,a.btn-primary,a.btn-secondary,a.btn-small,a.btn-small-secondary{min-height:44px}
img{max-width:100%}

.navlink{border:1px solid var(--line);border-radius:.9rem;padding:.55rem .85rem;background:rgba(15,23,42,.65)}
.navlink:hover{background:rgba(51,65,85,.8)}
.btn-primary,.btn-secondary,.btn-small,.btn-small-secondary{
  display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  border-radius:1rem;font-weight:800;color:white;text-align:center;white-space:nowrap
}
.btn-primary{background:linear-gradient(135deg,#7c3aed,#2563eb);padding:.8rem 1.05rem}
.btn-secondary{border:1px solid var(--line-2);background:rgba(15,23,42,.8);padding:.75rem 1rem}
.btn-small{background:#7c3aed;padding:.5rem .8rem;border-radius:.8rem;min-height:38px}
.btn-small-secondary{border:1px solid var(--line-2);background:rgba(15,23,42,.8);padding:.5rem .8rem;border-radius:.8rem;min-height:38px}
.btn-primary:hover,.btn-small:hover{filter:brightness(1.08)}
.btn-secondary:hover,.btn-small-secondary:hover{border-color:#8b5cf6}

.panel,.match-card{border:1px solid var(--line);background:var(--panel);border-radius:1.5rem;padding:1.15rem;box-shadow:0 20px 70px rgba(0,0,0,.25)}
.premium-card{background:linear-gradient(145deg,rgba(15,23,42,.94),rgba(15,23,42,.7));position:relative;overflow:hidden}
.premium-card:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at top right,rgba(139,92,246,.22),transparent 35%);pointer-events:none}
.premium-card>*{position:relative}

.stat-card{border:1px solid var(--line);border-radius:1.25rem;background:rgba(15,23,42,.75);padding:.9rem 1rem}
.stat-card p{font-size:.78rem;color:var(--muted)}
.stat-card strong{display:block;font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.15;word-break:break-word}
.stat-card span{display:block;color:var(--muted);font-size:.78rem}

.badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--line-2);padding:.25rem .6rem;font-size:.72rem;font-weight:800;background:rgba(15,23,42,.8)}
.badge-live{border-color:rgba(34,197,94,.45);color:#86efac;background:rgba(34,197,94,.12)}
.badge-done{border-color:rgba(148,163,184,.35);color:#cbd5e1}
.badge-lost{border-color:rgba(244,63,94,.4);color:#fda4af;background:rgba(244,63,94,.12)}
.badge-soon{border-color:rgba(139,92,246,.4);color:#c4b5fd;background:rgba(139,92,246,.12)}

.odd-box{border:1px solid var(--line-2);border-radius:1rem;background:rgba(2,6,23,.7);padding:.7rem;min-width:0}
.odd-box span{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.odd-box b{font-size:1.05rem}

.field,select.field,textarea.field{
  width:100%;border:1px solid var(--line-2);border-radius:1rem;background:rgba(2,6,23,.75);
  padding:.75rem .9rem;color:white;font-size:16px;color-scheme:dark
}
.field:focus{outline:2px solid rgba(139,92,246,.45);border-color:#8b5cf6}
.check{display:flex;align-items:center;gap:.5rem;border:1px solid var(--line-2);border-radius:1rem;background:rgba(2,6,23,.5);padding:.7rem;color:#cbd5e1}

.table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0 .45rem}
.table th{color:var(--muted);font-size:.72rem;text-align:left;text-transform:uppercase;letter-spacing:.08em;padding:0 .7rem}
.table td{background:rgba(2,6,23,.55);padding:.7rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top}
.table td:first-child{border-left:1px solid var(--line);border-radius:.8rem 0 0 .8rem}
.table td:last-child{border-right:1px solid var(--line);border-radius:0 .8rem .8rem 0}

.team{display:grid;gap:.45rem;justify-items:center;text-align:center}
.team img{width:72px;height:72px;object-fit:contain;border-radius:999px;background:#0f172a;border:1px solid #334155;padding:6px}
.team h1{font-size:clamp(1.25rem,3.4vw,2.2rem);font-weight:900}
.team span{color:var(--muted)}
@media(min-width:768px){
  .team{justify-items:start;text-align:left}
  .team.md\:text-right,.md\:text-right.team{justify-items:end;text-align:right}
}

.prob-row{display:grid;grid-template-columns:minmax(72px,110px) 1fr;gap:.8rem;align-items:center;margin:.75rem 0}
.bar,.mini-bar{height:8px;border-radius:999px;background:#1e293b;overflow:hidden}
.bar i,.mini-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#8b5cf6)}
.mini-bar{height:5px;margin-top:.4rem}

.ticket-item,.value-line{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid #334155;border-radius:1rem;background:rgba(2,6,23,.62);padding:.75rem;color:inherit;min-width:0}
.ticket-item span,.value-line em{display:block;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
.ticket-item b,.value-line span{min-width:0}
.ticket-item button{flex:none;color:#fda4af;font-size:.78rem;font-weight:700}

.visibility-tile,.stat-chip{border:1px solid rgba(51,65,85,.8);border-radius:1rem;background:rgba(2,6,23,.55);padding:.75rem;min-width:0}
.visibility-tile span,.stat-chip span{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}
.visibility-tile b,.stat-chip b{display:block;margin-top:.15rem;font-weight:900;color:#f8fafc;overflow-wrap:anywhere}
.visibility-tile em,.stat-chip em{display:block;color:#64748b;font-size:.78rem;font-style:normal}

.radar-list{display:grid;gap:.55rem}
.radar-row{display:grid;grid-template-columns:82px 1fr 42px;gap:.55rem;align-items:center;font-size:.82rem;color:#cbd5e1}
.radar-row div{height:8px;border-radius:999px;background:#1e293b;overflow:hidden}
.radar-row i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#22c55e)}
.radar-row b{font-size:.75rem;color:var(--muted)}

.compare-row{display:grid;grid-template-columns:1fr minmax(90px,150px) 1fr;gap:.75rem;align-items:center}
.compare-row>span{text-align:center;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.compare-bar{height:8px;border-radius:999px;background:#1e293b;overflow:hidden}
.compare-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#2563eb);max-width:100%}
.compare-bar.left i{margin-left:auto;background:linear-gradient(90deg,#8b5cf6,#22c55e)}

.poisson-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.4rem}
.poisson-cell{border:1px solid rgba(51,65,85,.8);border-radius:.9rem;background:linear-gradient(135deg,rgba(34,197,94,.35),rgba(139,92,246,.28));padding:.45rem .3rem;text-align:center}
.poisson-cell b{display:block;font-size:.85rem}
.poisson-cell span{font-size:.68rem;color:#cbd5e1}

.selection-btn{
  display:block;width:100%;text-align:left;border:1px solid var(--line-2);border-radius:1rem;
  background:rgba(2,6,23,.72);padding:.75rem .85rem;color:#f8fafc;transition:border-color .12s,transform .12s
}
.selection-btn:hover{border-color:#8b5cf6;transform:translateY(-1px)}

.help{position:relative;display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;flex:none;border-radius:999px;border:1px solid #475569;background:rgba(51,65,85,.65);color:var(--muted);font-size:.6rem;font-weight:800;cursor:help;vertical-align:middle;margin-left:.35rem;line-height:1}
.help .help-tip{visibility:hidden;opacity:0;position:absolute;bottom:135%;left:50%;transform:translateX(-50%);z-index:60;width:min(270px,72vw);border:1px solid #475569;border-radius:.8rem;background:#0f172a;padding:.6rem .75rem;font-size:.73rem;font-weight:400;font-style:normal;color:#e2e8f0;text-align:left;text-transform:none;letter-spacing:0;line-height:1.45;box-shadow:0 12px 34px rgba(0,0,0,.55);transition:opacity .12s ease;pointer-events:none;white-space:normal}
.help:hover .help-tip,.help:focus .help-tip{visibility:visible;opacity:1}
th .help{margin-left:.25rem}
.verdict-hit{border:1px solid rgba(34,197,94,.4);background:rgba(34,197,94,.12);color:#86efac}
.verdict-miss{border:1px solid rgba(244,63,94,.4);background:rgba(244,63,94,.12);color:#fda4af}
.verdict-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.25rem .65rem;font-size:.75rem;font-weight:800}

.sidebar{position:fixed;inset-block:0;left:0;z-index:50;display:flex;flex-direction:column;width:min(18rem,86vw);border-right:1px solid var(--line);background:rgba(9,13,26,.97);backdrop-filter:blur(10px);transform:translateX(-100%);transition:transform .2s ease;padding-top:env(safe-area-inset-top)}
.sidebar.open{transform:translateX(0)}
@media(min-width:1024px){.sidebar{transform:none}}
.sidebar-overlay{position:fixed;inset:0;z-index:40;background:rgba(2,6,23,.6);opacity:0;pointer-events:none;transition:opacity .2s}
.sidebar-overlay.open{opacity:1;pointer-events:auto}
@media(min-width:1024px){.sidebar-overlay{display:none}}
.side-section{margin:1.1rem .6rem .35rem;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#64748b}
.side-link{display:flex;align-items:center;gap:.65rem;border-radius:.85rem;padding:.65rem .8rem;margin:.12rem 0;font-size:.9rem;font-weight:600;color:#cbd5e1;transition:background .12s}
.side-link:hover{background:rgba(51,65,85,.45);color:#fff}
.side-link.active{background:linear-gradient(90deg,rgba(124,58,237,.32),rgba(124,58,237,.08));color:#fff;border:1px solid rgba(139,92,246,.35)}
.side-icon{width:1.4rem;text-align:center;font-size:1rem}

.bracket-wrap{display:flex;gap:1.25rem;overflow-x:auto;padding-bottom:1rem;align-items:stretch;-webkit-overflow-scrolling:touch}
.bracket-round{min-width:min(250px,80vw);flex:1}
.bracket-round>h3{position:sticky;top:0;margin-bottom:.8rem;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#a78bfa;text-align:center}
.bracket-col{display:flex;flex-direction:column;justify-content:space-around;gap:.8rem;height:100%}
.bracket-match{display:block;border:1px solid var(--line-2);border-radius:1rem;background:rgba(15,23,42,.85);padding:.7rem;transition:border-color .12s,transform .12s}
.bracket-match:hover{border-color:#8b5cf6;transform:translateY(-1px)}
.bracket-team{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.22rem 0}
.bracket-team .t{display:flex;align-items:center;gap:.5rem;min-width:0}
.bracket-team img{width:22px;height:22px;object-fit:contain;border-radius:999px;background:#0f172a;border:1px solid #334155;flex:none}
.bracket-team span{font-size:.85rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bracket-team b{font-size:.95rem;font-weight:900}
.bracket-team.winner span{color:#86efac}
.bracket-meta{margin-top:.4rem;border-top:1px solid rgba(51,65,85,.7);padding-top:.4rem;font-size:.7rem;color:var(--muted);display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap}

.censored{display:inline-flex;align-items:center;letter-spacing:.28em;font-weight:800;color:var(--muted);background:rgba(15,23,42,.9);border:1px solid rgba(71,85,105,.7);border-radius:.55rem;padding:.05rem .45rem;user-select:none;filter:blur(3px)}
.guest-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border:1px solid rgba(139,92,246,.35);border-radius:1.25rem;background:linear-gradient(135deg,rgba(124,58,237,.18),rgba(15,23,42,.7));padding:1rem 1.15rem}
.lock-dot{margin-left:auto;font-size:.7rem;opacity:.7}

.club-logo,.comp-logo{object-fit:contain;background:#0f172a;border:1px solid #334155;flex:none}
.club-logo{width:40px;height:40px;border-radius:999px;padding:4px}
.club-logo.sm{width:28px;height:28px;padding:3px}
.comp-logo{width:20px;height:20px;border-radius:.4rem;padding:2px}
.comp-logo.lg{width:36px;height:36px;padding:3px}
.match-teams{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin:.45rem 0 .2rem}
.match-teams.tight{margin:.35rem 0 0;font-size:clamp(1.05rem,3vw,1.35rem);font-weight:900}
.match-team{display:inline-flex;align-items:center;gap:.5rem;min-width:0}
.match-team h3{font-size:clamp(1.05rem,2.6vw,1.25rem);font-weight:900;line-height:1.2}
.match-teams .vs{color:#64748b;font-size:.85rem;font-weight:800;text-transform:uppercase}

.logo-admin-grid{display:grid;gap:.55rem}
.logo-admin-grid.scroll{max-height:28rem;overflow:auto;padding-right:.25rem}
.logo-admin-item{display:grid;grid-template-columns:40px 1fr auto;gap:.75rem;align-items:center;border:1px solid var(--line-2);border-radius:1rem;background:rgba(2,6,23,.55);padding:.55rem .7rem}
.logo-admin-item img{width:36px;height:36px;object-fit:contain;border-radius:.6rem;background:#0f172a;border:1px solid #334155;padding:3px}
.logo-admin-item b{display:block;font-size:.9rem}
.logo-admin-item span{display:block;color:var(--muted);font-size:.72rem}

.bet-suggest{position:absolute;z-index:20;left:0;right:0;top:100%;margin-top:.35rem;border:1px solid var(--line-2);border-radius:1rem;background:#0b1220;max-height:16rem;overflow:auto;box-shadow:0 16px 40px rgba(0,0,0,.45)}
.bet-suggest-item{display:block;width:100%;text-align:left;padding:.7rem .85rem;border-bottom:1px solid rgba(51,65,85,.6)}
.bet-suggest-item:last-child{border-bottom:0}
.bet-suggest-item:hover{background:rgba(124,58,237,.18)}
.bet-suggest-item span{display:block;color:var(--muted);font-size:.75rem}

.page-kicker{font-size:.78rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#c4b5fd}
.hero{border:1px solid var(--line);border-radius:1.6rem;background:linear-gradient(160deg,rgba(15,23,42,.88),rgba(88,28,135,.18));padding:1.25rem;box-shadow:0 24px 80px rgba(0,0,0,.28)}
.filter-bar{display:grid;gap:.75rem;border:1px solid var(--line);border-radius:1.4rem;background:rgba(15,23,42,.7);padding:1rem}
@media(min-width:768px){.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1280px){.filter-bar{grid-template-columns:repeat(4,minmax(0,1fr))}}

@media(min-width:768px){
  .hero{padding:2rem}
  .panel,.match-card{padding:1.35rem}
}
@media(max-width:1023px){
  aside.panel.sticky{position:static}
}
@media(max-width:760px){
  .table{font-size:.8rem}
  .compare-row{grid-template-columns:1fr;gap:.3rem}
  .compare-row>span{order:-1;text-align:left}
  .poisson-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .radar-row{grid-template-columns:72px 1fr 38px}
  .ticket-item,.value-line{flex-wrap:wrap}
  .ticket-item button{margin-left:auto}
  .help .help-tip{left:0;transform:none}
  .logo-admin-item{grid-template-columns:36px 1fr;gap:.5rem}
  .logo-admin-item form{grid-column:1/-1}
  .guest-banner{padding:.9rem}
  .match-card .odd-box span{font-size:.68rem}
}
@media(max-width:480px){
  .btn-primary,.btn-secondary{width:100%}
  .hero .flex{width:100%}
}

@media print{
  .sidebar,.sidebar-overlay,header,.guest-banner,footer{display:none!important}
  .lg\:pl-72{padding:0!important}
}