:root {
  color-scheme: dark;
  --bg: #040a08;
  --surface: #07130f;
  --surface-2: #0a1b15;
  --surface-3: #0e261d;
  --text: #edf7f1;
  --muted: #93a99f;
  --subtle: #60776d;
  --line: rgba(151, 191, 173, .15);
  --line-strong: rgba(151, 191, 173, .28);
  --green: #4ee6a8;
  --green-dark: #157b58;
  --green-soft: rgba(78, 230, 168, .11);
  --gold: #e4b75d;
  --gold-soft: rgba(228, 183, 93, .11);
  --blue: #70bdff;
  --blue-soft: rgba(112, 189, 255, .11);
  --violet: #aa96ff;
  --violet-soft: rgba(170, 150, 255, .11);
  --orange: #f2a65a;
  --danger: #ff7d69;
  --danger-soft: rgba(255, 125, 105, .11);
  --shadow: 0 28px 75px rgba(0, 0, 0, .34);
  --radius: 18px;
  font-family: "Afacad Flux", Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--bg); scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; color: var(--text); background: radial-gradient(circle at 65% -15%, rgba(63, 153, 115, .18), transparent 35%), var(--bg); }
button, a { color: inherit; font: inherit; }
button { border: 0; }
a { text-decoration: none; }
[hidden] { display: none !important; }

.demo-app { min-height: 100vh; }
.demo-topbar { position: sticky; top: 0; z-index: 1000; display: grid; grid-template-columns: minmax(245px, 1fr) auto minmax(245px, 1fr); gap: 20px; align-items: center; height: 72px; padding: 0 24px; border-bottom: 1px solid var(--line); background: rgba(4, 10, 8, .94); backdrop-filter: blur(18px); }
.demo-brand { display: inline-flex; align-items: center; width: fit-content; }
.demo-brand img { display: block; width: 215px; max-height: 45px; object-fit: contain; object-position: left center; }
.demo-topbar__title { display: flex; flex-direction: column; gap: 3px; align-items: center; letter-spacing: .11em; }
.demo-topbar__title span { color: var(--green); font-size: 9px; font-weight: 850; }
.demo-topbar__title strong { font-size: 11px; }
.demo-topbar__actions { display: flex; gap: 9px; align-items: center; justify-content: flex-end; }
.demo-system { padding: 8px 11px; border: 1px solid rgba(78, 230, 168, .23); border-radius: 99px; color: #aff4d5; background: var(--green-soft); font-size: 8px; font-weight: 850; letter-spacing: .09em; white-space: nowrap; }
.demo-system i, .context-card header i { display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(78, 230, 168, .08), 0 0 12px var(--green); }
.icon-button { display: grid; width: 35px; height: 35px; place-items: center; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); background: rgba(255,255,255,.025); cursor: pointer; font-size: 18px; }
.icon-button:hover { border-color: rgba(78,230,168,.4); color: var(--green); }

.demo-disclosure { display: grid; grid-template-columns: 245px minmax(0,1fr) auto; gap: 20px; align-items: center; min-height: 58px; padding: 9px 24px; border-bottom: 1px solid rgba(228,183,93,.22); background: linear-gradient(90deg, rgba(228,183,93,.1), rgba(228,183,93,.025)); }
.demo-disclosure > div { display: flex; gap: 9px; align-items: center; color: #ffe4a9; }
.demo-disclosure > div i { width: 9px; height: 9px; border: 2px solid var(--gold); border-radius: 50%; box-shadow: 0 0 0 5px rgba(228,183,93,.08); }
.demo-disclosure strong { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.demo-disclosure p { margin: 0; color: #c2b697; font-size: 10px; line-height: 1.45; }
.demo-disclosure > span { color: #9d916f; font-size: 7px; font-weight: 850; letter-spacing: .09em; white-space: nowrap; }

.demo-stage { display: grid; grid-template-columns: 220px minmax(650px,1fr) 240px; min-height: calc(100vh - 130px); }
.demo-rail { display: flex; flex-direction: column; gap: 5px; padding: 20px 13px 16px; border-right: 1px solid var(--line); background: rgba(6,17,13,.74); }
.demo-rail__heading { display: flex; justify-content: space-between; padding: 0 9px 11px; color: var(--muted); font-size: 8px; letter-spacing: .11em; }
.demo-rail__heading b { color: var(--green); }
.demo-step-button { display: grid; grid-template-columns: 27px 1fr 14px; gap: 8px; align-items: center; width: 100%; min-height: 54px; padding: 7px 8px; border: 1px solid transparent; border-radius: 11px; background: transparent; cursor: pointer; text-align: left; transition: .2s ease; }
.demo-step-button > i { display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid var(--line-strong); border-radius: 8px; color: var(--subtle); font-size: 8px; font-style: normal; font-weight: 900; }
.demo-step-button span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.demo-step-button span b { font-size: 10px; }
.demo-step-button span small { overflow: hidden; color: var(--subtle); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.demo-step-button em { color: transparent; font-size: 9px; font-style: normal; }
.demo-step-button:hover { background: rgba(255,255,255,.025); }
.demo-step-button.is-active { border-color: rgba(78,230,168,.22); background: linear-gradient(90deg, rgba(78,230,168,.12), rgba(78,230,168,.025)); box-shadow: inset 3px 0 var(--green); }
.demo-step-button.is-active > i { border-color: var(--green); color: #041c13; background: var(--green); }
.demo-step-button.is-active span b { color: #c3f9e1; }
.demo-step-button.is-complete em { color: var(--green); }
.demo-rail__boundary { margin-top: auto; padding: 12px; border: 1px dashed rgba(228,183,93,.25); border-radius: 11px; background: rgba(228,183,93,.03); }
.demo-rail__boundary strong { display: block; color: var(--gold); font-size: 7px; letter-spacing: .1em; }
.demo-rail__boundary span { display: block; margin-top: 5px; color: #958b70; font-size: 8px; line-height: 1.4; }

.demo-workspace { min-width: 0; padding: 18px clamp(15px,2vw,28px) 22px; overflow: hidden; }
.demo-workspace__status { display: flex; min-height: 30px; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 11px; }
.demo-workspace__status > div { display: flex; gap: 9px; align-items: center; }
.demo-workspace__status b { font-size: 9px; letter-spacing: .09em; }
.demo-workspace__status > div:last-child { flex-direction: column; gap: 2px; align-items: flex-end; color: var(--muted); font-size: 8px; letter-spacing: .06em; }
.demo-workspace__status > div:last-child i { color: var(--subtle); font-size: 6px; font-style: normal; }
.tier-badge { display: inline-flex; align-items: center; width: fit-content; min-height: 22px; padding: 4px 8px; border: 1px solid currentColor; border-radius: 99px; font-size: 6px; font-weight: 900; letter-spacing: .1em; white-space: nowrap; }
.tier-badge.is-actual { color: var(--green); background: var(--green-soft); }
.tier-badge.is-simulation { color: var(--blue); background: var(--blue-soft); }
.tier-badge.is-device { color: var(--violet); background: var(--violet-soft); }

.demo-panels { min-height: 620px; }
.demo-panel { position: relative; min-height: 620px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, rgba(15,43,33,.9), rgba(6,17,13,.94)); box-shadow: var(--shadow); animation: panelIn .36s ease both; }
.demo-panel::after { position: absolute; z-index: 0; top: -190px; right: -190px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(78,230,168,.07), transparent 70%); content: ""; pointer-events: none; }
.demo-panel > * { position: relative; z-index: 1; }
@keyframes panelIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.panel-heading { display: flex; min-height: 91px; align-items: flex-start; justify-content: space-between; gap: 22px; padding: 27px 29px 21px; border-bottom: 1px solid var(--line); }
.panel-heading > div:first-child { min-width: 0; }
.panel-heading > div:first-child > span, .panel-heading > span:first-child { display: block; margin-bottom: 6px; color: var(--green); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.panel-heading h1 { max-width: 720px; margin: 0; font-size: clamp(24px,2.55vw,38px); line-height: 1.03; letter-spacing: -.035em; }
.panel-heading p { max-width: 750px; margin: 7px 0 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.eyebrow, .section-label { display: block; color: var(--green); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.section-label { margin-bottom: 11px; color: var(--gold); }
.status-pill, .human-rule { display: inline-flex; min-height: 34px; align-items: center; padding: 0 11px; border: 1px solid var(--line-strong); border-radius: 9px; color: var(--muted); background: rgba(255,255,255,.025); font-size: 7px; font-weight: 900; letter-spacing: .08em; white-space: nowrap; }
.status-pill.is-good, .status-pill.is-live { border-color: rgba(78,230,168,.25); color: var(--green); background: var(--green-soft); }
.status-pill.is-live::before { width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 10px var(--green); content: ""; }
.human-rule { border-color: rgba(228,183,93,.25); color: var(--gold); background: var(--gold-soft); }
.button { display: inline-flex; min-height: 39px; align-items: center; justify-content: center; padding: 0 13px; border: 1px solid var(--line-strong); border-radius: 9px; background: rgba(255,255,255,.025); cursor: pointer; font-size: 8px; font-weight: 850; transition: .2s ease; }
.button:hover { border-color: rgba(78,230,168,.45); transform: translateY(-1px); }
.button.is-primary { border-color: var(--green); color: #041d14; background: var(--green); }
.button.is-wide { width: 100%; }

/* Intro */
.intro-panel { padding: 34px 34px 18px; background: radial-gradient(circle at 76% 34%, rgba(78,230,168,.1), transparent 28%), linear-gradient(145deg, rgba(15,43,33,.92), rgba(5,14,11,.96)); }
.intro-hero { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr); gap: 30px; align-items: center; min-height: 325px; }
.intro-copy h1 { margin: 10px 0 14px; font-size: clamp(34px,4vw,62px); line-height: .94; letter-spacing: -.055em; }
.intro-copy h1 em { color: var(--green); font-family: Georgia, serif; font-weight: 400; }
.intro-copy p { max-width: 720px; margin: 0; color: #bdcec5; font-size: 12px; line-height: 1.55; }
.intro-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
.system-orbit { position: relative; width: 310px; height: 310px; justify-self: center; }
.orbit-core { position: absolute; z-index: 4; inset: 94px; display: grid; place-items: center; align-content: center; border: 1px solid rgba(78,230,168,.42); border-radius: 50%; background: radial-gradient(circle, rgba(78,230,168,.14), rgba(5,18,13,.94)); box-shadow: 0 0 55px rgba(78,230,168,.1), inset 0 0 35px rgba(78,230,168,.05); }
.orbit-core strong { color: var(--green); font-size: 26px; letter-spacing: -.03em; }
.orbit-core span { margin-top: 3px; color: var(--muted); font-size: 6px; letter-spacing: .12em; text-align: center; }
.orbit { position: absolute; border: 1px solid rgba(78,230,168,.19); border-radius: 50%; }
.orbit::after { position: absolute; top: -3px; left: 50%; width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 11px var(--green); content: ""; }
.orbit-1 { inset: 62px; animation: orbit 9s linear infinite; }
.orbit-2 { inset: 32px; border-color: rgba(228,183,93,.16); animation: orbit 15s linear infinite reverse; }
.orbit-2::after { background: var(--gold); box-shadow: 0 0 11px var(--gold); }
.orbit-3 { inset: 3px; border-style: dashed; animation: orbit 24s linear infinite; }
@keyframes orbit { to { transform: rotate(360deg); } }
.node { position: absolute; z-index: 5; padding: 5px 7px; border: 1px solid var(--line); border-radius: 99px; color: #c8d8d0; background: rgba(6,17,13,.92); font-size: 6px; letter-spacing: .07em; }
.node.n1 { top: 10px; left: 104px; }.node.n2 { top: 84px; right: -5px; }.node.n3 { right: 12px; bottom: 58px; }.node.n4 { bottom: 5px; left: 128px; }.node.n5 { left: -9px; bottom: 84px; }
.journey-strip { display: grid; grid-template-columns: repeat(10,minmax(0,1fr)); margin-top: 3px; overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: rgba(3,11,8,.42); }
.journey-strip > div { position: relative; display: grid; grid-template-columns: 22px 1fr; gap: 6px; align-items: center; min-height: 72px; padding: 9px 8px; border-right: 1px solid var(--line); }
.journey-strip > div:last-child { border: 0; }
.journey-strip > div:not(:last-child)::after { position: absolute; z-index: 2; right: -3px; width: 5px; height: 5px; border-radius: 50%; background: var(--green); box-shadow: 0 0 8px var(--green); content: ""; }
.journey-strip i { display: grid; width: 21px; height: 21px; place-items: center; border: 1px solid rgba(78,230,168,.25); border-radius: 50%; color: var(--green); font-size: 6px; font-style: normal; font-weight: 900; }
.journey-strip span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }.journey-strip b { font-size: 7px; }.journey-strip small { overflow: hidden; color: var(--subtle); font-size: 6px; text-overflow: ellipsis; white-space: nowrap; }
.panel-footnote { display: flex; gap: 15px; align-items: center; margin-top: 13px; color: var(--muted); font-size: 7px; }.panel-footnote span i { display: inline-block; width: 6px; height: 6px; margin-right: 5px; border-radius: 50%; }.panel-footnote .is-actual { background: var(--green); }.panel-footnote .is-simulation { background: var(--blue); }.panel-footnote .is-device { background: var(--violet); }.panel-footnote b { margin-left: auto; color: var(--gold); letter-spacing: .05em; }

/* Intelligence */
.intelligence-layout { display: grid; grid-template-columns: minmax(280px,.72fr) minmax(430px,1.28fr); gap: 18px; padding: 21px 28px 26px; }
.upload-card, .analysis-console { min-height: 440px; padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.018); }
.upload-drop { display: grid; grid-template-columns: 43px 1fr auto; gap: 11px; align-items: center; min-height: 91px; padding: 13px; border: 1px dashed rgba(112,189,255,.35); border-radius: 11px; background: var(--blue-soft); }
.upload-drop > i { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid rgba(112,189,255,.3); border-radius: 10px; color: var(--blue); font-size: 19px; font-style: normal; }
.upload-drop span { display: flex; min-width: 0; flex-direction: column; gap: 4px; }.upload-drop b { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }.upload-drop small { color: var(--muted); font-size: 7px; }.upload-drop em { color: var(--blue); font-size: 6px; font-style: normal; font-weight: 900; }
.upload-card dl { margin: 15px 0; }.upload-card dl div { display: grid; grid-template-columns: 92px 1fr; gap: 9px; min-height: 40px; align-items: center; border-bottom: 1px solid var(--line); }.upload-card dt { color: var(--subtle); font-size: 7px; }.upload-card dd { margin: 0; font-size: 8px; font-weight: 700; }.upload-card > small { display: block; margin-top: 9px; color: var(--subtle); font-size: 6px; line-height: 1.45; }
.analysis-console header { display: flex; justify-content: space-between; align-items: center; }.analysis-console header > div { display: flex; gap: 9px; align-items: center; }.analysis-console header > div > i { width: 8px; height: 8px; border-radius: 50%; background: var(--subtle); box-shadow: 0 0 0 4px rgba(255,255,255,.025); }.analysis-console.is-running header > div > i { background: var(--green); box-shadow: 0 0 11px var(--green); animation: pulse 1.2s infinite; }.analysis-console header span { display: flex; flex-direction: column; gap: 3px; }.analysis-console header b { font-size: 7px; letter-spacing: .08em; }.analysis-console header small { color: var(--subtle); font-size: 7px; }.analysis-console header > strong { color: var(--green); font-size: 17px; }
.analysis-map { position: relative; height: 104px; margin: 12px 0; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: radial-gradient(circle at 55% 40%, rgba(78,230,168,.09), transparent 30%), #06130f; }.analysis-map::before { position: absolute; inset: 0; opacity: .14; background-image: linear-gradient(rgba(78,230,168,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(78,230,168,.2) 1px,transparent 1px); background-size: 18px 18px; content: ""; }.analysis-map svg { position: absolute; inset: 0; width: 100%; height: 100%; }.analysis-map path:first-child { fill: rgba(228,183,93,.025); stroke: rgba(228,183,93,.42); stroke-width: .7; stroke-dasharray: 2 1; }.analysis-map path:nth-child(2) { fill: rgba(78,230,168,.07); stroke: var(--green); stroke-width: .7; }.analysis-map circle { fill: var(--green); filter: drop-shadow(0 0 5px var(--green)); }.analysis-map span { position: absolute; right: 9px; bottom: 8px; color: var(--muted); font-size: 6px; }
.analysis-console ol { margin: 0; padding: 0; list-style: none; }.analysis-console li { display: grid; grid-template-columns: 22px 1fr auto; gap: 8px; align-items: center; min-height: 34px; border-bottom: 1px solid var(--line); }.analysis-console li > i { display: grid; width: 19px; height: 19px; place-items: center; border: 1px solid var(--line-strong); border-radius: 6px; color: var(--subtle); font-size: 6px; font-style: normal; }.analysis-console li span { color: #b9cac1; font-size: 7px; }.analysis-console li b { color: var(--subtle); font-size: 6px; }.analysis-console li.is-active > i { border-color: var(--blue); color: var(--blue); }.analysis-console li.is-active b { color: var(--blue); }.analysis-console li.is-complete > i { border-color: var(--green); color: #041b13; background: var(--green); }.analysis-console li.is-complete b { color: var(--green); }.analysis-progress { height: 4px; margin-top: 13px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.06); }.analysis-progress i { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--blue),var(--green)); transition: width .35s ease; }
@keyframes pulse { 50% { opacity: .45; transform: scale(.72); } }

/* Analysis result */
.result-layout { display: grid; grid-template-columns: minmax(260px,.58fr) minmax(450px,1.42fr); gap: 20px; padding: 24px 29px 16px; }
.readiness-score, .result-dossier { min-height: 337px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.018); }
.readiness-score { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; text-align: center; }.readiness-score > div { position: relative; display: grid; width: 146px; height: 146px; place-items: center; border-radius: 50%; background: conic-gradient(var(--green) calc(var(--score)*1%),rgba(255,255,255,.06) 0); }.readiness-score > div::after { position: absolute; inset: 7px; border-radius: 50%; background: #092019; content: ""; }.readiness-score strong { position: relative; z-index: 1; font-size: 48px; }.readiness-score small { position: absolute; z-index: 1; margin: 31px 0 0 61px; color: var(--muted); font-size: 8px; }.readiness-score h2 { margin: 15px 0 7px; font-size: 14px; }.readiness-score p { max-width: 260px; margin: 0; color: var(--muted); font-size: 7px; line-height: 1.5; }
.result-dossier { padding: 18px; }.result-dossier > div { display: grid; grid-template-columns: 28px 1fr auto; gap: 9px; align-items: center; min-height: 48px; border-bottom: 1px solid var(--line); }.result-dossier > div > i { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 7px; color: var(--green); background: var(--green-soft); font-size: 6px; font-style: normal; font-weight: 900; }.result-dossier > div span { display: flex; flex-direction: column; gap: 3px; }.result-dossier > div b { font-size: 8px; }.result-dossier > div small { color: var(--muted); font-size: 7px; }.result-dossier > div em { color: var(--green); font-size: 6px; font-style: normal; font-weight: 900; }.result-dossier blockquote { margin: 14px 0 0; padding: 12px; border-left: 2px solid var(--gold); color: #c9bfa8; background: var(--gold-soft); font-size: 8px; line-height: 1.45; }
.handoff-band { display: grid; grid-template-columns: 1fr auto 1fr auto; gap: 14px; align-items: center; margin: 0 29px 24px; padding: 13px; border: 1px solid rgba(228,183,93,.2); border-radius: 11px; background: var(--gold-soft); }.handoff-band > div { display: flex; flex-direction: column; gap: 3px; }.handoff-band span { color: #9d9277; font-size: 6px; letter-spacing: .08em; }.handoff-band b { color: #e7d39d; font-size: 8px; }.handoff-band > i { color: var(--gold); font-style: normal; }

/* Governance */
.governance-flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; padding: 23px 28px 15px; }.governance-flow article { min-height: 206px; padding: 15px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.018); }.governance-flow header { display: grid; grid-template-columns: 27px 1fr auto; gap: 8px; align-items: center; }.governance-flow header i { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 8px; color: #061d14; background: var(--green); font-size: 7px; font-style: normal; font-weight: 900; }.governance-flow header span { color: var(--green); font-size: 7px; font-weight: 900; letter-spacing: .08em; }.governance-flow header b { color: var(--green); }.governance-flow h2 { margin: 22px 0 8px; font-size: 15px; }.governance-flow p { margin: 0; color: var(--muted); font-size: 8px; line-height: 1.5; }.governance-flow footer { margin-top: 20px; padding-top: 9px; border-top: 1px solid var(--line); color: #9de8c8; font-size: 7px; }
.join-receipt { display: grid; grid-template-columns: 55px 1fr auto; gap: 15px; align-items: center; margin: 0 28px 24px; padding: 16px; border: 1px solid rgba(78,230,168,.23); border-radius: 12px; background: var(--green-soft); }.join-mark { display: grid; width: 50px; height: 50px; place-items: center; border: 1px solid rgba(78,230,168,.4); border-radius: 50%; color: var(--green); font-size: 22px; }.join-receipt > div:nth-child(2) > span { color: var(--green); font-size: 6px; font-weight: 900; letter-spacing: .1em; }.join-receipt h2 { margin: 4px 0; font-size: 15px; }.join-receipt p { margin: 0; color: var(--muted); font-size: 7px; }.join-receipt dl { display: flex; gap: 7px; margin: 0; }.join-receipt dl div { min-width: 86px; padding: 8px; border: 1px solid var(--line); border-radius: 8px; }.join-receipt dt { color: var(--subtle); font-size: 5px; }.join-receipt dd { margin: 3px 0 0; font-size: 7px; font-weight: 850; }

/* SEAL readiness */
.readiness-badge { display: flex; flex-direction: column; align-items: flex-end; padding: 9px 11px; border: 1px solid rgba(78,230,168,.25); border-radius: 10px; background: var(--green-soft); }.readiness-badge strong { color: var(--green); font-size: 19px; }.readiness-badge span { color: var(--muted); font-size: 6px; letter-spacing: .08em; }
.readiness-layout { display: grid; grid-template-columns: .86fr 1.14fr; gap: 18px; padding: 24px 28px 28px; }.academy-card,.team-card { min-height: 425px; padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.018); }.academy-card > div { display: grid; grid-template-columns: minmax(170px,1fr) minmax(80px,.8fr) 24px; gap: 10px; align-items: center; min-height: 65px; border-bottom: 1px solid var(--line); }.academy-card > div > span { display: flex; flex-direction: column; gap: 3px; }.academy-card b { font-size: 8px; }.academy-card small { color: var(--muted); font-size: 7px; }.academy-card > div > div { height: 6px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.06); }.academy-card > div > div i { display: block; width: var(--bar); height: 100%; background: linear-gradient(90deg,var(--green-dark),var(--green)); }.academy-card em { color: var(--green); font-size: 8px; font-style: normal; font-weight: 900; text-align: right; }.academy-card footer { margin-top: 13px; color: var(--subtle); font-size: 6px; }
.team-card > header { display: flex; justify-content: space-between; padding-bottom: 13px; border-bottom: 1px solid var(--line); }.team-card > header span { color: var(--green); font-size: 6px; letter-spacing: .1em; }.team-card h2 { margin: 4px 0; font-size: 18px; }.team-card header p { margin: 0; color: var(--muted); font-size: 7px; }.team-card > header > b { align-self: start; padding: 6px 8px; border-radius: 99px; color: var(--green); background: var(--green-soft); font-size: 6px; }.team-avatars { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 13px; }.team-avatars article { display: grid; grid-template-columns: 48px 1fr auto; gap: 8px; align-items: center; min-height: 74px; padding: 8px; border: 1px solid var(--line); border-radius: 10px; background: rgba(3,11,8,.3); }.team-avatars img { width: 46px; height: 46px; border-radius: 10px; object-fit: cover; }.team-avatars span { display: flex; min-width: 0; flex-direction: column; gap: 3px; }.team-avatars b { overflow: hidden; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }.team-avatars small { color: var(--muted); font-size: 7px; }.team-avatars em { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 50%; color: var(--gold); background: var(--gold-soft); font-size: 6px; font-style: normal; font-weight: 900; }.team-card > footer { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 13px; }.team-card > footer span { padding: 6px 7px; border: 1px solid rgba(78,230,168,.17); border-radius: 99px; color: #9ed6bd; background: var(--green-soft); font-size: 6px; }

/* First mission */
.mission-layout { display: grid; grid-template-columns: 1.25fr .75fr; gap: 18px; padding: 23px 28px 15px; }.mission-map,.mission-trace { min-height: 352px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.018); }.mission-map { position: relative; overflow: hidden; background: radial-gradient(circle at 55% 42%,rgba(78,230,168,.08),transparent 30%),#06130f; }.mission-map::before { position: absolute; inset: 0; opacity: .13; background-image: linear-gradient(rgba(78,230,168,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(78,230,168,.18) 1px,transparent 1px); background-size: 22px 22px; content: ""; }.mission-map header { position: absolute; z-index: 2; inset: 14px 15px auto; display: flex; justify-content: space-between; color: var(--muted); font-size: 7px; }.mission-map header b { color: var(--gold); }.mission-map svg { position: absolute; inset: 0; width: 100%; height: 100%; }.mission-map .grid { fill:none;stroke:rgba(133,173,155,.1);stroke-width:.3}.mission-map .boundary{fill:rgba(228,183,93,.025);stroke:rgba(228,183,93,.62);stroke-width:.7;stroke-dasharray:2 1.2}.mission-map .route{fill:none;stroke:var(--green);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px var(--green));stroke-dasharray:130;animation:drawRoute 3s ease both}.mission-map .start{fill:var(--blue)}.mission-map .position{fill:var(--green);filter:drop-shadow(0 0 6px var(--green));animation:pulsePoint 1.8s infinite}.mission-map .end{fill:var(--gold)}
@keyframes drawRoute { from { stroke-dashoffset:130; } to { stroke-dashoffset:0; } } @keyframes pulsePoint { 50% { r:3.7;opacity:.65; } }
.mission-map__legend { position: absolute; z-index: 2; inset: auto 14px 12px; display: flex; gap: 12px; color: var(--muted); font-size: 6px; }.mission-map__legend i { display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:var(--blue)}.mission-map__legend span:nth-child(2) i{background:var(--green)}.mission-map__legend span:nth-child(3) i{background:var(--gold)}
.mission-trace { padding: 17px; }.mission-trace > div { position:relative;display:grid;grid-template-columns:38px 10px 1fr;gap:7px;align-items:center;min-height:36px}.mission-trace time{color:var(--subtle);font-size:7px}.mission-trace > div i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(78,230,168,.07)}.mission-trace > div:not(:last-of-type)::after{position:absolute;left:41px;top:21px;width:1px;height:28px;background:var(--line-strong);content:""}.mission-trace > div span{color:#b9c9c1;font-size:7px}.mission-trace footer{margin-top:9px;padding:10px;border:1px solid rgba(78,230,168,.2);border-radius:9px;background:var(--green-soft)}.mission-trace footer b{display:block;color:var(--green);font-size:7px}.mission-trace footer span{display:block;margin-top:3px;color:var(--muted);font-size:6px}
.mission-metrics { display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:0 28px 24px}.mission-metrics div{min-height:70px;padding:11px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.018)}.mission-metrics span{display:block;color:var(--subtle);font-size:6px;letter-spacing:.08em}.mission-metrics b{display:block;margin-top:8px;font-size:19px}.mission-metrics small{margin-left:3px;color:var(--muted);font-size:7px;font-weight:500}

/* Command Center */
.command-panel { padding: 19px 20px 14px; background: radial-gradient(circle at 50% -10%,rgba(78,230,168,.09),transparent 30%),linear-gradient(145deg,rgba(9,31,24,.95),rgba(4,13,10,.98)); }
.command-header { display:grid;grid-template-columns:minmax(250px,1fr) auto auto;gap:15px;align-items:center;padding-bottom:13px;border-bottom:1px solid var(--line)}.command-header > div > span{color:var(--green);font-size:6px;font-weight:900;letter-spacing:.11em}.command-header h1{margin:3px 0 0;font-size:23px;letter-spacing:-.035em}.command-header nav{display:flex;padding:3px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.018)}.command-header nav button{min-height:29px;padding:0 10px;border-radius:7px;color:var(--muted);background:transparent;cursor:pointer;font-size:7px;font-weight:800}.command-header nav button.is-active{color:#031b12;background:var(--green)}.popout-button{display:inline-flex;min-height:35px;align-items:center;padding:0 10px;border:1px solid rgba(228,183,93,.25);border-radius:9px;color:var(--gold);background:var(--gold-soft);font-size:7px;font-weight:800}
.command-kpis{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:8px;margin:11px 0}.command-kpis article{min-height:69px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.018)}.command-kpis article.is-actual{border-color:rgba(78,230,168,.2);background:var(--green-soft)}.command-kpis span{display:block;color:var(--subtle);font-size:5px;font-weight:900;letter-spacing:.09em}.command-kpis strong{display:block;margin:5px 0 1px;font-size:19px;line-height:1}.command-kpis strong small{margin-left:3px;color:var(--muted);font-size:8px}.command-kpis article > small{color:var(--muted);font-size:6px}
.command-view{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:10px;min-height:380px}.live-map-card,.profile-card{border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.016);overflow:hidden}.live-map-card{position:relative}.live-map-card > header{position:absolute;z-index:500;top:10px;right:10px;left:10px;display:flex;justify-content:space-between;align-items:flex-start;padding:8px 10px;border:1px solid rgba(151,191,173,.16);border-radius:8px;background:rgba(4,12,9,.84);backdrop-filter:blur(8px)}.live-map-card header > div{display:flex;flex-direction:column;gap:3px}.live-map-card header span{color:var(--green);font-size:6px;font-weight:900;letter-spacing:.08em}.live-map-card header span i{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}.live-map-card header b{color:var(--gold);font-size:5px;letter-spacing:.07em}.live-map-card header small{max-width:230px;color:var(--muted);font-size:6px;text-align:right}.command-map{height:380px;background-color:#06140f;background-image:linear-gradient(rgba(78,230,168,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(78,230,168,.045) 1px,transparent 1px);background-size:24px 24px}.command-map .leaflet-control-container{display:none}.command-map .leaflet-pane{z-index:200}.command-map .leaflet-overlay-pane{z-index:210}.command-map .leaflet-marker-pane{z-index:220}.leaflet-container{font-family:inherit}.map-legend{position:absolute;z-index:500;right:10px;bottom:9px;display:flex;gap:9px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:rgba(4,12,9,.84);font-size:5px}.map-legend i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%}.map-legend .actual{border:1px solid var(--green);background:rgba(78,230,168,.22)}.map-legend .team{background:var(--green);box-shadow:0 0 7px var(--green)}.map-legend .incident{background:var(--danger)}
.seal-map-marker{position:relative;width:22px;height:22px}.seal-map-marker::before{position:absolute;inset:3px;border:2px solid #d5fff0;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(78,230,168,.1),0 0 14px var(--green);content:""}.seal-map-marker::after{position:absolute;right:-4px;bottom:-4px;padding:2px 4px;border-radius:4px;color:#03170f;background:#d5fff0;content:attr(data-label);font-size:5px;font-weight:900;white-space:nowrap}.seal-map-marker.is-selected::before{border-color:var(--gold);background:var(--gold);box-shadow:0 0 0 6px rgba(228,183,93,.14),0 0 16px var(--gold)}.incident-map-marker{width:18px;height:18px;border:2px solid #ffe7df;border-radius:5px;background:var(--danger);box-shadow:0 0 0 5px rgba(255,125,105,.12),0 0 14px var(--danger);transform:rotate(45deg);animation:alertPulse 1.6s infinite}@keyframes alertPulse{50%{opacity:.55;transform:rotate(45deg) scale(.78)}}
.profile-card{padding:13px}.profile-empty{display:flex;height:100%;min-height:350px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.profile-empty i{display:grid;width:62px;height:62px;place-items:center;border:1px solid rgba(78,230,168,.22);border-radius:50%;color:var(--green);background:var(--green-soft);font-size:26px;font-style:normal}.profile-empty strong{margin-top:14px;font-size:10px}.profile-empty span{max-width:170px;margin-top:5px;color:var(--muted);font-size:7px;line-height:1.45}.profile-content{text-align:center}.profile-photo{position:relative;width:88px;height:88px;margin:4px auto 9px}.profile-photo img{width:100%;height:100%;border:1px solid rgba(78,230,168,.28);border-radius:20px;object-fit:cover}.profile-photo b{position:absolute;right:-5px;bottom:-5px;display:grid;width:27px;height:27px;place-items:center;border:2px solid #091811;border-radius:50%;color:#061a12;background:var(--gold);font-size:6px}.profile-sim{color:var(--blue);font-size:5px;font-weight:900;letter-spacing:.1em}.profile-content h2{margin:5px 0 1px;font-size:15px}.profile-content > p{margin:0 0 9px;color:var(--muted);font-size:6px}.profile-content dl{margin:0;text-align:left}.profile-content dl div{display:grid;grid-template-columns:48px 1fr;gap:7px;min-height:29px;align-items:center;border-bottom:1px solid var(--line)}.profile-content dt{color:var(--subtle);font-size:5px}.profile-content dd{margin:0;font-size:6px;font-weight:700}.profile-content blockquote{margin:9px 0;padding:8px;border-left:2px solid var(--gold);color:#bfb69f;background:var(--gold-soft);font-size:6px;line-height:1.4;text-align:left}
.live-ticker{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;min-height:34px;margin-top:9px;padding:6px 10px;border:1px solid rgba(112,189,255,.18);border-radius:9px;background:var(--blue-soft)}.live-ticker > span{color:var(--blue);font-size:6px;font-weight:900;letter-spacing:.09em}.live-ticker > span i{display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 8px var(--blue)}.live-ticker > div{overflow:hidden;color:#cbdad3;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.live-ticker > small{color:var(--subtle);font-size:5px;letter-spacing:.08em}
.command-view[data-command-tab="devices"]{grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr)}.device-viewer,.biodiversity-card{min-height:380px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.016);overflow:hidden}.device-viewer{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(310px,1.1fr)}.device-viewer figure{position:relative;min-height:380px;margin:0;overflow:hidden}.device-viewer figure>img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(.68) contrast(1.08)}.device-viewer figure::after{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,8,6,.15),transparent 45%,rgba(2,8,6,.8));content:""}.device-viewer figcaption{position:absolute;z-index:2;inset:11px 12px auto;display:flex;justify-content:space-between;color:#d9e9e0;font-size:5px;letter-spacing:.06em}.device-viewer figcaption i{display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:var(--danger);box-shadow:0 0 8px var(--danger)}.camera-detection{position:absolute;z-index:2;right:14px;bottom:14px;left:14px;padding:10px;border:1px solid rgba(228,183,93,.4);border-radius:8px;background:rgba(4,12,9,.83)}.camera-detection span{display:block;color:var(--gold);font-size:5px;font-weight:900;letter-spacing:.09em}.camera-detection strong{display:block;margin:4px 0 2px;font-size:10px}.camera-detection small{color:var(--muted);font-size:6px}.device-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;align-content:center;padding:12px}.device-grid article{display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:center;min-height:82px;padding:9px;border:1px solid var(--line);border-radius:9px;background:rgba(3,11,8,.3)}.device-grid article>i{display:grid;width:26px;height:26px;place-items:center;border-radius:7px;color:var(--violet);background:var(--violet-soft);font-size:5px;font-style:normal;font-weight:900}.device-grid article>span{display:flex;min-width:0;flex-direction:column;gap:3px}.device-grid article>span b{font-size:7px}.device-grid article>span small{color:var(--subtle);font-size:5px}.device-grid article>strong{grid-column:1/-1;font-size:16px}.device-grid article>strong small{margin-left:3px;color:var(--muted);font-size:6px}
.biodiversity-card{padding:13px}.biodiversity-card>header{display:flex;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid var(--line)}.biodiversity-card header span{color:var(--green);font-size:6px;font-weight:900;letter-spacing:.09em}.biodiversity-card header b{color:var(--gold);font-size:6px}.biodiversity-card article{display:grid;grid-template-columns:31px 1fr auto;gap:8px;align-items:center;min-height:66px;border-bottom:1px solid var(--line)}.biodiversity-card article>i{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:var(--green);background:var(--green-soft);font-style:normal;font-size:9px;font-weight:900}.biodiversity-card article>span{display:flex;min-width:0;flex-direction:column;gap:3px}.biodiversity-card article>span b{font-size:8px}.biodiversity-card article>span small{overflow:hidden;color:var(--muted);font-size:6px;text-overflow:ellipsis;white-space:nowrap}.biodiversity-card article>span em{font-family:Georgia,serif}.biodiversity-card article>div{text-align:right}.biodiversity-card article>div strong{display:block;color:var(--green);font-size:9px}.biodiversity-card article>div small{color:var(--muted);font-size:5px}.biodiversity-card>footer{margin-top:10px;color:var(--subtle);font-size:5px;line-height:1.4}
.command-view[data-command-tab="performance"]{display:block}.performance-charts{display:grid;grid-template-columns:1fr 1fr;gap:9px}.performance-charts>section{min-height:238px;padding:13px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.016)}.performance-charts section>header{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.performance-charts h2{margin:0;font-size:12px}.performance-charts header small{color:var(--muted);font-size:5px}.bar-row{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(90px,1fr) 36px;gap:9px;align-items:center;min-height:51px;border-top:1px solid var(--line)}.bar-row>span{display:flex;flex-direction:column;gap:2px}.bar-row b{font-size:7px}.bar-row small{color:var(--muted);font-size:5px}.bar-row>div{height:6px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.06)}.bar-row>div i{display:block;width:var(--bar);height:100%;background:linear-gradient(90deg,var(--green-dark),var(--green))}.bar-row>div.is-gold i{background:linear-gradient(90deg,#8d6826,var(--gold))}.bar-row>strong{font-size:7px;text-align:right}.environment-grid{display:grid;grid-template-columns:.72fr 1.2fr .72fr;gap:9px;margin-top:9px}.environment-grid>article{min-height:133px;padding:13px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.016)}.environment-grid article>span{color:var(--subtle);font-size:5px;font-weight:900;letter-spacing:.08em}.air-card>strong{display:block;margin:8px 0 5px;font-size:25px}.air-card strong small{margin-left:4px;color:var(--muted);font-size:6px}.air-card>div{height:5px;overflow:hidden;border-radius:99px;background:linear-gradient(90deg,var(--green),var(--gold),var(--danger))}.air-card>div i{display:block;width:var(--air);height:100%;border-right:3px solid white}.air-card>b{display:block;margin-top:6px;color:var(--green);font-size:6px}.air-card p{margin:4px 0 0;color:var(--subtle);font-size:5px}.carbon-card>strong{display:block;margin:11px 0 4px;color:var(--gold);font-size:20px}.carbon-card p{margin:0;color:var(--muted);font-size:6px}.carbon-card blockquote{margin:9px 0 0;padding:7px;border-left:2px solid var(--gold);color:#ada38a;background:var(--gold-soft);font-size:5px;line-height:1.4}.mission-donut{display:grid!important;grid-template-columns:82px 1fr;gap:10px;align-items:center}.mission-donut>div{position:relative;display:grid;width:80px;height:80px;place-items:center;border-radius:50%;background:conic-gradient(var(--green) calc(var(--done)*1%),rgba(255,255,255,.06) 0)}.mission-donut>div::after{position:absolute;inset:6px;border-radius:50%;background:#0a1d16;content:""}.mission-donut strong{position:relative;z-index:1;font-size:21px}.mission-donut>div small{position:absolute;z-index:1;margin:23px 0 0 28px;color:var(--muted);font-size:6px}.mission-donut>span{display:flex;flex-direction:column;gap:4px}.mission-donut>span b{font-size:6px}.mission-donut>span small{color:var(--muted);font-size:5px}

/* Decision room */
.decision-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(420px,1.28fr);gap:15px;padding:20px 28px 14px}.incident-list,.incident-detail{min-height:352px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.016)}.incident-list{overflow:hidden}.incident-list>header{display:flex;justify-content:space-between;min-height:42px;align-items:center;padding:0 12px;border-bottom:1px solid var(--line)}.incident-list header span{color:var(--danger);font-size:6px;font-weight:900;letter-spacing:.09em}.incident-list header b{font-size:7px}.incident-list>button{display:grid;grid-template-columns:9px 1fr auto;gap:8px;align-items:center;width:100%;min-height:66px;padding:8px 11px;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.incident-list>button>i{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 7px var(--orange)}.incident-list>button.severity-critical>i{background:var(--danger);box-shadow:0 0 8px var(--danger)}.incident-list>button span{display:flex;min-width:0;flex-direction:column;gap:3px}.incident-list>button b{overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.incident-list>button small{overflow:hidden;color:var(--muted);font-size:6px;text-overflow:ellipsis;white-space:nowrap}.incident-list>button em{padding:4px 5px;border-radius:5px;color:var(--orange);background:rgba(242,166,90,.1);font-size:5px;font-style:normal;font-weight:900}.incident-list>button.severity-critical em{color:var(--danger);background:var(--danger-soft)}.incident-list>button.is-active{box-shadow:inset 3px 0 var(--danger);background:var(--danger-soft)}.incident-list>footer{padding:8px 11px;color:var(--subtle);font-size:5px}.incident-detail{padding:16px}.incident-detail>header{display:flex;justify-content:space-between;gap:15px;padding-bottom:12px;border-bottom:1px solid var(--line)}.incident-detail header>div>span{color:var(--danger);font-size:6px;font-weight:900;letter-spacing:.08em}.incident-detail h2{margin:5px 0;font-size:20px}.incident-detail header p{margin:0;color:var(--muted);font-size:7px}.incident-detail header p b{color:var(--gold)}.incident-detail header>strong{align-self:start;padding:6px 8px;border:1px solid rgba(255,125,105,.28);border-radius:7px;color:var(--danger);background:var(--danger-soft);font-size:6px}.incident-detail dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:11px 0}.incident-detail dl div{padding:8px;border:1px solid var(--line);border-radius:8px}.incident-detail dt{color:var(--subtle);font-size:5px}.incident-detail dd{margin:4px 0 0;font-size:6px;font-weight:700}.ai-recommendation{padding:12px;border:1px solid rgba(228,183,93,.25);border-radius:9px;background:var(--gold-soft)}.ai-recommendation span{color:var(--gold);font-size:6px;font-weight:900;letter-spacing:.08em}.ai-recommendation p{margin:8px 0;color:#d2c9b2;font-size:8px;line-height:1.55}.ai-recommendation small{color:#938970;font-size:5px}.decision-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:11px}.decision-principle{display:grid;grid-template-columns:1fr auto 1fr auto;gap:12px;align-items:center;margin:0 28px 23px;padding:11px;border:1px solid rgba(78,230,168,.18);border-radius:11px;background:var(--green-soft)}.decision-principle>div{display:grid;grid-template-columns:29px 1fr;gap:8px;align-items:center}.decision-principle>div>i{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:var(--green);background:rgba(78,230,168,.1);font-style:normal;font-size:7px;font-weight:900}.decision-principle>div span{display:flex;flex-direction:column;gap:2px}.decision-principle>div b{font-size:8px}.decision-principle>div small{color:var(--muted);font-size:5px}.decision-principle>em{color:var(--green);font-style:normal}.decision-principle>strong{color:var(--subtle);font-size:6px;letter-spacing:.08em}

/* Controls + context */
.demo-controls { margin-top: 12px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: rgba(6,17,13,.82); }
.demo-progress { height: 3px; background: rgba(255,255,255,.035); }.demo-progress i { display: block; width: 12.5%; height: 100%; background: linear-gradient(90deg,var(--green),var(--gold)); box-shadow: 0 0 9px rgba(78,230,168,.4); transition: width .35s ease; }
.demo-controls__row { display:grid;grid-template-columns:auto 1fr auto auto;gap:9px;align-items:center;min-height:57px;padding:8px 11px}.demo-controls button{min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.025);cursor:pointer;font-size:8px;font-weight:850}.demo-controls button:disabled{opacity:.35;cursor:not-allowed}.demo-controls button:hover:not(:disabled){border-color:rgba(78,230,168,.4)}.demo-controls button.is-primary{border-color:var(--green);color:#031c13;background:var(--green)}.demo-controls button.is-autoplay.is-playing{border-color:rgba(228,183,93,.35);color:var(--gold);background:var(--gold-soft)}.demo-controls__row>div{display:flex;min-width:0;flex-direction:column;gap:2px;align-items:center}.demo-controls__row>div span{font-size:8px}.demo-controls__row>div small{color:var(--subtle);font-size:5px;letter-spacing:.08em}
.demo-context { display:flex;flex-direction:column;gap:10px;padding:20px 12px 16px;border-left:1px solid var(--line);background:rgba(6,17,13,.55) }.context-card{padding:12px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.016)}.context-card header{display:flex;justify-content:space-between;margin-bottom:10px;color:var(--subtle);font-size:6px;font-weight:900;letter-spacing:.1em}.context-card.is-state>strong{color:var(--green);font-size:13px;letter-spacing:.05em}.context-card.is-state>p{min-height:27px;margin:5px 0 10px;color:var(--muted);font-size:7px;line-height:1.4}.context-card.is-state>div:not(.context-progress){display:flex;justify-content:space-between;color:var(--subtle);font-size:7px}.context-card.is-state>div b{color:var(--text)}.context-progress{height:4px;margin-top:6px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.055)}.context-progress i{display:block;width:12.5%;height:100%;background:var(--green);transition:width .35s ease}.context-card.is-truth>div{display:grid;grid-template-columns:8px 1fr;gap:7px;align-items:center;min-height:40px;border-top:1px solid var(--line)}.context-card.is-truth>div>i{width:7px;height:7px;border-radius:50%}.context-card.is-truth .actual{background:var(--green)}.context-card.is-truth .simulation{background:var(--blue)}.context-card.is-truth .device{background:var(--violet)}.context-card.is-truth span{display:flex;flex-direction:column;gap:2px}.context-card.is-truth b{font-size:6px}.context-card.is-truth small{color:var(--subtle);font-size:5px}.context-card ul{margin:0;padding:0;list-style:none}.context-card li{padding:5px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:7px}.context-card li:last-child{border:0}.context-card li i{margin-right:5px;color:var(--green);font-style:normal}.context-quick{display:grid;grid-template-columns:1fr 1fr;gap:6px}.context-quick button{display:flex;min-height:58px;flex-direction:column;justify-content:center;gap:3px;padding:8px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.018);cursor:pointer;text-align:left}.context-quick span{font-size:7px;font-weight:850}.context-quick small{color:var(--subtle);font-size:5px}.context-dashboard-link{margin-top:auto;padding:11px;border:1px solid rgba(228,183,93,.2);border-radius:10px;background:var(--gold-soft);display:flex;flex-direction:column;gap:3px}.context-dashboard-link span{color:#ead08f;font-size:7px;font-weight:800}.context-dashboard-link small{color:#91866c;font-size:6px}

/* Assignment modal */
.assignment-modal{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:20px}.assignment-backdrop{position:absolute;inset:0;background:rgba(1,6,4,.82);backdrop-filter:blur(10px)}.assignment-modal>section{position:relative;z-index:1;width:min(620px,100%);padding:27px;border:1px solid rgba(78,230,168,.28);border-radius:18px;background:linear-gradient(145deg,#102d22,#07130f);box-shadow:0 30px 100px rgba(0,0,0,.7)}.modal-close{position:absolute;top:12px;right:12px;display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:rgba(255,255,255,.025);cursor:pointer;font-size:18px}.assignment-modal>section>span{color:var(--green);font-size:7px;font-weight:900;letter-spacing:.1em}.assignment-modal h2{margin:7px 0 4px;font-size:27px}.assignment-modal>section>p{margin:0;color:var(--muted);font-size:8px}.assignment-route{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:8px;align-items:center;margin:22px 0;padding:13px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.018)}.assignment-route>div{display:grid;grid-template-columns:25px 1fr;gap:7px;align-items:center}.assignment-route i{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;color:#051c13;background:var(--green);font-style:normal;font-size:7px;font-weight:900}.assignment-route span{display:flex;flex-direction:column;gap:2px}.assignment-route b{font-size:7px}.assignment-route small{color:var(--muted);font-size:5px}.assignment-route em{color:var(--green);font-style:normal}.assignment-modal dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 16px}.assignment-modal dl div{padding:10px;border:1px solid var(--line);border-radius:9px}.assignment-modal dt{color:var(--subtle);font-size:5px}.assignment-modal dd{margin:4px 0 0;font-size:7px;font-weight:800}

/* Interactive map primitives */
.analysis-console.is-complete header>div>i{background:var(--green);box-shadow:0 0 12px var(--green)}
.button:disabled{opacity:.55;cursor:wait;transform:none}.button.is-confirmed{border-color:rgba(78,230,168,.38);color:var(--green);background:var(--green-soft)}
.seal-div-icon,.incident-div-icon{border:0!important;background:transparent!important}.seal-marker,.incident-marker{position:relative;display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:50%;cursor:pointer}.seal-marker{color:#031c13;background:var(--green);box-shadow:0 0 0 5px rgba(78,230,168,.12),0 0 20px rgba(78,230,168,.7)}.seal-marker::after{position:absolute;inset:-8px;border:1px solid rgba(78,230,168,.38);border-radius:50%;content:"";animation:markerPulse 1.8s ease-out infinite}.seal-marker i{position:absolute;top:-4px;right:-3px;width:9px;height:9px;border:2px solid #07130f;border-radius:50%;background:#d7ffed}.seal-marker b{font-size:7px;letter-spacing:.02em}.incident-marker{width:28px;height:28px;color:#fff;background:var(--danger);box-shadow:0 0 0 5px rgba(255,125,105,.1),0 0 18px rgba(255,125,105,.65)}.incident-marker i{font-size:10px;font-style:normal;font-weight:950}.incident-marker::after{position:absolute;inset:-7px;border:1px solid rgba(255,125,105,.48);border-radius:50%;content:"";animation:markerPulse 1.25s ease-out infinite}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:var(--text);background:#0b2119;box-shadow:0 15px 45px rgba(0,0,0,.55)}.leaflet-popup-content-wrapper{border:1px solid rgba(78,230,168,.24);border-radius:10px}.leaflet-popup-content{margin:10px 12px}.map-popup{display:flex;min-width:160px;flex-direction:column;gap:4px}.map-popup span{color:var(--green);font-size:6px;font-weight:900;letter-spacing:.08em}.map-popup b{font-size:8px}.map-popup small{color:var(--muted);font-size:6px}.map-popup.is-alert span{color:var(--danger)}.command-map[data-map-status]::after{position:absolute;z-index:600;right:12px;bottom:42px;padding:7px 9px;border:1px solid rgba(255,125,105,.28);border-radius:7px;color:#ffc4ba;background:rgba(54,16,13,.88);content:attr(data-map-status);font-size:6px}.live-ticker [data-ticker-text]{transition:opacity .18s ease,transform .18s ease}.live-ticker [data-ticker-text].is-changing{opacity:0;transform:translateY(4px)}body.has-modal{overflow:hidden}@keyframes markerPulse{0%{opacity:.85;transform:scale(.65)}80%,100%{opacity:0;transform:scale(1.2)}}

/* Full-screen mission map */
.map-page{min-height:100vh;overflow:hidden;background:#030806}.map-shell{display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh}.map-topbar{position:relative;z-index:1000;display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);gap:18px;align-items:center;min-height:72px;padding:10px 20px;border-bottom:1px solid var(--line);background:rgba(4,10,8,.96);backdrop-filter:blur(15px)}.map-topbar img{width:210px;max-height:44px}.map-topbar>div{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}.map-topbar>div span{color:var(--green);font-size:7px;font-weight:900;letter-spacing:.11em}.map-topbar h1{margin:0;font-size:17px;letter-spacing:.02em}.map-topbar nav{display:flex;justify-content:flex-end;gap:8px}.map-topbar a,.map-topbar button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.025);cursor:pointer;font-size:7px;font-weight:850}.map-topbar button{border-color:var(--green);color:#051b13;background:var(--green)}.map-canvas-wrap{position:relative;min-height:0}.fullscreen-map{position:absolute;inset:0;background-color:#06140f;background-image:linear-gradient(rgba(78,230,168,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(78,230,168,.04) 1px,transparent 1px);background-size:32px 32px}.map-overlay{position:absolute;z-index:700;top:18px;left:18px;width:min(350px,calc(100% - 36px));padding:14px;border:1px solid rgba(151,191,173,.22);border-radius:13px;background:rgba(4,12,9,.88);box-shadow:0 20px 60px rgba(0,0,0,.38);backdrop-filter:blur(10px)}.map-overlay>span{color:var(--blue);font-size:6px;font-weight:900;letter-spacing:.1em}.map-overlay h2{margin:6px 0 4px;font-size:21px}.map-overlay p{margin:0;color:var(--muted);font-size:8px;line-height:1.45}.map-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.map-kpis div{padding:8px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.018)}.map-kpis span{display:block;color:var(--subtle);font-size:5px}.map-kpis b{display:block;margin-top:4px;font-size:10px}.map-disclosure{position:absolute;z-index:700;right:18px;bottom:18px;max-width:480px;padding:10px 12px;border:1px solid rgba(228,183,93,.3);border-radius:10px;color:#d8c99f;background:rgba(36,29,11,.9);font-size:7px;line-height:1.45}.map-profile-drawer{position:absolute;z-index:800;top:18px;right:18px;width:min(315px,calc(100% - 36px));padding:16px;border:1px solid rgba(78,230,168,.28);border-radius:15px;background:rgba(6,20,15,.94);box-shadow:0 25px 80px rgba(0,0,0,.55);backdrop-filter:blur(12px)}.map-profile-drawer>button{position:absolute;top:9px;right:9px;display:grid;width:29px;height:29px;place-items:center;border:1px solid var(--line);border-radius:7px;color:var(--muted);background:rgba(255,255,255,.025);cursor:pointer;font-size:16px}.map-profile-head{display:grid;grid-template-columns:76px 1fr;gap:11px;align-items:center}.map-profile-head img{width:76px;height:76px;border:1px solid rgba(78,230,168,.3);border-radius:16px;object-fit:cover}.map-profile-head span{color:var(--blue);font-size:5px;font-weight:900;letter-spacing:.08em}.map-profile-head h2{margin:5px 0 2px;font-size:17px}.map-profile-head p{margin:0;color:var(--muted);font-size:7px}.map-profile-drawer dl{margin:12px 0 0}.map-profile-drawer dl div{display:grid;grid-template-columns:64px 1fr;gap:8px;align-items:center;min-height:36px;border-top:1px solid var(--line)}.map-profile-drawer dt{color:var(--subtle);font-size:5px}.map-profile-drawer dd{margin:0;font-size:7px;font-weight:700}.map-profile-drawer blockquote{margin:10px 0 0;padding:9px;border-left:2px solid var(--gold);color:#c8bfa7;background:var(--gold-soft);font-size:7px;line-height:1.45}

@media (max-width: 1240px) {
  .demo-stage { grid-template-columns: 205px minmax(610px,1fr); }
  .demo-context { grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-left:0;border-top:1px solid var(--line) }
  .context-quick { grid-column:1/-1; }.context-dashboard-link { grid-column:1/-1;margin:0; }
  .demo-disclosure { grid-template-columns:220px 1fr }.demo-disclosure>span{display:none}
}

@media (max-width: 900px) {
  .demo-topbar{grid-template-columns:1fr auto;height:65px;padding:0 14px}.demo-brand img{width:185px}.demo-topbar__title,.demo-system{display:none}.demo-disclosure{grid-template-columns:1fr;gap:4px;padding:9px 14px}.demo-stage{display:block;min-height:auto}.demo-rail{position:sticky;top:65px;z-index:900;flex-direction:row;padding:9px 10px;border:0;border-bottom:1px solid var(--line);overflow-x:auto;background:rgba(4,12,9,.95)}.demo-rail__heading,.demo-rail__boundary{display:none}.demo-step-button{min-width:108px;min-height:44px;grid-template-columns:24px 1fr}.demo-step-button em,.demo-step-button span small{display:none}.demo-workspace{padding:13px 10px 18px}.demo-panels,.demo-panel{min-height:0}.demo-panel{overflow:visible}.panel-heading{padding:22px 18px 18px}.intro-panel{padding:26px 18px 16px}.intro-hero{grid-template-columns:1fr}.system-orbit{display:none}.journey-strip{grid-template-columns:repeat(5,1fr)}.intelligence-layout,.result-layout,.readiness-layout,.mission-layout,.decision-layout{grid-template-columns:1fr;padding-right:18px;padding-left:18px}.governance-flow{grid-template-columns:1fr 1fr;padding-right:18px;padding-left:18px}.join-receipt{grid-template-columns:50px 1fr;margin-right:18px;margin-left:18px}.join-receipt dl{grid-column:1/-1}.handoff-band{grid-template-columns:1fr auto 1fr;margin-right:18px;margin-left:18px}.handoff-band .button{grid-column:1/-1}.command-header{grid-template-columns:1fr auto}.command-header nav{grid-column:1/-1;grid-row:2}.popout-button{grid-column:2;grid-row:1}.command-kpis{grid-template-columns:1fr 1fr}.command-view{grid-template-columns:1fr}.profile-card{min-height:260px}.profile-empty{min-height:230px}.command-view[data-command-tab="devices"]{grid-template-columns:1fr}.performance-charts{grid-template-columns:1fr}.environment-grid{grid-template-columns:1fr 1fr}.carbon-card{grid-column:1/-1}.demo-context{padding:11px;grid-template-columns:1fr 1fr}.context-card.is-guardrail{grid-column:1/-1}
}

@media (max-width: 620px) {
  .demo-brand img{width:155px}.demo-disclosure p{font-size:8px}.demo-workspace__status>div:last-child{display:none}.panel-heading{flex-direction:column}.panel-heading h1{font-size:26px}.status-pill,.human-rule,.readiness-badge{align-self:stretch;align-items:flex-start}.intro-copy h1{font-size:39px}.journey-strip{grid-template-columns:1fr 1fr}.journey-strip>div{min-height:60px}.intelligence-layout,.result-layout,.readiness-layout,.mission-layout,.decision-layout{padding:16px 12px}.upload-card,.analysis-console{min-height:0}.result-layout{grid-template-columns:1fr}.handoff-band{grid-template-columns:1fr;margin:0 12px 16px}.handoff-band>i{transform:rotate(90deg);text-align:center}.governance-flow{grid-template-columns:1fr;padding:16px 12px}.join-receipt{grid-template-columns:1fr;margin:0 12px 16px;text-align:center}.join-mark{margin:auto}.join-receipt dl{display:grid;grid-template-columns:1fr}.team-avatars{grid-template-columns:1fr}.mission-metrics{grid-template-columns:1fr 1fr;margin:0 12px 16px}.command-panel{padding:14px 10px}.command-header{grid-template-columns:1fr}.command-header nav,.popout-button{grid-column:1;grid-row:auto}.command-header nav{overflow-x:auto}.command-kpis{grid-template-columns:1fr 1fr}.command-map{height:330px}.device-viewer{grid-template-columns:1fr}.device-viewer figure{min-height:300px}.device-grid{grid-template-columns:1fr 1fr}.performance-charts{grid-template-columns:1fr}.environment-grid{grid-template-columns:1fr}.carbon-card{grid-column:auto}.incident-detail dl{grid-template-columns:1fr}.decision-actions{flex-direction:column}.decision-principle{grid-template-columns:1fr;margin:0 12px 16px}.decision-principle>em{transform:rotate(90deg);text-align:center}.demo-controls__row{grid-template-columns:1fr 1fr}.demo-controls__row>div{grid-column:1/-1;grid-row:1}.demo-controls button.is-autoplay{display:none}.demo-context{grid-template-columns:1fr}.context-card.is-guardrail{grid-column:auto}.assignment-route{grid-template-columns:1fr}.assignment-route>em{transform:rotate(90deg);text-align:center}.assignment-modal dl{grid-template-columns:1fr}
}

@media (max-width: 760px) {
  .map-topbar{grid-template-columns:1fr auto;min-height:64px;padding:8px 10px}.map-topbar img{width:165px}.map-topbar>div{display:none}.map-topbar nav a{display:none}.map-overlay{top:10px;left:10px;width:calc(100% - 20px);padding:11px}.map-overlay h2{font-size:16px}.map-overlay p{font-size:7px}.map-kpis{grid-template-columns:1fr 1fr 1fr}.map-kpis div{padding:6px}.map-profile-drawer{top:auto;right:10px;bottom:10px;left:10px;width:auto;max-height:62vh;overflow:auto}.map-disclosure{right:10px;bottom:10px;left:10px;max-width:none}.map-canvas-wrap.has-profile .map-disclosure{display:none}
}

@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important; } }
