:root,[data-theme=dark]{--bg:#0f1117;--surface:#1e2130;--surface-deep:#0a0c12;--surface-hover:#1a1d2e;--border:#2d3148;--text:#e2e8f0;--text-muted:#94a3b8;--text-faint:#475569;--accent:#818cf8;--accent-2:#6366f1;--btn:#4f46e5;--btn-hover:#6366f1;--btn-fg:#fff;--panel:#111521;--hit:#34d399;--miss:#f87171;--fire:#fbbf24;--kw:#c792ea;--fn:#82aaff;--str:#c3e88d;--num:#f78c6c;--cm:#546e7a;--mono:"Cascadia Code", "Fira Code", "Consolas", monospace}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f1f5f9;--surface:#fff;--surface-deep:#e2e8f0;--surface-hover:#cbd5e1;--border:#cbd5e1;--text:#0f172a;--text-muted:#475569;--text-faint:#64748b;--accent:#4f46e5;--accent-2:#6366f1;--btn:#4f46e5;--btn-hover:#4338ca;--btn-fg:#fff;--panel:#eef2f7;--hit:#059669;--miss:#dc2626;--fire:#d97706;--kw:#7c3aed;--fn:#2563eb;--str:#15803d;--num:#c2410c;--cm:#64748b}*,:before,:after{box-sizing:border-box;margin:0;padding:0}.monaco-editor button,.monaco-editor button:hover,.monaco-editor button:focus,.monaco-editor button:active,.monaco-editor input,.context-view button,.context-view button:hover,.context-view button:focus,.context-view button:active,.context-view input,.context-view textarea,.context-view select{all:revert;font:inherit}.monaco-editor .suggest-widget,.monaco-editor .parameter-hints-widget{color:#ccc}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{color:#d4d4d4}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:#fff}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label .label-name{color:inherit}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:Segoe UI,system-ui,sans-serif}#root{min-height:100vh}.app-shell{flex-direction:column;min-height:100vh;display:flex}.nav{background:var(--surface);border-bottom:1px solid var(--border);z-index:100;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:.75rem;max-width:1200px;height:56px;margin:0 auto;padding:0 2rem;display:flex}.nav-toolbar{flex-wrap:wrap;flex:1;justify-content:flex-end;align-items:center;gap:.65rem;min-width:0;display:flex}.nav-theme{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;gap:2px;padding:2px;display:inline-flex}button.nav-theme-btn{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.28rem .5rem;font-size:.95rem;line-height:1}button.nav-theme-btn:hover{color:var(--text-muted);background:0 0}button.nav-theme-btn[aria-pressed=true]{background:var(--bg);color:var(--accent)}.nav-logo{color:var(--accent);letter-spacing:-.3px;font-size:1rem;font-weight:700}.nav-logo-btn{cursor:pointer;font:inherit;text-align:start;background:0 0;border:none;padding:0;text-decoration:none}.nav-logo-btn:hover{color:var(--accent-2)}.nav-tabs{gap:.25rem;display:flex}.nav-tab{color:var(--text-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:.4rem 1rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s,background .15s}.nav-tab:hover{background:var(--bg);border-color:var(--border);color:var(--text-muted)}.nav-tab.active{background:var(--bg);border-color:var(--accent);color:var(--accent)}@media (width<=720px){.nav-inner{flex-direction:column;align-items:stretch;gap:.55rem;height:auto;padding:.7rem .9rem .6rem}.nav-toolbar{flex-wrap:wrap;justify-content:space-between;width:100%}.nav-logo{font-size:.95rem}.nav-tabs{scrollbar-width:thin;-webkit-overflow-scrolling:touch;white-space:nowrap;flex:1;gap:.4rem;min-width:0;padding-bottom:.15rem;overflow-x:auto}.nav-tabs::-webkit-scrollbar{height:6px}.nav-tabs::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}.nav-tab{flex:none;padding:.38rem .72rem;font-size:.8rem}}.main{flex:1;padding:2rem}.site-footer{border-top:1px solid var(--border);flex-shrink:0;margin-top:auto;padding:1rem 2rem 1.5rem}.site-footer-inner{color:var(--text-faint);text-align:center;max-width:1200px;margin:0 auto;font-size:.8rem}.site-footer-link{color:var(--accent);font-weight:600;text-decoration:none}.site-footer-link:hover{color:var(--accent-2);text-decoration:underline}.home-page{max-width:920px;margin:0 auto}.home-hero{margin-bottom:2.5rem}.home-lang-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.home-lang-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.home-locale-select{font:inherit;border:1px solid var(--border);background:var(--surface-deep);color:var(--text);cursor:pointer;border-radius:8px;min-width:10rem;padding:.35rem .6rem;font-size:.85rem}.home-locale-select:focus{outline:2px solid var(--accent);outline-offset:1px}.home-hero-title{letter-spacing:-.6px;color:var(--text);margin-bottom:.75rem;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800;line-height:1.15}.home-hero-lead{color:var(--text-muted);max-width:52ch;font-size:1.05rem;line-height:1.55}.home-section{margin-bottom:2rem}.home-section-title{color:var(--text);margin-bottom:.75rem;font-size:1.15rem;font-weight:700}.home-section-body{color:var(--text-muted);font-size:.98rem;line-height:1.6}.home-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.home-card{height:100%}.home-card-body{color:var(--text-muted);flex:1;font-size:.9rem;line-height:1.5}.home-card-link{cursor:pointer;font:inherit;color:var(--accent);background:0 0;border:none;align-self:flex-start;margin-top:auto;padding:0;font-size:.88rem;font-weight:600;text-decoration:none}.home-card-link:hover{color:var(--accent-2);text-decoration:underline}.home-cta{border-top:1px solid var(--border);color:var(--text-faint);text-align:center;margin-top:1.5rem;padding-top:1.5rem;font-size:.92rem}.page-title{text-align:center;color:var(--text);letter-spacing:-.5px;margin-bottom:2rem;font-size:1.6rem;font-weight:700}.grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.grid.full{grid-template-columns:1fr}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.card-title{color:var(--accent);text-transform:uppercase;letter-spacing:1px;font-size:1rem;font-weight:700}.card-desc{color:var(--text-muted);font-size:.85rem;line-height:1.6}.card-desc code{background:var(--surface-deep);color:var(--fn);font-family:var(--mono);border-radius:4px;padding:.05rem .3rem;font-size:.8rem}button{background:var(--btn);color:var(--btn-fg);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background .15s}button:hover{background:var(--btn-hover)}button.secondary{background:var(--surface-deep);border:1px solid var(--border);color:var(--text-muted)}button.secondary:hover{background:var(--surface-hover)}input[type=text],input[type=number]{background:var(--surface-deep);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;padding:.45rem .7rem;font-size:.88rem;transition:border-color .15s}input:focus{border-color:var(--accent)}.controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.params{background:var(--surface-deep);border:1px solid var(--border);font-family:var(--mono);color:var(--text-faint);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.78rem;display:flex}.params .v{color:var(--fn)}.params input{background:var(--surface);border:1px solid var(--border);color:var(--num);font-family:var(--mono);text-align:center;border-radius:6px;width:64px;padding:.2rem .4rem;font-size:.82rem}.stat-row{gap:.75rem;display:flex}.stat{background:var(--surface-deep);border:1px solid var(--border);text-align:center;border-radius:8px;flex:1;padding:.5rem .6rem}.stat-value{color:var(--accent);font-size:1.35rem;font-weight:700}.stat-label{color:var(--text-faint);letter-spacing:.5px;text-transform:uppercase;font-size:.68rem}.log{background:var(--surface-deep);border:1px solid var(--border);font-family:var(--mono);border-radius:8px;flex-direction:column;gap:1px;height:150px;padding:.7rem;font-size:.77rem;display:flex;overflow-y:auto}.log-entry{padding:1px 0;line-height:1.5}.log-entry.hit{color:var(--hit)}.log-entry.miss{color:var(--miss)}.log-entry.fire{color:var(--fire)}.log-entry.skip{color:var(--text-faint)}.log-entry.info{color:var(--text-muted)}.log-entry.ret{color:var(--accent)}.log-entry.error{color:var(--miss)}.log-entry.warn{color:var(--fire)}.log-entry.sep{border-top:1px solid var(--border);margin:.3rem 0}.code-toggle{border:1px solid var(--border);color:var(--text-faint);cursor:pointer;text-align:left;background:0 0;border-radius:8px;width:100%;padding:.35rem .75rem;font-size:.78rem;transition:color .15s,border-color .15s}.code-toggle:hover{color:var(--accent);border-color:var(--accent);background:0 0}.code-block{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;padding:1rem;overflow-x:auto}.code-block pre{font-family:var(--mono);white-space:pre;margin:0;font-size:.78rem;line-height:1.7}.token.keyword{color:var(--kw);font-weight:600}.token.function{color:var(--fn)}.token.string{color:var(--str)}.token.number{color:var(--num)}.token.boolean{color:var(--kw)}.token.comment{color:var(--cm);font-style:italic}.token.operator,.token.punctuation{color:var(--text-muted)}.token.class-name{color:var(--fn)}.token.parameter{color:var(--text)}.token.arrow,.token.template-string .token.interpolation-punctuation{color:var(--kw)}.explanation{border-top:1px solid var(--border);flex-direction:column;gap:.4rem;margin-top:.75rem;padding-top:.75rem;display:flex}.explanation-title{color:var(--text-faint);font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;margin-bottom:.15rem;font-size:.68rem}.step{color:var(--text-muted);align-items:flex-start;gap:.6rem;font-size:.8rem;line-height:1.55;display:flex}.step-num{background:var(--surface);border:1px solid var(--border);color:var(--accent);font-family:var(--mono);text-align:center;border-radius:4px;flex-shrink:0;min-width:1.4rem;padding:.1rem .3rem;font-size:.68rem;font-weight:700}.step code{background:var(--surface);color:var(--fn);font-family:var(--mono);border-radius:4px;padding:.05rem .3rem;font-size:.75rem}.sandbox-wrap{max-width:1200px;margin:1.5rem auto 0}.sandbox-header{justify-content:space-between;align-items:center;display:flex}.sandbox-hint{color:var(--text-faint);font-family:var(--mono);font-size:.73rem}.sandbox-body{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=720px){.sandbox-body{grid-template-columns:1fr}}.sandbox-editor{border:1px solid var(--border);border-radius:8px;height:300px;transition:border-color .15s;overflow:hidden}.sandbox-editor.focused{border-color:var(--accent)}.sandbox-output{background:var(--surface-deep);border:1px solid var(--border);font-family:var(--mono);border-radius:8px;flex-direction:column;min-height:300px;padding:.85rem 1rem;font-size:.8rem;display:flex;overflow-y:auto}.sandbox-output-label{color:var(--border);letter-spacing:1px;text-transform:uppercase;margin-bottom:.4rem;font-size:.68rem}.sandbox-line{white-space:pre-wrap;word-break:break-all;padding:1px 0;line-height:1.6}.sandbox-line.log{color:var(--text)}.sandbox-line.warn{color:var(--fire)}.sandbox-line.error{color:var(--miss)}.sandbox-line.info{color:var(--text-muted)}.sandbox-line.ret{color:var(--accent)}.sandbox-line.sep{border-top:1px solid var(--border);margin:.4rem 0}.lazy-scroll{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.5rem;height:200px;padding:.75rem;display:flex;overflow-y:auto}.lazy-img-wrap{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;height:80px;display:flex;position:relative;overflow:hidden}.lazy-img-wrap img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .4s}.lazy-img-wrap img.loaded{opacity:1}.lazy-placeholder{color:var(--text-faint);font-family:var(--mono);pointer-events:none;font-size:.73rem;transition:opacity .3s;position:absolute}.lazy-placeholder.hidden{opacity:0}.throttle-zone{background:var(--surface-deep);border:1px solid var(--border);color:var(--text-faint);cursor:crosshair;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:center;align-items:center;height:60px;font-size:.83rem;display:flex}.bar-wrap{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;height:8px;overflow:hidden}.bar{background:var(--accent);border-radius:8px;width:0%;height:100%;transition:width 50ms linear}.demo-output{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;padding:.85rem 1rem;font-size:.85rem;line-height:1.6}.demo-output .loading{color:var(--text-faint);font-style:italic}.demo-output .error-msg{color:var(--miss)}.demo-output .data-field{gap:.5rem;display:flex}.demo-output .field-key{color:var(--fn);font-family:var(--mono);font-size:.8rem}.demo-output .field-val{color:var(--text)}.render-badge{background:var(--surface-deep);border:1px solid var(--border);font-family:var(--mono);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8rem;display:flex}.render-badge .label{color:var(--text-faint)}.render-badge .count{color:var(--fire);font-weight:700}.stopwatch-display{background:var(--surface-deep);border:1px solid var(--border);color:var(--accent);font-family:var(--mono);text-align:center;border-radius:8px;padding:1rem;font-size:2rem;font-weight:700}.q-search-wrap{align-items:center;gap:.75rem;max-width:1200px;margin:0 auto 1.25rem;display:flex}.q-search{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;outline:none;flex:1;padding:.55rem .9rem;font-size:.9rem;transition:border-color .15s}.q-search:focus{border-color:var(--accent)}.q-count{color:var(--text-faint);font-family:var(--mono);white-space:nowrap;font-size:.78rem}.solve-guide{background:var(--surface);border:1px solid var(--border);border-radius:12px;max-width:1200px;margin:0 auto 1.1rem;padding:.9rem 1rem}.solve-guide-title{color:var(--text-faint);font-family:var(--mono);letter-spacing:.7px;text-transform:uppercase;margin-bottom:.45rem;font-size:.72rem}.solve-guide-list{color:var(--text-muted);margin:0;padding-left:1.05rem;font-size:.83rem;line-height:1.55}.solve-guide-list li+li{margin-top:.15rem}.q-filter-row{align-items:flex-start;gap:.75rem;max-width:1200px;margin:0 auto .75rem;display:flex}.q-filter-label{color:var(--text-faint);font-size:.75rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;min-width:68px;padding-top:.4rem}.q-filter-chips{flex-wrap:wrap;gap:.4rem;display:flex}.q-chip{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:20px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:.78rem;font-weight:500;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.q-chip:hover{border-color:var(--chip-color,var(--accent));color:var(--chip-color,var(--accent));background:var(--surface)}.q-chip.active{background:color-mix(in srgb, var(--chip-color,var(--accent)) 15%, transparent);border-color:var(--chip-color,var(--accent));color:var(--chip-color,var(--accent))}.q-chip-count{background:var(--surface-deep);color:var(--text-faint);border-radius:10px;padding:.05rem .35rem;font-size:.68rem}.q-grid{columns:2;column-gap:1.25rem;max-width:1200px;margin:1.25rem auto 0}@media (width<=800px){.q-grid{columns:1}}.q-card{background:var(--surface);border:1px solid var(--border);break-inside:avoid;border-radius:12px;flex-direction:column;gap:.65rem;margin-bottom:1.25rem;padding:1.25rem;display:flex}.q-card-meta{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.q-companies{flex-wrap:wrap;gap:.3rem;display:flex}.company-badge{background:color-mix(in srgb, var(--company-color) 12%, transparent);border:1px solid color-mix(in srgb, var(--company-color) 35%, transparent);color:var(--company-color);border-radius:6px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.q-difficulty{font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:700}.q-category-label{color:var(--text-faint);font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;font-size:.68rem}.q-title{color:var(--text);font-size:.98rem;font-weight:600;line-height:1.4}.q-desc{color:var(--text-muted);font-size:.82rem;line-height:1.6}.q-tags{flex-wrap:wrap;gap:.3rem;display:flex}.q-tag{color:var(--text-faint);font-family:var(--mono);font-size:.68rem}.q-source{color:var(--text-faint);font-family:var(--mono);border-top:1px solid var(--border);margin-top:.4rem;padding-top:.4rem;font-size:.7rem}.q-demo{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.55rem;margin-top:.1rem;padding:.7rem;display:flex}.q-demo-title{color:var(--accent);font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;font-size:.72rem}.q-demo-controls{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.45rem;font-size:.77rem;display:flex}.q-demo-controls label{color:var(--text-faint);font-family:var(--mono);font-size:.72rem}.q-demo-stats{color:var(--text-muted);font-family:var(--mono);flex-wrap:wrap;gap:.7rem;font-size:.72rem;display:flex}.q-demo-input{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;width:100%;padding:.35rem .55rem;font-size:.8rem}.q-demo-textarea{background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--mono);resize:vertical;border-radius:6px;min-height:100px;padding:.5rem;font-size:.73rem;line-height:1.45}.q-demo-pre,.q-demo-result{background:var(--panel);border:1px solid var(--border);color:var(--text-muted);font-family:var(--mono);border-radius:6px;padding:.5rem;font-size:.72rem;line-height:1.45;overflow-x:auto}.q-demo-log{background:var(--panel);border:1px solid var(--border);font-family:var(--mono);border-radius:6px;flex-direction:column;gap:.12rem;max-height:92px;padding:.5rem;font-size:.72rem;display:flex;overflow-y:auto}.q-demo-log .event{color:var(--text-faint)}.q-demo-log .result{color:var(--fire)}.q-demo-error{color:var(--miss);font-family:var(--mono);font-size:.72rem}.q-demo-bar{background:var(--panel);border:1px solid var(--border);border-radius:999px;height:8px;overflow:hidden}.q-demo-bar-fill{background:var(--accent);height:100%;transition:width 80ms linear}.q-empty{color:var(--text-faint);text-align:center;max-width:1200px;margin:3rem auto;font-size:.9rem}.q-ai-settings{max-width:1200px;margin:0 auto 1rem}.q-ai-settings-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.65rem;margin-top:.5rem;padding:1rem;display:flex}.q-ai-settings-note{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.55}.q-ai-label{color:var(--text-faint);font-family:var(--mono);letter-spacing:.4px;text-transform:uppercase;flex-direction:column;gap:.35rem;font-size:.72rem;display:flex}.q-ai-label-inline{color:var(--text-faint);font-family:var(--mono);letter-spacing:.4px;text-transform:uppercase;margin-right:.35rem;font-size:.72rem}.q-ai-input{background:var(--surface-deep);border:1px solid var(--border);color:var(--text);text-transform:none;border-radius:8px;padding:.5rem .65rem;font-size:.88rem}.q-ai-input-mono{font-family:var(--mono);font-size:.82rem}.q-ai-persist-row{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;display:flex}.q-ai-radio{color:var(--text-muted);cursor:pointer;align-items:center;gap:.35rem;font-size:.8rem;display:inline-flex}.q-ai-actions{flex-wrap:wrap;gap:.5rem;display:flex}.q-open-chat{max-width:1200px;margin:0 auto 1rem}.q-open-chat-lead{color:var(--text-muted);margin:.35rem 0 .5rem;font-size:.8rem;line-height:1.45}.q-open-chat-panel{margin-top:.5rem}.q-upload-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:.55rem;max-width:1200px;margin:0 auto 1.1rem;padding:1rem;display:flex}.q-upload-title{color:var(--accent);font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;font-size:.75rem}.q-upload-hint{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.5}.q-upload-hint code{color:var(--fn);font-family:var(--mono);font-size:.78rem}.q-upload-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.q-upload-file{max-width:220px}.q-upload-file-label{cursor:pointer}.q-upload-textarea{background:var(--surface-deep);border:1px solid var(--border);color:var(--text);font-family:var(--mono);resize:vertical;border-radius:8px;width:100%;padding:.55rem;font-size:.78rem;line-height:1.45}.q-upload-error{color:var(--miss);font-family:var(--mono);font-size:.78rem}.q-custom-badge{background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);color:var(--accent);border-radius:6px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.q-custom-delete{align-self:flex-start;margin-top:.25rem}.q-count-custom{color:var(--accent)}.q-chat-wrap{flex-direction:column;gap:.35rem;margin-top:.15rem;display:flex}.q-chat-panel{background:var(--surface-deep);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.55rem;padding:.75rem;display:flex}.q-chat-warn{color:var(--miss);margin:0;font-size:.78rem}.q-chat-auto-hint{color:var(--text-faint);margin:0;font-size:.74rem;line-height:1.45}.q-explain-claude-hint{color:var(--text-faint);margin:.55rem 0 0;font-size:.76rem;line-height:1.45}.q-explain-claude-hint strong{color:var(--text-muted);font-weight:600}.q-chat-modes{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.q-chat-checkbox{color:var(--text-muted);cursor:pointer;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.q-chat-actions-top{display:flex}.q-chat-log{flex-direction:column;gap:.5rem;max-height:280px;display:flex;overflow-y:auto}.q-chat-bubble{border-radius:8px;padding:.45rem .55rem}.q-chat-bubble--user{background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent)}.q-chat-bubble--assistant{background:var(--panel);border:1px solid var(--border)}.q-chat-role{color:var(--text-faint);font-family:var(--mono);letter-spacing:.5px;text-transform:uppercase;margin-bottom:.2rem;font-size:.65rem;display:block}.q-chat-text{color:var(--text-muted);white-space:pre-wrap;font-size:.8rem;line-height:1.5}.q-chat-typing{color:var(--text-faint);animation:1s ease-in-out infinite q-chat-pulse}@keyframes q-chat-pulse{50%{opacity:.35}}.q-chat-error{color:var(--miss);font-family:var(--mono);font-size:.75rem}.q-chat-md{color:var(--text-muted);font-size:.8rem;line-height:1.55}.q-chat-md>:first-child{margin-top:0}.q-chat-md>:last-child{margin-bottom:0}.q-chat-md p{margin:.4rem 0}.q-chat-md h1,.q-chat-md h2,.q-chat-md h3,.q-chat-md h4{color:var(--text);margin:.65rem 0 .35rem;font-size:.88rem;font-weight:600;line-height:1.35}.q-chat-md h1{font-size:1rem}.q-chat-md ul,.q-chat-md ol{margin:.35rem 0;padding-left:1.25rem}.q-chat-md li{margin:.15rem 0}.q-chat-md blockquote{border-left:3px solid var(--accent);color:var(--text-faint);margin:.45rem 0;padding-left:.65rem}.q-chat-md hr{border:none;border-top:1px solid var(--border);margin:.65rem 0}.q-chat-md table{border-collapse:collapse;width:100%;margin:.45rem 0;font-size:.76rem}.q-chat-md th,.q-chat-md td{border:1px solid var(--border);text-align:left;padding:.25rem .45rem}.q-chat-md th{background:var(--surface-deep);color:var(--text-muted)}.q-chat-md-pre{background:var(--surface-deep);border:1px solid var(--border);border-radius:6px;margin:.45rem 0;padding:.5rem .55rem;overflow-x:auto}.q-chat-md-pre code{font-family:var(--mono);background:0 0;padding:0;font-size:.72rem;line-height:1.45}.q-chat-md-code-inline{background:color-mix(in srgb, var(--fn) 12%, transparent);color:var(--fn);font-family:var(--mono);border-radius:4px;padding:.08rem .28rem;font-size:.76em}.q-chat-md-a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.q-chat-md-a:hover{color:color-mix(in srgb, var(--accent) 85%, white)}.q-chat-compose{flex-direction:column;gap:.45rem;display:flex}.q-chat-input{background:var(--surface);border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:8px;width:100%;padding:.45rem .55rem;font-size:.82rem;line-height:1.45}.q-react-preview{margin-top:0;padding-top:0}.q-react-preview-lead{color:var(--text-muted);margin:.35rem 0 0;font-size:.78rem;line-height:1.45}.q-react-preview-lead code{color:var(--fn);font-family:var(--mono);font-size:.76rem}.q-react-preview-panel{flex-direction:column;gap:.55rem;margin-top:.35rem;display:flex}.q-react-preview-hint{color:var(--text-faint);margin:0;font-size:.74rem;line-height:1.45}.q-react-preview-hint code{color:var(--fn);font-family:var(--mono);font-size:.72rem}.q-react-preview-toolbar{flex-wrap:wrap;gap:.45rem;display:flex}.q-react-preview-paste-label{color:var(--text-muted);flex-direction:column;gap:.35rem;font-size:.76rem;line-height:1.4;display:flex}.q-react-preview-paste{background:var(--surface-deep);border:1px solid var(--border);color:var(--text-muted);font-family:var(--mono);resize:vertical;border-radius:8px;width:100%;padding:.45rem .5rem;font-size:.72rem;line-height:1.4}.q-react-preview-code{background:var(--panel);border:1px solid var(--border);color:var(--text-muted);font-family:var(--mono);resize:vertical;border-radius:8px;width:100%;padding:.55rem;font-size:.72rem;line-height:1.45}.vscode-chrome{background:#1e1e1e;border:1px solid #3c3c3c;border-radius:10px;overflow:hidden}.vscode-chrome--loading{color:var(--text-muted);justify-content:center;align-items:center;min-height:200px;padding:2rem;font-size:.85rem;display:flex}.vscode-titlebar{background:#323233;border-bottom:1px solid #252526;align-items:center;gap:.5rem;min-height:32px;padding:0 .65rem;display:flex}.vscode-traffic{gap:6px;display:inline-flex}.vscode-dot{border-radius:50%;width:10px;height:10px}.vscode-dot--r{background:#ff5f57}.vscode-dot--y{background:#febc2e}.vscode-dot--g{background:#28c840}.vscode-titlebar-title{color:#ccc;letter-spacing:.02em;text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.72rem;overflow:hidden}.vscode-tabrow{background:#252526;border-bottom:1px solid #252526;padding:0;display:flex}.vscode-tab{color:#fff;background:#1e1e1e;border-right:1px solid #252526;align-items:center;gap:.35rem;padding:.35rem .75rem .4rem;font-size:.78rem;display:inline-flex}.vscode-tab--active{border-top:2px solid #0078d4;padding-top:calc(.35rem - 2px)}.vscode-tab-icon{color:#fff;font-family:var(--mono);letter-spacing:-.02em;background:#3178c6;border-radius:2px;padding:.12rem .2rem;font-size:.58rem;font-weight:700;line-height:1}.vscode-tab-name{font-family:var(--mono);font-size:.74rem}.vscode-editor-surface{min-height:0;position:relative}.mock-code-notes-label{flex-direction:column;gap:.35rem;margin-top:.65rem;display:flex}.mock-code-notes-title{color:var(--text-faint);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem}.mock-code-notes-input{margin-top:0}.mock-code-send-row{flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.5rem;display:flex}.mock-code-send-hint{color:var(--text-faint);font-size:.72rem}.q-react-preview-error{color:var(--miss);font-family:var(--mono);white-space:pre-wrap;font-size:.74rem;line-height:1.4}.q-react-preview-frame-wrap{background:var(--surface-deep);border:1px solid var(--border);border-radius:8px;min-height:160px;overflow:hidden}.q-react-preview-frame{border:none;width:100%;min-height:160px;display:block}.sandbox-page-lead{color:var(--text-muted);max-width:960px;margin:-.25rem auto 1rem;font-size:.88rem;line-height:1.5}.sandbox-page-body{max-width:960px;margin:0 auto}.q-react-preview--page .q-react-preview-panel--page{margin-top:0}.q-react-preview-panel--page .q-react-preview-frame-wrap,.q-react-preview-panel--page .q-react-preview-frame{min-height:280px}.mock-interview-lead{max-width:720px}.mock-interview-setup{max-width:720px;margin:0 auto}@media (width>=900px){.mock-interview-lead,.mock-interview-setup{max-width:min(1200px,100vw - 4rem)}.mock-interview-session .q-chat-log{max-height:min(52vh,520px)}.mock-interview-session .q-chat-text,.mock-interview-session .q-chat-md{font-size:.92rem;line-height:1.55}.mock-interview-session .q-chat-md h1,.mock-interview-session .q-chat-md h2,.mock-interview-session .q-chat-md h3,.mock-interview-session .q-chat-md h4{font-size:.98rem}.mock-interview-session .q-chat-md h1{font-size:1.08rem}.mock-interview-session .mock-interview-compose,.mock-interview-h2{font-size:.88rem}.mock-style-card-title{font-size:.95rem}.mock-style-card-blurb{font-size:.82rem}}.mock-interview-h2{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin:1.25rem 0 .5rem;font-size:.82rem;font-weight:600}.mock-interview-h2:first-of-type{margin-top:.5rem}.mock-interview-search,.mock-interview-filters{margin-bottom:.35rem}.mock-interview-filters .q-filter-chips{flex-wrap:wrap}.mock-interview-select-label{flex-direction:column;gap:.35rem;margin-top:.5rem;display:flex}.mock-interview-select-title{color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}.mock-interview-select{background:var(--surface-deep);border:1px solid var(--border);color:var(--text-muted);border-radius:8px;width:100%;max-width:100%;padding:.5rem .65rem;font-size:.85rem}.mock-interview-preview-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-top:.75rem;padding:.85rem 1rem}.mock-interview-preview-meta{justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:.35rem;display:flex}.mock-interview-desc{margin:.35rem 0 0}.mock-style-grid{grid-template-columns:1fr;gap:.55rem;display:grid}@media (width>=640px){.mock-style-grid{grid-template-columns:1fr 1fr}}.mock-style-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;flex-direction:column;gap:.35rem;padding:.75rem .85rem;transition:border-color .15s,background .15s;display:flex}.mock-style-card:hover{border-color:var(--fn-muted,var(--border))}.mock-style-card--active{border-color:var(--fn);box-shadow:0 0 0 1px var(--fn)}.mock-style-card input{accent-color:var(--fn);margin:0 0 .15rem}.mock-style-card-title{color:var(--text);font-size:.88rem;font-weight:600}.mock-style-card-blurb{color:var(--text-muted);font-size:.76rem;line-height:1.45}.mock-interview-ref{margin:.85rem 0 0}.mock-interview-session{margin-top:.35rem}.mock-interview-timer-hint{border-top:1px solid var(--border);color:var(--text-faint);margin:.65rem 0 0;padding-top:.65rem;font-size:.74rem;line-height:1.45}.mock-session-timer{background:var(--surface-deep);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;margin:.65rem 0 0;padding:.55rem .75rem;display:flex}.mock-session-timer--urgent{border-color:#f59e0b;box-shadow:0 0 0 1px #f59e0b40}.mock-session-timer--up{border-color:var(--miss);box-shadow:0 0 0 1px #f8717133}.mock-session-timer-label{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;width:100%;font-size:.68rem}.mock-session-timer-budget{color:var(--text-muted);font-size:.78rem}.mock-session-timer-budget strong{color:var(--text)}.mock-session-timer-meta{color:var(--text-faint);margin-top:.15rem;font-size:.7rem;display:block}.mock-session-timer-remaining{align-items:baseline;gap:.35rem;margin-left:auto;display:inline-flex}.mock-session-timer-digits{color:var(--fn);font-family:var(--mono);letter-spacing:.04em;font-size:1.05rem;font-weight:600}.mock-session-timer--urgent .mock-session-timer-digits{color:#fbbf24}.mock-session-timer-sub{color:var(--text-faint);font-size:.72rem}.mock-session-timer-idle{color:var(--text-faint);margin-left:auto;font-size:.76rem}.mock-session-timer-zero{color:var(--miss);font-family:var(--mono);font-size:.88rem;font-weight:600}.mock-session-timer-banner{color:var(--text-muted);background:#f8717114;border:1px solid #f8717159;border-radius:8px;margin:.5rem 0 0;padding:.45rem .6rem;font-size:.78rem;line-height:1.45}.mock-interview-compose{font-family:var(--mono);font-size:.78rem}.mock-voice-unavailable{color:var(--text-muted);margin:0;font-size:.76rem;line-height:1.45}.mock-voice-toolbar{flex-wrap:wrap;align-items:center;gap:.45rem .65rem;display:flex}.mock-voice-btn.mock-voice-btn--active{color:#fca5a5;border-color:#f87171a6;box-shadow:0 0 0 1px #f8717140}.mock-voice-live{color:#fca5a5;font-size:.76rem;font-weight:600}.mock-voice-err{color:var(--miss);font-size:.74rem;line-height:1.4}.mock-voice-dismiss{color:var(--accent);cursor:pointer;font-size:inherit;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.mock-voice-dismiss:hover{color:color-mix(in srgb, var(--accent) 85%, white)}.mock-voice-tts-label{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;font-size:.78rem;display:inline-flex}.mock-voice-tts-label input{accent-color:var(--accent);cursor:pointer}.mock-voice-tts-label:has(input:disabled){cursor:not-allowed;opacity:.65}.mock-voice-select-wrap{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:inline-flex}.mock-voice-woman-btn{white-space:nowrap;padding:.25rem .45rem;font-size:.74rem}.mock-voice-woman-btn:disabled{cursor:not-allowed;opacity:.55}.mock-voice-select-label{font-size:.75rem}.mock-voice-select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:7px;max-width:min(48vw,340px);padding:.2rem .35rem;font-size:.75rem}.tag-list{flex-wrap:wrap;gap:.4rem;display:flex}.tag{background:var(--surface-deep);border:1px solid var(--border);color:var(--fn);font-family:var(--mono);border-radius:6px;padding:.2rem .5rem;font-size:.75rem}.app-browser-console{z-index:250;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0}.app-browser-console-toggle{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-bottom:none;border-radius:10px 10px 0 0;align-items:center;gap:.45rem;margin-right:1rem;padding:.45rem .85rem;font-size:.78rem;font-weight:600;display:flex;box-shadow:0 -4px 24px #00000059}.app-browser-console-toggle:hover{border-color:var(--accent);color:var(--text)}.app-browser-console-badge{background:var(--btn);color:var(--btn-fg);text-align:center;border-radius:999px;min-width:1.15rem;padding:.15rem .35rem;font-size:.65rem;font-weight:700;line-height:1}.app-browser-console-panel{background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -8px 32px color-mix(in srgb, var(--text) 18%, transparent);flex-direction:column;width:100%;max-height:min(40vh,320px);display:flex}.app-browser-console-toolbar{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.4rem .65rem;display:flex}.app-browser-console-title{color:var(--text-faint);letter-spacing:.04em;text-transform:uppercase;flex:1;font-size:.7rem}.app-browser-console-tool{padding:.25rem .5rem;font-size:.72rem}.app-browser-console-list{flex:1;min-height:120px;padding:.35rem 0;overflow:auto}.app-browser-console-empty{color:var(--text-faint);text-align:center;padding:1rem .75rem;font-size:.78rem}.app-browser-console-line{border-bottom:1px solid #2d314899;grid-template-columns:auto auto 1fr;gap:.15rem .65rem;padding:.35rem .65rem;display:grid}.app-browser-console-time{color:var(--text-faint);font-family:var(--mono);white-space:nowrap;font-size:.68rem}.app-browser-console-level{color:var(--cm);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;width:4.5rem;font-size:.65rem;font-weight:700}.app-browser-console-line--warn .app-browser-console-level{color:var(--fire)}.app-browser-console-line--error .app-browser-console-level,.app-browser-console-line--exception .app-browser-console-level{color:var(--miss)}.app-browser-console-line--info .app-browser-console-level{color:var(--fn)}.app-browser-console-msg{color:#c9d1d9;font-family:var(--mono);white-space:pre-wrap;word-break:break-word;margin:0;font-size:.72rem;line-height:1.45;overflow-x:auto}.app-browser-console-footnote{border-top:1px solid var(--border);color:var(--text-faint);margin:0;padding:.35rem .65rem;font-size:.68rem;line-height:1.4}
