:root{
  --bg:#0B0C10; --card:#14161F; --card2:#1A1D29; --text:#ECEAE3; --dim:#8B8FA3;
  --signal:#3D63FF; --signal2:#5B7BFF; --amber:#E8B23C; --red:#E05252; --mint:#4CC38A;
  --radius:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--text);font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;min-height:100svh}
a{color:var(--signal2);text-decoration:none}
.wrap{max-width:720px;margin:0 auto;padding:18px 16px 90px}
header.top{display:flex;align-items:center;justify-content:space-between;padding:6px 2px 16px}
header.top .brand{font-weight:800;letter-spacing:.06em;font-size:14px;color:var(--dim)}
header.top .brand b{color:var(--text)}
h1{font-size:clamp(26px,6.5vw,38px);line-height:1.12;letter-spacing:-.01em;margin:6px 0 10px}
h2{font-size:20px;margin:26px 0 10px}
h3{font-size:16px;margin:18px 0 8px}
p.lead{color:var(--dim);margin-bottom:18px}
.card{background:var(--card);border:1px solid #232636;border-radius:var(--radius);padding:16px;margin:10px 0}
.grid{display:grid;gap:10px}
@media(min-width:560px){.grid.two{grid-template-columns:1fr 1fr}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--signal);color:#fff;font-weight:700;
  border:none;border-radius:12px;padding:14px 18px;font-size:16px;cursor:pointer;width:100%;text-align:center}
.btn:active{transform:scale(.985)}
.btn.ghost{background:var(--card2);color:var(--text);border:1px solid #2A2E40}
.btn.small{width:auto;padding:9px 14px;font-size:14px;border-radius:10px}
.tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);
  background:var(--card2);border:1px solid #262A3B;border-radius:999px;padding:3px 10px}
.tag.red{color:#FF9B9B;border-color:#4A2430}
.tag.mint{color:#8FE3BC;border-color:#1F4032}
.tag.amber{color:#F2CE85;border-color:#4A3B1D}
.bar{height:8px;background:#232636;border-radius:99px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--signal);border-radius:99px}
.bar.red i{background:var(--red)}
.bar.mint i{background:var(--mint)}
.dim{color:var(--dim)}
.small{font-size:13px}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}
.num{color:var(--amber);font-weight:700}
nav.bottom{position:fixed;left:0;right:0;bottom:0;background:rgba(11,12,16,.92);backdrop-filter:blur(14px);
  border-top:1px solid #20232F;display:flex;justify-content:space-around;padding:8px 4px calc(8px + env(safe-area-inset-bottom))}
nav.bottom a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10.5px;font-weight:700;letter-spacing:.04em;color:var(--dim);min-width:56px}
nav.bottom a.on{color:var(--signal2)}
nav.bottom a span.ic{font-size:19px;line-height:1}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{text-align:left;padding:8px 8px;border-bottom:1px solid #232636;vertical-align:top}
th{color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.07em}
ul.clean{list-style:none}
ul.clean li{padding:7px 0;border-bottom:1px solid #1D2030}
ul.clean li:last-child{border-bottom:none}
.blank{display:inline-block;min-width:90px;border-bottom:2px solid #3A3F55;margin:0 3px}
@media print{
  body{background:#fff;color:#111}
  .card{border:1px solid #ccc;background:#fff}
  nav.bottom,header.top,.noprint{display:none!important}
  .sheet{page-break-after:always}
  .blank{border-bottom:2px solid #333}
  a{color:#111}
}
