:root{
  --bg:#0B0F17; --card:#141A26; --card2:#1B2332; --line:#222C3D;
  --txt:#E7ECF3; --dim:#8A95A8; --accent:#4ADE80; --accent2:#38BDF8;
  --warn:#F59E0B; --bad:#EF4444; --r:14px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0}
body{
  background:var(--bg); color:var(--txt);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  font-size:16px; line-height:1.45; padding-bottom:78px;
}
a{color:inherit;text-decoration:none}
.wrap{max-width:560px;margin:0 auto;padding:16px}

.topbar{
  position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;background:rgba(11,15,23,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)
}
.brand{font-weight:800;letter-spacing:3px;font-size:15px}
.link{background:none;border:none;color:var(--dim);font-size:13px;cursor:pointer}

.tabbar{
  position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;
  background:rgba(11,15,23,.95);backdrop-filter:blur(10px);border-top:1px solid var(--line);
  padding:10px 0 calc(10px + env(safe-area-inset-bottom))
}
.tabbar a{color:var(--dim);font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 18px}

h1{font-size:24px;margin:8px 0 2px;letter-spacing:.3px}
h2{font-size:13px;text-transform:uppercase;letter-spacing:1.6px;color:var(--dim);margin:24px 0 10px;font-weight:700}
.muted{color:var(--dim)}
.small{font-size:13px}
.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:12px}
.row{display:flex;align-items:center;gap:12px}
.between{justify-content:space-between}
.grow{flex:1;min-width:0}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px}
.dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
.tag{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:1px}

.btn{display:block;width:100%;text-align:center;background:var(--accent);color:#062012;font-weight:800;
  border:none;border-radius:12px;padding:15px;font-size:16px;cursor:pointer;letter-spacing:.4px}
.btn.sec{background:transparent;color:var(--txt);border:1px solid var(--line)}
.btn.ghost{background:var(--card2);color:var(--txt)}
.btn:active{transform:translateY(1px)}

input,select,textarea{
  width:100%;background:var(--card2);border:1px solid var(--line);color:var(--txt);
  border-radius:10px;padding:13px;font-size:16px;font-family:inherit;outline:none
}
input:focus,select:focus,textarea:focus{border-color:var(--accent2)}
label{display:block;font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:1px;margin:14px 0 6px}
.field{margin-bottom:4px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}

.big{font-size:34px;font-weight:800;letter-spacing:.5px;line-height:1}
.stat{flex:1}.stat .big{font-size:28px}
.divider{height:1px;background:var(--line);margin:14px 0}

.bar{height:8px;border-radius:6px;background:var(--card2);overflow:hidden}
.bar>span{display:block;height:100%}

.alert{border-left:3px solid var(--bad);padding-left:12px}
.center{text-align:center}
.empty{text-align:center;color:var(--dim);padding:48px 16px}
.tline{display:flex;gap:6px;flex-wrap:wrap}
.chip{background:var(--card2);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13px}
.up{color:var(--accent)} .down{color:var(--bad)} .flat{color:var(--dim)}
.injury{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);color:#FCA5A5;
  border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:12px}
.setline{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:8px;align-items:center;margin-bottom:8px}
.done{color:var(--accent);font-weight:700}
.sug{background:rgba(56,189,248,.10);border:1px solid rgba(56,189,248,.3);color:#BAE6FD;
  border-radius:10px;padding:10px 12px;font-size:13px;margin:8px 0}
