
:root{--bg:#08110c;--panel:#102016;--panel2:#15281c;--text:#f3f4ef;--muted:#a8b8ab;--line:#2b4533;--accent:#79e6a7;--accent2:#a1f4c1}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse 740px 500px at 82% 3%,rgba(56,152,93,.17),transparent 74%),var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.57}button,input{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px} .site-header{width:min(1140px,calc(100% - 48px));height:82px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.09)}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:15px}.brand-mark{display:block;width:39px;height:42px;flex:0 0 auto;object-fit:contain}.brand-text strong{font-weight:800}.home-link{font-size:12px;font-weight:700;color:#c6d4cb;text-decoration:none}.home-link:hover{color:var(--accent)}main{overflow:hidden}.hero{width:min(1140px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:center;gap:70px;padding:80px 0 88px}.eyebrow{font-size:11px;font-weight:800;color:var(--accent);letter-spacing:.17em;text-transform:uppercase}.hero h1{font-size:clamp(61px,7.7vw,113px);line-height:1.01;margin:18px 0 16px;letter-spacing:-.07em}.hero h1 em{font-style:normal;color:var(--accent)}.headline{font-family:Manrope,sans-serif;font-size:clamp(21px,2.35vw,31px);font-weight:700;letter-spacing:-.035em;line-height:1.25}.intro{color:#c2d0c5;font-size:16px;line-height:1.75;max-width:600px;margin-top:18px}.trust{display:flex;gap:11px;flex-wrap:wrap;margin-top:29px}.trust span{border:1px solid #2d4a37;background:rgba(121,230,167,.05);border-radius:999px;color:#b5d9c0;font-size:11px;font-weight:700;padding:7px 11px}.hero-note{position:relative;border:1px solid #375a41;background:linear-gradient(155deg,rgba(23,53,33,.95),rgba(11,28,18,.92));border-radius:27px;padding:31px;transform:rotate(2deg);box-shadow:0 22px 74px rgba(0,0,0,.18)}.hero-note .note-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--accent);color:#0a1e10;font-size:28px;margin-bottom:24px}.hero-note strong{font-family:Manrope,sans-serif;font-size:23px;line-height:1.3;letter-spacing:-.035em}.hero-note p{color:#b5cbb9;font-size:14px;margin:13px 0 24px;line-height:1.7}.scribble{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:750}.workspace{background:#f5f5ef;color:#101e14;padding:75px max(24px,calc((100% - 1140px)/2)) 90px}.work-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.work-head .eyebrow{color:#247144}.work-head h2{font-size:clamp(32px,4.8vw,52px);line-height:1.16;margin-top:10px}.work-head>p{color:#55655a;max-width:235px;font-size:14px}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mode{display:flex;align-items:start;flex-direction:column;text-align:left;gap:7px;padding:24px 26px;min-width:0;border:1px solid #d4ded5;border-radius:18px 18px 0 0;background:#e9eee8;color:#213426}.mode.active{background:#fff;border-color:#b6cabb;border-bottom-color:#fff}.mode-mark,.step{font-size:10px;font-weight:850;letter-spacing:.13em;color:#358351;text-transform:uppercase}.mode strong{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.035em}.mode small{font-size:12px;color:#69796d}.panel{background:white;border:1px solid #b6cabb;border-top:0;border-radius:0 0 22px 22px;padding:clamp(23px,4vw,50px);box-shadow:0 30px 70px rgba(17,37,23,.055)}.panel[hidden],.result[hidden]{display:none}.panel-top h3{font-size:clamp(28px,3vw,39px);line-height:1.15;margin:7px 0 8px}.panel-top>p{font-size:13px;color:#637167}.format-picker,.challenge-picker{border:0;padding:0;margin:34px 0 25px;min-width:0}.format-picker legend,.challenge-picker legend{font-size:13px;font-weight:800;margin-bottom:11px;color:#243b2c}.option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pill-radio{position:relative;cursor:pointer;min-width:0}.pill-radio input,.chip-options input{position:absolute;opacity:0;pointer-events:none}.pill-radio span{display:flex;gap:10px;align-items:center;justify-content:center;border:1px solid #d6dfd6;background:#fbfcfa;border-radius:12px;padding:14px 7px;font-size:15px;white-space:nowrap}.pill-radio b{font-size:12px;font-weight:750}.pill-radio input:checked+span,.chip-options input:checked+span{border-color:#287346;background:#e9f6ed;color:#12562c;box-shadow:inset 0 0 0 1px #287346}.pill-radio input:focus-visible+span,.chip-options input:focus-visible+span{outline:3px solid #45a763;outline-offset:2px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px}.field{min-width:0}.field label{font-size:12px;font-weight:800;display:block;margin-bottom:8px;line-height:1.5}.req,.optional{font-size:10px;font-weight:700;margin-left:4px}.req{color:#216d40}.optional{color:#7b897e}.field input{display:block;width:100%;background:#fbfcfa;border:1px solid #cbd8cf;border-radius:10px;padding:13px 14px;min-height:49px;color:#142b1a;font-size:13px}.field input::placeholder{color:#829488}.field small{display:block;color:#79867c;margin-top:7px;font-size:11px;line-height:1.5}.chip-options{display:flex;flex-wrap:wrap;gap:8px}.chip-options label{position:relative;cursor:pointer}.chip-options span{display:block;padding:9px 13px;border:1px solid #d3dfd5;border-radius:999px;font-size:12px;background:#fafbf9;color:#3a4c3e}.form-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid #e5ece5;padding-top:25px}.remember{font-size:12px;color:#506454;display:flex;align-items:center;gap:8px}.remember input{width:16px;height:16px;accent-color:#287346}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:0;border-radius:9px;padding:13px 20px;min-height:48px;font-size:13px;font-weight:850}.btn.primary{background:#123823;color:#e8faed}.btn.primary:hover{background:#1c6339}.btn.subtle{background:#edf3ee;color:#1b4b2e}.result{margin-top:30px;border:1px solid #cee0d1;border-radius:18px;overflow:hidden}.result-top{padding:28px 30px;background:#103822;color:#f7faf5}.result-top .step{color:#90e9b0}.result-top h3{font-size:28px;margin:8px 0}.result-top p{color:#c0d7c7;font-size:13px}.cue{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:24px 26px;border-bottom:1px solid #e3ece4}.cue-no{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:10px;background:#eaf3ec;color:#2b7145;font-size:12px;font-weight:850}.cue h4{font-size:16px;margin:0 0 7px}.cue p{color:#28392c;font-size:15px;line-height:1.7;white-space:pre-line}.cue small{font-size:12px;color:#69806e;display:block;margin-top:8px}.lesson{margin:22px 25px 12px;padding:19px 22px;background:#e8f5ea;border-left:3px solid #3b9e5e;border-radius:5px 12px 12px 5px}.lesson-label{display:block;color:#327447;font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}.lesson p{font-size:14px;color:#203f29;line-height:1.65}.result-disclaimer{padding:5px 26px;color:#758676;font-size:11px;line-height:1.6}.result-actions{padding:22px 26px 24px;display:flex;flex-wrap:wrap;gap:9px}.reflection{margin:0 26px 26px;padding:20px 0 0;border-top:1px solid #e4ede5}.reflection h4{font-size:15px;margin-bottom:11px}.reflection-buttons{display:flex;flex-wrap:wrap;gap:8px}.reflection-buttons button{border:1px solid #cddfcf;border-radius:9px;padding:9px 12px;background:#f6faf6;color:#31523a;font-size:12px;font-weight:700}.reflection-buttons button:hover{background:#e9f5eb}.reflection-message{font-size:12px;color:#376647;margin-top:8px;min-height:1em}.skill-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:21px;margin-top:30px}.skill-list{display:flex;flex-direction:column;gap:8px}.skill-choice{width:100%;text-align:left;background:#f8faf8;color:#293b2d;border:1px solid #dbe6dc;border-radius:10px;padding:13px 15px;font-weight:800;font-size:12px}.skill-choice span{display:block;color:#7a8e80;font-size:10px;font-weight:700;letter-spacing:.1em;margin-bottom:5px}.skill-choice.active{border-color:#37814f;background:#e7f4ea;color:#114e29}.skill-detail{border:1px solid #d4e3d6;border-radius:16px;padding:27px;background:#fcfdfb;min-width:0}.skill-detail>h3{font-size:28px;line-height:1.15;margin:9px 0}.skill-premise{font-size:14px;color:#576b5d;line-height:1.7}.skill-piece{margin-top:23px}.skill-piece h4{font-size:13px;margin-bottom:7px}.skill-piece p{font-size:14px;color:#37473b;line-height:1.7}.skill-detail .lesson{margin:24px 0}.skill-footer{display:flex;align-items:center;gap:17px;flex-wrap:wrap}.skill-footer span{color:#7a8a7e;font-size:11px}.principles{width:min(1140px,calc(100% - 48px));margin:0 auto;padding:88px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px}.principles h2{font-size:clamp(35px,4.3vw,54px);line-height:1.13;margin-top:12px}.principles>div:last-child{color:#c0d3c4;font-size:15px;line-height:1.85}.principles>div:last-child p+p{margin-top:14px}.principles strong{color:var(--accent)}footer{width:min(1140px,calc(100% - 48px));margin:0 auto;border-top:1px solid #29402f;padding:30px 0 55px;display:grid;grid-template-columns:1.2fr 1fr;gap:26px;color:#8fa394;font-size:12px;line-height:1.7}footer a{color:#bcf0cd}footer .reg-note{grid-column:1/-1;font-size:11px;color:#83988a}.inline-button{border:0;background:none;color:#c9f1d2;text-decoration:underline;padding:0;font-size:inherit}.toast{position:fixed;z-index:99;left:50%;bottom:26px;transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;border-radius:999px;padding:13px 22px;background:#16462b;color:#effbef;font-size:12px;box-shadow:0 12px 30px #0004;max-width:calc(100% - 32px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:780px){.hero{grid-template-columns:1fr;gap:32px;padding:54px 0 68px}.hero h1{font-size:clamp(58px,12vw,88px)}.hero-note{max-width:500px;transform:none}.work-head{display:block}.work-head>p{margin-top:12px;max-width:unset}.workspace{padding-top:58px}.skill-layout{grid-template-columns:1fr}.skill-list{display:grid;grid-template-columns:1fr 1fr}.principles{grid-template-columns:1fr;gap:25px;padding:65px 0}.form-grid{grid-template-columns:1fr}.option-grid{grid-template-columns:1fr 1fr}.option-grid .pill-radio:last-child{grid-column:1/-1}footer{grid-template-columns:1fr;gap:12px}footer .reg-note{grid-column:1}}
@media(max-width:520px){.site-header{width:calc(100% - 32px);height:70px}.brand{font-size:13px}.home-link{font-size:11px}.hero{width:calc(100% - 40px);padding:48px 0 58px}.hero h1{font-size:60px}.headline{font-size:22px}.intro{font-size:14px}.hero-note{display:none}.workspace{padding:48px 16px 65px}.work-head h2{font-size:32px}.mode{padding:15px 13px;gap:5px}.mode strong{font-size:14px}.mode small{font-size:10px;line-height:1.4}.panel{padding:19px 16px}.panel-top h3{font-size:27px}.pill-radio span{padding:12px 7px}.pill-radio b{font-size:11px}.skill-list{grid-template-columns:1fr 1fr;gap:6px}.skill-choice{padding:11px 10px;font-size:11px}.skill-detail{padding:19px}.result-top{padding:23px 18px}.cue{grid-template-columns:32px 1fr;gap:11px;padding:20px 15px}.cue-no{width:30px;height:30px}.cue p{font-size:14px}.lesson{margin:18px 14px 9px;padding:15px}.result-disclaimer,.result-actions{padding-left:16px;padding-right:16px}.reflection{margin-left:16px;margin-right:16px}.result-actions .btn{width:100%}.form-footer .btn{width:100%}.principles,footer{width:calc(100% - 40px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Casey v2 — the buyer situation is the primary input; offering is saved once. */
.field textarea {width:100%;resize:vertical;min-height:72px;background:#fbfcfa;border:1px solid #cbd8cf;border-radius:12px;padding:14px 15px;color:#142b1a;font:inherit;font-size:14px;line-height:1.6;}
.field textarea:focus-visible {outline:3px solid #45a763;outline-offset:2px;}
.field textarea::placeholder {color:#829488;}
.buyer-field {margin-top:30px;margin-bottom:27px;}
.buyer-field textarea {font-size:15px;min-height:110px;}
.buyer-field label,.seller-head label {font-size:14px;font-weight:850;color:#193222;}
.seller-head {display:flex;justify-content:space-between;gap:14px;align-items:center;border-top:1px solid #e5ece5;padding-top:24px;}
.seller-head p {font-size:12px;color:#718273;line-height:1.55;margin-top:5px;}
.seller-area {margin-top:14px;margin-bottom:20px;}
.seller-area[hidden],#prepare-feedback[hidden] {display:none;}
.small-link {border:0;background:none;color:#186b38;font-weight:850;font-size:12px;white-space:nowrap;text-decoration:underline;padding:4px;}
.fine-tune {margin:22px 0 25px;border-top:1px solid #e5ece5;padding-top:17px;}
.fine-tune summary {cursor:pointer;font-size:12px;font-weight:850;color:#3d6247;}
.fine-tune label {display:block;font-weight:800;font-size:12px;margin-top:16px;margin-bottom:8px;}
.fine-tune select {width:100%;background:#fbfcfa;border:1px solid #cbd8cf;border-radius:10px;padding:12px;font:inherit;font-size:13px;max-width:520px;}
.privacy-prompt {font-size:11px;line-height:1.6;color:#7b897e;margin:17px 0 0;}
.prepare-feedback {margin-top:16px;padding:13px 18px;border-radius:10px;background:#eaf1ed;color:#285236;font-size:13px;line-height:1.6;}
.prepare-feedback[data-status="error"] {background:#fdf0eb;color:#903b24;}
.form-footer button[disabled] {opacity:.62;cursor:progress;}
.angle {padding:21px 26px;background:#eff8f0;border-bottom:1px solid #d5e8d8;}
.angle-label {font-weight:850;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#35764b;}
.angle p {font-size:14px;color:#28412e;line-height:1.7;margin-top:7px;}
.caution {margin:8px 26px 0;padding:15px 18px;border:1px solid #e4e5d4;border-radius:10px;background:#fbfaf4;}
.caution strong {font-size:12px;color:#72632e;}
.caution p {font-size:13px;color:#514a34;line-height:1.6;margin-top:4px;}
@media(max-width:520px){.seller-head {align-items:start;}.buyer-field textarea{min-height:130px}.angle{padding:18px}.caution{margin-left:16px;margin-right:16px}.small-link{white-space:normal;flex-shrink:0}}

/* Casey v3: actionable listening and follow-up guidance. */
.cue[hidden]{display:none!important}
#cue-next{background:#f7faf5}
#cue-listen-for{font-size:14px;line-height:1.7}
.cue h4{color:#173522}
#cue-question{font-size:16px;font-weight:600;color:#204e30}
@media(max-width:520px){.cue{gap:9px}.cue p{overflow-wrap:anywhere}#cue-question{font-size:15px}}

/* Casey V3.1: readable conditional coaching without making the quick brief heavy. */
.angle-test{margin-top:15px;padding-top:13px;border-top:1px solid #c6e3cf}
.angle-test strong{font-size:12px;color:#225c3b}
.angle-test p{margin-top:4px!important;font-size:13px;color:#365947}
.cue-intro{font-size:12px!important;color:#647b68!important;margin:3px 0 12px!important}
.signal-list{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}
.signal{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;background:#f6faf6;border:1px solid #e0ece2;padding:12px;border-radius:12px}
.signal-num{font-size:11px;color:#448458;font-weight:850;line-height:1.8}
.signal strong{display:block;color:#25452d;font-size:13px;line-height:1.55;letter-spacing:normal}
.signal p{font-size:12px!important;line-height:1.65!important;margin-top:5px;color:#4d6655!important}
.signal .signal-move{border-top:1px dashed #cbded0;padding-top:7px}
.signal-move>span:first-child{font-weight:800;color:#266a41}
.pushback-main{margin-top:13px;background:#f2f9f3;border:1px solid #cfe2d0;border-radius:13px;padding:16px}
.push-label{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#2c7950}
.buyer-quote{margin:8px 0 12px;border-left:3px solid #b0c7b6;padding:0 0 0 12px;font-size:13px;font-style:italic;color:#52685a;line-height:1.6}
.response-label{font-size:10px!important;font-weight:800;color:#3b7250!important;text-transform:uppercase;letter-spacing:.08em}
.seller-reply{font-size:14px!important;color:#1a4028!important;margin:4px 0 9px!important;font-weight:600;line-height:1.7}
.push-why{font-size:12px!important;color:#607365!important;line-height:1.65}
.pushback-more{margin-top:12px;border:1px solid #d7e4db;border-radius:12px;overflow:hidden}
.pushback-more summary{padding:13px 15px;cursor:pointer;color:#265a38;font-weight:800;font-size:12px;background:#f8fbf9}
.pushback-more summary:focus-visible{outline:3px solid #45a763;outline-offset:-3px}
.pushback-option{padding:16px;border-top:1px solid #dce8de}
.pushback-option strong{font-size:13px;color:#22583a}
.verify{margin-top:11px;padding-top:10px;border-top:1px solid #e7e6d5}
.verify strong{color:#645a2f}
.verify p{font-size:13px}
@media(max-width:520px){
 .signal{padding:11px;grid-template-columns:24px minmax(0,1fr)}
 .pushback-main{padding:13px}
 .angle-test{margin-top:12px}
}

/* V3.2: incomplete optional model output must never render empty coaching cards. */
.signal[hidden],.pushback-option[hidden],.angle-test[hidden],.verify[hidden]{display:none!important}

/* V3.3: truthful progress during a non-streaming AI request. */
.casey-progress{margin-top:19px;border:1px solid #bdd9c5;border-radius:14px;background:#eff8f1;padding:17px 19px;color:#254632}
.casey-progress[hidden]{display:none!important}
.progress-heading{display:flex;align-items:center;gap:14px}
.progress-heading strong{font-size:13px;font-weight:800;color:#244e32}
.progress-heading p{font-size:12px;color:#4d6956;line-height:1.55;margin-top:3px}
.progress-orbit{display:block;flex-shrink:0;width:28px;height:28px;border:3px solid #c9e8d1;border-top-color:#2e854c;border-radius:50%;animation:casey-spin .9s linear infinite}
.casey-progress-track{position:relative;height:7px;border-radius:999px;background:#d9eddf;overflow:hidden;margin-top:17px}
.casey-progress-motion{position:absolute;left:0;top:0;bottom:0;width:38%;border-radius:999px;background:linear-gradient(90deg,#48a667,#246f44);animation:casey-indeterminate 2.1s ease-in-out infinite}
.progress-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:9px;font-size:10px;color:#637b69}
@keyframes casey-spin{to{transform:rotate(360deg)}}
@keyframes casey-indeterminate{0%{transform:translateX(-110%)}50%{transform:translateX(145%)}100%{transform:translateX(290%)}}
@media(max-width:520px){.casey-progress{padding:14px}.progress-bottom{font-size:10px}}
@media(prefers-reduced-motion:reduce){.progress-orbit{animation:none;border-top-color:#206b3e}.casey-progress-motion{animation:none;width:100%;opacity:.7}}
