:root{--ink:#16202a;--ink-2:#3e4a55;--muted:#4a5763;--line:#e1e5e8;--quiet:#f0f2f4;--bg:#f6f7f5;--card:#fff;--blue:#1f5f8b;--blue-dark:#123e5c;--blue-soft:#e3edf5;--orange:#b4541b;--accent:#e8833a;--ok:#1d5c34;--ok-soft:#e6f2ea;--warn-bg:#fff4e5;--warn-ink:#7a3a0c;--track:#e9ecef;--radius:12px;--sans:"Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);background:var(--bg);margin:0;font-size:16px;line-height:1.55}h1,h2,h3{margin:0;line-height:1.25}h1{overflow-wrap:anywhere;font-size:clamp(26px,4vw,40px);font-weight:700}h2{font-size:21px;font-weight:700}p{margin:0}ul,ol,dl,dd{margin:0;padding:0}a{color:var(--blue);text-underline-offset:3px}a:hover{color:var(--blue-dark)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.container{max-width:1200px;margin:0 auto;padding-inline:16px}@media (width>=720px){.container{padding-inline:24px}}.page{padding-block:32px 64px}.narrow{max-width:820px}.stack,.stack-sm,.stack-lg,.stack-xl{flex-direction:column;display:flex}.stack-sm{gap:6px}.stack{gap:12px}.stack-lg{gap:20px}.stack-xl{gap:40px}.row-wrap{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spread{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.grid-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px;display:grid}.grid-4{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;display:grid}.muted{color:var(--muted)}.small{font-size:14px}.xsmall{font-size:12px;display:block}.strong{font-weight:600}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.big{font-size:20px}.r{text-align:right}.skip{position:absolute;left:-9999px}.skip:focus{background:var(--card);z-index:10;padding:8px 12px;top:8px;left:16px}.banner{background:var(--warn-bg);color:var(--warn-ink);text-align:center;padding:8px 16px;font-size:14px}.header{background:var(--card);border-bottom:1px solid var(--line)}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-block:12px;display:flex}.brand{color:var(--ink);align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.brand svg{color:var(--blue)}.nav{flex-wrap:wrap;gap:2px;margin-inline:-10px;display:flex}.nav a{min-height:44px;color:var(--ink-2);align-items:center;padding:10px;font-size:15px;text-decoration:none;display:inline-flex}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);text-decoration:underline}.hero{background:var(--ink);color:#fff;padding-block:56px 48px}.hero-small{padding-block:40px 32px}.hero h1{max-width:840px}.hero a{color:#c9d3db}.hero-lead{color:#c9d3db;max-width:720px;font-size:18px}.search{flex-wrap:wrap;align-items:flex-end;gap:12px;max-width:920px;margin-top:8px;display:flex}.search label,.filters label{flex-direction:column;gap:6px;font-size:13px;display:flex}.search label{color:#c9d3db}.search-q{flex:999 320px}.search-p{flex:180px}input,select{height:48px;font:inherit;color:var(--ink);background:#fff;border:1px solid #c3cbd2;border-radius:8px;width:100%;padding:0 14px;font-size:16px}.search input,.search select{border:0}.btn{border:1px solid var(--blue);background:var(--blue);color:#fff;min-height:44px;font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--blue-dark);color:#fff}.btn-outline{color:var(--blue);background:0 0}.btn-outline:hover{background:var(--blue-soft);color:var(--blue-dark)}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--ink);height:48px}.btn-accent:hover{color:var(--ink);background:#d57328}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.card-quiet{background:var(--quiet);color:var(--ink-2);border-color:#0000}.stat{flex-direction:column;gap:6px;display:flex}.stat-value{font-size:28px;font-weight:500}.section{flex-direction:column;gap:14px;display:flex}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:680px;font-size:15px}th{text-align:left;color:var(--muted);background:var(--quiet);padding:12px 16px;font-size:13px;font-weight:600}td{border-top:1px solid var(--line);vertical-align:top;padding:13px 16px}th.r,td.r{text-align:right}.w-bar{width:200px}.bar{background:var(--track);border-radius:4px;flex:1;min-width:40px;height:8px;overflow:hidden}.bar-fill{border-radius:4px;height:100%}.bar-blue{background:var(--blue)}.bar-orange{background:var(--orange)}.bar-row{align-items:center;gap:10px;display:flex}.bar-row .num{text-align:right;width:44px}.bars{flex-direction:column;gap:14px;list-style:none;display:flex}.bar-line{grid-template-columns:minmax(90px,160px) 1fr auto auto;align-items:center;gap:12px;display:grid}.bar-value{text-align:right;min-width:70px}.tender-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;display:flex}.tender-card-main{flex-direction:column;flex:999 380px;gap:4px;min-width:0;display:flex}.tender-card-title{overflow-wrap:anywhere;font-size:17px;font-weight:600;text-decoration:none}.tender-card-title:hover{text-decoration:underline}.tender-card-nums{text-align:right;flex-wrap:wrap;flex:240px;justify-content:flex-end;gap:24px;display:flex}.topic-card{color:var(--ink);flex-direction:column;gap:8px;text-decoration:none;display:flex}.topic-card:hover{border-color:var(--blue);color:var(--ink)}.topic-name{color:var(--blue);font-size:17px;font-weight:600}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--blue-soft);color:var(--blue-dark);border-radius:999px;padding:4px 10px;font-size:13px;display:inline-block}.chip-ok{background:var(--ok-soft);color:var(--ok);font-weight:600}.pill{border:1px solid #4b5b69;border-radius:999px;align-items:center;min-height:44px;padding:0 16px;font-size:14px;text-decoration:none;display:inline-flex;color:#fff!important}.pill-active{background:#fff;color:var(--ink)!important}.split{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.split-main{flex:999 600px;min-width:0}.split-side{flex:280px}.grid-4 .stat-value{font-size:24px}.indicator{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 24px;padding-top:14px;display:flex}.indicator:first-child{border-top:0;padding-top:0}.indicator>.stack-sm{flex:240px}.indicator-nums{text-align:right;gap:24px;display:flex}.doc-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;list-style:none;display:grid}.doc-list li{align-items:baseline;gap:8px;display:flex}.doc-icon{text-align:center;width:18px;font-weight:700}.doc-ok .doc-icon{color:var(--ok)}.doc-missing{color:var(--muted)}.doc-missing .doc-icon{color:var(--orange)}.timeline{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;list-style:none;display:grid}.timeline li{border-top:3px solid var(--blue);flex-direction:column;gap:4px;padding-top:10px;display:flex}.timeline li.muted{border-top-color:var(--line)}.filters{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.filters label{color:var(--muted);flex:180px}.filters .search-q{flex:999 300px}.pager{justify-content:space-between;align-items:center;gap:12px;display:flex}.pager a{align-items:center;min-height:44px;display:inline-flex}.defs{flex-direction:column;gap:12px;display:flex}.state{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:16px;padding:48px 0;display:flex}.state-error{color:var(--warn-ink)}.footer{border-top:1px solid var(--line);background:var(--card);margin-top:24px}.footer-inner{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-block:24px;font-size:13px;display:flex}.footer a{align-items:center;min-height:44px;display:inline-flex}@media (width<=520px){.bar-line{grid-template-columns:1fr auto}.bar-line .bar{grid-area:2/1/auto/-1}.stat-value{font-size:24px}}.state-title{color:var(--line);font-size:48px}
