:root{--g9:#0d1f17;--g6:#1f4d36;--g5:#27634a;--g0:#eaf5ef;--td:#111b16;--tb:#3a4d44;--brd:#dce6e1;--fd:'Bebas Neue',sans-serif;--fb:'Source Sans 3',sans-serif}
*{margin:0;box-sizing:border-box}
body{font-family:var(--fb);background:#f2f6f3;color:var(--tb);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
header{background:#fff;border-bottom:1px solid var(--brd);padding:16px 20px}
.hi{max-width:700px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
a.nl{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--g9)}
a.nl img{height:40px}.nlt{font-family:var(--fd);font-size:1.35rem;letter-spacing:2px}.nlt em{font-style:normal;color:var(--g5)}
a.back{color:var(--g5);font-weight:600;font-size:.9rem;text-decoration:none;white-space:nowrap}
a.back:hover{text-decoration:underline}
main{flex:1;padding:32px 20px 48px;max-width:700px;width:100%;margin:0 auto}
h1{font-family:var(--fd);color:var(--g9);font-size:1.8rem;letter-spacing:1.2px;margin-bottom:8px}
.hint{background:#fff3e0;border:1px solid #e0c28c;border-left:4px solid #b8860b;border-radius:10px;padding:14px 16px;font-size:.92rem;margin-bottom:22px;font-weight:600;color:#3d3520}
.hint p{margin:0 0 8px}.hint p:last-child{margin:0}
.err{background:#ffebee;border:1px solid #e57373;border-radius:10px;padding:14px 16px;margin-bottom:20px;color:#7f1a1a;font-weight:600}
form.card{background:#fff;border:1px solid var(--brd);border-radius:16px;padding:28px 24px;box-shadow:0 6px 28px rgba(13,31,23,.07)}
.crd{display:block;cursor:pointer;border:2px solid var(--brd);border-radius:12px;padding:16px 18px;margin:0 0 12px;transition:border-color .2s,background .2s}
.crd:focus-within{border-color:var(--g3);background:var(--g0)}
.crd.sel{border-color:var(--g5);background:var(--g0)}
.crd input[type=radio]{width:1.1rem;height:1.1rem;accent-color:var(--g5);margin-top:3px;flex-shrink:0}
.crd .t{font-weight:700;color:var(--g9);font-size:1.02rem;margin-bottom:6px}
.crd .d{font-size:.9rem;color:var(--tb)}
.row{display:flex;align-items:flex-start;gap:12px}
.sbtn{margin-top:22px}
.sbtn button{width:100%;border:none;cursor:pointer;background:var(--g5);color:#fff;font-family:var(--fb);font-size:1rem;font-weight:700;padding:16px 20px;border-radius:10px;transition:background .2s}
.sbtn button:hover{background:var(--g6)}
.meta{font-size:.9rem;color:var(--tb);margin-bottom:18px}
.foot-hint{margin-top:18px;font-size:.86rem;color:#6b7a75;line-height:1.55}
.foot-hint strong{color:var(--g6)}
