:root{--o-bone-50:#f6f4ee;--o-bone-100:#efede6;--o-bone-200:#e4e1d8;--o-sand:#d5cec1;--o-ink-900:#141917;--o-ink-800:#1b211e;--o-ink-700:#222b27;--o-ink-600:#3d4844;--o-ink-400:#6b756f;--o-ink-300:#8e968f;--o-sage:#6f7f73;--o-sage-deep:#55655a;--o-sage-lift:#96ae9c;--o-slate:#6d7c8d;--o-ok:#5b8a6b;--o-ok-lift:#7fae8c;--o-warn:#a8802f;--o-warn-lift:#c9a253;--o-bad:#a4503e;--o-bad-lift:#c97865;--ground:var(--o-bone-50);--surface:#fbfaf6;--surface-2:var(--o-bone-100);--ink:var(--o-ink-700);--ink-strong:var(--o-ink-900);--muted:var(--o-ink-400);--faint:var(--o-ink-300);--rule:#ddd9ce;--rule-strong:#c9c4b6;--accent:var(--o-sage-deep);--accent-soft:#e3e8e1;--on-accent:var(--o-bone-50);--ok:var(--o-ok);--warn:var(--o-warn);--bad:var(--o-bad);--font-display:"Jost", "Futura", -apple-system, "Helvetica Neue", sans-serif;--font-body:"Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--step--1:.8125rem;--step-0:1rem;--step-1:1.125rem;--step-2:1.5rem;--step-3:clamp(1.75rem, 3.2vw, 2.25rem);--step-4:clamp(2.25rem, 6vw, 4.25rem);--eyebrow-size:.6875rem;--eyebrow-track:.2em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--measure:68ch;--page-max:1120px;--r-control:4px;--r-card:8px;--r-pill:999px;--border:1px solid var(--rule);--lift:0 1px 2px #1419170f;--lift-media:0 8px 28px #14191747;--t-state:.15s;--t-surface:.22s;--ease:cubic-bezier(.2, 0, 0, 1)}[data-surface=spatial]{--ground:var(--o-ink-900);--surface:var(--o-ink-800);--surface-2:#262f2b;--ink:#edeee8;--ink-strong:#fff;--muted:#a8b0aa;--faint:#79817b;--rule:#2c3531;--rule-strong:#3d4844;--accent:var(--o-sage-lift);--accent-soft:#1f2a24;--on-accent:var(--o-ink-900);--ok:var(--o-ok-lift);--warn:var(--o-warn-lift);--bad:var(--o-bad-lift)}.o-eyebrow{font-family:var(--font-mono);font-size:var(--eyebrow-size);letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--accent);margin:0}.o-measure{max-width:var(--measure)}.o-btn{align-items:center;gap:var(--s-2);font:inherit;font-size:var(--step-0);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;transition:background var(--t-state) var(--ease), border-color var(--t-state) var(--ease), color var(--t-state) var(--ease);border:1px solid #0000;padding:12px 22px;font-weight:500;text-decoration:none;display:inline-flex}.o-btn--primary{background:var(--ink-strong);color:var(--ground)}.o-btn--primary:hover{background:var(--o-sage-deep)}[data-surface=spatial] .o-btn--primary{color:var(--o-ink-900);background:#fff}[data-surface=spatial] .o-btn--primary:hover{background:var(--o-sage-lift)}.o-btn--ghost{color:var(--ink);border-color:var(--rule-strong);background:0 0}.o-btn--ghost:hover{border-color:var(--ink)}.o-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.o-chip{align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--step--1);color:var(--muted);white-space:nowrap;display:inline-flex}.o-chip:before{content:"";background:var(--faint);border-radius:50%;flex:none;width:7px;height:7px}.o-chip[data-state=ready]:before,.o-chip[data-state=published]:before{background:var(--ok)}.o-chip[data-state=processing]:before{background:var(--o-slate)}.o-chip[data-state=attention]:before{background:var(--warn)}.o-chip[data-state=failed]:before{background:var(--bad)}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--muted:#555f59;--faint:#646e68;--step--1:.875rem}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}[data-surface=spatial] :focus-visible,.hero :focus-visible{outline-color:var(--o-sage-lift)}h1,h2,h3{text-wrap:balance;margin:0}h1{font-family:var(--font-display);font-weight:400;font-size:var(--step-3);letter-spacing:-.02em;color:var(--ink-strong);line-height:1.04}h2{font-family:var(--font-body);letter-spacing:-.005em;color:var(--ink-strong);font-size:1.125rem;font-weight:600;line-height:1.25}h3{font-family:var(--font-body);font-size:var(--step-0);font-weight:600}p{margin:0}.num,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-body);font-size:var(--eyebrow-size);letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--muted);font-weight:600}.sub{color:var(--muted);font-size:var(--step--1)}.measure{max-width:var(--measure)}.app{grid-template-columns:236px minmax(0,1fr);min-height:100%;display:grid}.rail{background:var(--surface);border-right:var(--border);padding:var(--s-5) var(--s-4);gap:var(--s-5);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.wordmark{font-family:var(--font-display);letter-spacing:-.055em;color:var(--ink-strong);font-size:1.9rem;font-weight:400;line-height:1;display:block}.wordmark span{font-family:var(--font-body);letter-spacing:.24em;color:var(--muted);margin-top:5px;padding-left:2px;font-size:.625rem;font-weight:600;display:block}.org{border:var(--border);border-radius:var(--r-control);background:var(--ground);padding:var(--s-2) var(--s-3);align-items:center;min-height:38px;display:flex}.org b{font-weight:500;font-size:var(--step--1);color:var(--ink)}.nav{flex-direction:column;gap:2px;display:flex}.nav a{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-radius:var(--r-control);color:var(--ink);font-size:var(--step--1);transition:background var(--t-state) var(--ease);font-weight:500;display:flex}.nav a:hover{background:var(--surface-2)}.nav a[aria-current=page]{background:var(--accent-soft);color:var(--ink-strong)}.nav svg{stroke:currentColor;fill:none;stroke-width:1.5px;opacity:.85;flex:none;width:17px;height:17px}.rail-foot{border-top:var(--border);padding-top:var(--s-4);margin-top:auto}.sheet-signout{display:none}.who{align-items:center;gap:var(--s-3);display:flex}.avatar{border-radius:var(--r-pill);background:var(--o-sage-deep);width:32px;height:32px;color:var(--on-accent);font-size:var(--step--1);font-weight:600;font-family:var(--font-body);flex:none;place-items:center;display:grid}.who .meta{flex-direction:column;min-width:0;display:flex}.who .name{font-size:var(--step--1);font-weight:500;line-height:1.3}.who .role{color:var(--muted);font-size:.75rem;line-height:1.3}.signout{margin-top:var(--s-3);justify-content:center;width:100%}.topbar{align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-6);border-bottom:var(--border);background:var(--surface);z-index:20;min-height:56px;display:flex;position:sticky;top:0}.crumb{align-items:center;gap:var(--s-2);font-size:var(--step--1);min-width:0;display:flex}.crumb a{color:var(--muted);white-space:nowrap}.crumb a:hover{color:var(--ink)}.crumb b{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.crumb .sep{color:var(--faint)}.grow{flex:auto;min-width:0}.rail .menubtn{display:none}.page{padding:var(--s-6) var(--s-6) var(--s-9);max-width:calc(var(--page-max) + var(--s-6) * 2);width:100%;margin:0 auto}.pagehead{align-items:flex-start;gap:var(--s-4);margin-bottom:var(--s-5);flex-wrap:wrap;display:flex}.pagehead .lead{font-size:var(--step-1);color:var(--muted);margin-top:var(--s-1)}.sectionhead{align-items:center;gap:var(--s-3);margin:var(--s-6) 0 var(--s-3);flex-wrap:wrap;display:flex}.sectionhead h2{font-size:1.125rem}.search{background:var(--ground);border:var(--border);border-radius:var(--r-pill);padding:0 var(--s-4);min-width:0;transition:border-color var(--t-state) var(--ease);flex:0 340px;align-items:center;display:flex;position:relative}.search:focus-within{border-color:var(--rule-strong)}.search svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:1.6px;flex:none}.search input{padding:var(--s-2) var(--s-2);font:inherit;font-size:var(--step--1);color:var(--ink);background:0 0;border:0;outline:none;width:100%;min-width:0}.search input::placeholder{color:var(--faint)}.btn{align-items:center;gap:var(--s-2);border:var(--border);background:var(--surface);color:var(--ink);border-radius:var(--r-control);padding:var(--s-2) var(--s-4);font-size:var(--step--1);white-space:nowrap;transition:background var(--t-state) var(--ease), border-color var(--t-state) var(--ease);font-weight:500;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--rule-strong)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--o-ink-900);border-color:var(--o-ink-900);color:var(--o-bone-50)}.btn.primary:hover:not(:disabled){background:var(--o-ink-700);border-color:var(--o-ink-700)}.btn.accent{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.accent:hover:not(:disabled){background:var(--o-sage);border-color:var(--o-sage)}.btn.quiet{color:var(--muted);background:0 0;border-color:#0000}.btn.quiet:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn.sm{padding:var(--s-1) var(--s-3);font-size:.78rem}.btn svg{stroke:currentColor;fill:none;stroke-width:1.7px;width:15px;height:15px}.input,select.input{border:var(--border);border-radius:var(--r-control);background:var(--surface);color:var(--ink);padding:var(--s-2) var(--s-3);font:inherit;font-size:var(--step--1);min-width:0}.input:focus{border-color:var(--rule-strong);outline:none}.metrics{border-top:var(--border);border-bottom:var(--border);margin-bottom:var(--s-6);flex-wrap:wrap;display:flex}.metric{align-items:baseline;gap:var(--s-3);padding:var(--s-4) var(--s-5) var(--s-4) 0;border-right:var(--border);transition:background var(--t-state) var(--ease);flex:150px;min-width:0;display:flex}.metric:last-child{border-right:0}.metric:not(:first-child){padding-left:var(--s-5)}.metric:hover{background:var(--surface-2)}.metric .n{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ink-strong);font-size:1.85rem;font-weight:500;line-height:1}.metric .l{font-size:var(--step--1);color:var(--muted);font-weight:500}.metric.attn .n{color:var(--warn)}.metric.attn.zero .n{color:var(--ink-strong)}.pill{border-radius:var(--r-pill);white-space:nowrap;background:var(--surface-2);color:var(--ink);border:1px solid #0000;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.pill:before{content:"";opacity:.55;background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}.pill.ready{background:var(--accent-soft);color:#33513c}.pill.attn{color:#7a5d18;background:#f6efdd}.pill.bad{color:#8a3e2c;background:#f6e4df}.pill.neutral{background:var(--surface-2);color:var(--muted)}.pill.plain:before{display:none}.grid{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(clamp(250px,23%,320px),1fr));align-items:stretch;display:grid}.grid>.pcard{max-width:460px}.pcard .body{flex:auto}.pcard .foot{margin-top:auto}.pcard{background:var(--surface);border:var(--border);border-radius:var(--r-card);transition:border-color var(--t-state) var(--ease), transform var(--t-state) var(--ease);flex-direction:column;display:flex;overflow:hidden}.pcard:hover{border-color:var(--rule-strong)}.pcard .cover{aspect-ratio:16/9;background:var(--surface-2);width:100%;display:block}.cover.fallback{padding:var(--s-4);background:linear-gradient(140deg, var(--o-bone-100) 0%, var(--o-bone-200) 100%);border-bottom:var(--border);place-items:center;display:grid}.cover.fallback span{font-family:var(--font-display);font-weight:300;font-size:var(--step-2);color:var(--o-ink-600);text-align:center;text-wrap:balance;line-height:1.15;overflow:hidden}.pcard .body{padding:var(--s-4);gap:var(--s-1);flex-direction:column;display:flex}.pcard .title{font-family:var(--font-body);font-size:var(--step-1);letter-spacing:-.01em;color:var(--ink-strong);font-weight:600}.pcard .meta{font-size:var(--step--1);color:var(--muted);font-weight:500}.pcard .counts{gap:var(--s-5);border-top:var(--border);margin-top:var(--s-3);padding-top:var(--s-3);display:flex}.pcard .counts div{align-items:baseline;gap:6px;display:flex}.pcard .counts .n{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--step-1);color:var(--ink-strong);font-weight:500}.pcard .counts .l{font-size:var(--step--1);color:var(--muted)}.pcard .foot{padding:0 var(--s-4) var(--s-4)}.rows{border:var(--border);border-radius:var(--r-card);background:var(--surface);overflow:hidden}.rows.flush{background:0 0;border:0;border-radius:0}.rowhead{align-items:center;gap:var(--s-4);padding:var(--s-2) var(--s-4);border-bottom:var(--border);background:var(--surface-2);display:grid}.rowhead span{font-size:var(--eyebrow-size);letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--muted);font-weight:600}.srow{align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-4);border-bottom:var(--border);transition:background var(--t-state) var(--ease);color:var(--ink);display:grid}.srow:last-child{border-bottom:0}.srow:hover{background:var(--surface-2)}.srow .thumb{border-radius:var(--r-control);object-fit:cover;background:var(--surface-2);border:var(--border);flex:none;width:76px;height:46px;overflow:hidden}.thumb.pano,.panoframe{background:var(--surface-2);display:block;position:relative;overflow:hidden}.thumb.pano img,.panoframe img{width:400%;max-width:none;height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.panoframe.cover{aspect-ratio:16/9;border-bottom:var(--border);width:100%}.srow .thumb.empty{letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-size:.6rem;font-family:var(--font-body);text-align:center;place-items:center;padding:2px;line-height:1.1;display:grid}.srow .name{color:var(--ink-strong);font-weight:600}.srow .where,.srow .why{font-size:var(--step--1);color:var(--muted);min-width:0}.srow .where{font-weight:500}.srow .why .det{margin-top:3px;display:block}.srow .act svg{width:16px;height:16px;stroke:var(--faint);fill:none;stroke-width:1.6px}.srow:hover .act svg{stroke:var(--ink)}.srow .why b{color:var(--ink);font-weight:500}.srow .act{justify-self:end}.rows.spaces .srow,.rows.spaces .rowhead,.rows.next .srow,.rows.next .rowhead{grid-template-columns:76px minmax(110px,.9fr) minmax(90px,.7fr) minmax(0,1.5fr) auto}.rows.caps .srow,.rows.caps .rowhead{grid-template-columns:76px minmax(110px,.9fr) minmax(0,1.2fr) minmax(0,1fr) auto}.rows.pub .srow,.rows.pub .rowhead{grid-template-columns:76px minmax(110px,.9fr) minmax(0,1.6fr) auto}.panel{border:var(--border);border-radius:var(--r-card);background:var(--surface);overflow:hidden}.panel>.rows{border:0;border-radius:0}.panelhead{align-items:center;gap:var(--s-5);padding:var(--s-4) var(--s-4) 0;flex-wrap:wrap;display:flex}.panelhead h2{margin-right:var(--s-2);font-size:1.125rem}.tabs{gap:var(--s-4);flex-wrap:wrap;flex:auto;display:flex}.tabs+.tabs{border-left:var(--border);padding-left:var(--s-4);margin-left:var(--s-1)}.tab{padding:var(--s-2) 0 var(--s-3);font-size:var(--step--1);color:var(--muted);align-items:center;gap:var(--s-2);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:500;display:inline-flex}.tab[aria-selected=true]{color:var(--ink-strong);border-bottom-color:var(--o-ink-900)}.tab .cnt{font-family:var(--font-mono);font-variant-numeric:tabular-nums;background:var(--surface-2);color:var(--muted);border-radius:var(--r-pill);padding:1px 6px;font-size:.7rem}.tab[aria-selected=true] .cnt{background:var(--accent-soft);color:#33513c}.tab.warn .cnt{color:#7a5d18;background:#f6efdd}.panelhead .seeall{font-size:var(--step--1);color:var(--muted);padding-bottom:var(--s-3)}.panelhead .seeall:hover{color:var(--ink)}.panelrule{border-bottom:var(--border)}.empty{border:1px dashed var(--rule-strong);border-radius:var(--r-card);background:var(--surface);padding:var(--s-7) var(--s-5);text-align:center;align-items:center;gap:var(--s-3);flex-direction:column;display:flex}.empty.left{text-align:left;padding:var(--s-5);align-items:flex-start}.empty h2{font-family:var(--font-display);font-weight:400;font-size:var(--step-2)}.empty p{color:var(--muted);max-width:52ch;font-size:var(--step-0)}.empty .acts{gap:var(--s-3);margin-top:var(--s-2);flex-wrap:wrap;justify-content:center;display:flex}.checklist{flex-direction:column;gap:0;display:flex}.ck{gap:var(--s-3);padding:var(--s-3) 0;border-bottom:var(--border);grid-template-columns:20px minmax(0,1fr);align-items:start;display:grid}.ck:last-child{border-bottom:0}.ck .mark{border-radius:50%;place-items:center;width:18px;height:18px;margin-top:1px;display:grid}.ck.done .mark{background:var(--accent-soft);color:#33513c}.ck.todo .mark{color:#7a5d18;background:#f6efdd}.ck.stop .mark{color:#8a3e2c;background:#f6e4df}.ck .mark svg{stroke:currentColor;fill:none;stroke-width:2.4px;width:11px;height:11px}.ck .what{font-size:var(--step--1);font-weight:600}.ck.done .what{color:var(--muted);font-weight:400}.ck .how{font-size:var(--step--1);color:var(--muted);margin-top:3px;display:block}.ck .tech{margin-top:var(--s-2);font-family:var(--font-mono);color:var(--faint);word-break:break-word;font-size:.7rem;display:block}.ck .tech summary{cursor:pointer}.addr{border:var(--border);border-radius:var(--r-card);background:var(--surface);overflow:hidden}.addrrow{padding:var(--s-4);border-bottom:var(--border);gap:var(--s-4);flex-wrap:wrap;align-items:flex-start;display:flex}.addrrow:last-child{border-bottom:0}.addrrow .col{flex:260px;min-width:0}.addrrow .u{font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-strong);word-break:break-all;margin-top:3px;display:block}.addrrow .acts{gap:var(--s-2);flex:none;display:flex}.addrrow.primary{background:var(--surface-2)}.addrrow.primary .u{font-size:var(--step-0)}.btn.strong{background:var(--o-ink-900);border-color:var(--o-ink-900);color:var(--o-bone-50)}.btn.strong:hover:not(:disabled){background:var(--o-ink-700);border-color:var(--o-ink-700)}.addralt{border-top:var(--border)}.addralt>summary{cursor:pointer;padding:var(--s-3) var(--s-4);font-size:var(--step--1);color:var(--muted);align-items:center;gap:var(--s-2);min-height:44px;font-weight:500;list-style:none;display:flex}.addralt>summary::-webkit-details-marker{display:none}.addralt>summary:before{content:"▸";color:var(--faint);transition:transform var(--t-state) var(--ease);font-size:1em}.addralt[open]>summary:before{transform:rotate(90deg)}.addralt>summary:hover{color:var(--ink)}.addralt .addrrow{border-top:var(--border)}.hero{border-radius:var(--r-card);background:var(--o-ink-900);border:var(--border);width:100%;height:clamp(180px,22vw,250px);position:relative;overflow:hidden}.hero img{object-fit:cover;width:100%;height:100%;display:block}.hero .panoframe{width:100%;height:100%}.hero .panoframe img{width:200%}.hero .cap{padding:var(--s-5) var(--s-4) var(--s-3);color:var(--o-bone-50);font-size:var(--step--1);align-items:center;gap:var(--s-3);background:linear-gradient(#14191700,#141917d1);flex-wrap:wrap;display:flex;position:absolute;bottom:0;left:0;right:0}.banner{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-6);color:#7a5d18;font-size:var(--step--1);background:#f6efdd;border-bottom:1px solid #e6d9b8;flex-wrap:wrap;display:flex}.note{border:var(--border);border-left:3px solid var(--accent);border-radius:var(--r-control);background:var(--surface);padding:var(--s-4);gap:var(--s-2);flex-direction:column;align-items:flex-start;display:flex}.note .eyebrow{color:var(--accent)}.note.warn{border-left-color:var(--warn)}.note.warn .eyebrow{color:var(--warn)}.kv{gap:var(--s-2) var(--s-5);grid-template-columns:minmax(120px,auto) minmax(0,1fr);margin:0;display:grid}.kv dt{font-size:var(--step--1);color:var(--muted)}.kv dd{font-size:var(--step--1);min-width:0;margin:0}.scrim{z-index:60;padding:var(--s-4);background:#14191766;place-items:center;display:grid;position:fixed;inset:0}.syncdot{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.syncdot i{background:var(--faint);border-radius:50%;width:6px;height:6px;display:block}.syncdot i.ok{background:var(--ok)}.syncdot i.bad{background:var(--bad)}.syncdot i.busy{background:var(--warn)}.pagefoot{justify-content:space-between;gap:var(--s-4);padding:var(--s-4) var(--s-6);border-top:var(--border);color:var(--faint);flex-wrap:wrap;font-size:.75rem;display:flex}@media (width<=1100px){.app{grid-template-columns:72px minmax(0,1fr)}.rail{padding:var(--s-4) var(--s-2);align-items:center}.rail .wordmark{text-align:center;letter-spacing:-.04em;font-size:1.05rem}.rail .wordmark span,.org,.who .meta,.nav a span,.signout span{display:none}.nav a{padding:var(--s-3);justify-content:center}.nav svg{width:19px;height:19px}.signout{padding:var(--s-2)}.page{padding:var(--s-5) var(--s-4) var(--s-8)}.topbar{padding:var(--s-3) var(--s-4)}.banner,.pagefoot{padding-left:var(--s-4);padding-right:var(--s-4)}}@media (width<=900px){.rows.spaces .srow,.rows.next .srow,.rows.caps .srow,.rows.pub .srow{align-items:start;gap:var(--s-1) var(--s-3);padding:var(--s-3) var(--s-4);grid-template-columns:64px minmax(0,1fr);grid-auto-rows:min-content}.rows .rowhead{display:none}.srow .thumb{grid-row:span 2;width:64px;height:42px}.srow>:not(.thumb){grid-column:2}.srow .act{margin-top:var(--s-2);justify-self:start}.srow .act .btn{padding:var(--s-2) var(--s-3)}.srow .act>svg{display:none}}@media (width<=760px){.app{grid-template-columns:minmax(0,1fr)}.rail{z-index:30;align-items:center;gap:var(--s-3);border-right:0;border-bottom:var(--border);height:auto;padding:var(--s-3) var(--s-4);flex-direction:row;position:sticky;top:0}.rail .wordmark{font-size:1.5rem}.rail-foot{border:0;margin:0 0 0 auto;padding:0}.who .avatar{width:30px;height:30px}.signout{display:none}.rail .menubtn{display:inline-flex}.nav{background:var(--surface);border-bottom:var(--border);padding:var(--s-2) var(--s-3) var(--s-3);gap:var(--s-1);box-shadow:var(--lift);position:absolute;top:100%;left:0;right:0}.nav a{padding:var(--s-3);font-size:var(--step-0);justify-content:flex-start}.nav a span{display:inline}.nav .sheetonly{display:flex}.sheet-signout{text-align:left;border:0;border-top:var(--border);width:100%;margin-top:var(--s-2);padding:var(--s-3);color:var(--muted);font-size:var(--step-0);background:0 0;font-weight:500;display:block}h1{font-size:1.75rem}.page{padding:var(--s-4) var(--s-4) var(--s-8)}.topbar{padding:var(--s-2) var(--s-4);gap:var(--s-2);flex-wrap:wrap;min-height:48px}.topbar .search{flex:100%;order:3}.crumb{flex:auto}.metrics{border:var(--border);border-radius:var(--r-card)}.metric{padding:var(--s-3) var(--s-4);border-bottom:var(--border);flex:40%}.metric:not(:first-child){padding-left:var(--s-4)}.metric:nth-child(2n){border-right:0}.metric:nth-last-child(-n+2){border-bottom:0}.metric .n{font-size:1.5rem}.grid{grid-template-columns:minmax(0,1fr)}.addrrow .acts{width:100%}.addrrow .acts .btn{flex:auto;justify-content:center}.hero{height:170px}.pagefoot{padding-left:var(--s-4);padding-right:var(--s-4)}}@media (prefers-reduced-motion:reduce){*{transition-duration:1ms!important;animation-duration:1ms!important}}.signin{min-height:100%;padding:var(--s-5);background:var(--ground);place-items:center;display:grid}.signin-card{background:var(--surface);border:var(--border);border-radius:var(--r-card);width:min(420px,100%);padding:var(--s-6);gap:var(--s-3);flex-direction:column;display:flex}.signin-mark{font-family:var(--font-display);color:var(--ink-strong);margin-bottom:var(--s-4);font-size:1.5rem;font-weight:300;line-height:1}.signin-mark span{font-size:var(--eyebrow-size);letter-spacing:var(--eyebrow-track);color:var(--muted);margin-top:var(--s-1);display:block}.signin-card h1{font-size:var(--step-3)}.signin-ended{color:#7a5d18;border-radius:var(--r-control);padding:var(--s-3);background:#f6efdd}.signin-code{font-family:var(--font-mono);letter-spacing:.14em;text-align:center;text-transform:uppercase;padding:var(--s-3);margin-top:var(--s-2);font-size:1.2rem}.signin-go{padding:var(--s-3);justify-content:center}.signin-error{color:#8a3e2c;border-radius:var(--r-control);padding:var(--s-3);font-size:var(--step--1);background:#f6e4df}.signin-foot{font-size:var(--step--1);color:var(--muted)}.signin-host{font-family:var(--font-mono);color:var(--faint);border-top:var(--border);padding-top:var(--s-3);margin-top:var(--s-2);word-break:break-all;font-size:.7rem}.crash{min-height:100%;padding:var(--s-5);background:var(--ground);place-items:center;display:grid}.crash-card{background:var(--surface);border:var(--border);border-radius:var(--r-card);width:min(560px,100%);padding:var(--s-6);gap:var(--s-3);flex-direction:column;display:flex}.crash-card h1{font-size:var(--step-3)}.crash-detail{margin-top:var(--s-3);border-top:var(--border);padding-top:var(--s-3)}.crash-detail summary{font-size:var(--step--1);color:var(--muted);cursor:pointer}.crash-detail pre{font-family:var(--font-mono);color:var(--muted);white-space:pre-wrap;word-break:break-word;max-height:240px;margin-top:var(--s-3);font-size:.7rem;overflow:auto}.modal-back{z-index:60;padding:var(--s-4);background:#1419176b;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:var(--border);border-radius:var(--r-card);box-shadow:var(--lift-media);width:min(460px,100%);max-height:90vh;padding:var(--s-5);gap:var(--s-4);flex-direction:column;display:flex;overflow:auto}.modal h2{font-size:var(--step-2)}.field{gap:var(--s-1);flex-direction:column;display:flex}.field>label,.field>.lbl{font-size:var(--eyebrow-size);letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--muted);font-weight:600}.row{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.spacer{flex:auto}.shell{background:var(--ground);flex-direction:column;min-height:100%;display:flex}.editor{gap:var(--s-4);padding:var(--s-5);grid-template-columns:minmax(0,1fr) 340px;align-items:start;display:grid}.canvaswrap{border:var(--border);border-radius:var(--r-card);background:var(--o-ink-900);overflow:hidden}.editor aside{gap:var(--s-4);flex-direction:column;min-width:0;display:flex}.editor .panel{padding:var(--s-4)}.cardlist{gap:var(--s-2);flex-direction:column;display:flex}.card{align-items:center;gap:var(--s-3);border:var(--border);border-radius:var(--r-card);background:var(--surface);padding:var(--s-3);color:var(--ink);display:flex}.card:hover{border-color:var(--rule-strong)}.card .body{flex:auto;min-width:0}.card .title{font-weight:500}.card .meta{font-size:var(--step--1);color:var(--muted)}.card .right{align-items:center;gap:var(--s-2);flex:none;display:flex}.queue{border:var(--border);border-radius:var(--r-card);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.queue-head{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);background:var(--surface-2);border-bottom:var(--border);display:flex}.queue-head .count{font-family:var(--font-mono);font-weight:500}.queue-head .label{font-size:var(--eyebrow-size);letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--muted);font-weight:600}.queue-row{align-items:center;gap:var(--s-3);padding:var(--s-3);border-bottom:var(--border);font-size:var(--step--1);color:var(--ink);display:flex}.queue-row:last-child{border-bottom:0}.queue-row .where{color:var(--muted)}.queue-row .why{color:var(--muted);min-width:0}.chip{border-radius:var(--r-pill);background:var(--surface-2);color:var(--muted);align-items:center;padding:2px 9px;font-size:.72rem;font-weight:500;display:inline-flex}.chip.ready,.chip.published{background:var(--accent-soft);color:#33513c}.chip.needs-attention,.chip.processing{color:#7a5d18;background:#f6efdd}.chip.failed{color:#8a3e2c;background:#f6e4df}.big{font-size:var(--step-1);color:var(--ink-strong);font-weight:500}@media (width<=900px){.editor{grid-template-columns:minmax(0,1fr)}}.editor-main{gap:var(--s-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}.editor-graph,.editor-preview{border:var(--border);border-radius:var(--r-card);background:var(--o-ink-900);aspect-ratio:4/3;max-height:58vh;position:relative;overflow:hidden}.editor-graph{display:flex}.graph-svg{touch-action:none;cursor:default;width:100%;height:100%;display:block}.graph-hint{left:var(--s-3);bottom:var(--s-3);color:#79817b;font-size:.7rem;font-family:var(--font-body);pointer-events:none;position:absolute}.editor-preview iframe{border:0;width:100%;height:100%;display:block}.preview-empty{text-align:center;color:#a8b0aa;width:100%;height:100%;padding:var(--s-4);place-items:center;display:grid}.preview-empty .mono{color:#79817b}.editor-foot{align-items:center;gap:var(--s-3);border:var(--border);border-radius:var(--r-card);background:var(--surface);padding:var(--s-3) var(--s-4);margin-top:var(--s-4);flex-wrap:wrap;display:flex}.name-input{border:var(--border);border-radius:var(--r-control);background:var(--ground);color:var(--ink-strong);padding:var(--s-2) var(--s-3);font:inherit;font-size:var(--step-0);min-width:160px;max-width:240px;font-weight:500}.name-input:focus{border-color:var(--rule-strong);outline:none}.qa-badges{gap:var(--s-3);font-family:var(--font-mono);color:var(--muted);font-size:.7rem;display:flex}.chip.ready-node{background:var(--accent-soft);color:#33513c}.chip.weak-coverage{color:#7a5d18;background:#f6efdd}.graph-svg .glink{stroke:#4a5550;stroke-width:.06px}.graph-svg .glink-hit{stroke:#0000;stroke-width:.4px;cursor:pointer}.graph-svg .glink-hit:hover{stroke:#96ae9c40}.graph-svg .gnode{cursor:grab}.graph-svg .gnode:active{cursor:grabbing}.graph-svg .ring{fill:none;stroke:#8e968f;stroke-width:.5px}.graph-svg .dot{fill:#8e968f}.graph-svg .gnode.selected .ring{stroke:var(--o-sage-lift);stroke-width:.8px}.graph-svg .gnode.selected .dot{fill:var(--o-sage-lift)}.graph-svg .entrymark{fill:none;stroke:var(--o-sage-lift);stroke-width:.35px;stroke-dasharray:1.2 .8}.graph-svg .gnode.processing .ring,.graph-svg .gnode.processing .dot{stroke:var(--o-warn-lift);fill:none}.graph-svg .gnode.failed .ring{stroke:var(--o-bad-lift)}.graph-svg .gnode.failed .dot{fill:var(--o-bad-lift)}.graph-svg .changemark.new{fill:var(--o-ok-lift)}.graph-svg .changemark.repro{fill:var(--o-warn-lift)}.graph-svg text{font-family:var(--font-body);fill:#edeee8;paint-order:stroke;stroke:#141917d9;stroke-width:.5px;stroke-linejoin:round;pointer-events:none;font-size:1.6px}.editor .topbar .wordmark{font-size:1.15rem}@media (width<=900px){.editor-main{grid-template-columns:minmax(0,1fr)}.editor-graph,.editor-preview{aspect-ratio:16/10;max-height:none}}.spacehead{align-items:start;gap:var(--s-4);padding-bottom:var(--s-4);border-bottom:var(--border);margin-bottom:var(--s-4);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.spacehead .ident{min-width:0}.spacehead .state{align-items:flex-end;gap:var(--s-2);text-align:right;flex-direction:column;display:flex}.spacehead .act{align-items:center;gap:var(--s-2);display:flex}.onphone{align-items:center;gap:var(--s-2);font-size:var(--step--1);color:var(--muted);font-weight:500;display:inline-flex}.onphone:before{content:"↗";color:var(--faint)}.alert{gap:var(--s-3);border:var(--border);border-left:3px solid var(--bad);border-radius:var(--r-card);padding:var(--s-4);margin-bottom:var(--s-4);background:#fbf2ef;display:flex}.alert .eyebrow{color:#8a3e2c;margin-bottom:var(--s-1)}.alert b{margin-bottom:var(--s-1);font-weight:600;display:block}.alert .sub{color:#6e4436}.alert .tech{margin-top:var(--s-2);font-family:var(--font-mono);color:#7a5244;font-size:.72rem}.alert .tech summary{cursor:pointer}.notice{align-items:baseline;gap:var(--s-2);border:var(--border);border-radius:var(--r-control);background:var(--surface-2);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);flex-wrap:wrap;display:flex}.notice b{font-weight:600}.hero+.sectionhead{margin-top:var(--s-6)}.versions{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(330px,1fr));align-items:start;display:grid}.vcard{border:var(--border);border-radius:var(--r-card);background:var(--surface);padding:var(--s-4);gap:var(--s-3);flex-direction:column;min-width:0;display:flex}.vcard.live{border-color:var(--rule-strong)}.vcard.failed{border-left:3px solid var(--bad)}.vcard.ready{border-left:3px solid var(--accent)}.vcard.needs-review,.vcard.incomplete{border-left:3px solid var(--warn)}.vhead{align-items:baseline;gap:var(--s-3);flex-wrap:wrap;display:flex}.vhead b{font-weight:600}.vdetail{font-size:var(--step--1);color:var(--muted);margin:0}.vacts{gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.vcard .addr{border:0;border-top:var(--border);margin:0 calc(var(--s-4) * -1);border-radius:0}.vcard .addrrow{padding:var(--s-3) var(--s-4)}@media (width<=900px){.spacehead{gap:var(--s-3);grid-template-columns:minmax(0,1fr)}.spacehead .state{text-align:left;flex-flow:wrap;align-items:center}.spacehead .act .btn,.spacehead .act .onphone{justify-content:center;width:100%}.spacehead .act{width:100%}.versions{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.panelhead{padding:var(--s-3) var(--s-4) 0;gap:var(--s-2);flex-wrap:wrap;align-items:baseline}.panelhead h2{font-size:var(--step-1);flex:1 0 100%;margin:0}.panelhead .tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:var(--s-4);margin:0 calc(var(--s-4) * -1);padding:0 var(--s-4);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--s-4), #000 calc(100% - var(--s-7)), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--s-4), #000 calc(100% - var(--s-7)), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 var(--s-4), #000 calc(100% - var(--s-7)), transparent 100%);flex-wrap:nowrap;flex:100%;overflow-x:auto}.panelhead .tabs::-webkit-scrollbar{display:none}.panelhead .tab{white-space:nowrap;padding-bottom:var(--s-2);scroll-snap-align:start}.panelhead .seeall{display:none}.panel .seeall-foot{display:block}.sectionhead .tabs{scrollbar-width:none;margin:0 calc(var(--s-4) * -1);padding:0 var(--s-4);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--s-4), #000 calc(100% - var(--s-7)), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--s-4), #000 calc(100% - var(--s-7)), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 var(--s-4), #000 calc(100% - var(--s-7)), transparent 100%);flex-wrap:nowrap;overflow-x:auto}.sectionhead .tabs::-webkit-scrollbar{display:none}.sectionhead .tabs+.tabs{padding-left:var(--s-4);border-left:0;margin-left:0}.sectionhead .tab{white-space:nowrap}.sectionhead{margin:var(--s-5) 0 var(--s-2);gap:var(--s-2)}.pagehead{margin-bottom:var(--s-4);gap:var(--s-2)}.metrics{margin-bottom:var(--s-4)}.btn,.tab,.nav a,.signout,.sheet-signout,.search input,.input,select.input{min-height:44px}.btn{padding:var(--s-2) var(--s-4)}.btn.sm{padding:var(--s-2) var(--s-3);font-size:var(--step--1)}.srow,.addrrow .acts .btn{min-height:44px}.menubtn,.rail .menubtn{justify-content:center;min-width:44px;min-height:44px}.rail .wordmark,.crumb a,.crumb b{align-items:center;min-height:44px;display:inline-flex}.crumb{gap:var(--s-1)}.avatar{width:36px;height:36px}}.seeall-foot{padding:var(--s-3) var(--s-4);border-top:var(--border);font-size:var(--step--1);color:var(--muted);font-weight:500;display:none}.startblock{gap:var(--s-4);flex-direction:column;display:flex}.startrow{gap:var(--s-5);border:var(--border);border-radius:var(--r-card);background:var(--surface);padding:var(--s-4);grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:center;display:grid}.startrow .pcard{border:var(--border)}.startnext{gap:var(--s-3);flex-direction:column;align-items:flex-start;min-width:0;display:flex}.startnext h2{font-family:var(--font-display);font-weight:400;font-size:var(--step-2)}.startnext p{color:var(--muted);font-size:var(--step-0)}@media (width<=760px){.startrow{gap:var(--s-4);grid-template-columns:minmax(0,1fr)}.startnext .btn{justify-content:center;width:100%}}.panellead{padding:var(--s-3) var(--s-4);border-bottom:var(--border);font-size:var(--step--1);color:var(--muted);max-width:var(--measure)}.btn.warn{border-color:var(--warn);color:#7a5d18;background:#f6efdd}.stillive{margin:var(--s-3) 0 0;padding:var(--s-3);background:var(--surface);border:var(--border);border-radius:var(--r-control);font-size:var(--step--1);color:var(--ink)}.stillive b{font-weight:600}
