:root{--navy:#14284b;--teal:#1fb5ac;--ink:#1d2433;--mute:#5b6577;--line:#dde3ea;--bg:#f5f7fa}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);min-height:100vh;display:flex;flex-direction:column}
header{background:var(--navy);color:#fff;display:flex;align-items:center;gap:.6rem;padding:.9rem 1.4rem;font-weight:600;letter-spacing:.02em}
main{flex:1;width:100%;max-width:720px;margin:2.5rem auto;padding:0 1.2rem}
.card{background:#fff;border:1px solid var(--line);padding:2.2rem;border-top:4px solid var(--teal)}
.kicker{color:var(--teal);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin:0 0 .6rem}
h1{font-size:1.9rem;line-height:1.2;margin:0 0 1rem;color:var(--navy);font-weight:600}h2{font-size:1.25rem;color:var(--navy);margin:0 0 .8rem}
p,li{color:var(--mute);line-height:1.6}ul{padding-left:1.1rem}
.progress{height:4px;background:var(--line);margin-bottom:1.4rem}.progress i{display:block;height:100%;background:var(--teal);transition:width .3s}
.opts{display:grid;gap:.6rem;margin:1rem 0}.opt{display:block;text-align:left;width:100%;border:1px solid var(--line);background:#fff;padding:.9rem 1rem;font:inherit;color:var(--ink);cursor:pointer}
.opt:hover,.opt.sel{border-color:var(--teal);background:#f0fbfa}.opt b{display:block;color:var(--navy)}.opt small{color:var(--mute)}
label{display:block;font-weight:600;margin:1rem 0 .35rem;color:var(--navy);font-size:.95rem}input,textarea,select{width:100%;padding:.7rem;border:1px solid var(--line);font:inherit}
.nav{display:flex;justify-content:space-between;margin-top:1.6rem;gap:1rem}
.btn{background:var(--navy);color:#fff;border:0;padding:.8rem 1.4rem;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block}.btn:disabled{opacity:.4;cursor:default}
.btn.ghost{background:transparent;color:var(--navy);border:1px solid var(--line)}
.err{color:#b3261e;font-size:.9rem;min-height:1.2em}
footer{text-align:center;color:var(--mute);font-size:.85rem;padding:1.2rem}footer a{color:var(--mute)}
