:root {
  --ink:#102033;
  --muted:#5f6f80;
  --blue:#0b67bd;
  --line:#d9e7f2;
  --page:#f6fbff;
  --bs-primary:#0b67bd;
  --bs-primary-rgb:11,103,189;
  --bs-body-color:#35526d;
  --bs-body-font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --bs-body-bg:#f6fbff;
}
* {
  box-sizing:border-box;
}
body {
  margin:0;
  font-size:14px;
  line-height:1.6;
  color:var(--ink);
  background:var(--page);
}
a {
  color:var(--blue);
  text-decoration:none;
}
a:hover {
  color:#084d91;
  text-decoration:underline;
}
svg {
  flex-shrink:0;
  vertical-align:middle;
}
button,a,input,textarea,summary {
  touch-action:manipulation;
}
a:focus-visible,button:focus-visible,summary:focus-visible {
  outline:3px solid #6a9bc5;
  outline-offset:4px;
}
input:focus,textarea:focus {
  box-shadow:0 0 0 3px #0b67bd20!important;
  border-color:var(--blue)!important;
}
.skip-link {
  position:fixed;
  top:-100px;
  left:20px;
  z-index:99;
  background:#fff;
  padding:12px;
}
.skip-link:focus {
  top:10px;
}
.sidebar {
  width:236px;
  position:fixed;
  inset:0 auto 0 0;
  background:#0b2d52;
  color:#d3dde5;
  padding:32px 20px 20px;
  display:flex;
  flex-direction:column;
  z-index:20;
}
.brand {
  display:flex;
  align-items:center;
  gap:11px;
  font-size:27px;
  font-weight:750;
  letter-spacing:-1px;
  color:white;
  line-height:1.1;
}
.brand:hover {
  color:white;
  text-decoration:none;
}
.brand small {
  display:block;
  margin-top:8px;
  font-size:8px;
  letter-spacing:2.1px;
  font-weight:550;
  color:#a4b9cc;
}
.brand-mark {
  width:39px;
  height:42px;
  border-radius:12px;
  background:#b4cfe6;
  color:#132c41;
  font-size:35px;
  font-weight:800;
  text-align:center;
  line-height:38px;
  position:relative;
}
.brand-mark>span {
  position:absolute;
  width:6px;
  height:6px;
  bottom:8px;
  right:8px;
  background:#132c41;
  border-radius:50%;
}
.nav-caption {
  font-size:9px;
  letter-spacing:1.65px;
  color:#8c9fb0;
  margin:48px 12px 14px;
}
.workspace-nav {
  display:flex;
  flex-direction:column;
  gap:6px;
}
.workspace-nav a {
  display:flex;
  align-items:center;
  gap:12px;
  color:#bcc9d5;
  border-radius:8px;
  padding:13px 12px;
  font-size:12px;
  font-weight:550;
  white-space:nowrap;
}
.workspace-nav a:hover {
  background:#ffffff0c;
  text-decoration:none;
  color:#fff;
}
.workspace-nav a.active {
  background:#164c7e;
  color:#fff;
}
.nav-dot {
  margin-left:auto;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#a2c1dd;
}
.sidebar-bottom {
  margin-top:auto;
}
.help-card {
  border:1px solid #ffffff1c;
  background:#ffffff06;
  border-radius:12px;
  padding:19px 16px;
}
.help-card>svg {
  color:#a7bed2;
}
.help-card strong {
  display:block;
  font-size:13px;
  color:#eef3f7;
  margin-top:13px;
}
.help-card p {
  font-size:11px;
  color:#a4b5c4;
  margin:6px 0 14px;
}
.help-card a {
  font-size:11px;
  font-weight:600;
  color:#d0e1ef;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.sidebar-bottom>small {
  display:block;
  font-size:9px;
  color:#8096aa;
  margin:18px 12px 0;
}
.page-shell {
  margin-left:236px;
  min-width:0;
}
.topbar {
  height:80px;
  border-bottom:1px solid var(--line);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 38px;
  gap:15px;
}
.topbar strong {
  font-size:12px;
  font-weight:550;
}
.workspace-label {
  color:#868f96;
  font-size:12px;
}
.breadcrumb-divider {
  color:#c1c7cd;
  padding:0 15px;
}
.topbar-actions {
  display:flex;
  align-items:center;
  gap:18px;
}
.topbar-actions form {
  margin:0;
}
.avatar {
  display:grid;
  place-items:center;
  background:#e6ecf1;
  color:#425565;
  border:3px solid #f5f7f8;
  border-radius:50%;
  width:35px;
  height:35px;
  font-size:12px;
  font-weight:650;
}
main {
  max-width:1550px;
  margin:0 auto;
  padding:35px 38px 20px;
  min-width:0;
}
h1 {
  font-size:30px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:-1.05px;
  margin:0 0 8px;
}
h2 {
  font-size:16px;
  font-weight:650;
  letter-spacing:-.25px;
  margin:0;
}
h3 {
  font-size:16px;
  font-weight:600;
}
.eyebrow {
  font-size:9px;
  letter-spacing:1.8px;
  font-weight:650;
  color:#5e788e;
  margin:0 0 10px;
}
.page-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:28px;
}
.page-subtitle {
  font-size:12px;
  color:var(--muted);
  margin:0;
}
.subtle-dot {
  padding:0 6px;
  color:#a1acb6;
}
.btn {
  font-size:11px;
  font-weight:600;
  padding:11px 16px;
  border-radius:7px;
  display:inline-flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}
.btn-primary {
  --bs-btn-bg:#0b67bd;
  --bs-btn-border-color:#0b67bd;
  --bs-btn-hover-bg:#0c3457;
  --bs-btn-hover-border-color:#0c3457;
  --bs-btn-active-bg:#0c3457;
  --bs-btn-active-border-color:#0c3457;
  box-shadow:0 3px 7px #0f355610;
}
.btn-outline-secondary {
  --bs-btn-color:#435768;
  --bs-btn-border-color:#d8dfe5;
  --bs-btn-hover-color:#1e364b;
  --bs-btn-hover-bg:#ecf1f5;
  --bs-btn-hover-border-color:#bec8d0;
}
.status-pill {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:6px;
  background:#e6edf4;
  color:#2e5476;
  font-size:10px;
  font-weight:550;
  line-height:1.6;
  white-space:nowrap;
}
.neutral-pill,.muted-pill {
  background:#f0f2f3;
  color:#68737d;
  border:1px solid #e5e8ea;
}
.amber-pill {
  background:#fef3e1;
  color:#986a2c;
}
.date-label {
  display:flex;
  gap:6px;
  align-items:center;
  color:#7b858d;
  font-size:10px;
}
.account-banner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border:1px solid #dae3ea;
  border-radius:11px;
  background:linear-gradient(110deg,#e9eff5,#f2f5f8);
  padding:22px 25px;
  margin-bottom:30px;
}
.account-identity {
  display:flex;
  gap:14px;
  align-items:center;
}
.account-icon {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  background:#d4e0ea;
  border:1px solid #c8d6e3;
  border-radius:12px;
  color:#34597a;
}
.overline {
  display:block;
  font-size:8px;
  font-weight:600;
  letter-spacing:1.4px;
  color:#596f82;
  margin-bottom:3px;
}
.account-identity strong {
  font-size:16px;
  font-weight:650;
}
.account-item>span {
  display:block;
  font-size:10px;
  color:#76828c;
  margin-bottom:4px;
}
.account-item>strong {
  font-size:12px;
  font-weight:600;
}
.account-banner>a {
  font-size:10px;
  font-weight:600;
  display:flex;
  align-items:center;
  gap:8px;
}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
}
.section-heading>svg {
  color:#8a99a7;
}
.section-heading h2+p {
  margin-top:4px;
}
.metric-card {
  background:white;
  border:1px solid var(--line);
  border-radius:11px;
  padding:20px 22px;
  box-shadow:0 3px 6px #152c4002;
  height:100%;
}
.metric-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-size:11px;
  font-weight:550;
  color:#637482;
}
.metric-icon {
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:9px;
  background:#edf2f6;
  color:#3f688c;
}
.amber-icon {
  background:#fdf5e8;
  color:#bd9553;
}
.metric-value {
  display:block;
  font-size:33px;
  line-height:1.2;
  letter-spacing:-1.5px;
  font-weight:650;
  margin:17px 0 8px;
}
.metric-caption {
  font-size:10px;
  color:#808a93;
}
.card {
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:24px;
  box-shadow:0 3px 7px #112a4002;
  color:var(--ink);
  margin-bottom:0;
}
.muted {
  color:var(--muted);
  font-size:11px;
}
.activity-card {
  min-height:288px;
}
.activity-chart {
  margin-top:15px;
}
.activity-chart svg {
  width:100%;
  height:170px;
  overflow:visible;
}
.chart-grid {
  stroke:#eaedf0;
  stroke-width:1;
  stroke-dasharray:4 5;
  fill:none;
}
.chart-area {
  fill:#e2eaf1;
}
.chart-line {
  stroke:#3f698d;
  stroke-width:2.5;
  fill:none;
  stroke-linejoin:round;
  stroke-linecap:round;
}
.chart-labels {
  display:flex;
  justify-content:space-between;
  font-size:9px;
  color:#9aa4ac;
  margin-top:8px;
}
.usage-period+.usage-period {
  border-top:1px solid var(--line);
  margin-top:19px;
  padding-top:17px;
}
.usage-period-heading {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  font-size:11px;
  color:#647381;
}
.usage-period-heading small {
  font-size:9px;
  color:#99a3ab;
}
.usage-number {
  font-size:27px;
  font-weight:650;
  line-height:1.3;
  letter-spacing:-1px;
  margin:8px 0 3px;
}
.usage-number span {
  font-size:11px;
  letter-spacing:0;
  font-weight:400;
  color:#88929a;
}
.table-wrap {
  overflow:auto;
  max-width:100%;
}
.table {
  --bs-table-bg:transparent;
  --bs-table-color:#43515e;
  --bs-table-border-color:#edeff1;
  font-size:11px;
  margin:0;
}
.table thead th {
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.7px;
  color:#838e98;
  font-weight:600;
  background:#f7f8f9;
  padding:13px 12px;
  border:0;
  white-space:nowrap;
}
.table thead th:first-child {
  border-radius:6px 0 0 6px;
}
.table thead th:last-child {
  border-radius:0 6px 6px 0;
}
.table tbody td,.table tbody th {
  padding:18px 12px;
  vertical-align:top;
}
.table tbody tr:last-child td,.table tbody tr:last-child th {
  border-bottom:0;
}
.table tbody tr:hover {
  background:#f9fbfc;
}
.caller-cell {
  min-width:175px;
}
.caller-cell strong {
  display:block;
  font-size:11px;
  font-weight:550;
  letter-spacing:.1px;
}
.caller-cell small {
  display:block;
  font-size:9px;
  color:#949da4;
  margin-top:4px;
}
.duration-cell {
  min-width:95px;
}
.call-summary {
  min-width:210px;
  max-width:460px;
  font-size:11px;
  line-height:1.65;
}
.follow-up {
  display:block;
  color:#a17c3f;
  font-size:9px;
  margin-top:5px;
}
.text-link {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:10px;
  font-weight:600;
}
.empty-state {
  text-align:center;
  padding:35px 20px;
  color:#737e88;
}
.empty-symbol {
  width:55px;
  height:55px;
  display:grid;
  place-items:center;
  margin:0 auto 15px;
  background:#eff2f5;
  border-radius:16px;
  color:#678095;
}
.empty-state p {
  font-size:12px;
  margin-bottom:0;
}
.empty {
  color:#75838f;
  padding:32px 0;
  text-align:center;
}
.daily-details summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  cursor:pointer;
  list-style:none;
}
.daily-details summary::-webkit-details-marker {
  display:none;
}
.daily-details summary>span:first-child {
  display:flex;
  align-items:center;
  gap:12px;
  font-size:13px;
  font-weight:600;
}
.daily-details summary>span:first-child svg {
  color:#6e889e;
}
.report-note {
  font-size:9px;
  color:#909aa2;
  display:flex;
  align-items:center;
  gap:6px;
  margin:17px 0 0;
}
.page-footer {
  max-width:1550px;
  padding:25px 38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#8c97a0;
  font-size:9px;
  margin:0 auto;
}
.page-footer a {
  font-size:10px;
  color:#6d7e8c;
}
.notice {
  background:#edf2f6;
  color:#435a6e;
  border:1px solid #d6e0e8;
  border-left:3px solid #62809b;
  border-radius:8px;
  padding:14px 18px;
  font-size:12px;
}
.filter-card {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:24px;
}
.date-filters {
  display:flex;
  align-items:flex-end;
  gap:12px;
}
.form-label {
  font-size:11px;
  color:#627382;
  font-weight:550;
  margin-bottom:6px;
}
.date-filters label {
  margin:0;
}
.date-filters input {
  font-size:11px;
  width:156px;
  margin-top:7px;
  padding:10px 12px;
}
.form-control {
  font-size:12px;
  line-height:1.6;
  border-color:#dbe1e7;
  border-radius:7px;
  color:#364a5b;
  padding:11px 12px;
}
.pagination-row {
  display:flex;
  justify-content:flex-end;
  margin:20px 0;
}
.profile-tabs {
  display:flex;
  flex-wrap:wrap;
  gap:5px 24px;
  border-bottom:1px solid var(--line);
  margin:0 0 24px;
  padding-bottom:14px;
}
.profile-tabs a {
  font-size:11px;
  font-weight:550;
  color:#707f8d;
  padding:4px 0;
}
.profile-tabs a:hover {
  color:#164976;
}
.profile-section {
  margin-bottom:22px;
  scroll-margin-top:20px;
}
.section-number {
  font-size:9px;
  letter-spacing:1px;
  color:#a0adb8;
  display:block;
  margin-bottom:7px;
}
.profile-section .section-heading {
  padding-bottom:20px;
  border-bottom:1px solid #eff1f3;
  margin-bottom:22px;
}
.profile-field dt {
  display:flex;
  align-items:center;
  gap:6px;
  font-size:10px;
  font-weight:500;
  color:#7f8c98;
  margin-bottom:6px;
}
.profile-field dd {
  font-size:12px;
  font-weight:450;
  color:#334453;
  margin-bottom:0;
  line-height:1.75;
}
.read-value {
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.long-value {
  font-size:12px;
  line-height:1.85!important;
}
.profile-side-panel {
  position:sticky;
  top:24px;
}
.profile-side-panel>.card {
  margin-bottom:22px;
}
.setup-card {
  background:linear-gradient(130deg,#e9eff4,#f3f6f9);
  border-color:#d8e1e9;
}
.panel-icon {
  display:grid;
  place-items:center;
  width:43px;
  height:43px;
  border-radius:12px;
  background:#dde5ec;
  color:#60778c;
}
.setup-details {
  margin:23px 0;
}
.setup-details dt {
  font-size:10px;
  color:#7f8a94;
  font-weight:450;
  margin:14px 0 4px;
}
.setup-details dd {
  font-size:13px;
  font-weight:600;
  margin:0;
}
.history-card .panel-icon {
  background:#eff2f4;
  color:#7c8d9c;
}
.history-card h2 {
  margin-bottom:12px;
}
.history-boundary {
  display:flex;
  align-items:flex-start;
  gap:8px;
  color:#7e8b97;
  border-top:1px solid #eaeff3;
  padding-top:16px;
  margin:18px 0 0;
  font-size:10px;
  line-height:1.7;
}
.history-boundary svg {
  margin-top:2px;
}
.knowledge-details {
  margin-top:20px;
  border-top:1px solid var(--line);
  padding-top:20px;
}
.knowledge-details summary {
  cursor:pointer;
  font-size:12px;
  font-weight:550;
}
.knowledge-details summary>span {
  float:right;
  font-size:10px;
}
.knowledge-details .long-value {
  max-height:560px;
  overflow:auto;
  background:#f4f7f9;
  padding:18px;
  border-radius:8px;
  font-size:11px;
}
.save-panel {
  position:sticky;
  bottom:14px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  padding:16px 20px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  box-shadow:0 5px 25px #132b4010;
}
.save-panel>span {
  font-size:11px;
  color:#6e808f;
}
.auth-shell .page-shell {
  margin:0;
}
.auth-shell main {
  max-width:600px;
  padding-top:50px;
}
.auth-brand {
  color:var(--blue);
}
.auth {
  padding:32px;
}
.auth h1 {
  font-size:25px;
}
.auth label {
  font-size:12px;
  display:block;
  margin-top:15px;
}
.auth input {
  display:block;
  width:100%;
  border:1px solid #dbe1e7;
  border-radius:7px;
  padding:11px 12px;
  margin-top:6px;
}
.auth button,.button,button:not([class]) {
  border:0;
  border-radius:7px;
  background:var(--blue);
  color:#fff;
  padding:11px 17px;
  font:600 12px var(--bs-body-font-family);
}
.auth button {
  width:100%;
  margin-top:20px;
}
.auth .links {
  display:flex;
  justify-content:space-between;
  gap:15px;
  font-size:11px;
  margin-top:18px;
}
.auth .eyebrow {
  margin-bottom:14px;
}
.auth p {
  font-size:12px;
  color:var(--muted);
}
@media(min-width:1500px) {
  .topbar {
    padding-left:48px;
    padding-right:48px;
  }
  main {
    padding-left:48px;
    padding-right:48px;
  }
  .metric-card {
    padding:24px;
  }
}
@media(max-width:1199px) {
  .sidebar {
    width:210px;
    padding-left:15px;
    padding-right:15px;
  }
  .page-shell {
    margin-left:210px;
  }
  .topbar {
    padding:0 26px;
  }
  main {
    padding:28px 26px;
  }
  .account-banner {
    gap:18px;
    padding:18px;
  }
  .account-banner>a {
    display:none;
  }
  .profile-side-panel {
    position:static;
  }
  .filter-card {
    align-items:flex-start;
    flex-direction:column;
  }
  .date-filters {
    width:100%;
  }
  .date-filters label {
    flex:1;
  }
  .date-filters input {
    width:100%;
  }
  .page-heading .btn {
    padding:10px 12px;
  }
  .card {
    padding:21px;
  }
  .metric-card {
    padding:18px;
  }
  .metric-top {
    font-size:10px;
  }
  .metric-icon {
    width:27px;
    height:27px;
  }
  .page-footer {
    padding:20px 26px;
  }
}
@media(max-width:767px) {
  .sidebar {
    position:static;
    width:auto;
    padding:20px 22px 12px;
  }
  .brand {
    font-size:23px;
  }
  .brand small {
    font-size:7px;
    margin-top:5px;
  }
  .brand-mark {
    width:34px;
    height:35px;
    font-size:30px;
    line-height:32px;
  }
  .brand-mark>span {
    width:5px;
    height:5px;
    bottom:6px;
    right:6px;
  }
  .nav-caption,.sidebar-bottom {
    display:none;
  }
  .workspace-nav {
    flex-direction:row;
    gap:5px;
    margin-top:22px;
    overflow-x:auto;
    padding-bottom:3px;
  }
  .workspace-nav a {
    font-size:10px;
    padding:10px;
    gap:7px;
  }
  .workspace-nav a svg {
    width:16px;
    height:16px;
  }
  .nav-dot {
    display:none;
  }
  .page-shell {
    margin:0;
  }
  .topbar {
    height:59px;
    padding:0 22px;
  }
  .workspace-label,.breadcrumb-divider {
    display:none;
  }
  .topbar strong {
    font-size:11px;
  }
  .topbar-actions {
    gap:10px;
  }
  .status-pill {
    font-size:9px;
  }
  .avatar {
    width:29px;
    height:29px;
    font-size:10px;
  }
  main {
    padding:26px 20px 10px;
  }
  .page-heading {
    align-items:flex-start;
    margin-bottom:23px;
    flex-wrap:wrap;
    gap:15px;
  }
  h1 {
    font-size:27px;
  }
  .eyebrow {
    font-size:8px;
    letter-spacing:1.4px;
  }
  .page-subtitle {
    font-size:11px;
    max-width:440px;
  }
  .page-heading>.btn {
    font-size:10px;
    padding:10px 12px;
  }
  .account-banner {
    padding:17px;
    gap:18px;
    flex-wrap:wrap;
    margin-bottom:24px;
  }
  .account-identity {
    flex-basis:100%;
    padding-bottom:14px;
    border-bottom:1px solid #d7dfe6;
    gap:12px;
  }
  .account-icon {
    width:37px;
    height:37px;
    border-radius:9px;
  }
  .account-item {
    flex:1;
  }
  .account-item>span {
    font-size:9px;
  }
  .account-item>strong {
    font-size:11px;
  }
  .section-heading {
    gap:9px;
    margin-bottom:17px;
  }
  .section-heading h2 {
    font-size:14px;
  }
  .date-label {
    font-size:9px;
  }
  .metric-top {
    font-size:10px;
  }
  .metric-value {
    font-size:29px;
    margin:15px 0 6px;
  }
  .metric-caption {
    font-size:9px;
  }
  .metric-card {
    padding:16px;
  }
  .card {
    padding:20px;
  }
  .activity-card {
    min-height:255px;
  }
  .activity-chart {
    margin-top:5px;
  }
  .activity-chart svg {
    height:145px;
  }
  .section-heading .text-link {
    font-size:9px;
  }
  .table thead th {
    font-size:8px;
    padding:11px 8px;
  }
  .table tbody td {
    padding:15px 8px;
  }
  .caller-cell {
    min-width:150px;
  }
  .daily-details summary {
    align-items:flex-start;
  }
  .daily-details summary>.muted {
    font-size:9px;
    max-width:85px;
    text-align:right;
  }
  .report-note {
    align-items:flex-start;
    line-height:1.8;
  }
  .report-note svg {
    margin-top:2px;
  }
  .page-footer {
    padding:20px;
    font-size:8px;
    gap:18px;
  }
  .page-footer a {
    font-size:9px;
  }
  .profile-tabs {
    gap:8px 18px;
  }
  .profile-tabs a {
    font-size:10px;
  }
  .profile-field dd {
    font-size:12px;
  }
  .profile-field dt {
    font-size:10px;
  }
  .date-filters {
    flex-wrap:wrap;
  }
  .date-filters input {
    font-size:10px;
    min-width:125px;
  }
  .date-filters .btn {
    font-size:10px;
  }
  .filter-card h2 {
    font-size:14px;
  }
  .save-panel {
    flex-wrap:wrap;
  }
  .knowledge-details summary>span {
    float:none;
    display:block;
    margin-top:4px;
  }
  .page-heading>.status-pill {
    margin-top:0;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    scroll-behavior:auto!important;
    transition:none!important;
  }
}
@media(max-width:767px) {
  .workspace-nav {
    display:grid;
    grid-template-columns:1fr 1fr 1.5fr;
    overflow:visible;
  }
  .workspace-nav a {
    white-space:normal;
    min-height:43px;
    padding:9px 8px;
    gap:6px;
    line-height:1.5;
  }
  .workspace-nav a svg {
    width:15px;
    height:15px;
  }
}

/* CallPlan branding: shared navy/blue palette, locally hosted original logo. */
.sidebar { background:linear-gradient(180deg,#0b2d52 0%,#071e3b 100%); }
.sidebar .brand { display:block; width:140px; margin-inline:auto; background:#fff; border:1px solid #d9e7f2; border-radius:14px; overflow:hidden; padding:0; }
.brand-logo { display:block; width:100%; height:auto; }
.sidebar .brand .brand-logo { height:88px; object-fit:contain; }
.sidebar .brand small { display:block; text-align:center; color:#35526d; font-size:9px; letter-spacing:1.5px; margin:0 0 8px; }
.sidebar .nav-caption { margin-top:26px; }
.auth-shell { background:radial-gradient(ellipse at top right,#dceeff 0%,#f6fbff 58%,#fff 100%); }
.auth-shell .topbar { height:106px; background:#fff; }
.auth-brand { display:block; width:112px; }
.auth-brand .brand-logo { height:74px; object-fit:contain; }
.auth.card { border-top:4px solid #0b67bd; box-shadow:0 18px 55px #0b2d5210; }
.auth .password-guidance { background:#edf6ff; border:1px solid #cfe4f5; border-radius:10px; padding:12px 14px; color:#35526d; font-size:12px; }
.auth .password-guidance strong { color:#0b2d52; }
.auth .account-capabilities { font-size:12px; color:#52667a; }
@media(max-width:767px) {
 .sidebar .brand { width:120px; margin-inline:0; }
 .sidebar .brand .brand-logo { height:74px; object-fit:contain; }
 .sidebar .brand small { margin-bottom:8px; font-size:8px; }
 .auth-shell .topbar { height:94px; }
 .auth-brand { width:108px; }
 .auth-brand .brand-logo { height:72px; }
}

/* Assigned agent phone number: visible account identity, never an editable field. */
.agent-number-panel {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:24px;
  margin-bottom:24px;
  border:1px solid #b8d7ef;
  border-left:5px solid #096bc5;
  border-radius:12px;
  background:#edf6ff;
}
.agent-number-identity { display:flex; align-items:center; gap:18px; min-width:0; }
.agent-number-icon { color:#096bc5; flex-shrink:0; }
.agent-number-panel h2 { margin:0 0 6px; font-size:14px; font-weight:650; color:#244762; }
.agent-number-value { margin:0; font-size:clamp(22px,3vw,32px); font-weight:750; color:#0b2d52; letter-spacing:.02em; overflow-wrap:anywhere; user-select:all; }
.agent-number-pending { font-size:22px; user-select:text; }
.agent-number-caption { margin:6px 0 0; font-size:12px; color:#445e73; }
.agent-number-lock { display:flex; align-items:center; gap:6px; flex-shrink:0; font-size:11px; color:#445e73; }
@media (max-width:767px) {
  .agent-number-panel { align-items:flex-start; flex-direction:column; padding:18px; gap:14px; }
  .agent-number-identity { gap:12px; }
}

/* Public account pages share the main site's brand and spacing. */
.auth-shell {
  background:radial-gradient(circle at 0 0,rgba(19,135,220,.09),transparent 28%),radial-gradient(circle at 100% 12%,rgba(11,45,82,.06),transparent 24%),linear-gradient(180deg,#fff,#f6fbff 48%,#fff);
  min-height:100vh;
}
.auth-shell .page-shell { min-height:100vh; display:flex; flex-direction:column; }
.auth-shell .topbar { height:auto; min-height:0; padding:28px 16px 0; justify-content:center; background:transparent; border:0; }
.auth-shell .topbar-actions { display:none; }
.auth-shell .auth-brand { width:168px; }
.auth-shell .auth-brand .brand-logo { width:168px; height:112px; object-fit:contain; }
.auth-shell main { width:min(calc(100% - 32px),560px); max-width:560px; margin:0 auto; padding:16px 0 48px; flex:1; }
.auth-shell .auth.card { padding:36px; border:1px solid #dce6ef; border-radius:20px; box-shadow:0 18px 50px rgba(10,45,82,.1); }
.auth-shell .auth h1 { color:#0b2d52; font-size:clamp(1.8rem,4vw,2.2rem); font-weight:800; line-height:1.12; letter-spacing:-.035em; margin:0 0 20px; }
.auth-shell .auth .eyebrow { align-self:flex-start; padding:7px 11px; border-radius:999px; background:#eaf6ff; color:#0b67bd; font-size:.76rem; font-weight:800; letter-spacing:.02em; }
.auth-shell .auth label { font-size:14px; font-weight:600; color:#0b2d52; }
.auth-shell .auth input { font-size:16px; font-weight:400; min-height:48px; border-radius:9px; }
.auth-shell .auth button { background:#0b2d52; min-height:48px; font-size:14px; border-radius:9px; }
.auth-shell .auth button:hover { background:#164777; }
.auth-shell .auth p { font-size:14px; }
.auth-shell .auth .links { justify-content:center; font-size:14px; margin-top:20px; }
.auth-shell .auth .links a { text-decoration:underline; text-underline-offset:3px; }
@media(max-width:560px) {
  .auth-shell .topbar { height:auto; padding-top:16px; }
  .auth-shell .auth-brand { width:120px; }
  .auth-shell .auth-brand .brand-logo { width:120px; height:80px; }
  .auth-shell main { padding:12px 0 32px; }
  .auth-shell .auth.card { padding:24px; }
}

#profile-save-status { border:2px solid #b54708; background:#fff4e5; color:#713b12; padding:16px; font-size:15px; }
#profile-save-feedback { color:#923b0b; font-size:14px; font-weight:650; margin:0; flex:1; }
[aria-invalid="true"] { border:2px solid #b42318!important; }
.save-panel { gap:16px; flex-wrap:wrap; }

.profile-helper h2 { font-size:19px; }
#helper-chat { max-height:280px; overflow:auto; background:#f6fbff; border:1px solid #dce6ef; border-radius:9px; padding:12px; margin-bottom:16px; }
#helper-chat p { white-space:pre-wrap; font-size:14px; }
.profile-helper { padding:24px; }

/* Match the public CallPlan site while keeping workspace chrome compact. */
:root{--ink:#102e49;--muted:#5b6f80;--blue:#0967d5;--page:#f5f8fb}
.sidebar .brand{width:108px;margin:0 auto 8px;border:0;border-radius:4px;box-shadow:none}
.sidebar .brand .brand-logo{height:72px;width:108px;object-fit:contain}
.sidebar .brand small{display:none}
.agent-number-panel{padding:16px 20px;background:#fff;border:1px solid #dbe4eb;border-radius:8px;gap:16px;box-shadow:none}
.agent-number-identity{gap:13px}
.agent-number-panel h2{font-size:13px;font-weight:500;margin:0 0 4px;color:var(--muted)}
.agent-number-value{font-size:23px;font-weight:600;letter-spacing:0;line-height:1.4}
.agent-number-pending{font-size:17px}.agent-number-caption{font-size:13px}
.agent-number-icon svg{width:21px;height:21px}.agent-number-lock{font-size:12px;color:var(--muted)}
.dashboard-help{padding:0;margin:0 0 22px;font-size:13px;color:var(--muted)}
.dashboard-help a{text-decoration:underline;text-underline-offset:3px}
.auth-shell{background:#f5f8fb}
.auth-shell .topbar{padding:7px max(24px,calc((100vw - 1132px)/2));background:#fff;border-bottom:1px solid #dbe4eb;justify-content:flex-start}
.auth-shell .auth-brand{width:114px}.auth-shell .auth-brand .brand-logo{width:114px;height:76px}
.auth-shell main{width:min(calc(100% - 32px),520px);padding:48px 0}
.auth-shell .auth.card{padding:36px;border:1px solid #dbe4eb;border-radius:12px;box-shadow:0 12px 40px -25px #102e492e}
.auth-shell .auth h1{font-size:29px;font-weight:600;line-height:1.25;letter-spacing:-.6px;margin-bottom:18px}
.auth-shell .auth .eyebrow{background:none;border:0;border-radius:0;padding:0;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}
.auth-shell .auth p{font-size:15px;line-height:1.75}
.auth-shell .auth input{border-radius:6px}.auth-shell .auth button{background:var(--blue);border-radius:7px;font-size:15px}
.auth-shell .auth button:hover{background:#084fa5}.auth-shell .auth .links{flex-wrap:wrap}
.auth-footer{text-align:center;font-size:13px;color:var(--muted);padding:0 20px 24px}.auth-footer a{margin:0 10px}
@media(max-width:767px){.sidebar .brand{width:90px;margin:0}.sidebar .brand .brand-logo{width:90px;height:60px}.agent-number-panel{padding:14px 16px;gap:10px}.agent-number-value{font-size:21px}.auth-shell main{padding:28px 0}.auth-shell .auth.card{padding:28px 24px}.auth-shell .auth h1{font-size:26px}.auth-shell .topbar{padding:6px 20px}.auth-shell .auth-brand,.auth-shell .auth-brand .brand-logo{width:93px}.auth-shell .auth-brand .brand-logo{height:62px}}

.sidebar-title{color:#fff;font-size:14px;font-weight:600;letter-spacing:.08em;margin:36px 12px 0}

.sidebar .sidebar-title + .nav-caption{margin-top:8px}
