[hidden]{display:none!important}
:root{--bg:#16130f;--card:#fffdf8;--ink:#2a2622;--mut:#7d7466;--line:#e6dfcf;--gold:#f5b700;--gold-d:#d39a00;--red:#e5484d}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(1200px 600px at 20% -10%,#3a2e14,transparent 60%),radial-gradient(900px 500px at 110% 10%,#2b1f3d,transparent 60%),var(--bg);color:var(--ink);font:15px/1.6 Pretendard,system-ui,-apple-system,'Apple SD Gothic Neo',sans-serif}
.hp{max-width:640px;margin:0 auto;padding:22px 16px 60px}
.hp-back{display:inline-block;color:#e9dfc8;text-decoration:none;font-weight:700;font-size:14px;margin-bottom:10px}
.hp-hd{text-align:center;color:#fff;margin:6px 0 18px}
.hp-hd img{width:150px;height:auto;filter:drop-shadow(0 6px 16px rgba(0,0,0,.4))}
.hp-hd h1{margin:6px 0 6px;font-size:24px;letter-spacing:-.02em}
.hp-hd p{margin:0;color:#d8cfbd;font-size:14px}
.hp-card{background:var(--card);border-radius:20px;padding:20px;box-shadow:0 20px 50px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:14px}
.hp-kind{border:0;margin:0;padding:0;display:grid;gap:8px}
.hp-kind legend{font-weight:800;margin-bottom:8px}
.hp-kind label{position:relative;display:block;cursor:pointer}
.hp-kind input{position:absolute;opacity:0;pointer-events:none}
.hp-kind span{display:flex;flex-direction:column;border:2px solid var(--line);border-radius:14px;padding:10px 14px;background:#fff;transition:border-color .15s,box-shadow .15s}
.hp-kind small{color:var(--mut);font-size:12px}
.hp-kind input:checked+span{border-color:var(--gold);box-shadow:0 0 0 4px rgba(245,183,0,.18);background:#fffaea}
.hp-kind input:focus-visible+span{outline:3px solid #1f6feb;outline-offset:2px}
@media (min-width:560px){.hp-kind{grid-template-columns:repeat(3,1fr)}}
.hp-f{display:flex;flex-direction:column;gap:6px;font-weight:800}
.hp-f small{font-weight:500;color:var(--mut);font-size:12px}
.hp-f select,.hp-f textarea,.hp-f input{font:inherit;font-weight:400;border:1.5px solid var(--line);border-radius:12px;padding:11px 12px;background:#fff;min-height:46px;color:var(--ink)}
.hp-f textarea{resize:vertical;min-height:150px}
.hp-f :focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,183,0,.2)}
.hp-trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.hp-who{margin:0;font-size:13px;color:var(--mut)}
.hp-err{margin:0;color:var(--red);font-weight:700;min-height:1px}
.hp-go{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;min-height:52px;padding:0 22px;font:inherit;font-weight:900;font-size:16px;color:#2a1d00;background:linear-gradient(180deg,#ffd44d,var(--gold));box-shadow:0 4px 0 var(--gold-d);cursor:pointer;text-decoration:none}
.hp-go:active{transform:translateY(2px);box-shadow:0 2px 0 var(--gold-d)}
.hp-go[disabled]{opacity:.5;cursor:default}
.hp-ghost{border:1.5px solid var(--line);background:#fff;border-radius:14px;min-height:52px;padding:0 18px;font:inherit;font-weight:700;cursor:pointer}
.hp-note{margin:0;text-align:center;color:var(--mut);font-size:12px}
.hp-done{text-align:center;align-items:center}.hp-ok{font-size:54px}.hp-done h2{margin:0}.hp-done p{margin:0;color:var(--mut)}
.hp-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}
