:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173a31;background:#f5f3ed;font-synthesis:none;--green:#173f34;--green-2:#245848;--gold:#8a6420;--cream:#f5f3ed;--white:#fff;--ink:#173a31;--muted:#60706a;--line:#d9ddd8;--danger:#8b2e2e;--warning:#85630d;--positive:#236744;--shadow:0 18px 55px rgba(24,54,45,.11)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#f8f7f3 0,#f2efe8 100%);color:var(--ink)}button,input{font:inherit}.hidden{display:none!important}.app-shell{min-height:100svh}.brand,.brand-button{font-weight:800;letter-spacing:.16em;font-size:.82rem;color:var(--green)}.brand-button{border:0;background:transparent;padding:.65rem 0;cursor:pointer}.landing{min-height:100svh;padding:clamp(1.25rem,4vw,3rem);display:grid;grid-template-rows:auto 1fr;gap:2rem;max-width:1180px;margin:auto}.hero-card{align-self:center;max-width:840px;padding:clamp(1.6rem,5vw,4.5rem);background:rgba(255,255,255,.94);border:1px solid rgba(23,63,52,.09);border-radius:30px;box-shadow:var(--shadow)}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.14em;color:var(--gold);margin:0 0 .7rem}.hero-card h1,.results h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,7vw,5rem);line-height:.98;letter-spacing:-.035em;margin:.2rem 0 1.35rem;color:var(--green);max-width:800px}.hero-copy{font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.6;color:#4b5f57;max-width:720px}.trust-row{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.7rem 0}.trust-row span{padding:.55rem .8rem;border-radius:999px;background:#edf2ee;color:var(--green);font-size:.85rem;font-weight:700}.button{border:0;border-radius:14px;min-height:48px;padding:.8rem 1.2rem;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.button:focus-visible,input:focus-visible,summary:focus-visible,.choice-card:has(input:focus-visible){outline:3px solid rgba(138,100,32,.5);outline-offset:3px}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{background:var(--green);color:white;box-shadow:0 8px 20px rgba(23,63,52,.18)}.primary:hover{background:var(--green-2)}.secondary{background:white;color:var(--green);border:1px solid #cfd8d2}.large{font-size:1.05rem;padding:1rem 1.45rem}.locked{background:#e4e6e2;color:#66726d;cursor:not-allowed;box-shadow:none}.fine-print{font-size:.82rem;color:var(--muted)}.workflow{min-height:100svh;display:grid;grid-template-rows:auto 1fr auto}.workflow-header,.results-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem max(1.2rem,calc((100vw - 1040px)/2));background:rgba(248,247,243,.96);border-bottom:1px solid rgba(23,63,52,.1)}.progress-wrap{display:grid;grid-template-columns:auto minmax(100px,220px);align-items:center;gap:.75rem;font-size:.76rem;font-weight:800;color:#596b64}.progress-track{height:6px;border-radius:999px;background:#dfe4e0;overflow:hidden}.progress-bar{height:100%;background:var(--gold);width:20%;transition:width .2s ease}.screen-wrap{width:min(100%,900px);margin:auto;padding:clamp(1.5rem,5vw,4rem) 1.2rem}.step{animation:stepIn .18s ease-out}.step h2,.risk-card h2,.locked-card h2,.confidence-details h2{font-family:Georgia,"Times New Roman",serif;color:var(--green);font-size:clamp(2rem,5vw,3.35rem);line-height:1.05;letter-spacing:-.025em;margin:.25rem 0 .85rem}.step-intro{color:#607069;font-size:1.02rem;line-height:1.55;max-width:700px;margin-bottom:1.8rem}@keyframes stepIn{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field{display:flex;flex-direction:column;gap:.45rem;margin:1rem 0;font-weight:750}.field>span{font-size:.94rem}.field small{font-weight:500;color:var(--muted);line-height:1.4}.field small.error{color:var(--danger);min-height:0}.field input{width:100%;border:1px solid #ccd5d0;background:white;color:var(--ink);border-radius:13px;min-height:51px;padding:.75rem .85rem;font-size:1rem}.field input:invalid{box-shadow:none}.money-input,.suffix-input{display:grid;grid-template-columns:auto 1fr;align-items:center;background:white;border:1px solid #ccd5d0;border-radius:13px;overflow:hidden}.suffix-input{grid-template-columns:1fr auto}.money-input span,.suffix-input span{padding:0 .8rem;color:#687970;font-weight:800}.money-input input,.suffix-input input{border:0;border-radius:0}.choice-group{border:0;padding:0;margin:1.4rem 0;display:grid;gap:.75rem}.choice-group legend,.inline-choice legend{font-weight:800;margin-bottom:.7rem}.choice-card{display:flex;gap:.8rem;padding:1rem;border:1px solid #ccd5d0;border-radius:16px;background:white;cursor:pointer;align-items:flex-start}.choice-card:has(input:checked){border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green);background:#f3f7f4}.choice-card input{margin-top:.2rem;accent-color:var(--green)}.choice-card span{display:flex;flex-direction:column;gap:.3rem}.choice-card small{font-size:.84rem;color:var(--muted);line-height:1.4}.compact{margin-top:1.8rem}.custom-panel,.optional-details{background:white;border:1px solid var(--line);border-radius:18px;padding:1.2rem;margin:1.2rem 0}.custom-panel h3{margin:.1rem 0;color:var(--green)}.custom-panel p{color:var(--muted);font-size:.9rem}.inline-choice{border:0;padding:0;margin:1rem 0;display:flex;gap:1rem;flex-wrap:wrap}.inline-choice label{display:flex;gap:.4rem;align-items:center}.inline-choice input,.toggle-row input{accent-color:var(--green)}.toggle-row{display:flex;align-items:flex-start;gap:.9rem;padding:1rem;border:1px solid var(--line);background:white;border-radius:16px;margin:1rem 0;cursor:pointer}.toggle-row input{margin-top:.3rem;transform:scale(1.15)}.toggle-row span{display:flex;flex-direction:column;gap:.25rem}.toggle-row small{font-size:.83rem;color:var(--muted);line-height:1.4}.optional-details summary{cursor:pointer;font-weight:800}.optional-grid{margin-top:.5rem}.error-summary{margin-top:1rem;padding:.8rem 1rem;background:#fff2f0;border-left:4px solid var(--danger);color:var(--danger);border-radius:8px;font-weight:700}.workflow-actions{display:flex;justify-content:space-between;gap:1rem;padding:1rem max(1.2rem,calc((100vw - 900px)/2));border-top:1px solid rgba(23,63,52,.1);background:#f8f7f3}.workflow-actions .button{min-width:110px}.results{min-height:100svh}.result-container{max-width:1000px;margin:auto;padding:clamp(2rem,6vw,5rem) 1.2rem 5rem}.result-lead{font-size:1.05rem;color:var(--muted);line-height:1.6}.hero-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 0}.metric-card{background:white;border:1px solid var(--line);border-radius:20px;padding:1.25rem;display:flex;flex-direction:column;gap:.45rem}.metric-card span{font-size:.82rem;font-weight:800;color:#5e6d67}.metric-card strong{font-size:clamp(1.9rem,5vw,3rem);line-height:1;color:var(--green)}.metric-card small{color:var(--muted);line-height:1.4}.metric-card.dominant{grid-column:span 2;background:var(--green);border-color:var(--green)}.metric-card.dominant span,.metric-card.dominant strong{color:white}.metric-card.dominant small{color:#dce9e3}.risk-card,.locked-card,.confidence-details{margin:1.2rem 0;padding:clamp(1.25rem,4vw,2rem);background:white;border:1px solid var(--line);border-radius:22px}.risk-card h2,.locked-card h2,.confidence-details h2{font-size:clamp(1.6rem,4vw,2.35rem)}.risk-card p,.locked-card p,.confidence-details li{color:#596c64;line-height:1.55}.locked-card{border-style:dashed;background:#faf9f6}.locked-card ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1.4rem;padding-left:1.25rem;color:#465c53}.locked-card>.button{margin:1rem 0 .5rem}.locked-card>small{display:block;color:var(--muted)}.compact-button{min-height:40px;padding:.55rem .85rem}.confidence-details ul{padding-left:1.25rem}@media(max-width:680px){.landing{padding:1rem}.hero-card{border-radius:22px}.workflow-header,.results-header{padding-top:max(3.25rem,calc(env(safe-area-inset-top) + 1rem))}.workflow-header{align-items:flex-start;flex-direction:column;gap:.5rem}.progress-wrap{width:100%;grid-template-columns:auto 1fr}.field-grid,.hero-result-grid,.locked-card ul{grid-template-columns:1fr}.metric-card.dominant{grid-column:auto}.workflow-actions{padding:max(.8rem,env(safe-area-inset-bottom)) 1rem;position:static}.workflow-actions .button{flex:1}.screen-wrap{padding-top:2rem}.results-header{padding-left:1rem;padding-right:1rem;padding-bottom:1rem}.choice-card{padding:.9rem}.optional-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
