/* Shared workspace theme. Kept separate from customer embed branding. */
:root {
  --ink: #24324b;
  --muted: #60708b;
  --line: #dfe5ef;
  --paper: #f5f7fb;
  --white: #fff;
  --surface: #fff;
  --dark: #253654;
  --accent: #4b61bb;
  --accent-hover: #3c50a3;
  --accent-soft: #edf1fc;
  --green: #e2e8fb;
  color: var(--ink);
  background: var(--paper);
  color-scheme: light;
}
body, .training-page { background: var(--paper); color: var(--ink); --muted: #60708b; }
::selection { background: #dce4ff; color: #23355b; }
button, a, input, textarea, select, summary { -webkit-tap-highlight-color: transparent; }
:where(button, a, input, textarea, select, summary):focus-visible,
.training-page :focus-visible { outline: 3px solid #8a9ddd; outline-offset: 3px; }
:where(input, textarea, select) { accent-color: var(--accent); }
:where(input, textarea, select):focus { border-color: #8093d7; }
input::placeholder, textarea::placeholder { color: #77839a; }
.fine, .muted, .section-caption { color: var(--muted); }
.button { border-radius: 9px; min-height: 43px; transition: background .15s, border-color .15s; }
.button.primary, .training-page .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
.button.primary:hover, .training-page .button.primary:hover { background: var(--accent-hover); border-color: var(--accent-hover); }
.button.mint { background: var(--accent-soft); border-color: #d3dcf4; color: #354e9a; }
.button.mint:hover { background: #e1e8fb; }
.button.ghost, .button.outline { background: #fff; color: #435775; border-color: #d8e0ee; }
.button.ghost:hover, .button.outline:hover { background: #f1f4fb; border-color: #bdc9e6; }
.text-link, .text-button { color: #425da8; }
.tag, .badge { background: #eef2fa; color: #4b5f83; }
.tag.good, .badge.approved { background: #e9f0fd; color: #355995; }
.tag.warning { background: #fff3db; color: #805b1d; }
.tag.bad { background: #fff0ed; color: #9b4233; }
.tag.dark { background: #ecf0fb; color: #465d8d; }
.notice, .notice[data-tone=info], .notice[data-tone=success] { background: #f0f4fc; border-color: #d8e1f3; color: #435a83; }
.notice[data-tone=error] { background: #fff2ef; border-color: #efcfc7; color: #963f30; }
.card { border-radius: 14px; box-shadow: 0 2px 8px #24324b03; }
.eyebrow, .section-number { color: #66738f; letter-spacing: .1em; }

/* A quiet, readable sidebar with one active destination. */
.shell { grid-template-columns: 252px minmax(0, 1fr); }
.sidebar { background: #fff; color: #5b6a83; border-right: 1px solid var(--line); padding: 28px 16px 18px; }
.sidebar .brand { color: #28385b; margin-bottom: 28px; }
.brand-symbol { background: var(--accent); color: #fff; border-radius: 10px; }
.sidebar .workspace-label { color: #6b7892; font-size: .64rem; letter-spacing: .1em; }
.sidebar .main-nav { gap: 5px; }
.sidebar .main-nav > a { min-height: 44px; font-size: .84rem; color: #54647f; border: 1px solid transparent; border-radius: 9px; }
.sidebar .main-nav > a > span:first-child { color: #7988a5; }
.sidebar .main-nav > a:hover { background: #f4f6fb; color: #344c7f; }
.sidebar .main-nav > a[aria-current=page] { background: var(--accent-soft); border-color: #e1e7f9; color: #3d54a2; font-weight: 650; }
.sidebar .main-nav > a[aria-current=page] > span:first-child { color: #536bbe; }
.sidebar .nav-count, .sidebar .main-nav > a[aria-current=page] .nav-count { background: #e5ebfa; color: #4d639a; }
.sidebar .nav-section-label { margin-top: 21px; }
.sidebar .nav-disclosure { border-color: var(--line); margin-top: 17px; }
.sidebar .nav-disclosure > summary { color: #60708b; font-size: .76rem; padding-block: 10px; }
.sidebar .nav-disclosure > summary::after { color: #7a88a3; }
.sidebar .tenant-navigation > summary { border-color: var(--line); background: #f6f8fc; color: #65748e; }
.sidebar .tenant-navigation > summary strong { color: #304567; }
.sidebar .tenant-picker select { color: #33496f; background: #fff; border: 1px solid #d8e1ef; font-size: .81rem; }
.sidebar .tenant-picker { margin-top: 16px; }
.sidebar .personal-nav { border-color: var(--line); }
.sidebar .sidebar-bottom { padding-top: 26px; }
.sidebar .account { border-color: var(--line); color: #425372; }
.sidebar .account small { color: #6d7a93; }
.sidebar .avatar { background: #edf1fb; color: #5368b0; }
.sidebar .core-indicator { color: #6c7890; font-size: .68rem; }
.sidebar .core-indicator i { background: #7f91cd; }
.sidebar .nav-back { display: flex; padding: 10px 12px; margin: 0 0 12px; font-size: .78rem; color: #4c62a4; border-bottom: 1px solid var(--line); }
.workspace-identity { padding: 14px; background: #f3f6fc; border: 1px solid #e2e8f3; border-radius: 11px; margin-bottom: 22px; }
.workspace-identity > span, .workspace-identity small { display: block; font-size: .65rem; line-height: 1.5; color: #667692; }
.workspace-identity strong { display: block; color: #2c416a; font-size: .92rem; line-height: 1.4; margin-top: 5px; overflow-wrap: anywhere; }
.workspace-nav-group { margin-top: 21px; }
.topbar { background: #ffffffed; border-color: var(--line); padding-inline: clamp(22px,3vw,42px); position: sticky; top: 0; z-index: 10; }
.breadcrumbs, .breadcrumbs strong { color: #566786; }
.topbar .logout-button { min-height: 36px; padding: 9px 13px; flex: none; }
@media(max-width:560px) {
  .topbar-actions #top-status { display: inline-flex; max-width: 94px; font-size: .6rem; line-height: 1.4; white-space: normal; }
  .topbar-actions { flex: none; }
  .breadcrumbs { flex: 1; min-width: 0; }
  .breadcrumbs strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .topbar .logout-button { min-height: 42px; }
}
.workspace > main { padding: 32px clamp(22px,3vw,42px) 45px; max-width: 1440px; }
.page-head { margin-bottom: 25px; }
.page-head h1 { font-size: clamp(1.8rem,2.7vw,2.35rem); letter-spacing: -.045em; }
.page-head p { font-size: .88rem; max-width: 65ch; }
.tenant-context { background: #f0f4fc; border: 1px solid #d8e2f4; border-left: 3px solid #8397ce; border-radius: 10px; }
.tenant-context strong { color: #304973; }
.tenant-context p { color: #647593; }
.tenant-context { padding: 14px 18px; }
.tenant-context > div { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 12px; }
.tenant-context .eyebrow, .tenant-context p { margin: 0; }
.tenant-context strong { font-size: .92rem; }
.tenant-context p { font-size: .74rem; }
.shell.is-admin .workspace-identity { display: none; }
.shell.is-admin #tenant-nav { border: 0; padding-left: 0; }
.workspace-footer { color: #74819a; }

/* Always distinguish who is signed in from which company is being managed. */
.access-context { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 21px 24px; margin-bottom: 26px; border: 1px solid #d8e2f4; border-left: 4px solid #7c92cf; border-radius: 12px; background: #edf2fc; }
.access-context > div { min-width: 0; }
.access-role { display: block; margin-bottom: 7px; font-size: .63rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; color: #536b9c; }
.access-title { display: block; color: #304973; font-size: 1.05rem; line-height: 1.4; overflow-wrap: anywhere; }
.access-description { margin: 7px 0 0; color: #5a6e91; font-size: .77rem; line-height: 1.6; max-width: 83ch; }
.access-context > a { flex: none; }
.access-context[data-access-mode=admin] { background: #eaf0fb; border-color: #cdd9f2; border-left-color: #4b61bb; }
.access-context[data-access-mode=admin-client] { background: #fff8eb; border-color: #eddfc4; border-left-color: #b88c46; }
.access-context[data-access-mode=admin-client] .access-role { color: #8a6732; }
.access-context[data-access-mode=admin-client] .access-title { color: #6b542f; }
.access-context[data-access-mode=admin-client] .access-description { color: #786747; }
.access-tag[data-access-mode=admin], .access-tag[data-access-mode=admin-client] { background: #e9eefc; color: #4058a0; }
.access-context[data-access-mode=client] { background: #f8faff; border-left-color: #9badd8; }
.sidebar .personal-nav > .nav-section-label { margin: 4px 11px 8px; }
/* A client's identity is visible without repeating a full introduction on every page. */
.access-context[data-access-mode=client] { padding: 12px 18px; margin-bottom: 20px; }
.access-context[data-access-mode=client] > div { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; }
.access-context[data-access-mode=client] .access-role { margin: 0; }
.access-context[data-access-mode=client] .access-title { font-size: .94rem; }
.access-context[data-access-mode=client] .access-description { display: none; }
@media(max-width:730px) {
  .access-context { align-items: flex-start; flex-direction: column; gap: 14px; padding: 17px 18px; margin-bottom: 22px; }
  .access-title { font-size: .94rem; }
  .access-role { font-size: .58rem; }
  .access-description { font-size: .73rem; }
  .access-context[data-access-mode=client] { padding: 12px 15px; margin-bottom: 18px; }
}

/* A single next action, then clear shortcuts and real activity. */
.overview-main { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(250px,1fr); gap: 22px; align-items: start; margin-bottom: 24px; }
.overview-next-card { padding: 30px; background: linear-gradient(125deg,#eef2fc,#f9faff); border: 1px solid #dce3f5; border-radius: 15px; }
.overview-next-card h2 { font-size: 1.65rem; max-width: 30ch; line-height: 1.2; letter-spacing: -.04em; }
.overview-next-card p { color: #5c6e91; font-size: .87rem; max-width: 62ch; }
.overview-next-card .actions { margin-top: 22px; }
.overview-shortcuts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; margin: 22px 0; }
.overview-shortcut { display: grid; gap: 8px; padding: 21px; border: 1px solid var(--line); border-radius: 12px; background: #fff; text-decoration: none; transition: border-color .15s, background .15s; }
.overview-shortcut:hover { background: #fafbff; border-color: #aebee9; }
.overview-shortcut strong { color: #354c78; font-size: .9rem; }
.overview-shortcut p, .overview-shortcut small, .overview-shortcut > span { color: #697891; font-size: .77rem; line-height: 1.55; margin: 0; }
.overview-help { font-size: .8rem; color: #64738f; margin-top: 18px; }
.overview-hero { background: #eef2fc; border-color: #dae2f6; }
.overview-hero p, .overview-hero .eyebrow { color: #5c6e91; }
.hero-glyph span { background: #b0bfe5; box-shadow: 0 0 0 7px #e7edfa; }
.hero-glyph span:nth-child(2n) { background: #7b91ca; }
.core-card { background: #304367; color: #fff; }
.core-card p, .core-card .eyebrow { color: #d3dcef; }
.trial-strip { background: #f0f4fc; border-color: #dde5f5; }
.trial-strip p { color: #607291; }
.trial-strip strong { color: #3d537b; }
.setup-steps > li, .client-guide { background: #fff; border-color: var(--line); }
.setup-steps .setup-number, .client-guide > a > span { background: #edf1fc; color: #5268ad; }
.setup-steps strong, .client-guide > a { color: #435a81; }
.overview-details { border: 1px solid var(--line); border-radius: 12px; background: #fff; padding: 22px; margin-top: 22px; }
.overview-details > summary { color: #455a80; font-size: .87rem; }
.clients-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: 0 0 24px; }
.client-stat-filter { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 18px; color: #63728f; text-align: left; display: grid; gap: 7px; }
.client-stat-filter strong { display: block; font-size: 1.55rem; color: #30466c; font-weight: 600; }
.client-stat-filter span, .client-stat-filter small { font-size: .75rem; line-height: 1.4; }
.client-stat-filter:hover, .client-stat-filter[aria-pressed=true] { background: #f2f5fd; border-color: #9cafe1; }
.data-table { font-size: .81rem; }
.data-table th { background: #f8fafd; color: #65748f; font-size: .64rem; letter-spacing: .06em; }
.data-table td { color: #5b6e8c; border-color: #e8edf5; padding-block: 18px; }
.data-table td strong, .data-table .table-link { color: #344d77; font-size: .83rem; }
.data-table td small { color: #6a7b96; font-size: .71rem; }
.data-table tr:hover td { background: #fafbfe; }
.filters label { font-size: .75rem; }
.filters input, .filters select { font-size: .82rem; }
.empty { color: #657795; }
.empty h3 { color: #3c547e; }
.empty .empty-icon { background: #edf2fc; color: #7b8fbd; }
.chat-intro { color: #637798; }
.chat-intro h3 { color: #405c8a; }
.chat-intro .chat-sigil { background: #edf2fc; color: #607cb8; }
.chat-composer { background: #f7f9fd; }
.test-modes { background: #edf1f8; border-color: #dfe5f1; }
.test-modes button[aria-pressed=true] { color: #3c58a1; }

/* The same visual language in training, onboarding and sign-in. */
.training-page .studio-top { background: #fff; border-color: var(--line); }
.training-page .logo, .training-page .studio-top .quiet { color: #33486d; }
.training-page .studio-sidebar { background: #fff; border-color: var(--line); }
.training-page .studio-sidebar nav button { color: #5b6d88; padding-block: 14px; }
.training-page .studio-sidebar nav button[aria-current=page] { background: var(--accent-soft); color: #425aa6; }
.training-page .studio-sidebar nav b { background: #e5ebfb; color: #536aad; }
.training-page .company-picker select { border-color: #d4deee; color: #3e5379; }
.training-page .sidebar-note { border-color: var(--line); color: #667793; }
.training-page .sidebar-note strong { color: #3e547d; }
.training-page .small-dot { background: #8297cd; }
.training-page .studio-label { color: #6d7c96; border-color: var(--line); }
.training-page .studio-heading h1 { color: #273b5f; letter-spacing: -.045em; }
.training-page .version-seal { background: #edf2fc; border-color: #dce4f5; }
.training-page .version-seal > span:first-child { color: #687c9e; }
.training-page .save-bar { background: #f5f7fbf5; border-color: var(--line); backdrop-filter: blur(8px); }
.training-page .save-bar > span { color: #596e92; }
.training-page .field-stack { gap: 22px; }
.training-page label { color: #3f5272; font-size: .85rem; }
.training-page input:not([type=checkbox]), .training-page textarea { color: #314765; border-color: #d7dfed; border-radius: 9px; background: #fff; font-size: .88rem; }
.training-page .editor-note { background: #eef3fc; color: #4d6284; }
.training-page .editor-note p, .training-page .editor-note .fine { color: #627493; }
.training-page .sample-quote { border-color: #9fb1dc; }
.training-page .inline-note, .training-page .training-publish-tip { background: #edf2fc; border-color: #97acd9; color: #516b96; }
.training-page .training-publish-tip a { color: #3f5ba3; }
.training-page .training-flow > a, .training-page .training-flow > button { color: #425a84; border-color: var(--line); }
.training-page .training-flow > a:hover, .training-page .training-flow > button:hover { background: #f3f6fd; }
.training-page .training-flow span { background: #edf2fc; color: #5971b1; }
.training-page .coach-panel { background: #f0f4fc; border-color: #dce4f5; }
.training-page .coach-safety { background: #fff; border-color: #dfe6f3; color: #637392; }
.training-page .coach-safety strong { color: #3d547f; }
.training-page .coach-result { border-color: #dce4f4; }
.training-page .test-controls { background: #edf2fc; }
.training-page .section-heading p { color: #627490; }
.auth-card { box-shadow: 0 12px 44px #24324b09; border-color: var(--line); }

@media(max-width:1100px) {
  .overview-main { grid-template-columns: 1fr; }
  .overview-shortcuts { gap: 10px; }
}
@media(max-width:730px) {
  .shell { display: block; }
  .sidebar { width: 270px; box-shadow: 12px 0 40px #26375422; }
  .workspace > main { padding: 24px 18px 36px; }
  .topbar { padding-inline: 18px; }
  .page-head { gap: 16px; }
  .page-head h1 { font-size: 1.85rem; }
  .overview-next-card { padding: 23px; }
  .overview-next-card h2 { font-size: 1.4rem; }
  .overview-shortcuts { grid-template-columns: 1fr; }
  .overview-shortcut { padding: 17px 20px; }
  .clients-summary { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .client-stat-filter { padding: 15px; }
  .button { white-space: normal; }
  .training-page .coach-panel { padding: 20px; }
  .training-page .studio-top { padding-inline: 18px; }
}
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after { scroll-behavior: auto!important; animation-duration: .01ms!important; transition-duration: .01ms!important; }
}
.overview-shortcut { grid-template-columns: 26px minmax(0,1fr) 16px; align-items: center; column-gap: 12px; }
.overview-shortcut > div { display: grid; gap: 5px; }
.overview-shortcut > span:first-child { color: #6c80b9; font-size: 1.35rem; }
.overview-help { display: flex; gap: 20px; align-items: baseline; justify-content: space-between; }
.overview-help p { margin: 0; }
.setup-steps-compact { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 20px; }
.training-page .coach-disclosure { margin: 0 0 24px; padding: 0; }
.coach-disclosure > summary { display: flex; align-items: center; gap: 14px; cursor: pointer; list-style: none; padding: 20px 22px; }
.coach-disclosure > summary::-webkit-details-marker { display: none; }
.coach-disclosure > summary strong { display: block; font-size: .92rem; color: #3d5485; }
.coach-disclosure > summary small { display: block; margin-top: 4px; font-size: .75rem; color: #667b9f; }
.coach-summary-icon { width: 36px; height: 36px; display: grid; place-items: center; background: #e0e7fa; color: #647bbf; border-radius: 10px; font-size: 1.25rem; flex: none; }
.disclosure-chevron { margin-left: auto; color: #8290ad; transition: transform .15s; }
.coach-disclosure[open] .disclosure-chevron { transform: rotate(180deg); }
.coach-body { border-top: 1px solid #dce4f5; padding: 22px; }
.coach-intro { font-size: .85rem; color: #607694; line-height: 1.65; }
.training-group { background: #fff; border: 1px solid var(--line); border-radius: 12px; }
.training-group > summary { cursor: pointer; padding: 19px 22px; list-style: none; display: grid; gap: 5px; position: relative; }
.training-group > summary::-webkit-details-marker { display: none; }
.training-group > summary::after { content: '+'; position: absolute; right: 22px; top: 23px; color: #6e84b3; font-size: 1.2rem; }
.training-group[open] > summary::after { content: '−'; }
.training-group > summary span { padding-right: 25px; color: #364f7a; font-size: .95rem; font-weight: 650; }
.training-group > summary small { padding-right: 25px; font-size: .75rem; color: #6a7d99; line-height: 1.5; }
.training-group-fields { display: grid; gap: 22px; padding: 5px 22px 24px; }
.training-page .training-scope { color: #617493; }
:root { --auth-green: #4b61bb; --auth-ink: #24324b; --auth-muted: #60708b; --auth-line: #dfe5ef; --auth-paper: #f5f7fb; --auth-lime: #b7c5f0; }
.auth-story { background: #2d3f67; }
.auth-story small { color: #c6d0e6; }
.auth-security { --auth-green: #4b61bb; }
@media(max-width:730px) {
  .overview-help { flex-direction: column; gap: 8px; }
  .setup-steps-compact { grid-template-columns: 1fr; }
  .training-page .coach-disclosure { padding: 0; }
  .coach-disclosure > summary { padding: 18px; gap: 10px; }
  .coach-body { padding: 18px; }
  .training-group > summary { padding: 17px 18px; }
  .training-group-fields { padding: 5px 18px 20px; }
}
.workspace .bv-payment-help, .workspace .bv-settings-configuration > .form-actions { background: #f3f6fc; }
.workspace .bv-settings-jumps button:hover, .workspace .bv-settings-jumps button:focus-visible { background: #edf2fc; border-color: #8299d3; }
.workspace .bv-settings-jumps small, .workspace .bv-settings-group > summary small, .workspace .bv-provider-group > summary small { color: #617493; }
.workspace .bv-settings-group > summary:after { color: #6881b1; }
.workspace .bv-plan-service, .workspace .bv-billing-terms, .workspace .bv-credit-rules, .workspace .bv-credit-available-note { color: #657792; }
.workspace .bv-plan-features li:before, .workspace .bv-credit-history > summary { color: #5871aa; }
.workspace .bv-plan-badge { color: #435f9c; background: #eaf0fe; border-color: #cfdbf6; }
.workspace .bv-billing-plans .plan.featured { border-color: #c4d2f0; background: #f7f9ff; }
.workspace .bv-billing-plans .plan.selected { border-color: #7e95d0; }
.workspace .bv-billing-plans .plan .bv-plan-setup-fee { color: #49628d; border-color: #d7e1f5; background: #f0f4fc; }
.workspace .bv-answer-credit-grid > div { background: #f3f6fc; border-color: #dce4f3; }
.workspace .bv-answer-credit-grid strong, .workspace .bv-credit-bundle .bv-credit-count { color: #3e5a8b; }
.workspace .bv-answer-credit-grid span, .workspace .bv-answer-credit-grid small, .workspace .bv-credit-bundle .bv-credit-count small { color: #687c9b; }
.workspace .bv-credit-bundle { border-color: var(--line); }
.workspace .bv-credit-bundle .bv-credit-price { color: #4b6387; }
.coach-field-note { display: block; margin-top: 4px; color: #6c7d98; font-size: .71rem; line-height: 1.5; font-weight: 400; }
.overview-health { margin-top: 24px; padding-top: 16px; border-top: 1px solid #d9e2f5; }
.overview-health > summary { color: #5d7296; font-size: .77rem; }
.overview-health .health-list { margin: 17px 0; }
@media(max-width:1100px) {
  .training-page .training-flow { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .training-page .training-flow > a, .training-page .training-flow > button { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 12px; }
  .training-page .training-flow small { display: none; }
  .training-page .training-flow strong { font-size: .7rem; overflow-wrap: anywhere; }
}
