:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#18372e;background:#f5f9f6;font-synthesis:none;line-height:1.55}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #cddbd3;background:#fff;color:#184c39;border-radius:9px;padding:.65rem 1rem;cursor:pointer;font-weight:650}button:hover{border-color:#257b59;background:#f3faf5}button:disabled{cursor:default;opacity:.5}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #75b997;outline-offset:2px}.primary{background:#15593d;color:#fff;border-color:#15593d}.primary:hover{background:#0c4931}.script-header{padding:1.3rem 1.8rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;border-bottom:1px solid #dfe8e1;background:#fff}.eyebrow{font-size:.65rem;font-weight:750;letter-spacing:.15em;color:#607d6a;margin:0}h1{font-size:1.6rem;letter-spacing:-.035em;margin:.1rem 0 0}.header-actions{display:flex;gap:.6rem;flex-wrap:wrap}.script-layout{max-width:1480px;margin:auto;display:grid;grid-template-columns:185px minmax(0,1fr) 245px;gap:1.5rem;padding:1.5rem}.journey,.captured{align-self:start}.journey-title{font-size:.73rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:#607d6a;margin-bottom:1rem}.journey-step{display:flex;gap:.6rem;align-items:center;padding:.65rem .5rem;border-radius:9px;font-size:.85rem;color:#607568}.journey-step.current{background:#e2f1e6;color:#144d34;font-weight:750}.journey-dot{width:24px;height:24px;flex-shrink:0;border:1px solid #cbdccf;border-radius:50%;display:grid;place-items:center;font-size:.7rem}.journey-step.done .journey-dot{background:#2f7954;color:white;border-color:#2f7954}.conversation{min-width:0;background:#fff;border:1px solid #dce7de;border-radius:17px;padding:1.7rem;box-shadow:0 9px 28px #17452f06}.step-meta{font-size:.7rem;color:#617e6b;letter-spacing:.11em;text-transform:uppercase;font-weight:750}h2{font-size:1.5rem;letter-spacing:-.025em;line-height:1.25;margin:.35rem 0 1.2rem}.script-lines{padding:1rem 1.15rem;border-left:3px solid #4c9870;background:#f2f8f3;border-radius:0 11px 11px 0;margin-bottom:1.25rem;font-size:1.1rem;line-height:1.75}.script-lines p{margin:0 0 .85rem;white-space:pre-wrap}.script-lines p:last-child{margin:0}.script-lines .agent-note{font-size:.85rem;color:#647263;font-style:italic}.filled-placeholder{background:#dceedd;border-radius:3px;padding:0 .12rem}.step-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.script-field{display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:650;min-width:0}.script-field.full{grid-column:1/-1}.script-field input,.script-field select,.script-field textarea{width:100%;border:1px solid #cddbd3;border-radius:8px;background:#fff;min-height:43px;padding:.55rem .65rem;color:#1c352b;font-weight:450}.script-field textarea{min-height:85px;resize:vertical}.field-caption{font-size:.72rem;color:#647d6c;font-weight:450}.step-choices{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1.2rem}.step-choices button{background:#f2f8f3}.step-navigation{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;border-top:1px solid #e6eee7;padding-top:1.2rem}.captured{background:#edf4ee;border:1px solid #dce7dc;border-radius:12px;padding:1.1rem}.captured dl{margin:0}.captured dt{font-size:.69rem;text-transform:uppercase;letter-spacing:.05em;color:#657b68;margin-top:.9rem}.captured dd{margin:.15rem 0;font-size:.9rem;overflow-wrap:anywhere}.captured button{font-size:.77rem;width:100%;margin-top:1.2rem}.session-note,.tool-note{font-size:.72rem;color:#6c7e6d;margin-top:1.2rem;line-height:1.6}.sync-status{font-size:.78rem;color:#49725a;margin-top:1rem}.error{color:#a52c24;background:#fff2ee;border-radius:8px;padding:.7rem;font-size:.85rem}.quote-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.2rem}.script-quote{border:1px solid #d4dfd6;border-radius:12px;padding:1rem}.script-quote.selected{border:2px solid #246c4c;background:#f1f9f2}.script-quote h3{margin:0}.quote-price{font-size:1.45rem;font-weight:750;margin:.3rem 0}.script-quote p,.script-quote li{font-size:.8rem}.script-quote ul{padding-left:1rem}.script-quote button{font-size:.8rem;width:100%}.route-notice{font-size:.8rem;border-radius:8px;padding:.8rem;background:#fff7e6;color:#765222;margin-top:1rem}.application-action{margin-top:1rem;width:100%}dialog{max-width:900px;width:calc(100% - 2rem);border:1px solid #c8d9ce;border-radius:15px;color:inherit;padding:1.5rem;max-height:85vh}dialog::backdrop{background:#14281eb3}dialog header{display:flex;justify-content:space-between;align-items:center;gap:1rem;position:sticky;top:-1.5rem;background:#fff;padding:.5rem 0;border-bottom:1px solid #e2e9e3}#reference-content p{white-space:pre-wrap;margin:.8rem 0}#reference-content h2{font-size:1.2rem;margin-top:1.8rem}#reference-content h3{font-size:1rem;margin-top:1.5rem}.coverage-entry{grid-column:1/-1;border:1px solid #dce7de;border-radius:10px;padding:1rem}.coverage-entry .step-fields{margin-bottom:.7rem}.source-link{font-size:.8rem;color:#356548}.empty-note{font-size:.9rem;color:#657b68}@media(max-width:1100px){.script-layout{grid-template-columns:155px minmax(0,1fr)}.captured{grid-column:2}.quote-options{grid-template-columns:1fr}}@media(max-width:700px){.script-header{padding:1rem;align-items:flex-start}.script-header .header-actions button{font-size:.72rem;padding:.5rem}.script-layout{display:block;padding:1rem}.journey{display:none}.conversation{padding:1.1rem}.captured{margin-top:1rem}.step-fields{grid-template-columns:1fr}.script-lines{font-size:1rem}.step-choices button{flex:1}.quote-options{grid-template-columns:1fr}h1{font-size:1.3rem}}

/* Keep call controls available while reading longer Script sections. */
.script-step-content{min-width:0}.other-answer{margin-top:.45rem}.other-answer[hidden]{display:none}.step-navigation{position:fixed;bottom:0;left:0;right:0;z-index:20;align-items:center;flex-wrap:wrap;gap:.65rem;margin:0;padding:.75rem 1.5rem max(.75rem,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #d2e1d6;box-shadow:0 -5px 18px #173f2b0c}.step-navigation button{min-height:44px}.step-navigation .step-choices{flex:1;justify-content:flex-end;margin:0}.step-navigation .step-choices:empty{display:none}.script-layout{padding-bottom:7rem}.script-field>label{font-weight:650}.script-lines{max-height:46dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.script-field input,.script-field select{scroll-margin-bottom:100px}
@media(min-width:1000px){.script-step-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,1fr);gap:1.25rem;align-items:start}.script-step-content .script-lines{max-height:calc(100dvh - 250px);margin:0}.script-step-content .step-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.script-step-content .script-field:has(.other-answer){grid-column:1/-1}.script-step-content #step-form{min-width:0;max-height:calc(100dvh - 250px);overflow-y:auto;padding:3px 4px 12px;scrollbar-gutter:stable}.script-step-content .error{margin-top:.7rem}}
@media(max-width:700px){.step-navigation{padding:.65rem 1rem max(.65rem,env(safe-area-inset-bottom))}.step-navigation .step-choices button{font-size:.8rem}.script-lines{max-height:40dvh}.script-layout{padding-bottom:8rem}}

/* One screen for the live call: Script and answers scroll independently. */
html{height:100%}body{height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding-bottom:76px}.script-header{flex:0 0 auto;padding:1rem 1.5rem}.script-layout{width:100%;flex:1;min-height:0;padding:1rem;gap:1rem;grid-template-rows:minmax(0,1fr)}.journey,.captured{align-self:stretch;min-height:0;overflow-y:auto}.conversation{min-height:0;padding:1.2rem;display:flex;flex-direction:column;overflow:hidden}.script-step-content{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,1fr);gap:1rem;align-items:stretch}.script-step-content:has(.script-lines[hidden]){grid-template-columns:1fr}.script-step-content .script-lines{min-height:0;max-height:none;margin:0;overflow-y:auto}.script-lines[hidden]{display:none}.script-step-content #step-form{min-height:0;max-height:none;overflow-y:auto;padding:3px 4px 12px}.sync-status{flex:0 0 auto;margin:.6rem 0 0}.conversation.has-extra{overflow-y:auto}.conversation.has-extra .script-step-content{flex:0 0 auto;height:clamp(230px,calc(100dvh - 340px),450px)}
@media(max-width:1100px){.script-layout{grid-template-columns:130px minmax(0,1fr)}.captured{display:none}}
@media(max-width:999px){.script-step-content{grid-template-columns:1fr;grid-template-rows:minmax(100px,.85fr) minmax(140px,1fr)}.script-step-content:has(.script-lines[hidden]){grid-template-rows:minmax(0,1fr)}.script-step-content .step-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.script-lines{font-size:1rem;line-height:1.6}.conversation.has-extra .script-step-content{height:430px}}
@media(max-width:700px){.script-layout{display:grid;grid-template-columns:minmax(0,1fr);padding:.65rem}.conversation{padding:.9rem}.script-header{padding:.7rem 1rem}.script-step-content .step-fields{grid-template-columns:1fr}.script-header .eyebrow{font-size:.55rem}h2{font-size:1.25rem;margin-bottom:.7rem}.journey{display:none}}

.current-script-location{scroll-margin-top:80px;border-left:4px solid #3262b0;padding-left:.65rem;background:#eef4ff}.current-script-location::first-line{background:#dce8ff}#reference-content .agent-note{font-style:italic;color:#4f81bd}#reference-content h3{white-space:pre-wrap}.filled-placeholder{color:#174b35;font-weight:700}

/* Focused call cards: one exchange, its answers, and a persistent call sheet. */
.script-layout{grid-template-columns:minmax(0,1fr) 255px;grid-template-rows:auto minmax(0,1fr);max-width:1320px;gap:.8rem 1.1rem;margin:0 auto}.journey{grid-column:1/-1;grid-row:1;overflow:visible}.journey-title,.journey>.session-note{display:none}#journey{display:flex;gap:.45rem} .journey-step{flex:1;font-size:.73rem;border-top:3px solid #dce6df;border-radius:0;padding:.4rem .3rem}.journey-step.current{border-color:#247b55;background:transparent}.journey-dot{width:21px;height:21px;font-size:.65rem}.conversation,.conversation.has-extra{grid-column:1;grid-row:2;overflow-y:auto;display:block;padding:1.2rem 1.5rem 1rem}.script-step-content,.conversation.has-extra .script-step-content{display:block;height:auto;min-height:0}.script-step-content .script-lines{background:transparent;border:0;padding:0;margin:0 0 1rem;max-height:none;overflow:visible;font-size:1.12rem;line-height:1.65}.script-step-content #step-form{max-height:none;overflow:visible;padding:0}.script-lines p{margin-bottom:.8rem}.script-lines:before{content:'SAY';display:block;font-size:.62rem;font-weight:750;letter-spacing:.14em;color:#6b7e70;margin-bottom:.5rem}.script-lines .agent-note{color:#356aa7;font-size:.86rem}.script-lines h3{font-size:1rem;margin:.5rem 0}.script-lines p:first-of-type{font-weight:500}.script-field{font-size:.8rem}.step-fields{gap:.75rem}.quick-answer{margin:.35rem 0}.quick-answer>span{font-size:.75rem;color:#63796a}.answer-buttons{display:grid;gap:.55rem}.answer-buttons button{display:block;text-align:left;width:100%;padding:.85rem 1rem;border-color:#ceddd1;background:#f5f9f6;color:#194a33;font-size:1rem}.answer-buttons button:hover,.answer-buttons .selected-answer{background:#e5f1e8;border-color:#3a8e60}.filled-placeholder{background:#fff0ae;color:#493c12;padding:.03rem .15rem;border-radius:3px;font-weight:700}.captured{display:block;grid-column:2;grid-row:2;align-self:start;max-height:100%;overflow-y:auto}.captured:before{content:'CALL SHEET';display:block;font-size:.7rem;font-weight:750;letter-spacing:.1em;margin-bottom:.85rem;color:#47634e}.captured>.tool-note{font-size:.66rem}.need-chip{display:flex;justify-content:space-between;gap:.6rem;padding:.55rem 0;border-bottom:1px solid #d5e3d7;font-size:.73rem}.need-chip strong{font-size:.7rem;text-align:right}.need-chip.gap strong{color:#8b5a1b}.need-chip.covered strong{color:#226642}.need-chip.unknown strong{color:#778375}.sync-status{font-size:.7rem;margin-top:.8rem}.card-position{float:right;color:#789080;font-size:.72rem}#step-heading h2{display:inline-block;margin:.2rem 0 .8rem}.header-actions button{font-size:.8rem}.script-header{padding:.7rem 1.2rem}.script-header h1{font-size:1.3rem}.step-navigation{padding:.65rem 1.2rem}.step-navigation .step-choices button{min-width:170px}.step-choices button{font-size:.9rem}.script-quotes{margin-top:1rem}
@media(max-width:1000px){.script-layout{grid-template-columns:minmax(0,1fr) 210px}.journey-step{font-size:.65rem;gap:.3rem}.journey-dot{display:none}.conversation,.conversation.has-extra{padding:1rem}.captured{padding:.85rem}}
@media(max-width:750px){.script-layout{grid-template-columns:minmax(0,1fr);gap:.6rem}.journey{display:block}.journey-step{font-size:.58rem;padding:.3rem .1rem}.captured{display:none}.conversation,.conversation.has-extra{grid-column:1;padding:1rem}.script-step-content .step-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.script-header .eyebrow{display:none}.header-actions{gap:.35rem}.header-actions button{font-size:.68rem;padding:.5rem}.script-lines{font-size:1rem}.step-navigation .step-choices button{min-width:0}.script-header h1{font-size:1.1rem}}
@media(max-width:420px){.script-step-content .step-fields{grid-template-columns:1fr}.script-header{align-items:flex-start}.header-actions{justify-content:flex-end}body{padding-bottom:90px}}

.unresolved-placeholder{background:#fff4cc;color:#725c22;padding:0 .12rem;border-radius:3px}.step-fields:empty{display:none}.step-navigation button[hidden],.header-actions button[hidden]{display:none}

/* A new call card always opens from its first line. */
html,body,.conversation,.script-lines,#step-form{overflow-anchor:none;scroll-behavior:auto}
.answer-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-buttons button{min-height:46px;padding:.65rem .85rem;font-size:.92rem}.suggestion-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-buttons{display:flex;flex-wrap:wrap;gap:.35rem}.compact-buttons button{width:auto;flex:1;min-height:40px;font-size:.8rem;padding:.45rem .6rem}.coverage-entry{padding:.7rem}.coverage-entry .step-fields{gap:.65rem}.coverage-entry .quick-answer{margin:0}.coverage-entry .quick-answer>span{color:#334c3b}.other-answer{grid-column:1/-1}.quick-answer button.selected-answer{background:#dfefe4;border-color:#378554;box-shadow:inset 0 0 0 1px #378554}.script-field input[inputmode="decimal"]{font-size:1.1rem;font-variant-numeric:tabular-nums}
@media(max-width:500px){.answer-buttons,.suggestion-buttons{grid-template-columns:1fr}.compact-buttons{display:flex}}

.script-header .eyebrow{display:none}.script-header{padding:.6rem 1rem}.script-header h1{font-size:1.2rem;line-height:1.25}.conversation,.conversation.has-extra{padding-top:1rem}.button-card{padding-bottom:0}.button-card .step-navigation{position:static;border:0;box-shadow:none;padding:0;margin-top:.65rem}.button-card .step-navigation .step-choices{justify-content:stretch}.button-card .step-navigation .step-choices button{flex:1}.button-card #step-next{display:none}.button-card:has(.other-answer:not([hidden])) #step-next{display:block;width:100%}.button-card .script-layout{padding-bottom:1rem}.script-lines{margin-bottom:.8rem}.step-choices button{padding:.8rem 1rem}.header-actions #step-back{white-space:nowrap}

.script-field.full:has(>.coverage-entry){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.coverage-entry{display:contents}.coverage-entry>.step-fields{grid-column:1/-1;margin:0;gap:.45rem}.coverage-entry>.step-fields .script-field{gap:.2rem}.coverage-entry .quick-answer>span{font-size:.72rem}.coverage-entry .compact-buttons button{min-height:36px;padding:.35rem .55rem}.script-field.full:has(>.coverage-entry)>button,.coverage-entry>button{font-size:.75rem;padding:.45rem .55rem}.step-navigation{justify-content:flex-end}

/* Continue belongs immediately below the current answers. */
body{padding-bottom:0}.step-navigation{position:static;display:block;margin-top:.8rem;padding:0;border:0;box-shadow:none;background:transparent}.step-navigation #step-next{width:100%;min-height:48px;text-align:center;font-size:1rem}.step-navigation .step-choices{justify-content:stretch}.step-navigation .step-choices button{flex:1}.conversation[data-card-step="outbound"] .step-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.conversation[data-card-step="outbound"] .script-lines{font-size:1.05rem;line-height:1.55}.conversation[data-card-step="outbound"] .script-lines p{margin-bottom:.6rem}.conversation[data-card-step="outbound"] .script-field{gap:.2rem}.conversation[data-card-step="outbound"] .script-field input,.conversation[data-card-step="outbound"] .script-field select{min-height:38px;padding:.4rem .55rem}@media(max-width:700px){.conversation[data-card-step="outbound"] .step-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}

.coverage-badge{display:inline-block;background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe;border-radius:999px;padding:.35rem .75rem;font-weight:650;margin-bottom:.65rem}.coverage-capture .coverage-entry{padding:0;border:0}.coverage-reason .other-answer{margin-top:.7rem}.field-caption{font-size:.8rem;line-height:1.4;color:#64748b}

.need-chip .need-detail{display:block;grid-column:1/-1;color:#64748b;font-size:.7rem;font-weight:400}.need-chip meter{grid-column:1/-1;width:100%;height:5px;accent-color:#348060}.need-chip{row-gap:.25rem}

.script-step-content .script-field.relationship-field{grid-column:auto}.relationship-controls{display:flex;gap:.35rem;align-items:start}.relationship-controls select{flex:1;min-width:0}.relationship-controls:has(.other-answer:not([hidden])) select{max-width:96px}.relationship-controls .other-answer{margin:0;flex:2;min-width:0}.conversation[data-card-step="outbound"] h2{margin-bottom:.7rem}.conversation[data-card-step="outbound"] .script-lines{line-height:1.45}.conversation[data-card-step="outbound"] .script-lines p{margin-bottom:.35rem}

.need-chip{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:.25rem .5rem}.need-chip.assigned strong{color:#226642}

.conversation[data-card-step="final-needs"] .script-lines{font-size:1rem;line-height:1.45}.conversation[data-card-step="final-needs"] .script-lines p{margin-bottom:.4rem}.conversation[data-card-step="final-needs"] .step-fields{gap:.6rem}.conversation[data-card-step="final-needs"] h2{margin-bottom:.7rem}
.coverage-purpose-groups{gap:.75rem}.coverage-purpose-group{padding:.85rem;border:1px solid #dbe5ee;border-radius:12px;background:#f8fafc;gap:.6rem}.coverage-purpose-group .coverage-badge{font-size:.9rem;line-height:1.3;margin:0;width:fit-content}.coverage-purpose-group .answer-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}.coverage-purpose-group .answer-buttons button{font-size:.83rem;min-height:48px;padding:.55rem}.coverage-purpose-group .other-answer{margin-top:0}@media(max-width:900px){.coverage-purpose-group .answer-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.conversation[data-card-step="coverage-review"] h2{margin-bottom:.45rem}.conversation[data-card-step="coverage-review"] .script-lines{margin-bottom:.55rem;line-height:1.45}.conversation[data-card-step="coverage-review"] .script-lines p{margin-bottom:.4rem}.conversation[data-card-step="coverage-review"] .coverage-purpose-groups{gap:.5rem}.conversation[data-card-step="coverage-review"] .coverage-purpose-group{padding:.6rem;gap:.4rem}.conversation[data-card-step="coverage-review"] .coverage-purpose-group .answer-buttons button{min-height:42px;padding:.45rem}.conversation[data-card-step="coverage-review"] .step-navigation{margin-top:.55rem}

/* Keep existing coverage and additional funds beside the goal on desktop. */
.final-resources{display:contents}@media(min-width:900px){.conversation[data-card-step="final-needs"] .step-fields:has(.final-resources){grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Keep the requested budget alternative beside the original three on desktop. */
@media(min-width:1101px){.quote-options.four-options{grid-template-columns:repeat(4,minmax(0,1fr))}.four-options .script-quote{padding:.8rem}.four-options .script-quote h3{font-size:1rem}.four-options .script-quote p,.four-options .script-quote li{font-size:.74rem;line-height:1.45}}
