/* UBA2 unified design system — shared by Replays, full statistics, GM, trades,
   draft, notifications, rundowns and commissioner tools.
   Presentation only: does not alter imports, database, draft or team-code logic. */
:root {
  --bg:#030b24;--panel:#07163c;--panel2:#0c245a;--p2:#0c245a;
  --line:#167ae7;--shine:#53d6ff;--accent:#53d6ff;
  --yellow:#ffe052;--gold:#ffe052;--red:#ff4762;
  --text:#eaf6ff;--ink:#eaf6ff;--muted:#abc8ec;--shade:#0a2355;
}
html {scroll-behavior:smooth}
body.uba2-page,body.uba2-admin {
  color:#eaf6ff;
  background:radial-gradient(ellipse at top right,#2d1863 0,transparent 48%),linear-gradient(#080e36,#030916 68%);
  font:14px/1.46 Consolas,'Courier New',monospace;
  min-height:100vh;margin:0;
}
body.uba2-page::before,body.uba2-admin::before {
  content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.065;
  background:repeating-linear-gradient(0deg,#263f78 0,#263f78 2px,transparent 3px,transparent 5px);
}
body.uba2-page button,body.uba2-page input,body.uba2-page select,body.uba2-page textarea,
body.uba2-admin button,body.uba2-admin input,body.uba2-admin select,body.uba2-admin textarea {
  font-family:Consolas,'Courier New',monospace;
}
body.uba2-page .shell, body.uba2-page .wrap,body.uba2-admin .shell {
  width:100%;max-width:1650px;margin:0 auto;padding:12px 18px 45px;
}
/* Exactly the same persistent header and primary navigation on every page */
body.uba2-page .masthead,body.uba2-admin .masthead {
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  min-height:134px;padding:12px 22px;
  background:radial-gradient(circle at 80% 20%,#77346655 0 45px,transparent 46px),repeating-linear-gradient(90deg,#1b144f 0 80px,#131243 82px 91px);
  border:0;border-bottom:3px solid #2467b0;border-radius:0;
  box-shadow:none;
}
body.uba2-page .wordmark,body.uba2-admin .wordmark {display:flex;gap:19px;align-items:center;min-width:0}
body.uba2-page .logo,body.uba2-admin .logo {width:83px;height:110px;flex-shrink:0;object-fit:contain;filter:drop-shadow(4px 5px #020716)}
body.uba2-page .masthead h1,body.uba2-admin .masthead h1 {
  font:900 clamp(31px,4.3vw,66px)/.95 Impact,'Arial Black',sans-serif;
  letter-spacing:.055em;margin:0;color:#ffe052;text-shadow:3px 3px 0 #e53657,6px 6px 0 #05092a;
}
body.uba2-page .masthead h1 span,body.uba2-admin .masthead h1 span {color:#fff}
body.uba2-page .micro,body.uba2-admin .micro {
  color:#8edfff;font:11px/1.45 Consolas,'Courier New',monospace;
  letter-spacing:.08em;margin-top:8px;
}
body.uba2-page .live-tag,body.uba2-admin .live-tag {
  display:grid;gap:3px;text-align:left;background:#05102e;border:2px solid #2474be;
  border-radius:0;padding:12px;color:#cbf0ff;font-size:12px;max-width:290px;
}
.scope-kicker {font-weight:900;color:#ffe052}.scope-detail{color:#93d9ff;font-size:10px;letter-spacing:.08em}
body.uba2-page .navbar,body.uba2-admin .navbar {
  display:flex;align-items:stretch;gap:7px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;
  background:#040e29;border:2px solid #1676d8;border-radius:0;padding:8px;margin:0 0 13px;
  scrollbar-color:#2679cc #071733;
}
body.uba2-page .navbar .navbtn,body.uba2-admin .navbar .navbtn {
  display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;flex:0 0 auto;
  color:#e5f8ff;background:#0c245a;border:2px solid #3476ce;border-radius:0;
  font:900 12px/1.25 Consolas,'Courier New',monospace;
  letter-spacing:.025em;padding:11px 14px;text-decoration:none;text-transform:uppercase;
  cursor:pointer;box-shadow:none;min-width:auto;
}
body.uba2-page .navbar .navbtn.active,body.uba2-admin .navbar .navbtn.active {
  background:#e72f4b;border-color:#ffbe61;color:#fff;
  box-shadow:inset 0 2px 0 #ffab7d,2px 2px 0 #020716;
}
body.uba2-page .navbar .navbtn:hover,body.uba2-admin .navbar .navbtn:hover{filter:brightness(1.24)}
body.uba2-page .navbar [hidden],body.uba2-admin .navbar [hidden]{display:none!important}
/* Stats tabs are a SECONDARY layer, retaining the original in-page JS tab behaviour. */
body.uba2-league .subnav-caption {
  font:900 11px Consolas,'Courier New',monospace;letter-spacing:.1em;color:#ffe26b;margin:14px 0 7px;
}
body.uba2-league nav.section-tabs {
  display:flex;gap:7px;flex-wrap:wrap;overflow:auto;padding:8px;
  border:1px solid #285da3;border-radius:0;background:#071637;
  margin:0 0 17px;
}
body.uba2-league nav.section-tabs button {
  color:#eaf6ff;background:#102a60;border:2px solid #367bd1;border-radius:0;
  font:900 12px/1.2 Consolas,'Courier New',monospace;padding:10px 13px;
  cursor:pointer;letter-spacing:.02em;text-transform:uppercase;
}
body.uba2-league nav.section-tabs button.active{background:#e72f4b;border-color:#ffbe61;color:#fff;box-shadow:none}
body.uba2-league .uba2-sync-bar{
  margin:0 0 10px;background:#081a3f;border:1px solid #2474be;color:#d9f6ff;border-radius:0;
  font:800 11px/1.4 Consolas,'Courier New',monospace;
}
/* Stats archive internal components: keep charts, tables, team views & basketball arcade */
body.uba2-league .hero,body.uba2-league .card,body.uba2-league .game,
body.uba2-league details,body.uba2-league .tablewrap {
  background:#091b43;border:2px solid #236ac7;border-radius:0;box-shadow:3px 4px 0 #020819;
}
body.uba2-league .hero {
  background:linear-gradient(125deg,#10255c,#160e41);
  border-top:3px solid #438fff;
}
body.uba2-league .hero h1,body.uba2-league .sectionhead h2,
body.uba2-league .card h2,body.uba2-league .card h3{color:#ffe052;letter-spacing:.025em}
body.uba2-league .metric {color:#ffe052;font-family:Impact,'Arial Black',sans-serif;letter-spacing:.03em}
body.uba2-league .game:hover,body.uba2-league tr:hover td{background:#13316c}
body.uba2-league .tag {background:#163a73;color:#b8e7ff;border:1px solid #316db6;border-radius:0}
body.uba2-league .primary,body.uba2-league .secondary,
body.uba2-league button[data-page],body.uba2-league .navbtn {
  border-radius:0;font-weight:900;
}
body.uba2-league .primary{background:#eeb638;color:#04112a;border:2px solid #ffe67a}
body.uba2-league .secondary{background:#0f398a;color:#eaf6ff;border:2px solid #337ad1}
body.uba2-league input,body.uba2-league select {
  color:#f3f9ff;background:#07183c;border:2px solid #2a69b8;border-radius:0;
}
body.uba2-league table th{background:#0b326f;color:#ffdf61}
body.uba2-league table td{border-color:#1f4381}
body.uba2-league .muted,body.uba2-league .sub,body.uba2-league .tiny{color:#b3cdec}
/* Trade desk, trade block, live draft, notifications, rundown */
body.uba2-page .wrap .panel {
  background:linear-gradient(#0c2050,#081537);border:2px solid #167ae7;border-radius:0;
  box-shadow:3px 4px 0 #010515;padding:14px;margin:13px 0;
}
body.uba2-page .wrap .panel >h2 {
  color:#ffe052;background:#071439;border-bottom:2px solid #1c74e3;
  font:900 17px/1.3 Consolas,'Courier New',monospace;letter-spacing:.055em;
  margin:-14px -14px 14px;padding:11px 14px;
}
body.uba2-page .wrap .btn,body.uba2-page .wrap button.btn {
  background:#0d3a99;border:2px solid #4188ed;border-radius:0;color:#fff;
  font:900 12px Consolas,'Courier New',monospace;padding:10px;
  box-shadow:none;
}
body.uba2-page .wrap .btn.gold {background:#efb62e;border-color:#ffe483;color:#09152c}
body.uba2-page .wrap .btn.hot {background:#e72f4b;border-color:#ffbe61}
body.uba2-page .wrap .formrow input,body.uba2-page .wrap .formrow select,
body.uba2-page .wrap .formrow textarea {
  color:#fff;background:#061334;border:2px solid #2e6cb5;border-radius:0;
}
body.uba2-page .wrap .status {border-left:4px solid #f3c34c;background:#112b55}
body.uba2-page .wrap .table th {background:#0b326f;color:#ffdf61}
body.uba2-page .wrap .table td {border-color:#285494}
body.uba2-page .wrap code{color:#8fdcff}
/* The GM page already uses the right shared palette; tighten spacing consistency. */
body.uba2-gm .notice {margin-top:0}
body.uba2-gm .gm-metric,body.uba2-gm .gm-profile {border-color:#2477d2}
/* Commissioner settings are administrative forms, but should look like the same site. */
body.uba2-admin .admin-shell {max-width:1650px;padding:12px 18px 45px}
body.uba2-admin .admin-page-heading{background:#091b43;border:2px solid #1d70cb;margin-bottom:12px;padding:14px}
body.uba2-admin .admin-page-heading h2{font:900 23px Impact,'Arial Black',sans-serif;color:#ffe052;letter-spacing:.08em;margin:0}
body.uba2-admin .admin-page-heading p{margin:3px 0 0}
body.uba2-admin .card {background:#0b1e49;border:2px solid #2474cf;border-radius:0;box-shadow:3px 4px 0 #010515;padding:17px;margin:15px 0}
body.uba2-admin .card h2{color:#ffe052;font-size:18px}
body.uba2-admin button{background:#0d3a99;border:2px solid #4188ed;border-radius:0;color:#fff}
body.uba2-admin input{color:#fff;background:#061334;border:2px solid #2e6cb5;border-radius:0}
body.uba2-admin p{color:#c0d6f6}
body.uba2-admin th{color:#ffe052}
@media(max-width:960px){
  body.uba2-page .masthead,body.uba2-admin .masthead{min-height:104px;padding:12px}
  body.uba2-page .logo,body.uba2-admin .logo{width:65px;height:85px}
  body.uba2-page .masthead h1,body.uba2-admin .masthead h1{font-size:clamp(27px,5vw,44px)}
  body.uba2-page .live-tag,body.uba2-admin .live-tag{display:none}
}
@media(max-width:620px){
  body.uba2-page .shell,body.uba2-page .wrap,body.uba2-admin .shell{padding:8px 8px 30px}
  body.uba2-page .masthead,body.uba2-admin .masthead{gap:8px}
  body.uba2-page .wordmark,body.uba2-admin .wordmark{gap:9px}
  body.uba2-page .masthead h1,body.uba2-admin .masthead h1{font-size:29px}
  body.uba2-page .micro,body.uba2-admin .micro{font-size:9px}
  body.uba2-page .navbar,body.uba2-admin .navbar{padding:6px;gap:5px}
  body.uba2-page .navbar .navbtn,body.uba2-admin .navbar .navbtn{padding:9px 10px;font-size:11px}
  body.uba2-league nav.section-tabs button{font-size:11px;padding:8px 10px}
}
