@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";.settings-surface{--settings-border: var(--line);--settings-card: var(--surface);--settings-soft: var(--surface-soft);width:100%;padding-top:24px;padding-bottom:max(28px,var(--safe-bottom));color:var(--ink)}.settings-page-header,.settings-content{width:min(100%,720px);margin:0 auto}.settings-page-header{position:relative;margin-bottom:20px}.settings-page-header h1,.settings-hero h1{margin:0;font-size:clamp(24px,7vw,34px)}.settings-kicker{margin:0 0 6px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.settings-hero{margin-bottom:18px}.settings-hero p:last-child,.settings-about-card span,.settings-about-card small{color:var(--muted);font-size:12px;line-height:1.5}.settings-hero p:last-child{margin:8px 0 0}.settings-section{margin:0 0 18px;overflow:hidden;border:1px solid var(--settings-border);border-radius:16px;background:var(--settings-card);box-shadow:var(--shadow-soft)}.settings-section-title{padding:15px 16px 7px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.settings-category,.settings-row{display:flex;width:100%;min-height:68px;align-items:center;gap:12px;padding:12px 15px;border:0;border-top:1px solid var(--settings-border);color:inherit;background:transparent;text-align:left}.settings-category:first-child,.settings-section>.settings-row:first-of-type{border-top:0}.settings-category{cursor:pointer}.settings-category:active,.settings-row:has(button:active){background:var(--surface-soft)}.settings-category-icon{display:grid;flex:0 0 auto;width:30px;height:30px;place-items:center;border-radius:10px;color:var(--accent-strong, #39836d);background:var(--mint-soft);font-weight:800}.settings-category-copy,.settings-row-copy{display:grid;flex:1;min-width:0;gap:3px}.settings-category-copy strong,.settings-row-copy strong{font-size:14px;font-weight:700}.settings-category-copy span,.settings-row-copy span{overflow:hidden;color:var(--muted);font-size:11px;line-height:1.35;text-overflow:ellipsis}.settings-category-value{max-width:130px;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.settings-chevron{color:var(--faint);font-size:24px;line-height:1}.settings-switch{position:relative;flex:0 0 auto;width:48px;height:30px;padding:3px;border:0;border-radius:99px;background:var(--line);cursor:pointer;transition:background .16s ease}.settings-switch span{display:block;width:24px;height:24px;border-radius:50%;background:var(--surface);box-shadow:0 2px 6px #0000002e;transition:transform .16s ease}.settings-switch.checked{background:#49ad88}.settings-switch.checked span{transform:translate(18px)}.settings-select-row select,.settings-input-row input{min-width:82px;min-height:40px;padding:0 9px;border:1px solid var(--settings-border);border-radius:10px;color:var(--ink);background:var(--settings-soft);font:inherit;font-size:12px}.settings-subsection{margin-top:18px;padding:0 14px 14px;border:1px solid var(--settings-border);border-radius:14px;background:var(--settings-card)}.quickbar-preview-row{display:grid;gap:8px;padding:12px 0;border-top:1px solid var(--settings-border)}.quickbar-row-label{color:var(--muted);font-size:11px;font-weight:700}.quickbar-keys{display:flex;flex-wrap:wrap;gap:6px}.quickbar-key{display:inline-flex;min-height:36px;align-items:center;gap:2px;padding-left:9px;border:1px solid var(--settings-border);border-radius:9px;color:var(--ink);background:var(--settings-soft);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.quickbar-key button{width:23px;height:30px;padding:0;border:0;color:var(--muted);background:transparent;cursor:pointer;font-size:18px}.quickbar-key button:disabled{opacity:.25}.settings-secondary-button,.settings-danger-button{min-height:44px;padding:0 14px;border:1px solid var(--settings-border);border-radius:11px;color:var(--ink);background:var(--settings-soft);cursor:pointer;font-size:12px;font-weight:700}.settings-danger-button{margin-top:12px;color:#be123c;border-color:#be123c3d;background:#be123c12}.settings-about-card{display:grid;gap:5px;margin-bottom:14px;padding:18px;border:1px solid var(--settings-border);border-radius:15px;background:var(--settings-card)}.settings-about-card strong{font-size:18px}.settings-feedback{margin:10px 0 0;color:#39836d;font-size:12px}.settings-back-button{display:inline-flex;align-items:center;gap:5px;min-height:36px;margin-bottom:12px;padding:0 7px 0 0;border:0;color:var(--accent-strong, #39836d);background:transparent;cursor:pointer;font-size:12px;font-weight:700}.settings-back-button span{font-size:25px;font-weight:400;line-height:1}html[data-animations=false] *,html[data-animations=false] *:before,html[data-animations=false] *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}@media(max-width:700px){.settings-surface{padding-top:16px}.settings-page-header,.settings-content{width:100%}.settings-category,.settings-row{min-height:64px;padding-right:12px;padding-left:12px}.settings-category-value{display:none}}.settings-category-list .settings-category{min-height:58px}.settings-category-list .settings-category-copy{display:block}.settings-category-icon svg{display:block}.diagnostic-card{margin-top:14px;padding:14px;border:1px solid var(--settings-border);border-radius:15px;background:var(--settings-card)}.diagnostic-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.diagnostic-heading>div{display:grid;gap:3px}.diagnostic-heading strong{font-size:14px}.diagnostic-heading span,.diagnostic-note,.diagnostic-metric small{color:var(--muted);font-size:10px;line-height:1.4}.diagnostic-live{flex:0 0 auto;padding:3px 7px;border-radius:99px;color:#267356;background:#e1f6eb;font-size:10px;font-weight:700}.diagnostic-live.error{color:#a53b4f;background:#ffe4e8}.diagnostic-error{margin:0 0 10px;color:#a53b4f;font-size:11px}.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.diagnostic-metric{display:grid;min-width:0;gap:3px;min-height:66px;padding:8px 9px;border-radius:10px;background:var(--settings-soft)}.diagnostic-metric>span{color:var(--muted);font-size:10px}.diagnostic-metric strong{overflow:hidden;color:var(--ink);font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.diagnostic-route-summary{display:flex;flex-wrap:wrap;gap:5px;margin:-4px 0 10px}.diagnostic-route-summary span,.deep-report-chip{padding:3px 7px;border:1px solid var(--settings-border);border-radius:999px;color:var(--muted);background:var(--settings-soft);font:600 9px/1.3 JetBrains Mono,ui-monospace,monospace}.diagnostic-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:8px;overflow:hidden;border:1px solid var(--settings-border);border-radius:10px;background:var(--settings-border)}.diagnostic-details>span,.deep-result-grid>span{display:grid;min-width:0;gap:2px;padding:7px;background:var(--settings-soft)}.diagnostic-details small,.deep-result-grid small{color:var(--muted);font-size:9px}.diagnostic-details strong,.deep-result-grid strong{overflow:hidden;color:var(--ink);font:600 10px/1.25 JetBrains Mono,ui-monospace,monospace;text-overflow:ellipsis;white-space:nowrap}.diagnostic-note{margin:10px 2px 0}.deep-diagnostic-card{margin-top:10px}.deep-diagnostic-intro p,.deep-diagnostic-confirm span,.deep-diagnostic-running small,.deep-observations{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.deep-start-button{width:100%;margin-top:10px}.deep-diagnostic-confirm,.deep-diagnostic-running,.deep-diagnostic-result{display:grid;gap:10px;padding:11px;border:1px solid var(--settings-border);border-radius:11px;background:var(--settings-soft)}.deep-diagnostic-confirm>div,.deep-result-actions{display:flex;justify-content:flex-end;gap:7px}.deep-diagnostic-confirm>div>button:not(.run-button){min-height:40px;padding:0 12px;border:1px solid var(--settings-border);border-radius:9px;color:var(--muted);background:var(--settings-card)}.deep-progress-copy,.deep-result-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.deep-progress-copy strong,.deep-result-title strong{font-size:12px}.deep-progress-copy span,.deep-result-title span{color:var(--muted);font:600 10px/1.2 JetBrains Mono,ui-monospace,monospace}.deep-diagnostic-running progress{width:100%;height:7px;accent-color:var(--accent-strong, #39836d)}.deep-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--settings-border);border-radius:9px;background:var(--settings-border)}.deep-report-id{font-size:8px!important}.deep-observations{display:grid;gap:4px}.deep-observations span:before{content:"• "}.deep-result-actions .settings-secondary-button{flex:1 1 0;min-height:40px}html[data-theme=dark] .diagnostic-live{color:#9df0c9;background:#174333}html[data-theme=dark] .diagnostic-live.error{color:#ffb1b1;background:#4a252c}@media(max-width:420px){.diagnostic-details{grid-template-columns:repeat(2,minmax(0,1fr))}}.settings-logout-button{min-height:38px;margin-top:12px;padding:0 12px;border:1px solid rgb(190 18 60 / 22%);border-radius:10px;color:#be123c;background:transparent;cursor:pointer;font:inherit;font-size:11px;font-weight:700}.settings-logout-button:active{background:#be123c12}:root{color:#193142;background:#f4f7fb;font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--visual-viewport-height: 100dvh;--app-height: var(--visual-viewport-height, 100dvh);--ink: #193142;--muted: #748796;--faint: #a5b2bd;--line: #dce5ea;--surface: #ffffff;--surface-soft: #f8fafc;--canvas: #f4f7fb;--navy: #102c3b;--mint: #8ee6c1;--mint-soft: #e3f7ee;--amber: #f4b860;--blue: #6e9df6;--shadow-soft: 0 14px 40px rgb(31 60 79 / 7%);--editor-chrome-bg: #f8fafc;--editor-tab-bg: #ffffff;--editor-tab-active-bg: #eef6f5;--editor-tab-text: #687b88;--editor-tab-active-text: #193142;--editor-chrome-line: #dce5ea;--editor-chrome-accent: #35b8b4;--quickbar-bg: #f3f6f8;--quickbar-key-bg: #ffffff;--quickbar-key-muted-bg: #eef2f5;--quickbar-key-text: #34495a;--quickbar-key-muted-text: #748796;--quickbar-key-border: #d5dfe5}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-width:320px;min-height:100%;margin:0}body{height:100%;overflow:hidden;background:var(--canvas);-webkit-font-smoothing:antialiased}button{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid rgb(63 157 128 / 30%);outline-offset:2px}.app-shell{position:relative;display:flex;flex-direction:column;width:100%;height:var(--app-height);min-height:0;overflow:hidden;background:radial-gradient(circle at 89% 4%,rgb(142 230 193 / 15%),transparent 28rem),var(--canvas)}.top-bar{z-index:10;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;min-height:70px;padding:max(12px,var(--safe-top)) max(20px,var(--safe-right)) 10px max(20px,var(--safe-left));border-bottom:1px solid rgb(214 226 232 / 80%);background:#f4f7fbd6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand-lockup,.top-actions,.project-context,.connection-status,.run-button,.file-tab,.editor-meta,.editor-statusbar,.terminal-prompt-label,.terminal-toolbar-actions,.secondary-action,.preview-footnote,.drawer-footer,.project-summary,.nav-item,.quick-key,.selected-check{display:flex;align-items:center}.brand-lockup{gap:9px;min-width:max-content}.brand-mark{display:grid;gap:2px;width:31px;height:31px;padding:7px 6px;overflow:hidden;border-radius:10px;background:var(--navy);transform:rotate(-8deg)}.brand-mark span{display:block;height:3px;border-radius:4px;background:var(--mint)}.brand-mark span:nth-child(2){width:75%;background:#fff}.brand-mark span:nth-child(3){width:48%;background:var(--amber)}.brand-copy{display:grid;gap:2px}.brand-copy strong{color:var(--ink);font-size:14px;font-weight:700;letter-spacing:-.02em}.brand-copy span,.eyebrow,.tree-label{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.project-context{min-width:0;gap:7px;padding-left:6px;overflow:hidden;color:var(--muted);font-size:12px;white-space:nowrap}.project-name{overflow:hidden;color:var(--ink);font-weight:600;text-overflow:ellipsis}.context-slash{color:#b0bdc5}.current-file{overflow:hidden;text-overflow:ellipsis}.top-actions{gap:12px}.connection-status{gap:6px;color:var(--muted);font-size:11px;font-weight:600}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4db890;box-shadow:0 0 0 3px #4db89024}.run-button,.secondary-action,.preview-run-button{border:0;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.run-button{gap:7px;min-height:44px;padding:0 15px;border-radius:13px;color:#15362f;background:var(--mint);box-shadow:0 5px 14px #4aaa842e;font-size:12px;font-weight:700}.run-button:hover,.secondary-action:hover,.preview-run-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #4aaa8438}.workspace-body{position:relative;display:flex;flex:1;min-height:0;overflow:hidden}.surface-region{display:flex;flex:1;min-width:0;min-height:0;overflow:hidden}.surface{position:relative;display:flex;flex:1;flex-direction:column;min-width:0;min-height:0;padding:28px max(20px,var(--safe-right)) 32px max(20px,var(--safe-left));overflow:auto;overscroll-behavior:contain;scroll-padding-bottom:max(24px,var(--safe-bottom));scrollbar-width:thin;scrollbar-color:#cbd9df transparent}.surface-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;width:min(100%,1080px);margin:0 auto 20px}.eyebrow{margin:0 0 9px}h1,h2,p{margin-top:0}h1{max-width:500px;margin-bottom:0;color:var(--ink);font-size:clamp(22px,3vw,31px);font-weight:600;letter-spacing:-.045em;line-height:1.1}h2{margin-bottom:0;color:var(--ink);font-size:22px;font-weight:600;letter-spacing:-.04em}.icon-button{display:inline-grid;flex:0 0 auto;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:13px;color:var(--muted);background:#ffffffc2;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease}.icon-button:hover{border-color:#b7cbd2;color:var(--ink);background:#fff}.editor-card,.placeholder-card,.editor-helper-card,.placeholder-callout{width:min(100%,1080px);margin-right:auto;margin-left:auto;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft)}.editor-card{position:relative;overflow:hidden;border-radius:19px}.editor-tab-bar{display:flex;align-items:center;justify-content:space-between;min-height:55px;padding:6px 9px 6px 17px;border-bottom:1px solid #edf1f3}.file-tab{gap:8px;min-height:40px;padding:0 8px;border:0;border-radius:9px;color:var(--ink);background:transparent;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;cursor:pointer}.file-tab svg{color:#578ce5}.unsaved-dot{width:6px;height:6px;margin-left:3px;border-radius:50%;background:var(--amber)}.compact-button{width:44px;height:44px;border:0;background:transparent}.editor-meta{justify-content:space-between;padding:10px 19px;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px}.editor-meta>span:first-child{display:flex;align-items:center;gap:6px}.language-dot{width:7px;height:7px;border-radius:50%;background:#5d8ee9}.code-window{position:relative;display:flex;min-height:255px;padding:15px 0 18px;overflow:auto;background:#fbfcfd;color:#526a79;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:2;scrollbar-width:thin}.code-gutter{display:flex;flex:0 0 48px;flex-direction:column;align-items:flex-end;padding-right:15px;color:#b5c2ca;-webkit-user-select:none;user-select:none}.code-content{min-width:max-content;margin:0;padding:0 24px 0 0}.code-line{display:block;min-height:24px;white-space:pre}.token-keyword{color:#be6d96}.token-name{color:#3c73bf}.token-string{color:#45967b}.token-type{color:#b27839}.token-operator,.token-punctuation{color:#7d8e9a}.fake-caret{position:absolute;top:19px;left:66px;width:2px;height:20px;border-radius:2px;background:#4c8d7c;animation:caret-blink 1.2s steps(2,start) infinite}.editor-statusbar{justify-content:flex-end;gap:14px;min-height:33px;padding:0 18px;border-top:1px solid #edf1f3;color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px}.editor-statusbar span:first-child{display:flex;align-items:center;gap:4px;margin-right:auto;color:#5e7f92}.stage5-lsp-state.ready{color:#39836d}.stage5-lsp-state.connecting,.stage5-lsp-state.reconnecting{color:#9a6b2e}.stage5-lsp-state.error{color:#a84b4b}.editor-helper-card{display:flex;align-items:center;gap:12px;margin-top:16px;padding:14px 16px;border-radius:15px;box-shadow:none}.helper-icon,.callout-icon{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:11px;color:#39836d;background:var(--mint-soft)}.editor-helper-card strong,.placeholder-callout strong{display:block;color:var(--ink);font-size:12px;font-weight:700}.editor-helper-card p,.placeholder-callout p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.editor-helper-card>svg{margin-left:auto;color:#9eafb8}.quick-key-bar{display:flex;gap:6px;width:min(100%,1080px);margin:14px auto 0;padding:0 1px;overflow-x:auto;scrollbar-width:none}.quick-key-bar::-webkit-scrollbar{display:none}.quick-key{display:inline-flex;flex:0 0 auto;min-width:42px;min-height:44px;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--line);border-radius:9px;color:#587383;background:#ffffffbf;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;white-space:nowrap;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.quick-key.muted{color:#96a5ae;background:transparent}.quick-key.stage5-definition-key{min-width:74px;color:#315a50;background:#dff7eb}.placeholder-surface{align-items:center}.placeholder-surface .surface-heading-row{width:min(100%,850px)}.placeholder-card{border-radius:19px;box-shadow:var(--shadow-soft)}.terminal-card{overflow:hidden;background:#132e3b}.terminal-toolbar,.preview-browser-bar{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 16px;border-bottom:1px solid rgb(255 255 255 / 10%)}.terminal-prompt-label,.terminal-toolbar-actions{gap:7px;color:#bbd0d3;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px}.terminal-toolbar-actions{color:#75929b}.terminal-body{min-height:260px;padding:22px 20px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;line-height:1.8}.terminal-line{margin-bottom:7px;color:#e0ece8}.terminal-symbol{margin-right:9px;color:var(--mint)}.muted-line{color:#75929b}.blink-cursor{display:inline-block;width:7px;height:14px;vertical-align:-2px;background:var(--mint);animation:caret-blink 1.2s steps(2,start) infinite}.placeholder-callout{display:flex;align-items:center;gap:12px;margin-top:16px;padding:15px 16px;border-radius:15px;box-shadow:none}.secondary-action{gap:8px;align-self:flex-start;min-height:44px;margin-top:16px;padding:0 14px;border-radius:12px;color:#315a50;background:#dff7eb;font-size:11px;font-weight:700}.preview-frame{overflow:hidden}.preview-browser-bar{color:#8a9aa5;background:#f8fafb}.browser-dots{display:flex;gap:4px}.browser-dots i{display:block;width:6px;height:6px;border-radius:50%;background:#cad5da}.browser-dots i:first-child{background:#f2bc7b}.browser-dots i:nth-child(2){background:#a1d8bd}.preview-url{width:54%;min-height:25px;padding:5px 10px;border:1px solid #e4ebee;border-radius:7px;background:#fff;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;text-align:center}.preview-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;padding:32px 20px;background:linear-gradient(145deg,#fff,#f7fafb);text-align:center}.preview-orbit{position:relative;width:70px;height:70px;margin-bottom:18px;border:1px dashed #b7d6cd;border-radius:50%}.preview-orbit:before,.preview-orbit:after{position:absolute;top:14px;right:14px;bottom:14px;left:14px;border:1px solid #d8ebe5;border-radius:50%;content:""}.preview-orbit:after{top:27px;right:27px;bottom:27px;left:27px;border-color:#e9d7ba}.preview-orbit span{position:absolute;z-index:1;width:8px;height:8px;border-radius:50%;background:var(--mint)}.preview-orbit span:first-child{top:6px;left:30px}.preview-orbit span:nth-child(2){right:4px;bottom:16px;background:var(--amber)}.preview-orbit span:nth-child(3){bottom:8px;left:12px;background:#a8c4f8}.preview-empty-state strong{color:var(--ink);font-size:14px}.preview-empty-state p{max-width:270px;margin:7px 0 17px;color:var(--muted);font-size:11px;line-height:1.5}.preview-run-button{display:flex;align-items:center;gap:7px;min-height:44px;padding:0 13px;border-radius:10px;color:#15362f;background:var(--mint);font-size:11px;font-weight:700}.preview-footnote{gap:8px;align-self:flex-start;margin-top:13px;color:var(--muted);font-size:10px}.quiet-dot{width:6px;height:6px;background:#a9bbc3;box-shadow:none}.git-surface{overflow-x:hidden}.git-heading-row{align-items:flex-start}.git-project-name{margin:7px 0 0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.git-summary,.git-content,.git-error,.git-empty-state{width:min(100%,1080px);margin-right:auto;margin-left:auto}.git-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-soft)}.git-summary-item{display:grid;gap:4px;min-width:96px}.git-summary-item strong{color:var(--ink);font-size:16px;font-weight:700}.git-summary-label{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.1em;line-height:1.2;text-transform:uppercase}.git-repository-state{margin-left:auto;padding:6px 9px;border-radius:999px;color:#39836d;background:var(--mint-soft);font-size:10px;font-weight:700}.git-error{display:flex;align-items:center;gap:9px;margin-bottom:14px;padding:11px 12px;border:1px solid #f0caca;border-radius:13px;color:#8f4444;background:#fff6f6;font-size:11px}.git-error span{min-width:0;flex:1}.git-error button{min-height:32px;padding:0 8px;border:0;border-radius:8px;color:inherit;background:transparent;cursor:pointer;font-size:11px;font-weight:700}.git-error button:hover{background:#8f444414}.git-content{display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,1.25fr);gap:16px}.git-file-section,.git-diff-section,.git-commit-form{min-width:0;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-soft)}.git-commit-form{grid-column:1 / -1}.git-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:24px;margin-bottom:10px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.git-file-list{display:grid;gap:6px}.git-file-button{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:48px;padding:6px 8px;border:1px solid transparent;border-radius:10px;color:var(--ink);background:var(--surface-soft);cursor:pointer;text-align:left}.git-file-button:hover,.git-file-button.selected{border-color:#b8e8d5;background:#f0fbf6}.git-status-code{width:28px;color:#39836d;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;font-weight:700;text-align:center;white-space:pre}.git-file-path{min-width:0;overflow:hidden;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.git-staged-indicator{color:var(--muted);font-size:9px;white-space:nowrap}.git-all-changes{min-height:32px;padding:0 9px;border:1px solid var(--line);border-radius:8px;color:#39836d;background:#f4fbf8;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:0;text-transform:none}.git-all-changes.selected{border-color:#a4dec8;background:var(--mint-soft)}.git-diff-panel{min-height:252px;overflow:hidden;border:1px solid #e5ecef;border-radius:11px;background:#132e3b}.git-diff-scroll{max-width:100%;min-height:252px;margin:0;padding:14px;overflow:auto;color:#d7ebe5;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;line-height:1.65;white-space:pre;scrollbar-color:#587b80 transparent}.git-diff-placeholder,.git-diff-note{margin:0;padding:18px;color:#a7c1c1;font-size:11px;line-height:1.5}.git-diff-note{padding:0 14px 12px;color:#8db3aa;font-size:10px}.git-commit-form>label{display:block;margin-bottom:8px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.git-commit-controls{display:flex;gap:9px}.git-commit-controls input{min-width:0;flex:1;min-height:46px;padding:0 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--surface-soft);font:inherit;font-size:12px;outline:none}.git-commit-controls input:focus{border-color:#8ccfb5;box-shadow:0 0 0 3px #3f9d8021}.git-commit-controls input:disabled{cursor:not-allowed;opacity:.6}.git-commit-button{min-height:46px;padding:0 14px;border:0;border-radius:10px;color:#15362f;background:var(--mint);box-shadow:0 5px 14px #4aaa842e;cursor:pointer;font-size:11px;font-weight:700;white-space:nowrap}.git-commit-button:disabled{color:#90a39f;background:#dcebe5;box-shadow:none;cursor:not-allowed}.git-success{margin:9px 0 0;color:#39836d;font-size:11px;font-weight:700}.git-refreshing{display:inline-block;animation:git-refresh-spin .8s linear infinite}@keyframes git-refresh-spin{to{transform:rotate(360deg)}}.bottom-nav{z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));flex:0 0 auto;gap:2px;min-height:67px;padding:7px max(12px,var(--safe-right)) max(7px,var(--safe-bottom)) max(12px,var(--safe-left));border-top:1px solid rgb(214 226 232 / 86%);background:#ffffffe8;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.nav-item{position:relative;flex-direction:column;justify-content:center;gap:3px;min-width:0;min-height:53px;padding:4px 3px;border:0;border-radius:13px;color:#8da0aa;background:transparent;cursor:pointer;font-size:10px;font-weight:600;transition:color .16s ease,background .16s ease}.nav-item.active{color:#2b806b;background:#eef9f4}.nav-item.active:after{position:absolute;bottom:3px;width:4px;height:4px;border-radius:50%;background:#48b48b;content:""}.nav-home-indicator{display:none}.drawer-backdrop{position:absolute;z-index:19;top:0;right:0;bottom:0;left:0;width:100%;border:0;background:#0c222d00;pointer-events:none;transition:background .2s ease}.drawer-backdrop.visible{background:#0c222d3d;pointer-events:auto}.file-drawer{position:absolute;z-index:20;right:0;bottom:0;left:0;display:flex;flex-direction:column;max-height:min(76%,570px);overflow:hidden;border:1px solid var(--line);border-bottom:0;border-radius:23px 23px 0 0;background:#fffffffa;box-shadow:0 -18px 50px #19314229;opacity:0;pointer-events:none;transform:translateY(105%);transition:opacity .22s ease,transform .26s cubic-bezier(.2,.8,.2,1)}.file-drawer.open{opacity:1;pointer-events:auto;transform:translateY(0)}.drawer-handle{flex:0 0 auto;width:36px;height:4px;margin:8px auto 0;border-radius:4px;background:#d4dfe3}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:15px 19px 11px}.drawer-header .eyebrow{margin-bottom:6px}.drawer-header h2{font-size:20px}.project-summary{gap:10px;margin:0 17px 13px;padding:11px 12px;border:1px solid #e7eef1;border-radius:13px;background:#fbfcfd}.project-avatar{display:grid;flex:0 0 auto;width:31px;height:31px;place-items:center;border-radius:10px;color:#315349;background:var(--mint-soft);font-size:10px;font-weight:700}.project-summary>div:nth-child(2){display:grid;gap:2px;min-width:0}.project-summary strong{overflow:hidden;color:var(--ink);font-size:11px;text-overflow:ellipsis}.project-summary span{color:var(--muted);font-size:10px}.project-summary>svg{margin-left:auto;color:#aab9c0}.file-tree{flex:1;min-height:0;padding:0 10px;overflow:auto}.tree-label{margin:7px 9px 6px;font-size:9px}.file-row{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding-top:4px;padding-right:11px;padding-bottom:4px;border:0;border-radius:10px;color:#5e7481;background:transparent;cursor:pointer;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;text-align:left;transition:color .16s ease,background .16s ease}.file-row:hover,.file-row.selected{color:#2f7060;background:#eef9f4}.file-row.folder-row{color:var(--ink);font-weight:600}.file-row.folder-row>svg:first-child{color:#9aaeb7;transform:rotate(90deg)}.file-row>svg:nth-of-type(2){color:#7ba38f}.file-row:not(.folder-row)>svg{color:#77a0df}.tree-spacer{display:block;width:14px;flex:0 0 14px}.selected-check{justify-content:center;width:19px;height:19px;margin-left:auto;border-radius:50%;color:#388269;background:#d5f1e4}.drawer-footer{flex:0 0 auto;gap:6px;min-height:45px;padding:0 19px max(0px,var(--safe-bottom));border-top:1px solid #edf1f3;color:#77918b;font-size:10px}.drawer-footer svg{color:#4aaf89}@keyframes caret-blink{50%{opacity:0}}@media(min-width:700px){.top-bar{min-height:78px;padding-right:max(28px,var(--safe-right));padding-left:max(28px,var(--safe-left))}.brand-copy strong{font-size:15px}.surface{padding-top:42px;padding-right:max(36px,var(--safe-right));padding-left:max(36px,var(--safe-left))}.bottom-nav{grid-template-columns:repeat(5,minmax(80px,112px));justify-content:center;gap:12px;min-height:72px;padding-top:9px}.nav-item{min-height:52px}.file-drawer{top:0;right:auto;bottom:0;left:0;width:min(360px,44vw);max-height:none;border-top:0;border-bottom:0;border-left:0;border-radius:0 23px 23px 0;transform:translate(-105%)}.file-drawer.open{transform:translate(0)}.drawer-handle{display:none}.drawer-header{padding-top:27px}}@media(min-width:1100px){.top-bar{grid-template-columns:250px minmax(0,1fr) auto}.project-context{justify-self:center;width:min(100%,520px)}.surface{padding-top:54px}.nav-item{flex-direction:row;gap:8px;min-width:112px}.nav-item.active:after{right:11px;bottom:auto;width:4px;height:4px}.editor-helper-card{max-width:1080px}}@media(max-width:560px){.top-bar{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;min-height:64px;padding-top:8px;padding-bottom:8px}.brand-copy span,.connection-status{display:none}.brand-mark{width:29px;height:29px}.brand-copy strong{font-size:13px}.project-context{padding-left:0;font-size:10px}.top-bar .run-button{width:44px;min-height:44px;padding:0;place-content:center}.top-bar .run-button span{display:none}.surface{padding-top:22px;padding-bottom:22px}.surface-heading-row{margin-bottom:16px}h1{font-size:23px}.editor-statusbar{gap:9px;padding-right:12px;padding-left:12px;font-size:8px}.editor-statusbar span:first-child,.editor-statusbar span:nth-child(4){display:none}.code-window{min-height:235px;font-size:11px}.code-gutter{flex-basis:42px;padding-right:12px}.code-content{padding-right:17px}.fake-caret{left:59px}.editor-helper-card,.placeholder-callout{padding:13px}.editor-helper-card>svg{display:none}.preview-empty-state{min-height:275px}.git-content{grid-template-columns:1fr}.git-commit-form{grid-column:auto}.git-summary{gap:12px 16px}.git-repository-state{margin-left:0}.git-commit-controls{display:grid}.git-commit-button{width:100%}}@media(orientation:landscape)and (max-height:560px){.top-bar{min-height:56px;padding-top:max(6px,var(--safe-top));padding-bottom:6px}.surface{padding-top:16px;padding-bottom:16px}.surface-heading-row{margin-bottom:12px}h1{font-size:21px}.editor-helper-card,.quick-key-bar{margin-top:10px}.bottom-nav{min-height:56px;padding-top:3px;padding-bottom:3px}.nav-item{min-height:45px}.nav-item svg{width:18px;height:18px}.code-window{min-height:190px}.terminal-body{min-height:180px}.preview-empty-state{min-height:220px}}.stage3-error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 16px 0;padding:10px 12px;border:1px solid rgba(244,63,94,.2);border-radius:12px;color:#9f1239;background:#fff1f2;font-size:12px;font-weight:600}.stage3-error-banner button{display:grid;flex:0 0 auto;width:28px;height:28px;padding:0;border:0;place-items:center;color:inherit;background:transparent}.offline-dot{background:#f43f5e}.stage3-empty-surface{display:flex;min-height:55vh;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px}.stage3-empty-surface p:not(.eyebrow){max-width:34rem;margin:0;color:var(--muted, #6b7280);line-height:1.6}.stage3-primary-action{margin-top:4px}.stage3-editor-card{overflow:hidden}.stage4-editor-host,.stage4-editor-loading{min-height:360px;background:#fff}.stage4-editor-host{overflow:hidden}.stage4-editor-loading{display:grid;place-items:center;color:#64748b;font:600 12px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}html[data-theme=dark] .stage4-editor-host,html[data-theme=dark] .stage4-editor-loading{background:#111827}html[data-theme=dark] .stage4-editor-loading{color:#94a3b8}.stage4-editor-host .cm-editor{min-height:360px}.stage4-editor-host .cm-scroller{-webkit-overflow-scrolling:touch}.stage4-editor-host .cm-content{font-variant-ligatures:none}.stage4-editor-host .cm-tooltip-autocomplete,.stage4-editor-host .cm-tooltip{z-index:30}.stage4-quick-key-bar{width:100%;margin:0;padding:8px 10px;border-top:1px solid var(--editor-chrome-line);background:var(--quickbar-bg)}.stage4-quick-key-bar .quick-key{border-color:var(--quickbar-key-border);color:var(--quickbar-key-text);background:var(--quickbar-key-bg)}.stage4-quick-key-bar .quick-key.muted{color:var(--quickbar-key-muted-text);background:var(--quickbar-key-muted-bg)}.stage4-quick-key-bar .quick-key:active{border-color:#67e8f9;color:#ecfeff;background:#164e63}.stage3-save-state{margin-left:auto;padding:4px 8px;border-radius:999px;color:#64748b;background:#f1f5f9;font-size:10px;font-weight:700;letter-spacing:.02em}.stage3-save-state.saving,.stage3-save-state.dirty{color:#92400e;background:#fef3c7}.stage3-save-state.saved{color:#166534;background:#dcfce7}.stage3-save-state.error{color:#9f1239;background:#ffe4e6}.stage3-project-picker{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:9px;padding:0 18px 14px}.stage3-project-picker label{display:grid;gap:5px}.stage3-project-picker label>span,.stage3-form label>span{color:#64748b;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.stage3-project-picker select,.stage3-form input,.stage3-form select{box-sizing:border-box;width:100%;min-height:42px;padding:8px 11px;border:1px solid #dbe3ec;border-radius:10px;outline:0;color:#172033;background:#fff;font:inherit}.stage3-project-picker select:focus,.stage3-form input:focus,.stage3-form select:focus{border-color:#67e8f9;box-shadow:0 0 0 3px #67e8f929}.stage3-tree-toolbar{display:flex;gap:8px;padding:0 18px 10px}.stage3-tree-toolbar button{display:inline-flex;min-height:35px;align-items:center;gap:6px;padding:7px 10px;border:1px solid #e2e8f0;border-radius:9px;color:#334155;background:#f8fafc;font:inherit;font-size:11px;font-weight:700}.stage3-tree-empty,.stage3-drawer-empty{margin:8px 18px 18px;color:#64748b;font-size:12px;line-height:1.55}.stage3-tree-row{display:grid;grid-template-columns:minmax(0,1fr) 34px 34px;min-height:42px;align-items:center;border-radius:9px}.stage3-tree-row.selected{background:#ecfeff}.stage3-tree-main{display:flex;min-width:0;min-height:40px;align-items:center;gap:9px;padding:7px 8px;border:0;color:#334155;background:transparent;text-align:left;font:inherit}.stage3-tree-main>span:not(.selected-check){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage3-tree-action{display:grid;width:31px;height:31px;padding:0;border:0;border-radius:8px;place-items:center;color:#64748b;background:transparent;font:inherit;font-size:18px}.stage3-tree-action:hover,.stage3-tree-action:focus-visible{background:#e2e8f0}.stage3-tree-action.danger{color:#be123c}.stage3-project-danger{display:flex;gap:14px;padding:10px 18px 4px}.stage3-project-danger button{padding:0;border:0;color:#be123c;background:transparent;font:inherit;font-size:11px;font-weight:700}.stage3-project-danger button.rename{color:#334155}.stage3-modal-backdrop{position:fixed;z-index:80;top:0;right:0;bottom:0;left:0;display:grid;align-items:end;padding:16px;background:#0f172a7a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.stage3-modal{width:min(100%,500px);max-height:min(82vh,650px);margin:0 auto max(4px,var(--safe-bottom));overflow:auto;border:1px solid rgba(226,232,240,.95);border-radius:20px;background:#fff;box-shadow:0 24px 80px #0f172a42}.stage3-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 18px 8px}.stage3-modal-header h2{margin:2px 0 0;color:#172033;font-size:20px}.stage3-form,.stage3-confirm{display:grid;gap:14px;padding:10px 18px 18px}.stage3-form label{display:grid;gap:7px}.stage3-template-description,.stage3-confirm p{margin:0;color:#64748b;font-size:12px;line-height:1.6}.stage3-form-error{margin:0;color:#be123c;font-size:12px;font-weight:600}.stage3-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.stage3-modal-actions button{min-height:39px;padding:8px 14px;border-radius:10px;font:inherit;font-size:12px;font-weight:800}.stage3-ghost-button{border:1px solid #dbe3ec;color:#475569;background:#fff}.stage3-submit-button{border:1px solid #0891b2;color:#fff;background:#0891b2}.stage3-danger-button{border:1px solid #be123c;color:#fff;background:#be123c}@media(max-width:719px){.stage4-editor-host .cm-editor .cm-scroller{font-size:var(--editor-font-size, 16px);line-height:1.6}.stage4-editor-host .cm-editor .cm-line{padding-right:12px}}@media(min-width:720px){.stage3-modal-backdrop{align-items:center}.stage4-editor-host,.stage4-editor-host .cm-editor,.stage4-editor-host .cm-scroller,.stage4-editor-host .cm-content{min-height:430px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.terminal-surface{align-items:stretch}.terminal-heading-row{align-items:center}.terminal-status-group{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.terminal-status-pill{display:inline-flex;align-items:center;gap:6px;min-height:27px;padding:0 9px;border:1px solid #dce7e9;border-radius:99px;color:#7d919b;background:#ffffffb3;font-size:9px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.terminal-status-pill.success{border-color:#ccebdd;color:#287b62;background:#f0fbf6}.terminal-status-pill.warning{border-color:#f3dfbe;color:#9b6a2d;background:#fff9ed}.terminal-status-dot{width:6px;height:6px;border-radius:50%;background:#a9bbc3}.terminal-status-pill.success .terminal-status-dot{background:#48b48b;box-shadow:0 0 0 3px #48b48b24}.terminal-status-pill.warning .terminal-status-dot{background:#e5a64c}.terminal-client-card{display:flex;flex-direction:column;width:min(100%,1080px);min-height:min(64vh,620px);margin:0 auto;border:1px solid rgb(31 70 82 / 40%);border-radius:19px;box-shadow:0 18px 45px #19314221}.terminal-client-card .terminal-toolbar{flex:0 0 auto}.terminal-toolbar-actions{gap:7px}.terminal-toolbar-button{min-height:30px;padding:0 8px;border:1px solid rgb(255 255 255 / 12%);border-radius:7px;color:#9bb1b7;background:#ffffff0a;cursor:pointer;font-size:10px;font-weight:600}.terminal-toolbar-button:hover{color:#e0ece8;background:#ffffff1a}.terminal-viewport{flex:1;min-height:280px;padding:16px 18px 18px;overflow:hidden;background:#102b38;touch-action:pan-y}.terminal-viewport .xterm{height:100%;background:#102b38}.terminal-viewport .xterm-viewport{background:#102b38!important;overflow-x:hidden!important;overflow-y:scroll!important;overscroll-behavior:contain;scrollbar-color:#40616a transparent;scrollbar-width:thin;touch-action:pan-y}.terminal-viewport .xterm-scrollable-element,.terminal-viewport .xterm-scroll-area{background:#102b38!important}.terminal-quick-key-bar{display:flex;flex:0 0 auto;gap:7px;padding:9px 12px max(9px,var(--safe-bottom));overflow-x:auto;border-top:1px solid rgb(255 255 255 / 10%);background:#0d2531;scrollbar-width:none;touch-action:pan-x}.terminal-quick-key-bar::-webkit-scrollbar{display:none}.terminal-quick-key-bar button{display:inline-flex;flex:0 0 auto;min-width:40px;min-height:38px;align-items:center;justify-content:center;padding:0 10px;border:1px solid rgb(255 255 255 / 13%);border-radius:8px;color:#b9d0cc;background:#ffffff12;cursor:pointer;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:600}.terminal-quick-key-bar button:active{color:#102b38;background:var(--mint)}.terminal-control-row{display:flex;flex-wrap:wrap;gap:9px;width:min(100%,1080px);margin:16px auto 0}.terminal-run-button,.terminal-control-button{align-self:auto;min-width:85px;margin-top:0;justify-content:center}.terminal-control-button{border:1px solid #d8e9e2;background:#fff}.terminal-control-row button:disabled{cursor:not-allowed;opacity:.48;transform:none;box-shadow:none}.terminal-helper{display:flex;align-items:flex-start;gap:9px;width:min(100%,1080px);margin:13px auto 0;color:var(--muted);font-size:11px;line-height:1.5}.terminal-helper.has-error{color:#a04a4a}.terminal-helper-icon{display:inline-grid;flex:0 0 auto;width:19px;height:19px;place-items:center;border-radius:6px;color:#315a50;background:var(--mint-soft);font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;font-weight:700}.terminal-empty-surface,.terminal-loading{align-items:center;justify-content:center;text-align:center}.terminal-empty-surface>p:not(.eyebrow),.terminal-loading{color:var(--muted);font-size:13px}@media(max-width:560px){.terminal-heading-row{align-items:flex-start;flex-direction:column;gap:12px}.terminal-status-group{justify-content:flex-start}.terminal-client-card{min-height:min(61vh,520px);border-radius:15px}.terminal-viewport{min-height:220px;padding:12px 10px 14px}.terminal-control-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.terminal-run-button,.terminal-control-button{min-width:0;padding-right:8px;padding-left:8px}}@media(orientation:landscape)and (max-height:560px){.terminal-client-card{min-height:min(62vh,370px)}.terminal-viewport{min-height:150px}}.preview-surface{align-items:stretch}.preview-heading-row{align-items:center}.preview-heading-actions,.preview-control-actions{display:flex;align-items:center;gap:8px}.preview-status-pill{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 9px;border:1px solid #dce7e9;border-radius:99px;color:#7d919b;background:#ffffffb3;font-size:9px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.preview-status-pill.running{border-color:#ccebdd;color:#287b62;background:#f0fbf6}.preview-status-pill.starting{border-color:#f3dfbe;color:#9b6a2d;background:#fff9ed}.preview-status-pill.error{border-color:#f1caca;color:#a04a4a;background:#fff5f5}.preview-status-dot{width:6px;height:6px;border-radius:50%;background:#a9bbc3}.preview-status-pill.running .preview-status-dot{background:#48b48b;box-shadow:0 0 0 3px #48b48b24}.preview-status-pill.starting .preview-status-dot{background:#e5a64c}.preview-status-pill.error .preview-status-dot{background:#d66b6b}.preview-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;width:min(100%,1080px);margin:0 auto 14px}.preview-service-picker{display:grid;flex:1;gap:5px;min-width:0}.preview-service-picker label{color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.preview-service-picker select{width:100%;min-height:42px;padding:0 32px 0 11px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:#fff;font-size:11px;outline:none}.preview-service-picker select:focus{border-color:#8dcbb4;box-shadow:0 0 0 3px #3f9d8021}.preview-service-picker select:disabled{color:var(--muted);cursor:default}.preview-primary-button,.preview-secondary-button{min-height:42px;padding:0 13px;border-radius:10px;cursor:pointer;font-size:11px;font-weight:700;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.preview-primary-button{border:0;color:#15362f;background:var(--mint);box-shadow:0 5px 14px #4aaa842e}.preview-secondary-button{border:1px solid #d8e9e2;color:#315a50;background:#fff}.preview-primary-button:hover,.preview-secondary-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #4aaa8429}.preview-primary-button:disabled,.preview-secondary-button:disabled,.preview-heading-actions .icon-button:disabled{cursor:not-allowed;opacity:.48;transform:none;box-shadow:none}.preview-browser-card{display:flex;flex:1;flex-direction:column;width:min(100%,1080px);min-height:min(64vh,650px);margin:0 auto;overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--surface);box-shadow:var(--shadow-soft)}.preview-browser-status{color:#8a9aa5;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9px;white-space:nowrap}.preview-viewport{display:flex;flex:1;min-height:300px;overflow:hidden;background:#eef3f5}.preview-iframe{display:block;flex:1;width:100%;min-height:100%;border:0;background:#fff}.preview-message{width:min(100%,1080px);margin:0 auto 12px;padding:10px 12px;border:1px solid #f1caca;border-radius:10px;color:#a04a4a;background:#fff5f5;font-size:11px;line-height:1.45}.preview-state-card{display:flex;flex-direction:column;align-items:flex-start;width:min(100%,460px);margin:auto;padding:24px;border:1px solid var(--line);border-radius:16px;background:#ffffffe0;box-shadow:var(--shadow-soft)}.preview-state-card h1{margin-bottom:10px}.preview-state-card>p:not(.eyebrow){margin-bottom:18px;color:var(--muted);font-size:12px;line-height:1.55}.preview-no-project,.preview-loading{align-items:center;justify-content:center}.preview-no-project .preview-state-card,.preview-loading .preview-state-card{margin:auto}.preview-viewport-state{align-items:center;max-width:360px;border:0;background:#fffc;box-shadow:none;text-align:center}.preview-viewport-state strong,.preview-viewport-state p{align-self:center}.preview-viewport-state strong{color:var(--ink);font-size:14px}.preview-viewport-state p{margin-bottom:0}.preview-state-icon{display:inline-grid;width:42px;height:42px;margin-bottom:15px;place-items:center;border:1px dashed #b7d6cd;border-radius:50%;color:#5f9d87;font-family:JetBrains Mono,ui-monospace,monospace;font-size:22px}.preview-viewport-state.error .preview-state-icon{border-color:#e5b5b5;color:#b45c5c}.preview-loading-indicator{width:24px;height:24px;border:2px solid #d6ebe3;border-top-color:#48b48b;border-radius:50%;animation:preview-spin .8s linear infinite}.preview-spinning-icon{display:inline-flex;animation:preview-spin .8s linear infinite}@keyframes preview-spin{to{transform:rotate(360deg)}}@media(max-width:560px){.preview-heading-row{align-items:flex-start;flex-direction:column;gap:12px}.preview-heading-actions{width:100%;justify-content:space-between}.preview-controls{align-items:stretch;flex-direction:column}.preview-control-actions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.preview-primary-button,.preview-secondary-button{width:100%}.preview-browser-card{min-height:min(61vh,540px);border-radius:15px}.preview-browser-bar{gap:8px;padding:0 11px}.preview-url{width:auto;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-viewport{min-height:220px}.preview-state-card{padding:20px}}@media(orientation:landscape)and (max-height:560px){.preview-browser-card{min-height:min(62vh,390px)}.preview-viewport{min-height:160px}}.preview-mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:min(100%,1080px);margin:0 auto 14px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#f3f7f7}.preview-mode-switch button{min-width:0;min-height:36px;border:0;border-radius:8px;color:var(--muted);background:transparent;cursor:pointer;font-size:10px;font-weight:700}.preview-mode-switch button.active{color:#275f51;background:#fff;box-shadow:0 2px 9px #275f511a}.preview-inline-state{min-height:210px;justify-content:center}.artifact-layout,.gui-session-card{width:min(100%,1080px);margin:0 auto}.artifact-layout{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:12px;min-width:0}.artifact-layout>.preview-message,.artifact-layout>.preview-state-card{grid-column:1 / -1}.artifact-picker{display:flex;flex-direction:column;gap:7px;min-width:0;max-height:min(64vh,650px);overflow:auto;padding:8px;border:1px solid var(--line);border-radius:14px;background:#f7faf9}.artifact-picker button{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid transparent;border-radius:10px;color:var(--ink);background:transparent;cursor:pointer;text-align:left}.artifact-picker button.active{border-color:#cce8dd;background:#fff;box-shadow:0 3px 12px #377e6817}.artifact-picker-name,.artifact-picker-meta,.artifact-detail-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artifact-picker-name{font-size:11px;font-weight:700}.artifact-picker-meta{color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:8px}.artifact-detail{display:flex;min-width:0;min-height:min(64vh,650px);overflow:hidden;flex-direction:column;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-soft)}.artifact-detail-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px}.artifact-detail-bar>div{display:grid;min-width:0;gap:2px}.artifact-detail-bar strong{overflow:hidden;color:var(--ink);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.artifact-viewport{display:flex;flex:1;min-width:0;min-height:280px;overflow:hidden;background:#eef3f5}.artifact-image-stage{display:grid;flex:1;min-width:0;min-height:0;overflow:auto;padding:12px;place-items:center}.artifact-image{display:block;max-width:100%;max-height:min(58vh,590px);object-fit:contain}.artifact-iframe{display:block;width:100%;min-height:100%;border:0;background:#fff}.gui-controls{align-items:center}.gui-session-copy{display:grid;gap:4px;min-width:0}.gui-session-copy strong{color:var(--ink);font-size:11px}.gui-session-copy span{color:var(--muted);font-size:9px;line-height:1.4}.gui-session-card{display:grid;min-width:0;min-height:320px;overflow:hidden;place-items:center;border:1px solid var(--line);border-radius:16px;background:#e8eeee;box-shadow:var(--shadow-soft)}.gui-session-card>.preview-state-card{margin:auto}.gui-viewport-frame{display:grid;width:100%;min-width:0;gap:8px;padding:10px}.gui-viewport-canvas{width:100%;min-width:0;max-height:calc(100dvh - 250px);overflow:hidden;border-radius:10px;background:#111819;touch-action:none}.gui-viewport-canvas canvas{display:block!important;width:100%!important;max-width:100%!important;height:100%!important;object-fit:contain}.gui-viewport-status{display:inline-flex;align-items:center;justify-self:start;gap:6px;color:var(--muted);font-size:9px}.gui-viewport-status.connected{color:#287b62}.gui-viewport-status.error{color:#a04a4a}@media(max-width:560px){.artifact-layout{grid-template-columns:minmax(0,1fr)}.artifact-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:170px}.artifact-detail{min-height:min(54vh,470px)}.artifact-detail-bar{align-items:flex-start;flex-direction:column;gap:4px}.artifact-detail-bar>span{width:100%}.artifact-viewport{min-height:220px}.gui-controls{align-items:stretch}.gui-session-card{min-height:260px;border-radius:14px}.gui-viewport-frame{padding:7px}.gui-viewport-canvas{max-height:calc(100dvh - 300px)}}.auth-gate{display:grid;width:100%;min-height:var(--app-height);place-items:center;padding:max(24px,var(--safe-top)) max(18px,var(--safe-right)) max(24px,var(--safe-bottom)) max(18px,var(--safe-left));background:radial-gradient(circle at 12% 8%,rgb(142 230 193 / 20%),transparent 19rem),var(--canvas)}.auth-loading{color:var(--muted);font-size:12px}.auth-card{display:grid;width:min(100%,390px);gap:14px;padding:28px 22px 24px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-soft)}.auth-brand-mark{display:grid;width:42px;height:42px;gap:3px;padding:10px 8px;border-radius:13px;background:var(--navy);transform:rotate(-8deg)}.auth-brand-mark span{display:block;height:4px;border-radius:4px;background:var(--mint)}.auth-brand-mark span:nth-child(2){width:75%;background:#fff}.auth-brand-mark span:nth-child(3){width:48%;background:var(--amber)}.auth-eyebrow{margin:3px 0 -7px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.14em}.auth-card h1{margin:0;font-size:28px}.auth-description{margin:-5px 0 3px;color:var(--muted);font-size:12px;line-height:1.5}.auth-field{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:700}.auth-field input{width:100%;min-height:48px;padding:0 13px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--surface-soft);font:inherit;outline:none}.auth-field input:focus{border-color:#77bda7;box-shadow:0 0 0 3px #3f9d8024}.auth-field input[readonly]{color:var(--muted)}.auth-field input[inputmode=numeric]{font-family:JetBrains Mono,ui-monospace,monospace;font-size:20px;letter-spacing:.22em}.auth-error{margin:-3px 0 0;color:#be123c;font-size:11px;line-height:1.45}.auth-submit{width:100%;min-height:48px;margin-top:2px}.auth-submit:disabled{cursor:wait;opacity:.68}.auth-download{justify-content:center;text-decoration:none}.auth-logout{justify-content:center;width:100%;min-height:44px}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px)}html[data-animations=false] *:not(.xterm-cursor){transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}.top-bar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;min-height:calc(var(--safe-top) + 52px);padding:var(--safe-top) max(8px,var(--safe-right)) 0 max(8px,var(--safe-left))}.top-file-button{align-self:center;width:44px;height:44px;border:0;border-radius:11px;background:transparent}.workspace-heading{display:grid;min-width:0;align-content:center;gap:1px;overflow:hidden}.workspace-title,.workspace-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-title{color:var(--ink);font-size:14px;font-weight:700;letter-spacing:-.02em}.workspace-subtitle{color:var(--muted);font-size:10px}.top-actions{display:flex;align-items:center;gap:6px}.connection-indicator{width:7px;height:7px;border-radius:999px;background:#49ad88}.connection-indicator.offline-dot{background:#f43f5e}.surface{padding-right:max(20px,var(--safe-right));padding-left:max(20px,var(--safe-left));scroll-padding-bottom:max(24px,var(--safe-bottom))}.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr));padding-right:max(12px,var(--safe-right));padding-bottom:max(7px,var(--safe-bottom));padding-left:max(12px,var(--safe-left))}.top-terminal-button{align-self:center;width:44px;height:44px;border:0;border-radius:11px;background:transparent}.drawer-backdrop{position:fixed;z-index:49;top:0;right:0;bottom:0;left:0}.file-drawer{position:fixed;z-index:50;top:0;right:auto;bottom:0;left:0;width:min(88vw,360px);max-height:none;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom);border:0;border-right:1px solid var(--line);border-radius:0 18px 18px 0;box-shadow:18px 0 48px #19314229;transform:translate(-105%)}.file-drawer.open{transform:translate(0)}.drawer-header{min-height:56px;padding:6px 10px 6px 16px}.drawer-header h2{font-size:18px}.stage3-project-picker{padding-top:6px}.file-tree{flex:1 1 auto;min-height:0}.stage3-tree-row{position:relative;overflow:visible}.stage3-tree-action{flex:0 0 44px;width:44px;min-height:44px}.stage3-tree-menu{position:absolute;z-index:4;top:calc(100% - 4px);right:8px;display:grid;min-width:118px;padding:5px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 12px 30px #142a382e}.stage3-tree-menu button{min-height:40px;padding:0 12px;border:0;border-radius:7px;text-align:left;background:transparent}.stage3-tree-menu button:active{background:#eef5f4}.stage3-tree-menu .danger{color:#be123c}.drawer-footer{padding-right:16px;padding-bottom:0;padding-left:16px}.editor-workspace{gap:0;padding:0;overflow:hidden;background:var(--editor-chrome-bg)}.editor-workspace .editor-card{display:flex;flex:1 1 auto;min-height:0;width:100%;margin:0;flex-direction:column;border:0;border-radius:0;box-shadow:none}.editor-file-strip{display:flex;flex:0 0 auto;min-height:36px;align-items:center;gap:4px;padding:0 5px 0 0;border-bottom:1px solid var(--editor-chrome-line);color:var(--editor-tab-text);background:var(--editor-chrome-bg)}.editor-tabs-scroll{display:flex;flex:1 1 auto;min-width:0;align-self:stretch;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.editor-tabs-scroll::-webkit-scrollbar{display:none}.editor-tab{display:flex;flex:0 0 auto;min-width:92px;max-width:170px;align-items:stretch;border-right:1px solid var(--editor-chrome-line);color:var(--editor-tab-text);background:var(--editor-tab-bg)}.editor-tab.active{color:var(--editor-tab-active-text);background:var(--editor-tab-active-bg);box-shadow:inset 0 2px 0 var(--editor-chrome-accent)}.editor-tab-main{display:flex;flex:1 1 auto;min-width:0;min-height:35px;align-items:center;gap:5px;padding:0 5px 0 8px;border:0;color:inherit;background:transparent}.editor-tab-main>span:not(.unsaved-dot){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-tab-close,.editor-open-files-button{display:grid;flex:0 0 auto;width:30px;min-height:30px;place-items:center;padding:0;border:0;color:var(--editor-tab-text);background:transparent}.editor-tab-close:active,.editor-open-files-button:active{color:var(--editor-tab-active-text);background:var(--editor-tab-active-bg)}.stage3-tree-chevron,.stage3-tree-chevron-spacer{display:inline-grid;flex:0 0 12px;width:12px;place-items:center}.stage3-tree-chevron{transition:transform .12s ease;transform:rotate(90deg)}.stage3-tree-chevron.collapsed{transform:rotate(0)}.stage3-tree-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage3-project-actions-menu{flex:0 0 auto;margin:2px 8px 5px;color:var(--muted);font-size:10px}.stage3-project-actions-menu summary{min-height:30px;padding:7px 8px;cursor:pointer;list-style-position:inside}.stage3-project-actions-menu>div{display:flex;gap:5px;padding:2px 0 5px}.stage3-project-actions-menu button{min-height:30px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:10px}.stage3-project-actions-menu .danger{color:#be123c}.editor-save-state{flex:0 0 auto;padding:3px 7px;border-radius:999px;color:#fbbf24;font-size:9px;font-weight:700}.editor-save-state.error{color:#fda4af}.editor-workspace .stage4-editor-host{flex:1 1 auto;min-height:0!important}.editor-workspace .stage4-editor-host .cm-editor{height:100%;min-height:0!important}.editor-workspace .stage4-editor-host .cm-scroller{min-height:0!important}.editor-workspace .stage4-editor-host .cm-content{min-height:100%!important}.editor-workspace .editor-statusbar{flex:0 0 auto;min-height:28px}html:not([data-keyboard-open=true]) .terminal-surface .terminal-quick-key-bar{display:none}@media(max-width:700px){.top-bar{gap:4px;min-height:calc(var(--safe-top) + 52px);padding-top:var(--safe-top);padding-right:max(6px,var(--safe-right));padding-bottom:0;padding-left:max(6px,var(--safe-left))}.top-bar .run-button{width:44px;min-height:44px;padding:0;place-content:center}.top-bar .run-button span{display:none}.top-terminal-button{width:40px;height:40px}.surface{padding-right:max(12px,var(--safe-right));padding-left:max(12px,var(--safe-left))}.editor-workspace{padding:0}.editor-workspace .editor-statusbar{gap:8px;padding:0 10px;font-size:8px}.editor-workspace .editor-statusbar span:first-child,.editor-workspace .editor-statusbar span:nth-child(4),.editor-workspace .editor-statusbar span:nth-child(5){display:none}.bottom-nav{min-height:calc(58px + var(--safe-bottom));padding-top:4px;padding-right:max(6px,var(--safe-right));padding-bottom:max(4px,var(--safe-bottom));padding-left:max(6px,var(--safe-left))}.nav-item{min-height:50px}html[data-keyboard-open=true] .bottom-nav{display:none}.file-drawer{width:min(88vw,336px)}.drawer-header{min-height:44px;padding:2px 6px 2px 10px}.drawer-header h2{font-size:15px}.drawer-header .icon-button{width:36px;height:36px;border:0;background:transparent}.stage3-project-picker{grid-template-columns:minmax(0,1fr) 36px;gap:5px;padding:4px 8px 6px}.stage3-project-picker label{gap:2px}.stage3-project-picker label>span{display:none}.stage3-project-picker select{min-height:34px;padding:0 8px}.stage3-project-picker .icon-button{width:34px;height:34px;border-radius:7px}.stage3-tree-toolbar{gap:4px;padding:2px 8px 5px}.stage3-tree-toolbar button{min-height:30px;gap:4px;padding:0 8px;border-radius:6px;font-size:10px}.file-tree{padding:0 4px}.file-tree .tree-label{margin:4px 5px 3px;font-size:8px}.stage3-tree-row{grid-template-columns:minmax(0,1fr) 30px;min-height:32px;border-radius:5px}.stage3-tree-row.selected{background:#e8f5f2;box-shadow:inset 2px 0 #3f9d80}.stage3-tree-main{min-height:32px;gap:4px;padding:0 3px;font-size:11px}.stage3-tree-action{flex-basis:30px;width:30px;min-height:30px}.stage3-tree-menu{top:calc(100% - 2px);right:2px}.stage3-tree-menu button{min-height:34px}.stage3-project-actions-menu{margin-right:6px;margin-left:6px}.drawer-footer{min-height:32px;padding-right:9px;padding-left:9px;font-size:9px}.editor-save-state{padding:2px 4px;font-size:8px}}@media(orientation:landscape)and (max-height:560px){.top-bar{min-height:calc(var(--safe-top) + 48px);padding-top:var(--safe-top)}.bottom-nav{min-height:calc(50px + var(--safe-bottom));padding-bottom:max(3px,var(--safe-bottom))}}:root{--accent: #49ad88;--accent-strong: #2b806b}html[data-theme=dark]{color-scheme:dark;--ink: #e6eef2;--muted: #9aadb6;--faint: #71838c;--line: #30434d;--surface: #17242b;--surface-soft: #1d2d35;--canvas: #0e171c;--navy: #d7eee6;--mint: #78d6ad;--mint-soft: #1e4036;--amber: #f2b45d;--blue: #82aef5;--shadow-soft: 0 16px 42px rgb(0 0 0 / 28%);--editor-chrome-bg: #0f172a;--editor-tab-bg: #111827;--editor-tab-active-bg: #172033;--editor-tab-text: #94a3b8;--editor-tab-active-text: #e2e8f0;--editor-chrome-line: #263244;--editor-chrome-accent: #67e8f9;--quickbar-bg: #0f172a;--quickbar-key-bg: #172033;--quickbar-key-muted-bg: #111827;--quickbar-key-text: #cbd5e1;--quickbar-key-muted-text: #94a3b8;--quickbar-key-border: #334155}html[data-theme=dark] body,html[data-theme=dark] .app-shell{background:var(--canvas);color:var(--ink)}html[data-theme=dark] .app-shell{background:radial-gradient(circle at 89% 4%,rgb(83 190 148 / 12%),transparent 28rem),var(--canvas)}html[data-theme=dark] .top-bar,html[data-theme=dark] .bottom-nav{border-color:#526e796b;background:#0e171ce0}html[data-theme=dark] .surface,html[data-theme=dark] .editor-card,html[data-theme=dark] .placeholder-card,html[data-theme=dark] .editor-helper-card,html[data-theme=dark] .placeholder-callout,html[data-theme=dark] .file-drawer,html[data-theme=dark] .settings-section,html[data-theme=dark] .settings-subsection,html[data-theme=dark] .settings-about-card{border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .icon-button,html[data-theme=dark] .settings-secondary-button,html[data-theme=dark] .settings-danger-button,html[data-theme=dark] .stage3-tree-toolbar button,html[data-theme=dark] .stage3-project-list-item,html[data-theme=dark] .stage3-project-menu,html[data-theme=dark] .stage3-tree-menu,html[data-theme=dark] .stage3-project-picker select,html[data-theme=dark] .stage3-form input,html[data-theme=dark] .stage3-form select,html[data-theme=dark] .settings-select-row select,html[data-theme=dark] .settings-input-row input,html[data-theme=dark] .auth-field input{border-color:var(--line);color:var(--ink);background:var(--surface-soft)}html[data-theme=dark] .nav-item{color:var(--muted)}html[data-theme=dark] .nav-item.active{color:#8ee6c1;background:#19382f}html[data-theme=dark] .stage3-tree-main,html[data-theme=dark] .stage3-root-row,html[data-theme=dark] .stage3-project-list-item,html[data-theme=dark] .stage3-project-list-copy small{color:var(--ink)}html[data-theme=dark] .stage3-tree-row.selected{background:#17382f}html[data-theme=dark] .stage3-tree-menu button:active,html[data-theme=dark] .stage3-project-menu button:active{background:#29434b}.top-run-button{width:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:10px;color:var(--ink);background:transparent;box-shadow:none;place-content:center}.top-run-button:hover{color:var(--accent-strong);background:var(--surface-soft);box-shadow:none;transform:none}.top-run-button span{display:none}.run-button:active,.icon-button:active,.nav-item:active,.stage3-tree-action:active,.stage3-project-menu-button:active{transform:translateY(1px) scale(.98)}.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.stage3-project-picker{position:relative;grid-template-columns:minmax(0,1fr) 42px}.stage3-project-menu,.stage3-tree-menu{color:var(--ink);background:var(--surface)}.stage3-project-menu{position:absolute;z-index:8;top:calc(100% - 8px);right:18px;display:grid;min-width:150px;padding:5px;border:1px solid var(--line);border-radius:11px;box-shadow:0 14px 34px #142a382e}.stage3-project-menu button,.stage3-tree-menu button{min-height:40px;padding:0 12px;border:0;border-radius:7px;color:inherit;background:transparent;cursor:pointer;text-align:left;font-size:11px}.stage3-project-menu button.danger,.stage3-tree-menu button.danger{color:#be123c}.stage3-root-row{position:relative;display:flex;min-height:34px;align-items:center;justify-content:space-between;margin:0 4px 3px;padding:0 5px 0 8px;border-radius:7px;color:var(--muted);background:var(--surface-soft);font-size:10px;font-weight:700}.stage3-root-row>span{display:inline-flex;align-items:center;gap:6px}.stage3-root-menu{top:calc(100% - 2px);right:2px}.stage3-project-management{flex:1;padding:8px 14px 16px;overflow:auto}.stage3-project-management-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 4px 14px}.stage3-project-management-header strong{color:var(--ink);font-size:14px}.stage3-project-management-header .secondary-action{margin-top:0;min-height:38px;padding:0 10px;font-size:10px}.stage3-project-list{display:grid;gap:7px}.stage3-project-list-item{display:flex;min-height:58px;align-items:center;gap:12px;padding:9px 11px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--surface);cursor:pointer;text-align:left}.stage3-project-list-item>svg{margin-left:auto;color:var(--muted)}.stage3-project-list-copy{display:grid;min-width:0;gap:3px}.stage3-project-list-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage3-project-list-copy small{color:var(--muted);font-size:10px}html[data-quick-bar-enabled=false] .stage4-quick-key-bar{display:none!important}html[data-editor-wrap=true] .stage4-editor-host .cm-line{white-space:pre-wrap;overflow-wrap:anywhere}html[data-editor-line-numbers=false] .stage4-editor-host .cm-gutters{display:none}html[data-editor-cursor-blink=true] .stage4-editor-host .cm-cursor{animation:codelab-cursor-blink 1.1s steps(2,start) infinite}html[data-editor-cursor-blink=false] .stage4-editor-host .cm-cursor{animation:none}@keyframes codelab-cursor-blink{50%{opacity:0}}.stage4-editor-host .cm-scroller{font-size:var(--editor-font-size, 13px);-moz-tab-size:var(--editor-tab-size, 2);tab-size:var(--editor-tab-size, 2)}.terminal-viewport .xterm{font-size:var(--terminal-font-size, 12px);line-height:var(--terminal-line-height, 1.35)}html[data-terminal-cursor-blink=false] .terminal-viewport .xterm-cursor{visibility:visible!important}.project-manager-surface{position:relative;display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:14px;padding:20px max(16px,var(--safe-right)) 24px max(16px,var(--safe-left));overflow:auto;background:var(--canvas)}.project-manager-header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.project-manager-header h1{margin:3px 0 4px;font-size:25px}.project-manager-header p:last-child{margin:0;color:var(--muted);font-size:12px}.project-manager-header-actions{display:flex;flex:0 0 auto;gap:7px}.project-manager-header-actions .run-button,.project-manager-header-actions .secondary-action{min-height:40px;padding:0 11px;border-radius:11px;font-size:11px}.project-manager-tree{display:grid;gap:9px}.project-manager-group,.project-manager-ungrouped{min-width:0}.project-manager-group-row,.project-manager-project{position:relative;display:flex;min-height:52px;align-items:stretch;margin-left:calc(var(--group-depth, 0) * 12px);border:1px solid var(--line);border-radius:13px;background:var(--surface)}.project-manager-group-toggle,.project-manager-project-main{display:flex;flex:1 1 auto;min-width:0;align-items:center;gap:8px;padding:10px 11px;border:0;color:var(--ink);background:transparent;text-align:left}.project-manager-group-toggle strong,.project-manager-project-main strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.project-manager-group-toggle small{margin-left:auto;color:var(--muted);font-size:10px}.project-manager-chevron{color:var(--muted);font-size:20px;transform:rotate(0);transition:transform .12s ease}.project-manager-chevron.open{transform:rotate(90deg)}.project-manager-folder{color:var(--accent-strong);font-size:18px}.project-manager-group-content{display:grid;gap:7px;padding:7px 0 3px}.project-manager-project-main>span:last-child{display:grid;min-width:0;gap:2px}.project-manager-project-main small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.project-manager-project-mark{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:9px;color:#fff;background:#1d4ed8;font:700 11px/1 ui-monospace,monospace}.project-manager-actions{position:relative;flex:0 0 auto}.project-manager-actions summary{display:grid;width:42px;height:100%;min-height:50px;place-items:center;cursor:pointer;list-style:none;color:var(--muted);font-size:20px}.project-manager-actions summary::-webkit-details-marker{display:none}.project-manager-actions>div{position:absolute;z-index:35;top:calc(100% - 5px);right:6px;display:grid;width:142px;padding:5px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-soft)}.project-manager-actions>div button{min-height:35px;padding:0 9px;border:0;border-radius:7px;color:var(--ink);background:transparent;text-align:left;font-size:11px}.project-manager-actions>div button:active{background:var(--surface-soft)}.project-manager-actions>div button.danger,.project-manager-error{color:#be123c}.project-manager-section-label{padding:10px 2px 6px;color:var(--muted);font-size:10px;font-weight:700}.project-manager-ungrouped{display:grid;gap:7px}.project-manager-empty,.project-manager-empty-line{color:var(--muted);font-size:11px}.project-manager-empty{display:grid;min-height:160px;place-items:center;align-content:center;gap:5px;border:1px dashed var(--line);border-radius:15px}.project-manager-empty strong{color:var(--ink);font-size:14px}.project-manager-empty-line{margin:2px 0 4px calc((var(--group-depth, 0) + 1) * 12px);padding:8px 12px}.project-manager-error{margin:0;font-size:11px}.project-manager-dialog-backdrop{position:fixed;z-index:120;top:0;right:0;bottom:0;left:0;display:grid;place-items:end center;padding:16px max(12px,var(--safe-right)) max(16px,var(--safe-bottom)) max(12px,var(--safe-left));background:#0f172a5c}.project-manager-dialog{display:grid;width:min(100%,480px);gap:14px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 20px 60px #0000003d}.project-manager-dialog-title,.project-manager-dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-manager-dialog-title button,.project-manager-dialog-actions>button:not(.run-button){min-height:38px;padding:0 11px;border:0;border-radius:9px;color:var(--muted);background:var(--surface-soft)}.project-manager-dialog label{display:grid;gap:6px;color:var(--muted);font-size:11px}.project-manager-dialog input,.project-manager-dialog select{width:100%;min-height:44px;padding:0 11px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--surface-soft);font:inherit}.project-manager-dialog-actions{justify-content:flex-end}@media(max-width:560px){.project-manager-surface{padding-top:16px}.project-manager-header{align-items:stretch;flex-direction:column}.project-manager-header-actions{display:grid;grid-template-columns:1fr 1fr}.project-manager-header-actions>button{width:100%;min-width:0;align-self:stretch;justify-content:center;white-space:nowrap}}
