:root{--ink:#17221f;--muted:#5c6964;--green:#255f52;--line:#d8d4ca;--paper:#fffdf8;--wash:#f1efe8;--rose:#a4436c;--amber:#9a6518;--focus:0 0 0 4px rgba(37,95,82,.18);font-family:Inter,"Segoe UI",system-ui,sans-serif;color:var(--ink)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 8%,#e7f0ed 0,transparent 32%),radial-gradient(circle at 88% 2%,#eee8f5 0,transparent 30%),#f8f6f0;color:var(--ink)}
button,a,textarea,input{font:inherit}.scene-nav{align-items:center;border-bottom:1px solid rgba(82,97,91,.15);display:flex;justify-content:space-between;padding:14px clamp(18px,5vw,72px)}.brand{align-items:center;color:var(--ink);display:flex;font-weight:800;gap:9px;text-decoration:none}.brand img{height:30px;width:30px}.nav-actions{align-items:center;display:flex;gap:18px}.nav-actions a{color:var(--green);font-size:.9rem;font-weight:700;text-decoration:none}.connection{border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:.75rem;padding:7px 10px}.connection[data-state=online]{background:#e6f3ed;color:#1d6a52}.connection[data-state=offline],.connection[data-state=error]{background:#fff0e5;color:#8b4f18}
.scene-shell{margin:0 auto;max-width:1180px;padding:clamp(28px,5vw,68px) 20px 80px}.mission-head{align-items:end;display:flex;gap:32px;justify-content:space-between;margin-bottom:30px}.eyebrow{color:var(--green);font-size:.72rem;font-weight:850;letter-spacing:.14em;margin:0 0 10px}.mission-head h1,.complete-panel h2,.freeze-card h2{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.5rem);letter-spacing:-.04em;line-height:1;margin:0}.mission-goal{color:var(--muted);font-size:1.05rem;line-height:1.6;margin:15px 0 0;max-width:680px}.progress-card{min-width:210px}.progress-card>div:first-child{display:flex;font-size:.82rem;justify-content:space-between}.progress-track{background:#deddd5;border-radius:10px;height:7px;margin-top:10px;overflow:hidden}.progress-track i{background:var(--green);display:block;height:100%;transition:width .3s ease;width:25%}
.status-panel{align-items:center;background:rgba(255,253,248,.82);border:1px solid var(--line);border-radius:20px;display:flex;gap:16px;padding:22px}.status-panel p{color:var(--muted);margin:5px 0 0}.spinner{animation:spin .8s linear infinite;border:3px solid #d9e5e1;border-radius:50%;border-top-color:var(--green);height:28px;width:28px}@keyframes spin{to{transform:rotate(360deg)}}
.scene-grid{display:grid;gap:22px;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr)}.scene-card,.evidence-card,.complete-panel{background:rgba(255,253,248,.93);border:1px solid var(--line);border-radius:26px;box-shadow:0 18px 50px rgba(38,55,49,.07);padding:clamp(22px,4vw,38px)}.persona-line{align-items:center;display:flex;gap:13px}.persona-line>div:nth-child(2){flex:1}.persona-line span{color:var(--muted);font-size:.76rem}.persona-line h2{font-family:Georgia,serif;margin:2px 0 0}.persona-avatar{align-items:center;background:#dcebe6;border-radius:16px;color:var(--green);display:flex;font-family:Georgia,serif;font-size:1.35rem;font-weight:800;height:50px;justify-content:center;width:50px}.pressure{background:#f0ece1;border-radius:99px;color:#795a23!important;font-weight:750;padding:7px 10px}.prompt-wrap{background:var(--wash);border-radius:20px;margin:26px 0;padding:28px 28px 25px;position:relative}.prompt-wrap p{font-family:Georgia,serif;font-size:clamp(1.25rem,2.3vw,1.75rem);line-height:1.45;margin:0}.quote-mark{color:#b9c8c3;font-family:Georgia,serif;font-size:4rem;left:10px;position:absolute;top:-10px}.ghost-hint{background:#17221f;border-radius:10px;color:white;font-weight:750;margin:-12px 0 18px;padding:10px 14px;width:max-content}form label{font-size:.83rem;font-weight:750}textarea{background:#fff;border:1px solid #cfcac0;border-radius:16px;color:var(--ink);display:block;line-height:1.55;margin-top:9px;padding:16px;resize:vertical;width:100%}textarea:focus,button:focus-visible,a:focus-visible,input:focus-visible{box-shadow:var(--focus);outline:none}.input-meta{color:var(--muted);display:flex;font-size:.76rem;justify-content:space-between;margin:8px 2px 17px}.transcript-toggle{font-weight:500!important}.scene-actions{display:flex;gap:10px;justify-content:flex-end}.primary,.secondary,.button-link{border-radius:12px;cursor:pointer;font-weight:780;min-height:46px;padding:12px 18px}.primary{background:var(--green);border:1px solid var(--green);color:#fff}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}button:disabled{cursor:not-allowed;opacity:.5}.button-link{align-items:center;display:inline-flex;text-decoration:none}
.evidence-card h2{font-family:Georgia,serif;font-size:1.65rem;margin:0 0 22px}.skill-list{display:grid;gap:12px}.skill-row{border-bottom:1px solid #ebe8e0;padding-bottom:11px}.skill-row>div{display:flex;justify-content:space-between}.skill-row strong{font-size:.86rem;text-transform:capitalize}.skill-row span{color:var(--muted);font-size:.75rem}.skill-meter{background:#e5e3dc;border-radius:8px;height:5px;margin-top:7px;overflow:hidden}.skill-meter i{background:#98ada5;display:block;height:100%}.skill-row[data-band=strong] i{background:var(--green)}.skill-row[data-band=needs-work] i{background:var(--rose)}details{border-top:1px solid var(--line);color:var(--muted);font-size:.82rem;line-height:1.5;margin-top:20px;padding-top:16px}summary{color:var(--ink);cursor:pointer;font-weight:750}.last-evidence{background:var(--wash);border-radius:14px;margin-top:16px;padding:14px}.last-evidence span{color:var(--muted);font-size:.72rem}.last-evidence blockquote{font-family:Georgia,serif;margin:8px 0}.last-evidence p{color:var(--muted);font-size:.75rem;margin:0}
.freeze-overlay{align-items:center;background:rgba(23,34,31,.62);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:20}.freeze-card{background:var(--paper);border-radius:26px;box-shadow:0 30px 90px rgba(0,0,0,.3);max-width:620px;padding:36px;width:100%}.freeze-card h2{font-size:2.7rem;margin-bottom:22px}.freeze-card>div:not(.scene-actions){border-top:1px solid var(--line);padding:14px 0}.freeze-card span{color:var(--muted);font-size:.72rem;font-weight:750;text-transform:uppercase}.freeze-card p{font-size:1rem;line-height:1.5;margin:5px 0}.freeze-card .example p{font-family:Georgia,serif;font-size:1.25rem}.complete-panel{text-align:center}.complete-panel h2{font-size:3rem}.complete-panel p:not(.eyebrow){color:var(--muted)}.complete-panel .scene-actions{justify-content:center;margin-top:22px}.transfer-card{background:linear-gradient(135deg,#edf5f1,#f3eef8);border:1px solid #cedbd6;border-radius:20px;margin:28px auto 0;max-width:760px;padding:24px;text-align:left}.transfer-card>span{color:var(--green);font-size:.7rem;font-weight:850;letter-spacing:.12em}.transfer-card h3{font-family:Georgia,serif;font-size:1.55rem;margin:8px 0}.transfer-card p{line-height:1.55;margin:0}.outcome-form{margin:0 auto;max-width:760px;text-align:left}.outcome-form h2,.outcome-saved h2{font-size:clamp(2.2rem,5vw,3.4rem)}.form-lead{line-height:1.6}.outcome-form fieldset{border:0;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin:24px 0;padding:0}.outcome-form legend{font-size:.83rem;font-weight:750;margin-bottom:9px}.outcome-form fieldset label{position:relative}.outcome-form fieldset input{inset:0;opacity:0;position:absolute}.outcome-form fieldset span{background:#fff;border:1px solid var(--line);border-radius:12px;display:block;padding:13px;text-align:center}.outcome-form fieldset input:checked+span{background:#e6f3ed;border-color:var(--green);color:var(--green);font-weight:800}.follow-up{align-items:center;display:flex;gap:9px;margin-top:15px}.outcome-status{color:var(--muted);font-size:.82rem;min-height:20px;margin-top:12px}.outcome-status[data-state=error]{color:#9a3157}.outcome-status[data-state=saved]{color:#1d6a52}.outcome-saved{margin:0 auto;max-width:760px}.outcome-saved p{line-height:1.6}
[hidden]{display:none!important}@media(max-width:780px){.mission-head{align-items:flex-start;flex-direction:column}.progress-card{width:100%}.scene-grid{grid-template-columns:1fr}.scene-actions{flex-direction:column}.primary,.secondary,.button-link{justify-content:center;width:100%}.nav-actions .connection{display:none}.freeze-card{padding:25px}.freeze-card h2{font-size:2.15rem}.outcome-form fieldset{grid-template-columns:1fr}.complete-panel{text-align:left}.complete-panel .scene-actions{justify-content:stretch}.outcome-saved .scene-actions{align-items:stretch}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation:none}}
