.cf{max-width:40rem;background:var(--card);border:1px solid var(--line);border-radius:1.2rem;padding:1.5rem}
.cf fieldset{border:0;min-width:0}
.cf legend,.cf .l{display:block;font-weight:800;color:var(--ink);font-size:.95rem;margin-bottom:.45rem}
.req{color:#b4501f}
.chips{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}
.chip{position:relative;display:flex;gap:.6rem;align-items:center;padding:.75rem .85rem;border:1.5px solid var(--line);border-radius:.8rem;font-weight:700;color:var(--ink);font-size:.92rem;background:var(--bg);cursor:pointer}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip svg{flex:none;color:var(--mu)}
.chip:has(input:checked){border-color:var(--gold);background:#fbf1d9;color:#161a24}.chip:has(input:checked) svg{color:#8a6410}
.chip:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:2px}
.lki{display:flex;gap:.9rem;align-items:center;margin-top:.8rem;padding:.9rem 1rem;border-radius:.9rem;background:#eaf2fb;border:1px solid #c9dcf0;color:#1d2a3a}
.lki .lg{width:2.4rem;height:2.4rem;border-radius:.6rem;background:#0a66c2;color:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.lki b{display:block;font-size:.95rem;color:#161a24}.lki span{font-size:.85rem}
.lki a{margin-left:auto;flex:none;display:inline-flex;gap:.4rem;align-items:center;padding:.55rem .9rem;border-radius:99px;background:#0a66c2;color:#fff;font-weight:700;font-size:.85rem;text-decoration:none}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1.2rem}
.f{margin-top:1.2rem}
.in2{width:100%;padding:.75rem .85rem;border:1.5px solid var(--line);border-radius:.7rem;font:inherit;background:var(--bg);color:var(--ink)}
.in2:focus{outline:3px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.in2::placeholder{color:#6f7480;opacity:1}
textarea.in2{min-height:8.5rem;resize:vertical}
.cnt{display:flex;justify-content:space-between;font-size:.8rem;color:var(--mu);margin-top:.3rem}
.cnt.lim b{color:#b4501f}
.qnote{font-size:.82rem;margin-top:.5rem;padding:.6rem .8rem;border-radius:.6rem;background:var(--soft)}
.drop{display:flex;gap:.8rem;align-items:center;padding:.9rem;border:1.5px dashed var(--line);border-radius:.8rem;background:var(--bg);font-size:.9rem;cursor:pointer;position:relative}
.drop:focus-within{outline:3px solid var(--gold);outline-offset:2px}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.drop svg{color:var(--mu);flex:none}.drop b{color:var(--ink)}.drop small{display:block;color:var(--mu);font-size:.8rem}
.fname{display:flex;gap:.6rem;align-items:center;margin-top:.5rem;font-size:.85rem;font-weight:700;color:var(--ink)}
.fname button{font-weight:700;color:#b4501f;text-decoration:underline}
.cons{display:flex;gap:.6rem;align-items:flex-start;font-size:.85rem;margin-top:1.2rem}
.cons input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:#6b7a3a;flex:none}
.cons a{color:var(--olive-t);font-weight:700}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.err{color:#b0412e;font-size:.82rem;font-weight:700;margin-top:.35rem}
.gerr{margin-top:1rem;padding:.7rem .9rem;border-radius:.7rem;background:#f7e3dd;color:#7d2112;font-weight:700;font-size:.88rem}
.send{margin-top:1.3rem;width:100%;padding:.95rem;border-radius:99px;background:var(--gold);color:#161a24;font-weight:800;font-size:1.05rem}
.send[disabled]{opacity:.6;cursor:wait}
.hint{font-size:.8rem;color:var(--mu);margin-top:.6rem;text-align:center}
.ok{max-width:40rem;background:var(--card);border:1px solid var(--line);border-top:6px solid var(--olive);border-radius:1.2rem;padding:2rem 1.5rem;text-align:center}
.ok .ck{width:3.4rem;height:3.4rem;border-radius:50%;background:#e6efdf;color:#3f7a3a;display:flex;align-items:center;justify-content:center;margin:0 auto}
.ok h2{font-family:Oswald,Arial,sans-serif;font-weight:600;font-size:1.8rem;color:var(--ink);margin-top:.9rem;line-height:1.15}
.ok p{margin-top:.5rem}
.ok .sep{height:1px;background:var(--line);margin:1.4rem 0}
.ok .lkb{display:inline-flex;gap:.5rem;align-items:center;padding:.8rem 1.3rem;border-radius:99px;background:#0a66c2;color:#fff;font-weight:800;text-decoration:none;margin-top:.8rem}
.ok .bk{display:block;margin-top:1.1rem;font-weight:700;color:var(--olive-t);text-decoration:none;font-size:.9rem}
.prose{max-width:42rem}.prose h2{font-family:Oswald,Arial,sans-serif;font-size:1.35rem;color:var(--ink);margin-top:1.6rem}.prose p,.prose li{margin-top:.5rem}.prose ul{padding-left:1.2rem}
@media (max-width:640px){.chips,.row2{grid-template-columns:1fr}.cf{padding:1.1rem}.lki{flex-wrap:wrap}.lki a{margin-left:3.3rem}}
