:root{--ink:#0E0E10;--ink-2:#3A3A40;--ink-3:#6B6B72;--line:#E6E6EA;--line-2:#F1F1F4;--bg:#FAFAFA;--card:#FFFFFF;--p:#6D28D9;--p-2:#5B21B6;--p-soft:#F5F1FE;--green:#16A34A;--green-soft:#ECFDF5;--amber-soft:#FFFBEB;--amber-line:#FCD34D;--r-md:12px;--r-lg:16px}.app{max-width:540px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;color:var(--ink)}.app *{box-sizing:border-box}header.bar{display:flex;align-items:center;justify-content:space-between;padding:16px 20px}.bar-back{appearance:none;background:none;border:none;cursor:pointer;font-size:22px;line-height:1;color:var(--ink-2);padding:4px 10px 4px 0}.bar-back:hover,.brand{color:var(--ink)}.brand{font-weight:700;font-size:17px;letter-spacing:-.01em;text-decoration:none}.brand-dot{color:var(--p)}.step-meta{font-size:14px;color:var(--ink-3);font-variant-numeric:tabular-nums}.progress{height:3px;background:var(--line-2);border-radius:999px;overflow:hidden;margin:0 20px 12px}.progress>span{display:block;height:100%;background:var(--p);transition:width .28s cubic-bezier(.2,.7,.3,1)}.app main{flex:1;padding:8px 20px 120px}.screen{display:none}.screen.active{display:block;animation:fadeUp .24s cubic-bezier(.2,.7,.3,1)}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}h1.h-title{font-size:28px;line-height:1.2;letter-spacing:-.02em;font-weight:700;margin:8px 0}p.sub{font-size:17px;color:var(--ink-2);margin:0 0 24px}label.field{display:block;margin-bottom:18px}label.field>.lab{display:block;font-size:15px;font-weight:600;color:var(--ink);margin-bottom:8px}.input,.textarea{width:100%;font-family:inherit;font-size:17px;color:var(--ink);padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);transition:border-color .12s,box-shadow .12s;-webkit-appearance:none;appearance:none}.textarea{resize:vertical;min-height:140px;line-height:1.55}.input:focus,.textarea:focus{outline:none;border-color:var(--p);box-shadow:0 0 0 3px var(--p-soft)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.chip{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font:inherit;font-size:14px;color:var(--ink-2);cursor:pointer;transition:border-color .12s,background .12s,color .12s}.chip:hover{border-color:var(--p);color:var(--p);background:var(--p-soft)}.chip:focus{outline:2px solid var(--p);outline-offset:2px}.chip.on{border-color:var(--p);background:var(--p-soft);color:var(--p);font-weight:600}.pebble-head{font-size:13px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px}.link-btn{background:none;border:0;color:var(--p);font:inherit;font-size:15px;cursor:pointer;padding:12px 0;text-decoration:underline;text-underline-offset:4px;display:block;margin-top:8px}.link-btn:hover{color:var(--p-2)}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.tiles-stack{grid-template-columns:1fr}.tile{text-align:left;padding:16px 18px;background:var(--card);border:1.5px solid var(--line);border-radius:var(--r-md);font-family:inherit;font-size:16px;font-weight:500;color:var(--ink);cursor:pointer;transition:border-color .12s,background .12s}.tile.on,.tile:hover{border-color:var(--p)}.tile.on{background:var(--p-soft);font-weight:600}.tile .s,.tile .t{display:block}.tile .s{font-size:13px;color:var(--ink-3);margin-top:4px;font-weight:400}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:16px 24px;border-radius:var(--r-md);font-family:inherit;font-size:17px;font-weight:600;cursor:pointer;border:0;transition:background .12s,transform 80ms;min-height:52px}.btn-primary{background:var(--ink);color:white;width:100%}.btn-primary:hover{background:#2a2a2e}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ink-2);width:100%}.btn-ghost:hover{color:var(--ink)}.trust{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;font-size:14px;color:var(--ink-2);line-height:1.5;margin:16px 0}.trust strong{color:var(--ink);font-weight:600}.benefits{list-style:none;margin:18px 0 22px;padding:0;display:flex;flex-direction:column;gap:12px}.benefits li{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--ink);line-height:1.4}.benefits .tick{flex:0 0 auto;width:22px;height:22px;border-radius:999px;background:var(--p-soft);color:var(--p);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}.warm{background:var(--green-soft);border:1px solid #bbf7d0;border-radius:var(--r-md);padding:12px 14px;font-size:14px;color:#14532D;line-height:1.5;margin:16px 0;display:flex;gap:10px;align-items:flex-start}.warm .check{flex:0 0 auto;width:20px;height:20px;color:var(--green)}.privacy-note{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:0;font-size:13px;color:var(--ink-3);line-height:1.5}.privacy-note svg{flex:0 0 auto;color:var(--green);margin-top:2px}.terms-note{margin:18px 0 0;font-size:13px;color:var(--ink-3);text-align:left;line-height:1.5}.terms-note a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.terms-note a:hover{color:var(--p)}.phase-eyebrow{display:inline-block;padding:4px 10px;background:var(--p-soft);color:var(--p);border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin:0 0 12px}.section-divider{display:flex;align-items:center;gap:12px;margin:24px 0 16px;color:var(--ink-3)}.section-divider:after,.section-divider:before{content:"";flex:1;height:1px;background:var(--line)}.section-divider .section-label{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.eyebrow{display:inline-block;padding:5px 11px;background:var(--p-soft);color:var(--p);border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.02em;margin-bottom:16px}.manual-toggle{margin-top:12px;font-size:14px;color:var(--p);background:none;border:0;cursor:pointer;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.saved{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:6px;padding:8px 20px}.saved .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.route-hint{background:var(--amber-soft);border:1px solid var(--amber-line);border-radius:var(--r-md);padding:14px 16px;margin:12px 0;font-size:14px;color:#78350F;line-height:1.5}.route-hint strong{color:#78350F;font-weight:600}footer.help{text-align:center;padding:32px 20px 60px;font-size:13px;color:var(--ink-3);line-height:1.6}footer.help a{color:var(--ink-2)}