:root{--app-bg:#f7f8fa;--surface:#fff;--surface-2:#f2f5f4;--field:#fbfcfd;--ink:#20252b;--muted:#66707b;--line:#dce2e0;--line-strong:#c8d2cf;--accent:#2563eb;--accent-deep:#1e4eb8;--accent-soft:#edf4ff;--quote:#a65f00;--quote-soft:#fff7ea;--warning:#be4c2c;--warning-soft:#fff1ed;--ok:#166534;--ok-soft:#edf8f0;--shadow-soft:0 10px 30px #20252b0f;color:var(--ink);background:var(--app-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,sans-serif}*{box-sizing:border-box}html{background:var(--app-bg)}body{background:var(--app-bg);min-width:320px;margin:0}body,button,input,textarea{letter-spacing:0;font-size:16px;line-height:1.55}h1,h2,h3,p,blockquote{overflow-wrap:anywhere}h1{color:var(--ink);letter-spacing:0;font-size:32px;line-height:1.18}h2{color:var(--ink);letter-spacing:0;font-size:18px;line-height:1.28}p{margin:0}button:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #2563eb38}@media (width<=680px){body,button,input,textarea{font-size:15px}h1{font-size:26px}}.app-shell{background:linear-gradient(180deg, #e8f1ecb8, #f7f8fa00 360px), var(--app-bg);min-height:100svh}.dashboard,.workspace,.review{width:min(1180px,100% - 32px);margin:0 auto;padding:28px 0 48px}.intro-band,.create-panel,.sessions-panel,.workspace-top,.step-editor,.coach-panel,.review-header,.summary-block{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:8px}.intro-band{grid-template-columns:1fr auto;align-items:end;gap:24px;margin-bottom:18px;padding:34px;display:grid}.intro-copy{max-width:760px;color:var(--muted);font-size:18px}.intro-meter{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:2px;min-width:150px;padding:18px;display:grid}.intro-meter strong{color:var(--ink);font-size:36px;line-height:1}.intro-meter span{color:var(--muted);font-size:14px}.create-panel,.sessions-panel{margin-bottom:18px;padding:24px}.section-heading{align-items:flex-start;gap:10px;margin-bottom:18px;display:flex}.section-heading svg{color:var(--accent);flex:none;margin-top:2px}.section-heading h2{margin:0}.section-heading p{color:var(--muted);margin:2px 0 0;font-size:14px}.problem-box,.prompt-field{gap:8px;display:grid}.problem-box span,.prompt-field span,.range-field span,.problem-title span{color:var(--ink);font-size:14px;font-weight:700}.prompt-field small{color:var(--muted);font-size:13px}textarea,input{box-sizing:border-box;border:1px solid var(--line-strong);background:var(--field);width:100%;color:var(--ink);font:inherit;border-radius:8px;outline:none}textarea{resize:vertical;min-height:118px;padding:12px 13px}input{min-height:42px;padding:8px 11px}textarea:focus,input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1f}.scenario-grid{grid-template-columns:repeat(5,1fr);gap:10px;margin:16px 0;display:grid}.scenario-button{border:1px solid var(--line);background:var(--surface-2);min-height:124px;color:var(--muted);text-align:left;cursor:pointer;border-radius:8px;gap:6px;padding:14px;display:grid}.scenario-button span{color:var(--ink);font-weight:800}.scenario-button small{line-height:1.55}.scenario-button.is-active{border-color:var(--accent);background:var(--accent-soft)}button{font:inherit}.primary-action,.secondary-action,.ghost-action,.row-actions button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 14px;font-weight:800;display:inline-flex}.primary-action{color:#fff;background:var(--accent)}.primary-action:hover{background:var(--accent-deep)}.secondary-action,.ghost-action,.row-actions button{color:var(--ink);background:var(--surface-2);border-color:var(--line)}.ghost-action{background:0 0}.secondary-action:hover,.ghost-action:hover,.row-actions button:hover{border-color:var(--accent)}.secondary-action:disabled{cursor:not-allowed;opacity:.45}.session-list{gap:10px;display:grid}.session-row{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.session-row>button{text-align:left;cursor:pointer;background:0 0;border:0;padding:6px}.session-row__title{color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;font-weight:800;display:flex}.session-row__title em{background:var(--ok-soft);color:var(--ok);border-radius:999px;padding:2px 8px;font-size:12px;font-style:normal}.session-row button span+span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.row-actions{gap:8px;display:flex}.empty-state{border:1px dashed var(--line-strong);color:var(--muted);border-radius:8px;gap:4px;padding:24px;display:grid}.empty-state strong{color:var(--ink)}.workspace-top{grid-template-columns:auto 1fr auto;align-items:end;gap:14px;margin-bottom:14px;padding:14px;display:grid}.problem-title label{gap:6px;display:grid}.stepper{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:14px;display:grid}.stepper button{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--muted);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-weight:800;display:flex}.stepper span{background:var(--surface-2);width:24px;height:24px;color:var(--muted);border-radius:999px;place-items:center;font-size:13px;display:inline-grid}.stepper button.is-active{border-color:var(--accent);color:var(--ink);background:var(--accent-soft)}.stepper button.is-active span{background:var(--accent);color:#fff}.workspace-grid{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:14px;display:grid}.step-editor,.coach-panel{padding:24px}.step-heading{margin-bottom:16px}.step-heading h1,.review-header h1,.intro-band h1{margin:4px 0 8px}.step-heading p:last-child,.review-header p:last-child{color:var(--muted)}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:900}.quote-card{border:1px solid var(--line);border-left:4px solid var(--quote);background:var(--quote-soft);border-radius:8px;gap:10px;margin:16px 0 20px;padding:16px;display:grid}.quote-card__icon{color:var(--quote)}.quote-card blockquote{color:var(--ink);margin:0;font-size:20px;font-weight:800}.quote-card p{color:var(--muted)}.quote-card__prompt{color:var(--ink);background:#ffffffb8;border-radius:8px;padding:10px 12px;font-weight:700}.quote-card footer{color:var(--muted);font-size:12px}.field-stack{gap:14px;display:grid}.range-field{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:10px;padding:14px;display:grid}.range-field input{accent-color:var(--accent)}.feedback-list{gap:10px;display:grid}.feedback-item{border:1px solid var(--line);color:var(--ink);background:var(--surface-2);border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding:12px;font-size:14px;display:grid}.feedback-item.is-warning{background:var(--warning-soft);border-color:#be4c2c52}.feedback-item.is-warning svg{color:var(--warning)}.feedback-item.is-nudge svg{color:var(--quote)}.feedback-item.is-ok{background:var(--ok-soft);border-color:#1665343d}.feedback-item.is-ok svg{color:var(--ok)}.step-actions{gap:8px;margin-top:18px;display:grid}.review-header{grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:14px;padding:24px;display:grid}.review-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.summary-block{padding:18px}.summary-block h2{color:var(--accent);margin:0 0 10px;font-size:14px}.summary-block p{color:var(--ink);white-space:pre-wrap}@media (width<=980px){.dashboard,.workspace,.review{width:min(100% - 20px,760px);padding-top:12px}.intro-band,.workspace-top,.review-header,.workspace-grid,.review-grid,.scenario-grid,.stepper{grid-template-columns:1fr}.scenario-button{min-height:auto}.workspace-top{align-items:stretch}.stepper button{justify-content:flex-start}}
