:root{--gold:#e8b33e;--text:#f7fbff;--muted:#9fb5c5;--line:#31516a;--green:#55be7d;--blue:#48a9e6;--navy:#06192d}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#041523,#08253d);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,sans-serif;min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px clamp(18px,4vw,52px);border-bottom:1px solid rgba(232,179,62,.3);background:#051a2c;position:sticky;top:0;z-index:5}.top-brand{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:#fff}.top-brand b{font:500 40px/1 Georgia,serif;color:var(--gold)}.top-brand span{font:500 14px Georgia,serif;letter-spacing:.1em}.topbar>div{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:13px}button,select{border:1px solid #58738a;border-radius:9px;background:#0a2946;color:#fff;padding:9px 12px;font:inherit;font-weight:800;cursor:pointer}main{width:min(1240px,94vw);margin:auto;padding:34px 0 70px}.owner-intro p,.panel-head small{color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.16em}.owner-intro h1{font:500 clamp(34px,5vw,58px)/1 Georgia,serif;margin:7px 0}.owner-intro span,.freshness{color:var(--muted)}.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px}.tabs{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}.tab{white-space:nowrap;color:#c7d7e2}.tab.active{background:var(--gold);border-color:var(--gold);color:#07182a}.range-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:800}.notice,.panel{margin-top:18px;border:1px solid var(--line);border-radius:18px;background:rgba(7,31,52,.94);padding:20px}.notice.error{border-color:#ad584e;color:#ffc4bd}.freshness{font-size:12px;margin:14px 2px 0}.view{display:none}.view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.metric{border:1px solid var(--line);border-radius:15px;padding:18px;background:#0a2946;min-width:0}.metric small{display:block;color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.1em;line-height:1.4}.metric b{display:block;margin-top:7px;font-size:clamp(23px,3vw,32px);color:#f4c65d;overflow-wrap:anywhere}.metric em{display:block;margin-top:5px;color:#b8cad6;font-size:12px;font-style:normal}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:16px}.panel-head{display:flex;align-items:end;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:15px}.panel-head h2{margin:5px 0 0;font-size:21px}.panel-head a{color:#f3c152;font-weight:800}.panel-head>span{color:var(--muted);font-size:12px}.empty{color:var(--muted);line-height:1.55;padding:14px 0}.bars{display:grid;gap:11px;margin-top:17px}.bar-row{display:grid;grid-template-columns:minmax(110px,1.4fr) 3fr auto;gap:10px;align-items:center;font-size:13px}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d8e5ed}.bar-track{height:10px;border-radius:999px;background:#153b55;overflow:hidden}.bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#7dd3fc);min-width:2px}.bar-row b{font-variant-numeric:tabular-nums}.spark{width:100%;height:190px;margin-top:14px;display:block}.spark .grid{stroke:#21465f;stroke-width:1}.spark .area{fill:rgba(72,169,230,.16)}.spark .line{fill:none;stroke:#63c5fa;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.spark .line-secondary{fill:none;stroke:var(--gold);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.legend{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-top:8px}.legend span:before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;background:#63c5fa;margin-right:6px}.legend span.secondary:before{background:var(--gold)}.data-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:13px}.data-table th,.data-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #244760}.data-table th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.data-table td:last-child,.data-table th:last-child{text-align:right}.country-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.country,.issue,.audit,.system-card{border:1px solid #294d68;border-radius:13px;background:#08243d;padding:15px}.country h3,.issue h3{margin:0 0 8px}.country p,.issue p,.audit p{color:#c4d5e1;line-height:1.5;margin:6px 0}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span{border-radius:999px;background:#123c5a;padding:5px 9px;color:#d9e8f1;font-size:11px;font-weight:750}.issue-list,.audit-list{display:grid;gap:10px;margin-top:16px}.issue{border-left:4px solid #dc9d29}.audit{border-left:4px solid var(--green)}.system-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.system-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.system-card b{font-size:15px}.system-card span{border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900}.system-card .ok{background:rgba(85,190,125,.18);color:#8ce7ab}.system-card .warn{background:rgba(232,179,62,.18);color:#f6ce74}@media(max-width:850px){.metrics{grid-template-columns:repeat(2,1fr)}.two-column{grid-template-columns:1fr}.dashboard-toolbar{align-items:flex-start;flex-direction:column}.range-label{align-self:flex-end}.system-grid{grid-template-columns:1fr}}@media(max-width:620px){.topbar{align-items:flex-start}.topbar>div{flex-direction:column;align-items:flex-end}.country-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:minmax(90px,1.2fr) 2fr auto}}@media(max-width:430px){.metrics{grid-template-columns:1fr}.top-brand b{font-size:32px}.top-brand span{font-size:11px}}

.owner-menu-toggle{display:none}
@media(max-width:620px){
  .dashboard-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}
  .owner-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;justify-self:start;border-color:rgba(232,179,62,.72);color:#ffe4a0}
  .tabs{display:none;grid-column:1/-1;grid-row:2;width:100%;padding:8px;border:1px solid var(--line);border-radius:13px;background:rgba(5,25,43,.98);box-shadow:0 18px 40px rgba(0,0,0,.28)}
  .tabs[data-open="true"]{display:grid;grid-template-columns:1fr;gap:6px}
  .tab{width:100%;min-height:44px;text-align:left}
  .range-label{grid-column:2;grid-row:1;align-self:center}
}
