:root{color-scheme:light dark;--bg: #ffffff;--surface: #fafafa;--surface-2: #f2f2f3;--surface-3: #e9e9ec;--text: #1b1d20;--text-dim: #6b7075;--text-faint: #9aa0a6;--border: #dcdee1;--border-strong: #c3c6cb;--accent: #2563eb;--accent-fg: #ffffff;--ok: #16a34a;--ok-text: #15803d;--warn: #f59e0b;--info: #0e8ea3;--error: #c02626;--error-bg: #fdeaea;--error-border: #f0c2c2;--user-bubble: #e8effa;--code-bg: #f6f6f7;--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--accent-soft: #e8effa;--accent-text: #1d4ed8;--fs-xs: 11px;--fs-sm: 12px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--toolbar-h: 36px;--hud-h: calc(var(--toolbar-h) + 2 * var(--sp-1) + 2px);--hud-bottom: 48px;--ctl-h: 28px;--row-h: 40px;--row-h-dense: 28px;--header-h: 46px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--r-sm: 4px;--r-md: 6px;--shadow-1: 0 1px 2px rgba(0, 0, 0, .06);--shadow-2: 0 8px 24px rgba(0, 0, 0, .16);font-family:var(--font-sans);font-size:var(--fs-md);line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--bg: #17181b;--surface: #1e2024;--surface-2: #24262b;--surface-3: #2c2f35;--text: #e6e8ea;--text-dim: #9aa1a9;--text-faint: #6d757e;--border: #33373d;--border-strong: #454a52;--accent: #4b86f5;--accent-fg: #0f1115;--ok: #35c26a;--ok-text: #56d187;--warn: #e2a33a;--info: #35b4c9;--error: #f0736b;--error-bg: #2a1a1a;--error-border: #5a2d2d;--user-bubble: #23304a;--code-bg: #202227;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--accent-soft: #23304a;--accent-text: #9dbcff;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 10px 28px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;width:100%}body{background:var(--bg);color:var(--text);overflow:hidden}:root .solo-page{position:fixed;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}button,input,textarea,select{font-family:inherit;font-size:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:4px}button{cursor:pointer}button:disabled{cursor:default}textarea,input,select{accent-color:var(--accent)}::placeholder{color:var(--text-faint)}*{scrollbar-color:var(--border-strong) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:5px;border:2px solid transparent;background-clip:content-box}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:2px 10px;min-height:var(--ctl-h);font-size:var(--fs-md);font-weight:500;font-family:inherit;line-height:1.4;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-sm);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.ui-btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--text-faint)}.ui-btn:active:not(:disabled){transform:translateY(.5px)}.ui-btn:disabled{opacity:.45;background:transparent;cursor:not-allowed}.ui-btn:disabled:not(.ui-btn--ghost):not(.ui-btn--bare){border-style:dashed;border-color:var(--border-strong)}.ui-btn--primary{background:var(--accent);border-color:transparent;color:var(--accent-fg);font-weight:600}.ui-btn--primary:hover:not(:disabled){background:var(--accent);border-color:transparent;filter:brightness(1.08)}.ui-btn--ghost{background:transparent;border-color:transparent;color:var(--text-dim)}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-2);border-color:transparent;color:var(--text)}.ui-btn--bare{padding:0;min-height:0;background:transparent;border-color:transparent;color:inherit;font-size:inherit;font-weight:inherit;justify-content:flex-start;text-align:left}.ui-btn--bare:hover:not(:disabled){background:transparent;border-color:transparent}.ui-btn--bare.ui-btn--icon{justify-content:center;color:var(--text-dim);border-radius:var(--r-md)}.ui-btn--bare.ui-btn--icon:hover:not(:disabled){color:var(--text)}.ui-btn--icon{width:var(--ctl-h);height:var(--ctl-h);padding:0;flex-shrink:0}.ui-btn--sm{padding:3px 8px;min-height:0;font-size:var(--fs-sm)}.ui-btn--danger:hover:not(:disabled){background:var(--error-bg);border-color:var(--error-border);color:var(--error)}.ui-btn.is-on,.ui-btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.ui-btn.is-on:hover:not(:disabled),.ui-btn[aria-pressed=true]:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);filter:brightness(1.04)}.ui-btn:focus-visible,.ui-card:focus-visible,.ui-listrow:focus-visible,.ui-seg__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ui-btn:focus:not(:focus-visible){outline:none}.ui-seg{display:inline-flex;gap:2px;padding:2px;min-height:var(--ctl-h);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}.ui-seg__btn{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;font-size:var(--fs-md);font-weight:500;font-family:inherit;color:var(--text);background:transparent;border:none;border-radius:var(--r-sm);cursor:pointer;transition:background .12s,color .12s}.ui-seg__btn:hover:not(:disabled):not([aria-pressed=true]){background:var(--surface-3)}.ui-seg__btn[aria-pressed=true]{background:var(--surface);color:var(--text);font-weight:600;box-shadow:var(--shadow-1)}.ui-seg__btn--icon{justify-content:center;width:calc(var(--ctl-h) - 6px);padding:0}.ui-seg__btn:disabled{opacity:.3;cursor:not-allowed}.ui-tab{padding:8px 14px;font-size:var(--fs-md);font-weight:500;font-family:inherit;color:var(--text-dim);background:none;border:none;border-bottom:2px solid transparent;border-radius:0;margin-bottom:-1px;cursor:pointer;transition:color .12s,border-color .12s}.ui-tab:hover{color:var(--text)}.ui-tab[aria-pressed=true]{color:var(--text);font-weight:600;border-bottom-color:var(--accent)}.ui-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ui-input,.ui-select{box-sizing:border-box;padding:5px 8px;min-height:var(--ctl-h);font-size:var(--fs-md);font-family:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);transition:border-color .12s}.ui-input:hover,.ui-select:hover{border-color:var(--text-faint)}.ui-input:focus,.ui-select:focus{outline:none;border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.ui-label{display:block;font-size:var(--fs-sm);font-weight:500;color:var(--text);margin-bottom:var(--sp-1)}.ui-help{font-size:var(--fs-sm);color:var(--text-faint);line-height:1.4;margin-top:var(--sp-1)}.ui-eyebrow{font-size:var(--fs-sm);font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--text-dim)}.ui-section-header{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border)}.ui-section-header__title{margin:0;flex:1;min-width:0}.ui-num{font-variant-numeric:tabular-nums}.ui-search{position:relative;display:flex;align-items:center}.ui-search>svg{position:absolute;left:var(--sp-2);color:var(--text-faint);pointer-events:none}.ui-search>.ui-input{width:100%;padding-left:28px}.ui-card{display:block;width:100%;text-align:left;padding:var(--sp-2);font-family:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;transition:background .12s,border-color .12s}.ui-card:hover{background:var(--surface-3);border-color:var(--border-strong)}.ui-card.is-on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.ui-card__title{font-size:var(--fs-md);font-weight:600}.ui-card__sub{font-size:var(--fs-sm);color:var(--text-faint);line-height:1.4;margin-top:2px}.ui-card.is-on .ui-card__sub{color:var(--accent-text);opacity:.8}.ui-card--media{display:flex;align-items:stretch;padding:0;overflow:hidden}.ui-card__media{flex:none;display:grid;place-items:center;padding:var(--sp-2);background:var(--surface);border-right:1px solid var(--border);transition:border-color .12s}.ui-card:hover .ui-card__media{border-right-color:var(--border-strong)}.ui-card.is-on .ui-card__media{border-right-color:var(--accent)}.ui-card__body{display:flex;align-items:center;flex:1;min-width:0;padding:var(--sp-2)}.ui-tag{font-size:var(--fs-xs);font-weight:700;letter-spacing:.3px;padding:1px 4px;border-radius:3px;border:1px solid var(--warn);color:var(--warn);flex-shrink:0}.ui-stack{display:flex;flex-direction:column;min-width:0}.ui-row{display:flex;align-items:center;min-width:0}.ui-row--wrap{flex-wrap:wrap}.ui-gap-0{gap:0}.ui-gap-1{gap:var(--sp-1)}.ui-gap-2{gap:var(--sp-2)}.ui-gap-3{gap:var(--sp-3)}.ui-gap-4{gap:var(--sp-4)}.ui-gap-5{gap:var(--sp-5)}.ui-gap-6{gap:var(--sp-6)}.ui-spacer{flex:1;min-width:0}.ui-field{min-width:0}.ui-field>label{display:block}.ui-text--xs{font-size:var(--fs-xs)}.ui-text--sm{font-size:var(--fs-sm)}.ui-text--md{font-size:var(--fs-md)}.ui-text--lg{font-size:var(--fs-lg)}.ui-text--xl{font-size:var(--fs-xl)}.ui-tone--dim{color:var(--text-dim)}.ui-tone--faint{color:var(--text-faint)}.ui-tone--error{color:var(--error)}.ui-tone--ok{color:var(--ok-text)}.ui-tone--accent{color:var(--accent)}.ui-italic{font-style:italic}.ui-mono{font-family:var(--font-mono)}.ui-block{display:block}.ui-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-toast{max-width:min(520px,100%);box-sizing:border-box;padding:9px 13px;border-radius:var(--r-md);font-size:var(--fs-md);line-height:1.45;text-align:center;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);box-shadow:var(--shadow-2);animation:ui-toast-in .14s ease-out}.ui-toast--warn{border-color:var(--warn)}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion: reduce){.ui-toast{animation:none}}.ui-top-stack{position:absolute;top:calc(env(safe-area-inset-top,0px) + var(--sp-3));left:var(--sp-3);right:var(--sp-3);z-index:21;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);pointer-events:none}.ui-top-stack .viewport-prompt,.ui-top-stack .ui-toast{pointer-events:auto}.ui-listrow{display:flex;align-items:center;gap:var(--sp-2);width:100%;text-align:left;padding:9px 10px;font:inherit;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);cursor:pointer;transition:background .12s,border-color .12s}.ui-listrow:hover:not(:disabled){background:var(--surface-3)}.ui-listrow:disabled{cursor:default}.rail__resize{width:5px;margin-left:-3px;margin-right:-2px;z-index:5;cursor:col-resize;background:transparent;border:none;padding:0;flex-shrink:0;transition:background .12s}.rail__resize:hover,.rail__resize:focus-visible,.rail__resize.is-dragging{background:var(--accent);outline:none}.tree-empty{padding:var(--sp-4);font-size:var(--fs-md);color:var(--text-dim);line-height:1.5}.facts{display:grid;grid-template-columns:auto 1fr;gap:3px var(--sp-3);padding:0 var(--sp-3) var(--sp-2);font-size:var(--fs-md)}.facts dt{color:var(--text-dim)}.facts dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport-prompt{position:absolute;top:var(--sp-3);left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:var(--sp-3);max-width:calc(100% - var(--sp-3) * 2);padding:var(--sp-2) var(--sp-3);font-size:var(--fs-sm);color:var(--text);background:var(--surface);border:1px solid var(--accent);border-radius:var(--r-md);box-shadow:var(--shadow-2)}.ui-top-stack .viewport-prompt{position:static;transform:none;max-width:100%;box-sizing:border-box}.plan-topright{position:absolute;right:calc(var(--sp-3) + var(--rail-under, 0px));top:var(--sp-3);z-index:20;pointer-events:none;display:flex;flex-direction:column;align-items:flex-end;gap:var(--sp-2)}.plan-wall-face{pointer-events:auto;background:var(--surface);box-shadow:var(--shadow-2)}.plan-zoom{position:absolute;right:calc(var(--sp-3) + var(--rail-under, 0px));bottom:var(--sp-3);z-index:10;display:flex;flex-direction:column;gap:2px;padding:2px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-2)}.plan-zoom .ui-btn.ui-btn--ghost{color:var(--text)}.plan-scale{position:absolute;left:var(--sp-3);bottom:var(--sp-3);z-index:10;pointer-events:none}.plan-measure{pointer-events:none;display:grid;grid-template-columns:auto auto;align-items:baseline;gap:0 var(--sp-2);padding:var(--sp-1) var(--sp-2);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-2)}.plan-measure__label{font-size:var(--fs-sm);color:var(--text-dim)}.plan-measure__value{min-width:6ch;text-align:right;font-family:var(--font-mono);font-size:var(--fs-md);font-variant-numeric:tabular-nums;color:var(--text)}.plan-measure__live{color:var(--text-dim)}.plan-measure__caret{display:inline-block;width:1px;height:1em;margin-left:1px;vertical-align:text-bottom;background:var(--accent);animation:plan-measure-blink 1.1s steps(1,end) infinite}@keyframes plan-measure-blink{50%{opacity:0}}.plan-measure__note{grid-column:1 / -1;max-width:24ch;font-size:var(--fs-sm);color:var(--error)}.plan-measure--bad{border-color:var(--error)}@media (prefers-reduced-motion: reduce){.plan-measure__caret{animation:none}}.sheet-scrim{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#00000059}.sheet{width:min(460px,100%);max-height:80vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-2)}.sheet__head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border)}.sheet__title{flex:1;margin:0;font-size:var(--fs-lg);font-weight:600}.sheet__body{padding:var(--sp-3) var(--sp-4) var(--sp-4);overflow:auto}.sheet__foot{display:flex;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border)}.keys{display:grid;grid-template-columns:1fr auto;gap:var(--sp-1) var(--sp-4);margin:var(--sp-2) 0 0;font-size:var(--fs-md)}.keys dt{color:var(--text-dim);align-self:center}.keys dd{margin:0;justify-self:end}kbd{display:inline-block;padding:2px 6px;font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-bottom-width:2px;border-radius:var(--r-sm);white-space:nowrap}.ctx-menu{position:fixed;z-index:95;min-width:210px;max-width:320px;padding:var(--sp-1);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-2);outline:none}@supports (backdrop-filter: blur(8px)){.ctx-menu{background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(8px)}}.ctx-menu__rule{height:1px;margin:var(--sp-1) 0;background:var(--border)}.ctx-menu__item{display:flex;align-items:center;gap:var(--sp-4);width:100%;padding:5px var(--sp-2);font-family:inherit;font-size:var(--fs-md);line-height:1.4;text-align:left;color:var(--text);background:transparent;border:none;border-radius:var(--r-sm);cursor:pointer}.ctx-menu__item[data-active]{background:var(--accent);color:var(--accent-fg, #fff)}.ctx-menu__item[aria-disabled=true]{color:var(--text-faint);cursor:default}.ctx-menu__item--danger{color:var(--error)}.ctx-menu__item--danger[data-active]{background:var(--error);color:#fff}.ctx-menu__item--danger[aria-disabled=true]{color:var(--text-faint)}.ctx-menu__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctx-menu__keys{flex:0 0 auto;font-size:var(--fs-sm);color:var(--text-faint);font-variant-numeric:tabular-nums}.ctx-menu__item[data-active] .ctx-menu__keys{color:inherit;opacity:.75}table :is(td,th).ui-num{text-align:right}.itemview__fallback{display:flex;align-items:center;justify-content:center;height:100%;padding:var(--sp-4);font-size:var(--fs-md);line-height:1.5;text-align:center;color:var(--text-faint)}@keyframes chat-working{0%,to{opacity:1}50%{opacity:.25}}@keyframes chat-dot{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.md{display:flow-root}.md p{margin:.5em 0}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md h1,.md h2,.md h3,.md h4,.md h5,.md h6{margin:.9em 0 .35em;font-weight:600;line-height:1.3}.md h1{font-size:1.15em}.md h2{font-size:1.08em}.md h3,.md h4,.md h5,.md h6{font-size:1em}.md ul,.md ol{margin:.45em 0;padding-left:1.35em}.md li{margin:.18em 0}.md li>p{margin:0}.md li>p+p{margin-top:.35em}.md code{font-family:var(--font-mono);font-size:.92em;background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-sm);padding:.05em .3em;overflow-wrap:anywhere}.md pre{margin:.55em 0;padding:.55em .65em;background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-md);overflow-x:auto;font-size:.92em;line-height:1.45}.md pre code{background:none;border:0;padding:0;font-size:1em;white-space:pre;overflow-wrap:normal}.md blockquote{margin:.55em 0;padding:.1em 0 .1em .7em;border-left:2px solid var(--border-strong);color:var(--text-dim)}.md hr{margin:.9em 0;border:0;border-top:1px solid var(--border)}.md a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}.md__tablewrap{margin:.55em 0;overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-md)}.md table{border-collapse:collapse;width:100%;font-size:.95em}.md th,.md td{padding:.32em .5em;border-bottom:1px solid var(--border);vertical-align:top;text-align:left}.md th{background:var(--surface-2);font-weight:600;white-space:nowrap}.md tr:last-child td{border-bottom:0}.md li input[type=checkbox]{margin-right:.4em}.sheet--wide{width:min(1060px,100%);max-height:90vh}@keyframes render-pulse{0%{background-position:0 0}to{background-position:22.6px 0}}.ui-viewer-bar{position:absolute;right:14px;bottom:16px;z-index:3;display:flex;align-items:center;gap:2px;padding:4px 6px;border-radius:9px;background:var(--surface);border:1px solid var(--border-strong);box-shadow:0 4px 18px #0000002e;font-size:var(--fs-sm);color:var(--text)}.ui-viewer-bar__sep{width:1px;height:16px;background:var(--border);margin:0 4px}.ui-viewer-bar__step{min-width:22px}.ui-viewer-bar__count{min-width:52px;text-align:center;color:var(--text-dim)}.ui-viewer-bar__zoom{width:52px;color:var(--text)}.ui-viewer-bar__zoom.is-fitted{color:var(--text-dim)}.ui-page{box-sizing:border-box;width:100%;max-width:1040px;margin:0 auto;padding:var(--sp-5) 22px 40px}.ui-page--wide{max-width:1200px}.ui-page--full{max-width:none;padding:var(--sp-3) 22px var(--sp-5)}.ui-page--measure{max-width:860px}.ui-pageframe{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.ui-pagehead{flex-shrink:0;padding:14px 22px;border-bottom:1px solid var(--border);background:var(--bg)}.ui-pagehead--tabs{padding-bottom:0}.ui-pagehead__row{display:flex;align-items:center;gap:var(--sp-3);min-height:var(--ctl-h)}.ui-pagehead__title{flex:1;min-width:0;margin:0;font-size:var(--fs-lg);font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-pagehead__actions{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0}.ui-pagehead__tabs{display:flex;gap:2px;margin-top:var(--sp-3)}.ui-pagebody{flex:1;min-height:0;overflow-y:auto}.ui-pagebody--bleed{overflow:visible;display:flex;flex-direction:column}.ui-page-empty{margin:0;font-size:var(--fs-md);line-height:1.5;color:var(--text-dim)}.ui-navrow{width:100%;display:flex;align-items:center;gap:9px;padding:7px 10px;font-family:inherit;font-size:var(--fs-md);text-align:left;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-dim);transition:background .12s,color .12s}.ui-navrow:not([aria-current=page]):not([aria-selected=true]):hover,.ui-navrow:not([aria-current=page]):not([aria-selected=true]):focus-visible{background:var(--surface-2);color:var(--text)}.ui-navrow:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.ui-sidetabs{display:grid;grid-template-columns:180px minmax(0,1fr);gap:var(--sp-5);align-items:start}.ui-sidetabs__menu{position:sticky;top:var(--sp-3);display:grid;gap:2px}.ui-sidetabs__panel{min-width:0}.ui-logopicker{display:flex;gap:var(--sp-4);align-items:flex-start}.ui-logopicker__tile{position:relative;flex-shrink:0;height:96px;min-width:96px;max-width:320px;padding:10px;box-sizing:border-box;border:1px solid var(--border-strong);border-radius:12px;background:#fff;display:grid;place-items:center;overflow:hidden;cursor:pointer}.ui-logopicker__tile img{display:block;height:76px;width:auto;max-width:300px;object-fit:contain}.ui-logopicker__tile--empty{border-style:dashed;background:var(--surface-2)}.ui-logopicker__initial{font-size:44px;font-weight:700;color:var(--text-faint)}.ui-logopicker__overlay{position:absolute;inset:0;display:grid;place-items:center;background:#00000080;color:#fff;font-size:var(--fs-sm);font-weight:600;opacity:0;transition:opacity .12s ease-out}.ui-logopicker__tile:hover .ui-logopicker__overlay,.ui-logopicker__tile:focus-visible .ui-logopicker__overlay,.ui-logopicker__tile--over .ui-logopicker__overlay{opacity:1}.ui-logopicker__tile--over{border-color:var(--accent)}.ui-logopicker__side{min-width:0;display:grid;gap:var(--sp-2);align-content:start}.ui-logopicker__problem{margin:0;font-size:var(--fs-sm);color:var(--danger, #c33)}.ui-logo{padding:0;border:none;background:none;font-family:inherit;font-size:var(--fs-lg);font-weight:700;letter-spacing:-.2px;line-height:normal;color:var(--text);cursor:pointer;flex-shrink:0}.scene-tape__end{width:7px;height:7px;border-radius:50%;background:var(--accent)}.scene-tape__end--ring{width:12px;height:12px;background:transparent;border:2px solid var(--accent)}.scene-tape__end--rest{width:9px;height:9px;background:transparent;border:1.5px solid #6b7280}.scene-dim{padding:0 3px;color:#374151;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;white-space:nowrap;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 2px #fff;cursor:pointer;user-select:none}.scene-dim--selected,.scene-dim--live{color:var(--accent);font-weight:600}.plan-root{--plan-bg: #fbfbfa;--plan-grid: #e7e5e0;--plan-ink: #23262a;--plan-wall: #d9d6d0;--plan-dim: #8a8580;--plan-overhead: #9aa3ad}:root[data-theme=light] .plan-root{--plan-bg: #fbfbfa;--plan-grid: #e7e5e0;--plan-ink: #23262a;--plan-wall: #d9d6d0;--plan-dim: #8a8580;--plan-overhead: #9aa3ad}:root[data-theme=dark] .plan-root{--plan-bg: #17191c;--plan-grid: #23262a;--plan-ink: #d8dade;--plan-wall: #2c3035;--plan-dim: #7d848c;--plan-overhead: #6a737d}.rev-panel{overflow-y:auto;padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2)}.rev-card{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.rev-card--working{background:var(--surface-2)}.rev-card.is-superseded{opacity:.72}.rev-card>.ui-btn--primary{align-self:stretch;justify-content:center}.rev-card__head{display:flex;align-items:center;gap:var(--sp-2)}.rev-card__title{flex:1;min-width:0;display:flex;flex-direction:column;font-size:var(--fs-md)}.rev-card__meta{font-size:var(--fs-sm);color:var(--text-dim)}.rev-card__reason{margin:0;font-size:var(--fs-md);line-height:1.45}.rev-card__actions{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.rev-letter{flex-shrink:0;width:28px;height:28px;display:grid;place-items:center;border-radius:var(--r-sm);font-weight:700;font-size:var(--fs-md);background:var(--surface-3);color:var(--text)}.rev-letter--working{background:transparent;border:1px dashed var(--border-strong);color:var(--text-dim)}.rev-letter--approved{background:color-mix(in srgb,var(--ok) 22%,var(--surface))}.rev-letter--released{background:var(--accent);color:var(--accent-fg)}.rev-status--approved{color:var(--ok)}.rev-status--released{color:var(--accent-text)}.rev-status.is-superseded{color:var(--text-faint)}.rev-form{display:flex;flex-direction:column;gap:var(--sp-1)}.rev-form__actions{display:flex;justify-content:flex-end;gap:var(--sp-1);margin-top:var(--sp-1)}.rev-error{color:var(--error)}.rev-changes{display:flex;flex-direction:column;gap:var(--sp-2)}.rev-changes__room{display:flex;flex-direction:column;gap:1px}.rev-changes__room-name{font-size:var(--fs-sm);font-weight:600;color:var(--text-dim);margin-bottom:2px}.rev-changes__row{display:grid;grid-template-columns:14px minmax(0,auto) 1fr;align-items:baseline;gap:var(--sp-1) var(--sp-2);padding:3px 4px;font-size:var(--fs-sm);text-align:left;background:none;border:none;border-radius:var(--r-sm);color:var(--text);font-family:inherit}.rev-changes__row.is-link{cursor:pointer}.rev-changes__row.is-link:hover{background:var(--surface-3)}.rev-changes__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rev-changes__details{color:var(--text-dim);min-width:0}.rev-mark{font-weight:700;text-align:center}.rev-mark--added{color:var(--ok)}.rev-mark--removed{color:var(--error)}.rev-mark--changed{color:var(--warn)}.rev-changes__moved{color:var(--text-dim)}.rev-mark--moved{color:var(--text-faint);font-weight:400}.scene-knob{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#2563eb;box-shadow:0 0 0 1.5px #2563eb,0 2px 6px #0f172a47;transition:transform .12s ease,background-color .12s ease,color .12s ease;user-select:none}.scene-knob--hover{transform:scale(1.12);background:#2563eb;color:#fff}:root{--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--tabbar-h: calc(52px + var(--safe-b));--touch-min: 44px}@media (pointer: coarse){html{touch-action:manipulation;-webkit-text-size-adjust:100%}input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit]),textarea,select,[contenteditable=true]{font-size:max(16px,1em)!important}.ui-btn,.ctx-menu button,.ui-seg{min-height:var(--touch-min)}.ui-seg button{min-height:calc(var(--touch-min) - 6px)}.ui-seg__btn--icon{width:calc(var(--touch-min) - 6px)}.ui-btn--icon{min-width:var(--touch-min)}.sheet{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}@media (max-width: 767px),(max-height: 500px) and (pointer: coarse){.rail__resize{display:none}.plan-zoom,.plan-scale{bottom:calc(var(--tabbar-h) + var(--sp-3))}.plan-topright{top:calc(var(--plan-top-chrome, 0px) + var(--sp-2));right:var(--sp-2)}}@media (max-width: 767px),(max-height: 500px) and (pointer: coarse){.doc-scroll{padding-bottom:72px!important}}@media (max-width: 767px),(max-height: 500px) and (pointer: coarse){.sheet{inset:auto 0 0;width:auto;max-width:none;max-height:88dvh;transform:none;border-radius:14px 14px 0 0;padding-bottom:calc(var(--sp-4) + var(--safe-b))}.ctx-menu{position:fixed!important;left:var(--sp-2)!important;right:var(--sp-2);top:auto!important;bottom:calc(var(--tabbar-h) + var(--sp-2));width:auto;min-width:0;max-height:60dvh;overflow:auto;border-radius:var(--r-md)}.keys{grid-template-columns:1fr}}@media (max-width: 767px),(max-height: 500px) and (pointer: coarse){.ui-page{padding-left:var(--sp-3);padding-right:var(--sp-3)}.ui-sidetabs{grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}.ui-sidetabs__menu{position:static;display:flex;gap:var(--sp-1);overflow-x:auto;scrollbar-width:none}.ui-sidetabs__menu::-webkit-scrollbar{display:none}.ui-sidetabs__menu .ui-navrow{flex-shrink:0;width:auto;border-color:var(--border);border-radius:999px}}.feedback-tab{position:fixed;right:0;top:50%;z-index:80;transform:translateY(-50%);display:flex;align-items:center;padding:7px 8px 7px 7px;border:1px solid var(--border);border-right:none;border-radius:var(--r-md) 0 0 var(--r-md);background:var(--surface);box-shadow:var(--shadow-2);color:var(--text);font:inherit;font-size:var(--fs-sm);font-weight:600;line-height:1;cursor:pointer;transition:background-color .12s}.feedback-tab__label{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .15s,margin .15s}.feedback-tab:hover,.feedback-tab:focus-visible{background:var(--surface-2)}.feedback-tab:hover .feedback-tab__label,.feedback-tab:focus-visible .feedback-tab__label{max-width:80px;margin-left:5px}@media print,(max-width: 767px),(pointer: coarse){.feedback-tab{display:none}}.feedback-shot{display:flex;flex-direction:column;gap:var(--sp-2)}.feedback-shot__img{display:block;padding:0;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;background:var(--surface-2);cursor:zoom-in}.feedback-shot__img img{display:block;width:100%;max-height:220px;object-fit:contain}.feedback-markup{position:fixed;inset:0;z-index:95;display:flex;flex-direction:column;background:#141418eb}.feedback-markup__bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface);border-bottom:1px solid var(--border-strong)}.feedback-markup__hint{color:var(--text-dim)}.feedback-markup__stage{flex:1;min-height:0;display:grid;place-items:center;padding:var(--sp-3)}.feedback-markup__image{position:relative;box-shadow:0 6px 30px #00000080;user-select:none}.feedback-markup__image img{display:block;width:100%;height:100%}@media (max-width: 767px){.feedback-markup__hint{display:none}}body:has(.feedback-markup,.jf-fbmark) .jf-pop{z-index:100}
