@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,html[data-theme=dark]{--bg-canvas: #111214;--bg-surface: #17181c;--bg-elevated: #1e2026;--bg-subtle: #141519;--ink-primary: #ece9e2;--ink-secondary: #a09d96;--ink-muted: #6c6a64;--rule-hairline: #282a32;--rule-strong: #3a3d47;--accent-terracotta: #d0532f;--accent-terracotta-hover: #e0613c;--accent-terracotta-active: #b94422;--accent-tech-green: #248f59;--accent-tech-green-bg: rgba(36, 143, 89, .12);--accent-amber: #d4881c;--accent-amber-bg: rgba(212, 136, 28, .13);--accent-danger: #c93b3b}html[data-theme=light]{--bg-canvas: #f3efe6;--bg-surface: #faf7f0;--bg-elevated: #ece7dc;--bg-subtle: #ede8dd;--ink-primary: #16171a;--ink-secondary: #4e4d48;--ink-muted: #78756e;--rule-hairline: #d6d0c3;--rule-strong: #b8b0a0;--accent-terracotta: #b84322;--accent-terracotta-hover: #9f3719;--accent-terracotta-active: #872d13;--accent-tech-green: #186b40;--accent-tech-green-bg: rgba(24, 107, 64, .1);--accent-amber: #9e6208;--accent-amber-bg: rgba(158, 98, 8, .11);--accent-danger: #a82828}:root{--font-sans: "Geist Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono Variable", "SFMono-Regular", Consolas, monospace;--radius-xs: 2px;--radius-sm: 4px;--radius-sheet: 8px;--touch-target-min: 44px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--mobile-dock-height: calc(64px + var(--safe-bottom))}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;width:100%;max-width:100vw;overflow-x:hidden;background-color:var(--bg-canvas);color:var(--ink-primary);font-family:var(--font-sans);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea,a{touch-action:manipulation}code,pre,kbd,.mono-label,.mono-tag,.skill-code{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.mobile-only{display:none!important}@media(max-width:960px){.mobile-only{display:flex!important}p.mobile-only,span.mobile-only,button.mobile-only{display:inline-flex!important}.desktop-only{display:none!important}}@media(max-width:540px){.hide-xs{display:none!important}}.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}.skip-link{position:absolute;top:-48px;left:12px;z-index:1000;background:var(--accent-terracotta);color:#fff;padding:8px 12px;font-family:var(--font-mono);font-size:12px;text-decoration:none}.skip-link:focus{top:8px}:focus-visible{outline:2px solid var(--accent-terracotta);outline-offset:1px}html[data-mode=quick] .enterprise-only{display:none!important}.app-shell{min-height:100vh;min-height:100dvh;max-width:100vw;overflow-x:hidden;display:flex;flex-direction:column}.topbar{min-height:52px;padding:var(--safe-top) calc(16px + var(--safe-right)) 0 calc(16px + var(--safe-left));display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--bg-surface);border-bottom:1px solid var(--rule-hairline)}.topbar__brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;background:var(--accent-terracotta);color:#fff;font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.06em;border-radius:var(--radius-xs);flex-shrink:0}.brand-titles{display:flex;align-items:baseline;gap:10px;min-width:0}.brand-name{font-weight:700;font-size:15px;letter-spacing:.08em}.brand-sub{font-family:var(--font-mono);font-size:11px;color:var(--ink-muted);letter-spacing:.05em;white-space:nowrap}@media(max-width:680px){.brand-sub{display:none}}.topbar__controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.segmented{display:inline-flex;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-radius:var(--radius-sm);padding:2px}.segmented__btn{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--ink-secondary);font-family:var(--font-sans);font-size:12px;font-weight:500;padding:6px 10px;border-radius:var(--radius-xs);cursor:pointer}.segmented__btn:active{background:var(--bg-elevated)}.segmented__btn.is-active{background:var(--bg-elevated);color:var(--ink-primary)}.segmented__dot{width:6px;height:6px;border-radius:50%;background:var(--ink-muted);flex-shrink:0}.segmented__btn.is-active .segmented__dot{background:var(--accent-terracotta)}.workbench{flex:1;display:grid;grid-template-columns:264px minmax(0,1fr) 330px;min-height:calc(100dvh - 52px);max-width:100vw}.sheet-grabber{display:none;width:100%;padding:8px 0 4px;justify-content:center;align-items:center}.sheet-grabber__pill{width:36px;height:4px;border-radius:2px;background:var(--rule-strong)}.sheet-backdrop[hidden]{display:none!important}.sheet-backdrop{position:fixed;inset:0;z-index:880;background:#0a0b0db8}.rail{background:var(--bg-surface);border-right:1px solid var(--rule-hairline);display:flex;flex-direction:column;justify-content:space-between}.rail__header,.inspector__header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--rule-hairline)}.rail__header-titles,.inspector__header-titles{display:flex;align-items:center;gap:8px}.mono-label{font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}.mono-tag{font-size:11px;padding:1px 6px;background:var(--bg-elevated);border:1px solid var(--rule-hairline);color:var(--ink-secondary);border-radius:var(--radius-xs)}.skill-list{display:flex;flex-direction:column;padding:6px;gap:2px;overflow-y:auto;flex:1}.skill-group-label{padding:10px 8px 4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.skill-tab{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;text-align:left;padding:8px 10px;border:1px solid transparent;border-radius:var(--radius-xs);background:transparent;color:var(--ink-secondary);cursor:pointer;font-family:var(--font-sans);font-size:13px}@media(hover:hover)and (pointer:fine){.skill-tab:hover{background:var(--bg-elevated);color:var(--ink-primary)}}.skill-tab:active{background:var(--bg-elevated);border-color:var(--accent-terracotta)}.skill-tab[aria-selected=true]{background:var(--bg-elevated);border-color:var(--rule-strong);border-left:3px solid var(--accent-terracotta);color:var(--ink-primary);font-weight:600}.skill-tab__site{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;padding:1px 5px;border-radius:var(--radius-xs);flex-shrink:0}.skill-tab__site--local{color:var(--accent-tech-green);background:var(--accent-tech-green-bg)}.skill-tab__site--remote{color:var(--accent-amber);background:var(--accent-amber-bg)}.rail__footer{padding:12px 14px;border-top:1px solid var(--rule-hairline);display:flex;flex-direction:column;gap:6px;font-size:11.5px;color:var(--ink-muted)}.spec-row{display:flex;justify-content:space-between;align-items:center}.spec-row code{color:var(--ink-secondary);font-size:11px}.mobile-skill-strip{display:flex;align-items:center;gap:6px;overflow-x:auto;padding:4px 2px 10px;margin-bottom:-4px;border-bottom:1px solid var(--rule-hairline);scrollbar-width:none;-webkit-overflow-scrolling:touch}.mobile-skill-strip::-webkit-scrollbar{display:none}.mobile-skill-pill{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:6px 12px;white-space:nowrap;background:var(--bg-surface);border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);color:var(--ink-secondary);font-family:var(--font-sans);font-size:12.5px;font-weight:500;cursor:pointer;flex-shrink:0}.mobile-skill-pill:active,.mobile-skill-pill[aria-selected=true]{background:var(--bg-elevated);border-color:var(--accent-terracotta);color:var(--ink-primary);font-weight:600}.stage{padding:20px 24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;overflow-x:hidden;min-width:0}.tool-banner{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--rule-hairline);flex-wrap:wrap}.tool-banner__topline{display:flex;align-items:center;gap:10px;margin-bottom:6px;flex-wrap:wrap}.skill-code{font-size:11.5px;color:var(--accent-terracotta);font-weight:600}.privacy-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.04em;border-radius:var(--radius-xs);border:1px solid currentColor}.privacy-badge--local{color:var(--accent-tech-green);background:var(--accent-tech-green-bg)}.privacy-badge--remote{color:var(--accent-amber);background:var(--accent-amber-bg)}.privacy-badge__led{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.tool-title{margin:0 0 4px;font-size:22px;font-weight:650;letter-spacing:-.015em}.tool-summary{margin:0;color:var(--ink-secondary);font-size:13.5px;max-width:65ch}.tool-banner__specs{display:flex;gap:10px;flex-wrap:wrap}.kv-cell{padding:8px 12px;background:var(--bg-surface);border:1px solid var(--rule-hairline);display:flex;flex-direction:column;gap:2px}.kv-cell__k{font-family:var(--font-mono);font-size:9.5px;color:var(--ink-muted);letter-spacing:.08em}.kv-cell__v{font-size:11.5px;color:var(--ink-primary);word-break:break-word}.dropzone{position:relative;display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg-surface);border:1px dashed var(--rule-strong);border-radius:var(--radius-sm);cursor:pointer}@media(hover:hover)and (pointer:fine){.dropzone:hover{border-style:solid;border-color:var(--accent-terracotta);background:var(--bg-elevated)}}.dropzone:active,.dropzone.is-dragover{border-style:solid;border-color:var(--accent-terracotta);background:var(--bg-elevated)}.dropzone__crosshair{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rule-strong);font-family:var(--font-mono);font-size:18px;color:var(--accent-terracotta);flex-shrink:0}.dropzone__copy{flex:1;min-width:0}.dropzone__title{margin:0 0 3px;font-weight:600;font-size:14px}.dropzone__link{color:var(--accent-terracotta);text-decoration:underline;text-underline-offset:3px}.dropzone__hint{margin:0;font-size:12px;color:var(--ink-muted)}.dropzone__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel{background:var(--bg-surface);border:1px solid var(--rule-hairline);border-radius:var(--radius-sm);min-width:0}.panel--output{border-color:var(--accent-tech-green)}.panel__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--rule-hairline);background:var(--bg-subtle);flex-wrap:wrap}.panel__title-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel__hint{font-size:11.5px;color:var(--ink-muted);margin-left:10px}.panel__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.file-table{display:flex;flex-direction:column}.file-row{display:grid;grid-template-columns:minmax(140px,2fr) auto auto minmax(140px,1.5fr) auto;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--rule-hairline);font-size:12.5px}.file-row:last-child{border-bottom:0}.file-row__main{display:flex;align-items:center;gap:8px;min-width:0}.file-row__name{font-weight:600;color:var(--ink-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row__status{font-family:var(--font-mono);font-size:9.5px;padding:1px 5px;border-radius:var(--radius-xs);color:var(--accent-tech-green);background:var(--accent-tech-green-bg);flex-shrink:0}.file-row__meta{display:contents}.file-row__hash{font-family:var(--font-mono);font-size:11px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(144px,1fr));gap:12px;padding:14px}.page-card{display:flex;flex-direction:column;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);padding:8px;cursor:grab;user-select:none;position:relative}.page-card:focus-visible,.page-card.is-dragging{border-color:var(--accent-terracotta);background:var(--bg-elevated)}.page-card.is-drop-target{border-color:var(--accent-tech-green);border-style:dashed}.page-card__head{display:flex;justify-content:space-between;align-items:center;gap:4px;margin-bottom:6px;font-family:var(--font-mono);font-size:11px;color:var(--ink-secondary)}.page-card__drag-handle{display:inline-flex;align-items:center;gap:5px;padding:4px 6px;border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);background:var(--bg-surface);color:var(--ink-primary);font-family:var(--font-mono);font-size:11px;font-weight:600;cursor:grab;touch-action:none}.page-card__drag-handle:active{border-color:var(--accent-terracotta);color:var(--accent-terracotta);cursor:grabbing}.page-card__actions{display:flex;align-items:center;gap:4px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;background:var(--bg-elevated);border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);color:var(--ink-secondary);font-family:var(--font-mono);font-size:11px;padding:2px 6px;cursor:pointer}@media(hover:hover)and (pointer:fine){.icon-btn:hover{color:var(--ink-primary);border-color:var(--rule-strong)}}.icon-btn:active{color:var(--ink-primary);border-color:var(--accent-terracotta)}.page-card__thumb{width:100%;aspect-ratio:1 / 1.414;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--rule-hairline)}.page-card__thumb img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .15s ease;pointer-events:none}.page-card__placeholder{font-family:var(--font-mono);font-size:11px;color:#4e4d48;text-align:center;padding:8px}.page-card__foot{margin-top:6px;font-family:var(--font-mono);font-size:10px;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-sheet[hidden]{display:none!important}.action-sheet{position:fixed;inset:0;z-index:940;display:flex;align-items:flex-end;justify-content:center}.action-sheet__backdrop{position:absolute;inset:0;background:#0a0b0dbd}.action-sheet__panel{position:relative;z-index:1;width:100%;max-width:520px;background:var(--bg-surface);border-top:1px solid var(--rule-strong);border-left:1px solid var(--rule-strong);border-right:1px solid var(--rule-strong);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;padding-bottom:calc(16px + var(--safe-bottom))}.action-sheet__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--rule-hairline)}.action-sheet__title{margin:2px 0 0;font-size:15px;font-weight:650}.action-sheet__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px 18px 4px}.action-sheet__btn{min-height:var(--touch-target-min);display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);color:var(--ink-primary);font-family:var(--font-sans);font-size:13px;font-weight:500;text-align:left;cursor:pointer}.action-sheet__btn:active{background:var(--bg-elevated);border-color:var(--accent-terracotta)}.action-sheet__btn--danger{color:var(--accent-danger);border-color:#c93b3b59}.action-sheet__icon{font-family:var(--font-mono);font-size:15px;color:var(--accent-terracotta);flex-shrink:0}.action-sheet__btn--danger .action-sheet__icon{color:var(--accent-danger)}.inspector{background:var(--bg-surface);border-left:1px solid var(--rule-hairline);display:flex;flex-direction:column}.inspector__form{display:flex;flex-direction:column;flex:1;min-height:0}.fields-stack{padding:14px;display:flex;flex-direction:column;gap:14px;flex:1;overflow-y:auto}.field{display:flex;flex-direction:column;gap:5px}.field--row{flex-direction:row;align-items:center;justify-content:space-between;min-height:36px}.field--row input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent-terracotta);cursor:pointer}.field__label{font-size:12px;font-weight:600;color:var(--ink-primary);display:flex;justify-content:space-between}.field__unit{font-family:var(--font-mono);font-size:11px;color:var(--accent-terracotta)}.field__help{margin:0;font-size:11px;color:var(--ink-muted)}.input,.select,.textarea{width:100%;padding:8px 10px;background:var(--bg-canvas);border:1px solid var(--rule-strong);border-radius:var(--radius-xs);color:var(--ink-primary);font-family:var(--font-sans);font-size:13px}.textarea--mono,.input--mono{font-family:var(--font-mono);font-size:12px}.signature-pad-wrap{border:1px solid var(--rule-strong);background:var(--bg-canvas);display:flex;flex-direction:column}.signature-canvas{width:100%;height:110px;cursor:crosshair;touch-action:none}.signature-pad-bar{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-top:1px solid var(--rule-hairline);font-family:var(--font-mono);font-size:10.5px;color:var(--ink-muted)}.inspector__submit{padding:14px;border-top:1px solid var(--rule-hairline);background:var(--bg-subtle);display:flex;flex-direction:column;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border:1px solid var(--rule-strong);border-radius:var(--radius-xs);font-family:var(--font-sans);font-size:13px;font-weight:600;cursor:pointer;background:var(--bg-elevated);color:var(--ink-primary)}.btn--primary{background:var(--accent-terracotta);border-color:var(--accent-terracotta);color:#fff}@media(hover:hover)and (pointer:fine){.btn--primary:hover{background:var(--accent-terracotta-hover)}.btn--ghost:hover{background:var(--bg-elevated);border-color:var(--rule-strong)}}.btn--primary:active{background:var(--accent-terracotta-active)}.btn--ghost{background:transparent;border-color:var(--rule-hairline)}.btn--ghost:active{background:var(--bg-elevated);border-color:var(--accent-terracotta)}.btn--sm{padding:6px 10px;font-size:12px}.btn--block{width:100%;justify-content:space-between;padding:11px 14px}.btn__kbd{font-size:11px;opacity:.85}.btn-link{border:0;background:none;color:var(--accent-terracotta);font-family:var(--font-mono);font-size:11px;cursor:pointer;padding:4px}.progress-wrap{display:flex;flex-direction:column;gap:5px}.progress-track{height:4px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);overflow:hidden}.progress-fill{height:100%;background:var(--accent-terracotta);transition:width .15s linear}.progress-meta{display:flex;justify-content:space-between;align-items:center}.status-led{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-led--ok{background:var(--accent-tech-green)}.output-files{display:flex;flex-direction:column;border-bottom:1px solid var(--rule-hairline)}.output-preview{padding:14px}.output-preview iframe{width:100%;height:460px;border:1px solid var(--rule-hairline);background:#fff}.output-preview pre{margin:0;max-height:420px;overflow:auto;padding:12px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);font-size:12px}.audit-log{padding:12px 14px;font-family:var(--font-mono);font-size:11.5px;max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.audit-entry{padding:8px 10px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-left:3px solid var(--accent-tech-green);word-break:break-word}.toast-region{position:fixed;bottom:18px;right:18px;z-index:960;max-width:440px}.toast{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-elevated);border:1px solid var(--accent-danger);border-left:4px solid var(--accent-danger);color:var(--ink-primary)}.toast__code{font-family:var(--font-mono);font-size:11px;color:var(--accent-danger);font-weight:700}.toast__msg{font-size:12.5px;flex:1}.toast__close{border:0;background:transparent;color:var(--ink-secondary);font-size:18px;min-width:36px;min-height:36px;cursor:pointer}.rail__legal{margin-top:8px;padding-top:10px;border-top:1px solid var(--rule-hairline);display:flex;flex-direction:column;gap:5px}.rail__legal-label{font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted)}.rail__legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.rail__legal-link{border:0;background:none;padding:4px 2px;font-family:var(--font-sans);font-size:11px;color:var(--ink-secondary);cursor:pointer;text-decoration:none}.rail__legal-link:hover,.rail__legal-link:active{color:var(--accent-terracotta);text-decoration:underline;text-underline-offset:3px}.rail__legal-sep{color:var(--ink-muted);font-size:10px;user-select:none}.mobile-legal-bar{margin-top:8px;padding:12px 4px;border-top:1px solid var(--rule-hairline);flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px}.legal-modal[hidden]{display:none!important}.legal-modal{position:fixed;inset:0;z-index:950;display:flex;align-items:center;justify-content:center;padding:24px}.legal-modal__backdrop{position:absolute;inset:0;background:#0a0b0dc7}.legal-modal__dialog{position:relative;z-index:1;width:100%;max-width:920px;height:min(86vh,840px);display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--rule-strong);border-radius:var(--radius-sm)}.legal-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:var(--bg-subtle);border-bottom:1px solid var(--rule-hairline)}.legal-modal__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.legal-modal__title{margin:0;font-size:16px;font-weight:650;letter-spacing:-.01em;color:var(--ink-primary)}.legal-modal__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.legal-modal__tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--bg-canvas);border-bottom:1px solid var(--rule-hairline)}.legal-tab{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:var(--touch-target-min);gap:2px;padding:10px 16px;border:0;border-right:1px solid var(--rule-hairline);border-bottom:2px solid transparent;background:transparent;color:var(--ink-secondary);text-align:left;cursor:pointer}.legal-tab:last-child{border-right:0}.legal-tab:active{background:var(--bg-elevated)}.legal-tab[aria-selected=true]{background:var(--bg-surface);color:var(--ink-primary);border-bottom-color:var(--accent-terracotta)}.legal-tab__code{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--ink-muted)}.legal-tab[aria-selected=true] .legal-tab__code{color:var(--accent-terracotta)}.legal-tab__label{font-family:var(--font-sans);font-size:12.5px;font-weight:600}.legal-modal__body{flex:1;overflow-y:auto;padding:24px 32px;background:var(--bg-surface);-webkit-overflow-scrolling:touch}.legal-prose{color:var(--ink-primary);font-size:13.5px;line-height:1.65}.legal-prose h1{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid var(--rule-strong);font-size:20px;font-weight:700;letter-spacing:-.015em}.legal-prose h2{margin:26px 0 10px;padding-top:14px;border-top:1px solid var(--rule-hairline);font-size:15px;font-weight:650;letter-spacing:-.01em;color:var(--ink-primary)}.legal-prose h3{margin:18px 0 8px;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--accent-terracotta)}.legal-prose p{margin:0 0 12px;color:var(--ink-secondary)}.legal-prose strong{color:var(--ink-primary);font-weight:600}.legal-prose ul,.legal-prose ol{margin:0 0 14px;padding-left:20px;color:var(--ink-secondary)}.legal-prose li{margin-bottom:6px}.legal-prose hr{border:0;border-top:1px solid var(--rule-hairline);margin:20px 0}.legal-prose blockquote{margin:14px 0;padding:10px 14px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-left:3px solid var(--accent-terracotta);color:var(--ink-secondary)}.legal-prose blockquote p:last-child{margin-bottom:0}.legal-prose code{padding:1px 5px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);font-size:11.5px;color:var(--ink-primary);word-break:break-word}.legal-prose a{color:var(--accent-terracotta);text-decoration:underline;text-underline-offset:3px}.legal-table-wrap{margin:14px 0;overflow-x:auto;border:1px solid var(--rule-hairline)}.legal-prose table{width:100%;border-collapse:collapse;font-size:12px}.legal-prose th,.legal-prose td{padding:8px 10px;border-bottom:1px solid var(--rule-hairline);border-right:1px solid var(--rule-hairline);text-align:left;vertical-align:top}.legal-prose th:last-child,.legal-prose td:last-child{border-right:0}.legal-prose th{background:var(--bg-subtle);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-primary)}.legal-prose td{color:var(--ink-secondary)}@media(max-width:960px){.workbench{grid-template-columns:1fr;padding-bottom:calc(var(--mobile-dock-height) + 16px)}.stage{padding:14px 16px;gap:14px}.btn,.segmented__btn,.skill-tab,.icon-btn{min-height:var(--touch-target-min)}.icon-btn{min-width:var(--touch-target-min);padding:4px 10px;font-size:12px}.input,.select,.textarea{font-size:16px!important;min-height:var(--touch-target-min);padding:10px 12px}.rail,.inspector{position:fixed;left:0;right:0;bottom:0;z-index:900;max-height:82dvh;border:0;border-top:1px solid var(--rule-strong);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;padding-bottom:calc(var(--mobile-dock-height) + 6px);transform:translateY(105%);transition:transform .22s cubic-bezier(.22,1,.36,1);pointer-events:none;visibility:hidden}.rail.is-sheet-open,.inspector.is-sheet-open{transform:translateY(0);pointer-events:auto;visibility:visible}.rail .sheet-grabber,.inspector .sheet-grabber{display:flex}.dropzone{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.dropzone__actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.file-row{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px 14px}.file-row__main{display:flex;align-items:center;justify-content:space-between;gap:8px}.file-row__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px}.mobile-dock{position:fixed;left:0;right:0;bottom:0;z-index:910;display:grid!important;grid-template-columns:1.1fr 1fr 1fr 1.25fr;gap:6px;padding:8px calc(10px + var(--safe-right)) calc(8px + var(--safe-bottom)) calc(10px + var(--safe-left));background:var(--bg-surface);border-top:1px solid var(--rule-strong)}.mobile-dock__btn{min-height:46px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:4px 8px;background:var(--bg-canvas);border:1px solid var(--rule-hairline);border-radius:var(--radius-xs);color:var(--ink-primary);text-align:left;cursor:pointer;min-width:0}.mobile-dock__btn:active,.mobile-dock__btn[aria-expanded=true]{background:var(--bg-elevated);border-color:var(--accent-terracotta)}.mobile-dock__k{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:var(--ink-muted);text-transform:uppercase}.mobile-dock__v{font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--ink-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mobile-dock__cta{min-height:46px;display:flex;align-items:center;justify-content:center;padding:6px 10px;background:var(--accent-terracotta);border:1px solid var(--accent-terracotta);border-radius:var(--radius-xs);color:#fff;font-family:var(--font-sans);font-size:13px;font-weight:700;letter-spacing:.01em;cursor:pointer}.mobile-dock__cta:active{background:var(--accent-terracotta-active)}.mobile-dock__cta.is-ready-download{background:var(--accent-tech-green);border-color:var(--accent-tech-green)}.toast-region{left:12px;right:12px;bottom:calc(var(--mobile-dock-height) + 12px);max-width:none}}@media(max-width:640px){.tool-title{font-size:19px}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px}.page-card__drag-handle{min-height:var(--touch-target-min);padding:6px 8px}.action-sheet__grid{grid-template-columns:1fr}.legal-modal{align-items:flex-end;padding:0}.legal-modal__dialog{height:88dvh;max-width:100%;border-left:0;border-right:0;border-bottom:0;border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;padding-bottom:var(--safe-bottom)}.legal-modal__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.legal-modal__body{padding:16px 18px}.output-preview iframe{height:320px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
