:root{--ivory:#fbf8f1;--ink:#16233b;--cobalt:#3157ff;--teal:#19afa3;--border:#e4dcc8;--card-bg:#fff;--danger:#c0392b}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--ivory);color:var(--ink);margin:0;font-family:Segoe UI,system-ui,-apple-system,Helvetica Neue,Arial,sans-serif;line-height:1.55}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .5rem;font-weight:700}h1{font-size:1.9rem}h2{font-size:1.3rem}h3{font-size:1.1rem}p{margin:0 0 .75rem}a{color:var(--cobalt)}:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:4px}.site-header{background:var(--ink);color:var(--ivory);z-index:10;position:sticky;top:0}.site-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;max-width:980px;margin:0 auto;padding:.9rem 1.25rem;display:flex}.brand{color:var(--ivory);font-size:1.1rem;font-weight:700;text-decoration:none}.brand .arrow{color:var(--teal)}.main-nav{gap:1.1rem;display:flex}.main-nav a{color:#cfd6e6;border-bottom:2px solid #0000;padding:.3rem .1rem;font-size:.95rem;text-decoration:none}.main-nav a.active,.main-nav a:hover{color:var(--ivory);border-bottom-color:var(--teal)}.page-shell{max-width:980px;margin:0 auto;padding:1.5rem 1.1rem 4rem}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;margin-bottom:1.25rem;padding:1.5rem;box-shadow:0 2px 10px #16233b0d}.hero{text-align:left;padding:2.25rem 1.75rem}.eyebrow{color:var(--teal);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;font-weight:700}.lead{color:#3a465c;max-width:60ch;font-size:1.05rem}.grid-3{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem;display:grid}@media (width<=760px){.grid-3{grid-template-columns:1fr}}.impact-card{border-left:4px solid var(--cobalt)}.privacy-card{border-left:4px solid var(--teal);background:#fffdf6}.btn{cursor:pointer;border:none;border-radius:999px;padding:.65rem 1.3rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform 50ms,opacity .15s;display:inline-block}.btn:active{transform:scale(.98)}.btn-primary{background:var(--cobalt);color:#fff}.btn-primary:hover{opacity:.92}.btn-lg{padding:.8rem 1.8rem;font-size:1.02rem}.btn-secondary{color:var(--ink);border:1px solid var(--border);background:#eff2fb}.btn-secondary:hover{background:#e4e9f7}.btn-ghost{color:#6b7686;border:1px solid var(--border);background:0 0}.btn-ghost:hover{background:#f4f1e8}.btn-danger{background:var(--danger);color:#fff}.subtle{color:#5b6578}.form-card{padding:1.5rem 1.5rem 1.75rem}fieldset{border:none;margin:0 0 1.5rem;padding:0}legend{color:var(--ink);border-bottom:1px solid var(--border);width:100%;margin-bottom:.9rem;padding:0 0 .8rem;font-size:1.05rem;font-weight:700}.field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.field>span{font-size:.9rem;font-weight:600}input[type=text],input[type=date],textarea{font:inherit;color:var(--ink);resize:vertical;background:#fffefb;border:1px solid #c9c0a8;border-radius:10px;width:100%;padding:.65rem .8rem}input:focus,textarea:focus{border-color:var(--teal)}.radio-row{flex-wrap:wrap;gap:.6rem;display:flex}.radio-pill{border:1px solid var(--border);cursor:pointer;background:#fffefb;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.9rem;display:flex}.radio-pill input{margin:0}.error{color:var(--danger);font-size:.85rem}.statement-block{border-top:2px dashed var(--border);margin-top:.5rem;padding-top:1.25rem}.statement-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.notice{color:var(--teal);font-size:.9rem;font-weight:600}.form-actions{margin-top:1rem}.records-empty{text-align:center;padding:3rem 1.5rem}.records-list{flex-direction:column;gap:1rem;display:flex}.record-card{padding:1.3rem 1.4rem}.record-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.record-meta{color:#6b7686;margin-bottom:.5rem;font-size:.85rem}.record-takeaway{color:#3a465c;font-style:italic}.badge{white-space:nowrap;border-radius:999px;padding:.3rem .7rem;font-size:.75rem;font-weight:700}.badge-completed{color:#0f7e72;background:#e2f6f2}.badge-planned{color:var(--cobalt);background:#eaeffd}.statement-quote{border-left:3px solid var(--teal);white-space:pre-wrap;background:#faf7ee;border-radius:8px;margin:.75rem 0;padding:.9rem 1rem;font-size:.95rem}.record-actions{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.5rem;display:flex}.confirm-row{align-items:center;gap:.5rem;font-size:.9rem;display:flex}
