/* Calm account selection; all surfaces inherit the active workspace theme. */
:root[data-theme] #shell.unified-shell .topbar .launch-signin{background:var(--b1x-control)!important;color:var(--b1x-text)!important;border:1px solid var(--b1x-border)!important;box-shadow:none;transform:none}
:root[data-theme] dialog.auth-dialog{box-sizing:border-box;width:min(420px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;padding:28px 24px 20px;margin:auto;border:1px solid var(--b1x-border);border-radius:18px;background:var(--b1x-solid);color:var(--b1x-text);text-align:left;box-shadow:0 12px 40px color-mix(in srgb,var(--b1x-text) 12%,transparent);font:400 13px/1.5 var(--b1x-font);color-scheme:inherit}
.auth-dialog::backdrop{background:color-mix(in srgb,var(--b1x-text) 24%,transparent);backdrop-filter:none}
.auth-dialog .auth-close{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:44px;height:44px;min-width:0;padding:12px;margin:0;border:0;border-radius:8px;background:transparent;color:var(--b1x-muted);cursor:pointer}
.auth-dialog .auth-close:hover{background:var(--b1x-selection);color:var(--b1x-text)}
.auth-dialog svg{width:18px;height:18px;flex:none}
.auth-dialog .auth-brand{display:block;width:72px;height:34px;object-fit:contain;margin:0 0 18px;padding:0;background:transparent;border-radius:0}
:root[data-theme] .auth-dialog h2{margin:0 0 8px;color:var(--b1x-text);font-size:21px;line-height:1.25;font-weight:550;letter-spacing:-.025em}
.auth-dialog .auth-description{margin:0 0 20px;color:var(--b1x-muted);font-size:13px;line-height:1.55;overflow-wrap:anywhere}
.auth-dialog .auth-context{margin:0 0 14px;padding:10px 12px;background:var(--b1x-control);border:1px solid var(--b1x-border);border-radius:8px;color:var(--b1x-text);font-size:12px}
.auth-dialog .auth-account-list{display:grid;gap:0;margin:0;text-align:left}
.auth-dialog .auth-list-heading{font:500 11px/1.4 var(--b1x-font);letter-spacing:.02em;color:var(--b1x-muted);padding:0 0 8px}
.auth-dialog .auth-account-row{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--b1x-border)}
.auth-dialog .auth-account-card{flex:1;min-width:0;min-height:62px;display:flex;align-items:center;gap:12px;padding:10px 4px;border:0;border-radius:6px;background:transparent;color:var(--b1x-text);text-align:left;cursor:pointer;box-shadow:none;transform:none;transition:background .15s ease}
.auth-dialog .auth-account-card:hover:not(:disabled),.auth-dialog .auth-account-row.is-active .auth-account-card{background:var(--b1x-selection);box-shadow:none;transform:none}
.auth-dialog .auth-account-avatar{position:relative;flex:0 0 32px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--b1x-control);border:1px solid var(--b1x-border);color:var(--b1x-accent);font:500 12px/1 var(--b1x-font)}
.auth-dialog .auth-account-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.auth-dialog .auth-account-meta{flex:1;min-width:0;display:grid;gap:2px}
.auth-dialog .auth-account-name{font-size:13px;font-weight:500;color:var(--b1x-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auth-dialog .auth-account-email{font-size:12px;color:var(--b1x-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auth-dialog .auth-account-badge{flex:none;padding:0 3px;border:0;background:transparent;color:var(--b1x-muted);font:500 11px/1.4 var(--b1x-font)}
.auth-dialog .auth-account-badge svg{display:block;width:16px;height:16px}
.auth-dialog .auth-account-badge.badge-active{color:var(--b1x-accent)}
.auth-dialog .auth-account-remove{flex:0 0 44px;width:44px;height:44px;min-width:0;padding:12px;border:0;border-radius:8px;background:transparent;color:var(--b1x-muted);cursor:pointer;display:grid;place-items:center}
.auth-dialog .auth-account-remove:hover{background:var(--b1x-selection);color:var(--b1x-text)}
.auth-dialog .auth-manage{display:block;min-height:44px;padding:8px 0;margin:0 0 8px;border:0;background:transparent;color:var(--b1x-muted);font:400 12px/1.4 var(--b1x-font);cursor:pointer;box-shadow:none}
.auth-dialog .auth-manage:hover{color:var(--b1x-text);text-decoration:underline}
.auth-dialog .auth-inline-picker{display:grid;gap:14px;margin:0 0 16px;padding:0;border:0;background:transparent;text-align:left}
.auth-dialog .auth-picker-header{display:flex;align-items:center;gap:10px}
.auth-dialog .auth-picker-g{width:20px;height:20px;object-fit:contain}
.auth-dialog .auth-picker-title-wrap{display:grid;gap:2px}
.auth-dialog .auth-picker-title-wrap strong{font-size:13px;font-weight:500;color:var(--b1x-text)}
.auth-dialog .auth-picker-title-wrap span{font-size:12px;color:var(--b1x-muted)}
.auth-dialog .auth-field{display:grid;gap:6px;font-size:12px;font-weight:500;color:var(--b1x-text)}
.auth-dialog .auth-input{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border-radius:8px;border:1px solid var(--b1x-border);background:var(--b1x-bg);color:var(--b1x-text);font:400 16px/1.4 var(--b1x-font)}
.auth-dialog .auth-input::placeholder{color:var(--b1x-muted);opacity:1}
.auth-dialog .auth-picker-submit{width:100%;min-height:44px;padding:10px 14px;border-radius:8px;border:1px solid var(--b1x-accent);background:var(--b1x-accent);color:var(--b1x-on-accent);font:500 13px/1.4 var(--b1x-font);cursor:pointer;box-shadow:none;transform:none}
.auth-dialog .auth-picker-submit:hover{background:var(--b1x-accent-hover)}
.auth-dialog .auth-verify-orb{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:4px 10px;margin:16px 0;padding:12px 0;border:0;background:transparent}
.auth-dialog .auth-verify-ring{grid-row:1/3;width:14px;height:14px;border-radius:50%;border:1.5px solid var(--b1x-border);border-top-color:var(--b1x-accent);animation:auth-spin 1.2s linear infinite}
@keyframes auth-spin{to{transform:rotate(360deg)}}
.auth-dialog .auth-verify-text{font-size:13px;font-weight:500;color:var(--b1x-text)}
.auth-dialog .auth-verify-detail{font-size:12px;color:var(--b1x-muted)}
:root[data-theme][data-palette] body dialog.auth-dialog .auth-google{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:44px;margin:8px 0 0;padding:10px 14px;border:1px solid var(--b1x-border);border-radius:8px;background:var(--b1x-control)!important;color:var(--b1x-text)!important;box-shadow:none;transform:none;font:500 13px/1.4 var(--b1x-font);cursor:pointer;text-decoration:none;transition:background .15s ease}
:root[data-theme][data-palette] body dialog.auth-dialog .auth-google:hover{background:var(--b1x-selection)!important;transform:none;box-shadow:none}
.auth-dialog .auth-google img{flex:0 0 20px;width:20px;height:20px;object-fit:contain}
.auth-dialog button:disabled{cursor:wait;opacity:.6}
.auth-dialog .auth-signout{width:100%;min-height:44px;margin-top:8px;border:0;border-radius:8px;background:transparent;color:var(--b1x-text);font:400 12px/1.4 var(--b1x-font);cursor:pointer}
.auth-dialog .auth-signout:hover{background:var(--b1x-selection)}
.auth-dialog .auth-notice{margin:12px 0 0;padding:10px 12px;border-radius:8px;border:1px solid var(--b1x-border);background:var(--b1x-control);color:var(--b1x-text);font-size:12px}
.auth-dialog .auth-footnote{margin:16px 0 0;color:var(--b1x-muted);font-size:11px;line-height:1.6}
.auth-dialog .auth-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 0;padding-top:12px;border-top:1px solid var(--b1x-border);color:var(--b1x-muted);font-size:11px}
.auth-dialog a{color:var(--b1x-muted);text-decoration:none}
.auth-dialog a:hover{text-decoration:underline}
.auth-dialog :is(button,a,input):focus-visible{outline:2px solid var(--b1x-focus);outline-offset:2px}
.auth-dialog [hidden]{display:none!important}
.account-profile-menu .account-profile-switch{width:100%;min-height:34px;margin-bottom:5px;padding:6px 12px;border-radius:6px;border:1px solid var(--b1x-border);background:var(--b1x-control);color:var(--b1x-text);font:500 12px/1.4 var(--font-ui,var(--b1x-font,system-ui))!important;cursor:pointer;text-align:center}
.account-profile-menu .account-profile-switch:hover{background:var(--b1x-selection)}
@media(max-width:480px){:root[data-theme] dialog.auth-dialog{padding:24px 18px 18px;border-radius:16px}.auth-dialog .auth-account-card{min-height:58px;gap:10px}}
@media(prefers-reduced-motion:reduce){.auth-dialog .auth-verify-ring{animation:none}.auth-dialog *{transition:none!important}}

/* Branded sign-in action: theme-aware control, unchanged Google artwork. */
:root[data-theme] #shell.unified-shell header.topbar button.launch-signin.google-signin:not(.account-avatar){display:inline-flex!important;align-items:center;justify-content:center;gap:9px;flex:0 0 auto;width:auto!important;min-width:0!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:0 14px!important;border:1px solid var(--b1x-border)!important;border-radius:8px!important;background:var(--b1x-control)!important;color:var(--b1x-text)!important;font:500 13px/1.4 var(--b1x-font)!important;white-space:nowrap;box-shadow:none!important;transform:none!important}
:root[data-theme] #shell.unified-shell header.topbar button.google-signin:hover{background:var(--b1x-selection)!important}
:root[data-theme] #shell.unified-shell header.topbar button.google-signin .signin-google-logo{display:block!important;flex:0 0 20px;width:20px!important;height:20px!important;object-fit:contain;filter:none!important;opacity:1!important;mix-blend-mode:normal;transform:none!important;border:0;padding:0;background:transparent;border-radius:0}
:root[data-theme] #shell.unified-shell header.topbar button.google-signin:focus-visible{outline:2px solid var(--b1x-focus);outline-offset:2px}
:root[data-theme] #shell.unified-shell header.topbar button.google-signin .signin-entry-icon{display:none!important;color:var(--b1x-text);filter:none;flex:0 0 18px;width:18px;height:18px}
@media(max-width:1100px){
 :root[data-theme] #shell.unified-shell header.topbar button.launch-signin.google-signin:not(.account-avatar){flex:0 0 64px;width:64px!important;min-width:64px!important;max-width:64px!important;padding:0 8px!important;gap:6px}
 :root[data-theme] #shell.unified-shell header.topbar button.google-signin .signin-google-label{display:none}
 :root[data-theme] #shell.unified-shell header.topbar button.google-signin .signin-entry-icon{display:block!important}
}

/* Guest drafts remain editable; individual protected actions request sign-in. */

.account-visible-balance {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  white-space: nowrap;
  font-size: 10px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  padding: 0 2px;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  color: var(--b1x-text);
}
.account-visible-balance .balance-dot {
  color: currentColor;
  font-size: 6px;
  background: transparent!important;
}
.account-visible-balance .balance-amount {
  font-weight: 500;
  color: inherit;
}
.account-visible-balance .balance-label {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
}
@media(max-width:600px) {
  .account-visible-balance { font-size:10px; padding:0 2px; }
  .account-visible-balance .balance-label { display: none; }
}

.signin-free-credit-pill {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.2), rgba(16, 185, 129, 0.2));
  border: 1px solid rgba(245, 158, 11, 0.4);
  color: #fbbf24;
  margin-right: 4px;
}
@media (max-width: 1100px) {
  .signin-free-credit-pill { display: none!important; }
}

.auth-free-credit-banner {
  box-sizing: border-box;
  margin: 0 0 16px;
  padding: 12px 14px;
  border-radius: 12px;
  background: linear-gradient(135deg, color-mix(in srgb, #f59e0b 14%, var(--b1x-control)), color-mix(in srgb, #10b981 14%, var(--b1x-control)));
  border: 1px solid color-mix(in srgb, #f59e0b 35%, transparent);
  display: grid;
  gap: 4px;
}
.auth-free-credit-badge {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #f59e0b;
}
.auth-free-credit-headline {
  font-size: 13px;
  font-weight: 650;
  color: var(--b1x-text);
}
.auth-free-credit-sub {
  margin: 0;
  font-size: 11px;
  line-height: 1.45;
  color: var(--b1x-muted);
}

.account-profile-credit-card {
  margin-top: 8px;
  padding: 9px 10px;
  border-radius: 8px;
  background: color-mix(in srgb, #10b981 10%, var(--b1x-control));
  border: 1px solid color-mix(in srgb, #10b981 30%, transparent);
  display: grid;
  gap: 3px;
  font-family: inherit !important;
}
.credit-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.credit-card-tag {
  font-size: 9.5px;
  font-weight: 700;
  color: #f59e0b;
  letter-spacing: 0.04em;
  font-family: inherit !important;
}
.credit-card-status {
  font-size: 8.5px;
  font-weight: 700;
  padding: 1px 4px;
  border-radius: 3px;
  background: #10b981;
  color: #fff;
  font-family: inherit !important;
}
.credit-card-amount {
  font-size: 15px;
  font-weight: 750;
  color: #34d399;
  font-variant-numeric: tabular-nums;
  font-family: inherit !important;
}
.credit-card-desc {
  font-size: 9.5px;
  color: var(--b1x-muted);
  line-height: 1.35;
  font-family: inherit !important;
}

/* Admin console link in profile popup menu */
.account-profile-menu .account-profile-admin{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;box-sizing:border-box;min-height:34px;margin-bottom:5px;padding:6px 12px;border-radius:6px;border:1px solid color-mix(in srgb,var(--b1x-accent,#64dcc0) 45%,transparent);background:color-mix(in srgb,var(--b1x-accent,#64dcc0) 14%,var(--b1x-control));color:var(--b1x-accent,#64dcc0);font:600 12px/1.4 var(--font-ui,var(--b1x-font,system-ui))!important;text-decoration:none;cursor:pointer;text-align:center;transition:all .16s ease}
.account-profile-menu .account-profile-admin:hover{background:color-mix(in srgb,var(--b1x-accent,#64dcc0) 24%,var(--b1x-control));border-color:var(--b1x-accent,#64dcc0)}

/* Admin console link in sidebar */
.sidebar .sidebar-admin-btn{display:flex;align-items:center;gap:8px;color:var(--b1x-accent,#64dcc0)!important;font-weight:600}
.sidebar .sidebar-admin-btn:hover{background:color-mix(in srgb,var(--b1x-accent,#64dcc0) 12%,var(--b1x-control))}
.sidebar .sidebar-admin-btn svg{color:var(--b1x-accent,#64dcc0)}

