:root{--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--t-micro: 11px;--t-small: 12px;--t-body: 13px;--t-lead: 15px;--t-title: 19px;--t-display: 28px;--side-w: 460px;--divider-w: 4px}.app{display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:100%;min-height:0}.menubar{display:flex;align-items:center;gap:var(--s3);padding:0 var(--s3);background:var(--bg-alt);border-bottom:1px solid var(--border);position:relative;z-index:20}.lockup{--lockup-tile: 22px;position:relative;display:block;flex:none;width:calc(var(--lockup-tile) * 2046 / 300);height:calc(var(--lockup-tile) * 348 / 300);background:url(/downfield-lockup-line-dark.png) left top / 100% 100% no-repeat;forced-color-adjust:none}:root[data-theme=light] .lockup{background-image:url(/downfield-lockup-line-light.png)}.lockup-mark{position:absolute;left:calc(var(--lockup-tile) * 24 / 300);top:calc(var(--lockup-tile) * 24 / 300);width:var(--lockup-tile);height:var(--lockup-tile)}.lockup-mark.playing,.lockup-mark.leaving{box-sizing:border-box;padding:calc(var(--lockup-tile) * 4 / 48);background:var(--lockup-surface, var(--bg-alt));background-clip:content-box;transition:opacity .25s ease-out}.lockup-mark.leaving{opacity:0}.lockup-mark>downfield-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:block}.lockup-mark>downfield-mark>svg{position:absolute;left:calc(var(--lockup-tile) * -24 / 300);top:calc(var(--lockup-tile) * -24 / 300);width:calc(var(--lockup-tile) * 2046 / 300)!important;height:calc(var(--lockup-tile) * 348 / 300)!important;pointer-events:none}.lockup-mark>downfield-mark>svg>rect{visibility:hidden}.lockup-mark>downfield-mark path:first-child{stroke-width:1.8px}.lockup-mark>downfield-mark path+path{stroke-width:1.5px}.menubar .brand{--lockup-tile: 22px;--lockup-surface: var(--bg-alt)}.brand-stage{flex:none;font-family:var(--mono);font-size:var(--t-micro);text-transform:lowercase;color:var(--fg-faint)}.menubar-items{display:flex;align-items:stretch}.menu{position:relative}.menu-title{background:none;border:0;border-radius:var(--radius-control);color:var(--fg);font-size:var(--t-body);line-height:18px;padding:var(--s2) var(--s3)}.menu-title:hover,.menu-title.on{background:var(--bg-panel)}.menu-pop{position:absolute;top:calc(100% + 1px);left:0;z-index:50;min-width:260px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--s1);display:flex;flex-direction:column}.menu-pop>button{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s5);width:100%;text-align:left;background:none;border:0;border-radius:var(--radius-control);color:var(--fg);font-size:var(--t-body);padding:var(--s2) var(--s3);white-space:nowrap}.menu-pop>button:hover,.menu-pop>button:focus-visible{background:var(--accent-soft)}.menu-check{display:inline-block;width:1.2em;color:var(--accent)}.menu-pop>hr{height:1px;border:0;background:var(--border);margin:var(--s1) var(--s2);width:auto}.body{display:grid;grid-template-columns:var(--side-w) var(--divider-w) minmax(0,1fr);min-height:0}.divider{background:var(--border)}.body-analyze{--side-w: clamp(400px, 34vw, 560px)}.sidebar{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:var(--s2);background:var(--bg-alt);padding:var(--s3);min-height:0;min-width:0}.context{background:var(--bg);overflow-y:auto;overflow-x:hidden;min-height:0;padding:var(--s4)}.context-analyze{padding:0}.sidebar-rule{height:1px;border:0;background:var(--border);margin:0;width:auto}.sidebar-tip{margin:0;color:var(--fg-faint);font-size:var(--t-small);padding:var(--s2) var(--s2) 0}.steps ol{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:var(--s1)}.step-pill{display:flex;align-items:center;gap:5px;width:100%;min-height:30px;text-align:left;background:none;border:1px solid transparent;border-radius:var(--radius-control);padding:0 var(--s2) 0 6px;color:var(--fg-dim);font-size:var(--t-body)}.step-pill .badge{flex:none;width:16px;height:16px;border-radius:50%;display:grid;place-items:center;font-size:var(--t-micro);font-weight:600;background:var(--bg-sunk);border:1px solid var(--border);color:var(--fg-dim);line-height:12px;padding:0}.step-pill .label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-pill:hover{background:var(--bg-alt);color:var(--fg)}.step-pill.current{background:var(--bg-panel);border-color:var(--border);color:var(--fg);font-weight:600}.step-pill.current .badge{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.step-pill.done{color:var(--fg);font-weight:600}.step-pill.done .badge{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.statusbar{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s4);min-height:40px;background:var(--bg-alt);border-top:1px solid var(--border);color:var(--fg-dim);font-size:var(--t-small);position:relative}.status-message{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statusbar-gap{flex:1}.status-progress{flex:none;position:relative;width:96px;height:4px;border-radius:var(--radius-pill);background:var(--border);overflow:hidden}.status-progress>i{position:absolute;inset:0 auto 0 0;width:40%;background:var(--accent);animation:slide 1.1s ease-in-out infinite}.status-elapsed{flex:none;font-family:var(--mono);font-size:var(--t-micro);color:var(--fg-dim);min-width:4ch}@media(prefers-reduced-motion:reduce){.status-progress>i{animation:none;width:100%;opacity:.5}}.status-link{background:none;border:0;border-radius:var(--radius-control);color:var(--fg-dim);font-size:var(--t-small);padding:var(--s1) var(--s2);white-space:nowrap}.status-link:hover{color:var(--fg)}@media(max-width:480px){.statusbar{flex-wrap:wrap;align-items:stretch;gap:0;padding:var(--s2) var(--s3)}.status-message{flex:1 1 100%;padding:var(--s1) var(--s2);overflow:visible;white-space:normal}.busy-label,.statusbar-gap{display:none}.status-link{flex:1 1 auto;text-align:center}}.step,.step-load,.step-check{display:flex;flex-direction:column;gap:var(--s3)}.kicker{margin:0;color:var(--fg-faint);font-size:var(--t-micro);font-weight:600}.step h1,.step-load h1,.step-check h1{margin:0;font-size:var(--t-title);font-weight:600;letter-spacing:-.01em}.blurb,.hint{margin:0;color:var(--fg-dim);font-size:var(--t-body)}.hint{color:var(--fg-faint);font-size:var(--t-small)}.muted{color:var(--fg-dim)}.actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2)}.stats{display:flex;gap:var(--s5);padding:var(--s2) 0}.stat{display:flex;flex-direction:column}.stat .value{font-size:var(--t-display);font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat .cap{color:var(--fg-dim);font-size:var(--t-micro)}.btn{font:inherit;font-size:var(--t-body);padding:var(--s2) var(--s3);min-height:32px;border-radius:var(--radius-control);border:1px solid var(--border-strong);background:var(--bg-panel);color:var(--fg)}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:active:not(:disabled){background:var(--accent-soft)}.btn:disabled{color:var(--fg-faint);border-color:var(--border);cursor:not-allowed}.btn.accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn.accent:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn.accent:disabled{background:var(--bg-panel);border-color:var(--grid);color:var(--fg-faint)}.btn.quiet{background:none;border-color:transparent;color:var(--fg-dim)}.btn.quiet:hover{background:var(--bg-panel);color:var(--fg)}.btn.quiet.on{color:var(--accent);border-color:var(--border)}.action-card{display:flex;flex-direction:column;justify-content:center;gap:2px;width:100%;min-height:46px;text-align:left;padding:6px var(--s3);background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:var(--radius-control);color:var(--fg)}.action-card:hover{border-color:var(--accent)}.action-card .title{font-size:var(--t-body);font-weight:700}.action-card .note{font-size:var(--t-micro);color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-data{display:flex;flex-direction:column;gap:var(--s2);width:100%;padding:var(--s2) var(--s3) var(--s3);background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:var(--radius-control)}.add-data .add-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s2);margin:0}.add-data .title{font-size:var(--t-body);font-weight:700}.add-data .note{font-size:var(--t-micro);color:var(--fg-dim)}.add-data .add-actions{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--s2)}.add-data .hint{margin:0;font-size:var(--t-small)}button.icon{background:none;border:0;color:var(--fg-faint);padding:2px 6px;border-radius:var(--s1);line-height:1}button.icon:hover{color:var(--fg)}input[type=text],input[type=search],input[type=number],select{font:inherit;font-size:var(--t-body);color:var(--fg);background:var(--bg-sunk);border:1px solid var(--border-strong);border-radius:var(--radius-control);padding:var(--s1) var(--s2);min-height:30px}input[type=range],input[type=checkbox],input[type=radio]{accent-color:var(--accent)}label{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-small);color:var(--fg-dim)}label.inline{gap:var(--s1)}fieldset{border:0;border-top:1px solid var(--border);margin:0;padding:var(--s3) 0 0;display:flex;flex-direction:column;gap:var(--s2)}legend{font-size:var(--t-small);font-weight:600;color:var(--fg);padding:0}.row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.num{font-variant-numeric:tabular-nums;font-family:var(--mono);color:var(--fg);min-width:5ch;text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.notice{margin:0;border:1px solid var(--border);border-radius:var(--radius);padding:var(--s3);font-size:var(--t-small);background:var(--bg-panel)}.notice.info{color:var(--fg-dim)}.notice.warn{background:var(--warn-soft);border-color:var(--warn-soft)}.notice.bad{background:var(--bad-soft);border-color:var(--bad-soft)}.notice.ok{background:var(--ok-soft);border-color:var(--ok-soft)}.notice h2{margin:0 0 var(--s2);font-size:var(--t-lead);font-weight:600;color:var(--fg)}.notice p{margin:0 0 var(--s2);line-height:1.5}.notice p:last-child{margin-bottom:0}.warnings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s2)}.disclose{border-top:1px solid var(--border);margin-top:var(--s4);padding-top:var(--s2)}.discloser{background:none;border:0;color:var(--fg-dim);font-size:var(--t-body);display:flex;align-items:center;gap:var(--s2);padding:var(--s1) 0}.discloser:hover{color:var(--fg)}.disclose-body{display:flex;flex-direction:column;gap:var(--s4);padding-bottom:var(--s4)}.disclose-body[hidden]{display:none}.stage{display:grid;background:var(--bg);min-height:0;min-width:0}.stage-fill{grid-template-rows:minmax(0,1fr);overflow:hidden}.stage-flow{grid-template-rows:auto;align-content:start;overflow-y:auto}.plot-host{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:320px;min-width:0;flex:1 1 auto;align-self:stretch;height:100%}.canvas-host{display:grid;min-height:0;min-width:0}.dropzone{display:grid;place-items:center;padding:var(--s6);min-height:0}.dropbox{width:100%;max-width:470px;border:1px dashed var(--border);border-radius:var(--radius-panel);background:var(--bg-alt);padding:var(--s6);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--s3)}.dropzone.hot .dropbox{border-color:var(--accent);background:var(--accent-soft)}.drop-glyph{width:36px;height:36px;color:var(--fg)}.dropbox h2{margin:0;font-size:var(--t-title);font-weight:600}.dropbox p{margin:0;color:var(--fg-dim);font-size:var(--t-body)}.dropbox-actions{display:flex;gap:var(--s2);justify-content:center;margin-top:var(--s2)}.dropbox .btn.accent{min-height:34px;padding:var(--s2) var(--s4)}.dropbox-demo{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--s2);margin-top:var(--s2)}.dropbox .dropbox-or{width:100%;display:flex;align-items:center;gap:var(--s3);color:var(--fg-faint);font-size:var(--t-small)}.dropbox .dropbox-or:before,.dropbox .dropbox-or:after{content:"";flex:1;height:1px;background:var(--border)}.dropbox .dropbox-demo .hint{font-size:var(--t-small)}.upload{margin-top:var(--s2);width:100%;display:flex;flex-direction:column;gap:var(--s1)}.upload p{margin:0;color:var(--fg-dim);font-size:var(--t-small)}.upload-bar,.busy-rail{height:3px;border-radius:var(--radius-pill);background:var(--border);overflow:hidden}.upload-bar>i,.busy-rail>i{display:block;height:100%;background:var(--accent)}.busy-rail{position:absolute;inset:0 0 auto 0;height:2px;background:transparent}.busy-rail>i.indeterminate{width:40%;animation:slide 1.1s ease-in-out infinite}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.busy-label{color:var(--fg-dim);font-size:var(--t-micro)}.picker{position:relative;display:grid;grid-template-rows:minmax(0,1fr);min-height:0;padding:var(--s4)}.picker.hot .checklist{border-color:var(--accent);background:var(--accent-soft)}.picker .drop-hint{position:absolute;top:var(--s6);left:50%;transform:translate(-50%);z-index:2;margin:0;padding:var(--s2) var(--s4);border-radius:var(--radius-control);background:var(--accent);color:var(--bg);font-size:var(--t-body);font-weight:600;pointer-events:none}.checklist{display:flex;flex-direction:column;min-height:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg-sunk)}.checklist-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);background:var(--bg-alt);border-bottom:1px solid var(--border)}.checklist-head .count{margin:0;font-size:var(--t-lead);font-weight:600;color:var(--fg);white-space:pre}.checklist-head .filter{flex:1;min-width:12ch}.table-scroll{overflow:auto;min-height:0}table.datasets{width:100%;border-collapse:collapse;font-size:var(--t-small)}table.datasets th{position:sticky;top:0;background:var(--bg-sunk);text-align:left;font-weight:600;color:var(--fg-dim);font-size:var(--t-micro);padding:var(--s2);border-bottom:1px solid var(--border)}table.datasets td{padding:var(--s1) var(--s2);border-bottom:1px solid var(--grid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:22ch}table.datasets tbody tr:nth-child(2n){background:var(--alt-row)}table.datasets tr.on{background:var(--accent-soft)}table.datasets .dim{color:var(--fg-dim)}table.datasets .c-num{text-align:right;font-variant-numeric:tabular-nums}table.datasets .c-mid{text-align:center}table.datasets .c-check{width:28px;text-align:center}.row-toggle{background:none;border:0;padding:0;color:inherit;font:inherit;text-align:left;width:100%}.viewbar{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s4);background:var(--bg-alt);border-bottom:1px solid var(--border);flex-wrap:wrap;row-gap:var(--s1)}.seg{flex:none;display:flex;border:1px solid var(--border);border-radius:var(--radius-control);overflow:hidden}.seg-btn{font:inherit;font-size:var(--t-small);background:none;border:0;border-right:1px solid var(--border);color:var(--fg-dim);padding:var(--s1) var(--s3);min-height:28px}.seg-btn:last-child{border-right:0}.seg-btn:hover{color:var(--fg)}.seg-btn.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.spread{flex:none;gap:var(--s2)}.spread input[type=range]{width:110px}.viewbar .readout{font-family:var(--mono);font-size:var(--t-micro);color:var(--fg-dim);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--s1) var(--s2);min-width:11ch;text-align:right}.viewbar button{white-space:nowrap}.viewbar .readout:empty{border-color:transparent}.viewbar-gap{flex:1}.plot{position:relative;background:var(--plot-bg);min-height:0;min-width:0}.plot-top{min-width:0}.trace-strip{display:flex;align-items:center;gap:var(--s2);padding:var(--s1) var(--s4);background:var(--bg-alt);border-bottom:1px solid var(--border);min-width:0}.trace-strip-cap{color:var(--fg-faint);font-size:var(--t-micro)}.trace-chips{display:flex;gap:var(--s1);overflow-x:auto;flex:1;min-width:0}.trace-chip{font:inherit;font-size:var(--t-small);white-space:nowrap;padding:2px var(--s2);border:1px solid var(--border);border-left:4px solid var(--border);border-radius:var(--radius-control);background:transparent;color:var(--fg-faint)}.trace-chip.on{background:var(--bg-panel);color:var(--fg)}.trace-chip.active{border-top-color:var(--accent);border-right-color:var(--accent);border-bottom-color:var(--accent)}.trace-chip:hover{color:var(--fg)}.checklist{display:flex;flex-direction:column;gap:var(--s2)}.check-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s1)}.check-row{display:flex;align-items:flex-start;gap:var(--s2);padding:var(--s2) var(--s3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--bg-panel)}.check-row.v-warn{background:var(--warn-soft);border-color:var(--warn-soft)}.check-row.v-bad{background:var(--bad-soft);border-color:var(--bad-soft)}.check-mark{width:14px;flex:none;text-align:center;font-size:var(--t-body);font-weight:600}.check-row.v-ok .check-mark{color:var(--ok)}.check-row.v-warn .check-mark{color:var(--warn)}.check-row.v-bad .check-mark{color:var(--bad)}.check-row.v-unknown .check-mark{color:var(--fg-faint)}.check-row.v-unknown{background:transparent;border-color:transparent;color:var(--fg-dim)}.check-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.check-head{margin:0;font-size:var(--t-small)}.check-note{margin:0;color:var(--fg-dim);font-size:var(--t-micro)}.check-why{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s1);font-size:var(--t-micro);color:var(--fg-dim)}.check-why ul{margin:0;padding-left:var(--s4)}.btn.compact{min-height:26px;padding:2px var(--s2);font-size:var(--t-small);flex:none}.num-input{width:8ch}.phase-control .grow{flex:1}.phase-control .grow input[type=range]{flex:1;min-width:80px}.plot-canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;touch-action:none}.plot-mode{position:absolute;inset:var(--s2) auto auto var(--s4);margin:0;font-size:var(--t-small);color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-control);padding:var(--s1) var(--s2)}.plot-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s2);text-align:center;padding:var(--s6);background:color-mix(in srgb,var(--plot-bg) 82%,transparent)}.plot-empty h3{margin:0;font-size:var(--t-title);font-weight:600}.plot-empty p{margin:0;max-width:46ch;color:var(--fg-dim);font-size:var(--t-body)}.toasts{position:fixed;inset:auto var(--s4) var(--s7) auto;display:flex;flex-direction:column;gap:var(--s2);max-width:44ch;z-index:30}.toast{display:flex;align-items:flex-start;gap:var(--s2);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--s2) var(--s3);font-size:var(--t-small)}.toast p{margin:0;flex:1;line-height:1.45}.toast.error{background:var(--bad-soft);border-color:var(--bad-soft)}.toast.warn{background:var(--warn-soft);border-color:var(--warn-soft)}.toast.ok{background:var(--ok-soft);border-color:var(--ok-soft)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:color-mix(in srgb,var(--bg) 84%,transparent);display:grid;place-items:start center;overflow-y:auto;padding:var(--s5) var(--s4)}.sheet{width:100%;max-width:860px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow);padding:var(--s5)}.sheet header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);border-bottom:1px solid var(--border);padding-bottom:var(--s3);margin-bottom:var(--s4)}.sheet h2{margin:0;font-size:var(--t-title);font-weight:600;letter-spacing:-.01em}.sheet-cols{columns:3 240px;column-gap:var(--s6)}.sheet-cols section{break-inside:avoid;margin:0 0 var(--s4)}.sheet-cols h3{margin:0 0 var(--s1);font-size:var(--t-micro);font-weight:600;color:var(--fg-dim);border-bottom:1px solid var(--border);padding-bottom:var(--s1)}.sheet-cols dl{margin:0;display:flex;flex-direction:column;gap:2px}.sheet-cols dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);font-size:var(--t-small)}.sheet-cols dt{color:var(--fg-dim)}.sheet-cols dd{margin:0;display:flex;gap:var(--s2)}kbd{font-family:var(--mono);font-size:var(--t-micro);color:var(--fg-faint);white-space:nowrap}.sheet-note{margin:var(--s4) 0 0;color:var(--fg-faint);font-size:var(--t-small)}.sheet.prose section{max-width:68ch}.sheet.prose h3{margin:var(--s4) 0 var(--s1);font-size:var(--t-lead);font-weight:600}.sheet.prose p{margin:0;color:var(--fg-dim);font-size:var(--t-body);line-height:1.6}@media(max-width:1180px){:root{--side-w: 380px}.body-analyze{--side-w: 400px}}@media(max-width:900px){html,body,#root{height:auto;min-height:100%}body{overflow-x:hidden;overflow-y:auto}.app{height:auto;min-height:100vh;min-height:100dvh}.body{grid-template-columns:minmax(0,1fr);grid-template-rows:auto var(--divider-w) auto}.sidebar,.body-analyze .sidebar{max-height:none}.context{overflow:clip}.stage-fill,.stage-flow{overflow:visible;grid-template-rows:auto}.app .body-analyze:has(.an-fine-open) .sidebar{max-height:none}.step-load>.btn[data-tour=open]{order:1;position:sticky;bottom:var(--s3);z-index:2;box-shadow:0 0 0 var(--s2) var(--bg)}.steps{overflow-x:auto}.steps ol{grid-auto-columns:minmax(96px,1fr);min-width:400px}.toasts{inset:auto var(--s2) var(--s7) var(--s2);max-width:none}}.stat .value,table.datasets .c-num,.nw-num,.nw-tbl td:not(.nw-l):not(.nw-c){font-family:var(--mono)}.product-name{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap;font-family:var(--brand);font-size:15px;font-weight:600;letter-spacing:-.01em}.product-stage{font-weight:400;color:var(--fg-faint)}.sheet-titles{display:flex;align-items:baseline;gap:var(--s3);flex-wrap:wrap}.sheet-titles .product-name{color:var(--fg-dim)}@media(max-width:720px){.menubar .brand-stage{display:none}}@media(max-width:480px){.menubar .lockup.brand,:root[data-theme=light] .menubar .lockup.brand{width:var(--lockup-tile);height:var(--lockup-tile);background:url(/downfield-favicon.svg) center / contain no-repeat}.menubar .brand .lockup-mark{display:none}}.ds-kind{display:inline-block;margin-right:var(--s2);padding:0 var(--s2);border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--t-micro);font-weight:600}.ds-locked{display:block;width:max-content;margin-top:2px;padding:0 var(--s2);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--fg-dim);font-size:var(--t-micro);white-space:nowrap}.ds-refused{margin:0 0 var(--s3);padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--warn-soft);font-size:var(--t-small)}.ds-refused p{margin:0 0 var(--s1);font-weight:600}.ds-refused ul{margin:0;padding-left:var(--s5)}.ds-refused li+li{margin-top:var(--s1)}.plot-live{position:absolute;inset:var(--s2) var(--s4) auto auto;max-width:min(32rem,70%);margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--s2);font-size:var(--t-small);color:var(--fg);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--s1) var(--s2);pointer-events:none}.plot-live-dot{width:.6em;height:.6em;border-radius:50%;background:#ffca28;align-self:center;flex:none}.plot-live-hint{flex-basis:100%;color:var(--fg-dim)}:is(button,input,select,textarea)[aria-disabled=true]{opacity:.45;cursor:not-allowed}:is(button,select)[aria-disabled=true]:hover{border-color:var(--border-strong)}.plot-live-off{pointer-events:auto;margin-left:auto;border:0;background:none;color:var(--fg-dim);cursor:pointer;font-size:var(--t-body);line-height:1;padding:0 var(--s1)}.plot-live-off:hover{color:var(--fg)}.nw-predict-result{display:flex;flex-direction:column;gap:var(--s2, 8px)}.nw-predict-plot{display:grid;height:260px;border-radius:8px;overflow:hidden}.nw-predict-plot>.plot{height:100%}.nw-predict-caption{margin:0}.nw-predict-onplot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.nw-predict-onplot .nw-note{flex:1 1 220px;margin:0}.nw-predict-structure{display:flex;justify-content:center}.nw-predict-peaks>summary{cursor:pointer;padding:6px 0;color:var(--muted);font-weight:600}.nw-predict-peaks[open]>summary{color:var(--ink)}.inv-left{margin:0;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.inv-reward{margin:0;font-size:14px;line-height:1.45;color:var(--fg)}.inv-form{display:flex;flex-direction:column;gap:10px}.inv-form .nw-field{align-items:stretch;text-align:left}.inv-form .nw-input{width:100%;max-width:380px;box-sizing:border-box;font-size:14px;padding:8px 10px}.inv-row{display:flex;flex-wrap:wrap;gap:8px}.inv-form .inv-row{align-items:flex-start}.inv-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.inv-copy .nw-hint{margin:0}.inv-done{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border-radius:10px;background:var(--accent-soft)}.inv-done-line{margin:0;font-size:14px;font-weight:600;color:var(--fg)}.inv-link{font-family:var(--df-font-mono),monospace;font-size:12px;word-break:break-all;color:var(--fg-dim)}.inv-list-h{margin:4px 0 6px;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--muted)}.inv-list ul{list-style:none;margin:0;padding:0}.inv-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:7px 0;border-top:1px solid var(--border);font-size:13px}.inv-email{flex:1 1 12rem;min-width:0;overflow-wrap:anywhere;color:var(--fg)}.inv-state{color:var(--muted)}.inv-state.bad{color:var(--bad)}.inv-actions{display:flex;gap:10px}.inv-act{background:none;border:0;padding:0;font:inherit;font-size:12.5px;color:var(--accent);cursor:pointer}.inv-act:hover:not(:disabled){text-decoration:underline}.inv-act:disabled{color:var(--faint);cursor:default}.inv-short{display:none}@media(max-width:600px){.inv-long{display:none}.inv-short{display:inline}}.beta-notice-body{margin:0;font-size:14px;line-height:1.55;color:var(--fg)}.beta-notice-body+.beta-notice-body{margin-top:10px}.beta-notice-link{margin:12px 0 0}.beta-link{background:none;border:0;padding:0;font:inherit;font-size:13px;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.beta-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.feedback-text{width:100%;box-sizing:border-box;font-size:14px;line-height:1.45;padding:8px 10px;resize:vertical}.feedback-count{text-align:right;font-variant-numeric:tabular-nums;margin:2px 0 0}button.brand-stage{background:none;border:0;padding:2px 4px;margin:0 0 0 -2px;cursor:pointer;border-radius:4px}button.brand-stage:hover{color:var(--fg-dim)}button.brand-stage:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.nw-review{display:flex;flex-direction:column;min-height:100%;width:100%;overscroll-behavior:none;position:relative}.nw-review-progress{height:2px;flex:none}.nw-review-progress>i{display:block;height:100%;width:0;background:var(--ink);opacity:.28;transition:width .3s cubic-bezier(.22,.61,.36,1)}.nw-review-head{flex:none;display:flex;justify-content:space-between;align-items:baseline;padding:18px 24px 0;max-width:780px;width:100%;margin:0 auto;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.nw-review-card{background:var(--card);border-radius:20px;padding:30px 32px 26px;box-shadow:var(--shadow);max-width:780px;width:100%;margin:20px auto;transition:transform .24s cubic-bezier(.3,.7,.3,1),opacity .2s linear;touch-action:pan-y}.nw-q{margin:0;font-size:27px;line-height:1.22;font-weight:600;letter-spacing:-.021em;text-wrap:balance}.nw-detail{margin:9px 0 0;color:var(--muted);font-size:14.5px}.nw-locator{margin:18px 0 0}.nw-locator svg{display:block;width:100%;height:auto}.nw-locator-cap{font-size:11.5px;color:var(--faint);margin:3px 0 0;letter-spacing:.03em}.nw-evidence{display:grid;gap:18px;margin:16px 0 0;grid-template-columns:1fr;align-items:center}.nw-evidence.nw-split{grid-template-columns:minmax(0,260px) minmax(0,1fr)}.nw-evidence svg{display:block;width:100%;height:auto}.nw-evidence img{display:block;width:100%;height:auto}.nw-structure{background:var(--bg);border-radius:14px;padding:6px}.nw-marks{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px;font-size:13px}.nw-marks li{display:flex;align-items:center;gap:7px;color:var(--muted)}.nw-marks svg{display:block;flex:none}.nw-marks li.nw-judged{color:var(--ink);font-weight:550}.nw-tag{font-size:11px;font-weight:500;letter-spacing:.03em;text-transform:uppercase;color:var(--faint);border:1px solid var(--hair);border-radius:999px;padding:2px 7px}.nw-look{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--hair);color:var(--muted);font-size:14px;line-height:1.45}.nw-facts{display:flex;flex-wrap:wrap;gap:4px 26px;margin:16px 0 0;font-variant-numeric:tabular-nums;font-size:14px}.nw-facts div{display:flex;gap:7px;align-items:baseline}.nw-facts dt{color:var(--faint)}.nw-facts dd{margin:0;font-weight:550}.nw-review-foot{flex:none;padding:0 24px 26px;width:100%;max-width:780px;margin:0 auto}.nw-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.nw-answer{font:inherit;font-size:17px;font-weight:550;letter-spacing:-.01em;padding:17px 10px;border-radius:14px;border:1px solid var(--hair);background:var(--card);color:var(--ink);box-shadow:var(--shadow);transition:transform .12s ease,border-color .12s ease}.nw-answer:hover:not(:disabled){transform:translateY(-1px)}.nw-answer:active:not(:disabled){transform:translateY(0)}.nw-answer:disabled{opacity:.6;cursor:default}.nw-answer kbd{font:inherit;font-size:13px;color:var(--faint);margin-left:8px}.nw-answer.nw-no{color:var(--no)}.nw-answer.nw-no:hover:not(:disabled){border-color:var(--no)}.nw-answer.nw-yes{color:var(--ok)}.nw-answer.nw-yes:hover:not(:disabled){border-color:var(--ok)}.nw-minor{display:flex;justify-content:center;gap:22px;margin-top:14px;font-size:14px}.nw-minor kbd{font:inherit;font-size:12px;color:var(--faint)}.nw-reasons{margin-top:14px}.nw-reasons p{margin:0 0 9px;font-size:14px;color:var(--muted);text-align:center}.nw-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.nw-chip-btn{font:inherit;font-size:14px;padding:9px 15px;border-radius:999px;border:1px solid var(--hair);background:var(--card);color:var(--ink)}.nw-chip-btn:hover{border-color:var(--ink)}.nw-chip-btn kbd{font:inherit;font-size:12px;color:var(--faint)}.nw-reveal{margin-top:14px;text-align:center;font-size:13.5px;color:var(--faint);min-height:20px}.nw-done{text-align:center;padding:30px 24px 10px;max-width:780px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:16px;align-items:center}.nw-done .nw-detail{max-width:44ch}.nw-tally{display:inline-grid;grid-template-columns:auto auto;gap:7px 22px;text-align:left;margin:0;font-variant-numeric:tabular-nums;font-size:15px}.nw-tally div{display:contents}.nw-tally dt{color:var(--muted)}.nw-tally dd{margin:0;font-weight:600}.nw-done .nw-fieldset{text-align:left;max-width:560px}@media(max-width:660px){.nw-review-card{padding:24px 20px 20px;border-radius:18px;margin:16px}.nw-q{font-size:23px}.nw-evidence.nw-split{grid-template-columns:1fr}.nw-review-head,.nw-review-foot{padding-left:16px;padding-right:16px}}.nw-review-right{display:flex;align-items:center;gap:12px}.nw-help{background:none;border:0;padding:2px 4px;color:var(--faint);font:inherit;font-size:15px;font-weight:600;line-height:1}.nw-help:hover{color:var(--ink)}.nw-guide{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--bg);overflow-y:auto;padding:0 24px 40px}.nw-gwrap{max-width:900px;margin:0 auto}.nw-ghead{position:sticky;top:0;z-index:1;background:var(--bg);padding:22px 0 14px;display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-bottom:1px solid var(--hair);margin-bottom:18px}.nw-ghead h1{margin:0;font-size:22px;letter-spacing:-.02em}.nw-gintro{margin:0 0 22px;color:var(--muted);font-size:14.5px;max-width:62ch}.nw-gkeys{display:grid;gap:10px;margin:0 0 32px}.nw-gkeys div{display:grid;grid-template-columns:minmax(150px,auto) minmax(0,1fr);gap:14px;align-items:baseline;font-size:14.5px}.nw-gkeys dt{font-weight:600}.nw-gkeys dt kbd{font:inherit;color:var(--faint);margin-right:6px}.nw-gkeys dd{margin:0;color:var(--muted)}.nw-gsec{margin-bottom:38px}.nw-gsec-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.nw-gsec-head h2{margin:0 0 6px;font-size:18px;letter-spacing:-.015em}.nw-rule{margin:10px 0 16px;color:var(--muted);font-size:14px;line-height:1.5;max-width:70ch}.nw-gex-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px 20px;align-items:start}.nw-gex{margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}.nw-gex-art{background:var(--card);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px}.nw-gex-art svg{display:block;width:100%;height:auto}.nw-gex-trace{min-width:0}.nw-gex figcaption{display:flex;flex-direction:column;gap:4px}.nw-verdict{margin:0;font-weight:650;font-size:14.5px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.nw-verdict.nw-good{color:var(--ok)}.nw-verdict.nw-bad{color:var(--no)}.nw-chip-name{display:inline-block;font-size:12.5px;font-weight:500;border:1px solid var(--hair);border-radius:999px;padding:3px 10px;color:var(--muted)}.nw-why{margin:0;color:var(--muted);font-size:13.5px;line-height:1.5}.nw-gnote{margin:16px 0 0;font-size:14px;color:var(--muted);line-height:1.5;max-width:70ch}.nw-gfoot{padding-top:8px;border-top:1px solid var(--hair);display:flex;justify-content:flex-start}@media(max-width:660px){.nw-guide{padding-left:16px;padding-right:16px}.nw-gkeys div{grid-template-columns:1fr;gap:2px}}.tour-card,.tour-offer{position:fixed;z-index:60;width:min(340px,calc(100vw - 2 * var(--s4)));display:flex;flex-direction:column;gap:var(--s2);padding:var(--s4);background:var(--bg-panel);color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--radius-panel);box-shadow:var(--shadow);font-size:var(--t-body);line-height:1.5}.tour-card[hidden],.tour-offer[hidden]{display:none}.tour-card{top:var(--tour-top, 50%);left:var(--tour-left, 50%)}.tour-offer{left:var(--s4);bottom:var(--s7)}.tour-card h2,.tour-offer h2{margin:0;font-size:var(--t-lead);font-weight:600;letter-spacing:-.01em}.tour-card h2:focus{outline:none}.tour-card p,.tour-offer p{margin:0}.tour-kicker{color:var(--fg-dim);font-size:var(--t-micro);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tour-done{color:var(--ok);font-weight:600}.tour-card>.btn{align-self:flex-start}.tour-foot{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s1)}.tour-gap{flex:1}.tour-ring{position:fixed;z-index:55;pointer-events:none;border:2px solid var(--accent);border-radius:var(--radius);box-shadow:0 0 0 4px var(--accent-soft);transition:top .15s ease,left .15s ease,width .15s ease,height .15s ease}@media(max-width:600px){.tour-card,.tour-offer{left:0;right:0;top:auto;bottom:0;width:auto;max-height:45vh;overflow-y:auto;border-width:1px 0 0;border-radius:var(--radius-panel) var(--radius-panel) 0 0;padding-bottom:calc(var(--s4) + env(safe-area-inset-bottom,0px))}.tour-card.dock-top{top:0;bottom:auto;border-width:0 0 1px;border-radius:0 0 var(--radius-panel) var(--radius-panel);padding-bottom:var(--s4)}.app:has(.tour-offer:not([hidden])),.app:has(.tour-card:not(.dock-top):not([hidden])){padding-bottom:min(45vh,190px)}}.as-panel{display:flex;flex-direction:column;gap:var(--s5);padding:var(--s5) var(--s5) 0;min-height:100%}.as-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--s3)}.as-head-text{min-width:0;flex:1 1 220px}.as-title{margin:0;font-size:var(--t-title);font-weight:600;display:flex;align-items:center;gap:var(--s2)}.as-beta{font-size:var(--t-micro);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-pill);padding:2px var(--s2)}.as-sub{margin:var(--s1) 0 0;color:var(--fg-dim);font-size:var(--t-body)}.as-head-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.as-chip{font-size:var(--t-small);color:var(--fg-dim);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px var(--s3);white-space:nowrap}.as-chip.warn{color:var(--warn);background:var(--warn-soft);border-color:var(--warn-soft)}.as-state{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s3);padding:var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel)}.as-state p{margin:0}.as-intake{display:flex;flex-direction:column;gap:var(--s4)}.as-question{margin:0;font-size:var(--t-title);font-weight:600}.as-kinds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2)}.as-kind{position:relative;display:grid;gap:var(--s1);align-content:start;padding:var(--s3) var(--s4);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-panel);color:var(--fg);cursor:pointer}.as-kind input{position:absolute;opacity:0;pointer-events:none}.as-kind:hover{border-color:var(--accent)}.as-kind:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.as-kind.on{border-color:var(--accent);background:var(--accent-soft)}.as-kind.off{cursor:not-allowed;border-color:var(--border);background:none}.as-kind.off .as-kind-title{color:var(--fg-faint)}.as-kind-title{font-size:var(--t-lead);font-weight:600}.as-kind-goal{font-size:var(--t-small);color:var(--fg-dim);line-height:1.4}.as-form{display:flex;flex-direction:column;gap:var(--s4)}.as-fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--s4)}.as-field{display:flex;flex-direction:column;gap:var(--s1);min-width:0}.as-field>label,.as-field>.as-label{display:block;font-size:var(--t-small);font-weight:600;color:var(--fg)}.as-optional{font-weight:400;color:var(--fg-faint)}.as-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s2)}.as-grow{flex:1 1 160px;min-width:0}.as-group{display:flex;flex-direction:column;gap:var(--s3)}.as-add{align-self:flex-start}.as-hint{margin:0;font-size:var(--t-small);color:var(--fg-faint)}.as-hint.as-bad{color:var(--bad)}.as-facts{font-family:var(--mono);color:var(--fg-dim)}.as-subset{border:0;padding:0;gap:var(--s2)}.as-subset legend{font-size:var(--t-small);font-weight:600;margin-bottom:var(--s1)}.as-choice{color:var(--fg);font-size:var(--t-body);flex-wrap:wrap}.as-minutes{width:6ch}.as-more{border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--s2) var(--s3)}.as-more>summary{cursor:pointer;font-size:var(--t-small);font-weight:600}.as-more[open]{display:flex;flex-direction:column;gap:var(--s3)}.as-more-body{display:flex;flex-direction:column;gap:var(--s4)}.as-step-choices{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4)}.as-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1);min-width:0;padding:3px 8px;border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--bg-sunk)}.as-chips:focus-within{outline:2px solid var(--accent);outline-offset:1px}.as-chips.as-bad{border-color:var(--bad)}.as-chip-list{display:contents;list-style:none;margin:0;padding:0}.as-chip{display:inline-flex;align-items:center;gap:2px;max-width:100%;padding:1px 2px 1px var(--s2);border:1px solid var(--border);border-radius:999px;background:var(--bg-alt);font-size:var(--t-small);color:var(--fg)}.as-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.as-chip-x{font:inherit;line-height:1;min-width:24px;min-height:24px;border:0;border-radius:999px;background:transparent;color:var(--fg-dim);cursor:pointer}.as-chip-x:hover{color:var(--fg);background:var(--border)}.as-chip-input{flex:1 1 10ch;min-width:10ch;border:0;outline:none;background:transparent;color:var(--ink);font:inherit;font-size:13px;padding:3px 0}.as-start-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3)}.btn.as-start{font-size:var(--t-lead);padding:var(--s2) var(--s5);min-height:40px}.as-trials{font-size:var(--t-small);color:var(--fg-dim)}.as-feed{display:flex;flex-direction:column;gap:var(--s6)}.as-turn{display:flex;flex-direction:column;gap:var(--s4)}.as-turn-head{display:grid;gap:2px}.as-turn-kicker{margin:0;font-size:var(--t-micro);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.as-turn-what{margin:0;font-size:var(--t-lead);font-weight:600;overflow-wrap:anywhere}.as-ask{margin:0;align-self:flex-end;max-width:90%;padding:var(--s2) var(--s3);border-radius:var(--radius);background:var(--accent-soft);overflow-wrap:anywhere}.as-steps-toggle{display:inline-flex;align-items:center;gap:var(--s2);align-self:flex-start;padding:var(--s1) var(--s2);border:0;border-radius:var(--radius);background:transparent;color:var(--fg-dim);font:inherit;font-size:var(--t-small);cursor:pointer}.as-steps-toggle:hover{color:var(--fg)}.as-steps-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.as-steps-caret{width:1em;text-align:center}.as-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s4)}.as-step{display:grid;grid-template-columns:24px minmax(0,1fr);gap:var(--s3);align-items:start}.as-step-n{width:24px;height:24px;border-radius:var(--radius-pill);display:grid;place-items:center;font-size:var(--t-small);font-weight:700;font-family:var(--mono);color:var(--accent);background:var(--accent-soft)}.as-step.edit .as-step-n{color:var(--warn);background:var(--warn-soft)}.as-step-body{display:flex;flex-direction:column;gap:2px;min-width:0}.as-why{color:var(--fg-dim);margin-bottom:var(--s1)}.as-why .nw-md{font-size:var(--t-body)}.as-step-title{margin:0;font-weight:600}.as-step-result{margin:0;font-size:var(--t-small);color:var(--fg-faint);overflow-wrap:anywhere}.as-progress{margin:0;font-size:12.5px;color:var(--muted)}.as-live{display:flex;flex-direction:column;gap:var(--s2);color:var(--fg-dim)}.as-working{margin:0;display:flex;align-items:center;gap:var(--s2);font-size:var(--t-small);color:var(--fg-dim)}.as-pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:as-pulse 1.2s ease-in-out infinite}@keyframes as-pulse{0%,to{opacity:.35}50%{opacity:1}}.as-result{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s4);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-panel)}.as-brief-line{margin:0}.as-result-title{margin:0;font-size:var(--t-small);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-dim)}.as-decide{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.as-feedback{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);padding:var(--s4);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft)}.as-feedback-dismiss{align-self:flex-end}.as-feedback-title{margin:0;color:var(--fg);font-size:var(--t-lead);font-weight:600}.as-feedback-text{margin:0;color:var(--fg-dim)}.as-compose.nw-compose{position:sticky;bottom:0;margin:0 calc(-1 * var(--s5));padding:var(--s3) var(--s5);background:var(--bg);border-top:1px solid var(--border);align-items:stretch}.as-compose textarea{min-height:44px}.as-empty{margin-bottom:calc(var(--s2) - var(--s5))}@media(max-width:480px){.as-panel{padding:var(--s4) var(--s4) 0;gap:var(--s4)}.as-kinds{grid-template-columns:minmax(0,1fr)}.as-compose.nw-compose{margin:0 calc(-1 * var(--s4));padding:var(--s3) var(--s4)}}.nw-final .nw-final-lead{margin:0 0 4px;font-weight:600;color:var(--ink)}.nw-final-table{width:100%;margin:8px 0 4px;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:12px}.nw-final-table th{text-align:left;font-weight:600;color:var(--muted);padding:4px 6px 4px 0;border-bottom:1px solid var(--hair);white-space:nowrap}.nw-final-table td{padding:4px 6px 4px 0;color:var(--ink);border-bottom:1px solid var(--hair)}.nw-final-table tr:last-child td{border-bottom:0}.nw-final-label{color:var(--accent);font-weight:700;white-space:nowrap}.nw-final-table .nw-atom{white-space:nowrap}.nw-final-shape{display:inline-flex;align-items:center;margin-right:3px}.nw-final-shape svg{display:block}.nw-final-lap{font-size:9px;margin-left:1px}.nw-final-order{margin-top:2px}.nw-final-composition{margin-top:12px}.nw-final-composition caption{text-align:left;font-weight:600;color:var(--ink);padding-bottom:2px}.nw-final-composition td:not(:first-child),.nw-final-composition th:not(:first-child){text-align:right;width:4.5em}.nw-final-actions{display:flex;gap:8px;align-items:center}.nw-final .nw-final-warn{color:var(--warn)}.nw-carbon-card .nw-carbon-count-link{font-size:inherit;display:inline;text-align:left}.nw-carbon-card .nw-carbon-ppm{padding:0;font-size:inherit;font-variant-numeric:tabular-nums}.nw-carbon-card .nw-carbon-kind{color:var(--muted)}.nw-carbon-card .nw-carbon-inputs{margin:6px 0 0}.nw-carbon-card .nw-carbon-aside{margin:2px 0 0}.nw-carbon-card .nw-carbon-edits{margin-top:8px}.nw-carbon-card .nw-carbon-dept-strip{margin:6px 0 0}.nw-carbon-card .nw-carbon-dept-strip svg{display:block;width:100%;height:auto}.nw-carbon-card .nw-carbon-dept-strip figcaption{margin:2px 0 0}.nw-carbon-card .nw-dept-base{stroke:var(--hair);stroke-width:1}.nw-carbon-card .nw-dept-trace{fill:var(--fg-dim);stroke:var(--fg-dim);stroke-width:.6;stroke-linejoin:round}:root:not([data-theme=light]) .nw-carbon-card .nw-dept-trace{fill:var(--trace);stroke:var(--trace);stroke-width:1.1}.nw-carbon-card .nw-dept-tag{fill:var(--accent);font-size:9px}.nw-carbon-card .nw-dept-tick{fill:var(--muted);font-size:8px}.nw-carbon-card .nw-dept-leader{stroke:var(--accent);stroke-width:.6;stroke-dasharray:1.5 1.5;opacity:.6}.nw-carbon-card .nw-carbon-pick{background:none;border:0;padding:2px 0;font:inherit;color:var(--accent);cursor:pointer;text-align:left;display:inline;border-radius:4px}.nw-carbon-card .nw-carbon-pick:hover .nw-carbon-pick-caret,.nw-carbon-card .nw-carbon-pick[aria-expanded=true] .nw-carbon-pick-caret{opacity:1}.nw-carbon-card .nw-carbon-pick:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nw-carbon-card .nw-carbon-pick-caret{font-size:10px;color:var(--muted);opacity:.6;margin-left:4px;white-space:nowrap}.nw-row-conf-set .nw-row-dot{border-radius:1px;transform:rotate(45deg) scale(.85);background:var(--accent);border-color:var(--accent)}.nw-row-legend .nw-row-conf-set .nw-row-dot{transform:translateY(1px) rotate(45deg) scale(.85)}.nw-carbon-card .nw-carbon-set-legend{margin-top:2px}.nw-carbon-card .nw-carbon-set-legend .nw-row-legend-word{white-space:nowrap;flex:none}.nw-carbon-card .nw-carbon-note-row td{padding-top:0;font-size:12px}.nw-carbon-card .nw-carbon-user-note{color:var(--warn)}.nw-carbon-read .nw-carbon-kind{color:var(--ink)}.nw-carbon-read .nw-carbon-read-table td:first-child{width:5.5em}.nw-carbon-read .nw-carbon-row-weak td,.nw-carbon-read .nw-carbon-row-weak .nw-carbon-kind{color:var(--muted)}.nw-carbon-card .nw-carbon-menu-row td{padding:0 0 6px}.nw-carbon-card .nw-pick-menu{margin:2px 0 4px;padding:6px;border:1px solid var(--hair);border-radius:8px;background:var(--alt-row);max-width:100%}.nw-carbon-card .nw-pick-head{margin:0 0 4px;font-size:12px;color:var(--muted)}.nw-carbon-card .nw-pick-list{list-style:none;margin:0;padding:0;max-height:240px;overflow-y:auto}.nw-carbon-card .nw-pick-option{display:flex;width:100%;align-items:baseline;gap:0;background:none;border:0;border-radius:6px;padding:6px 8px;font:inherit;font-size:13px;color:var(--ink);text-align:left;cursor:pointer;min-height:32px}.nw-carbon-card .nw-pick-option:hover:not(:disabled),.nw-carbon-card .nw-pick-option:focus-visible{background:var(--accent-soft);outline:none}.nw-carbon-card .nw-pick-option:disabled{opacity:.55;cursor:default}.nw-carbon-card .nw-pick-name{color:var(--accent);font-weight:600}.nw-carbon-card .nw-pick-detail{color:var(--muted)}.nw-carbon-card .nw-pick-here{margin-left:auto;color:var(--accent);padding-left:8px}.nw-carbon-card .nw-pick-filter{width:100%;box-sizing:border-box;margin:0 0 4px;font:inherit;font-size:13px;padding:6px 8px;border:1px solid var(--hair);border-radius:6px;background:var(--card);color:var(--ink)}.nw-carbon-card .nw-pick-more{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px;padding:4px 8px 0;border-top:1px solid var(--hair)}.nw-carbon-card .nw-pick-more .nw-btn,.nw-carbon-card .nw-carbon-edits .nw-btn{padding:2px 0;font-size:12.5px}.nw-carbon-card .nw-carbon-edits{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.nw-carbon-card .nw-pick-choose{margin-left:8px}.nw-card-structure-pick{cursor:pointer}.as-plan{margin:0;font-size:var(--t-body, inherit);color:var(--fg)}.as-known{display:flex;flex-direction:column;gap:var(--s1);margin:0;padding:0;list-style:none}.as-known-row{display:flex;align-items:center;gap:var(--s2);min-width:0;padding:var(--s1) var(--s2);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--bg-alt)}.as-known-thumb{flex:0 0 56px;width:56px;height:40px;display:flex;align-items:center;justify-content:center;overflow:hidden}.as-known-thumb svg{display:block;max-width:100%;max-height:40px;height:auto}.as-known-text{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;font-size:var(--t-small)}.as-known-name{color:var(--fg);overflow-wrap:anywhere}.as-known-as{color:var(--fg-faint)}.as-known-problem{color:var(--fg-dim)}.as-known-draw{flex:0 0 auto}.as-choices{display:flex;flex-direction:column;gap:var(--s1)}.as-choice-row{display:flex;flex-wrap:wrap;gap:var(--s1)}.as-choice-btn{font-size:var(--t-small);max-width:100%;overflow-wrap:anywhere}.as-quick{display:flex;flex-wrap:wrap;gap:var(--s1)}.as-quick-btn{font:inherit;font-size:var(--t-small);padding:2px var(--s2);border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--fg-dim);cursor:pointer}.as-quick-btn:hover{color:var(--fg);background:var(--bg-alt)}.as-suggest-host{position:relative}.as-suggest{position:absolute;top:100%;left:0;right:0;z-index:20;margin:2px 0 0;padding:var(--s1);list-style:none;max-height:22rem;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--bg);box-shadow:0 6px 20px #00000029}.as-suggest-row{display:flex;align-items:center;gap:var(--s2);padding:2px var(--s2);border-radius:var(--radius-control);font-size:var(--t-small);color:var(--fg);cursor:pointer}.as-suggest-row:hover,.as-suggest-row.is-active{background:var(--bg-alt)}.as-suggest-row.is-active{outline:1px solid var(--border)}.as-suggest-thumb{flex:0 0 56px;width:56px;height:36px;display:flex;align-items:center;justify-content:center;overflow:hidden}.as-suggest-thumb svg{display:block;max-width:100%;max-height:36px;height:auto}.as-suggest-name{overflow-wrap:anywhere}.card-side{container:card-side / inline-size;min-width:0}.card-side-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s4);align-items:start}.card-side-plot,.card-side-pane{min-width:0}.card-side-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.card-side-pane .nw-area:not([open])>.nw-area-line .nw-area-check,.card-side-pane .nw-area-fold:not([open])>.nw-area-line .nw-area-check{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@container card-side (min-width: 720px){.card-side-grid{grid-template-columns:minmax(0,1fr) clamp(300px,38cqi,400px);gap:0;align-items:stretch}.card-side-plot{padding-right:var(--s4)}.card-side-pane{position:relative;min-height:480px;border-left:1px solid var(--border)}.card-side-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-left:var(--s4)}.card-side-sticky{position:sticky;top:0;z-index:2;background:var(--card);padding-bottom:var(--s2);box-shadow:0 1px 0 var(--hair)}}.card-fold{margin-top:var(--s2)}.card-fold-lines{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12.5px;line-height:1.45;color:var(--muted)}.card-hint{position:relative;display:inline-flex;vertical-align:1px;margin-left:4px}.card-hint-btn{width:16px;height:16px;padding:0;border-radius:50%;border:1px solid var(--border-strong);background:none;color:var(--fg-dim);font:600 10px/14px var(--sans);font-style:italic;cursor:pointer}.card-hint-btn:hover,.card-hint-btn[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.card-hint-tip{position:absolute;z-index:5;top:22px;left:-8px;width:min(300px,80vw);padding:8px 10px;border-radius:var(--radius-control);border:1px solid var(--border);background:var(--bg-panel);box-shadow:var(--shadow);color:var(--fg);font-size:12.5px;font-style:normal;font-weight:400;line-height:1.45;white-space:normal}.card-edited{display:inline-block;margin-left:6px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--t-micro);font-weight:600;cursor:help}.card-undo{display:inline-flex;flex-wrap:wrap;gap:var(--s1)}.plan-locked{display:flex;gap:var(--s2);align-items:flex-start;padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius-control);color:var(--fg)}.plan-locked-icon{flex:none;margin-top:2px;color:var(--fg-dim)}.plan-locked-title{margin:0 0 var(--s1);font-weight:600}.plan-locked-text{margin:0;color:var(--fg-dim)}.nw-card-not-on-plan{margin:var(--s2) 0 0}.dosy{flex:none}.dosy-head{flex-wrap:wrap;align-items:center;gap:var(--s2)}.dosy-tabs{display:flex;flex-wrap:wrap;gap:var(--s1)}.dosy-tab{font:inherit;font-size:var(--t-small);padding:var(--s1) var(--s3);border-radius:var(--radius-pill);border:1px solid var(--border);background:none;color:var(--fg-dim);cursor:pointer}.dosy-tab:hover{color:var(--fg);border-color:var(--border-strong)}.dosy-tab[aria-selected=true]{color:var(--fg);background:var(--accent-soft);border-color:var(--accent)}.dosy-body{display:flex;flex-direction:column;gap:var(--s4);font-size:var(--t-body);line-height:1.5;color:var(--fg)}.dosy-body p{margin:0}.dosy-dim,.dosy-caption,.dosy-source{color:var(--fg-dim)}.dosy-source{font-size:var(--t-small)}.dosy-error{color:var(--bad)}.dosy-figure{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.dosy-markbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s1) var(--s3);min-height:40px}.dosy-markbar-on,.dosy-markbar-suggest,.dosy-markbar-set{padding:var(--s2) var(--s3);border-radius:var(--radius-control);border:1px solid var(--border);background:var(--bg-alt)}.dosy-markbar-on{border-color:var(--accent);background:var(--accent-soft)}.dosy-markbar-suggest{border-style:dashed;border-color:var(--accent)}.dosy-markbar-text{flex:1 1 16rem;font-size:var(--t-small)}.dosy-markbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1)}.dosy-markbar-start{border-color:var(--accent);color:var(--accent)}.dosy-markbar-tag{display:inline-block;margin-right:4px;padding:0 6px;border-radius:var(--radius-pill);border:1px dashed var(--accent);color:var(--accent);font-size:11px;font-weight:600}.dosy-markbar-dot{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--accent);vertical-align:1px}.dosy-marked-tag{font-size:11px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);white-space:nowrap}.dosy-caption{font-size:var(--t-small);display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3)}.dosy-key{display:inline-flex;align-items:center;gap:6px}.dosy-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}.dosy-swatch-other{background:var(--fg-dim)}.dosy-result-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.dosy-result-bar:empty{display:none}.dosy-map{width:100%;height:auto;display:block;background:var(--plot-bg, var(--bg-panel));border:1px solid var(--border);border-radius:var(--radius-control)}.dosy-map-frame{fill:none;stroke:var(--border)}.dosy-map-grid{stroke:var(--grid, var(--border));stroke-width:1;opacity:.6}.dosy-map-tick{fill:var(--fg-dim);font-size:12px;font-variant-numeric:tabular-nums}.dosy-map-axis{fill:var(--fg-dim);font-size:13px}.dosy-map-trace{fill:none;stroke:var(--trace, var(--fg));stroke-width:1.2}.dosy-map-shade{opacity:.1}.dosy-map-molecule line{stroke:currentColor;stroke-width:1;stroke-dasharray:5 4;opacity:.75}.dosy-map-molecule text{fill:currentColor;font-size:13px;font-weight:600;paint-order:stroke;stroke:var(--plot-bg, var(--bg-panel));stroke-width:4px;stroke-linejoin:round}.dosy-map-line{cursor:pointer;outline:none}.dosy-map-line rect{fill:currentColor;fill-opacity:.45;stroke:currentColor;stroke-width:1.2}.dosy-map-line:hover rect,.dosy-map-line:focus-visible rect{fill-opacity:.7}.dosy-map-line.on rect{fill-opacity:.85;stroke-width:2.2}.dosy-map-other rect{fill-opacity:.25;stroke-dasharray:3 2}.dosy-map-open rect,.dosy-map-exchange rect{fill-opacity:.12;stroke-dasharray:2 2}.dosy-map-solvent rect{fill-opacity:.08;stroke-opacity:.5}.dosy-map-drag{fill:transparent;cursor:crosshair;touch-action:none}.dosy-map-dragbox{fill:var(--accent);fill-opacity:.15;stroke:var(--accent);stroke-width:1}.dosy-map-pickshade{fill:var(--accent)}.dosy-map-pickshade-pick{opacity:.22}.dosy-map-pickshade-suggest{opacity:.1}.dosy-map-line.dosy-map-pick rect{stroke:var(--accent);stroke-width:3;fill-opacity:.8}.dosy-map-line.dosy-map-suggest rect{stroke:var(--accent);stroke-width:2;stroke-dasharray:4 3}.dosy-map-markdot{fill:var(--accent)}.dosy-map-marking .dosy-map-line:not(.dosy-map-unpickable){cursor:copy}.dosy-map-unpickable{cursor:not-allowed;opacity:.4}.dosy-card .nw-card-part-head{display:flex;align-items:center;gap:2px}.dosy-molecules,.dosy-lines,.dosy-left-out{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s1)}.dosy-molecule>details>summary{list-style:none;cursor:pointer}.dosy-molecule>details>summary::-webkit-details-marker{display:none}.dosy-molecule-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:6px 8px;border-radius:var(--radius-control)}.dosy-molecule-line:hover{background:var(--bg-alt)}.dosy-molecule-on>details>.dosy-molecule-line{background:var(--accent-soft)}.dosy-molecule-name{font-weight:600}.dosy-molecule-d{margin-left:auto;color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:var(--t-small)}.dosy-molecule>details>.nw-area-why,.dosy-molecule>details>.dosy-lines,.dosy-molecule>details>.dosy-decay,.dosy-molecule>details>.dosy-molecule-actions,.dosy-molecule>details>.dosy-rename{margin:var(--s1) 0 var(--s1) 26px}.dosy-line{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:var(--t-small)}.dosy-line-on{background:var(--accent-soft);border-radius:var(--radius-control)}.dosy-line-name{font:inherit;padding:2px 4px;border:none;background:none;color:var(--accent);cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}.dosy-line-d{color:var(--fg-dim);font-variant-numeric:tabular-nums}.dosy-line-actions{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:auto}.dosy-move{font-size:var(--t-small);padding:2px 6px;max-width:12rem}.dosy-molecule-actions,.dosy-check-actions,.dosy-form-actions,.dosy-inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1)}.dosy-check-actions{margin-top:var(--s2)}.dosy-inline-actions{margin-top:4px}.dosy-rename,.dosy-tool{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2)}.dosy-rename .nw-input{max-width:16rem}.dosy-decay{margin:0;max-width:320px}.dosy-decay svg{width:100%;height:auto;display:block}.dosy-decay-axis{stroke:var(--border-strong)}.dosy-decay-tick{fill:var(--fg-dim);font-size:9px}.dosy-decay-fit{fill:none;stroke:currentColor;stroke-width:1.4}.dosy-decay-pt{fill:currentColor}.dosy-decay-skip{fill:none;stroke:currentColor;stroke-width:1}.dosy-decay figcaption{font-size:var(--t-small)}.dosy-left-out{margin-top:var(--s2);font-size:var(--t-small);color:var(--fg-dim)}.dosy-others{list-style:none;margin:var(--s2) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--s1)}.dosy-others li{display:flex;flex-direction:column}.dosy-other-none .dosy-other-line{color:var(--fg-dim)}.dosy-other-rough .dosy-other-note{color:var(--warn)}.dosy-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s2);margin-top:var(--s2)}.dosy-form .as-field{display:flex;flex-direction:column;gap:2px;min-width:9rem}.dosy-size-line{display:block}.dosy-mw-line{list-style:none}.dosy-calibration-head{display:flex;align-items:center;gap:var(--s1);margin-bottom:var(--s1)!important}.dosy-tools{margin-top:var(--s2)}.dosy-tools>summary{display:inline-flex;list-style:none;cursor:pointer}.dosy-tools>summary::-webkit-details-marker{display:none}.dosy-tool-rows{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s2)}.dosy-num{width:6.5rem}.dosy-unit{color:var(--fg-dim);font-size:var(--t-small)}.dosy-quality-warn:before{content:"Note: ";font-weight:600;color:var(--warn)}@media(max-width:560px){.dosy-map-tick{font-size:15px}.dosy-map-axis,.dosy-map-molecule text{font-size:16px}.dosy-molecule>details>.nw-area-why,.dosy-molecule>details>.dosy-lines,.dosy-molecule>details>.dosy-decay,.dosy-molecule>details>.dosy-molecule-actions,.dosy-molecule>details>.dosy-rename{margin-left:8px}.dosy-line-actions{margin-left:0}.dosy-tool-ref .nw-input{flex:1 1 8rem}}:root{--twod-pos: #3d8fd8;--twod-neg: #e8873a;--twod-overlay: var(--ok)}.twod{flex:none}.twod-head{flex-wrap:wrap;align-items:center;gap:var(--s2)}.twod-tabs{display:flex;flex-wrap:wrap;gap:var(--s1)}.twod-tab{font:inherit;font-size:var(--t-small);padding:var(--s1) var(--s3);border-radius:var(--radius-pill);border:1px solid var(--border);background:none;color:var(--fg-dim);cursor:pointer}.twod-tab:hover{color:var(--fg);border-color:var(--border-strong)}.twod-tab[aria-selected=true]{color:var(--fg);background:var(--accent-soft);border-color:var(--accent)}.twod-body{display:flex;flex-direction:column;gap:var(--s4);font-size:var(--t-body);line-height:1.5;color:var(--fg)}.twod-body p{margin:0}.twod-dim,.twod-caption{color:var(--fg-dim)}.twod-caption{font-size:var(--t-small);display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3)}.twod-error{color:var(--bad)}.twod-result{display:flex;flex-direction:column;gap:var(--s2)}.twod-headline{font-size:var(--t-lead);font-weight:600}.twod-result-bar:empty{display:none}.twod-phase{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);color:var(--fg-dim)}.twod-figure{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.twod-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.twod-level{color:var(--fg-dim);font-size:var(--t-small);font-variant-numeric:tabular-nums}.twod-overlay-btn[aria-pressed=true]{color:var(--ok);border-color:var(--ok)}.twod-plot{position:relative;width:100%;min-width:0;max-width:900px}.twod-plot canvas{display:block;touch-action:none;border-radius:var(--radius-control)}.twod-cursor,.twod-loading{position:absolute;top:4px;font-size:var(--t-micro);color:var(--fg-dim);font-variant-numeric:tabular-nums;pointer-events:none}.twod-cursor{right:6px}.twod-loading{left:6px}.twod-legend{display:inline-flex;align-items:center;gap:var(--s1)}.twod-swatch{display:inline-block;width:14px;height:3px;border-radius:2px;margin-left:var(--s1)}.twod-swatch:first-child{margin-left:0}.twod-swatch-pos{background:var(--twod-pos)}.twod-swatch-neg{background:var(--twod-neg)}.twod-swatch-overlay{background:var(--twod-overlay)}.twod-linked{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s1)}.twod-floor{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);font-size:var(--t-small)}.twod-floor input[type=range]{flex:1 1 140px;max-width:260px;accent-color:var(--accent)}.twod-check{display:inline-flex;align-items:center;gap:var(--s1);font-size:var(--t-small)}.twod-key{display:inline-flex;align-items:center;gap:var(--s1);margin-right:var(--s2)}.twod-swatch{height:4px;width:16px}.twod-gestures{color:var(--fg-faint)}.twod-preview{position:absolute;top:4px;left:50%;transform:translate(-50%);font-size:var(--t-micro);font-weight:600;color:var(--accent);pointer-events:none}.twod-phase-box{display:flex;flex-direction:column;gap:var(--s2)}.twod-phase-controls{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--bg-panel)}.twod-phase-slider{display:grid;grid-template-columns:8.5em minmax(0,1fr) 4.5em;align-items:center;gap:var(--s2);font-size:var(--t-small)}.twod-phase-slider input{accent-color:var(--accent)}.twod-phase-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.twod-phase-now{font-size:var(--t-small)}.twod-card{margin:0}.twod-rows{list-style:none;margin:var(--s2) 0;padding:0}.twod-row{border-top:1px solid var(--border)}.twod-row:first-child{border-top:0}.twod-row details>summary{list-style:none;cursor:pointer}.twod-row details>summary::-webkit-details-marker{display:none}.twod-row-line{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:var(--s2);align-items:baseline;padding:5px 0}.twod-row-on .twod-row-line{box-shadow:inset 3px 0 0 var(--accent);padding-left:var(--s2)}.twod-row details:not([open]) .twod-row-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.twod-row-where{color:var(--fg-dim);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.twod-row details>p{margin:0 0 var(--s2) 22px;color:var(--fg-dim);font-size:var(--t-small)}.twod-row-actions,.twod-check-actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin:0 0 var(--s2) 22px}.twod-check-actions:empty{display:none}.twod-quality li{margin-bottom:var(--s2)}.twod-quality-title{font-weight:600}.twod-quality-details{color:var(--fg-dim)}.twod-quality-note .twod-quality-title,.twod-quality-attention .twod-quality-title{color:var(--warn)}.twod-structure-form{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s2)}.twod-weak,.twod-artifact{line-height:1.8}.twod-next{display:flex;flex-direction:column;gap:var(--s1);margin-bottom:var(--s2)}.twod-next-steps{gap:var(--s1)}.twod-next-title{font-weight:600}.hetero{flex:none}.hetero-head{flex-wrap:wrap;align-items:center;gap:var(--s2)}.hetero-tabs{display:flex;flex-wrap:wrap;gap:var(--s1)}.hetero-tab{font:inherit;font-size:var(--t-small);padding:var(--s1) var(--s3);border-radius:var(--radius-pill);border:1px solid var(--border);background:none;color:var(--fg-dim);cursor:pointer}.hetero-tab:hover{color:var(--fg);border-color:var(--border-strong)}.hetero-tab[aria-selected=true]{color:var(--fg);background:var(--accent-soft);border-color:var(--accent)}.hetero-body{display:flex;flex-direction:column;gap:var(--s4);font-size:var(--t-body);line-height:1.5;color:var(--fg);container-type:inline-size}.hetero-body p{margin:0}.hetero-dim,.hetero-caption{color:var(--fg-dim)}.hetero-caption{font-size:var(--t-small);color:var(--fg-faint)}.hetero-error{color:var(--bad)}.hetero-figure{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.hetero-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2)}.hetero-title-text{font-weight:600;font-size:var(--t-lead)}.hetero-dec{font-size:var(--t-micro);padding:1px var(--s2);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--fg-dim)}.hetero-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.hetero-reference,.hetero-linked{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);font-size:var(--t-small);color:var(--fg-dim)}.hetero-result-bar:empty{display:none}.hetero-plot{position:relative;width:100%;min-width:0}.hetero-plot svg{display:block;touch-action:none;-webkit-user-select:none;user-select:none;cursor:crosshair}.hetero-plot-bg{fill:var(--bg-panel)}.hetero-trace{fill:none;stroke:var(--fg);stroke-width:1.1;stroke-linejoin:round}.hetero-axis{stroke:var(--border-strong);stroke-width:1}.hetero-tick{fill:var(--fg-dim);font-size:11px;font-variant-numeric:tabular-nums}.hetero-label{fill:var(--accent);font-size:11.5px;font-weight:600}.hetero-band{fill:transparent}.hetero-band-product{fill:var(--accent-soft);opacity:.45}.hetero-band-impurity{fill:var(--warn);opacity:.12}.hetero-band-on{opacity:.9}.hetero-drag{fill:var(--accent);opacity:.12}.hetero-ppm-unit{position:absolute;right:6px;top:2px;font-size:var(--t-micro);color:var(--fg-faint);pointer-events:none}.hetero-card{margin:0}.hetero-rows{list-style:none;margin:var(--s2) 0;padding:0}.hetero-row{border-top:1px solid var(--border)}.hetero-row:first-child{border-top:0}.hetero-row details>summary{list-style:none;cursor:pointer}.hetero-row details>summary::-webkit-details-marker{display:none}.hetero-row-line{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:var(--s2);align-items:baseline;padding:5px 0}.hetero-row-on .hetero-row-line{box-shadow:inset 3px 0 0 var(--accent);padding-left:var(--s2)}.hetero-row-text{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--s2);min-width:0}.card-side-pane .hetero-row details:not([open]) .hetero-row-text{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-side-pane .hetero-row details:not([open]) .hetero-row-text>span{margin-right:var(--s2)}.hetero-row-name{font-weight:600}.hetero-row-shift{font-variant-numeric:tabular-nums}.hetero-row-mult{color:var(--fg-dim);overflow-wrap:anywhere}.hetero-row details>p{margin:0 0 var(--s2) 22px;color:var(--fg-dim);font-size:var(--t-small)}.hetero-js{margin:0 0 var(--s2) 22px;padding-left:var(--s4);font-size:var(--t-small)}.hetero-row-actions,.hetero-check-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin:0 0 var(--s2) 22px}.hetero-edit-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);width:100%;font-size:var(--t-small)}.hetero-edit-form .nw-input{width:9em}.hetero-edit-form .hetero-short{width:6em}.hetero-imp-name{font-weight:600}.hetero-imp-status{font-size:var(--t-micro);padding:0 var(--s2);border-radius:var(--radius-pill);border:1px solid var(--border)}.hetero-imp-present{color:var(--warn);border-color:var(--warn)}.hetero-imp-possible{color:var(--fg-dim)}.hetero-imp-background{color:var(--fg-faint)}.hetero-report-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s2)}.hetero-report-text{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.hetero-structure-form{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s2)}.an-column{display:flex;flex-direction:column;min-height:100%}.context-analyze{scroll-padding-top:64px;scroll-padding-bottom:120px}.an-panes{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--bg);border-bottom:1px solid var(--border)}.an-pane{font:inherit;font-size:var(--t-body);font-weight:600;padding:var(--s3) var(--s2);background:none;border:0;border-bottom:2px solid transparent;color:var(--fg-dim)}.an-pane:hover{color:var(--fg)}.an-pane[aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent)}.an-pane-live{font-weight:400;color:var(--accent)}.an-pane-body{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.an-manual{display:flex;flex-direction:column;gap:var(--s3);padding:var(--s4)}.nw-predict-embedded{display:flex;flex-direction:column;gap:var(--s2)}.nw-predict-embedded .nw-bar{flex-wrap:wrap;padding:0}.an-stage{height:auto;overflow:visible;min-width:0}.an-stage>.nw-step-top{flex:none}.an-stage .nw-plot-slot{min-height:clamp(340px,62vh,760px)}.an-bar{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--s2);flex:none}.an-gap{flex:1 1 auto}.an-bar>.btn{flex:none}.an-checks{flex:0 1 auto;display:inline-flex;align-items:center;gap:var(--s2);min-width:0;max-width:100%}.an-chip{display:inline-flex;align-items:center;gap:var(--s2);min-width:0;max-width:min(560px,100%);min-height:32px;padding:var(--s1) var(--s3);border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--bg-panel);color:var(--fg);font-size:var(--t-body)}.an-chip:hover{border-color:var(--accent)}.an-chip-mark{font-weight:700;width:1.2em;text-align:center}.an-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.an-chip-more,.an-chip-caret{color:var(--fg-dim);font-size:var(--t-small);white-space:nowrap}.tone-ok .an-chip{background:var(--ok-soft);border-color:var(--ok-soft)}.tone-ok .an-chip-mark{color:var(--ok)}.tone-warn .an-chip{background:var(--warn-soft);border-color:var(--warn-soft)}.tone-warn .an-chip-mark{color:var(--warn)}.tone-bad .an-chip{background:var(--bad-soft);border-color:var(--bad)}.tone-bad .an-chip-mark{color:var(--bad)}.tone-pending .an-chip-mark{color:var(--fg-faint)}.an-drawer{flex:none;display:flex;flex-direction:column;gap:var(--s3);padding:var(--s4);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius)}.an-drawer[hidden]{display:none}.an-drawer .fine-tune{border:0;padding:0;margin:0}.an-drawer .fine-tune .disclose-body{padding:0;border:0}.an-fine-open{align-items:start}.an-fine-open .nw-plot-slot{position:sticky;top:0;z-index:3}@media(min-width:1101px){.an-stage .nw-step-top.an-fine-open{grid-template-columns:minmax(0,1fr) minmax(300px,360px)}}@media(max-width:1100px){.an-stage .an-fine-open .nw-plot-slot{min-height:clamp(200px,38vh,340px);box-shadow:0 6px 12px -8px #00000080}}@media(max-width:600px){.an-bar{flex-wrap:wrap}.an-chip{max-width:100%}.an-bar .btn{flex:1 1 auto}}.fine-tune-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2)}.fine-tune-title{margin:0;font-size:1rem}.fine-tune-close{min-width:2rem;padding-inline:var(--s2);font-size:1.25rem;line-height:1}.fine-tune-scope{margin-left:auto}.auth-screen{position:relative;height:100%;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;padding:var(--s5) var(--s4);background:var(--bg)}.auth-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:var(--s4);padding:var(--s5);background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-panel)}.auth-head{display:flex;flex-direction:column;align-items:center;gap:var(--s2);text-align:center}.auth-head h1{margin:0;line-height:0}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:2px}.auth-lockup{--lockup-tile: 32px;--lockup-surface: var(--bg-panel)}.auth-endorse{padding:var(--s1) var(--s2);font-size:var(--t-small);margin-bottom:calc(var(--s4) - var(--s2) - var(--s1))}.auth-head h2{margin:0;color:var(--fg-dim);font-size:var(--t-small);font-weight:400}.auth-form{display:flex;flex-direction:column;gap:var(--s3)}.auth-field{display:flex;flex-direction:column;align-items:stretch;gap:var(--s1);font-size:var(--t-small);color:var(--fg-dim)}.auth-field input,.auth-field select{font:inherit;font-size:var(--t-body);color:var(--fg);background:var(--bg-sunk);border:1px solid var(--border-strong);border-radius:var(--radius-control);padding:var(--s2);min-height:34px}.auth-field input:disabled,.auth-field select:disabled{color:var(--fg-faint)}.auth-field input[aria-invalid=true],.auth-field select[aria-invalid=true]{border-color:var(--bad)}.auth-remember{display:flex;flex-direction:row;align-items:center;gap:var(--s2);font-size:var(--t-small);color:var(--fg-dim)}.auth-remember input{accent-color:var(--accent);width:auto;min-height:0}.auth-submit{font:inherit;font-size:var(--t-body);font-weight:600;min-height:36px;padding:var(--s2) var(--s3);border-radius:var(--radius-control);background:var(--accent);border:1px solid var(--accent);color:var(--accent-ink)}.auth-submit:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.auth-submit:disabled{opacity:.45;cursor:not-allowed}.auth-hint{color:var(--fg-faint);font-size:var(--t-micro);line-height:1.5}.auth-message{margin:0;padding:var(--s3);border:1px solid var(--bad-soft);border-radius:var(--radius);background:var(--bad-soft);color:var(--fg);font-size:var(--t-small);line-height:1.5}.auth-message.info{border-color:var(--border);background:var(--bg-sunk);color:var(--fg-dim)}.auth-note{margin:0;color:var(--fg-faint);font-size:var(--t-micro);line-height:1.5;text-align:center}.auth-address{font-family:var(--mono);color:var(--fg)}.auth-after{margin-top:var(--s3);text-align:center}.auth-waitlist{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--s2);color:var(--fg-dim);font-size:var(--t-small);text-decoration:none}.auth-waitlist:hover{color:var(--fg);text-decoration:underline}.auth-thanks{margin:0;color:var(--fg);font-size:var(--t-body);line-height:1.5;text-align:center}.auth-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.auth-checking{height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg);color:var(--fg-faint);font-size:var(--t-small)}.auth-legal{position:absolute;right:var(--s4);bottom:var(--s3);display:flex;flex-wrap:wrap;justify-content:flex-end;gap:0 var(--s3);max-width:calc(100% - 2 * var(--s4))}@media(max-width:520px){.auth-card{order:1}.auth-after{order:2}.auth-legal{position:static;order:3;justify-content:center;max-width:none;margin-top:var(--s2)}}.auth-terms{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--s1);color:var(--fg-dim);font-size:var(--t-small);text-decoration:none}.auth-terms:hover{color:var(--fg);text-decoration:underline}.auth-link{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--s2);border:0;background:none;color:var(--fg-dim);font:inherit;font-size:var(--t-small);cursor:pointer}.auth-link:hover{color:var(--fg);text-decoration:underline}.auth-forgot{align-self:flex-end;margin-top:calc(-1 * var(--s2));padding-right:0}.auth-for{margin-top:calc(-1 * var(--s2))}.auth-agree a{color:var(--fg-dim);text-decoration:underline}.auth-agree a:hover{color:var(--fg)}.aw-card{align-items:center;text-align:center}.aw-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--fg)}.aw-note{margin:0;color:var(--fg-dim)}
