[hidden] { display: none !important; }
.auth-gate { position: fixed; z-index: 200; inset: 0; display: flex; align-items: center; justify-content: center; overflow-y: auto; padding: max(18px,env(safe-area-inset-top, 0px)) 18px max(18px,env(safe-area-inset-bottom, 0px)); background: #070707; color: #fafafa; font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.auth-card { width: 100%; max-width: 390px; margin: auto; display: flex; flex-direction: column; align-items: stretch; }
.auth-logo { margin: 0 auto 18px; height: 68px; width: 68px; border: 1px solid #292929; border-radius: 17px; display:grid; place-items: center; background:linear-gradient(135deg,#1b1b1b,#080808); box-shadow:0 4px 32px #0007; }
.auth-logo span { font-size: 41px; color: #e5e5e5; line-height: 1; }
.auth-kicker { text-align: center; color: #a1a1aa; font-size: 11px; font-weight: 650; letter-spacing: .26em; }
.auth-card h1 { margin: 11px 0 7px; font-size: 29px; font-weight: 660; letter-spacing: -.035em; text-align: center; }
.auth-subtitle { text-align: center; font-size: 14px; line-height: 1.55; color: #aaa; margin: 0 0 24px; }
.auth-tabs { display:flex; padding: 4px; gap: 4px; background:#151515; border: 1px solid #282828; border-radius: 12px; margin-bottom: 22px; }
.auth-tabs button { flex:1; border:0; padding:11px 8px; border-radius: 9px; font-size:14px; font-weight:600; background:transparent; color:#929292; cursor:pointer; }
.auth-tabs button.active { color:#fff; background:#333; box-shadow:0 1px 4px #0004; }
#authForm { display:flex; flex-direction:column; }
#authForm label { display:block; margin: 0 0 7px; font-size: 12px; font-weight: 590; color:#d4d4d8; }
#authForm input { box-sizing:border-box; width:100%; border:1px solid #333; color:#fff; background:#141414; border-radius:11px; min-height:48px; padding: 10px 14px; font-size:16px; outline:none; margin-bottom:18px; }
#authForm input:focus-visible { border-color:#e2e2e2; box-shadow:0 0 0 2px #ffffff18; }
#authForm input::placeholder { color:#696969; }
.auth-submit { background:#f5f5f5; color:#101010; min-height:49px; width:100%; border:0; border-radius:11px; font-weight:700; font-size:15px; margin-top: 3px; cursor:pointer; }
.auth-submit:disabled { opacity:.55; cursor:default; }
.auth-message { font-size:13px; line-height:1.5; text-align:center; min-height:20px; color:#bcbcbc; margin: 12px 0 3px; }
.auth-message.error { color:#ff9a9a; }
.auth-link { color:#bdbdbd; border:0; background:transparent; cursor:pointer; font-size:13px; margin:9px auto 0; padding:9px; }
.auth-link:hover { color:white; text-decoration:underline; }
.auth-footer { font-size:11px; color:#676767; text-align:center; margin-top: 31px; }
.auth-account { position:fixed; z-index:90; top:max(10px,env(safe-area-inset-top,0px)); right:max(10px,env(safe-area-inset-right,0px)); display:flex; gap:9px; flex-wrap:wrap; align-items:center; justify-content:flex-end; max-width: min(480px, 57vw); padding:7px 9px; border:1px solid #393939; border-radius:11px; background:rgba(12,12,12,.83); backdrop-filter:blur(16px); color:#ddd; font: 12px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; box-shadow:0 3px 12px #0008; }
#authAccountName { max-width:170px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.auth-practice { color:#999; }
#authSignOut { border:1px solid #444; background:#252525; border-radius:7px; padding:7px 8px; color:white; font-size:12px; cursor:pointer; }
@media (max-width:600px) { .auth-account { top:auto; right:max(9px,env(safe-area-inset-right,0px)); bottom:calc(max(80px,env(safe-area-inset-bottom,0px) + 65px)); max-width: 94vw; } .auth-practice{display:none;} #authAccountName{max-width:110px;} .auth-card h1{font-size:26px;} }