/*
 * Benvia Precision Workspace — Phase A foundation
 * Loaded after site.css as the authoritative shell and shared-component layer.
 * Existing module styles remain in site.css until their dedicated migration pass.
 */

:root {
  --benvia-canvas: #f2eee8;
  --benvia-canvas-strong: #e9e3da;
  --benvia-surface: #fffdf9;
  --benvia-surface-subtle: #faf7f1;
  --benvia-surface-muted: #f0ebe3;
  --benvia-ink: #153f2c;
  --benvia-text: #354b40;
  --benvia-text-muted: #6b786f;
  --benvia-text-faint: #95a096;
  --benvia-border: #ded7cd;
  --benvia-border-strong: #c8beb1;
  --benvia-brand: #1d6a4b;
  --benvia-brand-hover: #15573e;
  --benvia-brand-soft: #e7f0ea;
  --benvia-navy: #0d3a29;
  --benvia-navy-strong: #082e20;
  --benvia-success: #2d7856;
  --benvia-success-soft: #edf5f0;
  --benvia-warning: #9a5b0b;
  --benvia-warning-soft: #fff7e8;
  --benvia-danger: #b42318;
  --benvia-danger-soft: #fff1f0;
  --benvia-info: #3e6f5b;
  --benvia-info-soft: #edf4f0;
  --benvia-radius-xs: 4px;
  --benvia-radius-sm: 6px;
  --benvia-radius-md: 8px;
  --benvia-radius-lg: 10px;
  --benvia-radius-xl: 12px;
  --benvia-shadow-menu: 0 14px 36px rgba(16, 24, 40, 0.14);
  --benvia-sidebar-width: 248px;
  --benvia-sidebar-collapsed-width: 72px;
  --benvia-commandbar-height: 58px;
  --benvia-content-max: 1760px;
}

html {
  min-height: 100%;
  background: var(--benvia-canvas);
}

body.benvia-app-shell {
  min-height: 100%;
  margin: 0;
  color: var(--benvia-text);
  background: var(--benvia-canvas);
  font-family: "Segoe UI Variable", "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}

body.benvia-app-shell *,
body.benvia-app-shell *::before,
body.benvia-app-shell *::after {
  box-sizing: border-box;
}

body.benvia-app-shell a {
  color: var(--benvia-brand);
}

body.benvia-app-shell a:hover {
  color: var(--benvia-brand-hover);
}

body.benvia-app-shell h1,
body.benvia-app-shell h2,
body.benvia-app-shell h3,
body.benvia-app-shell h4,
body.benvia-app-shell h5,
body.benvia-app-shell h6 {
  color: var(--benvia-ink);
}

/* Bootstrap alignment */
body.benvia-app-shell .btn {
  min-height: 38px;
  border-radius: var(--benvia-radius-md);
  padding: 0.48rem 0.88rem;
  font-size: 0.86rem;
  font-weight: 650;
  line-height: 1.25;
  box-shadow: none;
  transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

body.benvia-app-shell .btn-sm {
  min-height: 32px;
  padding: 0.36rem 0.68rem;
  font-size: 0.78rem;
}

body.benvia-app-shell .btn-primary {
  color: #ffffff;
  background: var(--benvia-brand);
  background-image: none;
  border-color: var(--benvia-brand);
}

body.benvia-app-shell .btn-primary:hover,
body.benvia-app-shell .btn-primary:focus,
body.benvia-app-shell .btn-primary:active {
  color: #ffffff;
  background: var(--benvia-brand-hover);
  background-image: none;
  border-color: var(--benvia-brand-hover);
}

body.benvia-app-shell .btn-outline-primary {
  color: var(--benvia-brand);
  background: #ffffff;
  border-color: #9fc7b2;
}

body.benvia-app-shell .btn-outline-primary:hover,
body.benvia-app-shell .btn-outline-primary:focus,
body.benvia-app-shell .btn-outline-primary:active {
  color: var(--benvia-brand-hover);
  background: var(--benvia-brand-soft);
  border-color: #7caf92;
}

body.benvia-app-shell .btn-outline-secondary {
  color: var(--benvia-text);
  background: #ffffff;
  border-color: var(--benvia-border-strong);
}

body.benvia-app-shell .btn-outline-secondary:hover,
body.benvia-app-shell .btn-outline-secondary:focus,
body.benvia-app-shell .btn-outline-secondary:active {
  color: var(--benvia-ink);
  background: var(--benvia-surface-muted);
  border-color: #aeb8c5;
}

body.benvia-app-shell .form-label {
  margin-bottom: 0.38rem;
  color: var(--benvia-text);
  font-size: 0.78rem;
  font-weight: 650;
}

body.benvia-app-shell .form-control,
body.benvia-app-shell .form-select,
body.benvia-app-shell .benvia-form-control {
  min-height: 40px;
  border: 1px solid var(--benvia-border-strong);
  border-radius: var(--benvia-radius-md);
  background: #ffffff;
  color: var(--benvia-ink);
  font-size: 0.88rem;
  box-shadow: none;
}

body.benvia-app-shell .form-control:hover,
body.benvia-app-shell .form-select:hover,
body.benvia-app-shell .benvia-form-control:hover {
  border-color: #aeb8c5;
}

body.benvia-app-shell .form-control:focus,
body.benvia-app-shell .form-select:focus,
body.benvia-app-shell .benvia-form-control:focus,
body.benvia-app-shell .btn:focus-visible,
body.benvia-app-shell a:focus-visible,
body.benvia-app-shell button:focus-visible,
body.benvia-app-shell [tabindex]:focus-visible {
  outline: 2px solid rgba(29, 106, 75, 0.34);
  outline-offset: 2px;
  border-color: var(--benvia-brand);
  box-shadow: 0 0 0 3px rgba(29, 106, 75, 0.12);
}

body.benvia-app-shell .form-control:disabled,
body.benvia-app-shell .form-control[readonly],
body.benvia-app-shell .benvia-form-control--readonly {
  color: var(--benvia-text-muted);
  background: var(--benvia-surface-muted);
  border-color: var(--benvia-border);
}

body.benvia-app-shell .alert {
  border-width: 1px;
  border-radius: var(--benvia-radius-md);
  padding: 0.72rem 0.9rem;
  font-size: 0.84rem;
  box-shadow: none;
}

body.benvia-app-shell .alert-success {
  color: #11633c;
  background: var(--benvia-success-soft);
  border-color: #b9e2ca;
}

body.benvia-app-shell .alert-danger {
  color: #912018;
  background: var(--benvia-danger-soft);
  border-color: #f3c3bf;
}

body.benvia-app-shell .alert-warning {
  color: #7a4708;
  background: var(--benvia-warning-soft);
  border-color: #efd6a8;
}

body.benvia-app-shell .alert-info {
  color: #315f4c;
  background: var(--benvia-info-soft);
  border-color: #c6d9cf;
}

/* Application shell */
.benvia-app-shell .benvia-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: var(--benvia-sidebar-width) minmax(0, 1fr);
  background: var(--benvia-canvas);
  transition: grid-template-columns 180ms ease;
}

.benvia-app-shell.benvia-sidebar-collapsed .benvia-shell {
  grid-template-columns: var(--benvia-sidebar-collapsed-width) minmax(0, 1fr);
}

.benvia-app-shell .benvia-shell__sidebar {
  position: sticky;
  top: 0;
  z-index: 50;
  width: auto;
  height: 100vh;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-right: 1px solid #164a37;
  background: #082e20;
  backdrop-filter: none;
  box-shadow: none;
}

.benvia-app-shell .benvia-shell__sidebar-inner {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  height: 100%;
  padding: 0;
}

.benvia-app-shell .benvia-shell__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  background: var(--benvia-canvas);
}

.benvia-app-shell .benvia-shell__backdrop {
  position: fixed;
  inset: 0;
  z-index: 45;
  display: none;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: rgba(9, 18, 35, 0.52);
}

/* Brand and sidebar context */
.benvia-brandbar {
  flex: 0 0 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.55rem;
  min-width: 0;
  padding: 0 0.75rem 0 0.8rem;
  border-bottom: 1px solid #164a37;
}

.benvia-brandbar__identity {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.7rem;
  color: #ffffff !important;
  overflow: hidden;
}

.benvia-brandbar__mark {
  flex: 0 0 28px;
  width: 28px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  background: transparent;
}

.benvia-brandbar__mark img {
  display: block;
  width: 26px;
  height: 37px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.benvia-brandbar__copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  line-height: 1.18;
  white-space: nowrap;
  overflow: hidden;
}

.benvia-brandbar__name {
  color: #ffffff;
  font-size: 0.96rem;
  font-weight: 760;
  letter-spacing: -0.02em;
}

.benvia-brandbar__descriptor {
  margin-top: 0.15rem;
  color: #9fc0af;
  font-size: 0.66rem;
  font-weight: 600;
  text-overflow: ellipsis;
  overflow: hidden;
}

.benvia-sidebar-collapse {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: var(--benvia-radius-sm);
  background: transparent;
  color: #91b5a2;
}

.benvia-sidebar-collapse:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.12);
}

.benvia-sidebar-collapse__icon {
  position: relative;
  width: 14px;
  height: 14px;
}

.benvia-sidebar-collapse__icon::before,
.benvia-sidebar-collapse__icon::after {
  content: "";
  position: absolute;
  left: 3px;
  width: 8px;
  height: 1.5px;
  border-radius: 2px;
  background: currentColor;
  transform-origin: left center;
}

.benvia-sidebar-collapse__icon::before {
  top: 4px;
  transform: rotate(-42deg);
}

.benvia-sidebar-collapse__icon::after {
  bottom: 4px;
  transform: rotate(42deg);
}

.benvia-sidebar-collapsed .benvia-sidebar-collapse__icon {
  transform: rotate(180deg);
}

.benvia-company-switcher {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin: 0.75rem;
  padding: 0.72rem;
  border: 1px solid #1e5841;
  border-radius: var(--benvia-radius-lg);
  background: #0d3a2a;
  overflow: hidden;
}

.benvia-company-switcher__symbol {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--benvia-radius-sm);
  background: #174b38;
  color: #dcebe3;
  font-size: 0.72rem;
  font-weight: 800;
}

.benvia-company-switcher__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.benvia-company-switcher__label {
  color: #78a18b;
  font-size: 0.58rem;
  font-weight: 760;
  letter-spacing: 0.1em;
  line-height: 1.25;
  text-transform: uppercase;
}

.benvia-company-switcher__name {
  margin-top: 0.2rem;
  color: #ffffff;
  font-size: 0.79rem;
  font-weight: 720;
  line-height: 1.25;
}

.benvia-company-switcher__workspace {
  margin-top: 0.22rem;
  color: #a5c2b2;
  font-size: 0.69rem;
  line-height: 1.25;
}

/* Sidebar navigation */
.benvia-app-shell .benvia-shell__sidebar-nav {
  min-height: 0;
  flex: 1 1 auto;
  padding: 0 0.55rem 0.8rem;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #3b6b56 transparent;
}

.benvia-app-shell .benvia-sidebar {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  padding: 0;
}

.benvia-app-shell .benvia-sidebar__section {
  margin: 0;
  padding: 0;
}

.benvia-app-shell .benvia-sidebar__section + .benvia-sidebar__section {
  padding-top: 0.15rem;
  border-top: 0;
}

.benvia-app-shell .benvia-sidebar__section-label {
  padding: 0.45rem 0.65rem 0.28rem;
  color: #78a18b;
  font-size: 0.59rem;
  font-weight: 760;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  white-space: nowrap;
}

.benvia-app-shell .benvia-sidebar__item,
.benvia-app-shell .benvia-sidebar__child {
  margin: 1px 0;
  border-radius: var(--benvia-radius-md);
}

.benvia-app-shell .benvia-sidebar__item-link,
.benvia-app-shell .benvia-sidebar__item-main,
.benvia-app-shell .benvia-sidebar__child-link,
.benvia-app-shell .benvia-sidebar__child {
  position: relative;
  width: 100%;
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: 0.62rem;
  padding: 0.42rem 0.58rem;
  border: 1px solid transparent;
  border-radius: var(--benvia-radius-md);
  background: transparent;
  color: #b8cdbf;
  font-size: 0.78rem;
  line-height: 1.25;
  text-align: left;
  text-decoration: none;
  box-shadow: none;
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
}

.benvia-app-shell .benvia-sidebar__item-link::before,
.benvia-app-shell .benvia-sidebar__item-main::before {
  display: none;
  content: none;
}

.benvia-app-shell .benvia-sidebar__item-link:hover,
.benvia-app-shell .benvia-sidebar__item-main:hover,
.benvia-app-shell .benvia-sidebar__child-link:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.07);
  border-color: transparent;
}

.benvia-app-shell .benvia-sidebar__item.is-active > .benvia-sidebar__item-link,
.benvia-app-shell .benvia-sidebar__item.is-active > .benvia-sidebar__item-main,
.benvia-app-shell .benvia-sidebar__child.is-active,
.benvia-app-shell .benvia-sidebar__child-link.is-active {
  color: #ffffff;
  background: #124b35;
  border-color: #2d6b50;
  box-shadow: none;
}

.benvia-app-shell .benvia-sidebar__item.is-active > .benvia-sidebar__item-link::after,
.benvia-app-shell .benvia-sidebar__item.is-active > .benvia-sidebar__item-main::after {
  content: "";
  position: absolute;
  top: 7px;
  bottom: 7px;
  left: -0.57rem;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: #8fd0aa;
}

.benvia-app-shell .benvia-sidebar__item.is-expanded > .benvia-sidebar__item-main {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.08);
}

.benvia-app-shell .benvia-sidebar__item.is-active.is-expanded > .benvia-sidebar__item-main {
  color: #ffffff;
  background: #124b35;
  border-color: #2d6b50;
}

.benvia-app-shell .benvia-sidebar__item.is-disabled,
.benvia-app-shell .benvia-sidebar__child.is-disabled {
  opacity: 0.48;
}

.benvia-app-shell .benvia-sidebar__item.is-disabled .benvia-sidebar__item-main,
.benvia-app-shell .benvia-sidebar__child.is-disabled {
  cursor: not-allowed;
}

.benvia-app-shell .benvia-sidebar__icon {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--benvia-radius-sm);
  background: transparent;
  color: #8eb19e;
}

.benvia-app-shell .benvia-sidebar__icon svg {
  width: 17px;
  height: 17px;
}

.benvia-app-shell .benvia-sidebar__item.is-active .benvia-sidebar__icon {
  color: #e9f4ed;
  background: transparent;
  border-color: transparent;
}

.benvia-app-shell .benvia-sidebar__text,
.benvia-app-shell .benvia-sidebar__child-text {
  min-width: 0;
  color: inherit;
  font-size: 0.78rem;
  font-weight: 630;
  white-space: normal;
}

.benvia-app-shell .benvia-sidebar__badges {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.24rem;
}

.benvia-app-shell .benvia-sidebar__badge {
  min-width: 19px;
  height: 19px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.34rem;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.62rem;
  font-weight: 760;
  line-height: 1;
}

.benvia-app-shell .benvia-sidebar__badge--neutral { color: #475467; background: #eef1f5; border-color: #dce1e8; }
.benvia-app-shell .benvia-sidebar__badge--blue { color: #e9f4ed; background: #1b5941; border-color: #39765a; }
.benvia-app-shell .benvia-sidebar__badge--green { color: #11633c; background: #eaf7f0; border-color: #7eb394; }
.benvia-app-shell .benvia-sidebar__badge--red { color: #9b241a; background: #fff0ef; border-color: #f3c7c2; }
.benvia-app-shell .benvia-sidebar__badge--orange { color: #8d5109; background: #fff5e5; border-color: #efd4a3; }
.benvia-app-shell .benvia-sidebar__badge--purple { color: #6432a8; background: #f5efff; border-color: #dfd0f7; }

.benvia-app-shell .benvia-sidebar__item-arrow {
  flex: 0 0 7px;
  width: 7px;
  height: 7px;
  margin-left: auto;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  opacity: 0.58;
  transition: transform 140ms ease;
}

.benvia-app-shell .benvia-sidebar__item.is-expanded .benvia-sidebar__item-arrow {
  transform: rotate(225deg) translate(-1px, -1px);
}

.benvia-app-shell .benvia-sidebar__children {
  display: none;
  margin: 0.18rem 0 0.35rem 1.75rem;
  padding: 0.1rem 0 0.1rem 0.48rem;
  border-left: 1px solid #245d45;
}

.benvia-app-shell .benvia-sidebar__children.is-expanded,
.benvia-app-shell .benvia-sidebar__item.is-expanded > .benvia-sidebar__children {
  display: block;
}

.benvia-app-shell .benvia-sidebar__child-link,
.benvia-app-shell .benvia-sidebar__child {
  min-height: 32px;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  padding: 0.34rem 0.52rem;
  font-size: 0.75rem;
  text-align: left;
}

.benvia-app-shell .benvia-sidebar__child-text {
  flex: 1 1 auto;
  text-align: left;
}

/* Sidebar user block */
.benvia-app-shell .benvia-sidebar-usercard {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 0.65rem;
  margin: 0;
  padding: 0.7rem 0.75rem 0.75rem;
  border: 0;
  border-top: 1px solid #164a37;
  border-radius: 0;
  background: #082e20;
  box-shadow: none;
}

.benvia-app-shell .benvia-sidebar-usercard__avatar {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--benvia-radius-md);
  background: #1a5941;
  color: #ffffff;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.05em;
}

.benvia-app-shell .benvia-sidebar-usercard__body {
  min-width: 0;
  margin: 0;
  align-self: center;
}

.benvia-app-shell .benvia-sidebar-usercard__name {
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 700;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.benvia-app-shell .benvia-sidebar-usercard__email {
  margin-top: 0.08rem;
  color: #9fc0af;
  font-size: 0.64rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.benvia-app-shell .benvia-sidebar-usercard__actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.4rem;
  margin: 0.05rem 0 0;
}

.benvia-app-shell .benvia-sidebar-usercard__actions form,
.benvia-app-shell .benvia-sidebar-usercard__actions .btn {
  width: 100%;
}

.benvia-app-shell .benvia-sidebar-usercard__actions .btn-outline-secondary {
  color: #dcebe3;
  background: transparent;
  border-color: #3b6b56;
}

.benvia-app-shell .benvia-sidebar-usercard__actions .btn-outline-secondary:hover,
.benvia-app-shell .benvia-sidebar-usercard__actions .btn-outline-secondary:focus {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.08);
  border-color: #6f9b85;
}

.benvia-app-shell .benvia-sidebar-usercard__actions .btn-primary {
  color: #0b3123;
  background: #dcebe3;
  border-color: #dcebe3;
}

.benvia-app-shell .benvia-sidebar-usercard__actions .btn-primary:hover,
.benvia-app-shell .benvia-sidebar-usercard__actions .btn-primary:focus {
  color: #082e20;
  background: #ffffff;
  border-color: #ffffff;
}

/* Collapsed desktop state */
@media (min-width: 992px) {
  .benvia-sidebar-collapsed .benvia-brandbar {
    justify-content: center;
    padding: 0;
  }

  .benvia-sidebar-collapsed .benvia-brandbar__identity {
    gap: 0;
  }

  .benvia-sidebar-collapsed .benvia-brandbar__copy,
  .benvia-sidebar-collapsed .benvia-company-switcher__content,
  .benvia-sidebar-collapsed .benvia-sidebar__section-label,
  .benvia-sidebar-collapsed .benvia-sidebar__text,
  .benvia-sidebar-collapsed .benvia-sidebar__badges,
  .benvia-sidebar-collapsed .benvia-sidebar__item-arrow,
  .benvia-sidebar-collapsed .benvia-sidebar-usercard__body,
  .benvia-sidebar-collapsed .benvia-sidebar-usercard__actions {
    display: none;
  }

  .benvia-sidebar-collapsed .benvia-sidebar-collapse {
    position: absolute;
    top: 17px;
    right: -15px;
    z-index: 2;
    background: #0d3a2a;
    border-color: #2b654b;
    color: #dcebe3;
    box-shadow: 0 3px 8px rgba(6, 31, 23, 0.24);
  }

  .benvia-sidebar-collapsed .benvia-company-switcher {
    justify-content: center;
    margin: 0.65rem 0.55rem;
    padding: 0.55rem;
  }

  .benvia-sidebar-collapsed .benvia-shell__sidebar-nav {
    padding-inline: 0.42rem;
  }

  .benvia-sidebar-collapsed .benvia-sidebar {
    gap: 0.25rem;
  }

  .benvia-sidebar-collapsed .benvia-sidebar__section {
    margin: 0;
    padding: 0;
  }

  .benvia-sidebar-collapsed .benvia-sidebar__item-link,
  .benvia-sidebar-collapsed .benvia-sidebar__item-main {
    justify-content: center;
    min-height: 42px;
    padding: 0.35rem;
  }

  .benvia-sidebar-collapsed .benvia-sidebar__item.is-active > .benvia-sidebar__item-link::after,
  .benvia-sidebar-collapsed .benvia-sidebar__item.is-active > .benvia-sidebar__item-main::after {
    left: -0.42rem;
  }

  .benvia-sidebar-collapsed .benvia-sidebar__children {
    display: none !important;
  }

  .benvia-sidebar-collapsed .benvia-sidebar-usercard {
    display: flex;
    justify-content: center;
    padding-inline: 0.5rem;
  }
}

/* Command bar and module tabs */
.benvia-app-shell .benvia-shell__topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--benvia-border);
  background: rgba(255, 253, 249, 0.95);
  backdrop-filter: blur(16px);
  box-shadow: none;
}

.benvia-app-shell .benvia-shell__topbar > .container-fluid,
.benvia-app-shell .benvia-shell__content > .container-fluid,
.benvia-app-shell .benvia-shell__footer > .container-fluid {
  width: 100%;
  max-width: var(--benvia-content-max);
  margin-inline: auto;
  padding-inline: 24px;
}

.benvia-commandbar {
  min-height: var(--benvia-commandbar-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
}

.benvia-commandbar__left,
.benvia-commandbar__right {
  min-width: 0;
  display: flex;
  align-items: center;
}

.benvia-commandbar__left {
  gap: 0.75rem;
}

.benvia-commandbar__right {
  justify-content: flex-end;
  gap: 1.15rem;
}

.benvia-commandbar__context {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 0.65rem;
  overflow: hidden;
}

.benvia-commandbar__eyebrow {
  color: var(--benvia-text-faint);
  font-size: 0.61rem;
  font-weight: 760;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
}

.benvia-commandbar__workspace {
  color: var(--benvia-ink);
  font-size: 0.89rem;
  font-weight: 720;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.benvia-commandbar__tenant {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 0.45rem;
}

.benvia-commandbar__tenant-label {
  color: var(--benvia-text-faint);
  font-size: 0.63rem;
  font-weight: 700;
  white-space: nowrap;
}

.benvia-commandbar__tenant-name {
  max-width: 260px;
  color: var(--benvia-text);
  font-size: 0.77rem;
  font-weight: 680;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.benvia-commandbar__security {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: #36634d;
  font-size: 0.68rem;
  font-weight: 650;
  white-space: nowrap;
}

.benvia-commandbar__security-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #2d8a61;
  box-shadow: 0 0 0 3px #e7f3ec;
}

.benvia-app-shell .benvia-nav-toggle {
  width: 36px;
  height: 36px;
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
  padding: 0;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-md);
  background: var(--benvia-surface);
  color: var(--benvia-text);
}

.benvia-app-shell .benvia-nav-toggle__line {
  width: 15px;
  height: 1.5px;
  border-radius: 2px;
  background: currentColor;
}

.benvia-app-shell .benvia-workspace-tabs-shell {
  width: 100%;
  border-top: 1px solid #ece6dd;
  overflow-x: auto;
  scrollbar-width: none;
}

.benvia-app-shell .benvia-workspace-tabs-shell::-webkit-scrollbar {
  display: none;
}

.benvia-app-shell .benvia-workspace-tabs {
  width: max-content;
  min-width: 100%;
  display: flex;
  align-items: stretch;
  gap: 1.25rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.benvia-app-shell .benvia-workspace-tab {
  position: relative;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.2rem 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--benvia-text-muted);
  font-size: 0.74rem;
  font-weight: 650;
  text-decoration: none;
  box-shadow: none;
  white-space: nowrap;
}

.benvia-app-shell .benvia-workspace-tab:hover {
  color: var(--benvia-ink);
  background: transparent;
}

.benvia-app-shell .benvia-workspace-tab.is-active {
  color: var(--benvia-brand);
  background: transparent;
  box-shadow: none;
}

.benvia-app-shell .benvia-workspace-tab.is-active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: var(--benvia-brand);
}

.benvia-app-shell .benvia-workspace-tab.is-disabled {
  color: #b0b8c3;
  cursor: default;
  background: transparent;
}

/* Content frame */
.benvia-app-shell .benvia-shell__content {
  flex: 1 1 auto;
  padding: 24px 0 34px;
  background: var(--benvia-canvas);
}

.benvia-app-shell .benvia-shell__alert {
  margin: 0 0 16px;
}

.benvia-app-shell .benvia-shell__footer {
  padding: 0 0 16px;
  border: 0;
  background: var(--benvia-canvas);
}

.benvia-app-shell .benvia-shell__footer-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0;
  color: var(--benvia-text-faint);
  font-size: 0.67rem;
}

/* Shared page shell */
.benvia-app-shell .benvia-workspace,
.benvia-app-shell .benvia-workspace--candidate,
.benvia-app-shell .benvia-workspace--profile,
.benvia-app-shell .benvia-review-page {
  position: relative;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.benvia-app-shell .benvia-workspace::before,
.benvia-app-shell .benvia-panel-card::before,
.benvia-app-shell .benvia-kpi-card::before,
.benvia-app-shell .benvia-focus-card::after,
.benvia-app-shell .benvia-hero-card::before,
.benvia-app-shell .benvia-admin-section::before,
.benvia-app-shell .benvia-review-hero::before,
.benvia-app-shell .benvia-review-section-card::before {
  display: none;
  content: none;
}

.benvia-app-shell .benvia-workspace__header,
.benvia-app-shell .benvia-workspace__header--rich {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
  margin: 0 0 18px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--benvia-border);
}

.benvia-app-shell .benvia-section-kicker,
.benvia-app-shell .benvia-shell__page-kicker,
.benvia-app-shell .benvia-focus-card__eyebrow,
.benvia-app-shell .benvia-auth-panel__kicker,
.benvia-app-shell .benvia-auth-company-card__eyebrow,
.benvia-app-shell .benvia-review-note-card__label {
  color: var(--benvia-text-faint);
  font-size: 0.61rem;
  font-weight: 760;
  letter-spacing: 0.1em;
  line-height: 1.35;
  text-transform: uppercase;
}

.benvia-app-shell .benvia-section-title,
.benvia-app-shell .benvia-shell__page-title {
  margin: 0.18rem 0 0;
  color: var(--benvia-ink);
  font-size: clamp(1.55rem, 2.1vw, 2rem);
  font-weight: 760;
  letter-spacing: -0.035em;
  line-height: 1.13;
}

.benvia-app-shell .benvia-section-subtitle {
  max-width: 850px;
  margin: 0.38rem 0 0;
  color: var(--benvia-text-muted);
  font-size: 0.84rem;
  line-height: 1.55;
}

.benvia-app-shell .benvia-section-actions,
.benvia-app-shell .benvia-panel-card__actions,
.benvia-app-shell .benvia-action-row,
.benvia-app-shell .benvia-review-hero__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.48rem;
  flex-wrap: wrap;
  margin: 0;
}

/* Panels, cards, metrics */
.benvia-app-shell .benvia-panel-card,
.benvia-app-shell .benvia-form-panel,
.benvia-app-shell .benvia-profile-summary-card,
.benvia-app-shell .benvia-hr-filter-card,
.benvia-app-shell .benvia-review-filter-card,
.benvia-app-shell .benvia-review-table-card,
.benvia-app-shell .benvia-review-section-card,
.benvia-app-shell .benvia-review-action-card,
.benvia-app-shell .benvia-review-note-card,
.benvia-app-shell .benvia-review-empty-state,
.benvia-app-shell .benvia-auth-card,
.benvia-app-shell .benvia-auth-company-card,
.benvia-app-shell .benvia-message-box,
.benvia-app-shell .benvia-summary-banner,
.benvia-app-shell .benvia-timeline-card {
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-lg);
  background: #ffffff;
  background-image: none;
  box-shadow: none;
}

.benvia-app-shell .benvia-panel-card,
.benvia-app-shell .benvia-form-panel,
.benvia-app-shell .benvia-profile-summary-card,
.benvia-app-shell .benvia-hr-filter-card,
.benvia-app-shell .benvia-review-filter-card,
.benvia-app-shell .benvia-review-table-card,
.benvia-app-shell .benvia-review-section-card,
.benvia-app-shell .benvia-review-action-card,
.benvia-app-shell .benvia-review-note-card,
.benvia-app-shell .benvia-review-empty-state,
.benvia-app-shell .benvia-message-box,
.benvia-app-shell .benvia-summary-banner {
  padding: 18px;
}

.benvia-app-shell .benvia-panel-card--soft,
.benvia-app-shell .benvia-panel-card--tinted,
.benvia-app-shell .benvia-panel-card--journey-spotlight,
.benvia-app-shell .benvia-message-box--executive,
.benvia-app-shell .benvia-summary-banner--journey {
  background: var(--benvia-surface-subtle);
  background-image: none;
  border-color: var(--benvia-border);
}

.benvia-app-shell .benvia-panel-card--executive {
  border-top: 3px solid var(--benvia-navy);
}

.benvia-app-shell .benvia-panel-card__header,
.benvia-app-shell .benvia-review-table-card__header,
.benvia-app-shell .benvia-review-section-card__header,
.benvia-app-shell .benvia-review-action-card__header,
.benvia-app-shell .benvia-admin-section__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 0 14px;
  padding: 0 0 12px;
  border-bottom: 1px solid #edf0f3;
}

.benvia-app-shell .benvia-panel-card__header--tight {
  margin-bottom: 10px;
  padding-bottom: 9px;
}

.benvia-app-shell .benvia-panel-card__title,
.benvia-app-shell .benvia-review-table-card__title,
.benvia-app-shell .benvia-review-section-card__title,
.benvia-app-shell .benvia-review-action-card__title {
  margin: 0;
  color: var(--benvia-ink);
  font-size: 1rem;
  font-weight: 720;
  letter-spacing: -0.02em;
  line-height: 1.28;
}

.benvia-app-shell .benvia-panel-card__subtitle,
.benvia-app-shell .benvia-review-table-card__subtitle,
.benvia-app-shell .benvia-review-hero__subtitle,
.benvia-app-shell .benvia-review-action-card__subtitle {
  margin: 0.3rem 0 0;
  color: var(--benvia-text-muted);
  font-size: 0.79rem;
  line-height: 1.5;
}

.benvia-app-shell .benvia-kpi-grid,
.benvia-app-shell .benvia-review-metrics,
.benvia-app-shell .benvia-admin-priority-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.benvia-app-shell .benvia-kpi-grid--compact,
.benvia-app-shell .benvia-review-metrics--compact {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.benvia-app-shell .benvia-kpi-grid--thirds {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.benvia-app-shell .benvia-kpi-card,
.benvia-app-shell .benvia-review-metric-card,
.benvia-app-shell .benvia-auth-metric-card,
.benvia-app-shell .benvia-float-stat,
.benvia-app-shell .benvia-priority-card,
.benvia-app-shell .benvia-signal-strip__card,
.benvia-app-shell .benvia-focus-card__metric-box {
  position: relative;
  display: block;
  padding: 14px;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-md);
  background: #ffffff;
  background-image: none;
  color: inherit;
  text-decoration: none;
  box-shadow: none;
  transform: none;
}

.benvia-app-shell .benvia-kpi-card--warm,
.benvia-app-shell .benvia-priority-card--warm {
  border-left: 3px solid #d79a35;
  background: #fffdf8;
}

.benvia-app-shell .benvia-kpi-card--cool,
.benvia-app-shell .benvia-kpi-card--softblue,
.benvia-app-shell .benvia-priority-card--cool {
  border-left: 3px solid #4a8068;
  background: #fbfcff;
}

.benvia-app-shell .benvia-kpi-card--danger,
.benvia-app-shell .benvia-priority-card--danger {
  border-left: 3px solid #cf5b52;
  background: #fffafa;
}

.benvia-app-shell .benvia-kpi-card--neutral {
  background: #ffffff;
}

.benvia-app-shell .benvia-kpi-card--link:hover,
.benvia-app-shell .benvia-review-metric-card:hover {
  border-color: #b9c3cf;
  background: var(--benvia-surface-subtle);
  transform: none;
  box-shadow: none;
}

.benvia-app-shell .benvia-kpi-card__label,
.benvia-app-shell .benvia-review-metric-card__label,
.benvia-app-shell .benvia-auth-metric-card__label,
.benvia-app-shell .benvia-float-stat__label {
  color: var(--benvia-text-muted);
  font-size: 0.68rem;
  font-weight: 680;
  line-height: 1.35;
  text-transform: none;
  letter-spacing: 0;
}

.benvia-app-shell .benvia-kpi-card__value,
.benvia-app-shell .benvia-review-metric-card__value,
.benvia-app-shell .benvia-auth-metric-card__value,
.benvia-app-shell .benvia-float-stat__value {
  margin-top: 0.28rem;
  color: var(--benvia-ink);
  font-size: 1.35rem;
  font-weight: 760;
  letter-spacing: -0.035em;
  line-height: 1.2;
}

.benvia-app-shell .benvia-review-metric-card__note,
.benvia-app-shell .benvia-auth-metric-card__note,
.benvia-app-shell .benvia-float-stat__meta {
  display: block;
  margin-top: 0.35rem;
  color: var(--benvia-text-muted);
  font-size: 0.72rem;
  line-height: 1.45;
}

/* Dashboard focus rail */
.benvia-app-shell .benvia-focus-rail {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 3fr);
  gap: 12px;
  margin-bottom: 18px !important;
}

.benvia-app-shell .benvia-focus-card {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-lg);
  background: #ffffff;
  background-image: none;
  box-shadow: none;
  overflow: hidden;
}

.benvia-app-shell .benvia-focus-card--primary {
  border-color: var(--benvia-navy);
  background: var(--benvia-navy);
  background-image: none;
  color: #ffffff;
}

.benvia-app-shell .benvia-focus-card--soft {
  background: var(--benvia-surface-subtle);
}

.benvia-app-shell .benvia-focus-card__title {
  margin: 0.25rem 0 0;
  color: var(--benvia-ink);
  font-size: 1.05rem;
  font-weight: 730;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.benvia-app-shell .benvia-focus-card__body {
  margin: 0.45rem 0 0;
  color: var(--benvia-text-muted);
  font-size: 0.78rem;
  line-height: 1.5;
}

.benvia-app-shell .benvia-focus-card--primary .benvia-focus-card__eyebrow {
  color: #aeb9b0;
}

.benvia-app-shell .benvia-focus-card--primary .benvia-focus-card__title,
.benvia-app-shell .benvia-focus-card--primary .benvia-focus-card__body,
.benvia-app-shell .benvia-focus-card--primary .benvia-focus-card__metric strong {
  color: #ffffff;
}

.benvia-app-shell .benvia-focus-card--primary .benvia-focus-card__body {
  color: #c8d2e2;
}

.benvia-app-shell .benvia-focus-card__metrics,
.benvia-app-shell .benvia-focus-card__metric-grid,
.benvia-app-shell .benvia-signal-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

.benvia-app-shell .benvia-focus-card__metric-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.benvia-app-shell .benvia-focus-card__metric {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--benvia-radius-md);
  background: rgba(255, 255, 255, 0.07);
}

.benvia-app-shell .benvia-focus-card__metric span,
.benvia-app-shell .benvia-focus-card__metric-box span {
  display: block;
  color: var(--benvia-text-muted);
  font-size: 0.63rem;
  font-weight: 650;
  line-height: 1.35;
}

.benvia-app-shell .benvia-focus-card--primary .benvia-focus-card__metric span {
  color: #aeb9b0;
}

.benvia-app-shell .benvia-focus-card__metric strong,
.benvia-app-shell .benvia-focus-card__metric-box strong {
  display: block;
  margin-top: 0.28rem;
  color: var(--benvia-ink);
  font-size: 0.92rem;
  font-weight: 740;
  line-height: 1.25;
}

/* Status language */
.benvia-app-shell .benvia-ui-chip,
.benvia-app-shell .benvia-status-pill,
.benvia-app-shell .benvia-timeline-card__badges span,
.benvia-app-shell .benvia-hero-card__badges span,
.benvia-app-shell .benvia-summary-banner__badges span {
  min-height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  padding: 0.18rem 0.5rem;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-sm);
  background: #f3f0ea;
  color: #596b61;
  font-size: 0.64rem;
  font-weight: 680;
  line-height: 1.2;
  box-shadow: none;
}

.benvia-app-shell .benvia-ui-chip--dark {
  color: #ffffff;
  background: var(--benvia-navy);
  border-color: var(--benvia-navy);
}

.benvia-app-shell .benvia-ui-chip--blue,
.benvia-app-shell .benvia-status-pill.is-info,
.benvia-app-shell .benvia-status-pill.is-planned {
  color: #1a6246;
  background: #e7f0ea;
  border-color: #bdd6c8;
}

.benvia-app-shell .benvia-ui-chip--green,
.benvia-app-shell .benvia-status-pill.is-success,
.benvia-app-shell .benvia-status-pill.is-complete {
  color: #11633c;
  background: var(--benvia-success-soft);
  border-color: #7eb394;
}

.benvia-app-shell .benvia-ui-chip--warm,
.benvia-app-shell .benvia-status-pill.is-warning,
.benvia-app-shell .benvia-status-pill.is-required {
  color: #81500e;
  background: var(--benvia-warning-soft);
  border-color: #efd4a3;
}

.benvia-app-shell .benvia-ui-chip--violet {
  color: #6332a4;
  background: #f5efff;
  border-color: #dfd0f7;
}

.benvia-app-shell .benvia-ui-chip--muted {
  color: #596b61;
  background: #f3f0ea;
  border-color: #ded7cd;
}

.benvia-app-shell .benvia-chip-row {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  flex-wrap: wrap;
}

/* Lists and timelines */
.benvia-app-shell .benvia-list-stack,
.benvia-app-shell .benvia-timeline,
.benvia-app-shell .benvia-meter-stack,
.benvia-app-shell .benvia-stat-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.benvia-app-shell .benvia-list-item,
.benvia-app-shell .benvia-stat-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 12px 13px;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-md);
  background: #ffffff;
  box-shadow: none;
}

.benvia-app-shell .benvia-list-item.is-complete {
  border-left: 3px solid #4a9d71;
}

.benvia-app-shell .benvia-list-item.is-attention {
  border-left: 3px solid #d39a3e;
}

.benvia-app-shell .benvia-list-item h4 {
  margin: 0;
  color: var(--benvia-ink);
  font-size: 0.8rem;
  font-weight: 700;
}

.benvia-app-shell .benvia-list-item p {
  margin: 0.22rem 0 0;
  color: var(--benvia-text-muted);
  font-size: 0.7rem;
  line-height: 1.45;
}

.benvia-app-shell .benvia-timeline-card {
  padding: 14px;
}

.benvia-app-shell .benvia-timeline-card__dot {
  background: var(--benvia-brand);
  box-shadow: none;
}

/* Forms and multi-column layouts */
.benvia-app-shell .benvia-dashboard-grid,
.benvia-app-shell .benvia-profile-grid,
.benvia-app-shell .benvia-onboarding-grid,
.benvia-app-shell .benvia-review-detail__grid,
.benvia-app-shell .benvia-split-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(280px, 0.8fr);
  align-items: start;
  gap: 14px;
}

.benvia-app-shell .benvia-form-section {
  margin: 0;
  padding: 16px 0;
  border: 0;
  border-top: 1px solid #edf0f3;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.benvia-app-shell .benvia-form-section:first-child {
  padding-top: 0;
  border-top: 0;
}

.benvia-app-shell .benvia-profile-form {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.benvia-app-shell .benvia-action-stack {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Hero surfaces retained only where they add real hierarchy */
.benvia-app-shell .benvia-hero-card,
.benvia-app-shell .benvia-admin-hero,
.benvia-app-shell .benvia-review-hero,
.benvia-app-shell .benvia-auth-panel {
  position: relative;
  padding: 20px;
  border: 1px solid var(--benvia-navy);
  border-radius: var(--benvia-radius-xl);
  background: var(--benvia-navy);
  background-image: none;
  color: #ffffff;
  box-shadow: none;
  overflow: hidden;
}

.benvia-app-shell .benvia-hero-card--profile,
.benvia-app-shell .benvia-hero-card--admin,
.benvia-app-shell .benvia-review-hero--compliance,
.benvia-app-shell .benvia-review-hero--detail,
.benvia-app-shell .benvia-review-hero--notifications,
.benvia-app-shell .benvia-review-hero--onboarding,
.benvia-app-shell .benvia-review-hero--questionnaire {
  background: var(--benvia-navy);
  background-image: none;
}

.benvia-app-shell .benvia-hero-card__title,
.benvia-app-shell .benvia-review-hero__title,
.benvia-app-shell .benvia-auth-panel__title {
  margin: 0;
  color: #ffffff;
  font-size: clamp(1.45rem, 2.1vw, 1.95rem);
  font-weight: 760;
  letter-spacing: -0.035em;
  line-height: 1.15;
}

.benvia-app-shell .benvia-hero-card__subtitle,
.benvia-app-shell .benvia-auth-panel__subtitle,
.benvia-app-shell .benvia-review-hero__subtitle {
  margin: 0.45rem 0 0;
  color: #c9d2e1;
  font-size: 0.81rem;
  line-height: 1.55;
}

.benvia-app-shell .benvia-hero-metadata,
.benvia-app-shell .benvia-hero-card__stats,
.benvia-app-shell .benvia-auth-panel__meta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 16px;
}

.benvia-app-shell .benvia-hero-metadata__item,
.benvia-app-shell .benvia-hero-card__stats > *,
.benvia-app-shell .benvia-auth-panel .benvia-auth-metric-card,
.benvia-app-shell .benvia-float-stat--dark {
  border-color: rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.07);
  color: #ffffff;
}

.benvia-app-shell .benvia-auth-panel .benvia-auth-metric-card__label,
.benvia-app-shell .benvia-auth-panel .benvia-auth-metric-card__note,
.benvia-app-shell .benvia-float-stat--dark .benvia-float-stat__label,
.benvia-app-shell .benvia-float-stat--dark .benvia-float-stat__meta {
  color: #b9d0c3;
}

.benvia-app-shell .benvia-auth-panel .benvia-auth-metric-card__value,
.benvia-app-shell .benvia-float-stat--dark .benvia-float-stat__value {
  color: #ffffff;
}

/* Admin and review workspaces */
.benvia-app-shell .benvia-admin-sections {
  display: grid;
  gap: 14px;
}

.benvia-app-shell .benvia-admin-section {
  padding: 18px;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-lg);
  background: #ffffff;
  background-image: none;
  box-shadow: none;
}

.benvia-app-shell .benvia-admin-section--cool,
.benvia-app-shell .benvia-admin-section--warm,
.benvia-app-shell .benvia-admin-section--neutral,
.benvia-app-shell .benvia-admin-section--danger {
  background: #ffffff;
}

.benvia-app-shell .benvia-admin-section--cool { border-top: 3px solid #4a8068; }
.benvia-app-shell .benvia-admin-section--warm { border-top: 3px solid #d2a04b; }
.benvia-app-shell .benvia-admin-section--danger { border-top: 3px solid #ca655d; }
.benvia-app-shell .benvia-admin-section--neutral { border-top: 3px solid #829087; }

.benvia-app-shell .benvia-review-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.benvia-app-shell .benvia-review-field-card {
  padding: 12px;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-md);
  background: var(--benvia-surface-subtle);
}

.benvia-app-shell .benvia-review-field-card--full {
  grid-column: 1 / -1;
}

.benvia-app-shell .benvia-review-detail__backlink {
  display: inline-flex;
  margin-bottom: 12px;
  font-size: 0.76rem;
  font-weight: 650;
  text-decoration: none;
}

/* Tables */
.benvia-app-shell .table,
.benvia-app-shell .benvia-review-table {
  margin: 0;
  color: var(--benvia-text);
  font-size: 0.78rem;
  vertical-align: middle;
}

.benvia-app-shell .table > :not(caption) > * > *,
.benvia-app-shell .benvia-review-table th,
.benvia-app-shell .benvia-review-table td {
  padding: 0.72rem 0.75rem;
  border-bottom-color: #e8ecf0;
}

.benvia-app-shell .table thead th,
.benvia-app-shell .benvia-review-table thead th {
  color: var(--benvia-text-muted);
  background: var(--benvia-surface-subtle);
  font-size: 0.66rem;
  font-weight: 720;
  letter-spacing: 0.02em;
  text-transform: none;
  white-space: nowrap;
}

.benvia-app-shell .table tbody tr:hover,
.benvia-app-shell .benvia-review-table tbody tr:hover {
  background: #fafbfc;
}

.benvia-app-shell .benvia-review-table__primary {
  color: var(--benvia-ink);
  font-weight: 680;
}

/* Progress */
.benvia-app-shell .benvia-meter {
  padding: 12px;
  border: 1px solid var(--benvia-border);
  border-radius: var(--benvia-radius-md);
  background: #ffffff;
}

.benvia-app-shell .benvia-meter__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 8px;
  color: var(--benvia-text);
  font-size: 0.75rem;
  font-weight: 650;
}

.benvia-app-shell .benvia-meter__bar {
  height: 7px;
  border-radius: 3px;
  background: #e6eaf0;
  overflow: hidden;
}

.benvia-app-shell .benvia-meter__bar > * {
  height: 100%;
  border-radius: inherit;
  background: var(--benvia-brand);
}

.benvia-app-shell .benvia-progress-ring {
  border-color: #dfe4ea;
  box-shadow: none;
}

/* Authentication foundation */
.benvia-app-shell .benvia-auth-page {
  min-height: calc(100vh - 180px);
  display: flex;
  align-items: center;
  padding: 12px 0;
  background: transparent;
}

.benvia-app-shell .benvia-auth-shell {
  width: min(100%, 1080px);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
  gap: 14px;
  margin-inline: auto;
}

.benvia-app-shell .benvia-auth-shell--single {
  grid-template-columns: minmax(0, 620px);
  justify-content: center;
}

.benvia-app-shell .benvia-auth-panel,
.benvia-app-shell .benvia-auth-card {
  min-height: 100%;
  padding: 28px;
}

.benvia-app-shell .benvia-auth-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--benvia-border);
}

.benvia-app-shell .benvia-auth-card__header--stacked {
  align-items: center;
  flex-direction: column;
}

.benvia-app-shell .benvia-auth-card__title {
  margin: 0.18rem 0 0;
  color: var(--benvia-ink);
  font-size: 1.5rem;
  font-weight: 760;
  letter-spacing: -0.035em;
}

.benvia-app-shell .benvia-auth-card__subtitle {
  margin: 0.4rem 0 0;
  color: var(--benvia-text-muted);
  font-size: 0.8rem;
  line-height: 1.5;
}

.benvia-app-shell .benvia-auth-company-card {
  padding: 14px;
  background: var(--benvia-surface-subtle);
}

.benvia-app-shell .benvia-auth-company-card.is-warning {
  border-left: 3px solid #d49a3a;
  background: #fffdf8;
}

.benvia-app-shell .benvia-auth-company-card__title {
  margin-top: 0.25rem;
  color: var(--benvia-ink);
  font-size: 0.9rem;
  font-weight: 720;
}

.benvia-app-shell .benvia-auth-company-card__caption {
  margin-top: 0.3rem;
  color: var(--benvia-text-muted);
  font-size: 0.75rem;
  line-height: 1.5;
}

.benvia-app-shell .benvia-auth-providers {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.benvia-app-shell .benvia-auth-provider-form {
  margin: 0;
}

.benvia-app-shell .benvia-auth-provider {
  width: 100%;
  min-height: 46px;
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--benvia-border-strong);
  border-radius: var(--benvia-radius-md);
  background: #ffffff;
  color: var(--benvia-text);
  text-align: left;
  box-shadow: none;
}

.benvia-app-shell .benvia-auth-provider--primary {
  color: #ffffff;
  background: var(--benvia-brand);
  border-color: var(--benvia-brand);
}

.benvia-app-shell .benvia-auth-provider:hover:not(:disabled) {
  border-color: #aeb8c5;
  background: var(--benvia-surface-muted);
}

.benvia-app-shell .benvia-auth-provider--primary:hover:not(:disabled) {
  color: #ffffff;
  background: var(--benvia-brand-hover);
  border-color: var(--benvia-brand-hover);
}

.benvia-app-shell .benvia-auth-provider:disabled {
  opacity: 0.48;
  cursor: not-allowed;
}

.benvia-app-shell .benvia-auth-provider__label {
  font-size: 0.72rem;
  font-weight: 760;
}

.benvia-app-shell .benvia-auth-provider__text {
  font-size: 0.78rem;
  font-weight: 650;
}

/* Responsive behavior */
@media (max-width: 1280px) {
  .benvia-app-shell .benvia-focus-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benvia-app-shell .benvia-focus-card:first-child {
    grid-column: 1 / -1;
  }

  .benvia-app-shell .benvia-kpi-grid,
.benvia-app-shell .benvia-review-metrics,
.benvia-app-shell .benvia-admin-priority-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  :root {
    --benvia-content-max: 100%;
  }

  body.benvia-nav-open {
    overflow: hidden;
  }

  .benvia-app-shell .benvia-shell,
  .benvia-app-shell.benvia-sidebar-collapsed .benvia-shell {
    display: block;
  }

  .benvia-app-shell .benvia-shell__sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 50;
    width: min(286px, calc(100vw - 44px));
    transform: translateX(-102%);
    transition: transform 180ms ease;
    box-shadow: var(--benvia-shadow-menu);
  }

  .benvia-app-shell.benvia-nav-open .benvia-shell__sidebar {
    transform: translateX(0);
  }

  .benvia-app-shell.benvia-nav-open .benvia-shell__backdrop {
    display: block;
  }

  .benvia-app-shell .benvia-sidebar-collapse {
    display: none;
  }

  .benvia-app-shell .benvia-nav-toggle {
    display: inline-flex;
  }

  .benvia-app-shell .benvia-commandbar__eyebrow,
  .benvia-app-shell .benvia-commandbar__tenant-label,
  .benvia-app-shell .benvia-commandbar__security {
    display: none;
  }

  .benvia-app-shell .benvia-commandbar__tenant-name {
    max-width: 210px;
  }

  .benvia-app-shell .benvia-shell__topbar > .container-fluid,
  .benvia-app-shell .benvia-shell__content > .container-fluid,
  .benvia-app-shell .benvia-shell__footer > .container-fluid {
    padding-inline: 18px;
  }

  .benvia-app-shell .benvia-shell__content {
    padding-top: 20px;
  }

  .benvia-app-shell .benvia-dashboard-grid,
  .benvia-app-shell .benvia-profile-grid,
  .benvia-app-shell .benvia-onboarding-grid,
  .benvia-app-shell .benvia-review-detail__grid,
  .benvia-app-shell .benvia-split-grid {
    grid-template-columns: 1fr;
  }

  .benvia-app-shell .benvia-auth-shell {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .benvia-app-shell .benvia-shell__topbar > .container-fluid,
  .benvia-app-shell .benvia-shell__content > .container-fluid,
  .benvia-app-shell .benvia-shell__footer > .container-fluid {
    padding-inline: 14px;
  }

  .benvia-commandbar {
    min-height: 54px;
  }

  .benvia-app-shell .benvia-commandbar__right {
    display: none;
  }

  .benvia-app-shell .benvia-workspace-tabs {
    gap: 1rem;
  }

  .benvia-app-shell .benvia-workspace__header,
  .benvia-app-shell .benvia-workspace__header--rich,
  .benvia-app-shell .benvia-panel-card__header,
  .benvia-app-shell .benvia-review-table-card__header,
  .benvia-app-shell .benvia-review-section-card__header,
  .benvia-app-shell .benvia-review-action-card__header,
  .benvia-app-shell .benvia-admin-section__header {
    flex-direction: column;
    align-items: stretch;
  }

  .benvia-app-shell .benvia-section-actions,
  .benvia-app-shell .benvia-panel-card__actions,
  .benvia-app-shell .benvia-action-row,
  .benvia-app-shell .benvia-review-hero__actions {
    justify-content: flex-start;
  }

  .benvia-app-shell .benvia-section-actions .btn,
  .benvia-app-shell .benvia-panel-card__actions .btn {
    flex: 1 1 auto;
  }

  .benvia-app-shell .benvia-focus-rail,
.benvia-app-shell .benvia-kpi-grid,
.benvia-app-shell .benvia-kpi-grid--compact,
.benvia-app-shell .benvia-kpi-grid--thirds,
.benvia-app-shell .benvia-review-metrics,
.benvia-app-shell .benvia-review-metrics--compact,
.benvia-app-shell .benvia-admin-priority-grid,
.benvia-app-shell .benvia-focus-card__metrics,
.benvia-app-shell .benvia-focus-card__metric-grid,
.benvia-app-shell .benvia-signal-strip,
.benvia-app-shell .benvia-hero-metadata,
.benvia-app-shell .benvia-hero-card__stats,
.benvia-app-shell .benvia-auth-panel__meta-grid,
.benvia-app-shell .benvia-review-field-grid {
    grid-template-columns: 1fr;
  }

  .benvia-app-shell .benvia-focus-card:first-child,
  .benvia-app-shell .benvia-review-field-card--full {
    grid-column: auto;
  }

  .benvia-app-shell .benvia-list-item,
.benvia-app-shell .benvia-stat-list__item {
    align-items: flex-start;
    flex-direction: column;
  }

  .benvia-app-shell .benvia-auth-panel,
  .benvia-app-shell .benvia-auth-card {
    padding: 20px;
  }

  .benvia-app-shell .benvia-shell__footer-row {
    flex-direction: column;
    gap: 0.2rem;
  }
}

@media (max-width: 479.98px) {
  .benvia-app-shell .benvia-shell__content {
    padding-top: 16px;
  }

  .benvia-app-shell .benvia-section-title,
  .benvia-app-shell .benvia-shell__page-title {
    font-size: 1.45rem;
  }

  .benvia-app-shell .benvia-panel-card,
.benvia-app-shell .benvia-form-panel,
.benvia-app-shell .benvia-profile-summary-card,
.benvia-app-shell .benvia-hr-filter-card,
.benvia-app-shell .benvia-review-filter-card,
.benvia-app-shell .benvia-review-table-card,
.benvia-app-shell .benvia-review-section-card,
.benvia-app-shell .benvia-review-action-card,
.benvia-app-shell .benvia-review-note-card,
.benvia-app-shell .benvia-review-empty-state,
.benvia-app-shell .benvia-message-box,
.benvia-app-shell .benvia-summary-banner,
.benvia-app-shell .benvia-focus-card,
.benvia-app-shell .benvia-admin-section {
    padding: 14px;
  }

  .benvia-app-shell .benvia-section-actions,
  .benvia-app-shell .benvia-panel-card__actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .benvia-app-shell .benvia-section-actions .btn,
  .benvia-app-shell .benvia-panel-card__actions .btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .benvia-app-shell *,
  .benvia-app-shell *::before,
  .benvia-app-shell *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}


/* Rich emerald navigation theme */
.benvia-app-shell--premium .benvia-shell__sidebar {
  color: #eaf5ef;
  border-right: 1px solid rgba(170, 215, 193, .12);
  background:
    radial-gradient(circle at 18% 2%, rgba(47, 133, 94, .22), transparent 30rem),
    linear-gradient(180deg, #092f23 0%, #06271d 48%, #041d16 100%);
  box-shadow: inset -1px 0 0 rgba(255,255,255,.025), 18px 0 48px -42px rgba(0,0,0,.8);
}

.benvia-app-shell--premium .benvia-shell__sidebar-inner {
  background: transparent;
}

.benvia-app-shell--premium .benvia-brandbar {
  border-bottom: 1px solid rgba(216, 238, 226, .1);
}

.benvia-app-shell--premium .benvia-brandbar__name,
.benvia-app-shell--premium .benvia-company-switcher__name,
.benvia-app-shell--premium .benvia-sidebar-usercard__name {
  color: #ffffff;
}

.benvia-app-shell--premium .benvia-brandbar__descriptor,
.benvia-app-shell--premium .benvia-company-switcher__label,
.benvia-app-shell--premium .benvia-company-switcher__workspace,
.benvia-app-shell--premium .benvia-sidebar-usercard__email {
  color: rgba(229, 242, 235, .66);
}

.benvia-app-shell--premium .benvia-brandbar__mark {
  border-color: rgba(211, 237, 222, .18);
  background: rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.benvia-app-shell--premium .benvia-sidebar-collapse {
  border-color: rgba(219, 239, 229, .16);
  background: rgba(255,255,255,.06);
  color: #eff8f3;
}

.benvia-app-shell--premium .benvia-sidebar-collapse:hover,
.benvia-app-shell--premium .benvia-sidebar-collapse:focus-visible {
  border-color: rgba(219, 239, 229, .28);
  background: rgba(255,255,255,.11);
}

.benvia-app-shell--premium .benvia-company-switcher,
.benvia-app-shell--premium .benvia-sidebar-usercard {
  border: 1px solid rgba(210, 235, 222, .13);
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
  backdrop-filter: blur(12px);
}

.benvia-app-shell--premium .benvia-company-switcher__symbol,
.benvia-app-shell--premium .benvia-sidebar-usercard__avatar {
  border: 1px solid rgba(211, 237, 222, .17);
  background: rgba(213, 240, 225, .11);
  color: #d8f2e3;
}

.benvia-app-shell--premium .benvia-sidebar__section-label {
  color: rgba(212, 232, 221, .47);
}

.benvia-app-shell--premium .benvia-sidebar__item-link,
.benvia-app-shell--premium .benvia-sidebar__item-main,
.benvia-app-shell--premium .benvia-sidebar__child-link,
.benvia-app-shell--premium .benvia-sidebar__child {
  color: rgba(239, 248, 243, .82);
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.benvia-app-shell--premium .benvia-sidebar__icon {
  border-color: rgba(214, 237, 225, .1);
  background: rgba(255,255,255,.055);
  color: rgba(231, 245, 238, .82);
}

.benvia-app-shell--premium .benvia-sidebar__item-link::before,
.benvia-app-shell--premium .benvia-sidebar__item-main::before {
  background: linear-gradient(90deg, rgba(132, 210, 169, .14), rgba(255,255,255,.025));
}

.benvia-app-shell--premium .benvia-sidebar__item-link:hover,
.benvia-app-shell--premium .benvia-sidebar__child-link:hover,
.benvia-app-shell--premium .benvia-sidebar__item-toggle:hover,
.benvia-app-shell--premium .benvia-sidebar__item.is-expanded .benvia-sidebar__item-main,
.benvia-app-shell--premium .benvia-sidebar__item.is-expanded .benvia-sidebar__item-toggle {
  color: #ffffff;
  border-color: rgba(209, 236, 222, .13);
  background: rgba(255,255,255,.075);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

.benvia-app-shell--premium .benvia-sidebar__item.is-active .benvia-sidebar__item-link,
.benvia-app-shell--premium .benvia-sidebar__item.is-active .benvia-sidebar__item-main,
.benvia-app-shell--premium .benvia-sidebar__item.is-active.is-expanded .benvia-sidebar__item-main,
.benvia-app-shell--premium .benvia-sidebar__item.is-active.is-expanded .benvia-sidebar__item-toggle,
.benvia-app-shell--premium .benvia-sidebar__child.is-active,
.benvia-app-shell--premium .benvia-sidebar__child-link.is-active {
  color: #ffffff;
  border-color: rgba(180, 229, 204, .22);
  background: linear-gradient(135deg, rgba(48, 137, 95, .78), rgba(20, 91, 62, .88));
  box-shadow: 0 14px 28px -22px rgba(0,0,0,.75), inset 0 1px 0 rgba(255,255,255,.1);
}

.benvia-app-shell--premium .benvia-sidebar__item.is-active .benvia-sidebar__icon {
  border-color: rgba(232, 248, 239, .16);
  background: rgba(255,255,255,.12);
  color: #ffffff;
}

.benvia-app-shell--premium .benvia-sidebar__children {
  border-left-color: rgba(215, 236, 224, .12);
}

.benvia-app-shell--premium .benvia-sidebar__child-link,
.benvia-app-shell--premium .benvia-sidebar__child {
  background: rgba(255,255,255,.025);
}

.benvia-app-shell--premium .benvia-sidebar__badge--neutral {
  background: rgba(224, 238, 230, .14);
  color: #e8f5ee;
}

.benvia-app-shell--premium .benvia-sidebar__badge--blue,
.benvia-app-shell--premium .benvia-sidebar__badge--green {
  background: rgba(91, 192, 139, .2);
  color: #c9f0db;
}

.benvia-app-shell--premium .benvia-sidebar__badge--orange {
  background: rgba(232, 164, 87, .19);
  color: #ffe1bc;
}

.benvia-app-shell--premium .benvia-sidebar__badge--red {
  background: rgba(226, 107, 107, .2);
  color: #ffd2d2;
}

.benvia-app-shell--premium .benvia-sidebar__badge--purple {
  background: rgba(174, 139, 225, .21);
  color: #eadcff;
}

.benvia-app-shell--premium .benvia-sidebar-usercard .btn-outline-secondary {
  border-color: rgba(220, 239, 229, .2);
  color: #e7f4ed;
  background: rgba(255,255,255,.035);
}

.benvia-app-shell--premium .benvia-sidebar-usercard .btn-outline-secondary:hover {
  border-color: rgba(220, 239, 229, .32);
  color: #ffffff;
  background: rgba(255,255,255,.09);
}

.benvia-app-shell--premium .benvia-sidebar-usercard .btn-primary {
  border-color: #76ba96;
  background: #d5ecdf;
  color: #0b432d;
}

.benvia-app-shell--premium .benvia-sidebar-usercard .btn-primary:hover {
  border-color: #e0f3e8;
  background: #e7f5ed;
  color: #073723;
}

.benvia-app-shell--premium .benvia-shell__sidebar-nav {
  scrollbar-color: rgba(199, 227, 211, .2) transparent;
}

.benvia-app-shell--premium .benvia-shell__sidebar-nav::-webkit-scrollbar-thumb {
  background: rgba(199, 227, 211, .18);
}
