:root{--gold-glow:#d48b1c1f;--success-color:#a8c98a;--error-color:#d9735a;--warning-color:#efa030;--info-color:#7ac4b8;--console-text:var(--text-primary);--console-result:var(--success-color);--console-error:var(--error-color);--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--shadow-lg:0 4px 16px #0009;--shadow-ink:#00000059;--backdrop:#000000bf;--backdrop-docs:#000000d1;--backdrop-loading:#000000eb;--bg-input:#ffffff0f;--font-family:"DM Sans", sans-serif;--font-mono:"Iosevka", "SF Mono", "Fira Code", monospace;--font-size-sm:12px;--font-size-md:13px;--safe-top:0px;--safe-right:0px;--safe-bottom:0px;--safe-left:0px}:root[data-theme=light]{--gold-glow:#9456021f;--success-color:#456f20;--error-color:#ae3c26;--warning-color:#965500;--info-color:#127065;--shadow-lg:0 4px 16px #3c280f29;--shadow-ink:#3c280f24;--backdrop:#2a201666;--backdrop-docs:#2a201673;--backdrop-loading:#fbf8f2eb;--bg-input:#fff}html.pwa{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-family);background-color:var(--bg-base);color:var(--text-primary);min-height:100vh;line-height:1.5}a{color:var(--gold-bright);text-decoration:none}a:hover{color:var(--text-primary)}kbd{font-family:var(--font-mono);background:var(--bg-panel);border:1px solid var(--border-str);color:var(--text-sec);border-radius:3px;padding:1px 6px;font-size:10px}code{font-family:var(--font-mono);font-size:var(--font-size-sm);background:var(--bg-panel);border-radius:var(--radius-sm);color:var(--text-primary);padding:2px 5px}pre{font-family:var(--font-mono);font-size:var(--font-size-md);background:var(--bg-surface);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);color:var(--text-primary);overflow-x:auto}#app{flex-direction:column;height:100vh;padding-top:60px;display:flex;overflow:hidden}.main{flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.repl-container{flex:1;gap:0;min-width:0;min-height:0;display:flex}.split-handle{background:var(--border-mid);cursor:col-resize;z-index:5;touch-action:none;-webkit-user-select:none;user-select:none;flex:0 0 6px;width:6px;position:relative}.split-handle:hover,.split-handle.is-dragging,.split-handle:focus-visible{background:var(--gold);outline:none}.split-handle:before{content:"";position:absolute;inset:0 -6px}body.split-dragging,body.split-dragging *{-webkit-user-select:none!important;user-select:none!important;cursor:inherit!important}#ios-a2hs-hint{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:1000;background:var(--bg-panel);color:var(--text);border:1px solid var(--border-mid);box-shadow:0 4px 16px var(--shadow-ink);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex;position:fixed}.editor-pane{flex:0 1 calc(var(--split-h,.56) * 100%);border-right:1px solid var(--border-mid);background:var(--bg-base);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.editor-header{background:var(--bg-panel);border-bottom:1px solid var(--border);flex-direction:column-reverse;flex-shrink:0;display:flex}.editor-tabs,.editor-actions{scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;flex-shrink:0;align-items:stretch;height:36px;min-height:36px;display:flex;overflow:auto hidden}.editor-actions{border-bottom:1px solid var(--border);align-items:center;gap:4px;padding:0 8px}.editor-actions>.editor-brand{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:23px;height:20px;margin-inline:2px auto}@media (width>=769px){.editor-actions>.editor-brand{display:none}.editor-actions>.editor-brand+*{margin-inline-start:auto}}.editor-actions>*{flex:none}.editor-tabs::-webkit-scrollbar{display:none}.editor-actions::-webkit-scrollbar{display:none}.editor-tabs.has-overflow,.editor-actions.has-overflow{-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 16px calc(100% - 16px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 16px calc(100% - 16px),#0000 100%)}.editor-tabs[data-dragging="1"],.editor-actions[data-dragging="1"]{cursor:grabbing}.editor-tabs[data-dragging="1"] *,.editor-actions[data-dragging="1"] *{pointer-events:none}.tab-button{font-family:var(--font-mono);color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:1.5px solid #0000;align-items:center;height:100%;padding:0 12px;font-size:12px;display:flex}.tab-button:hover{color:var(--text-sec)}.tab-button.active{color:var(--text-primary);border-bottom-color:var(--gold);background:0 0}.tab-label{pointer-events:none}.tab-lock{opacity:.75;pointer-events:none;flex-shrink:0;margin-right:6px;font-size:9px;line-height:1}.tab-button.read-only .tab-label{font-style:italic}.tab-close{text-align:center;width:14px;height:14px;color:var(--text-dim);opacity:0;border-radius:3px;flex-shrink:0;margin-left:8px;font-size:14px;line-height:14px}.tab-button:hover .tab-close,.tab-button.active .tab-close{opacity:1}.tab-close:hover{color:var(--text-primary);background:color-mix(in srgb, var(--text-primary) 18%, transparent)}.tab-rename{font-family:var(--font-mono);background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:3px;outline:none;width:9em;height:20px;padding:0 4px;font-size:12px}.tab-new{color:var(--text-dim)}.tab-new:hover{color:var(--text-sec)}.tab-button[data-dragging="1"]{opacity:.55;background:color-mix(in srgb, var(--gold) 8%, transparent);cursor:grabbing}.tab-button[data-drop-before="1"]{box-shadow:inset 2px 0 0 var(--gold)}.drop-overlay{pointer-events:none;background:color-mix(in srgb, var(--bg-panel) 85%, transparent);-webkit-backdrop-filter:blur(4px);border:2px dashed var(--gold);z-index:40;border-radius:6px;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.editor-pane.drag-over .drop-overlay{display:flex}.drop-overlay-message{color:var(--text-primary);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:24px;font-size:14px;display:flex}.drop-overlay-message svg{color:var(--gold)}.drop-overlay-message code{font-family:var(--font-mono);color:var(--gold);background:color-mix(in srgb, var(--gold) 12%, transparent);border-radius:3px;padding:1px 6px;font-size:13px}.editor-wrapper{flex:1;position:relative;overflow:hidden}.monaco-editor{width:100%;height:100%}#editor-loading{background:var(--bg-base);color:var(--text-sec);font-size:var(--font-size-md);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex;position:absolute;inset:0}.editor-footer{height:24px;padding:0 var(--spacing-md);background:var(--bg-panel);border-top:1px solid var(--border);color:var(--text-dim);font-size:11px;font-family:var(--font-family);letter-spacing:.02em;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.status-indicator{align-items:center;gap:5px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.dot.online{background:var(--success-color)}.dot.offline{background:var(--error-color)}.dot.loading{background:var(--gold-fill);animation:.8s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.lsp-status{margin-left:auto;margin-right:var(--spacing-md);color:var(--text-dim)}.lsp-status[hidden]{display:none}.cursor-position{color:var(--text-dim);letter-spacing:.02em;font-size:11px}.console-pane{background:var(--bg-base);flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex;overflow:hidden}.console-header{background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:36px;padding:0 16px;display:flex}.console-title{font-family:var(--font-mono);color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.console-actions{gap:4px;display:flex}.console-wrapper{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.console-output{font-family:var(--font-mono);color:var(--console-text);flex:1;padding:10px 16px;font-size:12.5px;line-height:1.6;overflow-y:auto}.console-output::-webkit-scrollbar{width:4px}.console-output::-webkit-scrollbar-track{background:0 0}.console-output::-webkit-scrollbar-thumb{background:var(--border-str);border-radius:2px}.console-welcome{padding:4px 0 8px}.console-welcome p{margin-bottom:4px}.console-welcome pre{background:var(--bg-surface);padding:var(--spacing-sm);border-radius:var(--radius-sm);margin-top:var(--spacing-sm);color:var(--console-text);border-left:2px solid var(--border-str)}.console-output pre{background:var(--bg-surface);color:var(--console-text);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);margin:var(--spacing-xs) 0;white-space:pre-wrap;word-break:break-all;font-family:var(--font-mono);font-size:var(--font-size-md);border-left:2px solid var(--border-str);line-height:1.65}.console-output pre.console-flush{margin:0}.console-prompt{color:var(--gold);-webkit-user-select:none;user-select:none}.console-result{color:var(--console-result)}.console-error{color:var(--console-error)}#console-loading{background:color-mix(in srgb, var(--bg-base) 85%, transparent);color:var(--text-sec);font-size:var(--font-size-md);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex;position:absolute;inset:0}.repl-input-row{border-top:1px solid var(--border-mid);background:var(--bg-surface);flex-shrink:0;align-items:center;gap:8px;height:44px;padding:0 16px;display:flex;position:relative}.repl-input-row:focus-within{border-top-color:var(--gold-dim);box-shadow:0 -2px 12px color-mix(in srgb, var(--gold) 8%, transparent)}.repl-input-row.waiting{border-top-color:var(--gold);box-shadow:0 -2px 16px color-mix(in srgb, var(--gold) 18%, transparent);animation:1.8s ease-in-out infinite replWait}@keyframes replWait{0%,to{box-shadow:0 -2px 16px color-mix(in srgb, var(--gold) 18%, transparent)}50%{box-shadow:0 -2px 24px color-mix(in srgb, var(--gold) 35%, transparent)}}.repl-prompt{color:var(--gold);font-family:var(--font-mono);-webkit-user-select:none;user-select:none;white-space:nowrap;opacity:.9;font-size:12.5px}.repl-input-row:focus-within .repl-prompt{opacity:1}.console-hover-card{z-index:70;border:1px solid var(--border-mid);background:var(--bg-surface);max-width:420px;max-height:240px;color:var(--text-primary);font-family:var(--font-mono);white-space:pre-wrap;box-shadow:0 6px 24px var(--shadow-ink);pointer-events:none;border-radius:6px;padding:8px 10px;font-size:11.5px;line-height:1.5;position:fixed;overflow:auto}.repl-input{flex:1;min-width:0;height:22px;position:relative;overflow:hidden}.repl-input .monaco-editor,.repl-input .monaco-editor .overflow-guard,.repl-input .monaco-editor .margin,.repl-input .monaco-editor-background{background:0 0}#repl-suggest-overlay{z-index:60;background:0 0;width:0;height:0;position:absolute;top:0;left:0}.repl-input.repl-input-empty:after{content:attr(data-placeholder);pointer-events:none;color:var(--text-dim);font-family:var(--font-mono);font-size:12.5px;line-height:1.6;position:absolute;top:1px;left:0}.repl-input-disabled{opacity:.35;cursor:not-allowed}.console-footer{height:24px;padding:0 var(--spacing-md);background:var(--bg-panel);border-top:1px solid var(--border);color:var(--text-dim);font-size:11px;font-family:var(--font-family);letter-spacing:.02em;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.execution-time{color:var(--text-dim)}.doc-pane{border-left:1px solid var(--border-mid);background:var(--bg-panel);flex-direction:column;flex-shrink:0;width:300px;min-height:0;display:flex;overflow:hidden}.doc-header{background:var(--bg-panel);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:36px;padding:0 12px 0 16px;display:flex}.doc-title{font-family:var(--font-mono);color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.doc-actions{flex-shrink:0;gap:4px;display:flex}.doc-search-row{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.doc-search-icon{color:var(--text-dim);flex-shrink:0}.doc-search-input{color:var(--text-primary);font-family:var(--font-mono);caret-color:var(--gold);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:12px}.doc-search-input::placeholder{color:var(--text-dim)}.doc-search-results{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;max-height:220px;display:none;overflow-y:auto}.doc-search-results::-webkit-scrollbar{width:4px}.doc-search-results::-webkit-scrollbar-track{background:0 0}.doc-search-results::-webkit-scrollbar-thumb{background:var(--border-str);border-radius:2px}.doc-result-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:baseline;gap:8px;padding:6px 14px;display:flex}.doc-result-item:last-child{border-bottom:none}.doc-result-item:hover,.doc-result-item.active{background:var(--bg-hover)}.doc-result-name{font-family:var(--font-mono);color:var(--gold-bright);flex-shrink:0;font-size:12px}.doc-result-kind{color:var(--text-dim);background:var(--bg-panel);letter-spacing:.03em;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:10px}.doc-result-spice{font-family:var(--font-mono);color:var(--info-color);background:var(--bg-panel);letter-spacing:.03em;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:10px}.doc-summary{font-family:var(--font-mono);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.6}.doc-result-summary{color:var(--text-sec);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;overflow:hidden}.doc-no-results{color:var(--text-dim);font-size:12px;font-family:var(--font-mono);padding:10px 14px}.doc-body{font-family:var(--font-mono);color:var(--text-sec);white-space:pre-wrap;word-break:break-word;flex:1;padding:12px 16px;font-size:12px;line-height:1.65;overflow-y:auto}.doc-body::-webkit-scrollbar{width:4px}.doc-body::-webkit-scrollbar-track{background:0 0}.doc-body::-webkit-scrollbar-thumb{background:var(--border-str);border-radius:2px}.doc-placeholder{color:var(--text-dim);font-family:var(--font-family);white-space:normal;font-size:12px;font-style:italic}.doc-placeholder code{font-family:var(--font-mono);color:var(--gold-dim);background:var(--bg-hover);border-radius:3px;padding:1px 4px}.doc-footer{border-top:1px solid var(--border);background:var(--bg-panel);flex-shrink:0;padding:8px 16px}.doc-open-link{color:var(--text-dim);letter-spacing:.02em;font-size:11px;text-decoration:none}.doc-open-link:hover{color:var(--gold-bright)}@media (width<=1200px){.doc-pane{width:260px}}.btn[hidden]{display:none}.btn{font-family:var(--font-family);border:1px solid var(--border-str);border-radius:var(--radius-md);color:var(--text-sec);cursor:pointer;letter-spacing:.01em;background:0 0;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:400;line-height:1;display:inline-flex}.btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-str)}.btn:active{transform:scale(.97)}.btn-icon{padding:5px 10px}.btn-sm{padding:3px 8px;font-size:11px}.select{font-family:var(--font-family);background:var(--bg-panel);border:1px solid var(--border-mid);color:var(--text-sec);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%238A7D6E'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;border-radius:5px;outline:none;padding:4px 24px 4px 8px;font-size:12px}.select:hover{border-color:var(--border-str);color:var(--text-primary)}.select option{background:var(--bg-panel)}.btn-close{width:28px;height:28px;color:var(--text-sec);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:flex}.btn-close:hover{background:var(--bg-hover);color:var(--text-primary)}.overlay{background:var(--backdrop);z-index:1000;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay.loading{background:var(--backdrop-loading)}@keyframes slideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.loading-content{padding:var(--spacing-xl);text-align:center;justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex}.loading-content p{color:var(--text-sec);font-size:var(--font-size-md)}.loading-content progress{width:200px;accent-color:var(--gold)}.spinner{border:2px solid var(--border-mid);border-top-color:var(--gold);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.spinner.large{border-width:3px;width:44px;height:44px}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{padding:var(--spacing-xl);justify-content:center;align-items:center;gap:var(--spacing-md);color:var(--text-sec);font-size:var(--font-size-md);flex-direction:column;display:flex}.footer{background:var(--bg-panel);border-top:1px solid var(--border);padding:10px var(--spacing-lg);flex-shrink:0}.footer-content{text-align:center;color:var(--text-dim);letter-spacing:.02em;font-size:11px}.footer-content a{color:var(--text-sec)}.footer-content a:hover{color:var(--gold-bright)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-str);border-radius:2px}@media (width<=1024px){html,body{height:100dvh;min-height:0;overflow:hidden}#app{height:100dvh}.main{flex:auto;min-height:0}.repl-container{grid-template-rows:calc(var(--split-v,.5) * 100%) 6px 1fr;flex:auto;grid-template-columns:1fr;gap:0;height:100%;min-height:0;display:grid}.split-handle{cursor:row-resize;width:100%;height:6px}.split-handle:before{width:auto;height:auto;inset:-10px 0}.editor-pane{border-right:none;border-bottom:1px solid var(--border-mid);min-width:0;min-height:0;overflow:hidden}.console-pane{width:100%;min-width:0;min-height:0;overflow:hidden}.doc-pane{display:none!important}.footer,html.pwa site-nav,html.pwa .footer{display:none}html.pwa #app{height:auto;padding-top:var(--safe-top);padding-bottom:0;padding-left:var(--safe-left);padding-right:var(--safe-right);position:fixed;inset:0}html.pwa .console-footer{height:calc(24px + var(--safe-bottom));padding-bottom:var(--safe-bottom)}}html.pwa{min-height:min(100lvh, calc(100% + env(safe-area-inset-top,0px)))}.status-bar-fill{display:none}@supports (-webkit-touch-callout:none){html.pwa{--safe-top:max(11px, env(safe-area-inset-top,0px))}html.pwa .status-bar-fill{height:var(--safe-top);background:var(--bg-base);z-index:2147483647;pointer-events:none;display:block;position:fixed;top:0;left:0;right:0}}.more-wrap,.examples-wrap{display:inline-flex;position:relative}.more-menu{background:var(--bg-panel);border:1px solid var(--border);min-width:180px;box-shadow:0 8px 24px var(--shadow-ink);z-index:9999;border-radius:6px;flex-direction:column;max-height:calc(100dvh - 72px);padding:4px;display:flex;position:fixed;overflow-y:auto}.more-menu[hidden]{display:none}.more-item{color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:8px 12px;font-size:13px}.more-item:hover,.more-item:focus{background:var(--bg-hover);outline:none}.more-sep{background:var(--border);height:1px;margin:4px 0}.more-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);padding:6px 12px 2px;font-size:11px}.symbols-wrap{display:inline-flex;position:relative}.symbols-menu{min-width:260px;max-width:380px}.symbols-list{flex-direction:column;max-height:min(50vh,360px);display:flex;overflow-y:auto}.symbol-item{color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:baseline;gap:10px;padding:5px 12px;font-size:13px;display:flex}.symbol-item:hover,.symbol-item:focus{background:var(--bg-hover);outline:none}.symbol-item-name{font-family:var(--font-mono,monospace);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.symbol-item-kind{color:var(--text-dim);white-space:nowrap;flex:none;font-size:11px}.symbol-item.is-current{box-shadow:inset 2px 0 0 var(--gold)}.symbol-item.is-current .symbol-item-name{color:var(--gold-bright)}.symbols-empty{color:var(--text-dim);padding:6px 12px;font-size:12px;font-style:italic}.symbols-filter{border-top:1px solid var(--border);border-radius:0 0 4px 4px;justify-content:space-between;align-items:baseline;gap:12px;margin-top:4px;display:flex}.symbols-filter-key{color:var(--text-dim);white-space:nowrap;font-size:11px}.lang-wrap{flex:none;display:inline-flex;position:relative}.btn-lang{font-size:12px;font-family:var(--font-mono,monospace);color:var(--text-primary);white-space:nowrap;flex:none;min-width:58px;padding:5px 10px;line-height:16px}#lang-btn-label{white-space:nowrap;overflow:visible}.lang-menu{min-width:260px;max-width:380px}.lang-group+.lang-group{margin-top:6px}.lang-group-name{text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);padding:4px 12px 2px;font-size:10px}.lang-group .lang-row{padding-left:22px}.lang-row{color:var(--text-primary);cursor:pointer;border-radius:4px;align-items:baseline;gap:6px;padding:5px 12px;font-size:13px;display:flex}.lang-row:hover{background:var(--bg-hover)}.lang-row input{accent-color:var(--gold);flex:none;align-self:center;margin:0}.lang-row-name{white-space:nowrap;font-family:var(--font-mono);font-size:12px}.lang-chip{text-transform:uppercase;letter-spacing:.5px;color:var(--gold);border:1px solid var(--gold);white-space:nowrap;border-radius:3px;align-self:center;padding:0 4px;font-size:9px}.engine-label{margin-top:6px}.engine-row{align-items:flex-start}.engine-row input{align-self:flex-start;margin-top:3px}.engine-row-text{flex-direction:column;gap:1px;display:flex}.engine-row-name{font-size:13px}.engine-row-note{color:var(--text-dim);white-space:normal;font-size:11px}.engine-chip{margin-inline-start:6px}.engine-turns-row{padding-inline-start:22px}.engine-turns-row[hidden]{display:none}.console-engine{color:var(--text-dim);font-size:12px}.lang-menu-footer{color:var(--text-dim);border-top:1px solid var(--border);margin-top:4px;padding:6px 12px 2px;font-size:11px}@media (width<=600px){.editor-actions>#clear-btn,.editor-actions>#format-btn,.editor-actions>#share-btn,.editor-actions>#download-btn,.editor-actions>#open-btn,.editor-actions>.lang-wrap,.editor-actions>.symbols-wrap,.editor-actions>.examples-wrap{display:none}}.more-item[role=menuitemcheckbox]{display:block}.monaco-editor .iPadShowKeyboard{display:none!important}@media (pointer:coarse),(width<=1024px){.monaco-editor .inputarea,#doc-search{font-size:16px!important}}@media (pointer:coarse){#repl-input .monaco-editor,#repl-input .monaco-editor .view-line,#repl-input.repl-input-empty:after{font-size:16px!important}#repl-input{height:26px}}.docs-overlay{background:var(--backdrop-docs);justify-content:stretch;align-items:stretch;padding:2vh 2vw}.docs-shell{background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-lg);flex-direction:column;flex:1;animation:.18s ease-out slideIn;display:flex;overflow:hidden}.docs-topbar{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;align-items:center;gap:10px;height:44px;padding:0 10px 0 8px;display:flex}.docs-brand{font-family:var(--font-family);color:var(--gold);letter-spacing:.04em;flex-shrink:0;font-size:13px;font-weight:600}#docs-article h1:has(+.guide-toc){border-bottom:none;padding-bottom:0}.docs-search-wrap{flex:1;align-items:center;min-width:0;display:flex;position:relative}.docs-search-icon{color:var(--text-dim);pointer-events:none;position:absolute;left:9px}.docs-search-input{width:100%;height:28px;font-family:var(--font-mono);color:var(--text-primary);background:var(--bg-base);border:1px solid var(--border-mid);border-radius:var(--radius-md);outline:none;padding:0 10px 0 28px;font-size:12px}.docs-search-input:focus{border-color:var(--gold-line)}.docs-search-input::placeholder{color:var(--text-dim)}.docs-status{color:var(--text-sec);white-space:nowrap;flex-shrink:0;font-size:11px}.docs-status.partial{color:var(--amber)}.docs-close-return{display:none}.docs-shell :where(nav){z-index:auto;gap:0;align-items:initial;-webkit-backdrop-filter:none;background:0 0;border-bottom:none;height:auto;padding:0;display:block;position:static;top:auto;left:auto;right:auto}.docs-body{flex:1;min-height:0;display:flex}.docs-nav{border-right:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;width:260px;padding:12px 8px 24px;overflow-y:auto}.docs-overlay.nav-collapsed .docs-nav{display:none}.docs-nav-section{margin-bottom:16px}.docs-nav-section h4{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin:0 0 6px 8px;font-size:10px}.docs-view-tablist{border:1px solid var(--border);border-radius:var(--radius-md);margin:0 8px 8px;font-size:11px;display:flex;overflow:hidden}.docs-view-btn{color:var(--text-sec);cursor:pointer;font:inherit;background:0 0;border:none;flex:1;padding:3px 8px}.docs-view-btn+.docs-view-btn{border-left:1px solid var(--border)}.docs-view-btn:hover{color:var(--text-primary)}.docs-view-btn.active{color:var(--gold-bright);background:var(--bg-hover)}.docs-view-btn:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.docs-nav-count{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:4px}.docs-nav-group>summary{cursor:pointer;color:var(--text-sec);border-radius:var(--radius-md);padding:3px 8px;font-size:12px;list-style:none}.docs-nav-group>summary::-webkit-details-marker{display:none}.docs-nav-group>summary:before{content:"▸ ";color:var(--text-dim)}.docs-nav-group[open]>summary:before{content:"▾ "}.docs-nav-group>summary:hover{background:var(--bg-hover);color:var(--text-primary)}.docs-nav ul{margin:2px 0 6px;padding:0 0 0 14px;list-style:none}.docs-nav li a{color:var(--text-primary);border-radius:var(--radius-md);text-overflow:ellipsis;white-space:nowrap;padding:3px 8px;font-size:12px;text-decoration:none;display:block;overflow:hidden}.docs-nav li a:hover{background:var(--bg-hover);color:var(--gold-bright)}.docs-nav li a.active{background:var(--gold-subtle);color:var(--gold-bright);box-shadow:inset 2px 0 0 var(--gold)}.docs-nav-pinned{margin-bottom:10px}.docs-nav-pinned ul{margin:0;padding-left:0}.docs-nav-pinned li a{font-weight:600}.docs-nav-datelist>summary{cursor:pointer;padding:1px 0;list-style:none}.docs-nav-datelist>summary::-webkit-details-marker{display:none}.docs-nav-datelist>summary h4{display:inline}.docs-nav-datelist>summary h4:before{content:"▸ ";color:var(--text-dim)}.docs-nav-datelist[open]>summary h4:before{content:"▾ "}.docs-nav-datelist>summary:hover h4{color:var(--text-primary)}.docs-nav-datelist li a{align-items:baseline;gap:8px;display:flex}.docs-nav-datelist .docs-recent-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.docs-nav-datelist .docs-recent-date{color:var(--text-dim);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;font-size:10px}.docs-results li a{white-space:normal;border-bottom:1px solid var(--border);padding:5px 8px}.docs-result-title{font-family:var(--font-mono);display:inline}.docs-result-kind{color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-left:6px;font-size:10px;display:inline}.docs-result-desc{color:var(--text-sec);text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.docs-empty{color:var(--text-sec);padding:16px;font-size:12px}.docs-article{flex:1;min-width:0;max-width:none;padding:24px 32px 64px;overflow-y:auto}.docs-article>*{max-width:74ch}.docs-article pre,.docs-article table,.docs-article .table-scroll,.docs-article .code-card{max-width:none}.docs-article .table-scroll{max-width:100%}.docs-article pre{position:relative}.docs-load-btn{font-family:var(--font-mono);color:var(--text-sec);background:var(--bg-surface);border:1px solid var(--border-mid);border-radius:var(--radius-md);cursor:pointer;opacity:0;padding:2px 8px;font-size:10px;position:absolute;top:6px;right:6px}.docs-article pre:hover .docs-load-btn,.docs-load-btn:focus{opacity:1}.docs-load-btn:hover{color:var(--gold-bright);border-color:var(--gold-line)}.docs-footer{border-top:1px solid var(--border);background:var(--bg-surface);height:30px;color:var(--text-dim);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:11px;display:flex}.docs-site-link{color:var(--text-sec);text-decoration:none}.docs-site-link:hover{color:var(--gold-bright)}@media (width<=768px){.docs-overlay{padding:0}.docs-shell{border:none;border-radius:0;position:relative}.docs-topbar{height:auto;min-height:calc(48px + var(--safe-top));padding-top:var(--safe-top)}.docs-footer{height:auto;min-height:calc(30px + var(--safe-bottom));padding-bottom:var(--safe-bottom)}.docs-body{position:relative}.docs-nav{z-index:2;width:82%;max-width:320px;box-shadow:var(--shadow-lg);position:absolute;top:0;bottom:0;left:0}.docs-article{padding:16px 18px 48px}.docs-brand,.docs-status{display:none}.docs-load-btn{opacity:1}.docs-topbar .btn-close{border:1px solid var(--border-str);width:36px;height:36px;color:var(--gold);flex-shrink:0}.docs-close-return{display:block}.docs-close-x{display:none}.docs-topbar .docs-nav-toggle{justify-content:center;width:36px;height:36px;padding:0}}@media (width>=769px){.docs-nav-toggle{display:none}}@media print{.footer,.editor-actions,.console-actions{display:none}.repl-container{display:block}.editor-pane,.console-pane{break-inside:avoid}}.trace-panel{border-bottom:1px solid var(--border);background:var(--bg-surface);flex:none;font-size:12px}.trace-controls{align-items:center;gap:6px;padding:6px 10px;display:flex}.trace-slider{min-width:80px;accent-color:var(--gold);cursor:pointer;flex:auto}.trace-pos{color:var(--text-sec);font-variant-numeric:tabular-nums;white-space:nowrap}.trace-site{color:var(--gold);white-space:nowrap;text-overflow:ellipsis;max-width:40%;overflow:hidden}.trace-banner{color:var(--text-sec);border-top:1px solid var(--border);padding:4px 10px 6px}.trace-frames-row{background:var(--border);border-top:1px solid var(--border);gap:1px;max-height:140px;display:flex}.trace-frames,.trace-locals{background:var(--bg-surface);padding:4px 0;overflow-y:auto}.trace-frames{flex:0 0 40%}.trace-locals{flex:60%}.trace-frame{width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;gap:8px;padding:3px 10px;display:flex}.trace-frame:hover{background:var(--bg-panel)}.trace-frame.active{background:var(--bg-panel);color:var(--gold)}.trace-frame-fn{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trace-frame-line{color:var(--text-dim);white-space:nowrap}.trace-local{gap:8px;padding:3px 10px;display:flex}.trace-local-name{color:var(--gold);flex:none}.trace-local-val{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trace-empty{color:var(--text-dim);padding:3px 10px;font-style:italic}.trace-current-line{background:var(--gold-glow)}.trace-current-marker{background:var(--gold);margin-left:2px;width:3px!important}.trace-current-expr{background:var(--gold-glow);border-bottom:1px solid var(--gold)}
