:root {
  --dg-admin-navy: #071a46;
  --dg-admin-ink: #0f2448;
  --dg-admin-muted: #64748b;
  --dg-admin-cyan: #00c9bd;
  --dg-admin-cyan-2: #00a7d8;
  --dg-admin-line: rgba(15, 36, 72, .10);
  --dg-admin-radius: 24px;
  --dg-admin-shadow: 0 24px 72px rgba(7, 26, 70, .10);
  --dg-admin-font: 'Inter', 'Public Sans', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.layout-wrapper.layout-content-navbar {
  font-family: var(--dg-admin-font);
  background:
    radial-gradient(circle at 8% 8%, rgba(0, 201, 189, .14), transparent 32rem),
    radial-gradient(circle at 88% 4%, rgba(45, 107, 255, .10), transparent 30rem),
    linear-gradient(180deg, #f7fbff 0%, #ffffff 44%, #f4f8fb 100%);
}
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  background: transparent !important;
}
.layout-wrapper.layout-content-navbar .container-p-y {
  padding-top: 1.35rem !important;
  padding-bottom: 1.35rem !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.menu-vertical {
  border: 0 !important;
  background: radial-gradient(circle at 80% 92%, rgba(0, 201, 189, .24), transparent 14rem), linear-gradient(180deg, #0a1d50 0%, #061332 62%, #033e50 100%) !important;
  box-shadow: 18px 0 58px rgba(7, 26, 70, .18) !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .app-brand {
  min-height: 78px;
  padding-inline: 18px !important;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.layout-wrapper.layout-content-navbar .layout-menu .app-brand-text,
.layout-wrapper.layout-content-navbar .layout-menu .menu-text {
  color: #fff !important;
  letter-spacing: -.02em;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-inner {
  width: 100% !important;
  padding: 12px 12px 22px !important;
  overflow-x: hidden !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-item {
  width: 100% !important;
  max-width: 100% !important;
  margin: 3px 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-link {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 42px;
  padding: 0 13px !important;
  border-radius: 15px !important;
  color: rgba(226, 241, 255, .78) !important;
  font-size: 13px;
  font-weight: 850;
  letter-spacing: -.01em;
  overflow: hidden !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-link > i {
  color: rgba(205, 232, 255, .78) !important;
  flex: 0 0 auto;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-link > div:not(.badge) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-item.active > .menu-link,
.layout-wrapper.layout-content-navbar .layout-menu .menu-item.open > .menu-link {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2)) !important;
  box-shadow: 0 14px 36px rgba(0, 201, 189, .26) !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-item.active > .menu-link > i,
.layout-wrapper.layout-content-navbar .layout-menu .menu-item.open > .menu-link > i {
  color: #fff !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-sub .menu-link {
  min-height: 38px;
  padding-left: 2.35rem !important;
  background: transparent !important;
  box-shadow: none !important;
}
.layout-wrapper.layout-content-navbar .layout-menu .menu-sub .menu-item.active > .menu-link {
  color: #ccfffb !important;
  background: rgba(255,255,255,.08) !important;
}

.layout-wrapper.layout-content-navbar .layout-navbar {
  border: 1px solid rgba(255,255,255,.8) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.82) !important;
  box-shadow: 0 18px 58px rgba(7, 26, 70, .08) !important;
  backdrop-filter: blur(18px);
}
.layout-wrapper.layout-content-navbar .card {
  border: 1px solid var(--dg-admin-line) !important;
  border-radius: var(--dg-admin-radius) !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: var(--dg-admin-shadow) !important;
  backdrop-filter: blur(16px);
}
.layout-wrapper.layout-content-navbar .card-header {
  border-bottom: 1px solid rgba(15, 36, 72, .08) !important;
  background: transparent !important;
  border-radius: var(--dg-admin-radius) var(--dg-admin-radius) 0 0 !important;
}
.layout-wrapper.layout-content-navbar .card-title,
.layout-wrapper.layout-content-navbar h1,
.layout-wrapper.layout-content-navbar h2,
.layout-wrapper.layout-content-navbar h3,
.layout-wrapper.layout-content-navbar h4,
.layout-wrapper.layout-content-navbar h5 {
  color: var(--dg-admin-navy);
  letter-spacing: -.02em;
}
.layout-wrapper.layout-content-navbar .btn-primary {
  border-color: transparent !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2)) !important;
  box-shadow: 0 16px 42px rgba(0, 201, 189, .25) !important;
}
.layout-wrapper.layout-content-navbar .btn-label-primary {
  border-color: rgba(0, 201, 189, .16) !important;
  border-radius: 999px !important;
  color: #027b83 !important;
  background: rgba(0, 201, 189, .10) !important;
}
.layout-wrapper.layout-content-navbar .form-control,
.layout-wrapper.layout-content-navbar .form-select,
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--single,
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--multiple {
  border-radius: 16px !important;
  border-color: rgba(15, 36, 72, .12) !important;
}
.layout-wrapper.layout-content-navbar .select2-container--open,
.layout-wrapper.layout-content-navbar .select2-dropdown {
  z-index: 60000 !important;
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.menu-vertical {
    border-radius: 0 28px 28px 0 !important;
  }
}
@media (max-width: 767.98px) {
  .layout-wrapper.layout-content-navbar .container-p-y {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .layout-wrapper.layout-content-navbar .layout-navbar {
    border-radius: 22px !important;
  }
  .layout-wrapper.layout-content-navbar .card {
    border-radius: 24px !important;
  }
}

/* DentalGenius Tailwind-inspired reusable backend kit */
.dg-tw-page {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.dg-tw-grid {
  display: grid;
  gap: 1rem;
}
.dg-tw-grid--stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dg-tw-grid--modules {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dg-tw-grid--main {
  grid-template-columns: minmax(0, 1.7fr) minmax(320px, .9fr);
  align-items: stretch;
}
.dg-tw-grid--focus {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dg-tw-hero,
.dg-tw-stat,
.dg-tw-module,
.dg-tw-panel {
  position: relative;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 28px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 24px 72px rgba(7, 26, 70, .10);
  backdrop-filter: blur(18px);
  overflow: hidden;
}
.dg-tw-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: clamp(1.15rem, 2.6vw, 2rem);
  min-height: 172px;
  isolation: isolate;
}
.dg-tw-hero::before {
  content: '';
  position: absolute;
  inset: auto -10% -50% auto;
  width: 20rem;
  height: 20rem;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(0, 201, 189, .20), transparent 68%);
  z-index: -1;
}
.dg-tw-hero__glow {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(0,201,189,.08), transparent 38%),
    radial-gradient(circle at 12% 0%, rgba(45,107,255,.10), transparent 34rem);
  z-index: -2;
}
.dg-tw-hero__content {
  display: flex;
  align-items: center;
  gap: 1.05rem;
  min-width: 0;
}
.dg-tw-hero__icon,
.dg-tw-stat__icon,
.dg-tw-module__icon,
.dg-tw-panel__icon,
.dg-tw-empty__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 16px 42px rgba(0,201,189,.28);
}
.dg-tw-hero__icon {
  width: 4.25rem;
  height: 4.25rem;
  border-radius: 1.35rem;
  font-size: 1.85rem;
}
.dg-tw-hero__copy {
  min-width: 0;
  max-width: 58rem;
}
.dg-tw-eyebrow,
.dg-tw-pill {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 999px;
  background: rgba(0,201,189,.10);
  color: #027b83;
  font-size: .72rem;
  line-height: 1;
  font-weight: 850;
  letter-spacing: .02em;
  text-transform: uppercase;
  padding: .45rem .65rem;
  white-space: normal;
}
.dg-tw-pill--warning {
  border-color: rgba(245,158,11,.18);
  color: #a15c00;
  background: rgba(245,158,11,.12);
}
.dg-tw-hero h1,
.dg-tw-panel h2,
.dg-tw-module h3,
.dg-tw-empty h3,
.dg-tw-activity-item h3 {
  color: var(--dg-admin-navy);
  letter-spacing: -.035em;
}
.dg-tw-hero h1 {
  margin: .55rem 0 .35rem;
  font-size: clamp(1.65rem, 3vw, 2.85rem);
  font-weight: 950;
  line-height: .96;
}
.dg-tw-hero p {
  margin: 0;
  color: #5f708c;
  font-size: 1rem;
  line-height: 1.65;
  max-width: 48rem;
}
.dg-tw-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .85rem;
}
.dg-tw-hero__actions,
.dg-tw-panel__actions,
.dg-tw-empty__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .6rem;
}
.dg-tw-btn,
.dg-tw-panel__actions .btn,
.dg-tw-hero__actions .btn,
.dg-tw-empty__actions .btn,
.dg-tw-module .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 2.65rem;
  border: 0 !important;
  border-radius: 999px !important;
  padding: .72rem 1rem !important;
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
  box-shadow: 0 16px 42px rgba(0,201,189,.22) !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}
.dg-tw-btn--soft,
.dg-tw-panel__actions .btn-label-primary,
.dg-tw-hero__actions .btn-label-primary,
.dg-tw-empty__actions .btn-label-primary {
  color: #027b83 !important;
  background: rgba(0,201,189,.10) !important;
  border: 1px solid rgba(0,201,189,.16) !important;
  box-shadow: none !important;
}
.dg-tw-stat {
  display: block;
  min-height: 10.5rem;
  padding: 1rem;
  text-decoration: none;
  color: inherit;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dg-tw-stat:hover,
.dg-tw-module:hover {
  transform: translateY(-2px);
  border-color: rgba(0,201,189,.24);
  box-shadow: 0 30px 84px rgba(7, 26, 70, .13);
}
.dg-tw-stat__head,
.dg-tw-module__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: 1rem;
}
.dg-tw-stat__icon,
.dg-tw-module__icon,
.dg-tw-panel__icon,
.dg-tw-empty__icon {
  width: 2.65rem;
  height: 2.65rem;
  border-radius: 1rem;
  font-size: 1.25rem;
}
.dg-tw-stat__value {
  color: var(--dg-admin-navy);
  font-size: clamp(1.7rem, 2.8vw, 2.5rem);
  font-weight: 950;
  letter-spacing: -.05em;
  line-height: 1;
}
.dg-tw-stat__description {
  margin: .6rem 0 0;
  color: #6b7b94;
  line-height: 1.45;
}
.dg-tw-module {
  display: flex;
  flex-direction: column;
  min-height: 18.5rem;
  padding: 1.05rem;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dg-tw-module__body {
  flex: 1 1 auto;
}
.dg-tw-module h3 {
  margin: 0 0 .35rem;
  font-size: 1.1rem;
  font-weight: 950;
  line-height: 1.15;
}
.dg-tw-module__body > span {
  display: block;
  color: #72829b;
  font-size: .82rem;
  font-weight: 750;
  margin-bottom: .75rem;
}
.dg-tw-module p {
  color: #5f708c;
  line-height: 1.55;
  margin-bottom: 1rem;
}
.dg-tw-panel {
  min-width: 0;
}
.dg-tw-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.25rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-tw-panel__titlewrap {
  display: flex;
  align-items: center;
  gap: .85rem;
  min-width: 0;
}
.dg-tw-panel h2 {
  margin: 0;
  font-size: 1.08rem;
  font-weight: 950;
}
.dg-tw-panel p {
  margin: .25rem 0 0;
  color: #6a7890;
}
.dg-tw-panel__body {
  padding: 1.2rem;
}
.dg-tw-chart-wrap {
  position: relative;
  min-height: 20rem;
}
.dg-tw-status-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
.dg-tw-status-tile {
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 18px;
  background: rgba(248,251,255,.86);
  padding: .85rem;
}
.dg-tw-status-tile h4 {
  margin: .45rem 0 0;
  color: var(--dg-admin-navy);
  font-weight: 950;
}
.dg-tw-summary-list {
  display: flex;
  flex-direction: column;
  gap: .85rem;
}
.dg-tw-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 18px;
  background: rgba(248,251,255,.72);
  padding: .9rem;
}
.dg-tw-summary-row h3 {
  margin: 0 0 .2rem;
  color: var(--dg-admin-navy);
  font-size: .95rem;
  font-weight: 900;
}
.dg-tw-summary-row p {
  margin: 0;
  color: #77859a;
  font-size: .82rem;
}
.dg-tw-activity-list {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.dg-tw-activity-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 20px;
  background: rgba(248,251,255,.66);
  padding: .95rem;
  color: inherit;
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.dg-tw-activity-item:hover {
  transform: translateY(-1px);
  border-color: rgba(0,201,189,.20);
  background: rgba(255,255,255,.92);
}
.dg-tw-activity-item__main {
  min-width: 0;
}
.dg-tw-activity-item__badges {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin-bottom: .45rem;
}
.dg-tw-activity-item h3 {
  margin: 0 0 .3rem;
  font-size: .98rem;
  font-weight: 900;
}
.dg-tw-activity-item p {
  margin: 0;
  color: #6f7f97;
  font-size: .88rem;
  line-height: 1.45;
}
.dg-tw-activity-item__meta {
  color: #7b88a0;
  font-size: .82rem;
  text-align: right;
  flex: 0 0 auto;
}
.dg-tw-empty {
  display: grid;
  place-items: center;
  text-align: center;
  min-height: 14rem;
  border: 1px dashed rgba(0,201,189,.24);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(0,201,189,.08), rgba(255,255,255,.78));
  padding: 1.25rem;
}
.dg-tw-empty__icon {
  margin-bottom: .8rem;
}
.dg-tw-empty h3 {
  margin: 0 0 .35rem;
  font-size: 1.05rem;
  font-weight: 950;
}
.dg-tw-empty p {
  margin: 0;
  color: #718098;
  max-width: 28rem;
}
.dg-tw-focus-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
}
.dg-tw-focus-card {
  display: flex;
  flex-direction: column;
  min-height: 13rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 22px;
  background: rgba(248,251,255,.70);
  padding: 1rem;
}
.dg-tw-focus-card h3 {
  margin: .7rem 0 .45rem;
  color: var(--dg-admin-navy);
  font-size: 1rem;
  font-weight: 950;
  line-height: 1.22;
}
.dg-tw-focus-card p {
  flex: 1 1 auto;
  margin-bottom: .85rem;
  color: #6d7b92;
  font-size: .88rem;
  line-height: 1.5;
}
.dg-tw-focus-card .badge,
.dg-tw-activity-item .badge {
  width: fit-content;
  max-width: 100%;
  white-space: normal;
}
.dg-tw-mobile-actions {
  display: none;
}
@media (max-width: 1199.98px) {
  .dg-tw-grid--stats,
  .dg-tw-grid--modules {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-tw-grid--main {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .dg-tw-page {
    gap: .9rem;
    padding-bottom: 5.8rem;
  }
  .dg-tw-hero,
  .dg-tw-panel,
  .dg-tw-stat,
  .dg-tw-module {
    border-radius: 24px;
  }
  .dg-tw-hero {
    flex-direction: column;
    align-items: stretch;
    padding: 1rem;
    min-height: unset;
  }
  .dg-tw-hero__content {
    align-items: flex-start;
    gap: .8rem;
  }
  .dg-tw-hero__icon {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 1.05rem;
    font-size: 1.35rem;
  }
  .dg-tw-eyebrow,
  .dg-tw-pill {
    font-size: .62rem;
    line-height: 1.15;
    padding: .38rem .52rem;
  }
  .dg-tw-hero h1 {
    font-size: 1.65rem;
    line-height: 1.02;
  }
  .dg-tw-hero p {
    font-size: .9rem;
    line-height: 1.5;
  }
  .dg-tw-hero__actions,
  .dg-tw-panel__actions,
  .dg-tw-empty__actions {
    justify-content: stretch;
  }
  .dg-tw-hero__actions .btn,
  .dg-tw-panel__actions .btn,
  .dg-tw-empty__actions .btn,
  .dg-tw-btn {
    width: 100%;
  }
  .dg-tw-grid--stats,
  .dg-tw-grid--modules,
  .dg-tw-grid--focus,
  .dg-tw-focus-list {
    grid-template-columns: 1fr;
  }
  .dg-tw-stat {
    min-height: 9rem;
  }
  .dg-tw-module {
    min-height: 15rem;
  }
  .dg-tw-panel__header {
    align-items: stretch;
    flex-direction: column;
    padding: 1rem;
  }
  .dg-tw-panel__body {
    padding: 1rem;
  }
  .dg-tw-status-grid {
    grid-template-columns: 1fr;
  }
  .dg-tw-summary-row,
  .dg-tw-activity-item {
    align-items: flex-start;
    flex-direction: column;
  }
  .dg-tw-activity-item__meta {
    text-align: left;
  }
}
.dg-tw-stat--blue .dg-tw-stat__icon,
.dg-tw-module--blue .dg-tw-module__icon,
.dg-tw-panel--blue .dg-tw-panel__icon,
.dg-tw-empty--blue .dg-tw-empty__icon {
  background: linear-gradient(135deg, #2d6bff, #00a7d8);
  box-shadow: 0 16px 42px rgba(45,107,255,.22);
}
.dg-tw-stat--green .dg-tw-stat__icon,
.dg-tw-module--green .dg-tw-module__icon,
.dg-tw-panel--green .dg-tw-panel__icon,
.dg-tw-empty--green .dg-tw-empty__icon {
  background: linear-gradient(135deg, #14b87a, #00c9bd);
  box-shadow: 0 16px 42px rgba(20,184,122,.22);
}
.dg-tw-stat--muted .dg-tw-stat__icon,
.dg-tw-module--muted .dg-tw-module__icon,
.dg-tw-panel--muted .dg-tw-panel__icon,
.dg-tw-empty--muted .dg-tw-empty__icon {
  background: linear-gradient(135deg, #64748b, #334155);
  box-shadow: 0 16px 42px rgba(51,65,85,.18);
}

/* =========================================================
   Step 8 - App shell polish, reusable cover cards, bottom nav
   ========================================================= */
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
  overflow: visible !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after {
  content: 'DentalGenius AI Workspace';
  position: absolute;
  left: 1.45rem;
  right: 1.45rem;
  bottom: 1.1rem;
  color: rgba(226,241,255,.34) !important;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1.15;
  pointer-events: none;
  z-index: 1;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
  position: relative;
  display: flex !important;
  align-items: center !important;
  gap: .65rem;
  padding: .9rem .95rem !important;
  min-height: 80px;
  overflow: visible !important;
  isolation: isolate;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
  display: flex !important;
  align-items: center !important;
  min-width: 0;
  gap: .72rem;
  flex: 1 1 auto;
  text-decoration: none;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
  display: inline-grid !important;
  place-items: center;
  width: 2.65rem !important;
  height: 2.65rem !important;
  min-width: 2.65rem !important;
  border-radius: 1.05rem !important;
  background: rgba(255,255,255,.08) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.10), 0 .8rem 1.65rem rgba(0,0,0,.18) !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo img,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon {
  width: 2.05rem !important;
  height: 2.05rem !important;
  object-fit: contain !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark {
  display: flex;
  flex-direction: column;
  min-width: 0;
  color: #fff !important;
  line-height: 1.05;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-title {
  display: block;
  color: #fff;
  font-size: .95rem;
  font-weight: 950;
  letter-spacing: -.035em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-subtitle {
  display: block;
  margin-top: .18rem;
  color: rgba(226,241,255,.54);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .015em;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
  position: absolute !important;
  top: 1.18rem !important;
  right: -1.05rem !important;
  z-index: 5 !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 2.25rem !important;
  height: 2.25rem !important;
  min-width: 2.25rem !important;
  min-height: 2.25rem !important;
  padding: 0 !important;
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.96) !important;
  color: var(--dg-admin-navy) !important;
  box-shadow: 0 .85rem 2rem rgba(7,26,70,.20) !important;
  backdrop-filter: blur(16px);
  transform: none !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2)) !important;
  box-shadow: 0 1rem 2.4rem rgba(0,201,189,.28) !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control i {
  margin: 0 !important;
  color: currentColor !important;
  font-size: 1.15rem !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
  padding: .85rem .8rem 4rem !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
  transform: none !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link:hover {
  transform: translateX(2px) !important;
}

@media (min-width: 1200px) {
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar::after {
    content: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    padding-inline: .55rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-link {
    justify-content: center !important;
    gap: 0 !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .app-brand-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-sub {
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    top: 1.35rem !important;
    right: -1.05rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .55rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    padding-inline: 0 !important;
    min-width: 2.85rem !important;
    width: 2.85rem !important;
    margin-inline: auto !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > i {
    margin: 0 !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    border-radius: 0 2rem 2rem 0 !important;
    max-width: min(82vw, 320px) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    top: 1.2rem !important;
    right: 1rem !important;
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.12) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    padding-right: 4rem !important;
  }
}

/* Internal navbar: closer to the public glass pill without changing logic. */
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar .layout-navbar {
  min-height: 4rem;
  border-radius: 1.35rem !important;
  padding-inline: 1rem !important;
}
.layout-wrapper.layout-content-navbar .layout-menu-toggle.navbar-nav .nav-link {
  display: inline-grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 1rem;
  color: var(--dg-admin-navy) !important;
  background: rgba(15,36,72,.05);
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.layout-wrapper.layout-content-navbar .layout-menu-toggle.navbar-nav .nav-link:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dg-admin-navy), #043f54);
  transform: translateY(-1px);
}

/* Reusable cover card: Focus cards now share the same pattern as public job-ad cards. */
.dg-tw-cover-card-grid {
  align-items: stretch;
}
.dg-tw-cover-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 100%;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.55rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 72px rgba(7,26,70,.10);
  backdrop-filter: blur(16px);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.dg-tw-cover-card:hover {
  transform: translateY(-3px);
  border-color: rgba(0,201,189,.24);
  box-shadow: 0 30px 86px rgba(7,26,70,.14);
}
.dg-tw-cover-card__media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, rgba(0,201,189,.12), rgba(45,107,255,.10));
  overflow: hidden;
  text-decoration: none;
}
.dg-tw-cover-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform .35s ease;
}
.dg-tw-cover-card:hover .dg-tw-cover-card__media img {
  transform: scale(1.035);
}
.dg-tw-cover-card__fallback {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #027b83;
  font-size: 3rem;
}
.dg-tw-cover-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 1.15rem;
}
.dg-tw-cover-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
  margin-bottom: .85rem;
}
.dg-tw-cover-card__badges .badge {
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  white-space: normal;
}
.dg-tw-cover-card__date {
  color: #74829a;
  font-size: .78rem;
  font-weight: 800;
}
.dg-tw-cover-card h3 {
  margin: 0 0 .55rem;
  color: var(--dg-admin-navy);
  font-size: 1.05rem;
  font-weight: 950;
  letter-spacing: -.035em;
  line-height: 1.12;
}
.dg-tw-cover-card h3 a {
  color: inherit;
  text-decoration: none;
}
.dg-tw-cover-card p {
  flex: 1 1 auto;
  margin: 0 0 1rem;
  color: #64748b;
  font-size: .9rem;
  line-height: 1.52;
}
.dg-tw-cover-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin-top: auto;
}
.dg-tw-cover-card__meta {
  min-width: 0;
  color: #738099;
  font-size: .82rem;
  font-weight: 750;
}
.dg-tw-cover-card__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 2.35rem;
  padding: .6rem .85rem;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.16);
  font-weight: 900;
  font-size: .82rem;
  text-decoration: none;
  white-space: nowrap;
}
.dg-tw-cover-card__action:hover {
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
}
.dg-tw-focus-list.dg-tw-cover-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1199.98px) {
  .dg-tw-focus-list.dg-tw-cover-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .dg-tw-focus-list.dg-tw-cover-card-grid {
    grid-template-columns: 1fr;
  }
  .dg-tw-cover-card {
    border-radius: 1.35rem;
  }
  .dg-tw-cover-card__body {
    padding: 1rem;
  }
  .dg-tw-cover-card h3 {
    font-size: 1rem;
  }
  .dg-tw-cover-card p {
    font-size: .86rem;
  }
}

/* Admin/client mobile app bottom bar */
.dg-app-bottom-nav {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 1085;
  display: none;
  padding: 0 0 max(.45rem, env(safe-area-inset-bottom));
  pointer-events: none;
}
.dg-app-bottom-nav-inner {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  width: min(100% - .85rem, 34rem);
  margin: 0 auto;
  gap: .28rem;
  padding: .42rem;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 1.45rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 -1rem 2.7rem rgba(7,26,70,.16);
  backdrop-filter: blur(22px);
  pointer-events: auto;
}
.dg-app-bottom-nav-link {
  display: flex;
  min-width: 0;
  min-height: 3.3rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .16rem;
  border-radius: 1.05rem;
  color: rgba(7,26,70,.58);
  text-decoration: none;
  transition: color .18s ease, background .18s ease, transform .18s ease;
}
.dg-app-bottom-nav-link i {
  font-size: 1.22rem;
}
.dg-app-bottom-nav-link span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .66rem;
  font-weight: 900;
  line-height: 1;
}
.dg-app-bottom-nav-link:hover,
.dg-app-bottom-nav-link:focus,
.dg-app-bottom-nav-link.is-active {
  color: #027b83;
  background: rgba(0,201,189,.11);
  transform: translateY(-1px);
}
.dg-app-bottom-nav--admin .dg-app-bottom-nav-link.is-active {
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 .8rem 1.6rem rgba(0,201,189,.22);
}
@media (max-width: 991.98px) {
  body:has(.dg-app-bottom-nav) .content-wrapper {
    padding-bottom: calc(5rem + env(safe-area-inset-bottom));
  }
  body:has(.dg-app-bottom-nav) .footer {
    padding-bottom: calc(5rem + env(safe-area-inset-bottom));
  }
  .dg-app-bottom-nav {
    display: block;
  }
  body:has(.dg-app-bottom-nav) .dg-support-floating-btn {
    bottom: calc(5.35rem + env(safe-area-inset-bottom));
  }
}
@media (max-width: 359.98px) {
  .dg-app-bottom-nav-link span { font-size: .6rem; }
  .dg-app-bottom-nav-link i { font-size: 1.1rem; }
}

/* =========================================================
   Step 8 - App shell polish, reusable cover cards, bottom nav
   ========================================================= */
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
  overflow: visible !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after {
  content: 'DentalGenius AI Workspace';
  position: absolute;
  left: 1.45rem;
  right: 1.45rem;
  bottom: 1.1rem;
  color: rgba(226,241,255,.34) !important;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1.15;
  pointer-events: none;
  z-index: 1;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
  position: relative;
  display: flex !important;
  align-items: center !important;
  gap: .65rem;
  padding: .9rem .95rem !important;
  min-height: 80px;
  overflow: visible !important;
  isolation: isolate;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
  display: flex !important;
  align-items: center !important;
  min-width: 0;
  gap: .72rem;
  flex: 1 1 auto;
  text-decoration: none;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
  display: inline-grid !important;
  place-items: center;
  width: 2.65rem !important;
  height: 2.65rem !important;
  min-width: 2.65rem !important;
  border-radius: 1.05rem !important;
  background: rgba(255,255,255,.08) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.10), 0 .8rem 1.65rem rgba(0,0,0,.18) !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo img,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon {
  width: 2.05rem !important;
  height: 2.05rem !important;
  object-fit: contain !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark {
  display: flex;
  flex-direction: column;
  min-width: 0;
  color: #fff !important;
  line-height: 1.05;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-title {
  display: block;
  color: #fff;
  font-size: .95rem;
  font-weight: 950;
  letter-spacing: -.035em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-subtitle {
  display: block;
  margin-top: .18rem;
  color: rgba(226,241,255,.54);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .015em;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
  position: absolute !important;
  top: 1.18rem !important;
  right: -1.05rem !important;
  z-index: 5 !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 2.25rem !important;
  height: 2.25rem !important;
  min-width: 2.25rem !important;
  min-height: 2.25rem !important;
  padding: 0 !important;
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.96) !important;
  color: var(--dg-admin-navy) !important;
  box-shadow: 0 .85rem 2rem rgba(7,26,70,.20) !important;
  backdrop-filter: blur(16px);
  transform: none !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2)) !important;
  box-shadow: 0 1rem 2.4rem rgba(0,201,189,.28) !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control i {
  margin: 0 !important;
  color: currentColor !important;
  font-size: 1.15rem !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
  padding: .85rem .8rem 4rem !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
  transform: none !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link:hover {
  transform: translateX(2px) !important;
}

@media (min-width: 1200px) {
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar::after {
    content: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    padding-inline: .55rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-link {
    justify-content: center !important;
    gap: 0 !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .app-brand-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-sub {
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    top: 1.35rem !important;
    right: -1.05rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .55rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    padding-inline: 0 !important;
    min-width: 2.85rem !important;
    width: 2.85rem !important;
    margin-inline: auto !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > i {
    margin: 0 !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    border-radius: 0 2rem 2rem 0 !important;
    max-width: min(82vw, 320px) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    top: 1.2rem !important;
    right: 1rem !important;
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.12) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    padding-right: 4rem !important;
  }
}

/* Internal navbar: closer to the public glass pill without changing logic. */
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar .layout-navbar {
  min-height: 4rem;
  border-radius: 1.35rem !important;
  padding-inline: 1rem !important;
}
.layout-wrapper.layout-content-navbar .layout-menu-toggle.navbar-nav .nav-link {
  display: inline-grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 1rem;
  color: var(--dg-admin-navy) !important;
  background: rgba(15,36,72,.05);
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.layout-wrapper.layout-content-navbar .layout-menu-toggle.navbar-nav .nav-link:hover {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dg-admin-navy), #043f54);
  transform: translateY(-1px);
}

/* Reusable cover card: Focus cards now share the same pattern as public job-ad cards. */
.dg-tw-cover-card-grid {
  align-items: stretch;
}
.dg-tw-cover-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 100%;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.55rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 72px rgba(7,26,70,.10);
  backdrop-filter: blur(16px);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.dg-tw-cover-card:hover {
  transform: translateY(-3px);
  border-color: rgba(0,201,189,.24);
  box-shadow: 0 30px 86px rgba(7,26,70,.14);
}
.dg-tw-cover-card__media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, rgba(0,201,189,.12), rgba(45,107,255,.10));
  overflow: hidden;
  text-decoration: none;
}
.dg-tw-cover-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transition: transform .35s ease;
}
.dg-tw-cover-card:hover .dg-tw-cover-card__media img {
  transform: scale(1.035);
}
.dg-tw-cover-card__fallback {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #027b83;
  font-size: 3rem;
}
.dg-tw-cover-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 1.15rem;
}
.dg-tw-cover-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
  margin-bottom: .85rem;
}
.dg-tw-cover-card__badges .badge {
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  white-space: normal;
}
.dg-tw-cover-card__date {
  color: #74829a;
  font-size: .78rem;
  font-weight: 800;
}
.dg-tw-cover-card h3 {
  margin: 0 0 .55rem;
  color: var(--dg-admin-navy);
  font-size: 1.05rem;
  font-weight: 950;
  letter-spacing: -.035em;
  line-height: 1.12;
}
.dg-tw-cover-card h3 a {
  color: inherit;
  text-decoration: none;
}
.dg-tw-cover-card p {
  flex: 1 1 auto;
  margin: 0 0 1rem;
  color: #64748b;
  font-size: .9rem;
  line-height: 1.52;
}
.dg-tw-cover-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin-top: auto;
}
.dg-tw-cover-card__meta {
  min-width: 0;
  color: #738099;
  font-size: .82rem;
  font-weight: 750;
}
.dg-tw-cover-card__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 2.35rem;
  padding: .6rem .85rem;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.16);
  font-weight: 900;
  font-size: .82rem;
  text-decoration: none;
  white-space: nowrap;
}
.dg-tw-cover-card__action:hover {
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
}
.dg-tw-focus-list.dg-tw-cover-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1199.98px) {
  .dg-tw-focus-list.dg-tw-cover-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .dg-tw-focus-list.dg-tw-cover-card-grid {
    grid-template-columns: 1fr;
  }
  .dg-tw-cover-card {
    border-radius: 1.35rem;
  }
  .dg-tw-cover-card__body {
    padding: 1rem;
  }
  .dg-tw-cover-card h3 {
    font-size: 1rem;
  }
  .dg-tw-cover-card p {
    font-size: .86rem;
  }
}

/* Admin/client mobile app bottom bar */
.dg-app-bottom-nav {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 1085;
  display: none;
  padding: 0 0 max(.45rem, env(safe-area-inset-bottom));
  pointer-events: none;
}
.dg-app-bottom-nav-inner {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  width: min(100% - .85rem, 34rem);
  margin: 0 auto;
  gap: .28rem;
  padding: .42rem;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 1.45rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 -1rem 2.7rem rgba(7,26,70,.16);
  backdrop-filter: blur(22px);
  pointer-events: auto;
}
.dg-app-bottom-nav-link {
  display: flex;
  min-width: 0;
  min-height: 3.3rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .16rem;
  border-radius: 1.05rem;
  color: rgba(7,26,70,.58);
  text-decoration: none;
  transition: color .18s ease, background .18s ease, transform .18s ease;
}
.dg-app-bottom-nav-link i {
  font-size: 1.22rem;
}
.dg-app-bottom-nav-link span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .66rem;
  font-weight: 900;
  line-height: 1;
}
.dg-app-bottom-nav-link:hover,
.dg-app-bottom-nav-link:focus,
.dg-app-bottom-nav-link.is-active {
  color: #027b83;
  background: rgba(0,201,189,.11);
  transform: translateY(-1px);
}
.dg-app-bottom-nav--admin .dg-app-bottom-nav-link.is-active {
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 .8rem 1.6rem rgba(0,201,189,.22);
}
@media (max-width: 991.98px) {
  body:has(.dg-app-bottom-nav) .content-wrapper {
    padding-bottom: calc(5rem + env(safe-area-inset-bottom));
  }
  body:has(.dg-app-bottom-nav) .footer {
    padding-bottom: calc(5rem + env(safe-area-inset-bottom));
  }
  .dg-app-bottom-nav {
    display: block;
  }
  body:has(.dg-app-bottom-nav) .dg-support-floating-btn {
    bottom: calc(5.35rem + env(safe-area-inset-bottom));
  }
}
@media (max-width: 359.98px) {
  .dg-app-bottom-nav-link span { font-size: .6rem; }
  .dg-app-bottom-nav-link i { font-size: 1.1rem; }
}

/* =========================================================
   Step 8B - Sidebar trigger + mobile drawer aligned to public menu
   ========================================================= */
:root {
  --dg-app-drawer-bg: linear-gradient(165deg, #0b1b4d 0%, #071332 56%, #03485b 100%);
}

/* The old floating circle is removed from desktop. The top glass navbar owns open/close. */
@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    display: none !important;
  }
  .layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger {
    display: flex !important;
  }
}

/* Navbar menu trigger: same idea as the public hamburger/login controls, not a loose side bubble. */
.layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger {
  flex: 0 0 auto;
}
.layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger .nav-link {
  display: inline-grid !important;
  place-items: center !important;
  width: 2.85rem !important;
  height: 2.85rem !important;
  min-width: 2.85rem !important;
  border: 1px solid rgba(15,36,72,.08) !important;
  border-radius: 1rem !important;
  color: #061b45 !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 .8rem 2rem rgba(7,26,70,.10) !important;
  backdrop-filter: blur(18px);
  transition: transform .18s ease, color .18s ease, background .18s ease, box-shadow .18s ease !important;
}
.layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger .nav-link:hover,
.layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger .nav-link:focus-visible {
  color: #fff !important;
  background: linear-gradient(135deg, #061b45, #043f54) !important;
  box-shadow: 0 1rem 2.6rem rgba(7,26,70,.22) !important;
  transform: translateY(-1px);
}
.layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger .nav-link i {
  color: currentColor !important;
  margin: 0 !important;
  font-size: 1.25rem !important;
}

/* Collapsed sidebar: no text/ghost labels/old workspace copy. */
@media (min-width: 1200px) {
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar::after {
    content: none !important;
    display: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-subtitle,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-title {
    display: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    min-height: 5.35rem !important;
    padding: 1rem .55rem .75rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-link {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* Mobile/tablet app drawer: match public landing drawer dimensions, radius, colors and spacing. */
@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    inset: 12px auto 12px 12px !important;
    z-index: 2300 !important;
    width: min(350px, calc(100vw - 24px)) !important;
    max-width: min(350px, calc(100vw - 24px)) !important;
    height: auto !important;
    max-height: calc(100dvh - 24px) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 30px !important;
    background: var(--dg-app-drawer-bg) !important;
    box-shadow: 0 24px 80px rgba(2,16,47,.38) !important;
    overflow: hidden !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after {
    content: none !important;
    display: none !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: auto !important;
    height: auto !important;
    padding: 18px !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    background: transparent !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
    color: #fff !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    border-radius: 17px !important;
    background: rgba(255,255,255,.08) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.10), 0 .8rem 1.65rem rgba(0,0,0,.18) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo img,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon {
    width: 2.4rem !important;
    height: 2.4rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark {
    display: grid !important;
    gap: 2px !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
    max-width: 170px !important;
    overflow: visible !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-title {
    display: block !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    letter-spacing: -.02em !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-subtitle {
    display: block !important;
    color: rgba(172,240,244,.72) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: .02em !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    position: static !important;
    display: inline-grid !important;
    place-items: center !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 15px !important;
    color: #d9faff !important;
    background: rgba(255,255,255,.08) !important;
    box-shadow: none !important;
    transform: none !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control:hover,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control:focus-visible {
    color: #fff !important;
    background: rgba(255,255,255,.13) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control .menu-toggle-icon {
    display: none !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control .tabler-x {
    display: block !important;
    font-size: 1.15rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner-shadow,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header {
    display: none !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    display: grid !important;
    gap: 8px !important;
    height: calc(100dvh - 116px) !important;
    max-height: calc(100dvh - 116px) !important;
    padding: 18px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before {
    content: 'Navigazione';
    display: block;
    padding: 14px 14px 5px;
    color: rgba(172,240,244,.72);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .1em;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item {
    margin: 0 !important;
    padding: 0 !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 50px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 18px !important;
    color: rgba(235,252,255,.94) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    transform: none !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link:hover,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link:focus-visible {
    color: #fff !important;
    background: rgba(255,255,255,.11) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active > .menu-link {
    color: #fff !important;
    background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
    box-shadow: 0 16px 38px rgba(0,201,189,.20) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    flex: 0 0 auto !important;
    margin: 0 !important;
    color: rgba(150,244,246,.92) !important;
    font-size: 1.22rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active > .menu-link > i {
    color: #fff !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge) {
    min-width: 0 !important;
    white-space: normal !important;
    line-height: 1.15 !important;
  }
  .layout-wrapper.layout-content-navbar .layout-overlay {
    z-index: 2290 !important;
    background: rgba(3,10,31,.52) !important;
    backdrop-filter: blur(10px) !important;
  }
}

/* Give the mobile bottom bar room when the drawer is open. It must never appear above the drawer. */
@media (max-width: 1199.98px) {
  .layout-menu-expanded .dg-app-bottom-nav,
  .layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1200 !important;
  }
}

/* =========================================================
   Step 8C - Mobile/tablet app menu replaced with public-style Tailwind drawer
   Goal: no legacy side rail on mobile; same left-to-right animation as public menu.
   ========================================================= */
@media (max-width: 1199.98px) {
  html,
  body {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  html.layout-menu-expanded,
  body.layout-menu-expanded {
    overflow: hidden !important;
    touch-action: none;
  }

  .layout-wrapper,
  .layout-container,
  .layout-page,
  .content-wrapper {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  .layout-wrapper.layout-content-navbar .layout-container,
  .layout-wrapper.layout-content-navbar .layout-page,
  .layout-wrapper.layout-content-navbar .content-wrapper {
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  /*
   * Mobile/tablet replacement:
   * the internal menu no longer behaves like a collapsed legacy sidebar.
   * It is the same left drawer used by the public landing menu: hidden left, slides in left-to-right.
   */
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: 12px !important;
    right: auto !important;
    bottom: 12px !important;
    left: 12px !important;
    z-index: 2300 !important;
    display: flex !important;
    flex-direction: column !important;
    width: min(350px, calc(100vw - 24px)) !important;
    max-width: min(350px, calc(100vw - 24px)) !important;
    height: calc(100dvh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 30px !important;
    background: var(--dg-app-drawer-bg) !important;
    overflow: hidden !important;
    will-change: transform;
    transition: transform .28s cubic-bezier(.4, 0, .2, 1) !important;
  }

  /* Closed: same as public menu, completely outside the viewport on the left. */
  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(calc(-100% - 24px), 0, 0) !important;
    pointer-events: none !important;
    box-shadow: none !important;
  }

  /* Open: same left-to-right entrance as the public landing menu. */
  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(0, 0, 0) !important;
    pointer-events: auto !important;
    box-shadow: 0 24px 80px rgba(2,16,47,.38) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after {
    content: none !important;
    display: none !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
    min-height: auto !important;
    height: auto !important;
    padding: 18px !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    background: transparent !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay,
  .layout-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2290 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(3,10,31,.52) !important;
    backdrop-filter: blur(10px) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
  }

  html.layout-menu-expanded .layout-overlay,
  body.layout-menu-expanded .layout-overlay,
  .layout-menu-expanded .layout-overlay {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .layout-wrapper.layout-content-navbar .dg-app-navbar-menu-trigger {
    display: flex !important;
  }

  html.layout-menu-expanded .dg-app-bottom-nav,
  body.layout-menu-expanded .dg-app-bottom-nav,
  .layout-menu-expanded .dg-app-bottom-nav,
  html.layout-menu-expanded .dg-client-bottom-nav,
  body.layout-menu-expanded .dg-client-bottom-nav,
  .layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1080 !important;
    pointer-events: none !important;
  }
}

@media (max-width: 575.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    top: 10px !important;
    bottom: 10px !important;
    width: min(350px, calc(100vw - 20px)) !important;
    max-width: min(350px, calc(100vw - 20px)) !important;
    height: calc(100dvh - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 28px !important;
  }
}
/* Fix alone bianco shell legacy quando la sidebar desktop è scrollabile */
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner-shadow,
.layout-wrapper.layout-content-navbar .layout-menu.menu-vertical .menu-inner-shadow {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
  pointer-events: none !important;
}
/* =========================================================
   Step 9 - Native Tailwind-style data views
   ========================================================= */
.dg-data-view {
  position: relative;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 1.75rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 24px 72px rgba(7, 26, 70, .10);
  backdrop-filter: blur(18px);
  overflow: visible;
  isolation: isolate;
}
.dg-data-view::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    radial-gradient(circle at 8% 0%, rgba(0,201,189,.10), transparent 28rem),
    radial-gradient(circle at 96% 16%, rgba(45,107,255,.07), transparent 26rem);
  z-index: -1;
  pointer-events: none;
}
.dg-data-view__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.35rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-data-view__heading {
  display: flex;
  align-items: flex-start;
  gap: .9rem;
  min-width: 0;
}
.dg-data-view__icon,
.dg-data-view__empty-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 3rem;
  height: 3rem;
  border-radius: 1.05rem;
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 16px 40px rgba(0,201,189,.24);
}
.dg-data-view__titlewrap {
  min-width: 0;
}
.dg-data-view__titlewrap h1 {
  margin: 0;
  color: var(--dg-admin-navy);
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  font-weight: 950;
  letter-spacing: -.035em;
  line-height: 1.05;
}
.dg-data-view__titlewrap p {
  margin: .28rem 0 0;
  color: #64748b;
  font-size: .92rem;
  line-height: 1.45;
}
.dg-data-view__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin-top: .7rem;
}
.dg-data-view__meta span {
  display: inline-flex;
  align-items: center;
  min-height: 1.65rem;
  padding: .35rem .58rem;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.09);
  font-size: .7rem;
  font-weight: 900;
  line-height: 1;
}
.dg-data-view__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .6rem;
  flex: 0 0 auto;
}
.dg-data-view__primary-action {
  min-height: 2.75rem !important;
  padding-inline: 1.1rem !important;
}
.dg-data-view__toolbar {
  padding: 1rem 1.35rem;
  border-bottom: 1px solid rgba(15,36,72,.06);
}
.dg-data-toolbar {
  display: grid;
  grid-template-columns: minmax(16rem, 1fr) auto auto auto;
  align-items: center;
  gap: .75rem;
}
.dg-data-toolbar__search,
.dg-data-toolbar__select {
  display: flex;
  align-items: center;
  min-height: 3rem;
  border: 1px solid rgba(15,36,72,.11);
  border-radius: 999px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 .8rem 2rem rgba(7,26,70,.05);
}
.dg-data-toolbar__search {
  gap: .55rem;
  padding-inline: .9rem;
}
.dg-data-toolbar__search i {
  color: #8a9ab3;
  font-size: 1.1rem;
}
.dg-data-toolbar__search input,
.dg-data-toolbar__select select {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  color: var(--dg-admin-navy);
  background: transparent;
  font-weight: 750;
}
.dg-data-toolbar__search input::placeholder {
  color: #9aa7b8;
}
.dg-data-toolbar__select {
  gap: .45rem;
  padding: 0 .85rem;
}
.dg-data-toolbar__select span {
  color: #718098;
  font-size: .74rem;
  font-weight: 850;
}
.dg-data-toolbar__select select {
  cursor: pointer;
  width: 4.3rem;
  appearance: auto;
}
.dg-data-toolbar__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 3rem;
  border: 0;
  border-radius: 999px;
  padding: .7rem 1.05rem;
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 16px 38px rgba(0,201,189,.20);
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}
.dg-data-toolbar__button:hover {
  color: #fff;
  transform: translateY(-1px);
}
.dg-data-toolbar__button--soft {
  color: #027b83;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.15);
  box-shadow: none;
}
.dg-data-toolbar__button--soft:hover {
  color: #027b83;
}
.dg-data-view__content {
  min-width: 0;
}
.dg-data-view__desktop {
  display: block;
  padding: 0;
}
.dg-data-view__mobile {
  display: none;
}
.dg-data-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}
.dg-data-table thead th {
  height: 3.45rem;
  padding: .85rem 1rem;
  color: #71809b;
  background: rgba(248,251,255,.80);
  border-bottom: 1px solid rgba(15,36,72,.08);
  font-size: .68rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}
.dg-data-table tbody td {
  padding: 1rem;
  color: #243653;
  border-bottom: 1px solid rgba(15,36,72,.08);
  vertical-align: middle;
  word-break: break-word;
}
.dg-data-table tbody tr {
  transition: background .18s ease, transform .18s ease;
}
.dg-data-table tbody tr:hover {
  background: rgba(0,201,189,.035);
}
.dg-data-table tbody tr:last-child td {
  border-bottom: 0;
}
.dg-data-table th:nth-child(1) { width: 20%; }
.dg-data-table th:nth-child(2) { width: 13%; }
.dg-data-table th:nth-child(3) { width: 20%; }
.dg-data-table th:nth-child(4) { width: 13%; }
.dg-data-table th:nth-child(5) { width: 20%; }
.dg-data-table th:nth-child(6) { width: 7%; }
.dg-data-table th:nth-child(7) { width: 7%; }
.dg-data-table__actions {
  text-align: right;
  overflow: visible !important;
}
.dg-data-identity {
  display: flex;
  align-items: center;
  gap: .72rem;
  min-width: 0;
}
.dg-data-avatar {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #071a46, #00a7d8);
  box-shadow: 0 .85rem 1.8rem rgba(7,26,70,.16);
  font-size: .78rem;
  font-weight: 950;
}
.dg-data-identity span:last-child,
.dg-data-stack {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: .18rem;
}
.dg-data-identity strong,
.dg-data-stack span {
  min-width: 0;
  color: var(--dg-admin-navy);
  font-size: .92rem;
  font-weight: 900;
  line-height: 1.12;
}
.dg-data-identity small,
.dg-data-stack small {
  min-width: 0;
  color: #74829a;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.22;
}
.dg-data-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  min-height: 1.75rem;
  border-radius: 999px;
  padding: .38rem .65rem;
  font-size: .72rem;
  font-weight: 950;
  line-height: 1;
  white-space: normal;
}
.dg-data-badge--success {
  color: #0f9f62;
  background: rgba(20,184,122,.13);
}
.dg-data-badge--muted {
  color: #64748b;
  background: rgba(100,116,139,.12);
}
.dg-data-badge--danger {
  color: #ef4444;
  background: rgba(239,68,68,.11);
}
.dg-action-menu {
  position: relative;
  display: inline-flex;
  justify-content: flex-end;
  overflow: visible;
}
.dg-action-menu__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .38rem;
  min-height: 2.45rem;
  border: 0;
  border-radius: 999px;
  padding: .55rem .85rem;
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 14px 34px rgba(0,201,189,.22);
  font-size: .82rem;
  font-weight: 900;
  white-space: nowrap;
}
.dg-action-menu__toggle i {
  font-size: 1.05rem;
}
.dg-action-menu__dropdown {
  z-index: 65000 !important;
  min-width: 14rem;
  padding: .55rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  background: rgba(255,255,255,.98);
  box-shadow: 0 24px 72px rgba(7,26,70,.18);
  backdrop-filter: blur(18px);
}
.dg-action-menu__item {
  display: flex !important;
  align-items: center !important;
  gap: .62rem !important;
  min-height: 2.55rem;
  border: 0 !important;
  border-radius: .9rem !important;
  color: var(--dg-admin-navy) !important;
  background: transparent !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
}
.dg-action-menu__item i {
  color: #027b83;
  font-size: 1.08rem;
}
.dg-action-menu__item:hover,
.dg-action-menu__item:focus {
  color: #027b83 !important;
  background: rgba(0,201,189,.09) !important;
}
.dg-action-menu__item.is-danger {
  color: #ef4444 !important;
}
.dg-action-menu__item.is-danger i {
  color: #ef4444;
}
.dg-action-menu__item.is-danger:hover,
.dg-action-menu__item.is-danger:focus {
  background: rgba(239,68,68,.09) !important;
}
.dg-data-view__empty {
  display: grid;
  place-items: center;
  text-align: center;
  min-height: 20rem;
  padding: 2rem 1rem;
}
.dg-data-view__empty h2 {
  margin: .9rem 0 .35rem;
  color: var(--dg-admin-navy);
  font-size: 1.25rem;
  font-weight: 950;
  letter-spacing: -.03em;
}
.dg-data-view__empty p {
  max-width: 30rem;
  margin: 0;
  color: #6f7f97;
  line-height: 1.55;
}
.dg-data-view__footer {
  border-top: 1px solid rgba(15,36,72,.08);
  padding: .95rem 1.25rem;
}
.dg-pagination-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
}
.dg-pagination-summary {
  color: #8a96a8;
  font-size: .84rem;
  font-weight: 750;
}
.dg-pagination {
  display: flex;
  align-items: center;
  gap: .35rem;
}
.dg-pagination__numbers {
  display: flex;
  align-items: center;
  gap: .35rem;
}
.dg-pagination__link {
  display: inline-grid;
  place-items: center;
  min-width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(15,36,72,.06);
  border-radius: .85rem;
  color: #52627a;
  background: rgba(248,251,255,.72);
  font-size: .82rem;
  font-weight: 900;
  text-decoration: none;
}
.dg-pagination__link:hover {
  color: #027b83;
  background: rgba(0,201,189,.09);
}
.dg-pagination__link.is-active {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 12px 28px rgba(0,201,189,.22);
}
.dg-pagination__link.is-disabled {
  opacity: .42;
  pointer-events: none;
}
.dg-mobile-record-list {
  display: grid;
  gap: .8rem;
  padding: .9rem;
}
.dg-mobile-record-card {
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 18px 44px rgba(7,26,70,.08);
  overflow: visible;
}
.dg-mobile-record-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  padding: 1rem 1rem .75rem;
  border-bottom: 1px solid rgba(15,36,72,.06);
}
.dg-mobile-record-card__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  margin: 0;
  padding: .85rem 1rem;
}
.dg-mobile-record-card__grid div {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.07);
  border-radius: 1rem;
  background: rgba(248,251,255,.76);
  padding: .75rem;
}
.dg-mobile-record-card__grid dt {
  margin: 0 0 .28rem;
  color: #8491a5;
  font-size: .66rem;
  font-weight: 950;
  letter-spacing: .07em;
  line-height: 1;
  text-transform: uppercase;
}
.dg-mobile-record-card__grid dd {
  margin: 0;
  color: var(--dg-admin-navy);
  font-size: .84rem;
  font-weight: 850;
  line-height: 1.26;
  word-break: break-word;
}
.dg-mobile-record-card__grid small {
  color: #72829b;
  font-weight: 750;
}
.dg-mobile-record-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .85rem 1rem 1rem;
}
.dg-mobile-record-card__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: .6rem .85rem;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.16);
  font-size: .82rem;
  font-weight: 900;
  text-decoration: none;
}
.dg-mobile-record-card__link:hover {
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
}
@media (max-width: 1199.98px) {
  .dg-data-toolbar {
    grid-template-columns: minmax(14rem, 1fr) auto auto;
  }
  .dg-data-toolbar__button--soft {
    grid-column: 1 / -1;
    width: fit-content;
  }
}
@media (max-width: 991.98px) {
  .dg-data-view__desktop {
    display: none;
  }
  .dg-data-view__mobile {
    display: block;
  }
  .dg-data-toolbar {
    grid-template-columns: 1fr auto;
  }
  .dg-data-toolbar__search {
    grid-column: 1 / -1;
  }
}
@media (max-width: 767.98px) {
  .dg-data-view {
    border-radius: 1.45rem;
  }
  .dg-data-view__header {
    flex-direction: column;
    align-items: stretch;
    padding: 1rem;
  }
  .dg-data-view__heading {
    gap: .72rem;
  }
  .dg-data-view__icon {
    width: 2.65rem;
    height: 2.65rem;
    border-radius: .95rem;
  }
  .dg-data-view__titlewrap h1 {
    font-size: 1.18rem;
  }
  .dg-data-view__titlewrap p {
    font-size: .84rem;
  }
  .dg-data-view__actions,
  .dg-data-view__primary-action {
    width: 100%;
  }
  .dg-data-view__toolbar {
    padding: .9rem;
  }
  .dg-data-toolbar {
    grid-template-columns: 1fr;
    gap: .62rem;
  }
  .dg-data-toolbar__search,
  .dg-data-toolbar__select,
  .dg-data-toolbar__button,
  .dg-data-toolbar__button--soft {
    width: 100%;
  }
  .dg-data-toolbar__select select {
    width: auto;
    flex: 1 1 auto;
  }
  .dg-mobile-record-list {
    padding: .75rem;
  }
  .dg-mobile-record-card__top,
  .dg-mobile-record-card__footer {
    align-items: stretch;
    flex-direction: column;
  }
  .dg-mobile-record-card__grid {
    grid-template-columns: 1fr;
  }
  .dg-action-menu,
  .dg-action-menu__toggle {
    width: 100%;
  }
  .dg-action-menu__dropdown {
    width: min(18rem, calc(100vw - 2rem));
  }
  .dg-data-view__footer {
    padding: .85rem;
  }
  .dg-pagination-wrap {
    align-items: stretch;
    flex-direction: column;
  }
  .dg-pagination-summary {
    text-align: center;
  }
  .dg-pagination {
    justify-content: center;
    width: 100%;
  }
  .dg-pagination__numbers .dg-pagination__link:not(.is-active) {
    display: none;
  }
}
@media (max-width: 359.98px) {
  .dg-pagination__link {
    min-width: 2.1rem;
    height: 2.1rem;
  }
}

/* =========================================================
   Step 9B - Data view polish: contained actions, mobile accordion, app selects
   ========================================================= */
.dg-data-view .dg-data-table {
  table-layout: fixed;
}
.dg-data-view .dg-data-table th:nth-child(1) { width: 19%; }
.dg-data-view .dg-data-table th:nth-child(2) { width: 12%; }
.dg-data-view .dg-data-table th:nth-child(3) { width: 19%; }
.dg-data-view .dg-data-table th:nth-child(4) { width: 12%; }
.dg-data-view .dg-data-table th:nth-child(5) { width: 18%; }
.dg-data-view .dg-data-table th:nth-child(6) { width: 8%; }
.dg-data-view .dg-data-table th:nth-child(7) { width: 12%; }
.dg-data-view .dg-data-table th:last-child,
.dg-data-view .dg-data-table td:last-child {
  padding-right: 1.25rem !important;
}
.dg-data-view .dg-data-table__actions {
  width: 1%;
  min-width: 8.75rem;
  text-align: right;
  white-space: nowrap;
}
.dg-data-view .dg-data-table__actions .dg-action-menu {
  max-width: 100%;
  vertical-align: middle;
}
.dg-data-view .dg-data-table__actions .dg-action-menu__toggle {
  max-width: 100%;
  min-width: 7.1rem;
  padding-inline: .72rem;
}
@media (max-width: 1399.98px) and (min-width: 992px) {
  .dg-data-view .dg-data-table th:nth-child(1) { width: 20%; }
  .dg-data-view .dg-data-table th:nth-child(2) { width: 12%; }
  .dg-data-view .dg-data-table th:nth-child(3) { width: 18%; }
  .dg-data-view .dg-data-table th:nth-child(4) { width: 11%; }
  .dg-data-view .dg-data-table th:nth-child(5) { width: 17%; }
  .dg-data-view .dg-data-table th:nth-child(6) { width: 8%; }
  .dg-data-view .dg-data-table th:nth-child(7) { width: 14%; }
  .dg-data-view .dg-data-table thead th,
  .dg-data-view .dg-data-table tbody td {
    padding-inline: .78rem;
  }
}

.dg-app-select-wrap {
  display: flex;
  align-items: center;
  min-height: 3rem;
  gap: .45rem;
  border: 1px solid rgba(15,36,72,.11);
  border-radius: 999px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 .8rem 2rem rgba(7,26,70,.05);
  padding: 0 .85rem;
}
.dg-app-select-wrap__label {
  color: #718098;
  font-size: .74rem;
  font-weight: 850;
  white-space: nowrap;
}
.dg-app-select {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  color: var(--dg-admin-navy);
  background: transparent;
  font-weight: 850;
  cursor: pointer;
}
.dg-app-select-wrap .select2-container {
  min-width: 7rem;
  flex: 1 1 auto;
}
.dg-app-select-wrap .select2-container--default .select2-selection--single {
  height: 2.7rem !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
}
.dg-app-select-wrap .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--dg-admin-navy) !important;
  font-weight: 850 !important;
  line-height: 2.7rem !important;
  padding-left: 0 !important;
}
.dg-app-select-wrap .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 2.7rem !important;
}
.dg-app-select2-dropdown,
.select2-container--open .dg-app-select2-dropdown {
  z-index: 65000 !important;
  border: 1px solid rgba(0,201,189,.20) !important;
  border-radius: 1rem !important;
  overflow: hidden !important;
  box-shadow: 0 22px 64px rgba(7,26,70,.18) !important;
}
.dg-app-select2-dropdown .select2-search--dropdown {
  padding: .65rem !important;
}
.dg-app-select2-dropdown .select2-search__field {
  min-height: 2.55rem !important;
  border-radius: .8rem !important;
  border-color: rgba(15,36,72,.12) !important;
  outline: 0 !important;
}
.dg-app-select2-dropdown .select2-results__option {
  padding: .72rem .85rem !important;
  color: var(--dg-admin-navy) !important;
  font-weight: 800 !important;
}
.dg-app-select2-dropdown .select2-results__option--highlighted {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2)) !important;
}

.dg-mobile-record-card {
  overflow: hidden;
}
.dg-mobile-record-card__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: .8rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 1rem;
  text-align: left;
  cursor: pointer;
}
.dg-mobile-record-card__summary:focus-visible {
  outline: 3px solid rgba(0,201,189,.26);
  outline-offset: -4px;
}
.dg-mobile-record-card__summary-side {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: .45rem;
  flex: 0 0 auto;
}
.dg-mobile-record-card__chevron {
  display: inline-grid;
  place-items: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: .78rem;
  color: #027b83;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.14);
  transition: transform .18s ease, color .18s ease, background .18s ease;
}
.dg-mobile-record-card.is-open .dg-mobile-record-card__chevron {
  transform: rotate(180deg);
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
}
.dg-mobile-record-card__body {
  border-top: 1px solid rgba(15,36,72,.07);
  background: linear-gradient(180deg, rgba(248,251,255,.70), rgba(255,255,255,.92));
}
.dg-mobile-record-card__body[hidden] {
  display: none !important;
}
.dg-mobile-record-card.is-open {
  border-color: rgba(0,201,189,.22);
  box-shadow: 0 24px 58px rgba(7,26,70,.12);
}
@media (max-width: 767.98px) {
  .dg-app-select-wrap,
  .dg-data-toolbar__select {
    width: 100%;
  }
  .dg-mobile-record-list {
    gap: .6rem;
  }
  .dg-mobile-record-card__summary {
    padding: .9rem;
  }
  .dg-mobile-record-card__summary .dg-data-identity {
    flex: 1 1 auto;
  }
  .dg-mobile-record-card__summary-side {
    gap: .35rem;
  }
  .dg-mobile-record-card__chevron {
    width: 1.95rem;
    height: 1.95rem;
  }
  .dg-mobile-record-card__footer {
    padding-top: .2rem;
  }
}
.dg-data-toolbar__select .dg-app-select {
  width: auto !important;
  flex: 1 1 auto;
  appearance: auto;
}

/* =========================================================
   Step 9C - Mobile action menu must not be clipped by cards/bottom nav
   ========================================================= */
@media (max-width: 767.98px) {
  .dg-mobile-record-card,
  .dg-mobile-record-card__body,
  .dg-mobile-record-card__footer,
  .dg-data-view,
  .dg-data-view__mobile,
  .dg-mobile-record-list {
    overflow: visible !important;
  }

  .dg-mobile-record-card .dg-action-menu {
    position: relative !important;
    z-index: 30 !important;
    display: block !important;
    width: 100% !important;
  }

  .dg-mobile-record-card .dg-action-menu__toggle {
    width: 100% !important;
  }

  .dg-mobile-record-card .dg-action-menu__dropdown {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: .55rem 0 0 !important;
    padding: .55rem !important;
    border-radius: 1.05rem !important;
    box-shadow: inset 0 0 0 1px rgba(15,36,72,.06), 0 14px 34px rgba(7,26,70,.08) !important;
  }

  .dg-mobile-record-card .dg-action-menu__dropdown:not(.show) {
    display: none !important;
  }

  .dg-mobile-record-card .dg-action-menu__dropdown.show {
    display: grid !important;
    gap: .25rem !important;
  }

  .dg-mobile-record-card .dg-action-menu__item {
    min-height: 2.85rem !important;
    border-radius: .95rem !important;
  }
}

/* =========================================================
   Step 10 - DataView v2 Blog + desktop submenu polish
   ========================================================= */
.dg-data-view-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.dg-data-view-stats .dg-tw-stat {
  min-height: 9rem;
}
.dg-data-toolbar--blog {
  grid-template-columns: minmax(18rem, 1fr) minmax(8.5rem, .34fr) minmax(12rem, .46fr) minmax(8.5rem, .28fr) auto auto;
}
.dg-data-toolbar--blog .dg-app-select-wrap {
  min-width: 0;
}
.dg-data-table--blog th:nth-child(1) { width: 30% !important; }
.dg-data-table--blog th:nth-child(2) { width: 13% !important; }
.dg-data-table--blog th:nth-child(3) { width: 10% !important; }
.dg-data-table--blog th:nth-child(4) { width: 12% !important; }
.dg-data-table--blog th:nth-child(5) { width: 12% !important; }
.dg-data-table--blog th:nth-child(6) { width: 11% !important; }
.dg-data-table--blog th:nth-child(7) { width: 12% !important; }
.dg-data-table--blog .dg-data-table__actions {
  min-width: 8.5rem;
}
.dg-data-article {
  display: flex;
  align-items: center;
  gap: .78rem;
  min-width: 0;
}
.dg-data-article__cover {
  position: relative;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 4.75rem;
  height: 3.25rem;
  overflow: hidden;
  border-radius: .95rem;
  color: #027b83;
  background: linear-gradient(135deg, rgba(0,201,189,.12), rgba(45,107,255,.10));
  box-shadow: inset 0 0 0 1px rgba(15,36,72,.08);
}
.dg-data-article__cover img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}
.dg-data-article__cover i {
  font-size: 1.25rem;
}
.dg-data-article__copy {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  min-width: 0;
}
.dg-data-article__copy strong {
  color: var(--dg-admin-navy);
  font-size: .92rem;
  font-weight: 950;
  line-height: 1.12;
}
.dg-data-article__copy small {
  color: #74829a;
  font-size: .76rem;
  font-weight: 760;
  line-height: 1.2;
  word-break: break-word;
}
.dg-mobile-record-card--blog .dg-data-article--mobile {
  align-items: center;
  flex: 1 1 auto;
}
.dg-mobile-record-card--blog .dg-data-article__cover {
  width: 3.8rem;
  height: 3.05rem;
  border-radius: .9rem;
}
.dg-mobile-record-card__excerpt {
  margin: .05rem 1rem .8rem;
  border: 1px solid rgba(15,36,72,.07);
  border-radius: 1rem;
  color: #5f708c;
  background: rgba(255,255,255,.72);
  padding: .78rem;
  font-size: .84rem;
  font-weight: 700;
  line-height: 1.45;
}
@media (max-width: 1399.98px) and (min-width: 992px) {
  .dg-data-toolbar--blog {
    grid-template-columns: minmax(16rem, 1fr) minmax(8rem, auto) minmax(11rem, auto) minmax(8rem, auto) auto;
  }
  .dg-data-toolbar--blog .dg-data-toolbar__button--soft {
    grid-column: 1 / -1;
    width: fit-content;
  }
}
@media (max-width: 1199.98px) {
  .dg-data-view-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .dg-data-toolbar--blog {
    grid-template-columns: 1fr 1fr;
  }
  .dg-data-toolbar--blog .dg-data-toolbar__search {
    grid-column: 1 / -1;
  }
}
@media (max-width: 767.98px) {
  .dg-data-view-stats {
    grid-template-columns: 1fr;
    gap: .7rem;
  }
  .dg-data-view-stats .dg-tw-stat {
    min-height: 7.7rem;
  }
  .dg-data-toolbar--blog {
    grid-template-columns: 1fr;
  }
  .dg-mobile-record-card--blog .dg-mobile-record-card__summary {
    align-items: flex-start;
  }
  .dg-mobile-record-card--blog .dg-mobile-record-card__summary-side {
    align-items: flex-end;
    flex-direction: column;
  }
  .dg-data-article__copy strong {
    font-size: .88rem;
  }
  .dg-data-article__copy small {
    font-size: .72rem;
  }
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle {
    position: relative !important;
    padding-right: 2.35rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    right: .95rem !important;
    left: auto !important;
    width: .48rem !important;
    height: .48rem !important;
    margin: 0 !important;
    border: 0 !important;
    border-right: 2px solid rgba(170, 246, 248, .82) !important;
    border-bottom: 2px solid rgba(170, 246, 248, .82) !important;
    transform: translateY(-50%) rotate(-45deg) !important;
    opacity: 1 !important;
    transition: transform .18s ease, border-color .18s ease, opacity .18s ease !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
    right: 1rem !important;
    border-color: #ffffff !important;
    transform: translateY(-62%) rotate(45deg) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active > .menu-link.menu-toggle::after,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle:hover::after {
    border-color: #ffffff !important;
    opacity: 1 !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
    padding: .35rem 0 .55rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-item {
    position: relative !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link {
    position: relative !important;
    min-height: 2.45rem !important;
    padding-left: 2.55rem !important;
    padding-right: .9rem !important;
    color: rgba(226,241,255,.70) !important;
    border-radius: .95rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link::before {
    content: '' !important;
    position: absolute !important;
    left: 1.25rem !important;
    top: 50% !important;
    width: .48rem !important;
    height: .48rem !important;
    border-radius: 999px !important;
    background: rgba(170,246,248,.42) !important;
    box-shadow: 0 0 0 4px rgba(170,246,248,.06) !important;
    transform: translateY(-50%) !important;
    opacity: 1 !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link:hover,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-item.active > .menu-link {
    color: #ffffff !important;
    background: rgba(255,255,255,.08) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link:hover::before,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-item.active > .menu-link::before {
    background: #00c9bd !important;
    box-shadow: 0 0 0 5px rgba(0,201,189,.16) !important;
  }
}

/* =========================================================
   Step 10B - DataView filters as Select2 + menu dropdown polish
   ========================================================= */
.dg-data-toolbar .dg-app-select-wrap .select2-container {
  min-width: 0 !important;
  width: 100% !important;
}
.dg-data-toolbar .dg-app-select-wrap .select2-container--default .select2-selection--single {
  min-height: 2.72rem !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
}
.dg-data-toolbar .dg-app-select-wrap .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--dg-admin-navy) !important;
  font-size: .86rem !important;
  font-weight: 900 !important;
  line-height: 2.72rem !important;
  padding-left: 0 !important;
  padding-right: 1.45rem !important;
}
.dg-data-toolbar .dg-app-select-wrap .select2-container--default .select2-selection--single .select2-selection__arrow {
  width: 1.2rem !important;
  height: 100% !important;
  right: 0 !important;
}
.dg-app-select2-dropdown,
.select2-dropdown.dg-app-select2-dropdown {
  z-index: 70000 !important;
  overflow: hidden !important;
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: 1rem !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 22px 64px rgba(7,26,70,.18) !important;
  backdrop-filter: blur(18px) !important;
}
.dg-app-select2-dropdown .select2-search--dropdown {
  padding: .65rem .65rem .35rem !important;
}
.dg-app-select2-dropdown .select2-search--dropdown .select2-search__field {
  min-height: 2.45rem !important;
  border: 1px solid rgba(15,36,72,.12) !important;
  border-radius: .85rem !important;
  color: var(--dg-admin-navy) !important;
  padding: .55rem .75rem !important;
  outline: 0 !important;
}
.dg-app-select2-dropdown .select2-search--dropdown .select2-search__field:focus {
  border-color: rgba(0,201,189,.45) !important;
  box-shadow: 0 0 0 4px rgba(0,201,189,.10) !important;
}
.dg-app-select2-dropdown .select2-results__options {
  padding: .35rem !important;
  max-height: 16rem !important;
}
.dg-app-select2-dropdown .select2-results__option {
  border-radius: .82rem !important;
  color: var(--dg-admin-navy) !important;
  font-weight: 850 !important;
  padding: .62rem .72rem !important;
}
.dg-app-select2-dropdown .select2-results__option--highlighted[aria-selected],
.dg-app-select2-dropdown .select2-results__option--selected {
  color: #027b83 !important;
  background: rgba(0,201,189,.12) !important;
}
@media (max-width: 767.98px) {
  .dg-data-toolbar .dg-app-select-wrap {
    min-height: 3.15rem;
  }
  .dg-data-toolbar .dg-app-select-wrap .select2-container--default .select2-selection--single .select2-selection__rendered {
    font-size: .9rem !important;
  }
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle {
    position: relative !important;
    padding-right: 2.75rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    right: 1rem !important;
    left: auto !important;
    z-index: 3 !important;
    display: block !important;
    width: .55rem !important;
    height: .55rem !important;
    margin: 0 !important;
    border: 0 !important;
    border-right: 2px solid rgba(180, 252, 255, .96) !important;
    border-bottom: 2px solid rgba(180, 252, 255, .96) !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: translateY(-50%) rotate(-45deg) !important;
    transform-origin: center !important;
    transition: transform .18s ease, border-color .18s ease !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
    right: 1rem !important;
    border-color: #fff !important;
    transform: translateY(-58%) rotate(45deg) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active > .menu-link.menu-toggle::after,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle:hover::after {
    border-color: #fff !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle > div:not(.badge) {
    padding-right: .2rem !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link::before {
    background: rgba(180,252,255,.62) !important;
    box-shadow: 0 0 0 4px rgba(180,252,255,.10) !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle {
    color: #fff !important;
    background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2)) !important;
    box-shadow: 0 16px 38px rgba(0,201,189,.20) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle > i,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle > i {
    color: #fff !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
    border-color: #fff !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
    margin: .35rem 0 .45rem !important;
    padding: .35rem 0 .35rem .65rem !important;
    border-left: 1px solid rgba(170,246,248,.22) !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link {
    color: rgba(235,252,255,.86) !important;
    background: transparent !important;
    min-height: 44px !important;
  }
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-item.active > .menu-link,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link:hover,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link:focus-visible {
    color: #fff !important;
    background: rgba(0,201,189,.16) !important;
  }
}

/* =========================================================
   Step 10C - AJAX DataView + Select2 width/open polish
   ========================================================= */
[data-dg-ajax-data-view] {
  position: relative;
}
[data-dg-ajax-data-view].is-loading {
  pointer-events: none;
}
[data-dg-ajax-data-view].is-loading::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 25;
  border-radius: 1.75rem;
  background: linear-gradient(120deg, rgba(255,255,255,.56), rgba(232,253,252,.44), rgba(255,255,255,.56));
  backdrop-filter: blur(4px);
  animation: dgDataViewLoading 1.1s ease-in-out infinite alternate;
}
@keyframes dgDataViewLoading {
  from { opacity: .48; }
  to { opacity: .82; }
}
.dg-app-select-wrap {
  position: relative;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-app-select-wrap.is-select2-open {
  border-color: rgba(0,201,189,.38) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 0 0 4px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08) !important;
}
.dg-app-select-wrap .select2-container--open .select2-selection--single,
.dg-data-toolbar .dg-app-select-wrap .select2-container--open .select2-selection--single {
  outline: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}
.select2-container--open .select2-dropdown.dg-app-select2-dropdown,
.dg-app-select2-dropdown {
  min-width: 0 !important;
  max-width: min(24rem, calc(100vw - 1.5rem)) !important;
}
.dg-app-select2-dropdown .select2-results__option {
  white-space: normal !important;
  word-break: break-word !important;
}
@media (max-width: 767.98px) {
  [data-dg-ajax-data-view].is-loading::after {
    border-radius: 1.35rem;
  }
  .select2-container--open .select2-dropdown.dg-app-select2-dropdown,
  .dg-app-select2-dropdown {
    max-width: calc(100vw - 1rem) !important;
  }
}

/* =========================================================
   Step 10D - Select2/DataView init stabilization
   ========================================================= */
.dg-data-toolbar .dg-app-select-wrap.is-select2-open {
  border-color: rgba(0,201,189,.38) !important;
  box-shadow: 0 0 0 3px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08) !important;
}
.dg-data-toolbar .dg-app-select-wrap .select2-container--open {
  width: 100% !important;
}
.select2-container--open .select2-dropdown.dg-app-select2-dropdown {
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.dg-app-select2-dropdown .select2-results__message {
  color: #65748e !important;
  font-weight: 850 !important;
  text-align: center !important;
  white-space: normal !important;
}

/* =========================================================
   Step 10E - DataView Select2 final stabilization + mobile accordion
   ========================================================= */
.dg-data-toolbar .dg-app-select-wrap {
  overflow: visible !important;
}
.dg-data-toolbar .dg-app-select-wrap.is-select2-open {
  border-color: rgba(0,201,189,.40) !important;
  box-shadow: 0 0 0 3px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08) !important;
}
.select2-container--open .select2-dropdown.dg-app-select2-dropdown,
.dg-app-select2-dropdown {
  box-sizing: border-box !important;
  min-width: 13.75rem !important;
  max-width: calc(100vw - 1.5rem) !important;
  width: auto;
}
.dg-app-select2-dropdown .select2-results__option,
.dg-app-select2-dropdown .select2-results__message {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.25 !important;
}
.dg-app-select2-dropdown .select2-results__message {
  padding: .85rem 1rem !important;
  color: #65748e !important;
  font-weight: 850 !important;
  text-align: left !important;
}
.dg-mobile-record-card__summary {
  position: relative;
  z-index: 1;
  pointer-events: auto !important;
}
.dg-mobile-record-card__summary * {
  pointer-events: none;
}
.dg-mobile-record-card__body {
  pointer-events: auto !important;
}
@media (max-width: 767.98px) {
  .select2-container--open .select2-dropdown.dg-app-select2-dropdown,
  .dg-app-select2-dropdown {
    min-width: min(16rem, calc(100vw - 1rem)) !important;
    max-width: calc(100vw - 1rem) !important;
  }
}

/* =========================================================
   Step 10F - DataView custom Tailwind select
   ========================================================= */
.dg-app-select-wrap[data-dg-custom-select] {
  position: relative !important;
  display: flex !important;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  overflow: visible !important;
  box-sizing: border-box;
}
.dg-data-toolbar .dg-app-select-wrap[data-dg-custom-select] {
  flex: 1 1 auto;
}
.dg-app-select-wrap[data-dg-custom-select] > select.dg-app-select {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.dg-app-select-control {
  width: 100%;
  min-width: 0;
  min-height: 3rem;
  border: 0;
  border-radius: 1.15rem;
  background: transparent;
  color: #071b4d;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .68rem 1rem .68rem .95rem;
  font-size: .92rem;
  font-weight: 900;
  line-height: 1.2;
  text-align: left;
  cursor: pointer;
}
.dg-app-select-control:focus-visible {
  outline: 0;
}
.dg-app-select-control__value {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dg-app-select-control .icon-base {
  flex: 0 0 1.05rem;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.05rem;
  height: 1.05rem;
  line-height: 1;
  font-size: 1rem;
  color: #64748b;
  transition: transform .18s ease, color .18s ease;
}
.dg-app-select-wrap.is-open {
  border-color: rgba(0,201,189,.42) !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 0 0 3px rgba(0,201,189,.08), 0 1rem 2.5rem rgba(7,26,70,.10) !important;
  z-index: 35;
}
.dg-app-select-wrap.is-open .dg-app-select-control .icon-base {
  color: #00aebd;
  transform: rotate(180deg);
}
.dg-app-select-panel {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 65060;
  width: max-content;
  min-width: 100%;
  max-width: min(26rem, calc(100vw - 1.5rem));
  border: 1px solid rgba(203, 213, 225, .72);
  border-radius: 1.15rem;
  background: rgba(255,255,255,.98);
  box-shadow: 0 1.2rem 3rem rgba(7, 26, 70, .16);
  padding: .5rem;
  backdrop-filter: blur(14px);
}
.dg-app-select-panel[data-dg-select-portal='1'] {
  position: fixed !important;
  z-index: 65060 !important;
  margin: 0 !important;
}
.dg-app-select-search {
  display: flex;
  align-items: center;
  gap: .45rem;
  min-height: 2.5rem;
  padding: 0 .75rem;
  margin-bottom: .35rem;
  border: 1px solid rgba(203, 213, 225, .75);
  border-radius: .9rem;
  color: #64748b;
  background: rgba(248, 250, 252, .94);
}
.dg-app-select-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #071b4d;
  font-weight: 800;
  font-size: .88rem;
}
.dg-app-select-options {
  display: grid;
  gap: .22rem;
  max-height: min(16rem, max(8rem, calc(var(--dg-select-panel-max-height, 20rem) - 4rem)));
  overflow: auto;
  overscroll-behavior: contain;
  padding: .05rem;
}
.dg-app-select-option {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: .82rem;
  background: transparent;
  color: #071b4d;
  text-align: left;
  padding: .72rem .82rem;
  font-size: .92rem;
  font-weight: 850;
  line-height: 1.22;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  cursor: pointer;
}
.dg-app-select-option:hover,
.dg-app-select-option:focus-visible,
.dg-app-select-option.is-selected,
.dg-app-select-option[aria-selected='true'] {
  outline: 0;
  background: rgba(0, 201, 189, .14);
  color: #007d89;
}
.dg-app-select-empty {
  padding: .85rem .9rem;
  color: #64748b;
  font-size: .88rem;
  font-weight: 850;
  text-align: center;
}
@media (max-width: 767.98px) {
  .dg-app-select-panel {
    width: calc(100vw - 2rem);
    max-width: calc(100vw - 2rem);
  }
  .dg-app-select-options {
    max-height: 13.5rem;
  }
}

/* =========================================================
   Step 11 - DataView batch: newsletters, landing contacts, Focus plans/discounts
   ========================================================= */
.dg-data-badge--primary {
  color: #066b77;
  background: rgba(0, 201, 189, .15);
}
.dg-data-badge--info {
  color: #1d4ed8;
  background: rgba(45, 107, 255, .12);
}
.dg-data-badge--warning {
  color: #a15c00;
  background: rgba(245, 158, 11, .16);
}
.dg-data-badge--dark {
  color: #0f172a;
  background: rgba(15, 23, 42, .11);
}
.dg-data-muted {
  color: #74829a;
  font-size: .78rem;
  font-weight: 760;
}
.dg-data-progress {
  display: grid;
  gap: .35rem;
  min-width: min(12rem, 100%);
}
.dg-data-progress > span {
  display: block;
  overflow: hidden;
  width: 100%;
  height: .55rem;
  border-radius: 999px;
  background: rgba(100,116,139,.13);
}
.dg-data-progress > span > i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 .45rem 1.1rem rgba(0,201,189,.18);
}
.dg-data-progress small {
  color: #74829a;
  font-size: .74rem;
  font-weight: 760;
  line-height: 1.25;
}
.dg-data-toolbar--newsletters,
.dg-data-toolbar--landing-contacts,
.dg-data-toolbar--product-plans,
.dg-data-toolbar--focus-discounts {
  grid-template-columns: minmax(18rem, 1fr) minmax(10rem, .32fr) minmax(8.5rem, .24fr) auto auto;
}
.dg-data-table--newsletters th:nth-child(1) { width: 24% !important; }
.dg-data-table--newsletters th:nth-child(2) { width: 10% !important; }
.dg-data-table--newsletters th:nth-child(3) { width: 12% !important; }
.dg-data-table--newsletters th:nth-child(4) { width: 20% !important; }
.dg-data-table--newsletters th:nth-child(5) { width: 8% !important; }
.dg-data-table--newsletters th:nth-child(6) { width: 8% !important; }
.dg-data-table--newsletters th:nth-child(7) { width: 10% !important; }
.dg-data-table--newsletters th:nth-child(8) { width: 8% !important; }
.dg-data-table--landing-contacts th:nth-child(1) { width: 20% !important; }
.dg-data-table--landing-contacts th:nth-child(7) { width: 22% !important; }
.dg-data-table--product-plans th:nth-child(1) { width: 26% !important; }
.dg-data-table--focus-discounts th:nth-child(1) { width: 20% !important; }
@media (max-width: 1399.98px) and (min-width: 992px) {
  .dg-data-toolbar--newsletters,
  .dg-data-toolbar--landing-contacts,
  .dg-data-toolbar--product-plans,
  .dg-data-toolbar--focus-discounts {
    grid-template-columns: minmax(16rem, 1fr) minmax(10rem, auto) minmax(8.5rem, auto) auto;
  }
  .dg-data-toolbar--newsletters .dg-data-toolbar__button--soft,
  .dg-data-toolbar--landing-contacts .dg-data-toolbar__button--soft,
  .dg-data-toolbar--product-plans .dg-data-toolbar__button--soft,
  .dg-data-toolbar--focus-discounts .dg-data-toolbar__button--soft {
    grid-column: 1 / -1;
    width: fit-content;
  }
}
@media (max-width: 1199.98px) {
  .dg-data-toolbar--newsletters,
  .dg-data-toolbar--landing-contacts,
  .dg-data-toolbar--product-plans,
  .dg-data-toolbar--focus-discounts {
    grid-template-columns: 1fr 1fr;
  }
  .dg-data-toolbar--newsletters .dg-data-toolbar__search,
  .dg-data-toolbar--landing-contacts .dg-data-toolbar__search,
  .dg-data-toolbar--product-plans .dg-data-toolbar__search,
  .dg-data-toolbar--focus-discounts .dg-data-toolbar__search {
    grid-column: 1 / -1;
  }
}
@media (max-width: 767.98px) {
  .dg-data-toolbar--newsletters,
  .dg-data-toolbar--landing-contacts,
  .dg-data-toolbar--product-plans,
  .dg-data-toolbar--focus-discounts {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   Step 12 - DataView hardening: no overflow + next migrations
   ========================================================= */
.dg-data-view,
.dg-data-view__content,
.dg-data-view__desktop,
.dg-data-view__mobile {
  min-width: 0 !important;
  max-width: 100% !important;
}
.dg-data-view__desktop {
  overflow: visible !important;
}
.dg-data-table {
  max-width: 100% !important;
}
.dg-data-table th,
.dg-data-table td {
  min-width: 0 !important;
  overflow-wrap: anywhere;
}
.dg-data-table__actions {
  width: 1% !important;
  min-width: 7.75rem !important;
  max-width: 8.25rem !important;
  text-align: right !important;
}
.dg-data-table__actions .dg-action-menu__toggle {
  min-width: 6.8rem !important;
}
.dg-data-table--landing-contacts th:nth-child(1) { width: 24% !important; }
.dg-data-table--landing-contacts th:nth-child(2) { width: 24% !important; }
.dg-data-table--landing-contacts th:nth-child(3) { width: 9% !important; }
.dg-data-table--landing-contacts th:nth-child(4) { width: 12% !important; }
.dg-data-table--landing-contacts th:nth-child(5) { width: 21% !important; }
.dg-data-table--landing-contacts th:nth-child(6) { width: 10% !important; }
.dg-data-table--users th:nth-child(1) { width: 25% !important; }
.dg-data-table--users th:nth-child(2) { width: 12% !important; }
.dg-data-table--users th:nth-child(3) { width: 14% !important; }
.dg-data-table--users th:nth-child(4) { width: 16% !important; }
.dg-data-table--users th:nth-child(5) { width: 10% !important; }
.dg-data-table--users th:nth-child(6) { width: 13% !important; }
.dg-data-table--users th:nth-child(7) { width: 10% !important; }
.dg-data-table--system-variables th:nth-child(1) { width: 28% !important; }
.dg-data-table--system-variables th:nth-child(2) { width: 12% !important; }
.dg-data-table--system-variables th:nth-child(3) { width: 10% !important; }
.dg-data-table--system-variables th:nth-child(4) { width: 24% !important; }
.dg-data-table--system-variables th:nth-child(5) { width: 8% !important; }
.dg-data-table--system-variables th:nth-child(6) { width: 8% !important; }
.dg-data-table--system-variables th:nth-child(7) { width: 10% !important; }
.dg-data-table--research-materials th:nth-child(1) { width: 32% !important; }
.dg-data-table--research-materials th:nth-child(2) { width: 12% !important; }
.dg-data-table--research-materials th:nth-child(3) { width: 17% !important; }
.dg-data-table--research-materials th:nth-child(4) { width: 16% !important; }
.dg-data-table--research-materials th:nth-child(5) { width: 13% !important; }
.dg-data-table--research-materials th:nth-child(6) { width: 10% !important; }
.dg-data-table--support-tickets th:nth-child(1) { width: 24% !important; }
.dg-data-table--support-tickets th:nth-child(2) { width: 18% !important; }
.dg-data-table--support-tickets th:nth-child(3) { width: 11% !important; }
.dg-data-table--support-tickets th:nth-child(4) { width: 9% !important; }
.dg-data-table--support-tickets th:nth-child(5) { width: 10% !important; }
.dg-data-table--support-tickets th:nth-child(6) { width: 13% !important; }
.dg-data-table--support-tickets th:nth-child(7) { width: 9% !important; }
.dg-data-table--support-tickets th:nth-child(8) { width: 6% !important; }
.dg-data-line-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.dg-data-toolbar--compact {
  grid-template-columns: minmax(18rem, 1fr) minmax(8.5rem, .24fr) auto auto;
}
.dg-data-toolbar--system-variables,
.dg-data-toolbar--research-materials,
.dg-data-toolbar--support-tickets {
  grid-template-columns: minmax(18rem, 1fr) minmax(10rem, .32fr) minmax(8.5rem, .24fr) auto auto;
}
.dg-mobile-record-card__summary {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}
.dg-mobile-record-card__summary .dg-data-identity {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.dg-mobile-record-card__summary .dg-data-identity > span:last-child {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.dg-mobile-record-card__summary .dg-data-identity strong,
.dg-mobile-record-card__summary .dg-data-identity small {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dg-mobile-record-card__summary-side {
  flex: 0 0 auto;
  max-width: 42%;
  min-width: 0;
}
.dg-mobile-record-card__summary-side .dg-data-badge {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 1199.98px) {
  .dg-data-toolbar--compact,
  .dg-data-toolbar--system-variables,
  .dg-data-toolbar--research-materials,
  .dg-data-toolbar--support-tickets {
    grid-template-columns: 1fr 1fr;
  }
  .dg-data-toolbar--compact .dg-data-toolbar__search,
  .dg-data-toolbar--system-variables .dg-data-toolbar__search,
  .dg-data-toolbar--research-materials .dg-data-toolbar__search,
  .dg-data-toolbar--support-tickets .dg-data-toolbar__search {
    grid-column: 1 / -1;
  }
}
@media (max-width: 991.98px) {
  .dg-data-view__content {
    overflow: hidden !important;
  }
  .dg-mobile-record-card {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 767.98px) {
  .dg-data-toolbar--compact,
  .dg-data-toolbar--system-variables,
  .dg-data-toolbar--research-materials,
  .dg-data-toolbar--support-tickets {
    grid-template-columns: 1fr;
  }
  .dg-mobile-record-card__summary {
    gap: .55rem;
    padding-inline: .72rem;
  }
  .dg-mobile-record-card__summary-side {
    max-width: 46%;
    gap: .35rem;
  }
  .dg-mobile-record-card__summary-side .dg-data-badge {
    font-size: .66rem;
    padding-inline: .5rem;
  }
}

/* =========================================================
   Step 12B - Global DataView text containment and mobile summaries
   ========================================================= */
.dg-data-view,
.dg-data-view *,
.dg-mobile-record-card,
.dg-mobile-record-card * {
  box-sizing: border-box;
}

.dg-data-table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
}

.dg-data-table th,
.dg-data-table td {
  min-width: 0 !important;
  max-width: 100% !important;
}

.dg-data-table td > * {
  min-width: 0;
  max-width: 100%;
}

.dg-data-identity,
.dg-data-stack,
.dg-data-identity > span:last-child {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden;
}

.dg-data-identity strong,
.dg-data-identity small,
.dg-data-stack > span,
.dg-data-stack > small {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dg-data-table .dg-data-line-clamp {
  max-width: 100%;
  overflow: hidden;
  overflow-wrap: break-word;
  word-break: normal;
}

.dg-data-table__actions {
  white-space: nowrap !important;
}

@media (max-width: 991.98px) {
  .dg-data-view,
  .dg-data-view__content,
  .dg-data-view__mobile,
  .dg-mobile-record-list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .dg-mobile-record-list {
    padding-inline: .75rem !important;
  }

  .dg-mobile-record-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .dg-mobile-record-card__summary {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) max-content !important;
    align-items: center !important;
    gap: .55rem !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .dg-mobile-record-card__summary .dg-data-identity {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: center !important;
    gap: .62rem !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .dg-mobile-record-card__summary .dg-data-avatar {
    width: 2.35rem !important;
    height: 2.35rem !important;
    border-radius: .9rem !important;
  }

  .dg-mobile-record-card__summary .dg-data-identity > span:last-child {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .dg-mobile-record-card__summary .dg-data-identity strong,
  .dg-mobile-record-card__summary .dg-data-identity small {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .dg-mobile-record-card__summary-side {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: .35rem !important;
    flex: 0 0 auto !important;
    min-width: 2rem !important;
    max-width: 8.9rem !important;
    overflow: hidden !important;
  }

  .dg-mobile-record-card__summary-side .dg-data-badge {
    max-width: 6.6rem !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .dg-mobile-record-card__chevron {
    flex: 0 0 auto !important;
    width: 2rem !important;
    height: 2rem !important;
  }

  .dg-mobile-record-card__body,
  .dg-mobile-record-card__grid,
  .dg-mobile-record-card__grid div,
  .dg-mobile-record-card__footer {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .dg-mobile-record-card__grid dd,
  .dg-mobile-record-card__excerpt,
  .dg-mobile-record-card__body small,
  .dg-mobile-record-card__body span,
  .dg-mobile-record-card__body p {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

@media (max-width: 380px) {
  .dg-mobile-record-card__summary {
    grid-template-columns: minmax(0, 1fr) auto !important;
    padding-inline: .68rem !important;
  }

  .dg-mobile-record-card__summary .dg-data-identity {
    gap: .52rem !important;
  }

  .dg-mobile-record-card__summary-side {
    max-width: 7.35rem !important;
  }

  .dg-mobile-record-card__summary-side .dg-data-badge {
    max-width: 5.2rem !important;
    padding-inline: .45rem !important;
    font-size: .62rem !important;
  }
}

/* Step 13 - DataView media/network polish */
.dg-data-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  display: block;
}

.dg-data-view--ai-media-assets .dg-data-article__cover,
.dg-data-view--network-profiles .dg-data-avatar,
.dg-data-view--job-ads .dg-data-avatar,
.dg-data-view--ai-editorial-categories .dg-data-avatar {
  overflow: hidden;
}

.dg-data-view--ai-media-assets .dg-data-article__cover {
  background: linear-gradient(135deg, rgba(224, 247, 248, .92), rgba(255,255,255,.96));
}

/* =========================================================
   Step 13B - Desktop DataView dense tables containment
   Le tabelle con molte colonne devono restare sempre dentro la card.
   ========================================================= */
.dg-data-table--job-ads,
.dg-data-table--network-profiles {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
}

.dg-data-table--job-ads thead th,
.dg-data-table--job-ads tbody td,
.dg-data-table--network-profiles thead th,
.dg-data-table--network-profiles tbody td {
  min-width: 0 !important;
  padding-inline: .68rem !important;
  overflow: hidden !important;
  vertical-align: middle !important;
}

.dg-data-table--job-ads th:last-child,
.dg-data-table--job-ads td:last-child,
.dg-data-table--network-profiles th:last-child,
.dg-data-table--network-profiles td:last-child {
  padding-right: .72rem !important;
}

.dg-data-table--job-ads th,
.dg-data-table--network-profiles th {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.dg-data-table--job-ads td,
.dg-data-table--network-profiles td {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

/* Annunci clienti: 9 colonne. Somma 100%, compresa la colonna azioni. */
.dg-data-table--job-ads th:nth-child(1) { width: 18% !important; }
.dg-data-table--job-ads th:nth-child(2) { width: 9% !important; }
.dg-data-table--job-ads th:nth-child(3) { width: 13% !important; }
.dg-data-table--job-ads th:nth-child(4) { width: 12% !important; }
.dg-data-table--job-ads th:nth-child(5) { width: 9% !important; }
.dg-data-table--job-ads th:nth-child(6) { width: 10% !important; }
.dg-data-table--job-ads th:nth-child(7) { width: 6% !important; }
.dg-data-table--job-ads th:nth-child(8) { width: 9% !important; }
.dg-data-table--job-ads th:nth-child(9) { width: 14% !important; }

/* Network: 8 colonne. Somma 100%, compresa la colonna azioni. */
.dg-data-table--network-profiles th:nth-child(1) { width: 19% !important; }
.dg-data-table--network-profiles th:nth-child(2) { width: 16% !important; }
.dg-data-table--network-profiles th:nth-child(3) { width: 18% !important; }
.dg-data-table--network-profiles th:nth-child(4) { width: 12% !important; }
.dg-data-table--network-profiles th:nth-child(5) { width: 9% !important; }
.dg-data-table--network-profiles th:nth-child(6) { width: 9% !important; }
.dg-data-table--network-profiles th:nth-child(7) { width: 7% !important; }
.dg-data-table--network-profiles th:nth-child(8) { width: 10% !important; }

.dg-data-table--job-ads .dg-data-table__actions,
.dg-data-table--network-profiles .dg-data-table__actions {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  padding-left: .35rem !important;
  text-align: right !important;
  overflow: visible !important;
}

.dg-data-table--job-ads .dg-data-table__actions .dg-action-menu,
.dg-data-table--network-profiles .dg-data-table__actions .dg-action-menu {
  width: 100% !important;
  max-width: 100% !important;
  justify-content: flex-end !important;
}

.dg-data-table--job-ads .dg-data-table__actions .dg-action-menu__toggle,
.dg-data-table--network-profiles .dg-data-table__actions .dg-action-menu__toggle {
  min-width: 6.35rem !important;
  max-width: 100% !important;
  padding-inline: .62rem !important;
  gap: .25rem !important;
}

@media (max-width: 1399.98px) and (min-width: 992px) {
  .dg-data-table--job-ads thead th,
  .dg-data-table--job-ads tbody td,
  .dg-data-table--network-profiles thead th,
  .dg-data-table--network-profiles tbody td {
    padding-inline: .5rem !important;
    font-size: .78rem !important;
  }

  .dg-data-table--job-ads .dg-data-table__actions .dg-action-menu__toggle,
  .dg-data-table--network-profiles .dg-data-table__actions .dg-action-menu__toggle {
    min-width: 2.85rem !important;
    width: 2.85rem !important;
    padding-inline: 0 !important;
  }

  .dg-data-table--job-ads .dg-data-table__actions .dg-action-menu__toggle span,
  .dg-data-table--network-profiles .dg-data-table__actions .dg-action-menu__toggle span {
    display: none !important;
  }
}

/* =========================================================
   Step 14 - Tailwind-like reusable modals, drawers and lightbox
   ========================================================= */
.modal.dg-tw-modal,
.modal.dg-tw-lightbox {
  z-index: 21050 !important;
}

.modal-backdrop {
  z-index: 21040 !important;
}

/* When legacy modals are moved to <body>, keep them above every legacy/Tailwind layout stacking context. */
body > .modal.dg-tw-modal,
body > .modal.dg-tw-lightbox {
  z-index: 30000 !important;
  transform: none !important;
  isolation: isolate;
}

body > .modal-backdrop {
  z-index: 29990 !important;
}

.dg-tw-modal .modal-dialog {
  width: min(980px, calc(100vw - 2rem));
  max-width: calc(100vw - 2rem);
}

body > .modal.dg-tw-modal .modal-dialog {
  position: relative;
  z-index: 1;
}

.dg-tw-modal .modal-xl {
  width: min(1180px, calc(100vw - 2rem));
}

.dg-tw-modal__content {
  position: relative;
  overflow: visible;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 2rem;
  background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(245, 253, 253, .96));
  box-shadow: 0 2.2rem 5.6rem rgba(4, 17, 54, .2);
}

.dg-tw-modal__content::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
  background:
    radial-gradient(circle at top left, rgba(0, 201, 189, .16), transparent 36%),
    radial-gradient(circle at bottom right, rgba(14, 165, 233, .1), transparent 30%);
}

.dg-tw-modal__header,
.dg-tw-modal__body,
.dg-tw-modal__footer {
  position: relative;
  z-index: 1;
}

.dg-tw-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.35rem;
  border-bottom: 1px solid rgba(3, 20, 61, .08);
}

.dg-tw-modal__heading {
  display: flex;
  align-items: center;
  gap: .85rem;
  min-width: 0;
}

.dg-tw-modal__icon,
.dg-tw-drawer__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  flex: 0 0 auto;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #0ea5e9);
  box-shadow: 0 1rem 2.2rem rgba(0, 201, 189, .25);
}

.dg-tw-modal__title {
  margin: 0;
  max-width: 100%;
  color: #071b4d;
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dg-tw-modal__subtitle {
  margin: .18rem 0 0;
  color: #64748b;
  font-size: .88rem;
  line-height: 1.35;
}

.dg-tw-modal__floating-close {
  position: absolute;
  top: -.8rem;
  right: -.8rem;
  z-index: 3;
  display: inline-grid;
  place-items: center;
  width: 2.9rem;
  height: 2.9rem;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 999px;
  color: #64748b;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 1rem 2.2rem rgba(4, 17, 54, .16);
  transition: transform .16s ease, color .16s ease, box-shadow .16s ease;
}

.dg-tw-modal__floating-close:hover {
  color: #071b4d;
  transform: translateY(-1px) scale(1.03);
  box-shadow: 0 1.2rem 2.6rem rgba(4, 17, 54, .2);
}

.dg-tw-modal__body {
  padding: 1.25rem 1.35rem;
  overflow-x: hidden;
}

.dg-tw-modal__footer {
  display: flex;
  justify-content: flex-end;
  gap: .65rem;
  padding: 1rem 1.35rem 1.25rem;
  border-top: 1px solid rgba(3, 20, 61, .08);
}

.dg-tw-modal__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 2.6rem;
  padding: .72rem 1.05rem;
  border: 0;
  border-radius: 999px;
  font-weight: 800;
  line-height: 1;
}

.dg-tw-modal__button--soft {
  color: #071b4d;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(3, 20, 61, .08);
  box-shadow: 0 .75rem 1.8rem rgba(4, 17, 54, .08);
}

.dg-tw-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

.dg-tw-detail-field {
  min-width: 0;
  padding: 1rem;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 1.1rem;
  background: rgba(255,255,255,.82);
  box-shadow: 0 .9rem 2rem rgba(4, 17, 54, .05);
}

.dg-tw-detail-field--wide {
  grid-column: 1 / -1;
}

.dg-tw-detail-field span {
  display: block;
  margin-bottom: .35rem;
  color: #71819d;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dg-tw-detail-field strong {
  display: block;
  min-width: 0;
  color: #071b4d;
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.dg-tw-modal__loader,
.dg-tw-modal__inline-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .7rem;
  min-height: 9rem;
  color: #64748b;
  font-weight: 700;
}

.dg-tw-modal__inline-loader {
  min-height: 5rem;
  font-size: .86rem;
}

.dg-tw-modal__loader span,
.dg-tw-modal__inline-loader span {
  width: 1.05rem;
  height: 1.05rem;
  border-radius: 999px;
  border: 2px solid rgba(0, 201, 189, .22);
  border-top-color: #00b8c8;
  animation: dgSpin .72s linear infinite;
}

@keyframes dgSpin { to { transform: rotate(360deg); } }

.dg-tw-modal__alert {
  padding: .9rem 1rem;
  border-radius: 1rem;
  font-weight: 700;
  line-height: 1.45;
}

.dg-tw-modal__alert--danger {
  color: #991b1b;
  background: rgba(254, 226, 226, .85);
  border: 1px solid rgba(248, 113, 113, .25);
}

.dg-tw-lightbox .modal-dialog {
  width: min(1180px, calc(100vw - 2rem));
  max-width: calc(100vw - 2rem);
}

.dg-tw-lightbox__content {
  position: relative;
  border: 0;
  border-radius: 1.6rem;
  background: transparent;
  box-shadow: none;
}

.dg-tw-lightbox__close {
  position: absolute;
  top: -1rem;
  right: -1rem;
  z-index: 3;
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border: 0;
  border-radius: 999px;
  color: #071b4d;
  background: #fff;
  box-shadow: 0 1.1rem 2.4rem rgba(4, 17, 54, .18);
}

.dg-tw-lightbox__image {
  display: block;
  width: 100%;
  max-height: min(78vh, 820px);
  object-fit: contain;
  border-radius: 1.4rem;
  background: rgba(255,255,255,.96);
  box-shadow: 0 2rem 5rem rgba(4, 17, 54, .28);
}

body.dg-job-ad-lightbox-open .layout-navbar,
body.dg-job-ad-lightbox-open .layout-menu,
body.dg-job-ad-lightbox-open .dg-app-bottom-nav {
  z-index: 1 !important;
}

.dg-newsletter-detail-shell,
.dg-newsletter-detail-modal {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.dg-newsletter-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
  margin-bottom: .85rem;
}

.dg-newsletter-detail-card {
  min-width: 0;
  padding: .9rem;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 1.05rem;
  background: rgba(255,255,255,.82);
}

.dg-newsletter-detail-card span,
.dg-newsletter-detail-section h6,
.dg-newsletter-detail-section__head span {
  color: #71819d;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dg-newsletter-detail-card strong {
  display: block;
  margin-top: .35rem;
  color: #071b4d;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.dg-newsletter-detail-counters {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-bottom: .85rem;
}

.dg-newsletter-detail-counters span {
  display: inline-flex;
  align-items: center;
  min-height: 1.85rem;
  padding: .35rem .7rem;
  border-radius: 999px;
  color: #0f766e;
  background: rgba(204, 251, 241, .72);
  font-size: .75rem;
  font-weight: 900;
}

.dg-newsletter-detail-counters .is-success { color: #047857; background: rgba(209, 250, 229, .82); }
.dg-newsletter-detail-counters .is-danger { color: #b91c1c; background: rgba(254, 226, 226, .82); }
.dg-newsletter-detail-counters .is-warning { color: #92400e; background: rgba(254, 243, 199, .86); }

.dg-newsletter-detail-section {
  min-width: 0;
  padding: 1rem;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 1.1rem;
  background: rgba(255,255,255,.78);
}

.dg-newsletter-detail-section h6 {
  margin: 0 0 .7rem;
  color: #071b4d;
  font-size: .78rem;
}

.dg-newsletter-detail-content {
  max-height: 18rem;
  overflow: auto;
  padding: .9rem;
  border-radius: .95rem;
  color: #314260;
  background: rgba(248, 250, 252, .9);
  line-height: 1.55;
}

.dg-newsletter-detail-content img {
  max-width: 100%;
  height: auto;
  border-radius: .75rem;
}

.dg-newsletter-detail-columns {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: .85rem;
  margin-top: .85rem;
}

.dg-newsletter-detail-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .7rem;
}

.dg-newsletter-detail-list {
  display: grid;
  gap: .55rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.dg-newsletter-detail-attachment,
.dg-newsletter-detail-attachment-link {
  display: flex;
  align-items: center;
  gap: .45rem;
  min-width: 0;
  color: #071b4d;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.dg-newsletter-detail-attachment span {
  min-width: 0;
}

.dg-newsletter-detail-attachment.is-muted,
.dg-newsletter-detail-attachment span:last-child {
  color: #64748b;
}

.dg-newsletter-detail-attachment em {
  color: #92400e;
  font-size: .75rem;
  font-style: normal;
}

.dg-newsletter-recipients-search {
  display: flex;
  align-items: center;
  gap: .55rem;
  width: 100%;
  min-height: 2.75rem;
  padding: 0 .85rem;
  border: 1px solid rgba(3, 20, 61, .1);
  border-radius: 999px;
  background: rgba(255,255,255,.92);
}

.dg-newsletter-recipients-search i { color: #94a3b8; }
.dg-newsletter-recipients-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #071b4d;
  font-weight: 700;
}

.dg-newsletter-recipient-list {
  display: grid;
  gap: .55rem;
  margin-top: .75rem;
}

.dg-newsletter-recipient-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  min-width: 0;
  padding: .75rem;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 1rem;
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(241,253,253,.88));
}

.dg-newsletter-recipient-card__main,
.dg-newsletter-recipient-card__main * {
  min-width: 0;
  max-width: 100%;
}

.dg-newsletter-recipient-card__main .fw-medium,
.dg-newsletter-detail-recipient-email {
  color: #071b4d !important;
  font-weight: 850 !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dg-newsletter-recipient-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .22rem;
  color: #64748b;
  font-size: .78rem;
  font-weight: 700;
}

.dg-newsletter-recipient-card__error {
  margin-top: .3rem;
  color: #b91c1c;
  font-size: .76rem;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.dg-newsletter-recipient-card__status .badge,
.dg-newsletter-recipient-card__status span {
  white-space: nowrap;
}

.dg-newsletter-recipient-pager {
  display: flex;
  justify-content: flex-end;
  gap: .5rem;
  margin-top: .75rem;
}

.dg-newsletter-recipient-pager button {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  min-height: 2.25rem;
  padding: .55rem .8rem;
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 999px;
  color: #071b4d;
  background: rgba(255,255,255,.9);
  font-weight: 800;
}

.dg-newsletter-recipient-pager button:disabled {
  opacity: .45;
  cursor: not-allowed;
}

.dg-newsletter-recipient-empty {
  padding: 1rem;
  border-radius: 1rem;
  color: #64748b;
  background: rgba(248, 250, 252, .9);
  font-weight: 800;
  text-align: center;
}

.dg-newsletter-recipient-empty--danger {
  color: #991b1b;
  background: rgba(254, 226, 226, .82);
}

.dg-tw-drawer {
  z-index: 21045 !important;
  border: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,253,253,.98));
  box-shadow: -1.5rem 0 4rem rgba(4, 17, 54, .18);
}

.dg-tw-drawer__header {
  border-bottom: 1px solid rgba(3, 20, 61, .08);
}

.dg-tw-drawer__heading {
  display: flex;
  align-items: center;
  gap: .8rem;
  min-width: 0;
}

.dg-tw-drawer__title {
  color: #071b4d;
  font-weight: 850;
}

.dg-tw-drawer__subtitle {
  margin: .18rem 0 0;
  color: #64748b;
  font-size: .85rem;
}

.dg-tw-drawer__close {
  display: inline-grid;
  place-items: center;
  width: 2.65rem;
  height: 2.65rem;
  border: 0;
  border-radius: 999px;
  color: #071b4d;
  background: rgba(255,255,255,.9);
  box-shadow: 0 .75rem 1.7rem rgba(4, 17, 54, .1);
}

@media (max-width: 767.98px) {
  .dg-tw-modal .modal-dialog,
  .dg-tw-modal .modal-xl,
  .dg-tw-lightbox .modal-dialog {
    width: calc(100vw - 1rem);
    max-width: calc(100vw - 1rem);
    margin: .5rem auto;
  }

  .dg-tw-modal .modal-dialog {
    min-height: calc(100dvh - 1rem);
    align-items: flex-end !important;
  }

  .dg-tw-modal__content {
    max-height: calc(100dvh - 1rem);
    border-radius: 1.6rem 1.6rem .9rem .9rem;
  }

  .dg-tw-modal__header,
  .dg-tw-modal__body,
  .dg-tw-modal__footer {
    padding-inline: 1rem;
  }

  .dg-tw-modal__title {
    white-space: normal;
    font-size: 1rem;
  }

  .dg-tw-modal__floating-close,
  .dg-tw-lightbox__close {
    top: -.55rem;
    right: -.25rem;
  }

  .dg-tw-detail-grid,
  .dg-newsletter-detail-grid,
  .dg-newsletter-detail-columns {
    grid-template-columns: 1fr;
  }

  .dg-newsletter-recipient-card {
    grid-template-columns: minmax(0, 1fr);
    align-items: flex-start;
  }

  .dg-newsletter-recipient-pager {
    justify-content: stretch;
  }

  .dg-newsletter-recipient-pager button {
    flex: 1 1 0;
    justify-content: center;
  }

  .dg-tw-lightbox__image {
    max-height: 82vh;
    border-radius: 1rem;
  }
}

.dg-tw-modal--danger .dg-tw-modal__icon {
  background: linear-gradient(135deg, #fb7185, #ef4444);
  box-shadow: 0 1rem 2.2rem rgba(239, 68, 68, .2);
}

.dg-tw-modal__button--danger {
  color: #fff;
  background: linear-gradient(135deg, #fb7185, #ef4444);
  box-shadow: 0 1rem 2.2rem rgba(239, 68, 68, .2);
}

.dg-tw-modal-form {
  display: grid;
  gap: .55rem;
}

.dg-tw-modal-form__label {
  color: #071b4d;
  font-weight: 850;
}

.dg-tw-modal-form__control {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(3, 20, 61, .12);
  border-radius: 1rem;
  padding: .85rem 1rem;
  color: #071b4d;
  background: rgba(255,255,255,.92);
  outline: none;
  resize: vertical;
  transition: border-color .16s ease, box-shadow .16s ease;
}

.dg-tw-modal-form__control:focus {
  border-color: rgba(0, 201, 189, .55);
  box-shadow: 0 0 0 .22rem rgba(0, 201, 189, .13);
}

/* =========================================================
   Step 14b - Modal containment and scroll lock hardening
   Fixes dg-tw modals appearing as page content and prevents
   the page behind the modal from scrolling, especially mobile.
   ========================================================= */
body.modal-open {
  overflow: hidden !important;
}

html.dg-modal-scroll-locked,
body.dg-modal-scroll-locked {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

body.dg-modal-scroll-locked {
  position: fixed !important;
  width: 100% !important;
}

.modal.dg-tw-modal,
.modal.dg-tw-lightbox {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  max-width: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  pointer-events: none;
}

.modal.dg-tw-modal.show,
.modal.dg-tw-lightbox.show {
  display: block !important;
  pointer-events: auto;
}

.dg-tw-modal .modal-dialog,
.dg-tw-lightbox .modal-dialog {
  pointer-events: auto;
}

.dg-tw-modal .modal-dialog {
  display: flex;
  flex-direction: column;
  max-height: calc(100dvh - 2rem);
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.dg-tw-modal.modal-dialog-centered,
.dg-tw-modal .modal-dialog-centered {
  min-height: calc(100dvh - 2rem);
}

.dg-tw-modal .modal-dialog-scrollable .modal-content,
.dg-tw-modal__content {
  display: flex;
  flex-direction: column;
  max-height: calc(100dvh - 2rem);
  overflow: hidden !important;
}

.dg-tw-modal__header,
.dg-tw-modal__footer {
  flex: 0 0 auto;
}

.dg-tw-modal__body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
}

.dg-tw-modal__body > * {
  min-width: 0;
}

.modal-backdrop.show {
  opacity: .66;
}

@media (max-width: 767.98px) {
  html:has(.modal.dg-tw-modal.show),
  html:has(.modal.dg-tw-lightbox.show) {
    overflow: hidden !important;
  }

  .modal.dg-tw-modal,
  .modal.dg-tw-lightbox {
    height: 100svh !important;
    height: 100dvh !important;
  }

  .dg-tw-modal .modal-dialog {
    width: calc(100vw - 1rem) !important;
    max-width: calc(100vw - 1rem) !important;
    min-height: calc(100dvh - 1rem);
    max-height: calc(100dvh - 1rem);
    margin: .5rem auto !important;
    justify-content: flex-end;
    align-items: stretch !important;
  }

  .dg-tw-modal .modal-dialog-scrollable .modal-content,
  .dg-tw-modal__content {
    width: 100%;
    max-height: calc(100dvh - 1rem);
    overflow: hidden !important;
  }

  .dg-tw-modal__body {
    max-height: none;
    padding-bottom: 1rem;
  }

  .dg-tw-modal__footer {
    position: relative;
    z-index: 2;
    background: linear-gradient(180deg, rgba(245, 253, 253, .78), rgba(245, 253, 253, .98));
    backdrop-filter: blur(12px);
  }
}

/* =========================================================
   Step 14d - Modal header/footer polish
   Shared Tailwind-style modal chrome: floating close, clean
   sticky header/footer and safer mobile spacing.
   ========================================================= */
.dg-tw-modal .modal-dialog {
  padding-top: .55rem;
  padding-bottom: .55rem;
}

.dg-tw-modal__content {
  overflow: visible !important;
  border-radius: 1.85rem;
  background: linear-gradient(145deg, rgba(255,255,255,.99), rgba(245, 253, 253, .98));
  border: 1px solid rgba(3, 20, 61, .09);
  box-shadow: 0 2.4rem 5.8rem rgba(4, 17, 54, .22);
}

.dg-tw-modal__content::before {
  border-radius: inherit;
  opacity: .9;
}

.dg-tw-modal__header {
  position: relative;
  flex: 0 0 auto;
  min-height: 5.1rem;
  padding: 1.2rem 4rem 1.1rem 1.35rem;
  border: 0;
  border-bottom: 1px solid rgba(3, 20, 61, .08);
  border-radius: 1.85rem 1.85rem 0 0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(235, 255, 253, .88)),
    radial-gradient(circle at top left, rgba(0, 201, 189, .18), transparent 42%);
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .86);
}

.dg-tw-modal__heading {
  width: 100%;
  min-width: 0;
}

.dg-tw-modal__icon {
  width: 3.15rem;
  height: 3.15rem;
  border-radius: 1.05rem;
  box-shadow: 0 1.1rem 2.4rem rgba(0, 184, 200, .24);
}

.dg-tw-modal__title {
  color: #061a49;
  font-size: 1.08rem;
  letter-spacing: -.015em;
}

.dg-tw-modal__subtitle {
  max-width: 48rem;
}

.dg-tw-modal__header-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: .55rem;
  flex: 0 0 auto;
}

.dg-tw-modal__floating-close {
  top: -.9rem;
  right: -.9rem;
  z-index: 20;
  width: 3.05rem;
  height: 3.05rem;
  color: #64748b;
  background: rgba(255, 255, 255, .98);
  border: 1px solid rgba(3, 20, 61, .1);
  box-shadow: 0 1.25rem 2.6rem rgba(4, 17, 54, .18);
}

.dg-tw-modal__floating-close i {
  font-size: 1.18rem;
  line-height: 1;
}

.dg-tw-modal__floating-close:hover,
.dg-tw-modal__floating-close:focus-visible {
  color: #071b4d;
  background: #fff;
  outline: none;
  transform: translateY(-1px) scale(1.04);
  box-shadow: 0 1.4rem 3rem rgba(4, 17, 54, .24);
}

.dg-tw-modal__body {
  padding: 1.25rem 1.35rem;
  background: rgba(255, 255, 255, .28);
}

.dg-tw-modal__footer {
  position: relative;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .7rem;
  min-height: 4.55rem;
  padding: .95rem 1.35rem 1.1rem;
  border: 0;
  border-top: 1px solid rgba(3, 20, 61, .08);
  border-radius: 0 0 1.85rem 1.85rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.88), rgba(246, 253, 253, .98)),
    radial-gradient(circle at bottom right, rgba(0, 201, 189, .12), transparent 38%);
  box-shadow: 0 -1rem 2.4rem rgba(4, 17, 54, .06), inset 0 1px 0 rgba(255, 255, 255, .88);
  backdrop-filter: blur(14px);
}

.dg-tw-modal__button {
  min-height: 2.65rem;
  padding: .75rem 1.1rem;
  border-radius: 999px;
}

.dg-tw-modal__button--soft {
  color: #071b4d;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(3, 20, 61, .1);
  box-shadow: 0 .85rem 1.8rem rgba(4, 17, 54, .08);
}

.dg-tw-modal__button--soft:hover,
.dg-tw-modal__button--soft:focus-visible {
  color: #071b4d;
  background: #fff;
  outline: none;
  box-shadow: 0 1rem 2.1rem rgba(4, 17, 54, .12);
}

@media (max-width: 767.98px) {
  .dg-tw-modal .modal-dialog {
    padding-top: .45rem;
    padding-bottom: .45rem;
  }

  .dg-tw-modal__content {
    border-radius: 1.55rem;
  }

  .dg-tw-modal__header {
    min-height: 4.65rem;
    padding: 1rem 3.35rem 1rem 1rem;
    border-radius: 1.55rem 1.55rem 0 0;
  }

  .dg-tw-modal__icon {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: .95rem;
  }

  .dg-tw-modal__title {
    font-size: 1rem;
    white-space: normal;
  }

  .dg-tw-modal__floating-close,
  .dg-tw-lightbox__close {
    top: -.62rem;
    right: -.18rem;
    width: 2.75rem;
    height: 2.75rem;
  }

  .dg-tw-modal__body {
    padding: 1rem;
  }

  .dg-tw-modal__footer {
    position: sticky;
    bottom: 0;
    min-height: 4.25rem;
    padding: .85rem 1rem 1rem;
    border-radius: 0 0 1.55rem 1.55rem;
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(246,253,253,.99));
  }

  .dg-tw-modal__footer .dg-tw-modal__button,
  .dg-tw-modal__footer .btn {
    flex: 1 1 auto;
  }
}

/* =========================================================
   Step 14e - Modal chrome final pass
   Keeps legacy modal structure, but makes the shared
   Tailwind-style header, close button and footer predictable
   on desktop/tablet/mobile.
   ========================================================= */
.dg-tw-modal .modal-dialog {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.dg-tw-modal .modal-dialog-scrollable .modal-content,
.dg-tw-modal__content {
  overflow: hidden !important;
  border-radius: 1.85rem !important;
}

.dg-tw-modal__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 5rem !important;
  padding: 1.15rem 4.75rem 1.15rem 1.35rem !important;
  border-radius: 1.85rem 1.85rem 0 0 !important;
}

.dg-tw-modal__heading {
  display: flex !important;
  align-items: center !important;
  gap: .9rem !important;
  min-width: 0 !important;
}

.dg-tw-modal__floating-close {
  top: 1rem !important;
  right: 1rem !important;
  z-index: 30 !important;
  width: 2.72rem !important;
  height: 2.72rem !important;
  border-radius: 999px !important;
  color: #334155 !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(247, 253, 253, .96)) !important;
  border: 1px solid rgba(3, 20, 61, .11) !important;
  box-shadow:
    0 .9rem 1.9rem rgba(4, 17, 54, .16),
    inset 0 1px 0 rgba(255, 255, 255, .9) !important;
}

.dg-tw-modal__floating-close i {
  display: block !important;
  font-size: 1.1rem !important;
  line-height: 1 !important;
}

.dg-tw-modal__floating-close:hover,
.dg-tw-modal__floating-close:focus-visible {
  color: #071b4d !important;
  background: #fff !important;
  transform: translateY(-1px) scale(1.03) !important;
  box-shadow:
    0 1rem 2.2rem rgba(4, 17, 54, .22),
    0 0 0 .18rem rgba(0, 201, 189, .14) !important;
}

.dg-tw-modal__body {
  padding: 1.15rem 1.35rem !important;
}

.dg-tw-modal__footer {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: .65rem !important;
  min-height: 4.55rem !important;
  padding: .9rem 1.35rem 1.1rem !important;
  border-radius: 0 0 1.85rem 1.85rem !important;
}

.dg-tw-modal__footer .dg-tw-modal__button,
.dg-tw-modal__footer .btn {
  flex: 0 1 auto !important;
  min-width: 8.75rem !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.dg-tw-modal__button--soft {
  min-height: 2.65rem !important;
  padding-inline: 1.3rem !important;
}

@media (max-width: 767.98px) {
  .dg-tw-modal .modal-dialog {
    padding-top: .5rem !important;
    padding-bottom: .5rem !important;
  }

  .dg-tw-modal .modal-dialog-scrollable .modal-content,
  .dg-tw-modal__content {
    border-radius: 1.45rem !important;
  }

  .dg-tw-modal__header {
    min-height: 4.45rem !important;
    padding: .9rem 3.95rem .9rem 1rem !important;
    border-radius: 1.45rem 1.45rem 0 0 !important;
  }

  .dg-tw-modal__heading {
    gap: .75rem !important;
  }

  .dg-tw-modal__icon {
    width: 2.65rem !important;
    height: 2.65rem !important;
    border-radius: .9rem !important;
  }

  .dg-tw-modal__floating-close {
    top: .86rem !important;
    right: .82rem !important;
    width: 2.45rem !important;
    height: 2.45rem !important;
  }

  .dg-tw-modal__title {
    font-size: .98rem !important;
    line-height: 1.18 !important;
  }

  .dg-tw-modal__body {
    padding: .9rem !important;
  }

  .dg-tw-modal__footer {
    position: relative !important;
    justify-content: center !important;
    min-height: 4.15rem !important;
    padding: .78rem .9rem .9rem !important;
    border-radius: 0 0 1.45rem 1.45rem !important;
  }

  .dg-tw-modal__footer .dg-tw-modal__button,
  .dg-tw-modal__footer .btn {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 22rem !important;
  }
}

/* =========================================================
   Step 15 - Modal System Tailwind v1
   Shared actions and migrated legacy detail/form modals.
   ========================================================= */
.dg-tw-modal__button--primary,
.dg-tw-modal__footer .btn-primary {
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #0ea5e9) !important;
  border: 0 !important;
  box-shadow: 0 1rem 2.2rem rgba(0, 184, 200, .24) !important;
}

.dg-tw-modal__button--primary:hover,
.dg-tw-modal__button--primary:focus-visible,
.dg-tw-modal__footer .btn-primary:hover,
.dg-tw-modal__footer .btn-primary:focus-visible {
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 1.15rem 2.45rem rgba(0, 184, 200, .3), 0 0 0 .2rem rgba(0, 201, 189, .14) !important;
}

.dg-tw-modal__button i {
  font-size: 1.05rem;
  line-height: 1;
}

.dg-tw-modal .form-label,
.dg-tw-modal-form__label {
  color: #071b4d;
  font-weight: 850;
}

.dg-tw-modal .form-control,
.dg-tw-modal .form-select,
.dg-tw-modal-form__control {
  min-height: 2.9rem;
  border: 1px solid rgba(3, 20, 61, .12) !important;
  border-radius: 1rem !important;
  color: #071b4d !important;
  background-color: rgba(255, 255, 255, .92) !important;
  box-shadow: none !important;
}

.dg-tw-modal .form-control:focus,
.dg-tw-modal .form-select:focus,
.dg-tw-modal-form__control:focus {
  border-color: rgba(0, 201, 189, .58) !important;
  box-shadow: 0 0 0 .22rem rgba(0, 201, 189, .13) !important;
}

.dg-tw-modal .form-text {
  color: #64748b;
  font-size: .82rem;
}

.dg-tw-modal .alert {
  border: 1px solid rgba(3, 20, 61, .08);
  border-radius: 1rem;
}

.dg-tw-modal--prospect-lead .dg-prospect-detail-value,
.dg-tw-modal--mail-log pre,
.dg-tw-modal--ai-post pre,
.dg-tw-modal--research-ai pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.dg-tw-modal--prospect-lead .js-prospect-detail-body .border,
.dg-tw-modal--mail-log #mailLogDetailBody .border,
.dg-tw-modal--ai-post [data-ai-details-body] .border {
  border-color: rgba(3, 20, 61, .08) !important;
  border-radius: 1rem !important;
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 .9rem 2rem rgba(4, 17, 54, .045);
}

.dg-tw-modal--research-ai .js-research-prompt {
  min-height: min(42vh, 27rem);
  resize: vertical;
}

.dg-tw-modal--prospect-preview .dg-tw-modal-form {
  gap: .7rem;
}

@media (max-width: 767.98px) {
  .dg-tw-modal--prospect-lead .row,
  .dg-tw-modal--mail-log .row,
  .dg-tw-modal--ai-post .row {
    --dg-gutter-x: .75rem;
    --dg-gutter-y: .75rem;
  }

  .dg-tw-modal--research-ai .d-flex.flex-wrap.gap-2.mt-3 {
    display: grid !important;
  }

  .dg-tw-modal--research-ai .js-run-research-ai {
    width: 100%;
    margin-left: 0 !important;
  }
}

/* =========================================================
   Step 16 - DataView migrations polish (mail, research, AI, client ads)
   ========================================================= */
.dg-data-toolbar--wide {
  grid-template-columns: minmax(18rem, 1.4fr) repeat(3, minmax(10rem, .75fr)) auto auto;
}
.dg-data-toolbar__field {
  display: grid;
  gap: .32rem;
  min-width: 0;
}
.dg-data-toolbar__field > span {
  color: #64748b;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.dg-data-toolbar__field input {
  width: 100%;
  min-height: 2.85rem;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1rem;
  padding: .72rem .9rem;
  color: var(--dg-admin-navy);
  background: rgba(255,255,255,.86);
  font-weight: 750;
  outline: none;
}
.dg-data-toolbar__field input:focus {
  border-color: rgba(0,201,189,.36);
  box-shadow: 0 0 0 .22rem rgba(0,201,189,.11);
}
.dg-data-toolbar__field--compact {
  max-width: 11rem;
}
.dg-data-thumb {
  width: 2.65rem;
  height: 2.65rem;
  min-width: 2.65rem;
  border-radius: .95rem;
  object-fit: cover;
  background: rgba(0,201,189,.10);
  box-shadow: inset 0 0 0 1px rgba(15,36,72,.08);
}
.dg-row-actions-inline {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: .4rem;
  max-width: 100%;
}
.dg-row-actions-inline > .dg-action-menu__toggle,
.dg-row-actions-inline > .dg-action-menu {
  flex: 0 0 auto;
}
.dg-segmented-control {
  display: inline-grid;
  grid-auto-flow: column;
  gap: .25rem;
  align-items: center;
  min-height: 2.85rem;
  padding: .24rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1rem;
  background: rgba(255,255,255,.82);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.42);
}
.dg-segmented-control__item {
  margin: 0;
  cursor: pointer;
}
.dg-segmented-control__item input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.dg-segmented-control__item span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  border-radius: .8rem;
  padding: .55rem .9rem;
  color: #64748b;
  font-size: .82rem;
  font-weight: 900;
  white-space: nowrap;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}
.dg-segmented-control__item input:checked + span {
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 .8rem 1.8rem rgba(0,201,189,.20);
}
.dg-segmented-control__item input:disabled + span {
  opacity: .46;
  cursor: not-allowed;
}
.dg-data-view--mail-logs .dg-data-table th:nth-child(1),
.dg-data-view--mail-logs .dg-data-table td:nth-child(1) { width: 10.5rem; }
.dg-data-view--mail-logs .dg-data-table th:nth-child(2),
.dg-data-view--mail-logs .dg-data-table td:nth-child(2) { width: 10rem; }
.dg-data-view--mail-logs .dg-data-table th:nth-child(3),
.dg-data-view--mail-logs .dg-data-table td:nth-child(3) { width: 15rem; }
.dg-data-view--mail-logs .dg-data-table th:nth-child(5),
.dg-data-view--mail-logs .dg-data-table td:nth-child(5) { width: 9rem; }
.dg-data-view--research-cases .dg-data-table th:nth-child(1),
.dg-data-view--research-cases .dg-data-table td:nth-child(1) { width: 18rem; }
.dg-data-view--research-cases .dg-data-table th:nth-child(2),
.dg-data-view--research-cases .dg-data-table td:nth-child(2) { width: 14rem; }
.dg-data-view--client-job-ads .dg-data-table th:nth-child(1),
.dg-data-view--client-job-ads .dg-data-table td:nth-child(1) { width: 22rem; }
.dg-data-view--ai-posts .dg-data-table th:nth-child(1),
.dg-data-view--ai-posts .dg-data-table td:nth-child(1) { width: 24rem; }
.dg-data-view--ai-posts .dg-data-table th:nth-child(6),
.dg-data-view--ai-posts .dg-data-table td:nth-child(6) { width: 18rem; }
@media (max-width: 1399.98px) {
  .dg-data-toolbar--wide {
    grid-template-columns: minmax(15rem, 1fr) repeat(2, minmax(10rem, .7fr)) auto auto;
  }
}
@media (max-width: 991.98px) {
  .dg-data-toolbar--wide,
  .dg-data-toolbar {
    grid-template-columns: 1fr 1fr;
  }
  .dg-data-toolbar__search,
  .dg-data-toolbar__button,
  .dg-data-toolbar__button--soft {
    grid-column: 1 / -1;
  }
  .dg-data-toolbar__field--compact {
    max-width: none;
  }
}
@media (max-width: 575.98px) {
  .dg-data-toolbar--wide,
  .dg-data-toolbar {
    grid-template-columns: 1fr;
  }
  .dg-segmented-control {
    width: 100%;
    grid-auto-flow: column;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-segmented-control__item span {
    width: 100%;
    padding-inline: .6rem;
    font-size: .78rem;
  }
  .dg-row-actions-inline {
    width: 100%;
    justify-content: stretch;
    flex-wrap: wrap;
  }
  .dg-row-actions-inline > .dg-action-menu__toggle,
  .dg-row-actions-inline > .dg-action-menu {
    flex: 1 1 auto;
  }
}
.dg-data-badge--secondary {
  color: #475569;
  background: rgba(100,116,139,.12);
  border-color: rgba(100,116,139,.18);
}
.dg-data-view--focus-accesses .dg-data-table th:nth-child(1),
.dg-data-view--focus-accesses .dg-data-table td:nth-child(1) { width: 20rem; }
.dg-data-view--focus-accesses .dg-data-table th:nth-child(2),
.dg-data-view--focus-accesses .dg-data-table td:nth-child(2) { width: 13rem; }
.dg-data-view--focus-articles .dg-data-table th:nth-child(1),
.dg-data-view--focus-articles .dg-data-table td:nth-child(1) { width: 26rem; }

/* =========================================================
   Step 16B - Fix DataView overflow
   ========================================================= */
.dg-data-table--mail-logs,
.dg-data-table--research-cases,
.dg-data-table--ai-posts {
  table-layout: fixed !important;
}

.dg-data-table--mail-logs th:nth-child(1),
.dg-data-table--mail-logs td:nth-child(1) { width: 13% !important; }
.dg-data-table--mail-logs th:nth-child(2),
.dg-data-table--mail-logs td:nth-child(2) { width: 14% !important; }
.dg-data-table--mail-logs th:nth-child(3),
.dg-data-table--mail-logs td:nth-child(3) { width: 22% !important; }
.dg-data-table--mail-logs th:nth-child(4),
.dg-data-table--mail-logs td:nth-child(4) { width: 28% !important; }
.dg-data-table--mail-logs th:nth-child(5),
.dg-data-table--mail-logs td:nth-child(5) { width: 10% !important; }
.dg-data-table--mail-logs th:nth-child(6),
.dg-data-table--mail-logs td:nth-child(6) { width: 13% !important; }

.dg-data-table--research-cases th:nth-child(1),
.dg-data-table--research-cases td:nth-child(1) { width: 25% !important; }
.dg-data-table--research-cases th:nth-child(2),
.dg-data-table--research-cases td:nth-child(2) { width: 20% !important; }
.dg-data-table--research-cases th:nth-child(3),
.dg-data-table--research-cases td:nth-child(3) { width: 16% !important; }
.dg-data-table--research-cases th:nth-child(4),
.dg-data-table--research-cases td:nth-child(4) { width: 18% !important; }
.dg-data-table--research-cases th:nth-child(5),
.dg-data-table--research-cases td:nth-child(5) { width: 11% !important; }
.dg-data-table--research-cases th:nth-child(6),
.dg-data-table--research-cases td:nth-child(6) { width: 10% !important; }
.dg-data-table--research-cases .dg-data-table__actions {
  min-width: 6.75rem !important;
  max-width: 7.5rem !important;
}
.dg-data-table--research-cases .dg-action-menu__toggle {
  min-width: 5.4rem !important;
  padding-inline: .72rem !important;
}

.dg-data-table--ai-posts th:nth-child(1),
.dg-data-table--ai-posts td:nth-child(1) { width: 30% !important; }
.dg-data-table--ai-posts th:nth-child(2),
.dg-data-table--ai-posts td:nth-child(2) { width: 10% !important; }
.dg-data-table--ai-posts th:nth-child(3),
.dg-data-table--ai-posts td:nth-child(3) { width: 12% !important; }
.dg-data-table--ai-posts th:nth-child(4),
.dg-data-table--ai-posts td:nth-child(4) { width: 14% !important; }
.dg-data-table--ai-posts th:nth-child(5),
.dg-data-table--ai-posts td:nth-child(5) { width: 14% !important; }
.dg-data-table--ai-posts th:nth-child(6),
.dg-data-table--ai-posts td:nth-child(6) { width: 20% !important; }
.dg-data-table--ai-posts .dg-data-table__actions {
  min-width: 12rem !important;
  max-width: none !important;
  padding-left: .5rem !important;
}
.dg-data-table--ai-posts .dg-row-actions-inline {
  flex-wrap: nowrap;
  justify-content: flex-end;
  gap: .38rem;
  overflow: visible;
}
.dg-data-table--ai-posts .dg-row-actions-inline > .dg-action-menu__toggle {
  min-width: 0 !important;
  max-width: 10rem !important;
  padding-inline: .72rem !important;
}
.dg-data-table--ai-posts .dg-row-actions-inline > .dg-action-menu .dg-action-menu__toggle {
  width: 2.65rem !important;
  min-width: 2.65rem !important;
  padding-inline: 0 !important;
}
.dg-data-table--ai-posts .dg-row-actions-inline > .dg-action-menu .dg-action-menu__toggle span {
  display: none !important;
}

@media (max-width: 1399.98px) and (min-width: 1200px) {
  .dg-data-table--mail-logs thead th,
  .dg-data-table--mail-logs tbody td,
  .dg-data-table--research-cases thead th,
  .dg-data-table--research-cases tbody td,
  .dg-data-table--ai-posts thead th,
  .dg-data-table--ai-posts tbody td {
    padding-inline: .62rem !important;
  }

  .dg-data-table--ai-posts .dg-row-actions-inline > .dg-action-menu__toggle span {
    display: none !important;
  }

  .dg-data-table--ai-posts .dg-row-actions-inline > .dg-action-menu__toggle {
    width: 2.65rem !important;
    min-width: 2.65rem !important;
    padding-inline: 0 !important;
  }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .dg-data-view--mail-logs .dg-data-view__desktop,
  .dg-data-view--research-cases .dg-data-view__desktop,
  .dg-data-view--ai-posts .dg-data-view__desktop,
  .dg-data-view--focus-accesses .dg-data-view__desktop,
  .dg-data-view--focus-articles .dg-data-view__desktop,
  .dg-data-view--client-job-ads .dg-data-view__desktop {
    display: none !important;
  }

  .dg-data-view--mail-logs .dg-data-view__mobile,
  .dg-data-view--research-cases .dg-data-view__mobile,
  .dg-data-view--ai-posts .dg-data-view__mobile,
  .dg-data-view--focus-accesses .dg-data-view__mobile,
  .dg-data-view--focus-articles .dg-data-view__mobile,
  .dg-data-view--client-job-ads .dg-data-view__mobile {
    display: block !important;
  }
}

/* =========================================================
   Step 12 - Select portal centering + Tailwind admin forms
   ========================================================= */
.dg-app-select-panel,
.dg-app-select-panel[data-dg-select-portal='1'] {
  box-sizing: border-box;
  transform: translateZ(0);
  will-change: left, top, bottom, width;
}
.dg-app-select-wrap[data-dg-custom-select] {
  isolation: isolate;
}
.dg-app-select-wrap[data-dg-custom-select] .dg-app-select-control {
  min-width: 0;
}
.dg-app-select-wrap[data-dg-custom-select] .dg-app-select-control__value {
  padding-right: .1rem;
}

.dg-admin-form-page {
  --dg-admin-form-border: rgba(15, 36, 72, .10);
  --dg-admin-form-text: #071b4d;
  --dg-admin-form-muted: #64748b;
}
.dg-admin-form-hero {
  min-height: auto;
}
.dg-admin-form-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-admin-form-sidebar {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-admin-form-card {
  min-width: 0;
  border: 1px solid var(--dg-admin-form-border);
  border-radius: 1.65rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 24px 72px rgba(7, 26, 70, .10);
  backdrop-filter: blur(18px);
  overflow: visible;
}
.dg-admin-form-card--main {
  overflow: visible;
}
.dg-admin-form-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.35rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-admin-form-card__header h2,
.dg-admin-note-card h2 {
  margin: .45rem 0 .2rem;
  color: var(--dg-admin-form-text);
  font-size: 1.18rem;
  line-height: 1.16;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-admin-form-card__header p,
.dg-admin-note-card p {
  margin: 0;
  color: var(--dg-admin-form-muted);
  line-height: 1.55;
}
.dg-admin-form-card__body {
  padding: 1.35rem;
}
.dg-admin-form {
  display: grid;
  gap: 1.2rem;
}
.dg-admin-form-grid {
  display: grid;
  gap: 1rem;
}
.dg-admin-form-grid--2 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.dg-admin-field {
  display: flex;
  flex-direction: column;
  gap: .45rem;
  min-width: 0;
  grid-column: span 6;
}
.dg-admin-field--full { grid-column: 1 / -1; }
.dg-admin-field--wide-8 { grid-column: span 8; }
.dg-admin-field--wide-4 { grid-column: span 4; }
.dg-admin-field > span,
.dg-admin-field > label,
.dg-admin-label {
  color: #50627f;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .01em;
}
.dg-admin-field small {
  color: #72829b;
  font-size: .78rem;
  line-height: 1.45;
}
.dg-admin-field-error {
  color: #dc2626 !important;
  font-weight: 850;
}
.dg-admin-control {
  width: 100%;
  min-width: 0;
  min-height: 3.25rem;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1.08rem;
  background: rgba(255,255,255,.92);
  color: var(--dg-admin-form-text);
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
  outline: 0;
  padding: .82rem 1rem;
  font-size: .94rem;
  font-weight: 800;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
textarea.dg-admin-control {
  min-height: 8.5rem;
  resize: vertical;
  line-height: 1.55;
}
.dg-admin-control::placeholder {
  color: #9aa8bd;
  font-weight: 750;
}
.dg-admin-control:focus {
  border-color: rgba(0,201,189,.42);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08);
}
.dg-admin-control.is-invalid,
.dg-admin-control[aria-invalid='true'] {
  border-color: rgba(220,38,38,.55);
  box-shadow: 0 0 0 4px rgba(220,38,38,.08);
}
.dg-admin-control--file {
  display: flex;
  align-items: center;
  padding: .68rem 1rem;
}
.dg-admin-control--file::file-selector-button {
  margin-right: .8rem;
  border: 0;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.12);
  padding: .55rem .8rem;
  font-weight: 900;
  cursor: pointer;
}
.dg-admin-control-select.dg-app-select-wrap {
  width: 100%;
  min-height: 3.25rem;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1.08rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-admin-control-select .dg-app-select-control {
  min-height: 3.18rem;
  padding-left: .95rem;
  padding-right: .9rem;
}
.dg-admin-check {
  display: flex;
  align-items: flex-start;
  gap: .8rem;
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.92));
  padding: .95rem 1rem;
  cursor: pointer;
}
.dg-admin-check input {
  appearance: none;
  flex: 0 0 1.18rem;
  width: 1.18rem;
  height: 1.18rem;
  margin-top: .12rem;
  border: 1px solid rgba(15,36,72,.18);
  border-radius: .38rem;
  background: #fff;
  box-shadow: inset 0 0 0 2px #fff;
  cursor: pointer;
}
.dg-admin-check input:checked {
  border-color: transparent;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: inset 0 0 0 3px #fff, 0 .45rem 1.1rem rgba(0,201,189,.22);
}
.dg-admin-check span {
  display: grid;
  gap: .2rem;
  min-width: 0;
}
.dg-admin-check strong {
  color: var(--dg-admin-form-text);
  font-weight: 950;
}
.dg-admin-check small {
  color: #65748e;
  line-height: 1.45;
}
.dg-admin-form-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .65rem;
  padding-top: .15rem;
}
.dg-admin-note-card {
  padding: 1.25rem;
}
.dg-admin-meta-list {
  display: grid;
  gap: .55rem;
  margin: 1rem 0 0;
}
.dg-admin-meta-list div {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: .75rem;
  padding: .65rem .75rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: .9rem;
  background: rgba(248,250,252,.82);
}
.dg-admin-meta-list dt {
  color: #708098;
  font-size: .78rem;
  font-weight: 850;
}
.dg-admin-meta-list dd {
  margin: 0;
  min-width: 0;
  color: var(--dg-admin-form-text);
  font-weight: 850;
  overflow-wrap: anywhere;
}
.dg-admin-form-card .dg-media-preview-frame {
  width: 100%;
  min-height: 14rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.2rem;
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(7,27,77,.04));
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.dg-admin-form-card .dg-media-preview-frame img {
  display: block;
  width: 100%;
  height: 100%;
  max-height: 22rem;
  object-fit: cover;
}
.dg-admin-form-card .dg-media-preview-frame img.is-hidden,
.dg-admin-form-card .dg-media-preview-frame img.d-none,
.dg-admin-form-card .dg-media-preview-placeholder.is-hidden,
.dg-admin-form-card .dg-media-preview-placeholder.d-none {
  display: none !important;
}
.dg-admin-form-card .dg-media-preview-placeholder {
  display: grid;
  place-items: center;
  gap: .6rem;
  min-height: 14rem;
  padding: 1.25rem;
  color: #64748b;
  text-align: center;
  font-weight: 850;
}
.dg-admin-form-card .dg-media-preview-placeholder .icon-base {
  color: #00aebd;
  font-size: 2.2rem;
}
@media (max-width: 1199.98px) {
  .dg-admin-form-layout {
    grid-template-columns: 1fr;
  }
  .dg-admin-form-sidebar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .dg-admin-form-hero,
  .dg-admin-form-hero .dg-tw-hero__content {
    align-items: flex-start;
  }
  .dg-admin-form-layout,
  .dg-admin-form-sidebar {
    gap: 1rem;
  }
  .dg-admin-form-sidebar {
    grid-template-columns: 1fr;
  }
  .dg-admin-form-card {
    border-radius: 1.35rem;
  }
  .dg-admin-form-card__header,
  .dg-admin-form-card__body,
  .dg-admin-note-card {
    padding: 1rem;
  }
  .dg-admin-form-grid--2 {
    grid-template-columns: 1fr;
  }
  .dg-admin-field,
  .dg-admin-field--wide-8,
  .dg-admin-field--wide-4,
  .dg-admin-field--full {
    grid-column: 1 / -1;
  }
  .dg-admin-form-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .dg-admin-form-actions .dg-tw-btn {
    width: 100%;
  }
  .dg-admin-meta-list div {
    grid-template-columns: 1fr;
    gap: .25rem;
  }
}

/* =========================================================
   Step 13 - Mobile shell fix + modern account dropdown
   ========================================================= */
.layout-wrapper.layout-content-navbar .layout-navbar {
  border-color: rgba(7, 26, 70, .08) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,252,255,.82)) !important;
  box-shadow: 0 1.35rem 3.8rem rgba(7,26,70,.10), inset 0 1px 0 rgba(255,255,255,.86) !important;
}
.dg-user-menu-toggle {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
}
.dg-navbar-avatar.avatar {
  width: 2.6rem;
  height: 2.6rem;
}
.dg-navbar-avatar.avatar::after {
  border-width: 2px !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,.92);
}
.dg-navbar-avatar img,
.dg-navbar-avatar-initial {
  box-shadow: 0 .75rem 1.65rem rgba(7,26,70,.18);
}
.dg-navbar-avatar-initial,
.dropdown-user .avatar-initial.dg-navbar-avatar-initial,
.layout-wrapper.layout-content-navbar .dropdown-user .avatar-initial.dg-navbar-avatar-initial {
  color: #a9fbff !important;
  background: linear-gradient(135deg, #071a46 0%, #0b255e 58%, #03485b 100%) !important;
  font-weight: 950 !important;
  letter-spacing: -.03em;
}
.dropdown-user .dg-user-menu.dropdown-menu {
  min-width: 18.75rem;
  padding: .72rem;
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: 1.35rem !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(0,201,189,.14), transparent 8.5rem),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,251,255,.96)) !important;
  box-shadow: 0 1.5rem 4.6rem rgba(7,26,70,.22) !important;
  backdrop-filter: blur(18px);
  overflow: hidden;
}
.dropdown-user .dg-user-menu__header {
  margin: 0 0 .35rem !important;
  padding: .78rem !important;
  border-radius: 1rem !important;
  color: #071a46 !important;
  background: linear-gradient(135deg, rgba(7,26,70,.06), rgba(0,201,189,.08)) !important;
}
.dropdown-user .dg-user-menu__header h6 {
  color: #071a46 !important;
  font-size: .94rem;
  font-weight: 950;
  letter-spacing: -.02em;
}
.dropdown-user .dg-user-menu__header small {
  color: #64748b !important;
  font-size: .74rem;
  font-weight: 800;
}
.dropdown-user .dg-user-menu .dropdown-divider {
  margin: .45rem 0 !important;
  border-color: rgba(15,36,72,.08) !important;
}
.dropdown-user .dg-user-menu .dropdown-item,
.dropdown-user .dg-user-menu button.dropdown-item {
  display: flex !important;
  align-items: center !important;
  width: 100%;
  min-height: 2.72rem;
  padding: .68rem .78rem !important;
  border-radius: .95rem !important;
  color: #071a46 !important;
  font-size: .88rem;
  font-weight: 850;
  line-height: 1.2;
  transition: background .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.dropdown-user .dg-user-menu .dropdown-item > i,
.dropdown-user .dg-user-menu button.dropdown-item > i {
  display: inline-grid !important;
  place-items: center;
  width: 2rem;
  height: 2rem;
  margin-right: .72rem !important;
  border-radius: .78rem;
  color: #0b255e !important;
  background: rgba(7,26,70,.07);
  font-size: 1.05rem !important;
}
.dropdown-user .dg-user-menu .dropdown-item:hover,
.dropdown-user .dg-user-menu .dropdown-item:focus,
.dropdown-user .dg-user-menu button.dropdown-item:hover,
.dropdown-user .dg-user-menu button.dropdown-item:focus {
  color: #fff !important;
  background: linear-gradient(135deg, #071a46, #043f54) !important;
  box-shadow: 0 .9rem 2.2rem rgba(7,26,70,.16);
  transform: translateY(-1px);
}
.dropdown-user .dg-user-menu .dropdown-item:hover > i,
.dropdown-user .dg-user-menu .dropdown-item:focus > i,
.dropdown-user .dg-user-menu button.dropdown-item:hover > i,
.dropdown-user .dg-user-menu button.dropdown-item:focus > i {
  color: #9ff4f6 !important;
  background: rgba(255,255,255,.13);
}

@media (max-width: 767.98px) {
  .layout-wrapper.layout-content-navbar .layout-page,
  .layout-wrapper.layout-content-navbar .content-wrapper,
  .layout-wrapper.layout-content-navbar .container-xxl,
  .layout-wrapper.layout-content-navbar .container-p-y {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100vw !important;
  }
  .layout-wrapper.layout-content-navbar .container-p-y {
    padding-inline: .75rem !important;
  }
  .dropdown-user .dg-user-menu.dropdown-menu {
    min-width: min(18.75rem, calc(100vw - 1.5rem));
    max-width: calc(100vw - 1.5rem);
    border-radius: 1.2rem !important;
  }
  .dg-navbar-avatar.avatar {
    width: 2.45rem;
    height: 2.45rem;
  }
}

/* =========================================================
   Step 14 - Stable compact sidebar, account menu and paginator
   ========================================================= */
@media (min-width: 1200px) {
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar {
    width: 4.65rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .48rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-item {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.95rem !important;
    min-width: 2.95rem !important;
    height: 2.95rem !important;
    min-height: 2.95rem !important;
    margin: .12rem auto !important;
    padding: 0 !important;
    border-radius: 1.05rem !important;
    overflow: visible !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.3rem !important;
    min-width: 1.3rem !important;
    height: 1.3rem !important;
    margin: 0 !important;
    font-size: 1.28rem !important;
    line-height: 1 !important;
    text-align: center !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-header,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-sub {
    display: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link .badge {
    position: absolute !important;
    top: -.18rem !important;
    right: -.22rem !important;
    min-width: 1.15rem !important;
    height: 1.15rem !important;
    padding: 0 .24rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: .62rem !important;
    line-height: 1 !important;
  }
}

.dropdown-user .dg-user-menu.dropdown-menu {
  padding: .78rem !important;
  border: 1px solid rgba(98, 235, 238, .16) !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(0,201,189,.25), transparent 9rem),
    linear-gradient(155deg, #071a46 0%, #082057 48%, #043f54 100%) !important;
  color: rgba(226, 241, 255, .92) !important;
  box-shadow: 0 1.75rem 5rem rgba(7,26,70,.34) !important;
}
.dropdown-user .dg-user-menu__header,
.dropdown-user .dg-user-menu__header:hover,
.dropdown-user .dg-user-menu__header:focus {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(0,201,189,.18), rgba(255,255,255,.07)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
  transform: none !important;
}
.dropdown-user .dg-user-menu__header h6,
.dropdown-user .dg-user-menu__header:hover h6,
.dropdown-user .dg-user-menu__header:focus h6 {
  color: #fff !important;
}
.dropdown-user .dg-user-menu__header small,
.dropdown-user .dg-user-menu__header:hover small,
.dropdown-user .dg-user-menu__header:focus small {
  color: rgba(194, 244, 248, .78) !important;
}
.dropdown-user .dg-user-menu .dropdown-divider {
  border-color: rgba(255,255,255,.10) !important;
}
.dropdown-user .dg-user-menu .dropdown-item,
.dropdown-user .dg-user-menu button.dropdown-item {
  color: rgba(226,241,255,.92) !important;
}
.dropdown-user .dg-user-menu .dropdown-item > i,
.dropdown-user .dg-user-menu button.dropdown-item > i {
  color: #8df3f5 !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
}
.dropdown-user .dg-user-menu .dropdown-item:hover,
.dropdown-user .dg-user-menu .dropdown-item:focus,
.dropdown-user .dg-user-menu button.dropdown-item:hover,
.dropdown-user .dg-user-menu button.dropdown-item:focus {
  color: #071a46 !important;
  background: linear-gradient(135deg, #8df3f5, #00c9bd) !important;
  box-shadow: 0 .95rem 2.3rem rgba(0,201,189,.18) !important;
}
.dropdown-user .dg-user-menu .dropdown-item:hover > i,
.dropdown-user .dg-user-menu .dropdown-item:focus > i,
.dropdown-user .dg-user-menu button.dropdown-item:hover > i,
.dropdown-user .dg-user-menu button.dropdown-item:focus > i {
  color: #071a46 !important;
  background: rgba(255,255,255,.72) !important;
  border-color: rgba(255,255,255,.78) !important;
}

.dg-pagination__link--wide {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .38rem !important;
  min-width: 7.2rem !important;
  padding-inline: .85rem !important;
}
@media (max-width: 575.98px) {
  .dg-pagination {
    gap: .45rem !important;
  }
  .dg-pagination__link--wide {
    min-width: 0 !important;
    flex: 1 1 0 !important;
    padding-inline: .65rem !important;
  }
}

.dg-focus-page-shell {
  gap: 1rem;
}
.dg-data-view-stats--focus {
  grid-template-columns: repeat(auto-fit, minmax(13.25rem, 1fr));
}
.dg-data-view-stats--focus .dg-tw-stat {
  min-height: 8.8rem;
}
@media (max-width: 575.98px) {
  .dg-data-view-stats--focus {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .72rem;
  }
  .dg-data-view-stats--focus .dg-tw-stat {
    min-height: 8rem;
    padding: .85rem;
  }
  .dg-data-view-stats--focus .dg-tw-stat__head {
    margin-bottom: .72rem;
  }
  .dg-data-view-stats--focus .dg-tw-stat__description {
    font-size: .78rem;
  }
}

/* =========================================================
   Step 15 - Stable collapsed sidebar + navy account dropdown
   ========================================================= */
@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    display: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar {
    width: 4.75rem !important;
    overflow: hidden !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    align-items: center !important;
    padding: 1rem 0 .8rem !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-link {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    margin: 0 auto !important;
    transform: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: .35rem !important;
    padding: .55rem .45rem 1rem !important;
    overflow-x: hidden !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-item {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link {
    inset: auto !important;
    transform: none !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 3rem !important;
    min-width: 3rem !important;
    height: 3rem !important;
    min-height: 3rem !important;
    max-width: 3rem !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: 1.05rem !important;
    overflow: visible !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
    content: none !important;
    display: none !important;
  }
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-menu.dg-app-sidebar .menu-link > i {
    display: inline-grid !important;
    place-items: center !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    min-width: 1.35rem !important;
    margin: 0 !important;
    font-size: 1.28rem !important;
    line-height: 1 !important;
    transform: none !important;
  }
}

.dropdown-user .dg-user-menu.dropdown-menu {
  border: 1px solid rgba(130, 244, 246, .18) !important;
  border-radius: 1.45rem !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(0,201,189,.28), transparent 9rem),
    linear-gradient(155deg, #071a46 0%, #082057 46%, #043f54 100%) !important;
  color: rgba(226, 241, 255, .96) !important;
  box-shadow: 0 1.75rem 5rem rgba(7,26,70,.36) !important;
}
.dropdown-user .dg-user-menu .dropdown-item,
.dropdown-user .dg-user-menu button.dropdown-item {
  color: rgba(232, 249, 255, .96) !important;
  background: transparent !important;
}
.dropdown-user .dg-user-menu .dropdown-item span,
.dropdown-user .dg-user-menu button.dropdown-item span {
  color: inherit !important;
}
.dropdown-user .dg-user-menu .dropdown-item > i,
.dropdown-user .dg-user-menu button.dropdown-item > i {
  color: #9ff4f6 !important;
  background: rgba(255,255,255,.09) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  opacity: 1 !important;
}
.dropdown-user .dg-user-menu .dropdown-item:hover,
.dropdown-user .dg-user-menu .dropdown-item:focus,
.dropdown-user .dg-user-menu button.dropdown-item:hover,
.dropdown-user .dg-user-menu button.dropdown-item:focus {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(0,201,189,.18)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 .9rem 2.2rem rgba(0,0,0,.16) !important;
  transform: translateY(-1px);
}
.dropdown-user .dg-user-menu .dropdown-item:hover > i,
.dropdown-user .dg-user-menu .dropdown-item:focus > i,
.dropdown-user .dg-user-menu button.dropdown-item:hover > i,
.dropdown-user .dg-user-menu button.dropdown-item:focus > i {
  color: #071a46 !important;
  background: #9ff4f6 !important;
  border-color: rgba(255,255,255,.72) !important;
}
.dropdown-user .dg-user-menu__header,
.dropdown-user .dg-user-menu__header:hover,
.dropdown-user .dg-user-menu__header:focus {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(0,201,189,.18), rgba(255,255,255,.07)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
  transform: none !important;
}
.dropdown-user .dg-user-menu__header h6,
.dropdown-user .dg-user-menu__header:hover h6,
.dropdown-user .dg-user-menu__header:focus h6 {
  color: #fff !important;
}
.dropdown-user .dg-user-menu__header small,
.dropdown-user .dg-user-menu__header:hover small,
.dropdown-user .dg-user-menu__header:focus small {
  color: rgba(194, 244, 248, .82) !important;
}


/* =========================================================
   Step 16 - Final desktop compact sidebar lock + System variables Tailwind form
   ========================================================= */
@media (min-width: 1200px) {
  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control.d-block {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: 4.55rem !important;
    min-width: 4.55rem !important;
    max-width: 4.55rem !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-height: 4.6rem !important;
    padding: .85rem 0 .65rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    display: inline-grid !important;
    place-items: center !important;
    width: 3rem !important;
    height: 3rem !important;
    min-width: 3rem !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    margin: 0 !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    padding: .55rem 0 1.2rem !important;
    margin: 0 !important;
    gap: .34rem !important;
    overflow-x: hidden !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    left: auto !important;
    right: auto !important;
    inset-inline: auto !important;
    display: grid !important;
    place-items: center !important;
    inline-size: 3rem !important;
    block-size: 3rem !important;
    min-inline-size: 3rem !important;
    min-block-size: 3rem !important;
    max-inline-size: 3rem !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: 1.05rem !important;
    text-align: center !important;
    transform: none !important;
    overflow: visible !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    display: grid !important;
    place-items: center !important;
    inline-size: 1.42rem !important;
    block-size: 1.42rem !important;
    min-inline-size: 1.42rem !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1.28rem !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    content: none !important;
    display: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
    display: none !important;
  }
}

.dg-admin-form-card--tips .dg-admin-note-card {
  display: grid;
  gap: 1rem;
}
.dg-admin-tip-item {
  display: grid;
  gap: .28rem;
  padding: .85rem .9rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1rem;
  background: rgba(248, 250, 252, .82);
}
.dg-admin-tip-item strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-admin-tip-item small {
  color: #64748b;
  line-height: 1.45;
}

/* =========================================================
   Step 17 - Layout guardrails: sidebar, navbar, account menu, system forms
   ========================================================= */
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar .layout-navbar.container-xxl.navbar-detached {
  width: calc(100% - 3rem) !important;
  max-width: calc(1440px - 3rem) !important;
  margin-inline: auto !important;
}

@media (max-width: 767.98px) {
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar .layout-navbar.container-xxl.navbar-detached {
    width: calc(100% - 1.25rem) !important;
    max-width: calc(100% - 1.25rem) !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    inset-block: 0 !important;
    inset-inline-start: 0 !important;
    inset-inline-end: auto !important;
    width: min(86vw, 320px) !important;
    min-width: 0 !important;
    max-width: min(86vw, 320px) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    border-radius: 0 2rem 2rem 0 !important;
    transform: translate3d(-105%, 0, 0) !important;
    transition: transform .24s ease, box-shadow .24s ease !important;
    overflow: hidden !important;
    z-index: 1090 !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(0, 0, 0) !important;
    box-shadow: 1.3rem 0 4rem rgba(7, 26, 70, .28) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    min-height: 4.9rem !important;
    padding: 1rem 1rem .85rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    height: calc(100dvh - 5rem) !important;
    max-height: calc(100dvh - 5rem) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    display: inline-grid !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control.d-block,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-toggle-control {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: 4.75rem !important;
    min-width: 4.75rem !important;
    max-width: 4.75rem !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-height: 4.7rem !important;
    padding: .9rem 0 .65rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    display: grid !important;
    place-items: center !important;
    width: 3rem !important;
    height: 3rem !important;
    min-width: 3rem !important;
    max-width: 3rem !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: .36rem !important;
    width: 100% !important;
    padding: .55rem 0 1.2rem !important;
    margin: 0 !important;
    overflow-x: hidden !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before {
    content: none !important;
    display: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    position: relative !important;
    inset: auto !important;
    display: grid !important;
    place-items: center !important;
    width: 3rem !important;
    min-width: 3rem !important;
    max-width: 3rem !important;
    height: 3rem !important;
    min-height: 3rem !important;
    max-height: 3rem !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: 1.05rem !important;
    text-align: center !important;
    transform: none !important;
    overflow: visible !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    display: grid !important;
    place-items: center !important;
    width: 1.45rem !important;
    min-width: 1.45rem !important;
    height: 1.45rem !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1.32rem !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: none !important;
    content: none !important;
  }
}

.dropdown-user .dg-user-menu.dropdown-menu {
  border-color: rgba(138, 245, 255, .24) !important;
}
.dropdown-user .dg-user-menu .dropdown-item > i,
.dropdown-user .dg-user-menu button.dropdown-item > i {
  color: #d7fdff !important;
  background: rgba(159, 244, 246, .14) !important;
  border: 1px solid rgba(159, 244, 246, .22) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10) !important;
  opacity: 1 !important;
}
.dropdown-user .dg-user-menu .dropdown-item:hover > i,
.dropdown-user .dg-user-menu .dropdown-item:focus > i,
.dropdown-user .dg-user-menu button.dropdown-item:hover > i,
.dropdown-user .dg-user-menu button.dropdown-item:focus > i {
  color: #071a46 !important;
  background: #b8fbff !important;
  border-color: rgba(255,255,255,.70) !important;
}

.dg-admin-form-page {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}
.dg-admin-form-page > * {
  min-width: 0;
}
.dg-admin-form-page .dg-admin-form-layout {
  margin-top: 0 !important;
}
.dg-admin-field--check-only {
  justify-content: flex-end;
}
.dg-admin-field--check-only .dg-admin-check {
  min-height: 3.25rem;
  align-items: center;
}
.dg-admin-form-card__body .dg-admin-field .dg-app-select-wrap,
.dg-admin-form-card__body .dg-admin-field .dg-admin-control-select,
.dg-admin-form-card__body .dg-admin-field .dg-admin-control {
  align-self: stretch;
}
.dg-admin-form-card__body .dg-app-select-control {
  min-height: 3.25rem;
}

.dg-ai-social-page .dg-ai-calendar-panel .dg-tw-panel__body {
  padding: 0;
  overflow: hidden;
}
.dg-ai-social-page .dg-ai-calendar-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-ai-social-page .dg-ai-calendar-panel .dg-ai-calendar {
  min-height: 34rem;
}
@media (max-width: 767.98px) {
  .dg-ai-social-page .dg-ai-calendar-toolbar {
    flex-direction: column;
    align-items: stretch;
    padding: .9rem;
  }
  .dg-ai-social-page .dg-ai-calendar-panel .dg-ai-calendar {
    min-height: 28rem;
  }
}
.dg-tw-stat--warning .dg-tw-stat__icon {
  background: linear-gradient(135deg, #f59e0b, #f97316);
  box-shadow: 0 16px 42px rgba(245, 158, 11, .24);
}
.dg-tw-stat--warning .dg-tw-pill {
  border-color: rgba(245, 158, 11, .20);
  color: #a15c00;
  background: rgba(245, 158, 11, .12);
}

/* =========================================================
   Mobile menu alignment hotfix
   Scope: only private/admin mobile offcanvas menu.
   The panel is centered like the public mobile menu target, without changing desktop layout.
   ========================================================= */
@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    top: 10px !important;
    right: auto !important;
    bottom: 10px !important;
    left: 50% !important;
    width: min(350px, calc(100vw - 20px)) !important;
    min-width: 0 !important;
    max-width: min(350px, calc(100vw - 20px)) !important;
    height: calc(100dvh - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    margin: 0 !important;
    border-radius: 28px !important;
  }

  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(calc(-50% - 110vw), 0, 0) !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(-50%, 0, 0) !important;
  }
}

/* =========================================================
   Mobile menu final reset - private/admin
   Keep only the mobile drawer behavior: left-to-right entrance,
   full viewport width with the standard safe margin, and visible backdrop.
   ========================================================= */
@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    top: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    left: 12px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: calc(100dvh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    margin: 0 !important;
    border-radius: 30px !important;
  }

  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-wrapper:not(.layout-menu-expanded) .layout-menu.dg-app-sidebar {
    transform: translate3d(calc(-100% - 24px), 0, 0) !important;
    pointer-events: none !important;
    box-shadow: none !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(0, 0, 0) !important;
    pointer-events: auto !important;
    box-shadow: 0 24px 80px rgba(2, 16, 47, .38) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay,
  .layout-overlay,
  .layout-wrapper.layout-content-navbar .content-backdrop,
  .content-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2290 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(3, 10, 31, .52) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
  }

  html.layout-menu-expanded .layout-overlay,
  body.layout-menu-expanded .layout-overlay,
  .layout-menu-expanded .layout-overlay,
  html.layout-menu-expanded .content-backdrop,
  body.layout-menu-expanded .content-backdrop,
  .layout-menu-expanded .content-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

/* =========================================================
   Step 16 - Blog article form Tailwind migration
   ========================================================= */
.dg-blog-form-page {
  gap: 1.25rem;
}
.dg-admin-form-main {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-admin-notice {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  width: 100%;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.88);
  padding: 1rem 1.1rem;
  box-shadow: 0 16px 44px rgba(7,26,70,.08);
  color: #071b4d;
  font-weight: 850;
}
.dg-admin-notice > .icon-base {
  flex: 0 0 auto;
  width: 2.2rem;
  height: 2.2rem;
  display: inline-grid;
  place-items: center;
  border-radius: .85rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 12px 28px rgba(0,201,189,.22);
}
.dg-admin-notice--danger {
  border-color: rgba(220,38,38,.22);
  background: linear-gradient(135deg, rgba(220,38,38,.08), rgba(255,255,255,.92));
}
.dg-admin-notice--danger > .icon-base {
  background: linear-gradient(135deg, #ef4444, #f97316);
  box-shadow: 0 12px 28px rgba(239,68,68,.20);
}
.dg-admin-notice ul {
  margin: .35rem 0 0 1rem;
  padding: 0;
  color: #64748b;
  font-weight: 750;
}
.dg-admin-inline-alert {
  display: flex;
  align-items: flex-start;
  gap: .7rem;
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 1.1rem;
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.90));
  padding: .9rem 1rem;
  color: #071b4d;
  font-weight: 800;
  line-height: 1.45;
}
.dg-admin-inline-alert .icon-base {
  flex: 0 0 auto;
  color: #00a7b8;
  font-size: 1.2rem;
  margin-top: .1rem;
}
.dg-admin-form-actions--stacked {
  flex-direction: column;
  align-items: stretch;
}
.dg-admin-form-actions--stacked .dg-tw-btn {
  width: 100%;
}
.dg-blog-form-page .ql-toolbar.ql-snow {
  border: 1px solid rgba(15,36,72,.12);
  border-bottom: 0;
  border-radius: 1.08rem 1.08rem 0 0;
  background: linear-gradient(180deg, rgba(248,251,255,.96), rgba(255,255,255,.92));
  padding: .75rem .85rem;
}
.dg-blog-form-page .ql-container.ql-snow {
  min-height: 360px;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 0 0 1.08rem 1.08rem;
  background: rgba(255,255,255,.94);
  color: #071b4d;
  font-size: .96rem;
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
}
.dg-blog-form-page .ql-editor {
  min-height: 360px;
  line-height: 1.65;
}
.dg-blog-form-page .ql-editor.ql-blank::before {
  color: #9aa8bd;
  font-style: normal;
  font-weight: 700;
}
.dg-blog-form-page .dg-media-preview-frame.is-empty {
  min-height: 12rem;
}
.dg-blog-form-page .dg-media-preview-frame {
  min-height: 12rem;
}
.dg-blog-form-page .dg-media-preview-frame img {
  max-height: 18rem;
}
@media (max-width: 767.98px) {
  .dg-blog-form-page .ql-container.ql-snow,
  .dg-blog-form-page .ql-editor {
    min-height: 280px;
  }
}

/* DentalGenius validation + notify UX */
.dg-notify-stack {
  position: fixed;
  top: max(1rem, env(safe-area-inset-top));
  right: max(1rem, env(safe-area-inset-right));
  z-index: 2147483000;
  display: grid;
  gap: .75rem;
  width: min(24rem, calc(100vw - 2rem));
  pointer-events: none;
}
.dg-notify {
  display: grid;
  grid-template-columns: 2.6rem minmax(0,1fr) 2rem;
  gap: .75rem;
  align-items: center;
  width: 100%;
  padding: .82rem .9rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem;
  color: #071b4d;
  background: rgba(255,255,255,.94);
  box-shadow: 0 24px 70px rgba(7,26,70,.16);
  backdrop-filter: blur(18px);
  opacity: 0;
  transform: translateY(-.5rem) scale(.98);
  transition: opacity .18s ease, transform .18s ease;
  pointer-events: auto;
}
.dg-notify.is-visible { opacity: 1; transform: translateY(0) scale(1); }
.dg-notify.is-leaving { opacity: 0; transform: translateY(-.35rem) scale(.98); }
.dg-notify__icon {
  display: inline-grid;
  place-items: center;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .8rem 1.8rem rgba(0,201,189,.24);
}
.dg-notify--error .dg-notify__icon,
.dg-notify--warning .dg-notify__icon { background: linear-gradient(135deg, #ff4d5e, #ff8a4d); box-shadow: 0 .8rem 1.8rem rgba(255,77,94,.22); }
.dg-notify--info .dg-notify__icon { background: linear-gradient(135deg, #071b4d, #0b7aa8); box-shadow: 0 .8rem 1.8rem rgba(7,27,77,.20); }
.dg-notify__content { display: grid; gap: .1rem; min-width: 0; }
.dg-notify__content strong { color: #071b4d; font-size: .92rem; line-height: 1.18; font-weight: 950; letter-spacing: -.015em; }
.dg-notify__content small { color: #64748b; font-size: .78rem; line-height: 1.35; font-weight: 760; }
.dg-notify__close {
  display: inline-grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 999px;
  color: #64748b;
  background: rgba(7,27,77,.06);
  cursor: pointer;
}
.dg-notify__close:hover { color: #071b4d; background: rgba(0,201,189,.12); }
.dg-admin-control.is-invalid,
.dg-admin-control[aria-invalid='true'],
.form-control.is-invalid,
.form-select.is-invalid {
  border-color: rgba(220,38,38,.62) !important;
  background: linear-gradient(135deg, rgba(255,77,94,.055), rgba(255,255,255,.96)) !important;
  box-shadow: 0 0 0 4px rgba(220,38,38,.10), 0 .75rem 2rem rgba(220,38,38,.06) !important;
}
.dg-admin-control-select.is-invalid,
.dg-app-select-wrap.is-invalid,
.dg-app-select-wrap[aria-invalid='true'] {
  border-color: rgba(220,38,38,.62) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 0 0 4px rgba(220,38,38,.10), 0 .75rem 2rem rgba(220,38,38,.06) !important;
}
.dg-admin-control-select.is-invalid .dg-app-select-control,
.dg-app-select-wrap.is-invalid .dg-app-select-control,
.dg-app-select-wrap[aria-invalid='true'] .dg-app-select-control {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #071b4d !important;
}
.dg-admin-control-select.is-invalid .dg-app-select-control .icon-base,
.dg-app-select-wrap.is-invalid .dg-app-select-control .icon-base,
.dg-app-select-wrap[aria-invalid='true'] .dg-app-select-control .icon-base {
  color: #dc2626 !important;
}
.dg-field-has-error .dg-admin-label,
.dg-field-has-error > span,
.dg-field-has-error > label { color: #c9293f !important; }
.invalid-feedback,
.dg-admin-field-error,
.dg-invalid-feedback {
  display: block;
  color: #c9293f !important;
  font-size: .78rem;
  font-weight: 900;
  line-height: 1.35;
}
.dg-admin-quill-shell {
  overflow: hidden;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.94);
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
}
.dg-admin-quill-shell.is-invalid { border-color: rgba(220,38,38,.62); box-shadow: 0 0 0 4px rgba(220,38,38,.10); }
.dg-admin-quill-shell .ql-toolbar.ql-snow {
  border: 0;
  border-bottom: 1px solid rgba(15,36,72,.10);
  background: rgba(248,250,252,.92);
}
.dg-admin-quill-shell .ql-container.ql-snow { border: 0; font: inherit; }
.dg-admin-quill-shell .ql-editor { min-height: 32rem; color: #071b4d; font-size: .98rem; line-height: 1.68; }
@media (max-width: 575.98px) {
  .dg-notify-stack {
    top: auto;
    right: max(.75rem, env(safe-area-inset-right));
    bottom: max(5.6rem, env(safe-area-inset-bottom));
    left: max(.75rem, env(safe-area-inset-left));
    width: auto;
  }
  .dg-notify { grid-template-columns: 2.35rem minmax(0,1fr) 1.8rem; border-radius: 1.1rem; }
}
.dg-tw-btn--danger {
  color: #fff !important;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d) !important;
  box-shadow: 0 16px 42px rgba(255,77,94,.20) !important;
}
.dg-tw-btn--danger:hover { filter: saturate(1.05) brightness(.98); }

.dg-legal-documents-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.15rem;
}
.dg-legal-document-card { padding: 1.2rem; }
.dg-legal-document-card__header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-legal-document-card__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 3.1rem;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2.2rem rgba(0,201,189,.20);
}
.dg-legal-document-card__header h2 {
  margin: .45rem 0 .15rem;
  color: #071b4d;
  font-size: 1.16rem;
  line-height: 1.15;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-legal-document-card__header a {
  color: #027b83;
  font-weight: 850;
  font-size: .82rem;
  text-decoration: none;
}
.dg-legal-document-card__locales {
  display: grid;
  gap: .7rem;
  padding-top: 1rem;
}
.dg-legal-locale-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  align-items: center;
  gap: .65rem;
  padding: .75rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1rem;
  background: rgba(248,250,252,.84);
}
.dg-legal-locale-row strong {
  display: block;
  color: #071b4d;
  font-weight: 950;
}
.dg-legal-locale-row small {
  display: block;
  color: #72829b;
  font-size: .76rem;
  line-height: 1.35;
}
.dg-legal-edit-button {
  display: inline-grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: .9rem;
  color: #027b83;
  background: rgba(0,201,189,.10);
  text-decoration: none;
}
.dg-legal-edit-button:hover { color: #fff; background: linear-gradient(135deg, #00c9bd, #00a7d8); }
.dg-tw-pill--muted { color: #64748b !important; background: rgba(100,116,139,.12) !important; border-color: rgba(100,116,139,.16) !important; }
@media (max-width: 1199.98px) {
  .dg-legal-documents-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .dg-legal-documents-grid { grid-template-columns: 1fr; }
  .dg-legal-locale-row { grid-template-columns: minmax(0,1fr) auto; }
  .dg-legal-edit-button { grid-column: 1 / -1; width: 100%; }
}

/* =========================================================
   DentalGenius global validation polish + branded multiselect chips
   ========================================================= */
.dg-field-has-error .select2-container--default .select2-selection,
.form-select.is-invalid + .select2-container--default .select2-selection,
select.is-invalid + .select2-container--default .select2-selection,
.select2-hidden-accessible.is-invalid + .select2-container--default .select2-selection {
  border-color: rgba(220,38,38,.62) !important;
  background: linear-gradient(135deg, rgba(255,77,94,.055), rgba(255,255,255,.96)) !important;
  box-shadow: 0 0 0 4px rgba(220,38,38,.10), 0 .75rem 2rem rgba(220,38,38,.06) !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  display: inline-flex !important;
  align-items: center;
  gap: .35rem;
  min-height: 1.85rem;
  border: 1px solid rgba(0,201,189,.20) !important;
  border-radius: 999px !important;
  color: #066b77 !important;
  background: linear-gradient(135deg, rgba(0,201,189,.16), rgba(45,107,255,.10)) !important;
  box-shadow: 0 .45rem 1rem rgba(0,201,189,.10);
  padding: .2rem .68rem !important;
  font-weight: 850;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  display: inline-grid !important;
  place-items: center;
  width: 1.15rem;
  height: 1.15rem;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #071b4d, #00aebd) !important;
  margin: 0 .15rem 0 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #fff !important;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d) !important;
}
input[type="file"].is-invalid::file-selector-button,
.dg-admin-control--file.is-invalid::file-selector-button {
  color: #fff;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d);
}

/* =========================================================
   Unified admin tabs - Tailwind-like brand system
   ========================================================= */
.dg-app-tabs,
.dg-prospect-tabs {
  display: flex !important;
  align-items: center;
  gap: .45rem;
  width: 100%;
  min-width: 0;
  padding: .35rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(239,253,252,.72));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 .8rem 2rem rgba(7,26,70,.045);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(0,201,189,.45) transparent;
}
.dg-app-tabs::-webkit-scrollbar,
.dg-prospect-tabs::-webkit-scrollbar { height: .35rem; }
.dg-app-tabs::-webkit-scrollbar-thumb,
.dg-prospect-tabs::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(0,201,189,.35); }
.dg-app-tabs .nav-item,
.dg-prospect-tabs .nav-item {
  flex: 0 0 auto;
  margin: 0 !important;
}
.dg-app-tabs .nav-link,
.dg-prospect-tabs .nav-link {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 2.65rem;
  border: 0 !important;
  border-radius: .9rem !important;
  padding: .62rem .95rem !important;
  color: #071b4d !important;
  background: transparent !important;
  font-size: .88rem;
  font-weight: 900;
  line-height: 1.1;
  white-space: nowrap;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.dg-app-tabs .nav-link i,
.dg-prospect-tabs .nav-link i {
  color: #008f9a;
  font-size: 1.05rem;
  transition: color .18s ease;
}
.dg-app-tabs .nav-link:hover,
.dg-prospect-tabs .nav-link:hover {
  color: #006e7c !important;
  background: rgba(0,201,189,.10) !important;
}
.dg-app-tabs .nav-link.active,
.dg-app-tabs .nav-item.show .nav-link,
.dg-prospect-tabs .nav-link.active,
.dg-prospect-tabs .nav-item.show .nav-link {
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.22) !important;
}
.dg-app-tabs .nav-link.active i,
.dg-app-tabs .nav-item.show .nav-link i,
.dg-prospect-tabs .nav-link.active i,
.dg-prospect-tabs .nav-item.show .nav-link i {
  color: #fff !important;
}
.dg-app-tabs .badge,
.dg-prospect-tabs .badge {
  border-radius: 999px;
  font-weight: 950;
}
@media (max-width: 767.98px) {
  .dg-app-tabs,
  .dg-prospect-tabs {
    border-radius: 1rem;
    padding: .28rem;
    gap: .32rem;
  }
  .dg-app-tabs .nav-link,
  .dg-prospect-tabs .nav-link {
    min-height: 2.35rem;
    padding: .55rem .72rem !important;
    font-size: .78rem;
  }
}


/* =========================================================
   Step 10Z - Form/select validation cleanup and height parity
   ========================================================= */
.dg-app-select-wrap[data-dg-custom-select] {
  min-height: 3rem !important;
  border: 1px solid rgba(203, 213, 225, .82) !important;
  border-radius: 1.05rem !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 .75rem 1.9rem rgba(7, 26, 70, .035) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-app-select-control {
  min-height: calc(3rem - 2px) !important;
  padding-block: 0 !important;
}
input.form-control:not([type='checkbox']):not([type='radio']),
select.form-select,
.dg-admin-control:not(textarea),
.dg-tw-input {
  min-height: 3rem;
}
textarea.form-control,
textarea.dg-admin-control,
.dg-tw-textarea { min-height: initial; }
.form-label[data-dg-required-label='1']::after,
.dg-admin-label[data-dg-required-label='1']::after,
.dg-app-select-wrap__label[data-dg-required-label='1']::after,
.dg-tw-label[data-dg-required-label='1']::after {
  content: ' *';
  color: #ff4d5e;
  font-weight: 950;
}
.dg-app-select-wrap.is-invalid,
.dg-app-select-wrap[aria-invalid='true'] {
  border-color: rgba(255, 77, 94, .66) !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(255, 77, 94, .10), 0 .8rem 2rem rgba(255, 77, 94, .055) !important;
}
.dg-app-select-wrap.is-invalid .dg-app-select-control,
.dg-app-select-wrap[aria-invalid='true'] .dg-app-select-control {
  background: transparent !important;
}
.dg-app-select-wrap.is-invalid .dg-app-select-control .icon-base,
.dg-app-select-wrap[aria-invalid='true'] .dg-app-select-control .icon-base {
  color: #ff4d5e !important;
}

/* =========================================================
   Admin client create/edit - tabbed Tailwind-like form
   ========================================================= */
.dg-client-form-page {
  display: grid;
  gap: 1.35rem;
  min-width: 0;
}
.dg-client-form-hero {
  margin-bottom: .15rem;
}
.dg-client-form-alert {
  display: flex;
  align-items: flex-start;
  gap: .8rem;
  border-radius: 1.2rem;
  padding: 1rem 1.1rem;
  font-weight: 800;
  box-shadow: 0 1rem 2.5rem rgba(7,26,70,.08);
}
.dg-client-form-alert strong,
.dg-client-form-alert span {
  display: block;
}
.dg-client-form-alert span {
  margin-top: .18rem;
  font-size: .9rem;
  font-weight: 700;
}
.dg-client-form-alert--danger {
  color: #b91c1c;
  background: linear-gradient(135deg, rgba(254,226,226,.94), rgba(255,255,255,.86));
  border: 1px solid rgba(248,113,113,.28);
}
.dg-client-form-alert--success {
  color: #047857;
  background: linear-gradient(135deg, rgba(209,250,229,.94), rgba(255,255,255,.86));
  border: 1px solid rgba(16,185,129,.24);
}
.dg-client-form {
  display: grid;
  gap: 1rem;
  min-width: 0;
}
.dg-client-form-shell {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.65rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 28px 80px rgba(7,26,70,.11);
  overflow: visible;
}
.dg-client-form-tabs-wrap {
  padding: 1rem 1rem .35rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-client-tabs {
  display: flex;
  align-items: center;
  gap: .45rem;
  width: 100%;
  min-width: 0;
  padding: .35rem;
  overflow-x: auto;
  overflow-y: hidden;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(239,253,252,.72));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 .8rem 2rem rgba(7,26,70,.045);
  scrollbar-width: thin;
  scrollbar-color: rgba(0,201,189,.45) transparent;
}
.dg-client-tabs::-webkit-scrollbar { height: .35rem; }
.dg-client-tabs::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(0,201,189,.35); }
.dg-client-tab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: .45rem;
  min-height: 2.65rem;
  border: 0;
  border-radius: .9rem;
  padding: .62rem .95rem;
  color: #071b4d;
  background: transparent;
  font-size: .88rem;
  font-weight: 950;
  line-height: 1.1;
  white-space: nowrap;
  cursor: pointer;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.dg-client-tab i {
  color: #008f9a;
  font-size: 1.05rem;
}
.dg-client-tab:hover {
  color: #006e7c;
  background: rgba(0,201,189,.10);
}
.dg-client-tab.is-active {
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.22);
}
.dg-client-tab.is-active i { color: #fff; }
.dg-client-form-panels {
  min-width: 0;
  padding: 1.1rem;
}
.dg-client-panel {
  min-width: 0;
  display: grid;
  gap: 1.15rem;
}
.dg-client-panel[hidden] { display: none !important; }
.dg-client-panel__header {
  display: grid;
  gap: .32rem;
  max-width: 52rem;
}
.dg-client-panel__header h2,
.dg-client-panel-box h3,
.dg-client-panel-box__head h3 {
  margin: 0;
  color: #071b4d;
  font-size: 1.22rem;
  line-height: 1.18;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-client-panel__header p,
.dg-client-panel-box__head p {
  margin: 0;
  color: #64748b;
  line-height: 1.55;
}
.dg-client-panel-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: 1rem;
  align-items: start;
}
.dg-client-panel-grid--focus {
  grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr);
}
.dg-client-panel-box {
  min-width: 0;
  display: grid;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.78);
  padding: 1.1rem;
  box-shadow: 0 1rem 2.7rem rgba(7,26,70,.06);
}
.dg-client-panel-box__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
.dg-client-soft-badge,
.dg-client-info-pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 1.8rem;
  border-radius: 999px;
  padding: .4rem .72rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
  border: 1px solid rgba(0,201,189,.18);
  font-size: .75rem;
  font-weight: 950;
}
.dg-client-info-pill {
  margin: 0;
  width: 100%;
  justify-content: center;
}
.dg-client-info-pill--danger {
  color: #b91c1c;
  background: rgba(254,226,226,.82);
  border-color: rgba(248,113,113,.22);
}
.dg-client-inline-actions,
.dg-client-form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .65rem;
  min-width: 0;
}
.dg-client-form-actions {
  padding: .2rem 0 0;
}
.dg-client-check {
  margin-top: .2rem;
}
.dg-client-focus-status {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.92));
  padding: 1rem;
}
.dg-client-focus-status__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .9rem 1.8rem rgba(0,201,189,.18);
}
.dg-client-focus-status span:last-child {
  display: grid;
  gap: .18rem;
  min-width: 0;
}
.dg-client-focus-status strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-client-focus-status small {
  color: #64748b;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.dg-client-empty-box {
  display: grid;
  place-items: center;
  gap: .45rem;
  min-height: 11rem;
  text-align: center;
  border: 1px dashed rgba(15,36,72,.14);
  border-radius: 1.2rem;
  background: linear-gradient(135deg, rgba(248,250,252,.92), rgba(239,253,252,.64));
  padding: 1.25rem;
  color: #64748b;
}
.dg-client-empty-box i {
  display: inline-grid;
  place-items: center;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 1rem;
  color: #008f9a;
  background: rgba(0,201,189,.12);
  font-size: 1.25rem;
}
.dg-client-empty-box strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-client-purchases {
  display: grid;
  gap: .9rem;
  min-width: 0;
}
.dg-client-purchases__toolbar {
  display: flex;
  justify-content: flex-end;
}
.dg-client-purchases__target {
  min-width: 0;
}
.dg-client-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  min-height: 12rem;
  color: #64748b;
  font-weight: 900;
}
.dg-client-loading span {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 999px;
  border: 3px solid rgba(0,201,189,.18);
  border-top-color: #00c9bd;
  animation: dg-spin .78s linear infinite;
}
.dg-client-purchases-table th:nth-child(1) { width: 30% !important; }
.dg-client-purchases-table th:nth-child(2) { width: 16% !important; }
.dg-client-purchases-table th:nth-child(3) { width: 12% !important; }
.dg-client-purchases-table th:nth-child(4) { width: 13% !important; }
.dg-client-purchases-table th:nth-child(5) { width: 18% !important; }
.dg-client-purchases-table th:nth-child(6) { width: 11% !important; }
.dg-client-purchases__mobile { display: none; }
.dg-client-purchases__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .85rem;
  padding-top: .85rem;
  color: #71819b;
  font-size: .84rem;
  font-weight: 850;
}
.dg-client-purchases__footer > div {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  justify-content: flex-end;
}
.dg-client-purchases__footer .dg-tw-btn[disabled] {
  opacity: .45;
  pointer-events: none;
  box-shadow: none !important;
}
.dg-admin-field--wide-3 { grid-column: span 3; }
.dg-admin-field--wide-2 { grid-column: span 2; }
@media (max-width: 1199.98px) {
  .dg-client-panel-grid,
  .dg-client-panel-grid--focus {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 991.98px) {
  .dg-client-form-tabs-wrap,
  .dg-client-form-panels {
    padding-left: .85rem;
    padding-right: .85rem;
  }
  .dg-client-purchases__desktop { display: none; }
  .dg-client-purchases__mobile { display: block; }
}
@media (max-width: 767.98px) {
  .dg-client-form-page {
    gap: 1rem;
  }
  .dg-client-form-shell {
    border-radius: 1.25rem;
  }
  .dg-client-tab {
    min-height: 2.35rem;
    padding: .55rem .72rem;
    font-size: .78rem;
  }
  .dg-admin-form-grid--2 {
    grid-template-columns: 1fr;
  }
  .dg-admin-field,
  .dg-admin-field--wide-8,
  .dg-admin-field--wide-4,
  .dg-admin-field--wide-3,
  .dg-admin-field--wide-2 {
    grid-column: 1 / -1;
  }
  .dg-client-panel-box__head,
  .dg-client-purchases__footer,
  .dg-client-form-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .dg-client-purchases__toolbar,
  .dg-client-purchases__footer > div,
  .dg-client-form-actions .dg-tw-btn {
    width: 100%;
  }
  .dg-client-purchases__toolbar .dg-app-select-wrap,
  .dg-client-purchases__footer .dg-tw-btn {
    width: 100%;
  }
}
@keyframes dg-spin { to { transform: rotate(360deg); } }

/* DentalGenius Social settings — Tailwind-like module */
.dg-social-settings-page {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-social-settings-hero {
  min-height: 13rem;
}
.dg-social-settings-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-social-panel {
  overflow: visible;
}
.dg-social-panel--channels .dg-tw-panel__body,
.dg-social-panel--callbacks .dg-tw-panel__body {
  padding: 1.15rem;
}
.dg-social-channel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.dg-social-channel-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 1.35rem;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,252,255,.90)),
    radial-gradient(circle at 0 0, rgba(0,201,189,.10), transparent 18rem);
  box-shadow: 0 18px 52px rgba(7, 26, 70, .08);
  padding: 1rem;
}
.dg-social-channel-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .8rem;
  margin-bottom: 1rem;
}
.dg-social-channel-card__icon,
.dg-social-alert__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.85rem;
  height: 2.85rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 16px 34px rgba(0, 201, 189, .22);
}
.dg-social-channel-card__body {
  display: grid;
  gap: .85rem;
  flex: 1 1 auto;
  min-width: 0;
}
.dg-social-channel-card h3 {
  margin: 0;
  color: var(--dg-admin-navy);
  font-size: 1.08rem;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-social-channel-card__empty {
  margin: 0;
  color: #65748e;
  line-height: 1.5;
}
.dg-social-channel-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin-top: 1rem;
}
.dg-social-channel-card__actions form {
  min-width: 0;
}
.dg-social-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  width: fit-content;
  max-width: 100%;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: .42rem .62rem;
  font-size: .72rem;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .01em;
  white-space: nowrap;
}
.dg-social-badge--success {
  color: #027a48;
  border-color: rgba(16,185,129,.16);
  background: rgba(16,185,129,.13);
}
.dg-social-badge--danger {
  color: #b42318;
  border-color: rgba(239,68,68,.18);
  background: rgba(239,68,68,.12);
}
.dg-social-badge--warning {
  color: #a15c00;
  border-color: rgba(245,158,11,.20);
  background: rgba(245,158,11,.13);
}
.dg-social-badge--muted {
  color: #64748b;
  border-color: rgba(100,116,139,.16);
  background: rgba(100,116,139,.10);
}
.dg-social-meta-box {
  display: grid;
  gap: .18rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1rem;
  background: rgba(248,250,252,.80);
  padding: .75rem .85rem;
}
.dg-social-meta-box span,
.dg-social-meta-box small {
  min-width: 0;
  color: #71809a;
  line-height: 1.35;
}
.dg-social-meta-box strong {
  min-width: 0;
  color: var(--dg-admin-navy);
  font-weight: 950;
  overflow-wrap: anywhere;
}
.dg-social-meta-box code,
.dg-social-note code,
.dg-social-alert code {
  color: #00998f;
  font-weight: 850;
  overflow-wrap: anywhere;
}
.dg-social-note,
.dg-social-alert {
  display: flex;
  gap: .75rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  padding: .85rem .95rem;
  color: #50627f;
  line-height: 1.5;
}
.dg-social-note {
  display: grid;
  gap: .25rem;
  font-size: .84rem;
}
.dg-social-note--info,
.dg-social-alert--info {
  border-color: rgba(0,201,189,.16);
  background: rgba(0,201,189,.09);
}
.dg-social-note--success,
.dg-social-alert--success {
  border-color: rgba(16,185,129,.18);
  background: rgba(16,185,129,.10);
}
.dg-social-note--warning,
.dg-social-alert--warning {
  border-color: rgba(245,158,11,.22);
  background: rgba(245,158,11,.12);
}
.dg-social-alert--danger {
  border-color: rgba(239,68,68,.22);
  background: rgba(239,68,68,.10);
}
.dg-social-alert__body {
  display: grid;
  gap: .25rem;
  min-width: 0;
  color: #52627f;
}
.dg-social-alert__body strong {
  color: var(--dg-admin-navy);
}
.dg-social-status-list {
  display: grid;
  gap: .55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.dg-social-status-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1rem;
  background: rgba(248,250,252,.78);
  padding: .72rem .82rem;
}
.dg-social-status-list li > span:first-child {
  color: var(--dg-admin-navy);
  font-weight: 900;
}
.dg-social-note--standalone {
  margin-top: 1rem;
}
.dg-social-callback-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.dg-social-callback-grid .dg-admin-field {
  grid-column: auto;
}
.dg-admin-control--readonly {
  background: rgba(248,250,252,.90);
  color: #071b4d;
}
.dg-tw-btn--small {
  min-height: 2.35rem;
  padding: .58rem .82rem !important;
  font-size: .83rem;
}
.dg-tw-btn--danger-soft {
  color: #b42318 !important;
  background: rgba(239,68,68,.10) !important;
  border: 1px solid rgba(239,68,68,.16) !important;
  box-shadow: none !important;
}
.dg-tw-btn[disabled],
.dg-tw-btn:disabled {
  opacity: .55;
  cursor: not-allowed;
  filter: grayscale(.2);
}
@media (max-width: 1199.98px) {
  .dg-social-settings-layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .dg-social-settings-page {
    gap: 1rem;
  }
  .dg-social-channel-grid,
  .dg-social-callback-grid {
    grid-template-columns: 1fr;
  }
  .dg-social-panel--channels .dg-tw-panel__body,
  .dg-social-panel--callbacks .dg-tw-panel__body {
    padding: .85rem;
  }
  .dg-social-channel-card {
    border-radius: 1.15rem;
    padding: .85rem;
  }
  .dg-social-channel-card__actions,
  .dg-social-channel-card__actions form,
  .dg-social-channel-card__actions .dg-tw-btn {
    width: 100%;
  }
  .dg-social-alert {
    align-items: flex-start;
  }
  .dg-social-alert__icon {
    width: 2.45rem;
    height: 2.45rem;
    border-radius: .9rem;
  }
}

/* =========================================================
   Admin AI post create/edit - tabbed Tailwind-like form
   ========================================================= */
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: .38rem;
  min-width: 0;
  padding: .35rem .45rem !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: .38rem !important;
  max-width: 100%;
  margin: .12rem !important;
  padding: .22rem .54rem .22rem .72rem !important;
  overflow: hidden;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  order: 1;
  min-width: 0;
  max-width: 100%;
  padding: 0 !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  position: static !important;
  inset: auto !important;
  order: 2;
  flex: 0 0 1.15rem;
  margin: 0 0 0 .42rem !important;
}
.select2-container--default .select2-selection--multiple .select2-search--inline {
  margin: .12rem .2rem !important;
}
.select2-container--default .select2-selection--multiple .select2-search--inline .select2-search__field {
  min-height: 1.75rem;
  margin: 0 !important;
}

.dg-ai-post-form-page {
  display: grid;
  gap: 1.35rem;
  min-width: 0;
}
.dg-ai-post-form-hero {
  overflow: visible;
}
.dg-ai-post-form,
.dg-ai-post-form-shell {
  min-width: 0;
}
.dg-ai-post-form {
  display: grid;
  gap: 1.1rem;
}
.dg-ai-post-form-shell {
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.65rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 24px 72px rgba(7,26,70,.10);
  backdrop-filter: blur(18px);
  overflow: visible;
}
.dg-ai-post-form-tabs-wrap {
  padding: 1rem 1.1rem 0;
}
.dg-ai-post-tabs.dg-app-tabs {
  margin: 0 !important;
}
.dg-ai-post-form-panels {
  min-width: 0;
  padding: 1.1rem;
}
.dg-ai-post-panel {
  min-width: 0;
}
.dg-ai-post-panel.active {
  display: grid !important;
  gap: 1.15rem;
}
.dg-ai-post-panel__header {
  display: grid;
  gap: .34rem;
  max-width: 56rem;
}
.dg-ai-post-panel__header h2,
.dg-ai-post-section__head h3 {
  margin: 0;
  color: #071b4d;
  font-size: 1.22rem;
  line-height: 1.18;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-ai-post-panel__header p {
  margin: 0;
  color: #64748b;
  line-height: 1.55;
}
.dg-ai-post-section {
  min-width: 0;
  display: grid;
  gap: .95rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.78);
  padding: 1.1rem;
  box-shadow: 0 1rem 2.7rem rgba(7,26,70,.06);
}
.dg-ai-post-section--public-text textarea {
  min-height: 19rem;
}
.dg-ai-post-section__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .85rem;
  min-width: 0;
}
.dg-ai-post-section__head > div {
  min-width: 0;
  display: grid;
  gap: .35rem;
}
.dg-ai-post-alert,
.dg-ai-post-form-alert {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  padding: .95rem 1rem;
}
.dg-ai-post-alert > .icon-base {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  width: 2.3rem;
  height: 2.3rem;
  border-radius: .85rem;
  color: #008f9a;
  background: rgba(0,201,189,.12);
}
.dg-ai-post-alert > div,
.dg-ai-post-form-alert > div {
  display: grid;
  gap: .28rem;
  min-width: 0;
}
.dg-ai-post-alert strong,
.dg-ai-post-form-alert strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-post-alert span,
.dg-ai-post-form-alert span {
  color: #64748b;
  line-height: 1.5;
}
.dg-ai-post-alert a:not(.dg-tw-btn) {
  color: #008f9a;
  font-weight: 900;
}
.dg-ai-post-alert--info {
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.92));
}
.dg-ai-post-alert--soft-danger,
.dg-ai-post-form-alert--danger {
  border-color: rgba(255,77,94,.18);
  background: linear-gradient(135deg, rgba(255,77,94,.08), rgba(255,255,255,.94));
}
.dg-ai-post-alert--soft-danger > .icon-base {
  color: #dc2626;
  background: rgba(255,77,94,.12);
}
.dg-ai-post-form-alert--danger {
  color: #b42318;
}
.dg-ai-post-select-wrap .select2-container {
  width: 100% !important;
}
.dg-ai-post-select-wrap .select2-container--default .select2-selection--single,
.dg-ai-post-select-wrap .select2-container--default .select2-selection--multiple {
  min-height: 3rem !important;
  border: 1px solid rgba(15,36,72,.12) !important;
  border-radius: 1.08rem !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045) !important;
}
.dg-ai-post-select-wrap .select2-container--default .select2-selection--single .select2-selection__rendered {
  min-height: calc(3rem - 2px);
  padding: .82rem 2.4rem .82rem 1rem !important;
  color: #071b4d !important;
  font-weight: 800;
  line-height: 1.25 !important;
}
.dg-ai-post-select-wrap .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: calc(3rem - 2px) !important;
  right: .7rem !important;
}
.dg-ai-post-select-wrap .select2-container--default.select2-container--focus .select2-selection,
.dg-ai-post-select-wrap .select2-container--default.select2-container--open .select2-selection {
  border-color: rgba(0,201,189,.42) !important;
  box-shadow: 0 0 0 4px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08) !important;
}
.dg-ai-post-readonly-pill {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  min-height: 3rem;
  width: 100%;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.08rem;
  background: rgba(248,250,252,.9);
  color: #64748b;
  padding: .82rem 1rem;
  font-weight: 850;
}
.dg-ai-post-quill {
  min-height: 26rem;
  border: 1px solid rgba(15,36,72,.12) !important;
  border-radius: 1.15rem;
  background: #fff;
  overflow: hidden;
}
.dg-ai-post-form .ql-toolbar.ql-snow {
  border-color: rgba(15,36,72,.12) !important;
  border-radius: 1.15rem 1.15rem 0 0;
  background: rgba(248,250,252,.86);
}
.dg-ai-post-form .ql-container.ql-snow {
  min-height: 22rem;
  border-color: rgba(15,36,72,.12) !important;
  border-radius: 0 0 1.15rem 1.15rem;
  background: #fff;
}
.dg-ai-post-form .ql-editor {
  min-height: 22rem;
  color: #071b4d;
  font-size: .95rem;
  line-height: 1.65;
}
.dg-ai-post-option-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.dg-ai-post-radio-card {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.2rem;
  background: rgba(255,255,255,.86);
  padding: 1rem;
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}
.dg-ai-post-radio-card:hover {
  border-color: rgba(0,201,189,.24);
  background: rgba(239,253,252,.72);
}
.dg-ai-post-radio-card.is-selected {
  border-color: rgba(0,201,189,.52);
  background: linear-gradient(135deg, rgba(0,201,189,.12), rgba(255,255,255,.94));
  box-shadow: 0 1rem 2.4rem rgba(0,201,189,.12);
}
.dg-ai-post-radio-card input {
  appearance: none;
  flex: 0 0 1.12rem;
  width: 1.12rem;
  height: 1.12rem;
  margin-top: .18rem;
  border: 2px solid rgba(15,36,72,.18);
  border-radius: 999px;
  background: #fff;
  box-shadow: inset 0 0 0 3px #fff;
}
.dg-ai-post-radio-card input:checked {
  border-color: #00aebd;
  background: #00c9bd;
}
.dg-ai-post-radio-card__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 2.55rem;
  width: 2.55rem;
  height: 2.55rem;
  border-radius: .95rem;
  color: #008f9a;
  background: rgba(0,201,189,.12);
}
.dg-ai-post-radio-card > span:last-child {
  display: grid;
  gap: .2rem;
  min-width: 0;
}
.dg-ai-post-radio-card strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-post-radio-card small {
  color: #64748b;
  line-height: 1.45;
}
.dg-ai-post-media-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr);
  gap: 1rem;
  align-items: start;
  min-width: 0;
}
.dg-ai-post-image-preview {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.2rem;
  background: rgba(248,250,252,.82);
  padding: .55rem;
  overflow: hidden;
}
.dg-ai-post-image-preview img {
  display: block;
  width: 100%;
  max-height: 26rem;
  object-fit: cover;
  border-radius: .95rem;
}
.dg-ai-post-candidates {
  display: grid;
  gap: .75rem;
}
.dg-ai-post-candidate {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.1rem;
  background: rgba(255,255,255,.78);
  padding: .85rem;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.dg-ai-post-candidate:hover,
.dg-ai-post-candidate:has(input:checked) {
  border-color: rgba(0,201,189,.45);
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.92));
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.10);
}
.dg-ai-post-candidate input {
  appearance: none;
  flex: 0 0 1rem;
  width: 1rem;
  height: 1rem;
  margin-top: .35rem;
  border: 2px solid rgba(15,36,72,.18);
  border-radius: 999px;
  background: #fff;
  box-shadow: inset 0 0 0 3px #fff;
}
.dg-ai-post-candidate input:checked {
  border-color: #00aebd;
  background: #00c9bd;
}
.dg-ai-post-candidate img,
.dg-ai-post-candidate__placeholder {
  flex: 0 0 4.5rem;
  width: 4.5rem;
  height: 4.5rem;
  border-radius: .9rem;
}
.dg-ai-post-candidate img {
  object-fit: cover;
  border: 1px solid rgba(15,36,72,.10);
}
.dg-ai-post-candidate__placeholder {
  display: inline-grid;
  place-items: center;
  color: #008f9a;
  background: rgba(0,201,189,.12);
}
.dg-ai-post-candidate > span:last-child {
  display: grid;
  gap: .15rem;
  min-width: 0;
}
.dg-ai-post-candidate strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-post-candidate small {
  color: #64748b;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.dg-ai-post-form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .65rem;
}

@media (max-width: 1199.98px) {
  .dg-ai-post-media-layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 991.98px) {
  .dg-ai-post-form-tabs-wrap,
  .dg-ai-post-form-panels {
    padding-left: .85rem;
    padding-right: .85rem;
  }
  .dg-ai-post-option-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .dg-ai-post-form-page {
    gap: 1rem;
  }
  .dg-ai-post-form-shell {
    border-radius: 1.25rem;
  }
  .dg-ai-post-section,
  .dg-ai-post-alert,
  .dg-ai-post-form-alert {
    border-radius: 1.05rem;
    padding: .9rem;
  }
  .dg-ai-post-section__head,
  .dg-ai-post-form-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .dg-ai-post-form-actions .dg-tw-btn,
  .dg-ai-post-section__head .dg-tw-btn {
    width: 100%;
  }
  .dg-ai-post-radio-card,
  .dg-ai-post-candidate {
    gap: .65rem;
  }
  .dg-ai-post-candidate img,
  .dg-ai-post-candidate__placeholder {
    flex-basis: 3.8rem;
    width: 3.8rem;
    height: 3.8rem;
  }
  .select2-container--default .select2-selection--multiple .select2-selection__choice {
    max-width: calc(100vw - 5rem);
  }
}
.dg-ai-post-media-layout--single {
  grid-template-columns: 1fr;
}

/* =========================================================
   Admin AI Agent configuration - tabbed Tailwind-like form
   ========================================================= */
.dg-ai-agent-page {
  display: grid;
  gap: 1.35rem;
  min-width: 0;
}
.dg-ai-agent-hero {
  min-height: 13.5rem;
}
.dg-tw-pill--muted {
  color: #64748b !important;
  background: rgba(100,116,139,.12) !important;
  border-color: rgba(100,116,139,.16) !important;
}
.dg-ai-agent-alert {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border-radius: 1.2rem;
  padding: 1rem 1.1rem;
  box-shadow: 0 1rem 2.6rem rgba(7,26,70,.08);
}
.dg-ai-agent-alert__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: .95rem;
  color: #fff;
  box-shadow: 0 .9rem 1.8rem rgba(7,26,70,.14);
}
.dg-ai-agent-alert strong,
.dg-ai-agent-alert span:not(.dg-ai-agent-alert__icon) {
  display: block;
}
.dg-ai-agent-alert strong {
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.015em;
}
.dg-ai-agent-alert span:not(.dg-ai-agent-alert__icon) {
  margin-top: .16rem;
  color: #64748b;
  font-size: .9rem;
  font-weight: 760;
  line-height: 1.4;
}
.dg-ai-agent-alert--success {
  background: linear-gradient(135deg, rgba(209,250,229,.94), rgba(255,255,255,.88));
  border: 1px solid rgba(16,185,129,.24);
}
.dg-ai-agent-alert--success .dg-ai-agent-alert__icon {
  background: linear-gradient(135deg, #14b87a, #00c9bd);
}
.dg-ai-agent-alert--danger {
  background: linear-gradient(135deg, rgba(254,226,226,.96), rgba(255,255,255,.88));
  border: 1px solid rgba(248,113,113,.28);
}
.dg-ai-agent-alert--danger .dg-ai-agent-alert__icon {
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d);
}
.dg-ai-agent-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.dg-ai-agent-stat {
  display: grid;
  gap: .75rem;
  min-width: 0;
  min-height: 11rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.55rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 24px 72px rgba(7,26,70,.10);
  padding: 1rem;
  backdrop-filter: blur(16px);
  overflow: hidden;
}
.dg-ai-agent-stat__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .7rem;
}
.dg-ai-agent-stat__icon,
.dg-ai-agent-stat__icon-btn {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.7rem;
  height: 2.7rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2.1rem rgba(0,201,189,.22);
}
.dg-ai-agent-stat__icon-btn {
  width: 2.3rem;
  height: 2.3rem;
  border: 0;
  color: #027b83;
  background: rgba(0,201,189,.10);
  box-shadow: none;
  cursor: pointer;
}
.dg-ai-agent-stat__icon-btn:hover {
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
}
.dg-ai-agent-stat strong {
  display: block;
  color: #071b4d;
  font-size: clamp(1.05rem, 1.6vw, 1.35rem);
  font-weight: 950;
  letter-spacing: -.03em;
  line-height: 1.12;
  overflow-wrap: anywhere;
}
.dg-ai-agent-stat > small,
.dg-ai-agent-stat > span,
.dg-ai-agent-stat > em {
  display: block;
  color: #64748b;
  font-size: .82rem;
  font-weight: 780;
  line-height: 1.38;
}
.dg-ai-agent-stat > em {
  color: #b45309;
  font-style: normal;
}
.dg-ai-agent-stat__icon > i,
.dg-ai-agent-stat__icon-btn > i {
  font-size: 1.18rem;
  line-height: 1;
}
.dg-ai-agent-stat.is-blue .dg-ai-agent-stat__icon { background: linear-gradient(135deg, #2d6bff, #00a7d8); box-shadow: 0 1rem 2.1rem rgba(45,107,255,.20); }
.dg-ai-agent-stat.is-warning .dg-ai-agent-stat__icon { background: linear-gradient(135deg, #f59e0b, #f97316); box-shadow: 0 1rem 2.1rem rgba(245,158,11,.18); }
.dg-ai-agent-stat.is-danger .dg-ai-agent-stat__icon { background: linear-gradient(135deg, #ff4d5e, #ff8a4d); box-shadow: 0 1rem 2.1rem rgba(255,77,94,.20); }
.dg-ai-agent-stat.is-muted .dg-ai-agent-stat__icon { background: linear-gradient(135deg, #64748b, #334155); box-shadow: 0 1rem 2.1rem rgba(51,65,85,.14); }
.dg-ai-agent-info-panel,
.dg-ai-agent-warning-card,
.dg-ai-agent-mini-note {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 1.35rem;
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.90));
  box-shadow: 0 1rem 2.7rem rgba(7,26,70,.06);
  padding: 1rem 1.1rem;
}
.dg-ai-agent-info-panel__icon,
.dg-ai-agent-warning-card > i,
.dg-ai-agent-mini-note > i {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .9rem 1.8rem rgba(0,201,189,.18);
}
.dg-ai-agent-info-panel strong,
.dg-ai-agent-warning-card strong {
  display: block;
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.018em;
}
.dg-ai-agent-info-panel p,
.dg-ai-agent-warning-card span {
  margin: .25rem 0 0;
  color: #64748b;
  font-size: .9rem;
  line-height: 1.58;
}
.dg-ai-agent-warning-card {
  border-color: rgba(245,158,11,.18);
  background: linear-gradient(135deg, rgba(255,247,237,.92), rgba(255,255,255,.88));
}
.dg-ai-agent-warning-card > i {
  background: linear-gradient(135deg, #f59e0b, #f97316);
  box-shadow: 0 .9rem 1.8rem rgba(245,158,11,.18);
}
.dg-ai-agent-mini-note {
  align-items: center;
  border-color: rgba(15,36,72,.10);
  background: rgba(248,250,252,.80);
  color: #64748b;
  font-weight: 850;
  padding: .85rem .95rem;
}
.dg-ai-agent-mini-note > i {
  width: 2rem;
  height: 2rem;
  border-radius: .75rem;
  background: linear-gradient(135deg, #64748b, #334155);
  box-shadow: none;
}
.dg-ai-agent-form {
  display: grid;
  gap: 1rem;
  min-width: 0;
}
.dg-ai-agent-shell {
  overflow: visible;
}
.dg-ai-agent-panels {
  min-width: 0;
}
.dg-ai-agent-panels [hidden],
.js-ai-schedule-field[hidden] {
  display: none !important;
}
.dg-admin-control--select {
  appearance: auto;
  cursor: pointer;
  padding-right: 2.5rem;
}
.dg-ai-agent-switch {
  display: flex;
  align-items: flex-start;
  gap: .9rem;
  min-width: 0;
  width: 100%;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.94));
  box-shadow: 0 .9rem 2.3rem rgba(7,26,70,.045);
  padding: 1rem;
  cursor: pointer;
}
.dg-ai-agent-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.dg-ai-agent-switch__control {
  position: relative;
  flex: 0 0 auto;
  width: 3.2rem;
  height: 1.8rem;
  border-radius: 999px;
  background: rgba(100,116,139,.24);
  box-shadow: inset 0 0 0 1px rgba(15,36,72,.08);
  transition: background .18s ease, box-shadow .18s ease;
}
.dg-ai-agent-switch__control::after {
  content: '';
  position: absolute;
  top: .22rem;
  left: .24rem;
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 .35rem .9rem rgba(7,26,70,.18);
  transition: transform .18s ease;
}
.dg-ai-agent-switch input:checked + .dg-ai-agent-switch__control {
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .6rem 1.4rem rgba(0,201,189,.20);
}
.dg-ai-agent-switch input:checked + .dg-ai-agent-switch__control::after {
  transform: translateX(1.35rem);
}
.dg-ai-agent-switch input:focus-visible + .dg-ai-agent-switch__control {
  box-shadow: 0 0 0 4px rgba(0,201,189,.12), 0 .6rem 1.4rem rgba(0,201,189,.14);
}
.dg-ai-agent-switch strong {
  display: block;
  color: #071b4d;
  font-weight: 950;
  line-height: 1.2;
}
.dg-ai-agent-switch small {
  display: block;
  margin-top: .2rem;
  color: #64748b;
  font-size: .82rem;
  line-height: 1.45;
}
.dg-ai-agent-switch--warning {
  border-color: rgba(245,158,11,.18);
  background: linear-gradient(135deg, rgba(255,247,237,.92), rgba(255,255,255,.94));
}
.dg-ai-money-field {
  position: relative;
  display: block;
  min-width: 0;
}
.dg-ai-money-field > b {
  position: absolute;
  top: 50%;
  left: 1rem;
  z-index: 2;
  color: #64748b;
  font-size: .9rem;
  font-weight: 950;
  transform: translateY(-50%);
  pointer-events: none;
}
.dg-ai-money-field .dg-admin-control {
  padding-left: 2.35rem;
}
.dg-ai-agent-credit-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
}
.dg-ai-agent-credit-summary > div {
  display: grid;
  gap: .25rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.15rem;
  background: rgba(248,250,252,.84);
  padding: .9rem;
}
.dg-ai-agent-credit-summary span {
  color: #64748b;
  font-size: .76rem;
  font-weight: 900;
}
.dg-ai-agent-credit-summary strong {
  color: #071b4d;
  font-size: 1.08rem;
  font-weight: 950;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}
.dg-ai-agent-code-control {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
  font-size: .88rem;
  font-weight: 650;
  line-height: 1.6;
}
.dg-ai-agent-form-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 1rem 2.7rem rgba(7,26,70,.07);
  padding: .95rem 1rem;
}
.dg-ai-agent-form-actions > span {
  color: #64748b;
  font-size: .86rem;
  font-weight: 820;
  line-height: 1.35;
}
@media (max-width: 1199.98px) {
  .dg-ai-agent-stat-grid,
  .dg-ai-agent-credit-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767.98px) {
  .dg-ai-agent-page {
    gap: 1rem;
  }
  .dg-ai-agent-stat-grid,
  .dg-ai-agent-credit-summary {
    grid-template-columns: 1fr;
  }
  .dg-ai-agent-stat {
    min-height: 9.5rem;
    border-radius: 1.35rem;
  }
  .dg-ai-agent-info-panel,
  .dg-ai-agent-warning-card,
  .dg-ai-agent-mini-note,
  .dg-ai-agent-alert {
    border-radius: 1.15rem;
    padding: .9rem;
  }
  .dg-ai-agent-switch {
    border-radius: 1.1rem;
    padding: .9rem;
  }
  .dg-ai-agent-form-actions {
    align-items: stretch;
    flex-direction: column;
    border-radius: 1.15rem;
  }
  .dg-ai-agent-form-actions .dg-tw-btn {
    width: 100%;
  }
}
.dg-tw-chip {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 1.65rem;
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  padding: .36rem .62rem;
  font-size: .68rem;
  font-weight: 950;
  letter-spacing: .045em;
  line-height: 1;
  text-transform: uppercase;
}

/* =========================================================
   Shared admin Tailwind-like alerts + form select refinements
   ========================================================= */
.dg-admin-alert {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.2rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 1rem 2.6rem rgba(7,26,70,.08);
  padding: 1rem 1.1rem;
}
.dg-admin-alert__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .9rem 1.8rem rgba(7,26,70,.14);
}
.dg-admin-alert__body {
  min-width: 0;
  color: #64748b;
  font-size: .9rem;
  font-weight: 760;
  line-height: 1.45;
}
.dg-admin-alert__body strong,
.dg-admin-alert__body span {
  display: block;
}
.dg-admin-alert__body strong {
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.015em;
}
.dg-admin-alert__body span {
  margin-top: .16rem;
}
.dg-admin-alert--success {
  border-color: rgba(16,185,129,.24);
  background: linear-gradient(135deg, rgba(209,250,229,.94), rgba(255,255,255,.88));
}
.dg-admin-alert--success .dg-admin-alert__icon {
  background: linear-gradient(135deg, #14b87a, #00c9bd);
}
.dg-admin-alert--danger {
  border-color: rgba(248,113,113,.28);
  background: linear-gradient(135deg, rgba(254,226,226,.96), rgba(255,255,255,.88));
}
.dg-admin-alert--danger .dg-admin-alert__icon {
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d);
}
.dg-admin-alert--warning {
  border-color: rgba(245,158,11,.24);
  background: linear-gradient(135deg, rgba(255,247,237,.95), rgba(255,255,255,.88));
}
.dg-admin-alert--warning .dg-admin-alert__icon {
  background: linear-gradient(135deg, #f59e0b, #f97316);
}
.dg-admin-alert--info {
  border-color: rgba(0,201,189,.18);
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.90));
}
.dg-admin-alert--compact {
  border-radius: 1rem;
  box-shadow: none;
  padding: .85rem;
}
.dg-admin-alert--compact .dg-admin-alert__icon {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: .78rem;
  box-shadow: 0 .65rem 1.2rem rgba(0,201,189,.16);
}
.dg-admin-control--uppercase {
  text-transform: uppercase;
  letter-spacing: .035em;
}
.dg-admin-select2-wrap {
  position: relative;
  min-width: 0;
}
.dg-admin-select2-wrap .select2-container {
  width: 100% !important;
}
.dg-admin-select2-wrap .select2-container--default .select2-selection--single,
.dg-admin-select2-wrap .select2-container--default .select2-selection--multiple {
  min-height: 3.25rem;
  border: 1px solid rgba(15,36,72,.12) !important;
  border-radius: 1.08rem !important;
  background: rgba(255,255,255,.92) !important;
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045) !important;
}
.dg-admin-select2-wrap .select2-container--default.select2-container--focus .select2-selection,
.dg-admin-select2-wrap .select2-container--default.select2-container--open .select2-selection {
  border-color: rgba(0,201,189,.42) !important;
  box-shadow: 0 0 0 4px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08) !important;
}
.dg-admin-select2-wrap .select2-container--default .select2-selection--multiple .select2-selection__rendered {
  min-height: 3.15rem;
  padding: .44rem .55rem !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  display: inline-flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: .38rem !important;
  max-width: min(100%, 18rem);
  overflow: hidden;
  padding: .22rem .56rem .22rem .72rem !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  order: 1 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  order: 2 !important;
  flex: 0 0 1.15rem !important;
  margin: 0 0 0 .48rem !important;
  transform: none !important;
}
@media (max-width: 767.98px) {
  .dg-admin-alert {
    border-radius: 1.1rem;
    padding: .9rem;
  }
  .dg-admin-alert__icon {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: .82rem;
  }
}


/* =========================================================
   Global Select2 chips + branded time picker refinements
   ========================================================= */
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: .4rem !important;
  min-width: 0 !important;
  width: 100% !important;
  padding: .42rem .52rem !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear {
  position: static !important;
  inset: auto !important;
  display: inline-grid !important;
  place-items: center !important;
  order: 1000 !important;
  flex: 0 0 1.65rem !important;
  width: 1.65rem !important;
  height: 1.65rem !important;
  min-width: 1.65rem !important;
  margin: .1rem .08rem .1rem auto !important;
  border: 1px solid rgba(248,113,113,.18) !important;
  border-radius: .68rem !important;
  color: #fb7185 !important;
  background: linear-gradient(135deg, rgba(254,226,226,.92), rgba(255,255,255,.94)) !important;
  box-shadow: 0 .35rem .9rem rgba(248,113,113,.10) !important;
  cursor: pointer !important;
  float: none !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  opacity: 1 !important;
  transition: transform .16s ease, color .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear > span {
  display: none !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear::before {
  content: '×';
  display: block;
  color: currentColor;
  font-size: 1.05rem;
  font-weight: 950;
  line-height: 1;
  transform: translateY(-.03rem);
}
.select2-container--default .select2-selection--multiple .select2-selection__clear:hover {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d) !important;
  box-shadow: 0 .65rem 1.25rem rgba(255,77,94,.20) !important;
  transform: translateY(-1px);
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: .38rem !important;
  max-width: min(100%, 24rem) !important;
  min-height: 1.9rem !important;
  margin: .08rem !important;
  padding: .23rem .3rem .23rem .72rem !important;
  overflow: visible !important;
  white-space: nowrap !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  order: 1 !important;
  min-width: 0 !important;
  max-width: calc(100% - 1.55rem) !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  position: static !important;
  inset: auto !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: inline-grid !important;
  place-items: center !important;
  order: 2 !important;
  flex: 0 0 1.24rem !important;
  width: 1.24rem !important;
  height: 1.24rem !important;
  min-width: 1.24rem !important;
  margin: 0 0 0 .28rem !important;
  border: 1px solid rgba(7,27,77,.08) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #071b4d, #00aebd) !important;
  box-shadow: 0 .35rem .75rem rgba(7,26,70,.16) !important;
  opacity: 1 !important;
  padding: 0 !important;
  font-size: 0 !important;
  line-height: 1 !important;
  transform: none !important;
  cursor: pointer !important;
  z-index: 2 !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove > span {
  display: none !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove::before {
  content: '×';
  color: #fff;
  font-size: .92rem;
  font-weight: 950;
  line-height: 1;
  transform: translateY(-.035rem);
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d) !important;
  box-shadow: 0 .45rem .9rem rgba(255,77,94,.20) !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover::before {
  color: #fff !important;
}

.dg-time-picker-control,
input.dg-time-picker-control {
  cursor: pointer;
  padding-right: 2.8rem !important;
  background-image: linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,253,253,.92)), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2300a7b5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1rem center !important;
  background-size: auto, 1.15rem 1.15rem !important;
}
.flatpickr-calendar.dg-flatpickr,
.flatpickr-calendar.dg-flatpickr--time,
.flatpickr-calendar.open {
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: 1.15rem !important;
  background: rgba(255,255,255,.98) !important;
  box-shadow: 0 1.4rem 3rem rgba(7,26,70,.16), inset 0 1px 0 rgba(255,255,255,.88) !important;
  overflow: hidden !important;
}
.flatpickr-calendar.dg-flatpickr::before,
.flatpickr-calendar.dg-flatpickr::after,
.flatpickr-calendar.dg-flatpickr--time::before,
.flatpickr-calendar.dg-flatpickr--time::after {
  border-bottom-color: rgba(255,255,255,.98) !important;
  border-top-color: rgba(255,255,255,.98) !important;
}
.flatpickr-calendar .flatpickr-months,
.flatpickr-calendar .flatpickr-weekdays {
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(45,107,255,.06)) !important;
}
.flatpickr-calendar .flatpickr-month,
.flatpickr-calendar .flatpickr-weekday {
  color: #071b4d !important;
  background: transparent !important;
  font-weight: 900 !important;
}
.flatpickr-calendar .flatpickr-day {
  border-radius: .72rem !important;
  color: #071b4d !important;
  font-weight: 750 !important;
}
.flatpickr-calendar .flatpickr-day:hover,
.flatpickr-calendar .flatpickr-day:focus {
  border-color: rgba(0,201,189,.18) !important;
  background: rgba(0,201,189,.10) !important;
}
.flatpickr-calendar .flatpickr-day.today {
  border-color: rgba(0,201,189,.42) !important;
}
.flatpickr-calendar .flatpickr-day.selected,
.flatpickr-calendar .flatpickr-day.startRange,
.flatpickr-calendar .flatpickr-day.endRange {
  border-color: transparent !important;
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
  box-shadow: 0 .45rem 1rem rgba(0,201,189,.22) !important;
}
.flatpickr-calendar .flatpickr-time {
  min-height: 4rem !important;
  border-top: 1px solid rgba(15,36,72,.08) !important;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,253,252,.92)) !important;
  padding: .55rem .65rem !important;
}
.flatpickr-calendar .flatpickr-time input,
.flatpickr-calendar .flatpickr-time .flatpickr-am-pm {
  height: 2.5rem !important;
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: .85rem !important;
  color: #071b4d !important;
  background: #fff !important;
  font-size: 1rem !important;
  font-weight: 950 !important;
  line-height: 2.5rem !important;
  box-shadow: 0 .45rem 1.1rem rgba(7,26,70,.06) !important;
}
.flatpickr-calendar .flatpickr-time input:hover,
.flatpickr-calendar .flatpickr-time input:focus,
.flatpickr-calendar .flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-calendar .flatpickr-time .flatpickr-am-pm:focus {
  border-color: rgba(0,201,189,.38) !important;
  background: rgba(0,201,189,.06) !important;
  box-shadow: 0 0 0 4px rgba(0,201,189,.08) !important;
}
.flatpickr-calendar .flatpickr-time .numInputWrapper span.arrowUp,
.flatpickr-calendar .flatpickr-time .numInputWrapper span.arrowDown {
  border-color: transparent !important;
  opacity: .72 !important;
}
.flatpickr-calendar.dg-flatpickr--time {
  width: 12rem !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time {
  border-top: 0 !important;
}

.dg-money-field {
  position: relative;
  display: block;
  min-width: 0;
}
.dg-money-field > b {
  position: absolute;
  top: 50%;
  left: 1rem;
  z-index: 2;
  color: #64748b;
  font-size: .9rem;
  font-weight: 950;
  transform: translateY(-50%);
  pointer-events: none;
}
.dg-money-field .dg-admin-control {
  padding-left: 2.35rem !important;
}
.dg-product-plan-layout {
  grid-template-columns: minmax(0, 1fr) minmax(17rem, 22rem);
}
.dg-product-plan-switches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
}
@media (max-width: 1199.98px) {
  .dg-product-plan-layout,
  .dg-product-plan-switches {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .flatpickr-calendar.dg-flatpickr--time {
    width: 11.5rem !important;
  }
}

/* =========================================================
   Step 10AA - Select2 close buttons, time picker steppers and Focus Tailwind tabs/dashboard
   ========================================================= */
.select2-container--default .select2-selection--multiple .select2-selection__clear {
  align-self: center !important;
  width: 1.55rem !important;
  height: 1.55rem !important;
  min-width: 1.55rem !important;
  flex-basis: 1.55rem !important;
  margin: .08rem .12rem .08rem auto !important;
  border-color: rgba(15,36,72,.10) !important;
  color: #64748b !important;
  background: linear-gradient(135deg, rgba(248,250,252,.96), rgba(255,255,255,.96)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.82), 0 .35rem .75rem rgba(7,26,70,.07) !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear::before,
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove::before {
  content: '' !important;
  display: block !important;
  width: .58rem !important;
  height: .58rem !important;
  background: currentColor !important;
  transform: none !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove::before {
  color: inherit !important;
  background: #fff !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover::before {
  background: #fff !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear:hover {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d) !important;
}

.flatpickr-calendar.dg-flatpickr--time {
  width: 15.4rem !important;
  border-radius: 1.2rem !important;
  overflow: visible !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .42rem !important;
  min-height: 5rem !important;
  padding: .78rem !important;
  border-radius: 1.2rem !important;
  overflow: visible !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper {
  position: relative !important;
  display: inline-flex !important;
  align-items: stretch !important;
  width: 5.3rem !important;
  height: 3rem !important;
  border: 1px solid rgba(15,36,72,.10) !important;
  border-radius: .95rem !important;
  background: #fff !important;
  box-shadow: 0 .55rem 1.2rem rgba(7,26,70,.08) !important;
  overflow: hidden !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time input.flatpickr-hour,
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time input.flatpickr-minute {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 1.45rem 0 .7rem !important;
  text-align: center !important;
  line-height: 3rem !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .flatpickr-time-separator {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: .6rem !important;
  height: 3rem !important;
  color: #00a7b5 !important;
  font-weight: 950 !important;
  line-height: 3rem !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowUp,
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowDown {
  position: absolute !important;
  right: 0 !important;
  display: grid !important;
  place-items: center !important;
  width: 1.42rem !important;
  height: 50% !important;
  min-height: 1.5rem !important;
  padding: 0 !important;
  border: 0 !important;
  border-left: 1px solid rgba(15,36,72,.08) !important;
  background: linear-gradient(135deg, rgba(239,253,252,.96), rgba(255,255,255,.96)) !important;
  color: #008f9a !important;
  opacity: 1 !important;
  cursor: pointer !important;
  transition: color .16s ease, background .16s ease;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowUp {
  top: 0 !important;
  border-bottom: 1px solid rgba(15,36,72,.06) !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowDown {
  bottom: 0 !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowUp::after,
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowDown::after {
  content: '' !important;
  display: block !important;
  width: .52rem !important;
  height: .52rem !important;
  margin: 0 !important;
  border: 0 !important;
  background: currentColor !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowUp::after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 15 6-6 6 6'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 15 6-6 6 6'/%3E%3C/svg%3E") !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowDown::after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
}
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowUp:hover,
.flatpickr-calendar.dg-flatpickr--time .flatpickr-time .numInputWrapper span.arrowDown:hover {
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
}

.dg-focus-admin-shell--tw {
  display: grid;
  gap: 1rem;
  margin-bottom: 1.35rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.65rem;
  background: radial-gradient(circle at 8% 10%, rgba(0,201,189,.18), transparent 32%), radial-gradient(circle at 96% 86%, rgba(0,167,216,.14), transparent 30%), rgba(255,255,255,.90);
  box-shadow: 0 28px 80px rgba(7,26,70,.11);
  padding: 1.2rem;
  backdrop-filter: blur(18px);
}
.dg-focus-admin-layout {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
}
.dg-focus-admin-heading {
  display: flex;
  align-items: flex-start;
  gap: .9rem;
  min-width: 0;
}
.dg-focus-admin-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 3.1rem;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 1rem;
  color: #00a7b5;
  background: linear-gradient(135deg, rgba(0,201,189,.18), rgba(255,255,255,.65));
  box-shadow: inset 0 0 0 1px rgba(0,201,189,.14);
}
.dg-focus-admin-icon i { font-size: 1.35rem; }
.dg-focus-admin-heading h2 {
  margin: .45rem 0 .2rem;
  color: #071b4d;
  font-size: clamp(1.35rem, 2vw, 1.7rem);
  font-weight: 950;
  letter-spacing: -.035em;
  line-height: 1.05;
}
.dg-focus-admin-heading p {
  margin: 0;
  max-width: 50rem;
  color: #64748b;
  font-size: .96rem;
  font-weight: 720;
  line-height: 1.5;
}
.dg-focus-admin-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .55rem;
  min-width: min(100%, 28rem);
}
.dg-focus-admin-nav {
  display: flex !important;
  align-items: center;
  gap: .45rem;
  width: 100%;
  min-width: 0;
  padding: .35rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(239,253,252,.72));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 .8rem 2rem rgba(7,26,70,.045);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(0,201,189,.45) transparent;
}
.dg-focus-admin-nav::-webkit-scrollbar { height: .35rem; }
.dg-focus-admin-nav::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(0,201,189,.35); }
.dg-focus-admin-nav-link {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: .45rem;
  min-height: 2.65rem;
  border: 0 !important;
  border-radius: .9rem !important;
  padding: .62rem .95rem !important;
  color: #071b4d !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: .88rem;
  font-weight: 950;
  line-height: 1.1;
  white-space: nowrap;
  text-decoration: none !important;
}
.dg-focus-admin-nav-link i {
  color: #008f9a;
  font-size: 1.05rem;
}
.dg-focus-admin-nav-link:hover {
  color: #006e7c !important;
  background: rgba(0,201,189,.10) !important;
}
.dg-focus-admin-nav-link.active,
.dg-focus-admin-nav-link[aria-current='page'] {
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.22) !important;
}
.dg-focus-admin-nav-link.active i,
.dg-focus-admin-nav-link[aria-current='page'] i { color: #fff !important; }

.dg-focus-dashboard-page {
  display: grid;
  gap: 1.25rem;
}
.dg-focus-dashboard-stats,
.dg-focus-dashboard-metrics,
.dg-focus-dashboard-lists,
.dg-focus-dashboard-actions-grid {
  display: grid;
  gap: 1rem;
  min-width: 0;
}
.dg-focus-dashboard-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dg-focus-dashboard-lists,
.dg-focus-dashboard-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.dg-focus-dashboard-layout {
  display: grid;
  gap: 1rem;
  align-items: stretch;
  min-width: 0;
}
.dg-focus-dashboard-card--wide { grid-column: span 1; }
.dg-focus-dashboard-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 1rem; }
.dg-focus-dashboard-actions-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dg-focus-dashboard-stat,
.dg-focus-dashboard-card {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.55rem;
  background: rgba(255,255,255,.90);
  box-shadow: 0 24px 72px rgba(7,26,70,.10);
  backdrop-filter: blur(16px);
}
.dg-focus-dashboard-stat {
  position: relative;
  display: grid;
  gap: .65rem;
  min-height: 11rem;
  color: inherit;
  text-decoration: none;
  padding: 1rem;
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dg-focus-dashboard-stat:hover {
  transform: translateY(-2px);
  border-color: rgba(0,201,189,.24);
  box-shadow: 0 30px 84px rgba(7,26,70,.13);
}
.dg-focus-dashboard-stat__icon {
  display: inline-grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2.1rem rgba(0,201,189,.22);
}
.dg-focus-dashboard-stat__icon i { font-size: 1.18rem; }
.dg-focus-dashboard-stat.is-success .dg-focus-dashboard-stat__icon { background: linear-gradient(135deg, #14b87a, #00c9bd); }
.dg-focus-dashboard-stat.is-blue .dg-focus-dashboard-stat__icon { background: linear-gradient(135deg, #2d6bff, #00a7d8); }
.dg-focus-dashboard-stat.is-warning .dg-focus-dashboard-stat__icon { background: linear-gradient(135deg, #f59e0b, #f97316); }
.dg-focus-dashboard-stat.is-primary .dg-focus-dashboard-stat__icon { background: linear-gradient(135deg, #00c9bd, #00a7d8); }
.dg-focus-dashboard-stat strong {
  color: #071b4d;
  font-size: clamp(1.65rem, 2.5vw, 2.35rem);
  font-weight: 950;
  letter-spacing: -.05em;
  line-height: 1;
}
.dg-focus-dashboard-stat small {
  color: #64748b;
  font-size: .84rem;
  font-weight: 780;
  line-height: 1.35;
}
.dg-focus-dashboard-card {
  overflow: hidden;
}
.dg-focus-dashboard-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.18rem 1.25rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-focus-dashboard-card__header h2 {
  margin: .45rem 0 .18rem;
  color: #071b4d;
  font-size: 1.15rem;
  font-weight: 950;
  letter-spacing: -.025em;
  line-height: 1.15;
}
.dg-focus-dashboard-card__header p {
  margin: 0;
  color: #64748b;
  font-size: .9rem;
  font-weight: 720;
  line-height: 1.45;
}
.dg-focus-dashboard-card__body { padding: 1.25rem; }
.dg-focus-dashboard-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.16);
  padding: .45rem .68rem;
  font-size: .76rem;
  font-weight: 900;
  line-height: 1;
}
.dg-focus-dashboard-metric,
.dg-focus-trend-box {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.92));
  padding: .9rem;
}
.dg-focus-dashboard-metric small,
.dg-focus-trend-box small,
.dg-focus-trend-box span {
  display: block;
  color: #64748b;
  font-size: .78rem;
  font-weight: 780;
  line-height: 1.35;
}
.dg-focus-dashboard-metric strong,
.dg-focus-trend-box strong {
  display: block;
  margin-top: .2rem;
  color: #071b4d;
  font-size: 1.05rem;
  font-weight: 950;
  line-height: 1.15;
  overflow-wrap: anywhere;
}
.dg-focus-dashboard-trend { gap: .75rem; }
.dg-focus-progress-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .78rem 0;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-focus-progress-row span { color: #64748b; font-weight: 820; }
.dg-focus-progress-row strong { color: #071b4d; font-weight: 950; }
.dg-focus-progress-row strong.is-success,
.dg-focus-row-side .is-success { color: #047857; }
.dg-focus-progress-row strong.is-warning { color: #b45309; }
.dg-focus-progress-row strong.is-primary { color: #027b83; }
.dg-focus-dashboard-note { margin-top: 1rem; }
.dg-focus-dashboard-list { display: grid; gap: .75rem; }
.dg-focus-purchase-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.05rem;
  background: rgba(248,250,252,.75);
  padding: .9rem;
}
.dg-focus-row-title {
  display: block;
  color: #071b4d;
  font-weight: 900;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.dg-focus-purchase-row small {
  display: block;
  margin-top: .22rem;
  color: #64748b;
  font-size: .78rem;
  font-weight: 760;
  line-height: 1.35;
}
.dg-focus-row-side {
  display: grid;
  justify-items: end;
  gap: .22rem;
  flex: 0 0 auto;
  max-width: 45%;
  text-align: right;
}
.dg-focus-row-side strong { color: #071b4d; font-weight: 950; }
.dg-focus-row-side a { color: #027b83; font-size: .78rem; font-weight: 900; text-decoration: none; }
.dg-focus-dashboard-empty {
  border: 1px dashed rgba(15,36,72,.14);
  border-radius: 1rem;
  color: #64748b;
  background: rgba(248,250,252,.68);
  padding: 1rem;
  font-weight: 800;
}
.dg-focus-action-card {
  min-width: 0;
  border-radius: 1.1rem;
  background: linear-gradient(135deg, rgba(0,201,189,.09), rgba(255,255,255,.92));
  box-shadow: inset 0 0 0 1px rgba(0,201,189,.14);
  text-decoration: none;
}
.dg-focus-action-card span { color: #071b4d; font-weight: 950; }
.dg-focus-action-card small { color: #64748b; font-weight: 720; }

@media (max-width: 1199.98px) {
  .dg-focus-admin-layout { flex-direction: column; }
  .dg-focus-admin-actions { justify-content: flex-start; min-width: 0; }
  .dg-focus-dashboard-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dg-focus-dashboard-layout,
  .dg-focus-dashboard-lists { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
  .flatpickr-calendar.dg-flatpickr--time { width: min(15.4rem, calc(100vw - 2rem)) !important; }
  .dg-focus-admin-shell--tw { border-radius: 1.35rem; padding: 1rem; }
  .dg-focus-admin-heading { flex-direction: column; }
  .dg-focus-admin-actions .dg-tw-btn { width: 100%; }
  .dg-focus-admin-nav-link { min-height: 2.35rem; padding: .55rem .72rem !important; font-size: .78rem; }
  .dg-focus-dashboard-stats,
  .dg-focus-dashboard-metrics,
  .dg-focus-dashboard-actions-grid { grid-template-columns: 1fr; }
  .dg-focus-dashboard-card__header { flex-direction: column; }
  .dg-focus-purchase-row { flex-direction: column; }
  .dg-focus-row-side { justify-items: start; max-width: 100%; text-align: left; }
}

/* Step 10AA-b - keep Focus navigation aligned with the unified tabs on every breakpoint */
.dg-focus-admin-nav {
  flex-wrap: nowrap !important;
  margin: 0 !important;
  list-style: none !important;
}
.dg-focus-admin-nav-link span {
  display: inline !important;
}
.dg-app-tabs,
.dg-prospect-tabs {
  margin: 0 !important;
  list-style: none !important;
}

/* Step 10AB - AI Social review detail Tailwind migration */
.dg-ai-review-page {
  gap: 1.25rem;
}
.dg-ai-review-hero {
  min-height: 13rem;
}
.dg-ai-review-statuses {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  margin-bottom: .75rem;
}
.dg-ai-review-statuses .badge,
.dg-ai-review-panel__header .badge,
.dg-ai-review-chip-list .badge,
.dg-ai-review-card-title-row .badge,
.dg-ai-review-inline-actions .badge {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  width: fit-content;
  max-width: 100%;
  white-space: normal;
  border-radius: 999px;
  font-weight: 900;
}
.dg-ai-review-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-ai-review-workspace {
  overflow: hidden;
}
.dg-ai-review-tabs-wrap {
  padding: .9rem .95rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(0,201,189,.045));
}
.dg-ai-review-tabs.dg-app-tabs {
  flex-wrap: nowrap;
  margin: 0 !important;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0;
  scrollbar-width: thin;
}
.dg-ai-review-panels {
  padding: 0;
}
.dg-ai-review-panel {
  padding: 1.35rem;
}
.dg-ai-review-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.1rem;
}
.dg-ai-review-panel__header h2 {
  margin: .45rem 0 .2rem;
  color: #071b4d;
  font-size: clamp(1.18rem, 2vw, 1.55rem);
  font-weight: 950;
  letter-spacing: -.035em;
  line-height: 1.12;
}
.dg-ai-review-panel__header p {
  margin: 0;
  color: #64748b;
  font-size: .93rem;
  font-weight: 720;
  line-height: 1.55;
}
.dg-ai-review-panel__header--actions {
  align-items: center;
}
.dg-ai-review-split,
.dg-ai-review-sources-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(18rem, .8fr);
  gap: 1.1rem;
  align-items: start;
}
.dg-ai-review-media-col,
.dg-ai-review-context-col,
.dg-ai-review-stack,
.dg-ai-review-list-section,
.dg-ai-review-actions-grid {
  display: grid;
  gap: .9rem;
  min-width: 0;
}
.dg-ai-review-featured-image,
.dg-ai-review-empty-media {
  margin: 0;
}
.dg-ai-review-featured-image {
  overflow: hidden;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.4rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.90));
  box-shadow: 0 18px 52px rgba(7,26,70,.08);
}
.dg-ai-review-featured-image img {
  display: block;
  width: 100%;
  max-height: 30rem;
  object-fit: cover;
}
.dg-ai-review-featured-image [hidden],
.dg-ai-review-image-card [hidden] {
  display: none !important;
}
.dg-ai-review-meta-row,
.dg-ai-review-inline-actions,
.dg-ai-review-chip-list,
.dg-ai-review-card-title-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem;
}
.dg-ai-review-meta-row small {
  color: #64748b;
  font-size: .82rem;
  font-weight: 820;
}
.dg-ai-review-action-box,
.dg-ai-review-info-card,
.dg-ai-review-content-box,
.dg-ai-review-source-card,
.dg-ai-review-empty-state,
.dg-ai-review-sidebar-block,
.dg-ai-review-notes {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.86);
  box-shadow: 0 16px 44px rgba(7,26,70,.055);
}
.dg-ai-review-action-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  padding: 1rem;
}
.dg-ai-review-action-box strong,
.dg-ai-review-info-card strong,
.dg-ai-review-content-box h3,
.dg-ai-review-source-card strong,
.dg-ai-review-sidebar-block strong,
.dg-ai-review-meta-list dd,
.dg-ai-review-notes p {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-review-action-box span,
.dg-ai-review-info-card p,
.dg-ai-review-source-card span,
.dg-ai-review-content-box p,
.dg-ai-review-sidebar-block small,
.dg-ai-review-empty-state,
.dg-ai-review-notes span {
  color: #64748b;
  font-size: .88rem;
  font-weight: 720;
  line-height: 1.55;
}
.dg-ai-review-action-box .dg-admin-field {
  grid-column: auto;
  margin: 0;
}
.dg-ai-review-action-box .dg-admin-field small {
  margin-top: .25rem;
}
.dg-ai-review-info-card {
  display: grid;
  gap: .35rem;
  padding: .95rem;
}
.dg-ai-review-info-card > span,
.dg-ai-review-sidebar-block > span,
.dg-ai-review-meta-list dt,
.dg-ai-review-list-section > h3 {
  color: #50627f;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .01em;
}
.dg-ai-review-info-card p {
  margin: 0;
}
.dg-ai-review-card-title-row {
  justify-content: space-between;
  align-items: flex-start;
}
.dg-ai-review-metric-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
}
.dg-ai-review-metric-grid > div {
  min-width: 0;
  border-radius: .95rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(248,250,252,.90));
  padding: .7rem;
}
.dg-ai-review-metric-grid small {
  display: block;
  color: #64748b;
  font-size: .73rem;
  font-weight: 800;
  line-height: 1.25;
}
.dg-ai-review-metric-grid strong {
  display: block;
  margin-top: .16rem;
  color: #071b4d;
  font-size: .96rem;
  font-weight: 950;
  overflow-wrap: anywhere;
}
.dg-ai-review-json {
  max-height: 22rem;
  overflow: auto;
  margin: .75rem 0 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1rem;
  color: #071b4d;
  background: rgba(248,250,252,.92);
  padding: .9rem;
  font-size: .78rem;
  white-space: pre-wrap;
}
.dg-ai-review-content-box {
  display: grid;
  gap: .85rem;
  padding: 1rem;
}
.dg-ai-review-content-box--text {
  margin-bottom: 1rem;
  background: linear-gradient(135deg, rgba(0,201,189,.07), rgba(255,255,255,.92));
}
.dg-ai-review-content-box h3 {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.25;
}
.dg-ai-review-content-box p {
  margin: 0;
}
.dg-ai-review-inline-alert {
  width: 100%;
  box-shadow: none;
}
.dg-review-premium-content {
  max-height: 72vh;
  overflow: auto;
  padding-right: .35rem;
}
.dg-ai-review-list-section > h3 {
  margin: 0;
  color: #071b4d;
  font-size: 1.02rem;
}
.dg-ai-review-source-card {
  display: grid;
  gap: .42rem;
  padding: .9rem;
}
.dg-ai-review-source-card a:not(.dg-tw-btn) {
  color: #027b83;
  font-size: .82rem;
  font-weight: 850;
  overflow-wrap: anywhere;
  text-decoration: none;
}
.dg-ai-review-source-card small {
  display: block;
  color: #64748b;
  font-size: .78rem;
  font-weight: 740;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.dg-ai-review-error-text {
  color: #dc2626 !important;
  font-size: .82rem;
  font-weight: 850;
  line-height: 1.45;
}
.dg-ai-review-empty-state {
  padding: 1rem;
  color: #64748b;
  background: linear-gradient(135deg, rgba(0,201,189,.07), rgba(248,250,252,.92));
  border-style: dashed;
}
.dg-ai-review-image-card {
  overflow: hidden;
  padding: 0;
}
.dg-ai-review-image-card .dg-image-candidate-media {
  min-height: 13rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-ai-review-image-card .dg-image-candidate-media img {
  display: block;
  width: 100%;
  height: 13rem;
  object-fit: cover;
}
.dg-ai-review-image-card .dg-image-candidate-placeholder,
.dg-ai-review-empty-media,
.dg-post-featured-image-placeholder {
  display: grid;
  place-items: center;
  gap: .55rem;
  min-height: 13rem;
  color: #027b83;
  text-align: center;
  background: linear-gradient(135deg, rgba(0,201,189,.11), rgba(45,107,255,.07));
  padding: 1rem;
}
.dg-ai-review-image-card .dg-image-candidate-placeholder .icon-base,
.dg-ai-review-empty-media .icon-base,
.dg-post-featured-image-placeholder .icon-base {
  font-size: 2.15rem;
}
.dg-ai-review-image-card__body {
  display: grid;
  gap: .45rem;
  padding: .9rem;
}
.dg-publication-log-list {
  max-height: 34rem;
  overflow: auto;
  padding-right: .2rem;
}
.dg-publication-log-item::before {
  content: none !important;
}
.dg-ai-review-sidebar {
  position: sticky;
  top: 1.1rem;
}
.dg-ai-review-action-card .dg-admin-form-card__body {
  display: grid;
  gap: 1rem;
}
.dg-ai-review-action-stack {
  display: grid;
  gap: .65rem;
}
.dg-ai-review-action-stack .dg-tw-btn,
.dg-ai-review-action-stack a.dg-tw-btn,
.dg-ai-review-action-stack button.dg-tw-btn {
  width: 100%;
  justify-content: center;
}
.dg-ai-review-sidebar-block {
  display: grid;
  gap: .4rem;
  padding: .9rem;
  background: linear-gradient(135deg, rgba(0,201,189,.065), rgba(255,255,255,.92));
}
.dg-ai-review-meta-list {
  display: grid;
  gap: .55rem;
  margin: 0;
}
.dg-ai-review-meta-list > div {
  display: grid;
  grid-template-columns: minmax(7rem, .75fr) minmax(0, 1fr);
  gap: .75rem;
  align-items: baseline;
  border-bottom: 1px solid rgba(15,36,72,.08);
  padding-bottom: .55rem;
}
.dg-ai-review-meta-list > div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.dg-ai-review-meta-list dt,
.dg-ai-review-meta-list dd {
  margin: 0;
  overflow-wrap: anywhere;
}
.dg-ai-review-meta-list dd {
  text-align: right;
  font-size: .86rem;
}
.dg-ai-review-notes {
  display: grid;
  gap: .85rem;
  padding: .95rem;
}
.dg-ai-review-notes p {
  margin: .18rem 0 0;
  font-size: .88rem;
  line-height: 1.5;
}
@media (max-width: 1199.98px) {
  .dg-ai-review-layout,
  .dg-ai-review-split,
  .dg-ai-review-sources-grid {
    grid-template-columns: 1fr;
  }
  .dg-ai-review-sidebar {
    position: static;
  }
}
@media (max-width: 767.98px) {
  .dg-ai-review-panel,
  .dg-ai-review-tabs-wrap {
    padding: 1rem;
  }
  .dg-ai-review-panel__header,
  .dg-ai-review-panel__header--actions,
  .dg-ai-review-action-box {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
  }
  .dg-ai-review-action-box .dg-tw-btn,
  .dg-ai-review-panel__header .dg-tw-btn,
  .dg-ai-review-inline-actions .dg-tw-btn {
    width: 100%;
  }
  .dg-ai-review-metric-grid,
  .dg-ai-review-meta-list > div {
    grid-template-columns: 1fr;
  }
  .dg-ai-review-meta-list dd {
    text-align: left;
  }
}

/* =========================================================
   Admin newsletters create/edit - Tailwind-like migration
   ========================================================= */
.dg-newsletter-form-page {
  --dg-newsletter-border: rgba(15,36,72,.10);
}
.dg-newsletter-form-layout {
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 26rem);
}
.dg-newsletter-form-main {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-newsletter-form-sidebar {
  position: sticky;
  top: 1.1rem;
}
.dg-admin-alert__list,
.dg-newsletter-preview-list {
  margin: .45rem 0 0;
  padding-left: 1.05rem;
}
.dg-admin-alert__list li,
.dg-newsletter-preview-list li {
  margin-top: .18rem;
  overflow-wrap: anywhere;
}
.dg-newsletter-source-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
  margin-bottom: 1.15rem;
}
.dg-newsletter-filter-grid {
  margin-top: .15rem;
}
.dg-newsletter-preview-box {
  display: grid;
  gap: .8rem;
  margin-top: 1rem;
}
.dg-newsletter-preview-box .dg-tw-btn {
  width: fit-content;
}
.dg-newsletter-recipient-preview {
  min-width: 0;
}
.dg-newsletter-preview-alert {
  box-shadow: none;
}
.dg-newsletter-preview-alert .dg-admin-alert__body,
.dg-newsletter-preview-name {
  overflow-wrap: anywhere;
}
.dg-newsletter-preview-name {
  color: #64748b;
  font-weight: 780;
}
.dg-newsletter-content-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.dg-newsletter-editor-wrapper.dg-admin-quill-shell {
  position: relative;
  overflow: visible;
  border-radius: 1.25rem;
  background: rgba(255,255,255,.94);
}
.dg-newsletter-editor-wrapper.dg-admin-quill-shell .ql-toolbar.ql-snow {
  border: 0;
  border-bottom: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem 1.25rem 0 0;
  background: linear-gradient(135deg, rgba(0,201,189,.07), rgba(248,250,252,.94));
  padding: .75rem;
}
.dg-newsletter-editor-wrapper.dg-admin-quill-shell .ql-container.ql-snow {
  border: 0;
  border-radius: 0 0 1.25rem 1.25rem;
  font: inherit;
}
.dg-newsletter-editor {
  min-height: 34rem;
}
.dg-newsletter-editor .ql-editor {
  min-height: 34rem;
  color: #071b4d;
  font-size: .98rem;
  line-height: 1.7;
  padding: 1.15rem;
}
.dg-newsletter-editor .ql-editor.ql-blank::before {
  color: #94a3b8;
  font-style: normal;
  font-weight: 760;
}
.dg-newsletter-editor .ql-editor img {
  max-width: 100%;
  height: auto;
  cursor: pointer;
  border-radius: .9rem;
}
.dg-newsletter-editor .ql-editor img.dg-newsletter-image-selected {
  outline: 3px solid rgba(0,201,189,.35);
  outline-offset: 3px;
}
.dg-newsletter-image-toolbar[hidden] {
  display: none !important;
}
.dg-newsletter-image-toolbar {
  position: absolute;
  z-index: 35;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .38rem;
  max-width: calc(100% - 1rem);
  padding: .5rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1rem;
  background: rgba(255,255,255,.97);
  box-shadow: 0 1rem 2.8rem rgba(7,26,70,.18);
  backdrop-filter: blur(14px);
}
.dg-newsletter-image-toolbar-label {
  padding-inline: .38rem;
  color: #50627f;
  font-size: .74rem;
  font-weight: 950;
  letter-spacing: .02em;
}
.dg-newsletter-image-toolbar-button {
  display: inline-grid;
  place-items: center;
  min-width: 2.05rem;
  min-height: 2.05rem;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: .72rem;
  color: #027b83;
  background: rgba(0,201,189,.10);
  padding: .28rem .48rem;
  font-size: .74rem;
  font-weight: 950;
  line-height: 1;
  cursor: pointer;
}
.dg-newsletter-image-toolbar-button:hover {
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .7rem 1.5rem rgba(0,201,189,.18);
}
.dg-newsletter-image-toolbar-button--danger {
  color: #dc2626;
  border-color: rgba(248,113,113,.20);
  background: rgba(254,226,226,.88);
}
.dg-newsletter-image-toolbar-button--danger:hover {
  color: #fff;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d);
}
.dg-newsletter-status-badge {
  width: fit-content;
}
.dg-newsletter-attachment-list {
  display: grid;
  gap: .6rem;
}
.dg-newsletter-attachment-delete {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1rem;
  background: rgba(248,250,252,.88);
  padding: .8rem;
  cursor: pointer;
}
.dg-newsletter-attachment-delete input {
  appearance: none;
  width: 1.08rem;
  height: 1.08rem;
  border: 1px solid rgba(15,36,72,.18);
  border-radius: .35rem;
  background: #fff;
  box-shadow: inset 0 0 0 2px #fff;
}
.dg-newsletter-attachment-delete input:checked {
  border-color: transparent;
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d);
  box-shadow: inset 0 0 0 3px #fff, 0 .45rem 1.1rem rgba(255,77,94,.18);
}
.dg-newsletter-attachment-delete span {
  display: grid;
  gap: .12rem;
  min-width: 0;
}
.dg-newsletter-attachment-delete strong {
  color: #071b4d;
  font-size: .86rem;
  font-weight: 920;
  overflow-wrap: anywhere;
}
.dg-newsletter-attachment-delete small {
  color: #64748b;
  font-size: .76rem;
  font-weight: 760;
}
.dg-newsletter-attachment-delete .icon-base {
  color: #ef4444;
}
.dg-newsletter-action-card .dg-admin-form-card__body {
  display: grid;
  gap: .65rem;
}
.dg-newsletter-action-card .dg-tw-btn {
  width: 100%;
}
@media (max-width: 1199.98px) {
  .dg-newsletter-form-layout {
    grid-template-columns: 1fr;
  }
  .dg-newsletter-form-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-newsletter-action-card,
  .dg-newsletter-form-sidebar > .dg-admin-alert {
    grid-column: 1 / -1;
  }
}
@media (max-width: 767.98px) {
  .dg-newsletter-source-grid,
  .dg-newsletter-form-sidebar {
    grid-template-columns: 1fr;
  }
  .dg-newsletter-editor,
  .dg-newsletter-editor .ql-editor {
    min-height: 24rem;
  }
  .dg-newsletter-preview-box .dg-tw-btn {
    width: 100%;
  }
  .dg-newsletter-image-toolbar {
    left: .5rem !important;
    right: .5rem;
    width: auto;
  }
  .dg-newsletter-image-toolbar-label {
    width: 100%;
  }
}

/* =========================================================
   Step 54 - Research materials form Tailwind migration
   ========================================================= */
.dg-research-material-form-page .dg-admin-quill-shell .ql-editor {
  min-height: 28rem;
}
.dg-research-current-file {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr) auto;
  gap: .9rem;
  align-items: center;
  width: 100%;
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 1.2rem;
  background: linear-gradient(135deg, rgba(0,201,189,.09), rgba(255,255,255,.94));
  padding: .9rem;
  box-shadow: 0 .8rem 2rem rgba(7,26,70,.06);
}
.dg-research-current-file__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .8rem 1.8rem rgba(0,201,189,.22);
}
.dg-research-current-file__icon .icon-base {
  font-size: 1.35rem;
}
.dg-research-current-file__body {
  display: grid;
  gap: .15rem;
  min-width: 0;
}
.dg-research-current-file__body strong {
  color: #071b4d;
  font-weight: 950;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.dg-research-current-file__body small {
  color: #64748b;
  font-weight: 760;
}
.dg-research-current-file__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .45rem;
}
@media (max-width: 767.98px) {
  .dg-research-current-file {
    grid-template-columns: 2.75rem minmax(0, 1fr);
  }
  .dg-research-current-file__actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }
  .dg-research-current-file__actions .dg-tw-btn {
    flex: 1 1 auto;
  }
  .dg-research-material-form-page .dg-admin-quill-shell .ql-editor {
    min-height: 22rem;
  }
}

/* =========================================================
   Step 55 - Job ads review Tailwind migration
   ========================================================= */
.dg-job-ad-show-page {
  --dg-job-border: rgba(15,36,72,.10);
  --dg-job-muted: #64748b;
  --dg-job-text: #071b4d;
}
.dg-job-ad-show-hero .dg-tw-hero__copy {
  max-width: 62rem;
}
.dg-job-ad-location {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  min-height: 1.65rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 999px;
  background: rgba(255,255,255,.76);
  color: #50627f;
  padding: .35rem .62rem;
  font-size: .78rem;
  font-weight: 850;
  line-height: 1;
}
.dg-job-ad-location .icon-base {
  color: #00a7d8;
}
.dg-job-ad-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, .42fr);
  gap: 1.25rem;
  align-items: start;
}
.dg-job-ad-detail-main,
.dg-job-ad-sidebar {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-job-ad-sidebar {
  position: sticky;
  top: 1rem;
}
.dg-job-ad-show-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(9.25rem, 1fr));
  gap: .9rem;
  margin-bottom: 1rem;
}
.dg-job-ad-show-gallery-item {
  display: block;
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: 1px solid rgba(0,201,189,.14);
  border-radius: 1.2rem;
  background: #f4fbfc;
  box-shadow: 0 .9rem 2rem rgba(7,27,77,.07);
  isolation: isolate;
}
.dg-job-ad-show-gallery-item::after {
  content: '+';
  font-size: 1.2rem;
  font-weight: 950;
  display: inline-grid;
  place-items: center;
  position: absolute;
  right: .55rem;
  bottom: .55rem;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: .85rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .7rem 1.4rem rgba(0,201,189,.24);
  opacity: 0;
  transform: translateY(.25rem);
  transition: opacity .18s ease, transform .18s ease;
}
.dg-job-ad-show-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .22s ease;
}
.dg-job-ad-show-gallery-item:hover img {
  transform: scale(1.035);
}
.dg-job-ad-show-gallery-item:hover::after {
  opacity: 1;
  transform: translateY(0);
}
.dg-job-ad-summary-box {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  gap: .8rem;
  align-items: start;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.92));
  padding: 1rem;
  margin-bottom: 1rem;
}
.dg-job-ad-summary-box > span {
  display: inline-grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .85rem 1.7rem rgba(0,201,189,.20);
}
.dg-job-ad-summary-box p {
  margin: 0;
  color: #102a5d;
  font-size: 1rem;
  font-weight: 780;
  line-height: 1.65;
}
.dg-job-ad-body-text {
  color: #4d5f7b;
  font-size: .96rem;
  font-weight: 690;
  line-height: 1.78;
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.dg-job-ad-mini-stat {
  display: inline-grid;
  place-items: center;
  min-width: 5rem;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 1rem;
  background: rgba(0,201,189,.08);
  padding: .55rem .75rem;
  text-align: center;
}
.dg-job-ad-mini-stat strong {
  color: #071b4d;
  font-size: 1.1rem;
  line-height: 1;
  font-weight: 950;
}
.dg-job-ad-mini-stat small {
  color: #64748b;
  font-size: .7rem;
  font-weight: 850;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.dg-job-ad-response-list {
  display: grid;
  gap: .85rem;
}
.dg-job-ad-response-card {
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.78);
  padding: .95rem;
  box-shadow: 0 .8rem 2rem rgba(7,26,70,.05);
}
.dg-job-ad-response-card__head {
  display: grid;
  grid-template-columns: 2.65rem minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
  margin-bottom: .75rem;
}
.dg-job-ad-response-card__avatar {
  display: inline-grid;
  place-items: center;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: .9rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
}
.dg-job-ad-response-card__identity {
  display: grid;
  gap: .12rem;
  min-width: 0;
}
.dg-job-ad-response-card__identity strong {
  color: #071b4d;
  font-weight: 950;
  line-height: 1.2;
}
.dg-job-ad-response-card__identity small,
.dg-job-ad-response-card time {
  color: #72829b;
  font-size: .78rem;
  font-weight: 760;
  overflow-wrap: anywhere;
}
.dg-job-ad-response-card time {
  white-space: nowrap;
}
.dg-job-ad-response-card p {
  margin: 0;
  color: #51627d;
  font-weight: 680;
  line-height: 1.65;
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.dg-job-ad-empty-state {
  display: grid;
  place-items: center;
  gap: .5rem;
  min-height: 12rem;
  border: 1px dashed rgba(0,201,189,.24);
  border-radius: 1.35rem;
  background: linear-gradient(135deg, rgba(0,201,189,.07), rgba(255,255,255,.82));
  padding: 1.25rem;
  text-align: center;
}
.dg-job-ad-empty-state > span {
  display: inline-grid;
  place-items: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 1.05rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
}
.dg-job-ad-empty-state strong {
  color: #071b4d;
  font-size: 1rem;
  font-weight: 950;
}
.dg-job-ad-empty-state p {
  max-width: 26rem;
  margin: 0;
  color: #64748b;
  font-weight: 720;
  line-height: 1.5;
}
.dg-job-ad-facts {
  display: grid;
  gap: .6rem;
  margin: 0;
}
.dg-job-ad-facts div {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1fr);
  gap: .75rem;
  align-items: center;
  border-bottom: 1px solid rgba(15,36,72,.07);
  padding-bottom: .6rem;
}
.dg-job-ad-facts div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.dg-job-ad-facts dt {
  color: #72829b;
  font-size: .78rem;
  font-weight: 850;
}
.dg-job-ad-facts dd {
  margin: 0;
  color: #071b4d;
  font-weight: 850;
  text-align: right;
  overflow-wrap: anywhere;
}
.dg-job-ad-action-stack {
  display: grid;
  gap: .85rem;
  margin-top: 1rem;
}
.dg-job-ad-action-stack form,
.dg-job-ad-reject-form {
  display: grid;
  gap: .75rem;
  min-width: 0;
}
.dg-job-ad-action-stack .dg-tw-btn {
  width: 100%;
}
.dg-job-ad-reject-form .dg-admin-field {
  grid-column: auto;
}
@media (max-width: 1199.98px) {
  .dg-job-ad-detail-layout {
    grid-template-columns: 1fr;
  }
  .dg-job-ad-sidebar {
    position: static;
  }
}
@media (max-width: 767.98px) {
  .dg-job-ad-show-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-job-ad-response-card__head {
    grid-template-columns: 2.65rem minmax(0, 1fr);
  }
  .dg-job-ad-response-card time {
    grid-column: 2;
    white-space: normal;
  }
  .dg-job-ad-facts div {
    grid-template-columns: 1fr;
    gap: .2rem;
  }
  .dg-job-ad-facts dd {
    text-align: left;
  }
  .dg-job-ad-mini-stat {
    display: none;
  }
}

/* =========================================================
   Step 31 - Network profile review Tailwind migration
   ========================================================= */
.dg-network-review-page {
  display: grid;
  gap: 1.25rem;
}
.dg-network-review-alerts {
  display: grid;
  gap: .85rem;
}
.dg-network-review-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
}
.dg-network-review-hero__main {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}
.dg-network-review-logo {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: clamp(4.5rem, 7vw, 6rem);
  height: clamp(4.5rem, 7vw, 6rem);
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 1.65rem;
  color: #027b83;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(0,201,189,.10));
  box-shadow: 0 1.25rem 3rem rgba(7,26,70,.12);
  overflow: hidden;
}
.dg-network-review-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #fff;
  padding: .72rem;
}
.dg-network-review-logo .icon-base {
  font-size: 2.25rem;
}
.dg-network-review-hero__copy {
  min-width: 0;
}
.dg-network-review-eyebrow,
.dg-network-section-kicker {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  padding: .42rem .68rem;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .045em;
  line-height: 1;
  text-transform: uppercase;
}
.dg-network-review-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .85rem;
}
.dg-network-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.75rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 999px;
  padding: .38rem .68rem;
  color: #50627f;
  background: rgba(241,245,249,.86);
  font-size: .72rem;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.dg-network-pill--primary,
.dg-network-pill--info {
  border-color: rgba(0,201,189,.18);
  color: #027b83;
  background: rgba(0,201,189,.11);
}
.dg-network-pill--success {
  border-color: rgba(16,185,129,.22);
  color: #047857;
  background: rgba(209,250,229,.80);
}
.dg-network-pill--danger {
  border-color: rgba(248,113,113,.28);
  color: #b42318;
  background: rgba(254,226,226,.88);
}
.dg-network-pill--muted {
  color: #64748b;
  background: rgba(241,245,249,.88);
}

.dg-network-review-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .95rem;
}
.dg-network-review-summary-card {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: .8rem;
  align-items: center;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(235,253,252,.82));
  box-shadow: 0 1rem 2.8rem rgba(7,26,70,.065);
  padding: .95rem;
}
.dg-network-review-summary-card__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.18);
}
.dg-network-review-summary-card small,
.dg-network-review-summary-card strong,
.dg-network-review-summary-card em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.dg-network-review-summary-card small {
  color: #72829b;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .04em;
  line-height: 1.1;
  text-transform: uppercase;
}
.dg-network-review-summary-card strong {
  margin-top: .18rem;
  color: #071b4d;
  font-size: 1.08rem;
  font-weight: 950;
  line-height: 1.18;
}
.dg-network-review-summary-card em {
  margin-top: .18rem;
  color: #64748b;
  font-size: .78rem;
  font-style: normal;
  font-weight: 780;
  line-height: 1.35;
}

.dg-network-review-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(19rem, 24rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-network-review-main,
.dg-network-review-sidebar {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-network-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
}
.dg-network-review-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .95rem;
}
.dg-network-review-field {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.18rem;
  background: linear-gradient(135deg, rgba(0,201,189,.07), rgba(255,255,255,.92));
  padding: 1rem;
}
.dg-network-review-field--wide {
  grid-column: 1 / -1;
}
.dg-network-review-field span {
  display: block;
  margin-bottom: .35rem;
  color: #72829b;
  font-size: .74rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.dg-network-review-field strong {
  display: block;
  color: #071b4d;
  font-size: .98rem;
  font-weight: 930;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.dg-network-review-field p {
  margin: 0;
  color: #4d5f7b;
  font-weight: 710;
  line-height: 1.68;
  overflow-wrap: anywhere;
}
.dg-network-review-field--presentation p {
  white-space: pre-line;
}
.dg-network-item-list {
  display: grid;
  gap: .85rem;
}
.dg-network-service-item,
.dg-network-location-item {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: .8rem;
  align-items: flex-start;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.12rem;
  background: rgba(255,255,255,.80);
  padding: .92rem;
  box-shadow: 0 .7rem 1.9rem rgba(7,26,70,.045);
}
.dg-network-service-item > span,
.dg-network-location-item > span {
  display: inline-grid;
  place-items: center;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: .92rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
}
.dg-network-location-item > span {
  color: #102a5d;
  background: rgba(16,42,93,.08);
}
.dg-network-service-item strong,
.dg-network-location-item strong {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  align-items: center;
  color: #071b4d;
  font-weight: 950;
  line-height: 1.25;
}
.dg-network-service-item p,
.dg-network-location-item p,
.dg-network-location-item small {
  display: block;
  margin: .22rem 0 0;
  color: #64748b;
  font-size: .86rem;
  font-weight: 720;
  line-height: 1.48;
  overflow-wrap: anywhere;
}
.dg-network-location-item em {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.11);
  padding: .25rem .45rem;
  font-size: .64rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.dg-network-empty-mini {
  display: grid;
  place-items: center;
  gap: .55rem;
  min-height: 10rem;
  border: 1px dashed rgba(0,201,189,.24);
  border-radius: 1.18rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.90));
  padding: 1rem;
  text-align: center;
  color: #64748b;
  font-weight: 800;
}
.dg-network-empty-mini .icon-base {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
  font-size: 1.35rem;
}
.dg-network-review-facts {
  display: grid;
  gap: .65rem;
  margin: 0;
}
.dg-network-review-facts div {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1fr);
  gap: .75rem;
  align-items: start;
  border-bottom: 1px solid rgba(15,36,72,.07);
  padding-bottom: .65rem;
}
.dg-network-review-facts div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.dg-network-review-facts dt {
  color: #72829b;
  font-size: .76rem;
  font-weight: 900;
  line-height: 1.35;
}
.dg-network-review-facts dd {
  margin: 0;
  color: #071b4d;
  font-size: .88rem;
  font-weight: 850;
  line-height: 1.38;
  text-align: right;
  overflow-wrap: anywhere;
}
.dg-network-review-side-card--sticky {
  position: sticky;
  top: 1rem;
}
.dg-network-review-actions {
  display: grid;
  gap: .8rem;
}
.dg-network-review-actions form {
  display: grid;
  gap: .45rem;
  min-width: 0;
}
.dg-network-review-actions .dg-tw-btn {
  width: 100%;
}
.dg-network-review-inline-error {
  border: 1px solid rgba(248,113,113,.25);
  border-radius: .95rem;
  color: #b42318;
  background: rgba(254,226,226,.88);
  padding: .62rem .75rem;
  font-size: .78rem;
  font-weight: 850;
  line-height: 1.4;
}
.dg-network-review-alert-list {
  display: grid;
  gap: .3rem;
  margin: .45rem 0 0;
  padding-left: 1rem;
}
@media (max-width: 1199.98px) {
  .dg-network-review-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-network-review-hero,
  .dg-network-review-layout {
    grid-template-columns: 1fr;
  }
  .dg-network-review-hero__actions {
    justify-content: flex-start;
  }
  .dg-network-review-side-card--sticky {
    position: static;
  }
}
@media (max-width: 767.98px) {
  .dg-network-review-summary-grid {
    grid-template-columns: 1fr;
  }
  .dg-network-review-hero__main {
    align-items: flex-start;
  }
  .dg-network-review-logo {
    width: 4rem;
    height: 4rem;
    border-radius: 1.25rem;
  }
  .dg-network-review-field-grid,
  .dg-network-review-grid {
    grid-template-columns: 1fr;
  }
  .dg-network-review-facts div {
    grid-template-columns: 1fr;
    gap: .2rem;
  }
  .dg-network-review-facts dd {
    text-align: left;
  }
}
@media (max-width: 575.98px) {
  .dg-network-review-hero__main {
    flex-direction: column;
  }
  .dg-network-review-hero__actions .dg-tw-btn,
  .dg-network-review-hero__actions {
    width: 100%;
  }
}

/* =========================================================
   Admin > Ricerche su misura > dettaglio/report - Tailwind-like UI
   ========================================================= */
.dg-research-show-page {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-research-show-hero .dg-tw-hero__actions form,
.dg-research-action-stack form,
.dg-research-card-actions form,
.dg-research-file-card__actions form {
  display: contents;
}
.dg-research-hero-meta {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: #50627f;
  font-size: .82rem;
  font-weight: 850;
}
.dg-research-alert-list {
  display: grid;
  gap: .25rem;
  margin: .35rem 0 0;
  padding-left: 1rem;
}

.dg-research-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .95rem;
}
.dg-research-summary-card {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: .8rem;
  align-items: center;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(240,249,255,.84));
  box-shadow: 0 1rem 2.8rem rgba(7,26,70,.065);
  padding: .95rem;
}
.dg-research-summary-card__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.18);
}
.dg-research-summary-card small,
.dg-research-summary-card strong,
.dg-research-summary-card em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.dg-research-summary-card small {
  color: #72829b;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .04em;
  line-height: 1.1;
  text-transform: uppercase;
}
.dg-research-summary-card strong {
  margin-top: .18rem;
  color: #071b4d;
  font-size: 1.02rem;
  font-weight: 950;
  line-height: 1.2;
}
.dg-research-summary-card em {
  margin-top: .18rem;
  color: #64748b;
  font-size: .78rem;
  font-style: normal;
  font-weight: 780;
  line-height: 1.35;
}

.dg-research-workflow-card .dg-admin-form-card__body {
  padding: 1rem;
}
.dg-research-workflow-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: .8rem;
}
.dg-research-workflow-step {
  display: grid;
  grid-template-columns: 2.65rem minmax(0, 1fr);
  gap: .75rem;
  align-items: center;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  background: rgba(248,250,252,.84);
  padding: .85rem;
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
}
.dg-research-workflow-step__icon {
  display: inline-grid;
  place-items: center;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: .95rem;
  color: #64748b;
  background: rgba(100,116,139,.11);
}
.dg-research-workflow-step strong,
.dg-research-workflow-step small {
  display: block;
  min-width: 0;
  line-height: 1.25;
}
.dg-research-workflow-step strong {
  color: #071b4d;
  font-size: .86rem;
  font-weight: 950;
}
.dg-research-workflow-step small {
  margin-top: .18rem;
  color: #72829b;
  font-size: .76rem;
  font-weight: 800;
}
.dg-research-workflow-step--done {
  border-color: rgba(16,185,129,.18);
  background: linear-gradient(135deg, rgba(16,185,129,.10), rgba(255,255,255,.88));
}
.dg-research-workflow-step--done .dg-research-workflow-step__icon {
  color: #047857;
  background: rgba(16,185,129,.14);
}
.dg-research-workflow-step--active {
  border-color: rgba(0,201,189,.28);
  background: linear-gradient(135deg, rgba(0,201,189,.16), rgba(255,255,255,.92));
  box-shadow: 0 1rem 2.5rem rgba(0,201,189,.12);
}
.dg-research-workflow-step--active .dg-research-workflow-step__icon {
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .8rem 1.8rem rgba(0,201,189,.20);
}
.dg-research-tabs-header {
  padding: 1rem 1.15rem .95rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-research-tabs-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
.dg-research-tabs-wrap .dg-app-tabs {
  min-width: max-content;
}
.dg-research-tab-body {
  padding: 1.25rem;
}
.dg-research-tab-content,
.dg-research-tab-content > .tab-pane {
  min-width: 0;
}
.dg-research-overview-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
  gap: 1.15rem;
  align-items: start;
}
.dg-research-panel {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 1rem 3rem rgba(7,26,70,.07);
  padding: 1.2rem;
}
.dg-research-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.dg-research-panel__header h3,
.dg-research-quote-summary h3,
.dg-research-report-preview h3,
.dg-research-ai-result-card__head h3,
.dg-research-ai-section h4,
.dg-research-ai-mini-list h4 {
  margin: .25rem 0 0;
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.025em;
  line-height: 1.18;
}
.dg-research-panel__header time {
  color: #64748b;
  font-size: .78rem;
  font-weight: 850;
  white-space: nowrap;
}
.dg-research-facts {
  display: grid;
  gap: .65rem;
  margin: 0 0 1rem;
}
.dg-research-facts div {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1fr);
  gap: .75rem;
  align-items: start;
  border-bottom: 1px solid rgba(15,36,72,.07);
  padding-bottom: .65rem;
}
.dg-research-facts div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.dg-research-facts dt {
  color: #72829b;
  font-size: .76rem;
  font-weight: 900;
  line-height: 1.35;
}
.dg-research-facts dd {
  margin: 0;
  color: #071b4d;
  font-size: .88rem;
  font-weight: 850;
  line-height: 1.42;
  text-align: right;
  overflow-wrap: anywhere;
}
.dg-research-facts dd small {
  display: block;
  margin-top: .12rem;
  color: #72829b;
  font-size: .76rem;
  font-weight: 780;
}
.dg-research-facts--brief div {
  grid-template-columns: minmax(0, .28fr) minmax(0, 1fr);
}
.dg-research-facts--brief dd {
  text-align: left;
}
.dg-research-long-text,
.dg-research-quote-summary p,
.dg-research-report-preview .dg-report-content,
.dg-research-message-card__content p {
  color: #34445f;
  font-weight: 720;
  line-height: 1.72;
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.dg-research-action-stack,
.dg-research-card-actions,
.dg-research-ai-modal-actions,
.dg-research-ai-result-card__actions,
.dg-research-form-footer {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  min-width: 0;
}
.dg-research-action-stack {
  display: grid;
}
.dg-research-action-stack .dg-tw-btn,
.dg-research-action-stack .dg-admin-alert,
.dg-research-form-footer {
  width: 100%;
}
.dg-research-form-footer {
  justify-content: flex-end;
}
.dg-research-form-footer .dg-tw-btn {
  width: auto;
}
.dg-research-quote-summary h3 {
  font-size: 2rem;
}
.dg-research-lab-callout {
  display: grid;
  grid-template-columns: 3.2rem minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 1.35rem;
  background: linear-gradient(135deg, rgba(0,201,189,.13), rgba(255,255,255,.90));
  padding: 1.15rem;
  box-shadow: 0 1rem 3rem rgba(0,201,189,.10);
}
.dg-research-lab-callout > span {
  display: inline-grid;
  place-items: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 1.05rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
}
.dg-research-lab-callout strong {
  display: block;
  color: #071b4d;
  font-weight: 950;
}
.dg-research-lab-callout p {
  margin: .2rem 0 0;
  color: #50627f;
  font-weight: 760;
  line-height: 1.55;
}
.dg-research-link-material-form,
.dg-research-file-upload {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(12rem, .7fr) auto;
  gap: .9rem;
  align-items: end;
  margin-bottom: 1rem;
}
.dg-research-link-material-form .dg-admin-field,
.dg-research-file-upload .dg-admin-field {
  grid-column: auto;
}
.dg-research-link-material-form__actions {
  display: flex;
  gap: .55rem;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}
.dg-research-materials-grid,
.dg-research-files-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .95rem;
}
.dg-research-material-card,
.dg-research-file-card,
.dg-research-ai-material-card,
.dg-research-ai-source-card {
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.18rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 .9rem 2.3rem rgba(7,26,70,.065);
  padding: 1rem;
}
.dg-research-material-card {
  display: flex;
  flex-direction: column;
  gap: .8rem;
}
.dg-research-material-card__head,
.dg-research-ai-material-card__head,
.dg-research-message-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .8rem;
  min-width: 0;
}
.dg-research-material-title,
.dg-research-file-name,
.dg-research-ai-material-card strong,
.dg-research-ai-source-card strong {
  display: block;
  color: #071b4d;
  font-weight: 950;
  line-height: 1.28;
  overflow-wrap: anywhere;
}
.dg-research-material-card small,
.dg-research-ai-material-card small,
.dg-research-file-card small,
.dg-research-file-card__meta {
  display: block;
  margin-top: .15rem;
  color: #72829b;
  font-size: .76rem;
  font-weight: 780;
  line-height: 1.36;
  overflow-wrap: anywhere;
}
.dg-research-material-summary {
  display: -webkit-box;
  -webkit-line-clamp: 8;
  -webkit-box-orient: vertical;
  flex: 1 1 auto;
  margin: 0;
  color: #4b5f7d;
  font-size: .86rem;
  font-weight: 720;
  line-height: 1.55;
  overflow: hidden;
}
.dg-research-material-summary--empty {
  color: #8a97aa;
  font-style: italic;
}
.dg-research-icon-action {
  display: inline-grid;
  place-items: center;
  flex: 0 0 2.35rem;
  width: 2.35rem;
  height: 2.35rem;
  border: 0;
  border-radius: .85rem;
  color: #027b83;
  background: rgba(0,201,189,.10);
  text-decoration: none;
  cursor: pointer;
}
.dg-research-icon-action:hover {
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
}
.dg-research-icon-action--danger {
  color: #b42318;
  background: rgba(239,68,68,.10);
}
.dg-research-icon-action--danger:hover {
  background: linear-gradient(135deg, #ff4d5e, #ff8a4d);
}
.dg-research-file-upload {
  grid-template-columns: minmax(0, 1.2fr) minmax(12rem, .65fr) minmax(12rem, .8fr) auto;
}
.dg-research-file-card {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr) auto;
  gap: .85rem;
  align-items: center;
}
.dg-research-file-card__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
}
.dg-research-file-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  justify-content: flex-end;
}
.dg-research-report-delivered {
  align-items: center;
  margin-bottom: 1rem;
}
.dg-research-report-delivered .dg-tw-btn {
  margin-left: auto;
}
.dg-research-report-preview {
  margin-bottom: 1rem;
}
.dg-research-report-preview h3 {
  margin: 0 0 1rem;
}
.dg-admin-quill-shell {
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  background: #fff;
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.05);
  overflow: hidden;
}
.dg-admin-quill-shell .ql-toolbar.ql-snow {
  border: 0;
  border-bottom: 1px solid rgba(15,36,72,.08);
  background: rgba(248,250,252,.84);
}
.dg-admin-quill-shell .ql-container.ql-snow {
  border: 0;
}
.dg-admin-quill-shell .ql-editor {
  min-height: 32rem;
  color: #071b4d;
  font-size: .98rem;
  line-height: 1.68;
}
.dg-admin-quill-shell--compact .ql-editor {
  min-height: 18rem;
}
.dg-research-message-list {
  display: grid;
  gap: .9rem;
}
.dg-research-message-card {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: .9rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.86);
  padding: 1rem;
  box-shadow: 0 .8rem 2.2rem rgba(7,26,70,.055);
}
.dg-research-message-card--admin {
  border-color: rgba(0,201,189,.15);
  background: linear-gradient(135deg, rgba(0,201,189,.075), rgba(255,255,255,.90));
}
.dg-research-message-card__avatar {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  font-size: .83rem;
  font-weight: 950;
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.18);
}
.dg-research-message-card--client .dg-research-message-card__avatar {
  color: #071b4d;
  background: rgba(15,36,72,.09);
  box-shadow: none;
}
.dg-research-message-card__head > div {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
}
.dg-research-message-card__head strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-research-message-card__head span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  padding: .22rem .48rem;
  font-size: .68rem;
  font-weight: 950;
}
.dg-research-message-card__head time {
  color: #72829b;
  font-size: .78rem;
  font-weight: 780;
  white-space: nowrap;
}
.dg-research-reply-form {
  margin-top: 1rem;
}
.dg-research-empty-state {
  display: grid;
  place-items: center;
  gap: .5rem;
  min-height: 12rem;
  border: 1px dashed rgba(0,201,189,.24);
  border-radius: 1.2rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.90));
  padding: 1.2rem;
  text-align: center;
  color: #64748b;
  font-weight: 800;
  grid-column: 1 / -1;
}
.dg-research-empty-state--compact {
  min-height: 7rem;
}
.dg-research-empty-state span {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
  font-size: 1.25rem;
}
.dg-research-empty-state strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-research-empty-state p {
  margin: 0;
  max-width: 34rem;
  line-height: 1.55;
}
.dg-research-ai-modal-body {
  display: grid;
  gap: 1rem;
  min-width: 0;
}
.dg-research-ai-modal-actions {
  justify-content: flex-start;
}
.dg-research-ai-modal-actions .js-run-research-ai {
  margin-left: auto;
}
.dg-research-loading-box {
  display: flex;
  align-items: center;
  gap: .9rem;
  border: 1px solid rgba(0,201,189,.14);
  border-radius: 1.15rem;
  background: rgba(0,201,189,.08);
  padding: 1rem;
}
.dg-research-loading-box strong,
.dg-research-loading-box small {
  display: block;
}
.dg-research-loading-box strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-research-loading-box small {
  color: #64748b;
  font-weight: 760;
}
.dg-research-ai-result-card {
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 1rem 3rem rgba(0,201,189,.10);
  overflow: hidden;
}
.dg-research-ai-result-card__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
  padding: 1rem 1.1rem;
}
.dg-research-ai-result-card__body {
  display: grid;
  gap: 1.05rem;
  padding: 1.1rem;
}
.dg-research-ai-section {
  display: grid;
  gap: .7rem;
}
.dg-research-ai-section__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .8rem;
}
.dg-research-ai-summary {
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1rem;
  background: rgba(248,250,252,.82);
  color: #34445f;
  padding: .95rem;
  line-height: 1.62;
  white-space: pre-line;
}
.dg-research-ai-source-grid,
.dg-research-ai-material-grid,
.dg-research-ai-two-col {
  display: grid;
  gap: .85rem;
}
.dg-research-ai-source-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dg-research-ai-material-grid,
.dg-research-ai-two-col {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dg-research-ai-source-card {
  display: grid;
  gap: .8rem;
}
.dg-research-ai-source-card a {
  display: inline-flex;
  margin-top: .25rem;
  color: #027b83;
  font-size: .82rem;
  font-weight: 900;
  text-decoration: none;
}
.dg-research-ai-source-card dl {
  display: grid;
  gap: .4rem;
  margin: 0;
}
.dg-research-ai-source-card dl div {
  display: flex;
  justify-content: space-between;
  gap: .7rem;
  border-top: 1px solid rgba(15,36,72,.06);
  padding-top: .4rem;
}
.dg-research-ai-source-card dt,
.dg-research-ai-source-card dd {
  margin: 0;
  font-size: .76rem;
  line-height: 1.35;
}
.dg-research-ai-source-card dt {
  color: #72829b;
  font-weight: 900;
}
.dg-research-ai-source-card dd {
  color: #071b4d;
  font-weight: 850;
  text-align: right;
}
.dg-research-ai-material-card {
  display: grid;
  gap: .75rem;
}
.dg-research-ai-material-card p {
  margin: 0;
  color: #4b5f7d;
  font-size: .86rem;
  font-weight: 720;
  line-height: 1.55;
}
.dg-research-ai-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
}
.dg-research-ai-tags span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.10);
  padding: .24rem .55rem;
  font-size: .7rem;
  font-weight: 920;
}
.dg-research-ai-mini-list {
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.05rem;
  background: rgba(248,250,252,.78);
  padding: 1rem;
}
.dg-research-ai-mini-list ul {
  display: grid;
  gap: .4rem;
  margin: .65rem 0 0;
  padding-left: 1.1rem;
  color: #465979;
  font-weight: 760;
  line-height: 1.5;
}
.dg-research-is-hidden {
  display: none !important;
}
.dg-tw-spinner {
  display: inline-block;
  width: 2.25rem;
  height: 2.25rem;
  border: .22rem solid rgba(0,201,189,.18);
  border-top-color: #00a7d8;
  border-radius: 999px;
  animation: dgTwSpin .7s linear infinite;
}
.dg-tw-spinner--sm {
  width: 1rem;
  height: 1rem;
  border-width: .14rem;
}
@keyframes dgTwSpin { to { transform: rotate(360deg); } }
@media (max-width: 1399.98px) {
  .dg-research-summary-grid,
  .dg-research-workflow-grid,
  .dg-research-materials-grid,
  .dg-research-files-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 1199.98px) {
  .dg-research-overview-layout,
  .dg-research-link-material-form,
  .dg-research-file-upload {
    grid-template-columns: 1fr;
  }
  .dg-research-link-material-form__actions,
  .dg-research-file-upload .dg-tw-btn {
    justify-content: flex-start;
    width: 100%;
  }
  .dg-research-file-upload .dg-tw-btn {
    justify-content: center;
  }
}
@media (max-width: 991.98px) {
  .dg-research-summary-grid,
  .dg-research-workflow-grid,
  .dg-research-ai-source-grid,
  .dg-research-ai-material-grid,
  .dg-research-ai-two-col {
    grid-template-columns: 1fr;
  }
  .dg-research-ai-result-card__head,
  .dg-research-ai-section__head {
    flex-direction: column;
    align-items: stretch;
  }
  .dg-research-ai-result-card__actions .dg-tw-btn,
  .dg-research-ai-section__head .dg-tw-btn {
    width: 100%;
  }
}
@media (max-width: 767.98px) {
  .dg-research-tab-body {
    padding: .9rem;
  }
  .dg-research-panel,
  .dg-research-tab-shell .dg-admin-form-card__body {
    padding: .95rem;
  }
  .dg-research-facts div,
  .dg-research-facts--brief div {
    grid-template-columns: 1fr;
    gap: .2rem;
  }
  .dg-research-facts dd {
    text-align: left;
  }
  .dg-research-materials-grid,
  .dg-research-files-grid {
    grid-template-columns: 1fr;
  }
  .dg-research-file-card,
  .dg-research-message-card,
  .dg-research-lab-callout {
    grid-template-columns: 1fr;
  }
  .dg-research-file-card__actions,
  .dg-research-lab-callout .dg-tw-btn,
  .dg-research-form-footer .dg-tw-btn,
  .dg-research-card-actions .dg-tw-btn,
  .dg-research-ai-modal-actions .dg-tw-btn {
    width: 100%;
  }
  .dg-research-report-delivered {
    align-items: flex-start;
  }
  .dg-research-report-delivered .dg-tw-btn,
  .dg-research-ai-modal-actions .js-run-research-ai {
    margin-left: 0;
    width: 100%;
  }
  .dg-research-message-card__head {
    flex-direction: column;
  }
}
.dg-research-panel.dg-admin-form > .dg-admin-field,
.dg-research-ai-modal-body > .dg-admin-field {
  grid-column: 1 / -1;
}

/* Admin users · Tailwind migration */
.dg-admin-users-form-page {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.dg-admin-users-layout {
  grid-template-columns: minmax(0, 1fr) minmax(19rem, 24rem);
}
.dg-admin-users-form-grid {
  gap: 1.35rem;
}
.dg-admin-users-section {
  display: grid;
  gap: 1rem;
  padding: 1.05rem;
  border: 1px solid rgba(15, 36, 72, .08);
  border-radius: 1.35rem;
  background: linear-gradient(135deg, rgba(248, 250, 252, .92), rgba(255, 255, 255, .88));
}
.dg-admin-users-section__head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}
.dg-admin-users-section__head h3 {
  margin: .35rem 0 .18rem;
  color: #071b4d;
  font-size: 1.05rem;
  font-weight: 950;
  letter-spacing: -.02em;
}
.dg-admin-users-section__head p {
  margin: 0;
  color: #64748b;
  line-height: 1.5;
}
.dg-admin-role-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.dg-admin-role-grid.is-invalid {
  border-radius: 1.2rem;
  box-shadow: 0 0 0 4px rgba(220, 38, 38, .08);
}
.dg-admin-role-option {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .85rem;
  min-width: 0;
  min-height: 100%;
  padding: 1rem;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 1.15rem;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 .85rem 2rem rgba(7, 26, 70, .055);
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-admin-role-option:hover,
.dg-admin-role-option:focus-within {
  transform: translateY(-1px);
  border-color: rgba(0, 201, 189, .26);
  box-shadow: 0 1rem 2.4rem rgba(7, 26, 70, .09);
}
.dg-admin-role-option input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}
.dg-admin-role-option__check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid rgba(15, 36, 72, .14);
  border-radius: .8rem;
  color: transparent;
  background: #fff;
  box-shadow: inset 0 0 0 3px #fff;
  transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.dg-admin-role-option input:checked + .dg-admin-role-option__check {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .35), 0 .65rem 1.4rem rgba(0, 201, 189, .24);
}
.dg-admin-role-option__body {
  display: grid;
  gap: .25rem;
  min-width: 0;
}
.dg-admin-role-option__body strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-admin-role-option__body small {
  color: #64748b;
  line-height: 1.45;
}
.dg-admin-avatar-uploader {
  display: grid;
  gap: 1rem;
  justify-items: center;
  text-align: center;
}
.dg-admin-avatar-preview {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 8rem;
  height: 8rem;
  border-radius: 2rem;
  padding: .35rem;
  background: linear-gradient(135deg, rgba(0, 201, 189, .22), rgba(0, 167, 216, .18));
  box-shadow: 0 1.2rem 3rem rgba(7, 26, 70, .14);
  overflow: hidden;
}
.dg-admin-avatar-preview img,
.dg-admin-avatar-preview span {
  width: 100%;
  height: 100%;
  border-radius: 1.65rem;
}
.dg-admin-avatar-preview img {
  object-fit: cover;
}
.dg-admin-avatar-preview span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #071b4d;
  background: rgba(255, 255, 255, .92);
  font-size: 2rem;
  font-weight: 950;
  letter-spacing: -.04em;
}
.dg-admin-avatar-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.dg-admin-avatar-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .55rem;
}
.dg-admin-avatar-uploader > small {
  color: #64748b;
  line-height: 1.45;
}
.dg-admin-users-sidebar-actions {
  justify-content: stretch;
}
.dg-admin-users-sidebar-actions .dg-tw-btn {
  flex: 1 1 10rem;
}
.dg-admin-users-meta-list dd {
  word-break: break-word;
}
.dg-tw-btn--compact,
button.dg-tw-btn--compact,
a.dg-tw-btn--compact {
  min-height: 2.35rem;
  padding: .58rem .85rem !important;
  font-size: .86rem !important;
}
.dg-tw-pill--success {
  color: #047857 !important;
  background: rgba(16, 185, 129, .12) !important;
  border-color: rgba(16, 185, 129, .18) !important;
}
@media (max-width: 1199.98px) {
  .dg-admin-users-layout {
    grid-template-columns: 1fr;
  }
  .dg-admin-users-sidebar {
    order: -1;
  }
}
@media (max-width: 767.98px) {
  .dg-admin-users-section,
  .dg-admin-form-card__body {
    padding: .95rem;
  }
  .dg-admin-role-grid,
  .dg-admin-form-grid--2 {
    grid-template-columns: 1fr;
  }
  .dg-admin-field,
  .dg-admin-field--wide-4,
  .dg-admin-field--wide-8 {
    grid-column: 1 / -1;
  }
  .dg-admin-avatar-preview {
    width: 7rem;
    height: 7rem;
    border-radius: 1.7rem;
  }
  .dg-admin-avatar-actions,
  .dg-admin-users-sidebar-actions {
    width: 100%;
  }
  .dg-admin-avatar-actions .dg-tw-btn,
  .dg-admin-users-sidebar-actions .dg-tw-btn {
    width: 100%;
  }
}
.dg-admin-user-role-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
}
.dg-data-table__actions-head {
  text-align: right;
}

/* =========================================================
   Support tickets admin - Tailwind-like migration
   ========================================================= */
.dg-support-ticket-page {
  display: grid;
  gap: 1.2rem;
}
.dg-support-ticket-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 24rem);
  gap: 1.2rem;
  align-items: start;
}
.dg-support-ticket-layout--show {
  grid-template-columns: minmax(0, 1fr) minmax(21rem, 25rem);
}
.dg-support-ticket-main,
.dg-support-ticket-sidebar {
  min-width: 0;
  display: grid;
  gap: 1.2rem;
}
.dg-support-ticket-sidebar {
  position: sticky;
  top: 1.1rem;
}
.dg-support-ticket-hero-meta {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: rgba(255,255,255,.86);
  font-size: .82rem;
  font-weight: 850;
}
.dg-support-ticket-alert-list {
  display: grid;
  gap: .18rem;
  margin: .2rem 0 0;
  padding-left: 1.05rem;
}
.dg-support-ticket-help-card__icon {
  display: inline-grid;
  place-items: center;
  width: 3.1rem;
  height: 3.1rem;
  margin-bottom: 1rem;
  border-radius: 1.05rem;
  color: #007f87;
  background: linear-gradient(135deg, rgba(0,201,189,.18), rgba(0,167,216,.12));
  box-shadow: 0 1rem 2rem rgba(0,201,189,.13);
}
.dg-support-ticket-help-card__icon .icon-base {
  font-size: 1.45rem;
}
.dg-support-ticket-help-card h2 {
  margin: 0 0 .55rem;
  color: #071b4d;
  font-size: 1.2rem;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-support-ticket-help-card p {
  margin: 0 0 1rem;
  color: #5f6f89;
  line-height: 1.62;
}
.dg-support-ticket-check-list {
  display: grid;
  gap: .75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.dg-support-ticket-check-list li {
  display: flex;
  align-items: flex-start;
  gap: .62rem;
  color: #243a60;
  font-weight: 760;
  line-height: 1.45;
}
.dg-support-ticket-check-list .icon-base {
  flex: 0 0 auto;
  margin-top: .15rem;
  color: #00aebd;
  font-size: 1.05rem;
}
.dg-support-ticket-form-actions {
  padding-top: .35rem;
}
.dg-support-ticket-conversation-card,
.dg-support-ticket-reply-card,
.dg-support-ticket-management-card {
  overflow: hidden;
}
.dg-support-ticket-page .dg-ticket-timeline {
  position: relative;
  display: grid;
  gap: 1rem;
}
.dg-support-ticket-page .dg-ticket-timeline::before {
  content: '';
  position: absolute;
  top: .65rem;
  bottom: .65rem;
  left: 1.38rem;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(0,201,189,.32), rgba(0,167,216,.08));
}
.dg-support-ticket-page .dg-ticket-message {
  position: relative;
  display: grid;
  grid-template-columns: 2.85rem minmax(0, 1fr);
  gap: .85rem;
  min-width: 0;
}
.dg-support-ticket-page .dg-ticket-message__avatar {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 2.85rem;
  height: 2.85rem;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 .85rem 2rem rgba(7,26,70,.10);
}
.dg-support-ticket-page .dg-ticket-message__avatar span {
  display: grid;
  place-items: center;
  width: 2.36rem;
  height: 2.36rem;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.14);
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: -.01em;
}
.dg-support-ticket-page .dg-ticket-message.is-admin .dg-ticket-message__avatar span {
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .65rem 1.5rem rgba(0,201,189,.22);
}
.dg-support-ticket-page .dg-ticket-message__content {
  min-width: 0;
  padding: 1rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.2rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 .85rem 2rem rgba(7,26,70,.055);
}
.dg-support-ticket-page .dg-ticket-message.is-admin .dg-ticket-message__content {
  border-color: rgba(0,201,189,.16);
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.95));
}
.dg-support-ticket-page .dg-ticket-message__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .75rem;
}
.dg-support-ticket-page .dg-ticket-message__head > div {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .45rem;
}
.dg-support-ticket-page .dg-ticket-message__head strong {
  min-width: 0;
  color: #071b4d;
  font-weight: 950;
  overflow-wrap: anywhere;
}
.dg-support-ticket-page .dg-ticket-message__head time {
  flex: 0 0 auto;
  color: #7a8aa4;
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
}
.dg-support-ticket-page .dg-ticket-message__role {
  display: inline-flex;
  align-items: center;
  min-height: 1.45rem;
  border-radius: 999px;
  padding: .28rem .5rem;
  color: #007f87;
  background: rgba(0,201,189,.12);
  font-size: .68rem;
  font-weight: 950;
  line-height: 1;
}
.dg-support-ticket-page .dg-ticket-message.is-client .dg-ticket-message__role {
  color: #596b85;
  background: rgba(100,116,139,.12);
}
.dg-support-ticket-page .dg-ticket-message-body {
  color: #243a60;
  line-height: 1.65;
  overflow-wrap: anywhere;
  white-space: normal;
}
.dg-support-ticket-page .dg-ticket-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: .9rem;
}
.dg-support-ticket-page .dg-ticket-attachment-link {
  display: inline-flex;
  align-items: center;
  gap: .42rem;
  min-width: 0;
  max-width: 100%;
  min-height: 2.35rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 999px;
  padding: .52rem .72rem;
  color: #027b83;
  background: rgba(0,201,189,.09);
  font-size: .82rem;
  font-weight: 900;
  text-decoration: none;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.dg-support-ticket-page .dg-ticket-attachment-link:hover {
  color: #006d78;
  background: rgba(0,201,189,.14);
  box-shadow: 0 .8rem 1.8rem rgba(0,201,189,.12);
  transform: translateY(-1px);
}
.dg-support-ticket-page .dg-ticket-attachment-link span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dg-support-ticket-page .dg-ticket-attachment-link small {
  flex: 0 0 auto;
  color: #7a8aa4;
  font-size: .72rem;
  font-weight: 850;
}
.dg-support-ticket-meta-list dd {
  display: grid;
  gap: .16rem;
}
.dg-support-ticket-meta-list dd small {
  color: #7a8aa4;
  font-size: .75rem;
  font-weight: 750;
  overflow-wrap: anywhere;
}
.dg-support-ticket-actions {
  display: grid;
  gap: .8rem;
  margin-top: 1rem;
}
.dg-support-ticket-actions form,
.dg-support-ticket-status-form {
  min-width: 0;
}
.dg-support-ticket-status-form {
  display: grid;
  gap: .75rem;
  padding: .85rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  background: rgba(248,250,252,.82);
}
.dg-support-ticket-status-form .dg-admin-field {
  grid-column: 1 / -1;
}
.dg-support-ticket-action-btn {
  width: 100%;
}
@media (max-width: 1199.98px) {
  .dg-support-ticket-layout,
  .dg-support-ticket-layout--show {
    grid-template-columns: 1fr;
  }
  .dg-support-ticket-sidebar {
    position: static;
  }
}
@media (max-width: 767.98px) {
  .dg-support-ticket-page {
    gap: 1rem;
  }
  .dg-support-ticket-layout {
    gap: 1rem;
  }
  .dg-support-ticket-page .dg-ticket-timeline::before {
    left: 1.16rem;
  }
  .dg-support-ticket-page .dg-ticket-message {
    grid-template-columns: 2.4rem minmax(0, 1fr);
    gap: .65rem;
  }
  .dg-support-ticket-page .dg-ticket-message__avatar {
    width: 2.4rem;
    height: 2.4rem;
  }
  .dg-support-ticket-page .dg-ticket-message__avatar span {
    width: 2rem;
    height: 2rem;
    font-size: .68rem;
  }
  .dg-support-ticket-page .dg-ticket-message__content {
    padding: .9rem;
    border-radius: 1rem;
  }
  .dg-support-ticket-page .dg-ticket-message__head {
    display: grid;
    gap: .35rem;
  }
  .dg-support-ticket-page .dg-ticket-message__head time {
    white-space: normal;
  }
  .dg-support-ticket-page .dg-ticket-attachment-link {
    width: 100%;
    justify-content: flex-start;
    border-radius: 1rem;
  }
}
@media (max-width: 575.98px) {
  .dg-support-ticket-form-actions .dg-tw-btn,
  .dg-support-ticket-action-btn {
    width: 100%;
  }
}

/* =========================================================
   Step 61 - Residual legacy cleanup: research index + action menus
   ========================================================= */
.dg-data-view-stats--research-cases {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dg-research-cases-index-page > .dg-data-view-stats--research-cases {
  margin-bottom: 1.25rem;
}
.dg-research-cases-index-page > .dg-tw-hero {
  margin-bottom: 1.25rem;
}
.dg-client-access-legacy-page .dg-client-access-legacy-card {
  max-width: 52rem;
  margin-inline: auto;
}
.dg-action-menu__dropdown form {
  margin: 0;
}
.dg-action-menu__item {
  width: 100% !important;
  padding: .68rem .78rem !important;
  text-align: left !important;
  text-decoration: none !important;
  cursor: pointer;
}
.dg-action-menu__item span {
  min-width: 0;
}
.dg-action-menu__item:disabled,
.dg-action-menu__item[disabled] {
  cursor: not-allowed;
  opacity: .58;
}@media (max-width: 1199.98px) {
  .dg-data-view-stats--research-cases {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 575.98px) {
  .dg-data-view-stats--research-cases {
    grid-template-columns: minmax(0, 1fr);
  }
  .dg-client-access-legacy-page .dg-tw-empty {
    padding-inline: 1rem;
  }
}

/* Mail log detail modal Tailwind-like renderer */
.dg-mail-log-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.15rem;
  padding: 1rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.2rem;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(239,253,252,.72));
}
.dg-mail-log-detail-head span:first-child {
  display: block;
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.015em;
}
.dg-mail-log-detail-head small {
  display: block;
  margin-top: .18rem;
  color: #64748b;
  font-weight: 760;
}
.dg-mail-log-grid {
  display: grid;
  gap: .85rem;
  margin-bottom: 1rem;
}
.dg-mail-log-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dg-mail-log-detail-card {
  min-width: 0;
  padding: .95rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1rem;
  background: rgba(255,255,255,.88);
}
.dg-mail-log-detail-card small {
  display: block;
  margin-bottom: .35rem;
  color: #64748b;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.dg-mail-log-detail-card strong {
  display: block;
  color: #071b4d;
  font-weight: 900;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.dg-mail-log-split {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: 1rem;
  margin-top: 1rem;
}
.dg-mail-log-split--json {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dg-mail-log-list {
  display: grid;
  gap: .45rem;
}
.dg-mail-log-list__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .85rem;
  padding: .75rem .82rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: .9rem;
  background: rgba(248,250,252,.82);
}
.dg-mail-log-list__row span {
  color: #64748b;
  font-weight: 780;
}
.dg-mail-log-list__row strong {
  color: #071b4d;
  font-weight: 950;
  text-align: right;
}
.dg-mail-log-webhooks {
  display: grid;
  gap: .65rem;
}
.dg-mail-log-webhook {
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1rem;
  background: rgba(255,255,255,.9);
  overflow: hidden;
}
.dg-mail-log-webhook summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  padding: .8rem .9rem;
  cursor: pointer;
  list-style: none;
}
.dg-mail-log-webhook summary::-webkit-details-marker { display: none; }
.dg-mail-log-webhook__title {
  color: #071b4d;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.dg-mail-log-webhook__body {
  display: grid;
  gap: .85rem;
  padding: 0 .9rem .9rem;
}
.dg-mail-log-json {
  max-height: 24rem;
  margin: 0;
  padding: .95rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1rem;
  background: #071b4d;
  color: #e7f9ff;
  font-size: .78rem;
  line-height: 1.55;
  overflow: auto;
  white-space: pre-wrap;
}
@media (max-width: 991.98px) {
  .dg-mail-log-split,
  .dg-mail-log-split--json,
  .dg-mail-log-grid--2 {
    grid-template-columns: minmax(0, 1fr);
  }
  .dg-mail-log-detail-head {
    flex-direction: column;
  }
}

/* Step 61 - AI social detail modals and residual JS-rendered legacy cleanup */
.dg-avatar-img,
.dg-avatar-initial {
  width: 100%;
  height: 100%;
  border-radius: 999px;
  object-fit: cover;
}
.dg-avatar-initial {
  display: inline-grid;
  place-items: center;
  color: #fff;
  font-weight: 950;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
}
.dg-force-delete-confirm {
  display: grid;
  gap: .9rem;
  text-align: left;
}
.dg-force-delete-confirm p {
  margin: 0;
  color: #334155;
  font-weight: 700;
  line-height: 1.5;
}
.dg-force-delete-confirm__label {
  color: #071b4d !important;
  font-weight: 900 !important;
}
.dg-force-delete-confirm__code {
  display: inline-flex;
  width: fit-content;
  padding: .65rem .85rem;
  border: 1px solid rgba(239,68,68,.18);
  border-radius: .85rem;
  color: #b91c1c;
  background: rgba(254,226,226,.75);
  font-weight: 950;
  letter-spacing: .05em;
}
.dg-ai-details-layout {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 1.2rem;
  text-align: left;
}
.dg-ai-details-aside,
.dg-ai-details-main {
  display: grid;
  align-content: start;
  gap: 1rem;
  min-width: 0;
}
.dg-ai-details-image,
.dg-ai-details-image-placeholder {
  width: 100%;
  border: 1px solid rgba(15,36,72,.1);
  border-radius: 1.25rem;
  background: rgba(248,250,252,.9);
  box-shadow: 0 18px 45px rgba(15,36,72,.08);
}
.dg-ai-details-image {
  display: block;
  max-height: 28rem;
  object-fit: cover;
}
.dg-ai-details-image-placeholder {
  display: grid;
  min-height: 12rem;
  place-items: center;
  padding: 1.5rem;
  color: #64748b;
  font-weight: 850;
}
.dg-ai-details-panel {
  gap: .55rem;
  padding: 1rem;
}
.dg-ai-details-panel header,
.dg-ai-details-channel__head,
.dg-ai-details-comment__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .8rem;
}
.dg-ai-details-panel h3,
.dg-ai-details-comments h4 {
  margin: 0;
  color: #071b4d;
  font-size: .92rem;
  font-weight: 950;
  letter-spacing: -.01em;
}
.dg-ai-details-panel strong {
  color: #071b4d;
  font-weight: 950;
  line-height: 1.35;
}
.dg-ai-details-panel small,
.dg-ai-details-muted {
  color: #64748b;
  font-weight: 730;
  line-height: 1.45;
}
.dg-ai-details-copy {
  color: #334155;
  font-weight: 680;
  line-height: 1.65;
  white-space: pre-line;
}
.dg-ai-details-sources {
  display: grid;
  gap: .6rem;
  margin: 0;
  padding-left: 1.1rem;
}
.dg-ai-details-sources li {
  color: #334155;
  font-weight: 760;
}
.dg-ai-details-sources li.is-muted {
  color: #64748b;
}
.dg-ai-details-sources a {
  color: #0284c7;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.dg-ai-details-sources small {
  display: block;
  margin-top: .15rem;
}
.dg-ai-details-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.dg-ai-details-channel {
  padding: 0;
  overflow: hidden;
}
.dg-ai-details-channel__head {
  padding: 1rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(239,253,252,.72));
}
.dg-ai-details-channel__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .55rem;
}
.dg-ai-details-channel__title strong {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-details-channel__body {
  display: grid;
  gap: 1rem;
  padding: 1rem;
}
.dg-ai-details-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}
.dg-ai-details-metric {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .2rem .55rem;
  align-items: center;
  padding: .85rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1rem;
  background: rgba(248,250,252,.72);
}
.dg-ai-details-metric__icon {
  display: inline-grid;
  grid-row: span 2;
  place-items: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: .8rem;
  color: #0284c7;
  background: rgba(0,201,189,.12);
}
.dg-ai-details-metric__label {
  color: #64748b;
  font-size: .75rem;
  font-weight: 850;
}
.dg-ai-details-metric__value {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-details-definition-list {
  display: grid;
  gap: .55rem;
  margin: 0;
}
.dg-ai-details-definition-list div {
  display: grid;
  grid-template-columns: 9rem minmax(0, 1fr);
  gap: .8rem;
  padding: .65rem .75rem;
  border-radius: .85rem;
  background: rgba(248,250,252,.78);
}
.dg-ai-details-definition-list dt {
  color: #64748b;
  font-size: .76rem;
  font-weight: 950;
  text-transform: uppercase;
}
.dg-ai-details-definition-list dd {
  min-width: 0;
  margin: 0;
  color: #071b4d;
  font-weight: 850;
  overflow-wrap: anywhere;
}
.dg-ai-details-comments {
  display: grid;
  gap: .65rem;
}
.dg-ai-details-comment {
  display: grid;
  gap: .55rem;
  padding: .85rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1rem;
  background: rgba(255,255,255,.9);
}
.dg-ai-details-comment__head strong { color: #071b4d; }
.dg-ai-details-comment__head time {
  color: #64748b;
  font-size: .78rem;
  font-weight: 750;
}
.dg-ai-details-comment p {
  margin: 0;
  color: #334155;
  font-weight: 690;
  line-height: 1.55;
}
.dg-ai-details-comment__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  color: #64748b;
  font-size: .82rem;
  font-weight: 780;
}
.dg-ai-details-comment__meta span,
.dg-ai-details-comment__meta a {
  display: inline-flex;
  align-items: center;
  gap: .28rem;
}
.dg-ai-prompt-example-content {
  border: 0;
  border-radius: 1.35rem;
  overflow: hidden;
  box-shadow: 0 28px 80px rgba(7,27,77,.18);
}
.dg-ai-prompt-example-header {
  border-bottom: 1px solid rgba(15,36,72,.08);
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,253,252,.82));
}
.dg-ai-prompt-example-header .modal-title {
  color: #071b4d;
  font-weight: 950;
}
.dg-ai-prompt-example-header small {
  color: #64748b;
  font-weight: 760;
}
.dg-ai-prompt-example-alert {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  margin-bottom: .85rem;
}
.dg-ai-prompt-example-footer {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  border-top: 1px solid rgba(15,36,72,.08);
}
.dg-ai-prompt-example-feedback {
  margin-right: auto;
  color: #059669;
  font-size: .86rem;
  font-weight: 850;
}
.dg-ai-manual-context {
  display: grid;
  gap: 1rem;
  text-align: left;
}
.dg-ai-manual-context__help {
  margin: 0;
  color: #64748b;
  font-weight: 750;
  line-height: 1.55;
}
.dg-ai-manual-context__label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .65rem;
}
.dg-ai-manual-context-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}
.dg-ai-manual-context-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .65rem;
  align-items: center;
  padding: .8rem;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1rem;
  background: rgba(255,255,255,.9);
  cursor: pointer;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.dg-ai-manual-context-option:hover {
  transform: translateY(-1px);
  border-color: rgba(0,201,189,.28);
  box-shadow: 0 14px 34px rgba(15,36,72,.08);
}
.dg-ai-manual-context-option .dg-checkbox {
  grid-row: span 2;
}
.dg-ai-manual-context-option-icon {
  display: inline-grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: .85rem;
  color: #0284c7;
  background: rgba(0,201,189,.12);
}
.dg-ai-manual-context-option-icon.dg-ai-color-danger { color: #dc2626; background: rgba(254,226,226,.8); }
.dg-ai-manual-context-option-icon.dg-ai-color-warning { color: #d97706; background: rgba(254,243,199,.8); }
.dg-ai-manual-context-option-icon.dg-ai-color-success { color: #059669; background: rgba(209,250,229,.8); }
.dg-ai-manual-context-option-icon.dg-ai-color-info { color: #0284c7; background: rgba(224,242,254,.86); }
.dg-ai-manual-context-option-copy {
  min-width: 0;
}
.dg-ai-manual-context-option-title {
  display: block;
  color: #071b4d;
  font-weight: 920;
}
.dg-ai-manual-context-option-copy small {
  display: block;
  color: #64748b;
  font-weight: 720;
  line-height: 1.4;
}
@media (max-width: 991.98px) {
  .dg-ai-details-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .dg-ai-details-metrics,
  .dg-ai-manual-context-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 575.98px) {
  .dg-ai-details-definition-list div {
    grid-template-columns: minmax(0, 1fr);
    gap: .25rem;
  }
  .dg-ai-details-panel header,
  .dg-ai-details-channel__head,
  .dg-ai-details-comment__head {
    flex-direction: column;
  }
}
.dg-modal-close {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: #071b4d;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dg-modal-close::before,
.dg-modal-close::after {
  content: '';
  position: absolute;
  width: .9rem;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
}
.dg-modal-close::before { transform: rotate(45deg); }
.dg-modal-close::after { transform: rotate(-45deg); }
.dg-modal-close:hover {
  transform: translateY(-1px);
  border-color: rgba(0,201,189,.28);
  box-shadow: 0 12px 28px rgba(15,36,72,.1);
}
/* =========================================================
   Step 10AA - legacy UI shell cleanup: navbar, badges, tabs
   ========================================================= */
.dg-navbar-right {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
}
.dg-navbar-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: .35rem;
  margin-left: auto;
  margin-bottom: 0;
  padding-left: 0;
}
.dropdown-menu .dg-navbar-dropdown-item {
  display: flex;
  align-items: center;
  gap: .72rem;
  width: 100%;
  min-height: 2.65rem;
  padding: .58rem .78rem;
  border: 0;
  border-radius: .85rem;
  color: #071b4d;
  background: transparent;
  font-size: .9rem;
  font-weight: 850;
  line-height: 1.2;
  text-decoration: none;
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
  transition: color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}
.dropdown-menu .dg-navbar-dropdown-item > span,
.dropdown-menu .dg-navbar-dropdown-item > small {
  min-width: 0;
}
.dropdown-menu .dg-navbar-dropdown-item i {
  color: #008f9a;
  flex: 0 0 auto;
}
.dropdown-menu .dg-navbar-dropdown-item:hover,
.dropdown-menu .dg-navbar-dropdown-item:focus-visible,
.dropdown-menu .dg-navbar-dropdown-item.active {
  color: #005f73;
  background: linear-gradient(135deg, rgba(0,201,189,.13), rgba(14,165,233,.10));
  outline: 0;
}
.dropdown-menu .dg-navbar-dropdown-item:hover i,
.dropdown-menu .dg-navbar-dropdown-item:focus-visible i,
.dropdown-menu .dg-navbar-dropdown-item.active i {
  color: #00a7d8;
}
.dg-navbar-dropdown-item--split {
  justify-content: space-between;
}
.dg-navbar-dropdown-item--button {
  appearance: none;
  font: inherit;
}
.dg-navbar-dropdown-form {
  margin: 0;
}
.dg-navbar-dropdown-divider {
  height: 1px;
  margin: .35rem .2rem;
  background: linear-gradient(90deg, transparent, rgba(15,36,72,.10), transparent);
}
.dg-user-menu__profile {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-width: 0;
}
.dg-user-menu__avatar-wrap {
  flex: 0 0 auto;
}
.dg-user-menu__identity {
  min-width: 0;
}
.dg-user-menu__identity h6 {
  margin: 0;
  color: #071b4d;
  font-weight: 950;
  line-height: 1.2;
}
.dg-user-menu__identity small {
  display: block;
  margin-top: .15rem;
  color: #64748b;
  font-weight: 760;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dg-navbar-login-wrap {
  display: grid;
  padding: .55rem .35rem .25rem;
}
.dg-menu-badge {
  display: inline-grid;
  place-items: center;
  min-width: 1.35rem;
  height: 1.35rem;
  margin-left: auto;
  padding: 0 .42rem;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .45rem 1.1rem rgba(0,201,189,.24);
  font-size: .72rem;
  font-weight: 950;
  line-height: 1;
}
.dg-menu-badge--danger { background: linear-gradient(135deg, #ff4d5e, #ff8a4d); box-shadow: 0 .45rem 1.1rem rgba(255,77,94,.22); }
.dg-menu-badge--warning { color: #7c3f00; background: linear-gradient(135deg, #fff3bf, #ffd166); box-shadow: 0 .45rem 1.1rem rgba(255,209,102,.22); }
.dg-menu-badge--success { background: linear-gradient(135deg, #10b981, #00c9bd); }
.dg-menu-badge--info { background: linear-gradient(135deg, #00a7d8, #6366f1); }
.dg-menu-badge--primary { background: linear-gradient(135deg, #071b4d, #00a7d8); }
.dg-menu-badge--secondary,
.dg-menu-badge--muted { color: #071b4d; background: rgba(15,36,72,.10); box-shadow: none; }
.dg-impersonation-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  border: 1px solid rgba(0,201,189,.20);
  border-radius: 1.35rem;
  color: #071b4d;
  background: linear-gradient(135deg, rgba(0,201,189,.16), rgba(7,27,77,.08));
  box-shadow: 0 1.25rem 3rem rgba(7,27,77,.10);
}
.dg-impersonation-banner__body {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
}
.dg-impersonation-banner__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .85rem 1.7rem rgba(0,201,189,.24);
}
.dg-impersonation-banner__copy {
  display: grid;
  gap: .2rem;
}
.dg-impersonation-banner__copy strong {
  font-weight: 950;
}
.dg-impersonation-banner__copy span {
  color: #64748b;
  font-size: .9rem;
  font-weight: 760;
  line-height: 1.45;
}
.dg-impersonation-banner__form {
  flex: 0 0 auto;
  margin: 0;
}
.dg-app-tabs__item {
  flex: 0 0 auto;
  margin: 0 !important;
  list-style: none;
}
.dg-app-tabs .dg-app-tab,
.dg-prospect-tabs .dg-app-tab {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 2.65rem;
  border: 0 !important;
  border-radius: .9rem !important;
  padding: .62rem .95rem !important;
  color: #071b4d !important;
  background: transparent !important;
  font-size: .88rem;
  font-weight: 900;
  line-height: 1.1;
  white-space: nowrap;
  transition: color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.dg-app-tabs .dg-app-tab i,
.dg-prospect-tabs .dg-app-tab i {
  color: #008f9a;
  font-size: 1.05rem;
  transition: color .18s ease;
}
.dg-app-tabs .dg-app-tab:hover,
.dg-prospect-tabs .dg-app-tab:hover {
  color: #006e7c !important;
  background: rgba(0,201,189,.10) !important;
}
.dg-app-tabs .dg-app-tab.active,
.dg-app-tabs__item.show .dg-app-tab,
.dg-prospect-tabs .dg-app-tab.active {
  color: #fff !important;
  background: linear-gradient(135deg, #00c9bd, #00a7d8) !important;
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.22) !important;
}
.dg-app-tabs .dg-app-tab.active i,
.dg-app-tabs__item.show .dg-app-tab i,
.dg-prospect-tabs .dg-app-tab.active i {
  color: #fff !important;
}
.dg-ai-prompt-example-header .dg-tw-modal__title {
  color: #071b4d;
  font-weight: 950;
}
@media (max-width: 767.98px) {
  .dg-impersonation-banner {
    align-items: stretch;
    flex-direction: column;
    border-radius: 1.1rem;
  }
  .dg-impersonation-banner__form .dg-tw-btn {
    width: 100%;
  }
  .dg-app-tabs .dg-app-tab,
  .dg-prospect-tabs .dg-app-tab {
    min-height: 2.35rem;
    padding: .55rem .72rem !important;
    font-size: .78rem;
  }
}
/* =========================================================
   Final shell pass - readable account dropdown after legacy cleanup
   ========================================================= */
.dropdown-user .dg-user-menu.dropdown-menu {
  min-width: 19rem !important;
  padding: .82rem !important;
  border: 1px solid rgba(130, 244, 246, .18) !important;
  border-radius: 1.45rem !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(0, 201, 189, .30), transparent 9rem),
    linear-gradient(155deg, #071a46 0%, #082057 46%, #043f54 100%) !important;
  color: rgba(232, 249, 255, .96) !important;
  box-shadow: 0 1.75rem 5rem rgba(7, 26, 70, .36) !important;
  backdrop-filter: blur(18px);
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item {
  display: flex !important;
  align-items: center !important;
  width: 100%;
  min-height: 2.78rem;
  padding: .68rem .78rem !important;
  border: 0 !important;
  border-radius: .95rem !important;
  color: rgba(232, 249, 255, .96) !important;
  background: transparent !important;
  font-size: .88rem;
  font-weight: 850;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item span,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item span {
  color: inherit !important;
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item > i,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item > i {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  margin: 0 !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-radius: .78rem;
  color: #9ff4f6 !important;
  background: rgba(255,255,255,.09) !important;
  opacity: 1 !important;
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item:hover,
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item:focus-visible,
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item.active,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item:hover,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item:focus-visible,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item.active {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(0,201,189,.18)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 .9rem 2.2rem rgba(0,0,0,.16) !important;
  outline: 0 !important;
  transform: translateY(-1px);
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item:hover > i,
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item:focus-visible > i,
.dropdown-user .dg-user-menu .dg-navbar-dropdown-item.active > i,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item:hover > i,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item:focus-visible > i,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item.active > i {
  color: #071a46 !important;
  background: #9ff4f6 !important;
  border-color: rgba(255,255,255,.72) !important;
}
.dropdown-user .dg-user-menu .dg-user-menu__header,
.dropdown-user .dg-user-menu .dg-user-menu__header:hover,
.dropdown-user .dg-user-menu .dg-user-menu__header:focus-visible {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(0,201,189,.18), rgba(255,255,255,.07)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
  transform: none !important;
}
.dropdown-user .dg-user-menu .dg-user-menu__header h6,
.dropdown-user .dg-user-menu .dg-user-menu__header:hover h6,
.dropdown-user .dg-user-menu .dg-user-menu__header:focus-visible h6 {
  color: #fff !important;
}
.dropdown-user .dg-user-menu .dg-user-menu__header small,
.dropdown-user .dg-user-menu .dg-user-menu__header:hover small,
.dropdown-user .dg-user-menu .dg-user-menu__header:focus-visible small {
  color: rgba(194, 244, 248, .82) !important;
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-divider {
  height: 1px;
  margin: .48rem .2rem;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.13), transparent) !important;
}
.dropdown-user .dg-user-menu .dg-navbar-dropdown-form {
  margin: 0 !important;
}
@media (max-width: 575.98px) {
  .dropdown-user .dg-user-menu.dropdown-menu {
    min-width: min(19rem, calc(100vw - 1.5rem)) !important;
    max-width: calc(100vw - 1.5rem) !important;
  }
}


/* =========================================================
   Step 18 - Account area Tailwind pass + impersonation menu z-index
   ========================================================= */
.layout-wrapper.layout-content-navbar .layout-navbar,
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar .layout-navbar.container-xxl.navbar-detached {
  overflow: visible !important;
  z-index: 2147482500 !important;
}
.dg-navbar-right,
.dg-navbar-actions,
.dg-user-menu-host {
  overflow: visible !important;
}
.dg-user-menu-host,
.dropdown-user {
  position: relative !important;
  z-index: 2147483002 !important;
}
.dropdown-user .dg-user-menu.dropdown-menu,
.dropdown-user .dg-user-menu.dropdown-menu.show {
  z-index: 2147483003 !important;
}
.dg-impersonation-banner-wrap,
.dg-impersonation-banner {
  position: relative;
  z-index: 20;
}
.dg-impersonation-banner .dg-tw-btn {
  position: relative;
  z-index: 1;
}

.dg-account-page {
  gap: 1.25rem;
}
.dg-account-grid {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-account-grid--main {
  grid-template-columns: minmax(16.5rem, .34fr) minmax(0, 1fr);
  align-items: start;
}
.dg-account-page-head,
.dg-account-section-head,
.dg-account-row {
  display: flex;
  gap: 1rem;
  min-width: 0;
}
.dg-account-page-head,
.dg-account-section-head {
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.dg-account-page-head h4,
.dg-account-section-head h5,
.dg-account-info-card h6 {
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-account-page-head p,
.dg-account-section-head p,
.dg-account-info-card p {
  color: #64748b;
  line-height: 1.5;
}
.dg-account-sidebar,
.dg-account-content,
.dg-account-main-panel,
.dg-account-side-panel {
  min-width: 0;
}
.dg-account-profile-card {
  position: sticky;
  top: 6.4rem;
}
.dg-account-profile-card__body {
  text-align: center;
}
.dg-account-role-list,
.dg-account-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .55rem;
}
.dg-account-role-list {
  justify-content: center;
  margin-bottom: 1.25rem;
}
.dg-account-actions--center { justify-content: center; }
.dg-account-actions--spaced { margin-bottom: 1.25rem; }
.dg-account-meta-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: .82rem 0;
  border-top: 1px solid rgba(15,36,72,.08);
  text-align: left;
}
.dg-account-meta-row > span:last-child {
  color: #071b4d;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.dg-account-tabs-header {
  padding: .85rem !important;
}
.dg-account-tabs {
  width: 100%;
}
.dg-account-media-row {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  min-width: 0;
}
.dg-account-media-row--spaced {
  margin-bottom: 1.25rem;
}
.dg-account-row--split {
  justify-content: space-between;
}
.dg-account-row--center {
  align-items: center;
}
.dg-account-avatar-box,
.dg-account-qr-box,
.dg-account-info-card,
.dg-account-subscription-card,
.dg-account-empty-state {
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 1rem 2.8rem rgba(7,26,70,.07);
}
.dg-account-avatar-box,
.dg-account-qr-box,
.dg-account-empty-state {
  padding: 1.1rem;
  text-align: center;
}
.dg-account-info-card {
  margin-bottom: 1rem;
  overflow: hidden;
}
.dg-account-info-card--primary,
.dg-account-subscription-card--active {
  border-color: rgba(0,201,189,.24);
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.92));
}
.dg-account-compact-body {
  padding: 1rem !important;
}
.dg-account-subscription-card {
  padding: 1rem;
  box-shadow: none;
}
.dg-account-empty-state {
  display: grid;
  place-items: center;
  min-height: 13rem;
  color: #64748b;
}
.dg-account-security-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, .45fr);
  gap: 1.25rem;
  align-items: start;
}
.dg-password-field {
  display: flex;
  align-items: stretch;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1.08rem;
  background: rgba(255,255,255,.92);
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
  overflow: hidden;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-password-field:focus-within {
  border-color: rgba(0,201,189,.42);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(0,201,189,.08), 0 .9rem 2.2rem rgba(7,26,70,.08);
}
.dg-password-field .dg-admin-control {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
.dg-password-field__toggle {
  display: inline-grid;
  place-items: center;
  flex: 0 0 3.1rem;
  color: #008f9a;
  background: rgba(0,201,189,.08);
  cursor: pointer;
}
.dg-account-qr-box svg {
  display: block;
  max-width: 100%;
  height: auto;
}
.dg-account-recovery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
.dg-account-recovery-code {
  padding: .7rem .8rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: .9rem;
  color: #071b4d;
  background: rgba(248,250,252,.92);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-weight: 900;
  text-align: center;
}
.dg-admin-help {
  margin-top: .4rem;
  color: #64748b;
  font-size: .8rem;
  font-weight: 760;
  line-height: 1.45;
}
.dg-admin-field--third { grid-column: span 4; }
.dg-admin-field--quarter { grid-column: span 3; }
.dg-admin-field--small { grid-column: span 2; }
.dg-tw-btn--warning {
  color: #7c3f00 !important;
  border-color: rgba(245,158,11,.22) !important;
  background: linear-gradient(135deg, rgba(255,247,237,.96), rgba(255,255,255,.90)) !important;
  box-shadow: 0 .8rem 1.9rem rgba(245,158,11,.10) !important;
}
.dg-tw-btn--warning:hover {
  color: #6b3500 !important;
  border-color: rgba(245,158,11,.34) !important;
  background: linear-gradient(135deg, rgba(255,237,213,.98), rgba(255,255,255,.94)) !important;
}
.dg-tw-pill.dg-tw-pill--muted,
.dg-tw-pill--muted {
  color: #64748b !important;
  border-color: rgba(100,116,139,.16) !important;
  background: rgba(100,116,139,.10) !important;
}

@media (max-width: 1199.98px) {
  .dg-account-grid--main,
  .dg-account-security-grid {
    grid-template-columns: 1fr;
  }
  .dg-account-profile-card {
    position: static;
  }
}
@media (max-width: 767.98px) {
  .dg-account-page-head,
  .dg-account-section-head,
  .dg-account-row,
  .dg-account-row--split,
  .dg-account-row--center {
    align-items: stretch;
    flex-direction: column;
  }
  .dg-account-actions .dg-tw-btn,
  .dg-account-actions form,
  .dg-account-page-head .dg-tw-btn {
    width: 100%;
  }
  .dg-account-recovery-grid {
    grid-template-columns: 1fr;
  }
  .dg-admin-field--third,
  .dg-admin-field--quarter,
  .dg-admin-field--small {
    grid-column: 1 / -1;
  }
}
.dg-avatar-upload,
.dg-avatar-preview,
.dg-2fa-setup,
.dg-2fa-recovery,
.dg-2fa-qr,
.dg-2fa-recovery-list,
.dg-account-recovery-item,
.dg-tw-modal--purchase-detail,
.dg-two-factor-status {
  min-width: 0;
}
.dg-avatar-preview {
  overflow: hidden;
}
.dg-avatar-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dg-two-factor-status {
  padding: 1rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.9));
}

/* =========================================================
   Final migration step - client support + global Select2 fallback
   ========================================================= */
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--single {
  min-height: 3rem !important;
  border: 1px solid rgba(15, 36, 72, .12) !important;
  border-radius: 1.15rem !important;
  background: rgba(255, 255, 255, .92) !important;
  box-shadow: 0 .9rem 2.2rem rgba(7, 26, 70, .05) !important;
  display: flex !important;
  align-items: center !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}
.layout-wrapper.layout-content-navbar .select2-container--default.select2-container--focus .select2-selection--single,
.layout-wrapper.layout-content-navbar .select2-container--default.select2-container--open .select2-selection--single {
  border-color: rgba(0, 201, 189, .55) !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 0 0 3px rgba(0, 201, 189, .10), 0 1rem 2.6rem rgba(7, 26, 70, .10) !important;
}
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--single .select2-selection__rendered {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 2.55rem 0 1rem !important;
  color: #071b4d !important;
  font-size: .92rem !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #94a3b8 !important;
}
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 0 !important;
  right: .9rem !important;
  width: 1.35rem !important;
  height: 100% !important;
}
.layout-wrapper.layout-content-navbar .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #64748b transparent transparent transparent !important;
  border-width: 5px 4px 0 4px !important;
}
.layout-wrapper.layout-content-navbar .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #00aebd transparent !important;
  border-width: 0 4px 5px 4px !important;
}
.layout-wrapper.layout-content-navbar .select2-dropdown {
  z-index: 65060 !important;
  margin-top: .45rem !important;
  border: 1px solid rgba(203, 213, 225, .72) !important;
  border-radius: 1.15rem !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 1.2rem 3rem rgba(7, 26, 70, .16) !important;
  padding: .5rem !important;
  overflow: hidden !important;
  backdrop-filter: blur(14px);
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-search--dropdown {
  padding: 0 0 .35rem !important;
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-search__field {
  min-height: 2.5rem !important;
  border: 1px solid rgba(203, 213, 225, .75) !important;
  border-radius: .9rem !important;
  outline: 0 !important;
  padding: 0 .85rem !important;
  background: rgba(248, 250, 252, .94) !important;
  color: #071b4d !important;
  font-size: .88rem !important;
  font-weight: 800 !important;
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-search__field:focus {
  border-color: rgba(0, 201, 189, .55) !important;
  box-shadow: 0 0 0 3px rgba(0, 201, 189, .10) !important;
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__options {
  display: grid !important;
  gap: .22rem !important;
  max-height: min(16rem, 48vh) !important;
  padding: .05rem !important;
  overflow: auto !important;
  overscroll-behavior: contain;
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__option,
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__message {
  border-radius: .82rem !important;
  padding: .72rem .82rem !important;
  color: #071b4d !important;
  font-size: .92rem !important;
  font-weight: 850 !important;
  line-height: 1.22 !important;
  white-space: normal !important;
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__option--highlighted[aria-selected],
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__option--highlighted.select2-results__option--selectable {
  background: rgba(0, 201, 189, .14) !important;
  color: #007d89 !important;
}
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__option[aria-selected='true'],
.layout-wrapper.layout-content-navbar .select2-dropdown .select2-results__option--selected {
  background: rgba(0, 201, 189, .18) !important;
  color: #007d89 !important;
}

.dg-admin-form-card__footer {
  border-top: 1px solid rgba(15, 36, 72, .08);
  padding: 1rem 1.25rem;
}
.dg-client-support-page {
  min-width: 0;
}
.dg-client-support-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.dg-client-support-stat-card {
  display: flex;
  align-items: center;
  gap: .9rem;
  min-width: 0;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 1.35rem;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 1.2rem 3.2rem rgba(7, 26, 70, .08);
  padding: 1.05rem;
}
.dg-client-support-stat-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.7rem;
  height: 2.7rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2.2rem rgba(0, 201, 189, .24);
  flex: 0 0 auto;
}
.dg-client-support-stat-card div {
  display: grid;
  gap: .15rem;
  min-width: 0;
}
.dg-client-support-stat-card span:not(.dg-client-support-stat-card__icon) {
  color: #64748b;
  font-size: .82rem;
  font-weight: 850;
}
.dg-client-support-stat-card strong {
  color: #071b4d;
  font-size: 1.65rem;
  font-weight: 950;
  letter-spacing: -.04em;
  line-height: 1;
}
.dg-client-support-ticket-list {
  display: grid;
  gap: .75rem;
}
.dg-client-support-ticket-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  border: 1px solid rgba(15, 36, 72, .10);
  border-radius: 1.2rem;
  padding: 1rem;
  color: inherit;
  background: rgba(248, 250, 252, .72);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-client-support-ticket-card:hover {
  transform: translateY(-1px);
  border-color: rgba(0, 201, 189, .32);
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 1rem 2.6rem rgba(7, 26, 70, .08);
  color: inherit;
}
.dg-client-support-ticket-card__main {
  display: grid;
  gap: .35rem;
  min-width: 0;
}
.dg-client-support-ticket-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
}
.dg-client-support-ticket-card h3 {
  margin: 0;
  color: #071b4d;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: -.02em;
}
.dg-client-support-ticket-card p {
  margin: 0;
  color: #64748b;
  font-size: .83rem;
  font-weight: 800;
}
.dg-client-support-ticket-card__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 2.35rem;
  padding: 0 .85rem;
  border-radius: 999px;
  color: #008c95;
  background: rgba(0, 201, 189, .10);
  font-size: .84rem;
  font-weight: 950;
  white-space: nowrap;
  flex: 0 0 auto;
}
.dg-client-support-empty {
  display: grid;
  justify-items: center;
  gap: .6rem;
  text-align: center;
  padding: 2rem 1rem;
}
.dg-client-support-empty__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 1.1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2.2rem rgba(0, 201, 189, .24);
}
.dg-client-support-empty h3,
.dg-client-support-close-card h2 {
  margin: 0;
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.03em;
}
.dg-client-support-empty p,
.dg-client-support-close-card p {
  margin: 0;
  color: #64748b;
  font-weight: 750;
}
.dg-client-support-pagination .pagination {
  margin: 0;
}
.dg-client-support-close-card .dg-admin-form-card__body {
  display: grid;
  gap: .75rem;
}
.dg-client-support-close-card .dg-support-ticket-action-btn {
  width: 100%;
  margin-top: .25rem;
}
@media (max-width: 767.98px) {
  .dg-client-support-stats {
    grid-template-columns: 1fr;
  }
  .dg-client-support-ticket-card {
    align-items: flex-start;
    flex-direction: column;
  }
  .dg-client-support-ticket-card__action {
    width: 100%;
  }
}

/* Client · Ricerche su misura */
.dg-client-research-page {
  display: grid;
  gap: 1.35rem;
}

.dg-client-research-case-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .95rem;
}
.dg-client-research-case-summary__card {
  display: grid;
  grid-template-columns: 2.85rem minmax(0, 1fr);
  align-items: center;
  gap: .78rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.09);
  border-radius: 1.22rem;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(235,253,252,.80));
  box-shadow: 0 1rem 2.8rem rgba(7,26,70,.065);
  padding: .92rem;
}
.dg-client-research-case-summary__card span {
  display: inline-grid;
  place-items: center;
  width: 2.85rem;
  height: 2.85rem;
  border-radius: .95rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 .85rem 1.9rem rgba(0,201,189,.18);
}
.dg-client-research-case-summary__card small,
.dg-client-research-case-summary__card strong {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.dg-client-research-case-summary__card small {
  color: #72829b;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.dg-client-research-case-summary__card strong {
  margin-top: .14rem;
  color: #071b4d;
  font-size: 1rem;
  font-weight: 950;
  line-height: 1.22;
}

.dg-client-research-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-client-research-main,
.dg-client-research-sidebar {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-client-research-sidebar {
  position: sticky;
  top: 1rem;
}
.dg-client-research-alert-list {
  margin: .3rem 0 0;
  padding-left: 1.1rem;
}
.dg-client-research-inline-alert {
  margin-bottom: 1.1rem;
}
.dg-client-research-form-actions {
  justify-content: flex-end;
  gap: .8rem;
}
.dg-client-research-help-card .dg-admin-form-card__body,
.dg-client-research-quote-card .dg-admin-form-card__body,
.dg-client-research-closed-card .dg-admin-form-card__body {
  display: grid;
  gap: .8rem;
}
.dg-client-research-help-card__icon,
.dg-client-research-stat-card__icon,
.dg-client-research-card__icon,
.dg-client-research-empty__icon,
.dg-client-research-file-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 1.05rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2.2rem rgba(0, 201, 189, .24);
  flex: 0 0 auto;
}
.dg-client-research-help-card__icon .icon-base,
.dg-client-research-stat-card__icon .icon-base,
.dg-client-research-card__icon .icon-base,
.dg-client-research-empty__icon .icon-base,
.dg-client-research-file-card__icon .icon-base {
  font-size: 1.35rem;
}
.dg-client-research-help-card h2,
.dg-client-research-quote-card h2,
.dg-client-research-closed-card h2,
.dg-client-research-empty h3,
.dg-client-research-card strong,
.dg-client-research-stat-card strong,
.dg-client-research-message header strong,
.dg-client-research-material-card strong,
.dg-client-research-file-card strong {
  margin: 0;
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-client-research-help-card p,
.dg-client-research-closed-card p,
.dg-client-research-help-card li,
.dg-client-research-empty p,
.dg-client-research-card small,
.dg-client-research-stat-card span:not(.dg-client-research-stat-card__icon),
.dg-client-research-message time,
.dg-client-research-material-card small,
.dg-client-research-material-card p,
.dg-client-research-file-card small,
.dg-client-research-quote-notes,
.dg-client-research-closed-card small {
  margin: 0;
  color: #64748b;
  font-weight: 750;
  line-height: 1.55;
}
.dg-client-research-example {
  white-space: pre-line;
  color: #071b4d;
  background: linear-gradient(135deg, rgba(0,201,189,.12), rgba(0,167,216,.08));
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 1.1rem;
  padding: 1rem;
  font-weight: 800;
  line-height: 1.55;
}
.dg-client-research-check-list {
  display: grid;
  gap: .7rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.dg-client-research-check-list li {
  display: flex;
  align-items: flex-start;
  gap: .55rem;
}
.dg-client-research-check-list .icon-base {
  color: #00a99d;
  margin-top: .1rem;
}
.dg-client-research-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 18rem));
  gap: 1rem;
}
.dg-client-research-stat-card {
  display: flex;
  align-items: center;
  gap: .9rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 20px 54px rgba(7,26,70,.08);
  padding: 1rem;
}
.dg-client-research-stat-card__icon {
  width: 2.9rem;
  height: 2.9rem;
  border-radius: .95rem;
}
.dg-client-research-stat-card strong {
  display: block;
  font-size: 1.85rem;
  line-height: 1;
}
.dg-client-research-list-shell .dg-admin-form-card__body {
  padding: 0;
}
.dg-client-research-list {
  display: grid;
}
.dg-client-research-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  padding: 1.15rem 1.35rem;
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(15,36,72,.08);
  transition: background .18s ease, transform .18s ease;
}
.dg-client-research-card:last-child {
  border-bottom: 0;
}
.dg-client-research-card:hover {
  background: rgba(0,201,189,.045);
  transform: translateY(-1px);
}
.dg-client-research-card__icon {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: .9rem;
}
.dg-client-research-card__body,
.dg-client-research-file-card__body {
  display: grid;
  min-width: 0;
  gap: .35rem;
}
.dg-client-research-card__badges,
.dg-client-research-inline-actions,
.dg-client-research-attachment-list {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
}
.dg-client-research-card__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 2.45rem;
  border-radius: 999px;
  color: #028b92;
  background: rgba(0,201,189,.10);
  border: 1px solid rgba(0,201,189,.18);
  padding: .55rem .85rem;
  font-size: .84rem;
  font-weight: 950;
  white-space: nowrap;
}
.dg-client-research-empty {
  display: grid;
  justify-items: center;
  gap: .7rem;
  text-align: center;
  padding: 2.4rem 1.2rem;
}
.dg-client-research-pagination .pagination {
  margin: 0;
}
.dg-client-research-report-card,
.dg-client-research-files-card,
.dg-client-research-conversation-card,
.dg-client-research-reply-card {
  overflow: hidden;
}
.dg-client-research-report-card .dg-admin-form-card__header h2,
.dg-client-research-files-card .dg-admin-form-card__header h2 {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
}
.dg-client-research-files-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.dg-client-research-file-card {
  display: flex;
  gap: .85rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  background: rgba(248,251,255,.88);
  padding: .95rem;
}
.dg-client-research-file-card__icon {
  width: 2.8rem;
  height: 2.8rem;
  color: #0297a0;
  background: rgba(0,201,189,.12);
  box-shadow: none;
}
.dg-client-research-timeline {
  display: grid;
  gap: 1rem;
}
.dg-client-research-message {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .85rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-client-research-message:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.dg-client-research-message__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  font-size: .78rem;
  font-weight: 950;
  box-shadow: 0 .9rem 2rem rgba(0,201,189,.20);
}
.dg-client-research-message.is-client .dg-client-research-message__avatar {
  background: linear-gradient(135deg, #071b4d, #0b3f72);
  box-shadow: 0 .9rem 2rem rgba(7,27,77,.18);
}
.dg-client-research-message__content {
  display: grid;
  gap: .65rem;
  min-width: 0;
}
.dg-client-research-message__content > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
}
.dg-client-research-message__text {
  color: #263754;
  font-weight: 750;
  line-height: 1.65;
}
.dg-client-research-delivery {
  margin: 0;
}
.dg-client-research-delivery .dg-admin-alert__body {
  gap: .45rem;
}
.dg-client-research-quote-card {
  border-color: rgba(0,201,189,.24);
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(232,255,252,.88));
}
.dg-client-research-quote-card h2 {
  font-size: 2.1rem;
}
.dg-client-research-full-btn,
.dg-client-research-action-stack .dg-tw-btn {
  width: 100%;
}
.dg-client-research-reject-form {
  display: grid;
  gap: .75rem;
}
.dg-client-research-action-stack {
  display: grid;
  gap: .65rem;
}
.dg-client-research-detail-list {
  display: grid;
  gap: .65rem;
  margin: 0;
}
.dg-client-research-detail-list > div {
  display: grid;
  grid-template-columns: minmax(6.5rem, .75fr) minmax(0, 1fr);
  gap: .75rem;
  align-items: start;
  padding-bottom: .65rem;
  border-bottom: 1px solid rgba(15,36,72,.08);
}
.dg-client-research-detail-list > div:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.dg-client-research-detail-list dt {
  color: #64748b;
  font-size: .78rem;
  font-weight: 900;
}
.dg-client-research-detail-list dd {
  margin: 0;
  color: #071b4d;
  font-weight: 850;
  min-width: 0;
  overflow-wrap: anywhere;
}
.dg-client-research-material-list {
  display: grid;
  gap: .8rem;
}
.dg-client-research-material-card {
  display: grid;
  gap: .4rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.1rem;
  background: rgba(248,251,255,.86);
  padding: .9rem;
}
@media (max-width: 1199.98px) {
  .dg-client-research-case-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-client-research-layout {
    grid-template-columns: 1fr;
  }
  .dg-client-research-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-client-research-sidebar > .dg-admin-form-card {
    height: 100%;
  }
}
@media (max-width: 767.98px) {
  .dg-client-research-case-summary,
  .dg-client-research-stats,
  .dg-client-research-sidebar,
  .dg-client-research-files-grid {
    grid-template-columns: 1fr;
  }
  .dg-client-research-card,
  .dg-client-research-file-card,
  .dg-client-research-message {
    grid-template-columns: 1fr;
  }
  .dg-client-research-card__action,
  .dg-client-research-form-actions .dg-tw-btn,
  .dg-client-research-inline-actions .dg-tw-btn,
  .dg-client-research-attachment-list .dg-tw-btn {
    width: 100%;
  }
  .dg-client-research-message__content > header {
    align-items: flex-start;
    flex-direction: column;
  }
  .dg-client-research-detail-list > div {
    grid-template-columns: 1fr;
    gap: .25rem;
  }
}

/* =========================================================
   Step 68 - Client job ads Tailwind migration
   ========================================================= */
.dg-client-job-ad-page {
  display: grid;
  gap: 1.25rem;
}
.dg-client-job-ad-hero .dg-tw-hero__copy {
  max-width: 60rem;
}
.dg-client-job-ad-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(19rem, .42fr);
  gap: 1.25rem;
  align-items: start;
}
.dg-client-job-ad-main,
.dg-client-job-ad-sidebar {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
}
.dg-client-job-ad-sidebar {
  position: sticky;
  top: 1rem;
}
.dg-client-job-ad-form {
  display: grid;
  gap: 1.25rem;
}
.dg-client-job-ad-side-card .dg-admin-form-card__header {
  padding-bottom: 1rem;
}
.dg-client-job-ad-media-card .dg-admin-form-card__body {
  display: grid;
  gap: 1rem;
}
.dg-client-job-ad-alert-list {
  margin: .35rem 0 0;
  padding-left: 1.15rem;
}
.dg-client-job-ad-alert-list li + li {
  margin-top: .25rem;
}
.dg-job-ad-image-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
.dg-job-ad-image-tile {
  overflow: hidden;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.15rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 .9rem 2.2rem rgba(7,26,70,.07);
}
.dg-job-ad-image-thumb {
  display: block;
  aspect-ratio: 1 / 1;
  width: 100%;
  overflow: hidden;
  background: #f4fbfc;
  cursor: pointer;
}
.dg-job-ad-image-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .22s ease;
}
.dg-job-ad-image-thumb:hover img {
  transform: scale(1.035);
}
.dg-job-ad-image-remove-check {
  margin: .65rem;
  border-radius: .95rem;
  padding: .7rem;
}
.dg-job-ad-upload-preview {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
.dg-job-ad-upload-preview:empty {
  display: none;
}
.dg-job-ad-upload-preview-item {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  border: 1px solid rgba(0,201,189,.14);
  border-radius: 1.1rem;
  background: #f4fbfc;
  box-shadow: 0 .75rem 1.8rem rgba(7,27,77,.06);
}
.dg-job-ad-upload-preview-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.dg-job-ad-upload-preview-item span {
  position: absolute;
  left: .55rem;
  right: .55rem;
  bottom: .55rem;
  border-radius: .75rem;
  background: rgba(7,27,77,.78);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  padding: .3rem .5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dg-client-job-ad-form-actions {
  justify-content: flex-end;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.84);
  box-shadow: 0 1rem 2.8rem rgba(7,26,70,.07);
  padding: 1rem;
}
.dg-client-job-ad-detail-card .dg-job-ad-action-stack {
  margin-top: 1.1rem;
}
@media (max-width: 1199.98px) {
  .dg-client-job-ad-layout {
    grid-template-columns: 1fr;
  }
  .dg-client-job-ad-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-client-job-ad-media-card {
    grid-column: 1 / -1;
  }
}
@media (max-width: 767.98px) {
  .dg-client-job-ad-sidebar,
  .dg-job-ad-image-grid,
  .dg-job-ad-upload-preview {
    grid-template-columns: 1fr;
  }
  .dg-client-job-ad-form-actions,
  .dg-client-job-ad-form-actions .dg-tw-btn,
  .dg-client-job-ad-show-page .dg-tw-hero__actions .dg-tw-btn,
  .dg-client-job-ad-detail-card .dg-tw-btn {
    width: 100%;
  }
}

/* =========================================================
   Client DentalGenius Network editor Tailwind-like migration
   ========================================================= */
.dg-client-network-page {
  display: grid;
  gap: 1.35rem;
}
.dg-client-network-alerts {
  display: grid;
  gap: .85rem;
}
.dg-client-network-alert-list {
  margin: .45rem 0 0;
  padding-left: 1.1rem;
}
.dg-client-network-alert-list li + li {
  margin-top: .2rem;
}
.dg-client-network-public-alert {
  align-items: center;
}
.dg-client-network-public-alert .dg-tw-btn {
  margin-left: auto;
  white-space: nowrap;
}
.dg-client-network-form {
  min-width: 0;
}
.dg-client-network-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 23rem);
  gap: 1.15rem;
  align-items: start;
}
.dg-client-network-main,
.dg-client-network-sidebar {
  min-width: 0;
}
.dg-client-network-sidebar {
  position: sticky;
  top: 6rem;
}
.dg-client-network-editor-head {
  align-items: flex-start;
  gap: 1rem;
}
.dg-client-network-top-actions,
.dg-client-network-save-actions,
.dg-client-network-step-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
  justify-content: flex-end;
}
.dg-client-network-stepper {
  display: flex;
  gap: .6rem;
  overflow-x: auto;
  padding: .15rem .15rem .9rem;
  margin-bottom: 1.1rem;
  scrollbar-width: thin;
}
.dg-client-network-step-btn {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  flex: 0 0 auto;
  border: 1px solid rgba(0,201,189,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  color: #071b4d;
  box-shadow: 0 .75rem 1.8rem rgba(7,26,70,.045);
  padding: .58rem .8rem .58rem .58rem;
  font-weight: 950;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.dg-client-network-step-btn span {
  display: inline-grid;
  place-items: center;
  width: 1.85rem;
  height: 1.85rem;
  border-radius: 999px;
  color: #027b83;
  background: rgba(0,201,189,.13);
  font-size: .78rem;
}
.dg-client-network-step-btn strong {
  font-size: .86rem;
  letter-spacing: -.01em;
}
.dg-client-network-step-btn:hover {
  border-color: rgba(0,201,189,.34);
  transform: translateY(-1px);
}
.dg-client-network-step-btn.active {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2rem rgba(0,201,189,.24);
}
.dg-client-network-step-btn.active span {
  color: #071b4d;
  background: #fff;
}
.dg-client-network-step-panel {
  display: none;
}
.dg-client-network-step-panel.active {
  display: block;
  animation: dgNetworkEditorFade .18s ease-out;
}
@keyframes dgNetworkEditorFade {
  from { opacity: .58; transform: translateY(5px); }
  to { opacity: 1; transform: none; }
}
.dg-client-network-input-prefix {
  display: flex;
  align-items: center;
  min-width: 0;
}
.dg-client-network-input-prefix > span {
  display: inline-flex;
  align-items: center;
  min-height: 3.25rem;
  border: 1px solid rgba(15,36,72,.12);
  border-right: 0;
  border-radius: 1.08rem 0 0 1.08rem;
  background: rgba(0,201,189,.10);
  color: #027b83;
  padding: 0 .95rem;
  font-size: .9rem;
  font-weight: 950;
}
.dg-client-network-input-prefix .dg-admin-control {
  border-radius: 0 1.08rem 1.08rem 0;
}
.dg-client-network-logo-upload {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(0,201,189,.08), rgba(255,255,255,.92));
  padding: 1rem;
}
.dg-client-network-logo-preview,
.dg-client-network-preview-logo {
  display: inline-grid;
  place-items: center;
  width: 5.6rem;
  height: 5.6rem;
  overflow: hidden;
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 1.35rem;
  background: #fff;
  color: #00a6b4;
  box-shadow: 0 .95rem 2rem rgba(7,26,70,.10);
}
.dg-client-network-logo-preview img,
.dg-client-network-preview-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: .5rem;
  background: #fff;
}
.dg-client-network-logo-preview .icon-base,
.dg-client-network-preview-logo .icon-base {
  font-size: 2rem;
}
.dg-client-network-logo-fields,
.dg-client-network-section-head,
.dg-client-network-repeat-list,
.dg-client-network-rules {
  display: grid;
  gap: .85rem;
}
.dg-client-network-remove-logo {
  margin-top: .2rem;
}
.dg-client-network-section-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  margin-bottom: 1rem;
}
.dg-client-network-section-head h3,
.dg-client-network-review-card h3,
.dg-client-network-preview-head h3 {
  margin: .15rem 0 .25rem;
  color: #071b4d;
  font-size: 1.1rem;
  font-weight: 950;
  letter-spacing: -.02em;
}
.dg-client-network-section-head p,
.dg-client-network-review-card p {
  margin: 0;
  color: #64748b;
  font-weight: 700;
  line-height: 1.55;
}
.dg-client-network-repeat-card {
  display: grid;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.86);
  box-shadow: 0 .9rem 2.2rem rgba(7,26,70,.055);
  padding: 1rem;
}
.dg-client-network-repeat-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .85rem;
}
.dg-client-network-repeat-head strong {
  color: #071b4d;
  font-size: .98rem;
  font-weight: 950;
}
.dg-icon-btn {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.35rem;
  height: 2.35rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: .9rem;
  background: #fff;
  color: #027b83;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.dg-icon-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 .75rem 1.4rem rgba(7,26,70,.10);
}
.dg-icon-btn--danger {
  color: #ef4444;
  background: rgba(254,226,226,.75);
}
.dg-client-network-primary-check {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-top: .3rem;
  color: #64748b;
  font-size: .78rem;
  font-weight: 850;
  cursor: pointer;
}
.dg-client-network-primary-check input {
  appearance: none;
  width: 1.05rem;
  height: 1.05rem;
  border: 1px solid rgba(15,36,72,.16);
  border-radius: .32rem;
  background: #fff;
  box-shadow: inset 0 0 0 2px #fff;
}
.dg-client-network-primary-check input:checked {
  border-color: transparent;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: inset 0 0 0 3px #fff, 0 .35rem .9rem rgba(0,201,189,.18);
}
.dg-client-network-place-input {
  border: 1px solid rgba(0,201,189,.16);
  border-radius: 1.15rem;
  background: linear-gradient(135deg, rgba(0,201,189,.075), rgba(255,255,255,.9));
  padding: .9rem;
}
.dg-client-network-place-control {
  display: flex;
  align-items: center;
  min-height: 3.25rem;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1.08rem;
  background: #fff;
  box-shadow: 0 .75rem 2rem rgba(7,26,70,.045);
  padding: 0 1rem;
}
.dg-client-network-place-control .icon-base {
  color: #00a6b4;
  margin-right: .65rem;
}
.dg-client-network-place-control input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #071b4d;
  font-weight: 850;
}
.dg-client-network-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.dg-client-network-review-card {
  display: grid;
  gap: .7rem;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 .9rem 2.2rem rgba(7,26,70,.055);
  padding: 1rem;
}
.dg-client-network-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}
.dg-client-network-review-card ul {
  margin: 0;
  padding-left: 1.1rem;
  color: #64748b;
  font-weight: 760;
  line-height: 1.55;
}
.dg-client-network-form-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgba(15,36,72,.08);
  padding: 1rem 1.25rem 1.25rem;
}
.dg-client-network-preview-card .dg-admin-form-card__body {
  display: grid;
  gap: 1rem;
}
.dg-client-network-preview-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .9rem;
  align-items: center;
}
.dg-client-network-preview-logo {
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 1.15rem;
}
.dg-client-network-rules {
  list-style: none;
  margin: 0;
  padding: 0;
}
.dg-client-network-rules li {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  color: #64748b;
  font-weight: 780;
  line-height: 1.45;
}
.dg-client-network-rules .icon-base {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 1.45rem;
  height: 1.45rem;
  border-radius: .55rem;
  color: #027b83;
  background: rgba(0,201,189,.12);
}
.dg-client-network-page .pac-container {
  z-index: 65080 !important;
  overflow: hidden;
  border: 0;
  border-radius: 1rem;
  margin-top: .35rem;
  box-shadow: 0 1rem 2.5rem rgba(7,27,77,.16);
  font-family: Public Sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.dg-client-network-page .pac-item {
  padding: .75rem 1rem;
  border-top: 1px solid rgba(7,27,77,.06);
  cursor: pointer;
}
.dg-client-network-page .pac-item:hover {
  background: rgba(0,201,189,.08);
}
.dg-client-network-page .pac-icon { display: none; }
.dg-client-network-page .pac-item-query {
  color: #071b4d;
  font-weight: 900;
}
.dg-client-network-page .pac-matched {
  color: #00afa6;
  font-weight: 950;
}
@media (max-width: 1199.98px) {
  .dg-client-network-layout {
    grid-template-columns: 1fr;
  }
  .dg-client-network-sidebar {
    position: static;
  }
}
@media (max-width: 767.98px) {
  .dg-client-network-public-alert,
  .dg-client-network-editor-head,
  .dg-client-network-section-head,
  .dg-client-network-form-footer,
  .dg-client-network-top-actions,
  .dg-client-network-save-actions,
  .dg-client-network-step-actions,
  .dg-client-network-logo-upload,
  .dg-client-network-preview-head,
  .dg-client-network-review-grid {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
  }
  .dg-client-network-top-actions .dg-tw-btn,
  .dg-client-network-save-actions .dg-tw-btn,
  .dg-client-network-step-actions .dg-tw-btn,
  .dg-client-network-public-alert .dg-tw-btn {
    width: 100%;
    justify-content: center;
  }
  .dg-client-network-logo-preview {
    width: 5rem;
    height: 5rem;
  }
}

/* =========================================================
   Step 21 - Client job ads toolbar fix + Focus index Tailwind
   ========================================================= */
.dg-data-toolbar--client-job-ads {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .75rem !important;
}
.dg-data-toolbar--client-job-ads .dg-data-toolbar__search {
  flex: 1 1 18rem !important;
  min-width: min(18rem, 100%) !important;
}
.dg-data-toolbar--client-job-ads .dg-data-toolbar__segment {
  flex: 0 0 auto !important;
  min-width: max-content !important;
}
.dg-data-toolbar--client-job-ads .dg-data-toolbar__select {
  flex: 0 1 12.5rem !important;
  min-width: 10.75rem !important;
}
.dg-data-toolbar--client-job-ads .dg-data-toolbar__select--small {
  flex-basis: 10.5rem !important;
  min-width: 9.25rem !important;
}
.dg-data-toolbar--client-job-ads .dg-data-toolbar__button {
  flex: 0 0 auto !important;
}
.dg-data-toolbar--client-job-ads .dg-app-select-wrap[data-dg-custom-select] {
  min-height: 3rem !important;
  border-radius: 1.05rem !important;
}
.dg-data-toolbar--client-job-ads .dg-app-select-control {
  min-height: 2.75rem !important;
  padding-inline: .78rem !important;
}
.dg-data-toolbar--client-job-ads .dg-app-select-wrap[aria-disabled='true'],
.dg-data-toolbar--client-job-ads .dg-app-select-wrap:has(.dg-app-select-control:disabled) {
  opacity: .72;
}
.dg-client-focus-index-page {
  display: grid;
  gap: 1.25rem;
}
.dg-client-focus-archive-card {
  overflow: visible !important;
}
.dg-client-focus-archive-card__header {
  align-items: flex-start;
  gap: 1rem;
}
.dg-client-focus-filter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .75rem;
  width: min(100%, 54rem);
}
.dg-client-focus-filter__search {
  flex: 1 1 18rem;
  min-width: min(18rem, 100%);
  margin: 0;
}
.dg-client-focus-filter__select {
  flex: 0 1 15rem;
  min-width: min(15rem, 100%);
  border-radius: 1.05rem !important;
}
.dg-client-focus-filter__select .dg-app-select-control {
  min-height: 2.8rem;
}
.dg-client-focus-filter__button {
  min-height: 3rem !important;
}
.dg-client-focus-filter-summary {
  margin-bottom: 1.15rem;
}
.dg-client-focus-grid.dg-tw-cover-card-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}
.dg-client-focus-card {
  height: 100%;
}
.dg-client-focus-card .dg-data-badge {
  display: inline-flex;
  align-items: center;
  gap: .28rem;
}
.dg-client-focus-pagination {
  margin-top: 1.25rem;
}
.dg-client-focus-empty {
  display: grid;
  place-items: center;
  gap: .65rem;
  min-height: 18rem;
  padding: 2rem 1rem;
  text-align: center;
}
.dg-client-focus-empty__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, var(--dg-admin-cyan), var(--dg-admin-cyan-2));
  box-shadow: 0 1rem 2.2rem rgba(0,201,189,.22);
}
.dg-client-focus-empty__icon i {
  font-size: 1.35rem;
}
.dg-client-focus-empty h2 {
  margin: 0;
  color: #071b4d;
  font-size: 1.15rem;
  font-weight: 950;
}
.dg-client-focus-empty p {
  max-width: 34rem;
  margin: 0;
  color: #64748b;
  font-weight: 720;
  line-height: 1.5;
}
@media (max-width: 1399.98px) and (min-width: 992px) {
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__search {
    flex-basis: 16rem !important;
  }
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__select {
    flex-basis: 11.5rem !important;
  }
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__select--small {
    flex-basis: 9.5rem !important;
  }
}
@media (max-width: 1199.98px) {
  .dg-client-focus-archive-card__header {
    flex-direction: column;
  }
  .dg-client-focus-filter {
    justify-content: stretch;
    width: 100%;
  }
  .dg-client-focus-grid.dg-tw-cover-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767.98px) {
  .dg-data-toolbar--client-job-ads,
  .dg-client-focus-filter {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__search,
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__segment,
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__select,
  .dg-data-toolbar--client-job-ads .dg-data-toolbar__button,
  .dg-client-focus-filter__search,
  .dg-client-focus-filter__select,
  .dg-client-focus-filter__button {
    width: 100% !important;
    min-width: 0 !important;
  }
  .dg-data-toolbar--client-job-ads .dg-segmented-control {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dg-data-toolbar--client-job-ads .dg-segmented-control__item span {
    width: 100%;
  }
  .dg-client-focus-grid.dg-tw-cover-card-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   Client Focus checkout/paywall - Tailwind-like migration
   ========================================================= */
.dg-client-focus-commerce {
  display: grid;
  gap: 1.35rem;
}
.dg-focus-commerce-callout,
.dg-focus-requested-post,
.dg-focus-commerce-stats,
.dg-focus-checkout-layout,
.dg-focus-success-grid,
.dg-focus-success-actions {
  min-width: 0;
}
.dg-focus-commerce-callout {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  border: 1px solid rgba(0,201,189,.22);
  border-radius: 1.35rem;
  background: linear-gradient(135deg, rgba(0,201,189,.12), rgba(255,255,255,.92));
  box-shadow: 0 1.35rem 3.5rem rgba(7,26,70,.08);
  padding: 1rem;
}
.dg-focus-commerce-callout__icon,
.dg-focus-plan-card__icon,
.dg-focus-success-hero__icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  color: #fff;
  background: linear-gradient(135deg, #00c9bd, #00a7d8);
  box-shadow: 0 1rem 2rem rgba(0,201,189,.22);
}
.dg-focus-commerce-callout strong,
.dg-focus-requested-post h2,
.dg-focus-plan-card h2,
.dg-focus-checkout-section__head h3,
.dg-focus-checkout-summary h2,
.dg-focus-success-hero h1,
.dg-focus-success-grid strong {
  color: #071b4d;
  font-weight: 950;
  letter-spacing: -.025em;
}
.dg-focus-commerce-callout p,
.dg-focus-requested-post p,
.dg-focus-plan-card p,
.dg-focus-plan-card small,
.dg-focus-checkout-section__head p,
.dg-focus-checkout-summary p,
.dg-focus-success-hero p,
.dg-focus-success-grid span,
.dg-focus-success-grid small {
  color: #64748b;
  line-height: 1.55;
}
.dg-focus-commerce-callout p { margin: .15rem 0 0; }
.dg-focus-requested-post {
  display: grid;
  grid-template-columns: 10rem minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.35rem;
  background: rgba(255,255,255,.88);
  box-shadow: 0 1.35rem 3.8rem rgba(7,26,70,.08);
  padding: 1rem;
}
.dg-focus-requested-post img {
  width: 100%;
  height: 7rem;
  object-fit: cover;
  border-radius: 1rem;
}
.dg-focus-requested-post h2 { margin: .55rem 0 .25rem; font-size: 1.2rem; }
.dg-focus-requested-post p { margin: 0; }
.dg-focus-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.dg-focus-plan-card,
.dg-focus-checkout-summary,
.dg-focus-success-grid article {
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.45rem;
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(248,250,252,.78));
  box-shadow: 0 1.35rem 3.5rem rgba(7,26,70,.08);
}
.dg-focus-plan-card {
  display: grid;
  gap: 1rem;
  align-content: start;
  padding: 1.1rem;
}
.dg-focus-plan-card.is-featured {
  border-color: rgba(0,201,189,.34);
  box-shadow: 0 1.7rem 4.4rem rgba(0,201,189,.14);
}
.dg-focus-plan-card header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
.dg-focus-plan-card h2 { margin: .55rem 0 .12rem; font-size: 1.18rem; }
.dg-focus-plan-card__description { margin: 0; }
.dg-focus-plan-card__price { color: #071b4d; }
.dg-focus-feature-list {
  display: grid;
  gap: .62rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.dg-focus-feature-list li {
  display: flex;
  gap: .58rem;
  align-items: flex-start;
  color: #465979;
  font-weight: 720;
  line-height: 1.45;
}
.dg-focus-feature-list i {
  color: #00a7a5;
  margin-top: .1rem;
}
.dg-focus-empty-plans { grid-column: 1 / -1; }
.dg-focus-commerce-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.dg-focus-commerce-stats article {
  display: grid;
  gap: .35rem;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.25rem;
  background: rgba(255,255,255,.78);
  padding: 1rem;
}
.dg-focus-commerce-stats i {
  color: #00a7a5;
  font-size: 1.25rem;
}
.dg-focus-commerce-stats strong { color: #071b4d; font-weight: 950; }
.dg-focus-commerce-stats span { color: #64748b; line-height: 1.45; }
.dg-focus-checkout-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 26rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-focus-checkout-main { min-width: 0; }
.dg-focus-checkout-sidebar { position: sticky; top: 1rem; min-width: 0; }
.dg-focus-checkout-section {
  display: grid;
  gap: 1rem;
  border: 1px solid rgba(15,36,72,.08);
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(0,201,189,.055), rgba(255,255,255,.88));
  padding: 1rem;
  margin-bottom: 1rem;
}
.dg-focus-checkout-section__head h3 { margin: .25rem 0 0; font-size: 1.1rem; }
.dg-focus-checkout-note,
.dg-focus-checkout-period {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  border: 1px solid rgba(0,201,189,.20);
  border-radius: 1.2rem;
  background: rgba(0,201,189,.08);
  padding: .95rem;
  margin-bottom: 1rem;
}
.dg-focus-checkout-note > span,
.dg-focus-checkout-period > i {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: .9rem;
  color: #008f9a;
  background: rgba(255,255,255,.78);
}
.dg-focus-checkout-note p,
.dg-focus-checkout-period span,
.dg-focus-checkout-period small { margin: .12rem 0 0; color: #64748b; line-height: 1.45; }
.dg-focus-purchase-mode-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.dg-focus-purchase-mode {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  border: 1px solid rgba(15,36,72,.12);
  border-radius: 1.15rem;
  background: rgba(255,255,255,.82);
  padding: 1rem;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.dg-focus-purchase-mode:hover,
.dg-focus-purchase-mode.is-selected {
  border-color: rgba(0,201,189,.36);
  background: linear-gradient(135deg, rgba(0,201,189,.10), rgba(255,255,255,.94));
  box-shadow: 0 1rem 2.5rem rgba(0,201,189,.13);
}
.dg-focus-purchase-mode.is-disabled { opacity: .68; cursor: not-allowed; }
.dg-focus-purchase-mode input { position: absolute; opacity: 0; pointer-events: none; }
.dg-focus-purchase-mode__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: .95rem;
  color: #008f9a;
  background: rgba(0,201,189,.12);
}
.dg-focus-purchase-mode span:last-child { display: grid; gap: .25rem; min-width: 0; }
.dg-focus-purchase-mode strong { color: #071b4d; font-weight: 950; }
.dg-focus-purchase-mode em {
  display: inline-flex;
  align-items: center;
  margin-left: .35rem;
  border-radius: 999px;
  background: rgba(20,184,122,.12);
  color: #047857;
  padding: .15rem .45rem;
  font-style: normal;
  font-size: .72rem;
}
.dg-focus-purchase-mode small { color: #64748b; line-height: 1.4; }
.dg-focus-purchase-mode .is-danger { color: #b91c1c; }
.dg-focus-coupon-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .85rem;
  align-items: end;
}
.dg-focus-coupon-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  padding-bottom: .05rem;
}
.dg-focus-coupon-feedback {
  color: #64748b;
  font-weight: 780;
}
.dg-focus-coupon-feedback.is-success { color: #047857; }
.dg-focus-coupon-feedback.is-danger { color: #b91c1c; }
.dg-focus-coupon-feedback.is-warning { color: #b45309; }
.dg-focus-coupon-summary {
  border: 1px solid rgba(20,184,122,.22);
  border-radius: 1.05rem;
  background: linear-gradient(135deg, rgba(20,184,122,.10), rgba(255,255,255,.92));
  padding: .9rem;
}
.dg-focus-coupon-summary__grid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
.dg-focus-coupon-summary__grid > div { display: grid; gap: .22rem; }
.dg-focus-coupon-summary__grid > div:last-child { text-align: right; }
.dg-focus-coupon-summary strong { color: #047857; font-weight: 950; }
.dg-focus-coupon-summary span,
.dg-focus-coupon-summary small { color: #64748b; }
.dg-focus-check-list {
  display: grid;
  gap: .75rem;
}
.dg-focus-checkout-summary {
  display: grid;
  gap: 1rem;
  padding: 1.1rem;
}
.dg-focus-checkout-summary h2 { margin: 0; font-size: 1.24rem; }
.dg-focus-checkout-summary p { margin: 0; }
.dg-focus-checkout-price { color: #071b4d; }
.dg-focus-success-hero {
  display: grid;
  place-items: center;
  text-align: center;
  gap: .75rem;
  border-radius: 1.75rem;
  background: radial-gradient(circle at 20% 0%, rgba(0,201,189,.28), transparent 34%), linear-gradient(135deg, #071b4d 0%, #102a66 55%, #00c9bd 100%);
  color: #fff;
  padding: 3rem 1.5rem;
  box-shadow: 0 2rem 5rem rgba(7,26,70,.18);
}
.dg-focus-success-hero__icon { color: #071b4d; background: #fff; }
.dg-focus-success-hero h1 { margin: 0; color: #fff; font-size: clamp(2rem, 4vw, 3.2rem); }
.dg-focus-success-hero p { margin: 0; max-width: 42rem; color: rgba(255,255,255,.78); }
.dg-focus-success-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.dg-focus-success-grid article {
  display: grid;
  gap: .25rem;
  padding: 1rem;
}
.dg-focus-success-grid small {
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: .72rem;
  font-weight: 950;
}
.dg-focus-success-grid .is-success { color: #047857; }
.dg-focus-price-old { text-decoration: line-through; color: #94a3b8 !important; }
.dg-focus-success-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: .7rem;
}
@media (max-width: 1199.98px) {
  .dg-focus-plan-grid,
  .dg-focus-commerce-stats,
  .dg-focus-success-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dg-focus-checkout-layout { grid-template-columns: 1fr; }
  .dg-focus-checkout-sidebar { position: static; }
}
@media (max-width: 767.98px) {
  .dg-focus-commerce-callout,
  .dg-focus-requested-post,
  .dg-focus-coupon-grid { grid-template-columns: 1fr; }
  .dg-focus-plan-grid,
  .dg-focus-commerce-stats,
  .dg-focus-success-grid,
  .dg-focus-purchase-mode-grid { grid-template-columns: 1fr; }
  .dg-focus-commerce-callout .dg-tw-btn,
  .dg-focus-success-actions .dg-tw-btn,
  .dg-focus-coupon-actions .dg-tw-btn { width: 100%; justify-content: center; }
  .dg-focus-coupon-summary__grid { flex-direction: column; align-items: stretch; }
  .dg-focus-coupon-summary__grid > div:last-child { text-align: left; }
}

/* Client Focus reader - protected Tailwind-like layout */
.dg-client-focus-reader-page {
  max-width: 100%;
  overflow-x: clip;
}
.dg-focus-protected,
.dg-focus-protected *:not(input):not(textarea):not(select) {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
.dg-focus-protected img {
  -webkit-user-drag: none;
  user-drag: none;
  pointer-events: none;
}
.dg-focus-protection-toast {
  position: fixed;
  left: 50%;
  bottom: 1.25rem;
  z-index: 1090;
  max-width: min(92vw, 34rem);
  transform: translateX(-50%) translateY(1rem);
  padding: .85rem 1rem;
  border: 1px solid rgba(0,201,189,.28);
  border-radius: 1rem;
  background: rgba(7,27,77,.94);
  color: #fff;
  font-size: .9rem;
  box-shadow: 0 1rem 2.5rem rgba(7,27,77,.22);
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}
.dg-focus-protection-toast.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.dg-focus-reader-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 24rem);
  gap: 1.25rem;
  align-items: start;
}
.dg-focus-reader-main,
.dg-focus-reader-sidebar { min-width: 0; }
.dg-focus-reader-sidebar { position: sticky; top: 1rem; }
.dg-focus-reader-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(15,36,72,.10);
  border-radius: 1.55rem;
  background: rgba(255,255,255,.94);
  box-shadow: 0 1.5rem 4.2rem rgba(7,26,70,.10);
}
.dg-focus-reader-card::after {
  content: attr(data-watermark);
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(48rem, 92%);
  max-width: 92%;
  transform: translate(-50%, -50%) rotate(-24deg);
  font-size: clamp(1rem, 7vw, 3.2rem);
  line-height: 1.15;
  font-weight: 850;
  color: rgba(7,27,77,.055);
  pointer-events: none;
  overflow-wrap: anywhere;
  word-break: break-word;
  text-align: center;
  z-index: 0;
}
.dg-focus-reader-card > * {
  position: relative;
  z-index: 1;
}
.dg-focus-reader-image {
  display: block;
  width: 100%;
  max-height: 26rem;
  object-fit: cover;
}
.dg-focus-reader-body {
  display: grid;
  gap: 1.25rem;
  padding: clamp(1.2rem, 3vw, 2.2rem);
}
.dg-focus-content {
  max-width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
  color: #24324b;
  font-size: 1rem;
  line-height: 1.75;
}
.dg-focus-content :where(h1,h2,h3,h4,h5,h6) {
  color: #071b4d;
  margin-top: 1.5rem;
  font-weight: 950;
}
.dg-focus-content a,
.dg-focus-content :where(p, li, div) {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.dg-focus-reference-section {
  display: grid;
  gap: .9rem;
  border-top: 1px solid rgba(15,36,72,.10);
  padding-top: 1.2rem;
}
.dg-focus-reference-section h2 {
  margin: 0;
  color: #071b4d;
  font-size: 1.15rem;
  font-weight: 950;
}
.dg-focus-reference-list { display: grid; gap: .75rem; }
.dg-focus-reference-item {
  display: grid;
  gap: .28rem;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid rgba(7,27,77,.08);
  border-radius: .95rem;
  padding: .95rem 1rem;
  background: rgba(0,201,189,.04);
}
.dg-focus-reference-title,
.dg-focus-reference-meta,
.dg-focus-reference-url {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.dg-focus-reference-title { color: #071b4d; font-weight: 950; }
.dg-focus-reference-meta { color: #64748b; font-size: .85rem; }
.dg-focus-reference-url {
  color: #008f9a;
  font-size: .85rem;
  text-decoration: none;
  word-break: break-all;
}
.dg-focus-reference-url:hover { text-decoration: underline; }
@media (max-width: 1199.98px) {
  .dg-focus-reader-layout { grid-template-columns: 1fr; }
  .dg-focus-reader-sidebar { position: static; }
}
@media (max-width: 575.98px) {
  .dg-focus-reader-card::after {
    width: 72vw;
    max-width: 72vw;
    font-size: clamp(.85rem, 6.2vw, 1.65rem);
    transform: translate(-50%, -50%) rotate(-18deg);
    opacity: .78;
  }
  .dg-focus-reader-body { padding: 1rem; }
  .dg-focus-reference-item { padding: .85rem; }
  .dg-focus-content { line-height: 1.65; }
}
@media print {
  body * { visibility: hidden !important; }
  body::before {
    content: "Stampa disabilitata: questo contenuto DentalGenius Focus è riservato all’uso personale nell’area cliente.";
    visibility: visible !important;
    display: block !important;
    margin: 2cm auto;
    max-width: 16cm;
    padding: 1.2cm;
    border: 2px solid #071b4d;
    border-radius: .5cm;
    color: #071b4d;
    font-family: Arial, sans-serif;
    font-size: 18pt;
    line-height: 1.35;
    text-align: center;
  }
  .dg-client-focus-reader-page,
  .dg-focus-reader-card,
  .dg-focus-content { display: none !important; }
}

/* =========================================================
   Final migration safety - SweetAlert above row action menus
   ========================================================= */
.swal2-container,
body.swal2-shown .swal2-container {
  z-index: 220000 !important;
}
body.swal2-shown .dg-action-menu__dropdown,
body.swal2-shown .dg-action-menu__dropdown.show {
  z-index: 1 !important;
}

/* =========================================================
   Step 10AF - Required label asterisk alignment
   ========================================================= */
.layout-wrapper.layout-content-navbar label.dg-admin-field[data-dg-required-label='1']::after,
.layout-wrapper.layout-content-navbar label.dg-public-field[data-dg-required-label='1']::after {
  content: none !important;
}
.layout-wrapper.layout-content-navbar label.dg-admin-field[data-dg-required-label='1'] > span:first-child::after,
.layout-wrapper.layout-content-navbar label.dg-public-field[data-dg-required-label='1'] > span:first-child::after,
.layout-wrapper.layout-content-navbar .dg-admin-field > span:first-child[data-dg-required-label='1']::after,
.layout-wrapper.layout-content-navbar .dg-public-field > span:first-child[data-dg-required-label='1']::after {
  content: ' *';
  color: #ff4d5e;
  font-weight: 950;
}
.dg-client-focus-commerce .is-hidden,
.dg-client-focus-checkout-page .is-hidden,
.dg-focus-checkout-alert.is-hidden,
.dg-focus-coupon-feedback.is-hidden,
.dg-focus-coupon-summary.is-hidden { display: none !important; }

/* =========================================================
   Step 2 native shell z-index and dropdown guardrails
   ========================================================= */
.swal2-container {
  z-index: 2147483000 !important;
}
.layout-wrapper.layout-content-navbar .layout-navbar,
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar nav.layout-navbar {
  z-index: 1020 !important;
}
.dropdown-menu[data-dg-dropdown-fixed='1'],
.dg-user-menu[data-dg-dropdown-fixed='1'] {
  position: fixed !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 60000 !important;
}
.dropdown-user .dg-user-menu.dropdown-menu {
  max-width: calc(100vw - 1.5rem) !important;
}
@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    z-index: 70000 !important;
  }
  .layout-overlay.layout-menu-toggle {
    z-index: 69900 !important;
  }
  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar {
    z-index: 900 !important;
  }
}


/* =========================================================
   Native shell layout guard - native-shell hotfix
   Fixes stale collapsed-sidebar state and nested scrollbars after removing the legacy shell.
   ========================================================= */
html {
  min-height: 100%;
  overflow-x: hidden !important;
}
body {
  min-height: 100%;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-width: 0 !important;
  overflow-x: hidden !important;
}
.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container {
  min-height: 100vh !important;
  overflow-y: visible !important;
}
.layout-wrapper.layout-content-navbar .layout-page {
  min-height: 100vh !important;
  padding-top: 0 !important;
  overflow-y: visible !important;
}
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-height: 0 !important;
  overflow-y: visible !important;
}
.layout-navbar-fixed .layout-wrapper.layout-content-navbar:not(.layout-without-menu) .layout-page,
.layout-navbar-fixed .layout-wrapper.layout-content-navbar:not(.layout-horizontal):not(.layout-without-menu) .layout-page {
  padding-top: 0 !important;
}
.layout-wrapper.layout-content-navbar .layout-navbar,
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar nav.layout-navbar {
  position: sticky !important;
  top: 1rem !important;
  z-index: 1020 !important;
  flex: 0 0 auto !important;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: flex !important;
    align-items: stretch !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: sticky !important;
    inset: auto !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex: 0 0 16.25rem !important;
    flex-direction: column !important;
    width: 16.25rem !important;
    min-width: 16.25rem !important;
    max-width: 16.25rem !important;
    height: 100vh !important;
    max-height: 100vh !important;
    margin: 0 !important;
    overflow: hidden !important;
    transform: none !important;
    pointer-events: auto !important;
    z-index: 1100 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page {
    flex: 1 1 auto !important;
    width: calc(100% - 16.25rem) !important;
    max-width: calc(100% - 16.25rem) !important;
    margin-left: 0 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after {
    content: 'DentalGenius AI Workspace' !important;
    display: block !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-height: 80px !important;
    padding: .9rem .95rem !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: .72rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    display: inline-grid !important;
    place-items: center !important;
    width: 2.65rem !important;
    height: 2.65rem !important;
    min-width: 2.65rem !important;
    max-width: 2.65rem !important;
    margin: 0 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: .85rem .8rem 4rem !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::before {
    content: none !important;
    display: none !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item {
    display: block !important;
    width: 100% !important;
    margin: 3px 0 !important;
    padding: 0 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .7rem !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 42px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border-radius: 15px !important;
    text-align: left !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    display: inline-grid !important;
    place-items: center !important;
    flex: 0 0 auto !important;
    width: 1.2rem !important;
    min-width: 1.2rem !important;
    height: 1.2rem !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1.08rem !important;
    line-height: 1 !important;
    transform: none !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: inline-block !important;
    content: '' !important;
  }
}

/* =========================================================
   Step 2.1 - Native app shell repair after legacy shell removal
   Fixes sidebar collapse, submenu accordion, scrollbars, loader and footer.
   ========================================================= */
:root {
  --dg-native-sidebar-width: 16.25rem;
  --dg-native-sidebar-collapsed-width: 5.25rem;
  --dg-native-scroll-track: rgba(7, 26, 70, .08);
  --dg-native-scroll-thumb: rgba(0, 201, 189, .58);
  --dg-native-scroll-thumb-hover: rgba(0, 167, 216, .74);
}

html,
body {
  scrollbar-width: thin;
  scrollbar-color: var(--dg-native-scroll-thumb) var(--dg-native-scroll-track);
}

* {
  scrollbar-width: thin;
  scrollbar-color: var(--dg-native-scroll-thumb) transparent;
}

*::-webkit-scrollbar {
  width: .72rem;
  height: .72rem;
}

*::-webkit-scrollbar-track {
  background: rgba(7, 26, 70, .05);
  border-radius: 999px;
}

*::-webkit-scrollbar-thumb {
  min-height: 3rem;
  border: .18rem solid transparent;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(0, 201, 189, .72), rgba(0, 167, 216, .72)) border-box;
  background-clip: padding-box, border-box;
}

*::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, rgba(0, 201, 189, .92), rgba(0, 167, 216, .92)) border-box;
  background-clip: padding-box, border-box;
}

.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-width: 0 !important;
}

.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper > .container-fluid,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm {
  flex: 1 0 auto !important;
  width: 100% !important;
}

.dg-page-loader,
html.dg-app-loading .dg-page-loader {
  z-index: 2147483200 !important;
}

.dg-app-loading .layout-wrapper.layout-content-navbar .layout-navbar,
.dg-app-loading .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
.dg-app-loading .dropdown-menu.show {
  z-index: auto !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
  display: none !important;
  margin: .25rem 0 .45rem !important;
  padding: .15rem 0 .25rem .55rem !important;
  list-style: none !important;
  border-left: 1px solid rgba(150, 244, 246, .12) !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-sub {
  display: block !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
  content: '›' !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin-left: auto !important;
  font-family: var(--dg-admin-font) !important;
  font-size: 1rem !important;
  line-height: 1 !important;
  color: rgba(194, 244, 248, .78) !important;
  transform: rotate(0deg) !important;
  transition: transform .18s ease, color .18s ease !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after {
  color: #fff !important;
  transform: rotate(90deg) !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
  overscroll-behavior: contain;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    min-height: 100vh !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: sticky !important;
    inset: auto !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex: 0 0 var(--dg-native-sidebar-width) !important;
    flex-direction: column !important;
    width: var(--dg-native-sidebar-width) !important;
    min-width: var(--dg-native-sidebar-width) !important;
    max-width: var(--dg-native-sidebar-width) !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow: hidden !important;
    transform: none !important;
    transition: flex-basis .22s ease, width .22s ease, min-width .22s ease, max-width .22s ease !important;
    z-index: 1100 !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    flex-basis: var(--dg-native-sidebar-collapsed-width) !important;
    width: var(--dg-native-sidebar-collapsed-width) !important;
    min-width: var(--dg-native-sidebar-collapsed-width) !important;
    max-width: var(--dg-native-sidebar-collapsed-width) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    display: block !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    padding: .85rem .8rem 4.25rem !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::-webkit-scrollbar {
    width: .55rem;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, .04);
    border-radius: 999px;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::-webkit-scrollbar-thumb {
    border: .14rem solid transparent;
    background: linear-gradient(180deg, rgba(150, 244, 246, .52), rgba(0, 201, 189, .44)) border-box;
    background-clip: padding-box, border-box;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 3px 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: .72rem !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border-radius: 15px !important;
    overflow: hidden !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    display: inline-grid !important;
    place-items: center !important;
    flex: 0 0 1.25rem !important;
    width: 1.25rem !important;
    min-width: 1.25rem !important;
    height: 1.25rem !important;
    margin: 0 !important;
    font-size: 1.12rem !important;
    line-height: 1 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after {
    content: none !important;
    display: none !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    padding-inline: .65rem !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    justify-content: center !important;
    gap: 0 !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge),
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .7rem !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    gap: 0 !important;
    width: 3.25rem !important;
    min-width: 3.25rem !important;
    max-width: 3.25rem !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: none !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    z-index: 2147482000 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-bottom: 2rem !important;
  }

  .layout-overlay.layout-menu-toggle {
    z-index: 2147481900 !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar {
    z-index: 900 !important;
  }
}

.dropdown-menu[data-dg-dropdown-fixed='1'],
.dg-user-menu[data-dg-dropdown-fixed='1'] {
  position: fixed !important;
  right: auto !important;
  bottom: auto !important;
  max-width: calc(100vw - 1.5rem) !important;
  max-height: calc(100dvh - 1.5rem) !important;
  overflow: auto !important;
  z-index: 2147482500 !important;
}

.dropdown-user .dg-user-menu.dropdown-menu,
.dropdown-user .dg-user-menu.dropdown-menu.show {
  min-width: min(19.5rem, calc(100vw - 1.5rem)) !important;
  width: min(19.5rem, calc(100vw - 1.5rem)) !important;
  max-width: calc(100vw - 1.5rem) !important;
  overflow: auto !important;
}

.dropdown-user .dg-user-menu .dg-navbar-dropdown-item,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item {
  display: flex !important;
  align-items: center !important;
  gap: .72rem !important;
  width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
}

.dropdown-user .dg-user-menu .dg-navbar-dropdown-item span,
.dropdown-user .dg-user-menu button.dg-navbar-dropdown-item span,
.dropdown-user .dg-user-menu__identity {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.dg-app-footer {
  flex: 0 0 auto !important;
  margin-top: auto !important;
  padding: .25rem 0 1.25rem !important;
  background: transparent !important;
  color: #0f2448 !important;
}

.dg-app-footer__inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  width: 100% !important;
  min-height: 2.5rem !important;
}

.dg-app-footer__copy,
.dg-app-footer__links {
  display: inline-flex !important;
  align-items: center !important;
  gap: .35rem !important;
  min-width: 0 !important;
  color: #0f2448 !important;
  font-weight: 700 !important;
}

.dg-app-footer .footer-link {
  color: #00a7a8 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.dg-app-footer .footer-link:hover,
.dg-app-footer .footer-link:focus-visible {
  color: #027b83 !important;
  text-decoration: underline !important;
}

@media (max-width: 767.98px) {
  .dg-app-footer__inner {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* =========================================================
   Step 2.2 - Native shell hardening
   Final overrides after removing legacy menu JS.
   ========================================================= */
:root {
  --dg-native-sidebar-width: 16.25rem;
  --dg-native-sidebar-collapsed-width: 5.25rem;
  --dg-native-navbar-z: 1020;
  --dg-native-menu-z: 2147483200;
  --dg-native-overlay-z: 2147483100;
}

html,
body {
  min-height: 100%;
  overflow-x: hidden !important;
}

.layout-wrapper.layout-content-navbar {
  min-height: 100dvh !important;
}

.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page {
  min-height: 100dvh !important;
}

.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper > .container-fluid,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm {
  flex: 0 0 auto !important;
  width: 100% !important;
}

.layout-wrapper.layout-content-navbar .layout-navbar {
  z-index: var(--dg-native-navbar-z) !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
  scrollbar-width: thin !important;
  scrollbar-color: rgba(150, 244, 246, .42) transparent !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::-webkit-scrollbar {
  width: .42rem !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::-webkit-scrollbar-track {
  background: transparent !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner::-webkit-scrollbar-thumb {
  min-height: 3rem !important;
  border: .12rem solid transparent !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, rgba(150, 244, 246, .52), rgba(0, 201, 189, .44)) border-box !important;
  background-clip: padding-box, border-box !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active > .menu-link:not(.menu-toggle)::after {
  content: none !important;
  display: none !important;
  box-shadow: none !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
  display: flex !important;
  align-items: center !important;
  gap: .72rem !important;
  position: relative !important;
  overflow: hidden !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 1.25rem !important;
  width: 1.25rem !important;
  min-width: 1.25rem !important;
  height: 1.25rem !important;
  margin: 0 !important;
  line-height: 1 !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge) {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after {
  content: '›' !important;
  position: static !important;
  inset: auto !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 1.25rem !important;
  width: 1.25rem !important;
  height: 1.25rem !important;
  min-width: 1.25rem !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(194, 244, 248, .78) !important;
  font-family: var(--dg-admin-font) !important;
  font-size: 1.05rem !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: rotate(0deg) !important;
  transform-origin: center !important;
  transition: transform .18s ease, color .18s ease !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after {
  color: #fff !important;
  transform: rotate(90deg) !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
  display: none !important;
  margin: .25rem 0 .45rem !important;
  padding: .15rem 0 .25rem .75rem !important;
  border-left: 1px solid rgba(150, 244, 246, .14) !important;
  list-style: none !important;
  overflow: hidden !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-sub {
  display: block !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub .menu-link {
  min-height: 36px !important;
  padding-left: 1rem !important;
  border-radius: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: flex !important;
    align-items: stretch !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: sticky !important;
    top: 0 !important;
    display: flex !important;
    flex: 0 0 var(--dg-native-sidebar-width) !important;
    flex-direction: column !important;
    width: var(--dg-native-sidebar-width) !important;
    min-width: var(--dg-native-sidebar-width) !important;
    max-width: var(--dg-native-sidebar-width) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
    transform: none !important;
    transition: flex-basis .22s ease, width .22s ease, min-width .22s ease, max-width .22s ease !important;
    z-index: 1100 !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    flex-basis: var(--dg-native-sidebar-collapsed-width) !important;
    width: var(--dg-native-sidebar-collapsed-width) !important;
    min-width: var(--dg-native-sidebar-collapsed-width) !important;
    max-width: var(--dg-native-sidebar-collapsed-width) !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .7rem !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    gap: 0 !important;
    width: 3.25rem !important;
    min-width: 3.25rem !important;
    max-width: 3.25rem !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
    content: none !important;
    display: none !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    width: min(84vw, 320px) !important;
    min-width: 0 !important;
    max-width: min(84vw, 320px) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    transform: translateX(-105%) !important;
    transition: transform .22s ease !important;
    z-index: var(--dg-native-menu-z) !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translateX(0) !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  html.layout-menu-expanded #layout-navbar,
  body.layout-menu-expanded #layout-navbar {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  html.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  body.layout-menu-expanded .layout-overlay.layout-menu-toggle {
    display: block !important;
    z-index: var(--dg-native-overlay-z) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    max-height: calc(100dvh - 5.25rem) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    margin-left: auto !important;
  }
}

body > .dropdown-menu[data-dg-dropdown-portal='1'],
body > [data-dg-dropdown-menu][data-dg-dropdown-portal='1'] {
  position: fixed !important;
  right: auto !important;
  bottom: auto !important;
  margin: 0 !important;
  max-width: calc(100vw - 1.5rem) !important;
  max-height: calc(100dvh - 1.5rem) !important;
  overflow-y: auto !important;
  z-index: 2147483000 !important;
}

body > .dropdown-menu[data-dg-dropdown-portal='1'].show,
body > [data-dg-dropdown-menu][data-dg-dropdown-portal='1'].show {
  display: block !important;
}

body > .dg-user-menu[data-dg-dropdown-portal='1'] {
  min-width: min(19.5rem, calc(100vw - 1.5rem)) !important;
  width: min(19.5rem, calc(100vw - 1.5rem)) !important;
}

.dg-app-footer {
  flex: 0 0 auto !important;
  margin-top: auto !important;
  padding: .35rem 0 .75rem !important;
  background: transparent !important;
}

.dg-app-footer__inner {
  min-height: 2rem !important;
}

/* =========================================================
   Step 2.3 - Native shell final polish: fixed desktop sidebar,
   centered mobile drawer, navy account menu and footer lock.
   ========================================================= */
:root {
  --dg-native-sidebar-left-gap: .85rem;
  --dg-native-sidebar-top-gap: 1rem;
  --dg-native-sidebar-content-gap: 1.35rem;
  --dg-native-sidebar-width: 16.25rem;
  --dg-native-sidebar-collapsed-width: 5.15rem;
  --dg-native-mobile-menu-z: 2147483200;
  --dg-native-mobile-overlay-z: 2147483100;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: block !important;
    min-height: 100dvh !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-native-sidebar-top-gap) !important;
    bottom: var(--dg-native-sidebar-top-gap) !important;
    left: var(--dg-native-sidebar-left-gap) !important;
    right: auto !important;
    display: flex !important;
    flex-direction: column !important;
    width: var(--dg-native-sidebar-width) !important;
    min-width: var(--dg-native-sidebar-width) !important;
    max-width: var(--dg-native-sidebar-width) !important;
    height: calc(100dvh - (var(--dg-native-sidebar-top-gap) * 2)) !important;
    max-height: calc(100dvh - (var(--dg-native-sidebar-top-gap) * 2)) !important;
    border: 1px solid rgba(255, 255, 255, .10) !important;
    border-radius: 1.65rem !important;
    overflow: hidden !important;
    z-index: 1100 !important;
    transform: translate3d(0, 0, 0) !important;
    transition:
      width .26s cubic-bezier(.4, 0, .2, 1),
      min-width .26s cubic-bezier(.4, 0, .2, 1),
      max-width .26s cubic-bezier(.4, 0, .2, 1),
      transform .26s cubic-bezier(.4, 0, .2, 1),
      border-radius .26s ease,
      box-shadow .26s ease !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page {
    width: auto !important;
    min-width: 0 !important;
    min-height: 100dvh !important;
    margin-left: calc(var(--dg-native-sidebar-left-gap) + var(--dg-native-sidebar-width) + var(--dg-native-sidebar-content-gap)) !important;
    transition: margin-left .26s cubic-bezier(.4, 0, .2, 1) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-native-sidebar-collapsed-width) !important;
    min-width: var(--dg-native-sidebar-collapsed-width) !important;
    max-width: var(--dg-native-sidebar-collapsed-width) !important;
    transform: translate3d(-.18rem, 0, 0) !important;
    border-radius: 1.5rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-native-sidebar-left-gap) + var(--dg-native-sidebar-collapsed-width) + var(--dg-native-sidebar-content-gap)) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding-bottom: 1.35rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    padding: .9rem 0 .7rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    width: 3.05rem !important;
    min-width: 3.05rem !important;
    height: 3.05rem !important;
    border-radius: 1rem !important;
  }
}

/* One real page scroll; footer is always pushed to the bottom when the view is short. */
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100dvh !important;
}
.layout-wrapper.layout-content-navbar .content-wrapper {
  flex: 1 1 auto !important;
}
.layout-wrapper.layout-content-navbar .content-wrapper > .container,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-fluid {
  flex: 1 0 auto !important;
}
.dg-app-footer {
  margin-top: auto !important;
  padding-top: .5rem !important;
  padding-bottom: 1rem !important;
}
.dg-app-footer__copy {
  gap: .28rem !important;
}

/* Clean native submenu chevrons: no old L-shapes or duplicated arrows. */
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
  content: '' !important;
  display: inline-block !important;
  flex: 0 0 .55rem !important;
  width: .55rem !important;
  height: .55rem !important;
  margin-left: auto !important;
  border: solid currentColor !important;
  border-width: 0 2px 2px 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(194, 244, 248, .82) !important;
  opacity: 1 !important;
  transform: rotate(-45deg) !important;
  transform-origin: center !important;
  transition: transform .18s ease, color .18s ease !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after {
  color: #fff !important;
  transform: rotate(45deg) !important;
}
@media (min-width: 1200px) {
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    content: none !important;
    display: none !important;
  }
}

/* Centered mobile app drawer, above navbar and bottom bar, with blurred overlay. */
@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: 12px !important;
    right: auto !important;
    bottom: 12px !important;
    left: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    width: min(430px, calc(100vw - 24px)) !important;
    min-width: 0 !important;
    max-width: min(430px, calc(100vw - 24px)) !important;
    height: calc(100dvh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    margin: 0 !important;
    border-radius: 30px !important;
    z-index: var(--dg-native-mobile-menu-z) !important;
    transform: translate3d(calc(-50% - 110vw), 0, 0) !important;
    transition: transform .28s cubic-bezier(.4, 0, .2, 1), box-shadow .28s ease !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    transform: translate3d(-50%, 0, 0) !important;
    box-shadow: 0 26px 90px rgba(2, 16, 47, .44) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1rem 1rem 1.35rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    min-height: 48px !important;
    font-size: 14.5px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay,
  .layout-overlay.layout-menu-toggle {
    position: fixed !important;
    inset: 0 !important;
    display: block !important;
    z-index: var(--dg-native-mobile-overlay-z) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(3, 10, 31, .56) !important;
    backdrop-filter: blur(12px) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
  }

  html.layout-menu-expanded .layout-overlay,
  body.layout-menu-expanded .layout-overlay,
  .layout-menu-expanded .layout-overlay.layout-menu-toggle {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  html.layout-menu-expanded #layout-navbar,
  body.layout-menu-expanded #layout-navbar {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  html.layout-menu-expanded .dg-app-bottom-nav,
  body.layout-menu-expanded .dg-app-bottom-nav,
  html.layout-menu-expanded .dg-client-bottom-nav,
  body.layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1 !important;
    pointer-events: none !important;
  }
}

/* Navy account dropdown even after the native dropdown is portalled under <body>. */
.dg-user-menu.dropdown-menu,
.dg-user-menu.dropdown-menu.show,
body > .dg-user-menu[data-dg-dropdown-portal='1'],
body > .dg-user-menu[data-dg-dropdown-portal='1'].show {
  width: min(19.5rem, calc(100vw - 1.5rem)) !important;
  min-width: min(19.5rem, calc(100vw - 1.5rem)) !important;
  max-width: calc(100vw - 1.5rem) !important;
  padding: .78rem !important;
  border: 1px solid rgba(138, 245, 255, .24) !important;
  border-radius: 1.45rem !important;
  color: rgba(232, 249, 255, .96) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(0,201,189,.28), transparent 9rem),
    linear-gradient(155deg, #071a46 0%, #082057 46%, #043f54 100%) !important;
  box-shadow: 0 1.75rem 5rem rgba(7,26,70,.36) !important;
  backdrop-filter: blur(20px) !important;
}
.dg-user-menu .dg-navbar-dropdown-item,
.dg-user-menu button.dg-navbar-dropdown-item {
  display: flex !important;
  align-items: center !important;
  gap: .72rem !important;
  width: 100% !important;
  min-height: 2.8rem !important;
  padding: .72rem .78rem !important;
  border-radius: .95rem !important;
  color: rgba(232, 249, 255, .96) !important;
  background: transparent !important;
  font-weight: 850 !important;
}
.dg-user-menu .dg-navbar-dropdown-item span,
.dg-user-menu button.dg-navbar-dropdown-item span,
.dg-user-menu .dg-user-menu__identity {
  min-width: 0 !important;
  color: inherit !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.dg-user-menu .dg-navbar-dropdown-item > i,
.dg-user-menu button.dg-navbar-dropdown-item > i {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 2rem !important;
  width: 2rem !important;
  height: 2rem !important;
  margin: 0 !important;
  border: 1px solid rgba(159, 244, 246, .22) !important;
  border-radius: .78rem !important;
  color: #d7fdff !important;
  background: rgba(159, 244, 246, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.dg-user-menu .dg-navbar-dropdown-item:hover,
.dg-user-menu .dg-navbar-dropdown-item:focus,
.dg-user-menu button.dg-navbar-dropdown-item:hover,
.dg-user-menu button.dg-navbar-dropdown-item:focus {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(0,201,189,.18)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 .9rem 2.2rem rgba(0,0,0,.16) !important;
  transform: translateY(-1px);
}
.dg-user-menu .dg-navbar-dropdown-item:hover > i,
.dg-user-menu .dg-navbar-dropdown-item:focus > i,
.dg-user-menu button.dg-navbar-dropdown-item:hover > i,
.dg-user-menu button.dg-navbar-dropdown-item:focus > i {
  color: #071a46 !important;
  background: #b8fbff !important;
  border-color: rgba(255,255,255,.70) !important;
}
.dg-user-menu .dg-user-menu__header,
.dg-user-menu .dg-user-menu__header:hover,
.dg-user-menu .dg-user-menu__header:focus {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(0,201,189,.18), rgba(255,255,255,.07)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
  transform: none !important;
}
.dg-user-menu .dg-user-menu__header h6,
.dg-user-menu .dg-user-menu__header:hover h6,
.dg-user-menu .dg-user-menu__header:focus h6 {
  color: #fff !important;
}
.dg-user-menu .dg-user-menu__header small,
.dg-user-menu .dg-user-menu__header:hover small,
.dg-user-menu .dg-user-menu__header:focus small {
  color: rgba(194, 244, 248, .82) !important;
}
.dg-user-menu .dg-navbar-dropdown-divider {
  background: rgba(255,255,255,.10) !important;
}

/* =========================================================
   Step 2.4 - Stable native shell: fixed navbar, rail hover,
   centered mobile drawer and clean submenu chevrons.
   ========================================================= */
:root {
  --dg-shell-sidebar-left: .85rem;
  --dg-shell-sidebar-top: 1rem;
  --dg-shell-sidebar-width: 16.25rem;
  --dg-shell-sidebar-rail: 5.15rem;
  --dg-shell-content-gap: 1.35rem;
  --dg-shell-navbar-top: 1rem;
  --dg-shell-navbar-side: 1rem;
  --dg-shell-navbar-height: 4rem;
  --dg-shell-mobile-gutter: 14px;
  --dg-shell-z-navbar: 1200;
  --dg-shell-z-overlay: 2147483000;
  --dg-shell-z-menu: 2147483100;
}

html,
body {
  overflow-x: hidden !important;
}

.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-width: 0 !important;
}

.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper > .container,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-fluid {
  width: 100% !important;
  flex: 1 0 auto !important;
}

/* Navbar: fixed glass bar, restored after legacy shell removal. */
.layout-navbar-fixed .layout-wrapper.layout-content-navbar:not(.layout-without-menu) .layout-page,
.layout-navbar-fixed .layout-wrapper.layout-content-navbar:not(.layout-horizontal):not(.layout-without-menu) .layout-page {
  padding-top: 0 !important;
}

.layout-wrapper.layout-content-navbar #layout-navbar,
.layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
.layout-wrapper.layout-content-navbar nav.layout-navbar {
  position: fixed !important;
  top: var(--dg-shell-navbar-top) !important;
  z-index: var(--dg-shell-z-navbar) !important;
  margin: 0 !important;
  max-width: none !important;
  width: auto !important;
  min-height: var(--dg-shell-navbar-height) !important;
}

/* Clean chevron: no borders/old pseudo-elements. */
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::before {
  content: none !important;
  display: none !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after {
  content: '›' !important;
  position: static !important;
  inset: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 1.4rem !important;
  width: 1.4rem !important;
  height: 1.4rem !important;
  min-width: 1.4rem !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: .7rem !important;
  outline: 0 !important;
  background: rgba(255,255,255,.06) !important;
  box-shadow: none !important;
  color: rgba(194,244,248,.88) !important;
  font-family: var(--dg-admin-font) !important;
  font-size: 1.45rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: rotate(0deg) !important;
  transform-origin: center !important;
  transition: transform .18s ease, color .18s ease, background .18s ease !important;
}
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after {
  color: #fff !important;
  background: rgba(255,255,255,.14) !important;
  transform: rotate(90deg) !important;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: block !important;
    min-height: 100dvh !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-shell-sidebar-top) !important;
    bottom: var(--dg-shell-sidebar-top) !important;
    left: var(--dg-shell-sidebar-left) !important;
    right: auto !important;
    display: flex !important;
    flex-direction: column !important;
    width: var(--dg-shell-sidebar-width) !important;
    min-width: var(--dg-shell-sidebar-width) !important;
    max-width: var(--dg-shell-sidebar-width) !important;
    height: calc(100dvh - (var(--dg-shell-sidebar-top) * 2)) !important;
    max-height: calc(100dvh - (var(--dg-shell-sidebar-top) * 2)) !important;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 1.65rem !important;
    overflow: hidden !important;
    transform: translate3d(0,0,0) !important;
    transition: width .26s cubic-bezier(.4,0,.2,1), min-width .26s cubic-bezier(.4,0,.2,1), max-width .26s cubic-bezier(.4,0,.2,1), box-shadow .26s ease, transform .26s ease !important;
    z-index: 1300 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding: .85rem .8rem 1.35rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page {
    width: auto !important;
    min-width: 0 !important;
    min-height: 100dvh !important;
    margin-left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-width) + var(--dg-shell-content-gap)) !important;
    padding-top: calc(var(--dg-shell-navbar-top) + var(--dg-shell-navbar-height) + 1.05rem) !important;
    transition: margin-left .26s cubic-bezier(.4,0,.2,1) !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-width) + var(--dg-shell-content-gap) + var(--dg-shell-navbar-side)) !important;
    right: calc(var(--dg-shell-navbar-side) + .15rem) !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-rail) + var(--dg-shell-content-gap)) !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar nav.layout-navbar,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-rail) + var(--dg-shell-content-gap) + var(--dg-shell-navbar-side)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-shell-sidebar-rail) !important;
    min-width: var(--dg-shell-sidebar-rail) !important;
    max-width: var(--dg-shell-sidebar-rail) !important;
    border-radius: 1.45rem !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-shell-sidebar-width) !important;
    min-width: var(--dg-shell-sidebar-width) !important;
    max-width: var(--dg-shell-sidebar-width) !important;
    box-shadow: 24px 0 70px rgba(7,26,70,.24) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge {
    display: initial !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
    max-width: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    padding: .9rem .45rem .75rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    justify-content: center !important;
    gap: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .72rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    gap: 0 !important;
    width: 3.15rem !important;
    min-width: 3.15rem !important;
    max-width: 3.15rem !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    margin: 0 !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: 0 !important;
    padding-top: calc(var(--dg-shell-navbar-top) + var(--dg-shell-navbar-height) + 1rem) !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: var(--dg-shell-mobile-gutter) !important;
    right: var(--dg-shell-mobile-gutter) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-shell-mobile-gutter) !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    width: min(430px, calc(100vw - (var(--dg-shell-mobile-gutter) * 2))) !important;
    min-width: 0 !important;
    max-width: min(430px, calc(100vw - (var(--dg-shell-mobile-gutter) * 2))) !important;
    height: calc(100dvh - (var(--dg-shell-mobile-gutter) * 2)) !important;
    max-height: calc(100dvh - (var(--dg-shell-mobile-gutter) * 2)) !important;
    margin: 0 !important;
    border-radius: 30px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-50%, 0, 0) scale(.96) !important;
    transform-origin: center !important;
    transition: opacity .22s ease, visibility .22s ease, transform .28s cubic-bezier(.4,0,.2,1) !important;
    z-index: var(--dg-shell-z-menu) !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(-50%, 0, 0) scale(1) !important;
    box-shadow: 0 26px 90px rgba(2,16,47,.34) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1rem 1rem 1.25rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    min-height: 48px !important;
    font-size: 14.5px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay.layout-menu-toggle,
  .layout-overlay.layout-menu-toggle {
    position: fixed !important;
    inset: 0 !important;
    display: block !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(3,10,31,.18) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
    z-index: var(--dg-shell-z-overlay) !important;
  }

  html.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  body.layout-menu-expanded .layout-overlay.layout-menu-toggle {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  html.layout-menu-expanded .dg-app-bottom-nav,
  body.layout-menu-expanded .dg-app-bottom-nav,
  html.layout-menu-expanded .dg-client-bottom-nav,
  body.layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1 !important;
    pointer-events: none !important;
  }
}

/* =========================================================
   DentalGenius native shell canonical override v81
   Purpose: stable native sidebar/navbar/mobile drawer after legacy shell removal.
   This block intentionally wins over older transitional rules above.
   ========================================================= */
:root {
  --dg-shell-nav-top: 1rem;
  --dg-shell-nav-height: 4.2rem;
  --dg-shell-side-left: .85rem;
  --dg-shell-side-top: 1rem;
  --dg-shell-side-width: 16.25rem;
  --dg-shell-side-rail: 4.85rem;
  --dg-shell-side-gap: 1.35rem;
  --dg-shell-mobile-gap: .75rem;
  --dg-shell-z-navbar: 1040;
  --dg-shell-z-sidebar: 1060;
  --dg-shell-z-sidebar-hover: 1120;
  --dg-shell-z-overlay: 2147483100;
  --dg-shell-z-drawer: 2147483200;
}

.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-width: 0 !important;
}

.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-height: 100dvh !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm,
.layout-wrapper.layout-content-navbar .content-wrapper > .container,
.layout-wrapper.layout-content-navbar .content-wrapper > [class*='container-'] {
  flex: 1 0 auto !important;
}

.layout-wrapper.layout-content-navbar .content-footer,
.layout-wrapper.layout-content-navbar .footer,
.dg-app-footer {
  flex: 0 0 auto !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::before,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::before,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::before {
  content: none !important;
  display: none !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
  content: '›' !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 1.45rem !important;
  width: 1.45rem !important;
  height: 1.45rem !important;
  min-width: 1.45rem !important;
  min-height: 1.45rem !important;
  margin-left: auto !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 999px !important;
  color: rgba(200,250,252,.94) !important;
  background: rgba(255,255,255,.08) !important;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-size: 1.18rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  transform: none !important;
  transition: transform .18s ease, background .18s ease, color .18s ease !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
  color: #fff !important;
  background: rgba(255,255,255,.14) !important;
  transform: rotate(90deg) !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub {
  overflow: hidden !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub[hidden] {
  display: none !important;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: block !important;
    min-height: 100dvh !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-shell-side-top) !important;
    bottom: var(--dg-shell-side-top) !important;
    left: var(--dg-shell-side-left) !important;
    right: auto !important;
    display: flex !important;
    flex-direction: column !important;
    width: var(--dg-shell-side-width) !important;
    min-width: var(--dg-shell-side-width) !important;
    max-width: var(--dg-shell-side-width) !important;
    height: calc(100dvh - (var(--dg-shell-side-top) * 2)) !important;
    max-height: calc(100dvh - (var(--dg-shell-side-top) * 2)) !important;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 1.65rem !important;
    overflow: hidden !important;
    transform: translate3d(0, 0, 0) !important;
    z-index: var(--dg-shell-z-sidebar) !important;
    transition: width .24s cubic-bezier(.4,0,.2,1), min-width .24s cubic-bezier(.4,0,.2,1), max-width .24s cubic-bezier(.4,0,.2,1), box-shadow .24s ease, transform .24s cubic-bezier(.4,0,.2,1) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page {
    width: auto !important;
    min-width: 0 !important;
    min-height: 100dvh !important;
    margin-left: calc(var(--dg-shell-side-left) + var(--dg-shell-side-width) + var(--dg-shell-side-gap)) !important;
    padding-top: 0 !important;
    transition: margin-left .24s cubic-bezier(.4,0,.2,1) !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    position: fixed !important;
    top: var(--dg-shell-nav-top) !important;
    left: calc(var(--dg-shell-side-left) + var(--dg-shell-side-width) + var(--dg-shell-side-gap)) !important;
    right: 1.35rem !important;
    width: auto !important;
    min-height: var(--dg-shell-nav-height) !important;
    z-index: var(--dg-shell-z-navbar) !important;
    transition: left .24s cubic-bezier(.4,0,.2,1), right .24s cubic-bezier(.4,0,.2,1), box-shadow .18s ease !important;
  }

  .layout-wrapper.layout-content-navbar .content-wrapper {
    padding-top: calc(var(--dg-shell-nav-top) + var(--dg-shell-nav-height) + 1.9rem) !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-shell-side-left) + var(--dg-shell-side-rail) + var(--dg-shell-side-gap)) !important;
  }

  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  html.layout-menu-collapsed .layout-wrapper.layout-content-navbar nav.layout-navbar,
  body.layout-menu-collapsed .layout-wrapper.layout-content-navbar nav.layout-navbar,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-menu-collapsed .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-shell-side-left) + var(--dg-shell-side-rail) + var(--dg-shell-side-gap)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-shell-side-rail) !important;
    min-width: var(--dg-shell-side-rail) !important;
    max-width: var(--dg-shell-side-rail) !important;
    transform: translate3d(0, 0, 0) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-shell-side-width) !important;
    min-width: var(--dg-shell-side-width) !important;
    max-width: var(--dg-shell-side-width) !important;
    z-index: var(--dg-shell-z-sidebar-hover) !important;
    box-shadow: 22px 0 72px rgba(7,26,70,.24) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar::after,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
    max-width: none !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 1.45rem !important;
    max-width: 1.45rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    padding: .95rem .55rem .75rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    justify-content: center !important;
    gap: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    padding-inline: .68rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    gap: 0 !important;
    width: 3.15rem !important;
    min-width: 3.15rem !important;
    max-width: 3.15rem !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: flex-start !important;
    gap: .72rem !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: .88rem !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: 0 !important;
    padding-top: 0 !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    position: fixed !important;
    top: var(--dg-shell-mobile-gap) !important;
    left: var(--dg-shell-mobile-gap) !important;
    right: var(--dg-shell-mobile-gap) !important;
    width: auto !important;
    min-height: var(--dg-shell-nav-height) !important;
    z-index: var(--dg-shell-z-navbar) !important;
  }

  .layout-wrapper.layout-content-navbar .content-wrapper {
    padding-top: calc(var(--dg-shell-mobile-gap) + var(--dg-shell-nav-height) + 1.65rem) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-shell-mobile-gap) !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    width: min(96vw, calc(100vw - (var(--dg-shell-mobile-gap) * 2))) !important;
    min-width: 0 !important;
    max-width: min(96vw, 460px) !important;
    height: calc(100dvh - (var(--dg-shell-mobile-gap) * 2)) !important;
    max-height: calc(100dvh - (var(--dg-shell-mobile-gap) * 2)) !important;
    margin: 0 !important;
    border-radius: 30px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-50%, -.5rem, 0) scale(.96) !important;
    transform-origin: center !important;
    transition: opacity .22s ease, visibility .22s ease, transform .28s cubic-bezier(.4,0,.2,1) !important;
    z-index: var(--dg-shell-z-drawer) !important;
  }

  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-50%, -.5rem, 0) scale(.96) !important;
    box-shadow: none !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(-50%, 0, 0) scale(1) !important;
    box-shadow: 0 28px 95px rgba(2,16,47,.34) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1rem 1rem max(1rem, env(safe-area-inset-bottom)) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    min-height: 48px !important;
    font-size: 14.5px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    flex-basis: 1.5rem !important;
    width: 1.5rem !important;
    height: 1.5rem !important;
    min-width: 1.5rem !important;
    min-height: 1.5rem !important;
    font-size: 1.12rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay.layout-menu-toggle,
  .layout-overlay.layout-menu-toggle {
    position: fixed !important;
    inset: 0 !important;
    display: block !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(3,10,31,.10) !important;
    backdrop-filter: blur(24px) saturate(1.12) !important;
    -webkit-backdrop-filter: blur(24px) saturate(1.12) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
    z-index: var(--dg-shell-z-overlay) !important;
  }

  html.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  body.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  .layout-menu-expanded .layout-overlay.layout-menu-toggle {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  html.layout-menu-expanded .dg-app-bottom-nav,
  body.layout-menu-expanded .dg-app-bottom-nav,
  html.layout-menu-expanded .dg-client-bottom-nav,
  body.layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1 !important;
    pointer-events: none !important;
  }
}

/* =========================================================
   DentalGenius native shell final guard v82
   Fix: stable detached desktop rail, fixed navbar, clean hover,
   full mobile drawer with bottom margin and centered chevrons.
   This block intentionally overrides older transition blocks above.
   ========================================================= */
:root {
  --dg-native-nav-top: 1rem;
  --dg-native-nav-height: 4.2rem;
  --dg-native-left: .95rem;
  --dg-native-top: 1rem;
  --dg-native-width: 16.35rem;
  --dg-native-rail: 4.9rem;
  --dg-native-gap: 1.45rem;
  --dg-native-page-right: 1.35rem;
  --dg-native-mobile-gap: clamp(10px, 3vw, 18px);
  --dg-native-z-navbar: 1040;
  --dg-native-z-sidebar: 1060;
  --dg-native-z-sidebar-hover: 1120;
  --dg-native-z-overlay: 2147483100;
  --dg-native-z-drawer: 2147483200;
}

.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-width: 0 !important;
}

.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-height: 100dvh !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm,
.layout-wrapper.layout-content-navbar .content-wrapper > .container,
.layout-wrapper.layout-content-navbar .content-wrapper > [class*='container-'] {
  flex: 1 0 auto !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::before,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::before,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::before {
  content: none !important;
  display: none !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
  content: '\203A' !important;
  position: static !important;
  inset: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 1.55rem !important;
  width: 1.55rem !important;
  height: 1.55rem !important;
  min-width: 1.55rem !important;
  min-height: 1.55rem !important;
  margin: 0 0 0 auto !important;
  padding: 0 0 .08rem 0 !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.085) !important;
  box-shadow: none !important;
  color: rgba(201,250,252,.94) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1.22rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: translateY(-.01rem) rotate(0deg) !important;
  transform-origin: center !important;
  transition: transform .18s ease, background .18s ease, color .18s ease !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
  color: #fff !important;
  background: rgba(255,255,255,.15) !important;
  transform: translateY(-.01rem) rotate(90deg) !important;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: block !important;
    min-height: 100dvh !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-native-top) !important;
    right: auto !important;
    bottom: var(--dg-native-top) !important;
    left: var(--dg-native-left) !important;
    display: flex !important;
    flex-direction: column !important;
    width: var(--dg-native-width) !important;
    min-width: var(--dg-native-width) !important;
    max-width: var(--dg-native-width) !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,.11) !important;
    border-radius: 1.7rem !important;
    overflow: hidden !important;
    transform: translate3d(0,0,0) !important;
    z-index: var(--dg-native-z-sidebar) !important;
    transition: width .24s cubic-bezier(.4,0,.2,1), min-width .24s cubic-bezier(.4,0,.2,1), max-width .24s cubic-bezier(.4,0,.2,1), box-shadow .24s ease !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
    min-height: 4.35rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    display: inline-flex !important;
    align-items: center !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding: .85rem .8rem max(1.15rem, env(safe-area-inset-bottom)) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page {
    width: auto !important;
    min-width: 0 !important;
    min-height: 100dvh !important;
    margin-left: calc(var(--dg-native-left) + var(--dg-native-width) + var(--dg-native-gap)) !important;
    padding-top: 0 !important;
    transition: margin-left .24s cubic-bezier(.4,0,.2,1) !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    position: fixed !important;
    top: var(--dg-native-nav-top) !important;
    left: calc(var(--dg-native-left) + var(--dg-native-width) + var(--dg-native-gap)) !important;
    right: var(--dg-native-page-right) !important;
    width: auto !important;
    max-width: none !important;
    min-height: var(--dg-native-nav-height) !important;
    margin: 0 !important;
    z-index: var(--dg-native-z-navbar) !important;
    transition: left .24s cubic-bezier(.4,0,.2,1), right .24s ease, box-shadow .18s ease !important;
  }

  .layout-wrapper.layout-content-navbar .content-wrapper {
    padding-top: calc(var(--dg-native-nav-top) + var(--dg-native-nav-height) + 2.1rem) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-native-left) + var(--dg-native-rail) + var(--dg-native-gap)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar nav.layout-navbar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar nav.layout-navbar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-native-left) + var(--dg-native-rail) + var(--dg-native-gap)) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-native-left) + var(--dg-native-width) + var(--dg-native-gap)) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar nav.layout-navbar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar nav.layout-navbar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-native-left) + var(--dg-native-width) + var(--dg-native-gap)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-native-rail) !important;
    min-width: var(--dg-native-rail) !important;
    max-width: var(--dg-native-rail) !important;
    left: var(--dg-native-left) !important;
    border-radius: 1.45rem !important;
    box-shadow: 0 22px 50px rgba(7,26,70,.20) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    width: var(--dg-native-width) !important;
    min-width: var(--dg-native-width) !important;
    max-width: var(--dg-native-width) !important;
    z-index: var(--dg-native-z-sidebar-hover) !important;
    box-shadow: 24px 0 70px rgba(7,26,70,.24), 0 24px 70px rgba(7,26,70,.18) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    justify-content: center !important;
    align-items: center !important;
    padding: .78rem .55rem .7rem !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 0 !important;
    padding: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 2.9rem !important;
    width: 2.9rem !important;
    height: 2.9rem !important;
    min-width: 2.9rem !important;
    margin: 0 auto !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    padding: .78rem .62rem max(1rem, env(safe-area-inset-bottom)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: center !important;
    align-items: center !important;
    gap: 0 !important;
    width: 3.18rem !important;
    min-width: 3.18rem !important;
    max-width: 3.18rem !important;
    height: 3.18rem !important;
    min-height: 3.18rem !important;
    margin: 0 auto .18rem !important;
    padding: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    flex: 0 0 auto !important;
    width: 1.2rem !important;
    min-width: 1.2rem !important;
    margin: 0 !important;
    text-align: center !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: flex-start !important;
    gap: .72rem !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 2.9rem !important;
    margin: 0 !important;
    padding: .72rem .88rem !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: 0 !important;
    padding-top: 0 !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    position: fixed !important;
    top: var(--dg-native-mobile-gap) !important;
    left: var(--dg-native-mobile-gap) !important;
    right: var(--dg-native-mobile-gap) !important;
    width: auto !important;
    min-height: var(--dg-native-nav-height) !important;
    margin: 0 !important;
    z-index: var(--dg-native-z-navbar) !important;
  }

  .layout-wrapper.layout-content-navbar .content-wrapper {
    padding-top: calc(var(--dg-native-mobile-gap) + var(--dg-native-nav-height) + 1.75rem) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-native-mobile-gap) !important;
    right: var(--dg-native-mobile-gap) !important;
    bottom: var(--dg-native-mobile-gap) !important;
    left: var(--dg-native-mobile-gap) !important;
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(0, -.35rem, 0) scale(.985) !important;
    transform-origin: center !important;
    transition: opacity .22s ease, visibility .22s ease, transform .28s cubic-bezier(.4,0,.2,1) !important;
    z-index: var(--dg-native-z-drawer) !important;
  }

  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-wrapper.layout-content-navbar:not(.layout-menu-expanded) .layout-menu.dg-app-sidebar {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(0, -.35rem, 0) scale(.985) !important;
    box-shadow: none !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) scale(1) !important;
    box-shadow: 0 28px 96px rgba(2,16,47,.32) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
    min-height: 4.3rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 1rem 1rem max(1.15rem, calc(env(safe-area-inset-bottom) + 1rem)) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    min-height: 48px !important;
    font-size: 14.5px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    flex-basis: 1.55rem !important;
    width: 1.55rem !important;
    height: 1.55rem !important;
    min-width: 1.55rem !important;
    min-height: 1.55rem !important;
    font-size: 1.2rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay.layout-menu-toggle,
  .layout-overlay.layout-menu-toggle {
    position: fixed !important;
    inset: 0 !important;
    display: block !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(248,252,255,.12) !important;
    backdrop-filter: blur(30px) saturate(1.16) !important;
    -webkit-backdrop-filter: blur(30px) saturate(1.16) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
    z-index: var(--dg-native-z-overlay) !important;
  }

  html.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  body.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  .layout-menu-expanded .layout-overlay.layout-menu-toggle {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  html.layout-menu-expanded .dg-app-bottom-nav,
  body.layout-menu-expanded .dg-app-bottom-nav,
  html.layout-menu-expanded .dg-client-bottom-nav,
  body.layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1 !important;
    pointer-events: none !important;
  }
}

/* =========================================================
   DentalGenius native shell final v83
   Single-source guard for desktop rail/open/hover, fixed navbar,
   mobile drawer margins and submenu chevrons.
   ========================================================= */
:root {
  --dg-shell-sidebar-left: 14px;
  --dg-shell-sidebar-top: 14px;
  --dg-shell-sidebar-bottom: 18px;
  --dg-shell-sidebar-open: 226px;
  --dg-shell-sidebar-rail: 66px;
  --dg-shell-gap: 24px;
  --dg-shell-content-gutter: 20px;
  --dg-shell-navbar-top: 14px;
  --dg-shell-navbar-height: 54px;
  --dg-shell-navbar-right: 24px;
  --dg-shell-mobile-gap-x: 12px;
  --dg-shell-mobile-gap-top: 12px;
  --dg-shell-mobile-gap-bottom: 18px;
  --dg-shell-z-navbar: 1040;
  --dg-shell-z-sidebar: 1060;
  --dg-shell-z-sidebar-hover: 1085;
  --dg-shell-z-overlay: 2147483100;
  --dg-shell-z-drawer: 2147483200;
}

html,
body {
  overflow-x: clip !important;
}

.layout-wrapper.layout-content-navbar,
.layout-wrapper.layout-content-navbar .layout-container,
.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-width: 0 !important;
}

.layout-wrapper.layout-content-navbar .layout-container {
  width: 100% !important;
}

.layout-wrapper.layout-content-navbar .layout-page,
.layout-wrapper.layout-content-navbar .content-wrapper {
  min-height: 100dvh !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper {
  display: flex !important;
  flex-direction: column !important;
}

.layout-wrapper.layout-content-navbar .content-wrapper > .container,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-sm,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-md,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-lg,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-xxl,
.layout-wrapper.layout-content-navbar .content-wrapper > .container-fluid,
.layout-wrapper.layout-content-navbar .content-wrapper > [class*='container-'] {
  flex: 1 0 auto !important;
  width: 100% !important;
}

.layout-wrapper.layout-content-navbar .content-footer,
.layout-wrapper.layout-content-navbar .dg-app-footer {
  flex: 0 0 auto !important;
}

/* Clean chevrons for every sidebar state. */
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::before,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::before,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::before {
  content: none !important;
  display: none !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
  content: '\203A' !important;
  position: static !important;
  inset: auto !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 1.55rem !important;
  inline-size: 1.55rem !important;
  block-size: 1.55rem !important;
  min-inline-size: 1.55rem !important;
  min-block-size: 1.55rem !important;
  margin-inline-start: auto !important;
  padding: 0 0 .08rem !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.09) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
  color: rgba(205,252,255,.96) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1.18rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  transform: rotate(0deg) !important;
  transform-origin: center !important;
  transition: transform .18s ease, background .18s ease, color .18s ease !important;
}

.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.open > .menu-link.menu-toggle::after,
.layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item.active.open > .menu-link.menu-toggle::after {
  color: #ffffff !important;
  background: rgba(255,255,255,.16) !important;
  transform: rotate(90deg) !important;
}

@media (min-width: 1200px) {
  .layout-wrapper.layout-content-navbar .layout-container {
    display: block !important;
    min-height: 100dvh !important;
    overflow: visible !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-shell-sidebar-top) !important;
    right: auto !important;
    bottom: var(--dg-shell-sidebar-bottom) !important;
    left: var(--dg-shell-sidebar-left) !important;
    display: flex !important;
    flex-direction: column !important;
    inline-size: var(--dg-shell-sidebar-open) !important;
    width: var(--dg-shell-sidebar-open) !important;
    min-inline-size: var(--dg-shell-sidebar-open) !important;
    max-inline-size: var(--dg-shell-sidebar-open) !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    transform: translate3d(0,0,0) !important;
    z-index: var(--dg-shell-z-sidebar) !important;
    box-shadow: 0 22px 56px rgba(7,26,70,.16) !important;
    transition: inline-size .24s cubic-bezier(.4,0,.2,1), width .24s cubic-bezier(.4,0,.2,1), min-width .24s cubic-bezier(.4,0,.2,1), max-width .24s cubic-bezier(.4,0,.2,1), box-shadow .24s ease !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-block-size: 68px !important;
    min-height: 68px !important;
    padding: 12px 12px 10px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    display: inline-flex !important;
    align-items: center !important;
    min-width: 0 !important;
    gap: .72rem !important;
    padding: 0 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo img,
  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon {
    display: block !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    transform: none !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    padding: 10px 10px max(22px, calc(env(safe-area-inset-bottom) + 18px)) !important;
    margin: 0 !important;
    scrollbar-gutter: stable !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    display: flex !important;
    align-items: center !important;
    gap: .72rem !important;
    min-height: 44px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    flex: 0 0 1.25rem !important;
    width: 1.25rem !important;
    min-width: 1.25rem !important;
    display: inline-grid !important;
    place-items: center !important;
    margin: 0 !important;
    text-align: center !important;
    line-height: 1 !important;
  }

  .layout-wrapper.layout-content-navbar .layout-page {
    width: auto !important;
    min-width: 0 !important;
    min-height: 100dvh !important;
    margin-left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-open) + var(--dg-shell-gap)) !important;
    padding-top: 0 !important;
    transition: margin-left .24s cubic-bezier(.4,0,.2,1) !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    position: fixed !important;
    top: var(--dg-shell-navbar-top) !important;
    left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-open) + var(--dg-shell-gap) + var(--dg-shell-content-gutter)) !important;
    right: var(--dg-shell-navbar-right) !important;
    width: auto !important;
    max-width: none !important;
    min-height: var(--dg-shell-navbar-height) !important;
    height: var(--dg-shell-navbar-height) !important;
    margin: 0 !important;
    z-index: var(--dg-shell-z-navbar) !important;
    transition: left .24s cubic-bezier(.4,0,.2,1), right .18s ease, box-shadow .18s ease !important;
  }

  .layout-wrapper.layout-content-navbar .content-wrapper {
    padding-top: calc(var(--dg-shell-navbar-top) + var(--dg-shell-navbar-height) + 34px) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    inline-size: var(--dg-shell-sidebar-rail) !important;
    width: var(--dg-shell-sidebar-rail) !important;
    min-inline-size: var(--dg-shell-sidebar-rail) !important;
    max-inline-size: var(--dg-shell-sidebar-rail) !important;
    left: var(--dg-shell-sidebar-left) !important;
    top: var(--dg-shell-sidebar-top) !important;
    bottom: var(--dg-shell-sidebar-bottom) !important;
    border-radius: 22px !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-rail) + var(--dg-shell-gap)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar nav.layout-navbar,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar nav.layout-navbar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-rail) + var(--dg-shell-gap) + var(--dg-shell-content-gutter)) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    inline-size: var(--dg-shell-sidebar-open) !important;
    width: var(--dg-shell-sidebar-open) !important;
    min-inline-size: var(--dg-shell-sidebar-open) !important;
    max-inline-size: var(--dg-shell-sidebar-open) !important;
    z-index: var(--dg-shell-z-sidebar-hover) !important;
    box-shadow: 18px 0 58px rgba(7,26,70,.22), 0 22px 58px rgba(7,26,70,.18) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-open) + var(--dg-shell-gap)) !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar nav.layout-navbar,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar nav.layout-navbar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar nav.layout-navbar {
    left: calc(var(--dg-shell-sidebar-left) + var(--dg-shell-sidebar-open) + var(--dg-shell-gap) + var(--dg-shell-content-gutter)) !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-height: 68px !important;
    padding: 12px 0 10px !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-link {
    display: grid !important;
    place-items: center !important;
    inline-size: 42px !important;
    block-size: 42px !important;
    min-inline-size: 42px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-logo,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-brand-icon {
    display: block !important;
    margin: 0 auto !important;
    transform: none !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-brand-wordmark,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .app-brand-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-text,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > div:not(.badge):not(.dg-menu-badge),
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-header,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-menu-badge,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-sub,
  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    overflow: hidden !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 8px 8px max(20px, env(safe-area-inset-bottom)) !important;
    margin: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-item {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    display: grid !important;
    place-items: center !important;
    inline-size: 44px !important;
    block-size: 44px !important;
    min-inline-size: 44px !important;
    min-block-size: 44px !important;
    max-inline-size: 44px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: 14px !important;
    transform: none !important;
    overflow: visible !important;
  }

  html.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  body.layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i,
  .layout-menu-collapsed:not(.layout-menu-hover) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link > i {
    display: grid !important;
    place-items: center !important;
    inline-size: 20px !important;
    block-size: 20px !important;
    min-inline-size: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 20px !important;
    line-height: 1 !important;
    text-align: center !important;
    transform: none !important;
  }

  html.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  body.layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link,
  .layout-menu-collapsed.layout-menu-hover .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    justify-content: flex-start !important;
    gap: .72rem !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 10px 12px !important;
  }
}

@media (max-width: 1199.98px) {
  .layout-wrapper.layout-content-navbar .layout-page {
    margin-left: 0 !important;
    padding-top: 0 !important;
  }

  .layout-wrapper.layout-content-navbar #layout-navbar,
  .layout-wrapper.layout-content-navbar .layout-navbar.navbar-detached,
  .layout-wrapper.layout-content-navbar nav.layout-navbar {
    position: fixed !important;
    top: var(--dg-shell-mobile-gap-top) !important;
    left: var(--dg-shell-mobile-gap-x) !important;
    right: var(--dg-shell-mobile-gap-x) !important;
    width: auto !important;
    min-height: var(--dg-shell-navbar-height) !important;
    height: var(--dg-shell-navbar-height) !important;
    margin: 0 !important;
    z-index: var(--dg-shell-z-navbar) !important;
  }

  .layout-wrapper.layout-content-navbar .content-wrapper {
    padding-top: calc(var(--dg-shell-mobile-gap-top) + var(--dg-shell-navbar-height) + 26px) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    position: fixed !important;
    top: var(--dg-shell-mobile-gap-top) !important;
    right: var(--dg-shell-mobile-gap-x) !important;
    bottom: var(--dg-shell-mobile-gap-bottom) !important;
    left: var(--dg-shell-mobile-gap-x) !important;
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(0, -12px, 0) scale(.96) !important;
    transform-origin: center !important;
    transition: opacity .22s ease, visibility .22s ease, transform .26s cubic-bezier(.4,0,.2,1) !important;
    z-index: var(--dg-shell-z-drawer) !important;
    box-shadow: none !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0,0,0) scale(1) !important;
    box-shadow: 0 26px 88px rgba(2,16,47,.34) !important;
  }

  html:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  body:not(.layout-menu-expanded) .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar,
  .layout-wrapper.layout-content-navbar:not(.layout-menu-expanded) .layout-menu.dg-app-sidebar {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(0, -12px, 0) scale(.96) !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .dg-app-sidebar-brand {
    flex: 0 0 auto !important;
    min-height: 70px !important;
    padding: 12px 14px 10px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-inner {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 14px 14px max(22px, calc(env(safe-area-inset-bottom) + 18px)) !important;
    scrollbar-gutter: stable !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link {
    min-height: 48px !important;
    font-size: 14.5px !important;
    border-radius: 14px !important;
  }

  .layout-wrapper.layout-content-navbar .layout-menu.dg-app-sidebar .menu-link.menu-toggle::after {
    flex-basis: 1.55rem !important;
    inline-size: 1.55rem !important;
    block-size: 1.55rem !important;
    min-inline-size: 1.55rem !important;
    min-block-size: 1.55rem !important;
    font-size: 1.16rem !important;
    padding-bottom: .08rem !important;
  }

  .layout-wrapper.layout-content-navbar .layout-overlay.layout-menu-toggle,
  .layout-overlay.layout-menu-toggle,
  .layout-wrapper.layout-content-navbar .content-backdrop,
  .content-backdrop {
    position: fixed !important;
    inset: 0 !important;
    display: block !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    background: rgba(246,252,255,.18) !important;
    backdrop-filter: blur(34px) saturate(1.18) !important;
    -webkit-backdrop-filter: blur(34px) saturate(1.18) !important;
    transition: opacity .24s ease, visibility .24s ease !important;
    z-index: var(--dg-shell-z-overlay) !important;
  }

  html.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  body.layout-menu-expanded .layout-overlay.layout-menu-toggle,
  .layout-menu-expanded .layout-overlay.layout-menu-toggle,
  html.layout-menu-expanded .content-backdrop,
  body.layout-menu-expanded .content-backdrop,
  .layout-menu-expanded .content-backdrop {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  html.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar #layout-navbar,
  html.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar,
  body.layout-menu-expanded .layout-wrapper.layout-content-navbar .layout-navbar {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  html.layout-menu-expanded .dg-app-bottom-nav,
  body.layout-menu-expanded .dg-app-bottom-nav,
  html.layout-menu-expanded .dg-client-bottom-nav,
  body.layout-menu-expanded .dg-client-bottom-nav {
    z-index: 1 !important;
    pointer-events: none !important;
  }
}
