[hidden] { display: none !important; }
.google-signin, .unlock-dialog .google-signin { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 12px 22px; border: 1px solid #747775; border-radius: 999px; background: #fff; color: #1f1f1f; font: 600 1rem/1.4 system-ui, sans-serif; cursor: pointer; text-decoration: none; }
.google-signin::before { content: ''; width: 20px; height: 20px; flex: none; background: url('/google.svg') center/contain no-repeat; }
.google-signin:disabled { opacity: .65; cursor: wait; }
.google-signin:focus-visible, .account-action:focus-visible, .account-circle:focus-visible, .account-menu button:focus-visible { outline: 3px solid #f4b35e; outline-offset: 4px; }
.account-header, .site-nav:has(.account-control) { display: flex; align-items: center; gap: 12px; }
.site-nav:has(.account-control) > :nth-child(2) { margin-left: auto; }
.account-control { position: relative; flex: 0 0 44px; margin-left: auto; font: .85rem/1.4 system-ui, sans-serif; z-index: 30; }
.site-nav:has(.account-control) > .account-control { margin-left: 0; }
.account-circle { box-sizing: border-box; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #ffffff30; border-radius: 50%; background: rgba(255,255,255,.06); color: #f7efe2; cursor: pointer; text-decoration: none; }
.account-circle:hover, .account-circle[aria-expanded="true"] { background: rgba(255,255,255,.13); border-color: #ffffff60; }
.account-menu { position: absolute; top: calc(100% + 8px); right: 0; min-width: 144px; padding: 6px; border: 1px solid #ffffff30; border-radius: 14px; background: #11162a; box-shadow: 0 12px 32px #0006; }
.account-menu button { display: block; width: 100%; min-height: 44px; border: 0; border-radius: 8px; padding: 10px 14px; color: #f7efe2; background: transparent; text-align: left; font: inherit; cursor: pointer; }
.account-menu button:hover { background: #ffffff12; }
@media (max-width: 600px) {
  .site-nav:has(.account-control) { gap: 10px; }
  .site-nav:has(.account-control) .switch-language { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; font-size: 0; }
  .site-nav:has(.account-control) .switch-language::before { content: '←'; font-size: 1.2rem; }
}
.account-action { border: 1px solid #ffffff30; background: #11162a; color: #f7efe2; padding: 10px 16px; border-radius: 999px; text-decoration: none; cursor: pointer; font: inherit; }
[data-auth-status] { color: #f3c9a8; font-size: .9rem; line-height: 1.5; }
[data-auth-status]:empty { display: none; }
.auth-note { color: #aaa2b6; font-size: .85rem; line-height: 1.6; }
.auth-note a { color: inherit; }
