/* Meridian — saturated indigo, electric cyan, fully rounded pills, geometric
   sans. */

#sp-login-gate-modal, #sp-ruo-stage1-overlay{--g-overlay:rgba(4,0,60,.66);--g-sheet:#FFFFFF;--g-ink:#33373D;--g-title:#090057;
  --g-muted:#4A4F57;--g-dim:#7B818C;--g-accent:#090057;--g-accent-dk:#040048;--g-cyan:#0E8FC4;
  --g-field-bg:#FFFFFF;--g-field-bd:#D8DCEA;--g-line:#E6E9F4;--g-panel:#090057;--g-panel-2:#040048;
  --g-tabbed:#F4F5FC;--g-ring:0 0 0 3px rgba(88,208,255,.5);--g-btn-fg:#FFFFFF;--g-panelbg:linear-gradient(168deg,var(--g-panel) 0%,var(--g-panel-2) 100%);--g-trust:#FFFFFF;--g-trust-mark:#58D0FF}
html[data-theme="dark"] #sp-login-gate-modal, html[data-theme="dark"] #sp-ruo-stage1-overlay{--g-overlay:rgba(1,0,22,.84);--g-sheet:#0B0A2A;--g-ink:#C4C8DC;--g-title:#F0F2FF;
  --g-muted:#C4C8DC;--g-dim:#868CAC;--g-accent:#58D0FF;--g-accent-dk:#7FDCFF;--g-cyan:#58D0FF;
  --g-field-bg:#13123A;--g-field-bd:#2A2960;--g-line:#1E1D4C;--g-panel:#050420;--g-panel-2:#02011A;
  --g-tabbed:#13123A;--g-ring:0 0 0 3px rgba(88,208,255,.34);--g-btn-fg:#040048;color-scheme:dark;--g-trust:#FFFFFF;--g-trust-mark:#58D0FF}
#sp-login-gate-modal{font-family:'Inter',system-ui,sans-serif;color:var(--g-ink);line-height:1.6}
#sp-login-gate-modal .sp-login-gate-container{border-radius:18px;box-shadow:0 36px 80px -36px rgba(4,0,72,.7)}
#sp-login-gate-modal .sp-login-gate-scrollable{padding:30px 26px}
#sp-login-gate-modal .sp-gate-mark{width:224px;padding:20px 22px;border-radius:18px;background:#FFFFFF}
#sp-login-gate-modal .sp-login-gate-header{align-items:flex-start}
#sp-login-gate-modal .sp-gate-kicker{display:none}
#sp-login-gate-modal .sp-login-gate-title{margin:0 0 9px;font-family:'Jost','Inter',sans-serif;font-size:32px;font-weight:600;letter-spacing:-.015em;line-height:1.1;color:var(--g-title);text-wrap:balance}
#sp-login-gate-modal .sp-login-gate-message{margin:0 0 22px;font-size:14.5px;line-height:1.6;color:var(--g-muted);max-width:44ch}
#sp-login-gate-modal .sp-login-gate-tabs{gap:6px;padding:5px;margin-bottom:22px;border-radius:999px;background:var(--g-tabbed)}
#sp-login-gate-modal .sp-login-gate-tab{padding:11px 14px;border-radius:999px;font-family:'Jost','Inter',sans-serif;font-size:15px;font-weight:500;color:var(--g-dim)}
#sp-login-gate-modal .sp-login-gate-tab.active{background:var(--g-accent);color:var(--g-btn-fg)}
#sp-login-gate-modal .sp-social-btn, #sp-login-gate-modal .sp-apple-signin-btn{min-height:var(--g-provider-h,46px);height:var(--g-provider-h,46px);border:1px solid var(--g-field-bd);border-radius:999px;background:var(--g-sheet);color:var(--g-title);font-size:14.5px;font-weight:500}
#sp-login-gate-modal .sp-social-btn:hover, #sp-login-gate-modal .sp-apple-signin-btn:hover{border-color:var(--g-cyan)}
#sp-login-gate-modal .sp-apple-relay-warn{margin:10px 0 0;font-size:12.5px;color:var(--g-dim)}
#sp-login-gate-modal .sp-social-separator{margin:20px 0;border-top:1px solid var(--g-line)}
#sp-login-gate-modal .sp-social-separator span{position:relative;top:-10px;background:var(--g-sheet);padding:0 12px;font-size:12.5px;color:var(--g-dim)}
#sp-login-gate-modal .sp-field{margin-bottom:14px}
#sp-login-gate-modal .sp-field > label{margin-bottom:6px;font-size:13px;font-weight:600;color:var(--g-title)}
#sp-login-gate-modal .sp-login-gate-form input, #sp-login-gate-modal .sp-login-gate-form select{height:48px;padding:0 16px;border:1px solid var(--g-field-bd);border-radius:999px;background:var(--g-field-bg);color:var(--g-title);font-size:15.5px}
#sp-login-gate-modal .sp-login-gate-form input:focus, #sp-login-gate-modal .sp-login-gate-form select:focus{outline:none;border-color:var(--g-cyan);box-shadow:var(--g-ring)}
#sp-login-gate-modal .sp-password-toggle{right:17px;color:var(--g-dim)}
#sp-login-gate-modal .sp-login-gate-checkbox-wrapper{gap:11px;margin-bottom:11px;padding:13px 16px;border:1px solid var(--g-line);border-radius:16px;background:var(--g-tabbed)}
#sp-login-gate-modal .sp-login-gate-checkbox-wrapper input{width:17px;height:17px;margin-top:2px;accent-color:var(--g-cyan)}
#sp-login-gate-modal .sp-login-gate-checkbox-wrapper label{font-size:13.5px;line-height:1.5}
#sp-login-gate-modal .sp-login-gate-button{margin-top:10px;height:54px;border-radius:999px;background:var(--g-accent);color:var(--g-btn-fg);font-family:'Jost','Inter',sans-serif;font-size:16px;font-weight:600;letter-spacing:.01em}
#sp-login-gate-modal .sp-login-gate-button:hover{background:var(--g-accent-dk)}
#sp-login-gate-modal .sp-login-gate-custom-message-bottom{margin:18px 0 0;font-size:12.5px;color:var(--g-dim)}
#sp-login-gate-modal .sp-login-gate-custom-message-bottom a{color:var(--g-cyan);font-weight:600}
@media (max-width:600px){#sp-login-gate-modal .sp-login-gate-scrollable{padding:26px 18px calc(18px + env(safe-area-inset-bottom,0px))}#sp-login-gate-modal .sp-login-gate-title{font-size:27px}}
@media (min-width:900px){#sp-login-gate-modal .sp-login-gate-scrollable{padding:0}#sp-login-gate-modal .sp-login-gate-scrollable{--g-pad-t:40px;--g-pad-x:44px}}
#sp-login-gate-modal .sp-gate-kicker{display:inline-flex;font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--g-cyan)}
#sp-login-gate-modal .sp-gate-brandpanel{position:relative;overflow:hidden}
#sp-login-gate-modal .sp-gate-brandpanel::before{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(88,208,255,.45);border-radius:50%;top:-54px;right:-62px}
#sp-login-gate-modal .sp-gate-brandpanel::after{content:"";position:absolute;width:132px;height:132px;border:1px solid rgba(88,208,255,.3);border-radius:50%;bottom:-40px;left:-34px}
#sp-login-gate-modal .sp-gate-attribution{color:var(--g-dim)}
@media (min-width:900px){
  #sp-login-gate-modal .sp-login-gate-title{color:#FFFFFF}
  #sp-login-gate-modal .sp-login-gate-message{color:rgba(255,255,255,.76)}
}

/* The plugin marks every Apple-button property !important so a theme cannot
   reshape it. A skin has to answer in kind or Apple keeps the stock 4px box. */
#sp-login-gate-modal .sp-apple-signin-btn{width:var(--g-provider-w,100%) !important;min-height:var(--g-provider-h,46px) !important;height:var(--g-provider-h,46px) !important;border:1px solid var(--g-field-bd) !important;border-radius:999px !important;background:var(--g-sheet) !important;color:var(--g-title) !important;font-size:14.5px !important;font-weight:500 !important}
#sp-login-gate-modal .sp-apple-signin-btn{line-height:normal !important;padding:0 14px !important}
