
:root{--bg:#02070c;--panel:#07131d;--line:#0d3a54;--cyan:#00d9ff;--green:#20e6a5;--amber:#ffb23f;--red:#ff5b4d;--text:#eef9ff;--muted:#7293a6}
*{box-sizing:border-box}html,body{margin:0;background:radial-gradient(circle at 50% -10%,#0b2435 0,#03090f 35%,#02070c 70%);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}.shell{padding:18px;max-width:1800px;margin:auto}
.topbar{display:grid;grid-template-columns:1.2fr 1.4fr 1.5fr;gap:18px;align-items:center;margin-bottom:18px}.brand{display:flex;gap:14px;align-items:center}.brand h1{font-size:22px;letter-spacing:.08em;margin:0}.sub{font-size:11px;letter-spacing:.2em;color:var(--cyan);margin-top:4px}
.orb{width:44px;height:44px;border-radius:50%;border:2px solid var(--cyan);box-shadow:0 0 22px #00d9ff66}.top-status,.top-meta,.panel,.stats-strip,.footer{border:1px solid var(--line);background:linear-gradient(180deg,#071621ee,#051019f0);box-shadow:inset 0 0 22px #00d9ff08}.top-status{height:48px;display:flex;align-items:center;padding:0 18px;color:var(--green);font-weight:700}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:10px}.good{background:var(--green);box-shadow:0 0 12px var(--green)}.bad{background:var(--red);box-shadow:0 0 12px var(--red)}.top-meta{height:48px;display:flex;align-items:center;justify-content:space-around;font-size:10px;color:var(--muted)}.top-meta b{color:#dceef8;margin-left:6px}
.layout{display:grid;grid-template-columns:1.05fr 2.2fr 1.05fr;gap:14px}.left-col,.right-col,.center-col{display:flex;flex-direction:column;gap:12px}.panel{padding:14px;position:relative;overflow:hidden}.panel-title{font-size:11px;color:#42cfff;font-weight:700;letter-spacing:.09em;margin-bottom:12px}
.hero-gauge{display:flex;gap:16px;align-items:center}.ring,.mini-ring{--pct:0;position:relative;border-radius:50%;background:conic-gradient(var(--cyan) calc(var(--pct)*3.6deg),#102633 0);box-shadow:0 0 18px #00d9ff22}.ring{width:118px;height:118px}.mini-ring{width:92px;height:92px;display:grid;place-items:center}.ring:before,.mini-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#061019;border:1px solid #143b4f}.ring-inner{position:absolute;inset:10px;display:grid;place-content:center;text-align:center;z-index:2}.ring-value{font-size:26px;font-weight:800}.ring-label{font-size:9px;color:var(--cyan);margin-top:3px}.mini-ring span{position:relative;z-index:2;font-size:20px;font-weight:800}.overview-list{flex:1;font-size:10px}.overview-list div{display:flex;justify-content:space-between;padding:6px 0;color:var(--muted)}.overview-list b{color:#eaf8ff}
.metric-row{display:flex;gap:16px;align-items:center}.metric-copy h3{font-size:14px;margin:0}.metric-copy p{color:var(--muted);font-size:11px}.sync-state{display:flex;align-items:center;gap:16px}.sync-orb{width:55px;height:55px;border:6px solid #123246;border-top-color:var(--cyan);border-radius:50%;animation:spin 2.4s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.big{font-size:20px;font-weight:800}.muted{color:var(--muted)}
.resources{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.resources div{border-top:1px solid #0e3044;padding-top:8px}.resources span{display:block;color:var(--muted);font-size:9px}.resources b{font-size:16px;color:#dff8ff}
.network-map{height:470px;position:relative;overflow:hidden;background:radial-gradient(circle at center,#0b3250 0,#06131d 45%,#030a10 75%);border-top:1px solid #0e3850}.grid{position:absolute;inset:0;background-image:linear-gradient(#0f426333 1px,transparent 1px),linear-gradient(90deg,#0f426333 1px,transparent 1px);background-size:32px 32px;transform:perspective(700px) rotateX(58deg) scale(1.25);transform-origin:center 70%;opacity:.55}.orbit{position:absolute;left:50%;top:49%;border:1px solid #17dfff55;border-radius:50%;transform:translate(-50%,-50%)}.o1{width:300px;height:150px}.o2{width:470px;height:235px}.o3{width:650px;height:330px}.core-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;border:2px solid var(--cyan);display:grid;place-items:center;box-shadow:0 0 40px #00d9ff88;color:#fff;font-weight:800}.core-pulse{position:absolute;inset:-20px;border:1px solid #00d9ff55;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{50%{transform:scale(1.18);opacity:.3}}.node{position:absolute;padding:6px 10px;border:1px solid #1fcdf088;background:#071724cc;font-size:9px;color:#a7efff}.n1{left:22%;top:26%}.n2{right:18%;top:30%}.n3{left:18%;bottom:20%}.n4{right:24%;bottom:18%}.link{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent)}.l1{left:27%;top:31%;width:28%;transform:rotate(20deg)}.l2{left:50%;top:50%;width:27%;transform:rotate(-18deg)}.l3{left:23%;bottom:27%;width:30%;transform:rotate(-18deg)}.l4{left:50%;top:52%;width:28%;transform:rotate(20deg)}.map-caption{position:absolute;bottom:16px;left:16px;background:#03101acc;border:1px solid #0f4460;padding:10px 12px}.map-caption b{display:block;font-size:11px;color:var(--cyan)}.map-caption span{font-size:9px;color:var(--muted)}
.stats-strip{display:grid;grid-template-columns:repeat(5,1fr);padding:12px 14px}.stats-strip div{border-right:1px solid #12384f;padding:0 12px}.stats-strip div:last-child{border-right:0}.stats-strip span{display:block;font-size:9px;color:var(--muted)}.stats-strip b{font-size:18px}.bottom-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}.barline{display:grid;grid-template-columns:70px 1fr 48px;align-items:center;gap:10px;margin:11px 0;font-size:10px}.barline div{height:5px;background:#0c2838}.barline i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0059ff,var(--cyan))}
.empty-state{min-height:90px;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty-state b{color:#dff5ff;font-size:12px}.empty-state span{font-size:9px;margin-top:6px}.tall{min-height:160px}.quarantine{display:flex;gap:16px;align-items:center}.danger-ring{width:88px;height:88px;border-radius:50%;border:8px solid #421919;border-top-color:var(--red);display:grid;place-items:center}.danger-ring span{font-size:24px;font-weight:800}.quarantine b{display:block;color:var(--amber);margin:4px 0}.quarantine small{color:var(--muted)}
.capture{margin-top:12px}.capture textarea{width:100%;min-height:100px;background:#06111a;border:1px solid #173f56;color:#eaf8ff;padding:12px}.capture-actions{display:flex;align-items:center;gap:14px;margin-top:10px}.capture button{background:transparent;color:var(--cyan);border:1px solid var(--cyan);padding:9px 14px;font-weight:700}.footer{margin-top:12px;display:grid;grid-template-columns:repeat(4,1fr);padding:10px 14px;font-size:9px;color:var(--muted)}.footer b{color:var(--green);margin-left:6px}
@media(max-width:1200px){.layout{grid-template-columns:1fr}.topbar{grid-template-columns:1fr}.network-map{height:360px}}

/* MVP PANEL ALIGNMENT + INTERNAL SCROLLING */

.layout {
    align-items: start;
}

.left-col,
.center-col,
.right-col {
    min-width: 0;
}

.panel {
    min-width: 0;
}

.right-col .panel.tall {
    height: 220px;
    overflow: hidden;
}

#audit-state,
.event-log {
    max-height: 170px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 6px;
}

#event-log {
    max-height: 170px;
    overflow-y: auto;
    overflow-x: hidden;
}

#audit-state::-webkit-scrollbar,
.event-log::-webkit-scrollbar,
#event-log::-webkit-scrollbar {
    width: 6px;
}

#audit-state::-webkit-scrollbar-track,
.event-log::-webkit-scrollbar-track,
#event-log::-webkit-scrollbar-track {
    background: #061019;
}

#audit-state::-webkit-scrollbar-thumb,
.event-log::-webkit-scrollbar-thumb,
#event-log::-webkit-scrollbar-thumb {
    background: #0d5978;
    border-radius: 6px;
}

#audit-state::-webkit-scrollbar-thumb:hover,
.event-log::-webkit-scrollbar-thumb:hover,
#event-log::-webkit-scrollbar-thumb:hover {
    background: #00d9ff;
}

/* Keep dashboard blocks visually aligned */
.left-col > .panel,
.right-col > .panel {
    width: 100%;
}

.right-col .panel:nth-child(1) {
    min-height: 135px;
}

.right-col .panel:nth-child(2) {
    min-height: 220px;
}

.right-col .panel:nth-child(3) {
    min-height: 150px;
}

.right-col .panel:nth-child(4) {
    min-height: 180px;
}

/* Page itself can still scroll normally */
html,
body {
    overflow-x: hidden;
    overflow-y: auto;
}

.quarantine-details {
    margin-top: 12px;
    max-height: 120px;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 6px;
    border-top: 1px solid #0d3a54;
}

.quarantine-details::-webkit-scrollbar {
    width: 6px;
}

.quarantine-details::-webkit-scrollbar-track {
    background: #061019;
}

.quarantine-details::-webkit-scrollbar-thumb {
    background: #0d5978;
    border-radius: 6px;
}

.node {
    min-width: 120px;
    line-height: 1.5;
    text-align: left;
}

.node b {
    color: #ffffff;
    font-size: 10px;
}

.map-caption span {
    display: block;
    margin-top: 4px;
    line-height: 1.5;
}

/* COMMAND CENTER LAYOUT V2 */

.shell {
    max-width: 1600px;
    padding: 14px;
}

.layout {
    grid-template-columns: 0.95fr 2fr 0.95fr;
    gap: 12px;
}

.panel {
    padding: 12px;
}

.network-map {
    height: 400px;
}

.right-col .panel:nth-child(2) {
    height: 190px;
}

.right-col .panel:nth-child(3) {
    min-height: 170px;
}

.event-wide {
    margin-top: 12px;
    width: 100%;
}

.event-wide .event-log {
    max-height: 180px;
    overflow-y: auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px 18px;
}

.event-wide .event {
    border: 1px solid #0c2d40;
    padding: 8px;
    min-height: 58px;
}

.capture {
    margin-top: 12px;
}

@media (max-width: 1400px) {
    .layout {
        grid-template-columns: 1fr 1.8fr 1fr;
    }

    .network-map {
        height: 360px;
    }
}

@media (max-width: 1100px) {
    .layout {
        grid-template-columns: 1fr;
    }

    .event-wide .event-log {
        grid-template-columns: 1fr;
    }
}

.founder-review {
  margin-top: 18px;
}

.logo-review-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 12px;
}

.logo-candidate {
  display: block;
  border: 1px solid rgba(120,220,255,.22);
  padding: 10px;
  cursor: pointer;
}

.logo-candidate img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  background: rgba(255,255,255,.03);
  display: block;
}

.logo-candidate span {
  display: block;
  margin-top: 8px;
  text-align: center;
  font-size: 12px;
}

.logo-candidate input {
  margin-bottom: 8px;
}

.review-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
}
