.workspace-root{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-base)}.topbar{height:44px;min-height:44px;background:var(--bg-elevated);border-bottom:1px solid var(--border);padding:0 14px}.topbar,.topbar-left{display:flex;align-items:center;gap:12px}.topbar-left{min-width:0;flex:1 1}.topbar-back{background:none;border:none;color:var(--text-muted);font-size:12px;font-family:var(--font-body);cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);white-space:nowrap;transition:color .15s,background .15s}.topbar-back:hover{color:var(--text);background:var(--bg-hover)}.topbar-title{font-family:var(--font-heading);font-size:13px;font-weight:600;color:var(--text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-center{flex:1 1;display:flex;justify-content:center}.topbar-part-nav{display:flex;align-items:center;gap:6px}.topbar-nav-btn{background:none;border:none;color:var(--text-muted);font-size:18px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm);transition:color .15s,background .15s}.topbar-nav-btn:hover:not(:disabled){color:var(--text);background:var(--bg-hover)}.topbar-nav-btn:disabled{opacity:.2;cursor:not-allowed}.topbar-part-indicator{font-size:12px;color:var(--text-muted);white-space:nowrap}.topbar-right{flex:1 1;display:flex;align-items:center;justify-content:flex-end;gap:8px}.topbar-end-btn{font-size:11px;font-weight:600;font-family:var(--font-body);padding:4px 10px;border-radius:var(--radius-sm);border:1px solid rgba(232,119,74,.4);background:rgba(232,119,74,.08);color:var(--accent);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s;animation:endBtnGlow 2.6s ease-in-out infinite}.topbar-end-btn:hover{background:rgba(232,119,74,.16);border-color:var(--accent);animation:none;box-shadow:0 0 12px 1px rgba(232,119,74,.5)}@keyframes endBtnGlow{0%,to{box-shadow:0 0 0 0 rgba(232,119,74,0)}50%{box-shadow:0 0 10px 1px rgba(232,119,74,.45)}}@media (prefers-reduced-motion:reduce){.topbar-end-btn{animation:none;box-shadow:0 0 8px 0 rgba(232,119,74,.3)}}.topbar-events-btn{font-size:11px;font-weight:500;font-family:var(--font-body);padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:none;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color .15s,background .15s,border-color .15s}.topbar-events-btn:hover{background:var(--bg-hover);color:var(--text);border-color:rgba(255,255,255,.15)}.topbar-mode-badge{font-size:10px;font-family:var(--font-mono);font-weight:600;letter-spacing:.04em;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.topbar-mode-badge--hard{color:var(--red);border-color:rgba(217,83,79,.4);background:var(--red-dim)}.topbar-timer{display:flex;align-items:center;gap:5px;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-muted)}.topbar-timer-icon{font-size:12px}.topbar-timer-value{font-family:var(--font-heading);font-weight:500;color:var(--text)}.topbar-timer--warning .topbar-timer-icon,.topbar-timer--warning .topbar-timer-value{color:var(--orange)}.topbar-timer--expired .topbar-timer-icon,.topbar-timer--expired .topbar-timer-value{color:var(--red)}.topbar-timer--practice .topbar-timer-value{color:var(--text-muted);font-size:15px;letter-spacing:.02em}.workspace-panels{flex:1 1!important;min-height:0;overflow:hidden}.diff-viewer{height:100%;overflow-y:auto;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.diff-viewer-inner{font-family:Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.7;min-width:max-content}.diff-line{display:flex;align-items:baseline;gap:0;white-space:pre}.diff-line:hover{background:rgba(255,255,255,.03)}.diff-ln{flex-shrink:0;width:44px;padding:0 10px;text-align:right;color:var(--text-muted);opacity:.45;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-right:1px solid rgba(255,255,255,.06)}.diff-text{padding:0 14px;flex:1 1}.diff-line--add{background:rgba(80,190,120,.12)}.diff-line--add .diff-text{color:#7dd4a0}.diff-line--add .diff-ln{border-color:rgba(80,190,120,.15)}.diff-line--del{background:rgba(220,80,80,.1)}.diff-line--del .diff-text{color:#e07b7b}.diff-line--del .diff-ln{border-color:rgba(220,80,80,.15)}.diff-line--hunk{background:rgba(97,175,251,.08)}.diff-line--hunk .diff-text{color:#61afdc;font-style:italic}.diff-line--file .diff-text,.diff-line--meta .diff-text{color:var(--text-muted);opacity:.6}.diff-empty{padding:24px;color:var(--text-muted);font-size:13px}.resize-handle{background:var(--border);transition:background .15s;flex-shrink:0;z-index:10}.resize-handle:hover{background:var(--accent)}.resize-handle--col{width:3px;cursor:col-resize}.resize-handle--row{height:3px;cursor:row-resize}.pane{min-width:0}.pane,.sidebar{display:flex;flex-direction:column;height:100%;overflow:hidden}.sidebar{background:var(--bg-surface)}.sidebar-section-header{height:30px;min-height:30px;font-family:var(--font-heading);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:0 14px;display:flex;align-items:center;background:var(--bg-elevated);border-bottom:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-tree{padding:4px 0;flex-shrink:0;overflow-y:auto;max-height:40%;border-bottom:1px solid var(--border)}.sidebar-dir{display:flex;align-items:center;gap:5px;padding:4px 10px;cursor:pointer;font-size:12px;color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .1s,color .1s}.sidebar-dir:hover{background:var(--bg-hover);color:var(--text)}.sidebar-dir-arrow{font-size:10px;width:12px;text-align:center;flex-shrink:0;opacity:.7}.sidebar-dir-name,.sidebar-file{font-size:12px}.sidebar-file{display:flex;align-items:center;gap:6px;padding:4px 10px;cursor:pointer;color:var(--text);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;overflow:hidden;transition:background .1s}.sidebar-file:hover{background:var(--bg-hover)}.sidebar-file--active{background:rgba(232,119,74,.1);color:var(--text-heading)}.sidebar-file--active:hover{background:rgba(232,119,74,.15)}.sidebar-file-dot{width:6px;height:6px;border-radius:50%;border:1px solid var(--text-muted);flex-shrink:0;opacity:.5}.sidebar-file--active .sidebar-file-dot{background:var(--accent);border-color:var(--accent);opacity:1}.sidebar-file-name{overflow:hidden;text-overflow:ellipsis}.sidebar-readme-header{height:30px;min-height:30px;font-family:var(--font-heading);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:0 14px;display:flex;align-items:center;background:var(--bg-elevated);border-bottom:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-readme{flex:1 1;overflow-y:auto;overflow-x:hidden}.answer-trigger{padding:14px 16px;border-top:1px solid var(--border-soft)}.answer-trigger-btn{width:100%;padding:7px 0;font-size:12px;font-weight:500;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:color .15s,border-color .15s}.answer-trigger-btn:hover{color:var(--text);border-color:rgba(255,255,255,.15)}.answer-confirm{padding:12px 16px 14px;border-top:1px solid var(--border-soft);display:flex;flex-direction:column;gap:10px}.answer-confirm-msg{font-size:11.5px;color:var(--text-muted);line-height:1.6}.answer-confirm-actions{display:flex;gap:8px}.answer-confirm-yes{flex:1 1;padding:6px 0;font-size:12px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer;transition:background .15s}.answer-confirm-yes:hover{background:var(--accent-hover)}.answer-confirm-cancel{padding:6px 14px;font-size:12px;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:color .15s}.answer-confirm-cancel:hover{color:var(--text)}.answer-loading{display:flex;align-items:center;justify-content:center;gap:5px;padding:18px;border-top:1px solid var(--border-soft)}.answer-loading-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:answerPulse 1.2s ease-in-out infinite}.answer-loading-dot:nth-child(2){animation-delay:.2s}.answer-loading-dot:nth-child(3){animation-delay:.4s}@keyframes answerPulse{0%,80%,to{opacity:.25;transform:scale(.85)}40%{opacity:1;transform:scale(1)}}.answer-error{padding:12px 16px;border-top:1px solid var(--border-soft);font-size:12px;color:var(--red)}.answer-retry{background:none;border:none;color:var(--accent);cursor:pointer;font-size:12px;text-decoration:underline;padding:0}.answer-panel{padding:0 0 14px;border-top:1px solid var(--border-soft);display:flex;flex-direction:column;gap:0}.answer-panel-header{display:flex;align-items:center;justify-content:space-between;padding-right:10px}.answer-section-label{font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);padding:10px 16px 6px}.answer-hide-btn,.answer-section-label{font-family:var(--font-mono);font-size:10px}.answer-hide-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);padding:2px 8px;cursor:pointer;transition:color .15s,border-color .15s;margin-top:8px}.answer-hide-btn:hover{color:var(--text);border-color:var(--text-muted)}.answer-panel-actions{display:flex;align-items:center;gap:6px}.answer-copy-btn{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font-mono);font-size:10px;padding:2px 8px;cursor:pointer;transition:color .15s,border-color .15s;margin-top:8px}.answer-copy-btn:hover{color:var(--text);border-color:var(--text-muted)}.answer-copy-btn--copied{color:var(--accent);border-color:var(--accent)}.answer-code{margin:0 10px;padding:10px 12px;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:11px;line-height:1.65;color:var(--text);white-space:pre;overflow-x:auto}.answer-code code{font:inherit}.answer-explanation{margin:0;padding:8px 16px 4px}.answer-explanation,.answer-markdown{font-size:12px;color:var(--text-muted);line-height:1.7}.answer-markdown{padding:0 16px 4px}.answer-markdown p{margin:0 0 8px}.answer-markdown pre{margin:0 0 8px;padding:10px 12px;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);line-height:1.65;color:var(--text);white-space:pre;overflow-x:auto}.answer-markdown code,.answer-markdown pre{font-family:var(--font-mono);font-size:11px}.answer-markdown pre code{font:inherit}.answer-locked{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid var(--border-soft);color:var(--text-muted);opacity:.6}.answer-locked-icon{font-size:12px}.answer-locked-text{font-size:11px;font-family:var(--font-mono)}.scm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.scm-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:520px;display:flex;flex-direction:column;box-shadow:0 24px 64px rgba(0,0,0,.5);max-height:90vh;overflow-y:auto}.scm-header{padding:24px 24px 20px;border-bottom:1px solid var(--border-soft)}.scm-header-meta{display:flex;align-items:center;gap:6px;margin-bottom:8px}.scm-company,.scm-duration{color:var(--text-muted)}.scm-company,.scm-difficulty,.scm-duration{font-size:11px;font-family:var(--font-mono)}.scm-difficulty{font-weight:600}.scm-difficulty--easy{color:var(--green)}.scm-difficulty--medium{color:var(--orange)}.scm-difficulty--hard{color:var(--red)}.scm-dot{color:var(--border);font-size:12px}.scm-title{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--text-heading);margin:0 0 6px}.scm-subtitle{font-size:12px;color:var(--text-muted);margin:0;line-height:1.5}.scm-body{padding:20px 24px;gap:20px}.scm-body,.scm-group{display:flex;flex-direction:column}.scm-group{gap:8px}.scm-group-title{font-size:10px;font-weight:700;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0}.scm-group-options{display:flex;flex-direction:column;gap:6px}.scm-option{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;text-align:left;transition:border-color .15s,background .15s;width:100%}.scm-option:hover{border-color:rgba(255,255,255,.14);background:var(--bg-hover)}.scm-option--selected{border-color:rgba(232,119,74,.45);background:var(--accent-dim)}.scm-option-icon{font-size:16px;flex-shrink:0;width:22px;text-align:center}.scm-option-body{display:flex;flex-direction:column;gap:2px;flex:1 1;min-width:0}.scm-option-label{font-size:13px;font-weight:600;color:var(--text);font-family:var(--font-heading)}.scm-option--selected .scm-option-label{color:var(--accent-hover)}.scm-option-desc{font-size:11px;color:var(--text-muted);line-height:1.45}.scm-option-check{font-size:14px;color:var(--border);flex-shrink:0;transition:color .15s}.scm-option--selected .scm-option-check{color:var(--accent)}.scm-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border-soft)}.scm-cancel{font-size:13px;font-family:var(--font-body);color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius);padding:8px 16px;cursor:pointer;transition:color .15s,border-color .15s}.scm-cancel:hover{color:var(--text);border-color:rgba(255,255,255,.18)}.scm-start{font-size:13px;font-weight:700;font-family:var(--font-body);color:var(--accent-text);background:var(--accent);border:none;border-radius:var(--radius);padding:8px 20px;cursor:pointer;box-shadow:var(--accent-glow);transition:background .15s,box-shadow .15s}.scm-start:hover{background:var(--accent-hover);box-shadow:0 4px 20px rgba(232,119,74,.4)}.pane-header{height:36px;min-height:36px;background:var(--bg-elevated);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 12px;gap:8px}.pane-label{font-family:var(--font-heading);font-weight:600;letter-spacing:.1em;text-transform:uppercase}.pane-badge,.pane-label{font-size:10px;color:var(--text-muted)}.pane-badge{font-weight:500;padding:2px 7px;border-radius:var(--radius-sm);background:var(--bg-hover);margin-left:auto}.pane-body{flex:1 1;overflow-y:auto;overflow-x:hidden}.pane-body--fill{overflow:hidden}.readme-body{padding:16px 16px 28px;color:var(--text)}.readme-body h1{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--text-heading);margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.readme-body h2{font-size:14px;margin-top:20px;margin-bottom:8px}.readme-body h2,.readme-body h3{font-family:var(--font-heading);font-weight:600;color:var(--text-heading)}.readme-body h3{font-size:13px;margin-top:16px;margin-bottom:6px}.readme-body p{font-size:13px;line-height:1.65;margin-bottom:10px;color:var(--text)}.readme-body code{font-family:var(--font-mono);font-size:11.5px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 5px;color:var(--amber)}.readme-body pre{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;overflow-x:auto;margin-bottom:12px}.readme-body pre code{background:none;border:none;padding:0;font-size:12px;color:var(--text)}.readme-body ol,.readme-body ul{padding-left:20px;margin-bottom:10px}.readme-body li{font-size:13px;line-height:1.65;color:var(--text)}.readme-body table{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:12px}.readme-body th{text-align:left;padding:7px 10px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-heading);font-weight:600}.readme-body td{padding:6px 10px;border:1px solid var(--border);color:var(--text)}.readme-body tr:nth-child(2n) td{background:rgba(255,255,255,.02)}.editor-tabs{display:flex;gap:2px;margin-left:8px}.editor-tab{font-size:12px;font-family:var(--font-body);padding:0 10px;height:24px;background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:color .1s,background .1s}.editor-tab:hover{color:var(--text)}.editor-copy-btn{margin-left:auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:7px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.editor-copy-btn:hover{background:rgba(255,255,255,.05);color:var(--text);border-color:rgba(255,255,255,.18)}.editor-copy-btn--copied{color:var(--green);border-color:var(--green)}.editor-tab--active{background:var(--bg-base);color:var(--text-heading);border-bottom-color:var(--bg-base)}.chat-pane{flex-direction:column}.chat-pane,.chat-setup-body{display:flex;overflow:hidden}.chat-setup-body{align-items:center;justify-content:center}.chat-key-setup{padding:28px 24px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;max-width:280px}.chat-key-icon{font-size:28px;color:var(--text-muted);opacity:.5;margin-bottom:4px}.chat-key-title{font-family:var(--font-heading);font-size:14px;font-weight:600;color:var(--text-heading)}.chat-key-hint{font-size:11px;color:var(--text-muted);line-height:1.6}.chat-key-hint code{font-family:var(--font-mono);font-size:10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 4px;color:var(--amber)}.chat-key-row{display:flex;gap:6px;width:100%;margin-top:4px}.chat-key-input{flex:1 1;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:12px;font-family:var(--font-body);padding:7px 10px;outline:none;min-width:0;transition:border-color .15s}.chat-key-input:focus{border-color:rgba(232,119,74,.5)}.chat-key-save{padding:7px 14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:12px;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;transition:background .15s,box-shadow .15s}.chat-key-save:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--accent-glow)}.chat-key-save:disabled{opacity:.4;cursor:not-allowed}.chat-clear-btn{margin-left:auto;font-size:11px;font-family:var(--font-body);padding:2px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:none;color:var(--text-muted);cursor:pointer;transition:color .1s,background .1s}.chat-clear-btn:hover{color:var(--text);background:var(--bg-hover)}.chat-messages{overflow-y:auto;overflow-x:hidden;padding:12px 10px 4px;gap:10px}.chat-empty,.chat-messages{flex:1 1;display:flex;flex-direction:column}.chat-empty{align-items:center;justify-content:center;gap:8px;text-align:center;color:var(--text-muted);padding:32px 16px}.chat-empty-icon{font-size:24px;opacity:.3}.chat-empty p{font-size:12px;line-height:1.6;max-width:220px}.chat-msg{display:flex;flex-direction:column;gap:4px}.chat-msg--user{align-items:flex-end}.chat-msg--assistant{align-items:flex-start}.chat-bubble{border-radius:var(--radius);font-size:12px;line-height:1.6;max-width:92%;word-break:break-word;padding:8px 12px}.chat-bubble--user{background:var(--accent);color:#fff;border-bottom-right-radius:2px;white-space:pre-wrap}.chat-bubble--assistant{background:var(--bg-elevated);color:var(--text);border-bottom-left-radius:2px;border:1px solid var(--border)}.chat-bubble--assistant p{margin:0 0 6px}.chat-bubble--assistant p:last-child{margin-bottom:0}.chat-bubble--assistant ol,.chat-bubble--assistant ul{padding-left:16px;margin:0 0 6px}.chat-bubble--assistant li{margin-bottom:2px}.chat-bubble--assistant h1,.chat-bubble--assistant h2,.chat-bubble--assistant h3{font-family:var(--font-heading);font-size:12px;font-weight:600;color:var(--text-heading);margin:8px 0 4px}.chat-bubble--assistant code{font-family:var(--font-mono);font-size:11px;background:var(--bg-hover);border:1px solid var(--border);border-radius:3px;padding:0 3px;color:var(--amber)}.chat-bubble--assistant pre{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;overflow-x:auto;margin:6px 0}.chat-bubble--assistant pre code{background:none;border:none;padding:0;font-size:11px;color:var(--text)}.chat-cursor{display:inline-block;width:1px;animation:blink .8s step-end infinite;color:var(--accent);font-size:13px;margin-left:1px}@keyframes blink{50%{opacity:0}}.chat-apply-btn{align-self:flex-start;font-size:11px;font-weight:500;font-family:var(--font-body);padding:3px 10px;border-radius:var(--radius-sm);border:1px solid rgba(92,184,126,.4);background:var(--green-dim);color:var(--green);cursor:pointer;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis;transition:background .1s,border-color .1s}.chat-apply-btn:hover{background:rgba(92,184,126,.2);border-color:var(--green)}.chat-error-banner{font-size:11px;color:var(--red);background:var(--red-dim);border:1px solid rgba(217,83,79,.3);border-radius:var(--radius);padding:7px 10px;word-break:break-word}.chat-quick-actions{padding:6px 10px;display:flex;flex-wrap:wrap;gap:5px;border-top:1px solid var(--border);background:var(--bg-surface)}.chat-quick-btn{font-size:11px;font-weight:500;font-family:var(--font-body);padding:3px 9px;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color .1s,background .1s,border-color .1s}.chat-quick-btn:hover:not(:disabled){color:var(--text);background:var(--bg-hover);border-color:rgba(255,255,255,.15)}.chat-quick-btn:disabled{opacity:.35;cursor:not-allowed}.chat-input-form{display:flex;gap:6px;padding:8px 10px;border-top:1px solid var(--border);background:var(--bg-surface);align-items:flex-end}.chat-textarea{flex:1 1;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:12px;font-family:var(--font-body);padding:7px 10px;outline:none;resize:none;line-height:1.5;min-height:0;transition:border-color .15s}.chat-textarea:focus{border-color:rgba(232,119,74,.5)}.chat-textarea:disabled{opacity:.5;cursor:not-allowed}.chat-send-btn{width:34px;height:34px;flex-shrink:0;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,box-shadow .15s}.chat-send-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--accent-glow)}.chat-send-btn:disabled{opacity:.35;cursor:not-allowed}.editor-pane{display:flex;flex-direction:column;height:100%;overflow:hidden}.editor-pane-header{padding:0 8px;gap:0}.editor-area{flex:1 1;overflow:hidden;min-height:0}.btn-run-tests{margin-left:auto;padding:4px 12px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,box-shadow .15s,opacity .15s}.btn-run-tests:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--accent-glow)}.btn-run-tests--running,.btn-run-tests:disabled{opacity:.5;cursor:default}.test-panel{height:100%;display:flex;flex-direction:column;background:var(--bg-surface);overflow:hidden}.test-empty-state{flex:1 1;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-muted)}.test-panel-header{height:32px;min-height:32px;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--bg-elevated);border-bottom:1px solid var(--border)}.test-panel-label{font-family:var(--font-heading);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.test-panel-score{font-size:12px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.score--pass{color:var(--green)}.score--fail{color:var(--red)}.test-panel-body{flex:1 1;overflow-y:auto;padding:6px 0}.test-module-error{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:var(--red-dim);border-left:3px solid var(--red);margin:6px 8px;border-radius:0 var(--radius) var(--radius) 0}.test-error-title{font-family:var(--font-heading);font-size:12px;font-weight:600;color:var(--red);margin-bottom:4px}.test-error-message{font-family:var(--font-mono);font-size:11px;color:#f48fb1;white-space:pre-wrap;word-break:break-word;margin:0}.test-section{padding:0 0 8px}.test-section-title{display:flex;align-items:center;gap:8px;font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;padding:6px 12px 4px}.test-section-count,.test-section-title{font-size:10px;font-weight:600;color:var(--text-muted)}.test-section-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.test-console-section{border-top:1px solid var(--border-soft)}.test-console{margin:4px 10px 8px;padding:10px 12px;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:11px;line-height:1.65;color:var(--text);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto}.test-console--empty{color:var(--text-muted);font-style:italic}.test-row{display:flex;align-items:flex-start;gap:8px;padding:5px 12px;border-radius:var(--radius-sm);margin:0 4px 1px;transition:background .1s}.test-row--pass{background:rgba(92,184,126,.05)}.test-row--fail{background:rgba(217,83,79,.06)}.test-row--pass:hover{background:rgba(92,184,126,.1)}.test-row--fail:hover{background:rgba(217,83,79,.12)}.test-icon{font-size:12px;line-height:20px;flex-shrink:0;width:14px;text-align:center}.test-icon--pass{color:var(--green)}.test-icon--fail{color:var(--red)}.test-row-content{flex:1 1;min-width:0}.test-description{font-size:12px;color:var(--text);line-height:20px}.test-details{margin-top:4px;display:flex;flex-direction:column;gap:2px;padding-bottom:4px}.test-detail-row{display:flex;align-items:baseline;gap:8px}.test-detail-label{font-family:var(--font-heading);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);width:52px;flex-shrink:0}.test-detail-value{font-family:var(--font-mono);font-size:11px;white-space:pre-wrap;word-break:break-all}.test-call{color:var(--text-muted)}.test-expected{color:var(--green)}.test-actual-fail{color:var(--red)}.test-next-part{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;margin:8px;border-radius:var(--radius);background:var(--green-dim);border:1px solid rgba(92,184,126,.3)}.test-next-part--complete{justify-content:center;background:rgba(92,184,126,.06)}.test-next-part-label{font-size:12px;font-weight:500;color:var(--green)}.test-next-part-btn{font-family:var(--font-body);font-size:12px;font-weight:600;padding:4px 12px;border-radius:var(--radius-sm);border:1px solid rgba(92,184,126,.5);background:none;color:var(--green);cursor:pointer;white-space:nowrap;transition:background .1s}.test-next-part-btn:hover{background:var(--green-dim)}.evlog-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:900;display:flex;justify-content:flex-end}.evlog-panel{width:500px;max-width:100vw;background:var(--bg-surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.evlog-header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.evlog-title{font-family:var(--font-heading);font-size:13px;font-weight:600;color:var(--text-heading)}.evlog-count{font-size:11px;color:var(--text-muted);flex:1 1}.evlog-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;line-height:1;padding:3px 6px;border-radius:var(--radius-sm);transition:color .1s,background .1s}.evlog-close:hover{color:var(--text);background:var(--bg-hover)}.evlog-body{flex:1 1;overflow-y:auto}.evlog-empty{padding:40px 20px;text-align:center;color:var(--text-muted);font-size:12px;line-height:1.6}.evlog-footer{padding:8px 14px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;flex-shrink:0}.evlog-copy-btn{font-size:11px;font-family:var(--font-body);padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:none;color:var(--text-muted);cursor:pointer;transition:color .1s,background .1s}.evlog-copy-btn:hover{background:var(--bg-hover);color:var(--text)}.evlog-row{padding:8px 14px;border-bottom:1px solid var(--border);cursor:pointer;font-size:12px;transition:background .1s}.evlog-row:hover{background:var(--bg-elevated)}.evlog-row-meta{display:flex;align-items:center;gap:7px}.evlog-row-idx{min-width:24px}.evlog-row-idx,.evlog-row-time{font-size:10px;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.evlog-row-time{min-width:42px}.evlog-row-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 5px;border-radius:var(--radius-sm);flex-shrink:0}.evlog-row-summary{color:var(--text-muted);flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.evlog-row-chevron{color:var(--text-muted);font-size:10px;flex-shrink:0}.evlog-row-data{margin-top:7px;padding:8px 10px;background:var(--bg-elevated);border-radius:var(--radius-sm);color:var(--text-muted);font-size:11px;white-space:pre-wrap;word-break:break-all;max-height:180px;overflow-y:auto;line-height:1.5}.evlog-row--prompt_sent .evlog-row-badge{background:rgba(201,165,85,.15);color:var(--amber)}.evlog-row--ai_response .evlog-row-badge{background:rgba(139,95,211,.15);color:#b07ef5}.evlog-row--code_applied .evlog-row-badge{background:rgba(92,184,126,.15);color:var(--green)}.evlog-row--code_edited .evlog-row-badge{background:rgba(232,119,74,.15);color:var(--accent)}.evlog-row--tests_run .evlog-row-badge{background:rgba(64,200,216,.12);color:#40c8d8}.evlog-row--part_advanced .evlog-row-badge{background:rgba(170,204,68,.12);color:#aacc44}.chat-upgrade-body{display:flex;align-items:center;justify-content:center;flex:1 1;padding:24px}.chat-upgrade{text-align:center;max-width:260px;display:flex;flex-direction:column;align-items:center;gap:10px}.chat-upgrade-icon{font-size:36px;line-height:1;margin-bottom:4px}.chat-upgrade-title{font-family:var(--font-heading);font-size:15px;font-weight:600;color:var(--text-heading)}.chat-upgrade-sub{font-size:12px;color:var(--text-muted);line-height:1.65}.chat-upgrade-btn{font-family:var(--font-body);font-size:13px;font-weight:700;padding:10px 20px;border-radius:var(--radius);border:none;background:var(--accent);color:#fff;cursor:pointer;margin-top:4px;width:100%;box-shadow:0 2px 12px rgba(232,119,74,.3);transition:background .15s,box-shadow .15s}.chat-upgrade-btn:hover{background:var(--accent-hover);box-shadow:0 4px 20px rgba(232,119,74,.4)}.chat-upgrade-note{font-size:11px;color:var(--text-muted);line-height:1.5}.chat-budget{font-family:var(--font-heading);font-size:10px;font-weight:600;padding:2px 7px;border-radius:var(--radius-sm);background:rgba(255,255,255,.05);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-left:auto}.chat-budget--warn{background:rgba(212,136,58,.14);color:var(--orange)}.chat-budget--crit{background:rgba(217,83,79,.18);color:var(--red)}.chat-window-notice{font-size:10px;color:var(--text-muted);text-align:center;padding:4px 12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:4px 0;font-style:italic}.chat-budget-notice{font-size:11px;color:var(--red);background:var(--red-dim);border:1px solid rgba(217,83,79,.25);border-radius:var(--radius-sm);padding:8px 12px;margin:6px 0;text-align:center}.topbar-timer--warning .topbar-timer-icon,.topbar-timer--warning .topbar-timer-value{animation:pulseSoft 1.6s ease-in-out infinite}.topbar-timer--expired .topbar-timer-icon{animation:pulseSoft .9s ease-in-out infinite}.sidebar-file{transition:background .15s,padding-left .15s ease}.sidebar-file:hover{padding-left:14px}.sidebar-file-dot{transition:background .2s,border-color .2s,box-shadow .2s}.sidebar-file--active .sidebar-file-dot{box-shadow:0 0 6px rgba(232,119,74,.6)}.editor-tab{transition:color .15s,background .15s,transform .12s}.editor-tab:hover{transform:translateY(-1px)}.editor-tab--active:hover{transform:none}.btn-run-tests:hover:not(:disabled){transform:translateY(-1px)}.btn-run-tests{transition:background .15s,box-shadow .15s,opacity .15s,transform .12s}.btn-run-tests:active:not(:disabled){transform:translateY(0)}.chat-msg{animation:fadeUp .25s ease both}.chat-empty-icon{animation:floatY 3.2s ease-in-out infinite}.chat-send-btn{transition:background .15s,box-shadow .15s,transform .15s}.chat-send-btn:hover:not(:disabled){transform:scale(1.07)}.chat-send-btn:active:not(:disabled){transform:scale(.94)}.chat-quick-btn{transition:color .15s,background .15s,border-color .15s,transform .12s}.chat-quick-btn:hover:not(:disabled){transform:translateY(-1px)}.chat-apply-btn{transition:background .15s,border-color .15s,transform .12s}.chat-apply-btn:hover{transform:translateY(-1px)}.chat-error-banner{animation:fadeUp .25s ease both}.test-row{animation:fadeIn .3s ease both}.test-icon--pass{animation:popIn .3s cubic-bezier(.34,1.56,.64,1) both}.test-icon--fail{animation:popIn .25s ease both}.test-next-part{animation:fadeUp .35s ease both}.test-module-error{animation:fadeUp .3s ease both}.evlog-overlay{animation:fadeIn .2s ease both}.evlog-panel{animation:slideInRight .28s cubic-bezier(.22,1,.36,1) both}.pwm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1100;padding:24px;animation:pwmFadeIn .15s ease}@keyframes pwmFadeIn{0%{opacity:0}to{opacity:1}}.pwm-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:0 24px 64px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.04);display:flex;flex-direction:column;overflow:hidden;animation:pwmSlideUp .18s cubic-bezier(.22,1,.36,1)}@keyframes pwmSlideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.pwm-icon-wrap{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:rgba(201,165,85,.12);border:1px solid rgba(201,165,85,.28);color:var(--amber);margin:28px auto 0;flex-shrink:0}.pwm-body{padding:16px 28px 8px;text-align:center;display:flex;flex-direction:column;gap:6px}.pwm-eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--amber)}.pwm-eyebrow,.pwm-title{font-weight:700;margin:0}.pwm-title{font-family:var(--font-heading);font-size:17px;color:var(--text-heading);letter-spacing:-.2px;text-wrap:balance}.pwm-desc{font-size:13px;line-height:1.65;color:var(--text-muted);margin:4px 0 0;text-wrap:balance}.pwm-footer{display:flex;gap:8px;padding:20px 24px 24px}.pwm-cancel{flex:1 1;padding:9px 0;font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.pwm-cancel:hover{color:var(--text);border-color:rgba(255,255,255,.16);background:var(--bg-hover)}.pwm-confirm{flex:1 1;padding:9px 0;font-family:var(--font-body);font-size:13px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer;box-shadow:0 2px 10px rgba(232,119,74,.3);transition:background .15s,box-shadow .15s}.pwm-confirm:hover{background:var(--accent-hover);box-shadow:0 4px 18px rgba(232,119,74,.45)}.workbench-hover-container{display:none!important}.btn-run-tests{display:inline-flex;align-items:center;gap:7px;padding:5px 12px}.btn-run-kbd{font-family:var(--font-mono);font-size:10px;font-weight:500;line-height:1;padding:2px 5px;border-radius:3px;background:rgba(255,255,255,.16);color:rgba(255,255,255,.85)}.btn-run-spinner{width:11px;height:11px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:runSpin .7s linear infinite}@keyframes runSpin{to{transform:rotate(1turn)}}.test-empty-state{flex-direction:column;gap:8px}.test-empty-hint{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted);opacity:.75}.test-empty-hint kbd{font-family:var(--font-mono);font-size:10px;padding:2px 6px;border-radius:4px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text)}.test-progress{height:2px;min-height:2px;background:var(--bg-hover);overflow:hidden}.test-progress-fill{height:100%;background:var(--accent);border-radius:0 1px 1px 0;transition:width .45s cubic-bezier(.22,1,.36,1),background .3s ease}.test-progress-fill--pass{background:var(--green);box-shadow:0 0 8px rgba(92,184,126,.6)}.test-row{animation:testRowIn .3s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--row-i, 0) * 35ms)}@keyframes testRowIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.score--allpass{animation:scorePop .45s cubic-bezier(.34,1.56,.64,1) both}@keyframes scorePop{0%{transform:scale(.8)}60%{transform:scale(1.15)}to{transform:scale(1)}}.test-next-part{box-shadow:0 0 20px rgba(92,184,126,.12),inset 0 1px 0 rgba(255,255,255,.04)}.test-next-part-check{display:inline-flex;margin-right:6px;font-weight:700;animation:checkPop .4s cubic-bezier(.34,1.56,.64,1) .15s both}@keyframes checkPop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.test-next-part-btn{background:var(--green);border-color:var(--green);color:#0e1a12;font-weight:700;transition:filter .15s,box-shadow .15s,transform .1s}.test-next-part-btn:hover{background:var(--green);filter:brightness(1.1);box-shadow:0 2px 12px rgba(92,184,126,.4)}.test-next-part-btn:active{transform:scale(.97)}.topbar{position:relative;z-index:5;box-shadow:0 2px 10px rgba(0,0,0,.3)}.pane-header,.sidebar-readme-header,.sidebar-section-header,.test-panel-header{background:linear-gradient(180deg,#242119,#1e1c17);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}.sidebar{box-shadow:inset -12px 0 18px -14px rgba(0,0,0,.5)}.resize-handle{transition:background .15s ease}.hl-code.monaco-editor{position:static;overflow-x:auto;font-family:var(--font-mono);background:var(--bg-base);box-shadow:none}@media (prefers-reduced-motion:reduce){.score--allpass,.test-next-part-check,.test-row{animation:none}.test-progress-fill{transition:none}}.editor-tabs{overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap;min-width:0}.editor-tabs::-webkit-scrollbar{display:none}.editor-tab{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.editor-tab-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-tab-close{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:3px;font-size:13px;line-height:1;color:var(--text-muted);opacity:0;transition:opacity .1s,background .1s,color .1s}.editor-tab--active .editor-tab-close,.editor-tab:hover .editor-tab-close{opacity:.7}.editor-tab-close:hover{opacity:1;background:rgba(255,255,255,.1);color:var(--text)}.answer-files{display:flex;flex-direction:column;gap:0;margin:0 10px}.answer-files-tabs{display:flex;flex-wrap:wrap;gap:3px;padding-bottom:8px}.answer-file-tab{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10px;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:none;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:color .1s,background .1s,border-color .1s}.answer-file-tab:hover{color:var(--text);background:var(--bg-hover)}.answer-file-tab--active{color:var(--text-heading);background:var(--accent-dim);border-color:rgba(232,119,74,.4)}.answer-file-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.answer-files-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:4px}.answer-files-toolbar .answer-copy-btn{margin-top:0}.answer-files-name{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.answer-files .hl-code{margin:0;padding:10px 12px;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:11px;line-height:1.65;color:var(--text);white-space:pre;overflow-x:auto;max-height:320px;overflow-y:auto}.scm-ai-locked-note{margin-top:12px;padding:10px 12px;border:1px solid rgba(212,136,58,.35);border-radius:var(--radius);font-size:12px;line-height:1.6}.rv-practice-badge,.scm-ai-locked-note{background:var(--orange-dim);color:var(--orange)}.rv-practice-badge{font-size:11px;font-weight:600;padding:3px 9px;border-radius:var(--radius-sm);border:1px solid rgba(212,136,58,.35);white-space:nowrap}.rv-ai-locked-card{display:flex;flex-direction:column;gap:10px}.rv-ai-locked-text{font-size:13px;line-height:1.7;color:var(--text-muted);margin:0}.rv-ai-locked-btn{align-self:flex-start;padding:8px 14px;font-size:13px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer;transition:background .15s,box-shadow .15s}.rv-ai-locked-btn:hover{background:var(--accent-hover);box-shadow:var(--accent-glow)}.topbar-report-btn{font-size:11px;font-weight:500;font-family:var(--font-body);padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:none;color:var(--text-muted);text-decoration:none;cursor:pointer;white-space:nowrap;transition:color .15s,background .15s,border-color .15s}.topbar-report-btn:hover{background:var(--bg-hover);color:var(--text);border-color:rgba(255,255,255,.15)}.rim-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:200;animation:rimFadeIn .15s ease both}@keyframes rimFadeIn{0%{opacity:0}to{opacity:1}}.rim-modal{width:min(480px,calc(100vw - 32px));background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:20px;display:flex;flex-direction:column;gap:12px;animation:rimPop .18s cubic-bezier(.22,1,.36,1) both}@keyframes rimPop{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:none}}.rim-header{display:flex;flex-direction:column;gap:4px}.rim-title{font-family:var(--font-heading);font-size:17px;color:var(--text-heading);margin:0}.rim-context{font-size:12px;color:var(--text-muted)}.rim-textarea{width:100%;resize:vertical;min-height:110px;padding:10px 12px;background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:var(--font-body);font-size:13px;line-height:1.6}.rim-textarea:focus{outline:none;border-color:rgba(232,119,74,.5)}.rim-hint{font-size:11px;color:var(--text-muted);opacity:.75;margin:0}.rim-error{font-size:12px;color:var(--red);background:var(--red-dim);border:1px solid rgba(217,83,79,.35);border-radius:var(--radius);padding:8px 10px;line-height:1.6}.rim-error a{color:var(--red);text-decoration:underline}.rim-actions{display:flex;justify-content:flex-end;gap:8px}.rim-cancel{padding:7px 14px;font-size:13px;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:color .15s}.rim-cancel:hover{color:var(--text)}.rim-submit{padding:7px 16px;font-size:13px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer;transition:background .15s,opacity .15s}.rim-submit:hover:not(:disabled){background:var(--accent-hover)}.rim-submit:disabled{opacity:.45;cursor:default}.rim-success{padding:22px 0;text-align:center;font-size:14px;font-weight:600;color:var(--green)}.tum-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);justify-content:center;z-index:250;animation:rimFadeIn .15s ease both}.tum-modal,.tum-overlay{display:flex;align-items:center}.tum-modal{width:min(420px,calc(100vw - 32px));background:var(--bg-surface);border:1px solid rgba(217,83,79,.55);border-radius:var(--radius-lg);box-shadow:0 8px 40px rgba(0,0,0,.65),0 0 32px rgba(217,83,79,.18);padding:26px 24px 22px;flex-direction:column;text-align:center;gap:10px;animation:tumPop .25s cubic-bezier(.34,1.56,.64,1) both}@keyframes tumPop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.tum-icon{font-size:34px}.tum-title{font-family:var(--font-heading);font-size:21px;color:var(--red);margin:0}.tum-text{font-size:13.5px;line-height:1.7;color:var(--text);margin:0;max-width:330px}.tum-actions{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap;justify-content:center}.tum-continue{padding:9px 16px;font-size:13px;font-weight:600;color:var(--text);background:none;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,color .15s}.tum-continue:hover{border-color:var(--text-muted)}.tum-end{padding:9px 16px;font-size:13px;font-weight:700;color:#fff;background:var(--red);border:none;border-radius:var(--radius);cursor:pointer;transition:filter .15s,box-shadow .15s}.tum-end:hover{filter:brightness(1.12);box-shadow:0 2px 14px rgba(217,83,79,.45)}@media (prefers-reduced-motion:reduce){.tum-modal,.tum-overlay{animation:none}}.rv-root{min-height:100vh;background:var(--bg-base);color:var(--text);display:flex;flex-direction:column;overflow-y:auto}.rv-loading-screen{align-items:center;justify-content:center;gap:0;position:relative;overflow:hidden}.rv-loading-orb{position:absolute;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(232,119,74,.12) 0,transparent 70%);pointer-events:none}.rv-loading-spinner{display:flex;gap:8px;margin-bottom:24px}.rv-loading-spinner span{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:rvSpinnerPulse 1.2s ease-in-out infinite}.rv-loading-spinner span:nth-child(2){animation-delay:.2s;background:var(--amber)}.rv-loading-spinner span:nth-child(3){animation-delay:.4s}@keyframes rvSpinnerPulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.rv-loading-title{margin:0 0 8px;font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--text-heading)}.rv-loading-sub{margin:0;font-size:13px;color:var(--text-muted)}.rv-header{display:flex;align-items:center;gap:16px;padding:12px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0}.rv-back{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;font-family:var(--font-body);padding:4px 0;white-space:nowrap;transition:color .15s}.rv-back:hover{color:var(--text)}.rv-header-center{flex:1 1;display:flex;align-items:center;gap:10px}.rv-scenario-title{font-family:var(--font-heading);font-size:14px;font-weight:600;color:var(--text-heading)}.rv-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;padding:2px 7px;border-radius:var(--radius-sm);background:var(--accent-dim);color:var(--accent)}.rv-header-right{flex-shrink:0}.rv-calibration-note{font-size:11px;color:var(--text-muted);font-style:italic}.rv-saved-badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:var(--radius-sm);background:var(--green-dim);color:var(--green);letter-spacing:.03em}.rv-headline{padding:14px 24px;font-family:var(--font-heading);font-size:14px;font-weight:500;color:var(--text-heading);background:var(--bg-elevated);border-bottom:1px solid var(--border);flex-shrink:0}.rv-headline--error{color:var(--orange)}.rv-body{display:flex;flex-direction:row;padding:20px;gap:20px;flex:1 1}.rv-left,.rv-right{display:flex;flex-direction:column;gap:16px}.rv-left{width:340px;flex-shrink:0}.rv-right{flex:1 1;min-width:0}.rv-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-sm)}.rv-card--radar{display:flex;flex-direction:column;align-items:center}.rv-card-title{font-family:var(--font-heading);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:12px}.rv-card-title--green{color:var(--green)}.rv-card-title--orange{color:var(--orange)}.rv-score-row{margin-bottom:10px}.rv-score-label{font-size:12px;color:var(--text);margin-bottom:4px}.rv-score-bar-wrap{display:flex;align-items:center;gap:8px;height:6px;background:var(--bg-elevated);border-radius:3px;overflow:hidden;width:100%}.rv-score-bar{height:100%;border-radius:3px;transition:width .6s ease}.rv-score-num{font-weight:600;min-width:28px;text-align:right}.rv-score-evidence,.rv-score-num{font-size:11px;color:var(--text-muted)}.rv-score-evidence{font-style:italic;margin-top:3px;line-height:1.5}.rv-feedback-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.rv-feedback-text{font-size:12px;color:var(--text);line-height:1.65}.rv-signals-table{width:100%;border-collapse:collapse;font-size:12px}.rv-sig-label{color:var(--text-muted);padding:3px 12px 3px 0;white-space:nowrap;vertical-align:top}.rv-sig-value{color:var(--text);padding:3px 0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rv-timeline-section{padding:0 20px 24px}.rv-tl-title{margin-bottom:8px}.rv-timeline{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.rv-tl-empty{padding:20px;color:var(--text-muted);font-size:12px;text-align:center}.rv-tl-row{display:flex;align-items:baseline;gap:8px;padding:6px 14px;border-bottom:1px solid var(--border);font-size:12px}.rv-tl-row:last-child{border-bottom:none}.rv-tl-row--fail{background:rgba(217,83,79,.05)}.rv-tl-row--pass{background:rgba(92,184,126,.05)}.rv-tl-idx{min-width:26px}.rv-tl-idx,.rv-tl-time{font-size:10px;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rv-tl-time{min-width:44px}.rv-tl-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;min-width:52px}.rv-tl-summary{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1}.rv-card{animation:fadeUp .45s ease both}.rv-left .rv-card:nth-child(2){animation-delay:70ms}.rv-left .rv-card:nth-child(3){animation-delay:.14s}.rv-right .rv-card:nth-child(2){animation-delay:.1s}.rv-headline{animation:fadeIn .4s ease both}.rv-timeline{animation:fadeUp .5s ease .15s both}.rv-card{transition:border-color .2s ease,box-shadow .2s ease}.rv-card:hover{border-color:rgba(255,255,255,.14);box-shadow:var(--shadow)}.hs-root{min-height:100vh;background:var(--bg-base);color:var(--text);display:flex;flex-direction:column}.hs-header{display:flex;align-items:center;gap:16px;padding:12px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0}.hs-back{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;font-family:var(--font-body);padding:4px 0;white-space:nowrap;transition:color .15s}.hs-back:hover{color:var(--text)}.hs-header-center{flex:1 1;display:flex;align-items:center;gap:10px}.hs-title{font-family:var(--font-heading);font-size:14px;font-weight:600;color:var(--text-heading)}.hs-count{font-size:11px;color:var(--text-muted);padding:2px 8px;border-radius:var(--radius-sm);background:var(--bg-hover)}.hs-main{max-width:1000px;margin:0 auto;padding:32px 48px 64px;width:100%}.hs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));grid-gap:16px;gap:16px}.hs-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-sm);transition:border-color .2s,box-shadow .2s,transform .15s}.hs-card:hover{border-color:rgba(232,119,74,.3);box-shadow:var(--shadow);transform:translateY(-1px)}.hs-card-header{justify-content:space-between;gap:12px}.hs-card-header,.hs-card-meta{display:flex;align-items:center}.hs-card-meta{gap:8px}.hs-company{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted)}.hs-difficulty{font-size:12px;font-weight:600}.hs-difficulty:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:5px;vertical-align:1px}.hs-card-date{font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.hs-scenario-title{font-family:var(--font-heading);font-size:16px;font-weight:600;color:var(--text-heading)}.hs-headline{font-size:12px;color:var(--text-muted);font-style:italic;line-height:1.6;margin:-4px 0}.hs-scores{display:grid;grid-template-columns:1fr 1fr;grid-gap:5px 16px;gap:5px 16px}.hs-score-row{display:flex;align-items:center;gap:6px}.hs-score-label{font-size:10px;color:var(--text-muted);width:54px;flex-shrink:0;text-align:right;white-space:nowrap}.hs-score-bar-wrap{flex:1 1;height:4px;background:var(--bg-elevated);border-radius:2px;overflow:hidden}.hs-score-bar{height:100%;border-radius:2px;transition:width .5s ease}.hs-score-num{font-size:10px;font-weight:600;min-width:22px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hs-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px solid var(--border-soft);margin-top:2px}.hs-avg{font-size:12px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hs-view-btn{font-family:var(--font-body);font-size:12px;font-weight:600;padding:5px 12px;border-radius:var(--radius-sm);border:1px solid rgba(232,119,74,.4);background:var(--accent-dim);color:var(--accent);cursor:pointer;transition:background .15s,border-color .15s,transform .1s}.hs-view-btn:hover{background:rgba(232,119,74,.2);border-color:var(--accent);transform:translateY(-1px)}.hs-state{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:64px 24px;color:var(--text-muted);font-size:14px;text-align:center}.hs-state--error{color:var(--red)}.hs-empty-icon{font-size:40px;opacity:.4}@media (max-width:768px){.hs-main{padding:24px 20px 48px}.hs-grid{grid-template-columns:1fr}}.pf-root{min-height:100vh;background:var(--bg-base)}.pf-header{background:var(--bg-surface);border-bottom:1px solid var(--border);position:relative;overflow:hidden}.pf-header:before{content:"";position:absolute;top:-60px;left:-80px;width:480px;height:320px;background:radial-gradient(ellipse,rgba(232,119,74,.08) 0,transparent 62%);pointer-events:none}.pf-header-inner{max-width:1000px;margin:0 auto;padding:0 48px;position:relative}.pf-nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border-soft)}.pf-back-btn{background:none;border:none;color:var(--text-muted);font-family:var(--font-body);font-size:13px;cursor:pointer;padding:0;transition:color .15s}.pf-back-btn:hover{color:var(--text)}.pf-nav-actions{display:flex;gap:8px}.pf-hero{gap:20px;padding:28px 0 32px}.pf-avatar,.pf-hero{display:flex;align-items:center}.pf-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0,var(--amber) 100%);justify-content:center;font-family:var(--font-heading);font-size:22px;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:-.5px;box-shadow:0 0 0 3px rgba(232,119,74,.18),0 4px 18px rgba(232,119,74,.22)}.pf-hero-info{display:flex;flex-direction:column;gap:3px}.pf-hero-name{font-family:var(--font-heading);font-size:24px;font-weight:700;color:var(--text-heading);letter-spacing:-.5px;line-height:1.15}.pf-hero-email{font-size:13px;color:var(--text-muted)}.pf-hero-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted);margin-top:2px}.pf-hero-dot{width:3px;height:3px;border-radius:50%;background:var(--text-muted);opacity:.45;flex-shrink:0}.pf-main{max-width:1000px;margin:0 auto;padding:32px 48px 80px}.pf-loading{text-align:center;padding:72px 0;color:var(--text-muted);font-size:14px}.pf-stat-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:14px}.pf-stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px 18px;display:flex;flex-direction:column;gap:5px;position:relative;overflow:hidden;transition:border-color .2s,transform .2s;animation:fadeUp .45s ease both}.pf-stat-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px)}.pf-stat-card:first-child{animation-delay:.04s}.pf-stat-card:nth-child(2){animation-delay:.09s}.pf-stat-card:nth-child(3){animation-delay:.14s}.pf-stat-card:nth-child(4){animation-delay:.19s}.pf-stat-accent-bar{position:absolute;top:0;left:0;right:0;height:2px;background:var(--stat-accent,var(--accent));border-radius:2px 2px 0 0}.pf-stat-card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:50%;background:linear-gradient(180deg,rgba(255,255,255,.022),transparent);pointer-events:none}.pf-stat-num{font-family:var(--font-heading);font-size:38px;font-weight:700;letter-spacing:-1.5px;color:var(--text-heading);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;position:relative}.pf-stat-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);position:relative}.pf-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px;animation:fadeUp .5s ease .24s both}.pf-section-heading{font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:.09em;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between}.pf-section-heading,.pf-section-sub{font-size:11px;color:var(--text-muted)}.pf-section-sub{font-family:var(--font-body);font-weight:500;text-transform:none;letter-spacing:0;opacity:.65}.pf-charts-row{display:flex;gap:12px;align-items:stretch;margin-bottom:14px}.pf-chart-card{flex:1 1 auto;min-width:0}.pf-radar-card{flex:0 0 292px;display:flex;flex-direction:column;animation-delay:.29s}.pf-radar-wrap{flex:1 1;display:flex;align-items:center;justify-content:center;padding:4px 0}.pf-radar-wrap svg{width:100%;height:auto;max-width:248px}.pf-trend-svg{width:100%;height:auto;display:block}.pf-chart-placeholder{font-size:13px;color:var(--text-muted);text-align:center;padding:44px 0;line-height:1.6}.pf-breakdown-card{margin-bottom:14px;animation-delay:.33s}.pf-skill-rows{display:flex;flex-direction:column}.pf-skill-row{display:flex;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid var(--border-soft)}.pf-skill-row:last-child{border-bottom:none}.pf-skill-name{width:126px;flex-shrink:0;font-size:13px;color:var(--text);font-weight:500}.pf-skill-bar-track{flex:1 1;height:6px;background:var(--bg-elevated);border-radius:3px;overflow:hidden}.pf-skill-bar-fill{height:100%;border-radius:3px;transform-origin:left;animation:growBar .75s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--row-i, 0) * 55ms + .35s)}.pf-skill-score{width:30px;font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pf-skill-score,.pf-skill-trend{text-align:right;font-weight:600;flex-shrink:0}.pf-skill-trend{width:52px;font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pf-skill-trend--up{color:var(--green)}.pf-skill-trend--dn{color:var(--red)}.pf-skill-trend--flat{color:var(--text-muted)}.pf-skill-trend--null{visibility:hidden}.pf-sessions-section{animation:fadeUp .5s ease .39s both}.pf-history-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.pf-filter-chips{display:flex;gap:6px;flex-wrap:wrap}.pf-filter-chip{padding:4px 12px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.pf-filter-chip:hover{background:var(--bg-elevated);color:var(--text)}.pf-filter-chip--active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.pf-filter-chip--easy.pf-filter-chip--active{background:rgba(92,184,126,.12);border-color:var(--green);color:var(--green)}.pf-filter-chip--medium.pf-filter-chip--active{background:rgba(212,136,58,.12);border-color:var(--orange);color:var(--orange)}.pf-filter-chip--hard.pf-filter-chip--active{background:rgba(217,83,79,.12);border-color:var(--red);color:var(--red)}.pf-sort-wrap{display:flex;align-items:center;gap:10px}.pf-filter-count{font-size:11px;color:var(--text-muted);white-space:nowrap}.pf-sort-select{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:12px;padding:4px 10px;cursor:pointer;outline:none;transition:border-color .12s}.pf-sort-select:focus,.pf-sort-select:hover{border-color:var(--accent)}.pf-filter-empty{color:var(--text-muted);font-size:13px;text-align:center;padding:32px 0}.pf-sessions-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px}.pf-session-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s,transform .15s}.pf-session-card:hover{border-color:rgba(255,255,255,.14);transform:translateY(-2px)}.pf-session-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.pf-session-meta{display:flex;align-items:center;gap:7px}.pf-session-company{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.pf-session-difficulty{font-size:10px;padding:1px 7px;border-radius:10px;background:var(--bg-elevated);color:var(--text-muted);font-weight:500}.pf-session-score{font-family:var(--font-heading);font-size:30px;font-weight:700;letter-spacing:-1px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.pf-session-title{font-family:var(--font-heading);font-size:15px;font-weight:600;color:var(--text-heading);letter-spacing:-.2px;line-height:1.3}.pf-session-headline{font-size:12px;color:var(--text-muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pf-session-footer{display:flex;align-items:center;gap:8px;margin-top:2px}.pf-session-date,.pf-session-dur{font-size:11px;color:var(--text-muted)}.pf-session-dur:before{content:"·";margin-right:8px;opacity:.45}.pf-session-view-btn{margin-left:auto;font-family:var(--font-body);font-size:11px;font-weight:600;padding:4px 11px;border-radius:var(--radius-sm);border:1px solid rgba(232,119,74,.36);background:var(--accent-dim);color:var(--accent);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .1s}.pf-session-view-btn:hover{background:rgba(232,119,74,.22);border-color:var(--accent);transform:translateY(-1px)}.pf-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:84px 24px;gap:12px;text-align:center;animation:fadeUp .5s ease both}.pf-empty-glyph{font-size:52px;color:var(--text-muted);opacity:.28;line-height:1}.pf-empty-title{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--text-heading)}.pf-empty-sub{font-size:14px;color:var(--text-muted);max-width:340px;line-height:1.65}@keyframes growBar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (max-width:900px){.pf-header-inner{padding:0 28px}.pf-main{padding:28px 28px 64px}.pf-stat-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.pf-header-inner{padding:0 20px}.pf-main{padding:20px 20px 48px}.pf-charts-row{flex-direction:column}.pf-radar-card{flex:none}.pf-sessions-grid{grid-template-columns:1fr}.pf-skill-name{width:90px}.pf-stat-num{font-size:30px}}.sub-root{min-height:100vh;background:var(--bg-base);display:flex;flex-direction:column}.sub-header{display:flex;align-items:center;gap:16px;padding:20px 32px;border-bottom:1px solid var(--border);background:var(--bg-surface)}.sub-back{background:none;border:none;color:var(--text-muted);font-family:var(--font-body);font-size:13px;cursor:pointer;padding:4px 0;transition:color .15s}.sub-back:hover{color:var(--text)}.sub-heading{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--text-heading);margin:0}.sub-body{flex:1 1;max-width:820px;margin:0 auto;padding:48px 32px;width:100%}.sub-current-label{font-size:14px;color:var(--text-muted);margin-bottom:24px;display:flex;align-items:center;gap:8px}.sub-tier-chip{font-size:11px;font-weight:600;padding:2px 8px;border-radius:99px;letter-spacing:.04em;text-transform:uppercase}.sub-tier-chip--free{background:rgba(212,136,58,.15);color:var(--orange)}.sub-tier-chip--pro{background:rgba(92,184,126,.15);color:var(--green)}.sub-usage-bar-wrap{margin-bottom:40px;padding:16px 20px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.sub-usage-labels{display:flex;justify-content:space-between;font-size:12px;margin-bottom:10px}.sub-usage-labels,.sub-usage-reset{color:var(--text-muted)}.sub-usage-track{height:4px;background:var(--bg-hover);border-radius:2px;overflow:hidden}.sub-usage-fill{height:100%;border-radius:2px;transition:width .3s ease}.sub-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.sub-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;display:flex;flex-direction:column;gap:20px}.sub-card--active{border-color:rgba(255,255,255,.15)}.sub-card--pro.sub-card--active{border-color:rgba(92,184,126,.35)}.sub-card--pro{background:var(--bg-elevated)}.sub-card-header{display:flex;flex-direction:column;gap:6px}.sub-card-name{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.sub-card-price{font-family:var(--font-heading);font-size:36px;font-weight:700;color:var(--text-heading);line-height:1}.sub-card-period{font-size:14px;font-weight:400;color:var(--text-muted)}.sub-current-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 8px;border-radius:99px;background:rgba(212,136,58,.15);color:var(--orange);letter-spacing:.04em;width:-moz-fit-content;width:fit-content}.sub-current-badge--pro{background:rgba(92,184,126,.15);color:var(--green)}.sub-card-includes{font-size:12px;color:var(--text-muted);margin:0}.sub-feature-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;flex:1 1}.sub-feature-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text);line-height:1.4}.sub-upgrade-btn{width:100%;padding:12px;background:var(--green);color:#0a1a10;font-family:var(--font-body);font-size:14px;font-weight:600;border:none;border-radius:var(--radius);cursor:pointer;transition:opacity .15s;margin-top:auto}.sub-upgrade-btn:hover{opacity:.88}.sub-manage-btn{width:100%;padding:12px;background:none;color:var(--text-muted);font-family:var(--font-body);font-size:13px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:color .15s,border-color .15s;margin-top:auto}.sub-manage-btn:hover{color:var(--text);border-color:rgba(255,255,255,.2)}@media (max-width:640px){.sub-cards{grid-template-columns:1fr}.sub-body{padding:32px 16px}}.sub-credits-note{margin:0 0 20px;padding:12px 14px;border:1px solid rgba(92,184,126,.28);border-radius:var(--radius);background:var(--green-dim);color:var(--text);font-size:13px;line-height:1.5}.sub-credits-note strong{color:var(--text-heading)}.legal-root{min-height:100vh;background:var(--bg-base);display:flex;flex-direction:column}.legal-header{padding:20px 48px;border-bottom:1px solid var(--border);background:var(--bg-surface)}.legal-back{font-family:var(--font-heading);font-size:14px;font-weight:600;color:var(--text-heading);text-decoration:none;transition:color .15s}.legal-back:hover{color:var(--accent)}.legal-body{flex:1 1;width:100%;max-width:720px;margin:0 auto;padding:48px 24px 64px;font-size:14.5px;line-height:1.75;color:var(--text)}.legal-body h1{font-family:var(--font-heading);font-size:28px;color:var(--text-heading);margin-bottom:6px;text-wrap:balance}.legal-updated{font-size:12px;color:var(--text-muted);margin-bottom:28px}.legal-body h2{font-family:var(--font-heading);font-size:17px;color:var(--text-heading);margin:30px 0 8px}.legal-body p,.legal-body ul{margin-bottom:12px}.legal-body ul{padding-left:22px;display:flex;flex-direction:column;gap:6px}.legal-body a{color:var(--accent);text-decoration:none}.legal-body a:hover{text-decoration:underline}.legal-footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 24px;border-top:1px solid var(--border-soft);font-size:12px;color:var(--text-muted)}.legal-footer a{color:var(--text-muted);text-decoration:none;transition:color .15s}.legal-footer a:hover{color:var(--text)}.sub-legal-note{font-size:11px;color:var(--text-muted);opacity:.75;text-align:center;margin-top:10px;line-height:1.6}.sub-legal-note a{color:var(--text-muted);text-decoration:underline}.sub-legal-note a:hover{color:var(--text)}@media (max-width:768px){.picker-header{padding:28px 24px 24px}.picker-main{padding:28px 24px 48px}.picker-header-inner{flex-direction:column;gap:16px}.picker-header-right{flex-wrap:wrap}.scenario-grid{grid-template-columns:1fr}.track-header{flex-direction:column;align-items:flex-start;gap:14px;padding:20px}.track-aside{align-self:flex-end}.track-grid{grid-template-columns:1fr}.track-body-inner{padding:0 16px}.track-body--open .track-body-inner{padding:0 16px 16px}.rv-body{flex-direction:column}.rv-left{width:100%}.rv-feedback-row{grid-template-columns:1fr}.rv-timeline-section{padding:0 16px 24px}}@media (max-width:480px){.picker-header{padding:20px 16px}.picker-main{padding:20px 16px 40px}.tier-banner{flex-wrap:wrap;gap:8px}.picker-logo{font-size:18px}.picker-subtitle{font-size:12px}.picker-logo-mark{width:28px;height:28px}.stats-row{gap:6px}.stats-item{padding:10px 11px}.stats-value{font-size:20px}.track-icon{width:36px;height:36px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.lp-mobile-note{display:none;margin-top:14px;padding:10px 14px;font-size:13px;line-height:1.6;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius)}.scm-mobile-note{display:none;margin:0 20px 4px;padding:10px 12px;font-size:12.5px;line-height:1.6;color:var(--orange);background:var(--orange-dim);border:1px solid rgba(212,136,58,.35);border-radius:var(--radius)}.workspace-mobile-gate{display:none;position:fixed;inset:0;z-index:300;background:var(--bg-base);flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px 24px}.workspace-mobile-gate-icon{font-size:40px}.workspace-mobile-gate-title{font-family:var(--font-heading);font-size:20px;color:var(--text-heading);margin:0;text-wrap:balance}.workspace-mobile-gate-text{font-size:14px;line-height:1.7;color:var(--text-muted);max-width:340px;margin:0}.workspace-mobile-gate-btn{margin-top:8px;padding:10px 18px;font-size:14px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer}@media (max-width:820px){.lp-mobile-note,.scm-mobile-note{display:block}.scm-start{display:none}.workspace-mobile-gate{display:flex}}.mn-overlay{display:none;position:fixed;inset:0;z-index:400;background:rgba(0,0,0,.72);align-items:center;justify-content:center;padding:24px}.mn-modal{width:min(400px,100%);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:28px 24px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.mn-icon{font-size:36px}.mn-title{font-family:var(--font-heading);font-size:20px;color:var(--text-heading);margin:0}.mn-text{font-size:14px;line-height:1.65;color:var(--text);margin:0}.mn-text--muted{color:var(--text-muted);font-size:13px}.mn-btn{margin-top:8px;width:100%;padding:11px 18px;font-size:14px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--radius);cursor:pointer}.mn-btn:hover{background:var(--accent-hover)}@media (max-width:820px){.mn-overlay{display:flex}}@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:ital,wght@0,400;0,500;0,600;1,400&family=JetBrains+Mono:wght@400;500&display=swap");