:root{--paper:#FFFFFF;--mist:#F1F5FA;--card:#FFFFFF;--ink:#121D2B;--muted:#54667A;--cobalt:#1A56DB;--cobalt-deep:#1443AE;--on-cobalt:#FFFFFF;--kash:#F2A516;--line:#D7E2EE;--alert:#C0522A;--font-sans:"Sora",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:56px;--radius-sm:12px;--radius-md:14px;--radius-lg:20px;--radius-xl:26px;--radius-pill:999px;--shadow-card:0 2px 10px rgba(18,33,28,0.08)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0E1621;--mist:#141E2B;--card:#16222F;--ink:#E6EEF8;--muted:#8FA3B8;--cobalt:#5E9BFF;--cobalt-deep:#4C8BF2;--on-cobalt:#0A1428;--kash:#F2A516;--line:#243447;--alert:#D96A43;--shadow-card:0 2px 10px rgba(0,0,0,.35)}}:root[data-theme=dark]{--paper:#0E1621;--mist:#141E2B;--card:#16222F;--ink:#E6EEF8;--muted:#8FA3B8;--cobalt:#5E9BFF;--cobalt-deep:#4C8BF2;--on-cobalt:#0A1428;--kash:#F2A516;--line:#243447;--alert:#D96A43;--shadow-card:0 2px 10px rgba(0,0,0,.35)}:root{--bg:var(--paper);--surface:var(--mist);--primary:var(--cobalt);--primary-ink:var(--on-cobalt);--accent:var(--kash);--bad:var(--alert);--shadow:var(--shadow-card)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);line-height:1.55;min-height:100vh}.wrap{max-width:640px;margin:0 auto;padding:0 18px 60px}header{padding:18px 0 6px;justify-content:space-between}.logo,header{display:flex;align-items:center}.logo{font-weight:800;font-size:1.25rem;letter-spacing:-.02em;gap:9px;color:var(--ink);text-decoration:none}.logo span{color:var(--primary)}.logo svg{flex-shrink:0}h1{font-size:clamp(1.6rem,6vw,2.2rem);font-weight:800;line-height:1.15;letter-spacing:-.02em}h2{font-size:1.15rem;font-weight:700;margin-bottom:4px;letter-spacing:-.01em}.sub{color:var(--muted);font-size:.88rem;margin-bottom:16px}.hero{padding:16px 0 22px}.hero p{margin-top:10px;font-size:.95rem;max-width:36ch}.hero p,.trust{color:var(--muted)}.trust{margin-top:16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:.85rem}.trust b{color:var(--ink)}.steps-bar{display:flex;gap:6px;margin:10px 0 20px}.steps-bar i{flex:1 1;height:4px;border-radius:2px;background:var(--line);transition:background .25s}.steps-bar i.on{background:var(--primary)}.screen{display:none}.screen.active{display:block;animation:pop .25s ease}@keyframes pop{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.screen.active{animation:none}}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.tile{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:16px 12px;text-align:center;cursor:pointer;font:inherit;color:var(--ink);font-weight:600;font-size:.92rem;transition:border-color .15s}.tile .em{font-size:1.7rem;display:block;margin-bottom:6px}.tile:focus-visible,.tile:hover{border-color:var(--primary)}.tile:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.list .tile{text-align:left;display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:10px}.list .tile small{color:var(--muted);font-weight:400}.qcard{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:14px;box-shadow:var(--shadow)}.qcard p{font-weight:600;font-size:.95rem;margin-bottom:10px}.opts{display:flex;flex-wrap:wrap;gap:8px}.opts button{font:inherit;font-size:.85rem;padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}.opts button.picked{border-color:var(--primary);font-weight:600}.btn,.opts button.picked{background:var(--primary);color:var(--primary-ink)}.btn{display:block;width:100%;font:inherit;font-weight:700;font-size:1rem;border:none;border-radius:14px;padding:15px;cursor:pointer;margin-top:8px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--primary);border:1.5px solid var(--primary);margin-top:10px}.back{background:none;border:none;color:var(--muted);font:inherit;font-size:.85rem;cursor:pointer;padding:0;margin-bottom:14px;display:inline-flex;align-items:center;gap:4px}.quote-box{background:var(--primary);color:var(--primary-ink);border-radius:18px;padding:26px 20px;text-align:center;margin-bottom:16px}.quote-box .lbl{font-size:.8rem;opacity:.85}.quote-box .amt{font-size:2.6rem;font-weight:800;letter-spacing:-.02em;margin:4px 0}.quote-box .dev{font-size:.9rem;opacity:.9}.breakdown{margin-bottom:18px}.breakdown .row{display:flex;justify-content:space-between;font-size:.88rem;padding:9px 2px;border-bottom:1px solid var(--line)}.breakdown .row span:last-child{font-weight:600}.neg{color:var(--bad)}input,select,textarea{width:100%;font:inherit;font-size:.95rem;padding:13px 14px;margin-bottom:12px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary);border-color:var(--primary)}label{font-size:.82rem;font-weight:600;display:block;margin-bottom:5px;color:var(--muted)}.done{text-align:center;padding:40px 10px}.done .big{font-size:3rem}.done h2{margin:10px 0 6px}.done p{color:var(--muted);font-size:.9rem;max-width:36ch;margin:0 auto}.ticket{background:var(--surface);border:1px dashed var(--primary);border-radius:14px;padding:14px;margin:18px auto 0;font-size:.88rem;max-width:340px;text-align:left}.ticket div{display:flex;justify-content:space-between;padding:3px 0}.ticket b{font-weight:700}footer{margin-top:34px;font-size:.75rem;text-align:center}.chip,footer,footer a{color:var(--muted)}.chip{display:inline-block;font-size:.75rem;font-weight:700;border-radius:999px;padding:3px 10px;border:1px solid var(--line)}.chip.ok{color:var(--primary);border-color:var(--primary)}.chip.warn{color:var(--bad);border-color:var(--bad)}table{width:100%;border-collapse:collapse;font-size:.85rem}td,th{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:.75rem;font-weight:600}.statrow{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.stat{flex:1 1;min-width:130px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px}.stat .v{font-size:1.4rem;font-weight:800}.stat .k{font-size:.75rem;color:var(--muted)}