@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

/* Runtime owner note:
   - Active runtime styles for dashboard shell/topbar/sidebar live in this file.
   - Legacy non-runtime styles kept only as backup: public/auth.css.backup.
*/
:root {
  --bg: #07090d;
  --panel: #11161d;
  --border: #2a2f38;
  --text: #f2f5fb;
  --muted: #a4adba;
  --auth-ui-font: "Inter", "SF Pro Display", "SF Pro Text", "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }

body.auth-page {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(620px 360px at 50% 40%, rgba(0, 0, 0, 0.045), transparent 72%),
    linear-gradient(180deg, #fff 0%, #fbfbfb 100%);
  color: #070707;
  font-family: var(--auth-ui-font);
  display: block;
  padding: 24px;
  color-scheme: light;
  overflow-x: hidden;
}

body.auth-page[data-page="login"] {
  margin: 0;
  padding: 0;
  background: #ffffff !important;
  height: 100vh;
  max-height: 100vh;
  width: 100vw;
  overflow: hidden;
  color: #000000;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

body.auth-page[data-page="login"]::before,
body.auth-page[data-page="login"]::after {
  display: none !important;
}

.vinty-login-split {
  display: flex;
  height: 100vh;
  max-height: 100vh;
  width: 100vw;
  overflow: hidden;
}

/* --- Left Pane --- */
.vinty-login-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(20px, 3.5vh, 40px) clamp(24px, 4vw, 56px);
  background: #ffffff;
  height: 100vh;
  max-height: 100vh;
  box-sizing: border-box;
  overflow-y: auto;
}

.vinty-login-left__header {
  margin-bottom: clamp(12px, 2vh, 24px);
}

.vinty-login-left__brand {
  font-size: clamp(22px, 3vh, 26px);
  font-weight: 800;
  color: #000000;
  text-decoration: none;
  letter-spacing: -0.04em;
  font-family: 'Inter', sans-serif;
}

.vinty-login-left__body {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 0;
}

.vinty-login-box {
  width: 100%;
  max-width: 380px;
  margin: 0 auto;
}

.vinty-login-intro {
  margin-bottom: clamp(16px, 2.5vh, 28px);
}

.vinty-login-title {
  font-size: clamp(28px, 3.8vh, 38px);
  font-weight: 800;
  color: #000000;
  letter-spacing: -0.03em;
  margin: 0 0 clamp(8px, 1.2vh, 14px) 0;
  line-height: 1.1;
}

.vinty-login-subtitle {
  font-size: clamp(13px, 1.8vh, 15px);
  line-height: 1.4;
  color: #555555;
  margin: 0;
  font-weight: 400;
}

/* --- Form Controls --- */
.vinty-form {
  display: flex;
  flex-direction: column;
  gap: clamp(12px, 2vh, 18px);
}

.vinty-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.vinty-label {
  font-size: 13.5px;
  font-weight: 500;
  color: #111111;
}

.vinty-input-wrap {
  position: relative;
  width: 100%;
}

.vinty-input {
  width: 100%;
  height: clamp(42px, 5.2vh, 46px);
  padding: 0 16px;
  font-size: 14px;
  color: #111111;
  background: #ffffff;
  border: 1.5px solid #e0e0e0;
  border-radius: 10px;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-sizing: border-box;
  font-family: inherit;
}

.vinty-input::placeholder {
  color: #9e9e9e;
}

.vinty-input:focus {
  border-color: #000000;
  box-shadow: 0 0 0 1px #000000;
}

.vinty-input-wrap--password .vinty-input {
  padding-right: 80px;
}

.vinty-password-toggle {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: #111111;
  font-size: 13.5px;
  font-weight: 500;
  cursor: pointer;
  padding: 4px 6px;
  border-radius: 4px;
  transition: opacity 0.2s ease;
}

.vinty-password-toggle:hover {
  opacity: 0.7;
}

/* Submit Button */
.vinty-submit-btn {
  width: 100%;
  height: clamp(44px, 5.5vh, 48px);
  background: #000000;
  color: #ffffff;
  border: none;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: transform 0.15s ease, background-color 0.2s ease, box-shadow 0.2s ease;
  margin-top: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
}

.vinty-submit-btn:hover {
  background: #1a1a1a;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
}

.vinty-submit-btn:active {
  transform: translateY(0);
}

.auth-msg {
  margin-top: 12px;
  font-size: 13.5px;
  text-align: center;
}

.auth-msg--error {
  color: #e53935;
}

.auth-msg--success {
  color: #43a047;
}

/* --- Left Footer --- */
.vinty-login-left__footer {
  margin-top: clamp(14px, 2vh, 24px);
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
}

.vinty-copyright {
  font-size: 12.5px;
  color: #757575;
  margin: 0;
}

.vinty-legal-links {
  display: flex;
  align-items: center;
  gap: 18px;
}

.vinty-legal-links a {
  font-size: 12.5px;
  color: #424242;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s ease;
}

.vinty-legal-links a:hover {
  color: #000000;
  text-decoration: underline;
}

/* --- Right Pane (Showcase) --- */
.vinty-login-right {
  flex: 1;
  height: 100vh;
  max-height: 100vh;
  position: relative;
  overflow: hidden;
  background: #000000;
  border-top-right-radius: 28px;
  border-bottom-right-radius: 28px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.vinty-showcase-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  border-top-right-radius: 28px;
  border-bottom-right-radius: 28px;
}

/* --- Responsive Media Queries --- */
@media (max-width: 960px) {
  body.auth-page[data-page="login"] {
    height: auto;
    max-height: none;
    overflow-y: auto;
  }

  .vinty-login-split {
    flex-direction: column;
    height: auto;
    max-height: none;
    overflow: visible;
  }

  .vinty-login-left {
    min-height: 100vh;
    height: auto;
    max-height: none;
    padding: 32px 24px;
  }

  .vinty-login-right {
    display: none;
  }
}

body.auth-page[data-page="login"] .vinty-login::before {
  content: "";
  position: fixed;
  top: 58%;
  left: 38%;
  z-index: 0;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(14, 165, 233, 0.2) 0%, rgba(99, 102, 241, 0.12) 100%);
  filter: blur(100px);
  opacity: 0.3;
  pointer-events: none;
  animation: vinty-login-aura-three 21s ease-in-out infinite alternate;
}

@keyframes vinty-login-aura-one {
  from { transform: translate3d(-22px, 8px, 0) scale(0.94); }
  to { transform: translate3d(34px, 28px, 0) scale(1.08); }
}

@keyframes vinty-login-aura-two {
  from { transform: translate3d(24px, -18px, 0) scale(1.04); }
  to { transform: translate3d(-30px, 24px, 0) scale(0.92); }
}

@keyframes vinty-login-aura-three {
  from { transform: translate3d(-16px, 18px, 0) scale(0.9); }
  to { transform: translate3d(20px, -22px, 0) scale(1.1); }
}

body.dashboard-page {
  --auth-ui-font: "Plus Jakarta Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-family: var(--auth-ui-font);
}

body.auth-page :where(
  h1, h2, h3, h4, h5, h6,
  p, span, small, strong, em,
  label, a, button,
  input, select, textarea,
  li, dt, dd, th, td
),
body.dashboard-page :where(
  h1, h2, h3, h4, h5, h6,
  p, span, small, strong, em,
  label, a, button,
  input, select, textarea,
  li, dt, dd, th, td
) {
  font-family: var(--auth-ui-font);
}

body.dashboard-page .dashboard-shell :where(
  h1, h2, h3, h4, h5, h6,
  p, span, small, strong, em,
  label, a, button,
  input, select, textarea,
  li, dt, dd, th, td
) {
  font-family: var(--auth-ui-font);
}

.auth-wrap {
  position: relative;
  z-index: 1;
  width: min(100%, 1440px);
  min-height: calc(100vh - 48px);
  margin: 0 auto;
}

.auth-shell {
  position: relative;
  width: min(100%, 542px);
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.86);
  border: 1px solid rgba(7, 7, 7, 0.035);
  border-radius: 50px;
  padding: 55px 52px 44px;
  box-shadow: 0 24px 70px rgba(10, 10, 10, 0.08);
  overflow: hidden;
  backdrop-filter: blur(18px);
}

.auth-shell::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 49px;
  border: 1px solid rgba(255, 255, 255, 0.82);
  pointer-events: none;
}

.vinty-login {
  position: relative;
  display: grid;
  grid-template-rows: auto auto auto 1fr auto auto;
  align-items: start;
  gap: 0;
}

.vinty-login__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 52px;
}

.vinty-login__brand {
  color: #050505;
  text-decoration: none;
  font-size: clamp(1.55rem, 3vw, 2.18rem);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.08em;
}

.vinty-login__version {
  color: #8f8f8f;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.vinty-login__intro {
  margin: clamp(20px, 6.8vh, 62px) auto 35px;
  text-align: center;
}

.auth-header {
  display: grid;
  gap: 0;
  margin-bottom: 22px;
  position: relative;
  z-index: 1;
  text-align: center;
}

.auth-brand {
  display: block;
  width: min(142px, 56%);
  max-width: 100%;
  margin: 0 auto 24px;
  filter: brightness(0) invert(1);
}

.auth-wrap h1 {
  margin: 0 0 10px;
  font-family: var(--auth-ui-font);
  font-size: clamp(2.45rem, 4.9vw, 4rem);
  text-transform: none;
  text-align: center;
  letter-spacing: -0.085em;
  color: #040404;
  font-weight: 900;
}

.auth-sub {
  margin: 0;
  color: #858585;
  font-size: clamp(1rem, 1.7vw, 1.18rem);
  line-height: 1.45;
  text-align: center;
  font-weight: 600;
}

.auth-access-badge {
  margin: 18px auto 0;
  width: fit-content;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #555;
  font-family: "SFMono-Regular", "Roboto Mono", "Menlo", monospace;
  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.auth-form {
  display: grid;
  gap: 23px;
  position: relative;
  z-index: 1;
}

.auth-oauth {
  display: grid;
  gap: 16px;
  margin: 0 0 20px;
  position: relative;
  z-index: 1;
}

.auth-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.auth-field { display: grid; gap: 10px; }

.auth-field label {
  font-family: var(--auth-ui-font);
  font-size: 0.86rem;
  line-height: 1;
  letter-spacing: -0.03em;
  text-transform: none;
  color: #777;
  font-weight: 800;
  padding-left: 5px;
}

.auth-field input,
.auth-field select {
  width: 100%;
  min-height: 64px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: #f2f2f4;
  color: #080808;
  padding: 17px 24px;
  font-size: 1rem;
  font-weight: 650;
  letter-spacing: 0;
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.auth-field input::placeholder {
  color: #bebec2;
  font-weight: 650;
}

.auth-field select {
  -webkit-appearance: none;
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(216, 222, 234, 0.9) 50%),
    linear-gradient(135deg, rgba(216, 222, 234, 0.9) 50%, transparent 50%);
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.auth-field input:focus,
.auth-field select:focus {
  outline: none;
  border-color: rgba(0, 0, 0, 0.42);
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.06);
  background: #fff;
}

.auth-password-wrap {
  position: relative;
}

.auth-password-wrap input {
  padding-right: 96px;
}

.auth-password-toggle {
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: #7c7c7c;
  border-radius: 999px;
  min-height: 30px;
  min-width: 78px;
  font-size: 0.76rem;
  font-weight: 800;
  cursor: pointer;
  transition: color 180ms ease, background-color 180ms ease;
}

.auth-password-toggle:hover {
  border-color: transparent;
  color: #000;
  background: rgba(0, 0, 0, 0.045);
}

.auth-password-toggle:focus-visible,
.btn-auth:focus-visible,
.auth-link:focus-visible,
.vinty-login__brand:focus-visible,
.vinty-login__footer a:focus-visible {
  outline: 2px solid rgba(0, 0, 0, 0.78);
  outline-offset: 4px;
}

.auth-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 11px;
}

.btn-auth {
  width: 100%;
  border: 1px solid #000;
  border-radius: 999px;
  background: #000;
  color: #fff;
  min-height: 68px;
  padding: 14px 22px;
  font-weight: 850;
  font-size: 1.16rem;
  letter-spacing: -0.04em;
  cursor: pointer;
  transition: opacity 180ms ease, transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.btn-auth:hover {
  opacity: 1;
  background: #181818;
  border-color: #181818;
}

.btn-auth:active {
  transform: translateY(1px);
}

.btn-auth:disabled { opacity: 0.6; cursor: not-allowed; }

.btn-auth.is-disabled,
.btn-auth:disabled {
  opacity: 0.5;
  box-shadow: none !important;
  transform: none !important;
  cursor: not-allowed;
}

.btn-auth--oauth {
  width: 100%;
  background: #000;
  border-color: #222;
  color: #a0a0a0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin: 0 auto;
  min-height: 46px;
  font-weight: 500;
}

.btn-auth--oauth:hover {
  border-color: #444;
  opacity: 1;
  box-shadow: none;
}

.btn-auth--oauth.is-disabled {
  background: #000;
  border-color: #222;
  color: #777;
}

.auth-oauth__icon {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1px solid #333;
  font-size: 0.74rem;
  font-weight: 700;
  color: #a0a0a0;
}

.badge-mono {
  color: #555;
  font-family: "SFMono-Regular", "Roboto Mono", "Menlo", monospace;
  font-size: 0.72em;
  letter-spacing: 0.04em;
}

.auth-divider {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  color: #444;
  font-size: 0.62rem;
  text-transform: uppercase;
  letter-spacing: 0.13em;
  font-weight: 700;
}

.auth-divider::before,
.auth-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #121212;
}

.auth-link {
  color: #8a8a8a;
  text-decoration: none;
  font-size: 0.86rem;
  text-underline-offset: 4px;
  transition: color 180ms ease;
}

.auth-link:hover {
  color: #000;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.auth-msg {
  margin: 14px 0 0;
  min-height: 1.25em;
  font-size: 0.86rem;
  color: #5c5c5c;
  font-weight: 750;
  position: relative;
  z-index: 1;
  text-align: center;
}

.auth-msg.is-error {
  color: #b4232e;
}

.auth-msg.is-success {
  color: #1e7a45;
}

.vinty-login__forgot {
  display: block;
  width: fit-content;
  margin: 18px auto 0;
  position: relative;
  z-index: 1;
  color: #8d8d8d;
  font-weight: 800;
}

.vinty-login__security {
  margin: 42px auto 0;
  display: grid;
  place-items: center;
  gap: 16px;
  color: #9a9a9a;
  text-align: center;
}

.vinty-login__security p {
  margin: 0;
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.vinty-login__rule {
  width: 55px;
  height: 1px;
  background: #e8e8e8;
}

.vinty-login__pills {
  display: flex;
  align-items: center;
  gap: 13px;
}

.vinty-login__pills span {
  display: block;
  width: 35px;
  height: 21px;
  border-radius: 999px;
  background: #efeff0;
}

.vinty-login__pills span:nth-child(2) {
  width: 57px;
}

.vinty-login__footer {
  align-self: end;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding-top: clamp(26px, 5vh, 56px);
  color: #8f8f8f;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.vinty-login__footer p {
  margin: 0;
}

.vinty-login__footer nav {
  display: flex;
  align-items: center;
  gap: clamp(14px, 2vw, 29px);
}

.vinty-login__footer a {
  color: #8a8a8a;
  text-underline-offset: 3px;
}

.vinty-login__footer a:hover {
  color: #050505;
}

.auth-switch {
  margin: 14px 0 0;
  color: #666;
  font-size: 0.84rem;
  text-align: center;
  position: relative;
  z-index: 1;
}

.auth-disabled-fieldset {
  border: 0;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 11px;
}

.auth-disabled-fieldset[disabled] .auth-field input,
.auth-disabled-fieldset[disabled] .auth-password-toggle {
  opacity: 0.82;
}

@media (max-width: 560px) {
  body.auth-page {
    padding: 18px;
  }

  .auth-wrap {
    width: 100%;
    min-height: calc(100vh - 36px);
  }

  .auth-shell {
    width: 100%;
    padding: 34px 22px 28px;
    border-radius: 34px;
  }

  .auth-shell::before {
    border-radius: 33px;
  }

  .auth-brand {
    width: min(128px, 54%);
    margin-bottom: 20px;
  }

  .auth-grid-2 {
    grid-template-columns: 1fr;
  }

  .auth-wrap h1 {
    font-size: clamp(2.25rem, 11vw, 3.05rem);
    letter-spacing: -0.08em;
  }

  .auth-sub {
    font-size: 1rem;
  }

  .vinty-login {
    grid-template-rows: auto auto auto 1fr auto auto;
  }

  .vinty-login__topbar {
    min-height: 42px;
  }

  .vinty-login__intro {
    margin: 34px auto 28px;
  }

  .auth-field input,
  .auth-field select,
  .btn-auth {
    min-height: 58px;
  }

  .btn-auth {
    font-size: 1.04rem;
  }

  .vinty-login__security {
    margin-top: 31px;
    gap: 13px;
  }

  .vinty-login__security p {
    font-size: 0.66rem;
    line-height: 1.65;
  }

  .vinty-login__footer {
    align-items: center;
    flex-direction: column-reverse;
    gap: 14px;
    text-align: center;
    padding-top: 34px;
  }

  .vinty-login__footer nav {
    flex-wrap: wrap;
    justify-content: center;
  }
}

/* Login UX refinement: keep all changes scoped to the login view. */
body.auth-page[data-page="login"] .vinty-login {
  grid-template-rows: auto 1fr auto !important;
  align-items: stretch !important;
}

body.auth-page[data-page="login"] .auth-shell {
  align-self: center !important;
  width: min(100%, 480px) !important;
  padding: 36px 40px 38px !important;
  border: 1px solid rgba(255, 255, 255, 0.8) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.75) !important;
  box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.05) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

body.auth-page[data-page="login"] .auth-shell::before {
  inset: 1px !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  border-radius: 23px !important;
}

body.auth-page[data-page="login"] .vinty-login__intro {
  display: grid !important;
  justify-items: center !important;
  gap: 0 !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
}

body.auth-page[data-page="login"] .vinty-login__badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 20px;
  padding: 6px 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.045);
  color: #64748b;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
}

body.auth-page[data-page="login"] .vinty-login__badge > span {
  color: #475569;
  font-size: 12px;
}

body.auth-page[data-page="login"] .auth-wrap h1,
body.auth-page[data-page="login"] #loginTitle {
  margin: 0 0 10px !important;
  font-size: clamp(2.25rem, 5vw, 3.25rem) !important;
  letter-spacing: -0.07em !important;
}

body.auth-page[data-page="login"] .auth-sub {
  color: #64748b !important;
  font-size: 0.98rem !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

body.auth-page[data-page="login"] .auth-form {
  gap: 20px !important;
}

body.auth-page[data-page="login"] .auth-field {
  gap: 8px !important;
}

body.auth-page[data-page="login"] .auth-field label {
  color: #475569 !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
}

body.auth-page[data-page="login"] .auth-field input {
  min-height: 52px !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  background: rgba(249, 250, 251, 0.82) !important;
  padding: 13px 16px !important;
  color: #0f172a !important;
  font-size: 0.94rem !important;
  font-weight: 400 !important;
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease !important;
}

body.auth-page[data-page="login"] .auth-field input::placeholder {
  color: #9ca3af !important;
  font-weight: 400 !important;
}

body.auth-page[data-page="login"] .auth-field input:focus {
  border-color: #111827 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(17, 24, 39, 0.06) !important;
  outline: none !important;
}

body.auth-page[data-page="login"] .auth-password-wrap input {
  padding-right: 76px !important;
}

body.auth-page[data-page="login"] .auth-password-toggle {
  right: 10px !important;
  color: #9ca3af !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  transition: color 180ms ease !important;
}

body.auth-page[data-page="login"] .auth-password-toggle:hover {
  color: #374151 !important;
}

body.auth-page[data-page="login"] .auth-actions {
  margin-top: 4px !important;
}

body.auth-page[data-page="login"] .btn-auth {
  min-height: 52px !important;
  border: 1px solid #000 !important;
  border-radius: 14px !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  transition: background-color 200ms ease, border-color 200ms ease, opacity 200ms ease, transform 200ms ease !important;
}

body.auth-page[data-page="login"] .btn-auth:hover {
  border-color: #1f2937 !important;
  background: #1f2937 !important;
  transform: translateY(-1px) !important;
}

body.auth-page[data-page="login"] .btn-auth:active {
  transform: scale(0.99) !important;
}

body.auth-page[data-page="login"] .btn-auth[disabled] {
  cursor: wait !important;
  opacity: 0.7 !important;
}

body.auth-page[data-page="login"] .btn-auth[disabled]::after {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-left: 8px;
  border: 2px solid rgba(255, 255, 255, 0.35);
  border-top-color: #fff;
  border-radius: 50%;
  content: "";
  vertical-align: -2px;
  animation: vinty-login-spinner 700ms linear infinite;
}

body.auth-page[data-page="login"] .vinty-login__footer {
  padding-top: 28px !important;
  color: #9ca3af !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

body.auth-page[data-page="login"] .vinty-login__footer a {
  color: #9ca3af !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: color 180ms ease !important;
}

body.auth-page[data-page="login"] .vinty-login__footer a:hover {
  color: #374151 !important;
}

@keyframes vinty-login-spinner {
  to { transform: rotate(360deg); }
}

@media (max-width: 560px) {
  body.auth-page[data-page="login"] .auth-shell {
    padding: 30px 22px 32px !important;
    border-radius: 20px !important;
  }

  body.auth-page[data-page="login"] .auth-shell::before {
    border-radius: 19px !important;
  }
}

.dashboard-panel {
  width: min(680px, 100%);
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 26px;
}

.dashboard-row {
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 12px;
  margin: 10px 0;
}

.dashboard-row .k { color: #aab4c4; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.76rem; }
.dashboard-row .v { color: #f4f7fd; font-weight: 600; }

.dashboard-page {
  margin: 0;
  height: 100vh;
  padding: 0;
  display: block;
  background: #000;
  overflow: hidden;
}

.dashboard-shell {
  position: fixed;
  inset: 0;
  height: 100vh;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  background: #fff;
  overflow: hidden;
}

.dashboard-sidebar {
  height: 100vh;
  background: #020304;
  color: #fff;
  padding: 24px 16px 20px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.dashboard-sidebar__brand {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 4px;
  padding: 8px 0 18px;
  font-size: 25px;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -0.04em;
  text-decoration: none;
  font-family: 'Inter', sans-serif;
}

.dashboard-sidebar__logo {
  width: min(203px, 100%);
  height: auto;
  display: block;
  filter: brightness(0) invert(1);
}

.dashboard-nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}

.dashboard-nav__group {
  display: grid;
  gap: 5px;
  border-radius: 12px;
}

.dashboard-nav__group-title {
  margin: 0;
  padding: 0 8px;
  border: 0;
  background: transparent;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.44);
  font-family: "Montserrat", sans-serif;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.dashboard-nav__group-title span:first-child {
  pointer-events: none;
}

.dashboard-nav__group-caret {
  width: 7px;
  height: 7px;
  border-right: 1.6px solid rgba(255, 255, 255, 0.52);
  border-bottom: 1.6px solid rgba(255, 255, 255, 0.52);
  transform: rotate(45deg);
  transition: transform 0.16s ease;
}

.dashboard-nav__group.is-collapsed .dashboard-nav__group-caret {
  transform: rotate(-45deg);
}

.dashboard-nav__group-items {
  display: grid;
  gap: 5px;
  overflow: hidden;
  padding-left: 10px;
  border-left: 1px solid rgba(255, 255, 255, 0.12);
}

.dashboard-nav__group.is-collapsed .dashboard-nav__group-items {
  display: none;
}

.dashboard-nav__item {
  width: 100%;
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, 0.88);
  text-align: left;
  border-radius: 10px;
  padding: 11px 14px;
  font-family: "Montserrat", sans-serif;
  font-size: 0.88rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.dashboard-nav__item-main {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.dashboard-nav__icon {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--dashboard-nav-icon-color, rgba(255, 255, 255, 0.9));
}

.dashboard-nav__icon svg {
  width: 14px;
  height: 14px;
  display: block;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dashboard-nav__count {
  min-width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.9);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
}

.dashboard-nav__count.is-unread {
  border-color: #c72c28;
  background: #e53935;
  color: #fff;
}

.dashboard-nav__item:hover {
  background: rgba(255, 255, 255, 0.08);
}

.dashboard-nav__item.is-active {
  background: #fff;
  color: #0b0f14;
}

.dashboard-nav__item.is-active .dashboard-nav__count {
  border-color: #d5deea;
  background: #eef3f9;
  color: #0b0f14;
}

.dashboard-sidebar__footer {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 14px;
}

.dashboard-sidebar__legal {
  margin: 6px 0 0;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: rgba(255, 255, 255, 0.52);
  font-size: 0.72rem;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

.dashboard-sidebar__legal-sep {
  opacity: 0.8;
}

.dashboard-sidebar__legal-link {
  color: inherit;
  text-decoration: none;
}

.dashboard-sidebar__legal-link:hover {
  color: rgba(255, 255, 255, 0.72);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dashboard-sideaction {
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, 0.66);
  text-align: left;
  font-family: "Montserrat", sans-serif;
  font-size: 0.84rem;
  font-weight: 600;
  padding: 8px 10px;
  cursor: pointer;
}

.dashboard-settings {
  position: relative;
}

.dashboard-settings__menu {
  position: absolute;
  left: 0;
  bottom: calc(100% + 10px);
  width: min(230px, 72vw);
  padding: 8px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(16, 20, 28, 0.96);
  display: grid;
  gap: 4px;
  z-index: 30;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}

.dashboard-settings__menu[hidden] {
  display: none !important;
}

.dashboard-settings__item {
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, 0.86);
  text-align: left;
  font-family: "Montserrat", sans-serif;
  font-size: 0.8rem;
  font-weight: 700;
  padding: 8px 10px;
  border-radius: 8px;
  cursor: pointer;
}

.dashboard-settings__item:hover,
.dashboard-settings__item.is-active {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

.dashboard-settings__label {
  margin: 4px 0 2px;
  padding: 0 10px;
  color: rgba(255, 255, 255, 0.56);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-settings__divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.1);
  margin: 4px 2px;
}

.dashboard-main {
  height: 100vh;
  background: #fff;
  display: flex;
  flex-direction: column;
  padding: 24px 30px 32px;
  overflow-y: auto;
}

.dashboard-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.dashboard-topbar__right {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.dashboard-topbar--provider {
  padding: 0;
  border-bottom: 1px solid var(--dash-border);
  margin-bottom: 0;
  justify-content: space-between;
}

.dashboard-topbar__providerInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
  min-height: 72px;
  gap: 24px;
  width: 100%;
}

.dashboard-topbar__providerNav {
  display: flex;
  align-items: center;
  gap: 28px;
  flex: 1 1 auto;
  min-width: 0;
}

.dashboard-topbar__providerLogoLink {
  display: inline-flex;
  align-items: baseline;
  justify-content: flex-start;
  text-decoration: none;
  gap: 4px;
  color: #ffffff;
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -0.04em;
  font-family: 'Inter', sans-serif;
  margin-right: 6px;
  flex-shrink: 0;
}

.dashboard-topbar__providerLogo {
  width: auto;
  height: auto;
  display: block;
  filter: brightness(0) invert(1);
}

.dashboard-topbar__providerLogoHub {
  font-size: 19px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.75);
  font-family: 'Plus Jakarta Sans', 'Montserrat', sans-serif;
  letter-spacing: -0.02em;
  text-transform: lowercase;
  line-height: 1;
}

.dashboard-topbar__providerLink {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: rgba(13, 20, 30, 0.78);
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 500;
}

.dashboard-topbar__providerLink svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}

.dashboard-topbar__providerLink:hover {
  color: #0c1118;
}

.dashboard-topbar__providerSearch {
  min-height: 40px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  background: #fff;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  width: clamp(360px, 48vw, 620px);
  max-width: 100%;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.dashboard-topbar__providerSearch svg {
  width: 15px;
  height: 15px;
  fill: #94a3b8;
  flex-shrink: 0;
}

.dashboard-topbar__providerSearchInput {
  width: 100%;
  border: 0;
  background: transparent;
  color: #0f172a;
  font: inherit;
  font-size: 0.84rem;
  outline: none;
}

.dashboard-topbar__providerSearchInput::placeholder {
  color: #94a3b8;
}

.dashboard-topbar__searchSuggest {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  z-index: 120;
  border: 1px solid rgba(12, 17, 24, 0.1);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(12, 17, 24, 0.14);
  overflow: hidden;
}

.dashboard-topbar__searchSuggest[hidden] {
  display: none !important;
}

.dashboard-topbar__searchSuggestInner {
  max-height: 320px;
  overflow-y: auto;
  padding: 8px;
  display: grid;
  gap: 8px;
}

.dashboard-topbar__searchSuggestGroup + .dashboard-topbar__searchSuggestGroup {
  padding-top: 8px;
  border-top: 1px solid rgba(12, 17, 24, 0.06);
}

.dashboard-topbar__searchSuggestTitle {
  margin: 0 4px 6px;
  color: #6b778c;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-topbar__searchSuggestList {
  display: grid;
  gap: 4px;
}

.dashboard-topbar__searchSuggestItem {
  width: 100%;
  border: 0;
  background: transparent;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 10px;
  padding: 8px 10px;
  text-decoration: none;
  color: #0f172a;
  text-align: left;
  cursor: pointer;
}

.dashboard-topbar__searchSuggestItem:hover,
.dashboard-topbar__searchSuggestItem:focus-visible {
  background: #f3f7ff;
  outline: none;
}

.dashboard-topbar__searchSuggestAvatar,
.dashboard-topbar__searchSuggestPin {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 28px;
}

.dashboard-topbar__searchSuggestAvatar {
  background: #0f172a;
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  overflow: hidden;
}

.dashboard-topbar__searchSuggestAvatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.dashboard-topbar__searchSuggestPin {
  background: #eef3fb;
  color: #3a4a62;
}

.dashboard-topbar__searchSuggestPin svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}

.dashboard-topbar__searchSuggestMeta {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.dashboard-topbar__searchSuggestMeta strong {
  color: #0f172a;
  font-size: 0.82rem;
  line-height: 1.25;
  font-weight: 700;
}

.dashboard-topbar__searchSuggestMeta small {
  color: #6b778c;
  font-size: 0.72rem;
  line-height: 1.25;
}

.dashboard-topbar__searchSuggestEmpty {
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px dashed rgba(148, 163, 184, 0.4);
  background: rgba(241, 245, 249, 0.75);
  color: #5b657d;
  font-size: 0.78rem;
  font-weight: 600;
}

.dashboard-topbar__quick {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 0 auto;
  width: auto;
}

.dashboard-topbar--provider .dashboard-topbar__right {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 0 0 auto;
  width: auto;
  justify-content: flex-end;
}

.dashboard-topbar--provider #dashboardUserboxMount {
  flex: 0 0 auto;
  width: auto;
}

.dashboard-topbar--provider .dashboard-userbox {
  flex: 0 0 auto;
  width: auto;
}

.dashboard-topbar__notifyWrap {
  position: relative;
}

.dashboard-topbar__iconBtn {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  border: 0;
  background: transparent;
  color: rgba(12, 17, 24, 0.74);
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.dashboard-topbar__iconBtn svg {
  width: 17px;
  height: 17px;
  fill: currentColor;
}

.dashboard-topbar__iconBtn:hover {
  background: transparent;
  border-color: transparent;
  color: rgba(12, 17, 24, 0.92);
}

.dashboard-topbar__iconBtn--hasBadge {
  position: relative;
}

.dashboard-topbar__badge {
  position: absolute;
  top: -4px;
  right: -5px;
  min-width: 17px;
  height: 17px;
  border-radius: 999px;
  background: #ef3d3d;
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  line-height: 17px;
  text-align: center;
  border: 1.5px solid #fff;
  box-shadow: 0 2px 4px rgba(12, 17, 24, 0.16);
  padding: 0 4px;
}

.dashboard-topbar__notifMenu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: min(420px, calc(100vw - 32px));
  background: #fff;
  border: 1px solid rgba(12, 17, 24, 0.1);
  border-radius: 16px;
  box-shadow: 0 18px 40px rgba(12, 17, 24, 0.14);
  padding: 10px;
  z-index: 70;
}

.dashboard-topbar__notifMenu[hidden] {
  display: none !important;
}

.dashboard-topbar__screenConfettiLayer {
  position: fixed;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 5000;
  --confetti-origin-x: 50vw;
  --confetti-origin-y: 86px;
}

.dashboard-topbar__screenConfetti {
  position: fixed;
  left: var(--confetti-origin-x);
  top: var(--confetti-origin-y);
  width: 7px;
  height: 11px;
  border-radius: 2px;
  background: var(--confetti-color, #ffd43b);
  opacity: 0;
  transform: translate(-50%, -50%) rotate(0deg);
}

.dashboard-topbar__screenConfettiLayer.is-active .dashboard-topbar__screenConfetti {
  animation: dashboardScreenConfettiBurst var(--confetti-duration, 1.6s) cubic-bezier(0.21, 0.82, 0.2, 1) var(--confetti-delay, 0s) forwards;
}

@keyframes dashboardScreenConfettiBurst {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(0deg) scale(0.8);
  }
  10% {
    opacity: 1;
    transform: translate(-50%, -50%) rotate(var(--confetti-rotate-a, 140deg)) scale(1);
  }
  30% {
    opacity: 1;
    transform:
      translate(
        calc(-50% + var(--confetti-burst-x, 0px)),
        calc(-50% + var(--confetti-burst-y, 0px))
      )
      rotate(var(--confetti-rotate-a, 180deg));
  }
  100% {
    opacity: 0;
    transform:
      translate(
        calc(-50% + var(--confetti-burst-x, 0px) + var(--confetti-fall-x, 0px)),
        calc(-50% + var(--confetti-fall-y, 460px))
      )
      rotate(var(--confetti-rotate-b, 460deg));
  }
}

.dashboard-topbar__notifCard {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  border-radius: 13px;
  border: 1px solid rgba(12, 17, 24, 0.08);
  background: #fff;
  box-shadow: 0 8px 18px rgba(12, 17, 24, 0.08);
  padding: 12px 13px;
}

.dashboard-topbar__notifEmpty {
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px dashed rgba(148, 163, 184, 0.38);
  background: rgba(241, 245, 249, 0.85);
  color: #5b657d;
  font-size: 12px;
  font-weight: 600;
}

.dashboard-topbar__notifAvatar {
  width: 54px;
  height: 54px;
  border-radius: 14px;
  background: #0b0f14;
  color: #fff;
  display: inline-grid;
  place-items: center;
  font-size: 1.22rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  overflow: hidden;
}

.dashboard-topbar__notifAvatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dashboard-topbar__notifAvatar.is-buyer {
  background: #121a2b;
}

.dashboard-topbar__notifAvatar.is-provider {
  background: #0f172a;
}

.dashboard-topbar__notifAvatar.is-system {
  background: #0b0f14;
}

.dashboard-topbar__notifBody {
  min-width: 0;
}

.dashboard-topbar__notifHead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.dashboard-topbar__notifHead h4 {
  margin: 0;
  font-size: 0.97rem;
  font-weight: 700;
  color: #101622;
}

.dashboard-topbar__notifHead time {
  color: rgba(12, 17, 24, 0.5);
  font-size: 0.73rem;
  font-weight: 600;
  white-space: nowrap;
}

.vinty-provider-application-link {
  margin-top: 26px;
  color: #777a83;
  font-size: 12px;
  line-height: 1.55;
  text-align: center;
}

.vinty-provider-application-link p {
  margin: 0;
}

.vinty-provider-application-link a {
  color: #111216;
  font-weight: 700;
  text-underline-offset: 3px;
}

.dashboard-topbar__notifBody p {
  margin: 6px 0 0;
  color: rgba(12, 17, 24, 0.66);
  font-size: 0.83rem;
  line-height: 1.42;
}

.dashboard-topbar__eyebrow {
  margin: 0 0 6px;
  color: #929bb0;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-topbar h1 {
  margin: 0;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(2rem, 3vw, 2.75rem);
  line-height: 0.96;
}

.dashboard-userbox {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
}

.dashboard-userbox__info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.dashboard-userbox__info span {
  color: #0b0f14;
  font-weight: 800;
}

.dashboard-userbox__info small {
  color: #7c8798;
  font-size: 0.8rem;
}

.dashboard-userbox__button {
  border: 0;
  background: transparent;
  border-radius: 999px;
  min-height: 48px;
  padding: 4px 0 4px 4px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  box-shadow: none;
}

.dashboard-avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0b0f14, #7b8494);
  display: inline-grid;
  place-items: center;
  color: #f5f8ff;
  font-size: 0.84rem;
  font-weight: 800;
  text-transform: uppercase;
}

.dashboard-avatar.has-image {
  color: transparent;
  background: #dfe6f2;
  overflow: hidden;
}

.dashboard-avatar__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}

.dashboard-userbox__chevron {
  color: #6a7280;
  font-size: 0.95rem;
}

.dashboard-user-menu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 180px;
  padding: 6px;
  border-radius: 12px;
  border: 1px solid var(--vly-border);
  background: var(--vly-surface-elevated);
  display: grid;
  gap: 4px;
  z-index: 45;
  box-shadow: var(--vly-shadow-md);
}

.dashboard-user-menu[hidden] {
  display: none !important;
}

.dashboard-user-menu__item {
  border: 0;
  background: transparent;
  color: var(--vly-text-primary);
  text-align: left;
  font: inherit;
  font-size: 0.87rem;
  font-weight: 600;
  border-radius: 8px;
  padding: 9px 10px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: 100%;
}

.dashboard-user-menu__item-icon {
  width: 16px;
  height: 16px;
  color: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 16px;
}

.dashboard-user-menu__item-icon svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

.dashboard-user-menu__item-label {
  min-width: 0;
}

.dashboard-user-menu__item:hover {
  background: color-mix(in srgb, var(--vly-accent) 10%, transparent);
}

.dashboard-user-menu__contexts {
  display: grid;
  gap: 8px;
  padding: 4px 4px 2px;
}

.dashboard-user-menu__contexts-title {
  margin: 0;
  color: var(--vly-text-secondary);
  font-size: 0.72rem;
  font-weight: 600;
}

.dashboard-user-menu__contexts-list {
  display: grid;
  gap: 4px;
}

.dashboard-user-menu__context-item {
  border: 1px solid var(--vly-border-soft);
  border-radius: 8px;
  background: var(--vly-surface);
  color: var(--vly-text-primary);
  text-align: left;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 500;
  padding: 7px 9px;
  cursor: pointer;
  width: 100%;
  display: inline-flex;
  align-items: center;
  gap: 9px;
}

.dashboard-user-menu__context-avatar {
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: var(--vly-accent);
  color: var(--vly-accent-contrast);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 30px;
  font-size: 0.68rem;
  font-weight: 700;
  overflow: hidden;
}

.dashboard-user-menu__context-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dashboard-user-menu__context-meta {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.dashboard-user-menu__context-name {
  color: var(--vly-text-primary);
  font-size: 0.82rem;
  line-height: 1.2;
  font-weight: 700;
}

.dashboard-user-menu__context-subcopy {
  color: var(--vly-text-secondary);
  font-size: 0.74rem;
  line-height: 1.2;
}

.dashboard-user-menu__context-item:hover {
  background: color-mix(in srgb, var(--vly-accent) 12%, transparent);
}

.dashboard-user-menu__context-item.is-active {
  background: color-mix(in srgb, var(--vly-accent) 18%, transparent);
  border-color: color-mix(in srgb, var(--vly-accent) 46%, var(--vly-border));
}

.dashboard-user-menu__divider {
  height: 1px;
  background: var(--vly-border-soft);
  margin: 4px 2px;
}

.dashboard-preferences {
  position: fixed;
  inset: 0;
  z-index: 3400;
}

.dashboard-preferences[hidden] {
  display: none !important;
}

.dashboard-preferences__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 15, 24, 0.48);
  backdrop-filter: blur(3px);
}

.dashboard-preferences__dialog {
  position: relative;
  width: min(900px, calc(100vw - 48px));
  max-height: calc(100vh - 112px);
  margin: 32px auto;
  border-radius: 18px;
  border: 1px solid #dde4ef;
  background: #fff;
  box-shadow: 0 24px 64px rgba(12, 18, 30, 0.26);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.dashboard-preferences__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #e8edf5;
  padding: 14px 18px;
}

.dashboard-preferences__head h3 {
  margin: 0;
  color: #0e141d;
  font-size: 1.08rem;
  font-weight: 700;
}

.dashboard-preferences__head-main {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.dashboard-preferences__subtitle {
  margin: 0;
  color: #647087;
  font-size: 0.82rem;
  line-height: 1.35;
}

.dashboard-preferences__close {
  border: 1px solid #dbe2ee;
  background: #fff;
  color: #3b4452;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
}

.dashboard-preferences__body {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  min-height: 460px;
}

.dashboard-preferences__nav {
  border-right: 1px solid #e8edf5;
  background: #f8fafd;
  padding: 14px;
  display: grid;
  align-content: start;
  gap: 8px;
}

.dashboard-preferences__tab {
  border: 1px solid transparent;
  background: transparent;
  color: #445064;
  text-align: left;
  font: inherit;
  font-size: 0.86rem;
  font-weight: 600;
  border-radius: 10px;
  padding: 10px 12px;
  cursor: pointer;
}

.dashboard-preferences__tab:hover {
  background: #eef3fb;
}

.dashboard-preferences__tab.is-active {
  background: #fff;
  border-color: #d7e0ee;
  color: #101827;
}

.dashboard-preferences__content {
  padding: 18px 20px;
  overflow: auto;
}

.dashboard-preferences--modern-shell .dashboard-preferences__dialog {
  width: min(980px, calc(100vw - 56px));
  margin: clamp(56px, 8vh, 88px) auto 24px;
  border-color: #d6deea;
  box-shadow: 0 22px 48px rgba(12, 18, 30, 0.24);
}

.dashboard-preferences--modern-shell .dashboard-preferences__backdrop {
  background: rgba(8, 12, 20, 0.5);
  backdrop-filter: blur(5px);
}

.dashboard-preferences__panel h4 {
  margin: 0;
  color: #0f1724;
  font-size: 1.02rem;
  font-weight: 700;
}

.dashboard-preferences__panel p {
  margin: 8px 0 0;
  color: #5a6577;
  font-size: 0.88rem;
  line-height: 1.5;
}

.dashboard-settings-form {
  margin-top: 14px;
  display: grid;
  gap: 12px;
}

.dashboard-settings-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
}

.dashboard-settings-form__field {
  display: grid;
  gap: 6px;
}

.dashboard-settings-form__field span {
  color: #647087;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-settings-form__field input,
.dashboard-settings-form__field select,
.dashboard-settings-form__field textarea {
  width: 100%;
  min-height: 36px;
  border: 1px solid #d7dfeb;
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 0.84rem;
  color: #1a2536;
  background: #fff;
}

.dashboard-settings-form__field input[readonly] {
  background: #f6f8fc;
  color: #667187;
}

.dashboard-settings-form__field select {
  appearance: none;
}

.dashboard-settings-form__field--full {
  grid-column: 1 / -1;
}

.dashboard-settings-form__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.dashboard-settings-form__button {
  border: 1px solid #0f1623;
  background: #0f1623;
  color: #fff;
  border-radius: 10px;
  min-height: 35px;
  padding: 8px 12px;
  font-size: 0.8rem;
  font-weight: 700;
  cursor: pointer;
}

.dashboard-settings-form__button:hover {
  background: #1b2637;
  border-color: #1b2637;
}

.dashboard-settings-form__status {
  margin: 0;
  min-height: 18px;
  font-size: 0.8rem;
  font-weight: 600;
  color: #2f7f53;
}

.dashboard-settings-form__status.is-error {
  color: #b83a44;
}

.dashboard-settings-form__status.is-success {
  color: #2f7f53;
}

.dashboard-settings-info {
  margin-top: 14px;
  border: 1px solid #e3e9f2;
  border-radius: 12px;
  background: #f9fbff;
  padding: 12px;
}

.dashboard-settings-info__list {
  margin: 0;
  display: grid;
  gap: 8px;
}

.dashboard-settings-info__list div {
  display: grid;
  gap: 2px;
}

.dashboard-settings-info__list dt {
  color: #7a8599;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-settings-info__list dd {
  margin: 0;
  color: #182235;
  font-size: 0.86rem;
  font-weight: 600;
}

.dashboard-settings-info__note {
  margin: 10px 0 0;
  color: #647087;
  font-size: 0.8rem;
}

.dashboard-settings-info--muted h5 {
  margin: 0;
  color: #1a2332;
  font-size: 0.86rem;
  font-weight: 700;
}

.dashboard-settings-checks {
  margin-top: 14px;
  display: grid;
  gap: 10px;
}

.dashboard-settings-checks label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #253247;
  font-size: 0.84rem;
}

.dashboard-profile-photo {
  margin-top: 16px;
  border: 1px solid #e1e8f2;
  border-radius: 14px;
  background: #f9fbff;
  padding: 14px;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 14px;
}

.dashboard-profile-photo__preview-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.dashboard-profile-photo__preview {
  width: 74px;
  height: 74px;
  border-radius: 50%;
  border: 1px solid #d7deea;
  background: linear-gradient(135deg, #0b0f14, #7b8494);
  display: inline-grid;
  place-items: center;
  color: #f5f8ff;
  font-size: 1rem;
  font-weight: 800;
  text-transform: uppercase;
}

.dashboard-profile-photo__preview.has-image {
  color: transparent;
  background: #dfe6f2;
  overflow: hidden;
}

.dashboard-profile-photo__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}

.dashboard-profile-photo__content {
  display: grid;
  gap: 8px;
}

.dashboard-profile-photo__title {
  margin: 0;
  color: #111723;
  font-size: 0.9rem;
  font-weight: 700;
}

.dashboard-profile-photo__hint {
  margin: 0;
  color: #6a7486;
  font-size: 0.82rem;
}

.dashboard-profile-photo__button {
  width: fit-content;
  border: 1px solid #cfd8e6;
  background: #fff;
  color: #111723;
  border-radius: 10px;
  min-height: 36px;
  padding: 7px 12px;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
}

.dashboard-profile-photo__button:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.dashboard-profile-photo__status {
  margin: 0;
  min-height: 18px;
  color: #2f7f53;
  font-size: 0.8rem;
  font-weight: 600;
}

.dashboard-profile-photo__status.is-error {
  color: #b83a44;
}

.dashboard-profile-photo__status.is-success {
  color: #2f7f53;
}

.dashboard-profile-photo__status.is-loading {
  color: #6a7486;
}

.avatar-crop-modal {
  position: fixed;
  inset: 0;
  z-index: 150;
}

.avatar-crop-modal[hidden] {
  display: none !important;
}

.avatar-crop-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 15, 24, 0.58);
  backdrop-filter: blur(3px);
}

.avatar-crop-modal__dialog {
  position: relative;
  width: min(560px, calc(100vw - 40px));
  margin: 40px auto;
  border-radius: 18px;
  border: 1px solid #dde4ef;
  background: #fff;
  box-shadow: 0 24px 64px rgba(12, 18, 30, 0.26);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.avatar-crop-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #e8edf5;
  padding: 14px 18px;
}

.avatar-crop-modal__head h3 {
  margin: 0;
  color: #0e141d;
  font-size: 1.02rem;
  font-weight: 700;
}

.avatar-crop-modal__close {
  border: 1px solid #dbe2ee;
  background: #fff;
  color: #3b4452;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
}

.avatar-crop-modal__body {
  padding: 18px;
  display: grid;
  gap: 14px;
}

.avatar-crop-modal__viewport {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  max-width: 360px;
  margin: 0 auto;
  border-radius: 16px;
  background: #0f1520;
  overflow: hidden;
  user-select: none;
  touch-action: none;
  cursor: grab;
}

.avatar-crop-modal__viewport:active {
  cursor: grabbing;
}

.avatar-crop-modal__image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform-origin: center;
  max-width: none;
  max-height: none;
  will-change: transform;
  pointer-events: none;
}

.avatar-crop-modal__mask {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, transparent 0 38%, rgba(8, 12, 18, 0.58) 39%);
  pointer-events: none;
}

.avatar-crop-modal__ring {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 76%;
  height: 76%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 2px solid rgba(235, 243, 255, 0.88);
  box-shadow: 0 0 0 1px rgba(24, 32, 46, 0.25) inset;
  pointer-events: none;
}

.avatar-crop-modal__controls {
  display: grid;
  gap: 8px;
}

.avatar-crop-modal__controls label {
  color: #5a6577;
  font-size: 0.82rem;
  font-weight: 700;
}

.avatar-crop-modal__controls input[type="range"] {
  width: 100%;
}

.avatar-crop-modal__actions {
  border-top: 1px solid #e8edf5;
  padding: 12px 18px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.avatar-crop-modal__btn {
  min-height: 38px;
  border-radius: 10px;
  padding: 0 14px;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 700;
  cursor: pointer;
}

.avatar-crop-modal__btn--ghost {
  border: 1px solid #d0d9e8;
  background: #fff;
  color: #1b2433;
}

.avatar-crop-modal__btn--primary {
  border: 1px solid #131a24;
  background: #131a24;
  color: #fff;
}

.dashboard-preferences__lang {
  margin-top: 16px;
  border: 1px solid #e1e8f2;
  border-radius: 12px;
  background: #f9fbfe;
  padding: 12px;
}

.dashboard-preferences__label {
  margin: 0 0 8px;
  color: #657084;
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.dashboard-preferences__lang-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.dashboard-preferences__lang-btn {
  border: 1px solid #d6dfec;
  background: #fff;
  color: #1d2737;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 600;
  border-radius: 10px;
  padding: 8px 10px;
  cursor: pointer;
}

.dashboard-preferences__lang-btn.is-active {
  border-color: #0f1725;
  color: #0f1725;
}

.dashboard-preferences__badge {
  margin-top: 12px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid #dae2ef;
  background: #f5f8fd;
  color: #4e5a6f;
  font-size: 0.74rem;
  font-weight: 700;
  padding: 6px 10px;
}

body.dashboard-modal-open {
  overflow: hidden;
}

.dashboard-content {
  margin-top: 28px;
  display: grid;
  gap: 18px;
}

.dashboard-placeholder {
  background: #f7f9fc;
  border: 1px solid #e8edf4;
  border-radius: 22px;
  padding: 24px;
}

.dashboard-placeholder h2 {
  margin: 0 0 10px;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.5rem, 2vw, 2rem);
}

.dashboard-placeholder p {
  margin: 0;
  color: #6d7788;
  font-size: 0.98rem;
  line-height: 1.55;
}

.overview {
  display: grid;
  gap: 16px;
}

.overview__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.overview__header-main {
  min-width: 0;
  margin-top: 8px;
}

.overview__header h2 {
  margin: 0;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.6rem, 2.1vw, 2.2rem);
  font-weight: 700;
}

.overview__header p {
  margin: 6px 0 0;
  color: #687487;
  font-size: 0.9rem;
}

.overview__kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(158px, 1fr));
  gap: 10px;
  margin-top: 4px;
}

.overview-kpi {
  border: 1px solid #e4eaf3;
  border-radius: 14px;
  background: #fff;
  padding: 9px 12px;
  min-height: 72px;
}

.overview-kpi__label {
  margin: 0;
  color: #667184;
  font-size: 0.62rem;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.overview-kpi h3 {
  margin: 6px 0 0;
  color: #0f1622;
  font-size: 1.28rem;
  font-weight: 500;
  line-height: 1;
}

.overview-kpi small {
  display: block;
  margin-top: 4px;
  color: #8a95a7;
  font-size: 0.72rem;
}

body.dashboard-admin-overview .dashboard-topbar__meta {
  display: none;
}

body.dashboard-admin-overview .dashboard-topbar {
  justify-content: flex-end;
}

.overview__filters {
  position: relative;
}

.overview__filters--toolbar {
  border: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  margin-left: auto;
}

.overview-filter-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: nowrap;
}

.overview-filter-pills {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px;
  border-radius: 12px;
  background: #1d2331;
  border: 1px solid #2a3447;
}

.overview-filter-pill {
  border: 0;
  border-radius: 9px;
  min-height: 34px;
  padding: 0 12px;
  background: #1d2331;
  color: #afb9cb;
  font: inherit;
  font-size: 0.79rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease;
}

.overview-filter-pill:hover {
  background: #273148;
  color: #d8dfeb;
}

.overview-filter-pill.is-active {
  background: #364464;
  color: #f6f9ff;
}

.overview-filter-pill:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(124, 154, 217, 0.55);
}

.overview-filter-menu-wrap {
  position: relative;
}

.overview-filter-trigger {
  min-height: 42px;
  border-radius: 12px;
  border: 1px solid #d6dde8;
  background: #ffffff;
  color: #1b2434;
  font: inherit;
  font-size: 0.85rem;
  font-weight: 700;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.overview-filter-trigger:hover {
  background: #f8fbff;
  border-color: #c2ccda;
}

.overview-filter-trigger:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px rgba(89, 118, 177, 0.32);
}

.overview-filter-trigger svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.overview-filter-menu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: min(360px, calc(100vw - 36px));
  border-radius: 14px;
  border: 1px solid #e1e7f0;
  background: #ffffff;
  box-shadow: 0 18px 36px rgba(15, 26, 43, 0.18);
  padding: 14px;
  display: grid;
  gap: 11px;
  z-index: 30;
}

.overview-filter-menu[hidden] {
  display: none !important;
}

.overview-filter-menu label {
  display: grid;
  gap: 6px;
}

.overview-filter-menu span {
  color: #63718a;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.overview-filter-menu select {
  min-height: 40px;
  border: 1px solid #d6deea;
  border-radius: 10px;
  background: #fff;
  color: #172133;
  font: inherit;
  font-size: 0.83rem;
  padding: 0 11px;
}

.overview-filter-menu select:focus-visible {
  outline: none;
  border-color: #95a6c7;
  box-shadow: 0 0 0 2px rgba(115, 140, 188, 0.28);
}

.overview-filter-menu__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 2px;
}

.overview-filter-menu__actions button {
  min-height: 36px;
  border-radius: 10px;
  border: 1px solid #d7deea;
  background: #fff;
  color: #1a2434;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 0 11px;
  cursor: pointer;
}

.overview-filter-menu__actions button:last-child {
  background: #1f2a3d;
  border-color: #1f2a3d;
  color: #f6f9ff;
}

.overview-filter-menu__actions button:hover {
  background: #f3f7ff;
}

.overview-filter-menu__actions button:last-child:hover {
  background: #293854;
}

.overview__main,
.overview__bottom {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.overview__header-main,
.overview__kpis,
.overview__main,
.overview__bottom {
  transform: translateY(3px);
}

.overview-block {
  border: 1px solid #e4eaf3;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
}

.overview-block header h3 {
  margin: 0;
  color: #111927;
  font-size: 0.94rem;
  font-weight: 500;
}

.overview-block header p {
  margin: 6px 0 0;
  color: #718094;
  font-size: 0.8rem;
}

.overview-funnel {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.overview-funnel div {
  border: 1px solid #e8edf5;
  border-radius: 10px;
  background: #f9fbff;
  padding: 10px;
  display: grid;
  gap: 6px;
}

.overview-funnel span {
  color: #6d788b;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.overview-funnel strong {
  color: #0f1724;
  font-size: 1.2rem;
  font-weight: 700;
}

.overview-funnel__conversion {
  margin-top: 10px;
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.overview-funnel__conversion p {
  margin: 0;
  border: 1px solid #dde5f2;
  border-radius: 999px;
  background: #f7faff;
  color: #4f5d74;
  font-size: 0.78rem;
  font-weight: 600;
  padding: 6px 10px;
}

.overview-funnel__conversion strong {
  color: #0f1725;
  margin-left: 6px;
}

.overview-period {
  margin-top: 12px;
  min-height: 180px;
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
}

.overview-period__item {
  display: grid;
  gap: 6px;
  justify-items: center;
}

.overview-period__bar-wrap {
  width: 100%;
  height: 118px;
  border-radius: 8px;
  background: #f1f5fc;
  border: 1px solid #e3eaf6;
  display: flex;
  align-items: end;
  padding: 6px;
}

.overview-period__bar {
  display: block;
  width: 100%;
  border-radius: 6px;
  background: linear-gradient(180deg, #2d3d58 0%, #111a29 100%);
}

.overview-period__item small {
  color: #7a8598;
  font-size: 0.68rem;
}

.overview-period__item strong {
  color: #11192a;
  font-size: 0.78rem;
}

.overview-table {
  margin-top: 12px;
  border: 1px solid #e6ecf5;
  border-radius: 12px;
  overflow: hidden;
}

.overview-table__head,
.overview-table__row {
  display: grid;
  grid-template-columns: 1.4fr 0.7fr 0.7fr 0.7fr 1.1fr;
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
}

.overview-table__head {
  background: #f5f8fd;
  border-bottom: 1px solid #e3e9f4;
}

.overview-table__head span {
  color: #657186;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.overview-table__row {
  border-bottom: 1px solid #edf2f9;
}

.overview-table__row:last-child {
  border-bottom: 0;
}

.overview-table__row span {
  color: #1a2232;
  font-size: 0.82rem;
}

.overview-table--rejections {
  overflow-x: auto;
}

.overview-table--rejections .overview-table__head,
.overview-table--rejections .overview-table__row {
  grid-template-columns: 1.2fr 0.8fr 0.6fr 0.9fr 1fr 0.9fr 1.4fr 0.8fr;
  min-width: 980px;
}

.overview-table--rejections .overview-table__row span:nth-child(7) {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.overview-table--problematic {
  overflow-x: auto;
}

.overview-table--problematic .overview-table__head,
.overview-table--problematic .overview-table__row {
  grid-template-columns: 1.1fr 0.7fr 0.6fr 0.8fr 1fr 0.7fr 0.9fr 0.9fr 1.4fr;
  min-width: 1080px;
}

.overview-table--problematic .overview-table__row span:nth-child(9) {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.overview-recent {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.overview-recent__item {
  border: 1px solid #e7edf6;
  border-radius: 10px;
  background: #fafcff;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 9px;
}

.overview-recent__avatar {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid #d8e1ef;
  background: linear-gradient(160deg, #e7edf8 0%, #f6f9ff 100%);
  color: #36455f;
  font-size: 0.72rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  overflow: hidden;
}

.overview-recent__avatar.is-photo {
  background: #dde6f5;
  color: transparent;
}

.overview-recent__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.overview-recent__body {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.overview-recent__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.overview-recent__head strong {
  color: #101929;
  font-size: 0.79rem;
  font-weight: 600;
  line-height: 1.2;
}

.overview-recent__body p {
  margin: 0;
  color: #657287;
  font-size: 0.74rem;
  font-weight: 400;
  line-height: 1.35;
}

.overview-recent__head time {
  color: #6a7689;
  font-size: 0.7rem;
  white-space: nowrap;
}

.overview__bottom--single {
  grid-template-columns: minmax(0, 1fr);
}

.overview-empty {
  margin-top: 12px;
  border: 1px dashed #d7deeb;
  border-radius: 12px;
  background: #fbfcff;
  padding: 16px;
}

.overview-empty p {
  margin: 0;
  color: #748196;
  font-size: 0.82rem;
}

.dashboard-roles {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.dashboard-rolechip {
  border-radius: 999px;
  background: #eef2f8;
  color: #0b0f14;
  padding: 8px 12px;
  font-size: 0.84rem;
  font-weight: 700;
}

.dashboard-admin {
  background: #fff;
  border: 1px solid #e4e8ef;
  border-radius: 24px;
  padding: 26px;
  max-width: 760px;
}

.dashboard-admin__head {
  display: grid;
  gap: 6px;
  margin-bottom: 14px;
}

.dashboard-admin__head h2 {
  margin: 0;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.4rem, 1.9vw, 1.9rem);
  font-weight: 700;
}

.dashboard-admin__head p {
  margin: 0;
  color: #707b8d;
  font-size: 0.92rem;
  font-weight: 400;
}

.dashboard-admin__form {
  display: grid;
  gap: 16px;
}

.dashboard-admin__inline {
  display: flex;
  align-items: center;
  gap: 10px;
}

.dashboard-admin__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.dashboard-admin label {
  display: grid;
  gap: 8px;
  color: #1c2330;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dashboard-admin input {
  min-height: 50px;
  border: 1px solid #d8dfeb;
  border-radius: 14px;
  padding: 12px 14px;
  font-size: 1rem;
}

.dashboard-admin__checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.dashboard-admin__check {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  font-size: 0.95rem !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
}

.dashboard-admin__submit {
  width: fit-content;
  min-height: 46px;
  border: 1px solid #11161d;
  border-radius: 12px;
  background: #11161d;
  color: #fff;
  padding: 10px 18px;
  font-weight: 800;
  cursor: pointer;
}

.dashboard-admin__submit--secondary {
  border-color: #d8dfeb;
  background: #f8fafd;
  color: #11161d;
}

.dashboard-admin__submit--ghost {
  min-height: 34px;
  border-color: #dce5f4;
  background: #fff;
  color: #2c3e58;
  padding: 6px 12px;
  font-size: 0.8rem;
}

.dashboard-admin__hint {
  margin: -4px 0 0;
  color: #6f7a8a;
  font-size: 0.82rem;
}

.dashboard-admin__status {
  margin: 0;
  min-height: 20px;
  color: #1e7b4d;
  font-size: 0.86rem;
  font-weight: 700;
}

.dashboard-admin__status.is-error {
  color: #bb2d3b;
}

.dashboard-admin--requests {
  max-width: 1120px;
}

.dashboard-admin--billing {
  max-width: 1240px;
}

.admin-billing__filters {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.admin-billing__filters label {
  display: grid;
  gap: 6px;
  color: #5f6c81;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.admin-billing__filters select,
.admin-billing__filters input {
  min-height: 38px;
  border: 1px solid #d8e0ed;
  border-radius: 10px;
  background: #fff;
  color: #1a2334;
  font: inherit;
  font-size: 0.82rem;
  padding: 0 10px;
}

.admin-billing__query {
  grid-column: span 1;
}

.admin-billing {
  display: grid;
  grid-template-columns: minmax(560px, 1fr) minmax(320px, 420px);
  gap: 14px;
}

.admin-billing__list-wrap {
  border: 1px solid #e3e9f2;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
}

.admin-billing__head-row,
.admin-billing__row {
  display: grid;
  grid-template-columns: 1fr 1.1fr .9fr .8fr .8fr .9fr;
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
}

.admin-billing__head-row {
  background: #f5f8fd;
  border-bottom: 1px solid #e3e9f4;
}

.admin-billing__head-row span {
  color: #657186;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.admin-billing__list {
  display: grid;
}

.admin-billing__row {
  border: 0;
  border-bottom: 1px solid #edf2f9;
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.admin-billing__row:hover {
  background: #f9fbff;
}

.admin-billing__row.is-active {
  background: #edf4ff;
}

.admin-billing__row:last-child {
  border-bottom: 0;
}

.admin-billing__row span {
  color: #1a2232;
  font-size: 0.8rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-billing__detail {
  min-width: 0;
}

.admin-billing__detail-card,
.admin-billing__detail-empty {
  border: 1px solid #e3e9f2;
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.admin-billing__detail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.admin-billing__detail-head h3,
.admin-billing__detail-empty h3 {
  margin: 0;
}

.admin-billing__empty {
  padding: 16px;
  color: #6d788b;
  font-size: 0.84rem;
}

.status-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  border-radius: 999px;
  padding: 0 10px;
  font-size: 0.72rem;
  font-weight: 700;
  border: 1px solid transparent;
  font-style: normal;
}

.status-chip--success {
  background: #eaf7ef;
  border-color: #bfe5ca;
  color: #21683b;
}

.status-chip--warning {
  background: #fff5e8;
  border-color: #f5d5aa;
  color: #8a5a18;
}

.status-chip--muted {
  background: #f2f4f8;
  border-color: #d6dde9;
  color: #5c677a;
}

.admin-seller-requests {
  display: grid;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  gap: 16px;
}

.admin-seller-requests__list {
  display: grid;
  gap: 10px;
  align-content: start;
}

.admin-seller-requests__item {
  text-align: left;
  border: 1px solid #e3e9f2;
  background: #f9fbff;
  border-radius: 14px;
  padding: 12px;
  display: grid;
  gap: 8px;
  cursor: pointer;
}

.admin-seller-requests__item.is-active {
  border-color: #9cb4db;
  background: #edf4ff;
}

.admin-seller-requests__item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.admin-seller-requests__item-meta {
  display: grid;
  gap: 3px;
  color: #657184;
  font-size: 0.8rem;
  font-weight: 500;
}

.admin-seller-requests__detail {
  min-width: 0;
}

.admin-seller-requests__detail-card,
.admin-seller-requests__empty {
  border: 1px solid #e3e9f2;
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.admin-seller-requests__detail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.admin-seller-requests__detail-head h3,
.admin-seller-requests__empty h3 {
  margin: 0;
}

.provider-panel {
  display: grid;
  gap: 14px;
}

.provider-subnav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.provider-subnav__item {
  appearance: none;
  border: 1px solid #d8e3f2;
  border-radius: 999px;
  background: #fff;
  color: #425774;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 7px 12px;
  cursor: pointer;
  transition: all 0.18s ease;
}

.provider-subnav__item:hover {
  border-color: #b7cce9;
  background: #f5f9ff;
}

.provider-subnav__item.is-active {
  border-color: #255ab8;
  background: #2d67ce;
  color: #fff;
}

.provider-panel__section {
  display: grid;
  gap: 12px;
}

.provider-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
}

.provider-summary-tile {
  border: 1px solid #dbe5f4;
  border-radius: 12px;
  background: #f8fbff;
  padding: 10px;
  display: grid;
  gap: 3px;
}

.provider-summary-tile h4 {
  margin: 0;
  color: #5d6f8a;
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.provider-summary-tile p {
  margin: 0;
  color: #132540;
  font-size: 0.98rem;
  font-weight: 800;
}

.provider-panel__head {
  border: 1px solid #e3e9f2;
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 6px;
}

.provider-panel__head h2 {
  margin: 0;
  color: #111927;
  font-size: 1.08rem;
  font-weight: 700;
}

.provider-panel__head p {
  margin: 0;
  color: #6d788b;
  font-size: 0.86rem;
}

.provider-panel__badge {
  display: inline-flex;
  width: fit-content;
  border: 1px solid #d8e0ed;
  border-radius: 999px;
  background: #f5f8fd;
  color: #4f5d74;
  font-size: 0.74rem;
  font-weight: 700;
  padding: 6px 10px;
}

.provider-panel__warning {
  margin: 2px 0 0;
  color: #8a5a18;
  font-size: 0.8rem;
  font-weight: 600;
}

.provider-panel__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.provider-orders-list {
  display: grid;
  gap: 10px;
}

.provider-order-card {
  border: 1px solid #dbe5f4;
  border-radius: 12px;
  background: #f9fbff;
  padding: 11px;
  display: grid;
  gap: 8px;
}

.provider-order-card--muted {
  background: #fff;
}

.provider-orders-list--assets {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.provider-asset-card {
  border: 1px solid #dbe5f4;
  border-radius: 12px;
  background: #fff;
  padding: 11px;
  display: grid;
  gap: 8px;
}

.provider-asset-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.provider-asset-card__identity {
  display: grid;
  gap: 2px;
}

.provider-asset-card__identity strong {
  color: #112038;
  font-size: 0.88rem;
}

.provider-asset-card__identity small {
  color: #6b7a90;
  font-size: 0.73rem;
  font-weight: 600;
}

.provider-order-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.provider-order-card__head h4 {
  margin: 0;
  color: #112038;
  font-size: 0.9rem;
}

.provider-order-card__summary {
  margin: 0;
  color: #51627d;
  font-size: 0.81rem;
}

.provider-order-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 10px;
  margin: 0;
}

.provider-order-card__meta div {
  display: grid;
  gap: 2px;
}

.provider-order-card__meta dt {
  color: #6b7a90;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.provider-order-card__meta dd {
  margin: 0;
  color: #1c2b44;
  font-size: 0.79rem;
}

.provider-order-card__details {
  display: grid;
  gap: 4px;
}

.provider-order-card__details p {
  margin: 0;
  color: #3f4f68;
  font-size: 0.77rem;
}

.provider-order-card__actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.provider-progress {
  display: grid;
  gap: 6px;
}

.provider-progress__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.provider-progress__meta span {
  color: #5b6d88;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.provider-progress__meta strong {
  color: #183453;
  font-size: 0.82rem;
}

.provider-progress__track {
  position: relative;
  height: 8px;
  border-radius: 999px;
  background: #e8eef8;
  overflow: hidden;
}

.provider-progress__bar {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2f67d1, #39a1ff);
}

.provider-participants {
  display: grid;
  gap: 6px;
}

.provider-participants__label {
  color: #5b6d88;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.provider-participants__avatars {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.provider-participants__avatar {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid #d9e4f2;
  background: linear-gradient(135deg, #d8e4f7, #eef4ff);
  background-size: cover;
  background-position: center;
  color: #4c5d77;
  font-size: 0.7rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.provider-participants__more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 24px;
  min-width: 28px;
  padding: 0 8px;
  border-radius: 999px;
  border: 1px solid #d9e4f2;
  background: #f7faff;
  color: #476183;
  font-size: 0.72rem;
  font-weight: 700;
}

.provider-participants__empty {
  color: #6b7f99;
  font-size: 0.76rem;
}

.provider-participation-modal {
  position: fixed;
  inset: 0;
  z-index: 160;
  display: none;
}

.provider-participation-modal.is-open {
  display: block;
}

.provider-participation-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 17, 34, 0.48);
}

.provider-participation-modal__dialog {
  position: relative;
  width: min(560px, calc(100vw - 24px));
  margin: 6vh auto;
  border: 1px solid #dce6f3;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 26px 50px rgba(12, 26, 49, 0.25);
  overflow: hidden;
}

.provider-participation-modal__dialog--wide {
  width: min(860px, calc(100vw - 24px));
}

.provider-participation-modal__head,
.provider-participation-modal__foot {
  padding: 12px 14px;
  border-bottom: 1px solid #e6edf8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.provider-participation-modal__head h4 {
  margin: 0;
  color: #112038;
}

.provider-participation-modal__body {
  padding: 14px;
  display: grid;
  gap: 10px;
  max-height: min(78vh, 760px);
  overflow: auto;
}

.provider-participation-modal__foot {
  border-bottom: 0;
  border-top: 1px solid #e6edf8;
}

.provider-card {
  border: 1px solid #e3e9f2;
  border-radius: 16px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.provider-card--soft {
  border-style: dashed;
  background: #fbfdff;
}

.provider-card__head h3 {
  margin: 0;
  color: #111927;
  font-size: 0.98rem;
  font-weight: 700;
}

.provider-card__head--with-action {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.provider-form {
  display: grid;
  gap: 10px;
}

.provider-form h4 {
  margin: 0;
  color: #3f4c61;
  font-size: 0.8rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.provider-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.provider-form label {
  display: grid;
  gap: 6px;
  color: #5f6c81;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.provider-form input,
.provider-form select,
.provider-form textarea {
  min-height: 38px;
  border: 1px solid #d8e0ed;
  border-radius: 10px;
  background: #fff;
  color: #1a2334;
  font: inherit;
  font-size: 0.82rem;
  padding: 0 10px;
}

.provider-form textarea {
  min-height: 84px;
  padding: 8px 10px;
  resize: vertical;
}

.provider-form__field--full {
  grid-column: 1 / -1;
}

.provider-form__actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.provider-history {
  border-top: 1px solid #e8eef8;
  margin-top: 4px;
  padding-top: 10px;
  display: grid;
  gap: 8px;
}

.provider-history h5 {
  margin: 0;
  color: #243650;
  font-size: 0.8rem;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.provider-history__item {
  border: 1px solid #e2eaf6;
  border-radius: 10px;
  background: #fbfdff;
  padding: 10px;
  display: grid;
  gap: 5px;
}

.provider-history__item header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.provider-history__item header strong {
  color: #18263c;
  font-size: 0.82rem;
}

.provider-history__item header span {
  color: #617086;
  font-size: 0.72rem;
}

.provider-history__item p {
  margin: 0;
  color: #344660;
  font-size: 0.78rem;
}

.provider-member-access.is-hidden {
  display: none;
}

.provider-table {
  border: 1px solid #e6ecf5;
  border-radius: 12px;
  overflow: hidden;
}

.provider-table__head,
.provider-table__row {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr 0.8fr 0.8fr 0.8fr;
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
}

.provider-table__head--comp,
.provider-table__row--comp {
  grid-template-columns: 1fr 1.2fr 0.8fr 0.5fr 1fr;
}

.provider-table__head--ready,
.provider-table__row--ready {
  grid-template-columns: 1fr 0.7fr 0.8fr 0.9fr 2fr;
}

.provider-table__head--org-snapshot,
.provider-table__row--org-snapshot {
  grid-template-columns: 1.2fr 0.6fr 0.9fr 0.7fr;
}

.provider-table--compact .provider-table__head,
.provider-table--compact .provider-table__row {
  padding: 8px 9px;
}

.provider-table__head {
  background: #f5f8fd;
  border-bottom: 1px solid #e3e9f4;
}

.provider-table__head span {
  color: #657186;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.provider-table__row {
  border-bottom: 1px solid #edf2f9;
}

.provider-table__row--button {
  appearance: none;
  width: 100%;
  background: #fff;
  border: 0;
  text-align: left;
  cursor: pointer;
  transition: background 0.18s ease;
}

.provider-table__row--button:hover {
  background: #f7faff;
}

.provider-table__row:last-child {
  border-bottom: 0;
}

.provider-table__row span {
  color: #1a2232;
  font-size: 0.8rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.provider-empty {
  padding: 12px;
  color: #6d788b;
  font-size: 0.82rem;
}

.provider-empty--state {
  border: 1px dashed #cfd9e8;
  border-radius: 12px;
  background: #f8fbff;
}

.provider-summary {
  border: 1px solid #e3ebf8;
  border-radius: 12px;
  background: #f9fbff;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.provider-summary__identity {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: center;
}

.provider-summary__logo {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid #dbe4f2;
  background: linear-gradient(135deg, #d8e4f7, #eef4ff);
  background-size: cover;
  background-position: center;
  color: #4c5d77;
  font-size: 0.92rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.provider-summary__identity h4 {
  margin: 0;
  color: #112038;
  font-size: 0.92rem;
}

.provider-summary__identity p {
  margin: 4px 0 0;
  color: #5d6d86;
  font-size: 0.8rem;
}

.provider-summary__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  color: #324055;
  font-size: 0.78rem;
}

.provider-card--loading {
  border-style: dashed;
  background: #f7fbff;
  min-height: 72px;
  display: flex;
  align-items: center;
}

.provider-card--loading p {
  margin: 0;
  color: #567095;
  font-size: 0.82rem;
}

.provider-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid #c9d8ed;
  background: #eff5ff;
  color: #38557e;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  padding: 3px 7px;
  text-transform: lowercase;
}

.provider-pill--warn {
  border-color: #f0d7a8;
  background: #fff7e8;
  color: #8a6117;
}

.provider-readiness-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 6px;
  align-items: center;
}

.provider-readiness-actions select,
.provider-readiness-actions input {
  min-height: 32px;
  border: 1px solid #d8e0ed;
  border-radius: 8px;
  background: #fff;
  color: #1a2334;
  font-size: 0.76rem;
  padding: 0 8px;
}

.provider-readiness-reason {
  display: block;
  margin-top: 4px;
  color: #8a6117;
  font-size: 0.72rem;
}

.provider-table__head--pay,
.provider-table__row--pay {
  grid-template-columns: minmax(100px, 0.9fr) minmax(120px, 1fr) minmax(120px, 1fr) minmax(320px, 2.8fr);
}

.provider-payment-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  align-items: center;
  margin-bottom: 6px;
}

.provider-payment-form select,
.provider-payment-form input {
  min-height: 32px;
  border: 1px solid #d8e0ed;
  border-radius: 8px;
  background: #fff;
  color: #1a2334;
  font-size: 0.76rem;
  padding: 0 8px;
}

.provider-payment-form button {
  justify-self: end;
}

.provider-payment-history {
  display: grid;
  gap: 4px;
  margin-top: 6px;
}

.provider-payment-history p {
  margin: 0;
  color: #41516a;
  font-size: 0.73rem;
}

.provider-cell {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.provider-cell--title strong {
  font-weight: 700;
  color: #10203a;
}

.provider-media-avatar {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid #d3deee;
  background: linear-gradient(145deg, #dbe8fb, #f0f6ff);
  background-size: cover;
  background-position: center;
  color: #4b607f;
  font-size: 0.74rem;
  font-weight: 700;
  font-style: normal;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.provider-media-checkboxes {
  border: 1px solid #dce5f2;
  border-radius: 10px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 6px;
  max-height: 180px;
  overflow: auto;
}

.provider-media-check {
  display: flex !important;
  align-items: center;
  gap: 8px;
  text-transform: none !important;
  letter-spacing: normal !important;
  font-weight: 500 !important;
  font-size: 0.8rem !important;
  color: #23334d !important;
}

.provider-media-check input {
  min-height: auto;
  width: 14px;
  height: 14px;
  margin: 0;
}

.dashboard-msg {
  color: #856404;
}

.customers-panel {
  display: grid;
  gap: 18px;
}

.customers-panel__context {
  margin: 0;
  color: #6f7a8b;
  font-size: 0.84rem;
  font-weight: 400;
}

.customers-panel__context--private::before,
.customers-panel__context--shared::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  margin-right: 8px;
  vertical-align: middle;
  transform: translateY(-1px);
}

.customers-panel__context--private::before {
  background: #7d8aa1;
}

.customers-panel__context--shared::before {
  background: #4a76c9;
}

.customers-panel__actions {
  display: flex;
  justify-content: flex-end;
}

.customers-panel__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  background: #f7f9fc;
  border: 1px solid #e8edf4;
  border-radius: 24px;
  padding: 24px;
}

.customers-panel__eyebrow {
  margin: 0 0 8px;
  color: #8a93a4;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.customers-panel h2 {
  margin: 0;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.8rem, 2.4vw, 2.4rem);
}

.customers-panel__sub {
  margin: 10px 0 0;
  color: #697486;
  font-size: 0.98rem;
  line-height: 1.5;
  max-width: 520px;
}

.customers-panel__cta {
  border: 1px solid #11161d;
  background: #11161d;
  color: #fff;
  min-height: 48px;
  padding: 12px 18px;
  border-radius: 14px;
  font-weight: 800;
  cursor: pointer;
}

.customers-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.customers-empty-state,
.customer-card {
  border: 1px solid #e3e9f2;
  border-radius: 20px;
  background: #fff;
}

.customers-empty-state {
  padding: 28px 24px;
}

.customers-empty-state--request {
  gap: 14px;
}

.customers-request__status {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.customers-request__chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid #d5deea;
  background: #fff;
  color: #3a4557;
  font-size: 0.78rem;
  font-weight: 600;
}

.customers-request__chip.is-pending {
  border-color: #f3d9a6;
  background: #fff8ea;
  color: #8a5a00;
}

.customers-request__chip.is-approved {
  border-color: #b8e1c0;
  background: #edf9f0;
  color: #1f6a35;
}

.customers-request__chip.is-rejected {
  border-color: #f3c4c4;
  background: #fff2f2;
  color: #9e2f2f;
}

.customers-request__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.seller-request-form,
.seller-request-read {
  width: 100%;
}

.customers-empty-state h3 {
  margin: 0 0 8px;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: 1.65rem;
}

.customers-empty-state p {
  margin: 0;
  color: #697486;
  line-height: 1.6;
}

.customer-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 14px 12px;
  min-height: 334px;
  border-color: #dde5f1;
  background: #fff;
  box-shadow: 0 8px 20px rgba(11, 18, 30, 0.07), 0 1px 0 rgba(255, 255, 255, 0.7) inset;
  transition: transform 0.16s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.customer-card:hover {
  transform: translateY(-1px);
  border-color: #cfd9e8;
  box-shadow: 0 12px 28px rgba(11, 18, 30, 0.11), 0 1px 0 rgba(255, 255, 255, 0.76) inset;
}

.customer-card__head {
  display: grid;
  gap: 4px;
  min-height: 38px;
  padding-right: 34px;
}

.customer-card__menu {
  position: relative;
}

.customer-card__menu--top {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
}

.customer-card__menu-toggle {
  width: 24px;
  height: 24px;
  border: 1px solid #dbe3ef;
  border-radius: 7px;
  background: #fff;
  color: #4f5b6f;
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

.customer-card__menu-toggle:hover {
  background: #f2f6fc;
  border-color: #cfd8e7;
  color: #1f2a3d;
}

.customer-card__menu-panel {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  min-width: 220px;
  border: 1px solid #d9e1ee;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 22px rgba(9, 14, 23, 0.1);
  padding: 6px;
  display: none;
  z-index: 12;
}

.customer-card.is-menu-open .customer-card__menu-panel {
  display: grid;
  gap: 4px;
}

.customer-card__menu-item {
  border: 0;
  background: transparent;
  color: #111822;
  text-align: left;
  font-size: 0.79rem;
  font-weight: 600;
  border-radius: 8px;
  padding: 8px 10px;
  cursor: pointer;
}

.customer-card__menu-item:hover {
  background: #f2f5fa;
}

.customer-card__main {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  align-items: start;
  flex: 1 1 auto;
  min-height: 0;
}

.customer-card__meta-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.customer-card__title {
  margin: 0;
  color: #0f1623;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.06rem, 1.18vw, 1.36rem);
  line-height: 1.04;
  letter-spacing: -0.01em;
  font-weight: 700;
}

.customer-card__category {
  margin: 0;
  color: #7f8a9d;
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.customer-card__meta h3 {
  margin: 3px 0 0;
  color: #0f1623;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.06rem, 1.18vw, 1.36rem);
  line-height: 1.04;
  letter-spacing: -0.01em;
  font-weight: 700;
}

.customer-card__details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 12px;
  margin: 0;
  padding-top: 1px;
}

.customer-card__details dt {
  margin: 0 0 3px;
  color: #8c96a6;
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.customer-card__details dd {
  margin: 0;
  color: #263142;
  font-size: 0.8rem;
  font-weight: 500;
}

.customer-card__seller {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 100%;
}

.customer-card__seller-block {
  display: inline-grid;
  gap: 6px;
  justify-items: start;
  max-width: 100%;
}

.customer-card__seller-avatar {
  width: 20px;
  height: 20px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: linear-gradient(140deg, #2e3f5d, #6d7f9f);
  color: #f4f8ff;
  font-size: 0.62rem;
  font-weight: 700;
  flex-shrink: 0;
  overflow: hidden;
}

.customer-card__seller-avatar.has-image {
  background: #dbe4f1;
  color: transparent;
}

.customer-card__seller-avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: inherit;
}

.customer-card__seller-name {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.customer-card__origin-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid #d8dfeb;
  background: #fff;
  color: #4b5668;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.03em;
}

.customer-card__status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #5f6878;
  min-height: 22px;
  padding: 1px 8px;
  border-radius: 999px;
  border: 1px solid #d9e0ec;
  background: #f7f9fd;
  font-size: 0.68rem;
  font-weight: 600;
  white-space: nowrap;
}

.customer-card__status-dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #a1a9b5;
}

.customer-card__status--active {
  color: #2f7f51;
  background: #edf9f1;
  border-color: #cfead8;
}

.customer-card__status--active .customer-card__status-dot {
  background: #38b46d;
}

.customer-card__status--lead {
  color: #35598f;
  background: #edf3fd;
  border-color: #d2def5;
}

.customer-card__status--lead .customer-card__status-dot {
  background: #4f80d5;
}

.customer-card__status--created {
  color: #657084;
  background: #f2f5fa;
  border-color: #d9e0eb;
}

.customer-card__status--created .customer-card__status-dot {
  background: #9ca6b6;
}

.customer-card__status--pending {
  color: #916f20;
  background: #fcf6e9;
  border-color: #eedeb8;
}

.customer-card__status--pending .customer-card__status-dot {
  background: #d4a747;
}

.customer-card__status--service {
  color: #5f6878;
  background: #f3f5f9;
  border-color: #d9e0ec;
}

.customer-card__status--service .customer-card__status-dot {
  background: #a1a9b5;
}

.customer-card__status--marketing {
  color: #9a5f10;
  background: #fff5e9;
  border-color: #f1dcc0;
}

.customer-card__status--marketing .customer-card__status-dot {
  background: #e29b3a;
}

.customer-card__status--production {
  color: #166083;
  background: #eaf7ff;
  border-color: #cde5f7;
}

.customer-card__status--production .customer-card__status-dot {
  background: #2f9fd4;
}

.customer-card__status--rejected {
  color: #9b3f3f;
  background: #fbeff0;
  border-color: #eccfd1;
}

.customer-card__status--rejected .customer-card__status-dot {
  background: #d16565;
}

.customer-card__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  padding-top: 2px;
  margin-top: auto;
  align-content: end;
}

.records-filter-toolbar {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid #e2e8f3;
  border-radius: 12px;
  background: #f9fbff;
}

.records-filter-toolbar label {
  display: grid;
  gap: 5px;
}

.records-filter-toolbar label span {
  color: #69778f;
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.records-filter-toolbar select {
  width: 100%;
  min-height: 34px;
  border: 1px solid #d6deea;
  border-radius: 9px;
  padding: 6px 9px;
  background: #fff;
  color: #243049;
  font-size: 0.82rem;
  font-weight: 500;
}

.customer-card__button {
  min-height: 36px;
  padding: 6px 9px;
  border: 1px solid #ecf1f7;
  border-radius: 7px;
  background: #fff;
  color: #2f3b4e;
  font-size: 0.72rem;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;
  text-align: center;
}

.customer-card__button-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  margin-left: 6px;
  padding: 0 5px;
  border-radius: 999px;
  background: #c52f2f;
  color: #fff;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
}

.customer-card__button:hover {
  background: #f5f8fd;
  border-color: #c8d3e4;
}

.customer-card__button--danger {
  border-color: #ecd6d8;
  color: #a04a4a;
  background: #fffafb;
}

.customer-card__button--muted {
  border-color: #d8dfeb;
  background: #f4f7fb;
  color: #8a94a5;
}

.customer-card__button--muted:disabled {
  cursor: not-allowed;
  opacity: 0.92;
}

.customer-card__button--primary {
  border-color: #ecf1f7;
  background: #fff;
  color: #2f3b4e;
  font-weight: 600;
}

.customer-card__button--primary:hover {
  background: #f5f8fd;
  border-color: #dde5f1;
}

.customer-card--purchase .customer-card__actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.account-purchases-upload-drop {
  margin-top: 8px;
  border: 1px dashed #cfd8e6;
  border-radius: 12px;
  background: #fbfdff;
  min-height: 128px;
  display: grid;
  place-items: center;
  gap: 10px;
  padding: 14px;
  text-align: center;
}

.account-purchases-upload-drop p {
  margin: 0;
  color: #6d7a8f;
  font-size: 0.84rem;
  font-weight: 500;
}

.customer-field-warning {
  margin: 0;
  color: #ba3f3f;
  font-size: 0.84rem;
  font-weight: 700;
}

input[data-prospect-numeric="followers"] {
  font-size: 0.96rem;
  font-weight: 500;
  letter-spacing: 0.01em;
}

.customer-brief-modal {
  position: fixed;
  inset: 0;
  z-index: 130;
  display: none;
}

.customer-brief-modal.is-open {
  display: block;
}

.customer-brief-modal__dialog {
  position: relative;
  width: min(920px, calc(100vw - 48px));
  max-height: calc(100vh - 56px);
  margin: 28px auto;
  background: #fff;
  border-radius: 24px;
  border: 1px solid #e6ebf3;
  box-shadow: 0 24px 60px rgba(11, 15, 20, 0.22);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
}

.customer-brief-modal__body {
  padding: 20px 24px 24px;
  overflow-y: auto;
  display: grid;
  gap: 18px;
}

.customer-card__summary-group {
  display: grid;
  gap: 10px;
}

.customer-card__summary-group h4 {
  margin: 0;
  color: #0f141c;
  font-family: "League Spartan", sans-serif;
  font-size: 1.1rem;
}

.customer-card__summary-group dl {
  display: grid;
  gap: 10px;
  margin: 0;
}

.customer-card__summary-group dl div {
  display: grid;
  gap: 4px;
}

.customer-card__summary-group dt {
  color: #7c8798;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.customer-card__summary-group dd {
  margin: 0;
  color: #161d27;
  font-size: 0.96rem;
  line-height: 1.5;
  white-space: pre-wrap;
}

.customer-card__summary-group p {
  margin: 0;
  color: #6f7988;
  line-height: 1.5;
}

.customer-modal {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: none;
}

.customer-modal.is-open {
  display: block;
}

.customer-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3, 5, 8, 0.62);
}

.customer-modal__dialog {
  position: relative;
  width: min(960px, calc(100vw - 48px));
  max-height: calc(100vh - 56px);
  margin: 28px auto;
  background: #fff;
  border-radius: 24px;
  border: 1px solid #e6ebf3;
  box-shadow: 0 24px 60px rgba(11, 15, 20, 0.22);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
}

.customer-modal__header,
.customer-modal__footer {
  padding: 20px 24px;
  border-bottom: 1px solid #eef2f6;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.customer-modal__footer {
  border-top: 1px solid #eef2f6;
  border-bottom: 0;
}

.customer-modal__step {
  margin: 0 0 6px;
  color: #8a93a4;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.customer-modal__header h3 {
  margin: 0;
  color: #0b0f14;
  font-family: "League Spartan", sans-serif;
  font-size: clamp(1.7rem, 2.1vw, 2.1rem);
}

.customer-modal__close {
  width: 42px;
  height: 42px;
  border: 1px solid #dbe2ee;
  border-radius: 12px;
  background: #fff;
  color: #11161d;
  font-size: 1.35rem;
  cursor: pointer;
}

.customer-modal__body {
  padding: 0 24px 24px;
  overflow-y: auto;
}

.customer-step {
  display: none;
}

.customer-step--active {
  display: block;
}

.customer-type-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding-top: 20px;
}

.customer-type-card {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 62px;
  padding: 16px 18px;
  border: 1px solid #dde5ef;
  border-radius: 18px;
  background: #fafbfd;
  cursor: pointer;
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.customer-type-card:hover {
  border-color: #c4cfde;
  background: #f4f7fb;
  transform: translateY(-1px);
}

.customer-type-card input {
  width: 18px;
  height: 18px;
  margin: 0;
}

.customer-type-card span {
  color: #131923;
  font-weight: 700;
  line-height: 1.35;
}

.customer-brief {
  display: none;
  gap: 18px;
  padding-top: 20px;
}

.customer-brief--active-panel {
  display: grid;
}

.customer-brief__section {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid #e6ebf3;
  border-radius: 20px;
  background: #fbfcfe;
}

.customer-brief__section h3,
.customer-brief--empty h4 {
  margin: 0;
  color: #11161d;
  font-family: "League Spartan", sans-serif;
  font-size: 1.45rem;
}

.customer-brief__hint,
.customer-brief--empty p {
  margin: -4px 0 0;
  color: #7a8494;
  font-size: 0.92rem;
  line-height: 1.5;
}

.customer-brief__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.customer-brief__stack {
  display: grid;
  gap: 14px;
}

.visit-details-form {
  display: grid;
  gap: 18px;
  padding-top: 20px;
}

.visit-details-section {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #e4ebf5;
  border-radius: 14px;
  background: #fbfdff;
}

.visit-details-section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
  font-size: 1.05rem;
}

.visit-details-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
}

.visit-details-grid label,
.visit-details-stack label {
  display: grid;
  gap: 6px;
}

.visit-details-grid span,
.visit-details-stack span {
  color: #6f7a89;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.visit-details-grid select,
.visit-details-stack textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d8e0eb;
  border-radius: 10px;
  background: #fff;
  color: #131b26;
  padding: 10px 12px;
  font: inherit;
}

.visit-details-stack {
  display: grid;
  gap: 12px;
}

.visit-details-binary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.visit-details-binary-item {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #e2e9f3;
  border-radius: 12px;
  background: #fff;
}

.visit-details-binary-item p {
  margin: 0;
  color: #2c3647;
  font-size: 0.82rem;
  font-weight: 600;
}

.visit-details-binary-item label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #384356;
  font-size: 0.82rem;
}

.visit-evidence-placeholder {
  display: grid;
  gap: 10px;
}

.visit-evidence-placeholder p {
  margin: 0;
  color: #4f5c70;
  font-weight: 600;
}

.visit-details-read {
  display: grid;
  gap: 16px;
}

.visit-details-read__meta {
  margin: 0;
  color: #7b8697;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.visit-details-read__section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.visit-details-read__section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.visit-details-read__section dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
  margin: 0;
}

.visit-details-read__section dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.visit-details-read__section dd {
  margin: 0;
  color: #202a39;
  font-size: 0.9rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

.visit-details-read__chip {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 9px;
  border-radius: 999px;
  border: 1px solid #d5ddea;
  background: #f5f7fb;
  color: #5a6577;
  font-size: 0.74rem;
  font-weight: 700;
}

.visit-details-read__chip--yes {
  border-color: #cde7d6;
  background: #ecf8f0;
  color: #2e7c50;
}

.visit-details-read__chip--no {
  border-color: #e6d5d8;
  background: #faf0f1;
  color: #9a4a4f;
}

.campaign-objectives-form {
  display: grid;
  gap: 18px;
  padding-top: 20px;
}

.campaign-objectives-section {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #e4ebf5;
  border-radius: 14px;
  background: #fbfdff;
}

.campaign-objectives-section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
  font-size: 1.05rem;
}

.campaign-objectives-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
}

.campaign-objectives-grid label,
.campaign-objectives-stack label {
  display: grid;
  gap: 6px;
}

.campaign-objectives-grid span,
.campaign-objectives-stack span {
  color: #6f7a89;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.campaign-objectives-grid select,
.campaign-objectives-grid input,
.campaign-objectives-stack textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d8e0eb;
  border-radius: 10px;
  background: #fff;
  color: #131b26;
  padding: 10px 12px;
  font: inherit;
}

.campaign-objectives-stack {
  display: grid;
  gap: 12px;
}

.campaign-objectives-read {
  display: grid;
  gap: 16px;
}

.campaign-objectives-read__meta {
  margin: 0;
  color: #7b8697;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.campaign-objectives-read__section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.campaign-objectives-read__section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.campaign-objectives-read__section dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
  margin: 0;
}

.campaign-objectives-read__section dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.campaign-objectives-read__section dd {
  margin: 0;
  color: #202a39;
  font-size: 0.9rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

.campaign-objectives-read__badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 3px 10px;
  border-radius: 999px;
  border: 1px solid #d2dced;
  background: #f1f6ff;
  color: #365d95;
  font-size: 0.78rem;
  font-weight: 700;
}

.special-request-form {
  display: grid;
  gap: 16px;
  padding-top: 16px;
}

.special-request-section {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #e4ebf5;
  border-radius: 14px;
  background: #fbfdff;
}

.special-request-section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
  font-size: 1.02rem;
}

.special-request-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

.special-request-grid label,
.special-request-stack label {
  display: grid;
  gap: 6px;
}

.special-request-grid span,
.special-request-stack span {
  color: #6f7a89;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.special-request-grid select,
.special-request-stack textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d8e0eb;
  border-radius: 10px;
  background: #fff;
  color: #131b26;
  padding: 10px 12px;
  font: inherit;
}

.special-request-placeholder {
  display: grid;
  gap: 10px;
}

.special-request-placeholder p {
  margin: 0;
  color: #4f5c70;
  font-weight: 600;
}

.special-requests-read {
  display: grid;
  gap: 12px;
}

.special-requests-read__toolbar {
  display: flex;
  justify-content: flex-end;
}

.special-requests-read__empty {
  padding: 16px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.special-requests-read__empty h4 {
  margin: 0 0 8px;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.special-requests-read__empty p {
  margin: 0;
  color: #6f7a89;
}

.special-requests-read__item {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.special-requests-read__head {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
}

.special-requests-read__type,
.special-requests-read__status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 9px;
  border-radius: 999px;
  font-size: 0.74rem;
  font-weight: 700;
}

.special-requests-read__type {
  color: #365d95;
  background: #f1f6ff;
  border: 1px solid #d2dced;
}

.special-requests-read__status {
  color: #6d5c36;
  background: #fff8e8;
  border: 1px solid #efdfbd;
}

.special-requests-read__message {
  margin: 0;
  color: #202a39;
  font-size: 0.9rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

.special-requests-read__meta {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px 12px;
}

.special-requests-read__meta dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.special-requests-read__meta dd {
  margin: 0;
  color: #202a39;
  font-size: 0.84rem;
  line-height: 1.4;
}

.special-requests-read__response {
  padding: 10px 11px;
  border-radius: 10px;
  border: 1px solid #dde6f2;
  background: #f7faff;
  display: grid;
  gap: 6px;
}

.special-requests-read__response h5 {
  margin: 0;
  color: #243147;
  font-size: 0.8rem;
  font-weight: 700;
}

.special-requests-read__response p {
  margin: 0;
  color: #2b3850;
  font-size: 0.84rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

.special-requests-read__response-meta {
  color: #667389 !important;
  font-size: 0.76rem !important;
}

.special-requests-read__editor {
  display: grid;
  gap: 9px;
  padding: 10px;
  border-radius: 10px;
  border: 1px solid #e1e8f3;
  background: #fff;
}

.special-requests-read__editor label {
  display: grid;
  gap: 6px;
}

.special-requests-read__editor label span {
  color: #5b677d;
  font-size: 0.74rem;
  font-weight: 600;
}

.special-requests-read__editor select,
.special-requests-read__editor textarea {
  width: 100%;
  border-radius: 9px;
  border: 1px solid #d7dfeb;
  background: #fff;
  color: #1f2a3c;
  font-size: 0.82rem;
  padding: 8px 10px;
}

.general-details {
  display: grid;
  gap: 14px;
}

.general-details__section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.general-details__section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.general-details__identity-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.general-details__identity-head h3 {
  margin: 0;
  color: #0f1724;
  font-family: "League Spartan", sans-serif;
  font-size: 1.35rem;
}

.general-details__status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 10px;
  border-radius: 999px;
  border: 1px solid #d8e0eb;
  background: #f3f6fb;
  color: #556174;
  font-size: 0.75rem;
  font-weight: 700;
}

.general-details__section dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.general-details__section dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.general-details__section dd {
  margin: 0;
  color: #202a39;
  font-size: 0.9rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

.general-details__empty {
  margin: 0;
  color: #6f7a89;
}

.general-details__requests {
  display: grid;
  gap: 10px;
}

.general-details__request {
  display: grid;
  gap: 8px;
  padding: 11px;
  border: 1px solid #e2e9f3;
  border-radius: 10px;
  background: #fff;
}

.general-details__request-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.general-details__request-type,
.general-details__request-status {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid #d6dfec;
  background: #f4f8ff;
  color: #37598d;
  font-size: 0.72rem;
  font-weight: 700;
}

.general-details__request-status {
  color: #6d5c36;
  background: #fff8e8;
  border-color: #efdfbd;
}

.general-details__request p {
  margin: 0;
  color: #1f2938;
  line-height: 1.4;
  white-space: pre-wrap;
}

.general-details__request small {
  color: #7a8596;
  font-size: 0.78rem;
}

.ai-prompt-view {
  display: grid;
  gap: 12px;
}

.ai-prompt-view__hint {
  margin: 0;
  color: #6f7a89;
  font-size: 0.86rem;
}

.ai-prompt-view__content {
  margin: 0;
  padding: 14px;
  border: 1px solid #e1e8f3;
  border-radius: 12px;
  background: #f9fbff;
  color: #1c2636;
  font-family: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;
  font-size: 0.82rem;
  line-height: 1.55;
  white-space: pre-wrap;
  max-height: 52vh;
  overflow: auto;
}

.production-order-form {
  display: grid;
}

.production-order-step {
  display: none;
  gap: 12px;
}

.production-order-step--active {
  display: grid;
}

.production-order-step h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
  font-size: 1.05rem;
}

.production-order-stack {
  display: grid;
  gap: 12px;
}

.production-order-stack label {
  display: grid;
  gap: 6px;
}

.production-order-stack span {
  color: #6f7a89;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.production-order-stack input,
.production-order-stack select,
.production-order-stack textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d8e0eb;
  border-radius: 10px;
  background: #fff;
  color: #131b26;
  padding: 10px 12px;
  font: inherit;
}

.production-order-read {
  display: grid;
  gap: 14px;
}

.production-order-read__meta {
  margin: 0;
  color: #7b8697;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.production-order-read__section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.production-order-read__section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.production-order-read__section dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.production-order-read__section dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.production-order-read__section dd {
  margin: 0;
  color: #202a39;
  font-size: 0.9rem;
  line-height: 1.45;
  white-space: pre-wrap;
}

.production-order-read__empty {
  margin: 0;
  color: #6f7a89;
}

.client-validation-form {
  display: grid;
  gap: 16px;
}

.client-validation-section {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #e4ebf5;
  border-radius: 14px;
  background: #fbfdff;
}

.client-validation-section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
  font-size: 1.02rem;
}

.client-validation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
}

.client-validation-form label {
  display: grid;
  gap: 6px;
}

.client-validation-form span {
  color: #6f7a89;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.client-validation-form input,
.client-validation-form select,
.client-validation-form textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d8e0eb;
  border-radius: 10px;
  background: #fff;
  color: #131b26;
  padding: 10px 12px;
  font: inherit;
}

.client-validation-order-ref__empty {
  margin: 0;
  color: #6f7a89;
}

.client-validation-order-ref__card {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #e2e9f3;
  border-radius: 12px;
  background: #fff;
}

.client-validation-order-ref__meta {
  margin: 0;
  color: #7b8697;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.client-validation-order-ref__card dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
}

.client-validation-order-ref__card dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.client-validation-order-ref__card dd {
  margin: 0;
  color: #202a39;
  font-size: 0.86rem;
  line-height: 1.4;
  white-space: pre-wrap;
}

.client-validation-read {
  display: grid;
  gap: 14px;
}

.client-validation-read__meta {
  margin: 0;
  color: #7b8697;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.client-validation-read__section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.client-validation-read__section h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.client-validation-read__section dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 12px;
}

.client-validation-read__section dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.client-validation-read__section dd {
  margin: 0;
  color: #202a39;
  font-size: 0.88rem;
  line-height: 1.4;
}

.client-validation-read__badge {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 2px 10px;
  border-radius: 999px;
  border: 1px solid #d5ddea;
  background: #f5f7fb;
  color: #5a6577;
  font-size: 0.75rem;
  font-weight: 700;
}

.client-validation-read__badge--approved {
  border-color: #cde7d6;
  background: #ecf8f0;
  color: #2e7c50;
}

.client-validation-read__badge--changes {
  border-color: #f0dfbf;
  background: #fff8eb;
  color: #9b6a1d;
}

.client-validation-read__badge--paused {
  border-color: #e6d5d8;
  background: #faf0f1;
  color: #9a4a4f;
}

.client-validation-read__comment {
  margin: 0;
  color: #202a39;
  line-height: 1.45;
  white-space: pre-wrap;
}

.tracking-history {
  display: grid;
  gap: 10px;
}

.tracking-history h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.tracking-history__empty {
  padding: 12px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.tracking-history__empty h4 {
  margin: 0 0 6px;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.tracking-history__empty p {
  margin: 0;
  color: #6f7a89;
}

.tracking-history__item {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #e2e9f3;
  border-radius: 12px;
  background: #fbfdff;
}

.tracking-history__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.tracking-history__head small {
  color: #7b8697;
  font-size: 0.76rem;
  font-weight: 600;
}

.tracking-history__tag {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 999px;
  border: 1px solid #d6dfec;
  background: #f4f8ff;
  color: #37598d;
  font-size: 0.72rem;
  font-weight: 700;
}

.tracking-history__item dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
}

.tracking-history__item dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tracking-history__item dd {
  margin: 0;
  color: #202a39;
  font-size: 0.86rem;
  line-height: 1.4;
  white-space: pre-wrap;
}

.tracking-form {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fff;
}

.tracking-form h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.tracking-form__grid {
  display: grid;
  gap: 10px;
}

.tracking-form__grid label {
  display: grid;
  gap: 6px;
}

.tracking-form__grid span {
  color: #6f7a89;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.tracking-form__grid input,
.tracking-form__grid select,
.tracking-form__grid textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #d8e0eb;
  border-radius: 10px;
  background: #fff;
  color: #131b26;
  padding: 10px 12px;
  font: inherit;
}

.tracking-form__placeholder p {
  margin: 0;
  color: #6f7a89;
  font-size: 0.82rem;
}

.execution-summary {
  display: grid;
  gap: 12px;
}

.execution-summary__panel {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.execution-summary__panel h4 {
  margin: 0;
  color: #111923;
  font-family: "League Spartan", sans-serif;
}

.execution-summary__panel dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.execution-summary__panel dt {
  margin: 0 0 3px;
  color: #7a8596;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.execution-summary__panel dd {
  margin: 0;
  color: #202a39;
  font-size: 0.88rem;
  line-height: 1.4;
}

.execution-summary__status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 9px;
  border-radius: 999px;
  border: 1px solid #d6dfec;
  background: #f4f8ff;
  color: #37598d;
  font-size: 0.74rem;
  font-weight: 700;
}

.execution-summary__status--tracking {
  border-color: #d6dfec;
  background: #f4f8ff;
  color: #37598d;
}

.execution-summary__status--achieved {
  border-color: #cde7d6;
  background: #ecf8f0;
  color: #2e7c50;
}

.execution-summary__status--closed {
  border-color: #d8deeb;
  background: #f2f5fb;
  color: #555f73;
}

.execution-summary__comment {
  margin: 0;
  color: #202a39;
  line-height: 1.45;
  white-space: pre-wrap;
}

.customer-brief label {
  display: grid;
  gap: 8px;
  color: #1c2330;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.customer-brief input,
.customer-brief select,
.customer-brief textarea {
  width: 100%;
  border: 1px solid #d8dfeb;
  border-radius: 14px;
  background: #fff;
  color: #0b0f14;
  padding: 12px 14px;
  font: inherit;
  text-transform: uppercase;
  letter-spacing: 0;
  resize: vertical;
}

.customer-brief select {
  -webkit-appearance: none;
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(11, 15, 20, 0.55) 50%),
    linear-gradient(135deg, rgba(11, 15, 20, 0.55) 50%, transparent 50%);
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.customer-brief select option,
.auth-field select option {
  font-family: "Montserrat", sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
}

.customer-brief__checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.customer-brief__checks label {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid #e0e6ef;
  border-radius: 14px;
  background: #fff;
  text-transform: none;
  letter-spacing: 0;
  font-size: 0.92rem;
  line-height: 1.35;
}

.customer-brief__checks label input[type="checkbox"],
.customer-brief__checks label input[type="radio"] {
  width: 18px;
  height: 18px;
  margin: 0;
  align-self: start;
}

.customer-brief__checks label span {
  min-width: 0;
  display: block;
  overflow-wrap: anywhere;
}

.customer-brief__checks--binary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.customer-brief__check-group {
  display: grid;
  gap: 10px;
}

.customer-brief__check-group p {
  margin: 0;
  color: #1c2330;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

/* Sidebar dashboard only: tipografía más delgada y un poco más chica */
.dashboard-nav__group-title {
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.dashboard-nav__item {
  font-size: 0.8rem;
  font-weight: 600;
  padding: 9px 12px;
}

.customer-modal__secondary,
.customer-modal__primary {
  min-height: 46px;
  padding: 10px 18px;
  border-radius: 12px;
  font-weight: 800;
  cursor: pointer;
}

.customer-modal__secondary {
  border: 1px solid #d8dfeb;
  background: #fff;
  color: #11161d;
}

.customer-modal__primary {
  border: 1px solid #11161d;
  background: #11161d;
  color: #fff;
}

.customer-modal__primary:disabled {
  opacity: 0.42;
  cursor: not-allowed;
}

.customer-modal__note {
  color: #5f6d80;
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.35;
}

.dashboard-flow-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 2000;
  background: #0f141c;
  color: #eaf0fb;
  border: 1px solid #2a3342;
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 0.86rem;
  font-weight: 600;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  opacity: 0;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.dashboard-flow-toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 1180px) {
  .customers-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-seller-requests {
    grid-template-columns: 1fr;
  }
  .admin-billing {
    grid-template-columns: 1fr;
  }
  .overview__main,
  .overview__bottom {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .customers-list {
    grid-template-columns: 1fr;
  }
  .dashboard-topbar--provider {
    padding: 0 16px 5px;
  }
  .dashboard-topbar__providerInner {
    flex-wrap: wrap;
    padding: 8px 0;
  }
  .dashboard-topbar--provider .dashboard-topbar__right {
    margin-left: auto;
  }
}

@media (max-width: 720px) {
  .auth-grid-2 { grid-template-columns: 1fr; }
  .dashboard-row { grid-template-columns: 1fr; gap: 4px; }
  .dashboard-page {
    height: auto;
    overflow: visible;
  }
  .dashboard-shell {
    position: static;
    height: auto;
    grid-template-columns: 1fr;
    overflow: visible;
  }
  .dashboard-sidebar {
    height: auto;
    overflow: visible;
  }
  .dashboard-sidebar__footer {
    margin-top: 20px;
  }
  .dashboard-main {
    height: auto;
    overflow: visible;
  }
  .dashboard-topbar {
    flex-direction: column;
    align-items: flex-start;
  }
  .dashboard-userbox {
    width: 100%;
    justify-content: space-between;
  }
  .dashboard-topbar--provider {
    flex-direction: row;
    align-items: center;
  }
  .dashboard-topbar--provider .dashboard-topbar__providerInner {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .dashboard-topbar--provider .dashboard-topbar__providerNav {
    width: 100%;
    gap: 14px;
    flex-wrap: wrap;
  }
  .dashboard-topbar__providerSearch {
    width: 100%;
    min-width: 0;
  }
  .dashboard-topbar--provider .dashboard-topbar__right {
    width: 100%;
    justify-content: space-between;
    margin-left: 0;
  }
  .dashboard-topbar--provider .dashboard-userbox {
    width: auto;
  }
  .dashboard-admin__grid,
  .dashboard-admin__checks,
  .customer-type-grid,
  .customer-brief__grid,
  .customer-brief__checks,
  .admin-billing__filters,
  .provider-form__grid,
  .provider-panel__grid,
  .dashboard-settings-form__grid {
    grid-template-columns: 1fr;
  }
  .admin-billing__head-row,
  .admin-billing__row {
    grid-template-columns: 1fr 1fr;
  }
  .provider-table__head,
  .provider-table__row {
    grid-template-columns: 1fr 1fr;
  }
  .provider-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .provider-order-card__meta {
    grid-template-columns: 1fr;
  }
  .customers-panel__top {
    flex-direction: column;
    align-items: stretch;
  }
  .customer-card__main,
  .customer-card__details {
    grid-template-columns: 1fr;
  }
  .customer-card__actions {
    grid-template-columns: 1fr;
  }
  .customer-modal__dialog {
    width: calc(100vw - 24px);
    margin: 12px auto;
    max-height: calc(100vh - 24px);
  }
  .customer-modal__header,
  .customer-modal__footer,
  .customer-modal__body,
  .customer-brief-modal__body {
    padding-left: 16px;
    padding-right: 16px;
  }
  .customer-brief-modal__dialog {
    width: calc(100vw - 24px);
    margin: 12px auto;
    max-height: calc(100vh - 24px);
  }
  .overview-filter-toolbar {
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  .overview__header {
    flex-wrap: wrap;
    gap: 12px;
  }
  .overview__filters--toolbar {
    width: 100%;
  }
  .overview-filter-pills {
    width: 100%;
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .overview-filter-menu-wrap {
    width: 100%;
  }
  .overview-filter-trigger {
    width: 100%;
    justify-content: center;
  }
  .overview-filter-menu {
    width: 100%;
    right: auto;
    left: 0;
  }
  .overview-period {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .overview-table {
    overflow-x: auto;
  }
  .overview-table__head,
  .overview-table__row {
    min-width: 620px;
  }
}

/* Typography weight tuning (keep current font, reduce heavy bold usage) */
body.auth-page,
body.dashboard-page {
  font-weight: 500;
}

/* Primary titles */
.auth-wrap h1,
.dashboard-topbar h1,
.dashboard-placeholder h2,
.customers-panel h2,
.customers-empty-state h3,
.customer-modal__header h3,
.customer-brief__section h3,
.customer-brief--empty h4,
.customer-card__meta h3,
.customer-card__summary-group h4 {
  font-weight: 700;
}

/* Section headings / strong labels */
.dashboard-nav__group-title,
.dashboard-topbar__eyebrow,
.customers-panel__eyebrow,
.customer-modal__step,
.customer-card__category,
.customer-card__details dt,
.customer-card__summary-group dt,
.customer-brief label,
.customer-brief__check-group p,
.dashboard-admin label {
  font-weight: 600;
}

/* Sidebar / navigation / buttons */
.dashboard-nav__item,
.dashboard-sideaction,
.dashboard-settings__item,
.btn-auth,
.dashboard-admin__submit,
.customers-panel__cta,
.customer-card__button,
.customer-card__menu-item,
.customer-modal__secondary,
.customer-modal__primary,
.dashboard-userbox__info span {
  font-weight: 600;
}

/* Counts, chips, badges */
.dashboard-nav__count,
.dashboard-rolechip,
.customer-card__origin-badge {
  font-weight: 600;
}

/* Form labels and controls */
.auth-field label {
  font-weight: 500;
}

.auth-field input,
.auth-field select,
.auth-field textarea,
.customer-brief input,
.customer-brief select,
.customer-brief textarea,
.customer-brief select option,
.auth-field select option,
.customer-type-card span,
.customer-brief__checks label {
  font-weight: 500;
}

/* Secondary/meta text */
.auth-sub,
.auth-link,
.auth-msg,
.dashboard-row .k,
.dashboard-settings__label,
.dashboard-userbox__info small,
.dashboard-placeholder p,
.customers-panel__sub,
.customers-empty-state p,
.customer-card__status,
.customer-field-warning,
.customer-brief__hint,
.customer-brief--empty p,
.customer-card__summary-group p,
.customer-modal__note {
  font-weight: 400;
}

.auth-field input::placeholder,
.auth-field textarea::placeholder,
.customer-brief input::placeholder,
.customer-brief textarea::placeholder {
  font-weight: 400;
}

/* Keep admin checks compact and readable */
.dashboard-admin__check {
  font-weight: 500 !important;
}

/* Dashboard visual system upgrade (shared SaaS premium language) */
:root {
  --dash-bg: var(--vly-bg-page, #ffffff);
  --dash-surface: var(--vly-surface, #ffffff);
  --dash-surface-soft: var(--vly-surface-elevated, #fafcff);
  --dash-sidebar: #06090f;
  --dash-sidebar-2: #0a0f19;
  --dash-border: var(--vly-border-soft, #e3e9f1);
  --dash-border-strong: var(--vly-border, #d5ddea);
  --dash-text: var(--vly-text-primary, #0f172a);
  --dash-text-soft: var(--vly-text-secondary, #5e6b82);
  --dash-primary: var(--vly-accent, #0f172a);
  --dash-primary-strong: #0b1220;
  --dash-primary-soft: #eef2f7;
  --dash-success-soft: #e9f7ef;
  --dash-danger-soft: #feecef;
  --dash-radius-sm: 10px;
  --dash-radius-md: 14px;
  --dash-radius-lg: 18px;
  --dash-shadow-sm: 0 1px 2px rgba(12, 18, 28, 0.06);
  --dash-shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
  --dash-focus: 0 0 0 3px rgba(15, 23, 42, 0.14);
  --dash-card-bg: var(--vly-surface, #ffffff);
  --dash-card-border: var(--vly-border-soft, #e3e9f2);
}

body.dashboard-page {
  background: var(--dash-bg);
  color: var(--dash-text);
}

.dashboard-shell {
  background: var(--dash-surface);
  grid-template-columns: 292px minmax(0, 1fr);
}

.dashboard-sidebar {
  background: linear-gradient(180deg, var(--dash-sidebar) 0%, var(--dash-sidebar-2) 100%);
  background-color: #06090f;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  padding: 22px 14px 18px;
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: transform;
}

.dashboard-sidebar__brand {
  padding: 10px 4px 20px;
}

.dashboard-nav {
  gap: 8px;
  margin-top: -8px;
}

.dashboard-nav__group {
  gap: 5px;
  padding: 1px 0;
}

.dashboard-nav__group-title {
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  padding: 0 10px;
}

.dashboard-nav__group-items {
  gap: 5px;
  padding-left: 10px;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.dashboard-nav__item {
  border-radius: 10px;
  padding: 10px 13px;
  font-size: 0.9rem;
  font-weight: 500;
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.16s ease, box-shadow 0.2s ease;
}

.dashboard-nav__item:hover {
  background: rgba(255, 255, 255, 0.1);
  transform: translateX(1px);
  --dashboard-nav-icon-color: rgba(255, 255, 255, 0.98);
}

.dashboard-nav__item.is-active {
  background: #ffffff;
  color: #0f172a;
  box-shadow: 0 2px 10px rgba(8, 15, 27, 0.16);
  --dashboard-nav-icon-color: #0f172a;
}

.dashboard-nav__separator {
  height: 1px;
  margin: 5px 2px 6px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0.16) 50%, rgba(255, 255, 255, 0.06) 100%);
  border-radius: 999px;
}

.dashboard-nav__count {
  min-width: 20px;
  height: 20px;
  font-size: 0.68rem;
}

.dashboard-main {
  background: var(--dash-surface);
  padding: 24px 30px 30px;
  gap: 16px;
}

.dashboard-sidebar__footer {
  border-bottom: 0;
  padding-top: 10px;
  padding-bottom: 8px;
  margin-top: auto;
}

.dashboard-sidebar__legal {
  margin-top: 7px;
  padding-top: 7px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.dashboard-topbar {
  padding: 2px 2px 8px;
  border-bottom: 1px solid var(--dash-border);
  margin-bottom: 12px;
}

.dashboard-topbar--compact {
  justify-content: flex-end;
  padding: 0 0 5px;
  border-bottom: 1px solid var(--dash-border);
  margin-bottom: 6px;
}

.dashboard-topbar--provider.dashboard-topbar--compact {
  justify-content: space-between;
  padding: 0;
  margin-bottom: 0;
}

.dashboard-topbar__eyebrow {
  color: #8794aa;
  font-size: 0.78rem;
  margin-bottom: 5px;
}

.dashboard-topbar h1 {
  font-size: clamp(2.05rem, 2.6vw, 2.55rem);
  letter-spacing: -0.012em;
  color: var(--dash-text);
}

.dashboard-userbox__button {
  border: 0;
  background: transparent;
  box-shadow: none;
  transition: border-color 0.16s ease, box-shadow 0.18s ease, transform 0.14s ease;
}

.dashboard-userbox__button:hover {
  border-color: transparent;
  box-shadow: none;
  transform: none;
}

/* Context sidebar weight tuning */
.dashboard-nav__item,
.dashboard-nav__item span,
.dashboard-nav__count {
  font-weight: 500;
}

.dashboard-sideaction,
.dashboard-settings__item {
  font-weight: 500;
}

.dashboard-avatar {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

.dashboard-content {
  display: grid;
  gap: 16px;
}

.dashboard-placeholder,
.dashboard-admin,
.overview-kpi,
.overview-block,
.overview-funnel div,
.provider-card,
.provider-summary,
.provider-summary-tile,
.provider-order-card,
.customers-empty-state,
.customer-card,
.dashboard-settings-info,
.admin-billing__detail-card,
.admin-billing__detail-empty,
.admin-billing__list-wrap {
  border: 1px solid var(--dash-card-border);
  background: var(--dash-card-bg);
  box-shadow: none;
}

.dashboard-admin,
.provider-card,
.customer-card {
  transition: border-color 0.18s ease, box-shadow 0.2s ease, transform 0.16s ease;
}

.dashboard-admin:hover,
.provider-card:hover,
.customer-card:hover {
  border-color: #d5deea;
  box-shadow: var(--dash-shadow-sm);
}

.provider-card--soft,
.provider-summary,
.dashboard-settings-info,
.tracking-history__item,
.production-order-read__section,
.client-validation-read__section {
  background: var(--dash-card-bg);
}

.provider-subnav {
  gap: 10px;
  margin-bottom: 2px;
  padding: 2px 0 6px;
}

.dashboard-management-shell {
  margin-bottom: 6px;
}

.dashboard-ops-module-intro {
  margin-top: 10px;
  margin-bottom: 6px;
  padding: 14px 16px;
  border: 1px solid var(--dash-card-border);
  border-radius: var(--dash-radius-md);
  background: #ffffff;
}

.dashboard-ops-module-intro__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.dashboard-ops-module-intro__head h2 {
  margin: 0;
  font-size: 16px;
  line-height: 1.28;
  color: #0f172a;
  letter-spacing: -0.01em;
}

.dashboard-ops-module-intro__head p {
  margin: 0;
  font-size: 13px;
  line-height: 1.42;
  color: #5b6474;
  max-width: 680px;
}

.dashboard-ops-module-intro__metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.dashboard-ops-module-intro__metrics article {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  background: #f8fafd;
  min-height: 78px;
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 6px;
}

.dashboard-ops-module-intro__metrics span {
  font-size: 12px;
  color: #607086;
  line-height: 1.3;
}

.dashboard-ops-module-intro__metrics strong {
  font-size: 24px;
  line-height: 1;
  color: #0f172a;
  font-weight: 700;
}

@media (max-width: 980px) {
  .dashboard-ops-module-intro__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .dashboard-ops-module-intro__head {
    flex-direction: column;
    margin-bottom: 10px;
  }

  .dashboard-ops-module-intro__metrics {
    grid-template-columns: 1fr;
  }
}

.provider-subnav__item {
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid var(--dash-border-strong);
  border-radius: 999px;
  color: #334155;
  background: #ffffff;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.provider-subnav__item:hover {
  border-color: #aeb8c7;
  background: #f8fafd;
  color: #111827;
}

.provider-subnav__item.is-active {
  border-color: var(--dash-primary);
  color: #ffffff;
  background: #0f172a;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.18);
}

.provider-panel__section {
  gap: 14px;
}

.provider-summary-grid {
  gap: 10px;
}

.provider-summary-tile {
  border-radius: var(--dash-radius-md);
  border: 1px solid var(--dash-card-border);
  background: var(--dash-card-bg);
  min-height: 92px;
  padding: 13px 12px;
}

.provider-summary-tile h4 {
  color: #5a6a83;
}

.provider-summary-tile p {
  color: #11203b;
  letter-spacing: -0.01em;
}

.provider-order-card,
.provider-table,
.tracking-history,
.special-requests-read__item {
  border-color: var(--dash-border);
}

.provider-order-card {
  border-radius: var(--dash-radius-md);
  background: var(--dash-card-bg);
}

.provider-order-card__head h4,
.customer-card__meta h3,
.dashboard-admin__head h2,
.provider-card__head h3 {
  letter-spacing: -0.01em;
}

.provider-table {
  border-radius: var(--dash-radius-md);
  overflow: hidden;
  background: #fff;
}

.provider-table__head {
  background: #f3f7ff;
  border-bottom: 1px solid var(--dash-border);
}

.provider-table__row {
  background: #fff;
}

.provider-table__row:hover {
  background: #f8fbff;
}

.dashboard-settings-form__field input,
.dashboard-settings-form__field select,
.dashboard-settings-form__field textarea,
.dashboard-admin input,
.dashboard-admin select,
.dashboard-admin textarea,
.provider-form input,
.provider-form select,
.provider-form textarea,
.records-filter-toolbar select,
.production-order-stack input,
.production-order-stack select,
.production-order-stack textarea,
.tracking-form__grid input,
.tracking-form__grid select,
.tracking-form__grid textarea,
.client-validation-form input,
.client-validation-form select,
.client-validation-form textarea {
  border-color: var(--dash-border);
  border-radius: var(--dash-radius-sm);
  min-height: 38px;
  background: #fff;
  color: #1a2538;
  transition: border-color 0.14s ease, box-shadow 0.16s ease;
}

.dashboard-settings-form__field input:focus,
.dashboard-settings-form__field select:focus,
.dashboard-settings-form__field textarea:focus,
.dashboard-admin input:focus,
.dashboard-admin select:focus,
.dashboard-admin textarea:focus,
.provider-form input:focus,
.provider-form select:focus,
.provider-form textarea:focus,
.records-filter-toolbar select:focus,
.production-order-stack input:focus,
.production-order-stack select:focus,
.production-order-stack textarea:focus,
.tracking-form__grid input:focus,
.tracking-form__grid select:focus,
.tracking-form__grid textarea:focus,
.client-validation-form input:focus,
.client-validation-form select:focus,
.client-validation-form textarea:focus {
  outline: none;
  border-color: #88a4d2;
  box-shadow: var(--dash-focus);
}

.dashboard-admin__submit,
.dashboard-settings-form__button,
.customer-modal__primary {
  border-radius: 11px;
  min-height: 38px;
  border: 1px solid #0f172a;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.16);
  transition: transform 0.14s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.dashboard-admin__submit:hover,
.dashboard-settings-form__button:hover,
.customer-modal__primary:hover {
  background: #111d34;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.2);
  transform: translateY(-1px);
}

.dashboard-admin__submit--secondary,
.customer-modal__secondary,
.customer-card__button--muted,
.dashboard-admin__submit--ghost {
  border: 1px solid var(--dash-border-strong);
  background: #fff;
  color: #2a3952;
  box-shadow: none;
}

.dashboard-admin__submit--secondary:hover,
.customer-modal__secondary:hover,
.dashboard-admin__submit--ghost:hover {
  border-color: #9db0cf;
  background: #f5f9ff;
  color: #1d2f4d;
  box-shadow: var(--dash-shadow-sm);
}

.customer-card__button--danger {
  border-color: #f2dde1;
  background: #fff;
  color: #8c2135;
}

.customer-card__button--danger:hover {
  background: #fff7f8;
  border-color: #ecc7ce;
}

.customer-card__button,
.customer-card__button--primary {
  border-radius: 7px;
  min-height: 36px;
  border: 1px solid #ecf1f7;
  background: #fff;
  color: #2a384f;
  box-shadow: none;
  transition: border-color 0.14s ease, background-color 0.16s ease, color 0.16s ease;
}

.customer-card__button:hover,
.customer-card__button--primary:hover {
  background: #f6f9ff;
  border-color: #dde5f1;
  color: #1f2f47;
  box-shadow: none;
  transform: none;
}

.customer-card__button--primary {
  border-color: #ecf1f7;
  color: #1d2f4d;
  font-weight: 600;
}

.customer-card {
  padding: 14px 14px 13px;
  border-radius: 16px;
  background: #fff;
}

.customer-card__category {
  color: #5f7395;
}

.customer-card__details dt {
  color: #71839f;
}

.customer-card__details dd {
  color: #16243b;
}

.customer-card__status {
  border-width: 1px;
}

.customer-card__actions {
  margin-top: 10px;
  gap: 8px;
}

.customer-modal__dialog,
.dashboard-preferences__dialog,
.provider-participation-modal__dialog {
  border-radius: 18px;
  border-color: var(--dash-border);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24);
}

.customer-modal__header,
.customer-modal__footer,
.provider-participation-modal__head,
.provider-participation-modal__foot,
.dashboard-preferences__head {
  border-color: var(--dash-border);
}

.customer-modal__backdrop,
.provider-participation-modal__backdrop,
.dashboard-preferences__backdrop {
  background: rgba(10, 16, 28, 0.52);
  backdrop-filter: blur(3px);
}

.dashboard-flow-toast {
  border-radius: 12px;
  border: 1px solid #d5ddea;
  background: #ffffff;
  color: #0f172a;
  box-shadow: 0 12px 24px rgba(10, 18, 34, 0.12);
}

/* Dashboard typography alignment with premium profile/store views */
body.dashboard-page .dashboard-nav__group-title,
body.dashboard-page .dashboard-nav__item,
body.dashboard-page .dashboard-sideaction,
body.dashboard-page .dashboard-settings__item,
body.dashboard-page .dashboard-topbar h1,
body.dashboard-page .provider-subnav__item {
  font-family: "Plus Jakarta Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

body.dashboard-page .dashboard-topbar h1 {
  font-weight: 780;
  letter-spacing: -0.015em;
}

/* Phase 1: dashboard visual unification (typography + base buttons only) */
body.dashboard-page {
  --dash-font-family: "Plus Jakarta Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --dash-title-weight: 700;
  --dash-subtitle-weight: 600;
  --dash-label-weight: 500;
  --dash-micro-weight: 400;
  --dash-btn-height: 40px;
  --dash-btn-radius: 12px;
  --dash-btn-font-size: 0.88rem;
  --dash-btn-font-weight: 600;
  --dash-btn-primary-bg: #0f172a;
  --dash-btn-primary-fg: #ffffff;
  --dash-btn-secondary-bg: #ffffff;
  --dash-btn-secondary-fg: #243247;
  --dash-btn-secondary-border: #d3dceb;
  --dash-btn-ghost-bg: transparent;
  --dash-btn-ghost-fg: #334155;
  --dash-btn-ghost-border: transparent;
}

body.dashboard-page .dashboard-shell,
body.dashboard-page .dashboard-main,
body.dashboard-page .dashboard-content {
  font-family: var(--dash-font-family);
}

body.dashboard-page :is(
  .dashboard-nav__group-title,
  .dashboard-nav__item,
  .dashboard-sideaction,
  .dashboard-settings__item,
  .dashboard-topbar h1,
  .dashboard-topbar__eyebrow,
  .dashboard-placeholder h2,
  .dashboard-admin__head h2,
  .provider-card__head h3,
  .provider-order-card__head h4,
  .customer-card__title,
  .customer-card__meta h3,
  .customer-modal__header h3,
  .customer-modal__step,
  .dashboard-settings__label
) {
  font-family: var(--dash-font-family);
}

body.dashboard-page .dashboard-topbar h1 {
  font-weight: var(--dash-title-weight);
  line-height: 1.04;
  letter-spacing: -0.012em;
}

body.dashboard-page :is(
  .dashboard-topbar__eyebrow,
  .dashboard-nav__group-title,
  .dashboard-settings__label,
  .customer-modal__step
) {
  font-weight: var(--dash-subtitle-weight);
}

body.dashboard-page :is(
  .dashboard-row .k,
  .customer-card__details dt,
  .provider-summary-tile h4,
  .dashboard-userbox__info small
) {
  font-weight: var(--dash-label-weight);
}

body.dashboard-page :is(
  .dashboard-placeholder p,
  .customer-card__status,
  .customer-modal__note
) {
  font-weight: var(--dash-micro-weight);
}

/* Shared button primitive */
body.dashboard-page :is(
  .dashboard-admin__submit,
  .dashboard-settings-form__button,
  .customer-modal__primary,
  .customer-modal__secondary,
  .dashboard-admin__submit--secondary,
  .dashboard-admin__submit--ghost,
  .dashboard-sideaction,
  .dashboard-settings__item,
  .customer-card__button
) {
  min-height: var(--dash-btn-height);
  border-radius: var(--dash-btn-radius);
  font-family: var(--dash-font-family);
  font-size: var(--dash-btn-font-size);
  font-weight: var(--dash-btn-font-weight);
  letter-spacing: 0.01em;
}

/* Primary */
body.dashboard-page :is(
  .dashboard-admin__submit,
  .dashboard-settings-form__button,
  .customer-modal__primary
) {
  border-color: var(--dash-btn-primary-bg);
  background: var(--dash-btn-primary-bg);
  color: var(--dash-btn-primary-fg);
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.18);
}

body.dashboard-page :is(
  .dashboard-admin__submit,
  .dashboard-settings-form__button,
  .customer-modal__primary
):hover {
  background: #13203a;
  border-color: #13203a;
  box-shadow: 0 9px 18px rgba(15, 23, 42, 0.22);
}

/* Secondary */
body.dashboard-page :is(
  .customer-modal__secondary,
  .dashboard-admin__submit--secondary,
  .customer-card__button
) {
  border-color: var(--dash-btn-secondary-border);
  background: var(--dash-btn-secondary-bg);
  color: var(--dash-btn-secondary-fg);
  box-shadow: none;
}

body.dashboard-page :is(
  .customer-modal__secondary,
  .dashboard-admin__submit--secondary,
  .customer-card__button
):hover {
  border-color: #b8c5da;
  background: #f7faff;
  color: #1d2b40;
}

/* Ghost */
body.dashboard-page :is(
  .dashboard-admin__submit--ghost,
  .dashboard-sideaction,
  .dashboard-settings__item
) {
  border-color: var(--dash-btn-ghost-border);
  background: var(--dash-btn-ghost-bg);
  color: var(--dash-btn-ghost-fg);
  box-shadow: none;
}

body.dashboard-page :is(
  .dashboard-admin__submit--ghost,
  .dashboard-sideaction,
  .dashboard-settings__item
):hover {
  background: rgba(148, 163, 184, 0.14);
  color: #f8fafc;
}

/* Phase 2: dashboard form primitives unification (safe visual overrides) */
body.dashboard-page {
  --dash-field-height: 42px;
  --dash-field-radius: 12px;
  --dash-field-border: #d7e0ec;
  --dash-field-border-hover: #becbdd;
  --dash-field-bg: #ffffff;
  --dash-field-fg: #162338;
  --dash-field-placeholder: #94a3b8;
  --dash-field-label: #5f6f87;
  --dash-field-focus-border: #8aa2c7;
  --dash-field-focus-ring: 0 0 0 3px rgba(59, 92, 140, 0.14);
}

body.dashboard-page :is(
  .dashboard-admin label,
  .provider-form label,
  .dashboard-settings-form__field span,
  .records-filter-toolbar label span,
  .customer-brief label span,
  .tracking-form__grid label span,
  .client-validation-form label span,
  .production-order-stack label span
) {
  color: var(--dash-field-label);
  font-family: var(--dash-font-family);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-transform: none;
}

body.dashboard-page :is(
  .auth-field input,
  .auth-field select,
  .auth-field textarea,
  .dashboard-settings-form__field input,
  .dashboard-settings-form__field select,
  .dashboard-settings-form__field textarea,
  .dashboard-admin input,
  .dashboard-admin select,
  .dashboard-admin textarea,
  .provider-form input,
  .provider-form select,
  .provider-form textarea,
  .records-filter-toolbar select,
  .production-order-stack input,
  .production-order-stack select,
  .production-order-stack textarea,
  .tracking-form__grid input,
  .tracking-form__grid select,
  .tracking-form__grid textarea,
  .client-validation-form input,
  .client-validation-form select,
  .client-validation-form textarea,
  .customer-brief input,
  .customer-brief select,
  .customer-brief textarea
) {
  min-height: var(--dash-field-height);
  border: 1px solid var(--dash-field-border);
  border-radius: var(--dash-field-radius);
  background: var(--dash-field-bg);
  color: var(--dash-field-fg);
  font-family: var(--dash-font-family);
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.35;
  padding: 0 13px;
  box-shadow: none;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
  appearance: none;
}

body.dashboard-page :is(
  .auth-field textarea,
  .dashboard-settings-form__field textarea,
  .dashboard-admin textarea,
  .provider-form textarea,
  .production-order-stack textarea,
  .tracking-form__grid textarea,
  .client-validation-form textarea,
  .customer-brief textarea
) {
  min-height: 112px;
  padding: 11px 13px;
  resize: vertical;
}

body.dashboard-page :is(
  .auth-field input,
  .auth-field select,
  .auth-field textarea,
  .dashboard-settings-form__field input,
  .dashboard-settings-form__field select,
  .dashboard-settings-form__field textarea,
  .dashboard-admin input,
  .dashboard-admin select,
  .dashboard-admin textarea,
  .provider-form input,
  .provider-form select,
  .provider-form textarea,
  .records-filter-toolbar select,
  .production-order-stack input,
  .production-order-stack select,
  .production-order-stack textarea,
  .tracking-form__grid input,
  .tracking-form__grid select,
  .tracking-form__grid textarea,
  .client-validation-form input,
  .client-validation-form select,
  .client-validation-form textarea,
  .customer-brief input,
  .customer-brief select,
  .customer-brief textarea
):hover {
  border-color: var(--dash-field-border-hover);
}

body.dashboard-page :is(
  .auth-field input,
  .auth-field select,
  .auth-field textarea,
  .dashboard-settings-form__field input,
  .dashboard-settings-form__field select,
  .dashboard-settings-form__field textarea,
  .dashboard-admin input,
  .dashboard-admin select,
  .dashboard-admin textarea,
  .provider-form input,
  .provider-form select,
  .provider-form textarea,
  .records-filter-toolbar select,
  .production-order-stack input,
  .production-order-stack select,
  .production-order-stack textarea,
  .tracking-form__grid input,
  .tracking-form__grid select,
  .tracking-form__grid textarea,
  .client-validation-form input,
  .client-validation-form select,
  .client-validation-form textarea,
  .customer-brief input,
  .customer-brief select,
  .customer-brief textarea
):focus {
  outline: none;
  border-color: var(--dash-field-focus-border);
  box-shadow: var(--dash-field-focus-ring);
}

body.dashboard-page :is(
  .auth-field input::placeholder,
  .auth-field textarea::placeholder,
  .dashboard-settings-form__field input::placeholder,
  .dashboard-settings-form__field textarea::placeholder,
  .dashboard-admin input::placeholder,
  .dashboard-admin textarea::placeholder,
  .provider-form input::placeholder,
  .provider-form textarea::placeholder,
  .production-order-stack input::placeholder,
  .production-order-stack textarea::placeholder,
  .tracking-form__grid input::placeholder,
  .tracking-form__grid textarea::placeholder,
  .client-validation-form input::placeholder,
  .client-validation-form textarea::placeholder,
  .customer-brief input::placeholder,
  .customer-brief textarea::placeholder
) {
  color: var(--dash-field-placeholder);
  font-weight: 400;
  opacity: 1;
}

body.dashboard-page :is(
  .auth-field select,
  .dashboard-settings-form__field select,
  .dashboard-admin select,
  .provider-form select,
  .records-filter-toolbar select,
  .production-order-stack select,
  .tracking-form__grid select,
  .client-validation-form select,
  .customer-brief select
) {
  padding-right: 34px;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(51, 65, 85, 0.75) 50%),
    linear-gradient(135deg, rgba(51, 65, 85, 0.75) 50%, transparent 50%);
  background-position:
    calc(100% - 16px) calc(50% - 2px),
    calc(100% - 11px) calc(50% - 2px);
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

/* Safe checkbox/radio baseline without replacing DOM structures */
body.dashboard-page :is(
  input[type="checkbox"],
  input[type="radio"]
) {
  accent-color: #0f172a;
}

body.dashboard-page :is(
  .customer-brief__checks label,
  .visit-details-binary-item label,
  .customer-type-card span
) {
  font-family: var(--dash-font-family);
  color: #243349;
  font-weight: 500;
}

/* Phase 3: dashboard surfaces unification (cards / frames / placeholders) */
body.dashboard-page {
  --dash-surface-bg: #ffffff;
  --dash-surface-soft: #fbfdff;
  --dash-surface-border: #dfe6f1;
  --dash-surface-border-strong: #d2dcec;
  --dash-surface-radius: 16px;
  --dash-surface-radius-lg: 18px;
  --dash-surface-padding: 16px;
  --dash-surface-gap: 14px;
  --dash-surface-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  --dash-surface-shadow-hover: 0 6px 18px rgba(15, 23, 42, 0.08);
}

body.dashboard-page :is(
  .dashboard-placeholder,
  .dashboard-admin,
  .overview-kpi,
  .overview-block,
  .overview-funnel div,
  .provider-card,
  .provider-summary,
  .provider-summary-tile,
  .provider-order-card,
  .customers-empty-state,
  .customer-card,
  .dashboard-settings-info,
  .admin-billing__detail-card,
  .admin-billing__detail-empty,
  .admin-billing__list-wrap,
  .provider-table,
  .tracking-history,
  .special-requests-read__item
) {
  background: var(--dash-surface-bg);
  border: 1px solid var(--dash-surface-border);
  border-radius: var(--dash-surface-radius);
  box-shadow: var(--dash-surface-shadow);
}

body.dashboard-page :is(
  .dashboard-admin,
  .provider-card,
  .provider-summary,
  .provider-order-card,
  .customers-empty-state,
  .dashboard-settings-info,
  .admin-billing__detail-card,
  .admin-billing__detail-empty
) {
  padding: var(--dash-surface-padding);
}

body.dashboard-page :is(
  .dashboard-placeholder,
  .dashboard-admin,
  .provider-card,
  .provider-order-card,
  .customer-card,
  .overview-block,
  .admin-billing__detail-card
) {
  transition: border-color 0.16s ease, box-shadow 0.18s ease;
}

body.dashboard-page :is(
  .dashboard-admin,
  .provider-card,
  .provider-order-card,
  .customer-card,
  .overview-block,
  .admin-billing__detail-card
):hover {
  border-color: var(--dash-surface-border-strong);
  box-shadow: var(--dash-surface-shadow-hover);
}

body.dashboard-page .dashboard-content {
  gap: clamp(16px, 2vw, 22px);
}

body.dashboard-page :is(
  .provider-panel__section,
  .provider-summary-grid,
  .customers-panel,
  .customers-list,
  .dashboard-admin__grid,
  .dashboard-admin__checks
) {
  gap: var(--dash-surface-gap);
}

/* Empty states / placeholders aligned to premium system */
body.dashboard-page :is(
  .dashboard-placeholder,
  .customers-empty-state,
  .admin-billing__detail-empty
) {
  background: var(--dash-surface-soft);
  border-style: solid;
}

body.dashboard-page :is(
  .dashboard-placeholder h2,
  .dashboard-placeholder h3,
  .customers-empty-state h3,
  .admin-billing__detail-empty h3
) {
  margin-top: 0;
  margin-bottom: 8px;
  color: #0f172a;
  font-family: var(--dash-font-family);
  font-weight: 700;
  letter-spacing: -0.01em;
}

body.dashboard-page :is(
  .dashboard-placeholder p,
  .customers-empty-state p,
  .admin-billing__detail-empty p
) {
  margin-top: 0;
  color: #5f6f87;
  font-family: var(--dash-font-family);
  font-size: 0.92rem;
  line-height: 1.5;
}

/* Surface consistency for top-level wrappers without changing deep layouts */
body.dashboard-page :is(
  .provider-summary-tile,
  .overview-kpi,
  .overview-funnel div
) {
  min-height: 96px;
  padding: 14px 13px;
}

body.dashboard-page .provider-table__head {
  background: #f5f8fd;
  border-bottom-color: var(--dash-surface-border);
}

body.dashboard-page .provider-table__row {
  background: #ffffff;
}

body.dashboard-page .provider-table__row:hover {
  background: #f8fbff;
}

/* Phase 4: dashboard secondary navigation (tabs / subnavs) */
body.dashboard-page {
  --dash-nav2-bg: #ffffff;
  --dash-nav2-border: #dbe4f0;
  --dash-nav2-border-active: #0f172a;
  --dash-nav2-text: #4c5a70;
  --dash-nav2-text-strong: #0f172a;
  --dash-nav2-hover-bg: #f5f8fd;
  --dash-nav2-active-bg: #eef3fb;
  --dash-nav2-radius: 999px;
  --dash-nav2-height: 38px;
  --dash-nav2-font-size: 0.82rem;
  --dash-nav2-font-weight: 600;
}

/* Provider + management subnav */
body.dashboard-page .provider-subnav {
  gap: 8px;
  margin-bottom: 4px;
  padding: 2px 0 8px;
}

body.dashboard-page .dashboard-management-shell {
  margin-bottom: 8px;
}

body.dashboard-page .provider-subnav__item {
  min-height: var(--dash-nav2-height);
  padding: 0 14px;
  border: 1px solid var(--dash-nav2-border);
  border-radius: var(--dash-nav2-radius);
  background: var(--dash-nav2-bg);
  color: var(--dash-nav2-text);
  font-family: var(--dash-font-family);
  font-size: var(--dash-nav2-font-size);
  font-weight: var(--dash-nav2-font-weight);
  letter-spacing: 0.01em;
  box-shadow: none;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

body.dashboard-page .provider-subnav__item:hover {
  background: var(--dash-nav2-hover-bg);
  border-color: #c8d4e6;
  color: #223249;
}

body.dashboard-page .provider-subnav__item.is-active {
  background: var(--dash-nav2-active-bg);
  border-color: var(--dash-nav2-border-active);
  color: var(--dash-nav2-text-strong);
  box-shadow: none;
}

/* Dashboard preferences tabs */
body.dashboard-page .dashboard-preferences__nav {
  background: #fbfdff;
  border-right: 1px solid var(--dash-nav2-border);
  padding: 14px;
  gap: 6px;
}

body.dashboard-page .dashboard-preferences__tab {
  min-height: 36px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: #516178;
  font-family: var(--dash-font-family);
  font-size: 0.83rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  padding: 8px 11px;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

body.dashboard-page .dashboard-preferences__tab:hover {
  background: #f2f6fc;
  border-color: #e2eaf4;
  color: #2a3b54;
}

body.dashboard-page .dashboard-preferences__tab.is-active {
  background: #ffffff;
  border-color: #cfd9e8;
  color: #0f172a;
}

/* Overview secondary pills */
body.dashboard-page .overview-filter-pills {
  background: #ffffff;
  border: 1px solid var(--dash-nav2-border);
  border-radius: 999px;
  padding: 4px;
  gap: 4px;
}

body.dashboard-page .overview-filter-pill {
  min-height: 33px;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: #5c6c82;
  font-family: var(--dash-font-family);
  font-size: 0.79rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  padding: 0 12px;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease;
}

body.dashboard-page .overview-filter-pill:hover {
  background: #f2f6fc;
  border-color: #dce5f2;
  color: #31445f;
}

body.dashboard-page .overview-filter-pill.is-active {
  background: #eef3fb;
  border-color: #cad6e8;
  color: #0f172a;
}

body.dashboard-page .overview-filter-pill:focus-visible,
body.dashboard-page .provider-subnav__item:focus-visible,
body.dashboard-page .dashboard-preferences__tab:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 92, 140, 0.14);
}

body.dashboard-page .overview-filter-trigger {
  min-height: 38px;
  border-radius: 999px;
  border: 1px solid var(--dash-nav2-border);
  background: #fff;
  color: #2a3a52;
  font-family: var(--dash-font-family);
  font-size: 0.82rem;
  font-weight: 600;
  padding: 0 13px;
}

body.dashboard-page .overview-filter-trigger:hover {
  background: #f5f8fd;
  border-color: #c8d4e6;
}

/* Dashboard Cards Visual Redesign (global shell only) */
body.dashboard-page .customers-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

body.dashboard-page .customer-card {
  position: relative;
  border: 1px solid #d9e2ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.06);
  padding: 14px 14px 14px;
  min-height: 336px;
  gap: 12px;
  overflow: hidden;
}

body.dashboard-page .customer-card::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, rgba(13, 22, 35, 0.22), rgba(13, 22, 35, 0.05));
}

body.dashboard-page .customer-card:hover {
  border-color: #c9d6e8;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.1);
  transform: translateY(-1px);
}

body.dashboard-page .customer-card__head {
  border: 1px solid #e5ebf4;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  min-height: 64px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 44px 8px 10px;
  position: relative;
}

body.dashboard-page .customer-card__menu--top {
  top: 22px;
  right: 14px;
}

body.dashboard-page .customer-card__menu-toggle {
  width: 27px;
  height: 27px;
  border-radius: 9px;
  border: 1px solid #dbe4f1;
  background: #fff;
  color: #475569;
}

body.dashboard-page .customer-card__title,
body.dashboard-page .customer-card__meta h3 {
  font-size: clamp(1.03rem, 1.1vw, 1.26rem);
  line-height: 1.08;
  letter-spacing: -0.008em;
  color: #0f172a;
  font-weight: 700;
  margin: 0;
}

body.dashboard-page .customer-card__meta {
  min-width: 0;
  flex: 1;
  display: grid;
  gap: 4px;
}

body.dashboard-page .customer-card__category {
  margin: 0;
  color: #66758d;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
}

body.dashboard-page .customer-card__main {
  gap: 10px;
}

body.dashboard-page .customer-card__details {
  gap: 8px 10px;
}

body.dashboard-page .customer-card__details > div {
  border: 1px solid #e4ebf4;
  border-radius: 10px;
  background: #fff;
  padding: 8px 9px;
}

body.dashboard-page .customer-card__details > div:nth-child(3) {
  grid-column: 1 / -1;
  order: -1;
  border-radius: 12px;
  background: #f8fbff;
  border-color: #dfe7f3;
}

body.dashboard-page .customer-card__details > div:nth-child(3) dd {
  display: block;
}

body.dashboard-page .customer-card__details dt {
  color: #71829a;
  font-size: 0.61rem;
  font-weight: 600;
  letter-spacing: 0.09em;
}

body.dashboard-page .customer-card__details dd {
  color: #1f2a3d;
  font-size: 0.81rem;
  font-weight: 500;
}

body.dashboard-page .customer-card__origin-badge {
  border-radius: 999px;
  border: 1px solid #dfe7f3;
  background: #fff;
  color: #24344d;
  font-size: 0.72rem;
  font-weight: 600;
  padding: 2px 8px;
}

body.dashboard-page .customer-card__summary-group {
  border: 1px solid #e4ebf4;
  border-radius: 12px;
  background: #fbfdff;
  padding: 9px 10px;
  display: grid;
  gap: 7px;
}

body.dashboard-page .customer-card__summary-group h4 {
  margin: 0;
  color: #1e293b;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

body.dashboard-page .customer-card__summary-group p {
  margin: 0;
  color: #4b5b74;
  font-size: 0.77rem;
  line-height: 1.44;
}

body.dashboard-page .customer-card__summary-group dt {
  color: #7a889d;
  font-size: 0.62rem;
}

body.dashboard-page .customer-card__summary-group dd {
  color: #1f2a3d;
  font-size: 0.81rem;
}

body.dashboard-page .customer-card__seller {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
}

body.dashboard-page .customer-card__seller-avatar {
  width: 42px;
  height: 42px;
  font-size: 0.86rem;
  background: #edf2fb;
  border: 1px solid #d8e2f0;
}

body.dashboard-page .customer-card__seller-name {
  color: #1f2937;
  font-size: 0.86rem;
  font-weight: 600;
}

body.dashboard-page .customer-card__seller-block {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

body.dashboard-page .customer-card__status {
  min-height: 26px;
  padding: 2px 9px;
  border-radius: 999px;
  font-size: 0.69rem;
  font-weight: 700;
  border: 1px solid transparent;
  position: absolute;
  right: 10px;
  top: 9px;
}

body.dashboard-page .customer-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body.dashboard-page .customer-card__chips span {
  min-height: 26px;
  border-radius: 999px;
  border: 1px solid #dfe7f3;
  background: #fff;
  color: rgba(13, 22, 35, 0.78);
  font-size: 0.72rem;
  font-weight: 650;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
}

body.dashboard-page .customer-card__actions {
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid #e8eef7;
  gap: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

body.dashboard-page .customer-card__key {
  font-size: 0.92rem;
  letter-spacing: 0.01em;
  color: #111a28;
  white-space: nowrap;
}

body.dashboard-page .customer-card__actionsWrap {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

body.dashboard-page .customer-card__button,
body.dashboard-page .customer-card__button--primary {
  min-height: 30px;
  border-radius: 999px;
  padding: 0 10px;
  font-size: 0.72rem;
  font-weight: 700;
  border-color: #dfe8f4;
  background: #fff;
  color: #233247;
}

body.dashboard-page .customer-card__button:hover,
body.dashboard-page .customer-card__button--primary:hover {
  background: #f8fbff;
  border-color: #cfd9e8;
  color: #16253d;
}

body.dashboard-page .customer-card__button--danger {
  border-color: #f0d7dc;
  color: #9b2f45;
  background: #fff;
}

body.dashboard-page .customer-card__button--danger:hover {
  background: #fff7f9;
  border-color: #e9bcc8;
}

body.dashboard-page .customer-card__button--muted {
  border-color: #dce4ef;
  background: #f7f9fd;
  color: #6a7688;
}

@media (min-width: 1640px) {
  body.dashboard-page .customers-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1200px) {
  body.dashboard-page .customers-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  body.dashboard-page .customers-list {
    grid-template-columns: 1fr;
  }

  body.dashboard-page .customer-card__actions {
    flex-direction: column;
    align-items: flex-start;
  }

  body.dashboard-page .customer-card__actionsWrap {
    justify-content: flex-start;
  }
}

/* Dashboard Sidebar White Theme (visual test only; opt-in only).
   Keep disabled by default to avoid collisions with runtime dashboard shell styles.
   Enable by adding: <body class="dashboard-page" data-sidebar-theme="light"> */
body.dashboard-page[data-sidebar-theme="light"] .dashboard-sidebar {
  background: #ffffff;
  border-right: 1px solid #e2e8f0;
  color: #111827;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-sidebar__logo {
  filter: brightness(0);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__group-title {
  color: rgba(17, 24, 39, 0.56);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__group-caret {
  border-right-color: rgba(17, 24, 39, 0.52);
  border-bottom-color: rgba(17, 24, 39, 0.52);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__group-items {
  border-left: 1px solid rgba(17, 24, 39, 0.12);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__separator {
  background: linear-gradient(90deg, rgba(17, 24, 39, 0.04) 0%, rgba(17, 24, 39, 0.16) 50%, rgba(17, 24, 39, 0.04) 100%);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item {
  color: rgba(17, 24, 39, 0.86);
  --dashboard-nav-icon-color: rgba(17, 24, 39, 0.74);
  font-weight: 700;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item:hover {
  background: rgba(15, 23, 42, 0.06);
  --dashboard-nav-icon-color: rgba(17, 24, 39, 0.92);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active {
  background: #111827;
  color: #ffffff;
  box-shadow: none;
  --dashboard-nav-icon-color: #ffffff;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__count {
  border-color: #d8e1ee;
  background: #f3f6fb;
  color: #1f2937;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active .dashboard-nav__count {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-sideaction {
  color: rgba(17, 24, 39, 0.66);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-sideaction:hover {
  color: #111827;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-sidebar__legal {
  color: rgba(17, 24, 39, 0.56);
  border-top: 1px solid rgba(17, 24, 39, 0.12);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-sidebar__legal-link:hover {
  color: rgba(17, 24, 39, 0.86);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-settings__menu {
  border: 1px solid #d7e0ed;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-settings__item {
  color: rgba(17, 24, 39, 0.84);
}

/* Phase 1 dashboard shell */
body.dashboard-page[data-page="dashboard"] .dashboard-main {
  padding: 20px 24px 28px;
  gap: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 0 14px;
  margin-bottom: 14px;
  border-bottom: 1px solid #e6ebf2;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__left {
  flex: 1 1 auto;
  min-width: 0;
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__titles {
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__eyebrow {
  margin: 0 0 4px;
  color: #7b8798;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar h1 {
  margin: 0;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(1.18rem, 1.52vw, 1.48rem);
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__controls {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search {
  min-width: min(340px, 42vw);
  max-width: 420px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #d8e0ec;
  border-radius: 12px;
  background: #fff;
  padding: 0 10px;
  height: 38px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search svg {
  width: 15px;
  height: 15px;
  fill: #7f8ea3;
  flex: 0 0 auto;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: none;
  font: 500 0.84rem/1 "Plus Jakarta Sans", sans-serif;
  color: #0f172a;
  background: transparent;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search input::placeholder {
  color: #98a6b9;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 38px;
  padding: 0 10px;
  border-radius: 12px;
  border: 1px solid #d8e0ec;
  background: #fff;
  color: #4d5b70;
  font: 700 0.72rem/1 "Plus Jakarta Sans", sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap select {
  border: 0;
  background: transparent;
  color: #0f172a;
  font: 600 0.83rem/1 "Plus Jakarta Sans", sans-serif;
  outline: none;
  cursor: pointer;
  min-width: 136px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__right {
  flex: 0 0 auto;
}

body.dashboard-page[data-page="dashboard"] .dashboard-content {
  display: block;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell {
  border: 1px solid #dfe6f1;
  border-radius: 18px;
  background: #fff;
  padding: 18px;
  box-shadow: 0 6px 22px rgba(15, 23, 42, 0.05);
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__copy {
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__eyebrow {
  margin: 0 0 7px;
  color: #6f7e92;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(1.18rem, 1.8vw, 1.42rem);
  font-weight: 700;
  letter-spacing: -0.01em;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__copy > p:last-child {
  margin: 8px 0 0;
  color: #607086;
  font-size: 0.9rem;
  line-height: 1.45;
  max-width: 70ch;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__action {
  border: 1px dashed #cfdae8;
  border-radius: 10px;
  padding: 8px 10px;
  background: #f8fafc;
  color: #8a98ab;
  font: 700 0.74rem/1 "Plus Jakarta Sans", sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: not-allowed;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__toolbar {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__chip {
  border-radius: 999px;
  border: 1px solid #d8e1ef;
  background: #f8fafd;
  color: #4f5f75;
  font: 700 0.7rem/1 "Plus Jakarta Sans", sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 6px 9px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__body {
  margin-top: 16px;
  border: 1px solid #e4ebf5;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafd 100%);
  min-height: min(52vh, 420px);
  display: grid;
  place-items: center;
  padding: 20px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__empty {
  max-width: 620px;
  text-align: center;
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__empty h3 {
  margin: 0;
  color: #162034;
  font-size: 1.06rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__empty p {
  margin: 0;
  color: #64748b;
  font-size: 0.9rem;
  line-height: 1.55;
}

@media (max-width: 1140px) {
  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__controls {
    flex-wrap: wrap;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search {
    min-width: 260px;
    max-width: 100%;
  }
}

@media (max-width: 900px) {
  body.dashboard-page[data-page="dashboard"] .dashboard-main {
    padding: 16px 14px 20px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__left {
    width: 100%;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__controls {
    width: 100%;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search {
    min-width: 0;
    flex: 1 1 auto;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap {
    flex: 0 0 auto;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-module-shell {
    padding: 14px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-module-shell__header {
    flex-direction: column;
  }
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-settings__item:hover,
body.dashboard-page[data-sidebar-theme="light"] .dashboard-settings__item.is-active {
  background: rgba(15, 23, 42, 0.06);
  color: #111827;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-settings__label {
  color: rgba(17, 24, 39, 0.52);
}

body.dashboard-page .dashboard-settings__divider {
  background: rgba(17, 24, 39, 0.12);
}

/* Phase 2: cliente context */
body.dashboard-page[data-page="dashboard"] .client-view {
  border: 1px solid #dfe6f1;
  border-radius: 18px;
  background: #fff;
  padding: 18px;
  box-shadow: 0 6px 22px rgba(15, 23, 42, 0.05);
  display: grid;
  gap: 14px;
}

body.dashboard-page[data-page="dashboard"] .client-view__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

body.dashboard-page[data-page="dashboard"] .client-view__header h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(1.14rem, 1.6vw, 1.35rem);
  font-weight: 700;
  letter-spacing: -0.01em;
}

body.dashboard-page[data-page="dashboard"] .client-view__header p {
  margin: 6px 0 0;
  color: #607086;
  font-size: 0.9rem;
  line-height: 1.45;
  max-width: 72ch;
}

body.dashboard-page[data-page="dashboard"] .client-view__actions {
  display: inline-flex;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-view__actions button {
  border: 1px solid #d6dfec;
  border-radius: 10px;
  background: #fff;
  color: #334155;
  font: 600 0.8rem/1 "Plus Jakarta Sans", sans-serif;
  padding: 9px 12px;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease;
}

body.dashboard-page[data-page="dashboard"] .client-view__actions button:hover {
  background: #f8fafc;
  border-color: #c5d1e2;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  background: #f8fafd;
  padding: 9px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar input,
body.dashboard-page[data-page="dashboard"] .client-toolbar select {
  width: 100%;
  min-height: 36px;
  border: 1px solid #d7e1ef;
  border-radius: 9px;
  background: #fff;
  color: #0f172a;
  font: 500 0.82rem/1 "Plus Jakarta Sans", sans-serif;
  padding: 0 9px;
  outline: none;
}

body.dashboard-page[data-page="dashboard"] .client-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-kpi {
  border: 1px solid #e1e9f5;
  border-radius: 12px;
  background: #fbfdff;
  padding: 12px;
  display: grid;
  gap: 5px;
}

body.dashboard-page[data-page="dashboard"] .client-kpi p {
  margin: 0;
  color: #607086;
  font-size: 0.76rem;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .client-kpi strong {
  color: #0f172a;
  font-size: 1.44rem;
  line-height: 1;
  letter-spacing: -0.02em;
}

body.dashboard-page[data-page="dashboard"] .client-kpi small {
  color: #7a879a;
  font-size: 0.74rem;
}

body.dashboard-page[data-page="dashboard"] .client-split-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-list-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-card {
  border: 1px solid #e3eaf4;
  border-radius: 14px;
  background: #fff;
  padding: 14px;
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-card h3 {
  margin: 0;
  font-size: 0.98rem;
  color: #0f172a;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list li {
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #fcfdff;
  padding: 9px 10px;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list p {
  margin: 0;
  color: #111827;
  font-size: 0.83rem;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list small {
  margin-top: 3px;
  display: block;
  color: #748296;
  font-size: 0.76rem;
}

body.dashboard-page[data-page="dashboard"] .client-quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-quick-grid button,
body.dashboard-page[data-page="dashboard"] .client-empty__action,
body.dashboard-page[data-page="dashboard"] .client-card button,
body.dashboard-page[data-page="dashboard"] .client-table-shell button {
  border: 1px solid #d6dfec;
  border-radius: 9px;
  background: #fff;
  color: #334155;
  font: 600 0.79rem/1.2 "Plus Jakarta Sans", sans-serif;
  padding: 8px 10px;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease;
}

body.dashboard-page[data-page="dashboard"] .client-quick-grid button:hover,
body.dashboard-page[data-page="dashboard"] .client-empty__action:hover,
body.dashboard-page[data-page="dashboard"] .client-card button:hover,
body.dashboard-page[data-page="dashboard"] .client-table-shell button:hover {
  background: #f8fafc;
  border-color: #c5d1e2;
}

body.dashboard-page[data-page="dashboard"] .client-task-list {
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-task-row {
  width: 100%;
  border: 1px solid #e3eaf4;
  border-radius: 10px;
  background: #fff;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  text-align: left;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-task-row strong {
  display: block;
  color: #0f172a;
  font-size: 0.86rem;
}

body.dashboard-page[data-page="dashboard"] .client-task-row p {
  margin: 3px 0 0;
  color: #6f7f93;
  font-size: 0.78rem;
}

body.dashboard-page[data-page="dashboard"] .client-task-row span {
  color: #2563eb;
  font-size: 0.76rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .client-tabs {
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  background: #f8fafd;
  padding: 5px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button {
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #516178;
  font: 600 0.78rem/1 "Plus Jakarta Sans", sans-serif;
  padding: 8px 10px;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button.is-active {
  background: #111827;
  color: #fff;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__panel {
  display: none;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__panel.is-active {
  display: block;
}

body.dashboard-page[data-page="dashboard"] .client-empty {
  border: 1px dashed #cfd9e7;
  border-radius: 12px;
  background: #fff;
  min-height: 190px;
  display: grid;
  place-items: center;
  gap: 10px;
  text-align: center;
  padding: 18px;
}

body.dashboard-page[data-page="dashboard"] .client-empty h4 {
  margin: 0;
  color: #1f2a3e;
  font-size: 1rem;
}

body.dashboard-page[data-page="dashboard"] .client-empty p {
  margin: 0;
  color: #64748b;
  font-size: 0.85rem;
  max-width: 58ch;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  overflow: hidden;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header {
  background: #f8fafd;
  border-bottom: 1px solid #e3eaf4;
  color: #607086;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
  border-bottom: 1px solid #eef2f8;
  color: #1f2937;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div:last-child {
  border-bottom: 0;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  border-radius: 999px;
  border: 1px solid #d4def0;
  background: #f4f7fc;
  color: #334155;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 0 8px;
}

body.dashboard-page[data-page="dashboard"] .client-campaign-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-campaign-card > p {
  margin: 0;
  color: #607086;
  font-size: 0.79rem;
}

body.dashboard-page[data-page="dashboard"] .client-progress {
  border: 1px solid #e4ebf5;
  border-radius: 9px;
  background: #f8fafd;
  padding: 7px 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-progress span {
  color: #607086;
  font-size: 0.75rem;
}

body.dashboard-page[data-page="dashboard"] .client-progress strong {
  color: #0f172a;
  font-size: 0.88rem;
}

body.dashboard-page[data-page="dashboard"] .client-method-card {
  border: 1px solid #e4ebf5;
  border-radius: 12px;
  padding: 12px;
  background: #fff;
}

body.dashboard-page[data-page="dashboard"] .client-method-card strong {
  color: #0f172a;
  display: block;
  font-size: 0.84rem;
}

body.dashboard-page[data-page="dashboard"] .client-method-card p {
  margin: 5px 0 0;
  color: #607086;
  font-size: 0.79rem;
}

body.dashboard-page[data-page="dashboard"] .client-calendar {
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-calendar > header strong {
  display: block;
  color: #0f172a;
  font-size: 1rem;
}

body.dashboard-page[data-page="dashboard"] .client-calendar > header p {
  margin: 4px 0 0;
  color: #6d7c90;
  font-size: 0.79rem;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__weekdays {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__weekdays span {
  text-align: center;
  color: #68788f;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__cell {
  border: 1px solid #e4ebf5;
  border-radius: 10px;
  min-height: 62px;
  background: #fff;
  padding: 8px;
  display: grid;
  align-content: space-between;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__cell strong {
  font-size: 0.8rem;
  color: #1f2937;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__cell i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 16px;
  border-radius: 999px;
  background: #eef4ff;
  color: #1d4ed8;
  font-size: 0.66rem;
  font-weight: 700;
  font-style: normal;
  padding: 0 6px;
}

body.dashboard-page[data-page="dashboard"] .client-calendar__cell.is-muted {
  background: #f8fafc;
  opacity: 0.58;
}

body.dashboard-page[data-page="dashboard"] .client-drawer {
  position: fixed;
  inset: 0;
  z-index: 90;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(15, 23, 42, 0.34);
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(520px, 100%);
  height: 100%;
  background: #fff;
  border-left: 1px solid #dde6f3;
  box-shadow: -20px 0 34px rgba(15, 23, 42, 0.14);
  display: grid;
  grid-template-rows: auto 1fr;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__head {
  border-bottom: 1px solid #e4ebf5;
  padding: 14px 16px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__eyebrow {
  margin: 0 0 4px;
  color: #6b7a90;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__head h3 {
  margin: 0;
  color: #0f172a;
  font-size: 1.04rem;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__close {
  border: 1px solid #d7e1ef;
  border-radius: 9px;
  background: #fff;
  color: #334155;
  width: 32px;
  height: 32px;
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__body {
  overflow: auto;
  padding: 16px;
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section h4 {
  margin: 0 0 8px;
  color: #0f172a;
  font-size: 0.9rem;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section dl {
  margin: 0;
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section dl div {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section dt {
  color: #607086;
  font-size: 0.76rem;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section dd {
  margin: 0;
  color: #1f2937;
  font-size: 0.8rem;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section ul {
  margin: 0;
  padding-left: 16px;
  color: #475569;
  font-size: 0.79rem;
  line-height: 1.5;
  display: grid;
  gap: 4px;
}

body.dashboard-page[data-page="dashboard"] .client-task-row.is-selected {
  border-color: #c8d7ee;
  background: #f7faff;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace {
  border: 1px solid #dfe6f1;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 26px rgba(15, 23, 42, 0.06);
  padding: 16px;
  display: grid;
  gap: 14px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__breadcrumb {
  margin: 0 0 6px;
  color: #6d7c90;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__head h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(1.18rem, 1.55vw, 1.42rem);
  letter-spacing: -0.01em;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__head p {
  margin: 6px 0 0;
  color: #607086;
  font-size: 0.86rem;
  max-width: 70ch;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__actions button,
body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__footer button,
body.dashboard-page[data-page="dashboard"] .commercial-quote-categories button,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card button,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list button {
  border: 1px solid #d4deec;
  border-radius: 10px;
  background: #fff;
  color: #334155;
  font: 600 0.78rem/1 "Plus Jakarta Sans", sans-serif;
  padding: 8px 11px;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__actions button:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__footer button:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-categories button:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card button:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list button:hover {
  background: #f8fafc;
  border-color: #c3d1e4;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__actions button:last-child,
body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__footer button.is-primary {
  background: #111827;
  color: #fff;
  border-color: #111827;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  background: #f8fafd;
  padding: 6px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button {
  border: 0;
  background: transparent;
  border-radius: 9px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #5b6b82;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button strong {
  width: 20px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid #ced9ea;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.72rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button span {
  font: 700 0.76rem/1 "Plus Jakarta Sans", sans-serif;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-active {
  background: #111827;
  color: #fff;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-active strong {
  border-color: rgba(255, 255, 255, 0.42);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-done {
  background: #eef4ff;
  color: #1d4ed8;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stage {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid--clients {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid--services {
  grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1.5fr) minmax(300px, 1fr);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid--config {
  grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-form-grid label,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-grid label,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card > label {
  display: grid;
  gap: 5px;
  color: #5f6f86;
  font-size: 0.74rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-form-grid input,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-grid input,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-grid select,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card textarea {
  width: 100%;
  min-height: 36px;
  border: 1px solid #d7e1ef;
  border-radius: 8px;
  background: #fff;
  padding: 0 9px;
  color: #0f172a;
  font: 500 0.8rem/1 "Plus Jakarta Sans", sans-serif;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card textarea {
  min-height: 66px;
  line-height: 1.35;
  padding: 8px 9px;
  resize: vertical;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-inline-summary p {
  margin: 0;
  color: #0f172a;
  font-size: 0.9rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-inline-summary small {
  color: #71829a;
  font-size: 0.76rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-categories > div {
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-categories button {
  text-align: left;
  min-height: 38px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-categories button.is-active {
  background: #111827;
  color: #fff;
  border-color: #111827;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-catalog .commercial-quote-service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card {
  border: 1px solid #e3eaf4;
  border-radius: 12px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card.is-selected {
  border-color: #c8d7ee;
  background: #f7faff;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card p {
  margin: 0;
  color: #64758d;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card h4 {
  margin: 4px 0 0;
  color: #0f172a;
  font-size: 0.86rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card small {
  color: #6d7d93;
  font-size: 0.75rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card__meta span {
  color: #0f172a;
  font-size: 0.82rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card__meta i {
  font-style: normal;
  color: #1d4ed8;
  font-size: 0.7rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card__actions {
  display: grid;
  grid-template-columns: 1fr 74px;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card__actions input {
  width: 100%;
  min-height: 34px;
  border: 1px solid #d7e1ef;
  border-radius: 8px;
  padding: 0 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-panel {
  position: sticky;
  top: 14px;
  align-self: start;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-panel > p {
  margin: 0;
  color: #1f2a3e;
  font-size: 0.84rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li {
  border: 1px solid #e4ebf5;
  border-radius: 9px;
  background: #fbfdff;
  padding: 8px 9px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li.is-empty {
  justify-content: center;
  color: #73839a;
  font-size: 0.77rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list strong {
  color: #0f172a;
  display: block;
  font-size: 0.78rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list small {
  color: #6d7d93;
  font-size: 0.72rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li > div:last-child {
  display: grid;
  gap: 3px;
  justify-items: end;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list span {
  color: #64758b;
  font-size: 0.74rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-totals {
  margin: 0;
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-totals div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-totals dt {
  color: #607086;
  font-size: 0.76rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-totals dd {
  margin: 0;
  color: #0f172a;
  font-size: 0.82rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-list {
  display: grid;
  gap: 9px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card {
  border: 1px solid #e4ebf5;
  border-radius: 11px;
  background: #fff;
  padding: 11px;
  display: grid;
  gap: 9px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card > header strong {
  color: #0f172a;
  font-size: 0.86rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card > header span {
  color: #1f2937;
  font-size: 0.8rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-config-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__footer {
  border-top: 1px solid #e8edf5;
  padding-top: 10px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__head h3 {
  margin: 0;
  color: #0f172a;
  font-size: 1rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__head p {
  margin: 5px 0 0;
  color: #607086;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__meta {
  border: 1px solid #e4ebf5;
  border-radius: 10px;
  background: #f8fafd;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__meta span {
  color: #607086;
  font-size: 0.76rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__meta strong {
  color: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__totals {
  margin-top: 8px;
  border: 1px solid #e4ebf5;
  border-radius: 10px;
  background: #fff;
  padding: 10px;
  display: grid;
  gap: 6px;
  justify-items: end;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__totals div {
  display: flex;
  gap: 10px;
  color: #3c4a5f;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__totals strong {
  color: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__notes {
  border: 1px dashed #ccd8ea;
  border-radius: 10px;
  padding: 10px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__notes h4 {
  margin: 0 0 5px;
  color: #0f172a;
  font-size: 0.84rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__notes p {
  margin: 0;
  color: #66778f;
  font-size: 0.78rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-layout-two {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 1fr);
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar {
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar > header strong {
  display: block;
  color: #0f172a;
  font-size: 1rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar > header p {
  margin: 4px 0 0;
  color: #6d7c90;
  font-size: 0.79rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__weekdays,
body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__weekdays span {
  text-align: center;
  color: #68788f;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__cell {
  border: 1px solid #e4ebf5;
  border-radius: 10px;
  min-height: 62px;
  background: #fff;
  padding: 8px;
  display: grid;
  align-content: space-between;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__cell strong {
  font-size: 0.8rem;
  color: #1f2937;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__cell i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 16px;
  border-radius: 999px;
  background: #eef4ff;
  color: #1d4ed8;
  font-size: 0.66rem;
  font-weight: 700;
  font-style: normal;
  padding: 0 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__cell.is-muted {
  background: #f8fafc;
  opacity: 0.56;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline {
  list-style: none;
  margin: 0;
  padding: 2px 0 2px 0;
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline li {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline__dot {
  margin-top: 7px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #111827;
  box-shadow: 0 0 0 3px #ecf2fb;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline li article {
  border: 1px solid #e4ebf5;
  border-radius: 10px;
  background: #fbfdff;
  padding: 10px;
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline li header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline li strong {
  color: #0f172a;
  font-size: 0.85rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline li p {
  margin: 0;
  color: #5e6e84;
  font-size: 0.79rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-timeline li small {
  color: #6f8097;
  font-size: 0.75rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-review-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-rating {
  color: #1d4ed8;
  font-size: 0.8rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-review-card p {
  margin: 0;
  color: #475569;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-review-card small {
  color: #7b8798;
  font-size: 0.75rem;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-form-card {
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-form-card label {
  display: grid;
  gap: 5px;
  color: #5f6f86;
  font-size: 0.76rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .provider-phase5-form-card input,
body.dashboard-page[data-page="dashboard"] .provider-phase5-form-card select {
  width: 100%;
  min-height: 36px;
  border: 1px solid #d7e1ef;
  border-radius: 8px;
  background: #fff;
  padding: 0 9px;
  color: #0f172a;
  font: 500 0.8rem/1 "Plus Jakarta Sans", sans-serif;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-layout-two {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 1fr);
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > div {
  grid-template-columns: 1.3fr 0.9fr 0.8fr 0.9fr 0.78fr 0.7fr 0.76fr 0.8fr;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > div {
  grid-template-columns: 0.85fr 0.95fr 0.82fr 0.72fr 0.78fr 0.72fr 0.9fr;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > div {
  grid-template-columns: 1.1fr 0.65fr 0.78fr 0.74fr 1.15fr 0.8fr;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-risk,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  border-radius: 999px;
  border: 1px solid #d7e1ef;
  background: #f8fafc;
  color: #334155;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 0 8px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-risk.is-high,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority.is-high {
  border-color: #fecaca;
  background: #fff1f2;
  color: #b91c1c;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-risk.is-medium,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority.is-medium {
  border-color: #fde68a;
  background: #fffbeb;
  color: #b45309;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-risk.is-low,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority.is-low {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-list {
  display: grid;
  gap: 9px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row {
  width: 100%;
  border: 1px solid #e2eaf6;
  border-radius: 12px;
  background: #fff;
  padding: 11px 12px;
  text-align: left;
  display: grid;
  gap: 9px;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row:hover {
  border-color: #d1ddee;
  background: #fbfdff;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row header strong {
  color: #0f172a;
  font-size: 0.86rem;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row__flow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row__flow b {
  color: #64748b;
  font-size: 0.88rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-node {
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #f8fafd;
  padding: 9px 10px;
  display: grid;
  gap: 3px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-node small {
  color: #64748b;
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-node p {
  margin: 0;
  color: #0f172a;
  font-size: 0.8rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-node span {
  color: #607086;
  font-size: 0.74rem;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row footer {
  color: #55657b;
  font-size: 0.76rem;
  line-height: 1.4;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-layout-two {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 1fr);
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > div {
  grid-template-columns: 1fr 1.1fr 1.1fr 0.72fr 0.74fr 0.82fr;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > div {
  grid-template-columns: 1.2fr 0.75fr 0.62fr 0.72fr;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > div {
  grid-template-columns: 1.2fr 0.78fr 0.9fr 0.76fr 0.76fr 0.8fr;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card {
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card label {
  display: grid;
  gap: 5px;
  color: #5f6f86;
  font-size: 0.76rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card input:not([type="checkbox"]),
body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card select {
  width: 100%;
  min-height: 36px;
  border: 1px solid #d7e1ef;
  border-radius: 8px;
  background: #fff;
  padding: 0 9px;
  color: #0f172a;
  font: 500 0.8rem/1 "Plus Jakarta Sans", sans-serif;
}

body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card__toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #334155;
  font-size: 0.8rem;
  font-weight: 600;
}

/* Phase 8: shared components + global states + base polish */
body.dashboard-page[data-page="dashboard"] {
  --dash-ui-border: #dfe6f1;
  --dash-ui-border-soft: #e8eef7;
  --dash-ui-surface: #ffffff;
  --dash-ui-surface-soft: #f8fafd;
  --dash-ui-title: #0f172a;
  --dash-ui-text: #475569;
  --dash-ui-text-muted: #6c7c92;
  --dash-ui-focus: #93c5fd;
  --dash-ui-shadow-soft: 0 8px 24px rgba(15, 23, 42, 0.06);
}

body.dashboard-page[data-page="dashboard"] .client-view,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace {
  border: 1px solid var(--dash-ui-border);
  border-radius: 16px;
  background: var(--dash-ui-surface);
  box-shadow: var(--dash-ui-shadow-soft);
  padding: 16px;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-view__header h2,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__head h2 {
  color: var(--dash-ui-title);
  letter-spacing: -0.012em;
}

body.dashboard-page[data-page="dashboard"] .client-view__header p,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__head p {
  color: var(--dash-ui-text-muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar {
  border-color: var(--dash-ui-border-soft);
  border-radius: 11px;
  background: var(--dash-ui-surface-soft);
  padding: 8px;
  grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
  gap: 7px;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar input,
body.dashboard-page[data-page="dashboard"] .client-toolbar select,
body.dashboard-page[data-page="dashboard"] .client-view input:not([type="checkbox"]):not([type="radio"]),
body.dashboard-page[data-page="dashboard"] .client-view textarea,
body.dashboard-page[data-page="dashboard"] .client-view select,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace input:not([type="checkbox"]):not([type="radio"]),
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace textarea,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace select {
  min-height: 36px;
  border-radius: 9px;
  border: 1px solid #d6e0ee;
  background: #fff;
  color: var(--dash-ui-title);
}

body.dashboard-page[data-page="dashboard"] .client-kpi {
  border-radius: 11px;
  border-color: var(--dash-ui-border-soft);
  background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
  min-height: 92px;
}

body.dashboard-page[data-page="dashboard"] .client-kpi p {
  color: var(--dash-ui-text-muted);
  font-size: 0.73rem;
  letter-spacing: 0.02em;
}

body.dashboard-page[data-page="dashboard"] .client-kpi strong {
  font-size: clamp(1.2rem, 1.8vw, 1.42rem);
}

body.dashboard-page[data-page="dashboard"] .client-card {
  border-color: var(--dash-ui-border-soft);
  border-radius: 12px;
  padding: 13px;
}

body.dashboard-page[data-page="dashboard"] .client-card h3 {
  font-size: 0.93rem;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list li,
body.dashboard-page[data-page="dashboard"] .client-task-row,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card {
  border-color: var(--dash-ui-border-soft);
  border-radius: 10px;
  transition: border-color 0.16s ease, background-color 0.16s ease;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list li:hover,
body.dashboard-page[data-page="dashboard"] .client-task-row:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card:hover {
  border-color: #cfdbeb;
  background: #fbfdff;
}

body.dashboard-page[data-page="dashboard"] .client-tabs {
  gap: 9px;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar {
  border-color: var(--dash-ui-border-soft);
  border-radius: 11px;
  padding: 4px;
  gap: 5px;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button {
  border-radius: 7px;
  min-height: 33px;
  padding: 8px 11px;
  font-size: 0.76rem;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button.is-active {
  background: #111827;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.2);
}

body.dashboard-page[data-page="dashboard"] .client-empty {
  border-color: #d6e1ef;
  border-radius: 12px;
  min-height: 172px;
  gap: 8px;
  padding: 16px;
}

body.dashboard-page[data-page="dashboard"] .client-empty::before {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 999px;
  border: 1px dashed #c9d6e8;
  background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%);
}

body.dashboard-page[data-page="dashboard"] .client-empty.is-no-results::before {
  border-style: solid;
  background: linear-gradient(180deg, #fff 0%, #f5f9ff 100%);
}

body.dashboard-page[data-page="dashboard"] .client-empty h4 {
  font-size: 0.96rem;
}

body.dashboard-page[data-page="dashboard"] .client-empty p {
  font-size: 0.82rem;
  color: var(--dash-ui-text-muted);
}

body.dashboard-page[data-page="dashboard"] .client-table-shell {
  border-color: var(--dash-ui-border-soft);
  border-radius: 11px;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header {
  background: #f8fbff;
  border-bottom-color: var(--dash-ui-border-soft);
  color: #64748b;
  font-size: 0.71rem;
  letter-spacing: 0.04em;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
  border-bottom-color: #edf2f9;
  min-height: 44px;
  font-size: 0.79rem;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div:hover {
  background: #fafcff;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip {
  min-height: 19px;
  border-radius: 999px;
  border-color: #d5dfef;
  background: #f4f7fc;
  color: #334155;
  font-size: 0.68rem;
  letter-spacing: 0.01em;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip.is-success {
  border-color: #b7ebd1;
  background: #ecfdf3;
  color: #166534;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip.is-warning {
  border-color: #f6e0aa;
  background: #fffbeb;
  color: #a16207;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip.is-danger {
  border-color: #fecaca;
  background: #fff1f2;
  color: #b91c1c;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip.is-info {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip.is-muted {
  border-color: #d7deea;
  background: #f8fafc;
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
  width: min(560px, 100%);
  border-left-color: #dbe4f2;
  box-shadow: -18px 0 30px rgba(15, 23, 42, 0.13);
  transform: translateX(20px);
  opacity: 0;
  transition: transform 0.18s ease, opacity 0.18s ease;
}

body.dashboard-page[data-page="dashboard"] .client-drawer:not([hidden]) .client-drawer__panel {
  transform: translateX(0);
  opacity: 1;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__backdrop {
  background: rgba(15, 23, 42, 0.3);
}

body.dashboard-page[data-page="dashboard"] button.dash-btn {
  min-height: 34px;
  border-radius: 9px;
  border: 1px solid #d3ddec;
  background: #fff;
  color: #334155;
  font: 600 0.78rem/1 "Plus Jakarta Sans", sans-serif;
  padding: 8px 11px;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn.dash-btn--primary {
  border-color: #111827;
  background: #111827;
  color: #fff;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn.dash-btn--secondary {
  border-color: #cbd8eb;
  background: #f8fbff;
  color: #334155;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn.dash-btn--ghost {
  border-color: #d7e1ef;
  background: #fff;
  color: #334155;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn:hover {
  border-color: #bfcde1;
  background: #f8fbff;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn.dash-btn--primary:hover {
  border-color: #0f172a;
  background: #0f172a;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn:disabled {
  opacity: 0.58;
  cursor: not-allowed;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__close.dash-btn {
  width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  font-size: 1.05rem;
  line-height: 1;
}

body.dashboard-page[data-page="dashboard"] button:focus-visible,
body.dashboard-page[data-page="dashboard"] input:focus-visible,
body.dashboard-page[data-page="dashboard"] select:focus-visible,
body.dashboard-page[data-page="dashboard"] textarea:focus-visible,
body.dashboard-page[data-page="dashboard"] .dashboard-nav__item:focus-visible,
body.dashboard-page[data-page="dashboard"] .client-tabs__bar button:focus-visible {
  outline: 2px solid var(--dash-ui-focus);
  outline-offset: 2px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item.is-active {
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.2);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper {
  border-color: var(--dash-ui-border-soft);
  border-radius: 11px;
  background: var(--dash-ui-surface-soft);
  padding: 5px;
  gap: 5px;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button {
  min-height: 42px;
  border-radius: 8px;
  transition: background-color 0.16s ease, color 0.16s ease;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button strong {
  width: 18px;
  height: 18px;
  border-color: #ced8e7;
  font-size: 0.68rem;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-active {
  background: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-done {
  background: #eef4ff;
  color: #1d4ed8;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-panel {
  top: 12px;
}

@media (max-width: 1180px) {
  body.dashboard-page[data-page="dashboard"] .client-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.dashboard-page[data-page="dashboard"] .client-kpi-grid,
  body.dashboard-page[data-page="dashboard"] .client-list-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid--services {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-panel {
    position: static;
  }

  body.dashboard-page[data-page="dashboard"] .provider-phase5-layout-two,
  body.dashboard-page[data-page="dashboard"] .provider-phase5-review-grid {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .operations-phase6-layout-two {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .admin-phase7-layout-two,
  body.dashboard-page[data-page="dashboard"] .admin-phase7-mini-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  body.dashboard-page[data-page="dashboard"] .client-view {
    padding: 14px;
  }

  body.dashboard-page[data-page="dashboard"] .client-view__header {
    flex-direction: column;
    align-items: stretch;
  }

  body.dashboard-page[data-page="dashboard"] .client-view__actions {
    justify-content: flex-start;
  }

  body.dashboard-page[data-page="dashboard"] .client-kpi-grid,
  body.dashboard-page[data-page="dashboard"] .client-split-grid,
  body.dashboard-page[data-page="dashboard"] .client-list-grid {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .client-table-shell > header,
  body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  body.dashboard-page[data-page="dashboard"] .client-table-shell > header {
    display: none;
  }

  body.dashboard-page[data-page="dashboard"] .client-calendar__weekdays,
  body.dashboard-page[data-page="dashboard"] .client-calendar__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace {
    padding: 12px;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__head {
    flex-direction: column;
    align-items: stretch;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace__actions {
    justify-content: flex-start;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid--clients,
  body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__grid--config {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-form-grid,
  body.dashboard-page[data-page="dashboard"] .commercial-quote-config-grid,
  body.dashboard-page[data-page="dashboard"] .commercial-quote-catalog .commercial-quote-service-grid,
  body.dashboard-page[data-page="dashboard"] .commercial-quote-invoice__meta {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__weekdays,
  body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row__flow {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row__flow b {
    display: none;
  }
}

/* Phase 9: responsive + QA visual + final shell cleanup */
body.dashboard-page[data-page="dashboard"] {
  --dash-shell-sidebar-width: 292px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell {
  grid-template-columns: var(--dash-shell-sidebar-width) minmax(0, 1fr);
}

body.dashboard-page[data-page="dashboard"] .dashboard-sidebar {
  min-width: 0;
  overflow: hidden;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
  scrollbar-width: thin;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item-main > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .dashboard-main,
body.dashboard-page[data-page="dashboard"] .dashboard-content,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__left,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__controls,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__right,
body.dashboard-page[data-page="dashboard"] #dashboardUserboxMount,
body.dashboard-page[data-page="dashboard"] .dashboard-userbox,
body.dashboard-page[data-page="dashboard"] .dashboard-userbox__button,
body.dashboard-page[data-page="dashboard"] .client-view,
body.dashboard-page[data-page="dashboard"] .client-card,
body.dashboard-page[data-page="dashboard"] .client-table-shell,
body.dashboard-page[data-page="dashboard"] .client-drawer__section,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace {
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact {
  align-items: flex-start;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__controls {
  flex-wrap: wrap;
  row-gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search {
  flex: 1 1 320px;
  min-width: 220px;
  max-width: 100%;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap {
  flex: 0 1 260px;
  min-width: 174px;
  max-width: 100%;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap span {
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__quick {
  flex-wrap: wrap;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-userbox__info {
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-userbox__info span,
body.dashboard-page[data-page="dashboard"] .dashboard-userbox__info small {
  max-width: 190px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .client-view__header {
  flex-wrap: wrap;
}

body.dashboard-page[data-page="dashboard"] .client-view__header > div:first-child {
  min-width: 0;
  flex: 1 1 380px;
}

body.dashboard-page[data-page="dashboard"] .client-view__actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar {
  align-items: stretch;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar > * {
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar {
  scrollbar-width: thin;
  overscroll-behavior-x: contain;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button {
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
  min-width: 760px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > div {
  min-width: 1180px;
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > div {
  min-width: 1020px;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell button {
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .client-empty h4,
body.dashboard-page[data-page="dashboard"] .client-empty p {
  max-width: 62ch;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority {
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .client-drawer {
  z-index: 120;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
  max-width: 100vw;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__body {
  overscroll-behavior: contain;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button span {
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li > div:first-child {
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list strong,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 1360px) {
  body.dashboard-page[data-page="dashboard"] {
    --dash-shell-sidebar-width: 264px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-main {
    padding: 18px 18px 24px;
  }
}

@media (max-width: 1180px) {
  body.dashboard-page[data-page="dashboard"] {
    --dash-shell-sidebar-width: 236px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact {
    flex-wrap: wrap;
    row-gap: 10px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__left {
    flex: 1 1 100%;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__right {
    width: 100%;
    justify-content: space-between;
  }

  body.dashboard-page[data-page="dashboard"] .client-tabs__bar {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  body.dashboard-page[data-page="dashboard"] .client-tabs__bar button {
    flex: 0 0 auto;
  }
}

@media (max-width: 1024px) {
  body.dashboard-page[data-page="dashboard"] {
    --dash-shell-sidebar-width: 210px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-main {
    padding: 16px 14px 22px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-nav__item {
    font-size: 0.82rem;
    padding: 9px 10px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-nav__item-main {
    gap: 7px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-nav__count {
    min-width: 18px;
    height: 18px;
    font-size: 0.62rem;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap {
    flex-basis: 220px;
    min-width: 160px;
  }
}

@media (max-width: 900px) {
  body.dashboard-page[data-page="dashboard"] {
    --dash-shell-sidebar-width: 198px;
  }

  body.dashboard-page[data-page="dashboard"] .client-view__actions {
    justify-content: flex-start;
  }

  body.dashboard-page[data-page="dashboard"] .client-table-shell {
    border: 0;
    border-radius: 0;
    background: transparent;
    overflow: visible;
  }

  body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
    min-width: 0;
    border: 1px solid #e4ebf5;
    border-radius: 10px;
    margin-bottom: 8px;
    padding: 10px;
    background: #fff;
  }

  body.dashboard-page[data-page="dashboard"] .client-table-shell > div:last-child {
    margin-bottom: 0;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(156px, 1fr);
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button {
    justify-content: flex-start;
    padding: 0 10px;
  }

  body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
    width: min(86vw, 560px);
  }
}

@media (max-width: 760px) {
  body.dashboard-page[data-page="dashboard"] .client-toolbar {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .client-quick-grid {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .client-calendar__weekdays,
  body.dashboard-page[data-page="dashboard"] .client-calendar__grid,
  body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__weekdays,
  body.dashboard-page[data-page="dashboard"] .provider-phase5-calendar__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card__actions {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__footer {
    justify-content: stretch;
  }

  body.dashboard-page[data-page="dashboard"] .commercial-quote-stage__footer button {
    flex: 1 1 calc(50% - 8px);
  }
}

@media (max-width: 640px) {
  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap span,
  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__eyebrow {
    display: none;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap {
    min-width: 0;
    flex-basis: 150px;
    padding-inline: 8px;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-userbox__info small {
    display: none;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-topbar__notifMenu {
    right: 0;
    left: auto;
    width: min(92vw, 340px);
  }

  body.dashboard-page[data-page="dashboard"] .client-empty {
    min-height: 140px;
    padding: 12px;
  }

  body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
    width: 100%;
  }
}

/* Phase 10: microinteractions + premium detail + final visual finish */
body.dashboard-page[data-page="dashboard"] {
  --dash-motion-fast: 0.12s;
  --dash-motion-base: 0.18s;
  --dash-motion-slow: 0.24s;
  --dash-ease-premium: cubic-bezier(0.22, 0.61, 0.36, 1);
  --dash-focus-ring: 0 0 0 3px rgba(59, 130, 246, 0.14);
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item,
body.dashboard-page[data-page="dashboard"] .dashboard-nav__group-title,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap,
body.dashboard-page[data-page="dashboard"] .dashboard-userbox__button,
body.dashboard-page[data-page="dashboard"] .client-tabs__bar button,
body.dashboard-page[data-page="dashboard"] .client-task-row,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div,
body.dashboard-page[data-page="dashboard"] .client-card,
body.dashboard-page[data-page="dashboard"] .client-kpi,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card,
body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row,
body.dashboard-page[data-page="dashboard"] .client-status-chip,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority,
body.dashboard-page[data-page="dashboard"] button.dash-btn {
  transition:
    color var(--dash-motion-base) var(--dash-ease-premium),
    background-color var(--dash-motion-base) var(--dash-ease-premium),
    border-color var(--dash-motion-base) var(--dash-ease-premium),
    box-shadow var(--dash-motion-base) var(--dash-ease-premium),
    transform var(--dash-motion-fast) var(--dash-ease-premium),
    opacity var(--dash-motion-base) var(--dash-ease-premium);
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item:hover {
  box-shadow: 0 1px 10px rgba(15, 23, 42, 0.12);
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item.is-active {
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.16);
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item:active {
  transform: translateX(0);
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item:focus-visible,
body.dashboard-page[data-page="dashboard"] .dashboard-nav__group-title:focus-visible,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn:focus-visible,
body.dashboard-page[data-page="dashboard"] .dashboard-userbox__button:focus-visible {
  outline: none;
  box-shadow: var(--dash-focus-ring);
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn {
  border: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn:hover {
  border-color: transparent;
  background: transparent;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn:active {
  transform: translateY(1px);
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search:hover,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap:hover {
  border-color: #c8d5e7;
  background: #fbfdff;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__search:focus-within,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap:focus-within {
  border-color: #9cb4d5;
  box-shadow: var(--dash-focus-ring);
}

body.dashboard-page[data-page="dashboard"] .dashboard-userbox__button:hover {
  background: #f8fbff;
  box-shadow: 0 1px 8px rgba(15, 23, 42, 0.08);
}

body.dashboard-page[data-page="dashboard"] .client-view__header {
  border-bottom: 1px solid transparent;
}

body.dashboard-page[data-page="dashboard"] .client-view__header + .client-toolbar {
  margin-top: -2px;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar input,
body.dashboard-page[data-page="dashboard"] .client-toolbar select,
body.dashboard-page[data-page="dashboard"] .client-view input:not([type="checkbox"]):not([type="radio"]),
body.dashboard-page[data-page="dashboard"] .client-view textarea,
body.dashboard-page[data-page="dashboard"] .client-view select,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace input:not([type="checkbox"]):not([type="radio"]),
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace textarea,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace select {
  transition:
    border-color var(--dash-motion-base) var(--dash-ease-premium),
    box-shadow var(--dash-motion-base) var(--dash-ease-premium),
    background-color var(--dash-motion-base) var(--dash-ease-premium);
}

body.dashboard-page[data-page="dashboard"] .client-toolbar input:hover,
body.dashboard-page[data-page="dashboard"] .client-toolbar select:hover,
body.dashboard-page[data-page="dashboard"] .client-view input:not([type="checkbox"]):not([type="radio"]):hover,
body.dashboard-page[data-page="dashboard"] .client-view textarea:hover,
body.dashboard-page[data-page="dashboard"] .client-view select:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace input:not([type="checkbox"]):not([type="radio"]):hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace textarea:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace select:hover {
  border-color: #c7d5e8;
}

body.dashboard-page[data-page="dashboard"] .client-toolbar input:focus,
body.dashboard-page[data-page="dashboard"] .client-toolbar select:focus,
body.dashboard-page[data-page="dashboard"] .client-view input:not([type="checkbox"]):not([type="radio"]):focus,
body.dashboard-page[data-page="dashboard"] .client-view textarea:focus,
body.dashboard-page[data-page="dashboard"] .client-view select:focus,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace input:not([type="checkbox"]):not([type="radio"]):focus,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace textarea:focus,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace select:focus {
  border-color: #9cb4d5;
  box-shadow: var(--dash-focus-ring);
  outline: none;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button:hover {
  background: #edf3fb;
  color: #334155;
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button.is-active {
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.22);
}

body.dashboard-page[data-page="dashboard"] .client-tabs__bar button:active {
  transform: translateY(1px);
}

@keyframes dashTabPanelIn {
  from {
    opacity: 0;
    transform: translateY(2px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

body.dashboard-page[data-page="dashboard"] .client-tabs__panel.is-active {
  animation: dashTabPanelIn var(--dash-motion-base) var(--dash-ease-premium) both;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div:hover,
body.dashboard-page[data-page="dashboard"] .client-task-row:hover {
  border-color: #d0dced;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div:focus-within,
body.dashboard-page[data-page="dashboard"] .client-task-row:focus-within {
  box-shadow: inset 0 0 0 1px rgba(147, 197, 253, 0.75);
}

body.dashboard-page[data-page="dashboard"] .client-card:hover,
body.dashboard-page[data-page="dashboard"] .client-kpi:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row:hover {
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
}

body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row:active,
body.dashboard-page[data-page="dashboard"] .client-task-row:active {
  transform: translateY(1px);
}

body.dashboard-page[data-page="dashboard"] .client-drawer__backdrop {
  opacity: 0;
  transition: opacity var(--dash-motion-slow) var(--dash-ease-premium);
}

body.dashboard-page[data-page="dashboard"] .client-drawer:not([hidden]) .client-drawer__backdrop {
  opacity: 1;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
  transition:
    transform var(--dash-motion-slow) var(--dash-ease-premium),
    opacity var(--dash-motion-slow) var(--dash-ease-premium),
    box-shadow var(--dash-motion-base) var(--dash-ease-premium);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button strong {
  transition:
    border-color var(--dash-motion-base) var(--dash-ease-premium),
    background-color var(--dash-motion-base) var(--dash-ease-premium),
    color var(--dash-motion-base) var(--dash-ease-premium);
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-active strong {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}

body.dashboard-page[data-page="dashboard"] .commercial-quote-stepper button.is-done strong {
  border-color: #bfd3f7;
  background: #fff;
  color: #1d4ed8;
}

body.dashboard-page[data-page="dashboard"] button.dash-btn:hover {
  box-shadow: 0 1px 8px rgba(15, 23, 42, 0.08);
}

body.dashboard-page[data-page="dashboard"] button.dash-btn:active {
  transform: translateY(1px);
}

body.dashboard-page[data-page="dashboard"] .client-status-chip:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority:hover {
  filter: saturate(1.05);
}

body.dashboard-page[data-page="dashboard"] .client-empty {
  transition:
    border-color var(--dash-motion-base) var(--dash-ease-premium),
    background-color var(--dash-motion-base) var(--dash-ease-premium);
}

body.dashboard-page[data-page="dashboard"] .client-empty:hover {
  border-color: #c8d6ea;
  background: #fbfdff;
}

@media (hover: none) {
  body.dashboard-page[data-page="dashboard"] .client-card:hover,
  body.dashboard-page[data-page="dashboard"] .client-kpi:hover,
  body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card:hover,
  body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card:hover,
  body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row:hover,
  body.dashboard-page[data-page="dashboard"] button.dash-btn:hover {
    box-shadow: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.dashboard-page[data-page="dashboard"] *,
  body.dashboard-page[data-page="dashboard"] *::before,
  body.dashboard-page[data-page="dashboard"] *::after {
    animation: none !important;
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
    scroll-behavior: auto !important;
  }
}

/* Strategic visual uplift: premium SaaS / marketplace finish */
body.dashboard-page[data-page="dashboard"] {
  --dash-workspace-bg: #f4f7fc;
  --dash-surface-elevated: #ffffff;
  --dash-surface-soft-2: #f7faff;
  --dash-border-premium: #d9e3f1;
  --dash-border-premium-soft: #e7eef8;
  --dash-shadow-workspace: 0 14px 36px rgba(15, 23, 42, 0.08);
  --dash-shadow-block: 0 6px 16px rgba(15, 23, 42, 0.06);
  --dash-shadow-drawer: -24px 0 44px rgba(2, 8, 23, 0.22);
}

body.dashboard-page[data-page="dashboard"] .dashboard-main {
  background:
    radial-gradient(110% 110% at 100% -10%, rgba(59, 130, 246, 0.08) 0%, rgba(59, 130, 246, 0) 48%),
    linear-gradient(180deg, #f8fbff 0%, var(--dash-workspace-bg) 100%);
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) {
  border: 1px solid var(--dash-border-premium-soft);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(6px);
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.04);
  padding: 11px 13px;
  margin-bottom: 16px;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-sidebar {
  background:
    radial-gradient(90% 140% at 0% 0%, rgba(59, 130, 246, 0.06) 0%, rgba(59, 130, 246, 0) 60%),
    linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item {
  border: 1px solid transparent;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item:hover {
  border-color: #dbe6f4;
  background: #f4f8ff;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active {
  border-color: #101828;
  box-shadow: none;
}

body.dashboard-page[data-page="dashboard"] .dashboard-content > * {
  position: relative;
}

body.dashboard-page[data-page="dashboard"] .client-view,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace,
body.dashboard-page[data-page="dashboard"] .dashboard-module-shell {
  background: linear-gradient(180deg, #ffffff 0%, #fcfdff 100%);
  border-color: var(--dash-border-premium);
  box-shadow: var(--dash-shadow-workspace);
}

body.dashboard-page[data-page="dashboard"] .client-view__header {
  padding-bottom: 10px;
  border-bottom: 1px solid var(--dash-border-premium-soft);
}

body.dashboard-page[data-page="dashboard"] .client-toolbar {
  background: linear-gradient(180deg, #fbfdff 0%, #f6f9fe 100%);
  border-color: var(--dash-border-premium);
}

body.dashboard-page[data-page="dashboard"] .client-card,
body.dashboard-page[data-page="dashboard"] .client-kpi,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li,
body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row,
body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card {
  border-color: var(--dash-border-premium-soft);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

body.dashboard-page[data-page="dashboard"] .client-table-shell {
  border-color: var(--dash-border-premium);
  background: #ffffff;
  box-shadow: var(--dash-shadow-block);
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header {
  background: linear-gradient(180deg, #fbfdff 0%, #f4f8ff 100%);
  border-bottom-color: var(--dash-border-premium-soft);
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
  background: linear-gradient(180deg, #ffffff 0%, #fcfdff 100%);
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div:hover {
  background: #f6f9ff;
  border-bottom-color: #d8e3f2;
}

body.dashboard-page[data-page="dashboard"] .client-empty {
  background: linear-gradient(180deg, #ffffff 0%, #f9fcff 100%);
}

/* Drawer pattern: keep workspace context visible and avoid white takeover */
body.dashboard-page[data-page="dashboard"] .client-drawer {
  background: transparent;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__backdrop {
  background: rgba(7, 12, 22, 0.34);
  backdrop-filter: blur(2px) saturate(112%);
}

body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
  width: clamp(390px, 37vw, 540px);
  max-width: calc(100vw - 22px);
  margin-block: 11px;
  height: calc(100% - 22px);
  border-left: 1px solid #d6e1ef;
  border-top-left-radius: 18px;
  border-bottom-left-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  box-shadow: var(--dash-shadow-drawer);
  overflow: hidden;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__head {
  position: sticky;
  top: 0;
  z-index: 2;
  backdrop-filter: blur(8px);
  background: rgba(255, 255, 255, 0.9);
  border-bottom-color: #e2ebf8;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__body {
  background: linear-gradient(180deg, #f8fbff 0%, #f4f8ff 100%);
}

body.dashboard-page[data-page="dashboard"] .client-drawer__section {
  border-color: #dde7f4;
  background: #ffffff;
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.05);
}

body.dashboard-page[data-page="dashboard"] .client-drawer__close {
  border-color: #d7e2f0;
  background: #f8fbff;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__close:hover {
  border-color: #c5d4e8;
  background: #ffffff;
}

@media (max-width: 900px) {
  body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
    width: min(82vw, 520px);
    max-width: calc(100vw - 16px);
    margin-block: 8px;
    height: calc(100% - 16px);
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
  }

  body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
  }
}

@media (max-width: 640px) {
  body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
    width: min(88vw, 460px);
    max-width: calc(100vw - 10px);
    margin-block: 5px;
    height: calc(100% - 10px);
  }

  body.dashboard-page[data-page="dashboard"] .client-drawer__backdrop {
    background: rgba(7, 12, 22, 0.3);
  }
}

/* Targeted correction: drawer overlay + sidebar active hover + lean topbar */
body.dashboard-page[data-page="dashboard"] .client-drawer {
  position: fixed;
  inset: 0;
  background: transparent !important;
  z-index: 780;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  border-radius: 0;
  background: rgba(6, 11, 20, 0.36) !important;
  box-shadow: none !important;
  backdrop-filter: blur(2px);
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-drawer__panel {
  right: 0;
  background: #ffffff;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active,
body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active:hover,
body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active:focus-visible {
  background: #111827;
  color: #ffffff;
  border-color: #111827;
  --dashboard-nav-icon-color: #ffffff;
  box-shadow: none;
}

body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active .dashboard-nav__count,
body.dashboard-page[data-sidebar-theme="light"] .dashboard-nav__item.is-active:hover .dashboard-nav__count {
  border-color: rgba(255, 255, 255, 0.32);
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) {
  min-height: 56px;
  padding: 8px 12px;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) .dashboard-topbar__titles,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) .dashboard-topbar__eyebrow,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) #dashboardPageTitle {
  display: none !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) .dashboard-topbar__left {
  display: flex;
  align-items: center;
  gap: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider) .dashboard-topbar__controls {
  width: auto;
}

/* Final top-layer fix: avatar menu + notifications always above shell/drawers */
body.dashboard-page[data-page="dashboard"] .dashboard-topbar {
  position: relative;
  z-index: 220;
  overflow: visible;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__right,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__notifyWrap,
body.dashboard-page[data-page="dashboard"] .dashboard-userbox,
body.dashboard-page[data-page="dashboard"] #dashboardUserboxMount {
  position: relative;
  z-index: 221;
  overflow: visible;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__notifMenu,
body.dashboard-page[data-page="dashboard"] .dashboard-user-menu {
  z-index: 222 !important;
}

/* Context switching stays in avatar menu only */
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__contextSwitchWrap,
body.dashboard-page[data-page="dashboard"] #dashboardContextSwitch,
body.dashboard-page[data-page="dashboard"] #dashboardContextLabel {
  display: none !important;
}

/* SaaS visual refresh: modern, light, premium workspace */
body.dashboard-page[data-page="dashboard"] {
  --auth-ui-font: "Inter", "Geist", "Plus Jakarta Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --dash-bg-main: var(--vly-bg-page);
  --dash-surface: var(--vly-surface);
  --dash-muted-text: var(--vly-text-secondary);
  --dash-radius-modern: 12px;
  --dash-elev-soft: 0 4px 12px rgba(0, 0, 0, 0.04);
  --dash-elev-hover: 0 10px 24px rgba(15, 23, 42, 0.08);
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell,
body.dashboard-page[data-page="dashboard"] .dashboard-main,
body.dashboard-page[data-page="dashboard"] .dashboard-content {
  background: var(--dash-bg-main) !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell :where(
  h1, h2, h3, h4, h5, h6
) {
  letter-spacing: -0.02em;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell :where(
  p, small, .dashboard-topbar__eyebrow, .client-view__header p, .client-card p,
  .client-kpi small, .commercial-quote-workspace__head p, .commercial-quote-inline-summary p,
  .commercial-quote-inline-summary small, .client-empty p
) {
  color: var(--dash-muted-text);
}

body.dashboard-page[data-page="dashboard"] .dashboard-sidebar {
  background: #ffffff !important;
  border: 0 !important;
  border-right: 0 !important;
  border-radius: var(--dash-radius-modern);
  box-shadow: var(--dash-elev-soft);
}

body.dashboard-page[data-page="dashboard"] .dashboard-sidebar__brand,
body.dashboard-page[data-page="dashboard"] .dashboard-sidebar__footer,
body.dashboard-page[data-page="dashboard"] .dashboard-sidebar__legal,
body.dashboard-page[data-page="dashboard"] .dashboard-sidebar__legal-sep {
  border: 0 !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item {
  border: 0 !important;
  border-radius: 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar.dashboard-topbar--compact:not(.dashboard-topbar--provider),
body.dashboard-page[data-page="dashboard"] .client-view,
body.dashboard-page[data-page="dashboard"] .client-toolbar,
body.dashboard-page[data-page="dashboard"] .client-kpi,
body.dashboard-page[data-page="dashboard"] .client-card,
body.dashboard-page[data-page="dashboard"] .client-table-shell,
body.dashboard-page[data-page="dashboard"] .commercial-quote-workspace,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-panel,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-summary-list li,
body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row,
body.dashboard-page[data-page="dashboard"] .admin-phase7-settings-card,
body.dashboard-page[data-page="dashboard"] .client-drawer__panel,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__notifMenu,
body.dashboard-page[data-page="dashboard"] .dashboard-user-menu {
  background: var(--dash-surface) !important;
  border: 0 !important;
  border-radius: var(--dash-radius-modern);
  box-shadow: var(--dash-elev-soft);
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > div {
  border: 0 !important;
}

body.dashboard-page[data-page="dashboard"] .client-status-chip,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority {
  border: 0 !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn,
body.dashboard-page[data-page="dashboard"] .client-task-row,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div,
body.dashboard-page[data-page="dashboard"] .client-card,
body.dashboard-page[data-page="dashboard"] .client-kpi,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card,
body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row,
body.dashboard-page[data-page="dashboard"] button.dash-btn {
  transition: all 0.3s ease;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item:hover,
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn:hover,
body.dashboard-page[data-page="dashboard"] .client-task-row:hover,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div:hover,
body.dashboard-page[data-page="dashboard"] .client-card:hover,
body.dashboard-page[data-page="dashboard"] .client-kpi:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-service-card:hover,
body.dashboard-page[data-page="dashboard"] .commercial-quote-config-card:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-handoff-row:hover,
body.dashboard-page[data-page="dashboard"] button.dash-btn:hover {
  transform: translateY(-2px);
  box-shadow: var(--dash-elev-hover);
}

body.dashboard-page[data-page="dashboard"] .dashboard-topbar__iconBtn:hover {
  transform: none;
  box-shadow: none;
}

body.dashboard-page[data-page="dashboard"] .client-kpi {
  padding: 22px 20px !important;
}

body.dashboard-page[data-page="dashboard"] .client-card {
  padding: 20px !important;
}

body.dashboard-page[data-page="dashboard"] .client-task-row {
  padding: 14px 14px 14px 16px !important;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > header,
body.dashboard-page[data-page="dashboard"] .client-table-shell > div {
  padding-top: 13px !important;
  padding-bottom: 13px !important;
}

/* Premium Productivity Suite (Monday/Asana-inspired) */
body.dashboard-page[data-page="dashboard"],
body.dashboard-page[data-page="dashboard"] .dashboard-shell {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  --space-2: 8px;
  --space-4: 16px;
  --space-8: 32px;
  --ui-bg: var(--vly-bg-page);
  --ui-surface: var(--vly-surface);
  --ui-muted: var(--vly-text-secondary);
  --ui-shadow-soft: 0 4px 12px rgba(0, 0, 0, 0.04);
  --ui-shadow-float: 0 20px 42px rgba(15, 23, 42, 0.18);
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell,
body.dashboard-page[data-page="dashboard"] .dashboard-main,
body.dashboard-page[data-page="dashboard"] .dashboard-content {
  background: var(--ui-bg) !important;
}

body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-shell,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-main,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-content {
  background: var(--vly-bg-page) !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell :where(h1, h2, h3, h4, h5, h6) {
  letter-spacing: -0.02em;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell :where(p, small, .client-view__header p, .client-card p, .client-kpi small, .dashboard-topbar__eyebrow) {
  color: var(--ui-muted);
}

/* 8px spacing utilities */
body.dashboard-page[data-page="dashboard"] .gap-2 { gap: var(--space-2) !important; }
body.dashboard-page[data-page="dashboard"] .gap-4 { gap: var(--space-4) !important; }
body.dashboard-page[data-page="dashboard"] .gap-8 { gap: var(--space-8) !important; }

/* Inputs / textarea / selects */
body.dashboard-page[data-page="dashboard"] .dashboard-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
body.dashboard-page[data-page="dashboard"] .dashboard-shell textarea,
body.dashboard-page[data-page="dashboard"] .dashboard-shell select {
  -webkit-appearance: none;
  appearance: none;
  background: #f4f5f7 !important;
  border: 2px solid transparent !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  color: #0f172a;
  transition: all 0.3s ease;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell select {
  padding-right: 36px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%2364748B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 14px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-shell input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):focus,
body.dashboard-page[data-page="dashboard"] .dashboard-shell textarea:focus,
body.dashboard-page[data-page="dashboard"] .dashboard-shell select:focus {
  background: #ffffff !important;
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.16) !important;
  outline: none;
}

/* Floating dropdown feel */
body.dashboard-page[data-page="dashboard"] .dashboard-topbar__notifMenu,
body.dashboard-page[data-page="dashboard"] .dashboard-user-menu,
body.dashboard-page[data-page="dashboard"] .dashboard-settings__menu {
  background: rgba(255, 255, 255, 0.88) !important;
  border: 1px solid rgba(148, 163, 184, 0.2) !important;
  box-shadow: var(--ui-shadow-float) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 12px !important;
}

/* Sidebar cockpit */
body.dashboard-page[data-page="dashboard"] .dashboard-sidebar {
  background: #111827 !important;
  color: #dbe4f2;
  border: 0 !important;
  box-shadow: 0 20px 32px rgba(15, 23, 42, 0.2);
}

body.dashboard-page[data-page="dashboard"] .dashboard-sidebar__logo {
  filter: brightness(0) invert(1) !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sidebar :where(.dashboard-sidebar__brand, .dashboard-sidebar__footer, .dashboard-sidebar__legal, .dashboard-sidebar__legal-sep) {
  border: 0 !important;
  color: #c8d4e7;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item {
  position: relative;
  background: transparent !important;
  color: #d6dfed !important;
  border: 0 !important;
  border-radius: 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
  box-shadow: none !important;
  transform: none !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item.is-active,
body.dashboard-page[data-page="dashboard"] .dashboard-nav__item.is-active:hover {
  background: rgba(255, 255, 255, 0.14) !important;
  color: #ffffff !important;
  box-shadow: none !important;
  transform: none !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item.is-active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 4px;
  border-radius: 0 999px 999px 0;
  background: #3b82f6;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item svg {
  width: 16px;
  height: 16px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__item svg * {
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.dashboard-page[data-page="dashboard"] .dashboard-nav__count {
  border: 0 !important;
  background: rgba(255, 255, 255, 0.12) !important;
  color: #f1f5f9 !important;
}

/* Badge system (Monday-like blocks) */
body.dashboard-page[data-page="dashboard"] .badge,
body.dashboard-page[data-page="dashboard"] .status-badge,
body.dashboard-page[data-page="dashboard"] .client-status-chip,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority {
  border-radius: 4px !important;
  border: 0 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  padding: 4px 12px !important;
  box-shadow: none !important;
}

body.dashboard-page[data-page="dashboard"] .badge--success,
body.dashboard-page[data-page="dashboard"] .client-status-chip.is-success,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk.is-low,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority.is-low {
  background: #10b981 !important;
}

body.dashboard-page[data-page="dashboard"] .badge--process,
body.dashboard-page[data-page="dashboard"] .badge--prospect,
body.dashboard-page[data-page="dashboard"] .client-status-chip.is-info {
  background: #3b82f6 !important;
}

body.dashboard-page[data-page="dashboard"] .badge--pending,
body.dashboard-page[data-page="dashboard"] .client-status-chip.is-warning,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk.is-medium,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority.is-medium {
  background: #f59e0b !important;
}

body.dashboard-page[data-page="dashboard"] .badge--urgent,
body.dashboard-page[data-page="dashboard"] .client-status-chip.is-danger,
body.dashboard-page[data-page="dashboard"] .operations-phase6-risk.is-high,
body.dashboard-page[data-page="dashboard"] .operations-phase6-priority.is-high {
  background: #ef4444 !important;
}

/* Metric cards: icon circle + trend + mini sparkline */
body.dashboard-page[data-page="dashboard"] .client-kpi {
  position: relative;
  overflow: hidden;
  padding: 24px 20px !important;
}

body.dashboard-page[data-page="dashboard"] .client-kpi p {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-kpi p::before {
  content: "↗";
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  font-size: 0.78rem;
  font-weight: 700;
  background: #dbeafe;
  color: #1d4ed8;
}

body.dashboard-page[data-page="dashboard"] .client-kpi:nth-child(2) p::before { content: "●"; background: #dcfce7; color: #059669; }
body.dashboard-page[data-page="dashboard"] .client-kpi:nth-child(3) p::before { content: "▲"; background: #fef3c7; color: #d97706; }
body.dashboard-page[data-page="dashboard"] .client-kpi:nth-child(4) p::before { content: "◆"; background: #e0e7ff; color: #4338ca; }

body.dashboard-page[data-page="dashboard"] .client-kpi strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-kpi strong::after {
  content: "+12%";
  color: #10b981;
  font-size: 0.78rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .client-kpi:nth-child(2) strong::after { content: "+8%"; }
body.dashboard-page[data-page="dashboard"] .client-kpi:nth-child(3) strong::after { content: "+5%"; }
body.dashboard-page[data-page="dashboard"] .client-kpi:nth-child(4) strong::after { content: "+14%"; }

body.dashboard-page[data-page="dashboard"] .client-kpi::after {
  content: "";
  display: block;
  height: 24px;
  margin-top: 10px;
  border-radius: 8px;
  background-image:
    linear-gradient(180deg, rgba(59, 130, 246, 0.14), rgba(59, 130, 246, 0)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24'%3E%3Cpath d='M2 18 C14 8, 26 16, 38 10 S62 4, 74 11 S98 18, 118 6' stroke='%233b82f6' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
}

/* Tables and activity rows */
body.dashboard-page[data-page="dashboard"] .client-table-shell > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > header,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > header,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > header {
  border-bottom: 1px solid #f1f5f9 !important;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > div,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > div,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > div {
  border-bottom: 1px solid #f1f5f9 !important;
  background: #ffffff !important;
}

body.dashboard-page[data-page="dashboard"] .client-table-shell > div:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--orders > div:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--incidents > div:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--refunds > div:hover,
body.dashboard-page[data-page="dashboard"] .operations-phase6-table--archive > div:hover,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--users > div:hover,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--catalog > div:hover,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--rules > div:hover,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--finance > div:hover,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--policies > div:hover,
body.dashboard-page[data-page="dashboard"] .admin-phase7-table--audit > div:hover {
  background: #f8fafc !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Avatar utility for names */
body.dashboard-page[data-page="dashboard"] .table-user,
body.dashboard-page[data-page="dashboard"] .activity-user {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .table-user::before,
body.dashboard-page[data-page="dashboard"] .activity-user::before {
  content: attr(data-initials);
  width: 24px;
  height: 24px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: #2563eb;
  color: #ffffff;
  font-size: 0.68rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .table-user:not([data-initials])::before,
body.dashboard-page[data-page="dashboard"] .activity-user:not([data-initials])::before {
  content: "U";
}

body.dashboard-page[data-page="dashboard"] .client-activity-list li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

body.dashboard-page[data-page="dashboard"] .client-activity-list li::before {
  content: "V";
  width: 24px;
  height: 24px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: #2563eb;
  color: #ffffff;
  font-size: 0.68rem;
  font-weight: 700;
}

/* Priority follow-up emphasis */
body.dashboard-page[data-page="dashboard"] .client-view[data-commercial-view="commercial-summary"] > .client-card:last-of-type {
  border-left: 4px solid #f43f5e !important;
  padding-left: 18px !important;
}

body.dashboard-page[data-page="dashboard"] .client-view[data-commercial-view="commercial-summary"] .client-task-row {
  border-left: 4px solid rgba(244, 63, 94, 0.45) !important;
}

body.dashboard-page[data-page="dashboard"] .client-view[data-commercial-view="commercial-summary"] .client-task-row span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #0f172a;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .client-view[data-commercial-view="commercial-summary"] .client-task-row span::after {
  content: "→";
  transform: translateX(0);
  transition: transform 0.3s ease;
}

body.dashboard-page[data-page="dashboard"] .client-view[data-commercial-view="commercial-summary"] .client-task-row:hover span::after {
  transform: translateX(2px);
}

/* Quick-actions alignment fix: keep content pinned to top in stretched cards */
body.dashboard-page[data-page="dashboard"] .client-split-grid,
body.dashboard-page[data-page="dashboard"] .operations-phase6-layout-two,
body.dashboard-page[data-page="dashboard"] .admin-phase7-layout-two {
  align-items: start;
}

body.dashboard-page[data-page="dashboard"] .client-card {
  align-content: start;
}

body.dashboard-page[data-page="dashboard"] .client-card .client-quick-grid {
  align-content: start;
}

/* Professional account activation hub */
body.dashboard-page[data-page="dashboard"] .client-professional-entry {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-professional-entry p {
  margin: 0;
}

body.dashboard-page[data-page="dashboard"] .client-professional-hub {
  display: grid;
  gap: 14px;
}

body.dashboard-page[data-page="dashboard"] .client-professional-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-professional-card {
  border-radius: 14px;
  border: 1px solid #e4eaf5;
  background: #ffffff;
  padding: 14px;
  display: grid;
  gap: 10px;
  align-content: start;
}

body.dashboard-page[data-page="dashboard"] .client-professional-card.is-active {
  border-color: #bfdbfe;
  background: #f8fbff;
}

body.dashboard-page[data-page="dashboard"] .client-professional-card h4 {
  margin: 0;
  font-size: 1rem;
}

body.dashboard-page[data-page="dashboard"] .client-professional-card p,
body.dashboard-page[data-page="dashboard"] .client-professional-card small {
  margin: 0;
}

body.dashboard-page[data-page="dashboard"] .client-professional-card button {
  justify-self: start;
}

body.dashboard-page[data-page="dashboard"] .client-professional-note {
  margin: 0;
  color: #64748b;
  font-size: 0.88rem;
}

body.dashboard-page[data-page="dashboard"] .client-professional-shell {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-workspace {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

body.dashboard-page[data-page="dashboard"] .client-groups-workspace__nav {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
  padding: 10px;
  display: grid;
  gap: 6px;
  position: sticky;
  top: 84px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-workspace__content {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #edf2f9;
  background: #fff;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table__head,
body.dashboard-page[data-page="dashboard"] .client-groups-table__row {
  display: grid;
  grid-template-columns: 1fr 0.9fr 0.8fr 0.8fr;
  gap: 10px;
  align-items: center;
  padding: 11px 14px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table__head {
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #7c8ba0;
  background: #f8fafc;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table__row {
  border-top: 1px solid #eef3fa;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table__row button {
  justify-self: start;
  padding: 7px 10px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table--governance,
body.dashboard-page[data-page="dashboard"] .client-groups-table--payments {
  overflow: auto;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table--governance .client-groups-table__head,
body.dashboard-page[data-page="dashboard"] .client-groups-table--governance .client-groups-table__row {
  grid-template-columns: minmax(180px, 1.3fr) minmax(95px, 0.75fr) minmax(95px, 0.75fr) minmax(140px, 1fr) minmax(140px, 1fr) minmax(140px, 1fr) minmax(155px, 1.05fr) minmax(130px, 0.85fr);
  min-width: 1120px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table--payments .client-groups-table__head,
body.dashboard-page[data-page="dashboard"] .client-groups-table--payments .client-groups-table__row {
  grid-template-columns: minmax(190px, 1.25fr) minmax(150px, 1fr) minmax(160px, 1.05fr) minmax(110px, 0.75fr) minmax(110px, 0.75fr) minmax(110px, 0.7fr);
  min-width: 900px;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table__row .client-view__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
}

body.dashboard-page[data-page="dashboard"] .client-groups-table__row .client-view__actions button {
  padding: 6px 9px;
  font-size: 0.76rem;
}

@media (max-width: 1100px) {
  body.dashboard-page[data-page="dashboard"] .client-professional-grid {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .client-groups-workspace {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .client-groups-workspace__nav {
    position: static;
  }
}

/* Avatar dropdown cleanup + modernization */
body.dashboard-page[data-page="dashboard"] .dashboard-user-menu {
  min-width: 280px;
  max-width: 320px;
  padding: 10px;
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__section {
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__section-title {
  margin: 0;
  padding: 0 4px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--vly-text-secondary);
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__contexts-list {
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__context-item,
body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__item {
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 0.88rem;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__context-item {
  border: 1px solid var(--vly-border-soft) !important;
  background: color-mix(in srgb, var(--vly-surface) 88%, transparent) !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__context-item.is-active {
  border-color: color-mix(in srgb, var(--vly-accent) 45%, var(--vly-border)) !important;
  background: color-mix(in srgb, var(--vly-accent) 16%, transparent) !important;
  color: var(--vly-accent) !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__context-item.is-active .dashboard-user-menu__context-name {
  color: var(--vly-accent);
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__context-item.is-active .dashboard-user-menu__context-avatar {
  background: var(--vly-accent);
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__item {
  border: 1px solid transparent;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__item:hover {
  border-color: var(--vly-border);
  background: color-mix(in srgb, var(--vly-accent) 10%, transparent) !important;
}

body.dashboard-page[data-page="dashboard"] .dashboard-user-menu__divider {
  margin: 0;
}

/* Global avatar menu unification: dashboard + provider-topbar surfaces */
body[data-page="provider-topbar"] .dashboard-topbar {
  position: relative;
  z-index: 220;
  overflow: visible;
}

body[data-page="provider-topbar"] .dashboard-topbar.dashboard-topbar--provider {
  background: #1b1f29 !important;
  border-bottom-color: rgba(148, 163, 184, 0.22);
}

body[data-page="provider-topbar"] .dashboard-topbar__providerLogo {
  filter: brightness(0) invert(1);
}

body[data-page="provider-topbar"] .dashboard-topbar__providerLink {
  color: #e2e8f0;
}

body[data-page="provider-topbar"] .dashboard-topbar__providerLink:hover {
  color: #ffffff;
}

body[data-page="provider-topbar"] .dashboard-topbar__iconBtn {
  color: #e2e8f0;
  background: transparent;
  border-color: transparent;
}

body[data-page="provider-topbar"] .dashboard-topbar__iconBtn:hover {
  color: #ffffff;
  background: transparent;
  border-color: transparent;
}

body[data-page="provider-topbar"] .dashboard-userbox__info span {
  color: #f8fafc;
}

body[data-page="provider-topbar"] .dashboard-userbox__info small {
  color: #cbd5e1;
}

body[data-page="provider-topbar"] .dashboard-userbox__chevron {
  color: #cbd5e1;
}

body[data-page="provider-topbar"] .dashboard-topbar__right,
body[data-page="provider-topbar"] .dashboard-topbar__notifyWrap,
body[data-page="provider-topbar"] .dashboard-userbox,
body[data-page="provider-topbar"] #dashboardUserboxMount {
  position: relative;
  z-index: 221;
  overflow: visible;
}

body[data-page="provider-topbar"] .dashboard-topbar__notifMenu,
body[data-page="provider-topbar"] .dashboard-user-menu {
  z-index: 222 !important;
}

body[data-page="provider-topbar"] .dashboard-user-menu {
  min-width: 280px;
  max-width: 320px;
  padding: 10px;
  display: grid;
  gap: 10px;
  border: 0 !important;
  border-radius: 12px;
  background: var(--vly-surface-elevated) !important;
  box-shadow: var(--vly-shadow-md);
  border: 1px solid var(--vly-border) !important;
}

body[data-page="provider-topbar"] .dashboard-user-menu__section {
  display: grid;
  gap: 6px;
}

body[data-page="provider-topbar"] .dashboard-user-menu__section-title {
  margin: 0;
  padding: 0 4px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--vly-text-secondary);
}

body[data-page="provider-topbar"] .dashboard-user-menu__contexts-list {
  display: grid;
  gap: 6px;
}

body[data-page="provider-topbar"] .dashboard-user-menu__context-item,
body[data-page="provider-topbar"] .dashboard-user-menu__item {
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 0.88rem;
}

body[data-page="provider-topbar"] .dashboard-user-menu__context-item {
  border: 1px solid var(--vly-border-soft) !important;
  background: color-mix(in srgb, var(--vly-surface) 88%, transparent) !important;
}

body[data-page="provider-topbar"] .dashboard-user-menu__context-item:hover {
  background: color-mix(in srgb, var(--vly-accent) 12%, transparent) !important;
}

body[data-page="provider-topbar"] .dashboard-user-menu__context-item.is-active {
  border-color: color-mix(in srgb, var(--vly-accent) 45%, var(--vly-border)) !important;
  background: color-mix(in srgb, var(--vly-accent) 16%, transparent) !important;
  color: var(--vly-accent) !important;
}

body[data-page="provider-topbar"] .dashboard-user-menu__context-item.is-active .dashboard-user-menu__context-name {
  color: var(--vly-accent);
}

body[data-page="provider-topbar"] .dashboard-user-menu__context-item.is-active .dashboard-user-menu__context-avatar {
  background: var(--vly-accent);
}

body[data-page="provider-topbar"] .dashboard-user-menu__item {
  border: 1px solid transparent;
}

body[data-page="provider-topbar"] .dashboard-user-menu__item:hover {
  border-color: var(--vly-border);
  background: color-mix(in srgb, var(--vly-accent) 10%, transparent) !important;
}

body[data-page="provider-topbar"] .dashboard-user-menu__divider {
  margin: 0;
}

/* Provider activation workspace */
body.dashboard-page[data-page="dashboard"] .provider-activation {
  display: grid;
  gap: 18px;
  padding: 20px !important;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__head {
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__head p {
  margin: 0;
  font-size: 0.88rem;
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__progress-line {
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: #e7edf7;
  overflow: hidden;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__progress-line span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2563eb, #3b82f6);
}

body.dashboard-page[data-page="dashboard"] .provider-activation__step {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__step h3,
body.dashboard-page[data-page="dashboard"] .provider-activation__inline-group h4 {
  margin: 0;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__step p {
  margin: 0;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__inline-group {
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__select-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__select-card {
  border: 1px solid #dbe5f4;
  background: #ffffff;
  border-radius: 12px;
  padding: 12px;
  min-height: 82px;
  display: grid;
  align-content: start;
  gap: 6px;
  text-align: left;
  transition: all 0.2s ease;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__select-card strong {
  color: #111827;
  font-size: 0.92rem;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__select-card small {
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__select-card.is-active {
  border-color: #93c5fd;
  background: #eff6ff;
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.12);
}

body.dashboard-page[data-page="dashboard"] .provider-activation__form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__form-grid label {
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__form-grid label.is-full {
  grid-column: 1 / -1;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__summary {
  border-radius: 12px;
  background: #f8fbff;
  padding: 12px 14px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__summary h4 {
  margin: 0 0 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__summary ul {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__actions button {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-activation__actions button.is-primary {
  background: #0f172a;
  color: #ffffff;
}

@media (max-width: 1100px) {
  body.dashboard-page[data-page="dashboard"] .provider-activation__select-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body.dashboard-page[data-page="dashboard"] .provider-activation__select-grid,
  body.dashboard-page[data-page="dashboard"] .provider-activation__form-grid {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .provider-activation__actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Professional profile builder (modern editor + preview) */
body.dashboard-page[data-page="dashboard"] .provider-profile-builder {
  display: grid;
  gap: 16px;
  padding: 18px !important;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__head {
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__head p {
  margin: 0;
  font-size: 0.86rem;
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__progress-line {
  width: 100%;
  height: 7px;
  border-radius: 999px;
  background: #e8eef9;
  overflow: hidden;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__progress-line span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2563eb, #60a5fa);
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.95fr);
  gap: 16px;
  align-items: start;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__editor {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__step {
  display: grid;
  gap: 12px;
  border-radius: 14px;
  background: #ffffff;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__step h3,
body.dashboard-page[data-page="dashboard"] .provider-profile-builder__step h4 {
  margin: 0;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__step p {
  margin: 0;
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__choice {
  border: 1px solid #dbe6f5;
  border-radius: 12px;
  background: #ffffff;
  padding: 12px;
  min-height: 94px;
  display: grid;
  align-content: start;
  gap: 6px;
  text-align: left;
  transition: all 0.2s ease;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__choice.is-active {
  border-color: #93c5fd;
  background: #eff6ff;
  box-shadow: 0 8px 18px rgba(59, 130, 246, 0.14);
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__choice-icon {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  background: #dbeafe;
  color: #1d4ed8;
  font-size: 0.78rem;
  font-weight: 800;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__choice strong {
  color: #111827;
  font-size: 0.92rem;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__choice small {
  color: #64748b;
  font-size: 0.78rem;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__form-grid label {
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__form-grid label.is-full,
body.dashboard-page[data-page="dashboard"] .provider-profile-builder__form-grid label.is-avatar-tone {
  grid-column: 1 / -1;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__tone-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__tone {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--tone, #2563eb);
  border: 2px solid transparent;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__tone.is-active {
  border-color: #111827;
  box-shadow: 0 0 0 3px rgba(17, 24, 39, 0.1);
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__inline {
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__compact-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__compact-row label {
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__summary {
  border-radius: 12px;
  background: #f8fbff;
  border: 1px solid #dbeafe;
  padding: 12px 14px;
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__summary ul {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 4px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview {
  border-radius: 14px;
  border: 1px solid #dbe5f4;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  padding: 14px;
  display: grid;
  gap: 12px;
  position: sticky;
  top: 12px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-head {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: center;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__avatar {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: linear-gradient(135deg, #2563eb, #1e40af);
  color: #ffffff;
  display: inline-grid;
  place-items: center;
  font-size: 0.9rem;
  font-weight: 800;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-head h4 {
  margin: 0;
  color: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-head p {
  margin: 2px 0 0;
  color: #64748b;
  font-size: 0.82rem;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-description {
  margin: 0;
  color: #334155;
  font-size: 0.88rem;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-meta {
  margin: 0;
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-meta div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 0.81rem;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-meta dt {
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-meta dd {
  margin: 0;
  color: #0f172a;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #334155;
  font-size: 0.75rem;
  font-weight: 600;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-actions button {
  min-height: 32px;
  border-radius: 9px;
  border: 1px solid #d3deee;
  background: #ffffff;
  color: #1e293b;
  font-size: 0.78rem;
  font-weight: 700;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview-actions button:first-child {
  grid-column: 1 / -1;
  background: #0f172a;
  color: #ffffff;
  border-color: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__actions button {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 10px;
}

body.dashboard-page[data-page="dashboard"] .provider-profile-builder__actions button.is-primary {
  background: #0f172a;
  color: #ffffff;
}

@media (max-width: 1180px) {
  body.dashboard-page[data-page="dashboard"] .provider-profile-builder__layout {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .provider-profile-builder__preview {
    position: static;
  }
}

@media (max-width: 800px) {
  body.dashboard-page[data-page="dashboard"] .provider-profile-builder__cards,
  body.dashboard-page[data-page="dashboard"] .provider-profile-builder__form-grid,
  body.dashboard-page[data-page="dashboard"] .provider-profile-builder__compact-row {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .provider-profile-builder__actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Standalone Professional Profile Builder */
body.professional-builder-page {
  margin: 0;
  min-height: 100vh;
  background: radial-gradient(1000px 380px at 20% -10%, rgba(37, 99, 235, 0.12), transparent 60%), #f3f5fb;
  color: #0f172a;
  font-family: "Inter", "Geist", "Plus Jakarta Sans", "Segoe UI", sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.pro-builder-page {
  width: 100%;
  min-height: 100vh;
}

.pro-builder-shell {
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 14px;
  padding: 14px;
}

.pro-builder-topbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #e5ebf5;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
  backdrop-filter: blur(8px);
}

.pro-builder-topbar__brand {
  text-decoration: none;
  color: #0b1220;
  font-size: 1.2rem;
  font-weight: 800;
  letter-spacing: -0.025em;
}

.pro-builder-topbar__center {
  display: grid;
  gap: 8px;
}

.pro-builder-topbar__center p {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #334155;
}

.pro-builder-topbar__progress {
  width: 100%;
  height: 6px;
  border-radius: 999px;
  background: #e7edf8;
  overflow: hidden;
}

.pro-builder-topbar__progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2563eb, #38bdf8);
  transition: width 220ms ease;
}

.pro-builder-topbar__exit {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 11px;
  border: 1px solid #d9e2f1;
  background: #ffffff;
  color: #0f172a;
  font-weight: 600;
  transition: all 0.25s ease;
}

.pro-builder-topbar__exit:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.08);
}

.pro-builder-main {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(320px, 36%) minmax(0, 64%);
  gap: 14px;
}

.pro-builder-editor {
  min-height: 0;
  border-radius: 20px;
  border: 1px solid #e6ecf6;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06);
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
}

.pro-builder-editor__head {
  padding: 18px 20px 14px;
  border-bottom: 1px solid #edf2fa;
  display: grid;
  gap: 4px;
}

.pro-builder-editor__head small {
  font-size: 0.72rem;
  font-weight: 700;
  color: #64748b;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.pro-builder-editor__head h1 {
  margin: 0;
  font-size: 1.28rem;
  letter-spacing: -0.025em;
  color: #111827;
}

.pro-builder-editor__body {
  min-height: 0;
  overflow: auto;
  padding: 16px 20px 20px;
}

.pro-builder-step {
  display: grid;
  gap: 14px;
  animation: pro-builder-step-in 220ms ease;
}

@keyframes pro-builder-step-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.pro-builder-step h2 {
  margin: 0;
  font-size: 1.22rem;
  letter-spacing: -0.02em;
}

.pro-builder-step p {
  margin: 0;
  color: #64748b;
  line-height: 1.45;
}

.pro-builder-grid {
  display: grid;
  gap: 10px;
}

.pro-builder-grid--cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pro-builder-grid--chips {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pro-builder-grid--chips.is-small {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pro-builder-type-card {
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #ffffff;
  min-height: 148px;
  padding: 16px;
  display: grid;
  align-content: start;
  gap: 8px;
  text-align: left;
  transition: all 0.26s ease;
}

.pro-builder-type-card span {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1e40af;
  display: inline-grid;
  place-items: center;
  font-size: 0.84rem;
  font-weight: 800;
}

.pro-builder-type-card strong {
  font-size: 0.97rem;
  letter-spacing: -0.01em;
}

.pro-builder-type-card small {
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.4;
}

.pro-builder-type-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgba(15, 23, 42, 0.08);
  border-color: #bfdbfe;
}

.pro-builder-type-card.is-active {
  border-color: #60a5fa;
  background: #eff6ff;
  box-shadow: 0 16px 28px rgba(59, 130, 246, 0.16);
}

.pro-builder-chip {
  border: 1px solid #d9e3f4;
  border-radius: 12px;
  min-height: 44px;
  padding: 0 12px;
  background: #ffffff;
  color: #0f172a;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 0.84rem;
  font-weight: 600;
  transition: all 0.26s ease;
}

.pro-builder-chip:hover {
  transform: translateY(-1px);
  border-color: #bfdbfe;
  box-shadow: 0 12px 20px rgba(15, 23, 42, 0.08);
}

.pro-builder-chip i {
  width: 20px;
  height: 20px;
  border-radius: 999px;
  border: 1px solid #d4deee;
  color: #64748b;
  display: inline-grid;
  place-items: center;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 800;
}

.pro-builder-chip.is-active {
  border-color: #60a5fa;
  background: #eff6ff;
  color: #1e40af;
}

.pro-builder-chip.is-active i {
  border-color: #2563eb;
  background: #2563eb;
  color: #ffffff;
}

.pro-builder-block {
  display: grid;
  gap: 9px;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid #e8edf7;
  background: #f8fbff;
}

.pro-builder-block h3 {
  margin: 0;
  font-size: 0.91rem;
  letter-spacing: -0.01em;
}

.pro-builder-form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.pro-builder-form-row label,
.pro-builder-form-full {
  display: grid;
  gap: 7px;
}

.pro-builder-form-row span,
.pro-builder-form-full span {
  font-size: 0.79rem;
  color: #64748b;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.pro-builder-form-row small,
.pro-builder-form-full small {
  margin-top: -2px;
  font-size: 0.74rem;
  color: #94a3b8;
  line-height: 1.35;
}

.pro-builder-form-row input,
.pro-builder-form-row select,
.pro-builder-form-full textarea,
.pro-builder-form-full input[type="file"] {
  width: 100%;
  min-height: 42px;
  border-radius: 11px;
  border: 1px solid #dbe4f2;
  background: #ffffff;
  color: #0f172a;
  padding: 0 12px;
  font-size: 0.87rem;
  transition: all 0.2s ease;
}

.pro-builder-form-full textarea {
  min-height: 110px;
  padding: 10px 12px;
  resize: vertical;
}

.pro-builder-form-row input:focus,
.pro-builder-form-row select:focus,
.pro-builder-form-full textarea:focus {
  outline: none;
  border-color: #60a5fa;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.16);
}

.pro-builder-checklist {
  border-radius: 14px;
  border: 1px solid #dbeafe;
  background: #f8fbff;
  padding: 14px;
  display: grid;
  gap: 10px;
}

.pro-builder-checklist div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.pro-builder-checklist strong {
  font-size: 0.95rem;
}

.pro-builder-checklist small {
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1e40af;
  display: inline-flex;
  align-items: center;
  font-weight: 700;
}

.pro-builder-checklist ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
  color: #334155;
  font-size: 0.84rem;
}

.pro-builder-note {
  border-radius: 14px;
  border: 1px solid #dbeafe;
  background: #f8fbff;
  padding: 12px;
}

.pro-builder-note p {
  margin: 0;
  color: #475569;
  font-size: 0.83rem;
  line-height: 1.45;
}

.pro-builder-footer {
  position: sticky;
  bottom: 0;
  z-index: 3;
  padding: 14px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid #e8eef8;
  background: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(8px);
}

.pro-builder-footer button {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 11px;
  border: 1px solid #d7e0ef;
  background: #ffffff;
  color: #0f172a;
  font-size: 0.88rem;
  font-weight: 700;
  transition: all 0.25s ease;
}

.pro-builder-footer button:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 12px 20px rgba(15, 23, 42, 0.08);
}

.pro-builder-footer button.is-primary {
  border-color: #2563eb;
  background: #2563eb;
  color: #ffffff;
}

.pro-builder-footer button.is-primary:hover:not(:disabled) {
  background: #1d4ed8;
}

.pro-builder-footer button:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.pro-builder-preview-pane {
  min-height: 0;
  border-radius: 20px;
  border: 1px solid #e4eaf4;
  background: #f3f4f6;
  padding: 18px;
  overflow: auto;
}

.pro-builder-preview-shell {
  min-height: 100%;
  display: grid;
}

.pro-builder-profile-preview {
  border-radius: 18px;
  border: 1px solid #e4ebf6;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  padding: 18px;
  display: grid;
  gap: 14px;
  max-width: 900px;
  margin: 0 auto;
}

.pro-builder-profile-preview__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.pro-builder-profile-preview__identity {
  display: flex;
  align-items: center;
  gap: 12px;
}

.pro-builder-profile-preview__identity span,
.pro-builder-profile-preview__identity img {
  width: 62px;
  height: 62px;
  border-radius: 999px;
}

.pro-builder-profile-preview__identity span {
  display: inline-grid;
  place-items: center;
  background: linear-gradient(145deg, #2563eb, #1d4ed8);
  color: #ffffff;
  font-weight: 800;
}

.pro-builder-profile-preview__identity img {
  object-fit: cover;
  display: block;
}

.pro-builder-profile-preview__identity h3 {
  margin: 0;
  font-size: 1.12rem;
  letter-spacing: -0.02em;
}

.pro-builder-profile-preview__identity p {
  margin: 2px 0 0;
  color: #475569;
  font-size: 0.87rem;
}

.pro-builder-profile-preview__meta-inline {
  display: flex;
  gap: 8px;
  margin-top: 6px;
}

.pro-builder-profile-preview__meta-inline em {
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  background: #eef2ff;
  color: #334155;
  font-size: 0.74rem;
  font-style: normal;
  display: inline-flex;
  align-items: center;
}

.pro-builder-profile-preview__cta {
  display: flex;
  gap: 8px;
}

.pro-builder-profile-preview__cta button {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid #d7e0ef;
  background: #ffffff;
  color: #0f172a;
  font-size: 0.8rem;
  font-weight: 700;
}

.pro-builder-profile-preview__cta button.is-primary {
  border-color: #0f172a;
  background: #0f172a;
  color: #ffffff;
}

.pro-builder-profile-preview__stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.pro-builder-profile-preview__stats div {
  border-radius: 12px;
  border: 1px solid #e5ebf5;
  background: #f8fbff;
  padding: 10px;
  display: grid;
  gap: 5px;
}

.pro-builder-profile-preview__stats small {
  color: #64748b;
  font-size: 0.74rem;
}

.pro-builder-profile-preview__stats strong {
  font-size: 0.86rem;
  color: #0f172a;
}

.pro-builder-profile-preview__tabs {
  display: flex;
  gap: 8px;
  border-bottom: 1px solid #e8eef8;
  padding-bottom: 8px;
}

.pro-builder-profile-preview__tabs button {
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid transparent;
  background: transparent;
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 700;
}

.pro-builder-profile-preview__tabs button.is-active {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.pro-builder-profile-preview__block {
  border-radius: 12px;
  border: 1px solid #e9eef8;
  background: #ffffff;
  padding: 12px;
  display: grid;
  gap: 8px;
}

.pro-builder-profile-preview__block h4 {
  margin: 0;
  font-size: 0.88rem;
  letter-spacing: -0.01em;
}

.pro-builder-profile-preview__block p {
  margin: 0;
  color: #334155;
  font-size: 0.84rem;
  line-height: 1.45;
}

.pro-builder-profile-preview__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.pro-builder-profile-preview__chips span {
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #334155;
  display: inline-flex;
  align-items: center;
  font-size: 0.75rem;
  font-weight: 700;
}

.pro-builder-profile-preview__block.is-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pro-builder-profile-preview__block.is-grid article {
  border-radius: 10px;
  border: 1px solid #e7edf8;
  background: #f8fbff;
  min-height: 44px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  font-size: 0.82rem;
  color: #334155;
}

@media (max-width: 1220px) {
  .pro-builder-main {
    grid-template-columns: minmax(310px, 42%) minmax(0, 58%);
  }

  .pro-builder-grid--chips.is-small {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .pro-builder-shell {
    padding: 10px;
  }

  .pro-builder-main {
    grid-template-columns: 1fr;
  }

  .pro-builder-preview-pane {
    min-height: 520px;
  }
}

@media (max-width: 760px) {
  .pro-builder-topbar {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .pro-builder-grid--cards,
  .pro-builder-grid--chips,
  .pro-builder-grid--chips.is-small,
  .pro-builder-form-row,
  .pro-builder-profile-preview__stats,
  .pro-builder-profile-preview__block.is-grid {
    grid-template-columns: 1fr;
  }

  .pro-builder-profile-preview__header {
    flex-direction: column;
    align-items: flex-start;
  }

  .pro-builder-footer {
    flex-direction: column;
    align-items: stretch;
  }
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__notice {
  border: 1px dashed #c8d7ee;
  background: #f8fbff;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__notice p {
  margin: 0;
  color: #475569;
  font-size: 0.86rem;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__kpis .client-kpi small {
  color: #64748b;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__section {
  display: grid;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__scenario-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 10px;
  align-items: end;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__scenario-form label,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__stack label {
  display: grid;
  gap: 6px;
  color: #475569;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__scenario-form select,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__stack input,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__stack select {
  min-height: 38px;
  border: 1px solid #d8e2f0;
  border-radius: 10px;
  background: #fff;
  color: #0f172a;
  padding: 0 10px;
  font: inherit;
  font-size: 0.82rem;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__scenario-form button,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__stack button,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__quick-grid button {
  min-height: 36px;
  border: 1px solid #d4e0f1;
  border-radius: 10px;
  background: #f8fbff;
  color: #294061;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 0 12px;
  cursor: pointer;
  transition: all 0.22s ease;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__scenario-form button:hover,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__stack button:hover,
body.dashboard-page[data-page="dashboard"] .admin-sandbox__quick-grid button:hover {
  border-color: #93b2dd;
  background: #edf4ff;
  transform: translateY(-1px);
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__quick-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__stack {
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__preview-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 7px;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__preview-list li {
  border: 1px solid #e2e8f4;
  border-radius: 10px;
  background: #fbfdff;
  padding: 8px 10px;
  display: grid;
  gap: 2px;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__preview-list li strong {
  color: #0f172a;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__preview-list li small {
  color: #64748b;
  font-size: 0.74rem;
}

body.dashboard-page[data-page="dashboard"] .admin-sandbox__preview-list li.is-empty {
  color: #64748b;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner {
  position: fixed;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: min(1120px, calc(100vw - 24px));
  z-index: 1650;
  border: 1px solid #c7d8f2;
  border-radius: 14px;
  background: rgba(15, 23, 42, 0.92);
  box-shadow: 0 18px 44px rgba(15, 23, 42, 0.25);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__content {
  min-height: 56px;
  padding: 9px 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__copy {
  display: grid;
  gap: 1px;
  min-width: 0;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__copy strong {
  color: #f8fafc;
  font-size: 0.84rem;
  letter-spacing: 0.01em;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__copy span {
  color: #cbd5e1;
  font-size: 0.76rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__form {
  display: flex;
  align-items: center;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner select,
body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner button {
  min-height: 34px;
  border-radius: 9px;
  border: 1px solid rgba(148, 163, 184, 0.36);
  background: rgba(248, 250, 252, 0.1);
  color: #f8fafc;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 0 10px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner select {
  min-width: 210px;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner button {
  cursor: pointer;
  transition: all 0.2s ease;
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner button:hover {
  background: rgba(59, 130, 246, 0.32);
  border-color: rgba(191, 219, 254, 0.75);
}

body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"].dashboard-sandbox-mode .dashboard-shell {
  padding-top: 56px;
}

@media (max-width: 900px) {
  body.dashboard-page[data-page="dashboard"] .admin-sandbox__scenario-form {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__content {
    grid-template-columns: 1fr;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__form,
  body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner__actions {
    width: 100%;
  }

  body.dashboard-page[data-page="dashboard"] .dashboard-sandbox-banner select {
    min-width: 0;
    width: 100%;
  }
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal {
  position: fixed;
  inset: 0;
  z-index: 118;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(2, 8, 23, 0.56);
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__panel {
  position: absolute;
  top: 7vh;
  left: 50%;
  transform: translateX(-50%);
  width: min(1040px, 94vw);
  height: min(85vh, 920px);
  border-radius: 18px;
  border: 1px solid #d7e3f2;
  background: #f8fbff;
  box-shadow: 0 34px 78px rgba(2, 8, 23, 0.3);
  overflow: hidden;
  display: grid;
  grid-template-rows: auto 1fr;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__head {
  background: #fff;
  border-bottom: 1px solid #e3ebf7;
  padding: 14px 18px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__eyebrow {
  margin: 0 0 4px;
  color: #607086;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__head h3 {
  margin: 0;
  color: #0f172a;
  font-size: 1.1rem;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__close {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1px solid #d5dfed;
  background: #fff;
  color: #334155;
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-workspace-modal__body {
  overflow: auto;
  padding: 16px;
  display: grid;
  gap: 12px;
}

@media (max-width: 960px) {
  body.dashboard-page[data-page="dashboard"] .client-workspace-modal__panel {
    inset: 0;
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 0;
    transform: none;
    border-radius: 0;
  }
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace {
  display: grid;
  gap: 12px;
  padding: 0;
  max-height: 82vh;
  overflow: hidden;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__header {
  padding: 16px 16px 0;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__header h4 {
  margin: 0;
  font-size: 1.2rem;
  color: #0f172a;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__header p {
  margin: 6px 0 2px;
  color: #334155;
  font-size: 0.9rem;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__header small {
  color: #64748b;
  font-size: 0.78rem;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__tabs {
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 0;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__tabsBar {
  padding: 0 16px;
  margin-top: 4px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__content {
  display: grid;
  min-height: 0;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__panel {
  padding: 12px 16px 16px;
  overflow: auto;
  display: none;
  gap: 12px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__panel.is-active {
  display: grid;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__panel[hidden] {
  display: none !important;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__block {
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
  display: grid;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__block h5 {
  margin: 0;
  color: #0f172a;
  font-size: 0.9rem;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__grid2 {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__listCard {
  border: 1px solid #e6edf7;
  border-radius: 10px;
  background: #f8fbff;
  padding: 10px;
  display: grid;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__listCard ul,
body.dashboard-page[data-page="dashboard"] .client-item-workspace__block ul[data-client-item-media-links-list] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 6px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__listCard li,
body.dashboard-page[data-page="dashboard"] .client-item-workspace__block ul[data-client-item-media-links-list] li {
  border: 1px solid #dbe4f2;
  border-radius: 8px;
  background: #fff;
  padding: 6px 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__listCard li span,
body.dashboard-page[data-page="dashboard"] .client-item-workspace__block ul[data-client-item-media-links-list] li span {
  color: #334155;
  font-size: 0.79rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__dropzone {
  border: 1px dashed #94a3b8;
  border-radius: 12px;
  background: #f8fafc;
  min-height: 110px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 14px;
  gap: 6px;
  cursor: pointer;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__dropzone input[type="file"] {
  display: none;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__dropzone strong {
  color: #0f172a;
  font-size: 0.9rem;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__dropzone span,
body.dashboard-page[data-page="dashboard"] .client-item-workspace__hint {
  color: #64748b;
  font-size: 0.8rem;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__mediaPreview {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__mediaPreview li {
  border: 1px solid #dce6f3;
  border-radius: 10px;
  background: #fff;
  padding: 6px;
  display: grid;
  gap: 5px;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__mediaPreview img,
body.dashboard-page[data-page="dashboard"] .client-item-workspace__mediaPreview video {
  width: 100%;
  height: 86px;
  border-radius: 8px;
  object-fit: cover;
  background: #e2e8f0;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__mediaPreview small {
  color: #64748b;
  font-size: 0.72rem;
}

body.dashboard-page[data-page="dashboard"] .client-item-workspace__footer {
  border-top: 1px solid #e2e8f0;
  background: #fff;
  padding: 12px 16px 16px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

@media (max-width: 900px) {
  body.dashboard-page[data-page="dashboard"] .client-item-workspace__grid2 {
    grid-template-columns: 1fr;
  }
}

/* ===== Global theme system (product pages) ===== */
:root {
  --vly-bg-page: #f4f6fb;
  --vly-surface: #ffffff;
  --vly-surface-elevated: #ffffff;
  --vly-text-primary: #0f172a;
  --vly-text-secondary: #5f6b82;
  --vly-border: rgba(15, 23, 42, 0.14);
  --vly-border-soft: rgba(15, 23, 42, 0.1);
  --vly-accent: #3b82f6;
  --vly-accent-contrast: #ffffff;
  --vly-backdrop: rgba(11, 18, 31, 0.38);
  --vly-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06), 0 6px 16px rgba(15, 23, 42, 0.08);
  --vly-shadow-md: 0 14px 32px rgba(15, 23, 42, 0.16);
}

body[data-theme="light"] {
  --vly-bg-page: #f4f6fb;
  --vly-surface: #ffffff;
  --vly-surface-elevated: #ffffff;
  --vly-text-primary: #0f172a;
  --vly-text-secondary: #5f6b82;
  --vly-border: rgba(15, 23, 42, 0.14);
  --vly-border-soft: rgba(15, 23, 42, 0.1);
  --vly-accent: #3b82f6;
  --vly-accent-contrast: #ffffff;
  --vly-backdrop: rgba(11, 18, 31, 0.38);
  --vly-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06), 0 6px 16px rgba(15, 23, 42, 0.08);
  --vly-shadow-md: 0 14px 32px rgba(15, 23, 42, 0.16);
}

body[data-theme="dark"] {
  --vly-bg-page: #121722;
  --vly-surface: #1a2130;
  --vly-surface-elevated: #202a3b;
  --vly-text-primary: #e8eefc;
  --vly-text-secondary: #a9b6cc;
  --vly-border: rgba(156, 173, 199, 0.35);
  --vly-border-soft: rgba(156, 173, 199, 0.24);
  --vly-accent: #5c8fff;
  --vly-accent-contrast: #0f1624;
  --vly-backdrop: rgba(8, 12, 20, 0.62);
  --vly-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35), 0 8px 18px rgba(0, 0, 0, 0.34);
  --vly-shadow-md: 0 18px 38px rgba(0, 0, 0, 0.5);
}

/* Keep auth entry pages strictly obsidian (login/signup), regardless of persisted product theme */
body.auth-page,
body.auth-page[data-theme],
body.auth-page[data-theme="dark"],
body.auth-page[data-theme="light"] {
  --vly-bg-page: #000000;
  --vly-surface: #050505;
  --vly-surface-elevated: #080808;
  --vly-text-primary: #ffffff;
  --vly-text-secondary: #a0a0a0;
  --vly-border: #1a1a1a;
  --vly-border-soft: #121212;
  --vly-accent: #ffffff;
  --vly-accent-contrast: #000000;
  --vly-backdrop: rgba(0, 0, 0, 0.72);
  --vly-shadow-sm: 0 12px 34px rgba(0, 0, 0, 0.5);
  --vly-shadow-md: 0 28px 90px rgba(0, 0, 0, 0.64);
  color-scheme: dark;
  background:
    radial-gradient(760px 420px at 50% 42%, rgba(255, 255, 255, 0.045), transparent 68%),
    #000 !important;
}

body.auth-page .clean-inputs .auth-field label {
  font-size: 11px;
  letter-spacing: 0.06em;
  color: #555;
  text-transform: uppercase;
}

body.auth-page .clean-inputs .auth-field input {
  color: #fff;
  font-weight: 400;
  letter-spacing: 0;
}

body.auth-page .clean-inputs .auth-field input::placeholder {
  color: rgba(255, 255, 255, 0.16);
  font-weight: 400;
}

body[data-theme] {
  background: var(--vly-bg-page);
  color: var(--vly-text-primary);
}

body[data-theme] .dashboard-topbar--provider {
  background: var(--vly-surface-elevated);
  border-bottom-color: var(--vly-border-soft);
}

body[data-theme] .dashboard-topbar__providerLogo {
  filter: brightness(0) invert(1);
}

body[data-theme] .dashboard-topbar__providerSearch {
  border-color: var(--vly-border);
  background: var(--vly-surface);
  box-shadow: var(--vly-shadow-sm);
}

body[data-theme] .dashboard-topbar__providerSearch svg {
  fill: var(--vly-text-secondary);
}

body[data-theme] .dashboard-topbar__providerSearchInput {
  color: var(--vly-text-primary);
}

body[data-theme] .dashboard-topbar__providerSearchInput::placeholder {
  color: var(--vly-text-secondary);
}

body[data-theme] .dashboard-topbar__iconBtn {
  color: var(--vly-text-secondary);
}

body[data-theme] .dashboard-topbar__iconBtn:hover {
  background: transparent;
  border-color: transparent;
  color: var(--vly-text-primary);
}

/* Topbar stays dark in both light/dark modes, so userbox text must keep high contrast. */
body[data-theme] .dashboard-topbar .dashboard-userbox__info span {
  color: #f8fafc;
}

body[data-theme] .dashboard-topbar .dashboard-userbox__info small,
body[data-theme] .dashboard-topbar .dashboard-userbox__chevron {
  color: #cbd5e1;
}

body[data-theme] .dashboard-topbar__notifMenu,
body[data-theme] .dashboard-user-menu,
body[data-theme] .dashboard-topbar__searchSuggest {
  background: var(--vly-surface-elevated);
  border-color: var(--vly-border);
  box-shadow: var(--vly-shadow-md);
}

body[data-theme] .dashboard-topbar__searchSuggestGroup + .dashboard-topbar__searchSuggestGroup {
  border-top-color: var(--vly-border-soft);
}

body[data-theme] .dashboard-topbar__searchSuggestTitle,
body[data-theme] .dashboard-user-menu__section-title {
  color: var(--vly-text-secondary);
}

body[data-theme] .dashboard-topbar__searchSuggestItem,
body[data-theme] .dashboard-user-menu__context-item,
body[data-theme] .dashboard-user-menu__item {
  color: var(--vly-text-primary);
}

body[data-theme] .dashboard-topbar__searchSuggestMeta strong,
body[data-theme] .dashboard-user-menu__context-name,
body[data-theme] .dashboard-user-menu__item-label {
  color: var(--vly-text-primary);
}

body[data-theme] .dashboard-topbar__searchSuggestMeta small,
body[data-theme] .dashboard-user-menu__context-subcopy {
  color: var(--vly-text-secondary);
}

body[data-theme] .dashboard-topbar__searchSuggestItem:hover,
body[data-theme] .dashboard-topbar__searchSuggestItem:focus-visible,
body[data-theme] .dashboard-user-menu__context-item:hover,
body[data-theme] .dashboard-user-menu__item:hover {
  background: rgba(92, 143, 255, 0.16);
}

body[data-theme] .dashboard-user-menu__divider {
  border-top-color: var(--vly-border-soft);
}

body[data-theme] .dashboard-preferences__dialog {
  background: var(--vly-surface);
  border-color: var(--vly-border);
  color: var(--vly-text-primary);
}

body[data-theme] .dashboard-preferences__backdrop {
  background: var(--vly-backdrop);
  backdrop-filter: blur(8px);
}

body[data-theme="dark"] .dashboard-shell,
body[data-theme="dark"] .dashboard-sidebar,
body[data-theme="dark"] .dashboard-content,
body[data-theme="dark"] .dashboard-panel,
body[data-theme="dark"] .client-view,
body[data-theme="dark"] .client-card,
body[data-theme="dark"] .dashboard-preferences__nav,
body[data-theme="dark"] .dashboard-preferences__content,
body[data-theme="dark"] .dashboard-preferences__panel,
body[data-theme="dark"] .dashboard-topbar__search,
body[data-theme="dark"] .dashboard-topbar__contextSwitchWrap,
body[data-theme="dark"] .dashboard-topbar__notifCard {
  background: var(--vly-surface);
  border-color: var(--vly-border);
  color: var(--vly-text-primary);
}

body[data-theme="dark"] .dashboard-shell,
body[data-theme="dark"] .dashboard-content,
body[data-theme="dark"] .dashboard-page {
  background: var(--vly-bg-page);
}

body[data-theme="dark"] .dashboard-nav__group-title,
body[data-theme="dark"] .dashboard-nav__item,
body[data-theme="dark"] .dashboard-sidebar__legal,
body[data-theme="dark"] .dashboard-topbar__eyebrow,
body[data-theme="dark"] .client-view__header p,
body[data-theme="dark"] .client-card p,
body[data-theme="dark"] .dashboard-preferences__subtitle,
body[data-theme="dark"] .dashboard-preferences__panel p,
body[data-theme="dark"] .dashboard-settings-form__status,
body[data-theme="dark"] .dashboard-settings-info__note {
  color: var(--vly-text-secondary);
}

body[data-theme="dark"] .dashboard-nav__item:hover {
  background: rgba(92, 143, 255, 0.16);
}

body[data-theme="dark"] .dashboard-nav__item.is-active {
  background: rgba(92, 143, 255, 0.22);
  border-color: rgba(92, 143, 255, 0.4);
}

body[data-theme="dark"] .dashboard-nav__count {
  background: rgba(156, 173, 199, 0.22);
  color: #d7e3f8;
}

body[data-theme="dark"] .dashboard-nav__count.is-unread {
  background: #5c8fff;
  color: #0f172a;
}

body[data-theme="dark"] .dashboard-topbar__search input,
body[data-theme="dark"] .dashboard-topbar__contextSwitchWrap select,
body[data-theme="dark"] .dashboard-settings-form input,
body[data-theme="dark"] .dashboard-settings-form textarea,
body[data-theme="dark"] .dashboard-settings-form select,
body[data-theme="dark"] .dashboard-settings-checks label,
body[data-theme="dark"] .dashboard-profile-photo__button,
body[data-theme="dark"] .dashboard-preferences__tab {
  background: var(--vly-surface-elevated);
  border-color: var(--vly-border);
  color: var(--vly-text-primary);
}

body[data-theme="dark"] .dashboard-preferences__tab:hover,
body[data-theme="dark"] .dashboard-preferences__tab.is-active {
  background: rgba(92, 143, 255, 0.16);
  border-color: rgba(92, 143, 255, 0.4);
}

body[data-theme="dark"] .dashboard-preferences__close,
body[data-theme="dark"] .dashboard-userbox__button {
  border-color: var(--vly-border-soft);
}

html[data-theme="dark"] body .dashboard-topbar__iconBtn[aria-label="Mensajes"],
html[data-theme="dark"] body .dashboard-topbar__iconBtn[title="Mensajes"],
body[data-theme="dark"] .dashboard-topbar__iconBtn[aria-label="Mensajes"],
body[data-theme="dark"] .dashboard-topbar__iconBtn[title="Mensajes"] {
  background: transparent !important;
  border-color: transparent !important;
  color: #e8eefc !important;
}

html[data-theme="dark"] body .dashboard-topbar__iconBtn[aria-label="Mensajes"]:hover,
html[data-theme="dark"] body .dashboard-topbar__iconBtn[title="Mensajes"]:hover,
body[data-theme="dark"] .dashboard-topbar__iconBtn[aria-label="Mensajes"]:hover,
body[data-theme="dark"] .dashboard-topbar__iconBtn[title="Mensajes"]:hover {
  background: transparent !important;
  border-color: transparent !important;
}

body[data-theme="dark"] .dashboard-preferences__close:hover {
  background: rgba(92, 143, 255, 0.14);
}

body[data-theme="dark"] .dashboard-user-menu__context-avatar,
body[data-theme="dark"] .dashboard-topbar__searchSuggestAvatar,
body[data-theme="dark"] .dashboard-topbar__notifAvatar {
  background: #2a3550;
  color: #eaf1ff;
  border-color: var(--vly-border-soft);
}

body[data-theme="dark"] .dashboard-topbar__notifHead h4 {
  color: var(--vly-text-primary) !important;
}

body[data-theme="dark"] .dashboard-topbar__notifHead time,
body[data-theme="dark"] .dashboard-topbar__notifBody p,
body[data-theme="dark"] .dashboard-topbar__notifEmpty {
  color: var(--vly-text-secondary) !important;
}

body[data-theme="dark"] .dashboard-topbar__notifEmpty {
  background: var(--vly-surface-elevated) !important;
  border-color: var(--vly-border-soft) !important;
}

body[data-theme="dark"][data-sidebar-theme="light"] .dashboard-sidebar,
body[data-theme="dark"][data-sidebar-theme="light"] .dashboard-nav__item,
body[data-theme="dark"][data-sidebar-theme="light"] .dashboard-sidebar__brand,
body[data-theme="dark"][data-sidebar-theme="light"] .dashboard-sidebar__footer {
  background: var(--vly-surface);
  border-color: var(--vly-border);
  color: var(--vly-text-primary);
}

html body.dashboard-page[data-page="dashboard"][data-theme="dark"] {
  background: var(--vly-bg-page) !important;
}

/* Force dark base surfaces for legacy workspace wrappers that still inherit light blocks */
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-shell,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-main,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-content {
  background: var(--vly-bg-page) !important;
  color: var(--vly-text-primary);
}

body.dashboard-page[data-page="dashboard"][data-theme="dark"] .dashboard-content > .dashboard-placeholder,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .provider-activation,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .provider-profile-builder,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .commercial-quote-workspace,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .commercial-quote-summary-panel,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .client-view,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .client-tabs__panel.is-active,
body.dashboard-page[data-page="dashboard"][data-theme="dark"] .client-drawer__panel {
  background: var(--vly-surface) !important;
  border-color: var(--vly-border) !important;
  color: var(--vly-text-primary);
}

/* Dashboard viewport fix: prevent white gap at page bottom (Safari/desktop) */
html body.dashboard-page[data-page="dashboard"] {
  min-height: 100dvh !important;
  height: 100dvh !important;
  background: var(--vly-bg-page) !important;
}

html body.dashboard-page[data-page="dashboard"] .dashboard-shell {
  position: fixed !important;
  inset: 0 !important;
  min-height: 100dvh !important;
  height: 100dvh !important;
  background: var(--vly-bg-page) !important;
}

/* Provider-topbar pages (dashboard-new/explore/home/etc): avoid light viewport strip */
html[data-theme="dark"],
body[data-page="provider-topbar"][data-theme="dark"] {
  background: var(--vly-bg-page) !important;
}

body[data-page="provider-topbar"][data-theme="dark"] {
  min-height: 100dvh !important;
}

/* ==========================================================================
   Vinty Redesigned Split Login Layout (Final Scoped Overrides)
   ========================================================================== */

body.auth-page[data-page="login"],
body.auth-page[data-page="login"][data-theme],
body.auth-page[data-page="login"][data-theme="light"],
body.auth-page[data-page="login"][data-theme="dark"] {
  margin: 0 !important;
  padding: 16px !important;
  background: #f4f4f6 !important;
  height: 100vh !important;
  max-height: 100vh !important;
  width: 100vw !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

body.auth-page[data-page="login"]::before,
body.auth-page[data-page="login"]::after,
body.auth-page[data-page="login"] .vinty-login::before {
  display: none !important;
  content: none !important;
}

.vinty-login-split {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  max-height: calc(100vh - 32px) !important;
  background: #ffffff !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.08) !important;
  overflow: hidden !important;
  border: 1px solid #eaeaec !important;
}

/* --- Left Column: Compact Form & Content --- */
.vinty-login-left {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  padding: clamp(20px, 3vh, 36px) clamp(24px, 4vw, 56px) !important;
  background: #ffffff !important;
  height: 100% !important;
  box-sizing: border-box !important;
  overflow-y: auto !important;
}

.vinty-login-left__header {
  margin-bottom: 8px !important;
}

.vinty-login-left__brand {
  font-size: 25px !important;
  font-weight: 800 !important;
  color: #000000 !important;
  text-decoration: none !important;
  letter-spacing: -0.04em !important;
  font-family: 'Inter', sans-serif !important;
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 4px !important;
}

.vinty-login-left__brand-suffix {
  font-size: 19px !important;
  font-weight: 500 !important;
  color: #888888 !important;
  font-family: 'Plus Jakarta Sans', 'Montserrat', sans-serif !important;
  letter-spacing: -0.02em !important;
  text-transform: lowercase !important;
}

.vinty-login-left__body {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 0 !important;
}

.vinty-login-box {
  width: 100% !important;
  max-width: 360px !important;
  margin: 0 auto !important;
}

.vinty-login-intro {
  margin-bottom: 24px !important;
  text-align: left !important;
}

.vinty-login-title {
  font-size: clamp(26px, 3.5vh, 34px) !important;
  font-weight: 800 !important;
  color: #000000 !important;
  letter-spacing: -0.03em !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.15 !important;
}

.vinty-login-subtitle {
  font-size: 14.5px !important;
  line-height: 1.4 !important;
  color: #555555 !important;
  margin: 0 !important;
  font-weight: 400 !important;
}

/* --- Form Controls --- */
.vinty-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.vinty-field {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.vinty-label {
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #111111 !important;
}

.vinty-input-wrap {
  position: relative !important;
  width: 100% !important;
}

.vinty-input {
  width: 100% !important;
  height: 46px !important;
  padding: 0 16px !important;
  font-size: 14px !important;
  color: #111111 !important;
  background: #ffffff !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 10px !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
}

.vinty-input::placeholder {
  color: #9e9e9e !important;
}

.vinty-input:focus {
  border-color: #000000 !important;
  box-shadow: 0 0 0 1px #000000 !important;
}

.vinty-input-wrap--password .vinty-input {
  padding-right: 76px !important;
}

.vinty-password-toggle {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: transparent !important;
  border: none !important;
  color: #111111 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  padding: 4px 6px !important;
  border-radius: 4px !important;
}

.vinty-password-toggle:hover {
  opacity: 0.7 !important;
}

.vinty-submit-btn {
  width: 100% !important;
  height: 48px !important;
  background: #000000 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease, transform 0.15s ease !important;
  margin-top: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.vinty-submit-btn:hover {
  background: #1a1a1a !important;
  transform: translateY(-1px) !important;
}

.vinty-submit-btn:active {
  transform: translateY(0) !important;
}

/* --- Left Footer --- */
.vinty-login-left__footer {
  margin-top: 16px !important;
  padding-top: 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
  text-align: center !important;
}

.vinty-copyright {
  font-size: 12px !important;
  color: #757575 !important;
  margin: 0 !important;
}

.vinty-legal-links {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

.vinty-legal-links a {
  font-size: 12px !important;
  color: #424242 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.vinty-legal-links a:hover {
  color: #000000 !important;
  text-decoration: underline !important;
}

/* --- Right Column: Showcase with Rounded Corners on Top-Right & Bottom-Right --- */
.vinty-login-right {
  flex: 1 !important;
  height: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  background: #000000 !important;
  border-top-right-radius: 24px !important;
  border-bottom-right-radius: 24px !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.vinty-showcase-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-top-right-radius: 24px !important;
  border-bottom-right-radius: 24px !important;
}

/* --- Responsive Media Queries --- */
@media (max-width: 960px) {
  body.auth-page[data-page="login"],
  body.auth-page[data-page="login"][data-theme],
  body.auth-page[data-page="login"][data-theme="light"],
  body.auth-page[data-page="login"][data-theme="dark"] {
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    padding: 0 !important;
    background: #ffffff !important;
  }

  .vinty-login-split {
    flex-direction: column !important;
    height: auto !important;
    max-height: none !important;
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
  }

  .vinty-login-left {
    min-height: 100vh !important;
    height: auto !important;
    padding: 24px 20px !important;
  }

  .vinty-login-right {
    display: none !important;
  }
}

/* ============================================================
   VINTY HUB — Dashboard sidebar brand hub suffix
   ============================================================ */
.dashboard-sidebar__brand {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  padding: 8px 0 18px;
  font-size: 25px;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -0.04em;
  text-decoration: none;
  font-family: 'Inter', sans-serif;
}

.dashboard-sidebar__brand-hub {
  font-size: 19px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.75);
  font-family: 'Plus Jakarta Sans', 'Montserrat', sans-serif;
  letter-spacing: -0.02em;
  text-transform: lowercase;
  line-height: 1;
  margin-left: -4px;
}

/* ============================================================
   VINTY HUB — Signup page brand hub suffix
   ============================================================ */
.vinty-auth-logo-zone {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 3px;
  margin-bottom: 24px;
}

.vinty-auth-logo-zone .auth-brand {
  margin-bottom: 0;
}

.vinty-auth-hub-suffix {
  font-size: 18px;
  font-weight: 500;
  color: #888888;
  font-family: 'Plus Jakarta Sans', 'Montserrat', sans-serif;
  letter-spacing: -0.02em;
  text-transform: lowercase;
  line-height: 1;
  padding-bottom: 6px;
}

/* ============================================================
   VINTY HUB — Provider topbar (all app pages) hub suffix
   ============================================================ */
.dashboard-topbar__providerLogoLink {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  line-height: 1;
}

.dashboard-topbar__providerLogoHub {
  display: inline-block;
  font-size: 19px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.75);
  font-family: 'Plus Jakarta Sans', 'Montserrat', sans-serif;
  letter-spacing: -0.02em;
  text-transform: lowercase;
  line-height: 1;
  line-height: 1;
  padding-bottom: 3px;
  white-space: nowrap;
}
