.login-wrap.reg-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2.5rem 1.5rem 3rem;background:radial-gradient(ellipse at 50% 25%,#1c1408 0%,var(--bg) 75%)}.reg-hero{width:100%;max-width:440px;box-sizing:border-box;margin:1rem 0 2rem;padding:2.4rem 1.6rem 2rem;text-align:center;position:relative;background:rgba(196,149,90,.05);border:.5px solid rgba(196,149,90,.4);border-radius:6px}.reg-hero-icon{position:absolute;top:-22px;left:50%;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;background:var(--bg, #0c0a07);border:.5px solid rgba(196,149,90,.6);color:var(--gold, #C4955A);font-size:calc(18px * var(--font-scale,1));display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 16px rgba(196,149,90,.25)}.reg-hero-sub{font-family:'Cormorant Garamond',serif;font-size:calc(13px * var(--font-scale,1));letter-spacing:.35em;color:var(--gold, #C4955A);text-transform:uppercase;margin:.4rem 0 .9rem}.reg-hero-title{font-family:'Cormorant Garamond',serif;font-size:calc(clamp(2rem, 7vw, 3rem) * var(--font-scale,1));font-weight:300;letter-spacing:.2em;color:var(--cream, #F2EDE4);margin:0 0 1.1rem;line-height:1.1}.reg-hero-desc{font-family:'Noto Serif JP',serif;font-size:calc(14px * var(--font-scale,1));line-height:1.95;color:var(--cream2, #C7BBA2);margin:0}.reg-hero-desc strong{color:var(--gold, #C4955A);font-weight:600}.reg-hero.reg-hero-invited{background:linear-gradient(180deg,rgba(196,149,90,.14) 0%,rgba(196,149,90,.03) 100%);border-color:var(--gold, #C4955A);box-shadow:0 0 24px rgba(196,149,90,.18)}.reg-hero.reg-hero-invited .reg-hero-icon{background:rgba(196,149,90,.15);border-color:var(--gold, #C4955A);color:#E8C88A;box-shadow:0 0 22px rgba(196,149,90,.4)}.reg-hero.reg-hero-success{background:rgba(109,191,140,.06);border-color:rgba(109,191,140,.5)}.reg-hero.reg-hero-success .reg-hero-icon{color:#82C8A0;border-color:rgba(109,191,140,.55)}.reg-hero.reg-hero-success .reg-hero-sub{color:#82C8A0}.reg-hero.reg-hero-warn{background:rgba(226,75,74,.05);border-color:rgba(226,75,74,.45)}.reg-hero.reg-hero-warn .reg-hero-icon{color:#E27272;border-color:rgba(226,75,74,.55)}.reg-hero.reg-hero-warn .reg-hero-sub{color:#E27272}.reg-oauth{width:100%;max-width:380px;margin:0 0 1.2rem}.reg-oauth-label{font-family:'Cormorant Garamond',serif;font-size:calc(12px * var(--font-scale,1));letter-spacing:.3em;color:var(--gold-dim, #8a7355);text-transform:uppercase;text-align:center;margin:0 0 .9rem}.reg-oauth-btn{display:flex;align-items:center;justify-content:center;gap:.7rem;width:100%;box-sizing:border-box;padding:13px 18px;margin-bottom:.6rem;background:var(--surface, #1a1610);border:.5px solid var(--border, rgba(196,149,90,.3));color:var(--cream, #F2EDE4);font-family:'Noto Sans JP',sans-serif;font-size:calc(15px * var(--font-scale,1));letter-spacing:.04em;text-decoration:none;border-radius:4px;transition:background .2s,border-color .2s,transform .15s}.reg-oauth-btn:hover{background:rgba(196,149,90,.1);border-color:var(--gold-dim, #C49A6B)}.reg-oauth-btn:active{transform:translateY(1px)}.reg-oauth-btn svg{width:20px;height:20px;flex-shrink:0}.reg-oauth-note{font-size:calc(12px * var(--font-scale,1));color:var(--muted, #8a8073);text-align:center;letter-spacing:.05em;margin:.6rem 0 0}.reg-divider{width:100%;max-width:380px;display:flex;align-items:center;margin:1.4rem auto 1.1rem;color:var(--muted, #8a8073);font-size:calc(12px * var(--font-scale,1));letter-spacing:.2em}.reg-divider::before,.reg-divider::after{content:'';flex:1;height:1px;background:rgba(196,149,90,.18)}.reg-divider span{padding:0 .9rem}.reg-email-section{width:100%;max-width:380px}.reg-email-label{font-family:'Cormorant Garamond',serif;font-size:calc(12px * var(--font-scale,1));letter-spacing:.3em;color:var(--gold-dim, #8a7355);text-transform:uppercase;text-align:center;margin:0 0 .9rem}.reg-form{width:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:10px}.reg-form label{font-family:'Noto Serif JP',serif;font-size:calc(14px * var(--font-scale,1));color:var(--muted);letter-spacing:.1em}.reg-form input{width:100%;box-sizing:border-box;padding:12px 14px;background:var(--surface, #1a1610);border:.5px solid var(--border, rgba(196,149,90,.3));color:var(--cream, #F2EDE4);font-family:'Noto Serif JP',serif;font-size:calc(15px * var(--font-scale,1));border-radius:3px;outline:none;transition:border-color .2s}.reg-form input:focus{border-color:var(--gold-dim, #C49A6B)}.reg-form input::placeholder{color:var(--muted, #8a8073)}.reg-form button{display:flex;align-items:center;justify-content:center;gap:.55em;padding:14px;margin-top:6px;background:rgba(196,149,90,.2);border:.5px solid var(--gold, #C4955A);color:var(--gold, #C4955A);font-family:'Cormorant Garamond',serif;font-size:calc(17px * var(--font-scale,1));letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border-radius:3px;transition:background .2s,box-shadow .2s,transform .15s}.reg-form button:hover{background:rgba(196,149,90,.32);box-shadow:0 0 18px rgba(196,149,90,.22)}.reg-form button:active{transform:translateY(1px)}.reg-form button i{font-size:calc(14px * var(--font-scale,1));opacity:.9}.hint{font-size:calc(12.5px * var(--font-scale,1));color:var(--muted, #8a8073);margin:-2px 0 0;letter-spacing:.02em}.reg-error{color:#E24B4A;font-size:calc(14px * var(--font-scale,1));text-align:center;margin:0 0 1rem;padding:.7rem 1rem;background:rgba(226,75,74,.06);border:.5px solid rgba(226,75,74,.4);border-radius:4px;max-width:380px}.reg-error-box{width:100%;max-width:440px;box-sizing:border-box;background:rgba(226,75,74,.06);border:.5px solid rgba(226,75,74,.45);border-radius:6px;padding:1.2rem 1.3rem;margin:0 auto 1.4rem;text-align:left;line-height:1.75}.reg-error-title{color:#E24B4A;font-family:'Cormorant Garamond',serif;font-size:calc(18px * var(--font-scale,1));letter-spacing:.08em;margin:0 0 .7rem;text-align:center}.reg-error-body{color:var(--cream2, #C7BBA2);font-size:calc(14.5px * var(--font-scale,1));margin:0 0 .9rem}.reg-error-body a{color:var(--gold, #C4955A);text-decoration:underline}.reg-error-warn{color:#E24B4A;font-size:calc(14px * var(--font-scale,1));margin:0 0 .9rem;padding:.6rem .8rem;background:rgba(226,75,74,.07);border-left:3px solid #E24B4A;border-radius:2px}.reg-error-warn strong{color:#ffb0af}.reg-error-actions{font-size:calc(13.5px * var(--font-scale,1));color:var(--muted, #8a8073);margin:0;text-align:center}.reg-error-actions a{color:var(--gold, #C4955A);text-decoration:underline}.reg-existing{width:100%;max-width:380px;margin-top:2.2rem;padding-top:1.2rem;border-top:.5px solid rgba(196,149,90,.15);text-align:center;font-size:calc(13px * var(--font-scale,1));color:var(--muted, #8a8073);letter-spacing:.05em;line-height:1.9}.reg-existing a{color:var(--gold, #C4955A);text-decoration:underline;margin-left:.4em;transition:color .15s}.reg-existing a:hover{color:var(--cream, #F2EDE4)}.back-link{display:inline-block;margin-top:1.5rem;font-size:calc(13px * var(--font-scale,1));color:var(--muted, #8a8073);letter-spacing:.05em;text-decoration:none;transition:color .2s}.back-link:hover{color:var(--gold, #C4955A)}.login-note{margin-top:2.5rem;font-size:calc(11.5px * var(--font-scale,1));color:var(--muted, #8a8073);text-align:center;line-height:2;max-width:340px;letter-spacing:.04em}.login-note a{color:var(--muted, #8a8073);text-decoration:underline}.login-note a:hover{color:var(--gold, #C4955A)}.reg-notice-btn{display:flex;align-items:center;gap:.85rem;width:100%;max-width:440px;box-sizing:border-box;margin:0 auto 1.4rem;padding:.85rem 1rem .85rem .9rem;background:rgba(226,160,107,.10);border:1px solid #E2A06B;border-radius:5px;color:var(--cream, #F2EDE4);font-family:'Noto Sans JP',sans-serif;cursor:pointer;text-align:left;transition:background .2s,border-color .2s,transform .15s;position:relative;animation:regNoticePulse 2.4s ease-in-out infinite}.reg-notice-btn:hover{background:rgba(226,160,107,.18);transform:translateY(-1px)}.reg-notice-btn.is-read{animation:none;background:rgba(196,149,90,.05);border-color:rgba(196,149,90,.35)}@keyframes regNoticePulse{0%,100%{box-shadow:0 0 0 0 rgba(226,160,107,.4)}50%{box-shadow:0 0 0 6px rgba(226,160,107,0)}}.reg-notice-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#E2A06B;color:#0c0a07;font-weight:700;font-size:calc(14px * var(--font-scale,1));flex-shrink:0}.reg-notice-btn.is-read .reg-notice-badge{background:#82C8A0;color:#0c0a07}.reg-notice-btn-text{flex:1;display:flex;flex-direction:column;gap:1px}.reg-notice-btn-title{font-size:calc(14px * var(--font-scale,1));letter-spacing:.05em;font-weight:600;color:var(--cream, #F2EDE4)}.reg-notice-btn-sub{font-size:calc(11.5px * var(--font-scale,1));color:var(--gold-dim, #C49A6B);letter-spacing:.04em}.reg-notice-btn-arrow{color:#E2A06B;font-size:calc(13px * var(--font-scale,1));flex-shrink:0}.reg-notice-btn.is-read .reg-notice-btn-arrow{color:var(--gold-dim, #C49A6B)}.reg-notice-overlay{position:fixed;inset:0;background:rgba(0,0,0,.78);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:12000;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;align-items:center;padding:calc(env(safe-area-inset-top, 0px) + 1.5rem) 1rem calc(env(safe-area-inset-bottom, 0px) + 1.5rem);opacity:0;transition:opacity .22s ease}.reg-notice-overlay[hidden]{display:none}.reg-notice-overlay.is-open{opacity:1}.reg-notice-card{width:100%;max-width:480px;margin:auto 0;display:flex;flex-direction:column;background:#1a1610;border:.5px solid var(--gold, #C4955A);border-radius:6px;box-shadow:0 24px 60px rgba(0,0,0,.65);transform:translateY(8px) scale(.98);transition:transform .22s ease}.reg-notice-overlay.is-open .reg-notice-card{transform:translateY(0) scale(1)}.reg-notice-head{display:flex;align-items:center;justify-content:space-between;padding:.95rem 1.2rem;border-bottom:.5px solid rgba(196,149,90,.22)}.reg-notice-head h2{margin:0;font-family:'Cormorant Garamond',serif;font-size:calc(17px * var(--font-scale,1));letter-spacing:.18em;font-weight:400;color:var(--gold, #C4955A)}.reg-notice-close{background:transparent;border:0;color:var(--muted, #8a8073);font-size:calc(18px * var(--font-scale,1));cursor:pointer;padding:4px 8px;transition:color .15s}.reg-notice-close:hover{color:var(--gold, #C4955A)}.reg-notice-content{flex:0 1 auto;padding:1.1rem 1.3rem .8rem;font-family:'Noto Sans JP',sans-serif;font-size:calc(13.5px * var(--font-scale,1));line-height:1.85;color:var(--cream2, #C7BBA2)}.reg-notice-content section{padding:.5rem 0;border-bottom:.5px dashed rgba(196,149,90,.15)}.reg-notice-content section:last-of-type{border-bottom:none}.reg-notice-content h3{margin:0 0 .35rem;display:flex;align-items:center;gap:.55em;font-family:'Noto Sans JP',sans-serif;font-size:calc(14px * var(--font-scale,1));font-weight:600;color:var(--cream, #F2EDE4);letter-spacing:.02em}.reg-notice-content h3 i{font-size:calc(13px * var(--font-scale,1));color:var(--gold, #C4955A)}.reg-notice-content p{margin:0;font-size:calc(13px * var(--font-scale,1));line-height:1.8;letter-spacing:.01em}.reg-notice-content strong{color:var(--gold, #C4955A);font-weight:600}.reg-notice-content a{color:#E2A06B;text-decoration:underline;text-underline-offset:2px}.reg-notice-content a:hover{color:#F0BC85}.reg-notice-warn h3 i{color:#E27272 !important}.reg-notice-warn p strong{color:#E27272}.reg-notice-contact{margin-top:0rem !important;padding-top:.8rem;border-top:.5px dashed rgba(196,149,90,.18);font-size:calc(12px * var(--font-scale,1)) !important;color:var(--muted, #8a8073) !important;text-align:center}.reg-notice-foot{flex:0 0 auto;padding:1rem 1.2rem 1.2rem;min-height:74px;border-top:.5px solid rgba(196,149,90,.22);text-align:center;background:#1a1610}.reg-notice-ok{display:inline-flex;align-items:center;gap:.55em;padding:10px 26px;background:rgba(196,149,90,.2);border:.5px solid var(--gold, #C4955A);color:var(--gold, #C4955A);font-family:'Cormorant Garamond',serif;font-size:calc(14px * var(--font-scale,1));letter-spacing:.2em;cursor:pointer;border-radius:4px;text-transform:uppercase;transition:background .2s,box-shadow .2s}.reg-notice-ok:hover{background:rgba(196,149,90,.32);box-shadow:0 0 18px rgba(196,149,90,.22)}.reg-notice-ok i{font-size:calc(12px * var(--font-scale,1))}@media (max-width:480px){.reg-hero{padding:2rem 1.1rem 1.6rem}.reg-hero-icon{width:38px;height:38px;font-size:calc(16px * var(--font-scale,1));top:-19px}.reg-notice-btn-title{font-size:calc(13px * var(--font-scale,1))}.reg-notice-btn-sub{font-size:calc(11px * var(--font-scale,1))}.reg-notice-foot{padding:.95rem 1rem 1.1rem;min-height:70px}.reg-notice-head{padding:.8rem 1rem}.reg-notice-head h2{font-size:calc(15px * var(--font-scale,1))}.reg-notice-content{padding:.9rem 1rem .7rem;font-size:calc(13px * var(--font-scale,1))}.reg-notice-content h3{font-size:calc(13.5px * var(--font-scale,1))}.reg-notice-content p{font-size:calc(12.5px * var(--font-scale,1))}}