:root {
  --ink: #111b33;
  --muted: #667085;
  --muted-2: #98a2b3;
  --line: #e8edf5;
  --panel: #ffffff;
  --bg: #f4f7fb;
  --nav: #0b1530;
  --nav-soft: #131f3f;
  --blue: #3e63f4;
  --cyan: #2ec5ce;
  --purple: #7b61ff;
  --green: #18a66a;
  --amber: #e8a11a;
  --red: #df4454;
  --shadow: 0 12px 36px rgba(28, 44, 80, .08);
  --radius: 18px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--bg); color: var(--ink); }
button, input, select { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 252px minmax(0,1fr); }
.sidebar { position: fixed; inset: 0 auto 0 0; width: 252px; padding: 24px 18px; background: linear-gradient(180deg,#0a1430 0%,#0f1b39 100%); color: white; display:flex; flex-direction:column; z-index:20; }
.brand { display:flex; align-items:center; gap:12px; padding: 2px 8px 24px; }
.brand-mark { width:38px; height:38px; position:relative; flex:none; }
.brand-mark::before,.brand-mark::after { content:""; position:absolute; inset:7px; border-radius:9px; transform:rotate(45deg); }
.brand-mark::before { background:linear-gradient(135deg,var(--purple),var(--blue)); left:1px; top:5px; }
.brand-mark::after { background:linear-gradient(135deg,var(--blue),var(--cyan)); left:10px; top:9px; opacity:.9; }
.brand-name { font-size:20px; font-weight:800; letter-spacing:.04em; }
.brand-sub { font-size:8px; letter-spacing:.19em; color:#9fb0d7; margin-top:2px; white-space:nowrap; }
.nav-label { padding: 7px 12px; color:#7384ad; font-size:10px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.nav { display:flex; flex-direction:column; gap:4px; }
.nav-btn { width:100%; border:0; background:transparent; color:#b9c4df; padding:11px 12px; border-radius:11px; display:flex; align-items:center; gap:11px; text-align:left; font-weight:600; transition:.18s ease; }
.nav-btn:hover { background:rgba(255,255,255,.06); color:white; }
.nav-btn.active { background:linear-gradient(90deg,rgba(62,99,244,.28),rgba(62,99,244,.08)); color:white; box-shadow:inset 3px 0 0 #6d87ff; }
.nav-btn svg { width:18px; height:18px; flex:none; opacity:.9; }
.nav-badge { margin-left:auto; font-size:9px; border-radius:999px; padding:3px 7px; background:#6d58d9; color:white; letter-spacing:.04em; }
.nav-badge.muted { background:#26365d; color:#a9b8da; }
.sidebar-foot { margin-top:auto; border-top:1px solid rgba(255,255,255,.08); padding:16px 9px 2px; color:#90a0c4; font-size:11px; line-height:1.6; }
.sidebar-foot strong { color:#d9e0f2; font-weight:700; }

.main { grid-column:2; min-width:0; }
.topbar { position:sticky; top:0; z-index:12; height:76px; display:flex; align-items:center; gap:18px; padding:0 30px; border-bottom:1px solid rgba(222,228,240,.85); background:rgba(248,250,253,.88); backdrop-filter:blur(16px); }
.breadcrumb { min-width:0; }
.breadcrumb h1 { margin:0; font-size:19px; letter-spacing:-.02em; }
.breadcrumb p { margin:4px 0 0; font-size:12px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.top-actions { margin-left:auto; display:flex; align-items:center; gap:10px; }
.select { min-width:220px; padding:9px 34px 9px 12px; border:1px solid #dce3ef; border-radius:10px; background:#fff; color:var(--ink); outline:none; }
.connection { display:flex; align-items:center; gap:7px; font-size:12px; color:var(--muted); padding:8px 10px; border:1px solid #dfe6f0; border-radius:999px; background:white; }
.dot { width:8px; height:8px; border-radius:50%; background:var(--muted-2); }
.dot.ok { background:var(--green); box-shadow:0 0 0 4px rgba(24,166,106,.10); }
.dot.bad { background:var(--red); }
.env-pill { font-size:10px; font-weight:800; letter-spacing:.08em; color:#58657f; border:1px solid #dce3ef; background:#eef2f8; padding:6px 9px; border-radius:999px; }

.content { padding:28px 30px 44px; max-width:1600px; margin:0 auto; }
.hero { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:22px; }
.hero h2 { margin:0; font-family:Georgia, "Times New Roman", serif; font-size:34px; line-height:1.08; letter-spacing:-.03em; font-weight:500; }
.hero h2 span { color:var(--blue); }
.hero p { margin:8px 0 0; color:var(--muted); font-size:14px; max-width:720px; line-height:1.55; }
.hero-meta { color:var(--muted); font-size:12px; text-align:right; }

.grid { display:grid; gap:16px; }
.grid.kpis { grid-template-columns:repeat(4,minmax(0,1fr)); margin-bottom:16px; }
.grid.two { grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr); }
.grid.assets { grid-template-columns:repeat(4,minmax(0,1fr)); }
.card { background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); }
.kpi { padding:18px; min-height:126px; position:relative; overflow:hidden; }
.kpi::after { content:""; position:absolute; width:78px; height:78px; right:-22px; bottom:-24px; border-radius:50%; background:radial-gradient(circle,rgba(62,99,244,.10),transparent 70%); }
.kpi-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.kpi-label { font-size:11px; color:var(--muted); font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.icon-chip { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:#eef2ff; color:var(--blue); }
.icon-chip svg { width:17px; height:17px; }
.icon-chip.green { background:#eaf8f1; color:var(--green); }
.icon-chip.amber { background:#fff7e5; color:var(--amber); }
.icon-chip.purple { background:#f1edff; color:var(--purple); }
.kpi-value { font-size:30px; line-height:1; font-weight:760; letter-spacing:-.04em; margin-top:16px; }
.kpi-sub { margin-top:7px; font-size:12px; color:var(--muted); }
.badge { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:5px 9px; font-size:10px; font-weight:750; white-space:nowrap; }
.badge.green { background:#e9f8f0; color:#137b52; }
.badge.blue { background:#edf1ff; color:#405dd4; }
.badge.amber { background:#fff5dc; color:#9b6611; }
.badge.grey { background:#f0f2f6; color:#667085; }
.badge.purple { background:#f0ebff; color:#644bd0; }

.section-card { padding:20px; min-height:300px; }
.section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.section-title { font-size:14px; font-weight:750; }
.section-sub { font-size:11px; color:var(--muted); margin-top:3px; }
.section-link { border:0; background:transparent; color:var(--blue); font-size:12px; font-weight:700; }

.readiness { padding:24px; min-height:300px; background:linear-gradient(145deg,#0e1936 0%,#15244a 100%); color:white; position:relative; overflow:hidden; }
.readiness::before { content:""; position:absolute; width:260px; height:260px; border-radius:50%; right:-90px; top:-100px; background:radial-gradient(circle,rgba(77,118,255,.32),transparent 66%); }
.readiness-label { color:#aebbd9; font-size:10px; letter-spacing:.14em; font-weight:800; text-transform:uppercase; }
.readiness-value { font-family:Georgia,serif; font-size:58px; line-height:1; margin:17px 0 8px; }
.readiness p { color:#aebbd9; line-height:1.5; font-size:12px; max-width:290px; }
.progress { height:6px; border-radius:99px; overflow:hidden; background:rgba(255,255,255,.1); margin:22px 0 16px; }
.progress > span { height:100%; display:block; background:linear-gradient(90deg,#6d87ff,#34c4cf); border-radius:99px; }
.readiness-list { display:grid; gap:10px; margin-top:10px; }
.readiness-row { display:flex; justify-content:space-between; align-items:center; font-size:11px; color:#bdc8e2; }
.readiness-row strong { color:white; }

.asset-table { width:100%; border-collapse:collapse; }
.asset-table th { text-align:left; font-size:10px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted-2); font-weight:750; padding:9px 10px; border-bottom:1px solid var(--line); }
.asset-table td { padding:13px 10px; border-bottom:1px solid #f0f2f6; font-size:12px; vertical-align:middle; }
.asset-table tr:last-child td { border-bottom:0; }
.asset-name { font-weight:700; }
.asset-code { font-size:10px; color:var(--muted-2); margin-top:3px; }
.reading { font-size:15px; font-weight:750; }
.reading.missing { color:var(--muted-2); font-weight:650; }

.ai-brief { margin-top:16px; padding:20px; display:grid; grid-template-columns:1.2fr .8fr; gap:18px; align-items:stretch; }
.ai-copy { padding:10px 6px; }
.ai-kicker { display:flex; align-items:center; gap:8px; color:var(--purple); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.ai-kicker svg { width:16px; height:16px; flex:none; }
.ai-copy h3 { margin:10px 0 8px; font-family:Georgia,serif; font-size:26px; font-weight:500; letter-spacing:-.02em; }
.ai-copy p { color:var(--muted); font-size:13px; line-height:1.6; max-width:650px; }
.ai-panel { border-radius:14px; border:1px solid #e7e2ff; background:linear-gradient(145deg,#faf9ff,#f2f5ff); padding:18px; }
.ai-panel ul { margin:12px 0 0; padding:0; list-style:none; display:grid; gap:10px; }
.ai-panel li { display:flex; gap:9px; color:#4f5e78; font-size:12px; line-height:1.4; }
.ai-panel li::before { content:""; width:7px; height:7px; background:#7b61ff; border-radius:50%; margin-top:5px; flex:none; }

.monitor-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.segmented { display:flex; gap:3px; padding:3px; border:1px solid var(--line); border-radius:10px; background:#eef2f7; }
.segmented button { border:0; background:transparent; color:var(--muted); padding:7px 11px; border-radius:8px; font-size:11px; font-weight:700; }
.segmented button.active { background:white; color:var(--ink); box-shadow:0 2px 6px rgba(30,45,75,.08); }
.monitor-card { padding:18px; min-height:235px; }
.monitor-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
.monitor-card h3 { margin:0; font-size:14px; }
.monitor-code { margin-top:4px; font-size:10px; color:var(--muted-2); }
.monitor-value { font-size:34px; font-weight:760; letter-spacing:-.05em; margin-top:14px; }
.monitor-value small { font-size:14px; color:var(--muted); margin-left:2px; }
.monitor-meta { display:flex; justify-content:space-between; color:var(--muted); font-size:10px; margin-top:6px; }
.spark { height:74px; margin-top:12px; border-top:1px solid #eef2f7; padding-top:9px; }
.spark svg { width:100%; height:62px; overflow:visible; }
.spark-empty { height:62px; display:grid; place-items:center; color:var(--muted-2); font-size:11px; border:1px dashed #e0e6f0; border-radius:10px; }

.module-stage { min-height:560px; display:grid; place-items:center; }
.module-empty { max-width:720px; width:100%; text-align:center; padding:44px; }
.module-empty .big-icon { width:64px; height:64px; display:grid; place-items:center; margin:0 auto 18px; border-radius:18px; background:#eef2ff; color:var(--blue); }
.module-empty .big-icon svg { width:28px; height:28px; }
.module-empty h2 { font-family:Georgia,serif; margin:0 0 10px; font-size:30px; font-weight:500; }
.module-empty p { color:var(--muted); line-height:1.6; font-size:13px; }
.module-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:24px; text-align:left; }
.module-step { border:1px solid var(--line); background:#fafbfd; border-radius:12px; padding:14px; }
.module-step strong { font-size:11px; display:block; margin-bottom:5px; }
.module-step span { color:var(--muted); font-size:10px; line-height:1.4; }

.admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.admin-card { padding:19px; }
.admin-list { display:grid; gap:9px; margin-top:13px; }
.admin-item { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:11px 0; border-bottom:1px solid #eef1f6; }
.admin-item:last-child { border-bottom:0; }
.admin-item strong { font-size:12px; }
.admin-item span { display:block; color:var(--muted); font-size:10px; margin-top:3px; }
.admin-count { min-width:30px; height:30px; display:grid; place-items:center; border-radius:9px; background:#eef2ff; color:var(--blue); font-weight:800; font-size:11px; }

.toast { position:fixed; right:22px; bottom:22px; z-index:50; width:min(380px,calc(100vw - 44px)); border-radius:14px; padding:14px 16px; background:#111b33; color:white; box-shadow:0 18px 50px rgba(11,21,48,.3); font-size:12px; line-height:1.45; animation:toast-in .2s ease; }
.toast.error { background:#7c2430; }
@keyframes toast-in { from { opacity:0; transform:translateY(7px); } }
.skeleton { border-radius:8px; background:linear-gradient(90deg,#eef2f6 25%,#f7f9fb 50%,#eef2f6 75%); background-size:200% 100%; animation:shimmer 1.2s infinite; min-height:14px; }
@keyframes shimmer { to { background-position:-200% 0; } }

@media (max-width:1180px){
  .grid.kpis,.grid.assets{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid.two,.ai-brief{grid-template-columns:1fr;}
}
@media (max-width:820px){
  .app-shell{display:block;}
  .sidebar{position:sticky; top:0; width:100%; height:auto; padding:10px 12px; flex-direction:row; overflow:auto; align-items:center;}
  .brand{padding:0 12px 0 0; min-width:175px;}
  .brand-mark{width:30px;height:30px}.brand-name{font-size:16px}.brand-sub{font-size:6px}
  .nav-label,.sidebar-foot{display:none}.nav{flex-direction:row;}.nav-btn{width:auto;white-space:nowrap;padding:9px 10px}.nav-btn span:not(.nav-badge){display:none}.nav-badge{margin-left:0}
  .main{grid-column:auto}.topbar{top:50px;height:66px;padding:0 16px}.select{min-width:0;max-width:180px}.env-pill{display:none}
  .content{padding:20px 16px 34px}.hero{align-items:flex-start;flex-direction:column}.hero h2{font-size:29px}.hero-meta{text-align:left}
  .grid.kpis,.grid.assets,.admin-grid{grid-template-columns:1fr}.module-steps{grid-template-columns:1fr}
}

.flow-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #eef1f6}.flow-row:last-child{border-bottom:0}.flow-row strong{display:block;font-size:12px}.flow-row span{display:block;color:var(--muted);font-size:10px;margin-top:3px}.flow-right{text-align:right;display:flex;align-items:center;gap:9px}.flow-right>strong{font-size:17px}.flow-right .badge{margin:0}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.insight-card{padding:20px}.insight-head,.insight-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.insight-head>span,.insight-foot>span{font-size:10px;color:var(--muted)}.insight-card h3{font-family:Georgia,serif;font-weight:500;font-size:20px;margin:15px 0 8px}.insight-card p{font-size:12px;color:var(--muted);line-height:1.55;min-height:74px}.recommend{background:#f6f7fb;border-radius:11px;padding:12px;margin:14px 0}.recommend strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.recommend span{font-size:11px;line-height:1.45;color:#56657d}.insight-foot{border-top:1px solid #eef1f6;padding-top:12px}
@media(max-width:1180px){.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.insight-grid{grid-template-columns:1fr}.flow-row{align-items:flex-start}.flow-right{flex-direction:column;align-items:flex-end}}

/* AI Intelligence — evidence-led management view */
.ai-management-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px;margin-bottom:16px}
.ai-management-brief,.ai-signal-panel{padding:22px}
.ai-management-brief h3{font-family:Georgia,serif;font-size:27px;line-height:1.18;font-weight:500;letter-spacing:-.025em;margin:18px 0 9px;max-width:850px}
.ai-management-brief>p{font-size:13px;line-height:1.65;color:var(--muted);max-width:840px}
.ai-brief-meta{display:flex;align-items:center;gap:10px;margin-top:18px;flex-wrap:wrap}.confidence-line{font-size:11px;color:var(--muted)}.confidence-line strong{color:var(--ink);font-size:13px}
.ai-recommendation{margin-top:18px;padding:14px 16px;border-left:3px solid var(--purple);background:#f7f5ff;border-radius:0 10px 10px 0}.ai-recommendation strong{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}.ai-recommendation span{font-size:12px;color:#4e5c74;line-height:1.5}
.evidence-chips,.priority-evidence{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.evidence-chips span,.priority-evidence span{font-size:9px;font-weight:700;color:#55637a;border:1px solid #e0e5ee;background:#fafbfd;border-radius:999px;padding:5px 8px}
.signal-list{display:grid;gap:0;margin-top:14px}.signal-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #edf0f5}.signal-row:last-child{border-bottom:0}.signal-row strong{font-size:11px}.signal-row span{display:block;color:var(--muted);font-size:9px;margin-top:3px}.signal-row b{font-size:22px;letter-spacing:-.04em}
.ai-note{margin-top:14px;padding:12px;border-radius:10px;background:#f4f6f9;color:#68758a;font-size:10px;line-height:1.5}
.ai-priority-section{min-height:0}.priority-list{display:grid}.priority-insight{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:24px;padding:18px 0;border-bottom:1px solid #edf0f5}.priority-insight:last-child{border-bottom:0}.priority-title-row{display:flex;align-items:center;gap:9px}.priority-title-row>strong{font-size:13px}.priority-main>p{font-size:11px;color:var(--muted);line-height:1.55;margin:8px 0 0}.priority-action{display:grid;grid-template-columns:74px 1fr auto;align-items:start;gap:14px;padding-left:20px;border-left:1px solid #edf0f5}.priority-action>div>strong{font-size:9px;text-transform:uppercase;letter-spacing:.06em}.priority-action>div>p{font-size:10px;color:#59677d;line-height:1.45;margin:5px 0 0}.confidence-block{text-align:center}.confidence-block b{display:block;font-size:22px;line-height:1}.confidence-block span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
@media(max-width:1100px){.ai-management-grid{grid-template-columns:1fr}.priority-insight{grid-template-columns:1fr}.priority-action{padding-left:0;border-left:0;border-top:1px solid #edf0f5;padding-top:14px}}
@media(max-width:720px){.priority-action{grid-template-columns:62px 1fr}.priority-action>.badge{grid-column:1/-1;justify-self:start}.ai-management-brief h3{font-size:23px}}

/* Sprint 3 — full interactive operations */
.hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hero-actions .primary-btn svg{width:16px;height:16px}
.primary-btn,.secondary-btn,.text-btn,.icon-btn,.table-link{border:0;font:inherit}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:9px 14px;border-radius:10px;background:linear-gradient(135deg,#3158ef,#5a6dff);color:#fff;font-size:11px;font-weight:760;box-shadow:0 7px 18px rgba(62,99,244,.18)}.primary-btn:hover{filter:brightness(1.02)}.primary-btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.primary-btn.small{min-height:32px;padding:7px 10px;font-size:10px}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:9px 13px;border:1px solid #dce3ef;border-radius:10px;background:#fff;color:#34415b;font-size:11px;font-weight:720}.secondary-btn:hover{border-color:#c6d1e4;background:#f9fbfe}.secondary-btn.small{min-height:32px;padding:7px 10px;font-size:10px}.text-btn,.table-link{background:transparent;color:var(--blue);padding:0;font-size:11px;font-weight:720;text-align:left}.icon-btn{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff;color:#526079}.icon-btn svg{width:17px;height:17px}.spacer{flex:1}.muted-copy{color:var(--muted);font-size:12px;line-height:1.55}

.command-map-grid{grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);margin-bottom:16px}.map-card,.drill-card{padding:18px;min-height:470px}.portfolio-map{width:100%;height:auto;display:block;border:1px solid #edf1f7;border-radius:16px;background:#f8fbff}.geo-country{fill:#f2f5f9;stroke:#cbd6e4;stroke-width:1.15}.geo-country.geo-focus{fill:#eaf1fb;stroke:#9fb6d3;stroke-width:1.4}.map-pin{cursor:pointer;outline:none}.map-leader{stroke:#7286a6;stroke-width:1.2;stroke-dasharray:3 3;opacity:.8;pointer-events:none}.map-origin{fill:#7286a6;stroke:#fff;stroke-width:1.5;pointer-events:none}.map-pin .map-pulse{fill:rgba(62,99,244,.08);stroke:rgba(62,99,244,.12);stroke-width:1;transition:.18s}.map-pin:hover .map-pulse,.map-pin.active .map-pulse,.map-pin:focus .map-pulse{fill:rgba(62,99,244,.16);stroke:rgba(62,99,244,.28);transform-origin:center}.map-dot{stroke:#fff;stroke-width:3}.map-dot.health-good{fill:#18a66a}.map-dot.health-watch{fill:#e8a11a}.map-dot.health-risk{fill:#df4454}.map-score{fill:#fff;font:700 9px Inter,system-ui,sans-serif;pointer-events:none}.map-label{fill:#263a57;font:700 10px Inter,system-ui,sans-serif;pointer-events:none;paint-order:stroke;stroke:#f8fbff;stroke-width:4px;stroke-linejoin:round}.map-country{fill:#6d7e97;font:700 9px Inter,system-ui,sans-serif;letter-spacing:.16em;paint-order:stroke;stroke:#f8fbff;stroke-width:3px}.map-water{fill:#8ea0b7;font:700 9px Inter,system-ui,sans-serif;letter-spacing:.18em}.map-note{fill:#8b99ac;font:500 8px Inter,system-ui,sans-serif}
.drill-empty{height:410px;display:grid;place-items:center;align-content:center;text-align:center;padding:28px}.drill-empty .icon-chip{width:54px;height:54px;border-radius:16px}.drill-empty .icon-chip svg{width:24px;height:24px}.drill-empty h3{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:15px 0 6px}.drill-empty p{max-width:330px;color:var(--muted);font-size:12px;line-height:1.55}.drill-breadcrumb{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-bottom:16px}.drill-breadcrumb button{border:0;background:transparent;padding:0;color:var(--blue);font-weight:720}.drill-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:12px 0}.drill-title h3{margin:0;font-family:Georgia,serif;font-size:23px;font-weight:500}.drill-title p{margin:4px 0 0;color:var(--muted);font-size:10px}.site-drill-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:18px}.site-drill-summary>div{padding:12px;border-radius:12px;background:#f7f9fc;border:1px solid #edf1f6}.site-drill-summary span{display:block;color:var(--muted);font-size:9px}.site-drill-summary strong{display:block;font-size:20px;letter-spacing:-.03em;margin-top:5px}.drill-list{display:grid;gap:8px}.drill-item{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:10px;border:1px solid #edf1f6;border-radius:12px;background:#fff;text-align:left;color:var(--ink)}.drill-item:hover{background:#f9fbff;border-color:#dce5f5}.drill-item>.icon-chip{width:34px;height:34px}.drill-item>div:nth-child(2){min-width:0}.drill-item strong{display:block;font-size:11px}.drill-item span{display:block;color:var(--muted);font-size:9px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drill-item>svg{width:15px;height:15px;color:#9aa8bd}.drill-value{font-size:14px;font-weight:760;color:#25334e}.asset-drill-head{display:flex;align-items:center;gap:11px;margin-bottom:15px}.asset-drill-head>div:nth-child(2){min-width:0;flex:1}.asset-drill-head h3{margin:0;font-size:15px}.asset-drill-head p{margin:4px 0 0;color:var(--muted);font-size:10px}.asset-live-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.asset-live-grid>div{padding:11px;border:1px solid #edf1f6;border-radius:11px;background:#fafbfd}.asset-live-grid span{display:block;color:var(--muted);font-size:9px}.asset-live-grid strong{display:block;font-size:20px;margin-top:4px}.asset-live-grid small{display:block;color:var(--muted-2);font-size:8px;margin-top:3px}.asset-spark{margin-bottom:12px}.drill-section{border-top:1px solid #edf1f6;padding-top:12px;margin-top:12px}.drill-section>strong{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#59677c}.mini-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #f1f3f7;font-size:10px}.mini-row:last-child{border-bottom:0}.mini-row small{color:var(--muted)}.link-row{width:100%;border:0;background:transparent;text-align:left;color:var(--ink)}
.command-bottom{margin-top:0}.ai-command{padding:22px;background:linear-gradient(145deg,#111a36,#19284e);color:#fff;min-height:300px}.ai-command .ai-kicker{color:#bcb2ff}.ai-command-site{margin-top:16px;color:#88a1d7;font:700 9px Inter,system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}.ai-command h3{font-family:Georgia,serif;font-size:24px;font-weight:500;line-height:1.2;margin:6px 0 8px}.ai-command>p{color:#aebbd7;font-size:12px;line-height:1.55}.ai-command-list{display:grid;gap:8px;margin:18px 0}.ai-command-list button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);border-radius:10px;padding:9px;color:white;text-align:left}.ai-command-list strong{font-size:10px;line-height:1.2}.ai-command-list strong em{display:block;color:#92a8d6;font-style:normal;font-size:8px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}.ai-command-list small{color:#9fadd0;font-size:8px}.ai-command .primary-btn{margin-top:2px}

.site-monitor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.site-monitor-card{padding:19px}.site-temp-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:14px 0}.site-temp-strip>div{padding:9px 8px;border-radius:10px;background:#f7f9fc;border:1px solid #edf1f6;min-width:0}.site-temp-strip span{display:block;font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-temp-strip strong{display:block;font-size:15px;margin-top:4px}.interactive-card{border:1px solid var(--line);text-align:left;color:var(--ink);width:100%;transition:.18s ease}.interactive-card:hover{border-color:#cfd9ea;transform:translateY(-1px);box-shadow:0 16px 40px rgba(28,44,80,.11)}

.active-work{min-height:0;margin-bottom:16px}.active-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.active-work-card{border:1px solid #e3e8f1;border-radius:12px;background:#fafbfd;padding:12px;text-align:left;color:var(--ink)}.active-work-card strong{display:block;font-size:11px;margin:9px 0 4px}.active-work-card small{display:block;color:var(--muted);font-size:9px}.mini-progress{height:5px;background:#e8edf4;border-radius:99px;overflow:hidden;margin-top:10px}.mini-progress i{display:block;height:100%;background:var(--blue);border-radius:99px}.asset-table .table-link{max-width:380px}.asset-table{display:table}.section-card{overflow:auto}

.action-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}.action-column{background:#edf2f8;border:1px solid #e1e7ef;border-radius:14px;padding:10px;min-height:250px}.action-col-head{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 10px;text-transform:capitalize}.action-col-head strong{font-size:10px}.action-col-head span{min-width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#fff;font-size:9px;font-weight:800}.action-card{width:100%;display:block;border:1px solid #e3e8f0;border-radius:11px;background:#fff;padding:11px;margin-bottom:8px;text-align:left;color:var(--ink)}.action-card>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.action-card>div small{color:var(--muted);font-size:8px;text-align:right}.action-card>strong{display:block;font-size:10px;line-height:1.4;margin:9px 0 7px}.action-card>span{display:block;color:var(--muted);font-size:8px}.column-empty{padding:20px 8px;text-align:center;color:var(--muted-2);font-size:9px}

.insight-list{display:grid;gap:14px}.insight-evidence-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(230px,.45fr) minmax(290px,.7fr);gap:20px;align-items:start;padding:20px}.insight-title h3{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:12px 0 7px}.insight-title p,.insight-response p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.insight-proof{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:start;border-left:1px solid #edf0f5;padding-left:18px}.insight-proof>div>strong,.insight-response>strong{font-size:9px;text-transform:uppercase;letter-spacing:.07em}.confidence-ring{width:64px;height:64px;display:grid;place-items:center;align-content:center;border-radius:50%;border:5px solid #e5e1ff;background:#faf9ff;color:var(--purple)}.confidence-ring strong{font-size:17px;line-height:1}.confidence-ring span{font-size:7px;color:var(--muted);margin-top:2px}.insight-response{border-left:1px solid #edf0f5;padding-left:18px}.insight-response p{margin:7px 0 12px}.inline-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}

.modal-backdrop{position:fixed;inset:0;z-index:80;background:rgba(7,14,31,.52);backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px;overflow:auto}.modal-panel{width:min(720px,100%);max-height:calc(100vh - 48px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 28px 90px rgba(7,14,31,.28);border:1px solid rgba(255,255,255,.5)}.modal-panel.wide{width:min(1120px,100%)}.modal-head{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #edf1f6;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}.modal-head h2{font-family:Georgia,serif;font-size:24px;font-weight:500;margin:0}.modal-head p{font-size:10px;color:var(--muted);margin:4px 0 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px}.form-grid label{display:grid;gap:6px;color:#536176;font-size:10px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea,.audit-evidence input,.audit-evidence textarea{width:100%;border:1px solid #dce3ee;border-radius:10px;background:#fff;color:var(--ink);padding:10px 11px;outline:none;font:inherit;font-size:11px}.form-grid textarea,.audit-evidence textarea{min-height:76px;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.audit-evidence input:focus,.audit-evidence textarea:focus{border-color:#8fa3ff;box-shadow:0 0 0 3px rgba(62,99,244,.09)}.span-2{grid-column:1/-1}.modal-actions{display:flex;align-items:center;gap:9px;justify-content:flex-end;padding-top:4px}.sticky-actions{position:sticky;bottom:0;z-index:3;padding:12px 18px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid #edf1f6}.status-text{display:flex;align-items:center}.section-tabs{display:flex;gap:6px;overflow:auto;padding:14px 18px 8px;border-bottom:1px solid #edf1f6}.section-tabs button{flex:none;border:1px solid #dfe5ee;background:#fff;border-radius:9px;padding:8px 10px;color:#67758b;font-size:9px;font-weight:700}.section-tabs button.active{background:#edf1ff;border-color:#cbd5ff;color:#3153d9}.audit-items{display:grid;gap:10px;padding:16px 18px 20px}.audit-item{border:1px solid #e5eaf2;border-radius:13px;padding:14px;background:#fff}.audit-q{display:flex;align-items:flex-start;gap:10px}.audit-q>span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#f0f3f8;color:#607089;font-size:9px;font-weight:800;flex:none}.audit-q strong{display:block;font-size:11px;line-height:1.45}.critical-note{display:inline-block;margin-top:5px;color:#ad7111;background:#fff5df;border-radius:99px;padding:3px 6px;font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.result-buttons{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.result-btn{border:1px solid #dce3ed;background:#fff;color:#627086;border-radius:9px;padding:7px 10px;font-size:9px;font-weight:760}.result-btn.selected.pass{background:#eaf8f1;border-color:#b9e6d0;color:#137b52}.result-btn.selected.fail{background:#fff0f1;border-color:#f1c2c7;color:#b12f3e}.result-btn.selected.na{background:#f0f2f5;color:#59667b}.result-btn.selected.observation{background:#fff6e3;border-color:#f4d599;color:#8a5d12}.audit-evidence{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto auto;gap:7px;align-items:end}.audit-evidence textarea{min-height:58px}.run-summary,.history-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:16px 18px 5px}.run-summary>div,.history-summary>div{border:1px solid #e8edf4;background:#f8fafc;border-radius:11px;padding:10px}.run-summary span,.history-summary span{display:block;font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.run-summary strong,.history-summary strong{display:block;font-size:16px;margin-top:4px}.history-summary{padding:20px}.action-modal-title{display:flex;align-items:center;gap:10px}.action-modal-title h3{font-family:Georgia,serif;font-size:20px;font-weight:500;margin:0}.workflow-line{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.workflow-line span{padding:9px;border-radius:9px;background:#f7f9fc;border:1px solid #e8edf4;color:#617087;font-size:8px;text-align:center}

@media(max-width:1250px){.command-map-grid{grid-template-columns:1fr}.drill-card{min-height:0}.site-monitor-grid{grid-template-columns:1fr}.active-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.action-board{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-evidence-card{grid-template-columns:1fr 1fr}.insight-response{grid-column:1/-1;border-left:0;border-top:1px solid #edf0f5;padding:14px 0 0}.audit-evidence{grid-template-columns:1fr 1fr}.audit-evidence .primary-btn,.audit-evidence .secondary-btn{justify-self:start}}
@media(max-width:820px){.command-map-grid{grid-template-columns:1fr}.map-card,.drill-card{padding:14px}.portfolio-map{min-width:620px}.map-card{overflow:auto}.site-drill-summary,.asset-live-grid{grid-template-columns:1fr 1fr}.site-temp-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.active-work-grid,.action-board{grid-template-columns:1fr}.insight-evidence-card{grid-template-columns:1fr}.insight-proof,.insight-response{border-left:0;padding-left:0;border-top:1px solid #edf0f5;padding-top:12px}.modal-backdrop{padding:8px}.modal-panel{max-height:calc(100vh - 16px)}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.run-summary,.history-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-evidence{grid-template-columns:1fr}.workflow-line{grid-template-columns:1fr 1fr}.section-card{overflow:auto}.asset-table{min-width:720px}}
