:root{
  --ink:#171717; --ink-2:#6E6E73; --ink-3:#A1A1A6;
  --bg:#FFFFFF; --bg-2:#F5F5F7; --bg-3:#EBEBEF;
  --line:rgba(23,23,23,.10); --line-2:rgba(23,23,23,.06);
  --violet:#A07AFF; --violet-deep:#6C4BD6; --violet-tint:#F3EFFE;
  --ok:#1E9E5A; --warn:#D48A00; --bad:#D93025;
  --r-ctl:10px; --r-card:14px; --r-pill:100px;
  --font:'Inter',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  --display:'Golos Text','Inter',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45;font-feature-settings:"tnum","cv11"}
a{color:var(--violet-deep);text-decoration:none} a:hover{color:var(--ink)}
.h1{font-size:28px;font-weight:600;letter-spacing:-.022em;line-height:1.15}
.h2{font-size:20px;font-weight:600;letter-spacing:-.018em;line-height:1.2}
.h3{font-size:15px;font-weight:600;letter-spacing:-.01em}
.muted{color:var(--ink-2)} .faint{color:var(--ink-3)}
.s12{font-size:12px} .s13{font-size:13px} .num{font-variant-numeric:tabular-nums}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 16px;border-radius:var(--r-ctl);font-weight:500;font-size:14px;border:1px solid transparent;white-space:nowrap}
.btn.primary{background:var(--ink);color:#fff}
.btn.secondary{background:var(--bg);color:var(--ink);border-color:var(--line)}
.btn.ghost{background:transparent;color:var(--ink-2)}
.btn.sm{height:30px;padding:0 12px;font-size:13px}
.pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--r-pill);font-size:12px;font-weight:500;border:1px solid var(--line);color:var(--ink-2);background:var(--bg)}
.pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.pill.ok{color:var(--ok)} .pill.warn{color:var(--warn)} .pill.bad{color:var(--bad)} .pill.vi{color:var(--violet-deep);background:var(--violet-tint);border-color:transparent}
.seg{display:inline-flex;background:var(--bg-2);border-radius:var(--r-ctl);padding:3px;gap:2px}
.seg span{padding:0 12px;height:28px;display:inline-flex;align-items:center;border-radius:8px;font-size:13px;font-weight:500;color:var(--ink-2)}
.seg span.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.hr{height:1px;background:var(--line)}
.card{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-card)}
.tbl{width:100%;border-collapse:collapse}
.tbl th{font-size:12px;font-weight:500;color:var(--ink-2);text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);letter-spacing:.01em}
.tbl td{padding:12px 12px;border-bottom:1px solid var(--line-2);font-size:13.5px;vertical-align:middle}
.tbl tr:last-child td{border-bottom:none}
.tbl td.r,.tbl th.r{text-align:right}
.ico{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ico.s{width:16px;height:16px}
.input{height:40px;border:1px solid var(--line);border-radius:var(--r-ctl);padding:0 14px;display:flex;align-items:center;background:var(--bg);font-size:14px;color:var(--ink-3)}
.bar{height:6px;border-radius:3px;background:var(--bg-3);overflow:hidden}
.bar i{display:block;height:100%;background:var(--ink);border-radius:3px}
.bar.vi i{background:var(--violet-deep)}
