@font-face{font-family:Inter;src:url('/static/fonts/inter-cyrillic.woff2') format('woff2');font-display:swap}
:root{color-scheme:light;--bg:#f5f3ed;--paper:#fff;--ink:#182c42;--muted:#526275;--line:#cbd4dd;--accent:#214fac;--tint:#e9effa;--good:#12664d;--warn:#975116;--plot:#dce3ed}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--bg:#111c2b;--paper:#1c2c40;--ink:#f0f4fa;--muted:#bbc8d9;--line:#48576a;--accent:#a8c6ff;--tint:#273e5e;--good:#7cdbb9;--warn:#ffce98;--plot:#38495e}}
:root[data-theme="dark"]{color-scheme:dark;--bg:#111c2b;--paper:#1c2c40;--ink:#f0f4fa;--muted:#bbc8d9;--line:#48576a;--accent:#a8c6ff;--tint:#273e5e;--good:#7cdbb9;--warn:#ffce98;--plot:#38495e}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Inter,Arial,sans-serif}header,main,footer{max-width:1180px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:16px;align-items:center}a{color:var(--accent);text-underline-offset:4px}h1{font-size:clamp(38px,5vw,65px);line-height:1.08;letter-spacing:-.045em;margin:12px 0 22px}h2{font-size:30px;letter-spacing:-.025em}h3{line-height:1.3}.intro{padding:36px 0 25px;max-width:820px}.intro>p{max-width:700px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em}.muted{color:var(--muted);font-size:14px}nav,.actions{display:flex;flex-wrap:wrap;gap:12px}nav{padding:20px 0;border-block:1px solid var(--line)}nav a{padding:6px}section{scroll-margin-top:20px}main>section:not(.intro){padding-top:30px;margin-bottom:30px}button,input,select{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:10px 14px;min-height:44px}button{cursor:pointer}button:hover{background:var(--tint)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}label{display:grid;gap:6px;font-size:14px;font-weight:600}.controls{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px;margin-bottom:16px}input,select{width:100%}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.viz,.paper{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px}.card h3{font-size:22px;margin:0}.price{font-size:30px;letter-spacing:-.035em;margin:10px 0;font-weight:700}.status{color:var(--warn)}.status.good{color:var(--good)}#result{padding:20px 24px;background:var(--tint);border-radius:12px;margin:20px 0;font-size:19px;font-weight:600}.two{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;margin-top:22px}.viz h3{margin-top:0}.barline{margin:22px 0}.bar-title{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px;font-size:14px}.track{height:23px;background:var(--plot);border-radius:4px;display:flex;position:relative}.segment{height:100%}.segment:first-child{border-radius:4px 0 0 4px}.part0{background:#426ccc}.part1{background:#d98b2d}.part2{background:#9580ba}.part3{background:#28927b}.deadline{position:absolute;top:-6px;bottom:-6px;border-left:3px dashed var(--ink)}.legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px}.legend span:before{content:'';display:inline-block;width:10px;height:10px;margin-right:5px;background:#426ccc}.legend span:nth-child(2):before{background:#d98b2d}.legend span:nth-child(3):before{background:#9580ba}.legend span:nth-child(4):before{background:#28927b}.table-wrap{overflow-x:auto;margin-bottom:18px}table{border-collapse:collapse;min-width:850px;width:100%;background:var(--paper)}th,td{padding:13px;text-align:right;border-bottom:1px solid var(--line)}th:first-child,td:first-child{text-align:left}th{font-size:13px}caption{text-align:left;color:var(--muted);margin-bottom:10px}details{margin:18px 0;padding:14px 18px;background:var(--paper);border:1px solid var(--line);border-radius:10px}summary{cursor:pointer;min-height:30px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.7 Inter,Arial,sans-serif}.paper{white-space:pre-wrap;overflow-wrap:anywhere}.card p:last-child{margin-bottom:0}#evidence label{max-width:540px}footer{color:var(--muted);border-top:1px solid var(--line)}@media(max-width:750px){header{align-items:flex-start}header a{font-size:13px}.controls,.cards,.two{grid-template-columns:1fr}header,main,footer{padding:18px}.intro{padding:18px 0}h2{font-size:25px}.price{font-size:29px}.card,.viz,.paper{padding:18px}}@media print{button,.controls,.actions,nav,header{display:none}.cards{grid-template-columns:repeat(3,1fr)}body{background:white;color:black}.two{grid-template-columns:1fr}section{break-inside:avoid}}
