/* Brightstone application primitives. Values come from the existing Classic dashboard. */
:root {
  --bs-blue:#2563eb; --bs-blue-deep:#1d4ed8; --bs-navy-a:#0b2a6b; --bs-navy-b:#123a8a;
  --bs-action-primary-bg:#2563eb; --bs-action-primary-hover:#1d4ed8; --bs-action-primary-active:#1e40af; --bs-action-primary-text:#fff;
  --bs-canvas:#f4f7fc; --bs-surface:#fff; --bs-surface-subtle:#f8faff;
  --bs-text:#0d1b33; --bs-muted:#6b7a94; --bs-border:#e6ecf6; --bs-hover:#eff5ff;
  --bs-success:#16a34a; --bs-warning:#b86b08; --bs-danger:#c5281c;
  --bs-shadow:0 1px 2px rgba(13,27,51,.04),0 6px 20px rgba(13,27,51,.05);
  --bs-shadow-popover:0 10px 34px rgba(13,27,51,.16);
  --bs-radius-sm:8px; --bs-radius-control:11px; --bs-radius-card:14px; --bs-radius-header:16px;
  --bs-space-1:4px; --bs-space-2:8px; --bs-space-3:12px; --bs-space-4:16px;
  --bs-space-5:20px; --bs-space-6:24px; --bs-space-8:32px;
  --bs-control-height:40px; --bs-control-sm:32px; --bs-frame:1360px;
  --bs-page-narrow:860px; --bs-page-standard:1100px; --bs-page-wide:1280px;
  --bs-motion-fast:150ms; --bs-motion-normal:220ms;
  --bs-layer-header:30; --bs-layer-menu:40; --bs-layer-dialog:60; --bs-layer-toast:70;
}
[hidden] { display:none!important; }
:root[data-theme="dark"] {
  --bs-blue:#6399ff; --bs-blue-deep:#83adff;
  --bs-action-primary-bg:#2c63cd; --bs-action-primary-hover:#336bd1; --bs-action-primary-active:#3970d1; --bs-action-primary-text:#fff;
  --bs-canvas:#09111f; --bs-surface:#101c2e; --bs-surface-subtle:#142237;
  --bs-text:#edf3fc; --bs-muted:#9aabc2; --bs-border:#22344c; --bs-hover:#192b47;
  --bs-success:#4bd184; --bs-warning:#f5bd54; --bs-danger:#ff7b77;
  --bs-shadow:0 1px 2px rgba(0,0,0,.16),0 8px 24px rgba(0,0,0,.18);
  --bs-shadow-popover:0 18px 48px rgba(0,0,0,.32);
}
@media(prefers-color-scheme:dark) {
  :root[data-theme="system"] {
    --bs-blue:#6399ff; --bs-blue-deep:#83adff;
    --bs-action-primary-bg:#2c63cd; --bs-action-primary-hover:#336bd1; --bs-action-primary-active:#3970d1; --bs-action-primary-text:#fff;
    --bs-canvas:#09111f; --bs-surface:#101c2e; --bs-surface-subtle:#142237;
    --bs-text:#edf3fc; --bs-muted:#9aabc2; --bs-border:#22344c; --bs-hover:#192b47;
    --bs-success:#4bd184; --bs-warning:#f5bd54; --bs-danger:#ff7b77;
  }
}

.bsr-customer-body {
  --bg:var(--bs-canvas); --surface:var(--bs-surface); --surface-2:var(--bs-surface-subtle);
  --text:var(--bs-text); --muted:var(--bs-muted); --line:var(--bs-border);
  --blue:var(--bs-blue); --blue-dark:var(--bs-blue-deep); --radius:var(--bs-radius-card);
  padding-top:0; background:var(--bs-canvas); color:var(--bs-text);
}
.bsr-customer-body .bsr-app { width:100%; max-width:var(--bs-frame); min-width:0; margin:0 auto; padding:14px clamp(14px,2vw,36px) 40px; overflow:visible; }
.bsr-customer-body .bs-app-content { width:100%; margin:0 auto; padding:26px 0 72px; }
.bsr-customer-body .bs-app-content.bs-page-width-narrow { max-width:var(--bs-page-narrow); }
.bsr-customer-body .bs-app-content.bs-page-width-standard { max-width:var(--bs-page-standard); }
.bsr-customer-body .bs-app-content.bs-page-width-wide { max-width:var(--bs-page-wide); }
.bsr-customer-body .bs-app-content>* { min-width:0; }
.bs-customer-breadcrumb { display:flex; align-items:center; gap:8px; min-height:20px; margin:0 0 18px; color:var(--bs-muted); font-size:11.5px; font-weight:650; line-height:1.3; white-space:nowrap; }
.bs-customer-breadcrumb a { color:var(--bs-muted); text-decoration:none; }
.bs-customer-breadcrumb a:hover,.bs-customer-breadcrumb a:focus-visible { color:var(--bs-blue); text-decoration:underline; text-underline-offset:3px; }
.bs-customer-breadcrumb .bs-icon { flex:none; color:var(--bs-muted); opacity:.7; }
.bs-customer-breadcrumb [aria-current="page"] { min-width:0; overflow:hidden; color:var(--bs-text); text-overflow:ellipsis; }
.bs-back-link { display:inline-flex; align-items:center; min-height:28px; margin-bottom:var(--bs-space-2); color:var(--bs-muted); font-size:11px; font-weight:650; text-decoration:none; }
.bs-back-link:hover { color:var(--bs-blue); }
.bsr-customer-body .control-hero h2 { margin:0; font-size:19px; letter-spacing:-.025em; }
.bs-stack { display:grid; gap:var(--bs-space-5); }
.bs-stack.is-tight { gap:var(--bs-space-3); }
.bs-inline { display:flex; align-items:center; gap:var(--bs-space-2); flex-wrap:wrap; }
.bs-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--bs-space-4); }
.bs-grid.is-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.bsr-customer-body .page-head,.bsr-customer-body .page-heading { margin-bottom:20px; padding:0; }
.bsr-customer-body .page-head h1,.bsr-customer-body .page-heading h1 { font-size:clamp(25px,2.2vw,31px); letter-spacing:-.035em; }
.bsr-customer-body .page-head p,.bsr-customer-body .page-heading p:not(.eyebrow) { font-size:13px; }
.bsr-customer-body .page-head .eyebrow,.bsr-customer-body .page-heading .eyebrow { display:none; }
.bsr-customer-body .settings-page-stack,.bsr-customer-body .account-settings-stack,.bsr-customer-body .site-client-stack { gap:var(--bs-space-5); }
.bsr-customer-body .settings-section,.bsr-customer-body .card,.bsr-customer-body .control-card { border-color:var(--bs-border); border-radius:var(--bs-radius-card); box-shadow:var(--bs-shadow); }
.bsr-customer-body .settings-section { padding:var(--bs-space-5) var(--bs-space-6); }
.bsr-customer-body .section-kicker { display:none; }

/* Classic's header is the one application shell on both dashboard and customer pages. */
.bs-app-header { position:relative; z-index:var(--bs-layer-header); display:flex; align-items:center; gap:14px; min-height:66px; padding:13px 18px; border-radius:var(--bs-radius-header); color:#fff; background:linear-gradient(100deg,var(--bs-navy-a),var(--bs-navy-b)); box-shadow:0 10px 34px rgba(13,27,51,.10); }
.bs-app-brand { display:flex; align-items:center; gap:12px; flex:0 1 auto; min-width:0; color:#fff; text-decoration:none; font-size:18px; font-weight:700; letter-spacing:-.01em; }
.bs-app-brand:hover { color:#fff; }
.bs-app-brand strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:700; }
.bs-app-brand .bsr-logo { width:40px; height:40px; flex:0 0 40px; border-radius:11px; object-fit:contain; background:#fff; }
.bs-app-header .bsr-header-actions { display:flex; align-items:center; gap:9px; margin-left:auto; flex:0 0 auto; }
.bs-app-header .bsr-hbtn { display:flex; align-items:center; justify-content:center; gap:8px; height:var(--bs-control-height); padding:0 14px; border:1px solid rgba(255,255,255,.28); border-radius:var(--bs-radius-control); background:rgba(255,255,255,.06); color:#fff; font-size:13px; font-weight:650; text-decoration:none; cursor:pointer; white-space:nowrap; }
.bs-app-header .bsr-hbtn:hover,.bs-app-header .bsr-hbtn:focus-visible { color:#fff; background:rgba(255,255,255,.18); }
.bs-app-header .bsr-hbtn.is-icon { width:var(--bs-control-height); padding:0; }
.bs-app-header .bsr-hbtn .bs-icon { flex:0 0 auto; }
.bs-app-header .bsr-theme .bsr-ico-light,.bs-app-header .bsr-theme .bsr-ico-dark,.bs-app-header .bsr-theme .bsr-ico-auto { display:none; }
:root[data-theme="light"] .bs-app-header .bsr-theme .bsr-ico-light,:root[data-theme="dark"] .bs-app-header .bsr-theme .bsr-ico-dark { display:block; }
:root[data-theme-preference="system"] .bs-app-header .bsr-theme .bsr-ico-auto,:root:not([data-theme-preference])[data-theme="system"] .bs-app-header .bsr-theme .bsr-ico-auto{display:block}
:root[data-theme-preference="system"] .bs-app-header .bsr-theme :is(.bsr-ico-light,.bsr-ico-dark){display:none}
.bs-app-header .bsr-account { position:relative; flex:0 0 auto; }
.bs-app-header .bsr-account>summary { display:flex; align-items:center; gap:8px; min-height:var(--bs-control-height); padding:3px 10px 3px 4px; border:1px solid rgba(255,255,255,.28); border-radius:var(--bs-radius-control); background:rgba(255,255,255,.06); color:#fff; list-style:none; cursor:pointer; }
.bs-app-header .bsr-account>summary::-webkit-details-marker { display:none; }
.bs-app-header .bsr-account>summary:hover,.bs-app-header .bsr-account[open]>summary { background:rgba(255,255,255,.18); }
.bs-app-header .bsr-account-name { max-width:120px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:650; }
.bs-app-header .user-avatar,.bs-app-header .bsr-avatar { display:grid; place-items:center; width:32px; height:32px; flex:0 0 32px; border-radius:50%; background:#2464d6; color:#fff; font-size:12px; font-weight:800; }
.bs-app-header .user-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.bs-icon { display:inline-block; vertical-align:middle; }
.bs-avatar { display:grid; place-items:center; width:32px; height:32px; flex:0 0 32px; border-radius:50%; background:var(--bs-hover); color:var(--bs-blue); font-size:12px; font-weight:800; }
.user-avatar { position:relative; isolation:isolate; display:grid; place-items:center; overflow:hidden; border-radius:50%; }
.user-avatar-initial { display:grid; place-items:center; width:100%; height:100%; line-height:1; }
.user-avatar-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:transparent; }
.bs-header-quick-nav { display:flex; align-items:center; gap:2px; margin-left:auto; }
.bs-header-quick-nav a { display:flex; align-items:center; height:36px; padding:0 10px; border-radius:9px; color:#cbdcf9; text-decoration:none; font-size:12px; font-weight:650; white-space:nowrap; }
.bs-header-quick-nav a:hover,.bs-header-quick-nav a.is-active { background:rgba(255,255,255,.14); color:#fff; }
.bs-header-menu { position:relative; order:0; }
.bs-header-menu>summary { list-style:none; }
.bs-header-menu>summary::-webkit-details-marker { display:none; }
.bs-header-menu-popover { position:absolute; z-index:var(--bs-layer-menu); top:calc(100% + 8px); left:0; width:min(265px,calc(100vw - 28px)); max-height:calc(100dvh - 85px); overflow:auto; padding:8px; border:1px solid var(--bs-border); border-radius:var(--bs-radius-card); background:var(--bs-surface); color:var(--bs-text); box-shadow:var(--bs-shadow-popover); }
.bs-header-menu-heading { display:flex; flex-direction:column; gap:2px; padding:9px 11px 11px; border-bottom:1px solid var(--bs-border); }
.bs-header-menu-heading strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.bs-header-menu-heading small { color:var(--bs-muted); font-size:10px; }
.bs-header-menu-popover nav { display:grid; gap:2px; padding-top:6px; }
.bs-header-menu-popover nav a { display:flex; align-items:center; gap:11px; min-height:38px; padding:7px 10px; border-radius:var(--bs-radius-sm); color:var(--bs-text); font-size:12px; font-weight:600; text-decoration:none; }
.bs-header-menu-popover nav a:hover { background:var(--bs-hover); }
.bs-header-menu-popover nav a.is-active { background:var(--bs-hover); color:var(--bs-blue); font-weight:750; }
.bs-header-menu-footer { display:grid; gap:3px; margin-top:7px; padding:8px 4px 2px; border-top:1px solid var(--bs-border); }
.bs-header-menu-footer>button,.bs-header-menu-footer>.bs-header-trial { display:flex; align-items:center; gap:8px; min-height:31px; padding:6px; border:0; border-radius:7px; background:transparent; color:var(--bs-muted); text-align:left; text-decoration:none; font-size:11px; cursor:pointer; }
.bs-header-menu-footer>button:hover,.bs-header-menu-footer>.bs-header-trial:hover { background:var(--bs-hover); color:var(--bs-blue); }
.bs-header-menu-footer>span { display:flex; gap:14px; padding:4px 6px 2px; }
.bs-header-menu-footer>span a { color:var(--bs-muted); font-size:10px; text-decoration:none; }
.bs-header-menu-footer>span a:hover { color:var(--bs-blue); }
.bs-header-menu-sync{display:flex;align-items:center;gap:7px;min-height:32px;padding:5px 7px;color:var(--bs-muted);font-size:11px}.bs-header-menu-sync .bs-classic-sync-indicator{flex:none;width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.13)}.bs-header-menu-sync strong{font-size:11px;font-weight:700}.bs-header-menu-sync small{margin-left:auto;font-size:10px}.bs-header-menu-footer>.bs-header-menu-support{display:flex;align-items:center;gap:8px;min-height:35px;padding:6px 7px;border-radius:7px;color:var(--bs-text);font-size:11px;font-weight:700;text-decoration:none}.bs-header-menu-footer>.bs-header-menu-support:hover{background:var(--bs-hover);color:var(--bs-blue)}
.bs-app-header .bs-account-popover { position:absolute; z-index:var(--bs-layer-menu); top:calc(100% + 8px); right:0; left:auto; width:min(315px,calc(100vw - 28px)); max-height:min(78vh,680px); overflow:auto; padding:9px; border:1px solid var(--bs-border); border-radius:16px; background:var(--bs-surface); color:var(--bs-text); box-shadow:var(--bs-shadow-popover); }
.bs-app-header .bsr-account-head { display:flex; align-items:center; justify-content:flex-start; gap:11px; padding:12px; border:1px solid var(--bs-border); border-radius:12px; background:var(--bs-surface-subtle); }
.bs-app-header .bsr-account-head .user-avatar,.bs-app-header .bsr-account-head .bsr-avatar{flex:0 0 38px;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--bs-blue) 24%,transparent);background:linear-gradient(145deg,#58a0ff,#205fce);box-shadow:0 3px 9px rgba(20,74,163,.2);color:#fff;font-size:15px;font-weight:600}
.bs-app-header .bs-account-head-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-width:0}
.bs-app-header .bsr-account-user { max-width:215px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--bs-text); font-size:13px; font-weight:700; }
.bs-app-header .bsr-account-role { display:inline-flex;align-items:center;min-height:20px;padding:2px 8px; border-radius:999px; background:var(--bs-hover); color:var(--bs-blue); font-size:10px;line-height:1.2;font-weight:700; text-transform:capitalize; }
.bs-app-header .bsr-account-workspaces { display:grid; gap:4px; max-height:205px; overflow:auto; padding:12px 2px; border-bottom:1px solid var(--bs-border); }
.bs-app-header .bsr-account-workspaces>strong { padding:0 9px 4px; color:var(--bs-muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.bs-app-header .bsr-account-workspaces form{margin:0}
.bs-app-header .bsr-account-workspaces>span,.bs-app-header .bsr-account-workspaces>form>button { display:flex; align-items:center; gap:10px; width:100%; min-height:51px; padding:7px 9px; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--bs-text); text-align:left; font:inherit; cursor:pointer; }
.bs-app-header .bsr-account-workspaces img{display:block;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--bs-border);border-radius:9px;background:#fff;object-fit:contain}
.bs-app-header .bs-account-workspace-copy{display:grid;gap:2px;flex:1;min-width:0}
.bs-app-header .bs-account-workspace-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}
.bs-app-header .bs-account-workspace-copy small{color:var(--bs-muted);font-size:10px}
.bs-app-header .bs-account-workspace-current{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:var(--bs-surface);color:var(--bs-blue);font-size:9px;font-weight:750}
.bs-app-header .bsr-account-workspaces .is-current { border-color:color-mix(in srgb,var(--bs-blue) 22%,var(--bs-border));background:var(--bs-hover);color:var(--bs-text); }
.bs-app-header .bsr-account-workspaces button:hover { background:var(--bs-hover); }
.bs-app-header .bsr-account-workspaces .bs-account-create-workspace{display:flex;align-items:center;gap:8px;min-height:38px;margin:2px 7px 0;padding:7px 9px;border:1px dashed color-mix(in srgb,var(--bs-blue) 35%,var(--bs-border));border-radius:9px;color:var(--bs-blue);font-size:11px;font-weight:750;text-decoration:none}
.bs-app-header .bsr-account-workspaces .bs-account-create-workspace:hover{background:var(--bs-hover)}
.bs-app-header .bs-account-preferences { display:grid; gap:9px; padding:10px 8px; border-bottom:1px solid var(--bs-border); }
.bs-app-header .bs-account-theme { display:grid; grid-template-columns:repeat(3,1fr); gap:4px; }
.bs-app-header .bs-account-theme>span { grid-column:1/-1; margin-bottom:2px; color:var(--bs-muted); font-size:10px; font-weight:750; text-transform:uppercase; letter-spacing:.06em; }
.bs-app-header .bs-account-theme button { min-height:34px; padding:5px; border:1px solid var(--bs-border); border-radius:9px; background:var(--bs-surface-subtle); color:var(--bs-text); font-size:11px; cursor:pointer; }
.bs-app-header .bs-account-theme button.is-active { border-color:var(--bs-blue); background:var(--bs-hover); color:var(--bs-blue); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bs-blue) 14%,transparent);font-weight:750; }
.bs-app-header .bs-account-selects { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.bs-app-header .bs-account-selects form { display:grid; gap:4px; min-width:0; margin:0; }
.bs-app-header .bs-account-selects label { color:var(--bs-muted); font-size:10px; font-weight:650; }
.bs-app-header .bs-account-selects select { width:100%; min-width:0; height:36px; padding:5px 9px; border:1px solid var(--bs-border); border-radius:9px; background:var(--bs-surface-subtle); color:var(--bs-text); font-size:11px; }
.bs-app-header .bsr-account-links { display:grid; gap:1px; padding-top:5px; }
.bs-app-header .bsr-account-links a,.bs-app-header .bsr-account-links button { display:flex; align-items:center; gap:9px; width:100%; min-height:34px; padding:7px 9px; border:0; border-radius:7px; background:transparent; color:var(--bs-text); text-align:left; text-decoration:none; font-size:11.5px; font-weight:600; cursor:pointer; }
.bs-app-header .bsr-account-links a:hover,.bs-app-header .bsr-account-links button:hover { background:var(--bs-hover); }
.bs-app-header .bsr-account-links .bsr-account-signout { color:var(--bs-danger); }
.bs-app-header .bsr-account-links form { margin:0; }
.bs-app-header:has(.bs-header-menu[open]),.bs-app-header:has(.bsr-account[open]) { z-index:80; }
.bs-customer-footer{display:grid;justify-items:center;gap:7px;margin:18px auto 8px;padding:10px 12px;color:var(--bs-muted);font-size:11px;text-align:center}
.bs-customer-footer nav{display:flex;align-items:center;justify-content:center;gap:16px}
.bs-customer-footer nav a{color:inherit;text-decoration:none}
.bs-customer-footer nav a:hover{color:var(--bs-blue);text-decoration:underline;text-underline-offset:3px}
.bs-customer-footer nav a:focus-visible{outline:2px solid var(--bs-blue);outline-offset:3px;border-radius:2px}

/* Reusable controls and sections, shared with the private showroom. */
.bs-page-header { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:20px; }
.bs-page-header h1 { margin:0; font-size:clamp(25px,2.2vw,31px); line-height:1.1; letter-spacing:-.035em; }
.bs-page-header p { max-width:65ch; margin:5px 0 0; color:var(--bs-muted); font-size:13px; line-height:1.5; }
.bs-section { padding:20px 24px; border:1px solid var(--bs-border); border-radius:var(--bs-radius-card); background:var(--bs-surface); box-shadow:var(--bs-shadow); }
.bs-section-header { display:flex; align-items:start; justify-content:space-between; gap:16px; margin-bottom:16px; }
.bs-section-header h2 { margin:0; font-size:16px; line-height:1.3; }
.bs-section-header p { margin:4px 0 0; color:var(--bs-muted); font-size:12px; line-height:1.45; }
.bs-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:var(--bs-control-height); padding:0 15px; border:1px solid transparent; border-radius:var(--bs-radius-control); font:inherit; font-size:12px; font-weight:700; line-height:1.2; text-decoration:none; cursor:pointer; transition:background var(--bs-motion-fast),border-color var(--bs-motion-fast),box-shadow var(--bs-motion-fast); }
.bs-button.is-sm { min-height:var(--bs-control-sm); padding:0 10px; font-size:11px; }
.bs-button.is-primary { background:var(--bs-action-primary-bg); color:var(--bs-action-primary-text); }
.bs-button.is-primary:hover { background:var(--bs-action-primary-hover); color:var(--bs-action-primary-text); }
.bs-button.is-primary:active { background:var(--bs-action-primary-active); color:var(--bs-action-primary-text); }
.bs-button.is-secondary { border-color:var(--bs-border); background:var(--bs-surface); color:var(--bs-text); }
.bs-button.is-secondary:hover,.bs-button.is-ghost:hover { background:var(--bs-hover); }
.bs-button.is-ghost { background:transparent; color:var(--bs-text); }
.bs-button.is-danger { border-color:color-mix(in srgb,var(--bs-danger) 28%,var(--bs-border)); background:color-mix(in srgb,var(--bs-danger) 6%,var(--bs-surface)); color:var(--bs-danger); }
.bs-button.is-danger:hover { background:color-mix(in srgb,var(--bs-danger) 12%,var(--bs-surface)); }
.destructive-dialog .bs-button.is-danger { border-color:var(--bs-danger); background:var(--bs-danger); color:#fff; }
.bs-button.is-icon { width:var(--bs-control-height); padding:0; }
.bs-button:disabled,.bs-button[aria-disabled="true"] { opacity:.52; cursor:not-allowed; }
.bs-button.is-loading { cursor:wait; opacity:.72; }
.bs-button:focus-visible,.bs-app-header :is(a,button,summary,select):focus-visible,.bs-dropdown>summary:focus-visible { outline:2px solid var(--bs-blue); outline-offset:2px; }
.bsr-customer-body .btn { min-height:var(--bs-control-height); border-radius:var(--bs-radius-control); }
.bsr-customer-body .btn.btn-sm { min-height:var(--bs-control-sm); }
.bsr-customer-body .btn.btn-primary { border-color:var(--bs-action-primary-bg); background:var(--bs-action-primary-bg); color:var(--bs-action-primary-text); }
.bsr-customer-body .btn.btn-primary:hover { border-color:var(--bs-action-primary-hover); background:var(--bs-action-primary-hover); color:var(--bs-action-primary-text); }
.bsr-customer-body .btn.btn-primary:active { border-color:var(--bs-action-primary-active); background:var(--bs-action-primary-active); color:var(--bs-action-primary-text); }
.bsr-customer-body .btn.btn-danger { min-height:var(--bs-control-sm); padding:6px 10px; border:1px solid color-mix(in srgb,var(--bs-danger) 28%,var(--bs-border)); background:color-mix(in srgb,var(--bs-danger) 6%,var(--bs-surface)); color:var(--bs-danger); }
.bsr-customer-body .destructive-dialog .btn.btn-danger { min-height:var(--bs-control-height); padding:8px 13px; border-color:var(--bs-danger); background:var(--bs-danger); color:#fff; }
.bsr-customer-body :is(.form-field,.bsr-field) :is(input:not([type]),input:is([type=text],[type=email],[type=password],[type=number],[type=date],[type=time],[type=datetime-local],[type=month],[type=week],[type=search],[type=tel],[type=url],[type=file]),select,textarea) { min-height:var(--bs-control-height); border-radius:var(--bs-radius-control); }
.bsr-customer-body :is(.form-field,.bsr-field) :is(input:not([type]),input:is([type=text],[type=email],[type=password],[type=number],[type=date],[type=time],[type=datetime-local],[type=month],[type=week],[type=search],[type=tel],[type=url],[type=file]),select,textarea):focus-visible { outline:2px solid color-mix(in srgb,var(--bs-blue) 35%,transparent); outline-offset:1px; border-color:var(--bs-blue); }
.bsr-customer-body :is(.form-field,.bsr-field)>input:is([type=checkbox],[type=radio]) { width:16px; height:16px; min-height:0; justify-self:start; margin:0; padding:0; accent-color:var(--bs-blue); }
.bsr-customer-body :is(.form-field,.bsr-field)>input:is([type=checkbox],[type=radio]):focus-visible { outline:2px solid var(--bs-blue); outline-offset:2px; }
.bs-field { display:grid; gap:6px; min-width:0; }
.bs-field>label,.bs-field>legend { color:var(--bs-text); font-size:11.5px; font-weight:700; }
.bs-field-label { color:var(--bs-text); font-size:11.5px; font-weight:700; }
.bs-field>small { color:var(--bs-muted); font-size:11px; line-height:1.45; }
.bs-field :is(.bs-input,.bs-select)[aria-invalid="true"],.bs-field[aria-invalid="true"] { border-color:var(--bs-danger); }
.bs-site-choices { display:flex; flex-wrap:wrap; gap:4px 12px; }
.bs-input,.bs-select,.bs-textarea { display:block; width:100%; min-width:0; min-height:var(--bs-control-height); padding:8px 11px; border:1px solid var(--bs-border); border-radius:var(--bs-radius-control); background:var(--bs-surface); color:var(--bs-text); font:inherit; font-size:12px; }
.bs-input:focus,.bs-select:focus,.bs-textarea:focus { outline:2px solid color-mix(in srgb,var(--bs-blue) 40%,transparent); outline-offset:1px; border-color:var(--bs-blue); }
.bs-input:disabled,.bs-select:disabled,.bs-textarea:disabled { opacity:.6; background:var(--bs-surface-subtle); }
.bs-textarea { min-height:96px; resize:vertical; }
.bs-check { display:inline-flex; align-items:center; gap:8px; min-height:36px; color:var(--bs-text); font-size:12px; cursor:pointer; }
.bs-check input:not([role="switch"]) { width:16px; height:16px; min-height:0; flex:0 0 16px; margin:0; padding:0; accent-color:var(--bs-blue); }
.bs-check input:focus-visible,.bs-toggle input:focus-visible { outline:2px solid var(--bs-blue); outline-offset:2px; }
.bs-setting-row { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:56px; padding:12px 0; border-bottom:1px solid var(--bs-border); }
.bs-setting-row:last-child { border-bottom:0; }
.bs-setting-row strong { display:block; font-size:12px; }
.bs-setting-row small { display:block; margin-top:3px; color:var(--bs-muted); font-size:11px; line-height:1.4; }
.bs-badge { display:inline-flex; align-items:center; gap:4px; padding:4px 8px; border-radius:999px; background:var(--bs-hover); color:var(--bs-blue); font-size:10px; font-weight:750; }
.bs-badge.is-success { background:color-mix(in srgb,var(--bs-success) 12%,var(--bs-surface)); color:var(--bs-success); }
.bs-badge.is-warning { background:color-mix(in srgb,var(--bs-warning) 12%,var(--bs-surface)); color:var(--bs-warning); }
.bs-badge.is-danger { background:color-mix(in srgb,var(--bs-danger) 12%,var(--bs-surface)); color:var(--bs-danger); }
.bs-modal { width:min(520px,calc(100vw - 28px)); max-height:calc(100dvh - 28px); padding:24px; border:1px solid var(--bs-border); border-radius:var(--bs-radius-card); background:var(--bs-surface); color:var(--bs-text); box-shadow:var(--bs-shadow-popover); }
.bs-modal::backdrop { background:rgba(5,15,35,.55); }
.bs-modal.is-small { width:min(390px,calc(100vw - 28px)); }
.bs-modal.is-large { width:min(720px,calc(100vw - 28px)); }
.bs-modal h2 { margin:0; font-size:18px; }
.bs-modal .bs-modal-description { margin:5px 0 20px; color:var(--bs-muted); font-size:12px; }
.bs-modal .bs-modal-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:20px; }
.bs-empty-state { padding:28px 16px; color:var(--bs-muted); text-align:center; font-size:12px; }
.bs-empty-state strong { display:block; margin-bottom:4px; color:var(--bs-text); font-size:14px; }
.bs-empty-state p { margin:0; }
.bs-empty-actions { display:flex; justify-content:center; margin-top:var(--bs-space-4); }
.bs-status { padding:10px 12px; border-radius:var(--bs-radius-sm); background:var(--bs-hover); color:var(--bs-blue-deep); font-size:12px; }
.bs-status.is-success { background:color-mix(in srgb,var(--bs-success) 12%,var(--bs-surface)); color:var(--bs-success); }
.bs-status.is-warning { background:color-mix(in srgb,var(--bs-warning) 12%,var(--bs-surface)); color:var(--bs-warning); }
.bs-status.is-danger { background:color-mix(in srgb,var(--bs-danger) 12%,var(--bs-surface)); color:var(--bs-danger); }
.bs-status.is-info { background:var(--bs-hover); color:var(--bs-text); }
.bs-status.is-loading { background:var(--bs-surface-subtle); color:var(--bs-muted); }
.bs-save-status { min-height:18px; color:var(--bs-muted); font-size:11px; line-height:1.4; }
.bs-save-status:empty { display:none; }
.bs-save-status[data-state="dirty"] { color:var(--bs-warning); }
.bs-save-status[data-state="saving"] { color:var(--bs-blue); }
.bs-save-status[data-state="error"] { color:var(--bs-danger); }
.bs-after-section { display:block; margin-top:var(--bs-space-5); }
.bs-report-ai-controls { display:grid; grid-template-columns:repeat(2,minmax(0,190px)) auto; align-items:end; gap:var(--bs-space-3); }
.bs-report-ai-controls>.bs-button { justify-self:start; }
.bs-report-ai-result { margin:var(--bs-space-4) 0 0; white-space:pre-wrap; line-height:1.55; }
.bsr-customer-body :is(.alert,.presence-callout,.report-feedback,.bsr-pwa-feedback) { border-radius:var(--bs-radius-sm); font-size:12px; }
.report-feedback[data-state="loading"] { background:var(--bs-surface-subtle); color:var(--bs-muted); }
.report-feedback[data-state="success"] { background:color-mix(in srgb,var(--bs-success) 12%,var(--bs-surface)); color:var(--bs-success); }
.report-feedback[data-state="error"] { background:color-mix(in srgb,var(--bs-danger) 12%,var(--bs-surface)); color:var(--bs-danger); }
.bsr-pwa-actions .bs-save-status { margin-right:auto; }
.bs-divider { height:1px; margin:12px 0; border:0; background:var(--bs-border); }
.bs-dropdown { position:relative; }
.bs-dropdown>summary { display:inline-flex; align-items:center; min-height:var(--bs-control-height); padding:0 13px; border:1px solid var(--bs-border); border-radius:var(--bs-radius-control); background:var(--bs-surface); color:var(--bs-text); font-size:12px; font-weight:700; list-style:none; cursor:pointer; }
.bs-dropdown>summary::-webkit-details-marker { display:none; }
.bs-dropdown-panel { position:absolute; z-index:var(--bs-layer-menu); top:calc(100% + 6px); left:0; min-width:170px; display:grid; gap:2px; padding:6px; border:1px solid var(--bs-border); border-radius:var(--bs-radius-control); background:var(--bs-surface); box-shadow:var(--bs-shadow-popover); }
.bs-dropdown-panel a,.bs-dropdown-panel button { padding:8px; border:0; border-radius:7px; background:transparent; color:var(--bs-text); text-align:left; text-decoration:none; font-size:12px; }
.bs-dropdown-panel a:hover,.bs-dropdown-panel button:hover { background:var(--bs-hover); }
.bs-tooltip { display:inline-flex; align-items:center; color:var(--bs-muted); cursor:help; }
.bs-field-error { color:var(--bs-danger)!important; }
.bs-toggle input { appearance:none; position:relative; width:34px; height:20px; border:1px solid var(--bs-border); border-radius:999px; background:var(--bs-border); cursor:pointer; }
.bs-toggle input::after { content:""; position:absolute; top:2px; left:2px; width:14px; height:14px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.16); transition:transform .15s; }
.bs-toggle input:checked { background:var(--bs-blue); border-color:var(--bs-blue); }
.bs-toggle input:checked::after { transform:translateX(14px); }
.bs-data-row { display:flex; align-items:center; gap:12px; min-height:52px; padding:10px 0; border-bottom:1px solid var(--bs-border); color:var(--bs-text); font-size:12px; }
.bs-data-row:last-child { border-bottom:0; }
.bs-data-row .bs-badge { margin-left:auto; }
.bs-data-row .user-avatar { width:32px; height:32px; flex:0 0 32px; background:var(--bs-hover); color:var(--bs-blue); }
.bs-skeleton { display:inline-block; width:42px; height:14px; border-radius:6px; background:var(--bs-border); animation:bs-shimmer 1.5s ease-in-out infinite alternate; }
.bs-skeleton.is-wide { width:145px; }
.bs-spinner { display:inline-block; width:16px; height:16px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:bs-spin .7s linear infinite; }
@keyframes bs-shimmer { to { opacity:.45; } }
@keyframes bs-spin { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .bs-skeleton,.bs-spinner { animation:none; } }
.bs-showroom { display:grid; gap:18px; }
.bs-showroom-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:12px; }
.bs-showroom-form { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.bs-showroom-type>* { margin:0 0 10px; }
.bs-showroom-type h1 { font-size:30px; }.bs-showroom-type h2 { font-size:18px; }.bs-showroom-type h3 { font-size:14px; }
.bs-showroom-type p { font-size:13px; }.bs-showroom-type small { color:var(--bs-muted); font-size:11px; }
.bs-showroom-feedback { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.bs-showroom-metric { display:grid; gap:6px; max-width:250px; padding:16px 0; }
.bs-showroom-metric span { color:var(--bs-muted); font-size:11px; }.bs-showroom-metric strong { font-size:30px; letter-spacing:-.03em; }.bs-showroom-metric progress { width:100%; accent-color:var(--bs-blue); }
.bs-theme-swatch { display:grid; gap:6px; min-height:86px; padding:12px; border:1px solid; border-radius:var(--bs-radius-card); }
.bs-theme-swatch span { font-size:10px; opacity:.7; }.bs-theme-swatch strong { font-size:13px; }.bs-theme-swatch i { width:58px; height:5px; border-radius:999px; background:#2563eb; }
.bs-theme-swatch.is-light { background:#f4f7fc; border-color:#e6ecf6; color:#0d1b33; }
.bs-theme-swatch.is-dark { background:#101c2e; border-color:#22344c; color:#edf3fc; }

/* Team rows keep actions aligned without another card around each person. */
.bsr-customer-body .settings-members-card>.card-head { margin-bottom:6px; }
.bsr-customer-body .settings-member-row { display:grid; grid-template-columns:minmax(210px,1fr) minmax(350px,1.2fr) auto; align-items:center; gap:16px; padding:15px 0; }
.bsr-customer-body .settings-member-role form { grid-template-columns:minmax(135px,1fr) minmax(160px,1fr) auto; align-items:start; gap:8px; }
.bsr-customer-body .settings-member-role form>button { min-height:35px; white-space:nowrap; }
.bsr-customer-body .settings-member-role [data-specific-sites] { grid-column:1/-1; }
.bsr-customer-body .settings-member-role [data-specific-sites] { display:grid; }
.bsr-customer-body .settings-member-role .bs-save-status { grid-column:1/-1; }
.bsr-customer-body .settings-member-role form>button:disabled { opacity:.5; }
.bsr-customer-body .settings-member-role [data-specific-sites] label { display:inline-flex; align-items:center; gap:4px; min-height:36px; font-size:11px; }
.bsr-customer-body .settings-member-role [data-specific-sites] input { accent-color:var(--bs-blue); }
.bsr-customer-body .settings-member-actions { grid-column:auto; }
.bsr-customer-body .settings-member-person>div>strong { font-size:12px; }.bsr-customer-body .settings-member-person>div>span { font-size:11px; }
.bs-account-value { color:var(--bs-text); font-size:12px; font-weight:650; overflow-wrap:anywhere; }
.bs-signin-email-control{display:flex;align-items:center;justify-content:end;gap:16px;flex-wrap:wrap;min-width:0}
.bs-signin-email-control .bs-button{min-height:44px}
.bs-email-security-page{width:min(100%,640px);margin:12px auto 28px}
.bs-email-security-card{display:grid;gap:24px;min-width:0;padding:32px;border:1px solid var(--bs-border);border-radius:20px;background:var(--bs-surface);box-shadow:var(--bs-shadow)}
.bs-email-security-heading{display:grid;gap:12px}
.bs-email-security-kicker{display:flex;align-items:center;gap:7px;color:var(--bs-blue);font-size:12px;font-weight:700}
.bs-email-security-heading h1{margin:0;color:var(--bs-text);font-size:clamp(25px,3vw,30px);line-height:1.2;letter-spacing:-.035em}
.bs-email-security-heading p{margin:0;color:var(--bs-muted);font-size:14px;line-height:1.65}
.bs-email-current{display:grid;gap:6px;min-width:0;padding:16px 18px;border:1px solid var(--bs-border);border-radius:12px;background:var(--bs-surface-subtle)}
.bs-email-current>span{font-size:12px;color:var(--bs-muted)}
.bs-email-current>strong{font-size:15px;color:var(--bs-text);overflow-wrap:anywhere}
.bs-email-change-steps{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0;padding:0;list-style:none;color:var(--bs-muted)}
.bs-email-change-steps li{display:flex;align-items:center;gap:10px;min-width:0}
.bs-email-change-steps li>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid var(--bs-border);border-radius:50%;font-size:13px;font-weight:700}
.bs-email-change-steps li>div{display:grid;gap:4px;min-width:0}
.bs-email-change-steps strong{font-size:12px;line-height:1.4}
.bs-email-change-steps small{font-size:11px;line-height:1.4}
.bs-email-change-steps .is-current{color:var(--bs-blue)}
.bs-email-change-steps .is-current>span{border-color:var(--bs-blue);background:var(--bs-hover)}
.bs-email-change-steps .is-complete{color:var(--bs-text)}
.bs-email-change-form{display:grid;gap:18px;margin:0;min-width:0}
.bs-email-change-form .bs-button{width:100%;min-height:46px;white-space:normal;text-align:center;font-size:14px}
.bs-email-change-form input{width:100%;min-height:48px;font-size:16px}
.bs-email-change-form input[name=email_change_code]{font-size:26px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:.35em;text-align:center}
.bs-email-change-recipient{margin:0;color:var(--bs-text);font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.bs-email-change-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.bs-email-change-actions form{margin:0}
.bs-email-change-actions .bs-button{min-height:44px}
.bs-email-security-note{margin:0;border-top:1px solid var(--bs-border);padding-top:18px;color:var(--bs-muted);font-size:12px;line-height:1.65}
.bs-email-security-note+.bs-email-security-note{border:0;padding-top:0}
@media(max-width:560px){.bs-signin-email-control{justify-content:start;gap:10px}.bs-email-security-page{margin:0 auto 20px}.bs-email-security-card{padding:22px 18px;gap:22px;border-radius:16px}.bs-email-change-steps{gap:12px}.bs-email-change-steps li{align-items:start;gap:8px}.bs-email-change-steps li>span{flex-basis:28px;height:28px}.bs-email-change-steps small{font-size:10px}}
.bs-invite-success { display:grid; justify-items:center; gap:var(--bs-space-3); max-width:420px; margin:auto; text-align:center; }
.bs-invite-success-mark { display:grid; place-items:center; width:52px; height:52px; border-radius:50%; background:color-mix(in srgb,var(--bs-success) 12%,var(--bs-surface)); color:var(--bs-success); font-size:26px; font-weight:800; }
.bs-invite-success-person { display:flex; align-items:center; gap:var(--bs-space-3); width:100%; padding:var(--bs-space-3); border:1px solid var(--bs-border); border-radius:var(--bs-radius-control); text-align:left; }
.bs-invite-success-person strong,.bs-invite-success-person span { display:block; overflow-wrap:anywhere; }
.bs-invite-success-person span { color:var(--bs-muted); font-size:11px; }
.bs-workspace-sensitive { margin-top:20px; }

/* The notification page presents the bell's exact preference form as page content. */
.bsr-pwa-overlay.is-page .bsr-notifications-sheet { width:100%; max-width:none; border:1px solid var(--bs-border); border-radius:var(--bs-radius-card); background:var(--bs-surface); color:var(--bs-text); box-shadow:var(--bs-shadow); }
.bsr-pwa-overlay.is-page .bsr-push-status { margin:16px 22px 0; border-color:var(--bs-border); border-radius:var(--bs-radius-control); background:var(--bs-surface-subtle); }
.bs-notification-save-note { margin:var(--bs-space-2) 22px 0; color:var(--bs-muted); font-size:11px; }
.bsr-pwa-overlay.is-page #bsr-notification-form { padding:4px 22px 20px; }
.bsr-pwa-overlay.is-page .bsr-prefs-section { border-color:var(--bs-border); }
.bsr-pwa-overlay.is-page .bsr-pwa-actions { position:static; background:transparent; border-color:var(--bs-border); }

@media(max-width:1000px) {
  .bsr-customer-body .settings-member-row { grid-template-columns:minmax(180px,1fr) minmax(300px,1.2fr); }
  .bsr-customer-body .settings-member-actions { grid-column:2; justify-content:flex-start; }
}

@media(max-width:1100px) { .bs-header-quick-nav { display:none; } }
@media(max-width:860px) {
  .bs-app-header .bsr-account-links .bs-account-extra-link,.bs-app-header .bs-account-selects .bs-account-language { display:none; }
  .bs-app-header .bs-account-selects { grid-template-columns:1fr; }
}
@media(max-width:820px) {
  .bsr-customer-body .provider-section-head { flex-wrap:wrap; }
  .bsr-customer-body .provider-section-count { flex:none; }
  .bs-grid,.bs-grid.is-three { grid-template-columns:1fr; }
  .bs-report-ai-controls { grid-template-columns:1fr; }
  .bsr-customer-body .bsr-app { padding:10px 10px 36px; }
  .bsr-customer-body .bs-app-content { padding:18px 4px 52px; }
  .bs-app-header { min-height:58px; padding:10px 12px; gap:8px; border-radius:14px; }
  .bs-app-brand { gap:8px; font-size:15px; }
  .bs-app-brand .bsr-logo { width:34px; height:34px; flex-basis:34px; border-radius:9px; }
  .bs-app-header .bsr-header-actions { gap:6px; }
  .bs-app-header .bsr-hbtn,.bs-app-header .bsr-account>summary { height:36px; min-height:36px; }
  .bs-app-header .bsr-hbtn.is-icon { width:36px; }
  .bs-app-header .bsr-account>summary { width:36px; padding:2px; justify-content:center; }
  .bs-app-header .bsr-account-name,.bs-header-menu-label,.bs-app-header .bsr-sync-menu,.bs-app-header .bs-header-notifications { display:none; }
  .bs-app-header .user-avatar,.bs-app-header .bsr-avatar { width:30px; height:30px; flex-basis:30px; }
  .bs-header-menu { order:3; }
  .bs-header-menu>summary { width:36px; padding:0!important; }
  .bs-header-menu-popover { left:auto; right:-2px; }
  .bs-app-header .bs-account-popover { right:-1px; }
  .bsr-customer-body .settings-section { padding:16px; }
  .bs-section { padding:16px; }
  .bs-page-header { align-items:start; flex-direction:column; }
  .bs-setting-row { align-items:start; flex-direction:column; gap:8px; }
  .bs-modal { padding:18px; }
  .bs-showroom-form,.bs-showroom-feedback { grid-template-columns:1fr; }
  .bsr-customer-body .settings-member-row { grid-template-columns:1fr; gap:10px; padding:15px 0; }
  .bsr-customer-body .settings-member-role form { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bsr-customer-body .settings-member-role form>button { grid-column:1/-1; justify-self:start; }
  .bsr-customer-body .settings-member-actions { grid-column:1; justify-content:flex-start; }
  .bsr-customer-body .settings-member-avatar { width:36px; height:36px; flex-basis:36px; }
  .bsr-pwa-overlay.is-page .bsr-push-status { margin:14px 16px 0; }
  .bs-notification-save-note { margin-inline:16px; }
  .bsr-pwa-overlay.is-page #bsr-notification-form { padding:4px 16px 16px; }
}
.bs-app-header .bsr-account>summary .user-avatar{width:30px;height:30px;flex:0 0 30px;border:1px solid rgba(229,242,255,.45);border-radius:50%;background:linear-gradient(145deg,#61a7ff,#1e60ce);box-shadow:inset 0 1px 0 rgba(255,255,255,.28);color:#fff;font-size:13px;font-weight:600}
@media(max-width:390px) { .bs-app-brand strong { max-width:105px; } }
@media (hover:none), (pointer:coarse){
  *,*::before,*::after{-webkit-tap-highlight-color:transparent}
}

/* The product name has its own two-line wordmark; workspace names stay on one line. */
.bs-app-brand .bs-brand-lockup{display:grid;align-content:center;gap:1px;min-width:0;line-height:1}
.bs-app-brand .bs-brand-lockup strong{display:block;overflow:visible;font-size:17px;font-weight:800;letter-spacing:-.055em;line-height:1.02}
.bs-app-brand .bs-brand-lockup small{display:block;font-size:16px;font-weight:760;letter-spacing:.21em;line-height:1.02;text-transform:uppercase;color:#e7f1ff}
@media(max-width:820px){
  .bs-app-brand .bs-brand-lockup strong{font-size:15.25px}
  .bs-app-brand .bs-brand-lockup small{font-size:14.25px;letter-spacing:.215em}
}
@media(max-width:360px){
  .bs-app-brand .bsr-logo{width:30px;height:30px;flex-basis:30px}
  .bs-app-brand{gap:6px}
  .bs-app-brand .bs-brand-lockup strong{font-size:13.25px}
  .bs-app-brand .bs-brand-lockup small{font-size:12.25px;letter-spacing:.22em}
}

/* Team: identities, form controls and removal actions share clear columns. */
.bsr-customer-body .settings-member-list{display:grid;gap:0}
.bsr-customer-body .settings-member-row{grid-template-columns:minmax(170px,.85fr) minmax(310px,1.2fr) 44px;grid-template-areas:"person role actions";align-items:center;gap:20px;padding:22px 0}
.bsr-customer-body .settings-member-person{grid-area:person;min-width:0;gap:12px}
.bsr-customer-body .settings-member-person>div{min-width:0}
.bsr-customer-body .settings-member-person>div>strong{font-size:13px;line-height:1.5}
.bsr-customer-body .settings-member-person>div>span{font-size:12px;line-height:1.5}
.bsr-customer-body .settings-member-person small{font-weight:400;color:var(--bs-muted)}
.bsr-customer-body .settings-member-role{grid-area:role;min-width:0}
.bsr-customer-body .settings-member-role :is(form,[data-demo-member-form]){grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px}
.bsr-customer-body .settings-member-role :is(form,[data-demo-member-form])>.bs-field{margin:0;min-width:0}
.bsr-customer-body .settings-member-role :is(form,[data-demo-member-form])>button{grid-column:1/-1;justify-self:start;min-height:40px}
.bsr-customer-body .settings-member-role .bs-save-status:empty{display:none}
.bsr-customer-body .settings-member-actions{grid-area:actions;align-self:center;justify-content:flex-end}
.bsr-customer-body .settings-member-remove{display:grid;place-items:center;width:40px;min-width:40px;min-height:40px;padding:0;border-color:transparent;background:transparent;color:var(--bs-muted)}
.bsr-customer-body .settings-member-remove:hover{background:var(--surface-red,#fff0f0);border-color:color-mix(in srgb,var(--bs-danger,#b42318) 24%,transparent);color:var(--bs-danger,#b42318)}
.bsr-customer-body .settings-member-row.is-pending{grid-template-columns:minmax(0,1fr) auto auto}
.bsr-customer-body .settings-member-row.is-pending .settings-member-actions{gap:10px}
@media(max-width:1100px){
.bsr-customer-body .settings-member-row{grid-template-columns:minmax(0,1fr) 44px;grid-template-areas:"person actions" "role role";gap:16px}
.bsr-customer-body .settings-member-actions{align-self:start}
.bsr-customer-body .settings-member-row.is-pending{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"person actions" "role role"}
}
@media(max-width:600px){
.bsr-customer-body .settings-member-row{padding:20px 0}
.bsr-customer-body .settings-member-role :is(form,[data-demo-member-form]){gap:12px 10px}
.bsr-customer-body .settings-member-role :is(form,[data-demo-member-form])>button{justify-self:stretch;width:100%;min-height:44px}
.bsr-customer-body .settings-member-remove{width:44px;min-width:44px;min-height:44px}
.bsr-customer-body .settings-member-person>div>span{white-space:normal;overflow-wrap:anywhere}
.bsr-customer-body .settings-member-role .bs-select{min-height:44px}
}
/* Reference-led Team directory; edits live in bounded dialogs. */
.team-directory-toolbar{display:grid;gap:18px;margin-bottom:4px}.team-directory-tabs{display:flex;gap:4px;width:fit-content;max-width:100%;padding:4px;border:1px solid var(--bs-border);border-radius:12px;background:var(--bs-hover)}.team-directory-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;border:0;border-radius:9px;background:transparent;color:var(--bs-muted);font:inherit;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer}.team-directory-tabs button[aria-selected="true"]{background:var(--bs-surface);color:var(--bs-blue);box-shadow:0 1px 5px #10294b12}.team-directory-tabs button span{min-width:20px;padding:2px 6px;border-radius:6px;background:var(--bs-hover);font-size:11px}.team-directory-search{display:flex;align-items:center;gap:9px;min-width:0;padding:0 13px;border:1px solid var(--bs-border);border-radius:11px;background:var(--bs-surface);color:var(--bs-muted)}.team-directory-search input{width:100%;min-width:0;min-height:44px;padding:10px 0;border:0;background:transparent;color:var(--bs-text);font:inherit;font-size:13px;outline:0}.team-directory-search:focus-within{outline:3px solid color-mix(in srgb,var(--bs-blue) 25%,transparent);border-color:var(--bs-blue)}.team-directory-columns{display:grid;grid-template-columns:minmax(0,1fr) 180px 90px;gap:22px;padding:14px 0;color:var(--bs-muted);font-size:11px;font-weight:650}.team-directory-columns>span:last-child{text-align:right}
.bsr-customer-body [data-team-directory] .settings-member-row{grid-template-columns:minmax(0,1fr) 180px 90px;grid-template-areas:"person role actions";gap:22px;padding:18px 0}
.bsr-customer-body [data-team-directory] .settings-member-actions{align-self:center;align-items:center;gap:6px}
.bsr-customer-body [data-team-directory] .settings-member-role{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.team-access-caption{font-size:11px;color:var(--bs-muted)}
.bsr-customer-body .settings-member-manage{display:grid;place-items:center;width:40px;min-width:40px;min-height:40px;padding:0;border:1px solid var(--bs-border);border-radius:50%;background:var(--bs-hover);color:var(--bs-text)}.bsr-customer-body .settings-member-remove{border-radius:50%}
.team-permissions-dialog{position:fixed;width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow:auto;padding:24px;border-radius:20px}.team-permissions-dialog>h2{padding-right:36px}.team-dialog-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;min-width:36px;min-height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--bs-muted);cursor:pointer}.team-dialog-close:hover{background:var(--bs-hover);color:var(--bs-text)}.team-permission-person{display:flex;align-items:center;gap:12px;padding:15px 0;margin-bottom:12px;border-bottom:1px solid var(--bs-border)}.team-permission-person>div{display:grid;min-width:0}.team-permission-person strong{font-size:14px}.team-permission-person span{font-size:12px;color:var(--bs-muted);overflow-wrap:anywhere}
.bsr-customer-body .settings-member-role .team-permissions-dialog :is(form,[data-demo-member-form]){display:grid;grid-template-columns:1fr;align-items:stretch;gap:16px}.bsr-customer-body .team-permissions-dialog .bs-site-choices{display:grid;gap:6px;max-height:220px;overflow:auto;padding:4px}.bsr-customer-body .team-permissions-dialog :is(form,[data-demo-member-form])>button{justify-self:stretch;width:100%}.team-directory-empty{padding:16px;color:var(--bs-muted)}
@media(max-width:700px){.team-directory-columns{display:none}.bsr-customer-body [data-team-directory] .settings-member-row{grid-template-columns:minmax(0,1fr) 90px;grid-template-areas:"person actions" "role role";gap:10px}.bsr-customer-body [data-team-directory] .settings-member-role{flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px;padding-left:48px}.team-directory-tabs{width:100%}.team-directory-tabs button{justify-content:center;flex:1;padding:8px;font-size:12px}.team-permissions-dialog{padding:22px 18px}.team-directory-search input{font-size:16px}}

.bsr-customer-body .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.bs-app-header .bs-account-email{display:block;min-width:0;max-width:100%;color:var(--bs-muted);font-size:12px;line-height:1.4;overflow-wrap:anywhere;white-space:normal}.bs-classic-topbar-account-menu>.bs-account-email{padding:0 10px 10px}

/* The mobile account trigger keeps its hit area and shows only the initial. */
@media(max-width:1199px){.bs-app-header .bsr-account>summary .user-avatar{border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;font-weight:700}}

/* Keep the new AI entry separated from the adjacent provider connection. */
.mcp-integration-entry + .sc-integration{margin-top:20px}

.bs-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid var(--bs-border,var(--line));font-size:12px;color:var(--bs-muted,var(--muted))}.bs-pagination>span{margin-inline-end:auto}.bs-pagination button:disabled{opacity:.45;cursor:default}
