.rb_login_modal[hidden] {display:none !important;}
.rb_login_modal {position:fixed; inset:0; z-index:10000; display:flex; align-items:center; justify-content:center; width:100%; min-height:100%; padding:20px; overflow:hidden; box-sizing:border-box;}
.rb_login_modal_dim {position:fixed; inset:0; border:0; background:rgba(0,0,0,.35); cursor:pointer;}
.rb_login_modal_panel {position:relative; width:420px; max-width:100%; max-height:calc(var(--rb-login-modal-vh, 100vh) - 40px); overflow:auto; padding:34px 36px 30px; border:1px solid rgba(9,36,75,.08); border-radius:12px; background:#fff; box-shadow:0 24px 70px rgba(9,36,75,.18); box-sizing:border-box; overscroll-behavior:contain; -webkit-overflow-scrolling:touch;}
.rb_login_modal_logo {margin-bottom:24px; text-align:center;}
.rb_login_modal_logo img {height:120px; width:auto;}
.rb_login_modal #rbLoginModalTitle {position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); border:0;}
.rb_login_modal_error {margin:0 0 16px; padding:12px 14px; border:1px solid var(--rb-main-color); border-radius:8px; background:#fff; color:var(--rb-main-color); font-size:13px; line-height:1.45; box-sizing:border-box;}
.rb_login_modal_input {width:100%; height:42px; margin:0 0 16px; padding:0 16px; border:1px solid #e5e7eb; border-radius:8px; background:#f9fafb; color:#25282B; box-sizing:border-box;}
.rb_login_modal_input:focus {border-color:#25282B !important; background:#fff;}
.rb_login_modal_submit {width:100%; height:47px; margin-top:2px; border:0; border-radius:10px; background:var(--rb-main-color); color:#fff; font-size:16px; cursor:pointer;}
.rb_login_modal_submit:disabled {opacity:.65; cursor:default;}
.rb_login_modal_options {margin-top:20px; font-size:13px;}
.rb_login_modal_options:after {display:block; visibility:hidden; clear:both; content:"";}
.rb_login_modal_options .login_if_auto {float:left;}
.rb_login_modal_options .login_if_lpl {float:right; line-height:30px;}
.rb_login_modal_options a {color:#25282B;}
.rb_login_modal_social {margin-top:30px; text-align:center;}
.rb_login_modal_social > span {display:block; margin-bottom:14px; color:#999; font-size:14px;}
.rb_login_modal_social #sns_login {margin-top:0; border-top:0;}
.rb_login_modal_social #sns_login h3 {display:none;}
.rb_login_modal_social #sns_login .sns-wrap {text-align:center;}
.rb_login_modal_social #sns_login .sns-wrap a {display:inline-block; margin-bottom:0; border-bottom:0; border-radius:10px;}
.rb_login_modal_social #sns_login .sns-wrap span {display:none;}
.rb_login_modal_social #sns_login .sns-icon {width:40px;}
.rb_login_modal_join {margin-top:24px; padding-top:22px; border-top:1px solid #ddd; font-size:14px; text-align:center;}
.rb_login_modal_join a {border-bottom:1px solid #aaa;}
body.rb_login_modal_open {overflow:hidden;}
.rb_login_modal.rb_login_modal_keyboard {top:var(--rb-login-modal-top, 0px); bottom:auto; height:var(--rb-login-modal-vh); min-height:0; padding-top:12px; padding-bottom:12px;}
.rb_login_modal.rb_login_modal_keyboard .rb_login_modal_panel {max-height:calc(var(--rb-login-modal-vh, 100vh) - 24px);}
@media all and (max-width:480px) {
    .rb_login_modal {padding:14px;}
    .rb_login_modal_panel {max-height:calc(var(--rb-login-modal-vh, 100vh) - 28px); padding:30px 24px 26px;}
    .rb_login_modal.rb_login_modal_keyboard {padding:14px;}
    .rb_login_modal.rb_login_modal_keyboard .rb_login_modal_panel {max-height:calc(var(--rb-login-modal-vh, 100vh) - 28px);}
}
