/* Core auth glyphs and content-shaped loading. Existing actions and theme tokens. */
.web-header .web-auth-control,.web-drawer .web-auth-control,.web-avatar-panel .web-auth-control,#h5-login-entry,[data-opening-login],[data-opening-signin]>button{display:inline-flex;align-items:center;gap:8px;min-height:44px}
.web-auth-control svg,#h5-login-entry svg,[data-opening-login] svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.web-drawer>.web-auth-control,.web-personal-nav>.web-auth-control,.web-avatar-panel>.web-auth-control{display:flex;width:100%}
.core-loading-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.core-loading-shape{display:grid;gap:12px;width:100%;min-width:0}
.core-loading-shape[hidden]{display:none!important}
.core-loading-shape i{display:block;border-radius:8px;background:var(--bb-theme-inset,#2C2C2E);animation:core-loading-pulse 1.4s ease-in-out infinite}
.core-loading-shape .is-title{height:20px;width:40%}.core-loading-shape .is-line{height:14px;width:70%}.core-loading-shape .is-card{height:72px;width:100%}
.web-account-bar[data-state="loading"] .web-account-label{color:transparent!important;position:relative;min-width:96px}
.web-account-bar[data-state="loading"] .web-account-label::after{content:"";position:absolute;inset:2px 0;border-radius:4px;background:var(--bb-theme-inset,#2C2C2E);animation:core-loading-pulse 1.4s ease-in-out infinite}
@keyframes core-loading-pulse{50%{opacity:.55}}
@media(prefers-reduced-motion:reduce){.core-loading-shape i,.web-account-bar[data-state="loading"] .web-account-label::after{animation:none}}

/* Completed is filled; current is outlined; future/unknown remains muted. */
/* Opening step states are owned by ui-spec.css; never override the current fill. */
.opening-progress-summary{margin:0 0 24px;min-width:0}.opening-progress-summary[hidden]{display:none!important}
.opening-progress-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;color:var(--bb-theme-muted);font-size:14px}.opening-progress-caption strong{font-weight:500;color:var(--bb-theme-ink);font-variant-numeric:tabular-nums}
.opening-progress-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.opening-progress-bar i{height:8px;border-radius:999px;background:var(--bb-theme-inset)}
.opening-progress-bar [data-step-state=complete]{background:var(--bb-theme-accent)}
.opening-progress-bar [data-step-state=current]{background:var(--bb-theme-surface);box-shadow:inset 0 0 0 2px var(--bb-theme-accent)}

.web-header.arena-site-header .web-auth-control{min-height:44px!important}

.web-opening-progress-mini{display:inline-flex;gap:4px;min-width:80px;vertical-align:middle;margin-inline-start:8px}.web-opening-progress-mini i{display:block;flex:1;height:6px;min-width:12px;border-radius:999px;background:var(--bb-theme-inset,#2C2C2E)}.web-opening-progress-mini [data-step-state=complete]{background:var(--bb-theme-accent,#b8ff3d)}.web-opening-progress-mini [data-step-state=current]{background:var(--bb-theme-surface);box-shadow:inset 0 0 0 2px var(--bb-theme-accent,#b8ff3d)}
/* UI_SPEC 8: native authentication panel E. Scoped to existing login panels. */
html body :is(.bbp-login-modal,.workspace-login-modal,.public-login-modal){background:rgba(0,0,0,.48)!important;padding:24px!important;align-items:center!important;justify-content:center!important;overflow:auto;overscroll-behavior:contain}
html body :is(.bbp-login-modal,.workspace-login-modal)[hidden]{display:none!important}
html body [data-auth-panel-e]{position:relative!important;box-sizing:border-box!important;width:440px!important;max-width:100%!important;max-height:92dvh!important;overflow-y:auto!important;overscroll-behavior:contain;padding:32px!important;border:0!important;border-radius:28px!important;background:var(--bb-theme-surface,#fff)!important;color:var(--bb-theme-ink,#111)!important;text-align:left!important;box-shadow:0 20px 70px rgba(0,0,0,.2)!important;animation:auth-e-enter .25s ease-out}
html body [data-auth-panel-e] [hidden]{display:none!important}
html body [data-auth-panel-e]>h2{font-size:28px!important;font-weight:600!important;line-height:1.25!important;margin:0 32px 24px 0!important;color:inherit!important;letter-spacing:0!important}
html body [data-auth-panel-e]>button:first-child{position:absolute!important;inset:16px 16px auto auto!important;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--bb-theme-inset,#f5f5f5)!important;color:inherit!important;font-size:24px!important;display:grid!important;place-items:center!important}
html body [data-auth-panel-e] .auth-e-inviter{display:flex;gap:8px;align-items:center;height:40px;padding:0 12px;margin:0 0 16px;border-radius:12px;background:var(--bb-theme-inset,#f5f5f5);font-size:14px;overflow:hidden}
.auth-e-inviter-avatar{display:grid;place-items:center;width:24px;height:24px;flex:none;border-radius:50%;background:var(--bb-theme-line,#ddd);font-size:11px}
html body [data-auth-panel-e] .bb-email-auth{display:grid!important;gap:0!important;margin:0!important;text-align:left!important}
.auth-e-tabs{display:flex;gap:24px;height:40px;margin-bottom:16px;color:var(--bb-theme-muted,#666);font-size:16px;font-weight:500}
.auth-e-tabs span[aria-current]{height:40px;border-bottom:2px solid var(--bb-theme-ink,#111);color:var(--bb-theme-ink,#111);font-weight:600}
html body [data-auth-panel-e] :is(.bb-email-row,.bb-email-verify){display:block!important;position:relative}
html body [data-auth-panel-e] :is([data-email-request-form],[data-email-verify-form]){margin:0!important}
html body [data-auth-panel-e] .bb-email-row{height:48px;margin:0!important}
html body [data-auth-panel-e] input{box-sizing:border-box!important;height:48px!important;min-height:48px!important;width:100%!important;margin:0!important;border:0!important;border-radius:12px!important;background:var(--bb-theme-inset,#f5f5f5)!important;padding:0 14px!important;font-size:16px!important;font-weight:400!important;color:var(--bb-theme-ink,#111)!important;outline:0!important;box-shadow:none!important}
html body [data-auth-panel-e] input:focus{box-shadow:inset 0 0 0 1.5px var(--ui-primary,var(--bb-theme-ink,#111))!important}
html body [data-auth-panel-e] [data-email-code]{padding-right:132px!important}
html body [data-auth-panel-e] .auth-e-send{position:absolute!important;inset:0 12px 0 auto!important;box-sizing:border-box!important;height:48px!important;width:auto!important;max-width:126px;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--bb-theme-ink,#111)!important;font-size:14px!important;font-weight:600!important;white-space:nowrap!important}
html body [data-auth-panel-e] .auth-e-primary{position:static!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:48px!important;min-height:48px!important;margin:16px 0 0!important;padding:0 16px!important;border:0!important;border-radius:999px!important;background:var(--ui-primary,var(--bb-theme-ink,#111))!important;color:var(--ui-on-primary,var(--bb-theme-surface,#fff))!important;font-size:16px!important;font-weight:600!important;box-shadow:none!important}
html body [data-auth-panel-e] button:disabled{opacity:.4!important;cursor:default}
html body [data-auth-panel-e] .auth-e-field-error{min-height:18px;margin:2px 0 8px;font-size:12px;color:var(--bb-theme-down,#c73434);line-height:18px}
html body [data-auth-panel-e] :is(.bb-email-destination,.bb-email-tools,[data-email-status]){display:none!important}
html body [data-auth-panel-e] [data-email-change]{position:static!important;display:inline!important;width:auto!important;height:auto!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;color:var(--bb-theme-muted,#666)!important;font-size:12px!important}
html body [data-auth-panel-e] .auth-e-change{min-height:18px;text-align:right;margin-top:4px}
.auth-e-dots{display:flex;gap:5px;align-items:center;justify-content:center}
.auth-e-dots i{width:5px;height:5px;border-radius:50%;background:currentColor;animation:auth-e-dot .75s ease-in-out infinite alternate}
.auth-e-dots i:nth-child(2){animation-delay:.15s}.auth-e-dots i:nth-child(3){animation-delay:.3s}
html body [data-auth-panel-e] .auth-e-divider{display:flex;gap:12px;align-items:center;margin:20px 0;color:var(--bb-theme-muted,#666);font-size:12px}
.auth-e-divider::before,.auth-e-divider::after{content:'';height:1px;flex:1;background:var(--bb-theme-line,#ddd)}
html body [data-auth-panel-e] .auth-e-providers{display:grid;gap:12px}
html body [data-auth-panel-e] .auth-e-provider{box-sizing:border-box;display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%;height:48px!important;min-height:48px!important;margin:0!important;padding:0 16px!important;border:1px solid var(--bb-theme-line,#ddd)!important;border-radius:999px!important;background:var(--bb-theme-surface,#fff)!important;color:var(--bb-theme-ink,#111)!important;text-decoration:none!important;font-size:16px!important;font-weight:500!important;cursor:pointer}
.auth-e-provider img,.auth-e-provider svg{width:20px;height:20px;flex:none;object-fit:contain}
html body [data-auth-panel-e] .auth-e-provider-error{min-height:18px;margin:4px 0 0;color:var(--bb-theme-down,#c73434);font-size:12px;line-height:18px}
html body [data-auth-panel-e].auth-e-closing{animation:auth-e-exit .25s ease-in forwards}
@keyframes auth-e-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes auth-e-exit{to{opacity:0;transform:translateY(24px)}}
@keyframes auth-e-dot{to{opacity:.3;transform:translateY(-2px)}}
@media(max-width:540px){html body :is(.bbp-login-modal,.workspace-login-modal,.public-login-modal){padding:0!important;align-items:flex-end!important}html body [data-auth-panel-e]{width:100%!important;max-width:100%!important;max-height:92dvh!important;padding:20px!important;padding-bottom:max(20px,env(safe-area-inset-bottom))!important;border-radius:28px 28px 0 0!important}html body [data-auth-panel-e]>button:first-child{inset:10px 10px auto auto!important}}
@media(prefers-reduced-motion:reduce){html body [data-auth-panel-e],html body [data-auth-panel-e].auth-e-closing,.auth-e-dots i{animation:none!important;transition:none!important}}
/* Native templates position their close button via broad button rules. Reset rows. */
html body [data-auth-panel-e]{outline:0!important}
html body [data-auth-panel-e] .auth-e-providers{width:100%!important;min-width:0!important;box-sizing:border-box!important}
html body [data-auth-panel-e] .auth-e-providers>form{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
html body [data-auth-panel-e] .auth-e-provider{position:static!important;inset:auto!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;line-height:1.25!important;flex:none!important;transform:none!important}
html body [data-auth-panel-e] .auth-e-change{position:static!important;inset:auto!important}
html body [data-auth-panel-e] .auth-e-provider:focus-visible{outline:2px solid var(--bb-theme-ink,#111)!important;outline-offset:2px}

html body [data-auth-panel-e].auth-e-closing{pointer-events:none!important}
html body [data-auth-panel-e] details[data-native-provider=telegram]>summary{display:none!important}
/* Overlay owns no scrolling gutter; only the bounded card scrolls on small screens. */
html body :is(.bbp-login-modal,.workspace-login-modal,.public-login-modal){inset:0!important;width:100vw!important;box-sizing:border-box!important;scrollbar-gutter:auto!important;overflow:hidden!important}
html body [data-auth-panel-e]{scrollbar-gutter:auto!important}
@media(max-width:540px){html body [data-auth-panel-e]{width:100vw!important;max-width:100vw!important;margin:0!important;justify-self:stretch!important;align-self:end!important}}

/* code-input-autosubmit-v1 (owner 2026-10-17, UI_STANDARD 六): six code boxes in the sign-in window. The boxes, colours and
   motion live in bigbit-code-boxes.js; here only the window's layout: the boxes appear once a code was sent, the resend
   countdown sits inside the e-mail / phone field, 「继续」 (send) folds away. */
html body [data-auth-panel-e] [data-email-verify-form] .bb-email-row{height:auto!important}
html body [data-auth-panel-e] .bb-otp{width:100%;margin-top:12px}
html body [data-auth-panel-e] .bb-otp.is-disabled{display:none!important}
html body [data-auth-panel-e] [data-email-request-form] .bb-email-row [data-email-input]{padding-right:112px!important}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .auth-e-phone-row{position:relative}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .auth-e-phone-row [data-phone-number]{padding-right:132px}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .auth-e-phone-row [data-phone-send]{position:absolute!important;top:0!important;right:12px!important;height:48px!important;min-width:0!important;width:auto!important;padding:0 2px!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--bb-theme-ink,#111)!important;font-size:14px!important;font-weight:600}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .auth-e-phone-row [data-phone-send]:disabled{opacity:1;color:var(--bb-theme-muted,#666)!important}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .bb-phone-code-row{grid-template-columns:minmax(0,1fr)}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .bb-otp{margin-top:2px}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth .bb-otp.is-disabled{display:none!important}
html body [data-login-modal] .bb-phone-auth.bb-phone-auth button[hidden]{display:none!important}
html body [data-auth-panel-e] .auth-e-primary[hidden],html body [data-auth-panel-e] .auth-e-send[hidden]{display:none!important}
