:root{--ink:#183c2b;--panel:#fbf9f3;--panel2:#efebe1;--line:#d5d0c4;--text:#21352a;--muted:#718078;--sage:#7f927c;--sage2:#d9e2d4;--critical:#a64f45;--warning:#ad7d31;--ok:#4f805d;--info:#5f7d86;--stone:#f5f1e8;--bg:#eee9df;--shadow:0 18px 48px rgba(28,55,40,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}.mono{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:#183c2b;border-right:1px solid #294d3b;padding:20px 14px;display:flex;flex-direction:column;gap:18px;color:#f6f2e9}.brand{padding:8px 10px 18px;border-bottom:1px solid var(--line)}.brand-mark{display:flex;align-items:center;gap:10px}.brand-symbol{width:42px;height:42px;display:block;border-radius:10px;background:#f5f1e8}.brand h1{font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:500;letter-spacing:.06em;margin:0;color:#f6f2e9}.brand p{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#b8c5ba;margin:4px 0 0}.nav{display:grid;gap:5px}.nav button{background:transparent;border:1px solid transparent;color:#b8c5ba;padding:10px 11px;text-align:left;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.nav button:hover,.nav button.active{color:#fffaf0;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.13)}.nav .tag{font-size:9px;border:1px solid var(--line);border-radius:999px;padding:2px 5px}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.14);padding:14px 8px;color:#b8c5ba;font-size:11px}.main{min-width:0}.topbar{height:68px;position:sticky;top:0;z-index:10;background:rgba(245,241,232,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px}.top-left{display:flex;align-items:center;gap:14px}.eyebrow{color:var(--sage);text-transform:uppercase;letter-spacing:.12em;font-size:10px}.page-title{font-size:18px;font-weight:650;margin-top:2px}.top-actions{display:flex;align-items:center;gap:10px}.status-pill,.chip{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);padding:6px 9px;border-radius:999px;color:var(--muted);font-size:11px;background:var(--panel)}.dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(115,200,148,.12)}select,input{background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:7px;padding:8px 10px}.content{padding:22px 24px 48px}.grid{display:grid;gap:14px}.kpis{grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:14px}.card{background:linear-gradient(180deg,var(--panel),#f7f4ec);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.metric{padding:14px}.metric .label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.metric .value{font-size:23px;margin:7px 0 4px;font-weight:700}.metric .delta{font-size:10px;color:var(--muted)}.metric.critical .value{color:var(--critical)}.metric.warning .value{color:var(--warning)}.command-grid{grid-template-columns:minmax(0,1.65fr) minmax(330px,.8fr)}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 16px;border-bottom:1px solid var(--line);gap:14px}.panel-head h2{font-size:13px;margin:0}.panel-head p{font-size:10px;color:var(--muted);margin:4px 0 0}.map{height:520px;position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(143,181,159,.11),transparent 24%),linear-gradient(135deg,#0e1916,#08100e 62%);border-radius:0 0 10px 10px}.map::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(143,181,159,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(143,181,159,.05) 1px,transparent 1px);background-size:42px 42px}.map svg{width:100%;height:100%;position:relative;z-index:1}.map-legend{position:absolute;bottom:14px;left:14px;z-index:3;background:rgba(10,18,16,.88);border:1px solid var(--line);border-radius:8px;padding:9px 10px;display:flex;gap:12px;font-size:10px}.site-pin{cursor:pointer}.site-pin circle.outer{fill:#0a1210;stroke:var(--sage);stroke-width:2}.site-pin.critical circle.outer{stroke:var(--critical)}.site-pin .pulse{fill:none;stroke:var(--critical);opacity:.55;animation:pulse 2s infinite}@keyframes pulse{0%{r:15;opacity:.8}100%{r:31;opacity:0}}.side-stack{display:grid;gap:14px}.incident{padding:14px 16px}.severity{font-size:9px;text-transform:uppercase;letter-spacing:.12em}.severity.critical{color:var(--critical)}.severity.warning{color:var(--warning)}.incident h3{font-size:14px;margin:6px 0}.incident p{font-size:11px;color:var(--muted);line-height:1.55}.evidence-mini{display:grid;gap:7px;margin:12px 0}.evidence-mini div{display:flex;justify-content:space-between;border-bottom:1px dashed var(--line);padding-bottom:6px;font-size:10px}.btn{border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:8px 11px;border-radius:7px;cursor:pointer}.btn:hover{border-color:var(--sage)}.btn.primary{background:var(--sage2);color:#102019;border-color:var(--sage2);font-weight:700}.btn.danger{color:var(--critical)}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.section{display:none}.section.active{display:block}.section-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin:2px 0 16px}.section-title h2{font-size:22px;margin:0}.section-title p{font-size:12px;color:var(--muted);max-width:700px;margin:5px 0 0;line-height:1.55}.toolbar{display:flex;gap:8px;flex-wrap:wrap}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:11px}.table th{color:var(--muted);font-weight:600;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);text-transform:uppercase;font-size:9px;letter-spacing:.08em}.table td{padding:12px;border-bottom:1px solid rgba(42,58,52,.7);white-space:nowrap}.table tr:hover td{background:rgba(143,181,159,.035)}.state{display:inline-flex;align-items:center;gap:5px}.state::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok)}.state.critical::before{background:var(--critical)}.state.warning::before,.state.watch::before{background:var(--warning)}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.7fr);gap:14px}.pad{padding:16px}.chart{height:180px;width:100%;border:1px solid var(--line);border-radius:8px;background:#0a1210;position:relative;overflow:hidden}.chart svg{width:100%;height:100%}.chart-grid{stroke:#26352f;stroke-width:1}.chart-line{fill:none;stroke:var(--sage2);stroke-width:2}.twin{min-height:500px;padding:22px;position:relative;overflow:auto}.twin-flow{min-width:760px;display:flex;align-items:center;justify-content:center;gap:26px;padding:80px 20px}.node{width:140px;min-height:100px;border:1px solid var(--line);background:#f5f1e8;border-radius:10px;padding:12px;position:relative}.node strong{font-size:12px}.node .readout{font-size:20px;margin-top:12px}.node.critical{border-color:var(--critical)}.pipe{height:2px;width:84px;background:var(--sage);position:relative}.pipe::after{content:"";position:absolute;right:-1px;top:-4px;border-left:7px solid var(--sage);border-top:5px solid transparent;border-bottom:5px solid transparent}.brief{padding:18px}.brief-head{display:flex;justify-content:space-between;gap:12px}.confidence{font-size:28px;font-weight:800}.brief h3{margin:8px 0;font-size:18px}.brief p{color:var(--muted);line-height:1.6;font-size:12px}.evidence-list{display:grid;gap:8px;margin:14px 0}.evidence-item{border:1px solid var(--line);border-radius:8px;padding:10px;background:#f4f0e7}.evidence-item .top{display:flex;justify-content:space-between;font-size:10px}.evidence-item strong{font-size:12px}.decision-bar{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.audit{display:grid}.audit-row{display:grid;grid-template-columns:86px 150px 1fr 160px;gap:10px;padding:11px 12px;border-bottom:1px solid var(--line);font-size:10px}.audit-row .result{color:var(--sage2)}.sim{padding:14px}.sim-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sim .current{margin:10px 0 12px;font-size:11px;color:var(--muted)}.report-grid{grid-template-columns:repeat(3,1fr)}.report-card{padding:18px;min-height:180px}.report-card h3{font-size:14px}.report-card p{font-size:11px;color:var(--muted);line-height:1.5}.mobile-menu{display:none}.toast{position:fixed;right:22px;bottom:22px;z-index:40;background:#183c2b;color:#f6f2e9;border:1px solid #789079;padding:11px 14px;border-radius:8px;font-size:11px;box-shadow:var(--shadow)}
@media(max-width:1180px){.kpis{grid-template-columns:repeat(3,1fr)}.command-grid,.split{grid-template-columns:1fr}.map{height:440px}.report-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;z-index:30;width:248px;transition:.2s}.sidebar.open{left:0}.mobile-menu{display:inline-flex}.topbar{padding:0 14px}.content{padding:16px 14px 40px}.kpis{grid-template-columns:repeat(2,1fr)}.top-actions .status-pill{display:none}.audit-row{grid-template-columns:70px 1fr}.audit-row .object,.audit-row .result{grid-column:2}.report-grid{grid-template-columns:1fr}.map{height:390px}.section-title{align-items:flex-start;flex-direction:column}.role-select{max-width:180px}}
.brand-line{font-family:Georgia,"Times New Roman",serif;font-style:italic;color:#d8dfd7;font-size:11px;line-height:1.45;margin:13px 0 0 52px}.sidebar .eyebrow{color:#aebcaf}.sidebar .mono{color:#93a398}.page-title{font-family:Georgia,"Times New Roman",serif;font-weight:500}.section-title h2{font-family:Georgia,"Times New Roman",serif;font-weight:500}.brand img{object-fit:contain}
/* GABA - Modern Organic Editorial public experience */
html{scroll-behavior:smooth}
body.marketing-mode{background:#f3efe6;color:#183c2b}
.marketing-site{min-height:100vh;background:#f3efe6;color:#183c2b;overflow:hidden}
.marketing-site h1,.marketing-site h2,.marketing-site h3{font-family:Georgia,"Times New Roman",serif;font-weight:500}
.marketing-nav{height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 5vw;border-bottom:1px solid rgba(24,60,43,.14);position:relative;z-index:5}
.marketing-brand{display:block;width:230px}
.marketing-brand img{display:block;width:100%;height:auto}
.marketing-links{display:flex;align-items:center;gap:34px}
.marketing-links a{color:#52665a;text-decoration:none;font-size:11px;text-transform:uppercase;letter-spacing:.15em}
.marketing-links a:hover{color:#183c2b}
.marketing-enter{justify-self:end;border:1px solid #183c2b;background:#183c2b;color:#f8f4eb;padding:14px 20px;border-radius:999px;cursor:pointer;font-size:12px;letter-spacing:.04em}
.marketing-enter.small{padding:10px 16px}
.marketing-enter span{margin-left:14px}
.marketing-enter:hover{background:#254a38}
.marketing-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:760px;border-bottom:1px solid rgba(24,60,43,.14)}
.hero-copy{padding:90px 7vw 58px 6vw;display:flex;flex-direction:column}
.hero-kicker,.section-number{font-size:10px;text-transform:uppercase;letter-spacing:.19em;color:#708174}
.hero-copy h1{font-size:clamp(64px,7.2vw,122px);line-height:.88;letter-spacing:-.055em;margin:70px 0 30px;max-width:760px}
.hero-lead{font-size:18px;line-height:1.65;max-width:650px;color:#52665a;margin:0}

.hero-actions{display:flex;align-items:center;gap:28px;margin-top:44px}
.text-link{color:#183c2b;text-decoration:none;font-size:12px;border-bottom:1px solid rgba(24,60,43,.35);padding-bottom:4px}
.hero-meta{margin-top:auto;padding-top:70px;display:flex;gap:24px;flex-wrap:wrap;color:#718177;font:10px/1.2 "SFMono-Regular",Consolas,monospace;letter-spacing:.08em}
.hero-landscape{margin:0;position:relative;min-height:760px;background:#183c2b;overflow:hidden}
.hero-landscape::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,37,26,.08),rgba(14,37,26,.2) 58%,rgba(14,37,26,.72))}
.hero-landscape img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.8) contrast(.94)}
.hero-landscape figcaption{position:absolute;z-index:2;left:30px;right:30px;bottom:28px;display:flex;justify-content:space-between;gap:18px;color:#f5f1e8;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.manifesto,.system-story{padding:110px 6vw;border-bottom:1px solid rgba(24,60,43,.14)}
.manifesto-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw;margin-top:60px}
.manifesto-grid h2{font-size:clamp(50px,5.7vw,92px);line-height:.96;letter-spacing:-.045em;margin:0}
.manifesto-grid p{font-size:17px;line-height:1.8;color:#55695c;margin:0 0 24px}
.editorial-title-row{display:grid;grid-template-columns:1.3fr .7fr;gap:8vw;align-items:end;margin:55px 0 60px}
.editorial-title-row h2{font-size:clamp(54px,6vw,94px);line-height:.92;letter-spacing:-.045em;margin:0}
.editorial-title-row p{font-size:16px;line-height:1.7;color:#5d7063;margin:0 0 7px}
.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(24,60,43,.2);border-bottom:1px solid rgba(24,60,43,.2)}
.capability-grid article{padding:28px 28px 34px 0;border-right:1px solid rgba(24,60,43,.14);min-height:215px}
.capability-grid article+article{padding-left:28px}
.capability-grid article:last-child{border-right:0}
.capability-grid span{font:10px "SFMono-Regular",Consolas,monospace;color:#829183}
.capability-grid h3{font-size:28px;margin:48px 0 10px}
.capability-grid p{font-size:13px;line-height:1.6;color:#657568;margin:0}

.flow-strip{margin-top:58px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;font:10px "SFMono-Regular",Consolas,monospace;text-transform:uppercase;letter-spacing:.08em;color:#54685a}
.flow-strip span{border:1px solid rgba(24,60,43,.18);padding:10px 13px;border-radius:999px;background:#f7f3eb}
.flow-strip b{font-weight:400;color:#879387}
.impact-story{display:grid;grid-template-columns:1fr 1fr;min-height:720px;border-bottom:1px solid rgba(24,60,43,.14)}
.impact-visual{background:#183c2b;padding:6vw;display:flex;flex-direction:column;justify-content:space-between;color:#f5f1e8}
.monogram-panel{width:min(330px,70%);aspect-ratio:1/1;background:#f3efe6;border-radius:2px;display:grid;place-items:center}
.monogram-panel img{width:100%;height:100%;display:block}
.impact-quote{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(34px,3.8vw,64px);line-height:1.04;max-width:650px}
.impact-copy{padding:110px 7vw;display:flex;flex-direction:column}
.impact-copy h2{font-size:clamp(52px,5.2vw,86px);line-height:.95;letter-spacing:-.04em;margin:52px 0}
.impact-list{margin-top:auto;border-top:1px solid rgba(24,60,43,.18)}
.impact-list>div{display:grid;grid-template-columns:180px 1fr;gap:28px;padding:20px 0;border-bottom:1px solid rgba(24,60,43,.14)}
.impact-list strong{font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.impact-list span{font-size:13px;line-height:1.55;color:#66766a}
.enter-section{background:#dfe6d9;padding:95px 6vw;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;border-bottom:1px solid rgba(24,60,43,.14)}
.enter-section h2{font-size:clamp(54px,6vw,98px);line-height:.92;letter-spacing:-.045em;margin:45px 0 0}
.marketing-enter.inverse{background:transparent;color:#183c2b;min-width:290px}
.marketing-enter.inverse:hover{background:#183c2b;color:#f5f1e8}
.marketing-footer{padding:46px 6vw;display:grid;grid-template-columns:260px 1fr 1fr;align-items:end;gap:40px;background:#f3efe6}
.marketing-footer img{width:230px}
.marketing-footer p{margin:0;color:#66776b;font-size:11px}
.photo-credit{text-align:right;line-height:1.55}

@media(max-width:1000px){
  .marketing-nav{grid-template-columns:1fr auto}
  .marketing-links{display:none}
  .marketing-hero{grid-template-columns:1fr;min-height:0}
  .hero-copy{min-height:680px;padding:70px 7vw 45px}
  .hero-landscape{min-height:560px}
  .manifesto-grid,.editorial-title-row,.impact-story{grid-template-columns:1fr}
  .manifesto-grid{gap:44px}
  .capability-grid{grid-template-columns:1fr 1fr}
  .capability-grid article:nth-child(2){border-right:0}
  .capability-grid article:nth-child(-n+2){border-bottom:1px solid rgba(24,60,43,.14)}
  .impact-visual{min-height:620px}
  .impact-copy{min-height:650px}
  .marketing-footer{grid-template-columns:1fr;align-items:start}
  .photo-credit{text-align:left}
}
@media(max-width:650px){
  .marketing-nav{height:78px;padding:0 20px}
  .marketing-brand{width:175px}
  .marketing-enter.small{font-size:0;width:42px;height:42px;padding:0}
  .marketing-enter.small::after{content:"↗";font-size:16px}
  .hero-copy{min-height:620px;padding:55px 22px 36px}
  .hero-copy h1{font-size:62px;margin-top:54px}
  .hero-lead{font-size:15px}
  .hero-actions{align-items:flex-start;flex-direction:column}
  .hero-landscape{min-height:500px}
  .hero-landscape figcaption{flex-direction:column}
  .manifesto,.system-story{padding:82px 22px}
  .manifesto-grid h2,.editorial-title-row h2,.impact-copy h2,.enter-section h2{font-size:50px}
  .capability-grid{grid-template-columns:1fr}
  .capability-grid article,.capability-grid article+article{padding:26px 0;border-right:0;border-bottom:1px solid rgba(24,60,43,.14)}
  .impact-visual,.impact-copy{padding:72px 22px;min-height:560px}
  .impact-list>div{grid-template-columns:1fr;gap:8px}
  .enter-section{padding:76px 22px;align-items:flex-start;flex-direction:column}
  .marketing-footer{padding:40px 22px}
}

/* Guided hackathon demo */
.demo-launch{border:1px solid #7e917f;background:#dfe6d9;color:#183c2b;padding:8px 11px;border-radius:999px;cursor:pointer;font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.demo-launch.active{background:#183c2b;color:#f6f2e9;border-color:#183c2b}
.demo-coach{margin:14px 24px 0;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#f8f5ee;display:flex;justify-content:space-between;align-items:center;gap:18px}
.demo-coach.active{border-color:#91a28f;background:#edf2e9}
.demo-progress{display:flex;align-items:center;gap:7px;margin-top:8px;flex-wrap:wrap}
.demo-step{display:flex;align-items:center;gap:6px;color:#8c9790;font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.demo-step span{width:20px;height:20px;border:1px solid #c8cec7;border-radius:50%;display:grid;place-items:center;font:9px "SFMono-Regular",Consolas,monospace;background:#fff}
.demo-step.done{color:#52695a}
.demo-step.done span{background:#d8e3d6;border-color:#9daf9c;color:#183c2b}
.demo-step.current b{color:#183c2b}
.demo-step:not(:last-child)::after{content:"→";margin-left:2px;color:#b0b8b1}
.demo-action{font-size:11px;color:#5f7065;display:flex;align-items:center;gap:8px}
.demo-live{display:flex;align-items:center;gap:7px}
.demo-live .dot{animation:demoPulse 1.1s infinite}
@keyframes demoPulse{50%{opacity:.25}}

.impact-outcome{margin-bottom:14px;padding:22px;display:grid;grid-template-columns:1.15fr .85fr;gap:28px;border-color:#8eaa91;background:linear-gradient(120deg,#edf4ea,#f8f6ef)}
.impact-outcome h2{font-family:Georgia,"Times New Roman",serif;font-size:30px;line-height:1.04;font-weight:500;color:#183c2b;margin:8px 0}
.impact-outcome p{font-size:11px;line-height:1.55;color:#617166;max-width:650px}
.impact-outcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.impact-outcome-grid>div{border:1px solid #cbd6ca;background:rgba(255,255,255,.55);padding:12px;border-radius:8px}
.impact-outcome-grid span{display:block;font-size:9px;color:#738276;text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px}
.impact-outcome-grid strong{font:700 16px "SFMono-Regular",Consolas,monospace;color:#254d36}
.empty-state{padding:38px;min-height:280px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.empty-state h3{font-family:Georgia,"Times New Roman",serif;font-size:32px;font-weight:500;margin:10px 0}
.empty-state p{max-width:580px;color:var(--muted);font-size:12px;line-height:1.6;margin-bottom:18px}
.normal-incident{border-color:#9fb4a2}
.normal-incident .severity,.resolved-incident .severity{color:#4f805d}
.resolved-incident{border-color:#75a17f;background:linear-gradient(180deg,#f1f6ee,#f8f6ef)}
.btn[disabled]{opacity:.55;cursor:not-allowed}

@media(max-width:980px){
  .demo-coach{align-items:flex-start;flex-direction:column}
  .demo-action{width:100%;justify-content:flex-start}
  .impact-outcome{grid-template-columns:1fr}
}
@media(max-width:820px){
  .demo-coach{margin:10px 14px 0}
  .demo-step b{display:none}
  .demo-step{gap:3px}
  .top-actions .demo-launch{display:inline-flex}
}
@media(max-width:560px){
  .impact-outcome-grid{grid-template-columns:1fr}
  .demo-progress{gap:4px}
  .demo-step:not(:last-child)::after{display:none}
}
