:root{--red:#AF1C3B;--red-p:#F9EFF1;--ink:#1F2328;--ink2:#4E565E;--ink3:#8E959D;
--line:#E8E4DF;--line2:#F2EFEB;--warm:#FCFAF7;--green:#2E7D4F;--green-p:#F0F7F2;}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
body{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
background:#F5F3F0;color:var(--ink);line-height:1.6;font-size:15px;padding-bottom:40px;}
.wrap{max-width:640px;margin:0 auto;padding:0 16px;}
header{background:var(--red);color:#fff;padding:26px 0 22px;margin-bottom:18px;}
header .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;}
.logo{font-size:19px;font-weight:800;letter-spacing:.14em;}
.logo small{display:block;font-size:10px;letter-spacing:.24em;opacity:.75;font-weight:400;margin-top:4px;}
.hd-r{font-size:11px;opacity:.85;text-align:right;line-height:1.7;}
.bar{height:3px;background:#E4E0DA;border-radius:2px;overflow:hidden;margin:0 0 18px;
position:sticky;top:0;z-index:9;}
.bar i{display:block;height:100%;background:var(--red);width:0;transition:width .25s;}
.blk{background:#fff;border:1px solid var(--line2);border-radius:10px;padding:18px 16px;margin-bottom:14px;}
.blk>h2{font-size:15px;font-weight:700;letter-spacing:.04em;display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.blk>h2::before{content:"";width:3px;height:14px;background:var(--red);border-radius:2px;}
.blk .sub{font-size:12px;color:var(--ink3);margin-bottom:14px;line-height:1.7;}
.f{margin-bottom:15px;}
.f>label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;}
.f .hint{font-size:11.5px;color:var(--ink3);font-weight:400;margin-left:6px;}
.f input,.f select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:7px;
font-size:15px;background:#fff;color:var(--ink);font-family:inherit;-webkit-appearance:none;appearance:none;}
.f select{background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238E959D' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;}
.f input:focus,.f select:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px var(--red-p);}
.chips{display:flex;flex-wrap:wrap;gap:8px;}
.chip{position:relative;}
.chip input{position:absolute;opacity:0;width:0;height:0;}
.chip span{display:block;padding:9px 14px;border:1px solid var(--line);border-radius:20px;font-size:14px;
background:#fff;transition:.15s;user-select:none;}
.chip input:checked+span{background:var(--red);border-color:var(--red);color:#fff;font-weight:600;}
.chip input:focus-visible+span{box-shadow:0 0 0 3px var(--red-p);}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;}
.scorecard{border:1px solid var(--line2);border-radius:8px;padding:12px;background:var(--warm);}
.scorecard .t{font-size:13px;font-weight:700;margin-bottom:9px;display:flex;justify-content:space-between;
align-items:baseline;}
.scorecard .t em{font-style:normal;font-size:11px;color:var(--ink3);font-weight:400;}
.scorecard label{font-size:11px;color:var(--ink3);display:block;margin-bottom:3px;}
.err{color:var(--red);font-size:12px;margin-top:5px;display:none;}
.f.bad input,.f.bad select{border-color:var(--red);background:var(--red-p);}
.f.bad .err{display:block;}
#elecErr{display:none;margin-top:6px;}
.note{font-size:12px;color:var(--ink3);background:var(--warm);border-left:3px solid var(--line);
padding:10px 12px;border-radius:0 6px 6px 0;line-height:1.7;}
.note b{color:var(--ink2);}
footer{padding:8px 0 30px;}
button.submit{width:100%;padding:15px;border:none;border-radius:8px;background:var(--red);color:#fff;
font-size:16px;font-weight:700;font-family:inherit;letter-spacing:.06em;cursor:pointer;}
button.submit:disabled{background:#C9C4BE;cursor:not-allowed;}
.done{text-align:center;padding:30px 20px;}
.done .ic{width:56px;height:56px;border-radius:50%;background:var(--green-p);color:var(--green);
display:flex;align-items:center;justify-content:center;font-size:28px;margin:0 auto 16px;}
.done h3{font-size:18px;margin-bottom:8px;}
.done p{font-size:13px;color:var(--ink3);line-height:1.8;margin-bottom:20px;}
.done .noBox{display:inline-block;padding:14px 30px;background:var(--red-p);border-radius:10px;
font-size:12.5px;color:var(--ink3);letter-spacing:.06em;margin:0 0 20px;line-height:2;}
.done .noBox b{font-size:24px;color:var(--red);font-weight:800;letter-spacing:.14em;
font-family:Consolas,monospace;}
.links a{display:block;padding:13px;background:#fff;border:1px solid var(--line2);border-radius:8px;
margin-bottom:10px;text-decoration:none;color:var(--red);font-weight:600;font-size:14px;}
.links a small{display:block;color:var(--ink3);font-weight:400;font-size:11.5px;margin-top:3px;}
@media(min-width:560px){.grid3{grid-template-columns:1fr 1fr 1fr;}}