[hidden]{display:none!important}
@font-face{font-family:DM;src:url('/fonts/dm-sans-latin-wght-normal-Xz1IZZA0.woff2')}@font-face{font-family:Outfit;src:url('/fonts/outfit-latin-wght-normal-Bc-8i84L.woff2')}@font-face{font-family:Mono;src:url('/fonts/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2')}*{box-sizing:border-box}body{margin:0;background:#141416;color:#f2f0e9;font-family:DM,system-ui,sans-serif;font-size:14px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer;border:1px solid #514b4b;background:#29282b;color:#f3f2eb;padding:10px 16px;border-radius:8px}button:hover{background:#393538}button.primary,.primary{background:#f4a38b;color:#201c18;border-color:#f4a38b;font-weight:600}.primary:hover{background:#ffc0a9}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid #fac0a8;outline-offset:4px}.shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}aside{border-right:1px solid #363235;padding:30px 22px;display:flex;flex-direction:column;background:#19191c}.brand img{width:172px;height:52px;object-fit:contain}.workspace{font:10px Mono,monospace;letter-spacing:1.6px;color:#a7a0a0;margin:40px 10px 26px}.workspace span{display:block;font:13px DM,sans-serif;letter-spacing:0;color:#dddcd3;margin-top:8px}nav{display:grid;gap:6px}nav a{display:flex;gap:14px;padding:12px;border-radius:7px;text-decoration:none;color:#c3bdbb}nav a[aria-current=page]{background:#3b2e2b;color:#ffd0ba}nav a:hover{background:#292529}.aside-bottom{margin-top:auto;padding-top:80px;color:#aaa3a0}.aside-bottom img{width:100px;height:100px;object-fit:contain}.aside-bottom p{line-height:1.6}.aside-bottom small{font:9px Mono,monospace;letter-spacing:1.2px;color:#aaa3a0}main{min-width:0;padding:0 40px 25px;max-width:1700px;width:100%}header{height:80px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #393436;gap:15px;color:#c3bdbb;font-size:12px}header i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f4a38b;margin-right:9px}header b{font:10px Mono,monospace;border:1px solid #514b4b;padding:5px 8px;border-radius:4px;margin-left:12px;color:#c3bdbb}#account-menu{display:flex;gap:10px;align-items:center}.hero{display:flex;justify-content:space-between;align-items:center;min-height:238px;gap:16px}.hero h1{font:400 clamp(34px,4vw,52px)/1.08 Outfit,sans-serif;letter-spacing:-1.8px;margin:15px 0}.hero p:not(.eyebrow){color:#c3bdbb;line-height:1.6;max-width:530px}.eyebrow{font:10px Mono,monospace;letter-spacing:1.8px;color:#daa88d}.hero img{width:200px;height:190px;object-fit:contain}.panel{border:1px solid #454044;background:linear-gradient(120deg,#252427,#202023);border-radius:12px;padding:24px}.panel h2{font:400 23px Outfit,sans-serif;margin:0 0 12px}.panel p{color:#c3bdbb;line-height:1.7}.empty{min-height:260px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:100%}.empty p{max-width:630px}.login{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:25px;padding:42px}.login img{width:210px;max-width:100%}.login h2{font-size:32px}.login .primary{display:inline-block;padding:12px 20px;border-radius:8px;text-decoration:none;margin-top:12px}.muted{color:#b7afad;font-size:12px}.notice{border-left:3px solid #f0b18d;padding:12px 16px;background:#352c23;color:#f0c7a8;margin-bottom:18px;line-height:1.6}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}.metric{padding:20px}.metric strong{display:block;font:36px Outfit,sans-serif;margin:12px 0 4px}.metric span{font-size:12px;color:#c3bdbb}.toolbar{display:flex;gap:12px;margin:0 0 20px;align-items:center;flex-wrap:wrap}.toolbar input,.toolbar select{background:#1b1b1e;color:#f5f0e8;border:1px solid #514b4b;border-radius:7px;padding:11px 13px;max-width:100%}.toolbar input{flex:1;min-width:160px}.layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}.list{display:grid;gap:8px}.checkpoint{width:100%;text-align:left;background:#242326;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:16px}.checkpoint strong{display:block;font-weight:500;font-size:15px;overflow-wrap:anywhere}.checkpoint small{display:block;font:10px Mono,monospace;color:#b7afad;margin-top:7px;overflow-wrap:anywhere}.badge{font:10px Mono,monospace;padding:6px 8px;border-radius:4px;align-self:start;background:#353135;color:#e0d9d1}.badge.ready{background:#293c35;color:#cce8d4}.badge.unknown{background:#4b3a2b;color:#f4c5a6}.detail{min-width:0}.detail h2{overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#18181c;padding:14px;border:1px solid #454044;border-radius:7px;font:11px/1.7 Mono,monospace;max-height:320px;overflow:auto}details{border-top:1px solid #454044;padding:14px 0}summary{cursor:pointer;color:#e3dcd6}.trace{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.trace div{border:1px solid #514b4b;border-radius:6px;padding:12px;font-size:12px;overflow-wrap:anywhere}.trace small{display:block;color:#b7afad;margin-bottom:7px}.bars{display:flex;height:90px;gap:12px;align-items:end;border-bottom:1px solid #625b5b}.bars div{flex:1;min-height:3px;background:#f4a38b;border-radius:4px 4px 0 0}.chart-labels{display:flex;justify-content:space-between;font:10px Mono,monospace;color:#c3bdbb;margin:12px 0 20px}.chart{margin-bottom:22px}.histogram{width:100%;height:90px;display:block}.histogram rect{fill:#f4a38b}footer{display:flex;gap:20px;border-top:1px solid #393436;margin-top:36px;padding-top:20px;font:10px Mono,monospace;color:#aaa3a0;flex-wrap:wrap}footer span:last-child{margin-left:auto}#content[aria-busy=true]{opacity:.7}label{color:#c3bdbb}.spaced{margin-top:18px}dl{display:grid;grid-template-columns:100px 1fr;gap:12px}dt{color:#b7afad}dd{margin:0;overflow-wrap:anywhere}@media(min-width:1500px){main{padding-left:60px;padding-right:60px}}@media(max-width:1050px){.shell{grid-template-columns:180px minmax(0,1fr)}aside{padding:24px 15px}.brand img{width:145px}main{padding:0 24px 22px}.layout{grid-template-columns:1fr}.hero img{width:160px}.login{grid-template-columns:1fr 150px;padding:28px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.shell{display:block}aside{padding:14px 16px;border-right:0;border-bottom:1px solid #454044}.brand img{width:124px;height:38px}.workspace,.aside-bottom{display:none}nav{display:flex;margin-top:15px;justify-content:space-between;gap:2px}nav a{padding:9px 7px;font-size:12px;gap:6px}main{padding:0 16px 20px}header{height:65px;font-size:10px}header b{display:none}#account-menu{max-width:55%;font-size:10px}#account-menu button{padding:8px}.hero{min-height:205px;position:relative}.hero>div{z-index:1}.hero img{width:95px;height:105px;align-self:start;margin-top:15px}.hero h1{font-size:36px;letter-spacing:-1px}.eyebrow{font-size:8px;letter-spacing:1px}.hero p:not(.eyebrow){font-size:12px}.login{display:block;padding:24px}.login img{display:none}.login h2{font-size:27px}.panel{padding:18px}.metric strong{font-size:30px}.metrics{gap:9px}.trace{grid-template-columns:1fr}.checkpoint{padding:13px}.checkpoint strong{font-size:14px}footer span:last-child{margin-left:0}.chart-labels{font-size:8px}dl{grid-template-columns:75px 1fr}}@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s}}
#workspace-select{max-width:180px;background:#242326;border:1px solid #514b4b;color:#ece6df;border-radius:6px;padding:8px}#onboard{display:grid;gap:14px;max-width:520px;width:100%;margin-top:16px}#onboard>input{background:#18181c;border:1px solid #625b5b;border-radius:6px;color:#f3efdf;padding:12px}.consent{display:flex;gap:10px;line-height:1.6}#onboard-result{margin-top:12px;color:#f4bda5}@media(max-width:650px){#account-menu{max-width:70%;flex-wrap:wrap;justify-content:flex-end}#account-menu>span{display:none}#workspace-select{max-width:140px;font-size:11px}}
.trace{grid-template-columns:repeat(4,minmax(0,1fr))}.event-history{list-style:none;padding:0;border-left:1px solid #625b5b;margin:20px 0}.event-history li{padding:0 0 16px 16px}.event-history small{display:block;color:#b7afad;overflow-wrap:anywhere;margin-top:6px}dialog{background:#242326;color:#f6f0e3;border:1px solid #807575;border-radius:12px;padding:26px;max-width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#100f12d9}.dialog-actions{display:flex;gap:12px;justify-content:flex-end}button,nav a{min-height:44px}.checkpoint .badge{white-space:nowrap}@media(max-width:650px){nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}nav a{font-size:11px;min-width:0;gap:4px}.trace{grid-template-columns:1fr 1fr}.dialog-actions{flex-direction:column}.hero{min-height:175px}.hero img{height:80px;width:80px}.metrics .panel{padding:14px}.hero h1{font-size:32px}.hero p:not(.eyebrow){margin-bottom:10px}}
.triage-filters{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.triage-filters button{font-size:12px;padding:8px 11px}.triage-filters button[aria-pressed=true]{border-color:#f3b090;background:#433629}#triage-search{display:block;width:100%;padding:11px;background:#18181c;border:1px solid #625b5b;border-radius:6px;color:#f1edde;margin-top:9px}.graph-scroll{max-height:400px;overflow:auto;background:#18181c;border:1px solid #514b4b;border-radius:8px}.causal-graph{display:block;width:100%;min-width:560px}.causal-graph path{stroke:#d0b5a8;stroke-width:1.5;fill:none}.causal-graph rect{fill:#302b2b;stroke:#c49481}.causal-graph text{fill:#ece6df;font:11px Mono,monospace}.causal-graph .graph-heading{font:14px DM,sans-serif}.relationships{padding-left:18px;overflow-wrap:anywhere}.relationships li{padding:8px 0;font:11px/1.6 Mono,monospace}.relationships small{display:block;color:#b7afad}@media(max-width:650px){.graph-scroll{display:none}.relationships{font-size:11px}.triage-filters{display:grid;grid-template-columns:1fr 1fr}.triage-filters button{text-align:left}.checkpoint{grid-template-columns:minmax(0,1fr) auto}.checkpoint small{font-size:9px}}

.source-summary{margin-bottom:24px}.workflow-record{border-top:1px solid #514b4b;padding:18px 0}.workflow-record pre{white-space:pre-wrap;overflow-wrap:anywhere}.delivery-record{border-left:3px solid #f4a38b;padding-left:18px}.workflow-record h4{font-size:16px}

/* The observatory uses charcoal surfaces; coral identifies navigation and actions.
   Green remains only on the explicitly labelled Satisfied status. */
body[data-view="dashboard"]{background:#141416 url('/art/observatory-dawn-wide.webp') center top/cover fixed no-repeat}
body[data-view="dashboard"] .shell{background:linear-gradient(90deg,#141416ed,#141416c9)}
body[data-view="dashboard"] aside{background:#19191cf2}
body[data-view="dashboard"] main{max-width:1440px;margin-inline:auto;padding-bottom:48px}
body[data-view="dashboard"] .panel{background:linear-gradient(125deg,#252427f5,#202023f5)}
body[data-view="dashboard"] .hero{min-height:220px;gap:24px}
body[data-view="dashboard"] .hero>div{max-width:660px;min-width:0}
body[data-view="dashboard"] .hero img{flex:none;filter:drop-shadow(0 12px 28px #100f1240)}
body[data-view="dashboard"] .hero h1{text-wrap:balance;font-weight:450}
body[data-view="dashboard"] .hero p{font-size:14px}
body[data-view="dashboard"] .eyebrow{color:#efb49a}
nav a[aria-current="page"]{box-shadow:inset 3px 0 #f4a38b}
.metric strong,dd,.badge{font-variant-numeric:tabular-nums}
.inspect-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:88px;min-height:44px;white-space:nowrap;color:#f4b49d;font-size:12px}
.checkpoint{align-items:center;min-width:0}.checkpoint>span:first-child{min-width:0}
.checkpoint:hover{border-color:#b38a7b}.checkpoint[aria-pressed="true"]{border-color:#f4a38b;background:#352b2b}
.histogram rect:nth-child(2){fill:#c3bdbb}.histogram rect:nth-child(3){fill:#dbb776}
#account-menu{flex-wrap:wrap;justify-content:flex-end}#account-menu>span{overflow-wrap:anywhere}
#account-menu select{max-width:200px}summary{min-height:32px;line-height:1.6}
.panel h2{line-height:1.25}.panel h3,.panel h4{overflow-wrap:anywhere}p{overflow-wrap:break-word}
@media(min-width:1051px){body[data-view="dashboard"] aside{position:sticky;top:0;height:100dvh;overflow:auto}.aside-bottom{padding-top:36px}}
@media(max-width:650px){
 body[data-view="dashboard"]{background-image:url('/art/observatory-dawn-phone.webp');background-attachment:scroll}
 body[data-view="dashboard"] aside{padding:16px}
 body[data-view="dashboard"] nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;margin-top:18px}
 body[data-view="dashboard"] nav a{font-size:12px;padding:9px 10px;gap:8px}
 body[data-view="dashboard"] header{min-height:64px;height:auto;padding:12px 0;align-items:center}
 body[data-view="dashboard"] .hero{min-height:210px;gap:10px;padding:22px 0}
 body[data-view="dashboard"] .hero h1{font-size:30px;letter-spacing:-.8px}
 body[data-view="dashboard"] .hero p{font-size:13px}
 body[data-view="dashboard"] .hero img{width:72px;height:90px;margin-top:8px}
 body[data-view="dashboard"] .hero .eyebrow{font-size:9px}
 #account-menu{max-width:64%}.toolbar{gap:8px}.toolbar input{min-width:120px}
 .panel{padding:18px}.panel h2{font-size:22px}.trace{grid-template-columns:1fr}
 .chart-labels{gap:10px;font-size:9px;line-height:1.6}.chart-labels span{flex:1}
}
/* Page-specific scenes belong to the header, rather than floating as thumbnails. */
body[data-view="dashboard"] .hero{position:relative;isolation:isolate;overflow:hidden}
body[data-view="dashboard"] .hero>div{position:relative;z-index:1;max-width:72%;padding:20px 0}
body[data-view="dashboard"] .hero img{position:absolute;inset:0 0 0 auto;width:48%;height:100%;margin:0;object-fit:cover;opacity:.8;mask-image:linear-gradient(to left,#000 25%,transparent);filter:none;z-index:0}
.source-summary{padding:20px 24px}.source-summary p{margin:8px 0}.source-summary .muted{max-width:75ch}
@media(max-width:650px){body[data-view="dashboard"] .hero>div{max-width:100%;padding:0}body[data-view="dashboard"] .hero img{width:85%;height:100%;opacity:.3}.source-summary{padding:18px}}
