:root{--bg: #f4f5f7;--panel: #ffffff;--panel-2: #f8f9fb;--line: #dfe2e8;--line-strong: #c7ccd6;--ink: #171a21;--ink-2: #4a5160;--ink-3: #7a8191;--accent: #3d4fd6;--accent-soft: #e8ebfd;--accent-ink: #2c3aa8;--good: #16794a;--good-soft: #e3f4ea;--warn: #9a5b0b;--warn-soft: #fbf0dc;--bad: #b42323;--bad-soft: #fbe6e6;--run: #1d6fd1;--run-soft: #e2eefc;--radius: 6px;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #0f1116;--panel: #161920;--panel-2: #1b1f27;--line: #2a2f3a;--line-strong: #3a4150;--ink: #e7e9ee;--ink-2: #b1b7c3;--ink-3: #7e8596;--accent: #8b98ff;--accent-soft: #232a52;--accent-ink: #b9c1ff;--good: #4cc38a;--good-soft: #15301f;--warn: #e0a643;--warn-soft: #33270f;--bad: #f07171;--bad-soft: #3a1717;--run: #6aa8f5;--run-soft: #142a47;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:13px/1.45 var(--sans)}h1,h2,h3{margin:0;font-weight:600;text-wrap:balance}h1{font-size:17px}h2{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:16px 0 6px}h3{font-size:13px}code,pre,.num{font-family:var(--mono);font-size:12px}.num{font-variant-numeric:tabular-nums;color:var(--ink-2)}.muted{color:var(--ink-3)}.good{color:var(--good)}.bad{color:var(--bad)}.empty{color:var(--ink-3);padding:24px 16px;text-align:center}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line-strong);background:var(--panel);border-radius:var(--radius);padding:5px 10px}button:hover:not(:disabled){border-color:var(--ink-3)}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.link,a.link{border:0;background:none;padding:0 4px;color:var(--accent-ink);text-decoration:underline;text-underline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input,select,textarea{border:1px solid var(--line-strong);background:var(--panel);border-radius:var(--radius);padding:5px 8px;min-width:0}textarea{resize:vertical;width:100%}.chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);border-radius:999px;padding:0 8px;font-size:11px;line-height:18px;white-space:nowrap}.chip.accent{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink)}.chip.good{background:var(--good-soft);border-color:transparent;color:var(--good)}.chip.warn{background:var(--warn-soft);border-color:transparent;color:var(--warn)}.chip.bad{background:var(--bad-soft);border-color:transparent;color:var(--bad)}.chip.running{background:var(--run-soft);border-color:transparent;color:var(--run)}.chip.button{cursor:pointer}.chip.actor-human{background:var(--warn-soft);color:var(--warn);border-color:transparent}.chips{display:inline-flex;flex-wrap:wrap;gap:4px}.intent-orient{color:#1d6fd1}.intent-proof{color:#16794a}.intent-offer{color:#9a3dbf}.intent-explain{color:#0f7a86}.intent-compare{color:#9a5b0b}.intent-reassure{color:#b5476e}.intent-convert{color:#b42323}.intent-navigate{color:#4a5160}.dot{width:8px;height:8px;border-radius:50%;background:var(--ink-3);flex:none}.dot-done{background:var(--good)}.dot-failed{background:var(--bad)}.dot-running{background:var(--run);box-shadow:0 0 0 3px var(--run-soft)}.dot-queued{background:var(--ink-3);box-shadow:0 0 0 3px var(--line)}.dot-skipped{background:var(--line-strong)}.dot-awaiting_input{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.spinner{width:10px;height:10px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}.status{font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:.05em;margin-right:8px}.status-done{color:var(--good)}.status-failed{color:var(--bad)}.status-running{color:var(--run)}.status-queued{color:var(--ink-3)}.status-awaiting_input{color:var(--accent-ink)}.banner{margin:8px 16px 0;padding:8px 12px;border-radius:var(--radius);display:flex;gap:8px;align-items:baseline}.banner.bad{background:var(--bad-soft);color:var(--bad)}.app{height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}.wordmark{font-size:15px;letter-spacing:-.01em}.inline{display:inline-flex;align-items:center;gap:6px}.spacer{flex:1}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(230px,280px) minmax(360px,1fr) minmax(420px,1.15fr);gap:0}.rail,.job,.site{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--panel)}.rail{padding:12px;overflow:auto;background:var(--panel-2)}.site{border-right:0}.panel-body{flex:1;min-height:0;overflow:auto;padding:12px 16px}.site-body{padding:0;display:flex;flex-direction:column}@media(max-width:1100px){.workspace{grid-template-columns:1fr;grid-auto-rows:minmax(420px,auto)}.rail,.job,.site{border-right:0;border-bottom:1px solid var(--line)}}.tabs{display:flex;gap:2px;align-items:center;padding:0 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;padding:9px 10px 7px;color:var(--ink-2)}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.tabs.small{padding:0;margin:8px 0}.tabs.small button{padding:5px 8px 4px;font-size:12px}.generate{display:grid;gap:8px}.control{display:grid;gap:3px}.control-label{font-size:11px;font-weight:600;color:var(--ink-2)}.control.checkbox{display:flex;gap:6px;align-items:center}.history{list-style:none;margin:0;padding:0;display:grid;gap:2px}.history-item{width:100%;text-align:left;display:grid;grid-template-columns:8px auto 1fr;grid-template-areas:"dot kind kind" ". title title" ". meta meta";column-gap:8px;align-items:center;border:1px solid transparent;background:none;padding:7px 8px}.history-item .dot{grid-area:dot}.history-kind{grid-area:kind;font-size:11px;font-weight:600;color:var(--ink-2)}.history-title{grid-area:title;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.history-meta{grid-area:meta;font-size:11px}.history-item.selected{background:var(--panel);border-color:var(--line-strong)}.job-head{padding:12px 16px 8px;display:grid;gap:4px}.job-head>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.job-head .status{margin-right:0}.job-head .banner{margin:4px 0 0}.timeline-summary{display:flex;gap:16px;flex-wrap:wrap;color:var(--ink-2);margin-bottom:10px}.timeline ol,.event-log{list-style:none;margin:0;padding:0}.stage-row{width:100%;display:grid;grid-template-columns:10px minmax(150px,280px) 1fr 56px 56px 44px 22px;gap:8px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:7px 2px}.stage-name{font-weight:600}.bar{position:relative;height:8px;background:var(--panel-2);border-radius:4px;overflow:hidden}.bar>span{position:absolute;top:0;bottom:0;border-radius:4px;background:var(--good);opacity:.8}.stage-running .bar>span{background:var(--run)}.stage-failed .bar>span{background:var(--bad)}.badge{font-size:10px;background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;text-align:center;line-height:16px}.stage-message{color:var(--bad);margin:4px 0 4px 20px}.stage-events{list-style:none;margin:0 0 6px 20px;padding:6px 0;display:grid;gap:3px;font-size:12px}.event-name{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.tone-warn{color:var(--warn)}.tone-bad{color:var(--bad)}.tone-good{color:var(--good)}.event-log li{display:grid;grid-template-columns:36px 64px 150px auto 1fr;gap:8px;padding:3px 0;border-bottom:1px solid var(--line);align-items:baseline}.event-log code,code.wrap{word-break:break-all;color:var(--ink-2)}.decisions{display:grid;gap:10px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--panel)}.card>header,.batch>header,.part>header{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.card>header h3{text-transform:capitalize}.fields{margin:0;display:grid;gap:6px}.field{display:grid;grid-template-columns:130px 1fr;gap:10px}.field dt{color:var(--ink-3);font-size:12px}.field dd{margin:0;min-width:0}.plain{margin:0;padding-left:16px}.plan{display:grid;gap:10px}.plan-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px}.arc{margin:0;padding-left:20px;display:grid;gap:2px}.arc li{display:flex;gap:8px}.table{width:100%;border-collapse:collapse}.table td{border-top:1px solid var(--line);padding:4px 6px}.swatch{display:inline-block;width:16px;height:16px;border-radius:4px;border:1px solid var(--line-strong);vertical-align:middle}.swatch-row{display:inline-flex;gap:6px;align-items:center}.json{margin:0;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);padding:8px;max-height:420px;overflow:auto}.copy,.ops-view{display:grid;gap:10px}.batch{border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px}.op-list{margin:0;padding-left:22px;display:grid;gap:2px}.op-name{font-family:var(--mono);font-size:11px;color:var(--accent-ink)}.preview{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.preview-bar{display:flex;gap:8px;align-items:center;padding:0 12px;border-bottom:1px solid var(--line)}.preview-stage{flex:1;min-width:0;min-height:0;overflow:hidden;background:repeating-conic-gradient(var(--panel-2) 0% 25%,var(--bg) 0% 50%) 0 0 / 16px 16px;display:flex;justify-content:center}.preview-canvas{transform-origin:top center;max-width:none;flex:none}.preview-canvas iframe{width:100%;height:100%;border:0;background:#fff;box-shadow:0 0 0 1px var(--line-strong)}.chat{flex:1;min-height:0;display:flex;flex-direction:column}.chat-log{flex:1;overflow:auto;padding:12px 16px;display:grid;align-content:start;gap:12px}.turn{display:grid;gap:4px}.bubble{max-width:88%;border-radius:10px;padding:8px 10px;display:grid;gap:4px}.bubble p{margin:0}.bubble.user{justify-self:end;background:var(--accent);color:#fff}.bubble.user .meta,.bubble.user .chip{color:#fff;background:#ffffff2e;border-color:transparent}.bubble.reply{justify-self:start;background:var(--panel-2);border:1px solid var(--line)}.bubble.failed{border-color:var(--bad)}.bubble .did>summary{cursor:pointer;font-size:11px;opacity:.75}.bubble .did[open]{display:grid;gap:4px}.meta{display:flex;gap:6px;align-items:center;font-size:11px;opacity:.85}.chat-compose{border-top:1px solid var(--line);padding:10px 16px 12px;display:grid;gap:6px;background:var(--panel-2)}.compose-row{display:flex;gap:8px;align-items:flex-start;justify-content:space-between}.structure-split{flex:1;min-height:0;display:grid;grid-template-rows:minmax(200px,45%) 1fr}.structure,.inspector{overflow:auto;padding:12px 16px}.inspector{border-top:1px solid var(--line);display:grid;align-content:start;gap:6px}.inspector h3{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.structure-list{list-style:none;margin:0;padding:0}.structure-row{width:100%;display:grid;grid-template-columns:22px 120px minmax(120px,1fr) auto auto auto;gap:8px;align-items:center;text-align:left;border:1px solid transparent;border-radius:var(--radius);background:none;padding:5px 6px}.structure-row.site,.structure-row.page{display:flex;flex-wrap:wrap;gap:8px}.structure-row.selected{background:var(--accent-soft);border-color:var(--accent)}.block-id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme-summary{display:inline-flex;gap:4px;align-items:center;flex-wrap:wrap}.controls-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 12px}.controls-grid .wide{grid-column:1 / -1}.parts{display:grid;gap:8px}.part{border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px}.part.overridden{border-color:var(--accent)}.color-input{display:inline-flex;gap:6px;align-items:center}.color-input input[type=color]{padding:0;width:32px;height:26px}.signin{min-height:100%;display:grid;place-items:center;padding:24px 16px}.signin form{width:min(380px,100%);display:grid;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:24px}.picture{display:flex;flex-direction:column;gap:.5rem}.picture-preview{width:100%;max-width:16rem;aspect-ratio:4 / 3;object-fit:cover;border-radius:4px}.stage-name small{display:block;font-weight:400;color:var(--ink-2);font-size:11.5px}.stage-guide{margin:6px 0 6px 20px;display:grid;gap:6px;max-width:78ch;font-size:12.5px}.stage-guide p{margin:0}.stage-guide h4{margin:4px 0 0;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2)}.stage-facts,.stage-writes{list-style:none;margin:0;padding:0;display:grid;gap:2px}.stage-facts li b{font-weight:600}.stage-writes li{font-family:var(--mono);font-size:11.5px}.event-means{display:block;color:var(--ink-2);font-size:11.5px;margin-bottom:3px}.job-guide{margin:0 0 10px;max-width:78ch;color:var(--ink-2)}.stage-guide .stage-events{margin:0;padding:0}.proposal{display:grid;gap:6px;margin-top:6px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.proposal p{margin:0}.content{flex:1;min-height:0;overflow:auto;padding:0 16px 16px;display:grid;align-content:start;gap:8px}.content .banner,.copy-editor .banner{margin:0}.banner.good{background:var(--good-soft);color:var(--good)}.warn{color:var(--warn)}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.counter{margin-left:6px;font-family:var(--mono);font-size:11px;font-weight:400;font-variant-numeric:tabular-nums;color:var(--ink-3)}.counter.warn{color:var(--warn)}.counter.bad{color:var(--bad)}.save-state{display:inline-flex;align-items:center;gap:4px;margin-left:8px;font-size:11px;font-weight:400}.save-saving{color:var(--run)}.save-saved{color:var(--good)}.save-refused{color:var(--bad)}.asleep{display:grid;gap:6px;justify-items:start;padding:12px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--panel-2)}.asleep p{margin:0}.collection-list,.media-grid,.submission-list,.copy-list{list-style:none;margin:0;padding:0}.collection-list{display:grid;gap:6px}.collection-item{width:100%;display:grid;gap:2px;text-align:left;padding:8px 10px}.table.rows{width:100%;border-collapse:collapse}.table.rows td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:middle}.table.rows tr.working{opacity:.55}.table.rows td.order,.row-actions{white-space:nowrap;width:1%}.row-actions{text-align:right}.row-actions button+button{margin-left:4px}.row-title{text-align:left;font-weight:600;text-decoration:none;color:var(--ink)}button.icon{padding:1px 6px;min-width:24px}button.danger{background:var(--bad);border-color:var(--bad);color:#fff}.pager{display:flex;gap:8px;align-items:center;justify-content:center;padding-top:4px}.row-form,.settings{display:grid;gap:10px}.row-form-head,.row-form-foot{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.stock{display:flex;gap:8px;align-items:end}.money{display:flex;gap:6px;align-items:center}.money input{flex:1}.media-picker{display:flex;gap:8px;align-items:start}.media-picker-controls,.relation-picker{display:grid;gap:4px;flex:1;min-width:0}.thumb{width:56px;height:56px;flex:none;object-fit:cover;border-radius:4px;border:1px solid var(--line)}.empty-thumb{display:grid;place-items:center;background:var(--panel-2);color:var(--ink-3);font-size:10px}label.upload{position:relative;cursor:pointer}label.upload input[type=file]{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}label.upload:focus-within{outline:2px solid var(--accent);outline-offset:1px}.button-like{display:inline-flex;align-items:center;border:1px solid var(--line-strong);background:var(--panel);border-radius:var(--radius);padding:5px 10px}.button-like.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.media-split{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}@media(max-width:1400px){.media-split{grid-template-columns:1fr}}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.media-tile{width:100%;display:grid;gap:4px;padding:4px;text-align:left}.media-tile img,.media-tile .thumb{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:4px}.media-tile.selected{border-color:var(--accent);background:var(--accent-soft)}.media-name{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-detail{width:min(300px,100%);display:grid;gap:8px;align-content:start;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-2)}.media-detail img{width:100%;border-radius:4px}.media-detail p{margin:0;overflow-wrap:anywhere}.submission-list{display:grid;gap:8px}.submission.handled{opacity:.7}.submission .plain{padding:0;white-space:pre-wrap}.submission footer{margin-top:8px;align-items:center}.confirm{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--bad)}.copy-editor{display:grid;gap:8px}.copy-list{display:grid;gap:4px;margin:2px 0 4px}.copy-list li{display:flex;gap:4px;align-items:center}.copy-list li input{flex:1}.copy-list input[readonly]{background:var(--panel-2);color:var(--ink-2)}.copy-list.readonly{list-style:decimal;padding-left:18px;color:var(--ink-2)}.language-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.language-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.language-list .actions{margin-left:auto;display:flex;gap:6px}.languages form.inline{flex-wrap:wrap;margin-top:12px}.picture-sources{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center;margin-bottom:.5rem}.picture-sources .link{margin-left:auto}.picture-search input{width:100%;margin-bottom:.5rem}.picture-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.35rem;max-height:16rem;overflow-y:auto}.picture-tile{padding:0;border:2px solid transparent;border-radius:4px;background:none;cursor:pointer;aspect-ratio:1;overflow:hidden}.picture-tile img{width:100%;height:100%;object-fit:cover;display:block}.picture-tile.chosen,.picture-tile:hover{border-color:var(--accent, #2c5f5d)}.picture-tile:disabled{cursor:progress;opacity:.6}.questionnaire{margin:12px 16px;padding:14px 16px;border:1px solid var(--accent);border-radius:var(--radius);background:var(--panel)}.questionnaire h2{margin:0 0 2px;font-size:15px}.questionnaire header p{margin:0 0 10px}.q-steps{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:4px}.q-step{display:inline-flex;gap:6px;align-items:baseline;padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-2);color:var(--ink);font-size:12px;cursor:pointer}.q-step.current{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.q-section-intro{margin:0 0 12px;font-size:13px}.q-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.q{padding-top:12px;border-top:1px solid var(--line)}.q:first-child{border-top:0;padding-top:0}.q-bad{border-left:3px solid var(--bad);padding-left:10px}.q-head{display:flex;gap:8px;align-items:baseline}.q-why,.q-default{margin:2px 0 6px;font-size:12px}.q-options{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.q-options-style{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.q-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--panel-2);color:var(--ink);cursor:pointer}.q-option.chosen{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.q-option-label{font-weight:600;display:flex;gap:6px;align-items:center}.q-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-ink);background:var(--accent-soft);border-radius:3px;padding:0 4px}.q-style{padding:10px}.q-swatches{display:flex;gap:4px;margin-bottom:4px}.q-swatch{width:22px;height:22px;border-radius:50%;border:1px solid var(--line-strong)}.q-specimen{font-size:26px;line-height:1.1}.q-style-meta{font-size:11px}.q-other{width:100%;margin-top:2px}.q-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.q-color{display:flex;gap:8px;align-items:center}.q-actions{display:flex;gap:8px;align-items:center;margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}.questionnaire textarea{width:100%}.answered{margin:0;padding-left:18px}.trace-view{display:grid;gap:10px}.trace-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.trace-table{width:100%;border-collapse:collapse;font-size:12px}.trace-table th{text-align:left;font-weight:500;color:var(--muted, inherit);border-bottom:1px solid var(--line);padding:4px 6px}.trace-table td{border-bottom:1px solid var(--line);padding:4px 6px;vertical-align:top}.trace-table td.num{font-family:var(--mono);white-space:nowrap}.trace-row{cursor:pointer}.trace-row:hover,.trace-row.open{background:var(--panel-2)}.trace-detail>td{background:var(--panel-2)}.trace-command{font-family:var(--mono);max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-call{display:grid;gap:8px}.trace-attempt{display:grid;gap:6px;border-left:2px solid var(--line);padding-left:8px}.trace-attempt h4{margin:0;font-size:12px}.trace-text>summary{cursor:pointer;font-weight:500}.trace-text>pre{margin-top:4px;white-space:pre-wrap;word-break:break-word;max-height:560px}.trace-issues{margin:0;padding-left:18px}.unmet-view{display:grid;gap:10px}.unmet-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.unmet-item{border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px;display:grid;gap:4px}.unmet-item p{margin:0}.unmet-head,.unmet-foot{display:flex;gap:8px;align-items:center;justify-content:space-between}.unmet-foot{font-size:12px}.unmet-actions{display:inline-flex;gap:4px;flex:none}.design-pages{display:grid;gap:14px}.design-page h4{margin:0 0 6px}.gen-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.gen-auto{display:inline-flex;align-items:center;gap:4px;color:var(--ink-2)}.gen-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr)}.gen-body.with-detail{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.gen-main,.gen-side{min-height:0;overflow:auto;padding:16px}.gen-side{border-left:1px solid var(--line);background:var(--panel)}@media(max-width:1100px){.gen-body.with-detail{grid-template-columns:minmax(0,1fr)}.gen-body.with-detail .gen-main{display:none}.gen-side{border-left:0}}.gen-summary{display:grid;gap:12px;margin-bottom:16px}.gen-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.gen-tile{display:grid;gap:2px;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.gen-tile b{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.gen-tile small{font-size:12px;font-weight:400}.gen-chart{margin:0;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.gen-chart figcaption{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-weight:500}.gen-chart svg{display:block;width:100%;height:auto}.gen-axis{stroke:var(--line-strong);stroke-width:1}.gen-bar{fill:var(--accent);opacity:.85}.gen-bar.hover{opacity:1}.gen-fail-dot,.gen-fail-key{fill:var(--bad);background:var(--bad)}.gen-fail-key{display:inline-block;width:6px;height:6px;border-radius:50%;vertical-align:middle}.gen-chart-note{margin:4px 0 0;font-size:11px}.gen-stage-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.gen-stages{padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.gen-stages h3{font-size:13px;margin-bottom:6px}.gen-stages ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.gen-stages li{display:grid;grid-template-columns:minmax(70px,140px) minmax(0,1fr) 64px;align-items:center;gap:8px}.gen-stage-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.gen-stage-track{height:8px;border-radius:4px;background:var(--panel-2);overflow:hidden}.gen-stage-fill{display:block;height:100%;border-radius:4px;background:var(--accent)}.gen-stage-fill.bad{background:var(--bad)}.gen-stages .num{text-align:right}.gen-list{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}.gen-row{cursor:pointer}.gen-row:hover,.gen-row.open{background:var(--panel-2)}.gen-row.open{box-shadow:inset 3px 0 0 var(--accent)}.gen-row.failed td:first-child{box-shadow:inset 3px 0 0 var(--bad)}.gen-where{white-space:nowrap}.gen-what{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gen-more{margin:8px}.gen-detail{display:grid;gap:10px}.gen-detail-head{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}.gen-detail-head>div{flex:1;min-width:200px}.gen-detail-head h2{font-size:16px;text-transform:none;letter-spacing:normal;color:var(--ink)}.gen-failure{display:grid;gap:6px}.gen-failure pre,.gen-json{margin:0;font:12px/1.45 var(--mono);white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto}.gen-overview{display:grid;gap:16px}.gen-overview h3{font-size:13px;margin-bottom:6px}.gen-prompt{margin:0 0 8px;padding:8px 12px;border-left:3px solid var(--line-strong);background:var(--panel-2);white-space:pre-wrap}.studio-areas{border-bottom:0;padding:0}.studio-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr)}.studio-rail{border-right:1px solid var(--line);min-width:0}.studio-rail h2{margin-top:14px}.studio-rail select,.studio-rail input{width:100%}.studio-search{width:100%;margin-bottom:6px}.studio-kinds{margin-bottom:4px}.studio-list{list-style:none;margin:0;padding:0;display:grid;gap:1px}.studio-sublist{margin:2px 0 6px 10px;padding-left:6px;border-left:1px solid var(--line)}.studio-item{width:100%;display:grid;text-align:left;border:0;border-radius:4px;background:none;padding:3px 6px;min-width:0}.studio-item:hover{background:var(--panel)}.studio-item.selected{background:var(--accent-soft);color:var(--accent-ink)}.studio-item-title{font-family:var(--mono);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-item-sub{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-dir{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0 0 6px}.studio-stack{margin:0;padding-left:18px;display:grid;gap:6px}.studio-stack-row{display:flex;gap:4px;align-items:center}.studio-stack-row button{padding:0 6px}.studio-stack-row select{flex:1;min-width:0}.studio-stack-id{font-family:var(--mono);font-size:12px;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-main{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--bg)}.studio-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;padding:8px 16px;background:var(--panel);border-bottom:1px solid var(--line)}.studio-axis{display:grid;gap:2px}.studio-axis select,.studio-axis input{padding:3px 6px;max-width:180px}.studio-moves{position:relative;align-self:center}.studio-moves summary{cursor:pointer;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-moves-list{position:absolute;z-index:10;top:100%;left:0;display:grid;gap:2px;min-width:220px;max-height:360px;overflow:auto;padding:8px;background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 6px 24px #0000001f}.studio-detail{position:relative;padding:8px 16px 10px;background:var(--panel);border-bottom:1px solid var(--line);max-height:34vh;overflow:auto;display:grid;gap:6px}.studio-detail.folded{padding-block:4px}.studio-detail p{margin:0}.studio-fold{position:absolute;top:8px;right:12px;font-size:11px}.studio-detail-head{display:flex;align-items:center;gap:8px;padding-right:48px}.studio-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;align-items:baseline}.studio-controls{display:flex;flex-wrap:wrap;gap:6px 12px}.studio-plain{margin:0;padding-left:16px}.studio-recipe{margin:0;padding-left:20px;columns:2 320px}.studio-specimen{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,auto);gap:16px}.studio-ramp{width:auto;font-size:12px}.studio-ramp th{text-align:left;font-weight:600;color:var(--ink-3);padding:2px 6px}.studio-ramp td{padding:1px 6px}.studio-ramp-heading td{background:var(--accent-soft)}.studio-frames{flex:1;min-height:0;overflow:auto;display:flex;gap:12px;align-items:flex-start;padding:12px 16px 24px}.studio-frame{flex:none;display:grid;gap:4px}.studio-frame-head{display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap;overflow:hidden}.studio-frame-holder{overflow:hidden;border:1px solid var(--line-strong);border-radius:4px;background:#fff}.studio-frame-holder iframe{border:0;display:block}.studio-frame-error{margin:0;font-size:11px}.studio-warnings{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:11px;max-height:180px;overflow:auto}.studio-example{flex:1;min-height:0;overflow:auto;padding:12px 16px 32px;display:grid;gap:16px;align-content:start}.studio-example header{display:grid;gap:6px}.studio-example p{margin:0}.studio-concept{font-size:15px;max-width:80ch}.studio-notes{font-size:12px}.studio-notes th{text-align:left;color:var(--ink-3);font-weight:600;padding:4px 6px}.studio-notes td{vertical-align:top}.studio-shots{display:flex;gap:12px;align-items:flex-start;margin-top:8px}.studio-shots figure{margin:0;min-width:0}.studio-shots img{width:100%;display:block;border:1px solid var(--line-strong);border-radius:4px}@media(max-width:900px){.studio-body{grid-template-columns:1fr;grid-auto-rows:minmax(240px,auto)}.studio-specimen{grid-template-columns:1fr}}
