:root{--navy:#0f2b46;--green:#1b8a5a;--ink:#27384a;--line:#e2e6ec;--bg:#f4f6f9}
*{box-sizing:border-box}
body{margin:0;font:14px/1.5 -apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}
.shell{display:flex;min-height:100vh}
.side{width:190px;flex-shrink:0;background:var(--navy);color:#cdd8e6;padding:14px 0}
.side .brand{padding:0 16px 12px;font-weight:700;color:#fff;border-bottom:1px solid #1d3d5c;margin-bottom:8px}
.side .brand small{display:block;font-weight:400;color:#7d99b6;font-size:11px;margin-top:2px}
.side a{display:block;padding:8px 16px;color:#cdd8e6;text-decoration:none;font-size:13px}
.side a:hover{background:#163a5a}
.side a.active{background:var(--green);color:#fff;font-weight:600;border-left:3px solid #6ee7a8}
.main{flex:1;min-width:0;display:flex;flex-direction:column}
.top{background:#fff;border-bottom:1px solid var(--line);padding:10px 18px;display:flex;justify-content:space-between;align-items:center;gap:16px;position:relative}
.search{flex:1;max-width:420px;padding:7px 12px;border:1px solid var(--line);border-radius:6px;font-size:13px}
.who{font-size:12px;color:#5a6b80;white-space:nowrap}
.who a{color:#1b8a5a;cursor:pointer}
.content{padding:18px;max-width:1100px}
h2{color:var(--navy);margin:0 0 4px}
.subtitle{color:#5a6b80;margin:0 0 16px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}
.kpi .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#8593a5}
.kpi .val{font-size:22px;font-weight:700;color:var(--navy);margin-top:4px}
.kpi .sub{font-size:11px;color:var(--green);margin-top:2px}
.kpi.warn .val,.kpi.warn .sub{color:#c0392b}
.row2{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}
.panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:12px}
.panel h3,.panel h4{margin:0 0 10px;color:var(--navy)}
.bar{height:8px;background:#eef1f5;border-radius:4px;overflow:hidden;margin:6px 0 10px}
.bar i{display:block;height:100%;background:var(--green)}
.dom{display:inline-block;font-size:12px;background:#eaf3ee;color:#1b6e48;border:1px solid #c5e3d2;border-radius:12px;padding:3px 10px;margin:3px}
table{border-collapse:collapse;width:100%;font-size:13px;background:#fff}
th,td{border:1px solid var(--line);padding:7px 9px;text-align:left;vertical-align:top}
th{background:#f0f3f7;color:var(--navy)}
details{background:#fff;border:1px solid var(--line);border-radius:6px;margin:6px 0;padding:8px 12px}
summary{cursor:pointer;font-weight:600;color:var(--navy)}
.search-results{position:absolute;top:50px;left:18px;right:18px;max-width:420px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 20px rgba(0,0,0,.12);z-index:20}
.search-results a{display:block;padding:8px 12px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.search-results a:hover{background:#f4f6f9}
.search-results a:last-child{border-bottom:0}
.linkbtn{background:none;border:0;color:#1b8a5a;cursor:pointer;font:inherit;padding:0;text-decoration:underline}
@media(max-width:820px){.shell{flex-direction:column}.side{width:100%}.kpis{grid-template-columns:repeat(2,1fr)}.row2{grid-template-columns:1fr}}
