*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(at 0% 0%,#fff1f4,transparent 48%),radial-gradient(at 100% 100%,#f3f0ff,transparent 48%),#f7f7fa;color:#1f2430;font-family:Arial,"Microsoft JhengHei",sans-serif;display:flex;align-items:flex-start;justify-content:center;padding:32px 18px}
a{text-decoration:none;color:inherit}
.auth-frame{width:100%;max-width:430px;background:transparent;padding:0;box-shadow:none}
.auth-box{position:relative;padding:38px 28px 30px;background:#fff;border:1px solid #ececf2;border-radius:22px;box-shadow:0 12px 32px rgba(31,36,48,.09);overflow:hidden}
.auth-box:before{content:none}
.auth-close{position:absolute;right:16px;top:12px;font-size:32px;font-weight:400;color:#8b8f9c;line-height:1}
h1{text-align:center;color:#1f2430;font-size:26px;font-weight:800;letter-spacing:2px;margin:5px 0 28px}
.line-auth{display:block;background:#43c65c;color:#fff;text-align:center;font-size:18px;font-weight:600;padding:12px;border-radius:14px}
.adult-note{text-align:center;color:#8b8f9c;font-size:13px;line-height:1.65;margin:20px 0 24px}
input:not([type=hidden]):not([type=radio]){width:100%;border:1px solid #ececf2;background:#fff;border-radius:14px;height:52px;padding:13px 15px;font:inherit;font-size:16px;margin:0 0 18px;color:#1f2430;outline:none;transition:border-color .18s ease,box-shadow .18s ease}
input::placeholder{color:#8b8f9c}
input:not([type=hidden]):not([type=radio]):focus{border-color:#ff91a7;box-shadow:0 0 0 4px rgba(255,95,126,.1)}
.auth-submit{display:block;margin:14px auto 24px;width:100%;min-height:50px;border:0;border-radius:14px;background:linear-gradient(135deg,#ff7190 0%,#ff5f7e 45%,#806cff 100%);color:#fff;font:inherit;font-size:18px;font-weight:700;padding:12px;cursor:pointer;box-shadow:0 12px 25px rgba(255,95,126,.25)}
.auth-submit:active{opacity:.9}
.auth-links{display:flex;justify-content:space-between;gap:12px;color:#e94769;font-size:14px;margin:26px 0 0}
.auth-links a,.forgot-password{text-decoration:underline;text-underline-offset:4px}
.forgot-password{border:0;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.gender-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:0;padding:0;margin:0}
.gender-options label{display:block;position:relative;cursor:pointer}
.gender-options input[type=radio]{position:absolute;width:1px;height:1px;opacity:0}
.gender-options span{display:block;text-align:center;border:1px solid #ececf2;color:#806cff;border-radius:14px;background:#fff;font-size:20px;font-weight:600;line-height:1.4;padding:12px 0}
.gender-options input:checked+span{color:#fff;background:linear-gradient(135deg,#ff7190 0%,#ff5f7e 45%,#806cff 100%);border-color:transparent}
.gender-options input:focus-visible+span{outline:3px solid #806cff;outline-offset:3px}
.visually-hidden{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
@media(max-width:360px){body{padding:20px 12px}.auth-box{padding:36px 22px 26px}}
