:root{--color-bg:#020617;--color-surface:#0f172a;--color-surface-raised:#111827;--color-surface-hover:#1e293b;--color-border:#243042;--color-border-subtle:#1e293b;--color-text:#f8fafc;--color-text-secondary:#cbd5e1;--color-text-tertiary:#7c8aa3;--color-accent:#22c55e;--color-accent-dim:#22c55e21;--color-accent-border:#22c55e7a;--color-warm:#f59e0b;--color-warm-dim:#f59e0b1f;--color-info:#60a5fa;--color-info-dim:#60a5fa1f;--color-user-bubble:#123a2a;--color-user-text:#dcfce7;--color-danger:#f87171;--color-danger-dim:#f871711f;--color-on-accent:#0f1117;--color-grid-line:#94a3b806;--color-panel-translucent:#0f172ac2;--color-topbar-bg:#0f172aeb;--color-ai-bubble:#0f172ad1;--color-config-section:#111827c7;--font-sans:"Plus Jakarta Sans", "Noto Sans SC", sans-serif;--font-mono:"SF Mono", "Fira Code", ui-monospace, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:6px;--radius-md:8px;--radius-lg:8px;--radius-xl:8px;--radius-full:9999px;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 18px 50px #00000042;--shadow-lg:0 24px 70px #0000005c;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--site-footer-height:32px;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;text-rendering:optimizelegibility;font-size:16px;line-height:1.6}:root[data-theme=light]{--color-bg:#f5f7fb;--color-surface:#fff;--color-surface-raised:#f8fafc;--color-surface-hover:#eef4f8;--color-border:#d7e0ea;--color-border-subtle:#e2e8f0;--color-text:#111827;--color-text-secondary:#475569;--color-text-tertiary:#64748b;--color-accent:#16a34a;--color-accent-dim:#16a34a1a;--color-accent-border:#16a34a5c;--color-warm:#d97706;--color-warm-dim:#d977061f;--color-info:#2563eb;--color-info-dim:#2563eb1a;--color-user-bubble:#dcfce7;--color-user-text:#14532d;--color-danger:#dc2626;--color-danger-dim:#dc26261a;--color-on-accent:#fff;--color-grid-line:#0f172a09;--color-panel-translucent:#ffffffc7;--color-topbar-bg:#ffffffeb;--color-ai-bubble:#f8fafceb;--color-config-section:#fff;--shadow-sm:0 1px 2px #0f172a14;--shadow-md:0 18px 50px #0f172a1f;--shadow-lg:0 24px 70px #0f172a24}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(var(--color-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid-line) 1px, transparent 1px), var(--color-bg);background-size:48px 48px;min-height:100vh;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}.theme-toggle{width:32px;height:32px;color:var(--color-text);background:var(--color-topbar-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:none;cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{color:var(--color-accent);border-color:var(--color-accent-border);transform:translateY(-1px)}.theme-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-header-actions .theme-toggle{background:var(--color-surface-raised)}.setup-view{min-height:100vh;padding:var(--space-6) var(--space-6) calc(var(--space-6) + var(--site-footer-height));background:var(--color-bg);justify-content:center;align-items:flex-start;display:flex}.auth-layout,.setup-workspace{width:100%;max-width:1180px;animation:.5s ease-out fadeSlideUp}.auth-layout{gap:var(--space-5);grid-template-columns:minmax(360px,480px) minmax(360px,420px);justify-content:center;align-items:stretch;display:grid}.auth-intro,.auth-panel,.setup-panel,.setup-overview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth-intro{min-height:520px;padding:var(--space-8);justify-content:flex-start;gap:var(--space-8);border-top:3px solid var(--color-accent);background:linear-gradient(180deg, #22c55e0f, transparent 42%), var(--color-surface);flex-direction:column;display:flex}.auth-panel{padding:var(--space-8);justify-content:center;gap:var(--space-6);flex-direction:column;display:flex}.loading-panel{width:min(100%,420px);padding:var(--space-8);align-items:center;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:.5s ease-out fadeSlideUp;display:flex}.loading-panel h1{color:var(--color-text);font-size:1rem;line-height:1.35}.loading-panel p{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.5}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.brand-lockup{align-items:center;gap:var(--space-3);color:var(--color-text);flex-wrap:wrap;font-size:.875rem;font-weight:700;display:flex}.logo-mark{filter:drop-shadow(0 0 14px #22c55e33);flex-shrink:0;width:36px;height:36px}.auth-copy{max-width:420px}.eyebrow{margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);font-size:.75rem;font-weight:700}.setup-title{letter-spacing:0;color:var(--color-text);font-size:1.8rem;font-weight:700;line-height:1.2}.setup-subtitle{margin-top:var(--space-3);color:var(--color-text-secondary);font-size:.9rem;line-height:1.65}.auth-checklist,.setup-guide{gap:var(--space-3);flex-direction:column;list-style:none;display:flex}.auth-checklist li,.setup-guide li{padding:var(--space-4);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm)}.auth-checklist li{border-left:3px solid var(--color-border)}.auth-checklist li:first-child{border-left-color:var(--color-accent)}.auth-checklist strong{margin-bottom:var(--space-1);color:var(--color-text);font-size:.875rem;display:block}.auth-checklist span,.setup-guide li{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.panel-heading{gap:var(--space-2);flex-direction:column;display:flex}.panel-heading .eyebrow{margin-bottom:0}.panel-heading h2{color:var(--color-text);font-size:1.5rem;line-height:1.25}.panel-heading p{color:var(--color-text-secondary);font-size:.875rem}.setup-workspace{gap:var(--space-4);flex-direction:column;display:flex}.setup-topbar{padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;display:flex}.setup-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}.setup-overview{top:var(--space-4);padding:var(--space-5);gap:var(--space-5);flex-direction:column;display:flex;position:sticky}.aside-block{gap:var(--space-3);flex-direction:column;display:flex}.aside-block h2{color:var(--color-text);font-size:.95rem;line-height:1.35}.setup-summary{gap:var(--space-3);flex-direction:column;display:flex}.setup-summary div{padding:var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);border-left:3px solid var(--color-border)}.setup-summary div:first-child{border-left-color:var(--color-accent)}.setup-summary span{color:var(--color-text-tertiary);font-size:.75rem;line-height:1.4;display:block}.setup-summary strong{margin-top:var(--space-1);color:var(--color-text);font-size:.875rem;line-height:1.45;display:block}.setup-panel{padding:var(--space-6);gap:var(--space-6);flex-direction:column;display:flex}.setup-panel-head{justify-content:space-between;align-items:flex-start;gap:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border-subtle);display:flex}.setup-panel-head>div{max-width:620px}.setup-section{gap:var(--space-3);flex-direction:column;display:flex}.section-heading{gap:var(--space-1);flex-direction:column;display:flex}.section-heading p{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary);font-size:.75rem;font-weight:600}.domain-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.domain-card{min-height:104px;padding:var(--space-3);font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;gap:var(--space-2);outline:none;flex-direction:column;display:flex}.domain-card span,.difficulty-card span{font-size:.9375rem;font-weight:700}.domain-card small,.difficulty-card small{color:var(--color-text-secondary);font-size:.75rem;line-height:1.55}.domain-card:hover{background:var(--color-surface-hover);color:var(--color-text);border-color:var(--color-border)}.domain-card.active{background:var(--color-accent-dim);color:var(--color-accent);border-color:var(--color-accent-border);box-shadow:inset 0 0 0 1px #22c55e1f}.domain-card.active small{color:var(--color-text)}.domain-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.custom-domain{margin-top:var(--space-1)}.custom-input{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);outline:none;font-size:.8125rem}.custom-input::placeholder{color:var(--color-text-tertiary)}.custom-input:focus{border-color:var(--color-accent-border);box-shadow:0 0 0 3px #22c55e1f}.difficulty-group{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.difficulty-card{min-height:128px;padding:var(--space-3);font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;gap:var(--space-2);outline:none;flex-direction:column;display:flex}.difficulty-card strong{color:var(--color-info);font-size:.75rem;line-height:1.4}.difficulty-card:hover{background:var(--color-surface-hover);color:var(--color-text);border-color:var(--color-border)}.difficulty-card.active{background:var(--color-info-dim);border-color:#60a5fa73;box-shadow:inset 0 0 0 1px #60a5fa1f}.difficulty-card:focus-visible{outline:2px solid var(--color-info);outline-offset:2px}.jd-textarea{resize:vertical;min-height:128px;max-height:260px;font-size:.8125rem;line-height:1.5}.profile-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239499ad' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.custom-profile-inputs{gap:var(--space-2);margin-top:var(--space-2);display:flex}.custom-profile-inputs .custom-input{flex:1}.start-button{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;transition:filter var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);margin-top:var(--space-2);border:none;outline:none;font-size:.9375rem;font-weight:600}.start-button:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 22px #22c55e38}.start-button:active:not(:disabled){transform:scale(.98)}.start-button:disabled{opacity:.4;cursor:not-allowed}.start-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.start-button.compact{white-space:nowrap;width:auto;min-width:136px;margin-top:0}.mobile-start{display:none}.auth-shell{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 420px;align-items:stretch;width:100%;max-width:1120px;min-height:calc(100vh - 96px);animation:.5s ease-out fadeSlideUp;display:grid}.auth-command,.auth-card,.workflow-rail,.config-stage,.launch-panel{background:linear-gradient(180deg, #94a3b809, transparent 40%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.auth-command{padding:var(--space-8);justify-content:space-between;gap:var(--space-8);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-command:before,.config-hero:before{content:"";pointer-events:none;background:linear-gradient(120deg,#22c55e24,#0000 34%),linear-gradient(240deg,#60a5fa1f,#0000 32%);position:absolute;inset:0}.auth-command>*,.config-hero>*{position:relative}.auth-command-top,.console-topbar{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.system-pill{min-height:28px;padding:0 var(--space-3);border:1px solid var(--color-accent-border);border-radius:var(--radius-full);color:var(--color-accent);background:var(--color-accent-dim);white-space:nowrap;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.auth-hero-copy{max-width:620px}.auth-hero-copy h1{letter-spacing:0;color:var(--color-text);font-size:2.85rem;line-height:1.08}.auth-hero-copy p{margin-top:var(--space-4);max-width:540px;color:var(--color-text-secondary);font-size:1rem;line-height:1.75}.auth-metrics{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.auth-metrics div,.auth-sequence div{padding:var(--space-4);background:var(--color-panel-translucent);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.auth-metrics span,.auth-sequence span{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;display:block}.auth-metrics strong{margin-top:var(--space-2);color:var(--color-text);font-size:1.7rem;line-height:1.1;display:block}.auth-metrics small{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:.78rem;display:block}.auth-sequence{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.auth-sequence strong{margin-top:var(--space-2);color:var(--color-text);font-size:.9rem;display:block}.auth-sequence p{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:.78rem;line-height:1.55}.auth-card{padding:var(--space-8);justify-content:center;gap:var(--space-5);flex-direction:column;display:flex}.auth-switch{padding:var(--space-1);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.auth-switch button{border-radius:var(--radius-sm);min-height:36px;color:var(--color-text-secondary);font-family:var(--font-sans);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:0;font-weight:700}.auth-switch button.active{color:var(--color-text);background:var(--color-surface-hover)}.console-shell{gap:var(--space-4);flex-direction:column;width:100%;max-width:1360px;animation:.5s ease-out fadeSlideUp;display:flex}.console-topbar{padding:var(--space-3) var(--space-4);background:var(--color-topbar-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.topbar-back-button{min-height:34px;padding:0 var(--space-3);align-items:center;gap:var(--space-2);font-family:var(--font-sans);color:var(--color-accent);background:var(--color-accent-dim);border:1px solid var(--color-accent-border);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);font-size:.8125rem;font-weight:800;display:inline-flex}.topbar-back-button:hover{color:var(--color-text);background:var(--color-surface-hover);border-color:var(--color-accent-border);transform:translateY(-1px)}.topbar-back-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.dashboard-shell,.placeholder-shell,.profile-shell,.history-shell{max-width:1180px}.dashboard-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 280px;align-items:start;display:grid}.dashboard-hero{gap:var(--space-5);padding:var(--space-6);background:linear-gradient(120deg, #22c55e21, transparent 36%), linear-gradient(240deg, #60a5fa1a, transparent 34%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);grid-column:1/-1;grid-template-columns:minmax(0,1fr) 320px;display:grid;position:relative;overflow:hidden}.dashboard-hero-copy{max-width:700px}.dashboard-primary-action{padding:var(--space-4);gap:var(--space-2);background:var(--color-panel-translucent);border:1px solid var(--color-accent-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.dashboard-primary-action span,.dashboard-status span,.workspace-action span,.placeholder-block span{color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.dashboard-primary-action strong{color:var(--color-text);font-size:1rem;line-height:1.35}.dashboard-primary-action p{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.dashboard-actions{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace-action{min-height:188px;padding:var(--space-4);gap:var(--space-2);text-align:left;font-family:var(--font-sans);color:var(--color-text);background:linear-gradient(180deg, #94a3b809, transparent 45%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);outline:none;flex-direction:column;display:flex}.workspace-action:hover{background:var(--color-surface-hover);border-color:var(--color-border);transform:translateY(-2px)}.workspace-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.workspace-action.primary{border-color:var(--color-accent-border);background:var(--color-accent-dim)}.workspace-action em{width:34px;height:34px;color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-sm);justify-content:center;align-items:center;font-size:.76rem;font-style:normal;font-weight:800;display:inline-flex}.workspace-action strong{color:var(--color-text);font-size:1rem;line-height:1.35}.workspace-action small{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.dashboard-status{gap:var(--space-3);flex-direction:column;display:flex}.dashboard-status div{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.dashboard-status div:first-child{border-left-color:var(--color-accent)}.dashboard-status strong{margin-top:var(--space-2);color:var(--color-text);word-break:break-word;font-size:.95rem;line-height:1.35;display:block}.dashboard-status small{margin-top:var(--space-1);color:var(--color-text-secondary);word-break:break-word;font-size:.75rem;line-height:1.55;display:block}.release-panel{padding:var(--space-5);background:linear-gradient(180deg, #94a3b809, transparent 45%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);grid-column:1/-1}.release-panel-head{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.release-panel-head h2{color:var(--color-text);font-size:1.05rem;line-height:1.35}.release-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.release-title-row span{min-height:26px;padding:2px var(--space-3);color:var(--color-accent);background:var(--color-accent-dim);border:1px solid var(--color-accent-border);border-radius:var(--radius-full);white-space:nowrap;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.release-panel-head p:last-child{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.release-list{margin-top:var(--space-4);padding-bottom:var(--space-2);gap:var(--space-3);overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;display:flex;overflow:auto hidden}.release-list::-webkit-scrollbar{height:8px}.release-list::-webkit-scrollbar-track{background:0 0}.release-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.release-list::-webkit-scrollbar-thumb:hover{background:var(--color-accent-border)}.release-note{padding:var(--space-4);gap:var(--space-2);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);scroll-snap-align:start;flex-direction:column;flex:0 0 min(360px,86vw);display:flex}.release-note time{color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.release-note strong{color:var(--color-text);font-size:.95rem;line-height:1.35}.release-note ul{gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.release-note li{color:var(--color-text-secondary);font-size:.78rem;line-height:1.55}.release-note li:before{content:"";width:5px;height:5px;margin-right:var(--space-2);background:var(--color-accent);vertical-align:1px;border-radius:50%;display:inline-block}.release-note-section{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle)}.release-note-section span{margin-bottom:var(--space-2);color:var(--color-accent);font-size:.75rem;font-weight:800;display:block}.placeholder-layout{gap:var(--space-4);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);display:grid}.placeholder-main,.placeholder-blocks{padding:var(--space-6);background:linear-gradient(180deg, #94a3b809, transparent 40%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.placeholder-main{flex-direction:column;align-items:flex-start;display:flex}.placeholder-actions{margin-top:var(--space-6);gap:var(--space-3);flex-wrap:wrap;display:flex}.placeholder-blocks{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.placeholder-block{min-height:168px;padding:var(--space-4);gap:var(--space-2);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);flex-direction:column;display:flex}.placeholder-block strong{color:var(--color-text);font-size:.95rem;line-height:1.35}.placeholder-block p{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.resume-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 380px;align-items:start;display:grid}.resume-main,.resume-editor{padding:var(--space-5);background:linear-gradient(180deg, #94a3b809, transparent 40%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.resume-editor{top:var(--space-4);position:sticky}.privacy-notice{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:#fbbf2414;border:1px solid #fbbf2438}.privacy-notice.compact{margin-top:0;margin-bottom:var(--space-4);padding:var(--space-3)}.privacy-notice strong{color:var(--color-text);font-size:.9rem}.privacy-notice p{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.65}.resume-toolbar{margin-top:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.resume-toolbar span{color:var(--color-text-secondary);font-size:.8125rem;font-weight:700}.resume-cards{margin-top:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.resume-card{padding:var(--space-4);justify-content:space-between;align-items:flex-start;gap:var(--space-4);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:flex}.resume-card span,.resume-select-card span{color:var(--color-accent);font-size:.72rem;font-weight:800}.resume-card h2{margin-top:var(--space-1);color:var(--color-text);font-size:1rem;line-height:1.35}.resume-card p{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.resume-card-actions,.resume-form-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.resume-form{gap:var(--space-4);flex-direction:column;display:flex}.resume-form label{gap:var(--space-2);flex-direction:column;display:flex}.resume-form label>span{color:var(--color-text);font-size:.82rem;font-weight:800}.resume-form small{color:var(--color-text-tertiary);text-align:right;font-size:.72rem}.resume-projects-editor{gap:var(--space-3);flex-direction:column;display:flex}.resume-projects-head,.resume-project-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.resume-projects-head>span,.resume-project-title-row strong{color:var(--color-text);font-size:.82rem;font-weight:800}.resume-project-block{padding:var(--space-4);gap:var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);flex-direction:column;display:flex}.resume-add-project{width:42px;height:42px;color:var(--color-on-accent);background:var(--color-accent);font-family:var(--font-sans);cursor:pointer;transition:filter var(--transition-fast), transform var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-self:center;align-items:center;font-size:1.35rem;font-weight:800;line-height:1;display:inline-flex}.resume-add-project:hover{filter:brightness(1.08)}.resume-add-project:active{transform:scale(.96)}.resume-add-project:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.resume-add-hint{color:var(--color-text-tertiary);text-align:center;font-size:.75rem;line-height:1.55}.resume-select-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.resume-select-card{min-height:128px;padding:var(--space-4);gap:var(--space-2);text-align:left;font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);flex-direction:column;display:flex}.resume-select-card:hover{background:var(--color-surface-hover);border-color:var(--color-border)}.resume-select-card.active{background:var(--color-accent-dim);border-color:var(--color-accent-border)}.resume-select-card strong{color:var(--color-text);font-size:.95rem;line-height:1.35}.resume-select-card small{color:var(--color-text-secondary);font-size:.78rem;line-height:1.55}.resume-empty-inline{padding:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:flex}.resume-empty-inline strong{color:var(--color-text);font-size:.95rem}.resume-empty-inline p{margin-top:var(--space-1);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.55}.inline-start-button{min-height:42px;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;transition:filter var(--transition-fast), transform var(--transition-fast);border:none;font-size:.875rem;font-weight:700}.inline-start-button:hover{filter:brightness(1.1)}.inline-start-button:active{transform:scale(.98)}.inline-start-button:disabled{opacity:.45;cursor:not-allowed;filter:none;transform:none}.inline-start-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.danger-button{min-height:42px;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);color:var(--color-danger);background:var(--color-danger-dim);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);border:1px solid #0000;font-size:.875rem;font-weight:700}.danger-button:hover:not(:disabled){border-color:var(--color-danger)}.danger-button:disabled{opacity:.45;cursor:not-allowed}.danger-button:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px}.secondary-button{min-height:42px;padding:var(--space-2) var(--space-4);font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);font-size:.875rem;font-weight:700}.secondary-button:hover{background:var(--color-surface-hover);border-color:var(--color-accent-border)}.secondary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.history-layout{gap:var(--space-4);grid-template-columns:360px minmax(0,1fr);align-items:start;display:grid}.history-list-panel,.history-detail-panel{min-height:620px;padding:var(--space-5);background:linear-gradient(180deg, #94a3b809, transparent 40%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.history-list-panel{top:var(--space-4);flex-direction:column;height:min(720px,100vh - 120px);display:flex;position:sticky;overflow:hidden}.history-panel-head,.history-detail-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-subtle);display:flex}.history-panel-head .setup-title{font-size:1.45rem}.history-panel-head>div{min-width:0}.history-head-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.history-refresh-button{white-space:nowrap;flex:none;min-width:76px}.history-detail-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.history-records{margin-top:var(--space-4);gap:var(--space-2);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;flex-direction:column;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.history-records::-webkit-scrollbar{width:8px}.history-records::-webkit-scrollbar-track{background:0 0}.history-records::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.history-records::-webkit-scrollbar-thumb:hover{background:var(--color-accent-border)}.history-manage-bar{margin-top:var(--space-4);padding:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:flex}.history-manage-bar span{text-align:center;white-space:nowrap;flex:auto;min-width:90px;font-size:.8125rem;font-weight:700}.history-record{width:100%;padding:var(--space-3);gap:var(--space-1);text-align:left;font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);outline:none;flex-direction:column;display:flex}.history-record-select{padding-left:calc(var(--space-3) + 30px);position:relative}.history-record-select input{top:var(--space-3);left:var(--space-3);width:18px;height:18px;accent-color:var(--color-accent);position:absolute}.history-record:hover{background:var(--color-surface-hover);border-color:var(--color-border)}.history-record.active{background:var(--color-accent-dim);border-color:var(--color-accent-border)}.history-record:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.history-record span,.qa-card-head span{color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.history-record strong{color:var(--color-text);font-size:.9rem;line-height:1.35}.history-record small{color:var(--color-text-secondary);font-size:.75rem;line-height:1.5}.history-empty,.history-detail-empty{padding:var(--space-5);align-items:flex-start;gap:var(--space-3);color:var(--color-text-secondary);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);flex-direction:column;display:flex}.history-empty strong,.history-detail-empty h2,.history-detail-head h2{color:var(--color-text);font-size:1rem;line-height:1.35}.history-empty span,.history-detail-empty p,.history-detail-head p{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.6}.modal-backdrop{z-index:50;padding:var(--space-4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060a12b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.history-notice-modal{width:min(520px,100%);padding:var(--space-6);color:var(--color-text);background:linear-gradient(180deg, #fbbf2414, transparent 48%), var(--color-surface);border:1px solid var(--color-accent-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.history-notice-modal h2{margin:var(--space-2) 0 var(--space-3);font-size:1.3rem;line-height:1.35}.history-notice-modal p:not(.eyebrow){color:var(--color-text-secondary);font-size:.9rem;line-height:1.75}.modal-actions{margin-top:var(--space-5);justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.qa-list{margin-top:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.history-coding-card{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.history-coding-card h3{margin-top:var(--space-3);color:var(--color-text);font-size:.95rem;line-height:1.35}.history-coding-card p{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:.8125rem;line-height:1.65}.history-coding-card pre{margin-top:var(--space-3);max-height:320px;padding:var(--space-3);color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);font-family:var(--font-mono);white-space:pre-wrap;font-size:.78rem;line-height:1.6;overflow:auto}.qa-card{padding:var(--space-4);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.qa-card-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle);display:flex}.qa-card-head small{color:var(--color-text-tertiary);font-size:.75rem}.qa-message{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm)}.qa-message.user{background:var(--color-user-bubble);color:var(--color-user-text)}.qa-message.ai{background:var(--color-ai-bubble);border:1px solid var(--color-border-subtle)}.qa-message>strong{margin-bottom:var(--space-2);color:var(--color-text);font-size:.78rem;display:block}.qa-message p{color:inherit;white-space:pre-wrap;word-break:break-word;font-size:.875rem;line-height:1.7}.console-grid{gap:var(--space-4);grid-template-columns:260px minmax(0,1fr) 300px;align-items:start;display:grid}.workflow-rail,.launch-panel{top:var(--space-4);padding:var(--space-5);position:sticky}.rail-title h2,.aside-block h2{color:var(--color-text);font-size:.98rem;line-height:1.35}.rail-steps{margin-top:var(--space-5);gap:var(--space-3);flex-direction:column;list-style:none;display:flex}.rail-steps li{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-raised);grid-template-columns:36px 1fr;display:grid}.rail-steps li>span{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--color-text-tertiary);background:var(--color-surface);justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.rail-steps li.active,.rail-steps li.complete{border-color:var(--color-accent-border)}.rail-steps li.complete>span{color:var(--color-on-accent);background:var(--color-accent)}.rail-steps strong{color:var(--color-text);font-size:.85rem;line-height:1.35;display:block}.rail-steps small{color:var(--color-text-secondary);margin-top:2px;font-size:.73rem;line-height:1.4;display:block}.config-stage{padding:var(--space-5);gap:var(--space-5);flex-direction:column;display:flex}.config-hero{justify-content:space-between;gap:var(--space-5);padding:var(--space-5);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface-raised);display:flex;position:relative;overflow:hidden}.config-hero .setup-title{font-size:1.9rem}.config-hero .setup-subtitle{max-width:680px}.config-status{min-width:160px;padding:var(--space-3);border:1px solid var(--color-accent-border);border-radius:var(--radius-md);background:var(--color-accent-dim);align-self:flex-start}.config-status span{color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;display:block}.config-status strong{margin-top:var(--space-1);color:var(--color-text);font-size:.85rem;display:block}.config-status-actions{gap:var(--space-3);flex-direction:column;display:flex}.config-status-actions .secondary-button{white-space:nowrap;width:100%}.config-notice{margin-top:calc(var(--space-3) * -1);padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);font-size:.8125rem;line-height:1.6}.config-section,.context-panel{padding:var(--space-5);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-config-section)}.selection-grid{margin-top:var(--space-4)}.domain-card em,.difficulty-card em{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-text-tertiary);background:var(--color-surface);justify-content:center;align-items:center;font-size:.76rem;font-style:normal;font-weight:800;display:inline-flex}.domain-card.active em,.difficulty-card.active em{color:var(--color-on-accent);background:var(--color-accent);border-color:#0000}.difficulty-grid{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.context-grid{gap:var(--space-4);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);display:grid}.launch-panel{gap:var(--space-5);flex-direction:column;display:flex}.launch-button,.console-topbar .user-badge{margin-top:0}.chat-view{height:100dvh;padding-bottom:var(--site-footer-height);background:var(--color-bg);flex-direction:column;display:flex}.chat-body{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.chat-view.with-coding .chat-body{grid-template-columns:minmax(360px,.9fr) minmax(460px,1.1fr)}.chat-panel{flex-direction:column;min-width:0;min-height:0;display:flex}.chat-view.with-coding .chat-panel{border-right:1px solid var(--color-border-subtle)}.chat-header{padding:var(--space-3) var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;min-height:52px;display:flex}.chat-header-info{align-items:center;gap:var(--space-2);font-size:.8125rem;font-weight:500;display:flex}.chat-header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.context-usage-meter{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);min-width:164px;color:var(--color-text-secondary);white-space:nowrap;padding:5px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.context-usage-label{color:var(--color-text-tertiary)}.context-usage-track{background:var(--color-border-subtle);border-radius:999px;width:54px;height:6px;position:relative;overflow:hidden}.context-usage-fill{border-radius:inherit;background:var(--color-accent);height:100%;transition:width var(--transition-fast)}.context-usage-meter.warning .context-usage-fill{background:var(--color-warm)}.context-usage-meter.critical .context-usage-fill{background:var(--color-danger)}.context-usage-meter.warning{border-color:color-mix(in srgb, var(--color-warm) 45%, var(--color-border))}.context-usage-meter.critical{border-color:color-mix(in srgb, var(--color-danger) 45%, var(--color-border))}.context-usage-percent{text-align:right;min-width:34px;color:var(--color-text)}.chat-header-dot{background:var(--color-accent);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse;box-shadow:0 0 8px #22c55e66}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-header-domain{color:var(--color-text)}.chat-header-sep{color:var(--color-text-tertiary)}.chat-header-diff{color:var(--color-text-secondary)}.end-button{padding:var(--space-1) var(--space-3);font-family:var(--font-sans);color:var(--color-danger);background:var(--color-danger-dim);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;outline:none;font-size:.75rem;font-weight:600}.pause-button{padding:var(--space-1) var(--space-3);font-family:var(--font-sans);color:var(--color-warm);background:var(--color-warm-dim);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;outline:none;font-size:.75rem;font-weight:600}.pause-button:hover{border-color:var(--color-warm)}.pause-button:focus-visible{outline:2px solid var(--color-warm);outline-offset:2px}.end-button:hover{border-color:var(--color-danger)}.end-button:focus-visible{outline:2px solid var(--color-danger);outline-offset:2px}.chat-messages{padding:var(--space-5);gap:var(--space-4);scroll-behavior:smooth;flex-direction:column;flex:1;display:flex;overflow-y:auto}.coding-workspace{min-width:0;min-height:0;padding:var(--space-4);gap:var(--space-4);background:var(--color-surface);flex-direction:column;display:flex;overflow-y:auto}.coding-loading{color:var(--color-text-secondary);justify-content:center;align-items:center;font-size:.875rem}.coding-task-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle);display:flex}.coding-task-head h2{color:var(--color-text);font-size:1.05rem;line-height:1.35}.coding-status{min-height:28px;padding:2px var(--space-3);border-radius:var(--radius-full);white-space:nowrap;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.coding-status.active{color:var(--color-warm);background:var(--color-warm-dim);border:1px solid #f59e0b47}.coding-status.submitted{color:var(--color-accent);background:var(--color-accent-dim);border:1px solid var(--color-accent-border)}.coding-task-body,.coding-problem,.coding-editor-panel{gap:var(--space-4);flex-direction:column;display:flex}.coding-problem{padding:var(--space-4);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.coding-problem h3,.coding-editor-toolbar span{color:var(--color-text);font-size:.82rem;font-weight:800}.coding-problem p,.coding-problem li,.coding-example p,.coding-submit-row span{color:var(--color-text-secondary);font-size:.8125rem;line-height:1.65}.coding-problem ul{padding-left:var(--space-5)}.coding-examples{gap:var(--space-2);flex-direction:column;display:flex}.coding-example{padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm)}.coding-example strong{margin-bottom:var(--space-1);color:var(--color-text);font-size:.78rem;display:block}.coding-editor-panel{min-width:0}.coding-editor-toolbar,.coding-submit-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.coding-editor-toolbar label{gap:var(--space-2);flex-direction:column;min-width:180px;display:flex}.coding-editor-panel .cm-editor{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);overflow:hidden}.coding-editor-panel .cm-editor.cm-focused{border-color:var(--color-accent-border);box-shadow:0 0 0 3px var(--color-accent-dim);outline:none}.coding-editor-panel .cm-scroller:focus-visible{outline:none}.coding-submit-row{flex-wrap:wrap}.coding-submit-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.chat-empty{flex:1;justify-content:center;align-items:center;display:flex}.chat-empty p{color:var(--color-text-tertiary);font-size:.9375rem;font-style:italic}.message-row{align-items:flex-start;gap:var(--space-2);max-width:80%;animation:.3s ease-out messageIn;display:flex}@keyframes messageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-row.user{flex-direction:row-reverse;align-self:flex-end}.message-row.ai{align-self:flex-start}.ai-avatar{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-top:2px;display:flex;overflow:hidden}.ai-avatar svg{width:28px;height:28px}.message-bubble{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);word-break:break-word;font-size:.875rem;line-height:1.65}.message-bubble.user{background:var(--color-user-bubble);color:var(--color-user-text);border-bottom-right-radius:var(--space-1)}.message-bubble.ai{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-subtle);border-bottom-left-radius:var(--space-1)}.markdown-content{gap:var(--space-2);flex-direction:column;display:flex}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content p,.markdown-content ul,.markdown-content ol,.markdown-content pre,.markdown-content blockquote{margin:0}.markdown-content strong{color:inherit;font-weight:800}.markdown-content ul,.markdown-content ol{padding-left:1.25rem}.markdown-content li+li{margin-top:var(--space-1)}.markdown-content code{color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-xs);font-family:var(--font-mono);padding:.1rem .32rem;font-size:.82em}.message-bubble.user .markdown-content code{color:var(--color-user-text);background:#ffffff29;border-color:#ffffff38}.markdown-content pre{max-width:100%;padding:var(--space-3);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);overflow-x:auto}.markdown-content pre code{white-space:pre;background:0 0;border:0;padding:0}.markdown-content blockquote{padding-left:var(--space-3);color:var(--color-text-secondary);border-left:3px solid var(--color-accent-border)}.markdown-content a{color:var(--color-accent);font-weight:700;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.cursor-blink{background:var(--color-accent);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:.8s steps(2,end) infinite blink;display:inline-block}@keyframes blink{0%{opacity:1}50%{opacity:0}}.chat-input-bar{align-items:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5) var(--space-4);background:var(--color-surface);border-top:1px solid var(--color-border);flex-shrink:0;display:flex}.chat-input{padding:var(--space-2) var(--space-3);font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);resize:none;min-height:38px;max-height:120px;transition:border-color var(--transition-fast);outline:none;flex:1;font-size:.875rem;line-height:1.5}.chat-input::placeholder{color:var(--color-text-tertiary)}.chat-input:focus{border-color:var(--color-accent-border)}.chat-input:disabled{opacity:.5}.send-button{width:38px;height:38px;font-family:var(--font-sans);color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.875rem;font-weight:600;display:flex}.send-button:hover:not(:disabled){filter:brightness(1.1)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{opacity:.3;cursor:not-allowed}.send-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.login-toggle:focus-visible,.logout-link:focus-visible,.ghost-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=960px){.auth-shell{grid-template-columns:1fr;min-height:auto}.auth-command{min-height:auto}.auth-hero-copy h1{font-size:2.2rem}.console-grid,.dashboard-grid,.dashboard-hero,.placeholder-layout,.resume-layout,.history-layout{grid-template-columns:1fr}.chat-view.with-coding .chat-body{grid-template-columns:1fr;overflow-y:auto}.chat-view.with-coding .chat-panel{border-right:0;border-bottom:1px solid var(--color-border-subtle);min-height:55vh}.coding-workspace{min-height:auto;overflow:visible}.dashboard-status,.resume-editor,.history-list-panel{position:static}.placeholder-blocks,.resume-select-grid{grid-template-columns:1fr}.workflow-rail,.launch-panel{position:static}.rail-steps{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.context-grid,.auth-layout,.setup-layout{grid-template-columns:1fr}.auth-intro{gap:var(--space-10);min-height:auto}.setup-overview{position:static}.setup-title{font-size:1.6rem}}@media (width<=640px){:root{--site-footer-height:48px}.setup-view{padding:var(--space-4) var(--space-4) calc(var(--space-6) + var(--site-footer-height));align-items:flex-start}.auth-command,.auth-card,.workflow-rail,.config-stage,.launch-panel,.context-panel,.dashboard-hero,.placeholder-main,.placeholder-blocks,.resume-main,.resume-editor,.history-list-panel,.history-detail-panel,.loading-panel{padding:var(--space-5)}.auth-command-top,.console-topbar,.config-hero,.chat-header,.history-panel-head,.history-detail-head{flex-direction:column;align-items:flex-start}.chat-header-actions,.history-head-actions,.history-detail-actions{justify-content:flex-start}.history-manage-bar,.modal-actions{flex-direction:column;align-items:stretch}.history-manage-bar span{text-align:left}.resume-card,.resume-empty-inline,.resume-toolbar{flex-direction:column;align-items:stretch}.resume-card-actions,.resume-form-actions{justify-content:flex-start}.auth-hero-copy h1{font-size:1.9rem}.auth-metrics,.auth-sequence,.rail-steps,.dashboard-actions,.domain-grid,.difficulty-group,.difficulty-grid{grid-template-columns:1fr}.setup-panel-head{flex-direction:column}.start-button.compact{display:none}.mobile-start{display:block}.setup-topbar,.console-topbar{padding:var(--space-3) var(--space-4)}.setup-title{font-size:1.55rem}.domain-card,.difficulty-card{min-height:auto}.custom-profile-inputs{flex-direction:column}.message-row{max-width:90%}.chat-messages{padding:var(--space-3)}.chat-input-bar{padding:var(--space-2) var(--space-3) var(--space-3)}}.login-form{gap:var(--space-4);flex-direction:column;display:flex}.login-field{gap:var(--space-1);flex-direction:column;display:flex}.login-error{color:var(--color-danger);background:var(--color-danger-dim);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:.8125rem}.login-toggle{width:100%;margin-top:var(--space-2);font-family:var(--font-sans);color:var(--color-text-secondary);cursor:pointer;text-align:center;transition:color var(--transition-fast);background:0 0;border:none;padding:0;font-size:.8125rem}.login-toggle:hover{color:var(--color-accent)}.user-badge{align-items:center;gap:var(--space-2);margin-top:var(--space-1);display:flex}.user-badge-name{color:var(--color-text-secondary);font-size:.8125rem}.logout-link{font-family:var(--font-sans);color:var(--color-text-tertiary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;font-size:.75rem}.logout-link:hover{color:var(--color-danger)}.ghost-link{font-family:var(--font-sans);color:var(--color-accent);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;font-size:.75rem}.ghost-link:hover{color:var(--color-text)}.site-footer{min-height:var(--site-footer-height);padding:4px var(--space-4);justify-content:center;align-items:center;gap:var(--space-2) var(--space-4);background:var(--color-bg);border-top:1px solid var(--color-border-subtle);z-index:50;flex-wrap:wrap;display:flex;position:fixed;bottom:0;left:0;right:0}.app-version{color:var(--color-text-tertiary);font-size:.6875rem;line-height:1.2}.beian-link{color:var(--color-text-tertiary);transition:color var(--transition-fast);align-items:center;gap:4px;font-size:.6875rem;line-height:1.2;text-decoration:none;display:inline-flex}.beian-link:hover{color:var(--color-text-secondary)}.police-beian img{object-fit:contain;flex-shrink:0;width:16px;height:17px}
