:root{font-family:Segoe UI,Aptos,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button{color:inherit}.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}.app-shell{color-scheme:dark;--page:#181818;--rail:#181818;--surface:#1f1f1f;--paper:#1e1e1e;--field:#252526;--ink:#cccccc;--muted:#8b949e;--line:#2b2b2b;--line-strong:#3c3c3c;--accent:#3794ff;--accent-soft:#0078d429;--run:#0e639c;--run-hover:#1177bb;--console:#121212;--console-ink:#d4d4d4;--selection:#264f78;--syntax-keyword:#c586c0;--syntax-fn:#dcdcaa;--syntax-string:#ce9178;--syntax-number:#b5cea8;min-height:100vh;color:var(--ink);background:var(--page)}.app-shell[data-palette=github]{--page:#0d1117;--rail:#0d1117;--surface:#161b22;--paper:#0d1117;--field:#21262d;--ink:#e6edf3;--muted:#7d8590;--line:#21262d;--line-strong:#30363d;--accent:#58a6ff;--accent-soft:#388bfd26;--run:#238636;--run-hover:#2ea043;--console:#090d11;--console-ink:#e6edf3;--selection:#1f6feb4d;--syntax-keyword:#ff7b72;--syntax-fn:#d2a8ff;--syntax-string:#a5d6ff;--syntax-number:#79c0ff}.app-shell[data-palette=tokyo]{--page:#16161e;--rail:#16161e;--surface:#1a1b26;--paper:#1a1b26;--field:#24283b;--ink:#c0caf5;--muted:#787c99;--line:#24283b;--line-strong:#3b4261;--accent:#7aa2f7;--accent-soft:#7aa2f724;--run:#3d59a1;--run-hover:#4e6ec2;--console:#13131a;--console-ink:#c0caf5;--selection:#33467c;--syntax-keyword:#bb9af7;--syntax-fn:#7aa2f7;--syntax-string:#9ece6a;--syntax-number:#ff9e64}.app-shell[data-palette=onedark]{--page:#21252b;--rail:#21252b;--surface:#282c34;--paper:#282c34;--field:#2c313a;--ink:#abb2bf;--muted:#7f848e;--line:#181a1f;--line-strong:#3e4451;--accent:#61afef;--accent-soft:#61afef24;--run:#3b82f6;--run-hover:#2563eb;--console:#1b1e23;--console-ink:#abb2bf;--selection:#3e4451;--syntax-keyword:#c678dd;--syntax-fn:#61afef;--syntax-string:#98c379;--syntax-number:#d19a66}.app-shell[data-palette=dracula]{--page:#191a21;--rail:#21222c;--surface:#282a36;--paper:#282a36;--field:#343746;--ink:#f8f8f2;--muted:#6272a4;--line:#343746;--line-strong:#44475a;--accent:#bd93f9;--accent-soft:#bd93f926;--run:#7c3aed;--run-hover:#6d28d9;--console:#15161c;--console-ink:#f8f8f2;--selection:#44475a;--syntax-keyword:#ff79c6;--syntax-fn:#50fa7b;--syntax-string:#f1fa8c;--syntax-number:#bd93f9}.topbar{position:relative;z-index:10;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:18px;border-bottom:1px solid var(--line);background:var(--surface)}.brand-wrap,.topbar-controls,.language-control,.mode-control,.palette-trigger,.run-button{display:flex;align-items:center}.brand-wrap{min-width:190px;gap:8px}.wordmark{font-size:25px;font-weight:750;letter-spacing:-1.35px;color:var(--ink)}.wordmark span{color:var(--run)}.topbar-controls{gap:9px}.account-button{max-width:220px;height:38px;overflow:hidden;padding:0 12px;border:1px solid var(--line-strong);border-radius:7px;background:var(--accent-soft);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;font-size:13px}.account-button:hover{border-color:var(--accent)}.auth-overlay{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:16px;background:#101b15a6}.auth-dialog{width:min(100%,400px);padding:22px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);box-shadow:0 18px 48px #0005}.auth-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:17px}.auth-heading strong{overflow:hidden;text-overflow:ellipsis}.auth-heading button{width:28px;height:28px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;font-size:20px}.auth-heading button:hover{background:var(--accent-soft)}.auth-dialog p{color:var(--muted);font-size:13px;line-height:1.5}.auth-dialog form,.auth-dialog label{display:grid;gap:7px}.auth-dialog form{gap:14px}.auth-dialog label{font-size:12px;font-weight:600}.auth-dialog input{width:100%;height:40px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;outline:none;background:var(--paper);color:var(--ink);font-size:14px}.auth-dialog input:focus-visible{border-color:var(--accent)}.auth-primary{width:100%;min-height:40px;margin-top:5px;border:0;border-radius:6px;background:var(--accent);color:var(--surface);cursor:pointer;font-weight:650}.auth-primary:disabled{opacity:.55;cursor:wait}.auth-dialog .auth-message{margin-bottom:0;color:var(--run)}.auth-dialog .auth-privacy-link{margin:16px 0 0;text-align:center}.auth-privacy-link a{color:var(--muted);text-underline-offset:3px}.sync-retry{min-height:26px;padding:0 7px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--ink);cursor:pointer;font-size:11px}.language-control{gap:2px;padding:3px;border:1px solid var(--line-strong);border-radius:7px;color:var(--muted)}.language-control>svg{margin:0 5px}.language-control button{min-width:36px;height:32px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.language-control button[aria-pressed=true]{background:var(--accent);color:var(--surface);font-weight:650}.mode-control,.palette-trigger{height:38px;display:flex;gap:8px;align-items:center;padding:0 11px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--ink);cursor:pointer;font-size:13px}.mode-control:hover,.palette-trigger:hover,.language-control button:hover{background:var(--accent-soft)}.palette-control{position:relative}.palette-trigger{max-width:166px;white-space:nowrap}.swatch{display:inline-block;flex:0 0 15px;width:15px;height:15px;border:1px solid color-mix(in srgb,var(--swatch) 72%,var(--ink));border-radius:50%;background:var(--swatch)}.palette-menu{position:absolute;z-index:20;top:45px;right:0;width:176px;padding:5px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);box-shadow:0 8px 22px #19221d24}.palette-menu button{display:flex;align-items:center;gap:10px;width:100%;min-height:42px;padding:8px 9px;border:0;border-radius:6px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.palette-menu button:hover,.palette-menu button[aria-pressed=true]{background:var(--accent-soft)}.run-button{min-height:42px;justify-content:center;gap:9px;padding:0 16px;border:1px solid transparent;border-radius:7px;background:var(--run);color:#fffdf9;font-weight:650;font-size:13px;cursor:pointer;transition:background .15s ease,transform .15s ease}.run-button:hover:not(:disabled){background:var(--run-hover);transform:translateY(-1px)}.run-button:disabled{opacity:.7;cursor:wait}.shortcut{margin-left:3px;opacity:.82;font-size:10px;font-weight:500}.run-button:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.drag-handle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:2px}.mobile-menu{display:none!important}.workspace{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:calc(100vh - 62px)}.sidebar{position:relative;display:flex;flex-direction:column;padding:24px 13px 17px;background:var(--rail);border-right:1px solid var(--line)}.sidebar-heading{padding:0 10px 20px}.sidebar-kicker,.outline-heading{display:block;color:var(--muted);font-size:12px;font-weight:650}.sidebar-kicker{margin-bottom:8px}.exercise-title-input{width:100%;min-height:32px;padding:2px 5px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink);font-family:inherit;font-size:14px;font-weight:650;line-height:1.35}.exercise-title-input:hover{border-color:var(--line)}.exercise-title-input:focus-visible{border-color:var(--accent)}.exercise-switcher{margin:0 4px 13px;padding:0 5px 11px;border-bottom:1px solid var(--line-strong)}.exercise-switcher-heading{display:flex;justify-content:space-between;align-items:center;padding:4px 5px 7px;color:var(--muted);font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.exercise-switcher-heading span{color:var(--muted);font-size:10px;font-weight:500}.exercise-list{display:grid;gap:2px;max-height:190px;overflow:auto}.exercise-option{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 7px;border:0;border-radius:4px;background:transparent;color:var(--muted);text-align:left;font-family:inherit;font-size:12px;cursor:pointer}.exercise-option:hover,.exercise-option.is-active{background:var(--surface);color:var(--ink)}.exercise-option.is-active{box-shadow:inset 2px 0 var(--accent)}.exercise-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--line-strong)}.exercise-option.is-active .exercise-dot{background:var(--accent)}.exercise-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-exercise-button{display:flex;align-items:center;gap:7px;min-height:35px;width:100%;margin-top:5px;padding:0 7px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--accent);font-size:12px;font-weight:600;text-align:left;cursor:pointer}.new-exercise-button:hover{border-color:var(--line);background:var(--surface)}.outline-heading{display:flex;align-items:center;gap:8px;padding:11px 9px;border-top:1px solid var(--line-strong)}.outline-nav{display:grid;gap:3px}.outline-item{min-height:42px;display:flex;align-items:center;gap:9px;width:100%;padding:0 9px;border:0;border-radius:6px;background:transparent;color:var(--muted);text-align:left;font-size:13px;cursor:pointer}.outline-item:hover{background:var(--surface);color:var(--ink)}.outline-code{display:inline-flex;min-width:44px;color:var(--accent);font-size:10px;font-weight:750;letter-spacing:.025em}.outline-nested{padding-left:22px}.sidebar-note{margin-top:auto;padding:12px 9px 0;border-top:1px solid var(--line-strong);color:var(--muted);font-size:12px;line-height:1.5}.main-area{min-width:0;padding:0 23px 30px}.crumb-row{height:46px;display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.crumb-separator{color:var(--line-strong)}.save-state{display:flex;align-items:center;gap:5px;margin-left:auto;color:var(--muted);font-size:12px}.save-state svg{color:var(--accent)}.save-state.error,.save-state.error svg{color:#bd5543}.recovery-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:10px 13px;border:1px solid var(--line-strong);border-radius:7px;background:var(--accent-soft);font-size:13px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start;max-width:1680px;margin:0 auto}.content-grid.is-file{grid-template-columns:minmax(0,1fr)}.editor-column{min-width:0}.document-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 1px 14px}.document-heading h1{margin:0;font-size:22px;letter-spacing:-.4px;font-weight:670}.document-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}.document-heading-actions{display:flex;align-items:center;gap:9px}.language-stamp,.section-mark{padding:4px 7px;border:1px solid var(--line-strong);border-radius:4px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.05em;white-space:nowrap}.export-button,.text-button,.small-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 8px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.export-button:hover,.text-button:hover,.small-action:hover{background:var(--accent-soft);color:var(--ink)}.paper-frame{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.paper-topline{height:39px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:12px}.paper-topline span:first-child{color:var(--ink);font-weight:650}.paper-table-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:42px;padding:5px 9px;border-bottom:1px solid var(--line);background:var(--surface)}.table-tool-button,.tdol-link-select{min-height:32px;padding:0 9px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);font-size:12px}.table-tool-button{cursor:pointer}.table-tool-button:hover:not(:disabled){background:var(--accent-soft)}.table-tool-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.7}.tdol-link-select{flex:1 1 165px;min-width:145px;cursor:pointer}.detached-select{flex:1 1 140px}.paper-body{height:min(var(--available-body-height,520px),var(--canvas-height,600px));min-height:120px;overflow:auto;overscroll-behavior:auto;background:var(--paper)}.paper-canvas{position:relative;min-height:100%}.paper-section{width:calc(100% - 356px);margin:0 0 22px;scroll-margin-top:14px}.paper-section-heading{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:46px;padding:0 2px 7px}.paper-section-heading h2{margin:0;font-size:16px;font-weight:650}.paper-section-heading p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.35}.paper-editor{overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--paper)}.single-paper-editor{border:0;border-radius:0;background:transparent}.codemirror-host{width:100%;overflow:hidden}.cm-editor{height:100%;outline:none}.cm-content{white-space:pre-wrap;overflow-wrap:anywhere}.cm-tooltip-autocomplete{max-height:240px}.declaration-float{position:absolute;z-index:3;left:clamp(0px,var(--panel-x,66%),calc(100% - 308px));width:292px;overflow:hidden;border:1px solid var(--line-strong);border-radius:0;background:var(--paper);box-shadow:none}.declaration-head{position:relative;min-height:31px;display:flex;align-items:center;justify-content:center;padding:2px 27px;border-bottom:1px solid var(--line-strong);background:var(--paper);touch-action:none;cursor:grab}.declaration-head:active{cursor:grabbing}.declaration-head:hover .drag-handle,.declaration-head:focus-within .drag-handle{opacity:.65}.declaration-float:not(.type-float) .add-row{height:0;min-height:0;overflow:hidden;padding:0;border-top:0;opacity:0;transition:height .12s ease,opacity .12s ease}.declaration-float:not(.type-float).is-empty .add-row{height:30px;min-height:30px;border-top:1px solid var(--line);opacity:1}.declaration-float:not(.type-float):hover .add-row,.declaration-float:not(.type-float):focus-within .add-row{height:30px;min-height:30px;border-top:1px solid var(--line);opacity:1}.drag-handle{position:absolute;top:2px;left:2px;width:23px;height:24px;display:flex;align-items:center;justify-content:center;border:0;border-radius:0;background:transparent;color:var(--muted);opacity:.18;touch-action:none;cursor:grab}.drag-handle:hover,.drag-handle:focus-visible{opacity:1}.drag-handle:active{cursor:grabbing}.drag-handle:disabled{opacity:.5;cursor:default}.declaration-title{min-width:0;display:flex;justify-content:center}.declaration-title strong{font-size:13px;font-weight:650;text-align:center}.table-remove{position:absolute;right:2px;top:2px;width:25px;height:25px;margin:0;border:0;border-radius:0;background:transparent;opacity:0}.declaration-float:hover .table-remove,.declaration-float:focus-within .table-remove{opacity:.75}.declaration-table{width:100%;border-collapse:collapse;table-layout:fixed;background:var(--paper)}.declaration-table th{height:31px;padding:3px 6px;border-bottom:1px solid var(--line-strong);color:var(--ink);text-align:left;font-size:12px;font-weight:600}.declaration-table th:first-child{width:35%}.declaration-float:not(.type-float) .declaration-table th:nth-child(2),.declaration-float:not(.type-float) .declaration-table td:nth-child(2){border-left:1px solid var(--line)}.declaration-table th:last-child{width:0;padding:0;border:0}.declaration-table td{height:34px;padding:2px 4px;border-bottom:1px solid var(--line)}.declaration-float:not(.type-float) .declaration-table tbody td:nth-child(2){padding-right:32px}.declaration-table tbody tr:last-child td{border-bottom:0}.declaration-table tr{position:relative}.declaration-table td:last-child{width:0;padding:0;border:0}.declaration-table input,.declaration-table select{width:100%;height:31px;padding:0 6px;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:13px}.declaration-table select{cursor:pointer}.declaration-table input:hover,.declaration-table input:focus,.declaration-table select:hover,.declaration-table select:focus{background:var(--field);outline:1px solid var(--line-strong);outline-offset:-1px}.type-table td{height:auto;padding:0;vertical-align:top}.type-table textarea{display:block;width:100%;min-height:34px;height:auto;field-sizing:content;resize:none;overflow:hidden;padding:6px 8px;border:0;border-radius:0;background:transparent;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.45 ui-monospace,Cascadia Code,Consolas,monospace}.type-table textarea:hover,.type-table textarea:focus{background:var(--field);outline:1px solid var(--line-strong);outline-offset:-1px}.row-remove{position:absolute;z-index:1;top:50%;right:3px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:0;border-radius:0;background:var(--paper);color:var(--muted);opacity:0;pointer-events:none;transform:translateY(-50%);cursor:pointer}.declaration-table tr:hover .row-remove,.declaration-table tr:focus-within .row-remove{opacity:.85;pointer-events:auto}.row-remove{width:27px;height:28px;display:flex;align-items:center;justify-content:center;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.row-remove:hover{background:var(--accent-soft);color:var(--ink)}.add-row{width:100%;min-height:32px;display:flex;align-items:center;justify-content:center;gap:5px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.add-row:hover{background:var(--field);color:var(--ink)}.add-routine{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 12px;border:1px dashed var(--line-strong);border-radius:6px;background:transparent;color:var(--accent);cursor:pointer;font-size:13px}.add-routine:hover{background:var(--accent-soft)}.routine-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}.editor-actions{display:flex;align-items:center;gap:12px;padding-top:12px}.editor-actions .run-button{min-width:140px}.runner-note{color:var(--muted);font-size:12px;line-height:1.5}.output-panel,.brief-panel{min-width:0;padding:13px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.panel-heading h2{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:650}.panel-heading h2 svg{color:var(--accent)}.text-button{border:0;min-height:34px;background:transparent}.input-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;color:var(--muted);font-size:12px}.input-row code{color:var(--ink);font:12px ui-monospace,Consolas,monospace}.input-row input,.file-create input,.file-select-label select{min-width:0;height:36px;padding:0 8px;border:1px solid var(--line-strong);border-radius:5px;background:var(--field);color:var(--ink);font-size:13px}.input-row input{width:100px}.input-empty{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.console{min-height:120px;max-height:260px;overflow:auto;padding:12px 13px;border-radius:6px;background:var(--console);color:var(--console-ink);white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.5 ui-monospace,Cascadia Code,Consolas,monospace}.console-muted{color:color-mix(in srgb,var(--console-ink) 70%,transparent);font:12px/1.5 Segoe UI,system-ui,sans-serif}.console-full.has-error{border-color:color-mix(in srgb,var(--run) 65%,var(--line-strong))}.console-error-card{margin-top:10px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--run) 74%,var(--console));border-left:4px solid var(--run);border-radius:5px;background:color-mix(in srgb,var(--run) 18%,var(--console));color:var(--console-ink)}.console-error-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.console-error-head strong{color:#ffe0d7;font-size:13px}.console-error-icon{display:grid;flex:none;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--run);color:#fff;font-size:13px;font-weight:800}.console-error-location{padding:3px 7px;border:1px solid color-mix(in srgb,var(--run) 60%,transparent);border-radius:4px;color:#ffd1c3;font-size:11px;font-weight:650}.console-error-card p{margin:8px 0 10px;color:#fff2ee;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.console-error-jump{min-height:34px;padding:0 9px;border:1px solid color-mix(in srgb,#ffd1c3 52%,transparent);border-radius:4px;background:color-mix(in srgb,var(--run) 32%,var(--console));color:#fff2ee;font-size:12px;font-weight:650;cursor:pointer}.console-error-jump:hover{background:color-mix(in srgb,var(--run) 48%,var(--console))}.declaration-table tr.has-run-error td{background:color-mix(in srgb,var(--run) 22%,var(--paper))}.declaration-table tr.has-run-error td:first-child{box-shadow:inset 3px 0 var(--run)}.declaration-table tr.has-run-error input,.declaration-table tr.has-run-error textarea,.declaration-table tr.has-run-error select{color:var(--ink)}.cm-line.cm-error-line{outline:1px solid color-mix(in srgb,var(--run) 64%,transparent);outline-offset:-1px}.brief-panel h2{margin:0 0 9px;font-size:15px}.brief-panel p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.brief-tip{margin-top:13px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.5}.virtual-files{padding:0}.virtual-files summary{min-height:46px;display:flex;align-items:center;padding:0 13px;color:var(--ink);font-size:14px;font-weight:650;cursor:pointer;list-style:none}.virtual-files summary::-webkit-details-marker{display:none}.virtual-files summary:after{content:"⌄";margin-left:auto;color:var(--muted);font-size:17px}.virtual-files[open] summary:after{content:"⌃"}.file-note{margin:0;padding:0 13px 10px;color:var(--muted);font-size:11px;line-height:1.4}.file-controls{padding:0 13px 12px}.file-select-label{display:grid;gap:5px;margin:0 0 9px;color:var(--muted);font-size:11px}.file-select-label select{width:100%}.file-create{display:flex;gap:5px;margin-bottom:8px}.file-create input{flex:1;width:60px}.small-action{min-height:36px;padding:0 7px;font-size:11px}.virtual-file-content{width:100%;min-height:94px;resize:vertical;padding:9px;border:1px solid var(--line-strong);border-radius:5px;background:var(--field);color:var(--ink);white-space:pre-wrap;font:12px/1.5 ui-monospace,Cascadia Code,Consolas,monospace}.typed-file-preview{max-height:160px;overflow:auto;margin:0;padding:9px;border-radius:5px;background:var(--field);color:var(--ink);font:12px/1.5 ui-monospace,Consolas,monospace}.file-delete{margin-top:5px}.drawer-backdrop{display:none}@media(max-width:1400px)and (min-width:801px){.main-area{padding-right:20px;padding-left:20px}.console-dock{left:278px;right:20px}}@media(max-width:800px){.topbar{height:58px;padding:0 12px;gap:8px}.brand-wrap{min-width:0;gap:5px}.mobile-menu{width:42px;height:42px;display:flex!important;align-items:center;justify-content:center}.wordmark{font-size:22px}.topbar-controls{gap:5px}.language-control{padding:2px}.language-control>svg{display:none}.language-control button{min-width:42px;height:44px}.mode-control,.palette-trigger{width:44px;height:44px;justify-content:center;padding:0}.mode-control span,.palette-trigger>span:not(.swatch),.palette-trigger>svg{display:none}.palette-menu{right:-35px}.shortcut{display:none}.top-run{min-height:40px;padding:0 11px}.workspace{display:block;min-height:calc(100vh - 58px)}.sidebar{position:fixed;z-index:12;top:58px;bottom:0;left:0;width:min(290px,85vw);transform:translate(-102%);transition:transform .18s ease;box-shadow:none}.sidebar.is-open{transform:translate(0);box-shadow:12px 0 26px #11191224}.drawer-backdrop{position:fixed;z-index:11;inset:58px 0 0;display:block;border:0;background:#17201955}.sidebar .outline-item{min-height:44px}.main-area{padding:0 13px 24px}.crumb-row{height:39px}.content-grid{display:flex;flex-direction:column;gap:14px}.editor-column,.output-column{width:100%}.document-heading{padding-top:5px}.document-heading h1{font-size:19px}.document-heading p{font-size:12px}.document-heading-actions .export-button{width:38px;overflow:hidden;white-space:nowrap;font-size:0;padding:0}.paper-body{height:min(var(--available-body-height,520px),var(--canvas-height,600px));min-height:120px}.paper-canvas{display:flex;flex-direction:column;min-height:0!important}.paper-section{width:100%;margin-bottom:18px}.paper-section-heading h2{font-size:15px}.paper-section-heading p{font-size:12px}.declaration-float{position:relative;z-index:1;left:auto;top:auto!important;order:1;width:100%;margin:10px 0 4px}.single-paper-editor{order:0;width:100%}.single-paper-editor .cm-content{padding-right:14px!important}.drag-handle:disabled{display:none}.declaration-float:not(.type-float) .declaration-table thead th:first-child{padding-left:6px}.declaration-head{cursor:default;touch-action:auto}.declaration-head{min-height:36px}.declaration-table th{height:36px;font-size:12px}.declaration-table td{height:39px}.declaration-table input,.declaration-table select{height:34px;font-size:13px}.output-panel,.brief-panel{padding:12px}.virtual-files{padding:0}.virtual-files summary{min-height:46px}.console{min-height:100px}.editor-actions{align-items:flex-start;flex-direction:column;gap:9px}.editor-actions .run-button{width:100%;min-height:46px}.runner-note{padding:0 2px}}@media(max-width:430px){.top-run{display:none}}@media(max-width:360px){.topbar{height:101px;flex-wrap:wrap;gap:2px;padding:3px 9px}.brand-wrap{width:100%;height:42px}.topbar-controls{width:100%;justify-content:flex-end;gap:4px}.topbar-controls .account-button{max-width:118px;height:42px;padding:0 7px;font-size:11px}.topbar-controls .language-control button{min-width:44px}.topbar-controls .mode-control,.topbar-controls .palette-trigger{width:44px;height:42px}.workspace{min-height:calc(100vh - 101px)}.sidebar{top:101px}.drawer-backdrop{inset:101px 0 0}.main-area{padding-right:9px;padding-left:9px}.document-heading h1{font-size:17px}.paper-hint{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.paper-table-tools{flex-wrap:nowrap;gap:9px;min-height:40px;padding:4px 9px}.add-table-trigger{display:inline-flex;align-items:center;gap:5px}.table-tool-hint{color:var(--muted);font-size:11px}.declaration-head{padding-right:58px}.declaration-title{max-width:100%;min-width:0}.declaration-title strong{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-link-button{position:absolute;z-index:2;top:2px;right:30px;width:25px;height:25px;display:flex;align-items:center;justify-content:center;padding:0;border:0;background:var(--paper);color:var(--muted);opacity:.5;cursor:pointer}.table-link-button:hover,.table-link-button:focus-visible,.table-link-button.is-linking{opacity:1;color:var(--accent);background:var(--accent-soft)}.single-paper-editor.is-linking,.single-paper-editor.is-linking .cm-content{cursor:crosshair}.workspace-notice{position:fixed;z-index:44;left:50%;bottom:78px;max-width:min(92vw,560px);padding:10px 14px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--ink);box-shadow:0 6px 20px #0002;transform:translate(-50%);font-size:13px}.declaration-float .table-remove{pointer-events:none;opacity:0;cursor:pointer}.declaration-float:hover .table-remove,.declaration-float:focus-within .table-remove{pointer-events:auto;opacity:.75}.type-table td:first-child{position:relative;padding-right:30px}.type-table input,.type-table textarea{padding-right:32px}.type-cell-wrap{position:relative}.declaration-float.type-float{overflow:visible}.tdnt-suggestions{position:absolute;z-index:6;left:4px;right:30px;top:calc(100% + 2px);display:grid;padding:3px;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 5px 14px #0002}.tdnt-suggestions.is-above{top:auto;bottom:calc(100% + 2px)}.tdnt-suggestions button{min-height:32px;padding:4px 8px;border:0;background:transparent;color:var(--ink);text-align:left;font-size:12px;cursor:pointer}.tdnt-suggestions button:hover,.tdnt-suggestions button[aria-selected=true]{background:var(--accent-soft)}.table-connectors{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.table-connectors path{fill:none;stroke:var(--accent);stroke-width:1.25;stroke-dasharray:4 5;opacity:.46}.table-connectors .connector-preview{stroke-width:1.8;opacity:.85}.table-context-menu{position:fixed;z-index:50;min-width:210px;display:grid;padding:4px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);box-shadow:0 8px 22px #0003}.table-context-menu button{min-height:38px;padding:0 10px;border:0;border-radius:4px;background:transparent;color:var(--ink);text-align:left;font-size:13px;cursor:pointer}.table-context-menu button:hover,.table-context-menu button:focus-visible{background:var(--accent-soft);outline:0}.table-undo-toast{position:fixed;z-index:45;left:50%;bottom:20px;display:flex;align-items:center;gap:16px;min-height:48px;padding:5px 8px 5px 14px;border:1px solid var(--line-strong);border-radius:7px;background:var(--surface);color:var(--ink);box-shadow:0 6px 20px #0002;transform:translate(-50%);font-size:13px}.table-undo-toast button{min-height:36px;padding:0 10px;border:0;border-radius:4px;background:var(--accent-soft);color:var(--ink);cursor:pointer}.console-dock{margin:15px auto 0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.console-dock{position:fixed;z-index:9;left:281px;right:23px;bottom:12px;margin:0;border-radius:8px;box-shadow:0 8px 30px #00000024}.main-area{padding-bottom:calc(var(--console-height,190px) + 30px)}.console-dock-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.console-dock.is-collapsed{padding:7px 12px}.console-dock.is-collapsed .console-dock-head{margin-bottom:0}.console-toggle{min-height:36px;gap:6px}.console-toggle svg{transition:transform .14s ease}.console-toggle.is-collapsed svg{transform:rotate(180deg)}.console-dock.is-collapsed .console-dock-actions>.text-button:not(.console-toggle){display:none}.console-dock-head h2{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:650}.console-dock-head h2 svg{color:var(--accent)}.console-status{margin-left:4px;padding:3px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:550}.console-dock-actions{display:flex;gap:8px}.console-run{min-height:36px;padding:0 11px;gap:7px}.console-run .shortcut{font-size:10px}.console-full{min-height:96px;max-height:270px}.console-input-error{margin-top:7px;color:#ffb19e;font-size:12px}.paper-canvas:before{content:"";position:absolute;z-index:0;top:0;bottom:0;left:0;width:46px;border-right:1px solid var(--line);background:var(--field);pointer-events:none}.table-remove:hover{cursor:pointer;color:var(--run)}.outline-tree>summary,.outline-routine>summary{list-style:none;cursor:pointer}.outline-tree>summary::-webkit-details-marker,.outline-routine>summary::-webkit-details-marker{display:none}.outline-chevron{margin-left:auto;display:grid;place-items:center;color:var(--muted);transform:rotate(-90deg);transition:transform .14s ease}.outline-tree[open]>summary .outline-chevron,.outline-routine[open]>summary .outline-chevron{transform:rotate(0)}.outline-chevron svg{display:block}.outline-routine{display:grid}.outline-routine .outline-nested{padding-left:22px}.outline-routine:not([open]) .outline-nested{display:none}@media(prefers-reduced-motion:reduce){.outline-chevron{transition:none}}@media(prefers-reduced-motion:reduce){.console-toggle svg{transition:none}}@media(max-width:800px){.table-connectors,.table-tool-hint{display:none}.console-dock{padding:10px}.console-dock{left:10px;right:10px;bottom:10px}.paper-canvas:before{display:none}.console-full{max-height:220px}}.workspace-loading{display:grid;place-items:center;min-height:100vh;background:#181818;color:#3794ff;font:14px Segoe UI,system-ui,sans-serif}.project-actions{display:flex;gap:4px;margin:4px 2px 1px}.project-actions button{min-height:30px;flex:1;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--muted);font-size:10px;cursor:pointer}.project-actions button:last-child{flex:0 0 30px;display:grid;place-items:center;padding:0;font-size:18px;line-height:1}.project-actions button:hover{background:var(--surface);color:var(--ink)}.file-tree{display:flex;flex-direction:column;min-height:180px;flex:1;overflow:hidden;margin:0 4px 12px}.file-tree-heading{display:flex;align-items:center;justify-content:space-between;padding:7px 9px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.file-tree-heading div{display:flex;gap:3px}.file-tree-heading button{width:29px;height:29px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--accent);cursor:pointer}.file-tree-heading button:hover{border-color:var(--line);background:var(--surface)}.file-tree-create{display:flex;gap:4px;padding:4px 3px 8px}.file-tree-create input{min-width:0;flex:1;height:30px;padding:0 6px;border:1px solid var(--line-strong);border-radius:4px;background:var(--paper);color:var(--ink);font-size:11px}.file-tree-create button{border:1px solid var(--line-strong);border-radius:4px;background:var(--accent-soft);color:var(--ink);font-size:11px;cursor:pointer}.file-tree-list{flex:1;min-height:0;overflow:auto}.file-folder>summary{display:flex;align-items:center;gap:5px;min-height:28px;padding:0 7px;color:var(--muted);font-size:12px;cursor:pointer;list-style:none}.file-folder>summary::-webkit-details-marker{display:none}.file-folder-chevron{display:inline-block;width:10px;transform:rotate(-90deg);transition:transform .15s ease}.file-folder[open]>summary .file-folder-chevron{transform:rotate(0)}.file-folder-contents{margin-left:11px;border-left:1px solid var(--line)}.file-tree-row{display:flex;align-items:center;min-height:30px;border-radius:4px}.file-tree-row:hover,.file-tree-row.is-active{background:var(--surface)}.file-tree-row.is-active{box-shadow:inset 2px 0 var(--accent)}.file-tree-open{display:flex;align-items:center;gap:6px;min-width:0;flex:1;height:30px;padding:0 7px;border:0;background:transparent;color:var(--ink);text-align:left;font-size:12px;cursor:pointer}.file-tree-open span:last-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.file-tree-extension{flex:none;min-width:29px;color:var(--accent);font-size:9px;font-weight:750}.file-tree-actions{display:flex;padding-right:3px;opacity:0}.file-tree-row:hover .file-tree-actions,.file-tree-row:focus-within .file-tree-actions{opacity:1}.file-tree-actions button{width:26px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.file-tree-actions button:hover{background:var(--accent-soft);color:var(--ink)}.file-tree-actions .file-action-delete:hover{color:var(--run)}@media(hover:none){.file-tree-actions{opacity:1}}.file-tree-empty,.file-tree-drop-note{margin:8px;color:var(--muted);font-size:11px;line-height:1.4}.file-tree-drop-note{padding:8px 5px;border-top:1px solid var(--line)}.editor-tabs{display:flex;min-height:38px;overflow-x:auto;border-bottom:1px solid var(--line);background:var(--field)}.editor-tab{display:flex;align-items:center;flex:none;max-width:220px;border-right:1px solid var(--line);color:var(--muted)}.editor-tab.is-active{background:var(--paper);color:var(--ink);box-shadow:inset 0 2px var(--accent)}.editor-tab>button:first-child{min-width:0;max-width:180px;height:37px;overflow:hidden;padding:0 8px 0 12px;border:0;background:transparent;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:12px;cursor:pointer}.editor-tab-close{width:25px;height:28px;margin-right:3px;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.editor-tab-close:hover{background:var(--accent-soft);color:var(--ink)}.empty-file-editor{display:grid;place-items:center;min-height:520px;color:var(--muted);font-size:13px}.binary-editor{min-height:520px;padding:17px}.binary-editor-head,.binary-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.binary-editor-head strong{color:var(--ink);font-size:13px}.binary-editor textarea{width:100%;min-height:390px;margin:12px 0;padding:12px;resize:vertical;border:1px solid var(--line-strong);border-radius:5px;background:var(--field);color:var(--ink);font:12px/1.7 ui-monospace,Consolas,monospace;overflow-wrap:anywhere}.binary-editor-actions button,.console-stop{min-height:34px;padding:0 10px;border:1px solid var(--run);border-radius:5px;background:transparent;color:var(--run);font-size:12px;font-weight:650;cursor:pointer}.binary-editor-actions button:hover,.console-stop:hover{background:color-mix(in srgb,var(--run) 10%,transparent)}.binary-editor-actions button:disabled{opacity:.5;cursor:not-allowed}.console-stop{align-self:center}.console-trace{margin:0 0 9px}.console-trace summary{width:max-content;color:var(--console-ink);cursor:pointer;font-size:11px}.console-trace pre{max-height:180px;overflow:auto;margin:7px 0;color:var(--console-ink);white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:800px){.file-tree{min-height:120px}.document-heading h1{overflow-wrap:anywhere}.editor-tab>button:first-child{max-width:130px}.binary-editor{padding:10px}.console-stop{min-height:36px}}.workspace[hidden]{display:none!important}.topbar{height:54px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line-strong);background:color-mix(in srgb,var(--surface) 92%,var(--paper));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:20}.topbar-left{display:flex;align-items:center;gap:12px;height:100%;min-width:0}.brand-wrap{min-width:auto;display:flex;align-items:center;gap:8px}.brand-button{display:inline-flex;align-items:center;gap:9px;padding:5px 8px 5px 5px;border:0;border-radius:8px;background:transparent;cursor:pointer;transition:background .13s ease}.brand-button:hover{background:var(--field)}.brand-emblem{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:6px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));color:var(--accent);font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:11px;font-weight:800;letter-spacing:-.05em;flex-shrink:0}.topbar .wordmark{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif!important;font-size:18px;font-weight:760;letter-spacing:-.03em;color:var(--ink);line-height:1}.topbar .wordmark span{color:var(--run);margin-left:1px}.topbar-divider{width:1px;height:20px;background:var(--line-strong);opacity:.7;flex-shrink:0}.topbar-nav{display:flex;align-items:stretch;gap:2px;height:54px;padding:0;border:0;background:transparent}.topbar-nav-link{position:relative;display:inline-flex;align-items:center;height:100%;padding:0 13px;border:0;border-radius:0;background:transparent;color:var(--muted);font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif!important;font-size:13.5px;font-weight:550;cursor:pointer;white-space:nowrap;transition:color .13s ease}.topbar-nav-link:hover{color:var(--ink)}.topbar-nav-link:after{content:"";position:absolute;left:11px;right:11px;bottom:-1px;height:2.5px;border-radius:2px 2px 0 0;background:transparent;transition:background .14s ease,transform .14s ease}.topbar-nav-link:hover:after{background:var(--line-strong)}.topbar-nav-link[aria-current=page]{color:var(--ink);font-weight:660;background:transparent;box-shadow:none}.topbar-nav-link[aria-current=page]:after{background:var(--run)}.topbar-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:17px;margin-left:6px;padding:0 5px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:10.5px;font-weight:700;line-height:1}.topbar-controls{display:flex;align-items:center;gap:10px}.topbar-save-pill{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 6px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:520;white-space:nowrap}.topbar-save-pill svg{color:var(--accent)}.topbar-save-pill.error,.topbar-save-pill.error svg{color:var(--run)}.topbar-prefs{display:inline-flex;align-items:center;gap:5px;height:36px;padding:3px 4px;border:1px solid color-mix(in srgb,var(--line-strong) 88%,rgba(255,255,255,.08));border-radius:10px;background:color-mix(in srgb,var(--page) 82%,#000000);box-shadow:inset 0 1px 2px #00000061,0 1px #ffffff08}.topbar-prefs .language-control{height:28px;padding:2px;border:0;border-radius:7px;background:#ffffff06;display:inline-flex;align-items:center;gap:2px}.topbar-prefs .language-control button{min-width:32px;min-height:24px;height:24px;padding:0 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);font-size:11.5px;font-weight:700;letter-spacing:.04em;cursor:pointer;transition:background .13s ease,color .13s ease,border-color .13s ease,box-shadow .13s ease}.topbar-prefs .language-control button:hover:not([aria-pressed=true]){color:var(--ink);background:#ffffff0d}.topbar-prefs .language-control button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 24%,var(--surface));border-color:color-mix(in srgb,var(--accent) 52%,transparent);color:#fff;box-shadow:0 1px 3px #00000052}.prefs-sep{width:1px;height:16px;margin:0 1px;background:color-mix(in srgb,var(--line-strong) 85%,transparent);opacity:.85;flex-shrink:0}.topbar-prefs .palette-control{position:relative;display:inline-flex;align-items:center}.topbar-prefs .palette-trigger{min-height:28px;height:28px;max-width:none;padding:0 10px 0 9px;border:1px solid transparent;border-radius:7px;background:#ffffff06;color:var(--ink);font-size:12.5px;font-weight:600;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:background .13s ease,border-color .13s ease,box-shadow .13s ease}.topbar-prefs .palette-trigger:hover,.topbar-prefs .palette-trigger[aria-expanded=true]{background:color-mix(in srgb,var(--surface) 88%,var(--field));border-color:color-mix(in srgb,var(--line-strong) 92%,rgba(255,255,255,.1));box-shadow:0 1px 3px #00000047}.topbar-prefs .palette-trigger>svg{color:var(--muted);flex-shrink:0;transition:transform .15s ease,color .15s ease}.topbar-prefs .palette-trigger[aria-expanded=true]>svg{transform:rotate(180deg);color:var(--accent)}.topbar-prefs .palette-trigger .swatch{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:var(--swatch);border:1.5px solid rgba(255,255,255,.35);box-shadow:0 0 8px color-mix(in srgb,var(--swatch) 65%,transparent)}.topbar-prefs .palette-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:30;min-width:214px;padding:6px;border:1px solid color-mix(in srgb,var(--line-strong) 90%,rgba(255,255,255,.1));border-radius:11px;background:color-mix(in srgb,var(--surface) 96%,#000000);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 16px 38px #00000080,0 0 0 1px #ffffff08;display:grid;gap:2px}.palette-menu-section-label{padding:5px 9px 4px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.topbar-prefs .palette-menu button{min-height:32px;padding:0 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink);font-size:12.5px;font-weight:540;display:flex;align-items:center;gap:9px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.topbar-prefs .palette-menu button .swatch{flex:0 0 11px;width:11px;height:11px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);box-shadow:0 0 6px color-mix(in srgb,var(--swatch) 50%,transparent)}.palette-option-name{flex:1;text-align:left}.palette-option-check{display:inline-flex;align-items:center;color:var(--accent);margin-left:auto}.topbar-prefs .palette-menu button:hover{background:var(--field)}.topbar-prefs .palette-menu button[aria-pressed=true]{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 32%,transparent);color:#fff;font-weight:650}.topbar .account-button{min-height:34px;height:34px;padding:0 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 1px 2px #00000006;transition:border-color .12s ease,background .12s ease}.topbar .account-button:hover{border-color:var(--accent);background:var(--paper)}.topbar .account-button svg{color:var(--accent)}.site-page{min-height:calc(100vh - 54px);padding:28px 24px 72px;color:var(--ink)}.site-container{max-width:1240px;margin:0 auto;display:grid;gap:44px}.site-legal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.site-legal-footer a{color:var(--ink);text-underline-offset:3px}.site-resume-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:10px 16px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);font-size:13px}.site-resume-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted)}.site-resume-info strong{color:var(--ink)}.site-resume-pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.site-resume-meta{font-size:12px}.site-resume-actions{display:flex;align-items:center;gap:8px}.site-btn-inline{min-height:32px;padding:0 11px;border:1px solid var(--line-strong);border-radius:6px;background:var(--accent-soft);color:var(--ink);font-size:12px;font-weight:650;cursor:pointer}.site-btn-inline:hover{border-color:var(--accent)}.site-btn-inline.is-ghost{background:transparent;color:var(--muted)}.site-btn-inline.is-ghost:hover{color:var(--ink);background:var(--field)}.site-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:30px;align-items:center}.site-kicker-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.site-badge{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid var(--line-strong);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.site-design-tag{padding:4px 9px;border:1px dashed var(--line-strong);border-radius:999px;color:var(--muted);font-size:11px;font-weight:600}.site-hero-title{margin:0 0 14px;font-size:clamp(28px,3.4vw,42px);line-height:1.12;letter-spacing:-.03em;font-weight:760}.site-hero-lead{margin:0 0 22px;color:var(--muted);font-size:15.5px;line-height:1.62;max-width:58ch}.site-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:24px}.site-btn-primary,.site-btn-secondary,.site-btn-ghost{min-height:42px;padding:0 18px;border-radius:7px;font-size:14px;font-weight:650;cursor:pointer;transition:transform .13s ease,background .13s ease,border-color .13s ease}.site-btn-primary{border:1px solid transparent;background:var(--run);color:#fffdf9}.site-btn-primary:hover{background:var(--run-hover);transform:translateY(-1px)}.site-btn-secondary{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}.site-btn-secondary:hover{border-color:var(--accent);background:var(--accent-soft)}.site-btn-ghost{border:1px solid transparent;background:transparent;color:var(--muted)}.site-btn-ghost:hover{color:var(--ink);background:var(--accent-soft)}.site-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-stat-card{padding:11px 13px;border:1px solid var(--line);border-radius:7px;background:var(--surface);display:grid;gap:3px}.site-stat-card strong{font-size:13px;color:var(--accent);font-family:ui-monospace,Cascadia Code,Consolas,monospace}.site-stat-card span{font-size:12px;color:var(--muted)}.site-mockup{border:1px solid var(--line-strong);border-radius:8px;background:var(--paper);overflow:hidden;box-shadow:0 14px 36px #00000014}.site-mockup-tabs{display:flex;min-height:34px;border-bottom:1px solid var(--line);background:var(--field);font-size:12px}.site-mockup-tab{display:inline-flex;align-items:center;gap:8px;padding:0 12px;border-right:1px solid var(--line);color:var(--muted)}.site-mockup-tab.is-active{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:inset 0 2px var(--accent)}.site-mockup-topline{height:32px;padding:0 12px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--muted)}.site-mockup-topline span:first-child{color:var(--ink);font-weight:650}.site-mockup-tools{min-height:34px;padding:4px 10px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;align-items:center;gap:8px}.site-mockup-add-table{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid var(--line-strong);border-radius:4px;background:var(--paper);color:var(--ink);font-size:11px;font-weight:600}.site-mockup-tool-hint{color:var(--muted);font-size:11px}.site-mockup-canvas{position:relative;display:grid;grid-template-columns:minmax(0,1.32fr) minmax(185px,.88fr);gap:24px;padding:0 12px 12px 0;background:var(--paper);align-items:start}.site-mockup-editor{padding:10px 0 6px;font:11.5px/1.65 ui-monospace,Cascadia Code,Consolas,monospace}.site-mockup-line{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:baseline;min-height:19px}.site-mockup-line .ln{text-align:center;color:var(--muted);background:var(--field);border-right:1px solid var(--line);margin-right:10px;font-size:10.5px;-webkit-user-select:none;user-select:none}.site-mockup-line.is-routine-head .ln{background:var(--accent-soft);color:var(--ink);font-weight:650}.site-mockup-line .code-cell{white-space:pre;overflow:hidden;text-overflow:ellipsis}.site-mockup-proc-sig{display:inline;padding:1px 4px 1px 0;border-bottom:1px dashed var(--accent)}.site-mockup-editor .kw{color:var(--syntax-keyword, var(--run));font-weight:700}.site-mockup-editor .fn{color:var(--syntax-fn, var(--accent));font-weight:650}.site-mockup-editor .str{color:var(--syntax-string, var(--accent));font-weight:650}.site-mockup-editor .num{color:var(--syntax-number, var(--run))}.site-mockup-editor .op{color:var(--muted)}.site-mockup-connector{position:absolute;inset:0;width:100%;height:100%;color:var(--accent);pointer-events:none;z-index:2}.site-mockup-tables{padding-top:10px;display:grid;gap:8px;align-content:start;z-index:1}.site-mini-table{border:1px solid var(--line-strong);background:var(--paper);font-family:Segoe UI,system-ui,sans-serif;font-size:11px}.site-mini-table.is-linked{border-color:var(--accent)}.site-mini-table-head{padding:4px 8px;border-bottom:1px solid var(--line-strong);font-weight:650;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:6px}.site-mini-link-badge{padding:1px 5px;border-radius:3px;background:var(--accent-soft);color:var(--accent);font-size:9.5px;font-weight:700}.site-mini-table-cols{display:grid;grid-template-columns:38% 62%;border-bottom:1px solid var(--line-strong);background:var(--field);font-size:10px;font-weight:650;color:var(--ink)}.site-mini-table-cols span{padding:3px 6px}.site-mini-table-cols span:first-child{border-right:1px solid var(--line)}.site-mini-table-row{padding:5px 8px}.site-mini-table-row.mono{font:11px ui-monospace,Cascadia Code,Consolas,monospace}.site-mini-table-grid{display:grid;grid-template-columns:38% 62%}.site-mini-table-grid span{padding:4px 6px}.site-mini-table-grid span:first-child{border-right:1px solid var(--line);font-family:ui-monospace,Consolas,monospace}.site-mockup-console{padding:0;background:var(--console);color:var(--console-ink);border-top:1px solid color-mix(in srgb,var(--console-ink) 16%,transparent);font:12px/1.55 Cascadia Code,JetBrains Mono,Consolas,ui-monospace,monospace}.site-mockup-console-head{height:32px;padding:0 10px 0 12px;background:color-mix(in srgb,var(--console) 92%,#ffffff 8%);border-bottom:1px solid color-mix(in srgb,var(--console-ink) 12%,transparent);display:flex;align-items:stretch;justify-content:space-between;gap:8px;font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:11px;font-weight:650}.site-mockup-term-tab{height:100%;display:inline-flex;align-items:center;border-bottom:2px solid var(--accent);color:var(--console-ink);font-size:10.5px;font-weight:700;letter-spacing:.06em}.site-mockup-console-actions{display:flex;align-items:center;gap:6px}.site-mockup-console-head button{height:22px;padding:0 8px;border:1px solid color-mix(in srgb,#3fb950 50%,transparent);border-radius:3px;background:#23863633;color:#7ee787;font:600 10.5px/1 Cascadia Code,Consolas,ui-monospace,monospace;cursor:pointer}.site-mockup-console-head button:hover{background:#23863666;color:#fff}.site-mockup-console-head button.is-secondary{border-color:color-mix(in srgb,var(--console-ink) 20%,transparent);background:transparent;color:var(--console-ink)}.site-mockup-console-out{padding:9px 12px 11px;background:var(--console)}.site-section{display:grid;gap:20px}.site-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}.site-section-kicker{display:block;margin-bottom:5px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.site-section-head h2{margin:0;font-size:clamp(21px,2.4vw,28px);letter-spacing:-.02em}.site-section-head p{margin:0;max-width:54ch;color:var(--muted);font-size:14px;line-height:1.55}.site-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.site-feature-card{padding:20px;border:1px solid var(--line);border-radius:9px;background:var(--surface);display:grid;align-content:start;gap:9px}.site-feature-code{display:inline-block;width:max-content;padding:3px 7px;border-radius:4px;background:var(--accent-soft);color:var(--accent);font:700 10px/1.2 ui-monospace,Cascadia Code,Consolas,monospace;letter-spacing:.04em}.site-feature-card h3{margin:0;font-size:16px;line-height:1.35}.site-feature-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.site-templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.site-template-card{border:1px solid var(--line-strong);border-radius:9px;background:var(--paper);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.site-template-top{padding:18px 18px 12px}.site-template-tag{display:inline-block;margin-bottom:8px;padding:3px 7px;border:1px solid var(--line-strong);border-radius:4px;background:var(--field);color:var(--accent);font:700 10px ui-monospace,Consolas,monospace}.site-template-top h3{margin:0 0 7px;font-size:16px}.site-template-top p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.site-template-code{margin:0 18px 14px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--ink);font:11.5px/1.5 ui-monospace,Cascadia Code,Consolas,monospace;overflow-x:auto}.site-template-foot{padding:11px 18px;border-top:1px solid var(--line);background:var(--surface);display:flex;justify-content:flex-end}.site-template-btn{min-height:34px;padding:0 12px;border:1px solid var(--accent);border-radius:6px;background:var(--accent-soft);color:var(--ink);font-size:12px;font-weight:650;cursor:pointer}.site-template-btn:hover{background:var(--accent);color:var(--surface)}.site-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--line-strong)}.site-page-header h1{margin:10px 0 8px;font-size:clamp(24px,3vw,36px);letter-spacing:-.025em}.site-page-header p{margin:0;max-width:65ch;color:var(--muted);font-size:15px;line-height:1.55}.site-guide-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.site-guide-search{flex:1 1 320px;height:42px;padding:0 14px;border:1px solid var(--line-strong);border-radius:7px;background:var(--paper);color:var(--ink);font-size:14px}.site-guide-filters{display:flex;gap:6px;flex-wrap:wrap}.site-guide-filters button{min-height:36px;padding:0 12px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:650;cursor:pointer}.site-guide-filters button.is-active,.site-guide-filters button:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.site-guide-sections{display:grid;gap:20px}.site-guide-card{border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);overflow:hidden}.site-guide-card-head{padding:18px 20px;border-bottom:1px solid var(--line);background:var(--paper);display:grid;gap:6px}.site-guide-card-head h2{margin:0;font-size:18px}.site-guide-card-head p{margin:0;color:var(--muted);font-size:13px}.site-guide-items{display:grid}.site-guide-row{display:grid;grid-template-columns:minmax(240px,.95fr) 1.05fr;gap:18px;padding:16px 20px;border-bottom:1px solid var(--line);align-items:start}.site-guide-row:last-child{border-bottom:0}.site-guide-syntax{margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--ink);font:12px/1.55 ui-monospace,Cascadia Code,Consolas,monospace;white-space:pre-wrap}.site-guide-explain{margin:0;color:var(--muted);font-size:13.5px;line-height:1.6}.site-shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.site-shortcut-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:13px}.site-shortcut-card kbd{flex:none;padding:4px 8px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;background:var(--paper);color:var(--ink);font:650 11px ui-monospace,Consolas,monospace}.site-about-story{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}.site-about-story-main{padding:24px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.site-about-story-main h2{margin:0 0 12px;font-size:22px}.site-about-story-main p{margin:0 0 14px;color:var(--muted);font-size:14.5px;line-height:1.68}.site-about-story-main p:last-child{margin-bottom:0}.site-about-diagram{display:grid;gap:8px}.site-diagram-box{padding:15px 18px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);display:grid;gap:6px}.site-diagram-box.is-accent{border-color:var(--accent);background:var(--accent-soft)}.site-diagram-tag{font:700 10px ui-monospace,Consolas,monospace;color:var(--accent);letter-spacing:.05em}.site-diagram-sub{display:flex;flex-wrap:wrap;gap:6px}.site-diagram-sub span{padding:3px 8px;border:1px solid var(--line-strong);border-radius:4px;background:var(--paper);font-size:11px;color:var(--muted)}.site-diagram-arrow{text-align:center;color:var(--muted);font:650 11px ui-monospace,Consolas,monospace}.site-arch-list{display:grid;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);overflow:hidden}.site-arch-row{display:grid;grid-template-columns:280px 1fr;gap:18px;padding:15px 20px;border-bottom:1px solid var(--line);align-items:baseline}.site-arch-row:last-child{border-bottom:0}.site-arch-row strong{font-size:14px}.site-arch-row p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.55}.site-cta-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:24px 26px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface)}.site-cta-banner h3{margin:0 0 6px;font-size:19px}.site-cta-banner p{margin:0;color:var(--muted);font-size:13.5px}.site-cta-banner-actions{display:flex;gap:10px;flex-wrap:wrap}.app-shell[data-design=cahier] .topbar{background:color-mix(in srgb,var(--surface) 94%,var(--paper));border-bottom:1px solid var(--line-strong)}.app-shell[data-design=cahier] .document-heading h1,.app-shell[data-design=cahier] .site-hero-title,.app-shell[data-design=cahier] .site-section-head h2,.app-shell[data-design=cahier] .site-page-header h1{font-family:Georgia,Cambria,Times New Roman,serif;font-weight:700}.app-shell[data-design=cahier] .sidebar{background:var(--rail);border-right:1px solid var(--line-strong)}.app-shell[data-design=cahier] .sidebar-card{border-radius:8px;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 2px 6px #00000007}.app-shell[data-design=cahier] .paper-frame{border-radius:3px;border:1px solid var(--line-strong);box-shadow:4px 4px color-mix(in srgb,var(--line-strong) 70%,transparent)}.app-shell[data-design=cahier] .paper-canvas:before{border-right:2px solid color-mix(in srgb,var(--run) 42%,var(--line-strong))}.app-shell[data-design=cahier] .declaration-float{border:1px solid var(--line-strong);box-shadow:3px 3px color-mix(in srgb,var(--line-strong) 70%,transparent)}.app-shell[data-design=cahier] .console-dock{border-radius:3px;border:1px solid var(--line-strong);border-top:3px solid var(--accent);box-shadow:4px 4px #0000001f}.site-page.design-cahier{background-image:linear-gradient(to right,color-mix(in srgb,var(--run) 18%,transparent) 1px,transparent 1px),repeating-linear-gradient(to bottom,transparent 0px,transparent 27px,color-mix(in srgb,var(--line) 55%,transparent) 28px);background-size:100% 100%,100% 28px;background-position:42px 0,0 0}.site-page.design-cahier .site-feature-card,.site-page.design-cahier .site-template-card,.site-page.design-cahier .site-guide-card,.site-page.design-cahier .site-mockup{border-radius:3px;border-width:1px;border-color:var(--line-strong);background:var(--paper);box-shadow:4px 4px color-mix(in srgb,var(--line-strong) 65%,transparent)}@media(max-width:980px){.site-hero,.site-about-story,.site-guide-row,.site-arch-row{grid-template-columns:1fr}.topbar-save-pill{display:none}}@media(max-width:800px){.topbar{height:auto;min-height:54px;flex-wrap:wrap;padding:8px 12px 0;gap:8px}.topbar-left{display:contents}.brand-wrap{order:1}.topbar-controls{order:2;margin-left:auto}.topbar-divider{display:none}.topbar-prefs .language-control button{min-width:28px;height:24px}.topbar-nav{order:3;width:100%;height:38px;overflow-x:auto;justify-content:flex-start;border-top:1px solid var(--line)}.sidebar{top:94px}.drawer-backdrop{inset:94px 0 0}.site-page{padding:18px 13px 54px}.site-mockup-canvas{grid-template-columns:1fr;padding:0 10px 10px}.site-mockup-connector{display:none}.site-stats-grid{grid-template-columns:1fr}}.site-projects-header{align-items:center}.site-projects-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.site-projects-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.site-projects-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:560}.site-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.site-project-card{display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);overflow:hidden;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.site-project-card:hover{border-color:var(--accent);box-shadow:0 6px 20px #0000000c}.site-project-card.is-active{border-color:var(--accent);box-shadow:inset 0 2px 0 var(--accent),0 6px 18px #0000000a}.site-page.design-cahier .site-project-card{border-radius:3px;background:var(--paper);box-shadow:4px 4px color-mix(in srgb,var(--line-strong) 65%,transparent)}.site-page.design-blueprint .site-project-card{border-radius:0;border:1.5px solid var(--accent)}.site-project-card-top{padding:18px 18px 14px;display:grid;gap:13px}.site-project-card-title-row{display:flex;align-items:flex-start;gap:11px}.site-project-folder-icon{width:36px;height:36px;border-radius:8px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.site-project-title-wrap{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.site-project-title-input{flex:1 1 160px;min-width:0;height:32px;padding:0 7px;margin-left:-7px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink);font-size:16px;font-weight:700;letter-spacing:-.015em}.site-project-title-input:hover{border-color:var(--line-strong);background:var(--field)}.site-project-title-input:focus-visible{border-color:var(--accent);background:var(--paper)}.site-project-active-pill{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;flex-shrink:0}.site-project-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.site-project-badge{display:inline-flex;align-items:center;height:22px;padding:0 7px;border:1px solid var(--line);border-radius:4px;background:var(--field);color:var(--muted);font-size:11px;font-weight:600}.site-project-badge.mono{color:var(--accent);font-family:ui-monospace,Cascadia Code,Consolas,monospace}.site-project-files{display:grid;gap:6px;padding-top:8px;border-top:1px dashed var(--line)}.site-project-files-label{color:var(--muted);font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.site-project-files-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.site-project-file-chip{display:inline-flex;align-items:center;gap:5px;height:25px;padding:0 8px;border:1px solid var(--line-strong);border-radius:5px;background:var(--paper);color:var(--ink);font-size:11.5px;font-weight:560;cursor:pointer;transition:border-color .12s ease,background .12s ease}.site-project-file-chip:hover{border-color:var(--accent);background:var(--accent-soft)}.site-project-file-ext{color:var(--accent);font:800 9.5px ui-monospace,Consolas,monospace}.site-project-card-foot{padding:11px 18px;border-top:1px solid var(--line);background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:10px}.site-project-card-actions{display:flex;align-items:center;gap:6px}.site-project-icon-btn{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 9px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);color:var(--muted);font-size:11.5px;font-weight:600;cursor:pointer}.site-project-icon-btn:hover{color:var(--ink);border-color:var(--accent)}.site-project-icon-btn.is-danger:hover{color:var(--run);border-color:var(--run);background:color-mix(in srgb,var(--run) 10%,var(--surface))}.site-project-open-btn{display:inline-flex;align-items:center;height:32px;padding:0 13px;border:1px solid var(--accent);border-radius:6px;background:var(--accent-soft);color:var(--ink);font-size:12px;font-weight:650;cursor:pointer;transition:background .12s ease,color .12s ease}.site-project-open-btn:hover{background:var(--accent);color:var(--surface)}.app-shell .workspace.ide-workbench{display:grid;grid-template-columns:46px 248px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 24px;height:calc(100vh - 54px);min-height:calc(100vh - 54px);padding:0!important;gap:0!important;overflow:hidden;background:var(--page)}.app-shell[data-design=bento] .workspace.ide-workbench{height:calc(100vh - 64px);min-height:calc(100vh - 64px)}.app-shell .workspace.ide-workbench.is-explorer-closed{grid-template-columns:46px 0px minmax(0,1fr)}.ide-activity-bar{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:6px 0;background:color-mix(in srgb,var(--rail) 90%,var(--ink) 10%);border-right:1px solid var(--line-strong);z-index:6;-webkit-user-select:none;user-select:none}.ide-activity-top,.ide-activity-bottom{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%}.ide-activity-btn{position:relative;width:46px;height:40px;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .12s ease,background .12s ease}.ide-activity-btn:hover{color:var(--ink);background:color-mix(in srgb,var(--surface) 45%,transparent)}.ide-activity-btn.is-active{color:var(--ink)}.ide-activity-btn.is-active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2.5px;border-radius:0 2px 2px 0;background:var(--run)}.ide-activity-btn.ide-activity-run{color:var(--run)}.ide-activity-btn.ide-activity-run:hover:not(:disabled){background:color-mix(in srgb,var(--run) 14%,transparent)}.ide-activity-btn:disabled{opacity:.4;cursor:not-allowed}.ide-activity-badge{position:absolute;right:5px;bottom:5px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--surface);font-size:9.5px;font-weight:750;line-height:15px;text-align:center}.app-shell .workspace.ide-workbench .sidebar.ide-explorer{grid-column:2;grid-row:1;padding:0!important;margin:0!important;border:0!important;border-right:1px solid var(--line-strong)!important;border-radius:0!important;background:var(--rail)!important;box-shadow:none!important;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.workspace.ide-workbench.is-explorer-closed .sidebar.ide-explorer{border-right:0!important;visibility:hidden;pointer-events:none}.ide-explorer-titlebar{height:35px;padding:0 10px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;-webkit-user-select:none;user-select:none}.ide-explorer-projects-link{display:inline-flex;align-items:center;gap:4px;height:23px;padding:0 7px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--ink);font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;cursor:pointer}.ide-explorer-projects-link:hover{border-color:var(--accent);background:var(--accent-soft)}.ide-explorer-section{margin:0!important;padding:0!important;border:0!important}.ide-project-folder[open]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ide-section-header{height:26px;min-height:26px;padding:0 8px!important;margin:0!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;background:color-mix(in srgb,var(--surface) 60%,var(--rail));color:var(--ink)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.04em;text-transform:uppercase;display:flex!important;align-items:center;justify-content:flex-start!important;gap:4px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;flex-shrink:0}.ide-section-header::-webkit-details-marker{display:none}.ide-section-chevron,.ide-explorer .outline-heading .outline-chevron{margin-left:0!important;display:inline-grid;place-items:center;color:var(--muted);transform:rotate(-90deg);transition:transform .13s ease;flex-shrink:0}.ide-explorer-section[open]>.ide-section-header .ide-section-chevron,.ide-explorer-section[open]>.ide-section-header .outline-chevron{transform:rotate(0)}.ide-project-name-input{flex:1;min-width:0;height:20px!important;min-height:20px!important;padding:0 4px!important;border:1px solid transparent!important;border-radius:3px!important;background:transparent!important;color:var(--ink)!important;font-size:11px!important;font-weight:750!important;letter-spacing:.03em;text-transform:uppercase}.ide-project-name-input:hover{border-color:var(--line-strong)!important;background:var(--surface)!important}.ide-project-name-input:focus-visible{border-color:var(--accent)!important;background:var(--paper)!important;text-transform:none}.ide-project-folder-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ide-explorer .file-tree{margin:0!important;padding:2px 4px 4px;min-height:0!important;flex:1;display:flex;flex-direction:column;overflow:hidden}.ide-explorer .file-tree-heading{padding:4px 6px 3px;font-size:10px;font-weight:650}.ide-explorer .file-tree-heading button{width:24px;height:24px}.ide-explorer .file-tree-row{min-height:26px}.ide-explorer .file-tree-open{height:26px;padding:0 6px;font-size:12px}.ide-explorer .file-tree-drop-note{margin:4px 4px 2px;padding:4px 5px;font-size:10px;border-top:1px dashed var(--line)}.ide-explorer-bottom-sections{margin-top:auto;flex-shrink:0;display:flex;flex-direction:column;max-height:52%;overflow-y:auto;border-top:1px solid var(--line-strong)}.ide-explorer-bottom-sections>.ide-explorer-section:first-child>.ide-section-header{border-top:0!important}.ide-explorer .outline-nav{padding:4px;gap:1px;max-height:155px;overflow-y:auto}.ide-explorer .outline-item{min-height:26px;padding:0 7px;border-radius:4px;font-size:12px}.ide-section-badge{margin-left:auto;padding:1px 6px;border-radius:999px;background:var(--field);color:var(--muted)!important;font-size:10px!important;font-weight:700!important}.ide-projects-drawer-body{padding:6px;display:grid;gap:4px}.ide-explorer .exercise-list{max-height:125px}.ide-explorer .exercise-option{min-height:26px;font-size:12px}.ide-explorer .new-exercise-button{min-height:28px;margin-top:2px;font-size:11.5px}.app-shell .workspace.ide-workbench .main-area{grid-column:3;grid-row:1;padding:0!important;margin:0!important;min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--paper)}.app-shell .workspace.ide-workbench .content-grid,.app-shell .workspace.ide-workbench .editor-column,.app-shell .workspace.ide-workbench .paper-frame{flex:1;min-height:0;width:100%;max-width:none;margin:0;padding:0;border:0!important;border-radius:0!important;box-shadow:none!important;display:flex;flex-direction:column;overflow:hidden}.ide-tabbar-row{height:36px;min-height:36px;padding-right:8px;display:flex;align-items:stretch;justify-content:space-between;gap:8px;background:var(--field);border-bottom:1px solid var(--line);flex-shrink:0}.ide-tabbar-row .editor-tabs{flex:1;min-width:0;min-height:35px;padding:0!important;gap:0!important;border-bottom:0;background:transparent}.ide-tabbar-row .editor-tab{border-radius:0!important;border-top:0!important;border-left:0!important;border-bottom:0!important;border-right:1px solid var(--line)!important}.ide-tabbar-row .editor-tab.is-active{background:var(--paper);color:var(--ink);box-shadow:inset 0 2px 0 var(--run)}.ide-tabbar-row .editor-tab>button:first-child{height:35px;padding:0 8px 0 11px;display:inline-flex;align-items:center;gap:6px;font-size:12px}.ide-tab-ext{color:var(--accent);font:800 9.5px ui-monospace,Consolas,monospace;letter-spacing:.03em}.ide-tabbar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.ide-tabbar-actions .table-tool-button,.ide-tabbar-actions .ide-export-file-btn{min-height:26px;height:26px;padding:0 9px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--ink);font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px;cursor:pointer}.ide-tabbar-actions .table-tool-button:hover,.ide-tabbar-actions .ide-export-file-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.ide-top-run-btn{min-height:26px;height:26px;padding:0 11px;border:1px solid transparent;border-radius:4px;background:var(--run);color:#fffdf9;font-size:11.5px;font-weight:650;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.ide-top-run-btn:hover:not(:disabled){background:var(--run-hover)}.ide-top-run-btn:disabled{opacity:.55;cursor:not-allowed}.crumb-row.ide-breadcrumbs{height:26px;min-height:26px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);border-bottom:1px solid var(--line);font-size:11.5px;color:var(--muted);flex-shrink:0}.ide-crumb-path{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap}.ide-crumb-project{padding:1px 5px;margin-left:-5px;border:0;border-radius:3px;background:transparent;color:var(--muted);font-size:11.5px;cursor:pointer}.ide-crumb-project:hover{background:var(--field);color:var(--ink)}.ide-crumb-file{color:var(--ink);font-weight:600}.ide-crumb-algo{color:var(--accent);font:600 11px ui-monospace,Consolas,monospace}.ide-crumb-right{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.ide-crumb-right .save-state{margin-left:0;font-size:11px}.app-shell .workspace.ide-workbench .paper-body,.app-shell .workspace.ide-workbench .generic-file-editor,.app-shell .workspace.ide-workbench .binary-editor,.app-shell .workspace.ide-workbench .empty-file-editor{flex:1;height:auto!important;min-height:0;overflow:auto}.app-shell .workspace.ide-workbench .console-dock{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;margin:0!important;padding:0!important;border:0!important;border-top:1px solid color-mix(in srgb,var(--console-ink) 16%,var(--line-strong))!important;border-radius:0!important;background:var(--console)!important;color:var(--console-ink)!important;box-shadow:none!important;flex-shrink:0;z-index:4}.app-shell .workspace.ide-workbench .console-dock.is-collapsed{padding:0!important}.app-shell .workspace.ide-workbench .console-dock-head{height:32px;min-height:32px;margin:0!important;padding:0 10px 0 12px;background:color-mix(in srgb,var(--console) 92%,#ffffff 8%);border-bottom:1px solid color-mix(in srgb,var(--console-ink) 12%,transparent);display:flex;align-items:stretch;justify-content:space-between;gap:12px}.app-shell .workspace.ide-workbench .console-dock.is-collapsed .console-dock-head{border-bottom:0}.terminal-tabs-bar{display:flex;align-items:center;gap:10px;min-width:0}.app-shell .workspace.ide-workbench .console-dock-head h2.terminal-panel-tab{height:100%;margin:0;padding:0 2px;border-bottom:2px solid var(--accent);display:inline-flex;align-items:center;gap:6px;font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--console-ink)}.app-shell .workspace.ide-workbench .console-dock-head h2.terminal-panel-tab svg{color:var(--accent)}.terminal-session-badge{display:inline-flex;align-items:center;gap:6px;height:20px;padding:0 8px;border-radius:3px;background:color-mix(in srgb,var(--console-ink) 7%,transparent);border:1px solid color-mix(in srgb,var(--console-ink) 12%,transparent);color:color-mix(in srgb,var(--console-ink) 75%,transparent);font:600 11px/1 Cascadia Code,JetBrains Mono,Consolas,ui-monospace,monospace;white-space:nowrap}.terminal-session-dot{width:6px;height:6px;border-radius:50%;background:#3fb950;flex-shrink:0}.terminal-session-dot.is-running{background:#58a6ff;box-shadow:0 0 6px #58a6ff}.terminal-session-dot.is-waiting{background:#d29922;box-shadow:0 0 6px #d29922}.terminal-session-dot.is-error{background:#f85149}.app-shell .workspace.ide-workbench .console-status{margin:0;padding:2px 7px;border-radius:3px;background:#d2992226;border:1px solid #d2992266;color:#e3b341;font:600 10.5px/1.2 Cascadia Code,Consolas,ui-monospace,monospace}.app-shell .workspace.ide-workbench .console-dock-actions{display:flex;align-items:center;gap:5px}.app-shell .workspace.ide-workbench .console-dock-actions .console-run{min-height:22px;height:22px;padding:0 9px;border:1px solid color-mix(in srgb,#3fb950 50%,transparent);border-radius:3px;background:#23863633;color:#7ee787;font:600 11px/1 Cascadia Code,Consolas,ui-monospace,monospace;gap:6px;transform:none!important}.app-shell .workspace.ide-workbench .console-dock-actions .console-run:hover:not(:disabled){background:#23863666;border-color:#3fb950;color:#fff}.app-shell .workspace.ide-workbench .console-dock-actions .console-run .shortcut{margin-left:2px;opacity:.7;font-size:10px}.app-shell .workspace.ide-workbench .console-dock-actions .console-stop{min-height:22px;height:22px;padding:0 8px;border:1px solid #f8514980;border-radius:3px;background:#f8514922;color:#ff7b72;font:600 11px/1 ui-monospace,Consolas,monospace}.app-shell .workspace.ide-workbench .console-dock-actions .text-button{min-height:22px;height:22px;padding:0 7px;border:1px solid transparent;border-radius:3px;background:transparent;color:color-mix(in srgb,var(--console-ink) 72%,transparent);font-size:11px;gap:4px}.app-shell .workspace.ide-workbench .console-dock-actions .text-button:hover{background:color-mix(in srgb,var(--console-ink) 12%,transparent);color:var(--console-ink);border-color:color-mix(in srgb,var(--console-ink) 16%,transparent)}.terminal-viewport-wrap{background:var(--console)}.app-shell .workspace.ide-workbench .console-full{min-height:108px;max-height:185px;margin:0!important;padding:10px 14px 12px!important;border:0!important;border-radius:0!important;background:var(--console)!important;color:var(--console-ink)!important;font:12.5px/1.6 Cascadia Code,JetBrains Mono,Fira Code,Consolas,ui-monospace,monospace!important}.terminal-command-line{display:flex;align-items:baseline;flex-wrap:wrap;margin-bottom:6px;padding-bottom:5px;border-bottom:1px dashed color-mix(in srgb,var(--console-ink) 10%,transparent);font:12px/1.5 Cascadia Code,JetBrains Mono,Consolas,ui-monospace,monospace}.terminal-prompt-user{color:#3fb950;font-weight:700}.terminal-prompt-sep{color:color-mix(in srgb,var(--console-ink) 60%,transparent);margin:0 1px}.terminal-prompt-path{color:#58a6ff;font-weight:700}.terminal-prompt-char{color:color-mix(in srgb,var(--console-ink) 70%,transparent);margin:0 7px 0 2px;font-weight:700}.terminal-command-text{color:var(--console-ink);font-weight:600}.terminal-idle-hint{color:color-mix(in srgb,var(--console-ink) 45%,transparent);font-weight:400;font-style:italic}.app-shell .workspace.ide-workbench .console-output-line{padding:0;line-height:1.25;color:var(--console-ink);font-family:Cascadia Code,JetBrains Mono,Consolas,ui-monospace,monospace}.terminal-idle-line,.terminal-process-meta{margin-top:2px}.app-shell .workspace.ide-workbench .console-muted{color:color-mix(in srgb,var(--console-ink) 48%,transparent)!important;font:12px/1.5 Cascadia Code,JetBrains Mono,Consolas,ui-monospace,monospace!important}.terminal-exit-line{margin-top:6px;padding-top:4px;border-top:1px dotted color-mix(in srgb,var(--console-ink) 10%,transparent);color:color-mix(in srgb,var(--console-ink) 42%,transparent);font:11px/1.4 Cascadia Code,Consolas,ui-monospace,monospace}.app-shell .workspace.ide-workbench .console-inline-input{display:inline;margin:0;padding:0}.app-shell .workspace.ide-workbench .console-inline-input input{width:min(24ch,50vw);height:1.3em;padding:0;border:0;outline:0;background:transparent;color:var(--console-ink);caret-color:#3fb950;font:inherit}.app-shell .workspace.ide-workbench .console-error-card{margin-top:8px!important;padding:8px 12px!important;border:1px solid #f8514940!important;border-left:3px solid #f85149!important;border-radius:2px!important;background:#f8514914!important;color:#ffdcd7!important;font-family:Cascadia Code,JetBrains Mono,Consolas,ui-monospace,monospace!important}.app-shell .workspace.ide-workbench .console-error-icon{width:auto!important;height:18px!important;padding:0 5px;border-radius:2px!important;background:#f85149!important;color:#fff!important;font:800 10px/18px ui-monospace,Consolas,monospace!important;letter-spacing:.04em}.app-shell .workspace.ide-workbench .console-error-head strong{color:#ff7b72!important;font-size:12px!important}.app-shell .workspace.ide-workbench .console-error-location{padding:1px 6px!important;border:1px solid #f8514966!important;border-radius:2px!important;background:#f851491f;color:#ffa198!important;font-size:11px!important}.app-shell .workspace.ide-workbench .console-error-card p{margin:6px 0 4px!important;color:#ffdcd7!important;font-size:12px!important}.ide-statusbar{grid-column:1 / -1;grid-row:2;height:24px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:color-mix(in srgb,var(--rail) 88%,var(--ink) 12%);border-top:1px solid var(--line-strong);color:var(--muted);font-size:11px;-webkit-user-select:none;user-select:none;z-index:15}.ide-statusbar-left,.ide-statusbar-right{display:flex;align-items:center;gap:12px;min-width:0}.ide-statusbar-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:var(--muted);font-size:11px}.ide-statusbar-item.is-project{height:18px;padding:0 6px;border:0;border-radius:3px;background:var(--accent-soft);color:var(--accent);font-weight:650;cursor:pointer}.ide-statusbar-item.is-project:hover{background:var(--accent);color:var(--surface)}@media(max-width:1180px){.ide-breadcrumbs .table-tool-hint{display:none}}@media(max-width:800px){.topbar{z-index:30}.drawer-backdrop{z-index:24}.app-shell .workspace.ide-workbench,.app-shell[data-design=bento] .workspace.ide-workbench,.app-shell .workspace.ide-workbench.is-explorer-closed{display:flex;flex-direction:column;height:calc(100vh - 94px);min-height:calc(100vh - 94px);overflow:hidden}.ide-activity-bar{display:none}.app-shell .workspace.ide-workbench .sidebar.ide-explorer{position:fixed;top:94px;bottom:0;left:0;width:min(290px,85vw);z-index:25;visibility:visible;pointer-events:auto}.ide-export-file-btn span,.ide-statusbar-right{display:none}}.auth-overlay{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:18px;background:#090d1699;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto;align-items:safe center}.auth-dialog{width:min(100%,440px);padding:24px 24px 22px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:0 24px 64px #00000045,0 0 0 1px color-mix(in srgb,var(--line-strong) 40%,transparent);display:grid;gap:18px}.auth-dialog-guest{width:min(100%,420px);padding:28px 28px 20px;gap:20px}.auth-dialog-guest .auth-heading{position:relative;justify-content:center;padding:4px 18px 0;text-align:center}.auth-dialog-guest .auth-brand-head{justify-content:center}.auth-dialog-guest .auth-close-btn{position:absolute;top:-8px;right:-14px}.auth-dialog-guest .auth-brand-titles h2{font-size:21px}.auth-dialog-guest .auth-subtitle{font-size:13px;line-height:1.5}.auth-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.auth-brand-head{display:flex;align-items:center;gap:12px;min-width:0}.auth-brand-badge{width:38px;height:38px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line-strong));background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.auth-brand-titles{display:grid;gap:3px;min-width:0}.auth-brand-titles h2{margin:0;font-size:17px;font-weight:720;letter-spacing:-.02em;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-subtitle{font-size:12.5px;color:var(--muted);line-height:1.35}.auth-dialog:not(.auth-dialog-guest) .auth-subtitle{overflow-wrap:anywhere}.auth-close-btn{width:30px;height:30px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.auth-close-btn:hover{background:var(--field);border-color:var(--line);color:var(--ink)}.auth-form{display:grid;gap:15px}.auth-field{display:grid;gap:6px}.auth-field-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.auth-field-label{font-size:12.5px;font-weight:650;color:var(--ink)}.auth-field-hint{font-size:11px;font-weight:560;color:var(--muted)}.auth-input-wrap{position:relative;display:flex;align-items:center;height:42px;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper);transition:border-color .12s ease,box-shadow .12s ease}.auth-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-input-icon{width:38px;height:100%;display:grid;place-items:center;color:var(--muted);pointer-events:none;flex-shrink:0}.auth-dialog .auth-input-wrap input{flex:1;min-width:0;height:100%;padding:0 12px 0 0;border:0!important;border-radius:8px;outline:none!important;background:transparent!important;color:var(--ink);font-size:14px}.auth-dialog .auth-input-wrap input::placeholder{color:color-mix(in srgb,var(--muted) 65%,transparent)}.auth-password-toggle{height:30px;margin-right:5px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--field);color:var(--muted);font-size:11.5px;font-weight:620;display:inline-flex;align-items:center;gap:5px;cursor:pointer;flex-shrink:0;transition:background .12s ease,color .12s ease,border-color .12s ease}.auth-password-toggle:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.auth-password-toggle[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.auth-dialog .auth-primary{width:100%;min-height:42px;height:42px;margin-top:2px;border:1px solid transparent;border-radius:8px;background:var(--run);color:#fff;font-size:14px;font-weight:680;cursor:pointer;transition:background .13s ease,transform .13s ease}.auth-dialog .auth-primary:hover:not(:disabled){background:var(--run-hover);transform:translateY(-1px)}.auth-dialog-guest .auth-form .auth-primary{display:flex;align-items:center;justify-content:center;gap:10px;height:46px;border-color:color-mix(in srgb,var(--run) 75%,#15191f);background:linear-gradient(180deg,color-mix(in srgb,var(--run) 84%,white),var(--run));box-shadow:0 2px color-mix(in srgb,var(--run) 55%,#10141c),0 8px 18px color-mix(in srgb,var(--run) 22%,transparent)}.auth-dialog-guest .auth-form .auth-primary:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--run-hover) 80%,white),var(--run-hover));box-shadow:0 3px color-mix(in srgb,var(--run) 55%,#10141c),0 11px 22px color-mix(in srgb,var(--run) 30%,transparent)}.auth-dialog-guest .auth-form .auth-primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px color-mix(in srgb,var(--run) 55%,#10141c)}.auth-dialog-guest .auth-form .auth-primary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.auth-primary-arrow{font-size:19px;line-height:1;font-weight:500;transition:transform .13s ease}.auth-primary:hover .auth-primary-arrow{transform:translate(3px)}.auth-code-error{color:#d65757!important}.auth-code-success{color:#2ea043!important}.auth-spam-hint{margin:-5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.auth-code-actions{display:flex;justify-content:space-between;gap:12px}.auth-code-actions button{border:0;padding:3px 0;background:none;color:var(--accent);cursor:pointer;font-size:12px}.auth-code-actions button:disabled{opacity:.5;cursor:wait}.auth-enter-code{border:0;padding:4px 0;background:none;color:var(--accent);text-align:left;font-size:12px;cursor:pointer}.auth-social{display:grid;gap:9px}.auth-social-divider{display:flex;align-items:center;gap:12px;margin-top:10px;color:var(--muted);font-size:12px}.auth-social-divider:before,.auth-social-divider:after{content:"";flex:1;height:1px;background:var(--line-strong)}.auth-social button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:42px;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:500;cursor:pointer}.auth-social button:hover:not(:disabled){background:var(--accent-soft)}.auth-social .discord-button{border-color:#5e69d3;background:#5e69d3;color:#fff}.auth-social .discord-button:hover:not(:disabled){border-color:#515dc6;background:#515dc6}.auth-social button:disabled{opacity:.5;cursor:wait}.auth-provider-mark{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px}.auth-provider-mark img{display:block;width:18px;height:18px;object-fit:contain}.discord-mark{border-radius:5px}.discord-mark img{width:17px;height:13px}.auth-switch{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;padding-top:17px;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px}.auth-switch button{border:0;padding:2px;background:transparent;color:var(--ink);cursor:pointer;font:inherit;font-weight:700}.auth-switch button:hover{color:var(--accent)}.auth-dialog-guest .auth-privacy-link{margin:-10px 0 0;font-size:11px}.auth-error-banner{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #f8514966;border-left:3.5px solid #f85149;border-radius:8px;background:color-mix(in srgb,#f85149 12%,var(--paper))}.auth-error-badge{width:20px;height:20px;border-radius:50%;background:#f85149;color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;flex-shrink:0}.auth-error-banner .auth-message{margin:0!important;color:var(--ink)!important;font-size:12.5px!important;font-weight:560;line-height:1.45}.auth-signed-in-body{display:grid;gap:18px}.auth-status-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line-strong);border-radius:10px;background:var(--paper)}.auth-status-dot{width:10px;height:10px;margin-top:4px;border-radius:50%;background:#3fb950;box-shadow:0 0 0 3px #3fb95033;flex-shrink:0}.auth-status-dot.auth-status-error{background:#e36b62;box-shadow:0 0 0 3px #e36b6233}.auth-status-card strong{display:block;margin-bottom:3px;font-size:13.5px;color:var(--ink)}.auth-status-card p{margin:0;font-size:12.5px;color:var(--muted);line-height:1.5}.auth-signout-btn{justify-self:end;padding:8px 12px;border:1px solid var(--line-strong);border-radius:7px;background:var(--paper);color:var(--muted);font:inherit;font-size:12.5px;cursor:pointer}.auth-signout-btn:hover:not(:disabled){color:var(--ink);border-color:var(--accent)}.auth-signout-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-signout-btn:disabled{opacity:.5;cursor:wait}
