#account-overlay{position:fixed;inset:0;z-index:180;isolation:isolate;background:transparent;opacity:1;transition:opacity .18s ease}
#account-overlay[hidden]{display:none!important}
#account-overlay.closing{opacity:0;pointer-events:none}
.account-overlay-frame{display:block;border:0;width:100%;height:100%;background:transparent;color-scheme:light}
#account-overlay[data-ready=false] .account-overlay-frame{visibility:hidden}
.account-overlay-loading{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;background:#17212db3;backdrop-filter:blur(4px);color:#fff;font:16px/1.7 Pretendard,sans-serif;padding:24px;text-align:center}
.account-overlay-loading[hidden]{display:none}
.account-overlay-loading>span{width:28px;height:28px;border:2px solid #ffffff40;border-top-color:#fff;border-radius:50%;animation:account-loading .8s linear infinite}
.account-overlay-loading button{border:1px solid #ffffff70;border-radius:4px;background:#fff;color:#252a2e;min-height:44px;padding:8px 24px;cursor:pointer;font:inherit}
html.account-overlay-open #lumiAi,html.account-overlay-open #bgm-widget{visibility:hidden!important}
html.r2tour-active #account-overlay{top:var(--account-header-bottom,88px)}
@keyframes account-loading{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#account-overlay{transition:none}.account-overlay-loading>span{animation:none}}

#account-overlay[data-instant=true] .account-overlay-frame{display:none}
.account-login[hidden]{display:none!important}
.account-login{height:100%;overflow:auto;display:flex;align-items:center;justify-content:center;padding:32px;background:#17212db3;backdrop-filter:blur(4px);font-family:Pretendard,Arial,sans-serif;color:#202a30}
.account-login-card{width:min(1020px,100%);max-height:100%;overflow:auto;background:#fff;box-shadow:0 24px 90px #07121f40;border-radius:5px}
.account-login-head{display:flex;align-items:center;justify-content:space-between;padding:17px 26px;border-bottom:1px solid #e6e9eb}
.account-login-head h2{font-size:16px;font-weight:650;margin:0}
.account-login-head button{font:28px/1 Arial,sans-serif;border:0;background:transparent;color:#63717c;width:38px;height:38px;cursor:pointer}
.account-login-layout{display:grid;grid-template-columns:1fr 1fr}
.account-login-intro{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:54px 48px;background:#1e2932;color:white;overflow:hidden;min-height:460px}
.account-login-intro>span,.account-login-eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700}
.account-login-intro>span{color:#b8c7d3;margin-bottom:28px}
.account-login-intro h2{margin:0 0 22px;font-size:36px;line-height:1.4;letter-spacing:-.05em;font-weight:650}
.account-login-intro p{font-size:14px;line-height:1.9;color:#c5ced5;margin:0}
.account-login-intro strong{font-size:24px;letter-spacing:-.04em;margin-top:65px}
.account-login-intro i{font-style:normal;color:#df403b;margin-left:12px}
.account-login-fields{padding:40px 44px}
.account-login-eyebrow{color:#b33e36;margin:0 0 8px}
.account-login-fields h3{font-size:28px;font-weight:650;letter-spacing:-.04em;margin:0 0 12px}
.account-login-description,.account-login-note{font-size:12px;line-height:1.8;color:#697680;margin:0 0 24px}
.account-login-fields form{display:grid;gap:9px}
.account-login-fields label{font-size:13px;font-weight:600;margin-top:6px}
.account-login-fields input{width:100%;height:46px;border:1px solid #d9dfe4;border-radius:3px;padding:0 13px;font:14px Pretendard,Arial,sans-serif;background:#fff;color:#202a30;outline-offset:2px}
.account-login-fields input:focus{outline:2px solid #445c70;border-color:transparent}
.account-login-submit{width:100%;min-height:47px;margin-top:10px;background:#253643;color:#fff;border:0;border-radius:3px;font:600 14px Pretendard,Arial,sans-serif;cursor:pointer}
.account-login-submit:disabled{opacity:.65;cursor:wait}
.account-login-feedback{font-size:12px;line-height:1.6;color:#b23c31;margin:2px 0}
.account-login-feedback[hidden]{display:none}
.account-login-signup{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:21px 0;margin-top:12px;border-bottom:1px solid #e8ebed;font-size:12px;color:#687681}
.account-login-signup button{min-height:36px;padding:5px 13px;border:1px solid #ccd4da;border-radius:3px;background:white;font:600 12px Pretendard,Arial,sans-serif;color:#243642;cursor:pointer}
.account-login-note{font-size:11px;margin:17px 0 0}
html.r2tour-active .account-login{align-items:flex-start;padding-top:18px}
@media(max-width:720px){.account-login{padding:12px;align-items:center}.account-login-layout{grid-template-columns:1fr}.account-login-intro{display:none}.account-login-fields{padding:25px 24px}.account-login-head{padding:10px 17px}.account-login-fields h3{font-size:25px}.account-login-description{margin-bottom:15px}}

.account-login-head{position:sticky;top:0;z-index:1;background:#fff}
@media(max-width:720px){html.r2tour-active .account-login{height:calc(var(--account-guide-top,58dvh) - var(--account-header-bottom,70px) - 10px);padding:12px 12px 0}.account-login-card{scroll-padding-top:74px}}

/* Account forms keep the system pointer visible across iframe/top-layer changes. */
html:root.account-overlay-open,html:root.account-overlay-open *,html:root.account-overlay-open *::before,html:root.account-overlay-open *::after,html:root.account-overlay-open dialog::backdrop{cursor:auto!important}
html:root.account-overlay-open :is(a,button,summary,select,label,[role=button]),html:root.account-overlay-open :is(a,button,summary,select,label,[role=button]) *{cursor:pointer!important}
html:root.account-overlay-open :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,[contenteditable=true]){cursor:text!important}
html:root.account-overlay-open :disabled{cursor:not-allowed!important}
html:root.account-overlay-open #rainbow-cursor-layer{display:none!important}
