:root{--ink:#18201d;--muted:#6e7772;--paper:#f5f3ed;--panel:#fbfaf6;--line:#d9d8d1;--acid:#d9ff55;--deep:#153f35;--editor-text:#1d2a26;--font-geist-sans:"Segoe UI",Arial,sans-serif;--font-geist-mono:"Cascadia Code",Consolas,monospace}*{box-sizing:border-box}html,body{width:100%;height:100%;min-height:100%;overflow:hidden}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif}button,input,textarea{font:inherit}button{color:inherit}.app-shell{width:100%;height:100vh;height:100dvh;min-height:0;overflow:hidden;background:var(--paper);color:var(--ink)}.app-shell.dark{--ink:#e8eee9;--muted:#9aa69f;--paper:#111714;--panel:#151d19;--line:#2e3833;--acid:#d9ff55;--deep:#d9ff55;--editor-text:#e0eae4}.editor-panel{width:100%;height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;background:var(--panel)}.tabs-bar{height:43px;display:flex;align-items:stretch;gap:8px;padding:6px 12px 0;border-bottom:1px solid var(--line);background:var(--paper)}.tabs-list{min-width:0;flex:1 1 auto;display:flex;align-items:stretch;gap:4px;overflow-x:hidden;overflow-y:hidden}.tabs-list.scrollable{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.tabs-list::-webkit-scrollbar{display:none}.tab-item{min-width:138px;max-width:200px;display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:stretch;border:1px solid transparent;border-bottom:0;border-radius:9px 9px 0 0;color:var(--muted)}.tab-item:hover{background:color-mix(in srgb,var(--panel) 65%,transparent);color:var(--ink)}.tab-item.active{border-color:var(--line);background:var(--panel);color:var(--ink)}.tab-button{min-width:0;display:flex;align-items:center;gap:8px;padding:0 4px 0 13px;border:0;background:transparent;color:inherit;font:600 11px/1 var(--font-geist-mono),monospace;white-space:nowrap;cursor:pointer}.tab-title{min-width:0;overflow:hidden;text-overflow:ellipsis}.tab-close{display:grid;place-items:center;width:24px;height:24px;align-self:center;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:16px;line-height:1;cursor:pointer}.tab-close:hover{background:var(--paper);color:var(--ink)}.tab-status{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#a8aea9}.tab-item.active .tab-status{background:#7ba51a;box-shadow:0 0 0 3px color-mix(in srgb,var(--acid) 30%,transparent)}.add-tab{align-self:center;flex:0 0 auto;width:29px;height:29px;margin-bottom:2px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:21px;line-height:1;cursor:pointer}.add-tab:hover{border-color:var(--line);background:var(--panel);color:var(--ink)}.local-disclaimer{align-self:center;flex:0 0 auto;display:flex;align-items:center;gap:8px;margin:0 7px 2px 0;color:var(--ink);font-size:11px;font-weight:600;opacity:.72;white-space:nowrap}.local-disclaimer i{width:6px;height:6px;border-radius:50%;background:#4ba06c;box-shadow:0 0 0 3px #ddefdf}.local-disclaimer.hidden{display:none}.editor-toolbar{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 28px 10px 32px;border-bottom:1px solid var(--line)}.editor-meta{display:flex;flex-wrap:wrap;gap:9px 20px;color:var(--muted);font:600 10px/1.2 var(--font-geist-mono),monospace;letter-spacing:.08em}.editor-actions{display:flex;align-items:center;gap:5px}.editor-actions button{padding:7px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:11px;cursor:pointer}.editor-actions button:hover{border-color:var(--line);background:var(--paper);color:var(--ink)}.editor-actions .theme-button,.editor-actions .settings-button{width:34px;height:34px;padding:0;border-color:var(--line)}.editor-actions .theme-button{margin-left:6px}.settings-wrap{position:relative}.settings-menu{position:absolute;z-index:15;top:42px;right:0;width:300px;display:grid;gap:17px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 18px 54px #0a17113b,0 3px #d9d8d1}.settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.settings-heading>div{display:grid;gap:4px}.settings-heading span{color:var(--muted);font:700 9px/1 var(--font-geist-mono),monospace;letter-spacing:.14em}.settings-heading strong{font-size:15px}.editor-actions .settings-heading button{width:26px;height:26px;padding:0;border:1px solid var(--line);font-size:17px}.setting-row{display:grid;gap:8px}.setting-row>span{display:flex;justify-content:space-between;gap:12px}.setting-row strong{font-size:11px}.setting-row small{color:var(--muted);font:600 10px var(--font-geist-mono),monospace}.setting-row input{width:100%;accent-color:#6f8e17;cursor:pointer}.editor-actions .reset-settings{justify-self:start;padding:7px 9px;border:1px solid var(--line);color:var(--muted)}.editor-actions .reset-settings:hover{color:var(--ink)}.editor-wrap{position:relative;min-width:0;min-height:0;display:grid;grid-template-columns:58px minmax(0,1fr);overflow:hidden}.active-line-underline{position:absolute;z-index:3;top:0;height:1px;border-bottom:1px solid #7fa31e;pointer-events:none;will-change:transform;transition:opacity .1s}.line-numbers{height:100%;min-height:0;overflow:hidden;border-right:1px solid var(--line);background:color-mix(in srgb,var(--paper) 64%,transparent);color:#9ba19d;text-align:right;user-select:none}.line-numbers>div{padding:26px 14px 26px 8px;font-family:var(--font-geist-mono),monospace;font-size:var(--line-number-size,15px);line-height:var(--editor-line-height,30px)}.line-numbers span{display:block;height:var(--editor-line-height,30px)}.line-numbers span.active{color:var(--editor-text)}.editor{width:100%;height:100%;min-width:0;min-height:0;padding:26px 5vw;resize:none;border:0;outline:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:transparent;color:var(--editor-text);font-family:var(--font-geist-mono),monospace;font-size:13px;line-height:var(--editor-line-height,30px);letter-spacing:var(--caret-spacing,1px);tab-size:2;white-space:pre}.editor::selection{background:var(--acid);color:#10251e}.editor-footer{min-height:54px;display:flex;align-items:center;gap:18px;padding:12px 32px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.editor-footer button{display:flex;align-items:center;gap:3px;border:0;padding:0;background:transparent;color:inherit;cursor:pointer}.editor-footer button:disabled{opacity:.4;cursor:default}.shortcut-label{display:flex;align-items:center;height:19px;line-height:1;transform:translateY(1px)}.editor-footer .command-trigger{display:flex;align-items:center;gap:3px;padding:5px 8px 5px 5px;border:1px solid var(--line);border-radius:7px;color:var(--ink)}.editor-footer .command-trigger:hover{background:var(--paper)}.command-trigger>span{margin:0 2px;color:var(--muted);font-size:9px}kbd{display:inline-block;min-width:19px;margin-right:3px;padding:3px 5px;border:1px solid #d2d1ca;border-bottom-width:2px;border-radius:5px;background:#fff;color:#68716c;font:600 10px/1 var(--font-geist-mono),monospace;text-align:center}.footer-prompt{margin-left:auto}.palette-backdrop{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:22px;background:#0b120f7a;backdrop-filter:blur(6px);animation:fade-in .14s ease-out}.command-palette{position:relative;width:min(680px,100%);max-height:min(700px,calc(100vh - 44px));display:grid;grid-template-rows:auto auto auto minmax(0,1fr);overflow:hidden;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 28px 90px #07110c55,0 4px #0f2b23;animation:palette-in .18s ease-out}.palette-close{position:absolute;z-index:2;top:16px;right:16px;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:20px;line-height:1;cursor:pointer}.palette-close:hover{background:var(--panel);color:var(--ink)}.palette-title{display:grid;gap:6px;padding:2px 45px 18px 2px}.palette-title>span{color:var(--muted);font:700 9px/1 var(--font-geist-mono),monospace;letter-spacing:.16em}.palette-title>strong{font-size:22px;letter-spacing:-.04em}.search-box{display:flex;align-items:center;gap:10px;padding:0 12px;height:52px;border:1px solid #bfc1b9;border-radius:12px;background:#fff;box-shadow:0 2px #deddd6}.search-box:focus-within{border-color:var(--deep);box-shadow:0 0 0 3px #d9ff5577}.search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px}.search-box kbd{margin-left:auto}.palette-meta{display:flex;justify-content:space-between;padding:18px 4px 9px;color:#8a918d;font:600 9px/1 var(--font-geist-mono),monospace;letter-spacing:.09em;text-transform:uppercase}.command-list{min-height:0;display:grid;align-content:start;gap:4px;overflow:auto;padding:1px 3px 4px 1px;scrollbar-width:thin;scrollbar-color:var(--line) transparent;transition:opacity .15s}.command-list.working{opacity:.58;pointer-events:none}.command-row{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto 22px;align-items:center;gap:12px;padding:9px 10px;border:1px solid transparent;border-radius:11px;background:transparent;text-align:left;cursor:pointer}.command-row:hover,.command-row.selected{border-color:#c9cbc3;background:#fff;box-shadow:0 2px #e4e2da}.command-row.selected{border-left:4px solid var(--deep);padding-left:7px}.command-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e9e6dc;font:700 10px var(--font-geist-mono),monospace}.selected .command-icon{background:var(--deep);color:var(--acid)}.command-copy{min-width:0;display:grid;gap:3px}.command-copy strong{overflow:hidden;text-overflow:ellipsis;font-size:13px;letter-spacing:-.01em}.command-copy small{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:11px;white-space:nowrap}.command-category{color:var(--muted);font:600 9px var(--font-geist-mono),monospace;text-transform:uppercase}.run-glyph{color:#979d99;font:600 13px var(--font-geist-mono),monospace;opacity:0}.selected .run-glyph,.command-row:hover .run-glyph{opacity:1}.empty-state{display:grid;gap:7px;place-items:center;padding:46px 10px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:11px}.empty-state strong{color:var(--ink);font-size:13px}.toast{position:fixed;z-index:30;left:50%;bottom:24px;display:flex;align-items:center;gap:9px;max-width:min(460px,calc(100vw - 32px));transform:translate(-50%);padding:11px 16px;border:1px solid #29473d;border-radius:10px;background:#173b32;color:#effff4;box-shadow:0 14px 40px #0003;font-size:12px}.toast>span{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--acid);color:#173b32;font-weight:800}.toast.error{border-color:#8b3c38;background:#612d2a}.toast.error>span{background:#ffd0c9;color:#612d2a}.dark .editor{color:#e0eae4}.dark .search-box,.dark .command-row:hover,.dark .command-row.selected{background:#1a231f}.dark .search-box{border-color:#405048;box-shadow:0 2px #0d120f}.dark kbd{border-color:#3b4842;background:#202a25;color:#b7c1bb}.dark .command-icon{background:#26312b}.dark .selected .command-icon{background:var(--acid);color:#17291f}.dark .command-palette{box-shadow:0 28px 90px #0009,0 4px #657b25}.dark .line-numbers{color:#6f7a73}.dark .active-line-underline{border-color:#b7d93d}.dark .settings-menu{box-shadow:0 18px 54px #0008,0 3px #0b100d}.dark .local-disclaimer i{box-shadow:0 0 0 3px #254234}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes palette-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:700px){.tabs-bar{padding-left:8px}.tab-item{min-width:126px}.editor-toolbar{padding:12px 16px}.editor-meta span:last-child{display:none}.editor-wrap{grid-template-columns:48px}.editor{padding:22px 20px}.line-numbers>div{padding:22px 10px 22px 4px}.editor-footer{padding:10px 16px}.footer-prompt{display:none}.command-palette{padding:18px}.command-category{display:none}.command-row{grid-template-columns:40px minmax(0,1fr) 20px}.palette-meta span:last-child{display:none}}@media(max-width:450px){.editor-meta{display:none}.editor-toolbar{justify-content:flex-end}.editor-actions button{padding:6px 8px}.editor-footer>button:not(.command-trigger){display:none}.palette-backdrop{padding:10px}.command-palette{max-height:calc(100vh - 20px);border-radius:14px}.palette-title>strong{font-size:19px}}
