*{box-sizing:border-box}html{background:#f5f7f3}body{min-width:320px;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}a{color:inherit}.app-shell{--bg:#f5f7f3;--surface:#fff;--surface-soft:#eef4ef;--surface-blue:#eef4f8;--text:#20231f;--muted:#687067;--border:#d8dfd5;--border-strong:#aeb9a8;--primary:#1f6f5b;--primary-strong:#175545;--accent:#2f6f9e;--danger:#9d3b34;--type-color:var(--primary);--type-soft:var(--surface-soft);--control-height:44px;--compact-control-height:36px;--radius:8px;--focus:0 0 0 3px #2f6f9e38;background:var(--bg);min-height:100vh;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}.topbar{z-index:20;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;grid-template-columns:minmax(240px,1fr) auto;align-items:center;gap:20px;padding:14px clamp(16px,4vw,48px);display:grid;position:sticky;top:0}.brand-button{min-height:auto;color:inherit;text-align:left;background:0 0;border:0;gap:2px;padding:0;display:grid}.brand-button strong{letter-spacing:0;font-size:22px;font-weight:800;line-height:1.1}.brand-button span,.step-label,.muted,.eyebrow{color:var(--muted)}.brand-button span{font-size:12px;line-height:1.3}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.step-label,.eyebrow,.progress-label,.thought-box span,.settings-grid span,.chat-message strong{letter-spacing:0;font-size:12px;font-weight:800}.step-label{white-space:nowrap}button,input,textarea{font:inherit}button{min-height:var(--control-height);border-radius:var(--radius);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible{box-shadow:var(--focus);outline:0}.primary-button,.secondary-button,.ghost-button,.account-chip{min-height:var(--control-height);border-radius:var(--radius);text-align:center;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:800;line-height:1.2;transition:background-color .14s,border-color .14s,color .14s,transform .14s;display:inline-flex}.primary-button{background:var(--primary);color:#fff}.secondary-button{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.ghost-button{min-height:var(--compact-control-height);color:var(--muted);background:0 0;padding:0 14px}.account-chip{border-color:var(--border);background:var(--surface);max-width:280px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.primary-button:hover:not(:disabled){background:var(--primary-strong)}.secondary-button:hover:not(:disabled),.account-chip:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--surface-soft)}.ghost-button:hover:not(:disabled){background:var(--surface-soft);color:var(--text)}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled),.ghost-button:active:not(:disabled),.account-chip:active:not(:disabled),.option-button:active:not(:disabled),.candidate-card:active:not(:disabled){transform:translateY(1px)}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled,.option-button:disabled{border-color:var(--border);color:#91998f;background:#eef0eb}.account-dot{background:var(--border-strong);border-radius:50%;flex:none;width:8px;height:8px}.account-dot.signed-in{background:var(--primary)}.record-toast{z-index:60;border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border));border-radius:var(--radius);max-width:min(360px,100vw - 32px);color:var(--primary-strong);background:#eef7f1;padding:12px 16px;font-size:14px;font-weight:800;line-height:1.45;position:fixed;top:86px;right:clamp(16px,4vw,48px);box-shadow:0 10px 28px #252d2624}.record-toast.error{border-color:color-mix(in srgb, var(--danger) 30%, var(--border));color:var(--danger);background:#fbf0ef}.record-toast.success{border-color:color-mix(in srgb, var(--primary) 28%, var(--border))}@media (prefers-reduced-motion:no-preference){.record-toast{animation:.16s ease-out toast-in}}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.auth-panel{z-index:19;border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);align-items:start;gap:24px;padding:24px clamp(16px,4vw,48px);display:grid;position:sticky;top:73px}.auth-panel strong{font-size:28px;font-weight:800;line-height:1.15;display:block}.auth-panel p{color:var(--muted);margin:8px 0 0;font-size:15px;line-height:1.65}.auth-panel-copy,.auth-panel-stack{gap:14px;display:grid}.auth-form{gap:10px;display:grid}.auth-form input,.settings-grid input,.thought-box textarea,.chat-input-row textarea,.context-window{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);padding:11px 12px;line-height:1.5;transition:border-color .14s,box-shadow .14s}.auth-form input:hover,.settings-grid input:hover,.thought-box textarea:hover,.chat-input-row textarea:hover,.context-window:hover{border-color:var(--primary)}.auth-form input,.settings-grid input{min-height:var(--control-height)}.auth-form input::placeholder,.settings-grid input::placeholder,.thought-box textarea::placeholder,.chat-input-row textarea::placeholder{color:#899186}.auth-panel-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.record-history-list{gap:10px;display:grid}.record-history-empty,.record-history-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:10px;padding:14px 16px;display:grid}.record-history-empty span{color:var(--muted);font-size:14px;line-height:1.6}.record-history-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.record-history-main{gap:6px;min-width:0;display:grid}.record-history-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.record-history-title strong{font-size:17px;line-height:1.3}.record-history-main p{margin:0;font-size:14px;line-height:1.6}.history-badge{border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.history-badge.completed{color:var(--primary-strong);background:#e9f5ee}.history-badge.draft{color:#667060;background:#f1f3ef}.record-history-detail{border-top:1px solid var(--border);grid-column:1/-1;gap:14px;padding-top:12px;display:grid}.history-result-summary{border:1px solid color-mix(in srgb, var(--type-color) 18%, var(--border));border-radius:var(--radius);background:var(--type-soft);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.history-result-summary .type-mark{background:#fff;width:40px;height:40px}.history-result-summary strong{font-size:18px;line-height:1.3}.history-result-summary span{color:var(--muted);margin-top:3px;font-size:14px;line-height:1.5;display:block}.history-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.history-mini-stat{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);gap:4px;padding:10px 12px;display:grid}.history-mini-stat span{color:var(--muted);font-size:13px;line-height:1.4}.history-mini-stat strong{font-size:20px;line-height:1}.history-section{gap:10px;display:grid}.history-section h3{color:var(--text);margin:0;font-size:16px;line-height:1.35}.history-answer-list{gap:8px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.history-answer-item{border-top:1px solid var(--border);grid-template-columns:34px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.history-answer-item>span{background:var(--surface-soft);width:28px;height:28px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:850;display:flex}.history-answer-item strong{font-size:14px;line-height:1.55}.history-answer-item p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.55}.history-prompt-list{color:var(--text);gap:8px;margin:0;padding-left:20px;font-size:14px;line-height:1.7;display:grid}.page{width:min(1160px,100% - 32px);margin:0 auto;padding:clamp(28px,5vw,64px) 0}.home-page{align-content:center;min-height:calc(100vh - 73px);padding-top:0;padding-bottom:0;display:grid}.home-hero-stage{place-items:center;min-height:calc(100vh - 73px);display:grid;position:relative;overflow:hidden}.home-hero-stage:before,.home-hero-stage:after{content:"";border:1px solid #1f6f5b1f;border-radius:50%;position:absolute}.home-hero-stage:before{inset:10% 12%}.home-hero-stage:after{border-color:#2f6f9e1f;inset:24% 21%}.hero-figure-layer{pointer-events:none;position:absolute;inset:0}.figure-token{border:1px solid color-mix(in srgb, var(--type-color) 18%, var(--border));background:color-mix(in srgb, var(--type-soft) 80%, #fff);opacity:.72;border-radius:999px;justify-content:center;align-items:center;width:clamp(72px,8vw,108px);height:clamp(72px,8vw,108px);display:flex;position:absolute}.figure-token .type-mark{border-color:color-mix(in srgb, var(--type-color) 24%, #fff);background:#fff;width:58%;height:58%}.figure-token-1{top:18%;left:11%}.figure-token-2{top:18%;right:13%}.figure-token-3{top:44%;left:4%}.figure-token-4{top:45%;right:5%}.figure-token-5{bottom:16%;left:16%}.figure-token-6{bottom:14%;right:18%}.figure-token-7{top:6%;left:39%}.figure-token-8{bottom:4%;right:42%}.quest-intro{z-index:1;text-align:center;justify-items:center;max-width:900px;padding:clamp(32px,6vw,72px) 0;display:grid;position:relative}.hero-copy h1,.page-header h1,.result-hero h1{max-width:760px;color:var(--text);letter-spacing:0;margin:0;font-size:clamp(48px,7vw,92px);font-weight:850;line-height:1.02}.hero-copy h1{font-family:LXGW WenKai,霞鹜文楷,Kaiti SC,STKaiti,KaiTi,cursive;font-weight:650;line-height:1.15}.page-header h1{font-size:clamp(34px,4vw,54px)}.result-hero h1{max-width:680px;font-size:clamp(40px,4.6vw,64px);line-height:1.08}.hero-copy p,.page-header p,.result-hero p,.panel p{color:var(--muted);font-size:17px;line-height:1.75}.eyebrow{color:var(--primary);margin:0 0 12px}.quest-actions{justify-content:center;margin-top:36px;display:flex}.quest-actions .primary-button{min-width:180px}.type-mark{border:1px solid color-mix(in srgb, var(--type-color) 24%, #fff);background:var(--type-soft);width:56px;height:56px;color:var(--type-color);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:850;line-height:1;display:inline-flex}.type-mark.large{aspect-ratio:1;border-width:2px;width:min(210px,100%);height:auto;font-size:clamp(34px,5vw,56px);box-shadow:0 18px 34px #252d2624}.page-header{gap:12px;margin-bottom:28px;display:grid}.progress-wrap,.test-guidance,.question-card,.panel,.result-hero,.chat-panel{border-radius:var(--radius);background:var(--surface)}.progress-wrap{border:1px solid var(--border);margin:20px 0 18px;padding:16px}.progress-label{color:var(--muted);justify-content:space-between;margin-bottom:10px;display:flex}.progress-track{background:#dfe6dc;border-radius:999px;height:8px;overflow:hidden}.progress-track div{border-radius:inherit;background:var(--primary);height:100%;transition:width .2s}.test-guidance{border:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;padding:14px 16px;display:flex}.test-guidance strong{color:var(--text);white-space:nowrap}.test-guidance span{color:var(--muted);line-height:1.55}.question-list{gap:14px;display:grid}.question-card{border:1px solid var(--border);padding:20px}.question-card:focus-within{border-color:var(--primary)}.question-title{grid-template-columns:42px 1fr;align-items:start;gap:14px;display:grid}.question-title span{background:var(--surface-soft);width:34px;height:34px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:850;line-height:1;display:flex}.question-title h2,.panel h2,.result-hero h2{color:var(--text);margin:0;font-size:20px;line-height:1.35}.option-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:18px;display:grid}.option-button{min-height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);text-align:center;padding:0 12px;font-size:14px;font-weight:750;line-height:1.25;transition:background-color .14s,border-color .14s,color .14s,transform .14s}.option-button:hover:not(:disabled){border-color:var(--primary);background:var(--surface-soft)}.option-button.selected{border-color:var(--primary);background:var(--primary);color:#fff}.thought-box{gap:8px;margin-top:16px;display:grid}.thought-box span,.settings-grid span{color:var(--text)}.thought-box textarea{resize:vertical;min-height:94px}.action-bar{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.action-hint{color:var(--muted);text-align:right;flex:100%;margin:0;font-size:14px;line-height:1.6}.export-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.result-layout{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.result-hero,.account-save-panel,.panel,.chat-panel{border:1px solid var(--border)}.result-hero{background:radial-gradient(circle at 84% 10%, color-mix(in srgb, var(--type-color) 18%, transparent) 0, transparent 34%), linear-gradient(135deg, #fff 0%, var(--type-soft) 100%);grid-template-columns:minmax(0,1fr) minmax(190px,.45fr);align-items:center;gap:20px;padding:28px;display:grid;overflow:hidden}.result-hero h2{color:var(--type-color);margin-top:12px;font-size:15px;line-height:1.4}.result-copy{min-width:0}.result-avatar-wrap{justify-content:center;place-self:center;width:min(240px,100%);display:flex}.account-save-panel{align-content:start;gap:14px;margin-bottom:0;padding:20px;display:grid}.save-status-box{border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);padding:12px 14px;line-height:1.6}.account-save-panel .export-actions{align-items:stretch}.account-save-panel .export-actions button{flex:150px}.two-column,.layer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.panel{margin-bottom:16px;padding:20px}.axis-list{border-top:1px solid var(--border);margin-top:14px;display:grid}.axis-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.clean-list{color:var(--text);gap:12px;padding-left:20px;line-height:1.7;display:grid}.candidate-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:16px;display:grid}.candidate-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:132px;color:var(--text);text-align:left;grid-template-columns:72px minmax(0,1fr);gap:6px 12px;padding:16px;transition:background-color .14s,border-color .14s,color .14s,transform .14s;display:grid}.candidate-card:hover:not(:disabled){border-color:var(--type-color);background:var(--type-soft)}.candidate-card.selected{border-color:var(--type-color);background:var(--type-color);color:#fff}.candidate-card .type-mark{grid-row:1/4;place-self:center;width:52px;height:52px;font-size:14px}.candidate-card.selected .type-mark{color:#fff;background:#ffffff2e;border-color:#ffffff7a}.candidate-card>span:not(.type-mark){color:inherit;font-size:26px;font-weight:850;line-height:1}.candidate-card strong{font-size:18px}.candidate-card small{color:inherit;line-height:1.5}.analysis-grid{gap:12px;margin-top:14px;display:grid}.analysis-block{border-top:1px solid var(--border);padding:14px 0}.analysis-block h3{color:var(--text);margin:0 0 10px;font-size:17px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;display:flex}.compact-button{min-height:var(--compact-control-height);white-space:nowrap;padding:0 12px}.markdown-text{max-height:64vh;padding-right:6px;overflow:auto}.markdown-text p{color:var(--text);margin:0 0 12px;font-size:15px;line-height:1.8}.chat-panel{gap:14px;padding:20px;display:grid}.chat-log{border:1px solid var(--border);border-radius:var(--radius);gap:0;min-height:180px;max-height:58vh;display:grid;overflow:auto}.chat-message{border-bottom:1px solid var(--border);padding:14px}.chat-message:last-child{border-bottom:0}.chat-message.assistant{background:var(--surface-soft)}.chat-message strong{color:var(--primary);margin-bottom:8px;display:block}.chat-input-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.chat-input-row textarea,.context-window{resize:vertical}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.settings-grid label{gap:7px;display:grid}.api-key-field{grid-column:1/-1}.secret-input-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.api-status{border-radius:var(--radius);background:var(--surface-soft);gap:8px;margin-top:14px;padding:12px 14px;display:grid}.api-status p{overflow-wrap:anywhere;color:var(--muted);margin:0;line-height:1.5}.error-text{color:var(--danger);margin:0;font-weight:800;line-height:1.6}.ok-text{font-weight:800;color:var(--primary)!important}@media (width<=760px){.app-shell{overflow-x:hidden}.home-page,.two-column,.layer-grid,.result-layout,.auth-panel{grid-template-columns:1fr}.home-page{align-items:start;min-height:auto}.home-hero-stage{min-height:600px}.home-hero-stage:before{inset:12% -36%}.home-hero-stage:after{inset:26% -18%}.figure-token{opacity:.42;width:58px;height:58px}.figure-token-1{top:16%;left:-12px}.figure-token-2{top:16%;right:-12px}.figure-token-3{top:47%;left:-30px}.figure-token-4{top:47%;right:-30px}.figure-token-5{bottom:12%;left:10%}.figure-token-6{bottom:12%;right:10%}.figure-token-7,.figure-token-8{display:none}.topbar{grid-template-columns:1fr}.topbar-actions{justify-content:flex-start}.topbar-actions .secondary-button,.topbar-actions .account-chip{flex:132px}.step-label{width:100%}.auth-panel{position:static}.record-history-card,.history-mini-grid{grid-template-columns:1fr}.quest-actions .primary-button{width:100%}.quest-intro{max-width:100%}.hero-copy h1{word-break:break-all;max-width:286px;font-size:clamp(31px,8.6vw,34px);line-height:1.1}.hero-copy p{word-break:break-all;max-width:286px;font-size:15px;line-height:1.65}.quest-actions{flex-direction:column;align-items:stretch;width:min(286px,100%)}.test-guidance,.section-heading{flex-direction:column;align-items:flex-start}.question-title,.result-hero{grid-template-columns:1fr}.result-avatar-wrap{order:-1;width:min(220px,72vw)}.type-mark.large{width:min(180px,58vw)}.option-grid,.chat-input-row,.settings-grid,.secret-input-row{grid-template-columns:1fr}.action-bar{justify-content:stretch}.action-hint{text-align:left}.action-bar button,.export-actions button{flex:180px}}
