:root{
  --bg:#06140d;
  --bg-2:#092319;
  --panel:#0d261b;
  --panel-2:#123322;
  --card:#102c20;
  --card-soft:rgba(16,44,32,.82);
  --text:#f4fff8;
  --muted:#a8c7b7;
  --line:rgba(218,255,231,.12);
  --line-strong:rgba(218,255,231,.22);
  --accent:#7CFF6B;
  --accent-2:#13c96b;
  --accent-3:#e8ff5f;
  --pitch:#0b6b3a;
  --pitch-2:#084a2b;
  --white:#f7fff8;
  --danger:#ff5f73;
  --warning:#ffd166;
  --info:#66c7ff;
  --shadow:0 22px 70px rgba(0,0,0,.34);
  --radius:24px;
}
*{box-sizing:border-box}
html{min-width:0;scroll-behavior:smooth}
body{
  margin:0;
  min-width:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 18% 0%,rgba(124,255,107,.22),transparent 28rem),
    radial-gradient(circle at 82% 8%,rgba(19,201,107,.16),transparent 28rem),
    linear-gradient(135deg,var(--bg),var(--bg-2) 48%,#03100a);
  background-attachment:fixed;
}
body:before{
  content:"";
  position:fixed;inset:0;z-index:-1;opacity:.18;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 49.6%,rgba(255,255,255,.28) 49.7% 50.3%,transparent 50.4%),
    repeating-linear-gradient(90deg,rgba(124,255,107,.16) 0 110px,rgba(255,255,255,.02) 110px 220px),
    radial-gradient(circle at center,transparent 0 110px,rgba(255,255,255,.3) 111px 112px,transparent 113px);
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{appearance:none}
img,svg,video{max-width:100%;height:auto}
code{color:var(--accent-3);word-break:break-word}
.shell{display:grid;grid-template-columns:292px minmax(0,1fr);min-height:100vh;min-width:0}
.sidebar{
  position:sticky;top:0;height:100vh;z-index:20;
  display:flex;flex-direction:column;gap:18px;
  padding:22px;
  background:linear-gradient(180deg,rgba(5,26,16,.94),rgba(4,18,12,.9));
  border-right:1px solid var(--line);
  box-shadow:10px 0 40px rgba(0,0,0,.18);
  backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-mark{
  width:48px;height:48px;flex:0 0 48px;border-radius:18px;display:grid;place-items:center;
  color:#062111;background:radial-gradient(circle at 35% 28%,#fff 0 18%,transparent 19%),linear-gradient(135deg,var(--accent),#d9ff7a 72%,#fff);
  box-shadow:0 16px 40px rgba(124,255,107,.22),inset 0 0 0 1px rgba(255,255,255,.42);
  font-weight:900;font-size:22px;
}
.brand-title{font-weight:900;letter-spacing:-.03em;line-height:1.05}
.brand-subtitle{margin-top:4px;color:var(--muted);font-size:12.5px;line-height:1.25}
.nav{display:grid;gap:7px;overflow:auto;padding:4px 2px 8px;margin:4px -2px 0;scrollbar-width:thin;scrollbar-color:rgba(124,255,107,.38) transparent}
.nav-link{
  position:relative;display:flex;align-items:center;gap:10px;
  padding:12px 13px;border-radius:16px;
  color:var(--muted);border:1px solid transparent;
  background:transparent;font-weight:760;line-height:1.2;min-height:44px;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
.nav-link:before{content:"";width:8px;height:8px;border-radius:50%;background:rgba(168,199,183,.35);box-shadow:0 0 0 3px rgba(255,255,255,.02)}
.nav-link:hover{color:var(--text);background:rgba(255,255,255,.055);border-color:var(--line);transform:translateX(2px)}
.nav-link.active{color:#062111;background:linear-gradient(135deg,var(--accent),#dfff63);border-color:rgba(255,255,255,.18);box-shadow:0 14px 28px rgba(124,255,107,.16)}
.nav-link.active:before{background:#062111;box-shadow:0 0 0 3px rgba(6,33,17,.18)}
.sidebar-footer{margin-top:auto;display:grid;gap:12px;min-width:0}.user-card{display:grid;gap:4px;padding:14px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid var(--line);min-width:0}.user-card b,.user-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card span,.user-card small{color:var(--muted);font-size:13px}.user-card small{text-transform:uppercase;letter-spacing:.08em}.logout{display:inline-flex;justify-content:center;padding:11px 14px;border:1px solid var(--line);border-radius:14px;color:var(--muted);font-weight:750}.logout:hover{color:var(--text);background:rgba(255,255,255,.055)}
.main{min-width:0;padding:30px;max-width:1540px;width:100%;margin:0 auto}.topbar,.page-header,.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;min-width:0}.topbar h1,.page-header h1,.page-head h1,h1{margin:0;font-size:clamp(27px,3.6vw,46px);letter-spacing:-.045em;line-height:.98}.topbar p,.page-header p,.page-head p,p{color:var(--muted);margin:8px 0 0;line-height:1.55}h2,h3{margin:0 0 14px;letter-spacing:-.025em;line-height:1.12}h2{font-size:clamp(20px,2vw,27px)}h3{font-size:19px}.muted{color:var(--muted)!important}.badge,.pill,.result,.status,.chip{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;padding:7px 11px;border-radius:999px;font-weight:850;font-size:12.5px;line-height:1.1;border:1px solid var(--line)}.badge,.league-badge{color:var(--accent);background:rgba(124,255,107,.1);border-color:rgba(124,255,107,.32)}.badge.good,.pill.low,.result.won,.status.active,.status.finished{color:var(--accent);background:rgba(124,255,107,.11);border-color:rgba(124,255,107,.28)}.badge.warn,.pill.medium,.status.scheduled{color:var(--warning);background:rgba(255,209,102,.11);border-color:rgba(255,209,102,.25)}.badge.bad,.pill.high,.result.lost,.alert.danger,.alert.error{color:var(--danger);background:rgba(255,95,115,.1);border-color:rgba(255,95,115,.26)}.result.void{color:var(--info);background:rgba(102,199,255,.1);border-color:rgba(102,199,255,.25)}
.grid{display:grid;gap:18px;min-width:0}.two,.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-grid,.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.match-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.detail-grid,.admin-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:18px;margin-bottom:18px}.card,.stat-card,.metric,.stat{
  position:relative;overflow:hidden;min-width:0;
  background:linear-gradient(180deg,rgba(20,61,39,.9),rgba(12,38,27,.92));
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:20px;
  box-shadow:var(--shadow);
}
.card:before,.stat-card:before,.metric:before,.stat:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2),transparent);opacity:.78}.stat,.stat-card,.metric{min-height:118px;display:flex;flex-direction:column;justify-content:space-between}.stat span,.stat-label,.metric-label,.metric .label,.label{color:var(--muted);font-size:13px;text-transform:none}.stat b,.stat-value,.metric-value,.metric .value,.value{font-size:clamp(28px,3vw,40px);font-weight:950;letter-spacing:-.05em;line-height:1.05}.stat.accent{border-color:rgba(124,255,107,.35);background:linear-gradient(180deg,rgba(124,255,107,.18),rgba(12,38,27,.92))}.section-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px}.actions,.header-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.actions form,.header-actions form{display:inline-flex;margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid var(--line-strong);color:var(--text);background:rgba(255,255,255,.065);border-radius:15px;padding:11px 15px;cursor:pointer;font-weight:850;line-height:1.1;transition:transform .18s ease,background .18s ease,border-color .18s ease}.button:hover{transform:translateY(-1px);background:rgba(255,255,255,.1);border-color:rgba(124,255,107,.34)}.button.primary{color:#062111;border-color:transparent;background:linear-gradient(135deg,var(--accent),#e8ff5f);box-shadow:0 14px 30px rgba(124,255,107,.16)}
.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:18px}.table-wrap::-webkit-scrollbar{height:9px}.table-wrap::-webkit-scrollbar-thumb{background:rgba(124,255,107,.28);border-radius:999px}table{width:100%;border-collapse:separate;border-spacing:0;min-width:860px}table.table{min-width:860px}th{text-align:left;color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;padding:13px 12px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.035)}td{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:middle;color:#edfef3}tbody tr{transition:background .15s ease}tbody tr:hover{background:rgba(124,255,107,.045)}td span,td small{color:var(--muted);font-size:13px}.small-input{min-width:110px}.pos{color:var(--accent)!important}.neg{color:var(--danger)!important}.notice,.alert,.copy-box{margin:14px 0;padding:15px 18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.055);color:var(--muted);overflow-wrap:anywhere}.alert.success{color:var(--accent);border-color:rgba(124,255,107,.35);background:rgba(124,255,107,.1)}.empty{color:var(--muted);text-align:center;padding:30px}.filters,.form-grid{display:grid;grid-template-columns:1fr 220px 180px auto;gap:12px;align-items:end}.form-grid{grid-template-columns:180px minmax(0,1fr);align-items:center}.bankroll-form,.settings-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.form{margin-top:20px;display:grid;gap:12px}.form label,.form-grid label,.bankroll-form label,.settings-form label{color:var(--muted);font-size:13px;font-weight:750}input,select,textarea{width:100%;min-width:0;color:var(--text);background:rgba(255,255,255,.065);border:1px solid var(--line);border-radius:14px;padding:12px 14px;outline:none}input:focus,select:focus,textarea:focus{border-color:rgba(124,255,107,.55);box-shadow:0 0 0 4px rgba(124,255,107,.08)}select{color:var(--text)}option{background:#0d261b;color:#f4fff8}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{color:var(--accent);background:rgba(124,255,107,.09);border-color:rgba(124,255,107,.24)}.match-card{display:grid;gap:12px}.match-top{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}.score{font-size:34px;font-weight:950;letter-spacing:-.04em}.mini-stats{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted)}.hero-card h2{font-size:clamp(28px,4vw,48px);margin-top:12px}.prediction-main{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}.prediction-main div,.metric-row,.odds-list div{background:rgba(255,255,255,.055);border:1px solid var(--line);border-radius:16px;padding:14px}.prediction-main span,.metric-row span,.odds-list span{color:var(--muted);font-size:13px;display:block;margin-bottom:6px}.prediction-main b{font-size:24px}.metric-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.metric-row span{margin:0}.factors{margin:0;padding-left:18px;display:grid;gap:10px;color:#e9fff0}.odds-list{display:grid;gap:8px}.odds-list div{display:flex;justify-content:space-between}.source-list{display:grid;gap:10px}.source-list div{display:grid;gap:4px;padding:12px;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid var(--line)}.source-list span,.source-list small{color:var(--muted)}.source-list em{color:var(--danger);font-style:normal}.login-body{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(480px,100%);border:1px solid var(--line);border-radius:30px;padding:28px;background:linear-gradient(180deg,rgba(20,61,39,.94),rgba(8,30,20,.94));box-shadow:var(--shadow)}.login-brand{margin-bottom:24px}.login-card h1{font-size:32px;margin-bottom:8px}.hint{margin-top:16px;color:var(--muted);font-size:13px}.header-actions .button,.actions .button{white-space:nowrap}
@media(max-width:1250px){.shell{grid-template-columns:258px minmax(0,1fr)}.main{padding:24px}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.match-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prediction-main{grid-template-columns:repeat(2,minmax(0,1fr))}.bankroll-form,.settings-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.shell{display:block}.sidebar{position:sticky;top:0;height:auto;min-height:0;padding:12px 14px;gap:10px;border-right:0;border-bottom:1px solid var(--line);background:rgba(5,26,16,.96)}.brand-mark{width:40px;height:40px;flex-basis:40px;border-radius:14px}.brand-title{font-size:15px}.brand-subtitle{font-size:11px}.nav{display:flex;gap:8px;margin:2px -14px 0;padding:8px 14px;overflow-x:auto;scroll-snap-type:x proximity}.nav-link{flex:0 0 auto;min-height:38px;padding:10px 12px;border-radius:999px;font-size:13px;scroll-snap-align:start}.nav-link:before{display:none}.nav-link:hover{transform:none}.sidebar-footer{display:none}.main{padding:18px 14px 80px}.topbar,.page-header,.page-head{align-items:stretch;flex-direction:column;margin-bottom:16px}.topbar h1,.page-header h1,.page-head h1,h1{font-size:clamp(25px,8vw,36px)}.detail-grid,.admin-grid,.two,.two-col{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.section-head{align-items:stretch;flex-direction:column}.actions,.header-actions{width:100%}.actions .button,.header-actions .button,.actions form,.header-actions form{flex:1 1 190px}.button{width:100%}}
@media(max-width:720px){body{background-attachment:scroll}.main{padding:14px 10px 72px}.card,.stat-card,.metric,.stat,.login-card{border-radius:20px;padding:15px}.stats-grid,.cards-grid,.match-grid,.prediction-main,.filters,.form-grid,.bankroll-form,.settings-form{grid-template-columns:1fr}.stat,.stat-card,.metric{min-height:96px}.stat b,.stat-value,.metric-value,.metric .value,.value{font-size:30px}.badge,.pill,.result,.status,.chip{font-size:12px;padding:6px 9px}table{min-width:760px}th,td{padding:11px 10px}.table-wrap{margin-left:-2px;margin-right:-2px;border:1px solid var(--line);background:rgba(255,255,255,.02)}.table-wrap:after{content:"← прокрутите таблицу →";display:block;padding:8px 10px;color:var(--muted);font-size:12px;text-align:center}.form-grid label{margin-top:4px}.topbar p,.page-header p,.page-head p,p{font-size:14px}.brand{max-width:100%}}
@media(max-width:430px){.main{padding-left:8px;padding-right:8px}.sidebar{padding-left:10px;padding-right:10px}.nav{margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px}.card,.stat-card,.metric,.stat{padding:13px}.login-card{padding:20px}.actions .button,.header-actions .button,.actions form,.header-actions form{flex-basis:100%}.prediction-main b{font-size:20px}.score{font-size:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
