:root{--bg:#f4f6fb;--card:#fff;--ink:#18202f;--mut:#566074;--pri:#1f4fd1;--pri2:#e8eefc;--ok:#11703a;--bad:#b42318;--warn:#8a5a00;--bd:#dde2ec;--r:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.top{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#17359a,#2d66e6);color:#fff;padding:16px 20px}
.top h1{margin:0;font-size:1.4rem}.top p{margin:2px 0 0;opacity:.85;font-size:.9rem}
.toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.toolbar .muted{color:#dfe7ff}
button,.btn,select,input,textarea{font:inherit}
button,.btn{border:1px solid var(--bd);background:#fff;color:var(--ink);padding:6px 12px;border-radius:8px;cursor:pointer;display:inline-block}
button:hover,.btn:hover{background:var(--pri2)}button.pri{background:var(--pri);color:#fff;border-color:var(--pri)}button.pri:hover{background:#173fae}
button:disabled{opacity:.5;cursor:not-allowed}
:focus-visible{outline:3px solid #f5b400;outline-offset:2px}
.disc{max-width:1280px;margin:12px auto;padding:10px 14px;background:#fff6dd;border:1px solid #efd383;color:#5c4300;border-radius:8px}
.tabs{max-width:1280px;margin:0 auto;padding:0 12px;display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--bd)}
.tabs [role=tab]{border:0;border-bottom:3px solid transparent;border-radius:0;background:none;padding:10px 12px;white-space:nowrap;color:var(--mut)}
.tabs [role=tab][aria-selected=true]{color:var(--pri);border-bottom-color:var(--pri);font-weight:600}
main{max-width:1280px;margin:0 auto;padding:16px 12px 40px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:16px;margin-bottom:16px;box-shadow:0 1px 2px #0000000a}
.card h2{font-size:1.05rem;margin:0 0 10px}.card h3{font-size:.95rem;margin:12px 0 6px}h2.inline{display:inline}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.grid2,.grid3{grid-template-columns:1fr}}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}
.kpi{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:12px 14px}.kpi .l{font-size:.8rem;color:var(--mut)}.kpi .v{font-size:1.35rem;font-weight:700}.kpi .s{font-size:.78rem;color:var(--mut)}
.ok{color:var(--ok)}.bad{color:var(--bad)}.warn{color:var(--warn)}.muted{color:var(--mut)}
.status{padding:12px 14px;border-radius:8px;margin-bottom:14px;font-weight:600;background:#eef2fa}.status.ok{background:#e6f5ec}.status.bad{background:#fdecea}.status.warn{background:#fff4dc}
.chartbox{position:relative;height:300px}.chartbox.tall{height:380px}
.tw{overflow:auto;max-height:520px}
table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{padding:5px 8px;border-bottom:1px solid var(--bd);text-align:right;white-space:nowrap}
th{background:#eef2fa;position:sticky;top:0;z-index:1}th:first-child,td:first-child{text-align:left}
td.best{background:#d8f1e1;font-weight:700}caption{text-align:left;font-weight:600;padding:4px 0}
.controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:10px}
label{font-size:.85rem;color:var(--mut)}.controls label,.fgrid label{display:flex;flex-direction:column;gap:2px}
input,select,textarea{padding:6px 8px;border:1px solid #c9d0de;border-radius:7px;background:#fff;color:var(--ink);min-width:0}
textarea{width:100%}input[type=checkbox]{width:18px;height:18px;accent-color:var(--pri)}
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 14px}
.fgrid label.chk{flex-direction:row;align-items:center;gap:8px}
.list td{padding:3px 4px}.list input,.list select{width:100%;min-width:70px}.list td.c{text-align:center}.list input[type=checkbox]{width:18px}
.help{font-size:.8rem;color:var(--mut);margin:4px 0 8px}
.bar{height:14px;background:#e7ebf3;border-radius:7px;overflow:hidden}.bar>span{display:block;height:100%;background:var(--pri)}
.row-ctl{margin:-6px 0 10px}
.foot{max-width:1280px;margin:0 auto;padding:0 12px 30px;font-size:.8rem}
.report h1{font-size:1.4rem}.report img{max-width:100%;border:1px solid var(--bd);border-radius:8px}
@media print{
  .top,.tabs,.disc.noprint,.noprint,.foot,.skip{display:none!important}
  body{background:#fff}main{padding:0}section[role=tabpanel]{display:none!important}#p-report{display:block!important}
  .card{box-shadow:none;break-inside:avoid}table{font-size:9pt}.report .pb{break-before:page}
}
