:root{--bg:#f6f4ef;--card:#fff;--ink:#1d2433;--muted:#5b6475;--line:#ddd8cc;--brand:#1f4e79;--brand-ink:#fff;--ok:#17663a;--ok-bg:#e3f4ea;--warn:#8a5a00;--warn-bg:#fdf0d2;--bad:#a1261c;--bad-bg:#fbe3e0;--radius:16px}@media (prefers-color-scheme:dark){:root{--bg:#12161f;--card:#1b2130;--ink:#f1f3f8;--muted:#a5adbf;--line:#2d3547;--brand:#8fb8e6;--brand-ink:#0f1a2a;--ok:#7fd9a3;--ok-bg:#12301f;--warn:#f2c66b;--warn-bg:#3a2c0c;--bad:#ff9d94;--bad-bg:#3d1713}}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;font-size:20px}body{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}a{color:inherit}.wrap{max-width:760px;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) calc(110px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0 auto}button,a,.btn{touch-action:manipulation}body{overscroll-behavior-y:none}h1{margin:8px 0 4px;font-size:1.6rem}h2{margin:24px 0 8px;font-size:1.15rem}p{margin:4px 0}.muted{color:var(--muted);font-size:.85rem}.banner{background:var(--warn-bg);color:var(--warn);border-radius:12px;margin-bottom:12px;padding:10px 14px;font-size:.8rem;font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin:12px 0;padding:16px}.grid3{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:640px){.grid3{grid-template-columns:repeat(3,1fr)}}a.card.link{text-decoration:none;display:block}a.card.link:focus-visible,.btn:focus-visible,.navlink:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.kpi-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem}.kpi{font-variant-numeric:tabular-nums;margin:2px 0;font-size:1.9rem;font-weight:700}.btn{background:var(--brand);width:100%;min-height:60px;color:var(--brand-ink);text-align:center;cursor:pointer;border:0;border-radius:14px;padding:14px 18px;font-size:1.1rem;font-weight:700;text-decoration:none;display:block}.btn.ok{background:var(--ok);color:#fff}@media (prefers-color-scheme:dark){.btn.ok{color:#04140b;background:#2a9d5c}}.btn.ghost{color:var(--ink);border:2px solid var(--line);background:0 0}.btn+.btn{margin-top:10px}.pill{border-radius:999px;padding:3px 12px;font-size:.8rem;font-weight:700;display:inline-block}.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.warn{background:var(--warn-bg);color:var(--warn)}.pill.bad{background:var(--bad-bg);color:var(--bad)}.row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.row .right{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.item{border-bottom:1px solid var(--line);padding:14px 0;text-decoration:none;display:block}.item:last-child{border-bottom:0}.bar{background:var(--line);border-radius:99px;height:16px;overflow:hidden}.bar>span{background:var(--brand);height:100%;display:block}.bar.ok>span{background:#2a9d5c}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}th,td{text-align:right;border-bottom:1px solid var(--line);padding:10px 6px}th:first-child,td:first-child{text-align:left}th{color:var(--muted);font-weight:600}.nav{background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-in{width:100%;max-width:760px;display:flex}.navlink{min-height:64px;color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.8rem;font-weight:600;text-decoration:none;display:flex}.navlink .ico{font-size:1.4rem;line-height:1}.navlink[aria-current=page]{color:var(--brand)}.top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.linkbtn{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:8px;font-size:.85rem;text-decoration:underline}.big{font-size:1.5rem;font-weight:700}.kv{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.kv:last-child{border-bottom:0}.kv span:first-child{color:var(--muted)}.kv span:last-child{text-align:right;font-weight:600}.msg{border-radius:12px;margin:12px 0;padding:12px 14px;font-weight:600}.msg.ok{background:var(--ok-bg);color:var(--ok)}.msg.bad{background:var(--bad-bg);color:var(--bad)}
