:root {
  --dlwe-black: #161616;
  --dlwe-charcoal: #242424;
  --dlwe-cream: #f5f1ea;
  --dlwe-white: #ffffff;
  --dlwe-champagne: #d3b98d;
  --dlwe-border: #ded6ca;
  --dlwe-muted: #77736c;
  --dlwe-success: #1f6e47;
  --dlwe-error: #9f2d26;
}

.dlwe-auth-shell,
.dlwe-portal-shell,
.dlwe-access-card,
.dlwe-auth-shell *,
.dlwe-portal-shell *,
.dlwe-access-card * {
  box-sizing: border-box;
}

.dlwe-auth-shell {
  min-height: 680px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 50px 20px;
  background:
    radial-gradient(circle at 15% 10%, rgba(211, 185, 141, 0.18), transparent 34%),
    linear-gradient(145deg, #f8f5ef 0%, #eee6da 100%);
}

.dlwe-login-card,
.dlwe-access-card {
  width: min(100%, 460px);
  padding: 42px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  box-shadow: 0 24px 65px rgba(22, 22, 22, 0.12);
}

.dlwe-centered-card {
  text-align: center;
}

.dlwe-brand,
.dlwe-sidebar-brand {
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  line-height: 1;
  letter-spacing: 0.18em;
}

.dlwe-brand-subtitle,
.dlwe-sidebar-subtitle {
  margin-top: 8px;
  color: var(--dlwe-muted);
  font-size: 10px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.dlwe-divider {
  width: 44px;
  height: 1px;
  margin: 25px 0 28px;
  background: var(--dlwe-champagne);
}

.dlwe-login-card h1,
.dlwe-access-card h2,
.dlwe-main h1,
.dlwe-main h2,
.dlwe-main h3 {
  margin-top: 0;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}

.dlwe-login-card h1 {
  margin-bottom: 8px;
  font-size: 30px;
}

.dlwe-muted {
  color: var(--dlwe-muted);
}

.dlwe-alert {
  margin: 20px 0;
  padding: 12px 14px;
  border-radius: 3px;
  font-size: 13px;
  line-height: 1.45;
}

.dlwe-alert-error {
  color: var(--dlwe-error);
  background: #fbefed;
  border: 1px solid #edc8c4;
}

.dlwe-alert-success {
  color: var(--dlwe-success);
  background: #edf7f1;
  border: 1px solid #c7e2d2;
}

.dlwe-field {
  margin-bottom: 18px;
}

.dlwe-field label {
  display: block;
  margin-bottom: 7px;
  color: var(--dlwe-charcoal);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-field input {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  color: var(--dlwe-black);
  background: var(--dlwe-white);
  border: 1px solid #cbc2b5;
  border-radius: 3px;
  outline: none;
  font-size: 15px;
}

.dlwe-field input:focus {
  border-color: var(--dlwe-black);
  box-shadow: 0 0 0 3px rgba(22, 22, 22, 0.06);
}

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

.dlwe-password-wrap input {
  padding-right: 72px;
}

.dlwe-password-toggle {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  padding: 6px 8px;
  color: var(--dlwe-muted);
  background: transparent;
  border: 0;
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}

.dlwe-checkbox {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 2px 0 22px;
  color: var(--dlwe-muted);
  font-size: 13px;
}

.dlwe-checkbox input {
  width: 16px;
  height: 16px;
}

.dlwe-primary-button,
.dlwe-secondary-button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border-radius: 3px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-decoration: none !important;
  text-transform: uppercase;
  cursor: pointer;
}

.dlwe-primary-button {
  width: 100%;
  color: #fff !important;
  background: var(--dlwe-black);
  border: 1px solid var(--dlwe-black);
}

.dlwe-primary-button:hover {
  color: #fff !important;
  background: #303030;
}

.dlwe-secondary-button {
  color: var(--dlwe-black) !important;
  background: #fff;
  border: 1px solid var(--dlwe-border);
}

.dlwe-button-link {
  margin-top: 10px;
}

.dlwe-forgot-link {
  display: block;
  margin-top: 17px;
  color: var(--dlwe-muted) !important;
  font-size: 12px;
  text-align: center;
  text-decoration: none !important;
}

.dlwe-portal-shell {
  min-height: 760px;
  display: grid;
  grid-template-columns: 245px minmax(0, 1fr);
  background: var(--dlwe-cream);
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  overflow: hidden;
}

.dlwe-sidebar {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 32px 24px;
  color: #fff;
  background: var(--dlwe-black);
}

.dlwe-sidebar-brand {
  color: #fff;
  font-size: 27px;
}

.dlwe-sidebar-subtitle {
  color: var(--dlwe-champagne);
}

.dlwe-nav {
  display: grid;
  gap: 5px;
  margin: 46px 0 auto;
}

.dlwe-nav-item {
  width: 100%;
  min-height: 43px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px;
  color: #d9d5cf !important;
  background: transparent;
  border: 0;
  border-radius: 3px;
  font-size: 13px;
  text-align: left;
  text-decoration: none !important;
}

.dlwe-nav-item.is-active {
  color: #fff !important;
  background: rgba(211, 185, 141, 0.17);
}

.dlwe-nav-item:disabled {
  opacity: 0.58;
}

.dlwe-nav-item span {
  color: var(--dlwe-champagne);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-logout-link {
  margin-top: 30px;
  color: var(--dlwe-champagne) !important;
  font-size: 12px;
  text-decoration: none !important;
}

.dlwe-main {
  min-width: 0;
  padding: 38px;
}

.dlwe-portal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 30px;
}

.dlwe-eyebrow {
  margin: 0 0 7px;
  color: #8a7148;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dlwe-portal-header h1 {
  margin-bottom: 8px;
  font-size: 35px;
}

.dlwe-user-chip {
  min-width: 220px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-user-avatar {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--dlwe-black);
  border-radius: 50%;
  font-family: Georgia, "Times New Roman", serif;
}

.dlwe-user-chip strong,
.dlwe-user-chip small {
  display: block;
}

.dlwe-user-chip strong {
  color: var(--dlwe-black);
  font-size: 12px;
}

.dlwe-user-chip small {
  margin-top: 3px;
  color: var(--dlwe-muted);
  font-size: 10px;
  word-break: break-word;
}

.dlwe-welcome-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
  padding: 28px;
  color: #fff;
  background: var(--dlwe-black);
  border-radius: 4px;
}

.dlwe-welcome-panel h2 {
  margin-bottom: 8px;
  color: #fff;
  font-size: 27px;
}

.dlwe-welcome-panel p:last-child {
  margin-bottom: 0;
  color: #cfcac2;
}

.dlwe-status-badge {
  flex: 0 0 auto;
  padding: 8px 11px;
  color: var(--dlwe-black);
  background: var(--dlwe-champagne);
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

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

.dlwe-feature-card {
  min-height: 205px;
  position: relative;
  padding: 24px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-card-number {
  margin-bottom: 26px;
  color: var(--dlwe-champagne);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 28px;
}

.dlwe-feature-card h3 {
  margin-bottom: 9px;
  font-size: 21px;
}

.dlwe-feature-card p {
  margin-bottom: 22px;
  color: var(--dlwe-muted);
  font-size: 13px;
  line-height: 1.6;
}

.dlwe-coming-soon {
  position: absolute;
  right: 20px;
  bottom: 18px;
  color: #8a7148;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-security-note {
  margin-top: 18px;
  padding: 16px 18px;
  color: #5c554c;
  background: #eee6d8;
  border-left: 3px solid var(--dlwe-champagne);
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-access-card {
  margin: 50px auto;
  text-align: center;
}

@media (max-width: 850px) {
  .dlwe-portal-shell {
    grid-template-columns: 1fr;
  }

  .dlwe-sidebar {
    display: block;
    padding: 23px;
  }

  .dlwe-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 24px 0 18px;
  }

  .dlwe-logout-link {
    display: inline-block;
    margin-top: 0;
  }

  .dlwe-main {
    padding: 25px;
  }

  .dlwe-portal-header {
    display: block;
  }

  .dlwe-user-chip {
    width: 100%;
    margin-top: 18px;
  }
}

@media (max-width: 620px) {
  .dlwe-login-card,
  .dlwe-access-card {
    padding: 29px 22px;
  }

  .dlwe-main {
    padding: 20px 15px;
  }

  .dlwe-welcome-panel {
    display: block;
    padding: 22px;
  }

  .dlwe-status-badge {
    display: inline-block;
    margin-top: 16px;
  }

  .dlwe-card-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-nav {
    grid-template-columns: 1fr;
  }
}

/* Version 1.1: frontend expense form */
.dlwe-panel[hidden] {
  display: none !important;
}

.dlwe-panel.is-active {
  animation: dlwe-panel-fade 0.2s ease;
}

@keyframes dlwe-panel-fade {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.dlwe-feature-card-action {
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.dlwe-feature-card-action:hover,
.dlwe-feature-card-action:focus {
  transform: translateY(-2px);
  border-color: var(--dlwe-black);
  box-shadow: 0 14px 35px rgba(22, 22, 22, 0.08);
  outline: none;
}

.dlwe-form-header {
  align-items: center;
}

.dlwe-compact-button {
  min-height: 40px;
  white-space: nowrap;
}

.dlwe-form-loading {
  min-height: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: var(--dlwe-muted);
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-spinner {
  width: 26px;
  height: 26px;
  display: inline-block;
  border: 3px solid #ded6ca;
  border-top-color: var(--dlwe-black);
  border-radius: 50%;
  animation: dlwe-spin 0.8s linear infinite;
}

@keyframes dlwe-spin {
  to { transform: rotate(360deg); }
}

.dlwe-portal-form {
  display: grid;
  gap: 17px;
}

.dlwe-form-section {
  padding: 25px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-form-section-heading {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 22px;
  padding-bottom: 17px;
  border-bottom: 1px solid #ece7df;
}

.dlwe-form-section-heading > span {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--dlwe-black);
  background: #efe5d5;
  border-radius: 50%;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
}

.dlwe-form-section-heading h2 {
  margin: 0 0 4px;
  font-size: 22px;
}

.dlwe-form-section-heading p {
  margin: 0;
  color: var(--dlwe-muted);
  font-size: 12px;
  line-height: 1.45;
}

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

.dlwe-field-full {
  grid-column: 1 / -1;
}

.dlwe-portal-form .dlwe-field {
  margin: 0;
}

.dlwe-portal-form .dlwe-field label {
  display: block;
  margin-bottom: 7px;
  color: var(--dlwe-charcoal);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dlwe-portal-form input,
.dlwe-portal-form select,
.dlwe-portal-form textarea {
  width: 100%;
  min-height: 46px;
  padding: 11px 13px;
  color: var(--dlwe-black);
  background: #fff;
  border: 1px solid #cbc2b5;
  border-radius: 3px;
  outline: none;
  font-family: inherit;
  font-size: 14px;
}

.dlwe-portal-form textarea {
  min-height: 120px;
  resize: vertical;
}

.dlwe-portal-form input:focus,
.dlwe-portal-form select:focus,
.dlwe-portal-form textarea:focus {
  border-color: var(--dlwe-black);
  box-shadow: 0 0 0 3px rgba(22, 22, 22, 0.06);
}

.dlwe-portal-form input[readonly],
.dlwe-portal-form input:disabled {
  color: #77736c;
  background: #f3f0eb;
}

.dlwe-required {
  color: var(--dlwe-error);
}

.dlwe-field-note {
  display: block;
  margin-top: 6px;
  color: var(--dlwe-muted);
  font-size: 10px;
  line-height: 1.45;
}

.dlwe-readonly-value {
  min-height: 46px;
  display: flex;
  align-items: center;
  padding: 11px 13px;
  color: var(--dlwe-black);
  background: #f3f0eb;
  border: 1px solid #ded6ca;
  border-radius: 3px;
  font-size: 14px;
  font-weight: 700;
}

.dlwe-readonly-value.is-negative {
  color: var(--dlwe-error);
}

.dlwe-readonly-value.is-positive {
  color: var(--dlwe-success);
}

.dlwe-form-actions {
  position: sticky;
  bottom: 0;
  z-index: 4;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 15px;
  background: rgba(245, 241, 234, 0.96);
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  backdrop-filter: blur(8px);
}

.dlwe-form-actions .dlwe-primary-button,
.dlwe-form-actions .dlwe-secondary-button {
  width: auto;
  min-width: 150px;
}

.dlwe-submit-button:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

@media (max-width: 720px) {
  .dlwe-form-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-field-full {
    grid-column: auto;
  }

  .dlwe-form-section {
    padding: 20px 16px;
  }

  .dlwe-form-header .dlwe-compact-button {
    width: 100%;
    margin-top: 16px;
  }

  .dlwe-form-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-form-actions .dlwe-primary-button,
  .dlwe-form-actions .dlwe-secondary-button {
    width: 100%;
  }
}

.dlwe-portal-form[hidden],
.dlwe-form-loading[hidden],
.dlwe-alert[hidden] {
  display: none !important;
}


/* Version 1.3: My Expenses */
.dlwe-header-actions {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.dlwe-personal-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.dlwe-personal-summary-card {
  padding: 20px;
  color: #fff;
  background: var(--dlwe-black);
  border-radius: 4px;
}

.dlwe-summary-currency {
  margin-bottom: 13px;
  color: var(--dlwe-champagne);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
}

.dlwe-personal-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.dlwe-personal-summary-item {
  padding: 10px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 3px;
}

.dlwe-personal-summary-item span,
.dlwe-history-metric span {
  display: block;
  color: #aaa49b;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dlwe-personal-summary-item strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: 13px;
  word-break: break-word;
}

.dlwe-expense-history-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 2fr) repeat(3, minmax(140px, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.dlwe-expense-history-toolbar input,
.dlwe-expense-history-toolbar select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  color: var(--dlwe-black);
  background: #fff;
  border: 1px solid #cbc2b5;
  border-radius: 3px;
  outline: none;
  font-size: 13px;
}

.dlwe-history-count {
  margin: 8px 0 13px;
  color: var(--dlwe-muted);
  font-size: 11px;
}

.dlwe-expense-history-list {
  display: grid;
  gap: 12px;
}

.dlwe-history-card {
  padding: 20px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-history-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.dlwe-history-id {
  margin-bottom: 5px;
  color: #8a7148;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-history-card h3 {
  margin: 0 0 5px;
  font-size: 20px;
}

.dlwe-history-card p {
  margin: 0;
  color: var(--dlwe-muted);
  font-size: 12px;
}

.dlwe-history-pills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.dlwe-history-pill {
  display: inline-flex;
  padding: 6px 8px;
  border-radius: 999px;
  color: #5e5140;
  background: #efe7db;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-history-pill.is-paid,
.dlwe-history-pill.is-approved {
  color: var(--dlwe-success);
  background: #e7f3eb;
}

.dlwe-history-pill.is-rejected,
.dlwe-history-pill.is-cancelled {
  color: var(--dlwe-error);
  background: #fae8e6;
}

.dlwe-history-pill.is-pending,
.dlwe-history-pill.is-pending-approval,
.dlwe-history-pill.is-partially-paid {
  color: #82621f;
  background: #fff2d6;
}

.dlwe-history-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  margin-top: 16px;
}

.dlwe-history-metric {
  padding: 10px;
  background: #f6f2ec;
  border-radius: 3px;
}

.dlwe-history-metric strong {
  display: block;
  margin-top: 5px;
  color: var(--dlwe-black);
  font-size: 12px;
  word-break: break-word;
}

.dlwe-history-note {
  margin-top: 13px;
  padding: 11px 12px;
  color: #5c554c;
  background: #f2eadf;
  border-left: 3px solid var(--dlwe-champagne);
  font-size: 11px;
  line-height: 1.5;
}

.dlwe-empty-state {
  padding: 34px 20px;
  color: var(--dlwe-muted);
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  text-align: center;
}

@media (max-width: 980px) {
  .dlwe-expense-history-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-history-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .dlwe-personal-summary,
  .dlwe-personal-summary-grid,
  .dlwe-expense-history-toolbar,
  .dlwe-history-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-history-card-header {
    display: block;
  }

  .dlwe-history-pills {
    justify-content: flex-start;
    margin-top: 12px;
  }

  .dlwe-header-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-header-actions .dlwe-secondary-button {
    width: 100%;
  }
}


/* Expense Approval — v1.4 */
.dlwe-approval-toolbar {
  display: grid;
  grid-template-columns: 2fr repeat(4, minmax(150px, 1fr));
  gap: 10px;
  margin: 18px 0 12px;
}

.dlwe-approval-card {
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.dlwe-approval-card:hover,
.dlwe-approval-card:focus {
  transform: translateY(-2px);
  border-color: var(--dlwe-black);
  box-shadow: 0 12px 30px rgba(24, 22, 19, 0.08);
  outline: none;
}

.dlwe-approval-card-action {
  margin-top: 12px;
  color: var(--dlwe-black);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: right;
  text-transform: uppercase;
}

.dlwe-history-pill.is-needs-clarification {
  color: #805416;
  background: #fff0cc;
}

.dlwe-history-pill.is-not-required,
.dlwe-history-pill.is-not-set,
.dlwe-history-pill.is-legacy-record {
  color: #625d56;
  background: #ece8e2;
}

.dlwe-approval-editor {
  margin-top: 8px;
}

.dlwe-back-link {
  margin: 0 0 14px;
  padding: 0;
  color: var(--dlwe-black);
  background: transparent;
  border: 0;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-approval-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
  padding: 20px;
  color: #fff;
  background: var(--dlwe-black);
  border-radius: 4px;
}

.dlwe-approval-heading h2 {
  margin: 4px 0 6px;
  color: #fff;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(25px, 3vw, 38px);
  font-weight: 400;
}

.dlwe-approval-heading p:last-child {
  margin: 0;
  color: rgba(255, 255, 255, 0.68);
}

.dlwe-approval-amount {
  flex-shrink: 0;
  color: var(--dlwe-champagne);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 22px;
  text-align: right;
}

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

.dlwe-review-item {
  padding: 12px;
  background: #f6f2ec;
  border-radius: 3px;
}

.dlwe-review-item span {
  display: block;
  color: var(--dlwe-muted);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-review-item strong {
  display: block;
  margin-top: 6px;
  color: var(--dlwe-black);
  font-size: 12px;
  word-break: break-word;
}

.dlwe-review-note {
  margin-top: 12px;
  padding: 12px 14px;
  color: #5c554c;
  background: #f2eadf;
  border-left: 3px solid var(--dlwe-champagne);
  font-size: 11px;
  line-height: 1.55;
}

.dlwe-receipt-link {
  display: inline-flex;
  width: auto;
  margin-top: 12px;
}

@media (max-width: 1180px) {
  .dlwe-approval-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-approval-toolbar input {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  .dlwe-approval-toolbar,
  .dlwe-review-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-approval-heading {
    display: block;
  }

  .dlwe-approval-amount {
    margin-top: 14px;
    text-align: left;
  }
}

/* Secure Receipt Upload — v1.5 */
#dlwe_expense_receipt,
#dlwe_resubmission_receipt {
  width: 100%;
  padding: 12px;
  color: var(--dlwe-black);
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 3px;
  font: inherit;
}

#dlwe_expense_receipt::file-selector-button,
#dlwe_resubmission_receipt::file-selector-button {
  margin-right: 12px;
  padding: 9px 13px;
  color: var(--dlwe-black);
  background: #f2eadf;
  border: 0;
  border-radius: 2px;
  cursor: pointer;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.dlwe-field-note.is-error {
  color: #9a3029;
}

.dlwe-history-receipt-link {
  display: inline-flex;
  width: auto;
  margin-top: 13px;
}

/* Expense Clarification & Resubmission — v1.6 */
.dlwe-clarification-banner {
  margin: 0 0 18px;
  padding: 16px 18px;
  color: #5e431c;
  background: #fff2d7;
  border: 1px solid #e6c88e;
  border-left: 4px solid #b9852d;
  border-radius: 3px;
  font-size: 12px;
  line-height: 1.6;
}

.dlwe-clarification-banner strong {
  color: #4d3514;
}

.dlwe-clarification-banner small,
.dlwe-clarification-history small {
  display: block;
  margin-top: 7px;
  color: #77654d;
  font-size: 10px;
  letter-spacing: 0.02em;
}

.dlwe-resubmission-editor {
  margin-top: 4px;
}

.dlwe-replacement-upload {
  margin-top: 14px;
}

.dlwe-history-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 13px;
}

.dlwe-history-actions .dlwe-history-receipt-link {
  margin-top: 0;
}

.dlwe-resubmission-meta {
  margin-top: 11px;
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-clarification-history {
  background: #fff2d7;
  border-left-color: #b9852d;
}

@media (max-width: 620px) {
  .dlwe-history-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-history-actions .dlwe-button-link,
  .dlwe-history-actions button {
    justify-content: center;
    width: 100%;
  }
}


/* Expense Dashboard & Reports — v1.7 */
.dlwe-report-header-actions {
  flex-wrap: wrap;
}

.dlwe-report-filter-card,
.dlwe-report-card,
.dlwe-report-currency-card {
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  box-shadow: 0 10px 28px rgba(24, 22, 19, 0.04);
}

.dlwe-report-filter-card {
  margin-bottom: 18px;
  padding: 18px;
}

.dlwe-report-filter-heading,
.dlwe-report-card-heading,
.dlwe-report-currency-heading,
.dlwe-report-meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.dlwe-report-filter-heading {
  margin-bottom: 15px;
}

.dlwe-report-filter-heading h2,
.dlwe-report-card-heading h2 {
  margin: 3px 0 0;
  color: var(--dlwe-black);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 20px;
  font-weight: 400;
}

.dlwe-report-filter-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.dlwe-report-meta {
  align-items: center;
  margin-bottom: 13px;
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-report-currency-summary {
  display: grid;
  gap: 14px;
  margin-bottom: 18px;
}

.dlwe-report-currency-card {
  overflow: hidden;
}

.dlwe-report-currency-heading {
  align-items: center;
  padding: 13px 16px;
  color: #fff;
  background: var(--dlwe-black);
}

.dlwe-report-currency-heading span {
  color: var(--dlwe-champagne);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 24px;
}

.dlwe-report-currency-heading small {
  color: rgba(255, 255, 255, 0.68);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-report-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dlwe-report-metric {
  min-height: 90px;
  padding: 16px;
  border-right: 1px solid var(--dlwe-border);
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-report-metric:nth-child(4n) {
  border-right: 0;
}

.dlwe-report-metric span {
  display: block;
  color: var(--dlwe-muted);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.dlwe-report-metric strong {
  display: block;
  margin-top: 9px;
  color: var(--dlwe-black);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 18px;
  font-weight: 400;
  word-break: break-word;
}

.dlwe-report-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 14px;
}

.dlwe-report-card {
  min-width: 0;
  padding: 17px;
}

.dlwe-report-card-wide {
  grid-column: 1 / -1;
}

.dlwe-report-card-heading {
  display: block;
  margin-bottom: 16px;
}

.dlwe-report-card-heading p {
  margin: 5px 0 0;
  color: var(--dlwe-muted);
  font-size: 10px;
  line-height: 1.5;
}

.dlwe-report-bars,
.dlwe-report-ranking {
  display: grid;
  gap: 12px;
}

.dlwe-report-bar-label {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 5px;
  color: var(--dlwe-black);
  font-size: 10px;
}

.dlwe-report-bar-label span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-report-bar-label strong {
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 700;
}

.dlwe-report-bar-track {
  height: 7px;
  overflow: hidden;
  background: #eee9e2;
  border-radius: 99px;
}

.dlwe-report-bar-track span {
  display: block;
  height: 100%;
  min-width: 4px;
  background: var(--dlwe-black);
  border-radius: inherit;
}

.dlwe-report-rank-row {
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  padding-bottom: 11px;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-report-rank-row:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.dlwe-report-rank-number {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  color: var(--dlwe-black);
  background: #f2eadf;
  border-radius: 50%;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 13px;
}

.dlwe-report-rank-row strong,
.dlwe-report-rank-row small {
  display: block;
}

.dlwe-report-rank-row strong {
  color: var(--dlwe-black);
  font-size: 11px;
}

.dlwe-report-rank-row small {
  margin-top: 4px;
  color: var(--dlwe-muted);
  font-size: 9px;
  line-height: 1.45;
}

.dlwe-report-detail-card {
  padding: 0;
  overflow: hidden;
}

.dlwe-report-detail-card .dlwe-report-card-heading {
  margin: 0;
  padding: 17px;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-report-table-wrap {
  overflow: auto;
  max-height: 680px;
}

.dlwe-report-table {
  width: 100%;
  min-width: 1450px;
  border-collapse: collapse;
  color: var(--dlwe-black);
  font-size: 10px;
}

.dlwe-report-table th,
.dlwe-report-table td {
  padding: 11px 12px;
  border-bottom: 1px solid var(--dlwe-border);
  text-align: left;
  vertical-align: top;
}

.dlwe-report-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  color: #fff;
  background: var(--dlwe-black);
  font-size: 8px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-report-table tbody tr:nth-child(even) {
  background: #faf8f5;
}

.dlwe-report-table td:nth-child(6) {
  min-width: 230px;
}

@media (max-width: 1220px) {
  .dlwe-report-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-report-metric-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-report-metric:nth-child(4n) {
    border-right: 1px solid var(--dlwe-border);
  }

  .dlwe-report-metric:nth-child(3n) {
    border-right: 0;
  }
}

@media (max-width: 760px) {
  .dlwe-report-filter-grid,
  .dlwe-report-layout,
  .dlwe-report-metric-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-report-metric,
  .dlwe-report-metric:nth-child(3n),
  .dlwe-report-metric:nth-child(4n) {
    border-right: 0;
  }

  .dlwe-report-filter-heading,
  .dlwe-report-meta,
  .dlwe-report-currency-heading {
    display: block;
  }

  .dlwe-report-filter-heading .dlwe-back-link,
  .dlwe-report-meta span:last-child,
  .dlwe-report-currency-heading small {
    display: block;
    margin-top: 8px;
  }
}

@media print {
  body * {
    visibility: hidden !important;
  }

  [data-dlwe-panel="expense-reports"],
  [data-dlwe-panel="expense-reports"] * {
    visibility: visible !important;
  }

  [data-dlwe-panel="expense-reports"] {
    position: absolute;
    inset: 0;
    width: 100%;
  }

  .dlwe-sidebar,
  .dlwe-report-header-actions,
  .dlwe-report-filter-card,
  #dlwe-reports-message {
    display: none !important;
  }

  .dlwe-main,
  .dlwe-panel,
  .dlwe-report-card,
  .dlwe-report-currency-card {
    width: 100% !important;
    max-width: none !important;
    box-shadow: none !important;
  }

  .dlwe-report-table-wrap {
    overflow: visible !important;
    max-height: none !important;
  }

  .dlwe-report-table {
    min-width: 0 !important;
    font-size: 7px;
  }
}


/* Version 1.8: My Weddings */
.dlwe-wedding-scope-note {
  margin-bottom: 16px;
  padding: 12px 14px;
  color: #5d554a;
  background: #f1eadf;
  border-left: 3px solid var(--dlwe-champagne);
  border-radius: 3px;
  font-size: 11px;
  line-height: 1.55;
}

.dlwe-wedding-scope-note.is-warning {
  color: var(--dlwe-error);
  background: #fff0ee;
  border-left-color: var(--dlwe-error);
}

.dlwe-wedding-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.dlwe-wedding-summary-card {
  min-height: 108px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 18px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-wedding-summary-card span {
  color: var(--dlwe-muted);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-wedding-summary-card strong {
  color: var(--dlwe-blue);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  line-height: 1;
}

.dlwe-wedding-toolbar {
  display: grid;
  grid-template-columns: minmax(240px, 1.7fr) repeat(2, minmax(170px, 0.8fr));
  gap: 10px;
  margin-bottom: 12px;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-wedding-toolbar input,
.dlwe-wedding-toolbar select {
  width: 100%;
  min-height: 42px;
  padding: 10px 12px;
  color: var(--dlwe-black);
  background: #fff;
  border: 1px solid #cbc2b5;
  border-radius: 3px;
  outline: none;
  font-family: inherit;
  font-size: 12px;
}

.dlwe-wedding-toolbar input:focus,
.dlwe-wedding-toolbar select:focus {
  border-color: var(--dlwe-black);
  box-shadow: 0 0 0 3px rgba(22, 22, 22, 0.06);
}

.dlwe-wedding-list {
  display: grid;
  gap: 13px;
}

.dlwe-wedding-card {
  padding: 20px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  box-shadow: 0 8px 24px rgba(22, 22, 22, 0.035);
}

.dlwe-wedding-card.is-past {
  background: #fcfbf9;
}

.dlwe-wedding-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.dlwe-wedding-card-header h3 {
  margin: 5px 0 4px;
  color: var(--dlwe-blue);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  line-height: 1.2;
}

.dlwe-wedding-card-header p {
  margin: 0;
  color: var(--dlwe-muted);
  font-size: 11px;
}

.dlwe-history-pill.is-upcoming,
.dlwe-history-pill.is-today,
.dlwe-history-pill.is-confirmed,
.dlwe-history-pill.is-active {
  color: var(--dlwe-success);
  background: #e7f3eb;
}

.dlwe-history-pill.is-undated,
.dlwe-history-pill.is-not-set,
.dlwe-history-pill.is-enquiry,
.dlwe-history-pill.is-lead {
  color: #5e5140;
  background: #efe7db;
}

.dlwe-history-pill.is-past,
.dlwe-history-pill.is-completed {
  color: #625d56;
  background: #ece9e4;
}

.dlwe-wedding-details-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 17px;
}

.dlwe-wedding-metric {
  min-height: 68px;
  padding: 11px;
  background: #f6f2ec;
  border-radius: 3px;
}

.dlwe-wedding-metric span {
  display: block;
  color: var(--dlwe-muted);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.dlwe-wedding-metric strong {
  display: block;
  margin-top: 6px;
  color: var(--dlwe-black);
  font-size: 12px;
  line-height: 1.4;
  word-break: break-word;
}

.dlwe-wedding-note {
  margin-top: 13px;
  padding: 12px 13px;
  color: #5c554c;
  background: #f2eadf;
  border-left: 3px solid var(--dlwe-champagne);
  font-size: 11px;
  line-height: 1.55;
  white-space: pre-line;
}

.dlwe-wedding-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 14px;
}

.dlwe-wedding-actions .dlwe-primary-button {
  width: auto;
}

.dlwe-wedding-no-folder {
  color: var(--dlwe-muted);
  font-size: 10px;
  font-style: italic;
}

@media (max-width: 980px) {
  .dlwe-wedding-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-wedding-toolbar {
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-wedding-toolbar input {
    grid-column: 1 / -1;
  }

  .dlwe-wedding-details-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .dlwe-wedding-summary,
  .dlwe-wedding-toolbar,
  .dlwe-wedding-details-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-wedding-toolbar input {
    grid-column: auto;
  }

  .dlwe-wedding-card-header {
    display: block;
  }

  .dlwe-wedding-card-header .dlwe-history-pills {
    margin-top: 12px;
  }

  .dlwe-wedding-actions {
    justify-content: stretch;
  }

  .dlwe-wedding-actions .dlwe-primary-button {
    width: 100%;
  }
}


/* Version 1.9: Vendor Directory */
.dlwe-vendor-scope-note {
  margin-bottom: 16px;
  padding: 12px 14px;
  color: #5d554a;
  background: #f1eadf;
  border-left: 3px solid var(--dlwe-champagne);
  border-radius: 3px;
  font-size: 11px;
  line-height: 1.55;
}

.dlwe-vendor-scope-note.is-private {
  color: #294f3d;
  background: #eaf4ee;
  border-left-color: var(--dlwe-success);
}

.dlwe-vendor-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.dlwe-vendor-summary-card {
  min-height: 108px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 18px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-vendor-summary-card span {
  color: var(--dlwe-muted);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-vendor-summary-card strong {
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  line-height: 1;
}

.dlwe-vendor-toolbar {
  display: grid;
  grid-template-columns: minmax(250px, 1.8fr) repeat(5, minmax(135px, 0.75fr));
  gap: 10px;
  margin-bottom: 12px;
  padding: 14px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-vendor-toolbar input,
.dlwe-vendor-toolbar select {
  width: 100%;
  min-height: 42px;
  padding: 10px 12px;
  color: var(--dlwe-black);
  background: #fff;
  border: 1px solid #cbc2b5;
  border-radius: 3px;
  outline: none;
  font-family: inherit;
  font-size: 12px;
}

.dlwe-vendor-toolbar input:focus,
.dlwe-vendor-toolbar select:focus {
  border-color: var(--dlwe-black);
  box-shadow: 0 0 0 3px rgba(22, 22, 22, 0.06);
}

.dlwe-vendor-list {
  display: grid;
  gap: 13px;
}

.dlwe-vendor-card {
  padding: 20px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  box-shadow: 0 8px 24px rgba(22, 22, 22, 0.035);
}

.dlwe-vendor-card.is-preferred {
  border-color: #d4bd95;
  box-shadow: 0 10px 30px rgba(121, 92, 43, 0.09);
}

.dlwe-vendor-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.dlwe-vendor-card-header h3 {
  margin: 5px 0 4px;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  line-height: 1.2;
}

.dlwe-vendor-card-header p {
  margin: 0;
  color: var(--dlwe-muted);
  font-size: 11px;
}

.dlwe-history-pill.is-preferred {
  color: #705523;
  background: #f3e6c9;
}

.dlwe-history-pill.is-inactive,
.dlwe-history-pill.is-suspended,
.dlwe-history-pill.is-archived {
  color: #625d56;
  background: #ece9e4;
}

.dlwe-vendor-details-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 17px;
}

.dlwe-vendor-metric {
  min-height: 68px;
  padding: 11px;
  background: #f6f2ec;
  border-radius: 3px;
}

.dlwe-vendor-metric span {
  display: block;
  color: var(--dlwe-muted);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.dlwe-vendor-metric strong {
  display: block;
  margin-top: 6px;
  color: var(--dlwe-black);
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.dlwe-vendor-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
}

.dlwe-vendor-actions .dlwe-primary-button,
.dlwe-vendor-actions .dlwe-secondary-button {
  width: auto;
}

.dlwe-vendor-private {
  margin-top: 17px;
  padding: 14px;
  background: #fbf8f3;
  border: 1px dashed #cbbba2;
  border-radius: 4px;
}

.dlwe-vendor-private-title {
  color: #6b5532;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dlwe-vendor-private .dlwe-vendor-details-grid {
  margin-top: 10px;
}

.dlwe-vendor-note {
  margin-top: 11px;
  padding: 11px 12px;
  color: #5c554c;
  background: #efe7db;
  border-left: 3px solid var(--dlwe-champagne);
  font-size: 11px;
  line-height: 1.55;
  white-space: pre-line;
}

@media (max-width: 1280px) {
  .dlwe-vendor-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-vendor-toolbar input {
    grid-column: 1 / -1;
  }
}

@media (max-width: 980px) {
  .dlwe-vendor-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-vendor-details-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .dlwe-vendor-summary,
  .dlwe-vendor-toolbar,
  .dlwe-vendor-details-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-vendor-toolbar input {
    grid-column: auto;
  }

  .dlwe-vendor-card-header {
    display: block;
  }

  .dlwe-vendor-card-header .dlwe-history-pills {
    margin-top: 12px;
  }

  .dlwe-vendor-actions {
    justify-content: stretch;
  }

  .dlwe-vendor-actions .dlwe-primary-button,
  .dlwe-vendor-actions .dlwe-secondary-button {
    width: 100%;
  }
}


/* Version 2.0: Tasks & Staff Assignments */
.dlwe-task-scope-note {
  margin-bottom: 18px;
  padding: 13px 15px;
  border: 1px solid var(--dlwe-border);
  background: #fbf8f3;
  color: var(--dlwe-muted);
  font-size: 13px;
}

.dlwe-task-scope-note.is-manager {
  border-left: 4px solid var(--dlwe-black);
}

.dlwe-task-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 20px;
}

.dlwe-task-summary-card {
  padding: 17px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-task-summary-card span {
  display: block;
  margin-bottom: 7px;
  color: var(--dlwe-muted);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.dlwe-task-summary-card strong {
  display: block;
  font-size: 25px;
  line-height: 1;
}

.dlwe-task-summary-card.is-danger {
  border-color: #d9aaa5;
  background: #fff8f7;
}

.dlwe-task-summary-card.is-warning {
  border-color: #dfc78d;
  background: #fffaf0;
}

.dlwe-task-summary-card.is-success {
  border-color: #a9c9b5;
  background: #f6fbf8;
}

.dlwe-task-toolbar {
  display: grid;
  grid-template-columns: minmax(240px, 2fr) repeat(5, minmax(135px, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}

.dlwe-task-toolbar input,
.dlwe-task-toolbar select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--dlwe-border);
  background: #fff;
}

.dlwe-task-list {
  display: grid;
  gap: 15px;
}

.dlwe-task-card {
  padding: 22px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-left: 4px solid #c9c1b5;
  border-radius: 4px;
}

.dlwe-task-card.is-overdue {
  border-left-color: #b6493f;
  background: #fffafa;
}

.dlwe-task-card.is-completed {
  border-left-color: #739681;
  background: #fbfdfb;
}

.dlwe-task-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}

.dlwe-task-card-header h3 {
  margin: 4px 0 4px;
  font-size: 20px;
}

.dlwe-task-card-header p {
  margin: 0;
  color: var(--dlwe-muted);
}

.dlwe-task-priority,
.dlwe-task-deadline,
.dlwe-task-deadline-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #f1eee8;
  color: #413c35;
  font-size: 12px;
  font-weight: 700;
}

.dlwe-task-priority.is-urgent,
.dlwe-task-priority.is-high,
.dlwe-task-deadline.is-overdue,
.dlwe-task-deadline-chip.is-overdue {
  background: #f9dfdc;
  color: #8d2d25;
}

.dlwe-task-priority.is-low {
  background: #edf4ef;
  color: #476351;
}

.dlwe-task-description {
  margin-bottom: 16px;
  color: #36322d;
  line-height: 1.65;
}

.dlwe-task-details-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 18px;
}

.dlwe-task-metric {
  padding: 12px 13px;
  background: #faf8f4;
  border: 1px solid #eee8df;
}

.dlwe-task-metric span {
  display: block;
  margin-bottom: 5px;
  color: var(--dlwe-muted);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.dlwe-task-metric strong {
  display: block;
  overflow-wrap: anywhere;
  font-size: 13px;
}

.dlwe-task-progress-wrap {
  margin: 16px 0;
}

.dlwe-task-progress-label {
  display: flex;
  justify-content: space-between;
  margin-bottom: 7px;
  font-size: 13px;
}

.dlwe-task-progress-track {
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e7e1d8;
}

.dlwe-task-progress-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #1f1e1b;
}

.dlwe-task-note {
  margin-top: 11px;
  padding: 13px 14px;
  border-left: 3px solid #b8aa96;
  background: #faf7f2;
  line-height: 1.55;
}

.dlwe-task-note.is-completion {
  border-left-color: #739681;
  background: #f4faf6;
}

.dlwe-task-note.is-internal {
  border-left-color: #57483d;
  background: #f4f0eb;
}

.dlwe-task-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 17px;
}

.dlwe-task-editor {
  margin-top: 4px;
}

@media (max-width: 1180px) {
  .dlwe-task-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-task-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-task-toolbar input {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .dlwe-task-summary,
  .dlwe-task-toolbar,
  .dlwe-task-details-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-task-card-header {
    display: block;
  }

  .dlwe-task-card-header .dlwe-history-pills {
    margin-top: 13px;
  }

  .dlwe-task-actions {
    justify-content: stretch;
  }

  .dlwe-task-actions .dlwe-primary-button {
    width: 100%;
  }
}


/* Version 2.1: task notification badges and email status */
.dlwe-nav-item-with-badge > span:first-child {
  color: inherit;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
}

.dlwe-nav-item .dlwe-nav-badge {
  min-width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 7px;
  color: #171717;
  background: var(--dlwe-champagne);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none;
}

.dlwe-nav-item .dlwe-nav-badge[hidden] {
  display: none !important;
}

.dlwe-task-dashboard-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 15px;
}

.dlwe-task-dashboard-chip {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 5px 9px;
  border: 1px solid #d9d0c4;
  border-radius: 999px;
  color: #554d45;
  background: #faf7f2;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-task-dashboard-chip.is-danger {
  color: #9b2f28;
  border-color: #e7b8b3;
  background: #fff2f0;
}

.dlwe-task-dashboard-chip.is-warning {
  color: #8a5b11;
  border-color: #ead0a3;
  background: #fff8e9;
}

.dlwe-task-dashboard-chip.is-clear {
  color: #4f755c;
  border-color: #bdd4c4;
  background: #f1f8f3;
}

.dlwe-task-note.is-notification-error {
  color: #8f2923;
  border-left-color: #c85850;
  background: #fff3f1;
}

.dlwe-task-notification-meta {
  margin-top: 11px;
  color: var(--dlwe-muted);
  font-size: 11px;
  line-height: 1.5;
}


/* Task collaboration */
.dlwe-task-collaboration-meta {
  margin-top: 14px;
  padding: 10px 12px;
  border: 1px solid rgba(157, 123, 72, 0.22);
  background: rgba(157, 123, 72, 0.06);
  color: #6f655c;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-task-collaboration-editor .dlwe-approval-heading {
  align-items: flex-start;
}

.dlwe-task-discussion-panel {
  border: 1px solid #ded3c5;
  background: rgba(255, 255, 255, 0.54);
  padding: 22px;
  margin-bottom: 24px;
}

.dlwe-task-discussion-header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: flex-start;
  padding-bottom: 16px;
  border-bottom: 1px solid #e6ddd2;
}

.dlwe-task-discussion-header h3 {
  margin: 0 0 5px;
  font-family: Georgia, 'Times New Roman', serif;
  color: #1d2b70;
  font-size: 23px;
  font-weight: 400;
}

.dlwe-task-discussion-header p {
  margin: 0;
  color: #766d64;
  font-size: 13px;
}

.dlwe-task-comment-count {
  white-space: nowrap;
  border: 1px solid #ded3c5;
  padding: 7px 11px;
  background: #fffdf9;
  color: #5f574f;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.dlwe-task-comment-list {
  display: grid;
  gap: 14px;
  margin-top: 18px;
  max-height: 650px;
  overflow-y: auto;
  padding-right: 4px;
}

.dlwe-task-comment {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 13px;
  padding: 16px;
  border: 1px solid #e3d9cc;
  background: #fffdf9;
}

.dlwe-task-comment.is-proof {
  border-left: 4px solid #9b7945;
}

.dlwe-task-comment-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #171717;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}

.dlwe-task-comment-body {
  min-width: 0;
}

.dlwe-task-comment-header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.dlwe-task-comment-header div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.dlwe-task-comment-header strong {
  color: #171717;
  font-size: 14px;
}

.dlwe-task-comment-header span,
.dlwe-task-comment-header time {
  color: #867c72;
  font-size: 11px;
}

.dlwe-task-comment-type {
  display: inline-block;
  margin-top: 9px;
  padding: 4px 8px;
  border: 1px solid #ddd2c4;
  color: #6f655c;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dlwe-task-comment-type.is-proof {
  background: rgba(155, 121, 69, .12);
  border-color: rgba(155, 121, 69, .45);
  color: #765a31;
}

.dlwe-task-comment-text {
  margin-top: 12px;
  color: #4f4943;
  font-size: 14px;
  line-height: 1.7;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.dlwe-task-attachment-link {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-top: 14px;
  padding: 12px 14px;
  border: 1px solid #d9cbb9;
  background: #f7f1e9;
  text-decoration: none;
  color: #171717;
}

.dlwe-task-attachment-link span {
  color: #1d2b70;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.dlwe-task-attachment-link strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
}

.dlwe-task-attachment-link small {
  color: #847a70;
  font-size: 11px;
}

.dlwe-task-comment-form-section {
  margin-top: 0;
}

@media (max-width: 720px) {
  .dlwe-task-discussion-header,
  .dlwe-task-comment-header {
    display: grid;
  }

  .dlwe-task-comment {
    grid-template-columns: 34px minmax(0, 1fr);
    padding: 13px;
  }

  .dlwe-task-comment-avatar {
    width: 34px;
    height: 34px;
    font-size: 10px;
  }

  .dlwe-task-attachment-link {
    grid-template-columns: 1fr;
  }
}

/* Version 2.3: Task Dashboard & Staff Workload */
.dlwe-task-dashboard-meta {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
  padding: 11px 14px;
  border: 1px solid var(--dlwe-border);
  background: #faf7f2;
  color: var(--dlwe-muted);
  font-size: 12px;
}

.dlwe-task-dashboard-meta span:first-child {
  color: var(--dlwe-black);
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dlwe-task-dashboard-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1.6fr) repeat(4, minmax(150px, 1fr));
  gap: 10px;
  margin-bottom: 20px;
}

.dlwe-task-dashboard-toolbar input,
.dlwe-task-dashboard-toolbar select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--dlwe-border);
  border-radius: 2px;
  background: var(--dlwe-white);
  color: var(--dlwe-black);
  font: inherit;
}

.dlwe-task-dashboard-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 22px;
}

.dlwe-task-dashboard-stat {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--dlwe-border);
  background: var(--dlwe-white);
}

.dlwe-task-dashboard-stat span,
.dlwe-task-dashboard-stat small {
  display: block;
}

.dlwe-task-dashboard-stat span {
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.dlwe-task-dashboard-stat strong {
  display: block;
  margin: 10px 0 7px;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
}

.dlwe-task-dashboard-stat small {
  color: var(--dlwe-muted);
  font-size: 11px;
}

.dlwe-task-dashboard-stat.is-danger {
  border-color: rgba(159, 45, 38, .35);
  background: rgba(159, 45, 38, .035);
}

.dlwe-task-dashboard-stat.is-warning {
  border-color: rgba(162, 116, 36, .35);
  background: rgba(162, 116, 36, .04);
}

.dlwe-task-dashboard-stat.is-success {
  border-color: rgba(31, 110, 71, .3);
  background: rgba(31, 110, 71, .035);
}

.dlwe-task-dashboard-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
}

.dlwe-task-dashboard-card {
  min-width: 0;
  padding: 22px;
  border: 1px solid var(--dlwe-border);
  background: var(--dlwe-white);
}

.dlwe-task-dashboard-card-wide {
  grid-column: 1 / -1;
}

.dlwe-task-dashboard-card-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.dlwe-task-dashboard-card-heading h2 {
  margin-bottom: 0;
  font-size: 23px;
}

.dlwe-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.dlwe-task-dashboard-table {
  width: 100%;
  min-width: 780px;
  border-collapse: collapse;
}

.dlwe-task-dashboard-table th,
.dlwe-task-dashboard-table td {
  padding: 13px 12px;
  border-bottom: 1px solid #ece5dc;
  text-align: left;
  vertical-align: middle;
  font-size: 12px;
}

.dlwe-task-dashboard-table th {
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-task-dashboard-table tbody tr:last-child td {
  border-bottom: 0;
}

.dlwe-task-dashboard-table td:first-child {
  min-width: 190px;
}

.dlwe-task-dashboard-table td strong,
.dlwe-task-dashboard-table td small {
  display: block;
}

.dlwe-task-dashboard-table td small {
  margin-top: 4px;
  color: var(--dlwe-muted);
  font-size: 10px;
  overflow-wrap: anywhere;
}

.dlwe-task-load-label {
  display: inline-block !important;
  width: max-content;
  margin-top: 7px;
  padding: 3px 7px;
  border: 1px solid var(--dlwe-border);
  color: var(--dlwe-muted);
  font-size: 9px !important;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.dlwe-task-load-label.is-danger {
  border-color: rgba(159, 45, 38, .4);
  color: var(--dlwe-error);
}

.dlwe-task-load-label.is-warning {
  border-color: rgba(162, 116, 36, .4);
  color: #8a611f;
}

.dlwe-task-load-label.is-clear {
  border-color: rgba(31, 110, 71, .35);
  color: var(--dlwe-success);
}

.dlwe-number-danger {
  color: var(--dlwe-error);
  font-weight: 700;
}

.dlwe-task-mini-progress {
  position: relative;
  width: 100%;
  min-width: 90px;
  height: 22px;
  overflow: hidden;
  background: #eee8df;
}

.dlwe-task-mini-progress > span {
  position: absolute;
  inset: 0 auto 0 0;
  background: rgba(31, 110, 71, .32);
}

.dlwe-task-mini-progress > strong {
  position: relative;
  z-index: 1;
  display: block;
  padding: 3px 7px;
  color: var(--dlwe-black);
  font-size: 10px;
  text-align: right;
}

.dlwe-task-deadline-list,
.dlwe-task-breakdown-list {
  display: grid;
  gap: 10px;
}

.dlwe-task-deadline-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  border-left: 3px solid var(--dlwe-border);
  background: #faf7f2;
}

.dlwe-task-deadline-item.is-danger {
  border-left-color: var(--dlwe-error);
  background: rgba(159, 45, 38, .035);
}

.dlwe-task-deadline-item.is-warning {
  border-left-color: #a27424;
  background: rgba(162, 116, 36, .04);
}

.dlwe-task-deadline-item strong,
.dlwe-task-deadline-item span,
.dlwe-task-deadline-item b,
.dlwe-task-deadline-item small {
  display: block;
}

.dlwe-task-deadline-item strong {
  margin-bottom: 5px;
  color: var(--dlwe-black);
  font-size: 13px;
}

.dlwe-task-deadline-item span,
.dlwe-task-deadline-item small {
  color: var(--dlwe-muted);
  font-size: 10px;
}

.dlwe-task-deadline-item > div:last-child {
  flex: 0 0 auto;
  text-align: right;
}

.dlwe-task-deadline-item b {
  margin-bottom: 5px;
  color: var(--dlwe-black);
  font-size: 11px;
}

.dlwe-task-breakdown-row > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
  color: var(--dlwe-black);
  font-size: 12px;
}

.dlwe-task-breakdown-row strong {
  font-size: 11px;
}

.dlwe-task-breakdown-track {
  height: 8px;
  overflow: hidden;
  background: #ece5dc;
}

.dlwe-task-breakdown-track span {
  display: block;
  height: 100%;
  background: var(--dlwe-champagne);
}

.dlwe-task-trend {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(70px, 1fr));
  gap: 16px;
  min-height: 260px;
  padding: 20px 6px 4px;
}

.dlwe-task-trend-month {
  display: grid;
  grid-template-rows: 190px auto;
  gap: 10px;
  min-width: 0;
  text-align: center;
}

.dlwe-task-trend-bars {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 5px;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-task-trend-bars > span {
  position: relative;
  display: block;
  width: min(34%, 32px);
  min-height: 3px;
  background: var(--dlwe-charcoal);
}

.dlwe-task-trend-bars > span.is-completed {
  background: var(--dlwe-champagne);
}

.dlwe-task-trend-bars b {
  position: absolute;
  top: -19px;
  left: 50%;
  transform: translateX(-50%);
  color: var(--dlwe-muted);
  font-size: 9px;
}

.dlwe-task-trend-month > strong {
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 600;
}

.dlwe-task-trend-legend {
  position: absolute;
  right: 0;
  top: -14px;
  display: flex;
  gap: 12px;
  color: var(--dlwe-muted);
  font-size: 10px;
}

.dlwe-task-trend-legend span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.dlwe-task-trend-legend i {
  width: 9px;
  height: 9px;
  background: var(--dlwe-charcoal);
}

.dlwe-task-trend-legend i.is-completed {
  background: var(--dlwe-champagne);
}

@media (max-width: 1200px) {
  .dlwe-task-dashboard-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-task-dashboard-toolbar input {
    grid-column: 1 / -1;
  }

  .dlwe-task-dashboard-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .dlwe-task-dashboard-layout {
    grid-template-columns: 1fr;
  }

  .dlwe-task-dashboard-card-wide {
    grid-column: auto;
  }

  .dlwe-task-dashboard-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-task-trend {
    overflow-x: auto;
    grid-template-columns: repeat(6, minmax(90px, 1fr));
  }
}

@media (max-width: 560px) {
  .dlwe-task-dashboard-meta,
  .dlwe-task-dashboard-card-heading,
  .dlwe-task-deadline-item {
    display: grid;
  }

  .dlwe-task-dashboard-toolbar,
  .dlwe-task-dashboard-summary {
    grid-template-columns: 1fr;
  }

  .dlwe-task-dashboard-toolbar input {
    grid-column: auto;
  }

  .dlwe-task-dashboard-card {
    padding: 16px;
  }

  .dlwe-task-deadline-item > div:last-child {
    text-align: left;
  }
}

@media print {
  body.dlwe-print-task-dashboard .dlwe-sidebar,
  body.dlwe-print-task-dashboard .dlwe-header-actions,
  body.dlwe-print-task-dashboard .dlwe-task-dashboard-toolbar,
  body.dlwe-print-task-dashboard [data-dlwe-panel]:not([data-dlwe-panel="task-dashboard"]) {
    display: none !important;
  }

  body.dlwe-print-task-dashboard .dlwe-portal-shell,
  body.dlwe-print-task-dashboard .dlwe-main,
  body.dlwe-print-task-dashboard [data-dlwe-panel="task-dashboard"] {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  body.dlwe-print-task-dashboard .dlwe-task-dashboard-layout {
    display: block;
  }

  body.dlwe-print-task-dashboard .dlwe-task-dashboard-card,
  body.dlwe-print-task-dashboard .dlwe-task-dashboard-summary {
    break-inside: avoid;
    margin-bottom: 16px;
  }

  body.dlwe-print-task-dashboard .dlwe-task-dashboard-card {
    border-color: #bbb;
  }
}

/* Phase 5B: Checklist Builder */
.dlwe-checklist-builder-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 18px;
}

.dlwe-checklist-settings {
    margin: 0;
    min-width: 0;
}

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

.dlwe-checklist-module-option,
.dlwe-checklist-switch {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 10px 12px;
    border: 1px solid rgba(23, 23, 23, 0.12);
    background: #fff;
    font-size: 13px;
    line-height: 1.4;
}

.dlwe-checklist-module-option input,
.dlwe-checklist-switch input {
    margin-top: 2px;
    flex: 0 0 auto;
}

.dlwe-checklist-preview-actions {
    justify-content: flex-start;
    margin: 0 0 28px;
}

.dlwe-checklist-progress-section,
.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor {
    margin-top: 28px;
    padding: 24px;
    border: 1px solid rgba(23, 23, 23, 0.12);
    background: #fbfaf7;
}

.dlwe-checklist-progress-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.dlwe-checklist-progress-card {
    padding: 16px;
    border: 1px solid rgba(23, 23, 23, 0.12);
    background: #fff;
}

.dlwe-checklist-progress-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.dlwe-checklist-progress-heading div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.dlwe-checklist-progress-heading strong {
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.dlwe-checklist-progress-heading span {
    font-size: 14px;
}

.dlwe-checklist-progress-heading b {
    font-size: 20px;
}

.dlwe-checklist-progress-bar {
    height: 8px;
    margin: 14px 0 10px;
    overflow: hidden;
    background: #e8e4dc;
}

.dlwe-checklist-progress-bar span {
    display: block;
    height: 100%;
    background: #171717;
}

.dlwe-checklist-progress-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 12px;
    color: #6f6a62;
    font-size: 12px;
}

.dlwe-checklist-progress-meta .is-overdue {
    color: #a12c2c;
    font-weight: 700;
}

.dlwe-checklist-table {
    width: 100%;
    min-width: 1180px;
    border-collapse: collapse;
    background: #fff;
}

.dlwe-checklist-table th,
.dlwe-checklist-table td {
    padding: 10px;
    border: 1px solid rgba(23, 23, 23, 0.12);
    vertical-align: top;
    text-align: left;
}

.dlwe-checklist-table th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #171717;
    color: #fff;
    font-size: 11px;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.dlwe-checklist-table input[type="text"],
.dlwe-checklist-table input[type="number"],
.dlwe-checklist-table input[type="date"],
.dlwe-checklist-table textarea,
.dlwe-checklist-table select {
    width: 100%;
    min-width: 110px;
    margin: 0;
    padding: 8px 9px;
    border: 1px solid rgba(23, 23, 23, 0.18);
    background: #fff;
    font: inherit;
}

.dlwe-checklist-table textarea {
    min-width: 280px;
    margin-top: 7px;
    resize: vertical;
}

.dlwe-checklist-table .dlwe-checklist-title-input,
.dlwe-checklist-table .dlwe-template-title {
    min-width: 280px;
}

.dlwe-checklist-table tr.is-existing {
    background: #f0eee9;
    opacity: .75;
}

.dlwe-checklist-table td:first-child {
    text-align: center;
}

.dlwe-checklist-table td:first-child small {
    display: block;
    margin-top: 5px;
    font-size: 10px;
    line-height: 1.3;
}

.dlwe-checklist-template-table {
    min-width: 1080px;
}

.dlwe-checklist-template-table td:nth-child(1),
.dlwe-checklist-template-table td:nth-child(5) {
    width: 90px;
}

.dlwe-checklist-template-table td:nth-child(7),
.dlwe-checklist-template-table td:nth-child(8),
.dlwe-checklist-template-table td:nth-child(9) {
    width: 76px;
    text-align: center;
}

@media (max-width: 1180px) {
    .dlwe-checklist-builder-grid,
    .dlwe-checklist-progress-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .dlwe-checklist-module-grid {
        grid-template-columns: 1fr;
    }

    .dlwe-checklist-progress-section,
    .dlwe-checklist-preview-section,
    .dlwe-checklist-template-editor {
        padding: 16px;
    }
}


/* Version 2.5: Wedding Timeline & Event Run Sheet */
.dlwe-timeline-top-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 22px;
}

.dlwe-timeline-quick-actions,
.dlwe-timeline-print-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.dlwe-timeline-summary {
    margin: 22px 0;
}

.dlwe-timeline-toolbar {
    margin-bottom: 14px;
}

.dlwe-timeline-toolbar button {
    min-height: 44px;
}

.dlwe-timeline-table-scroll {
    border: 1px solid rgba(23, 23, 23, 0.11);
    background: #fff;
}

.dlwe-timeline-table {
    width: 100%;
    min-width: 1760px;
    border-collapse: collapse;
}

.dlwe-timeline-table th,
.dlwe-timeline-table td {
    padding: 10px;
    border-bottom: 1px solid rgba(23, 23, 23, 0.1);
    border-right: 1px solid rgba(23, 23, 23, 0.06);
    vertical-align: top;
}

.dlwe-timeline-table th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #171717;
    color: #fff;
    font-size: 10px;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.dlwe-timeline-table input,
.dlwe-timeline-table textarea,
.dlwe-timeline-table select {
    width: 100%;
    min-width: 105px;
    margin: 0;
    padding: 8px 9px;
    border: 1px solid rgba(23, 23, 23, 0.18);
    background: #fff;
    font: inherit;
}

.dlwe-timeline-table textarea {
    resize: vertical;
}

.dlwe-timeline-table .dlwe-timeline-event,
.dlwe-timeline-table .dlwe-timeline-activity {
    min-width: 210px;
    margin-bottom: 7px;
}

.dlwe-timeline-table .dlwe-timeline-venue,
.dlwe-timeline-table .dlwe-timeline-details {
    min-width: 210px;
}

.dlwe-timeline-table .dlwe-timeline-notes {
    min-width: 190px;
}

.dlwe-timeline-time-fields {
    display: grid;
    gap: 7px;
    min-width: 105px;
}

.dlwe-timeline-row-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    min-width: 116px;
}

.dlwe-mini-button {
    min-height: 32px;
    padding: 6px 8px;
    font-size: 10px;
}

.dlwe-timeline-print-area {
    display: none;
}

@media (max-width: 1180px) {
    .dlwe-timeline-top-grid {
        grid-template-columns: 1fr;
    }
}

@media print {
    body.dlwe-print-timeline * {
        visibility: hidden !important;
    }

    body.dlwe-print-timeline #dlwe-timeline-print-area,
    body.dlwe-print-timeline #dlwe-timeline-print-area * {
        visibility: visible !important;
    }

    body.dlwe-print-timeline #dlwe-timeline-print-area {
        display: block !important;
        position: absolute;
        inset: 0;
        width: 100%;
        background: #fff;
        color: #171717;
        padding: 0;
    }

    .dlwe-run-sheet-print-header {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 24px;
        padding-bottom: 18px;
        border-bottom: 2px solid #171717;
        margin-bottom: 20px;
    }

    .dlwe-run-sheet-print-header > div:first-child strong {
        display: block;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 25px;
        letter-spacing: .18em;
    }

    .dlwe-run-sheet-print-header > div:first-child span {
        display: block;
        margin-top: 5px;
        color: #7a6549;
        font-size: 9px;
        letter-spacing: .16em;
        text-transform: uppercase;
    }

    .dlwe-run-sheet-print-header h1 {
        margin: 0;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 24px;
        color: #1d2b70;
        text-align: right;
    }

    .dlwe-run-sheet-print-header p {
        margin: 6px 0 0;
        font-size: 11px;
        text-align: right;
    }

    .dlwe-run-sheet-print-event {
        break-inside: avoid;
        margin: 0 0 22px;
    }

    .dlwe-run-sheet-print-event > header {
        display: flex;
        justify-content: space-between;
        gap: 16px;
        padding: 10px 12px;
        background: #f2ede5;
        border: 1px solid #d8cec0;
    }

    .dlwe-run-sheet-print-event > header strong {
        display: block;
        font-size: 15px;
    }

    .dlwe-run-sheet-print-event > header span {
        font-size: 10px;
        color: #6d645b;
    }

    .dlwe-run-sheet-print-event table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
    }

    .dlwe-run-sheet-print-event th,
    .dlwe-run-sheet-print-event td {
        padding: 7px 8px;
        border: 1px solid #d8cec0;
        vertical-align: top;
        font-size: 9px;
        line-height: 1.35;
    }

    .dlwe-run-sheet-print-event th {
        background: #171717;
        color: #fff;
        text-align: left;
        font-size: 8px;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .dlwe-run-sheet-print-event th:nth-child(1),
    .dlwe-run-sheet-print-event td:nth-child(1) {
        width: 10%;
    }

    .dlwe-run-sheet-print-event th:nth-child(2),
    .dlwe-run-sheet-print-event td:nth-child(2) {
        width: 24%;
    }

    .dlwe-run-sheet-print-event th:nth-child(3),
    .dlwe-run-sheet-print-event td:nth-child(3) {
        width: 38%;
    }

    .dlwe-run-sheet-print-event th:nth-child(4),
    .dlwe-run-sheet-print-event td:nth-child(4) {
        width: 18%;
    }

    .dlwe-run-sheet-print-event th:nth-child(5),
    .dlwe-run-sheet-print-event td:nth-child(5) {
        width: 10%;
    }

    .dlwe-run-sheet-print-event td strong {
        display: block;
    }

    .dlwe-print-category {
        display: block;
        margin-bottom: 3px;
        color: #8b6b3f;
        font-size: 7px;
        font-weight: 700;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .dlwe-run-sheet-print-event tr.is-cancelled {
        opacity: .55;
        text-decoration: line-through;
    }

    @page {
        size: A4 landscape;
        margin: 10mm;
    }
}

/* Version 2.6: Staff Attendance, Leave & Payroll */
.dlwe-inline-month {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 190px;
  padding: 9px 12px;
  border: 1px solid var(--dlwe-border);
  background: #fff;
}

.dlwe-inline-month span {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dlwe-inline-month input {
  min-width: 120px;
  border: 0;
  padding: 0;
  background: transparent;
}

.dlwe-hr-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 24px;
  padding: 6px;
  background: #f4f1eb;
  border: 1px solid var(--dlwe-border);
}

.dlwe-hr-tab {
  appearance: none;
  border: 0;
  background: transparent;
  padding: 11px 18px;
  color: var(--dlwe-muted);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-hr-tab.is-active {
  background: #171717;
  color: #fff;
}

.dlwe-hr-tab-panel[hidden] {
  display: none !important;
}

.dlwe-hr-clock-grid {
  display: grid;
  grid-template-columns: minmax(320px, 1.1fr) minmax(420px, 1.9fr);
  gap: 22px;
  align-items: start;
  margin-bottom: 24px;
}

.dlwe-hr-clock-card {
  padding: 28px;
  background: #171717;
  color: #fff;
  border: 1px solid #171717;
}

.dlwe-hr-clock-card h2 {
  margin: 6px 0 8px;
  color: #fff;
}

.dlwe-hr-clock-card .dlwe-muted,
.dlwe-hr-clock-card label {
  color: rgba(255,255,255,.72);
}

.dlwe-hr-clock-card input,
.dlwe-hr-clock-card select,
.dlwe-hr-clock-card textarea {
  color: #171717;
  background: #fff;
}

.dlwe-form-actions-left {
  justify-content: flex-start;
}

.dlwe-hr-manager-form {
  margin: 24px 0;
}

.dlwe-hr-payroll-toolbar {
  margin-bottom: 18px;
}

.dlwe-inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.dlwe-text-danger {
  color: #9e2b2b !important;
}

.dlwe-data-table td small {
  display: block;
  margin-top: 4px;
  color: var(--dlwe-muted);
  font-size: 11px;
  line-height: 1.35;
}

.dlwe-payroll-print-area {
  display: none;
}

.dlwe-payslip {
  max-width: 850px;
  margin: 0 auto;
  padding: 42px;
  color: #171717;
  background: #fff;
  font-family: Arial, sans-serif;
}

.dlwe-payslip header {
  display: flex;
  justify-content: space-between;
  gap: 32px;
  padding-bottom: 26px;
  border-bottom: 2px solid #171717;
}

.dlwe-payslip header > div:first-child {
  display: flex;
  flex-direction: column;
}

.dlwe-payslip header > div:first-child strong {
  font-size: 28px;
  letter-spacing: .16em;
}

.dlwe-payslip header > div:first-child span {
  margin-top: 5px;
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.dlwe-payslip header h1 {
  margin: 0;
  text-align: right;
}

.dlwe-payslip header p {
  margin: 6px 0 0;
  text-align: right;
}

.dlwe-payslip-person {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 26px 0;
}

.dlwe-payslip-person div,
.dlwe-payslip-meta p {
  padding: 14px;
  background: #f5f2ec;
}

.dlwe-payslip-person span {
  display: block;
  margin-bottom: 5px;
  color: #686868;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dlwe-payslip table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 24px;
}

.dlwe-payslip td {
  padding: 13px 12px;
  border-bottom: 1px solid #ddd;
}

.dlwe-payslip td:last-child {
  text-align: right;
  font-weight: 700;
}

.dlwe-payslip tr.is-total td {
  padding-top: 18px;
  border-top: 2px solid #171717;
  border-bottom: 0;
  font-size: 18px;
}

.dlwe-payslip-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.dlwe-payslip-meta p {
  margin: 0;
  font-size: 12px;
}

.dlwe-payslip footer {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid #ddd;
  color: #555;
  font-size: 11px;
}

@media (max-width: 980px) {
  .dlwe-hr-clock-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-payslip-person,
  .dlwe-payslip-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .dlwe-inline-month {
    width: 100%;
  }

  .dlwe-hr-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-payslip-person,
  .dlwe-payslip-meta {
    grid-template-columns: 1fr;
  }
}

@media print {
  body.dlwe-print-payslip * {
    visibility: hidden !important;
  }

  body.dlwe-print-payslip #dlwe-hr-print-area,
  body.dlwe-print-payslip #dlwe-hr-print-area * {
    visibility: visible !important;
  }

  body.dlwe-print-payslip #dlwe-hr-print-area {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    background: #fff !important;
  }

  body.dlwe-print-payslip .dlwe-payslip {
    max-width: none;
    padding: 0;
  }
}


/* Version 2.7: Role-specific Portal Home Dashboard */
.dlwe-home-header {
  align-items: center;
}

.dlwe-home-hero {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 22px;
  padding: 30px;
  color: #f8f4ed;
  background:
    radial-gradient(circle at 86% 18%, rgba(211, 185, 141, 0.24), transparent 34%),
    linear-gradient(135deg, #171717 0%, #2a2825 100%);
  border-radius: 5px;
  overflow: hidden;
}

.dlwe-home-hero h2 {
  max-width: 660px;
  margin: 12px 0 8px;
  color: #ffffff;
  font-size: clamp(26px, 3vw, 38px);
}

.dlwe-home-hero p {
  max-width: 680px;
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 14px;
  line-height: 1.65;
}

.dlwe-home-role-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.dlwe-home-role-badge {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  padding: 5px 10px;
  color: #171717;
  background: var(--dlwe-champagne);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dlwe-home-generated {
  color: rgba(255, 255, 255, 0.56);
  font-size: 11px;
}

.dlwe-home-date-block {
  min-width: 170px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  text-align: right;
  border-left: 1px solid rgba(255, 255, 255, 0.16);
}

.dlwe-home-date-block span {
  color: var(--dlwe-champagne);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dlwe-home-date-block strong {
  margin-top: 8px;
  color: #ffffff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 22px;
  font-weight: 400;
}

.dlwe-home-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 28px;
}

.dlwe-home-metric {
  min-width: 0;
  padding: 20px;
  background: #ffffff;
  border: 1px solid var(--dlwe-border);
  border-top: 3px solid #d7cec2;
  border-radius: 4px;
}

.dlwe-home-metric > span {
  display: block;
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dlwe-home-metric > strong {
  display: block;
  margin: 10px 0 6px;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 400;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

.dlwe-home-metric > small {
  display: block;
  min-height: 30px;
  color: var(--dlwe-muted);
  font-size: 11px;
  line-height: 1.4;
}

.dlwe-home-metric-warning {
  border-top-color: #bf8d3d;
}

.dlwe-home-metric-danger {
  border-top-color: #a63c32;
}

.dlwe-home-metric-success {
  border-top-color: var(--dlwe-success);
}

.dlwe-home-section {
  margin-bottom: 28px;
}

.dlwe-home-section-heading,
.dlwe-home-card-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.dlwe-home-section-heading {
  margin-bottom: 14px;
}

.dlwe-home-section-heading h2,
.dlwe-home-card-heading h3 {
  margin-bottom: 0;
}

.dlwe-home-quick-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.dlwe-home-action {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
  min-height: 82px;
  padding: 16px;
  text-align: left;
  color: var(--dlwe-black);
  background: #ffffff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
  cursor: pointer;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.dlwe-home-action:hover,
.dlwe-home-action:focus-visible {
  transform: translateY(-2px);
  border-color: #bca98b;
  box-shadow: 0 12px 28px rgba(22, 22, 22, 0.08);
  outline: none;
}

.dlwe-home-action-number {
  color: #a38250;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15px;
}

.dlwe-home-action strong,
.dlwe-home-action small {
  display: block;
}

.dlwe-home-action strong {
  margin-bottom: 5px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}

.dlwe-home-action small {
  color: var(--dlwe-muted);
  font-size: 11px;
  line-height: 1.4;
}

.dlwe-home-action-arrow {
  color: #9c7d4f;
  font-size: 18px;
}

.dlwe-home-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 24px;
}

.dlwe-home-card {
  min-width: 0;
  padding: 22px;
  background: #ffffff;
  border: 1px solid var(--dlwe-border);
  border-radius: 4px;
}

.dlwe-home-card-wide {
  grid-column: 1 / -1;
}

.dlwe-home-card-heading {
  margin-bottom: 17px;
  padding-bottom: 14px;
  border-bottom: 1px solid #eee8de;
}

.dlwe-home-card-heading .dlwe-eyebrow {
  margin-bottom: 5px;
}

.dlwe-text-button {
  flex: 0 0 auto;
  padding: 4px 0;
  color: #856638;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-text-button:hover,
.dlwe-text-button:focus-visible {
  color: var(--dlwe-black);
  text-decoration: underline;
  outline: none;
}

.dlwe-home-list {
  display: grid;
  gap: 0;
}

.dlwe-home-list-row {
  width: 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 13px 0;
  text-align: left;
  color: inherit;
  background: transparent;
  border: 0;
  border-bottom: 1px solid #f0ebe3;
  cursor: pointer;
}

.dlwe-home-list-row:last-child {
  border-bottom: 0;
}

button.dlwe-home-list-row:hover .dlwe-home-list-main strong,
button.dlwe-home-list-row:focus-visible .dlwe-home-list-main strong {
  color: #8a6635;
}

button.dlwe-home-list-row:focus-visible {
  outline: 2px solid rgba(211, 185, 141, 0.55);
  outline-offset: 3px;
}

.dlwe-home-list-row-static {
  cursor: default;
}

.dlwe-home-list-main {
  min-width: 0;
  flex: 1;
}

.dlwe-home-list-main strong,
.dlwe-home-list-main small {
  display: block;
}

.dlwe-home-list-main strong {
  color: var(--dlwe-black);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

.dlwe-home-list-main small {
  margin-top: 4px;
  color: var(--dlwe-muted);
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.dlwe-home-list-meta {
  flex: 0 0 auto;
  max-width: 150px;
  color: var(--dlwe-muted);
  font-size: 10px;
  text-align: right;
}

.dlwe-home-pill {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
}

.dlwe-home-pill-neutral {
  color: #655a4d;
  background: #f1ece4;
}

.dlwe-home-pill-warning {
  color: #805416;
  background: #fff4df;
}

.dlwe-home-pill-danger {
  color: #8e3028;
  background: #fbe9e6;
}

.dlwe-home-date-chip {
  width: 46px;
  flex: 0 0 46px;
  padding: 7px 5px;
  text-align: center;
  background: #f3eee6;
  border-radius: 3px;
}

.dlwe-home-date-chip strong,
.dlwe-home-date-chip small {
  display: block;
}

.dlwe-home-date-chip strong {
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}

.dlwe-home-date-chip small {
  margin-top: 2px;
  color: #947344;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.dlwe-home-attendance-status {
  padding: 19px;
  border-left: 3px solid #c8bcae;
  background: #f7f3ed;
}

.dlwe-home-attendance-status span,
.dlwe-home-attendance-status strong,
.dlwe-home-attendance-status small {
  display: block;
}

.dlwe-home-attendance-status span {
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-home-attendance-status strong {
  margin: 8px 0 5px;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-weight: 400;
}

.dlwe-home-attendance-status small {
  color: var(--dlwe-muted);
  line-height: 1.45;
}

.dlwe-home-attendance-success {
  border-left-color: var(--dlwe-success);
  background: #edf7f1;
}

.dlwe-home-attendance-warning {
  border-left-color: #b8883c;
  background: #fff7e9;
}

.dlwe-home-mini-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.dlwe-home-mini-stats div {
  padding: 13px;
  background: #f6f2ec;
}

.dlwe-home-mini-stats strong,
.dlwe-home-mini-stats span {
  display: block;
}

.dlwe-home-mini-stats strong {
  margin-bottom: 3px;
  font-size: 20px;
}

.dlwe-home-mini-stats span {
  color: var(--dlwe-muted);
  font-size: 10px;
  line-height: 1.35;
}

.dlwe-home-full-button {
  width: 100%;
  margin-top: 12px;
}

.dlwe-home-action-stack {
  display: grid;
  gap: 8px;
}

.dlwe-home-action-line {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 13px;
  text-align: left;
  color: var(--dlwe-black);
  background: #f7f3ed;
  border: 1px solid transparent;
  border-radius: 3px;
  cursor: pointer;
}

.dlwe-home-action-line:hover,
.dlwe-home-action-line:focus-visible {
  border-color: #c8b392;
  outline: none;
}

.dlwe-home-action-line span {
  min-width: 0;
}

.dlwe-home-action-line strong,
.dlwe-home-action-line small {
  display: block;
}

.dlwe-home-action-line strong {
  font-size: 12px;
}

.dlwe-home-action-line small {
  margin-top: 3px;
  color: var(--dlwe-muted);
  font-size: 10px;
}

.dlwe-home-action-line b {
  color: #8c6938;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  font-weight: 400;
}

.dlwe-home-progress-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px 14px;
  padding: 12px 0;
  border-bottom: 1px solid #f0ebe3;
}

.dlwe-home-progress-row:last-child {
  border-bottom: 0;
}

.dlwe-home-progress-row strong,
.dlwe-home-progress-row small {
  display: block;
}

.dlwe-home-progress-row strong {
  color: var(--dlwe-black);
  font-size: 12px;
}

.dlwe-home-progress-row small {
  margin-top: 3px;
  color: var(--dlwe-muted);
  font-size: 10px;
}

.dlwe-home-progress-value {
  color: #856638;
  font-size: 12px;
  font-weight: 800;
}

.dlwe-home-progress-track {
  grid-column: 1 / -1;
  height: 6px;
  overflow: hidden;
  background: #ece5db;
  border-radius: 999px;
}

.dlwe-home-progress-track span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #b99a69, #d8c29d);
  border-radius: inherit;
}

.dlwe-home-activity-mark {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  background: var(--dlwe-champagne);
  border-radius: 999px;
  box-shadow: 0 0 0 5px rgba(211, 185, 141, 0.14);
}

.dlwe-home-empty {
  padding: 24px 14px;
  color: var(--dlwe-muted);
  background: #faf8f4;
  border: 1px dashed #ddd3c5;
  text-align: center;
  font-size: 12px;
}

@media (max-width: 1100px) {
  .dlwe-home-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-home-quick-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .dlwe-home-header {
    align-items: flex-start;
  }

  .dlwe-home-hero {
    flex-direction: column;
    padding: 24px;
  }

  .dlwe-home-date-block {
    min-width: 0;
    padding: 16px 0 0;
    text-align: left;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    border-left: 0;
  }

  .dlwe-home-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-home-card-wide {
    grid-column: auto;
  }
}

@media (max-width: 560px) {
  .dlwe-home-summary-grid,
  .dlwe-home-quick-actions,
  .dlwe-home-mini-stats {
    grid-template-columns: 1fr;
  }

  .dlwe-home-action {
    min-height: 72px;
  }

  .dlwe-home-list-row {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .dlwe-home-list-meta,
  .dlwe-home-pill {
    margin-left: 59px;
    text-align: left;
  }

  .dlwe-home-card {
    padding: 18px;
  }
}


/* Version 2.8: Unified luxury editorial interface refinement */
:root {
  --dlwe-black: #111111;
  --dlwe-charcoal: #292725;
  --dlwe-cream: #f6f2ec;
  --dlwe-white: #fffefa;
  --dlwe-surface: #ffffff;
  --dlwe-champagne: #b99a69;
  --dlwe-champagne-soft: #e9ddca;
  --dlwe-border: #ddd4c8;
  --dlwe-border-light: #eee8df;
  --dlwe-muted: #716c65;
  --dlwe-success: #35684d;
  --dlwe-error: #963a32;
  --dlwe-warning: #9b6a25;
  --dlwe-shadow: 0 18px 48px rgba(17, 17, 17, 0.055);
  --dlwe-shadow-soft: 0 10px 28px rgba(17, 17, 17, 0.035);
}

.dlwe-portal-shell,
.dlwe-auth-shell,
.dlwe-access-card {
  font-family: Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.dlwe-portal-shell {
  min-height: 820px;
  grid-template-columns: 272px minmax(0, 1fr);
  background: var(--dlwe-cream);
  border: 0;
  border-radius: 0;
  box-shadow: var(--dlwe-shadow);
}

.dlwe-sidebar {
  padding: 38px 27px 28px;
  background: #121212;
  border-right: 1px solid rgba(255, 255, 255, 0.06);
}

.dlwe-sidebar-brand {
  font-size: 30px;
  letter-spacing: 0.23em;
}

.dlwe-sidebar-subtitle {
  margin-top: 10px;
  color: #c6aa79;
  letter-spacing: 0.24em;
}

.dlwe-nav {
  gap: 3px;
  margin: 38px 0 auto;
}

.dlwe-nav-section-label {
  display: block;
  margin: 24px 12px 8px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.2em;
  line-height: 1.2;
  text-transform: uppercase;
}

.dlwe-nav-section-label:first-child {
  margin-top: 0;
}

.dlwe-nav-item {
  min-height: 42px;
  position: relative;
  padding: 10px 13px 10px 17px;
  color: rgba(255, 255, 255, 0.72) !important;
  border-radius: 0;
  font-size: 12.5px;
  letter-spacing: 0.01em;
  transition: color 150ms ease, background 150ms ease, transform 150ms ease;
}

.dlwe-nav-item::before {
  content: "";
  width: 2px;
  position: absolute;
  inset: 8px auto 8px 0;
  background: transparent;
  transition: background 150ms ease;
}

.dlwe-nav-item:hover,
.dlwe-nav-item:focus-visible {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.045);
  outline: none;
}

.dlwe-nav-item.is-active {
  color: #fff !important;
  background: rgba(185, 154, 105, 0.12);
}

.dlwe-nav-item.is-active::before {
  background: var(--dlwe-champagne);
}

.dlwe-nav-item .dlwe-nav-badge {
  min-width: 22px;
  height: 22px;
  color: #111;
  background: #c9ad7c;
  border-radius: 999px;
  font-size: 10px;
}

.dlwe-logout-link {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  margin-top: 32px;
  color: rgba(255, 255, 255, 0.62) !important;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.dlwe-logout-link:hover,
.dlwe-logout-link:focus-visible {
  color: var(--dlwe-champagne) !important;
  outline: none;
}

.dlwe-main {
  padding: clamp(30px, 3.2vw, 52px);
  background: var(--dlwe-cream);
}

.dlwe-panel.is-active {
  animation-duration: 0.26s;
}

.dlwe-portal-header {
  align-items: center;
  margin-bottom: 32px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-eyebrow {
  margin-bottom: 9px;
  color: #8f7146;
  font-size: 8.5px;
  letter-spacing: 0.19em;
}

.dlwe-portal-header h1 {
  margin-bottom: 8px;
  font-size: clamp(30px, 3.2vw, 43px);
  line-height: 1.04;
  letter-spacing: -0.025em;
}

.dlwe-main h2 {
  font-size: clamp(23px, 2vw, 29px);
  letter-spacing: -0.015em;
}

.dlwe-main h3 {
  letter-spacing: -0.01em;
}

.dlwe-muted {
  color: var(--dlwe-muted);
}

.dlwe-header-actions {
  gap: 10px;
}

.dlwe-user-chip {
  min-width: 225px;
  padding: 9px 12px;
  background: rgba(255, 255, 255, 0.7);
  border-color: var(--dlwe-border);
  border-radius: 0;
  box-shadow: none;
}

.dlwe-user-avatar {
  width: 40px;
  height: 40px;
  flex-basis: 40px;
  background: #171717;
  border-radius: 0;
  font-size: 13px;
  letter-spacing: 0.04em;
}

.dlwe-primary-button,
.dlwe-secondary-button,
.dlwe-mini-button,
.dlwe-text-button {
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease, transform 150ms ease;
}

.dlwe-primary-button,
.dlwe-secondary-button {
  min-height: 44px;
  border-radius: 0;
  font-size: 10.5px;
  letter-spacing: 0.11em;
}

.dlwe-primary-button {
  background: #151515;
  border-color: #151515;
}

.dlwe-primary-button:hover,
.dlwe-primary-button:focus-visible {
  color: #111 !important;
  background: var(--dlwe-champagne);
  border-color: var(--dlwe-champagne);
  outline: none;
}

.dlwe-secondary-button {
  background: rgba(255, 255, 255, 0.72);
  border-color: #d6ccbf;
}

.dlwe-secondary-button:hover,
.dlwe-secondary-button:focus-visible {
  background: #fff;
  border-color: #8f7146;
  outline: none;
}

.dlwe-compact-button {
  min-height: 38px;
  padding: 9px 15px;
}

.dlwe-form-section,
.dlwe-report-card,
.dlwe-report-filter-card,
.dlwe-task-dashboard-card,
.dlwe-checklist-settings,
.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor,
.dlwe-checklist-progress-section,
.dlwe-timeline-top-grid > *,
.dlwe-hr-manager-form,
.dlwe-home-card {
  border-radius: 0 !important;
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-form-section,
.dlwe-report-card,
.dlwe-report-filter-card,
.dlwe-task-dashboard-card,
.dlwe-checklist-settings,
.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor,
.dlwe-checklist-progress-section,
.dlwe-home-card {
  background: rgba(255, 255, 255, 0.92);
  border-color: var(--dlwe-border);
}

.dlwe-form-section-heading,
.dlwe-task-dashboard-card-heading,
.dlwe-home-card-heading,
.dlwe-checklist-progress-heading {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--dlwe-border-light);
}

.dlwe-field label,
.dlwe-form-grid label {
  color: #5f5952;
  font-size: 9.5px;
  letter-spacing: 0.1em;
}

.dlwe-field input,
.dlwe-field select,
.dlwe-field textarea,
.dlwe-form-grid input,
.dlwe-form-grid select,
.dlwe-form-grid textarea,
.dlwe-task-dashboard-toolbar input,
.dlwe-task-dashboard-toolbar select,
.dlwe-checklist-table input,
.dlwe-checklist-table select,
.dlwe-checklist-table textarea,
.dlwe-timeline-table input,
.dlwe-timeline-table select,
.dlwe-timeline-table textarea,
.dlwe-data-table input,
.dlwe-data-table select,
.dlwe-data-table textarea {
  color: #1a1918;
  background: #fff;
  border-color: #d7cec2;
  border-radius: 0;
  box-shadow: none;
}

.dlwe-field input:focus,
.dlwe-field select:focus,
.dlwe-field textarea:focus,
.dlwe-form-grid input:focus,
.dlwe-form-grid select:focus,
.dlwe-form-grid textarea:focus,
.dlwe-task-dashboard-toolbar input:focus,
.dlwe-task-dashboard-toolbar select:focus,
.dlwe-checklist-table input:focus,
.dlwe-checklist-table select:focus,
.dlwe-checklist-table textarea:focus,
.dlwe-timeline-table input:focus,
.dlwe-timeline-table select:focus,
.dlwe-timeline-table textarea:focus {
  border-color: #9b7b4d;
  outline: 2px solid rgba(185, 154, 105, 0.14);
  outline-offset: 0;
}

.dlwe-alert,
.dlwe-security-note,
.dlwe-empty-state,
.dlwe-home-empty {
  border-radius: 0;
}

.dlwe-status-badge,
.dlwe-home-pill,
.dlwe-history-pill,
.dlwe-task-dashboard-chip,
.dlwe-task-load-label {
  border-radius: 999px;
}

/* Home dashboard */
.dlwe-home-hero {
  position: relative;
  overflow: hidden;
  padding: 32px 34px;
  color: #fff;
  background: #151515;
  border: 1px solid #151515;
  border-radius: 0;
  box-shadow: var(--dlwe-shadow);
}

.dlwe-home-hero::after {
  content: "";
  width: 90px;
  height: 1px;
  position: absolute;
  right: 34px;
  top: 32px;
  background: var(--dlwe-champagne);
}

.dlwe-home-hero h2 {
  margin-top: 18px;
  color: #fff;
  font-size: clamp(27px, 3vw, 38px);
}

.dlwe-home-role-badge {
  color: #171717;
  background: #c9ad7c;
  border-radius: 0;
  letter-spacing: 0.13em;
}

.dlwe-home-date-block {
  min-width: 180px;
  border-left-color: rgba(255, 255, 255, 0.12);
}

.dlwe-home-summary-grid {
  gap: 12px;
}

.dlwe-home-metric {
  min-height: 148px;
  padding: 21px;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid var(--dlwe-border);
  border-top: 2px solid #c8b89f;
  border-radius: 0;
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-home-metric > strong {
  margin: 14px 0 8px;
  font-size: clamp(30px, 3.3vw, 42px);
}

.dlwe-home-quick-actions {
  gap: 10px;
}

.dlwe-home-action {
  min-height: 92px;
  padding: 18px;
  background: rgba(255, 255, 255, 0.92);
  border-color: var(--dlwe-border);
  border-radius: 0;
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-home-action:hover,
.dlwe-home-action:focus-visible {
  transform: translateY(-2px);
  border-color: #a88958;
  box-shadow: 0 16px 34px rgba(17, 17, 17, 0.07);
}

.dlwe-home-action-number {
  min-width: 28px;
  color: #97784b;
  font-size: 13px;
  letter-spacing: 0.08em;
}

.dlwe-home-action-arrow {
  color: #8b6a3b;
}

.dlwe-home-card {
  padding: 25px;
}

.dlwe-home-list-row {
  padding: 15px 0;
}

.dlwe-home-list-row:hover {
  background: #fbf8f3;
}

.dlwe-home-date-chip {
  background: #f0e9de;
  border-radius: 0;
}

.dlwe-home-attendance-status {
  border-left-width: 2px;
}

/* Task dashboard */
.dlwe-task-dashboard-meta {
  padding: 12px 15px;
  background: rgba(255, 255, 255, 0.66);
  border-color: var(--dlwe-border);
}

.dlwe-task-dashboard-toolbar {
  gap: 8px;
  padding: 14px;
  background: rgba(255, 255, 255, 0.64);
  border: 1px solid var(--dlwe-border);
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-task-dashboard-summary {
  gap: 10px;
}

.dlwe-task-dashboard-stat {
  min-height: 134px;
  padding: 19px;
  position: relative;
  background: rgba(255, 255, 255, 0.94);
  border-color: var(--dlwe-border);
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-task-dashboard-stat::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: #cab99f;
}

.dlwe-task-dashboard-stat.is-danger::before { background: var(--dlwe-error); }
.dlwe-task-dashboard-stat.is-warning::before { background: var(--dlwe-warning); }
.dlwe-task-dashboard-stat.is-success::before { background: var(--dlwe-success); }

.dlwe-task-dashboard-stat strong {
  margin: 13px 0 9px;
  font-size: 36px;
}

.dlwe-task-dashboard-layout {
  gap: 16px;
}

.dlwe-task-dashboard-card {
  padding: 25px;
}

.dlwe-task-dashboard-table th,
.dlwe-data-table th,
.dlwe-report-table th,
.dlwe-checklist-table th,
.dlwe-checklist-template-table th {
  color: rgba(255, 255, 255, 0.85) !important;
  background: #181818 !important;
  border-color: #2e2e2e !important;
  font-size: 9px;
  letter-spacing: 0.1em;
}

.dlwe-task-dashboard-table tbody tr,
.dlwe-data-table tbody tr,
.dlwe-report-table tbody tr,
.dlwe-checklist-table tbody tr,
.dlwe-checklist-template-table tbody tr {
  transition: background 120ms ease;
}

.dlwe-task-dashboard-table tbody tr:hover,
.dlwe-data-table tbody tr:hover,
.dlwe-report-table tbody tr:hover,
.dlwe-checklist-table tbody tr:hover,
.dlwe-checklist-template-table tbody tr:hover {
  background: #fbf8f3;
}

.dlwe-task-deadline-item {
  padding: 15px 16px;
  background: #fbf9f5;
  border-left-width: 2px;
}

.dlwe-task-breakdown-track,
.dlwe-task-mini-progress {
  background: #eae2d7;
  border-radius: 0;
}

.dlwe-task-breakdown-track span {
  background: #b49565;
}

/* Checklist builder */
.dlwe-checklist-builder-grid {
  gap: 16px;
}

.dlwe-checklist-settings {
  padding: 24px;
  border-top: 2px solid #b99a69;
}

.dlwe-checklist-module-grid {
  gap: 9px;
}

.dlwe-checklist-module-option {
  min-height: 74px;
  padding: 14px 15px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 0;
  transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.dlwe-checklist-module-option:hover {
  transform: translateY(-1px);
  border-color: #aa8a59;
  background: #fffdf9;
}

.dlwe-checklist-module-option:has(input:checked) {
  border-color: #9b7b4d;
  background: #f6f0e7;
  box-shadow: inset 3px 0 0 #b99a69;
}

.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor,
.dlwe-checklist-progress-section {
  padding: 25px;
}

.dlwe-checklist-progress-card {
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-radius: 0;
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-checklist-progress-bar,
.dlwe-home-progress-track {
  border-radius: 0;
  background: #e9e1d6;
}

.dlwe-checklist-progress-bar span,
.dlwe-home-progress-track span {
  border-radius: 0;
  background: #b49362;
}

.dlwe-checklist-preview-actions {
  padding-top: 18px;
  border-top: 1px solid var(--dlwe-border-light);
}

/* Timeline builder */
.dlwe-timeline-top-grid {
  gap: 16px;
}

.dlwe-timeline-top-grid > * {
  overflow: hidden;
  border: 1px solid var(--dlwe-border);
  background: rgba(255, 255, 255, 0.92);
}

.dlwe-timeline-summary {
  gap: 10px;
}

.dlwe-timeline-summary > div {
  min-height: 105px;
  padding: 18px;
  background: #fff;
  border: 1px solid var(--dlwe-border);
  border-top: 2px solid #c6b596;
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-timeline-toolbar,
.dlwe-timeline-quick-actions,
.dlwe-timeline-print-actions {
  gap: 8px;
}

.dlwe-timeline-table-scroll {
  border-color: var(--dlwe-border);
  box-shadow: var(--dlwe-shadow-soft);
}

.dlwe-timeline-table th {
  background: #181818;
  letter-spacing: 0.1em;
}

.dlwe-timeline-table td {
  padding: 12px 10px;
  background: #fff;
  border-color: var(--dlwe-border-light);
}

.dlwe-timeline-table tbody tr:nth-child(even) td {
  background: #fcfaf7;
}

.dlwe-timeline-table tbody tr:hover td {
  background: #f7f1e8;
}

.dlwe-timeline-table input,
.dlwe-timeline-table textarea,
.dlwe-timeline-table select {
  min-height: 38px;
  padding: 8px 9px;
  background: rgba(255, 255, 255, 0.96);
}

.dlwe-timeline-time-fields input {
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.dlwe-timeline-row-actions .dlwe-mini-button {
  border-radius: 0;
}

/* Attendance, leave and payroll */
.dlwe-hr-tabs {
  gap: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-hr-tab {
  min-height: 48px;
  padding: 12px 20px;
  position: relative;
  color: #706a63;
  border-bottom: 2px solid transparent;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-hr-tab.is-active {
  color: #111;
  background: transparent;
  border-bottom-color: #a88755;
}

.dlwe-hr-tab:hover,
.dlwe-hr-tab:focus-visible {
  color: #111;
  background: #f2ece3;
  outline: none;
}

.dlwe-hr-clock-grid {
  gap: 16px;
}

.dlwe-hr-clock-card {
  position: relative;
  padding: 31px;
  background: #151515;
  border: 0;
  box-shadow: var(--dlwe-shadow);
}

.dlwe-hr-clock-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: var(--dlwe-champagne);
}

.dlwe-hr-clock-card h2 {
  font-size: 30px;
}

.dlwe-inline-month {
  border-radius: 0;
  background: rgba(255, 255, 255, 0.82);
}

.dlwe-personal-summary-card,
.dlwe-payslip-person div,
.dlwe-payslip-meta p {
  border-radius: 0;
}

.dlwe-payslip {
  border: 1px solid var(--dlwe-border);
  box-shadow: var(--dlwe-shadow);
}

/* Shared table polish */
.dlwe-table-scroll,
.dlwe-report-table-wrap,
.dlwe-timeline-table-scroll {
  scrollbar-color: #b9a98f #eee8df;
  scrollbar-width: thin;
}

.dlwe-table-scroll::-webkit-scrollbar,
.dlwe-report-table-wrap::-webkit-scrollbar,
.dlwe-timeline-table-scroll::-webkit-scrollbar {
  height: 9px;
  width: 9px;
}

.dlwe-table-scroll::-webkit-scrollbar-track,
.dlwe-report-table-wrap::-webkit-scrollbar-track,
.dlwe-timeline-table-scroll::-webkit-scrollbar-track {
  background: #eee8df;
}

.dlwe-table-scroll::-webkit-scrollbar-thumb,
.dlwe-report-table-wrap::-webkit-scrollbar-thumb,
.dlwe-timeline-table-scroll::-webkit-scrollbar-thumb {
  background: #b9a98f;
}

@media (max-width: 1040px) {
  .dlwe-portal-shell {
    grid-template-columns: 230px minmax(0, 1fr);
  }

  .dlwe-sidebar {
    padding-inline: 20px;
  }

  .dlwe-main {
    padding: 30px;
  }
}

@media (max-width: 850px) {
  .dlwe-portal-shell {
    display: block;
    min-height: 0;
  }

  .dlwe-sidebar {
    padding: 22px;
  }

  .dlwe-nav {
    display: flex;
    gap: 7px;
    margin: 22px -4px 15px;
    padding: 0 4px 7px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }

  .dlwe-nav-section-label {
    display: none;
  }

  .dlwe-nav-item {
    width: auto;
    min-width: max-content;
    flex: 0 0 auto;
    padding-inline: 15px;
    border: 1px solid rgba(255, 255, 255, 0.08);
  }

  .dlwe-nav-item::before {
    inset: auto 8px 0;
    width: auto;
    height: 2px;
  }

  .dlwe-logout-link {
    margin-top: 4px;
  }

  .dlwe-main {
    padding: 28px 22px;
  }

  .dlwe-portal-header {
    align-items: flex-start;
  }
}

@media (max-width: 620px) {
  .dlwe-main {
    padding: 22px 14px;
  }

  .dlwe-portal-header {
    padding-bottom: 18px;
  }

  .dlwe-portal-header h1 {
    font-size: 31px;
  }

  .dlwe-header-actions,
  .dlwe-user-chip {
    width: 100%;
  }

  .dlwe-header-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-home-hero {
    padding: 25px 22px;
  }

  .dlwe-home-hero::after {
    right: 22px;
    top: 22px;
    width: 52px;
  }

  .dlwe-home-metric,
  .dlwe-task-dashboard-stat,
  .dlwe-task-dashboard-card,
  .dlwe-checklist-settings,
  .dlwe-checklist-preview-section,
  .dlwe-checklist-template-editor,
  .dlwe-checklist-progress-section,
  .dlwe-home-card {
    padding: 18px;
  }

  .dlwe-hr-tab {
    padding-inline: 12px;
    font-size: 9.5px;
  }

  .dlwe-hr-clock-card {
    padding: 23px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dlwe-portal-shell *,
  .dlwe-auth-shell * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* Version 2.8.1: responsive layout and form-control repair */
.dlwe-portal-shell {
  grid-template-columns: 240px minmax(0, 1fr);
}

.dlwe-main {
  min-width: 0;
  padding: clamp(24px, 2.35vw, 38px);
  container-type: inline-size;
}

/* Every grid item and card must be allowed to shrink inside the portal. */
.dlwe-panel,
.dlwe-panel > *,
.dlwe-form-section,
.dlwe-form-grid,
.dlwe-form-grid > *,
.dlwe-field,
.dlwe-checklist-builder-grid > *,
.dlwe-checklist-module-grid > *,
.dlwe-timeline-top-grid > *,
.dlwe-task-dashboard-layout > *,
.dlwe-task-dashboard-toolbar > *,
.dlwe-hr-clock-grid > *,
.dlwe-home-grid > *,
.dlwe-home-summary-grid > *,
.dlwe-home-quick-actions > * {
  min-width: 0;
}

/* Controls outside a <form> previously kept their browser intrinsic width. */
.dlwe-panel .dlwe-field > input:not([type="checkbox"]):not([type="radio"]),
.dlwe-panel .dlwe-field > select,
.dlwe-panel .dlwe-field > textarea,
.dlwe-panel .dlwe-form-grid input:not([type="checkbox"]):not([type="radio"]),
.dlwe-panel .dlwe-form-grid select,
.dlwe-panel .dlwe-form-grid textarea,
.dlwe-task-dashboard-toolbar input,
.dlwe-task-dashboard-toolbar select,
.dlwe-timeline-toolbar input,
.dlwe-timeline-toolbar select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.dlwe-panel select {
  text-overflow: ellipsis;
}

.dlwe-panel textarea {
  max-width: 100%;
  resize: vertical;
}

.dlwe-panel button,
.dlwe-panel .dlwe-primary-button,
.dlwe-panel .dlwe-secondary-button {
  max-width: 100%;
  white-space: normal;
  line-height: 1.35;
}

.dlwe-header-actions,
.dlwe-form-actions,
.dlwe-timeline-quick-actions,
.dlwe-timeline-print-actions,
.dlwe-checklist-preview-actions {
  flex-wrap: wrap;
}

/* Use the actual content width instead of the browser viewport width. */
.dlwe-checklist-builder-grid,
.dlwe-timeline-top-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
}

.dlwe-checklist-settings,
.dlwe-timeline-top-grid > .dlwe-form-section {
  height: auto;
}

.dlwe-checklist-module-option {
  overflow-wrap: anywhere;
}

.dlwe-checklist-module-option span,
.dlwe-checklist-switch span,
.dlwe-form-section-heading > div {
  min-width: 0;
}

.dlwe-form-section-heading h2,
.dlwe-form-section-heading p,
.dlwe-checklist-module-option span,
.dlwe-checklist-switch span {
  overflow-wrap: anywhere;
}

/* Medium portal content: two clean columns, with the third setup card full width. */
@container (max-width: 1020px) {
  .dlwe-checklist-builder-grid,
  .dlwe-timeline-top-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-checklist-builder-grid > :last-child:nth-child(odd),
  .dlwe-timeline-top-grid > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  .dlwe-checklist-builder-grid > :last-child .dlwe-form-grid,
  .dlwe-timeline-top-grid > :last-child .dlwe-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-task-dashboard-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-task-dashboard-toolbar > input:first-child {
    grid-column: 1 / -1;
  }

  .dlwe-task-dashboard-summary,
  .dlwe-home-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-task-dashboard-layout,
  .dlwe-hr-clock-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-home-quick-actions,
  .dlwe-home-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Narrow portal content: one-column forms and cards in reading order. */
@container (max-width: 680px) {
  .dlwe-checklist-builder-grid,
  .dlwe-timeline-top-grid,
  .dlwe-form-grid,
  .dlwe-checklist-builder-grid > :last-child .dlwe-form-grid,
  .dlwe-timeline-top-grid > :last-child .dlwe-form-grid,
  .dlwe-task-dashboard-toolbar,
  .dlwe-task-dashboard-layout,
  .dlwe-hr-clock-grid,
  .dlwe-home-grid,
  .dlwe-home-quick-actions {
    grid-template-columns: 1fr;
  }

  .dlwe-checklist-builder-grid > :last-child,
  .dlwe-timeline-top-grid > :last-child,
  .dlwe-task-dashboard-toolbar > input:first-child,
  .dlwe-field-full {
    grid-column: auto;
  }

  .dlwe-checklist-module-grid,
  .dlwe-task-dashboard-summary,
  .dlwe-home-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-portal-header {
    display: block;
  }

  .dlwe-header-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 18px;
  }
}

@container (max-width: 440px) {
  .dlwe-checklist-module-grid,
  .dlwe-task-dashboard-summary,
  .dlwe-home-summary-grid,
  .dlwe-home-mini-stats {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1040px) {
  .dlwe-portal-shell {
    grid-template-columns: 220px minmax(0, 1fr);
  }
}

/* ========================================================================
 * Version 2.9.0 — Professional interface system
 * Visual-only refinement. No API or workflow changes.
 * ===================================================================== */

.dlwe-portal-shell {
  --dlwe-pro-ink: #171614;
  --dlwe-pro-copy: #4d4943;
  --dlwe-pro-muted: #7a746b;
  --dlwe-pro-canvas: #f4f1eb;
  --dlwe-pro-surface: #fffdfa;
  --dlwe-pro-surface-strong: #ffffff;
  --dlwe-pro-line: #ddd6cc;
  --dlwe-pro-line-soft: #ece6dd;
  --dlwe-pro-accent: #a7834f;
  --dlwe-pro-accent-dark: #765a34;
  --dlwe-pro-accent-soft: #f1e8da;
  --dlwe-pro-danger: #a33b32;
  --dlwe-pro-success: #327052;
  --dlwe-pro-warning: #a56b25;
  --dlwe-pro-radius: 10px;
  --dlwe-pro-radius-sm: 7px;
  --dlwe-pro-shadow: 0 16px 42px rgba(34, 28, 20, 0.07);
  --dlwe-pro-shadow-soft: 0 7px 22px rgba(34, 28, 20, 0.045);
  width: 100%;
  max-width: 1680px;
  margin-inline: auto;
  color: var(--dlwe-pro-copy);
  background: var(--dlwe-pro-canvas);
  border: 1px solid #e4ddd4;
  border-radius: 14px;
  box-shadow: 0 24px 70px rgba(28, 23, 17, 0.10);
  isolation: isolate;
}

.dlwe-portal-shell,
.dlwe-portal-shell button,
.dlwe-portal-shell input,
.dlwe-portal-shell select,
.dlwe-portal-shell textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.dlwe-portal-shell .dlwe-main h1,
.dlwe-portal-shell .dlwe-main h2,
.dlwe-portal-shell .dlwe-main h3,
.dlwe-portal-shell .dlwe-sidebar-brand {
  color: var(--dlwe-pro-ink) !important;
  font-family: "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif !important;
}

.dlwe-sidebar {
  padding: 34px 23px 26px;
  background: linear-gradient(180deg, #151412 0%, #11100f 100%);
  border-right: 1px solid rgba(255, 255, 255, 0.075);
}

.dlwe-sidebar-brand {
  color: #fff !important;
  font-size: 28px;
  letter-spacing: 0.22em;
}

.dlwe-sidebar-subtitle {
  color: #c9ad7d;
  font-size: 8px;
  letter-spacing: 0.24em;
}

.dlwe-nav {
  gap: 4px;
  margin-top: 34px;
}

.dlwe-nav-section-label {
  margin: 22px 12px 8px;
  color: rgba(255, 255, 255, 0.35);
  font-size: 7.5px;
  letter-spacing: 0.22em;
}

.dlwe-nav-item {
  min-height: 43px;
  padding: 10px 12px 10px 16px;
  color: rgba(255, 255, 255, 0.68) !important;
  border: 1px solid transparent;
  border-radius: 7px;
  font-size: 12px;
}

.dlwe-nav-item::before {
  inset: 10px auto 10px 0;
  width: 2px;
  border-radius: 999px;
}

.dlwe-nav-item:hover,
.dlwe-nav-item:focus-visible {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.045);
  border-color: rgba(255, 255, 255, 0.055);
}

.dlwe-nav-item.is-active {
  color: #fff !important;
  background: rgba(201, 173, 125, 0.12);
  border-color: rgba(201, 173, 125, 0.14);
}

.dlwe-nav-item .dlwe-nav-badge {
  min-width: 22px;
  height: 22px;
  background: #d1b37d;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.dlwe-main {
  padding: clamp(30px, 3vw, 48px);
  background:
    radial-gradient(circle at 100% 0, rgba(167, 131, 79, 0.06), transparent 28%),
    var(--dlwe-pro-canvas);
}

.dlwe-portal-header {
  gap: 24px;
  align-items: flex-end;
  margin-bottom: 30px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--dlwe-pro-line);
}

.dlwe-portal-header > div:first-child {
  max-width: 780px;
}

.dlwe-eyebrow {
  margin: 0 0 8px;
  color: var(--dlwe-pro-accent-dark);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.21em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-portal-header h1 {
  margin: 0 0 9px;
  color: var(--dlwe-pro-ink) !important;
  font-size: clamp(32px, 3.2vw, 44px);
  line-height: 1.02;
  letter-spacing: -0.025em;
}

.dlwe-portal-header .dlwe-muted {
  max-width: 720px;
  margin: 0;
  color: var(--dlwe-pro-muted);
  font-size: 13.5px;
  line-height: 1.65;
}

.dlwe-header-actions {
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
}

.dlwe-user-chip {
  min-width: 210px;
  padding: 8px 10px;
  background: rgba(255, 255, 255, 0.76);
  border: 1px solid var(--dlwe-pro-line);
  border-radius: 8px;
}

.dlwe-user-avatar {
  border-radius: 6px;
}

/* Buttons */
.dlwe-panel .dlwe-primary-button,
.dlwe-panel .dlwe-secondary-button,
.dlwe-panel .dlwe-mini-button {
  width: auto;
  min-height: 42px;
  padding: 10px 17px;
  border-radius: 7px;
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.105em;
  line-height: 1.25;
  white-space: normal;
  box-shadow: none;
}

.dlwe-panel .dlwe-primary-button {
  color: #fff !important;
  background: var(--dlwe-pro-ink);
  border-color: var(--dlwe-pro-ink);
}

.dlwe-panel .dlwe-primary-button:hover,
.dlwe-panel .dlwe-primary-button:focus-visible {
  color: #1b1711 !important;
  background: #d0b17b;
  border-color: #d0b17b;
  transform: translateY(-1px);
}

.dlwe-panel .dlwe-secondary-button {
  color: var(--dlwe-pro-ink) !important;
  background: rgba(255, 255, 255, 0.8);
  border-color: #d5cdc1;
}

.dlwe-panel .dlwe-secondary-button:hover,
.dlwe-panel .dlwe-secondary-button:focus-visible {
  background: #fff;
  border-color: var(--dlwe-pro-accent);
  transform: translateY(-1px);
}

.dlwe-panel .dlwe-compact-button {
  min-height: 38px;
  padding: 8px 14px;
}

.dlwe-text-button {
  color: var(--dlwe-pro-accent-dark) !important;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-decoration: none;
  text-transform: uppercase;
}

.dlwe-text-button:hover,
.dlwe-text-button:focus-visible {
  color: var(--dlwe-pro-ink) !important;
}

/* Professional card system */
.dlwe-form-section,
.dlwe-report-card,
.dlwe-report-filter-card,
.dlwe-task-dashboard-card,
.dlwe-checklist-settings,
.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor,
.dlwe-checklist-progress-section,
.dlwe-timeline-top-grid > *,
.dlwe-hr-manager-form,
.dlwe-home-card,
.dlwe-home-metric,
.dlwe-home-action,
.dlwe-checklist-progress-card,
.dlwe-timeline-summary > div {
  color: var(--dlwe-pro-copy);
  background: rgba(255, 253, 250, 0.96);
  border: 1px solid var(--dlwe-pro-line);
  border-radius: var(--dlwe-pro-radius) !important;
  box-shadow: var(--dlwe-pro-shadow-soft);
}

.dlwe-form-section,
.dlwe-task-dashboard-card,
.dlwe-checklist-settings,
.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor,
.dlwe-checklist-progress-section,
.dlwe-home-card {
  padding: clamp(22px, 2.1vw, 29px);
}

.dlwe-form-section-heading,
.dlwe-task-dashboard-card-heading,
.dlwe-home-card-heading,
.dlwe-checklist-progress-heading {
  gap: 13px;
  align-items: flex-start;
  margin-bottom: 20px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--dlwe-pro-line-soft);
}

.dlwe-form-section-heading > span {
  width: 32px;
  height: 32px;
  min-width: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--dlwe-pro-accent-dark);
  background: var(--dlwe-pro-accent-soft);
  border: 1px solid #e3d3bc;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.06em;
}

.dlwe-portal-shell .dlwe-form-section-heading h2,
.dlwe-portal-shell .dlwe-task-dashboard-card-heading h2,
.dlwe-portal-shell .dlwe-checklist-progress-heading h2 {
  margin: 0 0 5px;
  color: var(--dlwe-pro-ink) !important;
  font-size: clamp(20px, 1.8vw, 24px);
  line-height: 1.14;
  letter-spacing: -0.015em;
}

.dlwe-form-section-heading p,
.dlwe-task-dashboard-card-heading p,
.dlwe-checklist-progress-heading p {
  margin: 0;
  color: var(--dlwe-pro-muted);
  font-size: 12.5px;
  line-height: 1.55;
}

/* Forms */
.dlwe-form-grid {
  gap: 18px 20px;
}

.dlwe-field {
  margin-bottom: 0;
}

.dlwe-field label,
.dlwe-form-grid label {
  margin-bottom: 8px;
  color: #5d574f;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: 0.13em;
  line-height: 1.3;
  text-transform: uppercase;
}

.dlwe-panel input:not([type="checkbox"]):not([type="radio"]),
.dlwe-panel select,
.dlwe-panel textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  color: var(--dlwe-pro-ink) !important;
  background: var(--dlwe-pro-surface-strong) !important;
  border: 1px solid #cec5b8 !important;
  border-radius: 7px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
  outline: none !important;
  font-size: 13px !important;
}

.dlwe-panel input:not([type="checkbox"]):not([type="radio"]),
.dlwe-panel select {
  min-height: 44px;
  padding: 9px 12px !important;
}

.dlwe-panel textarea {
  min-height: 96px;
  padding: 11px 12px !important;
  line-height: 1.55;
}

.dlwe-panel input::placeholder,
.dlwe-panel textarea::placeholder {
  color: #9b958c;
}

.dlwe-panel input:focus,
.dlwe-panel select:focus,
.dlwe-panel textarea:focus {
  border-color: var(--dlwe-pro-accent) !important;
  box-shadow: 0 0 0 3px rgba(167, 131, 79, 0.12) !important;
}

.dlwe-panel input[readonly],
.dlwe-panel input:disabled,
.dlwe-panel select:disabled,
.dlwe-panel textarea:disabled {
  color: #6f6961 !important;
  background: #f2eee8 !important;
  cursor: not-allowed;
}

.dlwe-required {
  color: var(--dlwe-pro-danger);
}

.dlwe-form-actions,
.dlwe-checklist-preview-actions,
.dlwe-timeline-quick-actions,
.dlwe-timeline-print-actions {
  gap: 9px;
  justify-content: flex-end;
}

.dlwe-form-loading {
  min-height: 94px;
  padding: 24px;
  color: var(--dlwe-pro-muted);
  background: rgba(255, 255, 255, 0.58);
  border: 1px dashed #d6cec2;
  border-radius: var(--dlwe-pro-radius);
}

.dlwe-alert {
  border-radius: 8px;
}

/* Home dashboard */
.dlwe-home-hero {
  padding: clamp(28px, 3vw, 40px);
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(125deg, rgba(201, 173, 125, 0.11), transparent 38%),
    #171614;
  border: 1px solid #171614;
  border-radius: 12px;
  box-shadow: var(--dlwe-pro-shadow);
}

.dlwe-home-hero::after {
  width: 105px;
  top: 34px;
  right: 38px;
  background: #cfb17d;
}

.dlwe-portal-shell .dlwe-home-hero h2 {
  color: #fff !important;
  font-size: clamp(28px, 3.2vw, 40px);
}

.dlwe-home-role-badge {
  background: #d0b17b;
  border-radius: 999px;
}

.dlwe-home-summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  gap: 13px;
}

.dlwe-home-metric {
  min-height: 138px;
  padding: 21px;
  border-top: 3px solid #b99561;
}

.dlwe-home-metric > strong {
  margin: 14px 0 6px;
  color: var(--dlwe-pro-ink);
  font-family: "Iowan Old Style", Baskerville, Georgia, serif;
  font-size: clamp(31px, 3vw, 40px);
  font-weight: 400;
}

.dlwe-home-quick-actions {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.dlwe-home-action {
  min-height: 88px;
  padding: 18px;
}

.dlwe-home-action:hover,
.dlwe-home-action:focus-visible {
  transform: translateY(-2px);
  border-color: #b08c57;
  box-shadow: 0 16px 34px rgba(34, 28, 20, 0.08);
}

.dlwe-home-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 16px;
}

.dlwe-home-card {
  grid-column: span 4;
}

.dlwe-home-card-wide {
  grid-column: span 8;
}

.dlwe-home-list-row {
  padding: 14px 0;
  border-bottom-color: var(--dlwe-pro-line-soft);
}

.dlwe-home-list-row:last-child {
  border-bottom: 0;
}

.dlwe-home-list-row:hover {
  background: #fbf7f1;
}

.dlwe-home-date-chip,
.dlwe-home-pill {
  border-radius: 6px;
}

/* Task dashboard */
.dlwe-task-dashboard-meta {
  margin-bottom: 14px;
  padding: 10px 14px;
  background: rgba(255, 255, 255, 0.66);
  border: 1px solid var(--dlwe-pro-line);
  border-radius: 8px;
}

.dlwe-task-dashboard-toolbar {
  grid-template-columns: minmax(220px, 1.5fr) repeat(4, minmax(145px, 1fr));
  gap: 10px;
  padding: 14px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--dlwe-pro-line);
  border-radius: 10px;
  box-shadow: var(--dlwe-pro-shadow-soft);
}

.dlwe-task-dashboard-summary {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
}

.dlwe-task-dashboard-stat {
  min-height: 126px;
  padding: 20px;
  background: rgba(255, 253, 250, 0.98);
  border: 1px solid var(--dlwe-pro-line);
  border-radius: 10px;
  box-shadow: var(--dlwe-pro-shadow-soft);
}

.dlwe-task-dashboard-stat::before {
  height: 3px;
  border-radius: 10px 10px 0 0;
}

.dlwe-task-dashboard-stat strong {
  color: var(--dlwe-pro-ink);
  font-family: "Iowan Old Style", Baskerville, Georgia, serif;
  font-size: 35px;
  font-weight: 400;
}

.dlwe-task-dashboard-layout {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 16px;
}

.dlwe-task-dashboard-card {
  grid-column: span 6;
}

.dlwe-task-dashboard-card-wide {
  grid-column: span 12;
}

.dlwe-task-deadline-item {
  border-radius: 7px;
}

/* Checklist builder */
.dlwe-checklist-builder-grid {
  grid-template-columns: minmax(300px, 0.92fr) minmax(360px, 1.08fr);
  gap: 16px;
}

.dlwe-checklist-builder-grid > :nth-child(3) {
  grid-column: 1 / -1;
}

.dlwe-checklist-settings {
  border-top: 3px solid #b58f58;
}

.dlwe-checklist-builder-grid > :nth-child(3) .dlwe-form-grid {
  grid-template-columns: minmax(240px, 1fr) minmax(210px, auto) minmax(300px, 1.25fr);
  align-items: end;
}

.dlwe-checklist-builder-grid > :nth-child(3) .dlwe-field {
  margin: 0;
}

.dlwe-checklist-module-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.dlwe-checklist-module-option {
  min-height: 68px;
  padding: 13px 14px;
  gap: 10px;
  align-items: flex-start;
  background: #fff;
  border: 1px solid var(--dlwe-pro-line);
  border-radius: 8px;
  box-shadow: none;
}

.dlwe-checklist-module-option input[type="checkbox"] {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  margin-top: 1px;
  accent-color: var(--dlwe-pro-accent-dark);
}

.dlwe-checklist-module-option:hover {
  transform: translateY(-1px);
  border-color: #b38d57;
  background: #fffdf9;
}

.dlwe-checklist-module-option:has(input:checked) {
  background: var(--dlwe-pro-accent-soft);
  border-color: #b38d57;
  box-shadow: inset 3px 0 0 #a7834f;
}

.dlwe-checklist-switch {
  min-height: 44px;
  padding: 11px 13px;
  background: #f6f2ec;
  border: 1px solid #e2dacd;
  border-radius: 7px;
}

.dlwe-checklist-switch input[type="checkbox"] {
  width: 17px;
  height: 17px;
  accent-color: var(--dlwe-pro-accent-dark);
}

.dlwe-checklist-preview-actions {
  margin-top: 16px;
  padding: 18px 0 0;
  border-top: 1px solid var(--dlwe-pro-line);
}

.dlwe-checklist-progress-grid {
  gap: 12px;
}

.dlwe-checklist-progress-card {
  padding: 18px;
}

/* Timeline builder */
.dlwe-timeline-top-grid {
  grid-template-columns: minmax(300px, 0.9fr) minmax(380px, 1.1fr);
  gap: 16px;
}

.dlwe-timeline-top-grid > :nth-child(3) {
  grid-column: 1 / -1;
}

.dlwe-timeline-top-grid > * {
  overflow: visible;
}

.dlwe-timeline-summary {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
}

.dlwe-timeline-summary > div {
  min-height: 98px;
  padding: 17px;
  border-top: 3px solid #b99561;
}

.dlwe-timeline-table-scroll,
.dlwe-table-scroll,
.dlwe-report-table-wrap {
  overflow: auto;
  background: #fff;
  border: 1px solid var(--dlwe-pro-line);
  border-radius: 10px;
  box-shadow: var(--dlwe-pro-shadow-soft);
}

.dlwe-task-dashboard-table,
.dlwe-data-table,
.dlwe-report-table,
.dlwe-checklist-table,
.dlwe-checklist-template-table,
.dlwe-timeline-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.dlwe-task-dashboard-table th,
.dlwe-data-table th,
.dlwe-report-table th,
.dlwe-checklist-table th,
.dlwe-checklist-template-table th,
.dlwe-timeline-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 12px 11px !important;
  color: rgba(255, 255, 255, 0.88) !important;
  background: #1b1916 !important;
  border-color: #312e29 !important;
  font-size: 8px !important;
  font-weight: 800;
  letter-spacing: 0.12em;
  white-space: nowrap;
  text-transform: uppercase;
}

.dlwe-task-dashboard-table td,
.dlwe-data-table td,
.dlwe-report-table td,
.dlwe-checklist-table td,
.dlwe-checklist-template-table td,
.dlwe-timeline-table td {
  padding: 12px 11px;
  color: #4b463f;
  background: #fff;
  border-color: var(--dlwe-pro-line-soft);
  font-size: 12px;
  vertical-align: top;
}

.dlwe-task-dashboard-table tbody tr:nth-child(even) td,
.dlwe-data-table tbody tr:nth-child(even) td,
.dlwe-report-table tbody tr:nth-child(even) td,
.dlwe-checklist-table tbody tr:nth-child(even) td,
.dlwe-checklist-template-table tbody tr:nth-child(even) td,
.dlwe-timeline-table tbody tr:nth-child(even) td {
  background: #fdfbf8;
}

.dlwe-task-dashboard-table tbody tr:hover td,
.dlwe-data-table tbody tr:hover td,
.dlwe-report-table tbody tr:hover td,
.dlwe-checklist-table tbody tr:hover td,
.dlwe-checklist-template-table tbody tr:hover td,
.dlwe-timeline-table tbody tr:hover td {
  background: #f8f2e9;
}

.dlwe-timeline-table input,
.dlwe-timeline-table select,
.dlwe-timeline-table textarea,
.dlwe-checklist-table input,
.dlwe-checklist-table select,
.dlwe-checklist-table textarea,
.dlwe-checklist-template-table input,
.dlwe-checklist-template-table select,
.dlwe-checklist-template-table textarea {
  min-height: 38px !important;
  padding: 7px 8px !important;
  border-radius: 6px !important;
  font-size: 11.5px !important;
}

/* Attendance, leave and payroll */
.dlwe-hr-tabs {
  gap: 6px;
  padding: 5px;
  background: #eae4db;
  border: 1px solid #dcd3c7;
  border-radius: 9px;
}

.dlwe-hr-tab {
  min-height: 42px;
  padding: 10px 17px;
  color: #6c655c;
  background: transparent;
  border: 0;
  border-radius: 6px;
  font-size: 9px;
}

.dlwe-hr-tab.is-active {
  color: var(--dlwe-pro-ink);
  background: #fff;
  border: 0;
  box-shadow: 0 4px 14px rgba(34, 28, 20, 0.08);
}

.dlwe-hr-tab:hover,
.dlwe-hr-tab:focus-visible {
  background: rgba(255, 255, 255, 0.62);
}

.dlwe-hr-clock-grid {
  grid-template-columns: minmax(300px, 0.8fr) minmax(420px, 1.2fr);
  gap: 16px;
}

.dlwe-hr-clock-card {
  padding: 31px;
  color: #fff;
  background:
    linear-gradient(145deg, rgba(207, 177, 125, 0.12), transparent 42%),
    #171614;
  border-radius: 11px;
  box-shadow: var(--dlwe-pro-shadow);
}

.dlwe-hr-clock-card::before {
  height: 3px;
  border-radius: 11px 11px 0 0;
}

.dlwe-portal-shell .dlwe-hr-clock-card h2 {
  color: #fff !important;
}

.dlwe-inline-month,
.dlwe-personal-summary-card,
.dlwe-payslip-person div,
.dlwe-payslip-meta p {
  border-radius: 7px;
}

.dlwe-payslip {
  border-radius: 10px;
}

/* Status, progress and empty states */
.dlwe-status-pill,
.dlwe-home-pill,
.dlwe-task-status,
.dlwe-task-priority,
.dlwe-history-count {
  border-radius: 999px;
}

.dlwe-checklist-progress-bar,
.dlwe-home-progress-track,
.dlwe-task-breakdown-track,
.dlwe-task-mini-progress {
  height: 7px;
  overflow: hidden;
  background: #e9e1d5;
  border-radius: 999px;
}

.dlwe-checklist-progress-bar span,
.dlwe-home-progress-track span,
.dlwe-task-breakdown-track span,
.dlwe-task-mini-progress span {
  border-radius: 999px;
}

.dlwe-home-empty {
  padding: 22px;
  color: var(--dlwe-pro-muted);
  background: #faf7f2;
  border: 1px dashed #d9d0c4;
  border-radius: 8px;
}

/* Responsive professional layouts */
@container (max-width: 1160px) {
  .dlwe-task-dashboard-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-task-dashboard-toolbar > input:first-child {
    grid-column: 1 / -1;
  }

  .dlwe-checklist-builder-grid,
  .dlwe-timeline-top-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-checklist-builder-grid > :nth-child(3),
  .dlwe-timeline-top-grid > :nth-child(3) {
    grid-column: 1 / -1;
  }
}

@container (max-width: 900px) {
  .dlwe-home-card,
  .dlwe-home-card-wide {
    grid-column: span 6;
  }

  .dlwe-task-dashboard-card,
  .dlwe-task-dashboard-card-wide {
    grid-column: span 12;
  }

  .dlwe-checklist-builder-grid > :nth-child(3) .dlwe-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-checklist-builder-grid > :nth-child(3) .dlwe-form-grid > :last-child {
    grid-column: 1 / -1;
  }

  .dlwe-hr-clock-grid {
    grid-template-columns: 1fr;
  }
}

@container (max-width: 700px) {
  .dlwe-checklist-builder-grid,
  .dlwe-timeline-top-grid,
  .dlwe-task-dashboard-toolbar,
  .dlwe-form-grid,
  .dlwe-checklist-builder-grid > :nth-child(3) .dlwe-form-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-checklist-builder-grid > :nth-child(3),
  .dlwe-timeline-top-grid > :nth-child(3),
  .dlwe-checklist-builder-grid > :nth-child(3) .dlwe-form-grid > :last-child,
  .dlwe-task-dashboard-toolbar > input:first-child,
  .dlwe-field-full {
    grid-column: auto;
  }

  .dlwe-home-card,
  .dlwe-home-card-wide {
    grid-column: 1 / -1;
  }

  .dlwe-checklist-module-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-header-actions,
  .dlwe-form-actions,
  .dlwe-checklist-preview-actions,
  .dlwe-timeline-quick-actions,
  .dlwe-timeline-print-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-panel .dlwe-primary-button,
  .dlwe-panel .dlwe-secondary-button,
  .dlwe-panel .dlwe-mini-button {
    width: 100%;
  }
}

@media (max-width: 850px) {
  .dlwe-portal-shell {
    border-radius: 10px;
  }

  .dlwe-sidebar {
    padding: 21px;
  }

  .dlwe-nav-item {
    border-radius: 7px;
  }
}

@media (max-width: 620px) {
  .dlwe-main {
    padding: 20px 13px;
  }

  .dlwe-form-section,
  .dlwe-task-dashboard-card,
  .dlwe-checklist-settings,
  .dlwe-checklist-preview-section,
  .dlwe-checklist-template-editor,
  .dlwe-checklist-progress-section,
  .dlwe-home-card {
    padding: 18px;
  }

  .dlwe-portal-shell .dlwe-portal-header h1 {
    font-size: 30px;
  }

  .dlwe-home-hero {
    padding: 24px 21px;
  }
}


/* Version 3.0: user management and Staff synchronization */
.dlwe-user-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(150px, 0.7fr));
  gap: 12px;
  margin: 20px 0;
  padding: 14px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid #ddd3c6;
  border-radius: 9px;
}

.dlwe-user-toolbar input,
.dlwe-user-toolbar select {
  width: 100%;
  min-width: 0;
}

.dlwe-user-table th:first-child {
  min-width: 230px;
}

.dlwe-user-table th:nth-child(3) {
  min-width: 170px;
}

.dlwe-user-identity {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 220px;
}

.dlwe-user-identity > div {
  min-width: 0;
}

.dlwe-user-identity strong,
.dlwe-user-identity span,
.dlwe-user-identity small {
  display: block;
}

.dlwe-user-identity strong {
  color: #1d1b18;
  font-size: 13px;
  line-height: 1.35;
}

.dlwe-user-identity span {
  max-width: 230px;
  margin-top: 3px;
  overflow: hidden;
  color: #746c62;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-user-identity small {
  margin-top: 4px;
  color: #a07c42;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-user-avatar {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  color: #2a241c !important;
  background: #eee1ca;
  border: 1px solid #dfc79e;
  border-radius: 50%;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.dlwe-user-sync-pill {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-user-sync-pill.is-success {
  color: #225e3b;
  background: #e6f3ea;
  border: 1px solid #c7e3d0;
}

.dlwe-user-sync-pill.is-warning {
  color: #815c16;
  background: #fff4dc;
  border: 1px solid #ecd9ad;
}

.dlwe-user-sync-pill.is-danger {
  color: #9c3b36;
  background: #fce9e7;
  border: 1px solid #efc8c4;
}

.dlwe-user-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
}

.dlwe-user-editor {
  margin-top: 22px;
}

.dlwe-user-editor .dlwe-form-section {
  margin-top: 16px;
}

#dlwe_user_weddings {
  width: 100%;
  min-height: 230px;
  padding: 8px;
  background: #fff;
}

#dlwe_user_weddings option {
  padding: 9px 10px;
  border-bottom: 1px solid #eee7dd;
}

#dlwe_user_weddings option:checked {
  color: #211d17;
  background: #ead9bb linear-gradient(0deg, #ead9bb 0%, #ead9bb 100%);
}

#dlwe_user_weddings:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

@container (max-width: 1050px) {
  .dlwe-user-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-user-toolbar > input:first-child {
    grid-column: 1 / -1;
  }
}

@container (max-width: 650px) {
  .dlwe-user-toolbar {
    grid-template-columns: 1fr;
  }

  .dlwe-user-toolbar > input:first-child {
    grid-column: auto;
  }

  .dlwe-user-identity {
    min-width: 190px;
  }
}

/* Version 3.2.2: Client Management, Multiday Dates & Other-value Overrides */
.dlwe-client-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1.45fr) repeat(4, minmax(135px, 0.65fr));
  gap: 12px;
  margin: 20px 0;
  padding: 14px;
  background: rgba(255, 255, 255, 0.76);
  border: 1px solid #ddd3c6;
  border-radius: 9px;
}

.dlwe-client-toolbar input,
.dlwe-client-toolbar select {
  width: 100%;
  min-width: 0;
}

.dlwe-client-table {
  min-width: 1280px;
}

.dlwe-client-table th:first-child {
  min-width: 220px;
}

.dlwe-client-table th:nth-child(3),
.dlwe-client-table th:nth-child(7) {
  min-width: 180px;
}

.dlwe-client-table th:nth-child(5) {
  min-width: 180px;
}

.dlwe-client-table td > strong,
.dlwe-client-table td > small {
  display: block;
}

.dlwe-client-table td > small {
  margin-top: 5px;
  color: #7d7469;
  line-height: 1.45;
}

.dlwe-client-identity strong,
.dlwe-client-identity span,
.dlwe-client-identity small {
  display: block;
}

.dlwe-client-identity strong {
  color: #1d1b18;
  font-size: 13px;
  line-height: 1.35;
}

.dlwe-client-identity span {
  margin-top: 4px;
  color: #8b7656;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-client-identity small {
  margin-top: 6px;
  color: #746c62;
  font-size: 10px;
}

.dlwe-client-contracts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

.dlwe-client-summary-money strong {
  max-width: 100%;
  overflow: visible;
  font-size: clamp(16px, 1.45vw, 23px) !important;
  line-height: 1.22;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.dlwe-client-editor {
  margin-top: 22px;
}

.dlwe-client-editor .dlwe-form-section {
  margin-top: 16px;
}

.dlwe-client-editor .dlwe-field:has(> select[data-client-other-input]) {
  align-content: start;
}

.dlwe-client-other-input {
  margin-top: 8px !important;
  border-color: #cdbb99 !important;
  background: #fffdf9 !important;
  box-shadow: inset 3px 0 0 #b7955b !important;
}

.dlwe-client-other-input[hidden] {
  display: none !important;
}

.dlwe-client-other-input::placeholder {
  color: #948878;
}

.dlwe-client-date-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 15px 17px;
  background: linear-gradient(135deg, #f7f1e7 0%, #fffdfa 100%);
  border: 1px solid #ddcba9;
  border-radius: 8px;
}

#dlwe-client-wedding-end-field[hidden],
.dlwe-client-date-summary[hidden] {
  display: none !important;
}

.dlwe-client-date-summary strong,
.dlwe-client-date-summary span {
  display: block;
}

.dlwe-client-date-summary strong {
  color: #29231d;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 17px;
  line-height: 1.3;
}

.dlwe-client-date-summary span {
  color: #786d60;
  font-size: 12px;
  line-height: 1.5;
  text-align: right;
}

.dlwe-client-total-field {
  grid-column: span 2;
  padding: 17px;
  background: linear-gradient(135deg, #f7f1e7 0%, #fffdfa 100%);
  border: 1px solid #ddcba9;
  border-radius: 8px;
}

.dlwe-client-total-field input {
  color: #1e1a15 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #d8c39d !important;
  border-radius: 0 !important;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 23px !important;
  font-weight: 700;
  box-shadow: none !important;
}

.dlwe-client-assignment-rows {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
}

.dlwe-client-assignment-row {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(240px, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 11px;
  background: #fbf8f3;
  border: 1px solid #e3d9cc;
  border-radius: 8px;
}

.dlwe-client-assignment-row select,
.dlwe-client-assignment-row input {
  width: 100%;
  min-width: 0;
}

.dlwe-client-assignment-remove {
  min-width: 64px;
  text-align: right;
}

.dlwe-client-editor input[readonly] {
  color: #71685d;
  background: #f4f0ea;
  cursor: not-allowed;
}

.dlwe-client-editor input:disabled,
.dlwe-client-editor select:disabled,
.dlwe-client-editor textarea:disabled {
  color: #413b34;
  background: #f5f1eb;
  opacity: 1;
  cursor: default;
}

@container (max-width: 1080px) {
  .dlwe-client-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-client-toolbar > input:first-child {
    grid-column: 1 / -1;
  }
}

@container (max-width: 760px) {
  .dlwe-client-assignment-row {
    grid-template-columns: 1fr;
  }

  .dlwe-client-assignment-remove {
    justify-self: start;
    text-align: left;
  }

  .dlwe-client-total-field {
    grid-column: auto;
  }

  .dlwe-client-date-summary {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .dlwe-client-date-summary span {
    text-align: left;
  }
}

@container (max-width: 650px) {
  .dlwe-client-toolbar {
    grid-template-columns: 1fr;
  }

  .dlwe-client-toolbar > input:first-child {
    grid-column: auto;
  }
}


/* Version 3.2.3: Always-visible client editing controls */
.dlwe-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
  border: 1px solid #ddd3c6;
  border-radius: 8px;
  background: #fff;
}

.dlwe-table-wrap::-webkit-scrollbar {
  height: 10px;
}

.dlwe-table-wrap::-webkit-scrollbar-track {
  background: #f2ece3;
}

.dlwe-table-wrap::-webkit-scrollbar-thumb {
  background: #b8a78e;
  border: 2px solid #f2ece3;
  border-radius: 999px;
}

.dlwe-client-table th:last-child,
.dlwe-client-table td:last-child {
  position: sticky;
  right: 0;
  min-width: 96px;
  width: 96px;
  text-align: center;
  box-shadow: -8px 0 14px rgba(32, 27, 21, 0.08);
}

.dlwe-client-table th:last-child {
  z-index: 5;
  background: #1b1916 !important;
}

.dlwe-client-table td:last-child {
  z-index: 3;
  background: #fff !important;
}

.dlwe-client-table tbody tr:nth-child(even) td:last-child {
  background: #fdfbf8 !important;
}

.dlwe-client-table tbody tr:hover td:last-child {
  background: #f8f2e9 !important;
}

.dlwe-client-inline-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  margin-top: 10px;
  padding: 6px 10px;
  color: #2d261d;
  background: #f4ead8;
  border: 1px solid #d6bf96;
  border-radius: 5px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 140ms ease, border-color 140ms ease, transform 140ms ease;
}

.dlwe-client-inline-action:hover,
.dlwe-client-inline-action:focus-visible {
  color: #fff;
  background: #201b15;
  border-color: #201b15;
  transform: translateY(-1px);
}

@container (max-width: 720px) {
  .dlwe-client-table {
    min-width: 1120px;
  }

  .dlwe-client-table th:last-child,
  .dlwe-client-table td:last-child {
    min-width: 86px;
    width: 86px;
  }
}


/* Version 3.3: Wedding Workspace */
.dlwe-workspace-page-header {
  align-items: flex-end;
}

.dlwe-workspace-header-actions {
  align-items: flex-end;
}

.dlwe-workspace-selector-label {
  display: grid;
  gap: 7px;
  min-width: min(340px, 42vw);
  margin: 0;
}

.dlwe-workspace-selector-label span {
  color: #766d62;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dlwe-workspace-selector-label select {
  width: 100%;
  min-height: 42px;
  padding: 9px 36px 9px 12px;
  color: #211e1a;
  background-color: #fff;
  border: 1px solid #d8cdbf;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
}

.dlwe-workspace-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: 18px;
  padding: 28px 30px;
  color: #fff;
  background:
    radial-gradient(circle at 88% 12%, rgba(211, 185, 141, 0.22), transparent 31%),
    linear-gradient(135deg, #151310 0%, #2a241d 100%);
  border: 1px solid #29241e;
  border-radius: 10px;
  box-shadow: 0 20px 45px rgba(25, 21, 17, 0.13);
}

.dlwe-workspace-hero::after {
  position: absolute;
  right: -42px;
  bottom: -86px;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(211, 185, 141, 0.17);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.dlwe-workspace-hero-main {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
}

.dlwe-workspace-hero-copy {
  min-width: 0;
}

.dlwe-workspace-hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 20px;
}

.dlwe-workspace-wedding-id {
  margin: 0 0 8px;
  color: #d7c39f;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.dlwe-workspace-hero h2 {
  margin: 0 0 9px !important;
  color: #fff !important;
  font-size: clamp(31px, 4vw, 52px) !important;
  line-height: 1.02 !important;
}

.dlwe-workspace-hero-meta {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, 0.69);
  font-size: 14px;
  line-height: 1.55;
}

.dlwe-workspace-quick-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  max-width: 490px;
}

.dlwe-workspace-hero .dlwe-primary-button {
  color: #17130f;
  background: #d8bf91;
  border-color: #d8bf91;
}

.dlwe-workspace-hero .dlwe-secondary-button {
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.22);
}

.dlwe-workspace-hero .dlwe-secondary-button:hover,
.dlwe-workspace-hero .dlwe-secondary-button:focus-visible {
  color: #17130f;
  background: #fff;
  border-color: #fff;
}

.dlwe-workspace-pill {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  padding: 5px 9px;
  color: #514a42;
  background: #f3efe9;
  border: 1px solid #ddd4c8;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-workspace-pill.is-success {
  color: #1f6442;
  background: #e7f4ec;
  border-color: #c8e2d3;
}

.dlwe-workspace-pill.is-warning {
  color: #805a18;
  background: #fff3d9;
  border-color: #ecd7aa;
}

.dlwe-workspace-pill.is-danger {
  color: #962f29;
  background: #fae9e7;
  border-color: #edc8c4;
}

.dlwe-workspace-hero .dlwe-workspace-pill {
  color: #f7ecd8;
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.18);
}

.dlwe-workspace-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.dlwe-workspace-summary-card {
  min-width: 0;
  padding: 18px 18px 17px;
  background: #fff;
  border: 1px solid #ddd3c6;
  border-radius: 8px;
  box-shadow: 0 7px 22px rgba(34, 29, 23, 0.045);
}

.dlwe-workspace-summary-card > span {
  display: block;
  margin-bottom: 12px;
  color: #7b736a;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dlwe-workspace-summary-card > strong {
  display: block;
  overflow: hidden;
  margin-bottom: 6px;
  color: #211d19;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(22px, 2.3vw, 32px);
  font-weight: 400;
  line-height: 1.05;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-workspace-summary-card > small {
  display: block;
  color: #857d74;
  font-size: 10px;
  line-height: 1.45;
}

.dlwe-workspace-summary-card.is-money {
  background: #f7f0e4;
  border-color: #d8c19a;
}

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

.dlwe-workspace-card {
  min-width: 0;
  padding: 23px;
  background: #fff;
  border: 1px solid #ded5c9;
  border-radius: 9px;
  box-shadow: 0 8px 25px rgba(32, 27, 21, 0.045);
}

.dlwe-workspace-card-span-2 {
  grid-column: span 2;
}

.dlwe-workspace-card-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ece5dc;
}

.dlwe-workspace-card-heading .dlwe-eyebrow {
  margin-bottom: 6px;
}

.dlwe-workspace-card-heading h2 {
  margin: 0 !important;
  font-size: 24px !important;
  line-height: 1.15 !important;
}

.dlwe-workspace-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid #eee7de;
  border-left: 1px solid #eee7de;
}

.dlwe-workspace-detail {
  min-width: 0;
  padding: 14px 15px;
  border-right: 1px solid #eee7de;
  border-bottom: 1px solid #eee7de;
}

.dlwe-workspace-detail span,
.dlwe-workspace-document-status span,
.dlwe-workspace-notes > span {
  display: block;
  margin-bottom: 6px;
  color: #81786f;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dlwe-workspace-detail strong,
.dlwe-workspace-detail a {
  display: block;
  overflow-wrap: anywhere;
  color: #2c2722;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
}

.dlwe-workspace-detail a {
  text-decoration: underline;
  text-decoration-color: #cfb581;
  text-underline-offset: 3px;
}

.dlwe-workspace-team-list,
.dlwe-workspace-compact-list,
.dlwe-workspace-alert-list,
.dlwe-workspace-timeline-list {
  display: grid;
  gap: 9px;
}

.dlwe-workspace-team-row {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 11px 12px;
  background: #faf8f4;
  border: 1px solid #ece4da;
  border-radius: 7px;
}

.dlwe-workspace-avatar {
  display: inline-flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  color: #211c16;
  background: #e7d5b6;
  border-radius: 50%;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.05em;
}

.dlwe-workspace-team-row > span:last-child,
.dlwe-workspace-list-row > span:first-child {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.dlwe-workspace-team-row strong,
.dlwe-workspace-list-row strong,
.dlwe-workspace-timeline-main strong {
  color: #2b2621;
  font-size: 12px;
  line-height: 1.35;
}

.dlwe-workspace-team-row small,
.dlwe-workspace-list-row small,
.dlwe-workspace-timeline-main small {
  color: #837b72;
  font-size: 10px;
  line-height: 1.45;
}

.dlwe-workspace-alert {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 11px;
  padding: 12px 13px;
  background: #faf8f5;
  border: 1px solid #ebe3d9;
  border-radius: 7px;
}

.dlwe-workspace-alert-dot {
  width: 8px;
  height: 8px;
  margin-top: 4px;
  background: #9e9488;
  border-radius: 50%;
}

.dlwe-workspace-alert.is-danger .dlwe-workspace-alert-dot {
  background: #a83a32;
}

.dlwe-workspace-alert.is-warning .dlwe-workspace-alert-dot {
  background: #bc8424;
}

.dlwe-workspace-alert.is-success .dlwe-workspace-alert-dot {
  background: #2d7952;
}

.dlwe-workspace-alert.is-info .dlwe-workspace-alert-dot {
  background: #667c91;
}

.dlwe-workspace-alert strong {
  display: block;
  margin-bottom: 3px;
  color: #2d2722;
  font-size: 11px;
}

.dlwe-workspace-alert p {
  margin: 0;
  color: #817970;
  font-size: 10px;
  line-height: 1.5;
}

.dlwe-workspace-progress-heading {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 11px;
  color: #696159;
  font-size: 11px;
}

.dlwe-workspace-progress-heading strong {
  color: #2a2520;
  font-size: 14px;
}

.dlwe-workspace-progress-track {
  overflow: hidden;
  height: 9px;
  margin-bottom: 17px;
  background: #eee8df;
  border-radius: 999px;
}

.dlwe-workspace-progress-track span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #b99352, #d9c192);
  border-radius: inherit;
}

.dlwe-workspace-mini-metrics,
.dlwe-workspace-timeline-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.dlwe-workspace-mini-metrics > div,
.dlwe-workspace-timeline-summary > div {
  padding: 10px;
  text-align: center;
  background: #faf7f2;
  border: 1px solid #ebe2d7;
  border-radius: 6px;
}

.dlwe-workspace-mini-metrics span,
.dlwe-workspace-timeline-summary span {
  display: block;
  margin-bottom: 4px;
  color: #80776e;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dlwe-workspace-mini-metrics strong,
.dlwe-workspace-timeline-summary strong {
  color: #2a2520;
  font-size: 17px;
}

.dlwe-workspace-scope-label {
  margin: 10px 0 12px;
  color: #8b8379;
  font-size: 9px;
}

.dlwe-workspace-list-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 13px;
  padding: 11px 0;
  border-bottom: 1px solid #eee7de;
}

.dlwe-workspace-list-row:last-child {
  border-bottom: 0;
}

.dlwe-workspace-timeline-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 15px;
}

.dlwe-workspace-timeline-row {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid #eee7de;
}

.dlwe-workspace-timeline-row:last-child {
  border-bottom: 0;
}

.dlwe-workspace-time-cell {
  display: grid;
  gap: 2px;
  color: #2b2621;
}

.dlwe-workspace-time-cell strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}

.dlwe-workspace-time-cell small {
  color: #8a8177;
  font-size: 9px;
}

.dlwe-workspace-timeline-main {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.dlwe-workspace-financial-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #ece4da;
  border-radius: 7px;
}

.dlwe-workspace-financial-grid > div {
  min-width: 0;
  padding: 13px;
  border-right: 1px solid #ece4da;
  border-bottom: 1px solid #ece4da;
}

.dlwe-workspace-financial-grid > div:nth-child(even) {
  border-right: 0;
}

.dlwe-workspace-financial-grid > div.is-highlight {
  grid-column: span 2;
  background: #f5ead8;
  border-bottom: 0;
}

.dlwe-workspace-financial-grid span {
  display: block;
  margin-bottom: 5px;
  color: #7f766d;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dlwe-workspace-financial-grid strong {
  display: block;
  overflow: hidden;
  color: #2b251f;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-workspace-contract-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 14px 0;
}

.dlwe-workspace-expense-summary {
  display: grid;
  gap: 3px;
  padding: 12px 0;
  border-top: 1px solid #ece4da;
}

.dlwe-workspace-expense-summary strong {
  color: #2d2823;
  font-size: 12px;
}

.dlwe-workspace-expense-summary span {
  color: #817970;
  font-size: 10px;
}

.dlwe-workspace-currency-list {
  display: grid;
  gap: 7px;
}

.dlwe-workspace-currency-list > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 10px;
  background: #faf7f2;
  border: 1px solid #ebe2d7;
  border-radius: 5px;
  color: #766e65;
  font-size: 10px;
}

.dlwe-workspace-currency-list strong {
  color: #2b2621;
}

.dlwe-workspace-document-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 13px;
  padding: 11px 12px;
  background: #faf7f2;
  border: 1px solid #ebe2d7;
  border-radius: 6px;
}

.dlwe-workspace-document-status span {
  margin-bottom: 0;
}

.dlwe-workspace-document-status strong {
  color: #2d2823;
  font-size: 11px;
}

.dlwe-workspace-drive-button {
  width: 100%;
  margin-bottom: 17px;
}

.dlwe-workspace-notes {
  padding-top: 15px;
  border-top: 1px solid #ece4da;
}

.dlwe-workspace-notes p {
  margin: 0;
  color: #645d56;
  font-size: 11px;
  line-height: 1.65;
  white-space: pre-wrap;
}

.dlwe-workspace-empty-block {
  padding: 16px;
  color: #817970;
  background: #faf8f5;
  border: 1px dashed #dcd2c5;
  border-radius: 7px;
  font-size: 10px;
  line-height: 1.5;
  text-align: center;
}

.dlwe-client-inline-actions,
.dlwe-client-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.dlwe-client-inline-actions .dlwe-client-inline-action {
  margin-top: 10px;
}

.dlwe-client-row-actions {
  align-items: center;
  justify-content: center;
}

@container (max-width: 1120px) {
  .dlwe-workspace-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-workspace-detail-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-workspace-hero-main {
    align-items: flex-start;
    flex-direction: column;
  }

  .dlwe-workspace-quick-actions {
    justify-content: flex-start;
    max-width: none;
  }
}

@container (max-width: 820px) {
  .dlwe-workspace-page-header,
  .dlwe-workspace-header-actions {
    align-items: stretch;
  }

  .dlwe-workspace-selector-label {
    min-width: 0;
    width: 100%;
  }

  .dlwe-workspace-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-workspace-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-workspace-card-span-2 {
    grid-column: auto;
  }

  .dlwe-workspace-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@container (max-width: 560px) {
  .dlwe-workspace-hero {
    padding: 22px 18px;
  }

  .dlwe-workspace-summary {
    grid-template-columns: 1fr;
  }

  .dlwe-workspace-card {
    padding: 18px;
  }

  .dlwe-workspace-detail-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-workspace-timeline-row {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .dlwe-workspace-timeline-row .dlwe-workspace-pill {
    grid-column: 2;
    justify-self: start;
  }

  .dlwe-workspace-timeline-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Version 3.4: lightweight performance loading treatment */
.dlwe-form-loading {
  position: relative;
  overflow: hidden;
}

.dlwe-form-loading::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  content: "";
  background: linear-gradient(90deg, transparent 0%, #c9ad7d 45%, #171614 55%, transparent 100%);
  transform: translateX(-100%);
  animation: dlwe-loading-track 1.35s ease-in-out infinite;
}

@keyframes dlwe-loading-track {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

@media (prefers-reduced-motion: reduce) {
  .dlwe-form-loading::after {
    animation: none;
    transform: none;
    opacity: 0.35;
  }
}


/* Version 3.5: Wedding Workspace luxury command-centre redesign */
.dlwe-portal-shell .dlwe-main [data-dlwe-panel="wedding-workspace"] {
  --ws-ink: #181511;
  --ws-copy: #4f4942;
  --ws-muted: #81796f;
  --ws-line: #ded5c9;
  --ws-line-soft: #ece5dc;
  --ws-canvas: #f5f0e8;
  --ws-surface: #fffdfa;
  --ws-gold: #c5a46d;
  --ws-gold-dark: #7b5b2e;
  --ws-gold-soft: #f2e7d4;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-page-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 430px);
  align-items: end;
  gap: clamp(28px, 4vw, 64px);
  margin-bottom: 26px;
  padding-bottom: 26px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-title-block {
  max-width: 690px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-title-block .dlwe-eyebrow {
  margin-bottom: 11px;
  color: var(--ws-gold-dark);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-title-block h1 {
  max-width: none;
  margin: 0 0 10px !important;
  font-size: clamp(38px, 4vw, 56px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.035em !important;
  text-align: left;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-title-block .dlwe-muted {
  max-width: 620px;
  font-size: 13px;
  line-height: 1.65;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-control-panel {
  padding: 18px;
  background: rgba(255, 253, 250, 0.92);
  border: 1px solid var(--ws-line);
  border-radius: 12px;
  box-shadow: 0 12px 34px rgba(28, 23, 17, 0.055);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-selector-label {
  min-width: 0;
  width: 100%;
  gap: 8px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-selector-label span {
  color: #6e655a;
  font-size: 8px;
  letter-spacing: 0.18em;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-selector-label select {
  min-height: 46px;
  padding-inline: 13px 38px !important;
  background: #fff !important;
  border-color: #cfc4b5 !important;
  font-weight: 650;
}

.dlwe-workspace-control-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 10px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-control-actions .dlwe-secondary-button {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  color: var(--ws-ink) !important;
  background: #f9f5ef;
  border-color: #d8cec1;
  font-size: 8.5px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: 18px;
  padding: 0;
  color: #fff;
  background:
    radial-gradient(circle at 92% 8%, rgba(207, 177, 125, 0.18), transparent 26%),
    linear-gradient(135deg, #151310 0%, #211c16 52%, #2b241c 100%);
  border: 1px solid #2a241d;
  border-radius: 14px;
  box-shadow: 0 22px 54px rgba(24, 20, 15, 0.16);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero::before {
  position: absolute;
  top: -110px;
  right: 7%;
  width: 310px;
  height: 310px;
  border: 1px solid rgba(213, 187, 142, 0.13);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero::after {
  right: -75px;
  bottom: -155px;
  width: 330px;
  height: 330px;
  border-color: rgba(213, 187, 142, 0.10);
}

.dlwe-workspace-hero-topline {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px clamp(24px, 3vw, 38px) 0;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-pills {
  margin: 0;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero .dlwe-workspace-pill {
  min-height: 25px;
  padding: 5px 10px;
  color: #f7ecd9;
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(255, 255, 255, 0.16);
  font-size: 7.5px;
  letter-spacing: 0.12em;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-wedding-id {
  margin: 0;
  color: #d6bd91;
  font-size: 8px;
  letter-spacing: 0.22em;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-main {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  align-items: end;
  gap: clamp(30px, 5vw, 80px);
  padding: clamp(38px, 5vw, 66px) clamp(24px, 3vw, 38px) clamp(34px, 4vw, 52px);
}

.dlwe-workspace-hero-kicker {
  margin: 0 0 13px;
  color: rgba(225, 204, 169, 0.76);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero h2 {
  max-width: 760px;
  margin: 0 0 13px !important;
  color: #fff !important;
  font-family: "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif !important;
  font-size: clamp(38px, 5.1vw, 68px) !important;
  font-weight: 400 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.045em !important;
  text-wrap: balance;
}

.dlwe-workspace-hero-description {
  margin: 0;
  color: rgba(255, 255, 255, 0.58);
  font-size: 12px;
  line-height: 1.6;
}

.dlwe-workspace-hero-facts {
  display: grid;
  gap: 0;
  align-self: stretch;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  backdrop-filter: blur(4px);
}

.dlwe-workspace-hero-facts > div {
  display: grid;
  align-content: center;
  min-height: 86px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

.dlwe-workspace-hero-facts > div:last-child {
  border-bottom: 0;
}

.dlwe-workspace-hero-facts span {
  margin-bottom: 7px;
  color: #d4ba8d;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.dlwe-workspace-hero-facts strong {
  color: #fff;
  font-family: "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif;
  font-size: clamp(17px, 2vw, 23px);
  font-weight: 400;
  line-height: 1.25;
}

.dlwe-workspace-action-bar {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 20px;
  padding: 18px clamp(24px, 3vw, 38px);
  background: rgba(0, 0, 0, 0.22);
  border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.dlwe-workspace-action-label {
  display: grid;
  align-content: center;
  gap: 3px;
}

.dlwe-workspace-action-label span {
  color: #e2c99d;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.dlwe-workspace-action-label small {
  color: rgba(255, 255, 255, 0.42);
  font-size: 9px;
  line-height: 1.4;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-quick-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
  gap: 8px;
  max-width: none;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action {
  display: grid;
  min-width: 0;
  min-height: 60px;
  align-content: center;
  gap: 3px;
  padding: 10px 12px;
  color: #fff !important;
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 8px;
  box-shadow: none;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  text-align: left;
  text-decoration: none;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action span {
  color: inherit;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action small {
  overflow: hidden;
  color: rgba(255, 255, 255, 0.47);
  font-size: 8.5px;
  font-weight: 500;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action:hover,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-action:focus-visible {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.10);
  border-color: rgba(214, 189, 145, 0.50);
  transform: translateY(-1px);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action.is-primary {
  color: #1a1510 !important;
  background: #d4b77f;
  border-color: #d4b77f;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action.is-primary small {
  color: rgba(26, 21, 16, 0.62);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action.is-primary:hover,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-action.is-primary:focus-visible {
  color: #1a1510 !important;
  background: #e0c592;
  border-color: #e0c592;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card {
  position: relative;
  min-height: 134px;
  padding: 20px 21px 18px;
  overflow: hidden;
  background: rgba(255, 253, 250, 0.97);
  border: 1px solid var(--ws-line);
  border-radius: 11px;
  box-shadow: 0 9px 26px rgba(31, 25, 18, 0.045);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card::after {
  position: absolute;
  right: -32px;
  bottom: -52px;
  width: 105px;
  height: 105px;
  border: 1px solid rgba(178, 143, 88, 0.13);
  border-radius: 50%;
  content: "";
}

.dlwe-workspace-summary-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-label span {
  margin: 0;
  color: #756c62;
  font-size: 7.5px;
  font-weight: 850;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.dlwe-workspace-summary-label i {
  width: 24px;
  height: 1px;
  background: var(--ws-gold);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card > strong {
  position: relative;
  z-index: 1;
  margin: 0 0 7px;
  color: var(--ws-ink);
  font-size: clamp(26px, 3vw, 39px);
  line-height: 0.98;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card > small {
  position: relative;
  z-index: 1;
  color: var(--ws-muted);
  font-size: 10px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card.is-money {
  color: #fff;
  background: linear-gradient(135deg, #252019, #352a20);
  border-color: #352b21;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card.is-money .dlwe-workspace-summary-label span,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card.is-money > small {
  color: rgba(255, 255, 255, 0.57);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card.is-money > strong {
  color: #fff;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card.is-money .dlwe-workspace-summary-label i {
  background: #d2b681;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card {
  position: relative;
  min-width: 0;
  padding: clamp(20px, 2.1vw, 28px);
  background: rgba(255, 253, 250, 0.98);
  border: 1px solid var(--ws-line);
  border-radius: 12px;
  box-shadow: 0 9px 28px rgba(31, 25, 18, 0.042);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card::before {
  position: absolute;
  top: -1px;
  left: 28px;
  width: 46px;
  height: 2px;
  background: var(--ws-gold);
  content: "";
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-overview {
  grid-column: span 8;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-team {
  grid-column: span 4;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-alerts,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-checklist,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-tasks {
  grid-column: span 4;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-timeline {
  grid-column: span 8;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-finance {
  grid-column: span 4;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-documents {
  grid-column: span 12;
}


.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-heading {
  margin-bottom: 22px;
  padding-bottom: 16px;
  border-bottom-color: var(--ws-line-soft);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-heading .dlwe-eyebrow {
  margin-bottom: 7px;
  color: var(--ws-gold-dark);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-heading h2 {
  margin: 0 !important;
  color: var(--ws-ink) !important;
  font-size: clamp(20px, 2vw, 26px) !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-card-heading .dlwe-text-button {
  flex: 0 0 auto;
  margin-top: 2px;
  padding: 0 0 4px;
  color: var(--ws-gold-dark) !important;
  border-bottom: 1px solid #cdb58b;
  font-size: 8px;
  letter-spacing: 0.11em;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--ws-line-soft);
  border-radius: 9px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail {
  min-height: 72px;
  padding: 15px 17px;
  background: #fff;
  border-color: var(--ws-line-soft);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(4n+3),
.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(4n+4) {
  background: #fcfaf6;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail span,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-document-status span,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-notes > span {
  margin-bottom: 7px;
  color: #7c7369;
  font-size: 7px;
  letter-spacing: 0.14em;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail strong,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-detail a {
  color: #29231e;
  font-size: 12px;
  font-weight: 650;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-team-row,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-alert,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-mini-metrics > div,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-timeline-summary > div,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-currency-list > div,
.dlwe-portal-shell .dlwe-main .dlwe-workspace-document-status {
  background: #fbf8f3;
  border-color: #e6ddd1;
  border-radius: 8px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-avatar {
  color: #1f1913;
  background: #dfc698;
  box-shadow: inset 0 0 0 1px rgba(92, 66, 31, 0.08);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-progress-track {
  height: 7px;
  background: #ece5db;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-progress-track span {
  background: linear-gradient(90deg, #9b733c, #d1b27b);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-financial-grid {
  border-color: #e4d9cc;
  border-radius: 9px;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-financial-grid > div.is-highlight {
  background: #efe2cf;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-empty-block {
  padding: 20px;
  color: #7c7369;
  background: #fbf8f3;
  border-color: #d9cdbd;
  border-radius: 8px;
}

@container (max-width: 1120px) {
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-page-header {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-control-panel {
    max-width: 620px;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-main {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-facts {
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-workspace-hero-facts > div {
    border-right: 1px solid rgba(255, 255, 255, 0.10);
    border-bottom: 0;
  }

  .dlwe-workspace-hero-facts > div:last-child {
    border-right: 0;
  }

  .dlwe-workspace-action-bar {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-overview,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-team,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-alerts,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-checklist,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-tasks,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-timeline,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-finance,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-documents {
    grid-column: span 6;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-overview,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-timeline,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-documents {
    grid-column: span 12;
  }
}

@container (max-width: 760px) {
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-title-block h1 {
    font-size: clamp(34px, 11vw, 48px) !important;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-topline {
    align-items: flex-start;
    flex-direction: column-reverse;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero h2 {
    font-size: clamp(34px, 11vw, 52px) !important;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-facts {
    grid-template-columns: 1fr;
  }

  .dlwe-workspace-hero-facts > div,
  .dlwe-workspace-hero-facts > div:last-child {
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
  }

  .dlwe-workspace-hero-facts > div:last-child {
    border-bottom: 0;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-overview,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-team,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-alerts,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-checklist,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-tasks,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-timeline,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-finance,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-documents {
    grid-column: span 12;
  }
}

@container (max-width: 520px) {
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-control-actions,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-summary {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-main {
    padding-top: 32px;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-quick-actions {
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(n) {
    background: #fff;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(even) {
    background: #fcfaf6;
  }
}

/* Version 3.5 refinement: compact desktop proportions and readable metrics */
.dlwe-portal-shell .dlwe-main .dlwe-workspace-page-header {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
  gap: clamp(26px, 2.5vw, 38px);
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-title-block h1 {
  font-size: clamp(36px, 3.4vw, 48px) !important;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-hero h2 {
  font-size: clamp(36px, 4.3vw, 58px) !important;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-action {
  width: 100%;
  cursor: pointer;
  appearance: none;
}

.dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card > strong {
  overflow: visible;
  font-size: clamp(24px, 2.65vw, 36px);
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

@container (min-width: 861px) and (max-width: 1120px) {
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-page-header {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-control-panel {
    max-width: none;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-main {
    grid-template-columns: minmax(0, 1fr) minmax(245px, 0.62fr);
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-hero-facts {
    grid-template-columns: 1fr;
  }

  .dlwe-workspace-hero-facts > div,
  .dlwe-workspace-hero-facts > div:last-child {
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
  }

  .dlwe-workspace-hero-facts > div:last-child {
    border-bottom: 0;
  }

  .dlwe-workspace-action-bar {
    grid-template-columns: 145px minmax(0, 1fr);
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-overview {
    grid-column: span 8;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-team {
    grid-column: span 4;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-alerts,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-checklist,
  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-tasks {
    grid-column: span 4;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-timeline {
    grid-column: span 8;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-finance {
    grid-column: span 4;
  }

  .dlwe-portal-shell .dlwe-main .dlwe-workspace-card-documents {
    grid-column: span 12;
  }
}


/* =========================================================
   DLWE v3.6 — universal 10-record pagination
   ========================================================= */
.dlwe-pagination-hidden {
  display: none !important;
}

.dlwe-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(170, 139, 79, 0.22);
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfaf7 100%);
  box-shadow: 0 8px 24px rgba(27, 24, 18, 0.05);
}

.dlwe-pagination-summary {
  color: #6f685d;
  font-size: 13px;
  line-height: 1.4;
  white-space: nowrap;
}

.dlwe-pagination-summary strong {
  color: #242019;
  font-weight: 700;
}

.dlwe-pagination-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 7px;
}

.dlwe-pagination-button {
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid #ddd7cc;
  border-radius: 10px;
  background: #ffffff;
  color: #39342d;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.dlwe-pagination-button:hover:not(:disabled),
.dlwe-pagination-button:focus-visible:not(:disabled) {
  border-color: #a98a4d;
  background: #f7f1e5;
  color: #211d17;
  transform: translateY(-1px);
  outline: none;
}

.dlwe-pagination-button.is-active {
  border-color: #1e1b17;
  background: #1e1b17;
  color: #ffffff;
  box-shadow: 0 5px 14px rgba(30, 27, 23, 0.18);
}

.dlwe-pagination-button:disabled {
  cursor: not-allowed;
  opacity: 0.38;
  transform: none;
}

.dlwe-pagination-direction {
  min-width: 78px;
}

.dlwe-pagination-ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 38px;
  color: #8b8377;
  font-weight: 700;
}

@media (max-width: 720px) {
  .dlwe-pagination {
    align-items: stretch;
    flex-direction: column;
    padding: 14px;
  }

  .dlwe-pagination-summary {
    text-align: center;
    white-space: normal;
  }

  .dlwe-pagination-buttons {
    justify-content: center;
  }

  .dlwe-pagination-button {
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
  }

  .dlwe-pagination-direction {
    min-width: 70px;
  }
}


/* DLWE v3.7 — administrator system reset */
.dlwe-nav-item-danger {
  color: #c96565;
}

.dlwe-nav-item-danger:hover,
.dlwe-nav-item-danger.is-active {
  background: rgba(142, 48, 48, 0.2);
  color: #ffd7d7;
}

.dlwe-reset-warning {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 24px;
  padding: 20px 22px;
  border: 1px solid rgba(139, 40, 40, 0.28);
  border-radius: 16px;
  background: linear-gradient(135deg, #fff8f6, #fffdfb);
  color: #5e2525;
}

.dlwe-reset-warning-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #8f3131;
  color: #fff;
  font-family: Georgia, serif;
  font-size: 21px;
  font-weight: 700;
}

.dlwe-reset-warning strong {
  display: block;
  margin: 1px 0 5px;
  font-size: 15px;
}

.dlwe-reset-warning p {
  margin: 0;
  line-height: 1.65;
}

.dlwe-reset-overview,
.dlwe-reset-confirmation,
.dlwe-reset-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 24px;
  border: 1px solid #e8e2d8;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(42, 35, 26, 0.05);
}

.dlwe-reset-overview h2,
.dlwe-reset-confirmation h2 {
  margin: 3px 0 6px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 500;
  color: #241f19;
}

.dlwe-reset-groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}

.dlwe-reset-option {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
  align-items: flex-start;
  padding: 20px;
  border: 1px solid #e7e0d5;
  border-radius: 16px;
  background: #fff;
  cursor: pointer;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.dlwe-reset-option:hover {
  transform: translateY(-1px);
  border-color: #c8b58e;
  box-shadow: 0 12px 24px rgba(45, 38, 28, 0.06);
}

.dlwe-reset-option:has(input:checked) {
  border-color: #a58a56;
  box-shadow: inset 0 0 0 1px rgba(165, 138, 86, 0.18), 0 12px 24px rgba(45, 38, 28, 0.05);
}

.dlwe-reset-option-caution:has(input:checked) {
  border-color: #a95656;
  background: #fffafa;
}

.dlwe-reset-option input,
.dlwe-reset-toggle input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: #8d774c;
}

.dlwe-reset-option-copy strong,
.dlwe-reset-toggle strong {
  display: block;
  margin-bottom: 5px;
  color: #29241d;
  font-size: 15px;
}

.dlwe-reset-option-copy small,
.dlwe-reset-toggle small,
.dlwe-reset-actions small {
  display: block;
  color: #766f65;
  line-height: 1.55;
}

.dlwe-reset-count {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #f4f0e8;
  color: #5d513c;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.dlwe-reset-local-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.dlwe-reset-toggle {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  padding: 18px 20px;
  border-radius: 14px;
  background: #f8f5ef;
  cursor: pointer;
}

.dlwe-reset-toggle:has(input:disabled) {
  opacity: 0.55;
  cursor: not-allowed;
}

.dlwe-reset-confirmation {
  margin-bottom: 18px;
  background: #29241f;
  color: #fff;
  border-color: #29241f;
}

.dlwe-reset-confirmation .dlwe-eyebrow,
.dlwe-reset-confirmation h2,
.dlwe-reset-confirmation p {
  color: #fff;
}

.dlwe-reset-confirmation p {
  margin: 0;
  opacity: 0.72;
}

.dlwe-reset-confirmation code {
  padding: 4px 8px;
  border-radius: 7px;
  background: rgba(255,255,255,0.1);
  color: #e4cf9f;
  font-size: 0.78em;
  letter-spacing: 0.08em;
}

.dlwe-reset-confirmation input {
  width: min(320px, 100%);
  min-height: 48px;
  border: 1px solid rgba(255,255,255,0.28);
  border-radius: 10px;
  background: rgba(255,255,255,0.08);
  color: #fff;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.dlwe-reset-confirmation input::placeholder {
  color: rgba(255,255,255,0.42);
}

.dlwe-reset-actions {
  background: #fbfaf7;
}

.dlwe-reset-actions strong {
  display: block;
  margin-bottom: 4px;
  color: #2a251e;
}

.dlwe-danger-button {
  min-height: 46px;
  padding: 0 20px;
  border: 1px solid #843b3b;
  border-radius: 10px;
  background: #843b3b;
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-danger-button:hover:not(:disabled) {
  background: #6f2f2f;
  border-color: #6f2f2f;
}

.dlwe-danger-button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.dlwe-reset-backup-link {
  display: inline-flex;
  margin-left: 10px;
  font-weight: 700;
  text-decoration: underline;
}

@media (max-width: 860px) {
  .dlwe-reset-groups,
  .dlwe-reset-local-options {
    grid-template-columns: 1fr;
  }

  .dlwe-reset-overview,
  .dlwe-reset-confirmation,
  .dlwe-reset-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-reset-confirmation input,
  .dlwe-danger-button {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .dlwe-reset-option {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .dlwe-reset-count {
    grid-column: 2;
    justify-self: start;
  }
}


/* DLWE v3.7.2 — system reset confirmation layout hardening */
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1.1fr) !important;
  align-items: center !important;
  gap: 42px !important;
  margin: 0 0 18px !important;
  padding: 34px 38px !important;
  border: 1px solid rgba(213, 184, 126, 0.2) !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, #1d1a17 0%, #2b251f 100%) !important;
  box-shadow: 0 18px 42px rgba(31, 25, 19, 0.14) !important;
  color: #ffffff !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation-copy {
  min-width: 0;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation .dlwe-eyebrow {
  margin: 0 0 12px !important;
  color: #d9c08d !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation h2 {
  margin: 0 0 10px !important;
  color: #ffffff !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(25px, 2.1vw, 34px) !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.015em !important;
  text-transform: none !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation-copy > p:last-child {
  max-width: 500px;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.66) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation-field {
  display: grid !important;
  gap: 9px !important;
  width: 100% !important;
  margin: 0 !important;
  color: #ffffff !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation-field > span {
  color: rgba(255, 255, 255, 0.76) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] #dlwe-reset-confirmation {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 54px !important;
  height: 54px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border: 1px solid rgba(224, 201, 154, 0.46) !important;
  border-radius: 10px !important;
  outline: none !important;
  background: rgba(255, 255, 255, 0.07) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 54px !important;
  letter-spacing: 0.12em !important;
  text-align: left !important;
  text-transform: uppercase !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] #dlwe-reset-confirmation:focus {
  border-color: #dfc487 !important;
  background: rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 0 0 3px rgba(223, 196, 135, 0.14) !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] #dlwe-reset-confirmation::placeholder {
  color: rgba(255, 255, 255, 0.38) !important;
  -webkit-text-fill-color: rgba(255, 255, 255, 0.38) !important;
  opacity: 1 !important;
  text-transform: none !important;
  letter-spacing: 0.04em !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation-field small {
  display: block !important;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.55) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation-field code {
  display: inline !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #e4ca91 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 28px !important;
  padding: 24px 28px !important;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-actions-copy {
  min-width: 0;
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] #dlwe-reset-submit {
  width: auto !important;
  min-width: 330px !important;
  max-width: 100% !important;
  min-height: 50px !important;
  height: auto !important;
  padding: 13px 24px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

@media (max-width: 980px) {
  .dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-actions {
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
  }

  .dlwe-portal-shell [data-dlwe-panel="system-reset"] #dlwe-reset-submit {
    width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
  }
}

@media (max-width: 560px) {
  .dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-confirmation {
    padding: 26px 22px !important;
  }

  .dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-actions {
    padding: 22px !important;
  }
}


/* ---------------------------------------------------------
   System Reset Completion Modal — v3.7.3
--------------------------------------------------------- */
body.dlwe-modal-open {
  overflow: hidden !important;
}

.dlwe-reset-result-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(17, 15, 13, 0.72);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 180ms ease, visibility 180ms ease;
}

.dlwe-reset-result-modal.is-visible {
  opacity: 1;
  visibility: visible;
}

.dlwe-reset-result-modal.is-closing {
  opacity: 0;
}

.dlwe-reset-result-dialog {
  position: relative;
  width: min(620px, 100%);
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  padding: 48px;
  border: 1px solid rgba(186, 146, 76, 0.38);
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(198, 161, 96, 0.12), transparent 38%),
    #f8f4ed;
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.34);
  color: #211d19;
  text-align: center;
  transform: translateY(18px) scale(0.98);
  transition: transform 220ms ease;
}

.dlwe-reset-result-modal.is-visible .dlwe-reset-result-dialog {
  transform: translateY(0) scale(1);
}

.dlwe-reset-result-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid #ddd3c4;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.72);
  color: #4a433b;
  font: 400 25px/34px Arial, Helvetica, sans-serif;
  cursor: pointer;
}

.dlwe-reset-result-close:hover,
.dlwe-reset-result-close:focus-visible {
  border-color: #aa8649;
  color: #171411;
  outline: none;
}

.dlwe-reset-result-icon {
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  margin: 0 auto 22px;
  border-radius: 50%;
  background: #211d19;
  color: #ead19e;
  box-shadow: 0 12px 28px rgba(33, 29, 25, 0.2);
  font: 700 30px/1 Arial, Helvetica, sans-serif;
}

.dlwe-reset-result-modal.is-error .dlwe-reset-result-icon {
  background: #8d2f2f;
  color: #fff;
}

.dlwe-reset-result-kicker {
  margin: 0 0 11px;
  color: #9a763d;
  font: 700 11px/1.2 Arial, Helvetica, sans-serif;
  letter-spacing: 0.24em;
}

.dlwe-reset-result-modal.is-error .dlwe-reset-result-kicker {
  color: #9d3434;
}

.dlwe-reset-result-dialog h2 {
  margin: 0;
  color: #171411;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(31px, 5vw, 45px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.025em;
}

.dlwe-reset-result-message {
  max-width: 500px;
  margin: 18px auto 0;
  color: #6f675e;
  font: 400 15px/1.65 Arial, Helvetica, sans-serif;
}

.dlwe-reset-result-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 30px 0 0;
}

.dlwe-reset-result-stats > div {
  min-width: 0;
  padding: 18px 12px;
  border: 1px solid #e0d5c5;
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.68);
}

.dlwe-reset-result-stats span,
.dlwe-reset-result-backup span {
  display: block;
  color: #897f72;
  font: 700 9px/1.35 Arial, Helvetica, sans-serif;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.dlwe-reset-result-stats strong {
  display: block;
  margin-top: 8px;
  color: #211d19;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 26px;
  font-weight: 400;
}

.dlwe-reset-result-backup {
  margin-top: 12px;
  padding: 17px 20px;
  border: 1px solid rgba(171, 132, 67, 0.42);
  border-radius: 13px;
  background: #f1e7d5;
  text-align: left;
}

.dlwe-reset-result-backup strong {
  display: block;
  margin-top: 5px;
  overflow-wrap: anywhere;
  color: #3f3425;
  font: 600 14px/1.45 Arial, Helvetica, sans-serif;
}

.dlwe-reset-result-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
}

.dlwe-reset-result-primary,
.dlwe-reset-result-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  min-height: 48px;
  padding: 12px 22px;
  border-radius: 9px;
  font: 700 11px/1.2 Arial, Helvetica, sans-serif;
  letter-spacing: 0.12em;
  text-decoration: none !important;
  text-transform: uppercase;
  cursor: pointer;
}

.dlwe-reset-result-primary {
  border: 1px solid #211d19;
  background: #211d19;
  color: #fff;
}

.dlwe-reset-result-primary:hover,
.dlwe-reset-result-primary:focus-visible {
  background: #000;
  outline: 2px solid rgba(170, 134, 73, 0.34);
  outline-offset: 2px;
}

.dlwe-reset-result-secondary {
  border: 1px solid #b69153;
  background: transparent;
  color: #795c2e !important;
}

.dlwe-reset-result-secondary:hover,
.dlwe-reset-result-secondary:focus-visible {
  background: #eee1ca;
  outline: none;
}

@media (max-width: 620px) {
  .dlwe-reset-result-modal {
    padding: 14px;
  }

  .dlwe-reset-result-dialog {
    padding: 42px 22px 26px;
    border-radius: 17px;
  }

  .dlwe-reset-result-stats {
    grid-template-columns: 1fr;
  }

  .dlwe-reset-result-stats > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
  }

  .dlwe-reset-result-stats strong {
    margin-top: 0;
  }

  .dlwe-reset-result-actions {
    flex-direction: column-reverse;
  }

  .dlwe-reset-result-primary,
  .dlwe-reset-result-secondary {
    width: 100%;
  }
}

/* ========================================================================
 * DLWE Staff Portal v3.8.1 — Complete luxury interface audit
 * Consistent typography, spacing, cards, forms, tables, lists, filters,
 * alerts, pagination and responsive organisation across every module.
 * Visual-only refinement. No API or workflow changes.
 * ===================================================================== */

.dlwe-portal-shell {
  --dlwe-ui-ink: #1d1a17;
  --dlwe-ui-ink-soft: #3f3932;
  --dlwe-ui-copy: #5f584f;
  --dlwe-ui-muted: #81796f;
  --dlwe-ui-canvas: #f6f2eb;
  --dlwe-ui-surface: #fffdfa;
  --dlwe-ui-surface-alt: #fbf8f3;
  --dlwe-ui-line: #ded5c8;
  --dlwe-ui-line-soft: #ede6dc;
  --dlwe-ui-gold: #aa854b;
  --dlwe-ui-gold-dark: #75582e;
  --dlwe-ui-gold-pale: #f2e7d4;
  --dlwe-ui-success: #2f6c50;
  --dlwe-ui-success-pale: #e8f2ec;
  --dlwe-ui-warning: #986628;
  --dlwe-ui-warning-pale: #f8eedb;
  --dlwe-ui-danger: #963b37;
  --dlwe-ui-danger-pale: #faecea;
  --dlwe-ui-radius-xl: 20px;
  --dlwe-ui-radius-lg: 15px;
  --dlwe-ui-radius-md: 11px;
  --dlwe-ui-radius-sm: 8px;
  --dlwe-ui-shadow-lg: 0 24px 64px rgba(37, 29, 20, 0.11);
  --dlwe-ui-shadow-md: 0 14px 36px rgba(37, 29, 20, 0.075);
  --dlwe-ui-shadow-sm: 0 7px 20px rgba(37, 29, 20, 0.05);
  grid-template-columns: 250px minmax(0, 1fr);
  max-width: 1720px;
  border-color: #ddd4c7;
  border-radius: var(--dlwe-ui-radius-xl);
  background: var(--dlwe-ui-canvas);
  box-shadow: var(--dlwe-ui-shadow-lg);
}

.dlwe-portal-shell .dlwe-main {
  min-width: 0;
  padding: clamp(30px, 3.1vw, 52px);
  background:
    radial-gradient(circle at 97% 1%, rgba(170, 133, 75, 0.075), transparent 26%),
    linear-gradient(180deg, #f7f3ed 0%, #f4f0e9 100%);
}

.dlwe-portal-shell .dlwe-panel {
  min-width: 0;
  animation: dlweUiPanelIn 180ms ease both;
}

@keyframes dlweUiPanelIn {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Sidebar */
.dlwe-portal-shell .dlwe-sidebar {
  padding: 36px 22px 28px;
  background:
    radial-gradient(circle at 30% 0%, rgba(202, 169, 112, 0.08), transparent 24%),
    linear-gradient(180deg, #171512 0%, #100f0e 100%);
}

.dlwe-portal-shell .dlwe-sidebar-brand {
  font-size: 28px;
  letter-spacing: 0.23em;
}

.dlwe-portal-shell .dlwe-sidebar-subtitle {
  margin-top: 10px;
  color: #cfb279;
  font-size: 8px;
  letter-spacing: 0.27em;
}

.dlwe-portal-shell .dlwe-nav {
  gap: 4px;
  margin-top: 38px;
}

.dlwe-portal-shell .dlwe-nav-section-label {
  margin: 25px 12px 8px;
  color: rgba(255,255,255,0.37);
  font-size: 7px;
  font-weight: 800;
  letter-spacing: 0.25em;
}

.dlwe-portal-shell .dlwe-nav-item {
  position: relative;
  min-height: 44px;
  padding: 11px 13px 11px 17px;
  border-radius: 9px;
  font-size: 12px;
  line-height: 1.35;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.dlwe-portal-shell .dlwe-nav-item:hover,
.dlwe-portal-shell .dlwe-nav-item:focus-visible {
  transform: translateX(2px);
}

.dlwe-portal-shell .dlwe-nav-item.is-active {
  background: linear-gradient(90deg, rgba(203, 171, 116, 0.18), rgba(203, 171, 116, 0.08));
  border-color: rgba(203, 171, 116, 0.2);
  box-shadow: inset 3px 0 0 #c8a86f;
}

.dlwe-portal-shell .dlwe-logout-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  color: #cfb279 !important;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

/* Page headers */
.dlwe-portal-shell .dlwe-portal-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 28px;
  margin-bottom: 30px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--dlwe-ui-line);
}

.dlwe-portal-shell .dlwe-portal-header > div:first-child {
  min-width: 0;
  max-width: 850px;
}

.dlwe-portal-shell .dlwe-eyebrow {
  margin-bottom: 9px;
  color: var(--dlwe-ui-gold-dark);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.24em;
  line-height: 1.3;
}

.dlwe-portal-shell .dlwe-main h1,
.dlwe-portal-shell .dlwe-main h2,
.dlwe-portal-shell .dlwe-main h3 {
  text-wrap: balance;
}

.dlwe-portal-shell .dlwe-portal-header h1 {
  margin: 0 0 9px;
  color: var(--dlwe-ui-ink) !important;
  font-size: clamp(34px, 3.5vw, 48px);
  line-height: 1.02;
  letter-spacing: -0.03em;
}

.dlwe-portal-shell .dlwe-portal-header .dlwe-muted {
  max-width: 780px;
  margin: 0;
  color: var(--dlwe-ui-muted);
  font-size: 13.5px;
  line-height: 1.65;
}

.dlwe-portal-shell .dlwe-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 9px;
  min-width: 0;
}

.dlwe-portal-shell .dlwe-user-chip {
  min-width: 205px;
  padding: 9px 11px;
  border-radius: var(--dlwe-ui-radius-sm);
  background: rgba(255,255,255,0.82);
  border-color: var(--dlwe-ui-line);
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-user-avatar {
  width: 40px;
  height: 40px;
  flex-basis: 40px;
  color: #34291b;
  background: #f0dfbd;
  border: 1px solid #d9bd84;
}

/* Buttons */
.dlwe-portal-shell .dlwe-panel button,
.dlwe-portal-shell .dlwe-panel a {
  -webkit-tap-highlight-color: transparent;
}

.dlwe-portal-shell .dlwe-panel .dlwe-primary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button,
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button,
.dlwe-portal-shell .dlwe-panel .dlwe-danger-button {
  min-height: 44px;
  padding: 10px 17px;
  border-radius: var(--dlwe-ui-radius-sm);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.105em;
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
  box-shadow: none;
  transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, color 150ms ease, box-shadow 150ms ease;
}

.dlwe-portal-shell .dlwe-panel .dlwe-primary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button {
  color: #fff !important;
  background: var(--dlwe-ui-ink);
  border: 1px solid var(--dlwe-ui-ink);
}

.dlwe-portal-shell .dlwe-panel .dlwe-primary-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-primary-button:focus-visible:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button:focus-visible:not(:disabled) {
  color: #211a11 !important;
  background: #d3b374;
  border-color: #d3b374;
  box-shadow: 0 8px 20px rgba(103, 76, 35, 0.15);
  transform: translateY(-1px);
}

.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button {
  color: var(--dlwe-ui-ink) !important;
  background: rgba(255,255,255,0.88);
  border: 1px solid #d7cec1;
}

.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:focus-visible:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button:focus-visible:not(:disabled) {
  background: #fff;
  border-color: var(--dlwe-ui-gold);
  box-shadow: 0 7px 18px rgba(37, 29, 20, 0.07);
  transform: translateY(-1px);
}

.dlwe-portal-shell .dlwe-panel .dlwe-compact-button {
  min-height: 40px;
  padding: 8px 14px;
}

.dlwe-portal-shell .dlwe-panel button:disabled,
.dlwe-portal-shell .dlwe-panel .is-disabled {
  opacity: 0.48;
  cursor: not-allowed;
  transform: none !important;
  box-shadow: none !important;
}

.dlwe-portal-shell .dlwe-text-button,
.dlwe-portal-shell .dlwe-back-link,
.dlwe-portal-shell .dlwe-button-link {
  color: var(--dlwe-ui-gold-dark) !important;
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.4;
  text-decoration: none !important;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-text-button:hover,
.dlwe-portal-shell .dlwe-back-link:hover,
.dlwe-portal-shell .dlwe-button-link:hover {
  color: var(--dlwe-ui-ink) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* Shared cards and sections */
.dlwe-portal-shell .dlwe-form-section,
.dlwe-portal-shell .dlwe-table-card,
.dlwe-portal-shell .dlwe-report-card,
.dlwe-portal-shell .dlwe-report-filter-card,
.dlwe-portal-shell .dlwe-task-dashboard-card,
.dlwe-portal-shell .dlwe-checklist-settings,
.dlwe-portal-shell .dlwe-checklist-preview-section,
.dlwe-portal-shell .dlwe-checklist-template-editor,
.dlwe-portal-shell .dlwe-checklist-progress-section,
.dlwe-portal-shell .dlwe-hr-manager-form,
.dlwe-portal-shell .dlwe-user-editor,
.dlwe-portal-shell .dlwe-client-editor,
.dlwe-portal-shell .dlwe-task-editor,
.dlwe-portal-shell .dlwe-approval-editor,
.dlwe-portal-shell .dlwe-resubmission-editor,
.dlwe-portal-shell .dlwe-workspace-card,
.dlwe-portal-shell .dlwe-home-card {
  min-width: 0;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-lg) !important;
  background: rgba(255,253,250,0.97);
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-form-section,
.dlwe-portal-shell .dlwe-table-card,
.dlwe-portal-shell .dlwe-task-dashboard-card,
.dlwe-portal-shell .dlwe-checklist-settings,
.dlwe-portal-shell .dlwe-checklist-preview-section,
.dlwe-portal-shell .dlwe-checklist-template-editor,
.dlwe-portal-shell .dlwe-checklist-progress-section,
.dlwe-portal-shell .dlwe-user-editor,
.dlwe-portal-shell .dlwe-client-editor,
.dlwe-portal-shell .dlwe-task-editor,
.dlwe-portal-shell .dlwe-approval-editor,
.dlwe-portal-shell .dlwe-resubmission-editor,
.dlwe-portal-shell .dlwe-workspace-card,
.dlwe-portal-shell .dlwe-home-card {
  padding: clamp(22px, 2.2vw, 30px);
}

.dlwe-portal-shell .dlwe-portal-form,
.dlwe-portal-shell .dlwe-client-form,
.dlwe-portal-shell .dlwe-user-form,
.dlwe-portal-shell .dlwe-task-create-form,
.dlwe-portal-shell .dlwe-task-update-form,
.dlwe-portal-shell .dlwe-approval-form,
.dlwe-portal-shell .dlwe-hr-attendance-form,
.dlwe-portal-shell .dlwe-hr-leave-form,
.dlwe-portal-shell .dlwe-hr-payroll-form {
  display: grid;
  gap: 18px;
}

.dlwe-portal-shell .dlwe-form-section-heading,
.dlwe-portal-shell .dlwe-task-dashboard-card-heading,
.dlwe-portal-shell .dlwe-report-card-heading,
.dlwe-portal-shell .dlwe-home-card-heading,
.dlwe-portal-shell .dlwe-workspace-card-heading,
.dlwe-portal-shell .dlwe-checklist-progress-heading,
.dlwe-portal-shell .dlwe-section-title-row,
.dlwe-portal-shell .dlwe-client-editor-heading,
.dlwe-portal-shell .dlwe-user-editor-heading,
.dlwe-portal-shell .dlwe-approval-heading,
.dlwe-portal-shell .dlwe-task-update-heading,
.dlwe-portal-shell .dlwe-task-collaboration-heading,
.dlwe-portal-shell .dlwe-hr-payroll-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 21px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--dlwe-ui-line-soft);
}

.dlwe-portal-shell .dlwe-form-section-heading > span {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  color: var(--dlwe-ui-gold-dark);
  border: 1px solid #e1ceb0;
  border-radius: 50%;
  background: var(--dlwe-ui-gold-pale);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.07em;
}

.dlwe-portal-shell .dlwe-form-section-heading h2,
.dlwe-portal-shell .dlwe-task-dashboard-card-heading h2,
.dlwe-portal-shell .dlwe-report-card-heading h2,
.dlwe-portal-shell .dlwe-workspace-card-heading h2,
.dlwe-portal-shell .dlwe-checklist-progress-heading h2,
.dlwe-portal-shell .dlwe-section-title-row h2,
.dlwe-portal-shell .dlwe-client-editor-heading h2,
.dlwe-portal-shell .dlwe-user-editor-heading h2,
.dlwe-portal-shell .dlwe-approval-heading h2,
.dlwe-portal-shell .dlwe-task-update-heading h2,
.dlwe-portal-shell .dlwe-task-collaboration-heading h2,
.dlwe-portal-shell .dlwe-hr-payroll-heading h2 {
  margin: 0 0 5px;
  color: var(--dlwe-ui-ink) !important;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.12;
  letter-spacing: -0.018em;
}

.dlwe-portal-shell .dlwe-form-section-heading p,
.dlwe-portal-shell .dlwe-task-dashboard-card-heading p,
.dlwe-portal-shell .dlwe-client-editor-note,
.dlwe-portal-shell .dlwe-user-editor-note,
.dlwe-portal-shell .dlwe-task-update-subheading,
.dlwe-portal-shell .dlwe-task-collaboration-subheading,
.dlwe-portal-shell .dlwe-hr-payroll-subheading {
  margin: 0;
  color: var(--dlwe-ui-muted);
  font-size: 12.5px;
  line-height: 1.6;
}

/* Forms */
.dlwe-portal-shell .dlwe-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 19px 21px;
}

.dlwe-portal-shell .dlwe-field {
  min-width: 0;
  margin: 0;
}

.dlwe-portal-shell .dlwe-field-full {
  grid-column: 1 / -1;
}

.dlwe-portal-shell .dlwe-field label,
.dlwe-portal-shell .dlwe-form-grid label,
.dlwe-portal-shell .dlwe-workspace-selector-label > span {
  display: block;
  margin: 0 0 8px;
  color: #5b544b;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.35;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-panel input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.dlwe-portal-shell .dlwe-panel select,
.dlwe-portal-shell .dlwe-panel textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  border: 1px solid #cec4b6 !important;
  border-radius: var(--dlwe-ui-radius-sm) !important;
  background: #fff !important;
  color: var(--dlwe-ui-ink) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.75) !important;
  font-size: 13px !important;
  line-height: 1.45;
  outline: none !important;
  transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
}

.dlwe-portal-shell .dlwe-panel input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.dlwe-portal-shell .dlwe-panel select {
  min-height: 46px;
  padding: 10px 13px !important;
}

.dlwe-portal-shell .dlwe-panel textarea {
  min-height: 105px;
  padding: 12px 13px !important;
  resize: vertical;
}

.dlwe-portal-shell .dlwe-panel input[type="file"] {
  width: 100%;
  min-height: 48px;
  padding: 8px;
  border: 1px dashed #cbbda9;
  border-radius: var(--dlwe-ui-radius-sm);
  background: #fcfaf6;
  color: var(--dlwe-ui-copy);
}

.dlwe-portal-shell .dlwe-panel input[type="checkbox"],
.dlwe-portal-shell .dlwe-panel input[type="radio"] {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  accent-color: var(--dlwe-ui-gold-dark);
}

.dlwe-portal-shell .dlwe-panel input:focus,
.dlwe-portal-shell .dlwe-panel select:focus,
.dlwe-portal-shell .dlwe-panel textarea:focus {
  border-color: var(--dlwe-ui-gold) !important;
  box-shadow: 0 0 0 3px rgba(170,133,75,0.13) !important;
}

.dlwe-portal-shell .dlwe-panel input[readonly],
.dlwe-portal-shell .dlwe-panel input:disabled,
.dlwe-portal-shell .dlwe-panel select:disabled,
.dlwe-portal-shell .dlwe-panel textarea:disabled {
  color: #746c62 !important;
  background: #f2eee8 !important;
  border-color: #ddd5cb !important;
}

.dlwe-portal-shell .dlwe-field-note,
.dlwe-portal-shell .dlwe-generated-note,
.dlwe-portal-shell .dlwe-task-attachment-note {
  display: block;
  margin-top: 7px;
  color: var(--dlwe-ui-muted);
  font-size: 11.5px;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-readonly-value,
.dlwe-portal-shell .dlwe-client-total-field {
  min-height: 46px;
  display: flex;
  align-items: center;
  padding: 10px 13px;
  border: 1px solid #ddd4c7;
  border-radius: var(--dlwe-ui-radius-sm);
  background: #f5f1ea;
  color: var(--dlwe-ui-ink);
  font-weight: 700;
}

.dlwe-portal-shell .dlwe-form-actions,
.dlwe-portal-shell .dlwe-history-actions,
.dlwe-portal-shell .dlwe-vendor-actions,
.dlwe-portal-shell .dlwe-task-actions,
.dlwe-portal-shell .dlwe-client-inline-actions,
.dlwe-portal-shell .dlwe-client-row-actions,
.dlwe-portal-shell .dlwe-user-actions,
.dlwe-portal-shell .dlwe-timeline-quick-actions,
.dlwe-portal-shell .dlwe-timeline-print-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 9px;
}

/* Alerts and loading states */
.dlwe-portal-shell .dlwe-alert {
  position: relative;
  margin: 0 0 20px;
  padding: 14px 17px 14px 19px;
  border: 1px solid #dfd6ca;
  border-left-width: 4px;
  border-radius: var(--dlwe-ui-radius-md);
  background: #fff;
  color: var(--dlwe-ui-copy);
  font-size: 12.5px;
  line-height: 1.58;
  box-shadow: var(--dlwe-ui-shadow-sm);
  overflow-wrap: anywhere;
}

.dlwe-portal-shell .dlwe-alert-error {
  color: #79312f;
  background: var(--dlwe-ui-danger-pale);
  border-color: #e8c5c2;
  border-left-color: var(--dlwe-ui-danger);
}

.dlwe-portal-shell .dlwe-alert-success {
  color: #285f46;
  background: var(--dlwe-ui-success-pale);
  border-color: #c5dfcf;
  border-left-color: var(--dlwe-ui-success);
}

.dlwe-portal-shell .dlwe-form-loading {
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 12px 0 20px;
  padding: 24px;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-lg);
  background: rgba(255,253,250,0.82);
  color: var(--dlwe-ui-muted);
  font-size: 12.5px;
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-spinner {
  width: 21px;
  height: 21px;
  border-width: 2px;
  border-color: #ddd2c2;
  border-top-color: var(--dlwe-ui-gold-dark);
}

.dlwe-portal-shell .dlwe-empty-state,
.dlwe-portal-shell .dlwe-home-empty,
.dlwe-portal-shell .dlwe-workspace-empty-block,
.dlwe-portal-shell .dlwe-empty-cell {
  padding: 24px;
  border: 1px dashed #d4c9ba;
  border-radius: var(--dlwe-ui-radius-md);
  background: #fbf8f3;
  color: var(--dlwe-ui-muted);
  font-size: 12.5px;
  line-height: 1.6;
  text-align: center;
}

.dlwe-portal-shell td.dlwe-empty-cell {
  border-radius: 0;
}

/* Filters and toolbars */
.dlwe-portal-shell .dlwe-wedding-toolbar,
.dlwe-portal-shell .dlwe-vendor-toolbar,
.dlwe-portal-shell .dlwe-task-toolbar,
.dlwe-portal-shell .dlwe-task-dashboard-toolbar,
.dlwe-portal-shell .dlwe-client-toolbar,
.dlwe-portal-shell .dlwe-user-toolbar,
.dlwe-portal-shell .dlwe-approval-toolbar,
.dlwe-portal-shell .dlwe-expense-history-toolbar,
.dlwe-portal-shell .dlwe-timeline-toolbar,
.dlwe-portal-shell .dlwe-hr-payroll-toolbar,
.dlwe-portal-shell .dlwe-report-filter-card {
  min-width: 0;
  margin-bottom: 18px;
  padding: 15px;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-md);
  background: rgba(255,253,250,0.9);
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-wedding-toolbar,
.dlwe-portal-shell .dlwe-vendor-toolbar,
.dlwe-portal-shell .dlwe-task-toolbar,
.dlwe-portal-shell .dlwe-client-toolbar,
.dlwe-portal-shell .dlwe-user-toolbar,
.dlwe-portal-shell .dlwe-approval-toolbar,
.dlwe-portal-shell .dlwe-timeline-toolbar {
  display: grid;
  grid-template-columns: minmax(230px, 1.5fr) repeat(auto-fit, minmax(155px, 1fr));
  gap: 10px;
}

.dlwe-portal-shell .dlwe-task-dashboard-toolbar {
  grid-template-columns: minmax(240px, 1.5fr) repeat(4, minmax(145px, 1fr));
}

.dlwe-portal-shell .dlwe-history-count,
.dlwe-portal-shell .dlwe-client-id-chip,
.dlwe-portal-shell .dlwe-user-sync-chip,
.dlwe-portal-shell .dlwe-user-sync-pill,
.dlwe-portal-shell .dlwe-task-dashboard-chip,
.dlwe-portal-shell .dlwe-home-pill,
.dlwe-portal-shell .dlwe-status-pill,
.dlwe-portal-shell .dlwe-history-pill,
.dlwe-portal-shell .dlwe-task-status,
.dlwe-portal-shell .dlwe-task-priority,
.dlwe-portal-shell .dlwe-task-deadline-chip,
.dlwe-portal-shell .dlwe-hr-payroll-net-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  min-height: 27px;
  padding: 5px 10px;
  border: 1px solid #dfd4c3;
  border-radius: 999px;
  background: #f4eee4;
  color: #6c5635;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: normal;
}

/* Summary cards */
.dlwe-portal-shell .dlwe-wedding-summary,
.dlwe-portal-shell .dlwe-vendor-summary,
.dlwe-portal-shell .dlwe-task-summary,
.dlwe-portal-shell .dlwe-personal-summary,
.dlwe-portal-shell .dlwe-report-currency-summary,
.dlwe-portal-shell .dlwe-report-metric-grid,
.dlwe-portal-shell .dlwe-task-dashboard-summary,
.dlwe-portal-shell .dlwe-timeline-summary,
.dlwe-portal-shell .dlwe-workspace-summary,
.dlwe-portal-shell .dlwe-home-summary-grid {
  gap: 13px;
  margin-bottom: 20px;
}

.dlwe-portal-shell .dlwe-wedding-summary-card,
.dlwe-portal-shell .dlwe-vendor-summary-card,
.dlwe-portal-shell .dlwe-task-summary-card,
.dlwe-portal-shell .dlwe-personal-summary-card,
.dlwe-portal-shell .dlwe-report-currency-card,
.dlwe-portal-shell .dlwe-report-metric,
.dlwe-portal-shell .dlwe-task-dashboard-stat,
.dlwe-portal-shell .dlwe-timeline-summary > div,
.dlwe-portal-shell .dlwe-workspace-summary-card,
.dlwe-portal-shell .dlwe-home-metric {
  min-width: 0;
  min-height: 120px;
  padding: 20px;
  border: 1px solid var(--dlwe-ui-line);
  border-top: 3px solid #b58c50;
  border-radius: var(--dlwe-ui-radius-md);
  background: rgba(255,253,250,0.98);
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-wedding-summary-card strong,
.dlwe-portal-shell .dlwe-vendor-summary-card strong,
.dlwe-portal-shell .dlwe-task-summary-card strong,
.dlwe-portal-shell .dlwe-personal-summary-card strong,
.dlwe-portal-shell .dlwe-report-metric strong,
.dlwe-portal-shell .dlwe-task-dashboard-stat strong,
.dlwe-portal-shell .dlwe-timeline-summary strong,
.dlwe-portal-shell .dlwe-workspace-summary-card strong,
.dlwe-portal-shell .dlwe-home-metric > strong {
  display: block;
  margin: 12px 0 5px;
  color: var(--dlwe-ui-ink);
  font-family: "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif;
  font-size: clamp(29px, 2.9vw, 39px);
  font-weight: 400;
  line-height: 1;
  overflow-wrap: anywhere;
}

/* Tables */
.dlwe-portal-shell .dlwe-table-wrap,
.dlwe-portal-shell .dlwe-table-scroll,
.dlwe-portal-shell .dlwe-report-table-wrap,
.dlwe-portal-shell .dlwe-timeline-table-scroll,
.dlwe-portal-shell .dlwe-timeline-table-wrap {
  width: 100%;
  min-width: 0;
  overflow: auto;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-md);
  background: #fff;
  box-shadow: var(--dlwe-ui-shadow-sm);
  scrollbar-color: #baa57f #f3eee7;
  scrollbar-width: thin;
}

.dlwe-portal-shell .dlwe-table-wrap::-webkit-scrollbar,
.dlwe-portal-shell .dlwe-table-scroll::-webkit-scrollbar,
.dlwe-portal-shell .dlwe-report-table-wrap::-webkit-scrollbar,
.dlwe-portal-shell .dlwe-timeline-table-scroll::-webkit-scrollbar {
  height: 9px;
  width: 9px;
}

.dlwe-portal-shell .dlwe-table-wrap::-webkit-scrollbar-thumb,
.dlwe-portal-shell .dlwe-table-scroll::-webkit-scrollbar-thumb,
.dlwe-portal-shell .dlwe-report-table-wrap::-webkit-scrollbar-thumb,
.dlwe-portal-shell .dlwe-timeline-table-scroll::-webkit-scrollbar-thumb {
  border: 2px solid #f3eee7;
  border-radius: 999px;
  background: #baa57f;
}

.dlwe-portal-shell .dlwe-data-table,
.dlwe-portal-shell .dlwe-client-table,
.dlwe-portal-shell .dlwe-user-table,
.dlwe-portal-shell .dlwe-task-dashboard-table,
.dlwe-portal-shell .dlwe-report-table,
.dlwe-portal-shell .dlwe-checklist-table,
.dlwe-portal-shell .dlwe-checklist-template-table,
.dlwe-portal-shell .dlwe-timeline-table {
  width: 100%;
  min-width: 760px;
  border-collapse: separate;
  border-spacing: 0;
}

.dlwe-portal-shell .dlwe-data-table th,
.dlwe-portal-shell .dlwe-client-table th,
.dlwe-portal-shell .dlwe-user-table th,
.dlwe-portal-shell .dlwe-task-dashboard-table th,
.dlwe-portal-shell .dlwe-report-table th,
.dlwe-portal-shell .dlwe-checklist-table th,
.dlwe-portal-shell .dlwe-checklist-template-table th,
.dlwe-portal-shell .dlwe-timeline-table th {
  position: sticky;
  top: 0;
  z-index: 3;
  padding: 13px 12px !important;
  border-right: 1px solid #34302b !important;
  border-bottom: 1px solid #34302b !important;
  background: #1d1a17 !important;
  color: rgba(255,255,255,0.9) !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 0.13em;
  line-height: 1.35;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-data-table td,
.dlwe-portal-shell .dlwe-client-table td,
.dlwe-portal-shell .dlwe-user-table td,
.dlwe-portal-shell .dlwe-task-dashboard-table td,
.dlwe-portal-shell .dlwe-report-table td,
.dlwe-portal-shell .dlwe-checklist-table td,
.dlwe-portal-shell .dlwe-checklist-template-table td,
.dlwe-portal-shell .dlwe-timeline-table td {
  padding: 13px 12px !important;
  border-right: 1px solid var(--dlwe-ui-line-soft) !important;
  border-bottom: 1px solid var(--dlwe-ui-line-soft) !important;
  background: #fff;
  color: #4d473f;
  font-size: 12px;
  line-height: 1.5;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.dlwe-portal-shell .dlwe-data-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-client-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-user-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-task-dashboard-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-report-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-checklist-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-checklist-template-table tbody tr:nth-child(even) td,
.dlwe-portal-shell .dlwe-timeline-table tbody tr:nth-child(even) td {
  background: #fcfaf7;
}

.dlwe-portal-shell .dlwe-data-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-client-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-user-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-task-dashboard-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-report-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-checklist-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-checklist-template-table tbody tr:hover td,
.dlwe-portal-shell .dlwe-timeline-table tbody tr:hover td {
  background: #f7f0e5;
}

.dlwe-portal-shell .dlwe-checklist-table input,
.dlwe-portal-shell .dlwe-checklist-table select,
.dlwe-portal-shell .dlwe-checklist-table textarea,
.dlwe-portal-shell .dlwe-checklist-template-table input,
.dlwe-portal-shell .dlwe-checklist-template-table select,
.dlwe-portal-shell .dlwe-checklist-template-table textarea,
.dlwe-portal-shell .dlwe-timeline-table input,
.dlwe-portal-shell .dlwe-timeline-table select,
.dlwe-portal-shell .dlwe-timeline-table textarea {
  min-height: 38px !important;
  padding: 7px 8px !important;
  border-radius: 6px !important;
  font-size: 11.5px !important;
}

/* Pagination */
.dlwe-portal-shell .dlwe-pagination {
  margin-top: 17px;
  padding: 14px 16px;
  border-color: var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-md);
  background: rgba(255,253,250,0.94);
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-pagination-button {
  min-width: 37px;
  height: 37px;
  border-radius: 8px;
}

.dlwe-portal-shell .dlwe-pagination-button.is-active {
  border-color: var(--dlwe-ui-ink);
  background: var(--dlwe-ui-ink);
}

/* Dashboard */
.dlwe-portal-shell .dlwe-home-hero {
  padding: clamp(30px, 3.5vw, 46px);
  border-radius: var(--dlwe-ui-radius-lg);
  background:
    radial-gradient(circle at 94% 14%, rgba(211,179,116,0.15), transparent 30%),
    linear-gradient(135deg, #181613 0%, #24201b 100%);
  box-shadow: var(--dlwe-ui-shadow-md);
}

.dlwe-portal-shell .dlwe-home-hero h2 {
  max-width: 720px;
  font-size: clamp(30px, 3.4vw, 43px);
  line-height: 1.08;
}

.dlwe-portal-shell .dlwe-home-date-block {
  min-width: 180px;
  padding-left: 28px;
  border-left-color: rgba(255,255,255,0.14);
}

.dlwe-portal-shell .dlwe-home-quick-actions {
  grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
  gap: 12px;
}

.dlwe-portal-shell .dlwe-home-action {
  min-height: 98px;
  padding: 19px;
  border-radius: var(--dlwe-ui-radius-md);
  background: rgba(255,253,250,0.98);
}

.dlwe-portal-shell .dlwe-home-grid {
  gap: 16px;
}

/* Wedding, vendor, task and expense list cards */
.dlwe-portal-shell .dlwe-wedding-list,
.dlwe-portal-shell .dlwe-vendor-list,
.dlwe-portal-shell .dlwe-task-list,
.dlwe-portal-shell .dlwe-expense-history-list,
.dlwe-portal-shell .dlwe-approval-list {
  display: grid;
  gap: 13px;
}

.dlwe-portal-shell .dlwe-wedding-card,
.dlwe-portal-shell .dlwe-vendor-card,
.dlwe-portal-shell .dlwe-task-card,
.dlwe-portal-shell .dlwe-history-card,
.dlwe-portal-shell .dlwe-approval-card {
  min-width: 0;
  padding: 21px;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-md);
  background: rgba(255,253,250,0.98);
  box-shadow: var(--dlwe-ui-shadow-sm);
  transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.dlwe-portal-shell .dlwe-wedding-card:hover,
.dlwe-portal-shell .dlwe-vendor-card:hover,
.dlwe-portal-shell .dlwe-task-card:hover,
.dlwe-portal-shell .dlwe-history-card:hover,
.dlwe-portal-shell .dlwe-approval-card:hover {
  border-color: #c2aa80;
  box-shadow: var(--dlwe-ui-shadow-md);
  transform: translateY(-1px);
}

.dlwe-portal-shell .dlwe-wedding-card-header,
.dlwe-portal-shell .dlwe-vendor-card-header,
.dlwe-portal-shell .dlwe-task-card-header,
.dlwe-portal-shell .dlwe-history-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--dlwe-ui-line-soft);
}

.dlwe-portal-shell .dlwe-wedding-details-grid,
.dlwe-portal-shell .dlwe-vendor-details-grid,
.dlwe-portal-shell .dlwe-task-details-grid,
.dlwe-portal-shell .dlwe-history-grid,
.dlwe-portal-shell .dlwe-review-grid {
  gap: 10px;
}

.dlwe-portal-shell .dlwe-wedding-metric,
.dlwe-portal-shell .dlwe-vendor-metric,
.dlwe-portal-shell .dlwe-task-metric,
.dlwe-portal-shell .dlwe-history-metric,
.dlwe-portal-shell .dlwe-review-item {
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid var(--dlwe-ui-line-soft);
  border-radius: var(--dlwe-ui-radius-sm);
  background: var(--dlwe-ui-surface-alt);
}

.dlwe-portal-shell .dlwe-wedding-note,
.dlwe-portal-shell .dlwe-vendor-note,
.dlwe-portal-shell .dlwe-task-note,
.dlwe-portal-shell .dlwe-history-note,
.dlwe-portal-shell .dlwe-review-note,
.dlwe-portal-shell .dlwe-clarification-banner {
  margin-top: 14px;
  padding: 14px 16px;
  border-left: 3px solid #b18a51;
  border-radius: 0 var(--dlwe-ui-radius-sm) var(--dlwe-ui-radius-sm) 0;
  background: #f7f1e7;
  color: #5e554a;
  line-height: 1.6;
}

/* Wedding Workspace */
.dlwe-portal-shell .dlwe-workspace-page-header {
  align-items: end;
}

.dlwe-portal-shell .dlwe-workspace-control-panel {
  width: min(420px, 100%);
  padding: 15px;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-md);
  background: rgba(255,253,250,0.9);
  box-shadow: var(--dlwe-ui-shadow-sm);
}

.dlwe-portal-shell .dlwe-workspace-control-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 9px;
}

.dlwe-portal-shell .dlwe-workspace-hero {
  min-height: 250px;
  padding: clamp(28px, 3.5vw, 44px);
  border: 1px solid rgba(189,154,95,0.26);
  border-radius: var(--dlwe-ui-radius-lg);
  background:
    radial-gradient(circle at 92% 20%, rgba(218,187,128,0.14), transparent 32%),
    linear-gradient(135deg, #181512 0%, #2a251f 100%);
  box-shadow: var(--dlwe-ui-shadow-md);
}

.dlwe-portal-shell .dlwe-workspace-grid {
  gap: 16px;
}

.dlwe-portal-shell .dlwe-workspace-card {
  min-height: 100%;
}

.dlwe-portal-shell .dlwe-workspace-detail-grid,
.dlwe-portal-shell .dlwe-workspace-mini-metrics {
  gap: 10px;
}

.dlwe-portal-shell .dlwe-workspace-action {
  min-height: 43px;
  border-radius: var(--dlwe-ui-radius-sm);
}

/* Clients and users */
.dlwe-portal-shell .dlwe-client-list-view,
.dlwe-portal-shell .dlwe-user-list-view {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-client-date-summary {
  margin-top: 12px;
  padding: 13px 15px;
  border: 1px solid #e0d5c5;
  border-radius: var(--dlwe-ui-radius-sm);
  background: #f7f1e6;
  color: #5c4b32;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-client-assignment-rows {
  display: grid;
  gap: 10px;
}

.dlwe-portal-shell .dlwe-client-assignment-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: end;
  padding: 14px;
  border: 1px solid var(--dlwe-ui-line-soft);
  border-radius: var(--dlwe-ui-radius-sm);
  background: #fbf8f3;
}

/* Task dashboard and collaboration */
.dlwe-portal-shell .dlwe-task-dashboard-layout {
  gap: 16px;
}

.dlwe-portal-shell .dlwe-task-discussion-panel {
  padding: 20px;
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-md);
  background: #fbf8f3;
}

.dlwe-portal-shell .dlwe-task-discussion-header {
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--dlwe-ui-line-soft);
}

.dlwe-portal-shell .dlwe-task-comment-list {
  display: grid;
  gap: 10px;
}

.dlwe-portal-shell .dlwe-task-comment {
  padding: 14px;
  border: 1px solid var(--dlwe-ui-line-soft);
  border-radius: var(--dlwe-ui-radius-sm);
  background: #fff;
}

.dlwe-portal-shell .dlwe-task-comment-avatar {
  color: #302719;
  background: #ead7b2;
  border: 1px solid #d6b978;
}

/* Checklist and timeline */
.dlwe-portal-shell .dlwe-checklist-builder-grid,
.dlwe-portal-shell .dlwe-timeline-top-grid {
  gap: 16px;
}

.dlwe-portal-shell .dlwe-checklist-module-option,
.dlwe-portal-shell .dlwe-checklist-switch {
  border-radius: var(--dlwe-ui-radius-sm);
}

.dlwe-portal-shell .dlwe-checklist-module-option:has(input:checked),
.dlwe-portal-shell .dlwe-checklist-switch:has(input:checked) {
  border-color: #b18a51;
  background: var(--dlwe-ui-gold-pale);
  box-shadow: inset 3px 0 0 var(--dlwe-ui-gold);
}

.dlwe-portal-shell .dlwe-checklist-progress-bar,
.dlwe-portal-shell .dlwe-home-progress-track,
.dlwe-portal-shell .dlwe-task-breakdown-track,
.dlwe-portal-shell .dlwe-task-mini-progress {
  height: 7px;
  border-radius: 999px;
  background: #e8dfd2;
  overflow: hidden;
}

.dlwe-portal-shell .dlwe-checklist-progress-bar span,
.dlwe-portal-shell .dlwe-home-progress-track span,
.dlwe-portal-shell .dlwe-task-breakdown-track span,
.dlwe-portal-shell .dlwe-task-mini-progress span {
  border-radius: 999px;
  background: linear-gradient(90deg, #8d6a38, #c5a160);
}

/* Attendance and payroll */
.dlwe-portal-shell .dlwe-hr-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 5px;
  border: 1px solid #dcd2c4;
  border-radius: var(--dlwe-ui-radius-md);
  background: #eae3d8;
}

.dlwe-portal-shell .dlwe-hr-tab {
  min-height: 42px;
  padding: 10px 17px;
  border: 0;
  border-radius: 7px;
  color: #6d655b;
  background: transparent;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-hr-tab.is-active {
  color: var(--dlwe-ui-ink);
  background: #fff;
  box-shadow: 0 5px 15px rgba(37,29,20,0.09);
}

.dlwe-portal-shell .dlwe-hr-tab-panel {
  padding-top: 18px;
}

.dlwe-portal-shell .dlwe-hr-clock-card {
  border-radius: var(--dlwe-ui-radius-lg);
  background:
    radial-gradient(circle at 90% 8%, rgba(213,180,119,0.14), transparent 32%),
    linear-gradient(135deg, #181613, #27221d);
}

.dlwe-portal-shell .dlwe-payslip {
  border: 1px solid var(--dlwe-ui-line);
  border-radius: var(--dlwe-ui-radius-lg);
  background: #fffdfa;
  box-shadow: var(--dlwe-ui-shadow-sm);
}

/* Expense reports */
.dlwe-portal-shell .dlwe-report-layout {
  gap: 16px;
}

.dlwe-portal-shell .dlwe-report-card {
  padding: 22px;
}

.dlwe-portal-shell .dlwe-report-bar-row {
  display: grid;
  gap: 8px;
  padding: 12px 0;
  border-bottom: 1px solid var(--dlwe-ui-line-soft);
}

.dlwe-portal-shell .dlwe-report-bar-row:last-child {
  border-bottom: 0;
}

.dlwe-portal-shell .dlwe-report-bar-track {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e9e0d3;
}

.dlwe-portal-shell .dlwe-report-bar-track > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #876635, #c3a05f);
}

/* System reset */
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-warning,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-overview,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-actions,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-option,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-toggle {
  border-radius: var(--dlwe-ui-radius-lg);
}

.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-option,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-toggle {
  box-shadow: var(--dlwe-ui-shadow-sm);
}

/* Responsive organisation */
@container (max-width: 1180px) {
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-portal-shell .dlwe-task-dashboard-toolbar > input:first-child {
    grid-column: 1 / -1;
  }

  .dlwe-portal-shell .dlwe-client-assignment-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-portal-shell .dlwe-client-assignment-row > :last-child {
    grid-column: 1 / -1;
    justify-self: end;
  }
}

@container (max-width: 900px) {
  .dlwe-portal-shell .dlwe-portal-header {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-workspace-control-panel {
    width: 100%;
    justify-content: flex-start;
  }

  .dlwe-portal-shell .dlwe-user-chip {
    flex: 1 1 210px;
  }

  .dlwe-portal-shell .dlwe-wedding-toolbar,
  .dlwe-portal-shell .dlwe-vendor-toolbar,
  .dlwe-portal-shell .dlwe-task-toolbar,
  .dlwe-portal-shell .dlwe-client-toolbar,
  .dlwe-portal-shell .dlwe-user-toolbar,
  .dlwe-portal-shell .dlwe-approval-toolbar,
  .dlwe-portal-shell .dlwe-timeline-toolbar,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-portal-shell .dlwe-wedding-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-vendor-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-task-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-client-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-user-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-approval-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-timeline-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar > :first-child {
    grid-column: 1 / -1;
  }

  .dlwe-portal-shell .dlwe-form-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-field-full {
    grid-column: auto;
  }

  .dlwe-portal-shell .dlwe-wedding-card-header,
  .dlwe-portal-shell .dlwe-vendor-card-header,
  .dlwe-portal-shell .dlwe-task-card-header,
  .dlwe-portal-shell .dlwe-history-card-header {
    flex-direction: column;
  }
}

@media (max-width: 1020px) {
  .dlwe-portal-shell {
    grid-template-columns: 220px minmax(0, 1fr);
  }

  .dlwe-portal-shell .dlwe-sidebar {
    padding-inline: 17px;
  }
}

@media (max-width: 850px) {
  .dlwe-portal-shell {
    grid-template-columns: 1fr;
    border-radius: 14px;
  }

  .dlwe-portal-shell .dlwe-sidebar {
    padding: 22px;
  }

  .dlwe-portal-shell .dlwe-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin: 23px 0 16px;
  }

  .dlwe-portal-shell .dlwe-nav-section-label {
    grid-column: 1 / -1;
    margin: 16px 8px 4px;
  }

  .dlwe-portal-shell .dlwe-logout-link {
    margin-top: 4px;
  }
}

@media (max-width: 620px) {
  .dlwe-portal-shell .dlwe-main {
    padding: 22px 15px 28px;
  }

  .dlwe-portal-shell .dlwe-nav {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-portal-header h1 {
    font-size: 34px;
  }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-form-actions,
  .dlwe-portal-shell .dlwe-history-actions,
  .dlwe-portal-shell .dlwe-vendor-actions,
  .dlwe-portal-shell .dlwe-task-actions,
  .dlwe-portal-shell .dlwe-client-inline-actions,
  .dlwe-portal-shell .dlwe-client-row-actions,
  .dlwe-portal-shell .dlwe-user-actions,
  .dlwe-portal-shell .dlwe-workspace-control-actions,
  .dlwe-portal-shell .dlwe-timeline-quick-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-portal-shell .dlwe-header-actions > *,
  .dlwe-portal-shell .dlwe-form-actions > *,
  .dlwe-portal-shell .dlwe-history-actions > *,
  .dlwe-portal-shell .dlwe-vendor-actions > *,
  .dlwe-portal-shell .dlwe-task-actions > *,
  .dlwe-portal-shell .dlwe-client-inline-actions > *,
  .dlwe-portal-shell .dlwe-client-row-actions > *,
  .dlwe-portal-shell .dlwe-user-actions > *,
  .dlwe-portal-shell .dlwe-workspace-control-actions > *,
  .dlwe-portal-shell .dlwe-timeline-quick-actions > * {
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-wedding-toolbar,
  .dlwe-portal-shell .dlwe-vendor-toolbar,
  .dlwe-portal-shell .dlwe-task-toolbar,
  .dlwe-portal-shell .dlwe-client-toolbar,
  .dlwe-portal-shell .dlwe-user-toolbar,
  .dlwe-portal-shell .dlwe-approval-toolbar,
  .dlwe-portal-shell .dlwe-timeline-toolbar,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-client-assignment-row {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-client-assignment-row > :last-child {
    grid-column: auto;
    justify-self: stretch;
  }

  .dlwe-portal-shell .dlwe-form-section,
  .dlwe-portal-shell .dlwe-table-card,
  .dlwe-portal-shell .dlwe-task-dashboard-card,
  .dlwe-portal-shell .dlwe-checklist-settings,
  .dlwe-portal-shell .dlwe-checklist-preview-section,
  .dlwe-portal-shell .dlwe-checklist-template-editor,
  .dlwe-portal-shell .dlwe-checklist-progress-section,
  .dlwe-portal-shell .dlwe-user-editor,
  .dlwe-portal-shell .dlwe-client-editor,
  .dlwe-portal-shell .dlwe-task-editor,
  .dlwe-portal-shell .dlwe-approval-editor,
  .dlwe-portal-shell .dlwe-workspace-card,
  .dlwe-portal-shell .dlwe-home-card {
    padding: 20px;
    border-radius: 12px !important;
  }

  .dlwe-portal-shell .dlwe-pagination {
    padding: 13px;
  }
}

/* Final audit coverage for dynamically generated utility classes. */
.dlwe-login-form {
  display: grid;
  gap: 16px;
}

.dlwe-portal-shell .dlwe-workspace-finance-card {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--dlwe-ui-line-soft);
  border-radius: var(--dlwe-ui-radius-sm);
  background: var(--dlwe-ui-surface-alt);
}

.dlwe-portal-shell .dlwe-pagination-number {
  font-variant-numeric: tabular-nums;
}


/* Wedding ID — portal-generated immutable identifier */
.dlwe-portal .dlwe-auto-generated-input,
.dlwe-portal .dlwe-auto-generated-input[readonly] {
  background: linear-gradient(135deg, #f5efe3 0%, #fbf8f2 100%) !important;
  border-color: rgba(151, 116, 57, 0.34) !important;
  color: #4d3a1e !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.09em !important;
  cursor: default !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55) !important;
}

.dlwe-portal .dlwe-auto-generated-input:focus {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(173, 134, 70, 0.12), inset 0 0 0 1px rgba(255,255,255,.55) !important;
}

/* ========================================================================== 
   DLWE Parent-Brand Interface System — v4.0.1
   Definitive visual layer for every staff-portal module.
   ========================================================================== */

.dlwe-portal-shell {
  --dlwe-brand-ink: #151310;
  --dlwe-brand-ink-soft: #302b25;
  --dlwe-brand-copy: #575047;
  --dlwe-brand-muted: #82796e;
  --dlwe-brand-ivory: #f5f1ea;
  --dlwe-brand-paper: #fffdf9;
  --dlwe-brand-paper-soft: #fbf8f2;
  --dlwe-brand-champagne: #c5a56e;
  --dlwe-brand-champagne-dark: #7c5e31;
  --dlwe-brand-champagne-pale: #f3e8d5;
  --dlwe-brand-line: #ddd3c5;
  --dlwe-brand-line-soft: #eee7dd;
  --dlwe-brand-danger: #943b37;
  --dlwe-brand-success: #2f6c50;
  --dlwe-brand-warning: #966426;
  --dlwe-brand-display: "Cormorant Garamond", "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif;
  --dlwe-brand-body: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  --dlwe-brand-radius-xs: 3px;
  --dlwe-brand-radius-sm: 6px;
  --dlwe-brand-radius-md: 10px;
  --dlwe-brand-radius-lg: 14px;
  --dlwe-brand-shadow-xs: 0 4px 14px rgba(34, 27, 19, 0.035);
  --dlwe-brand-shadow-sm: 0 10px 28px rgba(34, 27, 19, 0.055);
  --dlwe-brand-shadow-md: 0 22px 58px rgba(34, 27, 19, 0.09);

  width: min(100%, 1480px);
  margin-inline: auto;
  grid-template-columns: 238px minmax(0, 1fr) !important;
  color: var(--dlwe-brand-copy);
  background: var(--dlwe-brand-ivory) !important;
  border: 1px solid rgba(197, 165, 110, 0.24) !important;
  border-radius: 0 !important;
  box-shadow: var(--dlwe-brand-shadow-md) !important;
  font-family: var(--dlwe-brand-body) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.dlwe-portal-shell *,
.dlwe-portal-shell *::before,
.dlwe-portal-shell *::after {
  box-sizing: border-box;
}

/* Parent-brand typography -------------------------------------------------- */
.dlwe-portal-shell .dlwe-main h1,
.dlwe-portal-shell .dlwe-main h2,
.dlwe-portal-shell .dlwe-main h3,
.dlwe-portal-shell .dlwe-main h4,
.dlwe-portal-shell .dlwe-sidebar-brand,
.dlwe-portal-shell .dlwe-brand,
.dlwe-portal-shell .dlwe-metric-value,
.dlwe-portal-shell .dlwe-home-metric strong,
.dlwe-portal-shell .dlwe-summary-card strong,
.dlwe-portal-shell .dlwe-report-summary-value,
.dlwe-portal-shell .dlwe-workspace-stat-value,
.dlwe-portal-shell .dlwe-approval-amount {
  font-family: var(--dlwe-brand-display) !important;
  font-weight: 400 !important;
}

.dlwe-portal-shell .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-nav-section-label,
.dlwe-portal-shell label,
.dlwe-portal-shell th,
.dlwe-portal-shell .dlwe-status-badge,
.dlwe-portal-shell .dlwe-home-pill,
.dlwe-portal-shell .dlwe-history-pill,
.dlwe-portal-shell .dlwe-task-dashboard-chip {
  font-family: var(--dlwe-brand-body) !important;
}

/* Portal frame and navigation -------------------------------------------- */
.dlwe-portal-shell .dlwe-sidebar {
  position: sticky;
  top: 0;
  align-self: start;
  height: 100vh;
  min-height: 760px;
  overflow-y: auto;
  padding: 34px 20px 26px !important;
  color: rgba(255,255,255,0.78);
  background:
    radial-gradient(circle at 20% 0%, rgba(197,165,110,0.10), transparent 24%),
    linear-gradient(180deg, #171512 0%, #0f0e0d 100%) !important;
  border-right: 1px solid rgba(197,165,110,0.15);
  scrollbar-width: thin;
  scrollbar-color: rgba(197,165,110,0.35) transparent;
}

.dlwe-portal-shell .dlwe-sidebar-brand {
  color: #fff !important;
  font-size: 29px !important;
  line-height: 1 !important;
  letter-spacing: 0.22em !important;
}

.dlwe-portal-shell .dlwe-sidebar-subtitle {
  margin-top: 11px !important;
  color: var(--dlwe-brand-champagne) !important;
  font-size: 8px !important;
  font-weight: 700;
  letter-spacing: 0.25em !important;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-nav {
  gap: 3px !important;
  margin-top: 37px !important;
}

.dlwe-portal-shell .dlwe-nav-section-label {
  margin: 24px 10px 8px !important;
  color: rgba(255,255,255,0.34) !important;
  font-size: 7px !important;
  font-weight: 800 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-nav-item {
  min-height: 43px !important;
  display: flex;
  align-items: center;
  padding: 10px 13px 10px 16px !important;
  color: rgba(255,255,255,0.68) !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  font-size: 11.5px !important;
  line-height: 1.35;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.dlwe-portal-shell .dlwe-nav-item:hover,
.dlwe-portal-shell .dlwe-nav-item:focus-visible {
  color: #fff !important;
  background: rgba(255,255,255,0.045) !important;
  border-color: rgba(255,255,255,0.07) !important;
  transform: translateX(2px);
  outline: none;
}

.dlwe-portal-shell .dlwe-nav-item.is-active {
  color: #fff !important;
  background: linear-gradient(90deg, rgba(197,165,110,0.18), rgba(197,165,110,0.07)) !important;
  border-color: rgba(197,165,110,0.20) !important;
  box-shadow: inset 3px 0 0 var(--dlwe-brand-champagne) !important;
}

.dlwe-portal-shell .dlwe-logout-link {
  color: var(--dlwe-brand-champagne) !important;
  font-size: 9px !important;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

/* Main canvas ------------------------------------------------------------- */
.dlwe-portal-shell .dlwe-main {
  min-width: 0;
  padding: clamp(30px, 3.25vw, 54px) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(197,165,110,0.10), transparent 28%),
    linear-gradient(180deg, #f8f5ef 0%, var(--dlwe-brand-ivory) 100%) !important;
  container-type: inline-size;
}

.dlwe-portal-shell .dlwe-panel.is-active {
  animation: dlwe-brand-panel-in 190ms ease both !important;
}

@keyframes dlwe-brand-panel-in {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Page headers ------------------------------------------------------------ */
.dlwe-portal-shell .dlwe-portal-header {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 26px !important;
  margin: 0 0 30px !important;
  padding: 0 0 23px !important;
  border-bottom: 1px solid var(--dlwe-brand-line) !important;
}

.dlwe-portal-shell .dlwe-portal-header > div:first-child {
  min-width: 0;
  max-width: 850px;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-eyebrow {
  margin: 0 0 9px !important;
  color: var(--dlwe-brand-champagne-dark) !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 0.24em !important;
  line-height: 1.3;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-portal-header h1 {
  margin: 0 0 8px !important;
  color: var(--dlwe-brand-ink) !important;
  font-size: clamp(35px, 4vw, 54px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.03em !important;
  text-align: left !important;
  text-wrap: balance;
}

.dlwe-portal-shell .dlwe-portal-header .dlwe-muted {
  max-width: 760px;
  margin: 0 !important;
  color: var(--dlwe-brand-muted) !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-header-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap;
  gap: 9px !important;
}

.dlwe-portal-shell .dlwe-user-chip {
  min-width: 205px;
  padding: 8px 10px !important;
  background: rgba(255,253,249,0.88) !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
}

.dlwe-portal-shell .dlwe-user-avatar {
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  color: #2e2418 !important;
  background: var(--dlwe-brand-champagne-pale) !important;
  border: 1px solid #dbc18f !important;
  border-radius: 50% !important;
}

/* Shared surface system --------------------------------------------------- */
.dlwe-portal-shell .dlwe-form-section,
.dlwe-portal-shell .dlwe-table-card,
.dlwe-portal-shell .dlwe-report-card,
.dlwe-portal-shell .dlwe-report-filter-card,
.dlwe-portal-shell .dlwe-task-dashboard-card,
.dlwe-portal-shell .dlwe-checklist-settings,
.dlwe-portal-shell .dlwe-checklist-preview-section,
.dlwe-portal-shell .dlwe-checklist-template-editor,
.dlwe-portal-shell .dlwe-checklist-progress-section,
.dlwe-portal-shell .dlwe-hr-manager-form,
.dlwe-portal-shell .dlwe-user-editor,
.dlwe-portal-shell .dlwe-client-editor,
.dlwe-portal-shell .dlwe-task-editor,
.dlwe-portal-shell .dlwe-approval-editor,
.dlwe-portal-shell .dlwe-resubmission-editor,
.dlwe-portal-shell .dlwe-workspace-card,
.dlwe-portal-shell .dlwe-home-card,
.dlwe-portal-shell .dlwe-approval-card,
.dlwe-portal-shell .dlwe-wedding-card,
.dlwe-portal-shell .dlwe-vendor-card,
.dlwe-portal-shell .dlwe-task-card,
.dlwe-portal-shell .dlwe-history-card,
.dlwe-portal-shell .dlwe-empty-state,
.dlwe-portal-shell .dlwe-security-note {
  min-width: 0;
  color: var(--dlwe-brand-copy) !important;
  background: rgba(255,253,249,0.97) !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-md) !important;
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
}

.dlwe-portal-shell .dlwe-form-section,
.dlwe-portal-shell .dlwe-table-card,
.dlwe-portal-shell .dlwe-task-dashboard-card,
.dlwe-portal-shell .dlwe-checklist-settings,
.dlwe-portal-shell .dlwe-checklist-preview-section,
.dlwe-portal-shell .dlwe-checklist-template-editor,
.dlwe-portal-shell .dlwe-checklist-progress-section,
.dlwe-portal-shell .dlwe-hr-manager-form,
.dlwe-portal-shell .dlwe-user-editor,
.dlwe-portal-shell .dlwe-client-editor,
.dlwe-portal-shell .dlwe-task-editor,
.dlwe-portal-shell .dlwe-approval-editor,
.dlwe-portal-shell .dlwe-resubmission-editor,
.dlwe-portal-shell .dlwe-workspace-card,
.dlwe-portal-shell .dlwe-home-card {
  padding: clamp(22px, 2.3vw, 32px) !important;
}

.dlwe-portal-shell .dlwe-form-section {
  position: relative;
  overflow: visible;
}

.dlwe-portal-shell .dlwe-form-section::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 28px;
  width: 58px;
  height: 2px;
  background: var(--dlwe-brand-champagne);
}

/* Definitive section-heading layout: index + left-aligned copy. */
.dlwe-portal-shell .dlwe-form-section-heading {
  display: grid !important;
  grid-template-columns: 36px minmax(0, 1fr) !important;
  align-items: start !important;
  justify-content: start !important;
  gap: 15px !important;
  margin: 0 0 23px !important;
  padding: 0 0 18px !important;
  border-bottom: 1px solid var(--dlwe-brand-line-soft) !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-form-section-heading > span {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  flex: none !important;
  margin: 0 !important;
  color: var(--dlwe-brand-champagne-dark) !important;
  background: var(--dlwe-brand-champagne-pale) !important;
  border: 1px solid #dfc99e !important;
  border-radius: 50% !important;
  font-family: var(--dlwe-brand-body) !important;
  font-size: 8.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
}

.dlwe-portal-shell .dlwe-form-section-heading > div {
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-form-section-heading h2 {
  margin: 0 0 4px !important;
  color: var(--dlwe-brand-ink) !important;
  font-size: clamp(23px, 2.2vw, 29px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.02em !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-form-section-heading p {
  max-width: 720px;
  margin: 0 !important;
  color: var(--dlwe-brand-muted) !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

/* Other card headings */
.dlwe-portal-shell .dlwe-task-dashboard-card-heading,
.dlwe-portal-shell .dlwe-report-card-heading,
.dlwe-portal-shell .dlwe-home-card-heading,
.dlwe-portal-shell .dlwe-workspace-card-heading,
.dlwe-portal-shell .dlwe-checklist-progress-heading,
.dlwe-portal-shell .dlwe-section-title-row,
.dlwe-portal-shell .dlwe-client-editor-heading,
.dlwe-portal-shell .dlwe-user-editor-heading,
.dlwe-portal-shell .dlwe-task-update-heading,
.dlwe-portal-shell .dlwe-task-collaboration-heading,
.dlwe-portal-shell .dlwe-hr-payroll-heading {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  flex-wrap: wrap;
  gap: 14px !important;
  margin: 0 0 20px !important;
  padding: 0 0 16px !important;
  border-bottom: 1px solid var(--dlwe-brand-line-soft) !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-task-dashboard-card-heading h2,
.dlwe-portal-shell .dlwe-report-card-heading h2,
.dlwe-portal-shell .dlwe-home-card-heading h2,
.dlwe-portal-shell .dlwe-home-card-heading h3,
.dlwe-portal-shell .dlwe-workspace-card-heading h2,
.dlwe-portal-shell .dlwe-workspace-card-heading h3,
.dlwe-portal-shell .dlwe-checklist-progress-heading h2,
.dlwe-portal-shell .dlwe-section-title-row h2,
.dlwe-portal-shell .dlwe-client-editor-heading h2,
.dlwe-portal-shell .dlwe-user-editor-heading h2,
.dlwe-portal-shell .dlwe-task-update-heading h2,
.dlwe-portal-shell .dlwe-task-collaboration-heading h2,
.dlwe-portal-shell .dlwe-hr-payroll-heading h2 {
  margin: 0 0 4px !important;
  color: var(--dlwe-brand-ink) !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.018em !important;
  text-align: left !important;
}

/* Forms ------------------------------------------------------------------ */
.dlwe-portal-shell .dlwe-portal-form,
.dlwe-portal-shell .dlwe-client-form,
.dlwe-portal-shell .dlwe-user-form,
.dlwe-portal-shell .dlwe-task-create-form,
.dlwe-portal-shell .dlwe-task-update-form,
.dlwe-portal-shell .dlwe-approval-form,
.dlwe-portal-shell .dlwe-hr-attendance-form,
.dlwe-portal-shell .dlwe-hr-leave-form,
.dlwe-portal-shell .dlwe-hr-payroll-form {
  display: grid !important;
  gap: 20px !important;
}

.dlwe-portal-shell .dlwe-form-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: start !important;
  gap: 19px 22px !important;
}

.dlwe-portal-shell .dlwe-field {
  min-width: 0 !important;
  margin: 0 !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-field-full {
  grid-column: 1 / -1 !important;
}

.dlwe-portal-shell .dlwe-field label,
.dlwe-portal-shell .dlwe-form-grid label,
.dlwe-portal-shell .dlwe-workspace-selector-label > span {
  display: block !important;
  margin: 0 0 8px !important;
  color: #554e45 !important;
  font-size: 8.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.35 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

.dlwe-portal-shell .dlwe-required {
  color: var(--dlwe-brand-danger) !important;
}

.dlwe-portal-shell .dlwe-panel input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.dlwe-portal-shell .dlwe-panel select,
.dlwe-portal-shell .dlwe-panel textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  color: var(--dlwe-brand-ink) !important;
  background: #fff !important;
  border: 1px solid #cfc5b7 !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  box-shadow: none !important;
  font-family: var(--dlwe-brand-body) !important;
  font-size: 13.5px !important;
  line-height: 1.45 !important;
  outline: none !important;
  transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
}

.dlwe-portal-shell .dlwe-panel input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.dlwe-portal-shell .dlwe-panel select {
  min-height: 48px !important;
  padding: 11px 14px !important;
}

.dlwe-portal-shell .dlwe-panel textarea {
  min-height: 112px !important;
  padding: 12px 14px !important;
  resize: vertical;
}

.dlwe-portal-shell .dlwe-panel input::placeholder,
.dlwe-portal-shell .dlwe-panel textarea::placeholder {
  color: #a39a8e !important;
  opacity: 1;
}

.dlwe-portal-shell .dlwe-panel input:hover:not(:disabled):not([readonly]),
.dlwe-portal-shell .dlwe-panel select:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel textarea:hover:not(:disabled) {
  border-color: #b7a895 !important;
}

.dlwe-portal-shell .dlwe-panel input:focus,
.dlwe-portal-shell .dlwe-panel select:focus,
.dlwe-portal-shell .dlwe-panel textarea:focus {
  border-color: var(--dlwe-brand-champagne) !important;
  box-shadow: 0 0 0 3px rgba(197,165,110,0.15) !important;
}

.dlwe-portal-shell .dlwe-panel input[readonly],
.dlwe-portal-shell .dlwe-panel input:disabled,
.dlwe-portal-shell .dlwe-panel select:disabled,
.dlwe-portal-shell .dlwe-panel textarea:disabled {
  color: #71695f !important;
  background: #f1ede7 !important;
  border-color: #ddd5ca !important;
  opacity: 1 !important;
}

.dlwe-portal-shell .dlwe-panel input[type="file"] {
  width: 100%;
  min-height: 50px;
  padding: 9px !important;
  color: var(--dlwe-brand-copy);
  background: var(--dlwe-brand-paper-soft) !important;
  border: 1px dashed #c8b99f !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
}

.dlwe-portal-shell .dlwe-panel input[type="checkbox"],
.dlwe-portal-shell .dlwe-panel input[type="radio"] {
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px !important;
  accent-color: var(--dlwe-brand-champagne-dark);
}

.dlwe-portal-shell .dlwe-field-note,
.dlwe-portal-shell .dlwe-generated-note,
.dlwe-portal-shell .dlwe-task-attachment-note,
.dlwe-portal-shell .dlwe-client-editor-note,
.dlwe-portal-shell .dlwe-user-editor-note {
  display: block;
  margin-top: 7px !important;
  color: var(--dlwe-brand-muted) !important;
  font-size: 11px !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-readonly-value,
.dlwe-portal-shell .dlwe-client-total-field {
  min-height: 48px;
  display: flex;
  align-items: center;
  padding: 11px 14px !important;
  color: var(--dlwe-brand-ink) !important;
  background: #f3eee6 !important;
  border: 1px solid #ddd1bf !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
}

.dlwe-portal-shell .dlwe-client-other-input {
  margin-top: 8px !important;
  background: #fffdf9 !important;
  border-color: #c5a56e !important;
  box-shadow: inset 3px 0 0 var(--dlwe-brand-champagne) !important;
}

/* Client form specifically */
.dlwe-portal-shell .dlwe-client-editor {
  padding: clamp(22px, 2.5vw, 34px) !important;
}

.dlwe-portal-shell .dlwe-client-editor > .dlwe-approval-heading {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: end !important;
  gap: 20px !important;
  margin: 6px 0 24px !important;
  padding: 0 0 20px !important;
  color: var(--dlwe-brand-copy) !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--dlwe-brand-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.dlwe-portal-shell .dlwe-client-editor > .dlwe-approval-heading h2 {
  margin: 0 0 5px !important;
  color: var(--dlwe-brand-ink) !important;
  font-size: clamp(31px, 3vw, 43px) !important;
  line-height: 1 !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-client-editor > .dlwe-approval-heading p:last-child {
  color: var(--dlwe-brand-muted) !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-client-date-summary {
  padding: 16px 17px !important;
  background: linear-gradient(135deg, #f5ecdd 0%, #fffdf9 100%) !important;
  border: 1px solid #dbc59b !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
}

.dlwe-portal-shell .dlwe-client-assignment-row {
  grid-template-columns: minmax(190px, 1fr) minmax(190px, 1fr) auto !important;
  gap: 11px !important;
  padding: 13px !important;
  background: var(--dlwe-brand-paper-soft) !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
}

/* Buttons and actions ----------------------------------------------------- */
.dlwe-portal-shell .dlwe-panel .dlwe-primary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button,
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button,
.dlwe-portal-shell .dlwe-panel .dlwe-danger-button,
.dlwe-portal-shell .dlwe-header-actions .dlwe-secondary-button {
  min-height: 43px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 16px !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  font-family: var(--dlwe-brand-body) !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.11em !important;
  line-height: 1.3 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  cursor: pointer;
}

.dlwe-portal-shell .dlwe-panel .dlwe-primary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button {
  color: #fff !important;
  background: var(--dlwe-brand-ink) !important;
  border: 1px solid var(--dlwe-brand-ink) !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-primary-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-submit-button:hover:not(:disabled) {
  color: #251c10 !important;
  background: var(--dlwe-brand-champagne) !important;
  border-color: var(--dlwe-brand-champagne) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(92,65,29,0.14) !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button,
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button,
.dlwe-portal-shell .dlwe-header-actions .dlwe-secondary-button {
  color: var(--dlwe-brand-ink) !important;
  background: rgba(255,253,249,0.92) !important;
  border: 1px solid #d2c7b8 !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-panel .dlwe-mini-button:hover:not(:disabled),
.dlwe-portal-shell .dlwe-header-actions .dlwe-secondary-button:hover:not(:disabled) {
  background: #fff !important;
  border-color: var(--dlwe-brand-champagne) !important;
  transform: translateY(-1px);
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-danger-button {
  color: #fff !important;
  background: var(--dlwe-brand-danger) !important;
  border: 1px solid var(--dlwe-brand-danger) !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-compact-button {
  min-height: 39px !important;
  padding: 8px 13px !important;
}

.dlwe-portal-shell .dlwe-form-actions,
.dlwe-portal-shell .dlwe-history-actions,
.dlwe-portal-shell .dlwe-vendor-actions,
.dlwe-portal-shell .dlwe-task-actions,
.dlwe-portal-shell .dlwe-client-inline-actions,
.dlwe-portal-shell .dlwe-client-row-actions,
.dlwe-portal-shell .dlwe-user-actions,
.dlwe-portal-shell .dlwe-timeline-quick-actions,
.dlwe-portal-shell .dlwe-timeline-print-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

.dlwe-portal-shell .dlwe-text-button,
.dlwe-portal-shell .dlwe-back-link,
.dlwe-portal-shell .dlwe-button-link {
  color: var(--dlwe-brand-champagne-dark) !important;
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: 0.10em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

/* Toolbars and filters ---------------------------------------------------- */
.dlwe-portal-shell .dlwe-wedding-toolbar,
.dlwe-portal-shell .dlwe-vendor-toolbar,
.dlwe-portal-shell .dlwe-task-toolbar,
.dlwe-portal-shell .dlwe-client-toolbar,
.dlwe-portal-shell .dlwe-user-toolbar,
.dlwe-portal-shell .dlwe-approval-toolbar,
.dlwe-portal-shell .dlwe-timeline-toolbar,
.dlwe-portal-shell .dlwe-task-dashboard-toolbar,
.dlwe-portal-shell .dlwe-report-filter-grid {
  display: grid !important;
  grid-template-columns: minmax(240px, 1.6fr) repeat(3, minmax(150px, 1fr)) !important;
  align-items: end !important;
  gap: 11px !important;
  padding: 16px !important;
  background: rgba(255,253,249,0.88) !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-md) !important;
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
}

/* Tables ----------------------------------------------------------------- */
.dlwe-portal-shell .dlwe-table-wrap,
.dlwe-portal-shell .dlwe-table-scroll,
.dlwe-portal-shell .dlwe-timeline-table-scroll {
  width: 100%;
  max-width: 100%;
  overflow-x: auto !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  background: #fff !important;
  scrollbar-width: thin;
  scrollbar-color: #bda67e #f2ede5;
}

.dlwe-portal-shell table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  color: var(--dlwe-brand-copy) !important;
  font-size: 12px !important;
}

.dlwe-portal-shell thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 13px 14px !important;
  color: rgba(255,255,255,0.76) !important;
  background: #1a1815 !important;
  border: 0 !important;
  border-right: 1px solid rgba(255,255,255,0.08) !important;
  font-size: 7.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.35 !important;
  text-align: left !important;
  text-transform: uppercase !important;
  white-space: nowrap;
}

.dlwe-portal-shell tbody td {
  padding: 13px 14px !important;
  vertical-align: top !important;
  background: #fff !important;
  border: 0 !important;
  border-right: 1px solid var(--dlwe-brand-line-soft) !important;
  border-bottom: 1px solid var(--dlwe-brand-line-soft) !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

.dlwe-portal-shell tbody tr:nth-child(even) td {
  background: #fcfaf6 !important;
}

.dlwe-portal-shell tbody tr:hover td {
  background: #f7f0e5 !important;
}

.dlwe-portal-shell tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* Lists and record cards -------------------------------------------------- */
.dlwe-portal-shell .dlwe-wedding-list,
.dlwe-portal-shell .dlwe-vendor-list,
.dlwe-portal-shell .dlwe-task-list,
.dlwe-portal-shell .dlwe-expense-history-list,
.dlwe-portal-shell .dlwe-home-list {
  display: grid !important;
  gap: 12px !important;
}

.dlwe-portal-shell .dlwe-wedding-card,
.dlwe-portal-shell .dlwe-vendor-card,
.dlwe-portal-shell .dlwe-task-card,
.dlwe-portal-shell .dlwe-history-card,
.dlwe-portal-shell .dlwe-approval-card {
  padding: 18px 19px !important;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.dlwe-portal-shell .dlwe-wedding-card:hover,
.dlwe-portal-shell .dlwe-vendor-card:hover,
.dlwe-portal-shell .dlwe-task-card:hover,
.dlwe-portal-shell .dlwe-history-card:hover,
.dlwe-portal-shell .dlwe-approval-card:hover {
  border-color: #c7ae82 !important;
  box-shadow: var(--dlwe-brand-shadow-sm) !important;
  transform: translateY(-1px);
}

/* Status, summary and pagination ----------------------------------------- */
.dlwe-portal-shell .dlwe-summary-grid,
.dlwe-portal-shell .dlwe-home-summary-grid,
.dlwe-portal-shell .dlwe-task-dashboard-summary,
.dlwe-portal-shell .dlwe-client-summary,
.dlwe-portal-shell .dlwe-vendor-summary,
.dlwe-portal-shell .dlwe-wedding-summary,
.dlwe-portal-shell .dlwe-task-summary,
.dlwe-portal-shell .dlwe-timeline-summary,
.dlwe-portal-shell .dlwe-report-summary-grid {
  gap: 12px !important;
}

.dlwe-portal-shell .dlwe-summary-card,
.dlwe-portal-shell .dlwe-home-metric,
.dlwe-portal-shell .dlwe-task-dashboard-summary > div,
.dlwe-portal-shell .dlwe-client-summary > div,
.dlwe-portal-shell .dlwe-vendor-summary > div,
.dlwe-portal-shell .dlwe-wedding-summary > div,
.dlwe-portal-shell .dlwe-task-summary > div,
.dlwe-portal-shell .dlwe-timeline-summary > div,
.dlwe-portal-shell .dlwe-report-summary-card {
  min-width: 0;
  padding: 18px !important;
  background: rgba(255,253,249,0.96) !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-top: 2px solid var(--dlwe-brand-champagne) !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
}

.dlwe-portal-shell .dlwe-status-badge,
.dlwe-portal-shell .dlwe-home-pill,
.dlwe-portal-shell .dlwe-history-pill,
.dlwe-portal-shell .dlwe-task-dashboard-chip,
.dlwe-portal-shell .dlwe-task-load-label,
.dlwe-portal-shell .dlwe-reset-count {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 5px 9px !important;
  border-radius: 999px !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

.dlwe-portal-shell .dlwe-pagination {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 18px !important;
  padding-top: 16px !important;
  border-top: 1px solid var(--dlwe-brand-line-soft) !important;
}

.dlwe-portal-shell .dlwe-pagination-pages {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
}

.dlwe-portal-shell .dlwe-pagination button {
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 7px 10px !important;
  color: var(--dlwe-brand-ink) !important;
  background: #fff !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-xs) !important;
}

.dlwe-portal-shell .dlwe-pagination button.is-active {
  color: #fff !important;
  background: var(--dlwe-brand-ink) !important;
  border-color: var(--dlwe-brand-ink) !important;
}

/* Alerts, loading and empty states --------------------------------------- */
.dlwe-portal-shell .dlwe-alert {
  margin: 0 0 20px !important;
  padding: 14px 17px !important;
  color: var(--dlwe-brand-copy) !important;
  background: #fff !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-left: 4px solid var(--dlwe-brand-champagne) !important;
  border-radius: var(--dlwe-brand-radius-sm) !important;
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  overflow-wrap: anywhere;
}

.dlwe-portal-shell .dlwe-alert-error {
  color: #7b302d !important;
  background: #fbefed !important;
  border-color: #e6c6c2 !important;
  border-left-color: var(--dlwe-brand-danger) !important;
}

.dlwe-portal-shell .dlwe-alert-success {
  color: #285e45 !important;
  background: #edf6f0 !important;
  border-color: #c9dfd1 !important;
  border-left-color: var(--dlwe-brand-success) !important;
}

.dlwe-portal-shell .dlwe-form-loading {
  min-height: 94px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 24px !important;
  color: var(--dlwe-brand-muted) !important;
  background: rgba(255,253,249,0.85) !important;
  border: 1px solid var(--dlwe-brand-line) !important;
  border-radius: var(--dlwe-brand-radius-md) !important;
  box-shadow: var(--dlwe-brand-shadow-xs) !important;
  font-size: 12px !important;
}

.dlwe-portal-shell .dlwe-spinner {
  border-color: #ddd3c4 !important;
  border-top-color: var(--dlwe-brand-champagne-dark) !important;
}

/* Wedding workspace and dashboard hero ---------------------------------- */
.dlwe-portal-shell .dlwe-home-hero,
.dlwe-portal-shell .dlwe-workspace-hero {
  color: rgba(255,255,255,0.78) !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(197,165,110,0.18), transparent 30%),
    linear-gradient(135deg, #191713 0%, #29241d 100%) !important;
  border: 1px solid rgba(197,165,110,0.25) !important;
  border-radius: var(--dlwe-brand-radius-md) !important;
  box-shadow: var(--dlwe-brand-shadow-sm) !important;
}

.dlwe-portal-shell .dlwe-home-hero h2,
.dlwe-portal-shell .dlwe-workspace-hero h2,
.dlwe-portal-shell .dlwe-workspace-hero h1 {
  color: #fff !important;
}

/* System reset and dialogs ----------------------------------------------- */
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-option,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-toggle,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-overview,
.dlwe-portal-shell [data-dlwe-panel="system-reset"] .dlwe-reset-actions {
  border-radius: var(--dlwe-brand-radius-md) !important;
}

.dlwe-portal-shell .dlwe-modal,
.dlwe-portal-shell .dlwe-reset-result-modal,
.dlwe-portal-shell .dlwe-dialog-card {
  border-radius: var(--dlwe-brand-radius-md) !important;
  box-shadow: 0 30px 90px rgba(20,16,12,0.25) !important;
}

/* The parent site footer/header should not force unexpected text alignment. */
.dlwe-portal-shell .dlwe-main,
.dlwe-portal-shell .dlwe-main p,
.dlwe-portal-shell .dlwe-main div,
.dlwe-portal-shell .dlwe-main section,
.dlwe-portal-shell .dlwe-main article {
  writing-mode: horizontal-tb;
}

/* Responsive behaviour --------------------------------------------------- */
@container (min-width: 701px) and (max-width: 900px) {
  .dlwe-portal-shell .dlwe-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dlwe-portal-shell .dlwe-field-full {
    grid-column: 1 / -1 !important;
  }
}

@container (max-width: 1000px) {
  .dlwe-portal-shell .dlwe-wedding-toolbar,
  .dlwe-portal-shell .dlwe-vendor-toolbar,
  .dlwe-portal-shell .dlwe-task-toolbar,
  .dlwe-portal-shell .dlwe-client-toolbar,
  .dlwe-portal-shell .dlwe-user-toolbar,
  .dlwe-portal-shell .dlwe-approval-toolbar,
  .dlwe-portal-shell .dlwe-timeline-toolbar,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar,
  .dlwe-portal-shell .dlwe-report-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dlwe-portal-shell .dlwe-wedding-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-vendor-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-task-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-client-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-user-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-approval-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-timeline-toolbar > :first-child,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar > :first-child {
    grid-column: 1 / -1 !important;
  }
}

@container (max-width: 700px) {
  .dlwe-portal-shell .dlwe-form-grid {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-field-full {
    grid-column: auto !important;
  }

  .dlwe-portal-shell .dlwe-form-section-heading {
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  .dlwe-portal-shell .dlwe-form-section-heading > span {
    width: 30px !important;
    height: 30px !important;
  }

  .dlwe-portal-shell .dlwe-client-assignment-row {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-client-editor > .dlwe-approval-heading,
  .dlwe-portal-shell .dlwe-portal-header {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .dlwe-portal-shell .dlwe-header-actions {
    justify-content: flex-start !important;
  }
}

@media (max-width: 1100px) {
  .dlwe-portal-shell {
    grid-template-columns: 218px minmax(0, 1fr) !important;
  }
}

@media (max-width: 850px) {
  .dlwe-portal-shell {
    display: block !important;
    border-radius: 0 !important;
  }

  .dlwe-portal-shell .dlwe-sidebar {
    position: static !important;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    padding: 22px !important;
  }

  .dlwe-portal-shell .dlwe-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 5px !important;
    margin: 24px 0 16px !important;
  }

  .dlwe-portal-shell .dlwe-nav-section-label {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  .dlwe-portal-shell .dlwe-main {
    padding: 24px 15px 30px !important;
  }

  .dlwe-portal-shell .dlwe-nav {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-form-section,
  .dlwe-portal-shell .dlwe-table-card,
  .dlwe-portal-shell .dlwe-task-dashboard-card,
  .dlwe-portal-shell .dlwe-client-editor,
  .dlwe-portal-shell .dlwe-user-editor,
  .dlwe-portal-shell .dlwe-task-editor,
  .dlwe-portal-shell .dlwe-workspace-card,
  .dlwe-portal-shell .dlwe-home-card {
    padding: 20px 16px !important;
  }

  .dlwe-portal-shell .dlwe-wedding-toolbar,
  .dlwe-portal-shell .dlwe-vendor-toolbar,
  .dlwe-portal-shell .dlwe-task-toolbar,
  .dlwe-portal-shell .dlwe-client-toolbar,
  .dlwe-portal-shell .dlwe-user-toolbar,
  .dlwe-portal-shell .dlwe-approval-toolbar,
  .dlwe-portal-shell .dlwe-timeline-toolbar,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar,
  .dlwe-portal-shell .dlwe-report-filter-grid {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-form-actions,
  .dlwe-portal-shell .dlwe-history-actions,
  .dlwe-portal-shell .dlwe-vendor-actions,
  .dlwe-portal-shell .dlwe-task-actions,
  .dlwe-portal-shell .dlwe-client-inline-actions,
  .dlwe-portal-shell .dlwe-client-row-actions,
  .dlwe-portal-shell .dlwe-user-actions {
    justify-content: stretch !important;
  }

  .dlwe-portal-shell .dlwe-form-actions > *,
  .dlwe-portal-shell .dlwe-history-actions > *,
  .dlwe-portal-shell .dlwe-vendor-actions > *,
  .dlwe-portal-shell .dlwe-task-actions > *,
  .dlwe-portal-shell .dlwe-client-inline-actions > *,
  .dlwe-portal-shell .dlwe-client-row-actions > *,
  .dlwe-portal-shell .dlwe-user-actions > * {
    flex: 1 1 100%;
  }
}

@media print {
  .dlwe-portal-shell .dlwe-sidebar {
    position: static !important;
    height: auto !important;
  }
}

/* Version 4.0.1: definitive visibility-state fix.
 * Several luxury-theme selectors use display: ... !important. Without this
 * final rule, elements toggled with the HTML hidden attribute can remain
 * visible after their data has finished loading. Keep this rule last. */
.dlwe-portal-shell [hidden] {
  display: none !important;
}

/* Version 4.1 — Per-user Quick Action customization */
.dlwe-portal-shell .dlwe-home-quick-action-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.dlwe-portal-shell .dlwe-home-preference-status {
  max-width: 260px;
  color: #55705d;
  font-size: 11px;
  line-height: 1.35;
  opacity: 0;
  transform: translateY(2px);
  transition: opacity 160ms ease, transform 160ms ease;
}

.dlwe-portal-shell .dlwe-home-preference-status.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.dlwe-portal-shell .dlwe-home-preference-status.is-error {
  color: #9f3e37;
}

.dlwe-portal-shell .dlwe-home-quick-actions-empty {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  padding: 24px;
  border: 1px dashed #cdbfAA;
  border-radius: var(--dlwe-ui-radius-md, 10px);
  background: rgba(255, 253, 250, 0.72);
  text-align: center;
}

.dlwe-portal-shell .dlwe-home-quick-actions-empty strong {
  margin-bottom: 5px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 400;
}

.dlwe-portal-shell .dlwe-home-quick-actions-empty span {
  color: var(--dlwe-ui-muted, #756f67);
  font-size: 12px;
}

.dlwe-quick-actions-modal {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(15, 13, 11, 0.72);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 180ms ease, visibility 180ms ease;
}

.dlwe-quick-actions-modal.is-visible {
  opacity: 1;
  visibility: visible;
}

.dlwe-quick-actions-modal.is-closing {
  opacity: 0;
}

.dlwe-quick-actions-dialog {
  position: relative;
  width: min(850px, 100%);
  max-height: min(88vh, 880px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid rgba(187, 154, 97, 0.55);
  border-radius: 16px;
  background:
    radial-gradient(circle at 96% 3%, rgba(213, 184, 128, 0.16), transparent 30%),
    #f8f4ed;
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.32);
  transform: translateY(12px) scale(0.985);
  transition: transform 180ms ease;
}

.dlwe-quick-actions-modal.is-visible .dlwe-quick-actions-dialog {
  transform: translateY(0) scale(1);
}

.dlwe-quick-actions-close {
  position: absolute;
  top: 18px;
  right: 20px;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #d8cdbd;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.72);
  color: #28231e;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}

.dlwe-quick-actions-close:hover,
.dlwe-quick-actions-close:focus-visible {
  border-color: #a7824a;
  outline: none;
}

.dlwe-quick-actions-kicker {
  margin: 0 48px 9px 0;
  color: #9c7944;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.24em;
}

.dlwe-quick-actions-dialog h2 {
  margin: 0 48px 10px 0;
  color: #1b1815;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(29px, 4vw, 42px);
  font-weight: 400;
  line-height: 1.08;
}

.dlwe-quick-actions-intro {
  max-width: 690px;
  margin: 0 0 22px;
  color: #6f6860;
  font-size: 13px;
  line-height: 1.7;
}

.dlwe-quick-actions-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
  padding: 12px 15px;
  border: 1px solid #ded4c6;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.58);
}

.dlwe-quick-actions-toolbar strong {
  color: #2e2924;
  font-size: 12px;
}

.dlwe-quick-actions-toolbar span {
  color: #817970;
  font-size: 11px;
}

.dlwe-quick-actions-editor-list {
  min-height: 160px;
  overflow-y: auto;
  display: grid;
  gap: 9px;
  padding: 2px 5px 2px 2px;
  scrollbar-width: thin;
  scrollbar-color: #bda476 transparent;
}

.dlwe-quick-action-editor-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 72px;
  padding: 13px 14px;
  border: 1px solid #ddd3c5;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.72);
  transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.dlwe-quick-action-editor-row.is-selected {
  border-color: #b99252;
  background: #fffdfa;
  box-shadow: inset 3px 0 0 #b99252;
}

.dlwe-quick-action-editor-choice {
  min-width: 0;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin: 0;
  cursor: pointer;
}

.dlwe-quick-action-editor-choice input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #9b763d;
}

.dlwe-quick-action-editor-choice strong,
.dlwe-quick-action-editor-choice small {
  display: block;
}

.dlwe-quick-action-editor-choice strong {
  margin-bottom: 4px;
  color: #28231e;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}

.dlwe-quick-action-editor-choice small {
  color: #7d756c;
  font-size: 11px;
  line-height: 1.45;
}

.dlwe-quick-action-order-controls {
  display: flex;
  align-items: center;
  gap: 6px;
}

.dlwe-quick-action-order-controls button {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #d2c4b0;
  border-radius: 8px;
  background: #fbf8f3;
  color: #765a31;
  font-size: 16px;
  cursor: pointer;
}

.dlwe-quick-action-order-controls button:hover:not(:disabled),
.dlwe-quick-action-order-controls button:focus-visible:not(:disabled) {
  border-color: #9d783f;
  background: #f4ead9;
  outline: none;
}

.dlwe-quick-action-order-controls button:disabled {
  opacity: 0.28;
  cursor: default;
}

.dlwe-quick-actions-dialog > .dlwe-alert {
  margin: 14px 0 0;
}

.dlwe-quick-actions-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid #ded4c6;
}

.dlwe-quick-actions-footer > div {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
}

.dlwe-quick-actions-footer .dlwe-primary-button,
.dlwe-quick-actions-footer .dlwe-secondary-button {
  min-height: 43px;
  margin: 0;
  white-space: nowrap;
}

@media (max-width: 720px) {
  .dlwe-portal-shell .dlwe-home-section-heading {
    align-items: flex-end;
  }

  .dlwe-portal-shell .dlwe-home-quick-action-controls {
    flex-direction: column-reverse;
    align-items: flex-end;
    gap: 6px;
  }

  .dlwe-portal-shell .dlwe-home-preference-status {
    max-width: 180px;
    text-align: right;
  }

  .dlwe-quick-actions-modal {
    align-items: flex-end;
    padding: 0;
  }

  .dlwe-quick-actions-dialog {
    width: 100%;
    max-height: 94vh;
    padding: 25px 18px 18px;
    border-right: 0;
    border-bottom: 0;
    border-left: 0;
    border-radius: 18px 18px 0 0;
  }

  .dlwe-quick-actions-toolbar {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .dlwe-quick-action-editor-row {
    gap: 9px;
    padding: 12px;
  }

  .dlwe-quick-action-order-controls {
    flex-direction: column;
  }

  .dlwe-quick-action-order-controls button {
    width: 32px;
    height: 30px;
  }

  .dlwe-quick-actions-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-quick-actions-footer > div {
    display: grid;
    grid-template-columns: 1fr 1.35fr;
  }

  .dlwe-quick-actions-footer > .dlwe-secondary-button,
  .dlwe-quick-actions-footer > div > * {
    width: 100%;
  }
}

/* Version 4.2 — Full-width responsive portal shell ----------------------- */
body.dlwe-staff-portal-page {
  overflow-x: hidden !important;
}

body.dlwe-staff-portal-page .entry-content:has(.dlwe-portal-shell),
body.dlwe-staff-portal-page .site-main:has(.dlwe-portal-shell),
body.dlwe-staff-portal-page .content-area:has(.dlwe-portal-shell),
body.dlwe-staff-portal-page .wp-block-post-content:has(.dlwe-portal-shell),
body.dlwe-staff-portal-page .elementor-widget-container:has(> .dlwe-portal-shell),
body.dlwe-staff-portal-page .wpb_wrapper:has(> .dlwe-portal-shell) {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.dlwe-portal-shell {
  width: 100vw !important;
  max-width: none !important;
  min-height: 100dvh !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-right: -50vw !important;
  margin-left: -50vw !important;
  grid-template-columns: clamp(250px, 16vw, 300px) minmax(0, 1fr) !important;
  border-right: 0 !important;
  border-left: 0 !important;
  container-type: inline-size;
}

.dlwe-portal-shell .dlwe-sidebar {
  width: 100% !important;
  min-width: 0 !important;
  position: sticky !important;
  top: var(--wp-admin--admin-bar--height, 0px) !important;
  align-self: start !important;
  height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px)) !important;
  max-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px)) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(197, 165, 110, 0.45) transparent;
}

.dlwe-portal-shell .dlwe-sidebar-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.dlwe-portal-shell .dlwe-sidebar-identity {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-mobile-nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 42px;
  padding: 9px 12px;
  color: #f7f1e7;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(197, 165, 110, 0.35);
  border-radius: 7px;
  font-family: var(--dlwe-brand-body, Arial, sans-serif);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.15em;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
}

.dlwe-portal-shell .dlwe-mobile-nav-toggle:hover,
.dlwe-portal-shell .dlwe-mobile-nav-toggle:focus-visible {
  color: #fff;
  border-color: rgba(197, 165, 110, 0.8);
  outline: none;
}

.dlwe-portal-shell .dlwe-mobile-nav-icon {
  width: 18px;
  display: grid;
  gap: 4px;
}

.dlwe-portal-shell .dlwe-mobile-nav-icon i {
  width: 100%;
  height: 1px;
  display: block;
  background: currentColor;
  transition: transform 170ms ease, opacity 170ms ease;
}

.dlwe-portal-shell .dlwe-sidebar.is-nav-open .dlwe-mobile-nav-icon i:nth-child(1) {
  transform: translateY(5px) rotate(45deg);
}

.dlwe-portal-shell .dlwe-sidebar.is-nav-open .dlwe-mobile-nav-icon i:nth-child(2) {
  opacity: 0;
}

.dlwe-portal-shell .dlwe-sidebar.is-nav-open .dlwe-mobile-nav-icon i:nth-child(3) {
  transform: translateY(-5px) rotate(-45deg);
}

.dlwe-portal-shell .dlwe-main {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: clamp(28px, 2.7vw, 54px) !important;
}

.dlwe-portal-shell .dlwe-panel,
.dlwe-portal-shell .dlwe-panel > *,
.dlwe-portal-shell .dlwe-form-grid > *,
.dlwe-portal-shell .dlwe-home-grid > *,
.dlwe-portal-shell .dlwe-home-summary-grid > *,
.dlwe-portal-shell .dlwe-home-quick-actions > *,
.dlwe-portal-shell .dlwe-card-grid > *,
.dlwe-portal-shell .dlwe-task-dashboard-layout > *,
.dlwe-portal-shell .dlwe-checklist-builder-grid > *,
.dlwe-portal-shell .dlwe-timeline-top-grid > * {
  min-width: 0 !important;
  max-width: 100%;
}

.dlwe-portal-shell img,
.dlwe-portal-shell svg,
.dlwe-portal-shell video,
.dlwe-portal-shell canvas {
  max-width: 100%;
}

.dlwe-portal-shell .dlwe-home-summary-grid,
.dlwe-portal-shell .dlwe-summary-grid,
.dlwe-portal-shell .dlwe-task-dashboard-summary,
.dlwe-portal-shell .dlwe-client-summary,
.dlwe-portal-shell .dlwe-vendor-summary,
.dlwe-portal-shell .dlwe-wedding-summary,
.dlwe-portal-shell .dlwe-task-summary,
.dlwe-portal-shell .dlwe-timeline-summary,
.dlwe-portal-shell .dlwe-report-summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr)) !important;
}

.dlwe-portal-shell .dlwe-home-quick-actions {
  grid-template-columns: repeat(auto-fit, minmax(min(230px, 100%), 1fr)) !important;
}

.dlwe-portal-shell .dlwe-card-grid,
.dlwe-portal-shell .dlwe-home-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.dlwe-portal-shell .dlwe-home-card-wide {
  grid-column: 1 / -1 !important;
}

.dlwe-portal-shell .dlwe-table-wrap,
.dlwe-portal-shell .dlwe-table-scroll,
.dlwe-portal-shell .dlwe-timeline-table-wrap,
.dlwe-portal-shell .dlwe-timeline-table-scroll,
.dlwe-portal-shell .dlwe-task-dashboard-table-wrap,
.dlwe-portal-shell .dlwe-checklist-table-scroll,
.dlwe-portal-shell .dlwe-report-table-wrap {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
}

.dlwe-portal-shell .dlwe-form-actions,
.dlwe-portal-shell .dlwe-header-actions,
.dlwe-portal-shell .dlwe-history-actions,
.dlwe-portal-shell .dlwe-vendor-actions,
.dlwe-portal-shell .dlwe-task-actions,
.dlwe-portal-shell .dlwe-client-inline-actions,
.dlwe-portal-shell .dlwe-client-row-actions,
.dlwe-portal-shell .dlwe-user-actions,
.dlwe-portal-shell .dlwe-timeline-quick-actions,
.dlwe-portal-shell .dlwe-timeline-print-actions {
  flex-wrap: wrap !important;
}

@media (min-width: 1700px) {
  .dlwe-portal-shell {
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  .dlwe-portal-shell .dlwe-main {
    padding: 54px 64px !important;
  }

  .dlwe-portal-shell .dlwe-home-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .dlwe-portal-shell .dlwe-home-card-wide {
    grid-column: span 2 !important;
  }
}

@media (max-width: 1280px) {
  .dlwe-portal-shell {
    grid-template-columns: 232px minmax(0, 1fr) !important;
  }

  .dlwe-portal-shell .dlwe-sidebar {
    padding: 28px 20px 24px !important;
  }

  .dlwe-portal-shell .dlwe-main {
    padding: 30px !important;
  }
}

@media (max-width: 1024px) {
  body.dlwe-mobile-nav-open {
    overflow: hidden !important;
  }

  .dlwe-portal-shell {
    display: block !important;
    min-height: 100dvh !important;
  }

  .dlwe-portal-shell .dlwe-sidebar {
    position: sticky !important;
    top: var(--wp-admin--admin-bar--height, 0px) !important;
    z-index: 9990 !important;
    width: 100% !important;
    height: auto !important;
    max-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px)) !important;
    padding: 14px 20px !important;
    overflow-y: auto !important;
    background: rgba(18, 16, 14, 0.985) !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(197, 165, 110, 0.28) !important;
    box-shadow: 0 14px 36px rgba(15, 12, 9, 0.16);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }

  .dlwe-portal-shell .dlwe-sidebar-brand {
    font-size: 24px !important;
  }

  .dlwe-portal-shell .dlwe-sidebar-subtitle {
    margin-top: 6px !important;
    font-size: 8px !important;
  }

  .dlwe-portal-shell .dlwe-mobile-nav-toggle {
    display: inline-flex !important;
  }

  .dlwe-portal-shell .dlwe-nav {
    max-height: 0 !important;
    overflow: hidden !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-6px);
    transition: max-height 230ms ease, margin 230ms ease, padding 230ms ease, opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
  }

  .dlwe-portal-shell .dlwe-sidebar.is-nav-open .dlwe-nav {
    max-height: calc(100dvh - 155px) !important;
    margin: 18px 0 12px !important;
    padding: 0 2px 8px !important;
    overflow-y: auto !important;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .dlwe-portal-shell .dlwe-nav-section-label {
    grid-column: 1 / -1 !important;
    margin: 15px 8px 5px !important;
  }

  .dlwe-portal-shell .dlwe-nav-section-label:first-child {
    margin-top: 0 !important;
  }

  .dlwe-portal-shell .dlwe-nav-item {
    min-height: 44px !important;
    padding: 10px 12px !important;
    background: rgba(255, 255, 255, 0.035) !important;
    border: 1px solid rgba(255, 255, 255, 0.055) !important;
    border-radius: 6px !important;
  }

  .dlwe-portal-shell .dlwe-nav-item.is-active {
    background: rgba(197, 165, 110, 0.16) !important;
    border-color: rgba(197, 165, 110, 0.32) !important;
  }

  .dlwe-portal-shell .dlwe-logout-link {
    max-height: 0;
    margin: 0 !important;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: max-height 180ms ease, margin 180ms ease, opacity 160ms ease, visibility 160ms ease;
  }

  .dlwe-portal-shell .dlwe-sidebar.is-nav-open .dlwe-logout-link {
    max-height: 42px;
    margin-top: 8px !important;
    opacity: 1;
    visibility: visible;
  }

  .dlwe-portal-shell .dlwe-main {
    padding: 28px 24px 40px !important;
  }

  .dlwe-portal-shell .dlwe-portal-header {
    align-items: flex-start !important;
  }
}

@media (max-width: 760px) {
  .dlwe-portal-shell .dlwe-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dlwe-portal-shell .dlwe-main {
    padding: 24px 18px 34px !important;
  }

  .dlwe-portal-shell .dlwe-portal-header,
  .dlwe-portal-shell .dlwe-client-editor > .dlwe-approval-heading,
  .dlwe-portal-shell .dlwe-workspace-header {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
    gap: 18px !important;
  }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-user-chip {
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-form-grid,
  .dlwe-portal-shell .dlwe-card-grid,
  .dlwe-portal-shell .dlwe-home-grid,
  .dlwe-portal-shell .dlwe-checklist-builder-grid,
  .dlwe-portal-shell .dlwe-timeline-top-grid,
  .dlwe-portal-shell .dlwe-task-dashboard-layout {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-home-card-wide {
    grid-column: auto !important;
  }

  .dlwe-portal-shell .dlwe-wedding-toolbar,
  .dlwe-portal-shell .dlwe-vendor-toolbar,
  .dlwe-portal-shell .dlwe-task-toolbar,
  .dlwe-portal-shell .dlwe-client-toolbar,
  .dlwe-portal-shell .dlwe-user-toolbar,
  .dlwe-portal-shell .dlwe-approval-toolbar,
  .dlwe-portal-shell .dlwe-timeline-toolbar,
  .dlwe-portal-shell .dlwe-task-dashboard-toolbar,
  .dlwe-portal-shell .dlwe-report-filter-grid {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-home-hero,
  .dlwe-portal-shell .dlwe-workspace-hero {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  .dlwe-portal-shell .dlwe-sidebar {
    padding: 12px 14px !important;
  }

  .dlwe-portal-shell .dlwe-mobile-nav-toggle {
    min-height: 39px;
    padding: 8px 10px;
  }

  .dlwe-portal-shell .dlwe-nav {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-main {
    padding: 20px 13px 30px !important;
  }

  .dlwe-portal-shell .dlwe-form-section,
  .dlwe-portal-shell .dlwe-table-card,
  .dlwe-portal-shell .dlwe-task-dashboard-card,
  .dlwe-portal-shell .dlwe-client-editor,
  .dlwe-portal-shell .dlwe-user-editor,
  .dlwe-portal-shell .dlwe-task-editor,
  .dlwe-portal-shell .dlwe-workspace-card,
  .dlwe-portal-shell .dlwe-home-card {
    padding: 18px 14px !important;
  }

  .dlwe-portal-shell .dlwe-form-section-heading {
    grid-template-columns: 30px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .dlwe-portal-shell .dlwe-form-actions,
  .dlwe-portal-shell .dlwe-history-actions,
  .dlwe-portal-shell .dlwe-vendor-actions,
  .dlwe-portal-shell .dlwe-task-actions,
  .dlwe-portal-shell .dlwe-client-inline-actions,
  .dlwe-portal-shell .dlwe-client-row-actions,
  .dlwe-portal-shell .dlwe-user-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-form-actions > *,
  .dlwe-portal-shell .dlwe-history-actions > *,
  .dlwe-portal-shell .dlwe-vendor-actions > *,
  .dlwe-portal-shell .dlwe-task-actions > *,
  .dlwe-portal-shell .dlwe-client-inline-actions > *,
  .dlwe-portal-shell .dlwe-client-row-actions > *,
  .dlwe-portal-shell .dlwe-user-actions > * {
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-pagination {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .dlwe-portal-shell .dlwe-pagination-buttons {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
  }
}

@media print {
  body.dlwe-staff-portal-page {
    overflow: visible !important;
  }

  .dlwe-portal-shell {
    width: 100% !important;
    min-height: 0 !important;
    left: auto !important;
    right: auto !important;
    margin: 0 !important;
  }

  .dlwe-portal-shell .dlwe-mobile-nav-toggle {
    display: none !important;
  }
}

/* Keep visibility semantics authoritative after all responsive overrides. */
.dlwe-portal-shell [hidden] {
  display: none !important;
}

/* Sticky navigation requires the full-width shell not to become a scroll container. */
.dlwe-portal-shell {
  overflow: visible !important;
}

.dlwe-portal-shell [hidden] {
  display: none !important;
}


/* Version 4.2.2: clear portal user editing controls */
.dlwe-portal-shell .dlwe-user-management-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 20px;
  padding: 16px 18px;
  border: 1px solid rgba(177, 137, 76, 0.28);
  border-left: 4px solid #b1894c;
  border-radius: 14px;
  background: rgba(247, 241, 230, 0.72);
}

.dlwe-portal-shell .dlwe-user-management-note > div {
  display: grid;
  gap: 4px;
}

.dlwe-portal-shell .dlwe-user-management-note strong {
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 18px;
  font-weight: 500;
  color: #1e1b18;
}

.dlwe-portal-shell .dlwe-user-management-note span {
  color: #6f675e;
  font-size: 13px;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-user-actions {
  min-width: 138px;
  align-items: flex-start;
}

.dlwe-portal-shell .dlwe-user-edit-button {
  width: 100%;
  min-width: 118px;
  justify-content: center;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-user-action-note {
  display: block;
  max-width: 150px;
  color: #81786e;
  font-size: 11px;
  line-height: 1.45;
}

@media (max-width: 820px) {
  .dlwe-portal-shell .dlwe-user-management-note {
    align-items: flex-start;
    padding: 14px 15px;
  }

  .dlwe-portal-shell .dlwe-user-actions {
    min-width: 128px;
  }
}


/* v4.3 Manager–Lead–Staff workspace hierarchy */
.dlwe-role-scope-note{margin:0 0 24px;padding:14px 18px;border:1px solid rgba(174,133,67,.28);background:rgba(246,239,225,.65);font-size:13px;line-height:1.6;color:#625b52}
.dlwe-status-pill[data-role="dlwe_lead"]{border-color:rgba(174,133,67,.45);background:#f7f0e2;color:#77571f}
.dlwe-portal-shell [disabled]{cursor:not-allowed}

/* ================================================================
   v4.3.1 — Dashboard Workday Clock
   Immediate clock-in and clock-out from the first portal screen.
   ================================================================ */
.dlwe-portal-shell .dlwe-home-clock-panel {
  position: relative;
  overflow: hidden;
  margin: 0 0 28px;
  padding: clamp(22px, 2.2vw, 34px);
  border: 1px solid rgba(164, 126, 66, 0.30);
  border-top: 4px solid #b58b49;
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(205, 172, 112, 0.16), transparent 34%),
    linear-gradient(135deg, #fffdf9 0%, #f8f3ea 100%);
  box-shadow: 0 18px 50px rgba(33, 27, 21, 0.08);
}

.dlwe-portal-shell .dlwe-home-clock-panel::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -90px;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(181, 139, 73, 0.18);
  border-radius: 50%;
  pointer-events: none;
}

.dlwe-portal-shell .dlwe-home-clock-header {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  margin-bottom: 22px;
}

.dlwe-portal-shell .dlwe-home-clock-copy {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-home-clock-copy h2 {
  margin: 4px 0 6px;
  color: #1c1915;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: clamp(28px, 2.5vw, 42px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.dlwe-portal-shell .dlwe-home-clock-copy p:last-child {
  max-width: 760px;
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
}

.dlwe-portal-shell .dlwe-home-live-clock {
  min-width: 196px;
  padding: 17px 20px;
  border: 1px solid rgba(181, 139, 73, 0.35);
  border-radius: 14px;
  background: #1c1915;
  color: #fffaf1;
  text-align: right;
  box-shadow: 0 12px 28px rgba(28, 25, 21, 0.14);
}

.dlwe-portal-shell .dlwe-home-live-clock span,
.dlwe-portal-shell .dlwe-home-live-clock small {
  display: block;
  color: rgba(255, 250, 241, 0.65);
  font-family: var(--dlwe-sans, Arial, sans-serif);
}

.dlwe-portal-shell .dlwe-home-live-clock span {
  margin-bottom: 5px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-home-live-clock strong {
  display: block;
  color: #ecd19c;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: 27px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.1;
}

.dlwe-portal-shell .dlwe-home-live-clock small {
  margin-top: 5px;
  font-size: 11px;
}

.dlwe-portal-shell #dlwe-home-clock-message {
  position: relative;
  z-index: 2;
  margin: 0 0 18px;
}

.dlwe-portal-shell .dlwe-home-clock-controls {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: end;
  padding-top: 20px;
  border-top: 1px solid rgba(73, 61, 47, 0.12);
}

.dlwe-portal-shell .dlwe-home-clock-fields {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 14px;
  min-width: 0;
}

.dlwe-portal-shell .dlwe-home-clock-fields label {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 7px;
  margin: 0;
}

.dlwe-portal-shell .dlwe-home-clock-fields label > span {
  color: #6f665c;
  font-family: var(--dlwe-sans, Arial, sans-serif);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-home-clock-fields label > span small {
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.08em;
}

.dlwe-portal-shell .dlwe-home-clock-fields input,
.dlwe-portal-shell .dlwe-home-clock-fields select {
  width: 100%;
  min-width: 0;
  height: 48px;
  margin: 0;
  padding: 0 14px;
  border: 1px solid #d9cdbd;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.88);
  color: #28231e;
  font-size: 13px;
  box-shadow: none;
}

.dlwe-portal-shell .dlwe-home-clock-fields input:focus,
.dlwe-portal-shell .dlwe-home-clock-fields select:focus {
  border-color: #b58b49;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(181, 139, 73, 0.13);
}

.dlwe-portal-shell .dlwe-home-clock-action {
  min-width: 142px;
  min-height: 48px;
  margin: 0;
  padding: 13px 22px;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-home-clock-out-controls {
  grid-template-columns: minmax(220px, 0.75fr) minmax(0, 1.5fr) auto;
}

.dlwe-portal-shell .dlwe-home-clock-out-fields {
  grid-template-columns: minmax(130px, 0.45fr) minmax(240px, 1.55fr);
}

.dlwe-portal-shell .dlwe-home-clock-active-shift {
  display: flex;
  min-height: 48px;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border: 1px solid rgba(47, 117, 78, 0.24);
  border-radius: 11px;
  background: rgba(231, 245, 236, 0.85);
}

.dlwe-portal-shell .dlwe-home-clock-active-shift strong,
.dlwe-portal-shell .dlwe-home-clock-active-shift small {
  display: block;
}

.dlwe-portal-shell .dlwe-home-clock-active-shift strong {
  color: #245f3d;
  font-size: 12px;
  font-weight: 700;
}

.dlwe-portal-shell .dlwe-home-clock-active-shift small {
  margin-top: 2px;
  color: #54705e;
  font-size: 10px;
  line-height: 1.35;
}

.dlwe-portal-shell .dlwe-home-clock-pulse {
  position: relative;
  width: 10px;
  height: 10px;
  flex: 0 0 10px;
  border-radius: 50%;
  background: #2f8a58;
  box-shadow: 0 0 0 5px rgba(47, 138, 88, 0.13);
}

.dlwe-portal-shell .dlwe-home-clock-pulse::after {
  content: "";
  position: absolute;
  inset: -5px;
  border: 1px solid rgba(47, 138, 88, 0.35);
  border-radius: 50%;
  animation: dlwe-home-clock-pulse 1.8s ease-out infinite;
}

@keyframes dlwe-home-clock-pulse {
  0% { transform: scale(0.65); opacity: 0.9; }
  100% { transform: scale(1.55); opacity: 0; }
}

.dlwe-portal-shell .dlwe-home-clock-out-button {
  background: #302b26;
  border-color: #302b26;
}

.dlwe-portal-shell .dlwe-home-clock-unavailable {
  position: relative;
  z-index: 1;
  padding: 18px 20px;
  border: 1px solid rgba(164, 75, 70, 0.22);
  border-radius: 12px;
  background: rgba(255, 245, 243, 0.82);
}

.dlwe-portal-shell .dlwe-home-clock-unavailable strong {
  display: block;
  margin-bottom: 4px;
  color: #873b37;
  font-size: 13px;
}

.dlwe-portal-shell .dlwe-home-clock-unavailable p {
  margin: 0;
  color: #795c59;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-home-clock-panel [hidden] {
  display: none !important;
}

@media (max-width: 1320px) {
  .dlwe-portal-shell .dlwe-home-clock-fields {
    grid-template-columns: repeat(2, minmax(170px, 1fr));
  }

  .dlwe-portal-shell .dlwe-home-clock-out-controls {
    grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1.4fr) auto;
  }

  .dlwe-portal-shell .dlwe-home-clock-out-fields {
    grid-template-columns: minmax(120px, 0.4fr) minmax(220px, 1.6fr);
  }
}

@media (max-width: 960px) {
  .dlwe-portal-shell .dlwe-home-clock-controls,
  .dlwe-portal-shell .dlwe-home-clock-out-controls {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .dlwe-portal-shell .dlwe-home-clock-action {
    width: 100%;
  }
}

@media (max-width: 720px) {
  .dlwe-portal-shell .dlwe-home-clock-panel {
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 14px;
  }

  .dlwe-portal-shell .dlwe-home-clock-header {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .dlwe-portal-shell .dlwe-home-live-clock {
    min-width: 0;
    width: 100%;
    text-align: left;
  }

  .dlwe-portal-shell .dlwe-home-clock-fields,
  .dlwe-portal-shell .dlwe-home-clock-out-fields {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-home-clock-copy h2 {
    font-size: 30px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dlwe-portal-shell .dlwe-home-clock-pulse::after {
    animation: none;
  }
}

/* ========================================================================== 
   DLWE Staff Login — Editorial Full-Screen Redesign v4.3.2
   Uses the active WordPress Site Logo from the parent website.
   ========================================================================== */
body.dlwe-staff-login-page {
  margin: 0 !important;
  background: #f3eee6 !important;
}

body.dlwe-staff-login-page header,
body.dlwe-staff-login-page #masthead,
body.dlwe-staff-login-page .site-header,
body.dlwe-staff-login-page .page-header,
body.dlwe-staff-login-page .entry-header,
body.dlwe-staff-login-page footer,
body.dlwe-staff-login-page #colophon,
body.dlwe-staff-login-page .site-footer,
body.dlwe-staff-login-page .footer-widget-area {
  display: none !important;
}

body.dlwe-staff-login-page #page,
body.dlwe-staff-login-page #content,
body.dlwe-staff-login-page .site-content,
body.dlwe-staff-login-page .content-area,
body.dlwe-staff-login-page .site-main,
body.dlwe-staff-login-page article,
body.dlwe-staff-login-page .entry-content,
body.dlwe-staff-login-page .container,
body.dlwe-staff-login-page .container-fluid,
body.dlwe-staff-login-page .row,
body.dlwe-staff-login-page .vc_row,
body.dlwe-staff-login-page .wpb_wrapper {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.dlwe-staff-login-page .dlwe-auth-shell {
  --dlwe-auth-ink: #171511;
  --dlwe-auth-ink-soft: #29251f;
  --dlwe-auth-copy: #615b52;
  --dlwe-auth-muted: #8b8378;
  --dlwe-auth-paper: #fffdf9;
  --dlwe-auth-ivory: #f4efe7;
  --dlwe-auth-gold: #b8955c;
  --dlwe-auth-gold-soft: #e7d7bc;
  --dlwe-auth-line: #ddd3c4;
  --dlwe-auth-display: "Cormorant Garamond", "Iowan Old Style", Baskerville, Georgia, "Times New Roman", serif;
  --dlwe-auth-body: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;

  width: 100vw !important;
  min-height: 100vh !important;
  margin: 0 calc(50% - 50vw) !important;
  padding: clamp(18px, 3vw, 48px) !important;
  display: grid !important;
  place-items: center !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(184, 149, 92, 0.14), transparent 30%),
    linear-gradient(135deg, #f7f3ed 0%, #eee6da 100%) !important;
  font-family: var(--dlwe-auth-body) !important;
  color: var(--dlwe-auth-copy) !important;
  overflow-x: hidden;
}

body.dlwe-staff-login-page .dlwe-auth-layout {
  width: min(100%, 1280px);
  min-height: min(780px, calc(100vh - clamp(36px, 6vw, 96px)));
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(430px, 0.95fr);
  overflow: hidden;
  background: var(--dlwe-auth-paper);
  border: 1px solid rgba(184, 149, 92, 0.25);
  box-shadow: 0 32px 90px rgba(36, 28, 18, 0.14);
}

body.dlwe-staff-login-page .dlwe-auth-story {
  position: relative;
  min-width: 0;
  overflow: hidden;
  color: #f9f4eb;
  background:
    linear-gradient(150deg, rgba(23, 21, 17, 0.96), rgba(38, 32, 25, 0.98)),
    #171511;
}

body.dlwe-staff-login-page .dlwe-auth-story::before,
body.dlwe-staff-login-page .dlwe-auth-story::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(184, 149, 92, 0.25);
  border-radius: 50%;
  pointer-events: none;
}

body.dlwe-staff-login-page .dlwe-auth-story::before {
  width: 430px;
  height: 430px;
  right: -230px;
  top: -150px;
}

body.dlwe-staff-login-page .dlwe-auth-story::after {
  width: 610px;
  height: 610px;
  left: -390px;
  bottom: -420px;
}

body.dlwe-staff-login-page .dlwe-auth-story-inner {
  position: relative;
  z-index: 1;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  padding: clamp(42px, 6vw, 82px);
}

body.dlwe-staff-login-page .dlwe-auth-story-mark {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(231, 215, 188, 0.55);
  color: var(--dlwe-auth-gold-soft);
  font-family: var(--dlwe-auth-display);
  font-size: 18px;
  letter-spacing: 0.14em;
}

body.dlwe-staff-login-page .dlwe-auth-story-copy {
  margin: auto 0;
  max-width: 610px;
  padding: clamp(55px, 10vh, 110px) 0;
}

body.dlwe-staff-login-page .dlwe-auth-eyebrow {
  margin: 0 0 18px !important;
  color: var(--dlwe-auth-gold) !important;
  font-family: var(--dlwe-auth-body) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.25em !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
}

body.dlwe-staff-login-page .dlwe-auth-story h1 {
  margin: 0 0 26px !important;
  color: #fffaf2 !important;
  font-family: var(--dlwe-auth-display) !important;
  font-size: clamp(48px, 5.2vw, 78px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em !important;
  line-height: 0.98 !important;
}

body.dlwe-staff-login-page .dlwe-auth-story-copy > p:last-child {
  max-width: 510px;
  margin: 0 !important;
  color: rgba(255, 250, 242, 0.68) !important;
  font-size: 15px !important;
  line-height: 1.85 !important;
}

body.dlwe-staff-login-page .dlwe-auth-story-footer {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-top: 24px;
  border-top: 1px solid rgba(231, 215, 188, 0.16);
  color: rgba(255, 250, 242, 0.55);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

body.dlwe-staff-login-page .dlwe-auth-form-panel {
  min-width: 0;
  display: grid;
  place-items: center;
  padding: clamp(34px, 5vw, 78px);
  background:
    linear-gradient(rgba(255, 253, 249, 0.96), rgba(255, 253, 249, 0.96)),
    repeating-linear-gradient(90deg, transparent 0 48px, rgba(184, 149, 92, 0.035) 48px 49px);
}

body.dlwe-staff-login-page .dlwe-login-card {
  width: min(100%, 470px) !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--dlwe-auth-body) !important;
}

body.dlwe-staff-login-page .dlwe-auth-logo-link {
  min-height: 74px;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  margin-bottom: clamp(42px, 7vh, 72px);
  color: var(--dlwe-auth-ink) !important;
  text-decoration: none !important;
}

body.dlwe-staff-login-page .dlwe-auth-logo {
  display: block;
  width: auto;
  max-width: min(100%, 250px);
  max-height: 86px;
  object-fit: contain;
  object-position: left center;
}

body.dlwe-staff-login-page .dlwe-auth-logo-link .dlwe-brand {
  display: block;
  color: var(--dlwe-auth-ink) !important;
  font-family: var(--dlwe-auth-display) !important;
  font-size: 42px !important;
  letter-spacing: 0.22em !important;
  line-height: 1 !important;
}

body.dlwe-staff-login-page .dlwe-auth-logo-link .dlwe-brand-subtitle {
  display: block;
  margin-top: 10px !important;
  color: var(--dlwe-auth-muted) !important;
  font-size: 9px !important;
  letter-spacing: 0.26em !important;
}

body.dlwe-staff-login-page .dlwe-auth-heading {
  margin-bottom: 34px;
}

body.dlwe-staff-login-page .dlwe-auth-heading h2,
body.dlwe-staff-login-page .dlwe-centered-card h2 {
  margin: 0 0 10px !important;
  color: var(--dlwe-auth-ink) !important;
  font-family: var(--dlwe-auth-display) !important;
  font-size: clamp(42px, 4vw, 58px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.02 !important;
}

body.dlwe-staff-login-page .dlwe-auth-heading .dlwe-muted,
body.dlwe-staff-login-page .dlwe-centered-card .dlwe-muted {
  margin: 0 !important;
  color: var(--dlwe-auth-muted) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

body.dlwe-staff-login-page .dlwe-login-form {
  display: grid !important;
  gap: 22px !important;
}

body.dlwe-staff-login-page .dlwe-field {
  margin: 0 !important;
}

body.dlwe-staff-login-page .dlwe-field-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 9px;
}

body.dlwe-staff-login-page .dlwe-field label {
  margin: 0 !important;
  color: var(--dlwe-auth-ink-soft) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.dlwe-staff-login-page .dlwe-field input[type="text"],
body.dlwe-staff-login-page .dlwe-field input[type="password"] {
  width: 100% !important;
  min-height: 58px !important;
  padding: 15px 17px !important;
  color: var(--dlwe-auth-ink) !important;
  background: rgba(255, 255, 255, 0.74) !important;
  border: 1px solid var(--dlwe-auth-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--dlwe-auth-body) !important;
  font-size: 14px !important;
  transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

body.dlwe-staff-login-page .dlwe-field input::placeholder {
  color: #a69e93 !important;
  opacity: 1;
}

body.dlwe-staff-login-page .dlwe-field input:focus {
  background: #fff !important;
  border-color: var(--dlwe-auth-gold) !important;
  box-shadow: 0 0 0 3px rgba(184, 149, 92, 0.11) !important;
  outline: none !important;
}

body.dlwe-staff-login-page .dlwe-password-wrap input {
  padding-right: 76px !important;
}

body.dlwe-staff-login-page .dlwe-password-toggle {
  right: 12px !important;
  padding: 8px !important;
  color: var(--dlwe-auth-ink-soft) !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 9px !important;
  letter-spacing: 0.12em !important;
}

body.dlwe-staff-login-page .dlwe-inline-forgot-link {
  color: var(--dlwe-auth-gold) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body.dlwe-staff-login-page .dlwe-inline-forgot-link:hover {
  color: var(--dlwe-auth-ink) !important;
}

body.dlwe-staff-login-page .dlwe-checkbox {
  margin: -2px 0 2px !important;
  color: var(--dlwe-auth-copy) !important;
  font-size: 12px !important;
}

body.dlwe-staff-login-page .dlwe-checkbox input {
  width: 16px !important;
  height: 16px !important;
  accent-color: var(--dlwe-auth-ink);
}

body.dlwe-staff-login-page .dlwe-primary-button {
  width: 100% !important;
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 15px 20px !important;
  color: #fffaf2 !important;
  background: var(--dlwe-auth-ink) !important;
  border: 1px solid var(--dlwe-auth-ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

body.dlwe-staff-login-page .dlwe-primary-button:hover {
  background: #2d2821 !important;
  border-color: #2d2821 !important;
  transform: translateY(-1px);
}

body.dlwe-staff-login-page .dlwe-auth-button-arrow {
  color: var(--dlwe-auth-gold-soft);
  font-size: 18px;
  line-height: 1;
}

body.dlwe-staff-login-page .dlwe-alert {
  margin: 0 0 28px !important;
  padding: 14px 16px !important;
  border-radius: 0 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}

body.dlwe-staff-login-page .dlwe-auth-support {
  margin: 30px 0 0 !important;
  padding-top: 22px;
  border-top: 1px solid var(--dlwe-auth-line);
  color: var(--dlwe-auth-muted) !important;
  font-size: 10px !important;
  letter-spacing: 0.06em;
  line-height: 1.6 !important;
  text-align: center;
}

body.dlwe-staff-login-page .dlwe-centered-card {
  text-align: left !important;
}

body.dlwe-staff-login-page .dlwe-centered-card .dlwe-auth-logo-link {
  align-items: flex-start !important;
}

body.dlwe-staff-login-page .dlwe-centered-card .dlwe-button-link {
  margin-top: 30px !important;
}

@media (max-width: 980px) {
  body.dlwe-staff-login-page .dlwe-auth-shell {
    padding: 18px !important;
  }

  body.dlwe-staff-login-page .dlwe-auth-layout {
    width: min(100%, 720px);
    min-height: auto;
    grid-template-columns: 1fr;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-inner {
    min-height: 330px;
    padding: 38px;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-copy {
    padding: 45px 0 34px;
  }

  body.dlwe-staff-login-page .dlwe-auth-story h1 {
    font-size: clamp(44px, 8vw, 64px) !important;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-footer {
    display: none;
  }

  body.dlwe-staff-login-page .dlwe-auth-form-panel {
    padding: 46px 38px 54px;
  }

  body.dlwe-staff-login-page .dlwe-auth-logo-link {
    margin-bottom: 42px;
  }
}

@media (max-width: 620px) {
  body.dlwe-staff-login-page .dlwe-auth-shell {
    display: block !important;
    min-height: 100vh !important;
    padding: 0 !important;
  }

  body.dlwe-staff-login-page .dlwe-auth-layout {
    width: 100%;
    border: 0;
    box-shadow: none;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-inner {
    min-height: 275px;
    padding: 30px 24px;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-mark {
    width: 56px;
    height: 56px;
    font-size: 14px;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-copy {
    padding: 38px 0 12px;
  }

  body.dlwe-staff-login-page .dlwe-auth-story h1 {
    margin-bottom: 16px !important;
    font-size: 42px !important;
  }

  body.dlwe-staff-login-page .dlwe-auth-story-copy > p:last-child {
    font-size: 13px !important;
    line-height: 1.65 !important;
  }

  body.dlwe-staff-login-page .dlwe-auth-form-panel {
    min-height: calc(100vh - 275px);
    padding: 42px 24px 50px;
  }

  body.dlwe-staff-login-page .dlwe-auth-logo-link {
    min-height: 58px;
    margin-bottom: 38px;
  }

  body.dlwe-staff-login-page .dlwe-auth-logo {
    max-width: 210px;
    max-height: 68px;
  }

  body.dlwe-staff-login-page .dlwe-auth-heading h2,
  body.dlwe-staff-login-page .dlwe-centered-card h2 {
    font-size: 42px !important;
  }

  body.dlwe-staff-login-page .dlwe-field-label-row {
    align-items: flex-end;
  }
}


/* DLWE v4.3.8 — portal-native password setup and recovery */
body.dlwe-staff-login-page .dlwe-password-account-summary {
  display: grid;
  gap: 5px;
  margin: 0 0 24px;
  padding: 15px 17px;
  background: rgba(184, 149, 92, 0.08);
  border: 1px solid rgba(184, 149, 92, 0.28);
}

body.dlwe-staff-login-page .dlwe-password-account-summary span {
  color: var(--dlwe-auth-muted) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.dlwe-staff-login-page .dlwe-password-account-summary strong {
  color: var(--dlwe-auth-ink) !important;
  font-family: var(--dlwe-auth-body) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  overflow-wrap: anywhere;
}

body.dlwe-staff-login-page .dlwe-password-guidance {
  margin: -8px 0 0 !important;
  color: var(--dlwe-auth-muted) !important;
  font-size: 11px !important;
  line-height: 1.6 !important;
}

body.dlwe-staff-login-page .dlwe-auth-action-link {
  text-decoration: none !important;
}

body.dlwe-staff-login-page .dlwe-auth-support-links a {
  color: var(--dlwe-auth-gold) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body.dlwe-staff-login-page .dlwe-auth-support-links a:hover {
  color: var(--dlwe-auth-ink) !important;
}


/* Version 4.3.9: permanent user deletion from portal management */
.dlwe-portal-shell .dlwe-user-delete-link {
  appearance: none;
  padding: 2px 0;
  border: 0;
  background: transparent;
  color: #9b3f3f;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  text-decoration: underline;
  text-decoration-color: rgba(155, 63, 63, 0.34);
  text-underline-offset: 3px;
  cursor: pointer;
}

.dlwe-portal-shell .dlwe-user-delete-link:hover:not(:disabled) {
  color: #702828;
  text-decoration-color: currentColor;
}

.dlwe-portal-shell .dlwe-user-delete-link:disabled {
  opacity: 0.45;
  cursor: wait;
}

.dlwe-portal-shell .dlwe-user-editor-delete {
  margin-right: auto !important;
}

.dlwe-user-delete-modal {
  position: fixed;
  z-index: 1000000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  overflow-y: auto;
  background: rgba(20, 17, 14, 0.72);
  backdrop-filter: blur(8px);
  opacity: 0;
  transition: opacity 180ms ease;
}

.dlwe-user-delete-modal.is-visible {
  opacity: 1;
}

.dlwe-user-delete-modal.is-closing {
  opacity: 0;
}

.dlwe-user-delete-dialog {
  position: relative;
  width: min(100%, 560px);
  padding: clamp(28px, 5vw, 46px);
  overflow: hidden;
  color: #2b251f;
  background: #fffdf9;
  border: 1px solid rgba(182, 153, 106, 0.55);
  border-radius: 20px;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.3);
  transform: translateY(16px) scale(0.985);
  transition: transform 180ms ease;
}

.dlwe-user-delete-modal.is-visible .dlwe-user-delete-dialog {
  transform: translateY(0) scale(1);
}

.dlwe-user-delete-close {
  position: absolute;
  top: 16px;
  right: 18px;
  width: 36px;
  height: 36px;
  border: 1px solid #ded3c4;
  border-radius: 50%;
  background: #fff;
  color: #62584f;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.dlwe-user-delete-icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin: 0 0 22px;
  border-radius: 50%;
  background: #f4e2e0;
  color: #8e3838;
  font-family: Georgia, serif;
  font-size: 31px;
  font-weight: 700;
}

.dlwe-user-delete-kicker {
  margin: 0 0 10px;
  color: #9b3f3f;
  font-family: Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.dlwe-user-delete-dialog h2 {
  margin: 0 42px 14px 0;
  color: #211c17;
  font-family: Georgia, serif;
  font-size: clamp(30px, 5vw, 42px);
  font-weight: 400;
  line-height: 1.08;
}

.dlwe-user-delete-intro {
  margin: 0 0 22px;
  color: #6c6259;
  font-size: 14px;
  line-height: 1.7;
}

.dlwe-user-delete-preserved {
  display: grid;
  gap: 5px;
  margin: 0 0 22px;
  padding: 15px 17px;
  background: #f6f0e7;
  border: 1px solid #e0d3c0;
  border-radius: 12px;
}

.dlwe-user-delete-preserved strong {
  color: #2b251f;
  font-size: 13px;
}

.dlwe-user-delete-preserved span {
  color: #786d63;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-user-delete-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.dlwe-user-delete-actions .dlwe-secondary-button,
.dlwe-user-delete-actions .dlwe-danger-button {
  min-height: 45px;
  padding: 10px 18px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-user-delete-actions .dlwe-secondary-button {
  border: 1px solid #d4c8b8;
  background: #fff;
  color: #2b251f;
}

@media (max-width: 620px) {
  .dlwe-user-delete-modal {
    align-items: end;
    padding: 12px;
  }

  .dlwe-user-delete-dialog {
    width: 100%;
    padding: 28px 22px 22px;
    border-radius: 18px;
  }

  .dlwe-user-delete-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dlwe-user-delete-actions button {
    width: 100%;
  }
}

/* Version 4.4.0: Excel-driven wedding checklist workspace */
.dlwe-portal-shell .dlwe-checklist-command-bar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(280px, 1fr);
  gap: 22px;
  align-items: end;
  margin-bottom: 24px;
  padding: 22px;
  border: 1px solid rgba(177, 137, 76, 0.22);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(248,244,237,0.92));
  box-shadow: 0 12px 34px rgba(31, 25, 18, 0.05);
}

.dlwe-portal-shell .dlwe-checklist-wedding-field {
  margin: 0;
}

.dlwe-portal-shell .dlwe-checklist-import-meta {
  display: grid;
  gap: 4px;
  justify-items: end;
  text-align: right;
}

.dlwe-portal-shell .dlwe-checklist-import-meta strong {
  color: #201b17;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 18px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-checklist-import-meta small {
  color: #7a7066;
  font-size: 12px;
  line-height: 1.5;
}

.dlwe-portal-shell .dlwe-checklist-meta-label {
  color: #9a7a4c;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-checklist-upload-card,
.dlwe-portal-shell .dlwe-checklist-upload-preview {
  margin-bottom: 24px;
}

.dlwe-portal-shell .dlwe-checklist-upload-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: end;
}

.dlwe-portal-shell .dlwe-checklist-upload-action {
  min-width: 220px;
  margin: 0;
}

.dlwe-portal-shell .dlwe-checklist-upload-action .dlwe-primary-button {
  width: 100%;
}

.dlwe-portal-shell .dlwe-checklist-import-controls {
  margin-bottom: 18px;
}

.dlwe-portal-shell .dlwe-checklist-detection-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px;
}

.dlwe-portal-shell .dlwe-checklist-detection-summary span {
  display: grid;
  gap: 3px;
  padding: 14px 15px;
  border: 1px solid #e5ddd1;
  border-radius: 12px;
  background: #fbf9f5;
  color: #756b61;
  font-size: 11px;
  line-height: 1.4;
}

.dlwe-portal-shell .dlwe-checklist-detection-summary strong {
  color: #1f1a16;
  font-size: 22px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-checklist-overview {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 22px;
}

.dlwe-portal-shell .dlwe-checklist-metric {
  display: grid;
  gap: 7px;
  min-height: 108px;
  padding: 17px;
  border: 1px solid #e5ddd1;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(31, 25, 18, 0.035);
}

.dlwe-portal-shell .dlwe-checklist-metric span {
  color: #7b7066;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-checklist-metric strong {
  align-self: end;
  color: #211c18;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 28px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-checklist-filter-grid {
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  margin-bottom: 18px;
  padding: 18px;
  border: 1px solid #e7dfd4;
  border-radius: 15px;
  background: #fbf9f5;
}

.dlwe-portal-shell .dlwe-checklist-live-scroll,
.dlwe-portal-shell .dlwe-checklist-preview-scroll {
  border: 1px solid #e5ddd1;
  border-radius: 16px;
  background: #fff;
  overflow: auto;
}

.dlwe-portal-shell .dlwe-checklist-live-table,
.dlwe-portal-shell .dlwe-checklist-upload-preview .dlwe-checklist-table {
  min-width: 1280px;
}

.dlwe-portal-shell .dlwe-checklist-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #201b17;
  color: #fff;
  font-size: 10px;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-checklist-table td {
  min-width: 150px;
  max-width: 330px;
  vertical-align: top;
  color: #403830;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-checklist-table td:first-child {
  min-width: 165px;
  background: #fbf8f3;
}

.dlwe-portal-shell .dlwe-checklist-table select,
.dlwe-portal-shell .dlwe-checklist-table textarea {
  width: 100%;
  min-width: 150px;
  border: 1px solid #dcd2c5;
  border-radius: 9px;
  background: #fff;
  font-size: 12px;
}

.dlwe-portal-shell .dlwe-checklist-table textarea {
  min-height: 76px;
  resize: vertical;
}

.dlwe-portal-shell .dlwe-checklist-section-pill {
  display: inline-flex;
  max-width: 220px;
  margin-bottom: 7px;
  padding: 6px 9px;
  border: 1px solid rgba(177, 137, 76, 0.3);
  border-radius: 999px;
  background: rgba(247, 239, 226, 0.86);
  color: #72522f;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.35;
}

.dlwe-portal-shell .dlwe-checklist-table td:first-child small,
.dlwe-portal-shell .dlwe-checklist-row-updated {
  display: block;
  margin-top: 8px;
  color: #8a8076;
  font-size: 10px;
  line-height: 1.4;
}

.dlwe-portal-shell .dlwe-checklist-source-text {
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;
}

.dlwe-portal-shell .dlwe-checklist-source-boolean {
  display: inline-flex;
  align-items: center;
  min-width: 58px;
  justify-content: center;
  padding: 5px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-checklist-source-boolean.is-true {
  background: #e9f3ea;
  color: #2f6e3b;
}

.dlwe-portal-shell .dlwe-checklist-source-boolean.is-false {
  background: #f4eee5;
  color: #87663f;
}

.dlwe-portal-shell .dlwe-checklist-preview-more td {
  padding: 16px;
  background: #f8f4ed !important;
  color: #6f655c;
  font-weight: 700;
  text-align: center;
}

@media (max-width: 1180px) {
  .dlwe-portal-shell .dlwe-checklist-overview {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-portal-shell .dlwe-checklist-detection-summary,
  .dlwe-portal-shell .dlwe-checklist-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .dlwe-portal-shell .dlwe-checklist-command-bar,
  .dlwe-portal-shell .dlwe-checklist-upload-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-checklist-import-meta {
    justify-items: start;
    text-align: left;
  }

  .dlwe-portal-shell .dlwe-checklist-upload-action {
    min-width: 0;
  }

  .dlwe-portal-shell .dlwe-checklist-overview,
  .dlwe-portal-shell .dlwe-checklist-detection-summary,
  .dlwe-portal-shell .dlwe-checklist-filter-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 520px) {
  .dlwe-portal-shell .dlwe-checklist-overview,
  .dlwe-portal-shell .dlwe-checklist-detection-summary,
  .dlwe-portal-shell .dlwe-checklist-filter-grid {
    grid-template-columns: 1fr;
  }
}


/* Version 4.4.1 — Excel-driven multi-day wedding rundown */
.dlwe-portal-shell .dlwe-timeline-command-bar {
  display: grid;
  grid-template-columns: minmax(280px, 420px) minmax(0, 1fr);
  gap: 22px;
  align-items: end;
  margin: 0 0 22px;
  padding: 20px 22px;
  border: 1px solid rgba(32, 28, 24, 0.10);
  border-radius: 18px;
  background: linear-gradient(135deg, #fffdf8 0%, #f8f2e8 100%);
  box-shadow: 0 12px 30px rgba(40, 31, 20, 0.06);
}

.dlwe-portal-shell .dlwe-timeline-import-meta {
  display: grid;
  gap: 4px;
  min-height: 48px;
  align-content: center;
  padding-left: 22px;
  border-left: 1px solid rgba(32, 28, 24, 0.10);
}

.dlwe-portal-shell .dlwe-timeline-import-meta strong {
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 20px;
  font-weight: 500;
  color: #201c18;
}

.dlwe-portal-shell .dlwe-timeline-import-meta span {
  color: #746b61;
  font-size: 13px;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-timeline-upload-card,
.dlwe-portal-shell .dlwe-timeline-upload-preview {
  margin-bottom: 22px;
}

.dlwe-portal-shell .dlwe-timeline-upload-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: end;
}

.dlwe-portal-shell .dlwe-timeline-upload-action {
  min-width: 210px;
}

.dlwe-portal-shell .dlwe-timeline-upload-action .dlwe-primary-button {
  width: 100%;
}

.dlwe-portal-shell .dlwe-timeline-detection-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 18px 0;
}

.dlwe-portal-shell .dlwe-timeline-detection-summary article {
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid rgba(177, 137, 76, 0.24);
  border-radius: 14px;
  background: rgba(250, 246, 238, 0.85);
}

.dlwe-portal-shell .dlwe-timeline-detection-summary strong {
  color: #241f1a;
  font-size: 14px;
}

.dlwe-portal-shell .dlwe-timeline-detection-summary span {
  color: #7b7166;
  font-size: 12px;
}

.dlwe-portal-shell .dlwe-timeline-preview-scroll {
  max-height: 420px;
  border: 1px solid rgba(32, 28, 24, 0.10);
  border-radius: 15px;
}

.dlwe-portal-shell .dlwe-timeline-preview-table {
  width: 100%;
  min-width: 800px;
  border-collapse: separate;
  border-spacing: 0;
}

.dlwe-portal-shell .dlwe-timeline-preview-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  padding: 13px 14px;
  background: #211d19;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-timeline-preview-table td {
  padding: 13px 14px;
  border-bottom: 1px solid rgba(32, 28, 24, 0.08);
  color: #403932;
  font-size: 13px;
  line-height: 1.5;
  vertical-align: top;
}

.dlwe-portal-shell .dlwe-timeline-preview-table small {
  color: #8b7f72;
}

.dlwe-portal-shell .dlwe-timeline-live-workspace {
  display: grid;
  gap: 20px;
}

.dlwe-portal-shell .dlwe-timeline-live-workspace.is-loading {
  opacity: 0.55;
  pointer-events: none;
}

.dlwe-portal-shell .dlwe-timeline-toolbar {
  grid-template-columns: minmax(260px, 1fr) minmax(190px, 250px) auto auto;
}

.dlwe-portal-shell .dlwe-timeline-day-tabs {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 3px 2px 8px;
  scrollbar-width: thin;
}

.dlwe-portal-shell .dlwe-timeline-day-tab {
  display: grid;
  gap: 3px;
  flex: 0 0 auto;
  min-width: 150px;
  padding: 13px 16px;
  border: 1px solid rgba(32, 28, 24, 0.13);
  border-radius: 14px;
  background: #fff;
  color: #373028;
  text-align: left;
  cursor: pointer;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.dlwe-portal-shell .dlwe-timeline-day-tab:hover {
  border-color: rgba(177, 137, 76, 0.65);
  transform: translateY(-1px);
}

.dlwe-portal-shell .dlwe-timeline-day-tab.is-active {
  border-color: #211d19;
  background: #211d19;
  color: #fff;
}

.dlwe-portal-shell .dlwe-timeline-day-tab span {
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 16px;
  line-height: 1.25;
}

.dlwe-portal-shell .dlwe-timeline-day-tab small {
  color: #897d70;
  font-size: 11px;
}

.dlwe-portal-shell .dlwe-timeline-day-tab.is-active small {
  color: rgba(255,255,255,0.66);
}

.dlwe-portal-shell .dlwe-timeline-events {
  display: grid;
  gap: 22px;
}

.dlwe-portal-shell .dlwe-timeline-event-card {
  overflow: hidden;
  border: 1px solid rgba(32, 28, 24, 0.11);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(37, 28, 18, 0.055);
}

.dlwe-portal-shell .dlwe-timeline-event-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  padding: 19px 22px;
  border-bottom: 1px solid rgba(32, 28, 24, 0.10);
  background: linear-gradient(120deg, #fbf7ef 0%, #f4ecdf 100%);
}

.dlwe-portal-shell .dlwe-timeline-event-header > div {
  display: grid;
  gap: 4px;
}

.dlwe-portal-shell .dlwe-timeline-event-header > div:last-child {
  justify-items: end;
  text-align: right;
}

.dlwe-portal-shell .dlwe-timeline-event-header span {
  color: #817568;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-timeline-event-header h2 {
  margin: 0;
  color: #211d19;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: clamp(21px, 2vw, 28px);
  font-weight: 500;
  line-height: 1.16;
}

.dlwe-portal-shell .dlwe-timeline-event-header strong {
  color: #302922;
  font-size: 13px;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-scroll {
  max-width: 100%;
  overflow: auto;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table {
  width: 100%;
  min-width: 980px;
  border-collapse: separate;
  border-spacing: 0;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  min-width: 145px;
  padding: 12px 13px;
  border-right: 1px solid rgba(255,255,255,0.10);
  background: #29241f;
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.075em;
  line-height: 1.4;
  text-align: left;
  text-transform: uppercase;
  vertical-align: bottom;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table th:first-child {
  min-width: 105px;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table th:nth-last-child(3) {
  min-width: 150px;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table th:nth-last-child(2) {
  min-width: 230px;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table th:last-child {
  min-width: 105px;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table td {
  padding: 14px 13px;
  border-right: 1px solid rgba(32, 28, 24, 0.07);
  border-bottom: 1px solid rgba(32, 28, 24, 0.08);
  background: #fff;
  color: #3e3730;
  font-size: 12px;
  line-height: 1.55;
  vertical-align: top;
  white-space: normal;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table tbody tr:nth-child(even):not(.dlwe-timeline-section-row) td {
  background: #fdfbf7;
}

.dlwe-portal-shell .dlwe-timeline-dynamic-table tbody tr:hover:not(.dlwe-timeline-section-row) td {
  background: #fffaf0;
}

.dlwe-portal-shell .dlwe-timeline-section-row td {
  padding: 10px 13px;
  background: #e8dcc9 !important;
  color: #2e261f;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.025em;
}

.dlwe-portal-shell .dlwe-timeline-live-status,
.dlwe-portal-shell .dlwe-timeline-live-notes {
  width: 100%;
  min-width: 130px;
  margin: 0;
  border: 1px solid rgba(32, 28, 24, 0.16);
  border-radius: 9px;
  background: #fff;
  color: #302a24;
  font: inherit;
}

.dlwe-portal-shell .dlwe-timeline-live-status {
  height: 38px;
  padding: 0 10px;
}

.dlwe-portal-shell .dlwe-timeline-live-notes {
  min-width: 210px;
  padding: 9px 10px;
  resize: vertical;
}

@media (max-width: 980px) {
  .dlwe-portal-shell .dlwe-timeline-command-bar {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-timeline-import-meta {
    padding: 15px 0 0;
    border-top: 1px solid rgba(32, 28, 24, 0.10);
    border-left: 0;
  }

  .dlwe-portal-shell .dlwe-timeline-toolbar {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 680px) {
  .dlwe-portal-shell .dlwe-timeline-command-bar,
  .dlwe-portal-shell .dlwe-timeline-event-header {
    padding: 16px;
  }

  .dlwe-portal-shell .dlwe-timeline-upload-grid,
  .dlwe-portal-shell .dlwe-timeline-toolbar {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell .dlwe-timeline-upload-action {
    min-width: 0;
  }

  .dlwe-portal-shell .dlwe-timeline-event-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .dlwe-portal-shell .dlwe-timeline-event-header > div:last-child {
    justify-items: start;
    text-align: left;
  }

  .dlwe-portal-shell .dlwe-timeline-day-tab {
    min-width: 135px;
  }
}

@media print {
  body.dlwe-print-timeline #dlwe-timeline-print-area {
    display: block !important;
  }

  body.dlwe-print-timeline #dlwe-timeline-print-area .dlwe-timeline-section-row td {
    background: #ece7de !important;
    color: #222 !important;
    font-weight: 700;
  }
}

/* Version 4.4.2: Wedding Lead Team access foundation */
.dlwe-portal-shell .dlwe-wedding-lead-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 18px;
  align-items: start;
}

.dlwe-portal-shell #dlwe_client_additional_leads {
  min-height: 148px;
  padding: 8px;
  background: #fffdfa;
}

.dlwe-portal-shell #dlwe_client_additional_leads option {
  padding: 9px 10px;
  border-radius: 7px;
}

.dlwe-portal-shell .dlwe-wedding-access-summary {
  display: grid;
  gap: 4px;
  margin-top: 16px;
  padding: 15px 17px;
  border: 1px solid rgba(177, 137, 76, 0.3);
  border-left: 4px solid #b1894c;
  border-radius: 12px;
  background: rgba(247, 241, 230, 0.64);
}

.dlwe-portal-shell .dlwe-wedding-access-summary.is-empty {
  border-color: rgba(117, 108, 97, 0.22);
  border-left-color: #8d847a;
  background: rgba(246, 243, 238, 0.72);
}

.dlwe-portal-shell .dlwe-wedding-access-summary strong {
  color: #1f1b17;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 16px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-wedding-access-summary span {
  color: #70675e;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-portal-shell .dlwe-team-divider {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 26px 0 14px;
  padding-top: 22px;
  border-top: 1px solid rgba(31, 27, 23, 0.1);
}

.dlwe-portal-shell .dlwe-team-divider h3 {
  margin: 0 0 4px;
  color: #211d19;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 20px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-team-divider p {
  margin: 0;
  color: #776e65;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-portal-shell [data-client-manager-only]:disabled {
  cursor: not-allowed;
  opacity: 0.68;
  background: #f3f0eb;
}

@media (max-width: 820px) {
  .dlwe-portal-shell .dlwe-wedding-lead-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-portal-shell #dlwe_client_additional_leads {
    min-height: 132px;
  }
}


/* Version 4.4.3: professional bulk task assignment and updates */
.dlwe-portal-shell .dlwe-task-bulk-bar {
  display: grid;
  grid-template-columns: minmax(210px, auto) minmax(220px, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin: 18px 0 16px;
  padding: 15px 17px;
  border: 1px solid rgba(177, 137, 76, 0.28);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(250, 246, 238, 0.96), rgba(255, 253, 249, 0.98));
  box-shadow: 0 10px 28px rgba(40, 31, 23, 0.05);
}

.dlwe-portal-shell .dlwe-task-bulk-select-all {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: #2a251f;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-portal-shell .dlwe-task-bulk-select-all input,
.dlwe-portal-shell .dlwe-task-select-control input,
.dlwe-portal-shell .dlwe-task-bulk-option > input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #171717;
}

.dlwe-portal-shell .dlwe-task-bulk-status {
  display: grid;
  gap: 2px;
}

.dlwe-portal-shell .dlwe-task-bulk-status strong {
  color: #211d19;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 17px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-task-bulk-status span {
  color: #7a7168;
  font-size: 12px;
}

.dlwe-portal-shell .dlwe-task-bulk-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
}

.dlwe-portal-shell .dlwe-task-card {
  position: relative;
}

.dlwe-portal-shell .dlwe-task-card.is-selected {
  border-color: rgba(177, 137, 76, 0.7);
  box-shadow: 0 0 0 2px rgba(177, 137, 76, 0.14), 0 14px 34px rgba(41, 31, 22, 0.08);
}

.dlwe-portal-shell .dlwe-task-select-control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  padding: 7px 10px;
  border: 1px solid rgba(177, 137, 76, 0.24);
  border-radius: 999px;
  background: rgba(248, 243, 234, 0.82);
  color: #6e6257;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: pointer;
}

.dlwe-portal-shell .dlwe-task-card.is-selected .dlwe-task-select-control {
  background: #1d1b18;
  border-color: #1d1b18;
  color: #fff;
}

.dlwe-portal-shell .dlwe-task-bulk-options {
  display: grid;
  gap: 12px;
}

.dlwe-portal-shell .dlwe-task-bulk-option {
  display: grid;
  grid-template-columns: 22px minmax(190px, .75fr) minmax(220px, 1fr);
  align-items: center;
  gap: 14px;
  margin: 0;
  padding: 15px 16px;
  border: 1px solid #e7dfd5;
  border-radius: 14px;
  background: #fff;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.dlwe-portal-shell .dlwe-task-bulk-option.is-enabled {
  border-color: rgba(177, 137, 76, 0.52);
  background: #fffcf7;
  box-shadow: 0 8px 24px rgba(62, 46, 31, 0.05);
}

.dlwe-portal-shell .dlwe-task-bulk-option > span {
  display: grid;
  gap: 3px;
}

.dlwe-portal-shell .dlwe-task-bulk-option > span strong {
  color: #211d19;
  font-size: 14px;
}

.dlwe-portal-shell .dlwe-task-bulk-option > span small {
  color: #7a7168;
  font-size: 12px;
  line-height: 1.45;
}

.dlwe-portal-shell .dlwe-task-bulk-option select,
.dlwe-portal-shell .dlwe-task-bulk-option input[type="date"] {
  width: 100%;
  margin: 0;
}

.dlwe-portal-shell .dlwe-task-bulk-option select:disabled,
.dlwe-portal-shell .dlwe-task-bulk-option input[type="date"]:disabled {
  opacity: .46;
  cursor: not-allowed;
}

.dlwe-portal-shell .dlwe-task-bulk-review-panel {
  margin: 18px 0 0;
  padding: 15px 17px;
  border-left: 4px solid #b1894c;
  border-radius: 12px;
  background: rgba(247, 241, 230, 0.72);
}

.dlwe-portal-shell .dlwe-task-bulk-review-panel strong {
  display: block;
  color: #262019;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 17px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-task-bulk-review-panel p {
  margin: 4px 0 0;
  color: #74695f;
  font-size: 12px;
  line-height: 1.55;
}

@media (max-width: 940px) {
  .dlwe-portal-shell .dlwe-task-bulk-bar {
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-portal-shell .dlwe-task-bulk-buttons {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}

@media (max-width: 680px) {
  .dlwe-portal-shell .dlwe-task-bulk-bar {
    grid-template-columns: 1fr;
    align-items: flex-start;
  }

  .dlwe-portal-shell .dlwe-task-bulk-buttons {
    grid-column: auto;
    width: 100%;
  }

  .dlwe-portal-shell .dlwe-task-bulk-buttons .dlwe-primary-button,
  .dlwe-portal-shell .dlwe-task-bulk-buttons .dlwe-secondary-button {
    flex: 1 1 140px;
  }

  .dlwe-portal-shell .dlwe-task-bulk-option {
    grid-template-columns: 22px 1fr;
  }

  .dlwe-portal-shell .dlwe-task-bulk-option select,
  .dlwe-portal-shell .dlwe-task-bulk-option input[type="date"] {
    grid-column: 1 / -1;
  }
}


/* Version 4.4.4: consolidated task notification guidance */
.dlwe-portal-shell .dlwe-task-email-summary-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px 16px;
  border: 1px solid rgba(177, 137, 76, 0.24);
  border-radius: 12px;
  background: rgba(247, 241, 230, 0.62);
}

.dlwe-portal-shell .dlwe-task-email-summary-note > div {
  display: grid;
  gap: 3px;
}

.dlwe-portal-shell .dlwe-task-email-summary-note strong {
  color: #27211b;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 15px;
  font-weight: 500;
}

.dlwe-portal-shell .dlwe-task-email-summary-note span {
  color: #746b62;
  font-size: 12px;
  line-height: 1.55;
}


/* Version 4.4.5: secure email attachment continuation */
.dlwe-auth-shell .dlwe-alert-success a {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
}

/* Version 4.4.6: Lead vendor creation and Manager vendor administration */
.dlwe-portal-shell .dlwe-vendor-editor {
  margin-top: 24px;
}

.dlwe-portal-shell .dlwe-vendor-editor[hidden],
.dlwe-portal-shell [data-vendor-manager-only][hidden] {
  display: none !important;
}

.dlwe-portal-shell #dlwe_vendor_linked_weddings {
  min-height: 144px;
  padding: 10px 12px;
}

.dlwe-portal-shell #dlwe_vendor_linked_weddings option {
  padding: 7px 6px;
}

.dlwe-portal-shell .dlwe-checkbox-field {
  display: flex;
  align-items: center;
  min-height: 54px;
}

.dlwe-portal-shell .dlwe-checkbox-field label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
}

.dlwe-portal-shell .dlwe-checkbox-field input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
}

.dlwe-portal-shell .dlwe-vendor-record-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(35, 29, 23, 0.09);
  color: #786f65;
  font-size: 12px;
  line-height: 1.5;
}

.dlwe-portal-shell .dlwe-vendor-danger-action,
.dlwe-portal-shell .dlwe-danger-outline-button {
  color: #8f342c;
}

.dlwe-portal-shell .dlwe-danger-outline-button {
  border-color: rgba(143, 52, 44, 0.32);
  background: rgba(143, 52, 44, 0.035);
}

.dlwe-portal-shell .dlwe-danger-outline-button:hover,
.dlwe-portal-shell .dlwe-danger-outline-button:focus {
  border-color: rgba(143, 52, 44, 0.58);
  background: rgba(143, 52, 44, 0.08);
}

.dlwe-portal-shell .dlwe-vendor-form-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}

.dlwe-portal-shell .dlwe-vendor-manager-actions,
.dlwe-portal-shell .dlwe-vendor-save-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

@media (max-width: 720px) {
  .dlwe-portal-shell .dlwe-vendor-form-actions,
  .dlwe-portal-shell .dlwe-vendor-manager-actions,
  .dlwe-portal-shell .dlwe-vendor-save-actions {
    align-items: stretch;
    flex-direction: column;
    width: 100%;
  }

  .dlwe-portal-shell .dlwe-vendor-form-actions button,
  .dlwe-portal-shell .dlwe-vendor-manager-actions button,
  .dlwe-portal-shell .dlwe-vendor-save-actions button {
    width: 100%;
  }
}


/* Version 4.5.1 — Company Calendar */
.dlwe-calendar-header {
  align-items: flex-start;
}

.dlwe-calendar-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
  border: 1px solid #ded5c9;
  background: #fffdf9;
}

.dlwe-calendar-navigation,
.dlwe-calendar-toolbar-right,
.dlwe-calendar-step-buttons,
.dlwe-calendar-view-switch {
  display: flex;
  align-items: center;
  gap: 10px;
}

.dlwe-calendar-navigation h2 {
  margin: 0 0 0 6px;
  min-width: 260px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(22px, 2vw, 31px);
  font-weight: 500;
  color: #181818;
}

.dlwe-calendar-icon-button {
  width: 38px;
  height: 38px;
  border: 1px solid #d8cec1;
  border-radius: 50%;
  background: #fff;
  color: #1b1b1b;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}

.dlwe-calendar-icon-button:hover,
.dlwe-calendar-icon-button:focus-visible {
  border-color: #a98651;
  background: #f8f2e9;
}

.dlwe-calendar-date-jump {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #6f675f;
}

.dlwe-calendar-date-jump input {
  width: 150px;
}

.dlwe-calendar-view-switch {
  padding: 4px;
  border: 1px solid #d8cec1;
  border-radius: 6px;
  background: #f7f2eb;
}

.dlwe-calendar-view-switch button {
  min-height: 34px;
  padding: 7px 11px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #625b54;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-calendar-view-switch button:hover,
.dlwe-calendar-view-switch button:focus-visible,
.dlwe-calendar-view-switch button.is-active {
  background: #171717;
  color: #fff;
}

.dlwe-calendar-filterbar {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(180px, 240px) auto auto;
  align-items: end;
  gap: 14px;
  margin: 14px 0;
  padding: 14px 16px;
  border: 1px solid #e3dbd0;
  background: #faf7f2;
}

.dlwe-calendar-filterbar label:not(.dlwe-calendar-checkbox) {
  display: grid;
  gap: 6px;
}

.dlwe-calendar-filterbar label > span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #72695f;
}

.dlwe-calendar-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  white-space: nowrap;
}

.dlwe-calendar-checkbox input {
  width: 17px !important;
  height: 17px !important;
  min-height: 0 !important;
}

.dlwe-calendar-generated {
  justify-self: end;
  align-self: center;
  font-size: 12px;
  color: #877e74;
}

.dlwe-calendar-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 14px;
}

.dlwe-calendar-summary article {
  padding: 15px 17px;
  border: 1px solid #e0d7cc;
  background: #fffdf9;
}

.dlwe-calendar-summary span {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #766d64;
}

.dlwe-calendar-summary strong {
  display: block;
  margin-top: 5px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 26px;
  font-weight: 500;
}

.dlwe-calendar-stage-wrap {
  overflow: auto;
  border: 1px solid #dcd3c8;
  background: #fff;
  box-shadow: 0 14px 38px rgba(38, 30, 21, .06);
}

.dlwe-calendar-stage {
  min-width: 740px;
}

.dlwe-calendar-month-weekdays,
.dlwe-calendar-month-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.dlwe-calendar-month-weekdays {
  position: sticky;
  top: 0;
  z-index: 3;
  border-bottom: 1px solid #ded6cb;
  background: #f7f2eb;
}

.dlwe-calendar-month-weekdays span {
  padding: 11px 8px;
  border-right: 1px solid #e3dbd0;
  text-align: center;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .09em;
  color: #71685f;
}

.dlwe-calendar-month-day {
  position: relative;
  min-height: 132px;
  padding: 8px;
  border-right: 1px solid #e7e0d8;
  border-bottom: 1px solid #e7e0d8;
  background: #fff;
}

.dlwe-calendar-month-day:nth-child(7n) {
  border-right: 0;
}

.dlwe-calendar-month-day.is-outside {
  background: #faf8f5;
}

.dlwe-calendar-month-day.is-outside .dlwe-calendar-day-number {
  color: #b9b0a7;
}

.dlwe-calendar-day-number {
  width: 29px;
  height: 29px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #3b3733;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-calendar-month-day.is-today .dlwe-calendar-day-number,
.dlwe-calendar-week-day.is-today strong,
.dlwe-calendar-year-day.is-today span {
  background: #171717;
  color: #fff;
}

.dlwe-calendar-month-events {
  display: grid;
  gap: 4px;
  margin-top: 4px;
}

.dlwe-calendar-event {
  display: flex;
  align-items: center;
  gap: 7px;
  width: 100%;
  min-height: 34px;
  padding: 7px 9px;
  border: 0;
  border-left: 4px solid #a98651;
  border-radius: 4px;
  background: #f5efe6;
  color: #26221e;
  text-align: left;
  cursor: pointer;
}

.dlwe-calendar-event span:not(.dlwe-calendar-lock) {
  overflow: hidden;
  flex: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 700;
}

.dlwe-calendar-event small {
  font-size: 10px;
  color: #6f655a;
}

.dlwe-calendar-event.is-compact {
  min-height: 26px;
  padding: 4px 6px;
}

.dlwe-calendar-event:hover,
.dlwe-calendar-event:focus-visible {
  filter: brightness(.97);
  box-shadow: 0 4px 12px rgba(31, 24, 17, .1);
}

.dlwe-calendar-lock {
  color: #92713f;
  font-size: 7px;
}

.dlwe-calendar-event.is-confirmed,
.dlwe-calendar-agenda-item.is-confirmed,
.dlwe-calendar-status-pill.is-confirmed { border-color: #506f5d; background: #edf4ef; }
.dlwe-calendar-event.is-planning,
.dlwe-calendar-agenda-item.is-planning,
.dlwe-calendar-status-pill.is-planning { border-color: #a98651; background: #f6efe4; }
.dlwe-calendar-event.is-on-hold,
.dlwe-calendar-agenda-item.is-on-hold,
.dlwe-calendar-status-pill.is-on-hold { border-color: #a97832; background: #fbf1dc; }
.dlwe-calendar-event.is-completed,
.dlwe-calendar-agenda-item.is-completed,
.dlwe-calendar-status-pill.is-completed { border-color: #777; background: #f0f0ef; }
.dlwe-calendar-event.is-cancelled,
.dlwe-calendar-agenda-item.is-cancelled,
.dlwe-calendar-status-pill.is-cancelled { border-color: #9c5555; background: #f8eaea; text-decoration: line-through; }

.dlwe-calendar-more {
  padding: 2px 5px;
  border: 0;
  background: transparent;
  color: #83663c;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-calendar-all-day {
  display: grid;
  grid-template-columns: 90px 1fr;
  min-height: 76px;
  border-bottom: 1px solid #ded6cb;
}

.dlwe-calendar-all-day > span,
.dlwe-calendar-week-all-day > span {
  padding: 13px 10px;
  text-align: right;
  font-size: 11px;
  color: #736a61;
  background: #faf7f2;
}

.dlwe-calendar-all-day > div {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  align-content: start;
  gap: 6px;
  padding: 9px;
}

.dlwe-calendar-empty-inline {
  margin: 7px;
  color: #8d847a;
  font-size: 13px;
}

.dlwe-calendar-time-grid {
  display: grid;
  grid-template-columns: 90px 1fr;
}

.dlwe-calendar-hour-label,
.dlwe-calendar-week-hour-label {
  min-height: 54px;
  padding: 6px 10px;
  border-right: 1px solid #e3dcd3;
  border-bottom: 1px solid #eee8e1;
  text-align: right;
  font-size: 10px;
  color: #8b8279;
  background: #faf8f5;
}

.dlwe-calendar-hour-slot,
.dlwe-calendar-week-hour-slot {
  min-height: 54px;
  border-bottom: 1px solid #eee8e1;
  background: linear-gradient(to right, transparent 0, transparent 100%);
}

.dlwe-calendar-week-header,
.dlwe-calendar-week-all-day,
.dlwe-calendar-week-time-grid {
  display: grid;
  grid-template-columns: 68px repeat(7, minmax(118px, 1fr));
}

.dlwe-calendar-week-header {
  position: sticky;
  top: 0;
  z-index: 4;
  border-bottom: 1px solid #ded6cb;
  background: #fff;
}

.dlwe-calendar-week-day {
  display: grid;
  place-items: center;
  gap: 3px;
  min-height: 65px;
  border-left: 1px solid #e8e1d9;
}

.dlwe-calendar-week-day span {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  color: #756d64;
}

.dlwe-calendar-week-day strong {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-size: 14px;
}

.dlwe-calendar-week-all-day {
  min-height: 88px;
  border-bottom: 1px solid #dcd4ca;
}

.dlwe-calendar-week-all-day-cell {
  display: grid;
  align-content: start;
  gap: 4px;
  padding: 6px;
  border-left: 1px solid #e8e1d9;
}

.dlwe-calendar-week-time-grid {
  grid-auto-flow: row;
}

.dlwe-calendar-week-hour-slot {
  border-left: 1px solid #ebe4dc;
}

.dlwe-calendar-year-view {
  display: grid;
  grid-template-columns: repeat(3, minmax(250px, 1fr));
  gap: 22px;
  padding: 24px;
  background: #fffdf9;
}

.dlwe-calendar-year-month {
  min-width: 0;
}

.dlwe-calendar-year-month > header {
  margin-bottom: 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
}

.dlwe-calendar-year-weekdays,
.dlwe-calendar-year-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

.dlwe-calendar-year-weekdays span {
  padding: 4px 0;
  text-align: center;
  font-size: 9px;
  font-weight: 800;
  color: #8a8177;
}

.dlwe-calendar-year-day {
  position: relative;
  min-height: 32px;
  padding: 2px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #37332f;
  font-size: 10px;
  cursor: pointer;
}

.dlwe-calendar-year-day span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  margin: auto;
  border-radius: 50%;
}

.dlwe-calendar-year-day i {
  position: absolute;
  right: 0;
  bottom: 1px;
  display: grid;
  place-items: center;
  min-width: 13px;
  height: 13px;
  padding: 0 3px;
  border-radius: 8px;
  background: #a98651;
  color: #fff;
  font-size: 8px;
  font-style: normal;
}

.dlwe-calendar-year-day.is-outside {
  color: #c7bfb6;
}

.dlwe-calendar-year-day.has-events:hover,
.dlwe-calendar-year-day.has-events:focus-visible {
  background: #f2e9dc;
}

.dlwe-calendar-agenda {
  display: grid;
  padding: 8px 20px 22px;
}

.dlwe-calendar-agenda-item {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px 0;
  border-bottom: 1px solid #e5ddd3;
  border-left: 5px solid #a98651;
  padding-left: 14px;
}

.dlwe-calendar-agenda-date {
  text-align: center;
}

.dlwe-calendar-agenda-date span {
  display: block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #826941;
}

.dlwe-calendar-agenda-date strong {
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  font-weight: 500;
}

.dlwe-calendar-agenda-item p,
.dlwe-calendar-agenda-item h3,
.dlwe-calendar-agenda-item small {
  margin: 0;
}

.dlwe-calendar-agenda-item p {
  font-size: 11px;
  color: #827970;
}

.dlwe-calendar-agenda-item h3 {
  margin: 3px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 500;
}

.dlwe-calendar-empty-state {
  padding: 70px 20px;
  text-align: center;
  color: #81776d;
}

.dlwe-calendar-empty-state strong {
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  color: #2a2724;
}

.dlwe-calendar-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 13px;
  font-size: 11px;
  color: #71685f;
}

.dlwe-calendar-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.dlwe-calendar-legend i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #a98651;
}

.dlwe-calendar-legend i.is-confirmed { background: #506f5d; }
.dlwe-calendar-legend i.is-planning { background: #a98651; }
.dlwe-calendar-legend i.is-on-hold { background: #a97832; }
.dlwe-calendar-legend i.is-completed { background: #777; }
.dlwe-calendar-legend i.is-cancelled { background: #9c5555; }

body.dlwe-calendar-modal-open {
  overflow: hidden;
}

.dlwe-calendar-modal[hidden] {
  display: none !important;
}

.dlwe-calendar-modal {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 20px;
}

.dlwe-calendar-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(19, 17, 15, .64);
  backdrop-filter: blur(3px);
}

.dlwe-calendar-modal-card {
  position: relative;
  z-index: 1;
  width: min(620px, 100%);
  max-height: calc(100vh - 40px);
  overflow: auto;
  padding: 30px;
  border: 1px solid #d7cbbc;
  background: #fffdf9;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .28);
}

.dlwe-calendar-modal-card h2 {
  margin: 4px 38px 10px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  font-weight: 500;
}

.dlwe-calendar-modal-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 34px;
  height: 34px;
  border: 1px solid #d9cfc3;
  border-radius: 50%;
  background: #fff;
  font-size: 23px;
  cursor: pointer;
}

.dlwe-calendar-modal-status {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: #71685f;
  font-size: 12px;
}

.dlwe-calendar-status-pill {
  display: inline-flex;
  padding: 6px 9px;
  border-left: 4px solid #a98651;
  border-radius: 3px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.dlwe-calendar-modal-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid #e4dbd0;
  border-left: 1px solid #e4dbd0;
}

.dlwe-calendar-modal-details > div {
  min-width: 0;
  padding: 13px 14px;
  border-right: 1px solid #e4dbd0;
  border-bottom: 1px solid #e4dbd0;
}

.dlwe-calendar-modal-details span,
.dlwe-calendar-modal-details strong {
  display: block;
}

.dlwe-calendar-modal-details span {
  margin-bottom: 4px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #837970;
}

.dlwe-calendar-modal-details strong {
  overflow-wrap: anywhere;
  font-size: 13px;
  font-weight: 650;
}

.dlwe-calendar-modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 22px;
}

@media (max-width: 1180px) {
  .dlwe-calendar-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .dlwe-calendar-toolbar-right {
    width: 100%;
    justify-content: space-between;
  }

  .dlwe-calendar-year-view {
    grid-template-columns: repeat(2, minmax(250px, 1fr));
  }
}

@media (max-width: 760px) {
  .dlwe-calendar-navigation,
  .dlwe-calendar-toolbar-right {
    align-items: stretch;
    flex-wrap: wrap;
  }

  .dlwe-calendar-navigation h2 {
    width: 100%;
    min-width: 0;
    margin: 6px 0 0;
  }

  .dlwe-calendar-date-jump {
    width: 100%;
    justify-content: space-between;
  }

  .dlwe-calendar-date-jump input {
    flex: 1;
  }

  .dlwe-calendar-view-switch {
    width: 100%;
    overflow-x: auto;
  }

  .dlwe-calendar-view-switch button {
    flex: 1 0 auto;
  }

  .dlwe-calendar-filterbar {
    grid-template-columns: 1fr;
  }

  .dlwe-calendar-generated {
    justify-self: start;
  }

  .dlwe-calendar-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-calendar-year-view {
    grid-template-columns: 1fr;
  }

  .dlwe-calendar-modal-details {
    grid-template-columns: 1fr;
  }

  .dlwe-calendar-modal-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-calendar-agenda-item {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  .dlwe-calendar-agenda-item > button {
    grid-column: 1 / -1;
  }
}

/* Version 4.5.1 — Calendar meetings, invitations and reminders */
.dlwe-calendar-filterbar {
  grid-template-columns: minmax(240px, 1fr) minmax(155px, 190px) minmax(165px, 210px) auto auto;
}

.dlwe-calendar-event.is-meeting,
.dlwe-calendar-event.is-meeting-event,
.dlwe-calendar-agenda-item.is-meeting,
.dlwe-calendar-agenda-item.is-meeting-event,
.dlwe-calendar-status-pill.is-meeting {
  border-color: #526b91;
  background: #edf2f8;
}

.dlwe-calendar-legend i.is-meeting {
  background: #526b91;
}

.dlwe-calendar-event.is-task,
.dlwe-calendar-event.is-task-event,
.dlwe-calendar-agenda-item.is-task,
.dlwe-calendar-agenda-item.is-task-event,
.dlwe-calendar-status-pill.is-task,
.dlwe-calendar-event.is-task-progress,
.dlwe-calendar-agenda-item.is-task-progress,
.dlwe-calendar-status-pill.is-task-progress,
.dlwe-calendar-event.is-task-review,
.dlwe-calendar-agenda-item.is-task-review,
.dlwe-calendar-status-pill.is-task-review {
  border-color: #75588f;
  background: #f3eef8;
}

.dlwe-calendar-event.is-task-overdue,
.dlwe-calendar-agenda-item.is-task-overdue,
.dlwe-calendar-status-pill.is-task-overdue {
  border-color: #a44343;
  background: #faecec;
}

.dlwe-calendar-legend i.is-task {
  background: #75588f;
}

.dlwe-calendar-legend i.is-task-overdue {
  background: #a44343;
}

.dlwe-calendar-event-time {
  flex: 0 0 auto;
  font-size: 10px;
  letter-spacing: .01em;
  color: #354d73;
}

.dlwe-calendar-event.is-compact .dlwe-calendar-event-time {
  font-size: 9px;
}

.dlwe-calendar-hour-slot,
.dlwe-calendar-week-hour-slot {
  display: grid;
  align-content: start;
  gap: 4px;
  padding: 3px 5px;
}

.dlwe-calendar-hour-slot .dlwe-calendar-event {
  max-width: 520px;
}

.dlwe-calendar-week-hour-slot .dlwe-calendar-event {
  min-height: 30px;
  padding: 4px 5px;
}

.dlwe-calendar-week-hour-slot .dlwe-calendar-event-time {
  display: block;
}

.dlwe-calendar-week-day {
  width: 100%;
  padding: 0;
  border: 0;
  border-left: 1px solid #e8e1d9;
  border-radius: 0;
  background: #fff;
  color: inherit;
  cursor: pointer;
}

.dlwe-calendar-week-day:hover,
.dlwe-calendar-week-day:focus-visible {
  background: #faf7f2;
}

.dlwe-calendar-modal-actions > a.dlwe-primary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.dlwe-meeting-form-card {
  width: min(820px, 100%);
}

.dlwe-meeting-form-grid {
  margin-top: 20px;
}

.dlwe-meeting-attendees {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  max-height: 260px;
  overflow: auto;
  padding: 10px;
  border: 1px solid #ded5c9;
  background: #faf7f2;
}

.dlwe-meeting-attendees label {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #e6ddd2;
  background: #fff;
  cursor: pointer;
}

.dlwe-meeting-attendees label:hover {
  border-color: #b89a6a;
  background: #fffdf9;
}

.dlwe-meeting-attendees input {
  flex: 0 0 auto;
  width: 17px !important;
  height: 17px !important;
  min-height: 0 !important;
  margin-top: 2px;
}

.dlwe-meeting-attendees label > span {
  min-width: 0;
}

.dlwe-meeting-attendees strong,
.dlwe-meeting-attendees small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-meeting-attendees strong {
  font-size: 13px;
}

.dlwe-meeting-attendees small {
  margin-top: 2px;
  color: #7a7168;
  font-size: 10px;
}

@media (max-width: 1180px) {
  .dlwe-calendar-filterbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-calendar-generated {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .dlwe-calendar-filterbar,
  .dlwe-meeting-attendees {
    grid-template-columns: 1fr;
  }
}


/* Version 4.5.4 — dark panel heading contrast hardening
   Keeps headings, descriptions and metadata readable wherever the shared
   approval/detail banner is rendered on a dark surface. */
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading {
  color: #ffffff !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading h1,
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading h2,
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading h3,
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading h4,
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading strong:not(.dlwe-approval-amount) {
  color: #ffffff !important;
  opacity: 1 !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading p,
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading small,
.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading span:not(.dlwe-approval-amount) {
  color: rgba(255, 255, 255, 0.78) !important;
  opacity: 1 !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading .dlwe-eyebrow {
  color: #d7ba82 !important;
}

.dlwe-portal-shell .dlwe-panel .dlwe-approval-heading .dlwe-approval-amount {
  color: #e1c58f !important;
}

/* Shared dark feature surfaces used throughout dashboard, workspace, HR,
   reporting and system-reset modules. */
.dlwe-portal-shell .dlwe-home-hero h1,
.dlwe-portal-shell .dlwe-home-hero h2,
.dlwe-portal-shell .dlwe-home-hero h3,
.dlwe-portal-shell .dlwe-workspace-hero h1,
.dlwe-portal-shell .dlwe-workspace-hero h2,
.dlwe-portal-shell .dlwe-workspace-hero h3,
.dlwe-portal-shell .dlwe-welcome-panel h1,
.dlwe-portal-shell .dlwe-welcome-panel h2,
.dlwe-portal-shell .dlwe-welcome-panel h3,
.dlwe-portal-shell .dlwe-personal-summary-card h1,
.dlwe-portal-shell .dlwe-personal-summary-card h2,
.dlwe-portal-shell .dlwe-personal-summary-card h3,
.dlwe-portal-shell .dlwe-hr-clock-card h1,
.dlwe-portal-shell .dlwe-hr-clock-card h2,
.dlwe-portal-shell .dlwe-hr-clock-card h3,
.dlwe-portal-shell .dlwe-report-currency-heading h1,
.dlwe-portal-shell .dlwe-report-currency-heading h2,
.dlwe-portal-shell .dlwe-report-currency-heading h3,
.dlwe-portal-shell .dlwe-reset-confirmation h1,
.dlwe-portal-shell .dlwe-reset-confirmation h2,
.dlwe-portal-shell .dlwe-reset-confirmation h3 {
  color: #ffffff !important;
  opacity: 1 !important;
}

.dlwe-portal-shell .dlwe-home-hero .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-workspace-hero .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-welcome-panel .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-personal-summary-card .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-hr-clock-card .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-report-currency-heading .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-reset-confirmation .dlwe-eyebrow {
  color: #d7ba82 !important;
}

.dlwe-portal-shell .dlwe-home-hero p,
.dlwe-portal-shell .dlwe-workspace-hero p,
.dlwe-portal-shell .dlwe-welcome-panel p,
.dlwe-portal-shell .dlwe-personal-summary-card p,
.dlwe-portal-shell .dlwe-hr-clock-card p,
.dlwe-portal-shell .dlwe-report-currency-heading p,
.dlwe-portal-shell .dlwe-reset-confirmation p {
  color: rgba(255, 255, 255, 0.78) !important;
}

/* ================================================================
 * Phase 6A-1 — Couple Portal
 * ================================================================ */
body.dlwe-couple-portal-page,
body.dlwe-couple-login-page {
  background: #f4efe7;
}

body.dlwe-couple-portal-page {
  margin: 0 !important;
  overflow-x: hidden !important;
}

body.dlwe-couple-portal-page #page > header,
body.dlwe-couple-portal-page #masthead,
body.dlwe-couple-portal-page .site-header,
body.dlwe-couple-portal-page .page-header,
body.dlwe-couple-portal-page .entry-header,
body.dlwe-couple-portal-page #page > footer,
body.dlwe-couple-portal-page #colophon,
body.dlwe-couple-portal-page .site-footer,
body.dlwe-couple-portal-page .footer-widget-area {
  display: none !important;
}

body.dlwe-couple-portal-page #content,
body.dlwe-couple-portal-page .site-content,
body.dlwe-couple-portal-page .content-area,
body.dlwe-couple-portal-page .site-main,
body.dlwe-couple-portal-page article,
body.dlwe-couple-portal-page .entry-content,
body.dlwe-couple-portal-page .wp-block-post-content,
body.dlwe-couple-portal-page .container,
body.dlwe-couple-portal-page .container-fluid,
body.dlwe-couple-portal-page .vc_row,
body.dlwe-couple-portal-page .wpb_wrapper {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.dlwe-couple-shell {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: none;
  min-height: 100vh;
  min-height: 100dvh;
  margin-left: -50vw;
  background:
    radial-gradient(circle at top right, rgba(197, 163, 107, 0.16), transparent 34rem),
    #f4efe7;
  color: #27221d;
}

.dlwe-couple-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 20px clamp(20px, 4vw, 64px);
  background: rgba(24, 21, 18, 0.97);
  border-bottom: 1px solid rgba(197, 163, 107, 0.35);
  color: #fff;
  backdrop-filter: blur(16px);
}

.dlwe-couple-topbar .dlwe-sidebar-brand,
.dlwe-couple-topbar .dlwe-sidebar-subtitle {
  color: #fff;
}

.dlwe-couple-user {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dlwe-couple-user > span:not(.dlwe-user-avatar) {
  display: grid;
  gap: 2px;
}

.dlwe-couple-user small {
  color: rgba(255, 255, 255, 0.68);
}

.dlwe-couple-main {
  width: min(1320px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(30px, 5vw, 72px) 0 56px;
}

.dlwe-couple-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 32px;
  align-items: center;
  padding: clamp(30px, 5vw, 64px);
  background: #181512;
  border: 1px solid rgba(197, 163, 107, 0.5);
  color: #fff;
  box-shadow: 0 24px 70px rgba(44, 35, 25, 0.14);
}

.dlwe-couple-hero h1 {
  margin: 5px 0 12px;
  color: #fff !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 6vw, 76px);
  font-weight: 400;
  line-height: 1.05;
}

.dlwe-couple-hero .dlwe-eyebrow {
  color: #d6b77e !important;
}

.dlwe-couple-hero .dlwe-muted {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 16px;
  line-height: 1.75;
}

.dlwe-couple-countdown {
  min-width: 210px;
  padding: 28px;
  border: 1px solid rgba(214, 183, 126, 0.46);
  background: rgba(255, 255, 255, 0.04);
  text-align: center;
}

.dlwe-couple-countdown span,
.dlwe-couple-countdown small {
  display: block;
  color: rgba(255, 255, 255, 0.64);
}

.dlwe-couple-countdown strong {
  display: block;
  margin: 10px 0;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(44px, 7vw, 78px);
  font-weight: 400;
}

.dlwe-couple-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin: 22px 0;
}

.dlwe-couple-summary-card,
.dlwe-couple-card {
  background: #fff;
  border: 1px solid #dfd2c1;
  box-shadow: 0 16px 38px rgba(52, 42, 31, 0.07);
}

.dlwe-couple-summary-card {
  display: grid;
  gap: 7px;
  min-height: 136px;
  padding: 24px;
}

.dlwe-couple-summary-card span,
.dlwe-couple-summary-card small {
  color: #81766a;
}

.dlwe-couple-summary-card span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.dlwe-couple-summary-card strong {
  color: #27221d;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-weight: 400;
}

.dlwe-couple-content-grid {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  gap: 22px;
  margin-bottom: 22px;
}

.dlwe-couple-card {
  padding: clamp(24px, 4vw, 40px);
}

.dlwe-couple-card + .dlwe-couple-card {
  margin-top: 0;
}

.dlwe-couple-card-heading {
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid #eadfce;
}

.dlwe-couple-card-heading h2 {
  margin: 4px 0 0;
  color: #27221d;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 30px;
  font-weight: 400;
}

.dlwe-couple-detail-list {
  display: grid;
  gap: 0;
}

.dlwe-couple-detail-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.7fr) minmax(0, 1.3fr);
  gap: 18px;
  padding: 15px 0;
  border-bottom: 1px solid #eee5da;
}

.dlwe-couple-detail-row:last-child {
  border-bottom: 0;
}

.dlwe-couple-detail-row span {
  color: #81766a;
}

.dlwe-couple-detail-row strong {
  color: #27221d;
  font-weight: 600;
}

.dlwe-couple-team-list,
.dlwe-couple-access-list {
  display: grid;
  gap: 14px;
}

.dlwe-couple-team-member,
.dlwe-couple-access-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  border: 1px solid #e5d8c8;
  background: #faf7f2;
}

.dlwe-couple-team-member > div,
.dlwe-couple-access-identity,
.dlwe-couple-access-identity > div {
  display: grid;
  gap: 4px;
}

.dlwe-couple-team-member {
  justify-content: flex-start;
}

.dlwe-couple-team-member span,
.dlwe-couple-team-member a,
.dlwe-couple-access-identity span,
.dlwe-couple-access-identity small {
  color: #81766a;
  font-size: 13px;
}

.dlwe-couple-team-member a {
  color: #89672f;
  text-decoration: none;
}

.dlwe-couple-progress-panel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 30px;
  align-items: center;
  margin-bottom: 28px;
}

.dlwe-couple-progress-ring {
  --dlwe-progress: 0;
  display: grid;
  place-items: center;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: conic-gradient(#9a7840 calc(var(--dlwe-progress) * 1%), #eadfce 0);
}

.dlwe-couple-progress-ring::before {
  content: "";
  grid-area: 1 / 1;
  width: 116px;
  height: 116px;
  border-radius: 50%;
  background: #fff;
}

.dlwe-couple-progress-ring > div {
  position: relative;
  z-index: 1;
  grid-area: 1 / 1;
  display: grid;
  gap: 2px;
  text-align: center;
}

.dlwe-couple-progress-ring strong {
  color: #27221d;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  font-weight: 400;
}

.dlwe-couple-progress-ring span {
  color: #81766a;
  font-size: 11px;
}

.dlwe-couple-progress-copy > strong {
  color: #27221d;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-weight: 400;
}

.dlwe-couple-progress-copy p {
  color: #6e655c;
  line-height: 1.65;
}

.dlwe-couple-progress-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  color: #81766a;
}

.dlwe-couple-progress-stats b {
  color: #27221d;
}

.dlwe-couple-milestone-list {
  display: grid;
  gap: 10px;
}

.dlwe-couple-milestone {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px 0;
  border-top: 1px solid #eee5da;
}

.dlwe-couple-milestone-marker {
  width: 12px;
  height: 12px;
  border: 2px solid #b99b69;
  border-radius: 50%;
  background: #fff;
}

.dlwe-couple-milestone.is-complete .dlwe-couple-milestone-marker,
.dlwe-couple-milestone.is-completed .dlwe-couple-milestone-marker {
  background: #6d845f;
  border-color: #6d845f;
}

.dlwe-couple-milestone > div {
  display: grid;
  gap: 3px;
}

.dlwe-couple-milestone > div span,
.dlwe-couple-milestone small {
  color: #81766a;
}

.dlwe-couple-footer {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 28px 2px 0;
  color: #81766a;
  font-size: 12px;
}

.dlwe-couple-access-section {
  position: relative;
}

.dlwe-couple-access-create {
  margin-top: 20px;
  padding: 20px;
  border: 1px dashed #cbb89e;
  background: #faf7f2;
}

.dlwe-couple-access-identity {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
}

.dlwe-couple-access-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.dlwe-danger-text {
  color: #9b3f35 !important;
}

.dlwe-alert-info {
  background: #f5efe5;
  border-color: #d8c3a3;
  color: #5f513e;
}

@media (max-width: 980px) {
  .dlwe-couple-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-couple-content-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .dlwe-couple-topbar,
  .dlwe-couple-user,
  .dlwe-couple-hero,
  .dlwe-couple-progress-panel,
  .dlwe-couple-footer,
  .dlwe-couple-access-card {
    align-items: stretch;
  }

  .dlwe-couple-topbar,
  .dlwe-couple-user,
  .dlwe-couple-footer,
  .dlwe-couple-access-card {
    flex-direction: column;
  }

  .dlwe-couple-user {
    width: 100%;
    justify-content: flex-start;
  }

  .dlwe-couple-hero {
    grid-template-columns: 1fr;
    padding: 28px;
  }

  .dlwe-couple-countdown {
    min-width: 0;
  }

  .dlwe-couple-summary-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-couple-progress-panel {
    grid-template-columns: 1fr;
  }

  .dlwe-couple-progress-ring {
    margin: 0 auto;
  }

  .dlwe-couple-detail-row {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .dlwe-couple-milestone {
    grid-template-columns: 18px minmax(0, 1fr);
  }

  .dlwe-couple-milestone small {
    grid-column: 2;
  }
}

/* Version 4.6.1: Single / multiple task creation */
.dlwe-task-create-mode-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 20px;
}

.dlwe-task-create-mode-switch button {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  min-height: 84px;
  padding: 18px 20px;
  border: 1px solid #d8cdbd;
  border-radius: 12px;
  background: #fffdf9;
  color: #17140f;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.dlwe-task-create-mode-switch button strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 18px;
  font-weight: 500;
}

.dlwe-task-create-mode-switch button span {
  color: #72695c;
  font-size: 13px;
  line-height: 1.5;
}

.dlwe-task-create-mode-switch button.is-active {
  border-color: #b99659;
  background: #f7efe1;
  box-shadow: inset 3px 0 0 #b99659;
}

.dlwe-task-multi-assignees {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  border: 1px solid #ddd2c3;
  border-radius: 10px;
  background: #fbf8f2;
  max-height: 280px;
  overflow: auto;
}

.dlwe-task-multi-assignee {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #e4dacb;
  border-radius: 9px;
  background: #fff;
  cursor: pointer;
}

.dlwe-task-multi-assignee:has(input:checked) {
  border-color: #b99659;
  background: #f6ead5;
}

.dlwe-task-multi-assignee input {
  margin-top: 3px;
  flex: 0 0 auto;
}

.dlwe-task-multi-assignee span {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 3px;
}

.dlwe-task-multi-assignee strong,
.dlwe-task-multi-assignee small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-task-multi-assignee small {
  color: #776f64;
}

.dlwe-task-multi-heading {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.dlwe-task-multi-heading-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.dlwe-task-multi-rows {
  display: grid;
  gap: 16px;
}

.dlwe-task-multi-row {
  padding: 18px;
  border: 1px solid #ded3c3;
  border-radius: 12px;
  background: #fffdf9;
}

.dlwe-task-multi-row-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid #ece4d8;
}

.dlwe-task-multi-row-heading > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

.dlwe-task-multi-row-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #efe2ca;
  color: #6e552e;
  font-size: 11px;
  letter-spacing: 0.08em;
}

.dlwe-task-multi-remove {
  border: 0;
  background: transparent;
  color: #9b3f35;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
}

.dlwe-task-multi-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
  padding: 15px 17px;
  border: 1px solid #d9c9ae;
  border-radius: 10px;
  background: #f7f0e4;
}

.dlwe-task-multi-summary strong {
  color: #2b241b;
}

.dlwe-task-multi-summary span {
  color: #756a5c;
  font-size: 12px;
  text-align: right;
}

.dlwe-task-multi-summary.is-over-limit {
  border-color: #be6a60;
  background: #fbefed;
}

@media (max-width: 980px) {
  .dlwe-task-multi-assignees {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-task-multi-heading {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .dlwe-task-multi-heading-actions {
    grid-column: 2;
    justify-content: flex-start;
  }
}

@media (max-width: 680px) {
  .dlwe-task-create-mode-switch,
  .dlwe-task-multi-assignees {
    grid-template-columns: 1fr;
  }

  .dlwe-task-multi-heading {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .dlwe-task-multi-heading-actions {
    grid-column: 1 / -1;
    width: 100%;
  }

  .dlwe-task-multi-heading-actions button {
    flex: 1 1 auto;
  }

  .dlwe-task-multi-summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .dlwe-task-multi-summary span {
    text-align: left;
  }
}


/* Phase 6A-2: Couple Portal information, documents, payments and meetings */
.dlwe-couple-tabs {
  display: flex;
  gap: 8px;
  margin: 24px 0;
  padding: 8px;
  border: 1px solid rgba(32, 27, 22, .10);
  border-radius: 18px;
  background: rgba(255, 255, 255, .72);
  overflow-x: auto;
}
.dlwe-couple-tabs button {
  flex: 1 0 auto;
  min-width: 130px;
  border: 0;
  border-radius: 12px;
  padding: 12px 16px;
  background: transparent;
  color: #54493f;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.dlwe-couple-tabs button.is-active { background: #201b16; color: #fff; }
.dlwe-couple-tab-panel { animation: dlweCoupleFade .2s ease; }
@keyframes dlweCoupleFade { from { opacity: .55; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.dlwe-couple-rich-copy { color: #5f554b; line-height: 1.75; white-space: normal; }
.dlwe-couple-rich-copy p { margin: 0; }
.dlwe-couple-document-list,
.dlwe-couple-payment-list,
.dlwe-couple-meeting-list { display: grid; gap: 12px; }
.dlwe-couple-document-row,
.dlwe-couple-payment-row,
.dlwe-couple-meeting-row {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border: 1px solid rgba(32, 27, 22, .10);
  border-radius: 16px;
  background: #fffdf9;
}
.dlwe-couple-document-icon {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #201b16;
  color: #fff;
  font-weight: 800;
}
.dlwe-couple-document-copy,
.dlwe-couple-meeting-copy { min-width: 0; flex: 1; display: grid; gap: 3px; }
.dlwe-couple-document-copy span,
.dlwe-couple-document-copy small,
.dlwe-couple-meeting-copy span,
.dlwe-couple-meeting-copy small { color: #75695e; }
.dlwe-couple-document-actions,
.dlwe-couple-meeting-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.dlwe-couple-upload-form,
.dlwe-couple-document-upload-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: end; }
.dlwe-couple-upload-form label,
.dlwe-couple-visible-toggle { display: grid; gap: 7px; font-weight: 700; color: #3f372f; }
.dlwe-couple-upload-form input,
.dlwe-couple-upload-form select { width: 100%; }
.dlwe-couple-upload-file small { color: #7c7167; font-weight: 500; }
.dlwe-couple-payment-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.dlwe-couple-payment-row { justify-content: space-between; }
.dlwe-couple-payment-row > div { display: grid; gap: 3px; }
.dlwe-couple-payment-row > div:nth-child(2) { text-align: right; }
.dlwe-couple-payment-row span,
.dlwe-couple-payment-row small { color: #75695e; }
.dlwe-couple-meeting-date {
  width: 64px;
  flex: 0 0 64px;
  padding: 10px 8px;
  border-radius: 14px;
  background: #201b16;
  color: #fff;
  text-align: center;
  display: grid;
}
.dlwe-couple-meeting-date strong { font-size: 1.45rem; line-height: 1; }
.dlwe-couple-meeting-date span { font-size: .74rem; letter-spacing: .1em; text-transform: uppercase; }
.dlwe-couple-meeting-copy p { margin: 7px 0 0; color: #5f554b; }
.dlwe-couple-visibility-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 4px 0 18px; }
.dlwe-couple-visibility-grid label,
.dlwe-couple-visible-toggle { display: flex; align-items: center; gap: 9px; padding: 12px 14px; border: 1px solid rgba(32,27,22,.10); border-radius: 12px; background: #fffdf9; }
.dlwe-couple-visibility-grid input,
.dlwe-couple-visible-toggle input { width: auto !important; }
.dlwe-couple-document-manager { margin-top: 28px; padding-top: 24px; border-top: 1px solid rgba(32,27,22,.10); }
.dlwe-couple-document-manager-heading { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.dlwe-couple-document-manager-heading h3 { margin: 3px 0 0; font-family: var(--dlwe-serif, Georgia, serif); font-size: 1.35rem; }
.dlwe-couple-document-upload-grid { margin-top: 18px; }
@media (max-width: 900px) {
  .dlwe-couple-upload-form,
  .dlwe-couple-document-upload-grid,
  .dlwe-couple-payment-summary,
  .dlwe-couple-visibility-grid { grid-template-columns: 1fr; }
  .dlwe-couple-document-row,
  .dlwe-couple-payment-row,
  .dlwe-couple-meeting-row { align-items: flex-start; flex-wrap: wrap; }
  .dlwe-couple-document-actions,
  .dlwe-couple-meeting-actions { width: 100%; justify-content: flex-start; }
  .dlwe-couple-payment-row > div:nth-child(2) { text-align: left; }
}

/* Phase 6A-3 — Couple actions, messages and communication history */
.dlwe-couple-tab-badge {
  display: inline-grid;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  place-items: center;
  border-radius: 999px;
  background: #b1463d;
  color: #fff;
  font-size: .7rem;
  font-weight: 800;
  line-height: 1;
}
.dlwe-couple-communication-list { display: grid; gap: 18px; }
.dlwe-couple-communication-thread {
  border: 1px solid rgba(32,27,22,.12);
  border-radius: 18px;
  background: #fffdf9;
  overflow: hidden;
}
.dlwe-couple-communication-thread.has-unread {
  border-color: rgba(177,70,61,.55);
  box-shadow: 0 0 0 3px rgba(177,70,61,.08);
}
.dlwe-couple-communication-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 20px;
  background: #f8f1e7;
  border-bottom: 1px solid rgba(32,27,22,.10);
}
.dlwe-couple-communication-header > div { min-width: 0; }
.dlwe-couple-communication-header h3 {
  margin: 7px 0 8px;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 1.35rem;
  color: #201b16;
}
.dlwe-couple-communication-header p { margin: 0; color: #655a50; line-height: 1.65; }
.dlwe-couple-communication-labels { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.dlwe-couple-communication-labels > span {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(32,27,22,.08);
  color: #53493f;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.dlwe-couple-communication-due.is-overdue { background: rgba(177,70,61,.12) !important; color: #9f352d !important; }
.dlwe-couple-message-history { display: grid; gap: 12px; padding: 20px; }
.dlwe-couple-message {
  width: min(82%, 720px);
  padding: 14px 16px;
  border-radius: 15px;
  background: #f3eadf;
  border: 1px solid rgba(32,27,22,.08);
}
.dlwe-couple-message.is-couple { margin-left: auto; background: #201b16; color: #fff; }
.dlwe-couple-message-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin-bottom: 7px; }
.dlwe-couple-message-meta span { font-size: .75rem; color: #786c62; }
.dlwe-couple-message.is-couple .dlwe-couple-message-meta span { color: rgba(255,255,255,.68); }
.dlwe-couple-message p { margin: 0; line-height: 1.65; }
.dlwe-couple-message-attachment {
  display: inline-flex;
  margin-top: 10px;
  font-weight: 800;
  color: #6b4e2e;
  text-decoration: none;
}
.dlwe-couple-message.is-couple .dlwe-couple-message-attachment { color: #e6d0a8; }
.dlwe-couple-communication-reply,
.dlwe-couple-communication-team-reply,
.dlwe-couple-communication-team-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 18px 20px;
  border-top: 1px solid rgba(32,27,22,.10);
  background: #fbf7ef;
}
.dlwe-couple-communication-reply label { display: grid; gap: 7px; font-weight: 700; }
.dlwe-couple-communication-reply label:first-child,
.dlwe-couple-communication-team-reply .dlwe-field-full,
.dlwe-couple-communication-team-controls .dlwe-field-full { grid-column: 1 / -1; }
.dlwe-couple-communication-reply button,
.dlwe-couple-communication-team-reply button,
.dlwe-couple-communication-team-controls button { justify-self: start; }
.dlwe-couple-resolved-note {
  padding: 15px 20px;
  border-top: 1px solid rgba(32,27,22,.10);
  background: rgba(73,117,82,.08);
  color: #315d3a;
  font-weight: 700;
}
.dlwe-couple-communication-create {
  padding: 18px;
  border: 1px solid rgba(32,27,22,.10);
  border-radius: 16px;
  background: #fffdf9;
}
.dlwe-couple-communication-manager-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 26px 0 14px;
}
.dlwe-couple-communication-manager-heading h3 { margin: 3px 0 0; font-family: var(--dlwe-serif, Georgia, serif); }
@media (max-width: 900px) {
  .dlwe-couple-communication-header { flex-direction: column; }
  .dlwe-couple-message { width: 100%; }
  .dlwe-couple-communication-reply,
  .dlwe-couple-communication-team-reply,
  .dlwe-couple-communication-team-controls { grid-template-columns: 1fr; }
  .dlwe-couple-communication-manager-heading { align-items: flex-start; }
}


/* Phase 6B-1 — Client approval requests */
.dlwe-status-pill.is-neutral {
  background: rgba(105,96,86,.12);
  color: #655a50;
}
.dlwe-couple-approval-create {
  padding: 18px;
  border: 1px solid rgba(32,27,22,.10);
  border-radius: 16px;
  background: #fffdf9;
}
.dlwe-couple-approval-list {
  display: grid;
  gap: 18px;
}
.dlwe-couple-approval-card {
  border: 1px solid rgba(32,27,22,.12);
  border-radius: 18px;
  background: #fffdf9;
  overflow: hidden;
}
.dlwe-couple-approval-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 20px;
  background: #f8f1e7;
  border-bottom: 1px solid rgba(32,27,22,.10);
}
.dlwe-couple-approval-card-header > div {
  min-width: 0;
}
.dlwe-couple-approval-card-header h3 {
  margin: 7px 0 8px;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 1.35rem;
  color: #201b16;
}
.dlwe-couple-approval-card-header p {
  margin: 0;
  color: #655a50;
  line-height: 1.65;
}
.dlwe-couple-approval-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(32,27,22,.08);
}
.dlwe-couple-approval-meta span {
  display: grid;
  gap: 4px;
  color: #665b51;
  font-size: .84rem;
}
.dlwe-couple-approval-meta strong {
  color: #201b16;
  font-size: .72rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.dlwe-couple-approval-files {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(32,27,22,.08);
}
.dlwe-couple-approval-files .dlwe-couple-message-attachment {
  margin-top: 0;
  padding: 9px 12px;
  border: 1px solid rgba(107,78,46,.22);
  border-radius: 999px;
  background: #fbf7ef;
}
.dlwe-couple-approval-team-controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  padding: 18px 20px;
  background: #fbf7ef;
}
.dlwe-couple-approval-team-controls .dlwe-field-full {
  grid-column: 1 / -1;
}
.dlwe-couple-approval-team-controls button {
  justify-self: start;
}
@media (max-width: 900px) {
  .dlwe-couple-approval-card-header {
    flex-direction: column;
  }
  .dlwe-couple-approval-meta,
  .dlwe-couple-approval-team-controls {
    grid-template-columns: 1fr;
  }
  .dlwe-couple-approval-team-controls .dlwe-field-full {
    grid-column: auto;
  }
}


/* Phase 6B-2 — Client decisions, request versions and approval history */
.dlwe-couple-approval-decision-summary {
  margin: 16px 20px 0;
  padding: 16px 18px;
  border: 1px solid rgba(53, 104, 77, .24);
  border-radius: 12px;
  background: rgba(53, 104, 77, .07);
}
.dlwe-couple-approval-decision-summary > div:first-child {
  display: grid;
  gap: 4px;
}
.dlwe-couple-approval-decision-summary span {
  color: #655a50;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.dlwe-couple-approval-decision-summary strong {
  color: #201b16;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 1.2rem;
}
.dlwe-couple-approval-decision-summary small {
  color: #655a50;
}
.dlwe-couple-approval-decision-summary p {
  margin: 12px 0 0;
  color: #40372f;
  line-height: 1.65;
}
.dlwe-couple-approval-decision-summary .dlwe-couple-approval-files {
  margin: 14px -18px -16px;
  border-top: 1px solid rgba(53, 104, 77, .16);
  border-bottom: 0;
}
.dlwe-couple-approval-decision-form {
  display: grid;
  gap: 16px;
  margin: 18px 20px;
  padding: 18px;
  border: 1px solid rgba(107, 78, 46, .18);
  border-radius: 12px;
  background: #fbf7ef;
}
.dlwe-couple-approval-decision-heading {
  display: grid;
  gap: 4px;
}
.dlwe-couple-approval-decision-heading strong {
  color: #201b16;
  font-family: var(--dlwe-serif, Georgia, serif);
  font-size: 1.12rem;
}
.dlwe-couple-approval-decision-heading span {
  color: #655a50;
  font-size: .86rem;
}
.dlwe-couple-approval-decision-form label {
  display: grid;
  gap: 7px;
  color: #40372f;
  font-size: .84rem;
  font-weight: 700;
}
.dlwe-couple-approval-decision-form textarea,
.dlwe-couple-approval-decision-form input[type="file"] {
  width: 100%;
}
.dlwe-couple-approval-decision-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.dlwe-couple-approval-history {
  margin: 18px 20px 20px;
  border: 1px solid rgba(32, 27, 22, .12);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.dlwe-couple-approval-history > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  cursor: pointer;
  color: #201b16;
  font-weight: 700;
  list-style: none;
}
.dlwe-couple-approval-history > summary::-webkit-details-marker {
  display: none;
}
.dlwe-couple-approval-history > summary span {
  display: inline-grid;
  min-width: 28px;
  min-height: 28px;
  place-items: center;
  border-radius: 999px;
  background: #f1e6d7;
  color: #6b4e2e;
  font-size: .78rem;
}
.dlwe-couple-approval-history-list {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(32, 27, 22, .10);
}
.dlwe-couple-approval-history-item {
  display: grid;
  gap: 9px;
  padding: 16px;
  border-bottom: 1px solid rgba(32, 27, 22, .08);
}
.dlwe-couple-approval-history-item:last-child {
  border-bottom: 0;
}
.dlwe-couple-approval-history-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.dlwe-couple-approval-history-head > div {
  display: grid;
  gap: 3px;
}
.dlwe-couple-approval-history-head strong {
  color: #201b16;
}
.dlwe-couple-approval-history-head span:not(.dlwe-status-pill),
.dlwe-couple-approval-history-item > small {
  color: #74695f;
  font-size: .78rem;
}
.dlwe-couple-approval-history-comment {
  margin: 0;
  padding: 11px 13px;
  border-left: 3px solid #b7976b;
  background: #fbf7ef;
  color: #40372f;
  line-height: 1.6;
}
.dlwe-couple-approval-version-snapshot {
  display: grid;
  gap: 5px;
  padding: 12px 14px;
  border-radius: 9px;
  background: #f8f1e7;
}
.dlwe-couple-approval-version-snapshot > strong {
  color: #201b16;
}
.dlwe-couple-approval-version-snapshot > span {
  color: #74695f;
  font-size: .78rem;
}
.dlwe-couple-approval-version-snapshot p {
  margin: 4px 0 0;
  color: #50463d;
  line-height: 1.55;
}
.dlwe-couple-approval-history-item .dlwe-couple-approval-files {
  padding: 4px 0 0;
  border: 0;
}
.dlwe-couple-approval-team-controls small {
  display: block;
  margin-top: 6px;
  color: #74695f;
  font-size: .76rem;
  line-height: 1.45;
}
@media (max-width: 680px) {
  .dlwe-couple-approval-decision-summary,
  .dlwe-couple-approval-decision-form,
  .dlwe-couple-approval-history {
    margin-left: 14px;
    margin-right: 14px;
  }
  .dlwe-couple-approval-decision-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .dlwe-couple-approval-decision-actions button {
    width: 100%;
  }
  .dlwe-couple-approval-history-head {
    flex-direction: column;
  }
}


/* Phase 6B-3 — Client approval tracking, reminders and locked final versions */
.dlwe-client-approval-dashboard-toolbar {
  grid-template-columns: minmax(260px, 2fr) repeat(4, minmax(150px, 1fr));
}

.dlwe-client-approval-dashboard-insights {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: 22px;
  margin: 22px 0;
}

.dlwe-client-approval-dashboard-insight-card,
.dlwe-client-approval-dashboard-register {
  border: 1px solid rgba(49, 40, 31, .12);
  border-radius: 16px;
  background: #fffdf8;
  padding: 22px;
  box-shadow: 0 12px 32px rgba(36, 29, 23, .05);
}

.dlwe-client-approval-progress-list,
.dlwe-client-approval-deadline-list {
  display: grid;
  gap: 12px;
}

.dlwe-client-approval-progress-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, .65fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px 0;
  border-top: 1px solid rgba(49, 40, 31, .08);
}

.dlwe-client-approval-progress-item:first-child,
.dlwe-client-approval-deadline-item:first-child {
  border-top: 0;
}

.dlwe-client-approval-progress-item > div:first-child,
.dlwe-client-approval-deadline-item > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.dlwe-client-approval-progress-item strong,
.dlwe-client-approval-deadline-item strong {
  color: #231d17;
}

.dlwe-client-approval-progress-item span,
.dlwe-client-approval-deadline-item span,
.dlwe-client-approval-deadline-item small {
  color: #776d61;
  font-size: 12px;
}

.dlwe-client-approval-progress-meter {
  height: 8px;
  border-radius: 99px;
  background: #eee7dc;
  overflow: hidden;
}

.dlwe-client-approval-progress-meter i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #8a7253, #c1a477);
}

.dlwe-client-approval-progress-item b {
  color: #6f573b;
  font-size: 13px;
}

.dlwe-client-approval-deadline-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 16px;
  align-items: center;
  padding: 14px 0;
  border-top: 1px solid rgba(49, 40, 31, .08);
}

.dlwe-client-approval-deadline-item small {
  grid-column: 2;
  text-align: right;
}

.dlwe-client-approval-deadline-item b {
  color: #8b6b3f;
  font-size: 12px;
}

.dlwe-client-approval-deadline-item.is-overdue b,
.dlwe-client-approval-deadline-item.is-overdue small {
  color: #9b312f;
}

.dlwe-client-approval-dashboard-card {
  margin-top: 16px;
}

.dlwe-client-approval-dashboard-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.dlwe-client-approval-lock-notice,
.dlwe-client-approval-lock-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid rgba(119, 91, 55, .25);
  border-radius: 12px;
  background: #f6efe3;
  padding: 16px 18px;
  margin-top: 18px;
}

.dlwe-client-approval-lock-notice > div,
.dlwe-client-approval-lock-strip {
  color: #4d3b29;
}

.dlwe-client-approval-lock-notice > div {
  display: grid;
  gap: 4px;
}

.dlwe-client-approval-lock-notice span,
.dlwe-client-approval-lock-strip span {
  color: #746552;
  font-size: 12px;
  line-height: 1.5;
}

.dlwe-client-approval-lock-strip {
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media (max-width: 1180px) {
  .dlwe-client-approval-dashboard-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dlwe-client-approval-dashboard-toolbar > :first-child {
    grid-column: 1 / -1;
  }
  .dlwe-client-approval-dashboard-insights {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .dlwe-client-approval-dashboard-toolbar,
  .dlwe-client-approval-progress-item {
    grid-template-columns: 1fr;
  }
  .dlwe-client-approval-dashboard-toolbar > :first-child {
    grid-column: auto;
  }
  .dlwe-client-approval-progress-item b {
    justify-self: start;
  }
  .dlwe-client-approval-lock-notice {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* Phase 6C-1 — Meeting Notes & Minutes */
.dlwe-meeting-notes-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1.4fr) repeat(3, minmax(150px, 0.8fr));
  gap: 12px;
  margin-bottom: 22px;
}

.dlwe-meeting-notes-toolbar input,
.dlwe-meeting-notes-toolbar select {
  width: 100%;
}

.dlwe-meeting-notes-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.92fr);
  gap: 24px;
  align-items: start;
}

.dlwe-meeting-notes-register,
.dlwe-meeting-note-editor {
  min-width: 0;
  padding: 24px;
  border: 1px solid var(--dlwe-border);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 15px 34px rgba(22, 22, 22, 0.05);
}

.dlwe-meeting-note-editor {
  position: sticky;
  top: 22px;
}

.dlwe-meeting-notes-list {
  display: grid;
  gap: 16px;
}

.dlwe-meeting-note-card {
  padding: 20px;
  border: 1px solid var(--dlwe-border);
  background: var(--dlwe-white);
}

.dlwe-meeting-note-card-heading {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.dlwe-meeting-note-card-heading h3 {
  margin: 9px 0 6px;
  font-size: 22px;
}

.dlwe-meeting-note-card-heading p {
  margin: 0;
  color: var(--dlwe-muted);
  font-size: 13px;
  line-height: 1.55;
}

.dlwe-meeting-note-decision-preview {
  margin-top: 16px;
  padding: 15px 16px;
  border-left: 3px solid var(--dlwe-champagne);
  background: #faf7f1;
}

.dlwe-meeting-note-decision-preview strong {
  display: block;
  margin-bottom: 7px;
  color: var(--dlwe-charcoal);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dlwe-meeting-note-decision-preview p {
  max-height: 150px;
  margin: 0;
  overflow: auto;
  color: var(--dlwe-charcoal);
  font-size: 13px;
  line-height: 1.6;
}

.dlwe-meeting-note-card-actions {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}

.dlwe-meeting-note-card-actions > div {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #e9e1d5;
  background: #fdfbf7;
}

.dlwe-meeting-note-card-actions strong {
  color: var(--dlwe-charcoal);
  font-size: 13px;
}

.dlwe-meeting-note-card-actions span,
.dlwe-meeting-note-card-actions small,
.dlwe-meeting-note-no-actions {
  color: var(--dlwe-muted);
  font-size: 12px;
  line-height: 1.5;
}

.dlwe-meeting-note-card-files,
.dlwe-meeting-note-existing-files {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.dlwe-meeting-note-card-files a,
.dlwe-meeting-note-existing-files a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid var(--dlwe-border);
  color: var(--dlwe-charcoal);
  background: #fbf8f3;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
}

.dlwe-meeting-note-existing-files {
  display: grid;
  align-items: start;
}

.dlwe-meeting-note-existing-files strong {
  display: block;
  width: 100%;
  color: var(--dlwe-charcoal);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.dlwe-meeting-note-card-footer {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid #eee8df;
}

.dlwe-meeting-note-card-footer small {
  color: var(--dlwe-muted);
  line-height: 1.45;
}

.dlwe-meeting-note-action-section {
  margin-top: 8px;
  padding-top: 22px;
  border-top: 1px solid var(--dlwe-border);
}

.dlwe-meeting-note-action-help {
  margin: -3px 0 16px;
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-meeting-note-action-items {
  display: grid;
  gap: 14px;
}

.dlwe-meeting-note-action-row {
  padding: 16px;
  border: 1px solid var(--dlwe-border);
  background: #fbf8f3;
}

.dlwe-meeting-note-action-row-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 13px;
}

.dlwe-meeting-note-action-row-heading strong {
  color: var(--dlwe-charcoal);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  font-weight: 400;
}

.dlwe-meeting-note-action-row-heading .dlwe-text-button {
  margin-left: auto;
}

.dlwe-meeting-note-linked-task {
  padding: 4px 7px;
  border: 1px solid #bed7c9;
  color: var(--dlwe-success);
  background: #eef7f2;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.dlwe-meeting-note-task-toggle .dlwe-checkbox-option {
  min-height: 48px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid var(--dlwe-border);
  background: var(--dlwe-white);
}

.dlwe-meeting-note-task-toggle .dlwe-checkbox-option input {
  width: auto;
  min-height: 0;
}

@media (max-width: 1280px) {
  .dlwe-meeting-notes-layout {
    grid-template-columns: 1fr;
  }

  .dlwe-meeting-note-editor {
    position: static;
  }
}

@media (max-width: 900px) {
  .dlwe-meeting-notes-toolbar {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .dlwe-meeting-notes-toolbar {
    grid-template-columns: 1fr;
  }

  .dlwe-meeting-notes-register,
  .dlwe-meeting-note-editor {
    padding: 17px;
  }

  .dlwe-meeting-note-card-heading,
  .dlwe-meeting-note-card-footer,
  .dlwe-meeting-note-action-row-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-meeting-note-action-row-heading .dlwe-text-button {
    margin-left: 0;
    align-self: flex-start;
  }
}


/* Phase 6C-2 — Communication History */
.dlwe-communication-history-toolbar {
  grid-template-columns: minmax(250px, 1.35fr) repeat(7, minmax(135px, 0.72fr));
}

.dlwe-communication-follow-up-toggle .dlwe-checkbox-option {
  min-height: 48px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid var(--dlwe-border);
  background: #fbf8f3;
}

[data-communication-follow-up-field].is-disabled {
  opacity: 0.55;
}

.dlwe-communication-history-references {
  margin: 14px 0 0;
  color: var(--dlwe-muted);
  font-size: 12px;
  line-height: 1.55;
}

.dlwe-communication-history-references strong {
  color: var(--dlwe-charcoal);
}

@media (max-width: 1500px) {
  .dlwe-communication-history-toolbar {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
  }
}

@media (max-width: 900px) {
  .dlwe-communication-history-toolbar {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .dlwe-communication-history-toolbar {
    grid-template-columns: 1fr;
  }
}


/* Phase 6C-3 — Couple meeting records, acknowledgement and follow-ups */
.dlwe-couple-meeting-record-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 22px;
}

.dlwe-couple-meeting-record-list,
.dlwe-couple-record-timeline {
  display: grid;
  gap: 18px;
}

.dlwe-couple-meeting-record-card {
  border: 1px solid var(--dlwe-border);
  border-radius: 18px;
  background: var(--dlwe-surface);
  padding: 22px;
  box-shadow: 0 12px 34px rgba(27, 23, 17, 0.05);
}

.dlwe-couple-meeting-record-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-couple-meeting-record-heading h3,
.dlwe-meeting-record-copy h4,
.dlwe-meeting-record-actions h4,
.dlwe-meeting-record-files h4,
.dlwe-meeting-record-response-form h4,
.dlwe-couple-record-timeline-item h4 {
  margin: 0;
}

.dlwe-couple-meeting-record-heading p {
  margin: 7px 0 0;
  color: var(--dlwe-muted);
}

.dlwe-meeting-record-copy {
  margin-top: 18px;
  padding: 16px 18px;
  border-radius: 14px;
  background: var(--dlwe-cream);
}

.dlwe-meeting-record-copy.is-decision {
  border-left: 3px solid var(--dlwe-champagne);
}

.dlwe-meeting-record-copy p,
.dlwe-meeting-record-actions p,
.dlwe-couple-meeting-current-response p,
.dlwe-couple-record-timeline-item p {
  margin: 8px 0 0;
  line-height: 1.65;
}

.dlwe-meeting-record-actions {
  margin-top: 20px;
}

.dlwe-meeting-record-actions > article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px;
  gap: 18px;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-meeting-record-actions > article:last-child {
  border-bottom: 0;
}

.dlwe-meeting-record-actions > article span,
.dlwe-meeting-record-actions > article p {
  display: block;
  color: var(--dlwe-muted);
  font-size: 13px;
}

.dlwe-meeting-record-actions > article.is-overdue strong {
  color: #9b2c2c;
}

.dlwe-meeting-record-actions > article.is-complete {
  opacity: 0.72;
}

.dlwe-meeting-record-action-progress {
  text-align: right;
}

.dlwe-meeting-record-action-progress .dlwe-progress-track {
  display: block;
  height: 7px;
  margin-top: 7px;
  border-radius: 99px;
  overflow: hidden;
  background: var(--dlwe-cream);
}

.dlwe-meeting-record-action-progress .dlwe-progress-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--dlwe-champagne);
}

.dlwe-meeting-record-files {
  margin-top: 18px;
}

.dlwe-meeting-record-files .dlwe-couple-message-attachment {
  margin: 9px 8px 0 0;
}

.dlwe-couple-meeting-current-response,
.dlwe-meeting-note-client-response {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
  padding: 16px 18px;
  border: 1px solid var(--dlwe-border);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.55);
}

.dlwe-couple-meeting-current-response span,
.dlwe-meeting-note-client-response span {
  display: block;
  margin-top: 4px;
  color: var(--dlwe-muted);
  font-size: 13px;
}

.dlwe-meeting-record-response-form {
  display: grid;
  gap: 15px;
  margin-top: 20px;
  padding: 20px;
  border: 1px solid var(--dlwe-border);
  border-radius: 16px;
  background: var(--dlwe-cream);
}

.dlwe-meeting-record-response-form label {
  display: grid;
  gap: 7px;
}

.dlwe-meeting-record-response-form textarea {
  width: 100%;
  resize: vertical;
}

.dlwe-meeting-record-response-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.dlwe-couple-meeting-response-history {
  margin-top: 16px;
  border-top: 1px solid var(--dlwe-border);
  padding-top: 14px;
}

.dlwe-couple-meeting-response-history summary {
  cursor: pointer;
  font-weight: 700;
}

.dlwe-couple-meeting-response-history article {
  padding: 12px 0;
  border-bottom: 1px solid var(--dlwe-border);
}

.dlwe-couple-meeting-response-history article:last-child {
  border-bottom: 0;
}

.dlwe-couple-meeting-response-history article span {
  display: block;
  color: var(--dlwe-muted);
  font-size: 12px;
  margin-top: 3px;
}

.dlwe-couple-record-timeline {
  position: relative;
}

.dlwe-couple-record-timeline::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 10px;
  bottom: 10px;
  width: 1px;
  background: var(--dlwe-border);
}

.dlwe-couple-record-timeline-item {
  position: relative;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 15px;
}

.dlwe-couple-record-timeline-marker {
  position: relative;
  z-index: 1;
  width: 17px;
  height: 17px;
  margin-top: 5px;
  border: 4px solid var(--dlwe-surface);
  border-radius: 50%;
  background: var(--dlwe-champagne);
  box-shadow: 0 0 0 1px var(--dlwe-border);
}

.dlwe-couple-record-timeline-item > div:last-child {
  padding: 0 0 20px;
}

.dlwe-couple-record-timeline-item > div:last-child > span {
  display: block;
  margin-top: 5px;
  color: var(--dlwe-muted);
  font-size: 13px;
}

@media (max-width: 900px) {
  .dlwe-couple-meeting-record-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-meeting-record-actions > article {
    grid-template-columns: 1fr;
  }

  .dlwe-meeting-record-action-progress {
    text-align: left;
  }
}

@media (max-width: 620px) {
  .dlwe-couple-meeting-record-summary {
    grid-template-columns: 1fr;
  }

  .dlwe-couple-meeting-record-heading,
  .dlwe-couple-meeting-current-response,
  .dlwe-meeting-note-client-response {
    display: grid;
  }

  .dlwe-couple-meeting-record-card {
    padding: 16px;
  }

  .dlwe-meeting-record-response-buttons {
    display: grid;
  }

  .dlwe-meeting-record-response-buttons button {
    width: 100%;
  }
}

/* ================================================================
   PHASE 7A-1 — WEDDING BUDGET & PROFITABILITY SETUP
   ================================================================ */
.dlwe-budget-command-card {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 20px;
  padding: 20px;
  border: 1px solid var(--dlwe-border);
  border-radius: 12px;
  background: linear-gradient(135deg, #fff 0%, #faf7f1 100%);
  box-shadow: 0 14px 34px rgba(22, 22, 22, 0.05);
}

.dlwe-budget-wedding-field {
  flex: 1 1 420px;
  margin: 0;
}

.dlwe-budget-command-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.dlwe-budget-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 22px;
}

.dlwe-budget-summary-card {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--dlwe-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(22, 22, 22, 0.045);
}

.dlwe-budget-summary-card span {
  display: block;
  margin-bottom: 7px;
  color: var(--dlwe-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
}

.dlwe-budget-summary-card strong {
  display: block;
  overflow-wrap: anywhere;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(22px, 2vw, 31px);
  font-weight: 400;
  line-height: 1.1;
}

.dlwe-budget-summary-card small {
  display: block;
  margin-top: 8px;
  color: var(--dlwe-muted);
  font-size: 12px;
  line-height: 1.4;
}

.dlwe-budget-summary-primary {
  color: #fff;
  border-color: var(--dlwe-black);
  background: var(--dlwe-black);
}

.dlwe-budget-summary-primary span,
.dlwe-budget-summary-primary small {
  color: rgba(255, 255, 255, 0.68);
}

.dlwe-budget-summary-primary strong {
  color: #fff;
}

.dlwe-budget-summary-success {
  border-color: #bfd8ca;
  background: #f0f7f3;
}

.dlwe-budget-summary-success strong {
  color: var(--dlwe-success);
}

.dlwe-budget-summary-danger {
  border-color: #e5c4c1;
  background: #fbf2f1;
}

.dlwe-budget-summary-danger strong {
  color: var(--dlwe-error);
}

.dlwe-budget-filter-bar {
  grid-template-columns: minmax(210px, 1.6fr) repeat(3, minmax(150px, 1fr));
}

.dlwe-budget-table-scroll {
  max-height: 620px;
}

.dlwe-budget-table {
  min-width: 1480px;
}

.dlwe-budget-table th,
.dlwe-budget-table td {
  white-space: nowrap;
}

.dlwe-budget-table td:first-child {
  min-width: 220px;
  white-space: normal;
}

.dlwe-budget-table td small {
  display: block;
  margin-top: 4px;
  color: var(--dlwe-muted);
  font-size: 11px;
  line-height: 1.35;
  white-space: normal;
}

.dlwe-budget-table .dlwe-budget-amount {
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.dlwe-budget-editor,
.dlwe-budget-import-panel {
  margin-top: 18px;
}

.dlwe-budget-editor .dlwe-form-card,
.dlwe-budget-import-panel .dlwe-form-card {
  border: 1px solid var(--dlwe-border);
  border-radius: 12px;
  box-shadow: 0 16px 42px rgba(22, 22, 22, 0.055);
}

.dlwe-budget-checkbox-field {
  display: flex;
  align-items: center;
  min-height: 68px;
  margin-bottom: 18px;
  padding: 14px 16px;
  border: 1px solid var(--dlwe-border);
  border-radius: 8px;
  background: #faf8f4;
}

.dlwe-budget-checkbox-field label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.35;
  text-transform: none;
}

.dlwe-budget-checkbox-field input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--dlwe-black);
}

.dlwe-budget-calculation {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 22px;
  padding: 16px;
  border: 1px solid #d9ccb6;
  border-radius: 10px;
  background: #f7f1e7;
}

.dlwe-budget-calculation > div {
  min-width: 0;
  padding: 4px 9px;
  border-left: 1px solid rgba(181, 154, 91, 0.28);
}

.dlwe-budget-calculation > div:first-child {
  border-left: 0;
}

.dlwe-budget-calculation span {
  display: block;
  margin-bottom: 4px;
  color: var(--dlwe-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dlwe-budget-calculation strong {
  display: block;
  color: var(--dlwe-black);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  font-weight: 400;
  overflow-wrap: anywhere;
}

.dlwe-budget-import-preview {
  margin-top: 20px;
}

.dlwe-budget-import-preview:empty {
  display: none;
}

.dlwe-budget-import-preview .dlwe-table-scroll {
  max-height: 460px;
  margin-top: 12px;
}

.dlwe-budget-import-preview table {
  min-width: 1120px;
}

.dlwe-budget-import-preview-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-bottom: 12px;
}

.dlwe-budget-import-preview-summary span {
  padding: 7px 10px;
  border: 1px solid var(--dlwe-border);
  border-radius: 999px;
  background: #fff;
  color: var(--dlwe-charcoal);
  font-size: 12px;
}

@media (max-width: 1180px) {
  .dlwe-budget-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-budget-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .dlwe-budget-command-card {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-budget-wedding-field {
    flex-basis: auto;
  }

  .dlwe-budget-command-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-budget-command-actions button {
    width: 100%;
  }

  .dlwe-budget-calculation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-budget-calculation > div:nth-child(3) {
    border-left: 0;
  }
}

@media (max-width: 540px) {
  .dlwe-budget-summary-grid,
  .dlwe-budget-filter-bar,
  .dlwe-budget-command-actions,
  .dlwe-budget-calculation {
    grid-template-columns: 1fr;
  }

  .dlwe-budget-calculation > div {
    padding: 8px 0;
    border-top: 1px solid rgba(181, 154, 91, 0.28);
    border-left: 0;
  }

  .dlwe-budget-calculation > div:first-child {
    border-top: 0;
  }
}

.dlwe-budget-import-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 15px;
  border: 1px solid var(--dlwe-border);
  border-radius: 8px;
  background: #faf8f4;
}

.dlwe-budget-import-meta strong {
  color: var(--dlwe-black);
  overflow-wrap: anywhere;
}

.dlwe-budget-import-meta span {
  color: var(--dlwe-muted);
  font-size: 12px;
  text-align: right;
}

.dlwe-budget-calculation .is-total strong {
  color: var(--dlwe-success);
}

@media (max-width: 620px) {
  .dlwe-budget-import-meta {
    align-items: flex-start;
    flex-direction: column;
  }

  .dlwe-budget-import-meta span {
    text-align: left;
  }
}

/* Phase 7A-2: committed cost, actual cost and variance tracking */
.dlwe-budget-section-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
  margin: 28px 0 16px;
  padding: 0 0 10px;
  border-bottom: 1px solid rgba(181, 154, 91, 0.35);
}

.dlwe-budget-section-heading:first-of-type {
  margin-top: 0;
}

.dlwe-budget-section-heading span {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: #111;
}

.dlwe-budget-section-heading small {
  max-width: 62%;
  text-align: right;
  color: #6b6b6b;
  line-height: 1.45;
}

.dlwe-budget-file-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.dlwe-budget-existing-files {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.dlwe-budget-existing-files > small {
  color: #7a746c;
}

.dlwe-budget-file-chip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border: 1px solid rgba(17, 17, 17, 0.12);
  border-radius: 10px;
  background: #faf8f3;
}

.dlwe-budget-file-chip a {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
  color: #111;
}

.dlwe-budget-file-chip span {
  font-size: 0.72rem;
  color: #76706a;
}

.dlwe-budget-file-chip button {
  border: 0;
  padding: 0;
  background: transparent;
  color: #9c2f2f;
  font-size: 0.74rem;
  font-weight: 700;
  cursor: pointer;
}

.dlwe-budget-linked-expense-summary {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 8px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f6f1e8;
  color: #4f4a43;
  font-size: 0.82rem;
}

.dlwe-budget-linked-expense-summary strong {
  color: #111;
}

.dlwe-budget-calculation {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.dlwe-budget-calculation .is-overrun {
  background: #fff0ee;
  border-color: rgba(156, 47, 47, 0.28);
}

.dlwe-budget-calculation .is-overrun span,
.dlwe-budget-calculation .is-overrun strong {
  color: #9c2f2f;
}

.dlwe-budget-table tr.is-budget-overrun td {
  background: rgba(156, 47, 47, 0.035);
}

.dlwe-budget-table .is-negative {
  color: #9c2f2f;
}

.dlwe-budget-table .is-positive {
  color: #2f6b4f;
}

.dlwe-budget-table td small {
  display: block;
  margin-top: 4px;
  line-height: 1.35;
}

.dlwe-budget-table-scroll {
  overflow-x: auto;
}

.dlwe-budget-table {
  min-width: 1540px;
}

.dlwe-budget-filter-bar {
  grid-template-columns: minmax(220px, 1.6fr) repeat(5, minmax(150px, 1fr));
}

@media (max-width: 1180px) {
  .dlwe-budget-file-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-budget-calculation {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-budget-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dlwe-budget-filter-bar input {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .dlwe-budget-section-heading,
  .dlwe-budget-linked-expense-summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .dlwe-budget-section-heading small {
    max-width: none;
    text-align: left;
  }

  .dlwe-budget-calculation,
  .dlwe-budget-filter-bar {
    grid-template-columns: 1fr;
  }

  .dlwe-budget-file-chip {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .dlwe-budget-file-chip span {
    display: none;
  }
}


/* Phase 7A-3 — Wedding Profitability Dashboard & Budget Reports */
.dlwe-budget-report-toolbar {
  display: grid;
  grid-template-columns: minmax(210px, 1.15fr) minmax(140px, .55fr) minmax(160px, .65fr) minmax(220px, 1fr);
  gap: 14px;
  padding: 18px;
  margin-bottom: 14px;
  border: 1px solid rgba(181, 154, 91, .28);
  border-radius: 18px;
  background: linear-gradient(135deg, #fffdf8, #f7f0e4);
}

.dlwe-budget-report-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0;
}

.dlwe-budget-report-summary-card {
  padding: 18px;
  border: 1px solid #ddd5c7;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(17,17,17,.05);
}

.dlwe-budget-report-summary-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid #eee8de;
}

.dlwe-budget-report-summary-heading span {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.4rem;
  font-weight: 700;
}

.dlwe-budget-report-summary-heading small,
.dlwe-budget-report-summary-card small {
  color: #6b665f;
}

.dlwe-budget-report-summary-card dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 16px;
  margin: 0 0 12px;
}

.dlwe-budget-report-summary-card dl div {
  min-width: 0;
}

.dlwe-budget-report-summary-card dt {
  margin-bottom: 3px;
  color: #777168;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.dlwe-budget-report-summary-card dd {
  margin: 0;
  color: #111;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.dlwe-budget-report-summary-danger {
  border-color: rgba(156,47,47,.35);
  background: #fff8f7;
}

.dlwe-budget-report-summary-success {
  border-color: rgba(47,107,79,.28);
}

.dlwe-budget-report-attention {
  display: block;
  padding-top: 10px;
  border-top: 1px solid #eee8de;
}

.dlwe-budget-report-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.dlwe-budget-report-card {
  min-width: 0;
  padding: 20px;
  border: 1px solid #ddd5c7;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(17,17,17,.045);
}

.dlwe-budget-report-card-wide {
  grid-column: 1 / -1;
}

.dlwe-budget-report-card-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.dlwe-budget-report-card-heading h2 {
  margin: 2px 0 0;
  font-size: 1.22rem;
}

.dlwe-budget-report-table-scroll {
  max-height: 620px;
}

.dlwe-budget-report-comparison-table {
  min-width: 1350px;
}

.dlwe-budget-report-comparison-table td small {
  display: block;
  margin-top: 4px;
  color: #756f66;
  font-size: .7rem;
  white-space: nowrap;
}

.dlwe-budget-report-status {
  display: inline-flex;
  padding: 5px 8px;
  border-radius: 999px;
  background: #efede8;
  color: #4d4943;
  font-size: .7rem;
  font-weight: 800;
  white-space: nowrap;
}

.dlwe-budget-report-status-success {
  background: #e5f1eb;
  color: #24583f;
}

.dlwe-budget-report-status-danger {
  background: #f8e3e2;
  color: #8a2727;
}

.dlwe-budget-report-bars {
  display: grid;
  gap: 12px;
}

.dlwe-budget-report-bar-row {
  display: grid;
  grid-template-columns: minmax(130px, .8fr) minmax(120px, 1.2fr) minmax(135px, .7fr);
  align-items: center;
  gap: 12px;
}

.dlwe-budget-report-bar-label strong,
.dlwe-budget-report-bar-values strong {
  display: block;
  color: #111;
  font-size: .82rem;
}

.dlwe-budget-report-bar-label small,
.dlwe-budget-report-bar-values small {
  display: block;
  margin-top: 2px;
  color: #756f66;
  font-size: .7rem;
}

.dlwe-budget-report-bar-values {
  text-align: right;
}

.dlwe-budget-report-bar-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #ece7de;
}

.dlwe-budget-report-bar-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #111, #b59a5b);
}

.dlwe-budget-report-list {
  display: grid;
  gap: 10px;
}

.dlwe-budget-report-list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 14px;
  border: 1px solid #e5dfd4;
  border-radius: 14px;
  background: #fbfaf7;
}

.dlwe-budget-report-list-item > div:last-child {
  text-align: right;
}

.dlwe-budget-report-list-item strong,
.dlwe-budget-report-list-item small {
  display: block;
}

.dlwe-budget-report-list-item small {
  margin-top: 3px;
  color: #756f66;
  font-size: .72rem;
}

.dlwe-budget-report-list-item.is-danger {
  border-color: rgba(156,47,47,.25);
  background: #fff8f7;
}

.dlwe-budget-report-list-item.is-warning {
  border-color: rgba(181,154,91,.42);
  background: #fffbf2;
}

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

.dlwe-budget-profit-card {
  padding: 16px;
  border: 1px solid #dfd8cc;
  border-radius: 16px;
  background: linear-gradient(135deg, #111, #27231d);
  color: #fff;
}

.dlwe-budget-profit-card-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.dlwe-budget-profit-card-heading strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.25rem;
  color: #d7c89e;
}

.dlwe-budget-profit-card-heading span {
  color: rgba(255,255,255,.68);
  font-size: .75rem;
}

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

.dlwe-budget-profit-metrics > div {
  padding: 10px;
  border-radius: 10px;
  background: rgba(255,255,255,.06);
}

.dlwe-budget-profit-metrics span,
.dlwe-budget-profit-metrics strong {
  display: block;
}

.dlwe-budget-profit-metrics span {
  margin-bottom: 4px;
  color: rgba(255,255,255,.64);
  font-size: .7rem;
}

.dlwe-budget-profit-metrics strong {
  overflow-wrap: anywhere;
  font-size: .86rem;
}

.dlwe-budget-report-comparison-table .is-negative,
.dlwe-budget-profit-metrics .is-negative strong {
  color: #b33838;
}

.dlwe-budget-report-comparison-table .is-positive {
  color: #2f6b4f;
}

.dlwe-budget-profit-metrics .is-positive strong {
  color: #a6d4bd;
}

@media (max-width: 1100px) {
  .dlwe-budget-report-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dlwe-budget-report-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .dlwe-budget-report-toolbar,
  .dlwe-budget-report-summary-grid,
  .dlwe-budget-report-grid,
  .dlwe-budget-profit-grid,
  .dlwe-budget-profit-metrics {
    grid-template-columns: 1fr;
  }
  .dlwe-budget-report-bar-row {
    grid-template-columns: 1fr;
  }
  .dlwe-budget-report-bar-values,
  .dlwe-budget-report-list-item > div:last-child {
    text-align: left;
  }
  .dlwe-budget-report-list-item {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media print {
  body.dlwe-print-budget-reports .dlwe-sidebar,
  body.dlwe-print-budget-reports .dlwe-header-actions,
  body.dlwe-print-budget-reports .dlwe-budget-report-toolbar,
  body.dlwe-print-budget-reports [data-dlwe-panel]:not([data-dlwe-panel="budget-reports"]) {
    display: none !important;
  }
  body.dlwe-print-budget-reports .dlwe-portal-shell,
  body.dlwe-print-budget-reports .dlwe-main,
  body.dlwe-print-budget-reports [data-dlwe-panel="budget-reports"] {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
  }
  body.dlwe-print-budget-reports .dlwe-budget-report-grid,
  body.dlwe-print-budget-reports .dlwe-budget-report-summary-grid {
    display: block !important;
  }
  body.dlwe-print-budget-reports .dlwe-budget-report-card,
  body.dlwe-print-budget-reports .dlwe-budget-report-summary-card {
    break-inside: avoid;
    margin-bottom: 12px;
    box-shadow: none;
  }
  body.dlwe-print-budget-reports .dlwe-table-scroll {
    max-height: none !important;
    overflow: visible !important;
  }
  body.dlwe-print-budget-reports .dlwe-budget-report-comparison-table {
    min-width: 0 !important;
    font-size: 8px;
  }
  body.dlwe-print-budget-reports button {
    display: none !important;
  }
}

.dlwe-budget-report-status-warning {
  background: #fff1cf;
  color: #7a5812;
}

/* Phase 7B-1 — Client Invoices */
.dlwe-client-invoices-panel .dlwe-table-action{white-space:nowrap}.dlwe-invoice-line{display:grid;grid-template-columns:minmax(240px,2.3fr) .65fr .7fr 1fr 1fr 42px;gap:12px;align-items:end;padding:14px;border:1px solid #e4ddcf;border-radius:14px;background:#fbf8f2;margin-bottom:10px}.dlwe-invoice-line-amount{padding:0 0 12px}.dlwe-invoice-line-amount span{display:block;font-size:11px;color:#777;text-transform:uppercase;letter-spacing:.08em}.dlwe-invoice-line-amount strong{display:block;margin-top:6px}.dlwe-invoice-totals{max-width:520px;margin-left:auto;border:1px solid #ded4c2;border-radius:16px;padding:14px;background:#fff}.dlwe-invoice-totals>div{display:flex;justify-content:space-between;padding:9px;border-bottom:1px solid #eee}.dlwe-invoice-totals>div:last-child{border-bottom:0}.dlwe-invoice-totals .is-total{font-size:20px;font-family:Georgia,serif;color:#111;border-top:2px solid #b59a5b}.dlwe-danger-button{background:#8c2f2f;color:#fff;border:0;border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer}@media(max-width:900px){.dlwe-invoice-line{grid-template-columns:1fr 1fr}.dlwe-invoice-description{grid-column:1/-1}.dlwe-invoice-line .dlwe-icon-button{align-self:end}}


/* Phase 7B-2 — Client Payments, Receipts, Credits & Refunds */
.dlwe-collection-register{margin-top:18px}
.dlwe-client-invoices-panel .dlwe-header-actions{flex-wrap:wrap}
.dlwe-invoice-collection-summary{margin-top:14px;border:1px solid #ded4c2;border-radius:16px;padding:14px;background:#fbf8f2}
.dlwe-invoice-collection-summary>div{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid #e9e2d5}
.dlwe-invoice-collection-summary>div:last-child{border-bottom:0}
.dlwe-invoice-collection-summary .is-total{font-size:18px;font-family:Georgia,serif;border-top:2px solid #b59a5b}
.dlwe-payment-allocation-list{display:grid;gap:10px}
.dlwe-payment-allocation-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,220px);gap:18px;align-items:center;padding:15px;border:1px solid #e1d8c9;border-radius:15px;background:#fbf8f2}
.dlwe-payment-allocation-row>div:first-child{display:grid;gap:4px}
.dlwe-payment-allocation-row span,.dlwe-payment-allocation-row small{color:#766b60}
.dlwe-payment-allocation-row .dlwe-field{margin:0}
.dlwe-budget-existing-file{display:flex;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid #ddd2bf;border-radius:12px;background:#fff;text-decoration:none;color:#111;margin-top:8px}
.dlwe-budget-existing-file small{color:#766b60}
.dlwe-couple-finance-divider{display:flex;align-items:center;gap:14px;margin:28px 0 14px;color:#7d6e59;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}
.dlwe-couple-finance-divider:before,.dlwe-couple-finance-divider:after{content:"";height:1px;background:#ded4c2;flex:1}
.dlwe-couple-finance-document{align-items:center}
.dlwe-couple-finance-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.dlwe-couple-payment-row .dlwe-couple-finance-actions{text-align:right}
@media(max-width:900px){
  .dlwe-payment-allocation-row{grid-template-columns:1fr}
  .dlwe-couple-finance-actions{justify-content:flex-start}
  .dlwe-couple-payment-row .dlwe-couple-finance-actions{text-align:left}
}

/* Phase 7B-3 — Client collection dashboard, reminders and follow-up controls */
.dlwe-collection-dashboard-section {
  border: 1px solid rgba(181, 154, 91, 0.28);
  background: linear-gradient(180deg, rgba(246, 241, 232, 0.82), rgba(255, 255, 255, 0.96));
}

.dlwe-collection-heading-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px;
}

.dlwe-collection-heading-row > small {
  max-width: 280px;
  padding: 9px 12px;
  border: 1px solid rgba(181, 154, 91, 0.28);
  border-radius: 999px;
  background: #fff;
  color: #6b6258;
  text-align: center;
}

.dlwe-collection-filter-toolbar {
  grid-template-columns: repeat(7, minmax(145px, 1fr));
}

.dlwe-collection-dashboard-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr;
  gap: 18px;
  margin: 18px 0;
}

.dlwe-collection-dashboard-grid .dlwe-budget-report-card {
  min-width: 0;
}

.dlwe-collection-dashboard-grid h3 {
  margin: 4px 0 0;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 20px;
}

.dlwe-collection-metric-list {
  display: grid;
  gap: 9px;
}

.dlwe-collection-metric-list > div:not(.dlwe-empty-state) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 12px;
  border: 1px solid rgba(17, 17, 17, 0.08);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.88);
}

.dlwe-collection-metric-list span,
.dlwe-collection-metric-list strong {
  display: block;
}

.dlwe-collection-metric-list small {
  display: block;
  margin-top: 2px;
  color: #7a7269;
  font-size: 11px;
}

.dlwe-budget-report-list-item > button {
  flex: 0 0 auto;
}

.dlwe-invoice-collection-settings {
  border-left: 4px solid #b59a5b;
}

.dlwe-collection-reminder-status {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.dlwe-collection-reminder-status > span,
.dlwe-collection-reminder-status > strong {
  padding: 10px 12px;
  border: 1px solid rgba(17, 17, 17, 0.08);
  background: #fff;
}

.dlwe-collection-reminder-status > span {
  color: #70675e;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.dlwe-collection-reminder-status > strong {
  font-size: 13px;
}

.dlwe-collection-history-list {
  display: grid;
  gap: 8px;
  margin-top: 18px;
}

.dlwe-collection-history-list h3 {
  margin: 0 0 4px;
  font-family: Georgia, 'Times New Roman', serif;
}

.dlwe-collection-history-list article {
  display: grid;
  grid-template-columns: 1.2fr 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 11px 13px;
  border: 1px solid rgba(17, 17, 17, 0.08);
  border-radius: 10px;
  background: #fff;
}

.dlwe-collection-history-list strong,
.dlwe-collection-history-list span,
.dlwe-collection-history-list small,
.dlwe-collection-history-list em {
  display: block;
}

.dlwe-collection-history-list small {
  color: #766d63;
}

.dlwe-collection-history-list em {
  color: #554b40;
  font-style: normal;
  text-align: right;
}

.dlwe-couple-collection-alert {
  margin: 0 0 14px;
  padding: 14px 16px;
  border: 1px solid rgba(181, 154, 91, 0.38);
  border-left: 4px solid #b59a5b;
  border-radius: 10px;
  background: #fbf7ef;
}

.dlwe-couple-collection-alert strong,
.dlwe-couple-collection-alert span {
  display: block;
}

.dlwe-couple-collection-alert span {
  margin-top: 4px;
  color: #6f655b;
  font-size: 13px;
}

.dlwe-couple-collection-alert.is-overdue {
  border-color: rgba(156, 47, 47, 0.35);
  border-left-color: #9c2f2f;
  background: #fff4f2;
}

@media (max-width: 1250px) {
  .dlwe-collection-filter-toolbar {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
  }

  .dlwe-collection-dashboard-grid {
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-collection-dashboard-grid > :first-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .dlwe-collection-heading-row,
  .dlwe-collection-history-list article {
    display: block;
  }

  .dlwe-collection-heading-row > small {
    display: inline-block;
    margin-top: 12px;
  }

  .dlwe-collection-filter-toolbar,
  .dlwe-collection-dashboard-grid,
  .dlwe-collection-reminder-status {
    grid-template-columns: 1fr;
  }

  .dlwe-collection-dashboard-grid > :first-child {
    grid-column: auto;
  }

  .dlwe-collection-history-list article > * + * {
    margin-top: 8px;
  }

  .dlwe-collection-history-list em {
    text-align: left;
  }
}

@media print {
  body.dlwe-print-client-collections .dlwe-sidebar,
  body.dlwe-print-client-collections .dlwe-mobile-topbar,
  body.dlwe-print-client-collections .dlwe-header-actions,
  body.dlwe-print-client-collections #dlwe-invoice-message,
  body.dlwe-print-client-collections #dlwe-invoice-loading,
  body.dlwe-print-client-collections #dlwe-invoice-editor,
  body.dlwe-print-client-collections #dlwe-payment-editor,
  body.dlwe-print-client-collections #dlwe-adjustment-editor,
  body.dlwe-print-client-collections .dlwe-collection-register,
  body.dlwe-print-client-collections .dlwe-collection-filter-toolbar,
  body.dlwe-print-client-collections .dlwe-table-action {
    display: none !important;
  }

  body.dlwe-print-client-collections [data-dlwe-panel="client-invoices"],
  body.dlwe-print-client-collections #dlwe-invoice-content,
  body.dlwe-print-client-collections .dlwe-collection-dashboard-section {
    display: block !important;
    visibility: visible !important;
  }

  body.dlwe-print-client-collections .dlwe-portal-main,
  body.dlwe-print-client-collections .dlwe-portal-content {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }
}


/* Phase 7C-1 — Company Financial Overview */
.dlwe-financial-overview-panel .dlwe-portal-header {
  align-items: flex-start;
}
.dlwe-financial-filter-section {
  margin-bottom: 18px;
}
.dlwe-financial-filter-actions {
  flex-wrap: wrap;
}
.dlwe-financial-summary-grid {
  margin: 18px 0;
}
.dlwe-budget-report-summary-card.is-positive strong,
.dlwe-financial-positive {
  color: #2f6d4f;
}
.dlwe-budget-report-summary-card.is-warning strong {
  color: #8b5e1f;
}
.dlwe-budget-report-summary-card.is-negative strong,
.dlwe-financial-negative {
  color: #9b3b35;
}
.dlwe-financial-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin: 18px 0;
}
.dlwe-financial-dashboard-grid .dlwe-budget-report-card {
  min-width: 0;
}
.dlwe-financial-breakdown-list {
  display: grid;
  gap: 12px;
}
.dlwe-financial-breakdown-row {
  border: 1px solid #e5dccd;
  border-radius: 14px;
  padding: 14px;
  background: #fffdf9;
}
.dlwe-financial-breakdown-row > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.dlwe-financial-breakdown-row > div strong,
.dlwe-financial-breakdown-row > div small {
  display: block;
}
.dlwe-financial-breakdown-row > div small {
  color: #786f62;
  text-align: right;
}
.dlwe-financial-breakdown-row dl {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.dlwe-financial-breakdown-row dl div {
  min-width: 0;
  border-top: 1px solid #eee6da;
  padding-top: 8px;
}
.dlwe-financial-breakdown-row dt {
  color: #786f62;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.dlwe-financial-breakdown-row dd {
  margin: 4px 0 0;
  font-weight: 700;
  overflow-wrap: anywhere;
}
.dlwe-financial-table .dlwe-table-subtext {
  display: block;
  margin-top: 3px;
  color: #7b7369;
  font-size: 11px;
  font-weight: 400;
}
@media (max-width: 1200px) {
  .dlwe-financial-dashboard-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 700px) {
  .dlwe-financial-breakdown-row dl {
    grid-template-columns: 1fr;
  }
  .dlwe-financial-breakdown-row > div {
    align-items: flex-start;
    flex-direction: column;
  }
  .dlwe-financial-breakdown-row > div small {
    text-align: left;
  }
}
@media print {
  body.dlwe-print-financial-overview .dlwe-sidebar,
  body.dlwe-print-financial-overview .dlwe-mobile-topbar,
  body.dlwe-print-financial-overview .dlwe-header-actions,
  body.dlwe-print-financial-overview #dlwe-financial-message,
  body.dlwe-print-financial-overview #dlwe-financial-loading,
  body.dlwe-print-financial-overview .dlwe-financial-filter-section,
  body.dlwe-print-financial-overview .dlwe-pagination-controls {
    display: none !important;
  }
  body.dlwe-print-financial-overview [data-dlwe-panel] {
    display: none !important;
  }
  body.dlwe-print-financial-overview [data-dlwe-panel="financial-overview"] {
    display: block !important;
    position: static !important;
  }
  body.dlwe-print-financial-overview .dlwe-main,
  body.dlwe-print-financial-overview .dlwe-portal-shell {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
  }
  body.dlwe-print-financial-overview .dlwe-form-section,
  body.dlwe-print-financial-overview .dlwe-budget-report-card,
  body.dlwe-print-financial-overview .dlwe-budget-report-summary-card {
    break-inside: avoid;
    box-shadow: none !important;
  }
  body.dlwe-print-financial-overview .dlwe-table-scroll {
    overflow: visible !important;
  }
  body.dlwe-print-financial-overview table {
    font-size: 9px;
  }
}


/* Phase 7C-2 and 7C-3 — Cash Flow and Management Reports */
.dlwe-cash-flow-panel .dlwe-portal-header,
.dlwe-financial-reports-panel .dlwe-portal-header {
  align-items: flex-start;
}
.dlwe-finance-alert-grid {
  display: grid;
  gap: 12px;
  margin: 18px 0;
}
.dlwe-finance-alert {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid #ded4c2;
  border-left-width: 5px;
  border-radius: 14px;
  padding: 14px 16px;
  background: #fffdf9;
}
.dlwe-finance-alert strong,
.dlwe-finance-alert p {
  display: block;
  margin: 0;
}
.dlwe-finance-alert p {
  margin-top: 4px;
  color: #756d61;
}
.dlwe-finance-alert > span {
  flex: 0 0 auto;
  font-weight: 800;
  text-align: right;
}
.dlwe-finance-alert.is-warning {
  border-left-color: #b77a22;
  background: #fff9ed;
}
.dlwe-finance-alert.is-critical {
  border-left-color: #a64038;
  background: #fff4f2;
}
.dlwe-finance-alert.is-info {
  border-left-color: #6f776e;
}
.dlwe-finance-all-clear {
  display: flex;
  flex-direction: column;
  gap: 4px;
  border: 1px solid #cfe0d4;
  border-radius: 14px;
  padding: 14px 16px;
  background: #f5fbf7;
}
.dlwe-finance-all-clear span {
  color: #5f6f64;
}
.dlwe-finance-risk-row td {
  background: #fff8f5;
}
.dlwe-finance-risk-row td:first-child {
  box-shadow: inset 4px 0 0 #b54b42;
}
#dlwe_cash_flow_opening_balance:disabled {
  opacity: .55;
  cursor: not-allowed;
}
@media (max-width: 760px) {
  .dlwe-finance-alert {
    align-items: flex-start;
    flex-direction: column;
  }
  .dlwe-finance-alert > span {
    text-align: left;
  }
}
@media print {
  body.dlwe-print-cash-flow .dlwe-sidebar,
  body.dlwe-print-cash-flow .dlwe-mobile-topbar,
  body.dlwe-print-cash-flow .dlwe-header-actions,
  body.dlwe-print-cash-flow #dlwe-cash-flow-message,
  body.dlwe-print-cash-flow #dlwe-cash-flow-loading,
  body.dlwe-print-cash-flow .dlwe-financial-filter-section,
  body.dlwe-print-cash-flow .dlwe-pagination-controls,
  body.dlwe-print-financial-reports .dlwe-sidebar,
  body.dlwe-print-financial-reports .dlwe-mobile-topbar,
  body.dlwe-print-financial-reports .dlwe-header-actions,
  body.dlwe-print-financial-reports #dlwe-financial-reports-message,
  body.dlwe-print-financial-reports #dlwe-financial-reports-loading,
  body.dlwe-print-financial-reports .dlwe-financial-filter-section,
  body.dlwe-print-financial-reports .dlwe-pagination-controls {
    display: none !important;
  }
  body.dlwe-print-cash-flow [data-dlwe-panel],
  body.dlwe-print-financial-reports [data-dlwe-panel] {
    display: none !important;
  }
  body.dlwe-print-cash-flow [data-dlwe-panel="cash-flow-forecast"],
  body.dlwe-print-financial-reports [data-dlwe-panel="financial-reports"] {
    display: block !important;
    position: static !important;
  }
  body.dlwe-print-cash-flow .dlwe-main,
  body.dlwe-print-cash-flow .dlwe-portal-shell,
  body.dlwe-print-financial-reports .dlwe-main,
  body.dlwe-print-financial-reports .dlwe-portal-shell {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
  }
  body.dlwe-print-cash-flow .dlwe-form-section,
  body.dlwe-print-cash-flow .dlwe-budget-report-summary-card,
  body.dlwe-print-cash-flow .dlwe-finance-alert,
  body.dlwe-print-financial-reports .dlwe-form-section,
  body.dlwe-print-financial-reports .dlwe-budget-report-summary-card,
  body.dlwe-print-financial-reports .dlwe-finance-alert {
    break-inside: avoid;
    box-shadow: none !important;
  }
  body.dlwe-print-cash-flow .dlwe-table-scroll,
  body.dlwe-print-financial-reports .dlwe-table-scroll {
    overflow: visible !important;
  }
  body.dlwe-print-cash-flow table,
  body.dlwe-print-financial-reports table {
    font-size: 8px;
  }
}


/* Phase 8A — Staff Rosters & Shift Scheduling */
.dlwe-roster-header-actions {
  align-items: end;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.dlwe-roster-summary {
  margin-bottom: 24px;
}
.dlwe-roster-tabs {
  margin-bottom: 22px;
}
.dlwe-roster-card-grid,
.dlwe-roster-availability-list,
.dlwe-roster-conflict-list {
  display: grid;
  gap: 14px;
}
.dlwe-roster-shift-card {
  display: grid;
  grid-template-columns: minmax(145px, .28fr) minmax(0, 1fr);
  border: 1px solid var(--dlwe-border, #ddd6ca);
  border-radius: 18px;
  background: var(--dlwe-surface, #fff);
  overflow: hidden;
  box-shadow: 0 12px 34px rgba(22, 19, 15, .05);
}
.dlwe-roster-shift-card.has-conflict {
  border-color: #c99a58;
  box-shadow: inset 4px 0 0 #c99a58, 0 12px 34px rgba(22, 19, 15, .05);
}
.dlwe-roster-shift-date {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  padding: 24px;
  background: #f5f0e7;
  border-right: 1px solid var(--dlwe-border, #ddd6ca);
}
.dlwe-roster-shift-date strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1.25;
}
.dlwe-roster-shift-date span {
  font-size: 13px;
  letter-spacing: .04em;
}
.dlwe-roster-shift-main {
  min-width: 0;
  padding: 22px 24px;
}
.dlwe-roster-shift-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.dlwe-roster-shift-heading h3 {
  margin: 3px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
}
.dlwe-roster-shift-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.dlwe-roster-shift-meta span {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 11px 12px;
  border-radius: 11px;
  background: #f8f6f1;
  font-size: 13px;
  overflow-wrap: anywhere;
}
.dlwe-roster-shift-meta strong,
.dlwe-roster-instructions strong {
  font-size: 10px;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--dlwe-muted, #716b62);
}
.dlwe-roster-instructions {
  margin-top: 14px;
  padding: 14px 16px;
  border-left: 3px solid #b59a5b;
  background: #fbf8f2;
}
.dlwe-roster-instructions p {
  margin: 5px 0 0;
  white-space: pre-wrap;
}
.dlwe-roster-toolbar {
  grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(150px, .75fr)) auto;
}
.dlwe-roster-table td {
  min-width: 112px;
}
.dlwe-roster-table td:first-child {
  min-width: 40px;
  width: 40px;
}
.dlwe-roster-table td small {
  display: block;
  max-width: 220px;
  margin-top: 5px;
  color: var(--dlwe-muted, #716b62);
  overflow: hidden;
  text-overflow: ellipsis;
}
.dlwe-roster-row-conflict {
  background: #fffaf0;
}
.dlwe-roster-conflict-count {
  color: #9b5b18 !important;
  font-weight: 700;
}
.dlwe-roster-override-note {
  color: #6c5a2d !important;
  font-weight: 700;
}
.dlwe-roster-conflict-card .dlwe-roster-override-note {
  display: block;
  margin-top: 6px;
}
.dlwe-roster-calendar-heading {
  align-items: end;
  margin-bottom: 12px;
}
.dlwe-roster-availability-calendar {
  margin-bottom: 26px;
  overflow-x: auto;
}
.dlwe-roster-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(105px, 1fr));
  min-width: 760px;
  border-top: 1px solid var(--dlwe-border, #ddd6ca);
  border-left: 1px solid var(--dlwe-border, #ddd6ca);
  background: #fff;
}
.dlwe-roster-calendar-weekday {
  padding: 9px;
  border-right: 1px solid var(--dlwe-border, #ddd6ca);
  border-bottom: 1px solid var(--dlwe-border, #ddd6ca);
  background: #f3eee5;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .09em;
  text-align: center;
  text-transform: uppercase;
}
.dlwe-roster-calendar-day {
  min-height: 116px;
  padding: 8px;
  border-right: 1px solid var(--dlwe-border, #ddd6ca);
  border-bottom: 1px solid var(--dlwe-border, #ddd6ca);
  background: #fff;
}
.dlwe-roster-calendar-day.is-weekend {
  background: #fbfaf7;
}
.dlwe-roster-calendar-day.is-empty {
  background: #f6f4ef;
}
.dlwe-roster-calendar-day.is-today {
  box-shadow: inset 0 0 0 2px #b59a5b;
}
.dlwe-roster-calendar-day-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  margin-bottom: 7px;
}
.dlwe-roster-calendar-day-head strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
}
.dlwe-roster-calendar-day-head span {
  font-size: 9px;
  color: var(--dlwe-muted, #716b62);
}
.dlwe-roster-calendar-blocks {
  display: grid;
  gap: 4px;
}
.dlwe-roster-calendar-block {
  display: block;
  padding: 4px 5px;
  border-radius: 5px;
  font-size: 9px;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dlwe-roster-calendar-block.dlwe-status-available {
  background: #e6f3e9;
  color: #24663a;
}
.dlwe-roster-calendar-block.dlwe-status-unavailable {
  background: #f8e7e4;
  color: #8c332a;
}
.dlwe-roster-calendar-block.dlwe-status-limited-availability {
  background: #fbefda;
  color: #875817;
}
.dlwe-roster-calendar-more {
  font-size: 9px;
  font-weight: 700;
  color: var(--dlwe-muted, #716b62);
}
.dlwe-roster-record-heading {
  margin: 4px 0 12px;
}
.dlwe-roster-availability-layout {
  display: grid;
  grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
  gap: 22px;
  align-items: start;
}
.dlwe-roster-availability-form-card {
  position: sticky;
  top: 24px;
}
.dlwe-roster-availability-card {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
  border: 1px solid var(--dlwe-border, #ddd6ca);
  border-radius: 14px;
  background: var(--dlwe-surface, #fff);
}
.dlwe-roster-availability-card h3 {
  margin: 10px 0 4px;
  font-size: 18px;
}
.dlwe-roster-availability-card p,
.dlwe-roster-availability-card small {
  margin: 0;
  color: var(--dlwe-muted, #716b62);
}
.dlwe-roster-card-actions {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex-wrap: wrap;
}
.dlwe-roster-conflict-intro {
  margin-bottom: 16px;
}
.dlwe-roster-conflict-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px;
  border: 1px solid #d9c59f;
  border-left: 5px solid #c99a58;
  border-radius: 14px;
  background: #fffaf0;
}
.dlwe-roster-conflict-card.is-blocking {
  border-color: #ddb3ad;
  border-left-color: #a33e32;
  background: #fff6f4;
}
.dlwe-roster-conflict-card > div > span {
  display: inline-block;
  margin-bottom: 5px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.dlwe-roster-conflict-card h3,
.dlwe-roster-conflict-card p {
  margin: 2px 0;
}
.dlwe-roster-conflict-card small {
  color: var(--dlwe-muted, #716b62);
}
.dlwe-roster-editor {
  margin-top: 10px;
}
.dlwe-roster-assignment-preview,
.dlwe-roster-conflict-preview {
  margin-top: 14px;
  padding: 14px 16px;
  border: 1px solid var(--dlwe-border, #ddd6ca);
  border-radius: 12px;
  background: #faf8f4;
}
.dlwe-roster-assignment-preview.is-understaffed,
.dlwe-roster-conflict-preview.has-blocking {
  border-color: #d9a99f;
  background: #fff6f4;
}
.dlwe-roster-assignment-preview strong,
.dlwe-roster-conflict-preview strong {
  display: block;
  margin-bottom: 4px;
}
.dlwe-roster-conflict-preview ul {
  margin: 8px 0 0 18px;
  padding: 0;
}
.dlwe-roster-copy-panel {
  margin-top: 24px;
}
.dlwe-status-pill.dlwe-status-draft {
  background: #ede9e2;
  color: #575148;
}
.dlwe-status-pill.dlwe-status-published,
.dlwe-status-pill.dlwe-status-accepted,
.dlwe-status-pill.dlwe-status-available {
  background: #e6f3e9;
  color: #24663a;
}
.dlwe-status-pill.dlwe-status-completed {
  background: #e7eef8;
  color: #2f5379;
}
.dlwe-status-pill.dlwe-status-cancelled,
.dlwe-status-pill.dlwe-status-declined,
.dlwe-status-pill.dlwe-status-unavailable {
  background: #f8e7e4;
  color: #8c332a;
}
.dlwe-status-pill.dlwe-status-pending,
.dlwe-status-pill.dlwe-status-limited-availability {
  background: #fbefda;
  color: #875817;
}
.dlwe-alert-warning {
  border-color: #d9c59f;
  background: #fffaf0;
  color: #76501d;
}
@media (max-width: 1050px) {
  .dlwe-roster-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dlwe-roster-availability-layout {
    grid-template-columns: 1fr;
  }
  .dlwe-roster-availability-form-card {
    position: static;
  }
}
@media (max-width: 760px) {
  .dlwe-roster-header-actions {
    width: 100%;
    justify-content: stretch;
  }
  .dlwe-roster-header-actions > * {
    flex: 1 1 145px;
  }
  .dlwe-roster-shift-card {
    grid-template-columns: 1fr;
  }
  .dlwe-roster-shift-date {
    border-right: 0;
    border-bottom: 1px solid var(--dlwe-border, #ddd6ca);
  }
  .dlwe-roster-shift-heading,
  .dlwe-roster-conflict-card,
  .dlwe-roster-availability-card {
    align-items: flex-start;
    flex-direction: column;
  }
  .dlwe-roster-shift-meta,
  .dlwe-roster-toolbar {
    grid-template-columns: 1fr;
  }
  .dlwe-roster-card-actions {
    width: 100%;
  }
}


/* Phase 8B — Wedding-Day Command Centre */
.dlwe-command-header{align-items:flex-start}
.dlwe-command-header-actions{max-width:900px;justify-content:flex-end;flex-wrap:wrap}
.dlwe-command-header-actions .dlwe-inline-month{min-width:170px}
.dlwe-command-summary{grid-template-columns:repeat(5,minmax(0,1fr))}
.dlwe-command-summary .is-warning{border-color:#d8a39c;background:#fff7f5}
.dlwe-command-tabs{margin:18px 0}
.dlwe-command-toolbar{grid-template-columns:minmax(240px,2fr) repeat(3,minmax(140px,1fr));margin-bottom:18px}
.dlwe-command-item-list{display:grid;gap:12px}
.dlwe-command-item{display:grid;grid-template-columns:105px minmax(0,1fr);gap:18px;padding:18px;border:1px solid #ded7cc;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(27,23,17,.045);position:relative;overflow:hidden}
.dlwe-command-item:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#c9b58a}
.dlwe-command-item.is-high:before{background:#a67936}
.dlwe-command-item.is-urgent{border-color:#d6a19b;background:#fff9f8}
.dlwe-command-item.is-urgent:before{background:#a84034}
.dlwe-command-time{border-right:1px solid #ece7de;padding-right:16px;display:flex;flex-direction:column;gap:4px}
.dlwe-command-time strong{font-family:Georgia,serif;font-size:22px;line-height:1.1}
.dlwe-command-time span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#776f64}
.dlwe-command-main{min-width:0}
.dlwe-command-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.dlwe-command-title-row h3{margin:4px 0 8px;font-family:Georgia,serif;font-size:20px}
.dlwe-command-event{font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:#9a7d4d}
.dlwe-command-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.dlwe-command-priority{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#f2eee7;color:#60584e;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.dlwe-command-priority.is-high{background:#f8ecd7;color:#7a531b}
.dlwe-command-priority.is-urgent{background:#f6dedb;color:#8b2f25}
.dlwe-command-main>p{margin:5px 0 10px;color:#514b43;line-height:1.55}
.dlwe-command-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.dlwe-command-meta>span,.dlwe-command-client-safe{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f7f4ef;color:#6a6259;font-size:11px}
.dlwe-command-client-safe{background:#edf4ee!important;color:#416149!important}
.dlwe-command-issue{padding:10px 12px;border-radius:12px;background:#fff0ed;color:#7a3028!important}
.dlwe-command-completion{padding:10px 12px;border-radius:12px;background:#eef5ef;color:#35563c!important}
.dlwe-command-vendor-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:#f8f6f1;margin:10px 0}
.dlwe-command-vendor-line strong{font-size:13px}
.dlwe-command-vendor-line span{font-size:11px;color:#726a60}
.dlwe-command-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}
.dlwe-command-ack-state{font-size:11px;font-weight:700;color:#3f6447;background:#e8f2ea;border-radius:999px;padding:6px 10px}
.dlwe-command-dual-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.dlwe-command-team-list,.dlwe-command-department-list,.dlwe-command-activity-list{display:grid;gap:12px}
.dlwe-command-team-card{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid #e1dbd1;border-radius:15px;background:#fff}
.dlwe-command-team-card>div:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.dlwe-command-team-card strong{font-size:14px}
.dlwe-command-team-card span,.dlwe-command-team-card small{font-size:11px;color:#746b60}
.dlwe-command-team-card small{font-weight:700}
.dlwe-command-department-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px;border:1px solid #e1dbd1;border-radius:15px;background:#fff}
.dlwe-command-department-card>div:first-child{display:flex;flex-direction:column;gap:4px}
.dlwe-command-department-card span{font-size:11px;color:#756d63}
.dlwe-command-progress{display:flex;align-items:center;gap:10px;min-width:150px}
.dlwe-command-progress>span{height:7px;flex:1;background:#eee8df;border-radius:999px;overflow:hidden}
.dlwe-command-progress i{display:block;height:100%;background:#9d875b;border-radius:999px}
.dlwe-command-activity{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:12px;align-items:flex-start;padding:13px 0;border-bottom:1px solid #ebe6dd}
.dlwe-command-activity-dot{width:10px;height:10px;border-radius:50%;background:#b79e6e;margin-top:5px}
.dlwe-command-activity>div{display:flex;flex-direction:column;gap:3px}
.dlwe-command-activity strong{font-size:13px}
.dlwe-command-activity span,.dlwe-command-activity small,.dlwe-command-activity p{font-size:11px;color:#746c63;margin:0}
.dlwe-command-editor{margin-top:10px}
.dlwe-command-client-safe-section{border-color:#b8cdbb;background:#f8fcf8}

/* Couple Portal — client-safe wedding status */
.dlwe-couple-command-status-list{display:grid;gap:12px;margin-top:20px}
.dlwe-couple-command-status-item{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:14px;align-items:flex-start;padding:17px;border:1px solid #e4ddd2;border-radius:16px;background:#fff}
.dlwe-couple-command-status-marker{width:10px;height:10px;border-radius:50%;background:#b59a5b;margin-top:7px;box-shadow:0 0 0 5px #f5f0e6}
.dlwe-couple-command-status-copy{display:flex;flex-direction:column;gap:6px}
.dlwe-couple-command-status-copy>div>span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#90774f}
.dlwe-couple-command-status-copy h3{margin:3px 0 0;font-family:Georgia,serif;font-size:19px}
.dlwe-couple-command-status-copy p{margin:0;color:#5e574f;line-height:1.55}
.dlwe-couple-command-status-copy small{color:#7b736a}
.dlwe-couple-command-status-meta{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.dlwe-couple-command-time{font-family:Georgia,serif;font-size:16px;font-weight:700}

@media (max-width:1180px){
  .dlwe-command-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dlwe-command-dual-grid{grid-template-columns:1fr}
  .dlwe-command-toolbar{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .dlwe-command-summary{grid-template-columns:1fr 1fr}
  .dlwe-command-toolbar{grid-template-columns:1fr}
  .dlwe-command-item{grid-template-columns:1fr;padding:15px}
  .dlwe-command-time{border-right:0;border-bottom:1px solid #ece7de;padding:0 0 10px;flex-direction:row;justify-content:space-between;align-items:center}
  .dlwe-command-title-row{flex-direction:column}
  .dlwe-command-pills{justify-content:flex-start}
  .dlwe-command-department-card{align-items:flex-start;flex-direction:column}
  .dlwe-command-progress{width:100%}
  .dlwe-couple-command-status-item{grid-template-columns:14px minmax(0,1fr)}
  .dlwe-couple-command-status-meta{grid-column:2;flex-direction:row;align-items:center}
}
@media (max-width:520px){
  .dlwe-command-summary{grid-template-columns:1fr}
}

/* Phase 9A — Secure Document Centre ------------------------------------- */
.dlwe-document-summary-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 20px;
}

.dlwe-document-summary-card,
.dlwe-document-toolbar-card,
.dlwe-document-activity-card {
  background: #fff;
  border: 1px solid rgba(49, 39, 25, 0.12);
  border-radius: 18px;
  box-shadow: 0 12px 34px rgba(26, 20, 13, 0.055);
}

.dlwe-document-summary-card {
  display: grid;
  gap: 6px;
  padding: 18px;
  min-height: 126px;
}

.dlwe-document-summary-card span {
  color: #766b5d;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dlwe-document-summary-card strong {
  color: #17120d;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
}

.dlwe-document-summary-card small {
  color: #8b8175;
  font-size: 12px;
  line-height: 1.45;
}

.dlwe-document-toolbar-card {
  margin-bottom: 20px;
  padding: 18px;
}

.dlwe-document-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(220px, 1.5fr) repeat(5, minmax(145px, 1fr));
  gap: 12px;
  align-items: end;
}

.dlwe-document-toolbar label,
.dlwe-document-modal-card label {
  display: grid;
  gap: 7px;
}

.dlwe-document-toolbar label > span,
.dlwe-document-modal-card label > span {
  color: #655b4e;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dlwe-document-library-card {
  margin-bottom: 20px;
}

.dlwe-document-table td {
  vertical-align: top;
}

.dlwe-document-table td small,
.dlwe-document-name small {
  display: block;
  margin-top: 5px;
  color: #8a8175;
  font-size: 11px;
  line-height: 1.4;
}

.dlwe-document-name {
  min-width: 220px;
}

.dlwe-document-name strong {
  display: block;
  color: #1b1611;
  font-size: 14px;
}

.dlwe-document-tag {
  display: inline-flex;
  margin: 7px 5px 0 0;
  padding: 3px 7px;
  border-radius: 999px;
  background: #f2ede4;
  color: #706555;
  font-size: 10px;
  font-weight: 700;
}

.dlwe-document-version {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  padding: 5px 8px;
  border-radius: 999px;
  background: #17120d;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}

.dlwe-document-expiry {
  display: inline-flex;
  padding: 5px 8px;
  border-radius: 999px;
  background: #f1eee8;
  color: #61584d;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.dlwe-document-expiry.is-warning {
  background: #fff1cf;
  color: #805900;
}

.dlwe-document-expiry.is-danger {
  background: #fde4e1;
  color: #9a3026;
}

.dlwe-document-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 190px;
}

.dlwe-document-row-actions button {
  appearance: none;
  border: 1px solid #d7cdbd;
  border-radius: 8px;
  background: #fff;
  color: #2d261e;
  cursor: pointer;
  font-size: 10px;
  font-weight: 750;
  padding: 6px 8px;
}

.dlwe-document-row-actions button:hover {
  border-color: #a98d52;
  background: #fbf7ef;
}

.dlwe-document-row-actions button.is-danger {
  border-color: #d8aaa5;
  color: #9b3027;
}

.dlwe-document-table tr.is-archived {
  opacity: .72;
}

.dlwe-document-approval-approved {
  background: #e3f3e8 !important;
  color: #2f7245 !important;
}

.dlwe-document-approval-pending-approval {
  background: #fff1cf !important;
  color: #805900 !important;
}

.dlwe-document-approval-rejected {
  background: #fde4e1 !important;
  color: #9a3026 !important;
}

.dlwe-document-activity-card {
  padding: 20px;
}

.dlwe-document-activity-list {
  display: grid;
  gap: 0;
}

.dlwe-document-activity-item {
  position: relative;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 12px;
  padding: 13px 0;
  border-bottom: 1px solid #eee8de;
}

.dlwe-document-activity-item:last-child {
  border-bottom: 0;
}

.dlwe-document-activity-dot {
  width: 9px;
  height: 9px;
  margin-top: 5px;
  border-radius: 50%;
  background: #b49a64;
  box-shadow: 0 0 0 4px #f4eee2;
}

.dlwe-document-activity-item strong {
  color: #201a14;
  font-size: 13px;
}

.dlwe-document-activity-item p {
  margin: 4px 0;
  color: #675e53;
  font-size: 12px;
}

.dlwe-document-activity-item small {
  color: #988f84;
  font-size: 11px;
}

.dlwe-document-modal[hidden] {
  display: none !important;
}

.dlwe-document-modal {
  position: fixed;
  z-index: 999999;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
}

.dlwe-document-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 12, 9, .68);
  backdrop-filter: blur(4px);
}

.dlwe-document-modal-card {
  position: relative;
  width: min(980px, 96vw);
  max-height: 92vh;
  overflow: auto;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 34px 110px rgba(0, 0, 0, .34);
}

.dlwe-document-modal-card > header,
.dlwe-document-modal-card > form > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  border-bottom: 1px solid #e9e1d5;
}

.dlwe-document-modal-card > form {
  margin: 0;
}

.dlwe-document-modal-card > form > .dlwe-form-grid {
  padding: 24px;
}

.dlwe-document-modal-card > form > footer {
  justify-content: flex-end;
  border-top: 1px solid #e9e1d5;
  border-bottom: 0;
}

.dlwe-document-modal-card h2 {
  margin: 3px 0 0;
}

.dlwe-icon-button {
  width: 38px;
  height: 38px;
  border: 1px solid #ded4c5;
  border-radius: 50%;
  background: #fff;
  color: #342c23;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
}

.dlwe-document-version-history {
  margin: 0 24px 24px;
  padding: 18px;
  border: 1px solid #e5ddcf;
  border-radius: 16px;
  background: #fbf9f5;
}

.dlwe-document-version-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid #e7dfd3;
}

.dlwe-document-version-item:last-child {
  border-bottom: 0;
}

.dlwe-document-version-item > div:first-child {
  display: grid;
  gap: 3px;
}

.dlwe-document-version-item > div:last-child {
  display: flex;
  gap: 7px;
}

.dlwe-document-version-item span,
.dlwe-document-version-item small,
.dlwe-document-version-item p {
  color: #756b5f;
  font-size: 11px;
}

.dlwe-document-version-item p {
  margin: 4px 0 0;
}

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

@container (max-width: 1180px) {
  .dlwe-document-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dlwe-document-toolbar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@container (max-width: 720px) {
  .dlwe-document-summary-grid,
  .dlwe-document-toolbar {
    grid-template-columns: 1fr;
  }

  .dlwe-document-modal {
    padding: 0;
  }

  .dlwe-document-modal-card {
    width: 100vw;
    max-height: 100vh;
    min-height: 100vh;
    border-radius: 0;
  }

  .dlwe-document-version-item {
    display: grid;
  }
}


/* Phase 9B — Notification Centre & Automations */
.dlwe-notification-header{align-items:flex-start}
.dlwe-notification-list{display:grid;gap:12px;padding:4px 0}
.dlwe-notification-item{display:grid;grid-template-columns:6px minmax(0,1fr) auto;gap:16px;align-items:start;border:1px solid #ded8cd;border-radius:16px;background:#fff;padding:16px;box-shadow:0 8px 24px rgba(29,25,20,.04)}
.dlwe-notification-item.is-unread{border-color:#cbb783;background:#fffdf8}
.dlwe-notification-item.is-read{opacity:.78}
.dlwe-notification-marker{width:6px;height:100%;min-height:72px;border-radius:99px;background:#b9b4aa}
.dlwe-notification-item.priority-critical .dlwe-notification-marker{background:#8f2f2f}
.dlwe-notification-item.priority-high .dlwe-notification-marker{background:#b77828}
.dlwe-notification-item.priority-normal .dlwe-notification-marker{background:#9b8250}
.dlwe-notification-item.priority-low .dlwe-notification-marker{background:#7c8b84}
.dlwe-notification-content h3{margin:7px 0 5px;font-family:Georgia,serif;font-size:18px}
.dlwe-notification-content p{margin:0 0 8px;white-space:pre-line}
.dlwe-notification-content small{color:#6f6a62}
.dlwe-notification-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#766f64;font-size:12px}
.dlwe-priority-label{text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.dlwe-notification-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:120px}
.dlwe-notification-settings-card{margin-top:22px}
.dlwe-notification-settings-card footer{display:flex;align-items:center;gap:16px;margin-top:18px;flex-wrap:wrap}
.dlwe-notification-rules{border:1px solid #ded8cd;border-radius:14px;padding:14px;display:flex;flex-wrap:wrap;gap:12px 20px}
.dlwe-notification-rules legend{padding:0 8px;font-weight:700}
.dlwe-notification-rules label{display:flex;gap:7px;align-items:center}
@media(max-width:760px){.dlwe-notification-item{grid-template-columns:5px minmax(0,1fr)}.dlwe-notification-actions{grid-column:2;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap}.dlwe-notification-header .dlwe-header-actions{width:100%}}

/* Phase 9C — Reports & Analytics */
.dlwe-reports-analytics-panel{container-type:inline-size}
.dlwe-analytics-filter-section{position:relative}
.dlwe-analytics-section{margin-top:22px;border:1px solid #ded8cd;border-radius:18px;background:#fff;padding:20px;box-shadow:0 10px 28px rgba(29,25,20,.04)}
.dlwe-analytics-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.dlwe-analytics-summary-card{display:flex;min-height:132px;flex-direction:column;justify-content:space-between;border:1px solid #ddd5c8;border-radius:16px;background:linear-gradient(150deg,#fff,#faf7f1);padding:17px}
.dlwe-analytics-summary-card span{color:#6f685f;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.dlwe-analytics-summary-card strong{margin:12px 0 4px;font-family:Georgia,serif;font-size:27px;font-weight:500;line-height:1.05}
.dlwe-analytics-summary-card small{color:#786f63;font-size:12px;line-height:1.45}
.dlwe-analytics-summary-card.is-positive{border-color:#b9cec1;background:#f8fcf9}
.dlwe-analytics-summary-card.is-warning{border-color:#d9c28f;background:#fffaf0}
.dlwe-analytics-summary-card.is-negative{border-color:#d8b3ad;background:#fff8f7}
.dlwe-analytics-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:22px}
.dlwe-analytics-two-column>.dlwe-form-section{margin:0;min-width:0}
.dlwe-analytics-alert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dlwe-analytics-alert{position:relative;display:grid;gap:8px;border:1px solid #ded8cd;border-left:5px solid #b59a5b;border-radius:14px;background:#fff;padding:15px}
.dlwe-analytics-alert.is-critical{border-left-color:#943b36;background:#fff9f8}
.dlwe-analytics-alert.is-warning,.dlwe-analytics-alert.is-high{border-left-color:#b67c2d;background:#fffbf3}
.dlwe-analytics-alert.is-low{border-left-color:#7c8b84;background:#f8fbfa}
.dlwe-analytics-alert>div{display:grid;gap:3px}
.dlwe-analytics-alert span{color:#766e62;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.dlwe-analytics-alert strong{font-family:Georgia,serif;font-size:16px;line-height:1.3}
.dlwe-analytics-alert p{margin:0;color:#4f4942;font-size:12px;line-height:1.55}
.dlwe-analytics-alert small{color:#746d64;font-size:11px}
.dlwe-analytics-bar-chart{display:grid;gap:14px;padding-top:4px}
.dlwe-analytics-bar-row{display:grid;gap:7px}
.dlwe-analytics-bar-label{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px}
.dlwe-analytics-bar-label span{font-weight:600}
.dlwe-analytics-bar-label strong{font-family:Georgia,serif;font-size:17px}
.dlwe-analytics-bar-track{height:10px;overflow:hidden;border-radius:99px;background:#eee9e0}
.dlwe-analytics-bar-track span{display:block;height:100%;border-radius:inherit;background:#9b8250;transition:width .25s ease}
.dlwe-analytics-bar-row.is-excellent .dlwe-analytics-bar-track span{background:#547762}
.dlwe-analytics-bar-row.is-on-track .dlwe-analytics-bar-track span{background:#7f9276}
.dlwe-analytics-bar-row.is-watch .dlwe-analytics-bar-track span{background:#b47b2f}
.dlwe-analytics-bar-row.is-critical .dlwe-analytics-bar-track span{background:#963f39}
.dlwe-analytics-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dlwe-analytics-financial-card{border:1px solid #d9cfbd;border-radius:16px;background:#fbf8f2;padding:16px}
.dlwe-analytics-financial-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e6ddce;padding-bottom:11px;margin-bottom:7px}
.dlwe-analytics-financial-card header strong{font-family:Georgia,serif;font-size:22px}
.dlwe-analytics-financial-card header span{color:#6f675d;font-size:11px}
.dlwe-analytics-financial-card>div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #ebe5db;font-size:12px}
.dlwe-analytics-financial-card>div:last-child{border-bottom:0}
.dlwe-analytics-financial-card>div span{color:#6d665d}
.dlwe-analytics-financial-card>div strong{text-align:right}
.dlwe-analytics-table{min-width:1180px}
.dlwe-analytics-table th,.dlwe-analytics-table td{vertical-align:top}
.dlwe-analytics-risk-row{background:#fffaf6}
.dlwe-analytics-score-pill{display:inline-flex;min-width:68px;flex-direction:column;align-items:center;border:1px solid #d8d1c5;border-radius:11px;padding:6px 9px;background:#faf8f4;text-align:center}
.dlwe-analytics-score-pill strong{font-family:Georgia,serif;font-size:17px;line-height:1}
.dlwe-analytics-score-pill small{margin-top:3px;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.dlwe-analytics-score-pill.is-excellent{border-color:#a9c1af;background:#f5faf6;color:#3f684c}
.dlwe-analytics-score-pill.is-on-track{border-color:#becab4;background:#f8faf5;color:#617554}
.dlwe-analytics-score-pill.is-watch{border-color:#dac18f;background:#fffaf0;color:#90621f}
.dlwe-analytics-score-pill.is-critical{border-color:#d6aaa6;background:#fff6f5;color:#8a332f}
.dlwe-analytics-progress-cell{display:grid;min-width:83px;gap:3px}
.dlwe-analytics-progress-cell>strong{font-size:12px}
.dlwe-analytics-progress-cell>small{color:#70695f;font-size:9px;white-space:nowrap}
.dlwe-analytics-progress-cell>span{display:block;height:5px;overflow:hidden;border-radius:99px;background:#ece7df}
.dlwe-analytics-progress-cell>span i{display:block;height:100%;border-radius:inherit;background:#7c957f}
.dlwe-analytics-progress-cell.is-risk>span i{background:#b77636}
.dlwe-analytics-trend-chart{overflow-x:auto;padding:5px 0 2px}
.dlwe-analytics-trend-legend{display:flex;flex-wrap:wrap;gap:12px 18px;margin-bottom:16px;color:#6b645b;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.dlwe-analytics-trend-legend span{display:flex;align-items:center;gap:6px}
.dlwe-analytics-trend-legend span:before{content:"";width:9px;height:9px;border-radius:2px;background:#8b7a62}
.dlwe-analytics-trend-legend .is-completed:before{background:#718a75}
.dlwe-analytics-trend-legend .is-command:before{background:#a17c46}
.dlwe-analytics-trend-legend .is-document:before{background:#7f8296}
.dlwe-analytics-trend-legend .is-meeting:before{background:#9a6f78}
.dlwe-analytics-trend-grid{display:flex;min-width:max-content;align-items:end;gap:12px;border-bottom:1px solid #d8d0c4;padding:10px 6px 0}
.dlwe-analytics-trend-grid article{display:grid;width:88px;gap:7px;text-align:center}
.dlwe-analytics-trend-grid article>strong{overflow:hidden;color:#6d665d;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.dlwe-analytics-trend-bars{display:flex;height:170px;align-items:end;justify-content:center;gap:3px}
.dlwe-analytics-trend-bars span{display:block;width:10px;min-height:0;border-radius:4px 4px 0 0;background:#8b7a62}
.dlwe-analytics-trend-bars .is-completed{background:#718a75}
.dlwe-analytics-trend-bars .is-command{background:#a17c46}
.dlwe-analytics-trend-bars .is-document{background:#7f8296}
.dlwe-analytics-trend-bars .is-meeting{background:#9a6f78}
.dlwe-analytics-metric-list{display:grid;gap:10px}
.dlwe-analytics-metric{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #e0d9ce;border-radius:13px;background:#fff;padding:13px 14px}
.dlwe-analytics-metric>div{display:grid;gap:3px}
.dlwe-analytics-metric span{font-size:12px;font-weight:700}
.dlwe-analytics-metric small{color:#70695f;font-size:10px}
.dlwe-analytics-metric>strong{font-family:Georgia,serif;font-size:18px;text-align:right;white-space:nowrap}
.dlwe-analytics-metric.is-positive{border-color:#bcd0c1;background:#f8fcf9}
.dlwe-analytics-metric.is-warning{border-color:#dec695;background:#fffaf1}
.dlwe-analytics-metric.is-negative{border-color:#d8b0ab;background:#fff8f7}

@container (max-width:1180px){
  .dlwe-analytics-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dlwe-analytics-alert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dlwe-analytics-financial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (max-width:760px){
  .dlwe-analytics-summary-grid,.dlwe-analytics-alert-grid,.dlwe-analytics-two-column,.dlwe-analytics-financial-grid{grid-template-columns:1fr}
  .dlwe-analytics-summary-card{min-height:112px}
  .dlwe-analytics-section{padding:15px}
  .dlwe-analytics-metric{align-items:flex-start;flex-direction:column;gap:8px}
  .dlwe-analytics-metric>strong{text-align:left}
}

@media print{
  body.dlwe-print-reports-analytics .dlwe-sidebar,
  body.dlwe-print-reports-analytics .dlwe-mobile-topbar,
  body.dlwe-print-reports-analytics .dlwe-header-actions,
  body.dlwe-print-reports-analytics #dlwe-analytics-message,
  body.dlwe-print-reports-analytics #dlwe-analytics-loading,
  body.dlwe-print-reports-analytics .dlwe-analytics-filter-section,
  body.dlwe-print-reports-analytics .dlwe-pagination-controls{display:none!important}
  body.dlwe-print-reports-analytics [data-dlwe-panel]{display:none!important}
  body.dlwe-print-reports-analytics [data-dlwe-panel="reports-analytics"]{display:block!important}
  body.dlwe-print-reports-analytics .dlwe-main,
  body.dlwe-print-reports-analytics .dlwe-portal-shell{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  body.dlwe-print-reports-analytics .dlwe-analytics-section,
  body.dlwe-print-reports-analytics .dlwe-form-section,
  body.dlwe-print-reports-analytics .dlwe-analytics-summary-card,
  body.dlwe-print-reports-analytics .dlwe-analytics-alert,
  body.dlwe-print-reports-analytics .dlwe-analytics-financial-card{box-shadow:none!important;break-inside:avoid}
  body.dlwe-print-reports-analytics .dlwe-table-scroll{overflow:visible!important}
  body.dlwe-print-reports-analytics .dlwe-analytics-table{min-width:0!important;font-size:8px}
  body.dlwe-print-reports-analytics .dlwe-analytics-table th,
  body.dlwe-print-reports-analytics .dlwe-analytics-table td{padding:5px!important}
  body.dlwe-print-reports-analytics .dlwe-analytics-two-column{break-inside:avoid}
}

/* ========================================================================
   Phase 10A — Mobile & Tablet Optimization (v4.8.4)
   Responsive navigation, touch controls, searchable long selectors,
   horizontal table controls, mobile operations and Couple Portal refinements.
   ======================================================================== */
:root {
  --dlwe-live-vh: 100dvh;
  --dlwe-safe-bottom: env(safe-area-inset-bottom, 0px);
  --dlwe-touch-target: 44px;
}

.dlwe-mobile-context-bar,
.dlwe-mobile-choice-button,
.dlwe-mobile-table-controls {
  display: none;
}

.dlwe-mobile-choice-finder[hidden],
.dlwe-couple-network-state[hidden] {
  display: none !important;
}

body.dlwe-choice-finder-open {
  overflow: hidden !important;
}

.dlwe-mobile-choice-finder {
  position: fixed;
  inset: 0;
  z-index: 100100;
  display: grid;
  place-items: center;
  padding: 24px;
}

.dlwe-mobile-choice-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(17, 14, 11, .72);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.dlwe-mobile-choice-dialog {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  width: min(680px, 100%);
  max-height: min(760px, calc(var(--dlwe-live-vh) - 48px));
  overflow: hidden;
  border: 1px solid rgba(181, 139, 73, .36);
  border-radius: 22px;
  background: #fffdf9;
  box-shadow: 0 30px 100px rgba(15, 12, 9, .35);
}

.dlwe-mobile-choice-dialog > header,
.dlwe-mobile-choice-dialog > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 17px 20px;
  background: #fffdf9;
}

.dlwe-mobile-choice-dialog > header {
  border-bottom: 1px solid #e7dfd3;
}

.dlwe-mobile-choice-dialog > header > div {
  display: grid;
  gap: 3px;
}

.dlwe-mobile-choice-dialog > header span {
  color: #8b7653;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.dlwe-mobile-choice-dialog > header h2 {
  margin: 0;
  color: #231f1a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  font-weight: 500;
}

.dlwe-mobile-choice-dialog > header > button {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  flex: 0 0 44px;
  border: 1px solid #dcd2c3;
  border-radius: 999px;
  background: #fff;
  color: #312a23;
  font-size: 26px;
  cursor: pointer;
}

.dlwe-mobile-choice-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 14px 20px;
  border-bottom: 1px solid #e7dfd3;
  background: #faf7f1;
}

.dlwe-mobile-choice-search input {
  width: 100%;
  min-height: 48px;
  border: 1px solid #d7cbb9;
  border-radius: 12px;
  padding: 11px 14px;
  background: #fff;
  font-size: 16px;
}

.dlwe-mobile-choice-search small {
  color: #756b5f;
  white-space: nowrap;
}

.dlwe-mobile-choice-list {
  min-height: 180px;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 10px;
  -webkit-overflow-scrolling: touch;
}

.dlwe-mobile-choice-option {
  display: flex;
  width: 100%;
  min-height: 56px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0;
  padding: 11px 13px;
  border: 0;
  border-bottom: 1px solid #eee7dd;
  border-radius: 10px;
  background: transparent;
  color: #28221c;
  text-align: left;
  cursor: pointer;
}

.dlwe-mobile-choice-option:hover,
.dlwe-mobile-choice-option:focus-visible,
.dlwe-mobile-choice-option:has(input:checked) {
  background: #f4ecdf;
}

.dlwe-mobile-choice-option > span {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.dlwe-mobile-choice-option strong {
  overflow: hidden;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-mobile-choice-option small {
  color: #776e64;
  font-size: 11px;
}

.dlwe-mobile-choice-option input {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  accent-color: #9b7942;
}

.dlwe-mobile-choice-option i {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  flex: 0 0 28px;
  border-radius: 999px;
  background: #6e845f;
  color: #fff;
  font-style: normal;
}

.dlwe-mobile-choice-dialog > footer {
  justify-content: flex-end;
  border-top: 1px solid #e7dfd3;
  padding-bottom: calc(17px + var(--dlwe-safe-bottom));
}

.dlwe-mobile-file-summary,
.dlwe-couple-file-summary {
  display: block;
  margin-top: 6px;
  color: #7b7267;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.dlwe-mobile-file-summary.has-files,
.dlwe-couple-file-summary.has-file {
  color: #496451;
  font-weight: 700;
}

/* Render long lists incrementally without changing data or pagination. */
.dlwe-command-item,
.dlwe-roster-shift-card,
.dlwe-roster-availability-card,
.dlwe-notification-item,
.dlwe-document-activity-item,
.dlwe-task-card,
.dlwe-my-wedding-card,
.dlwe-couple-document-row,
.dlwe-couple-payment-row,
.dlwe-couple-meeting-row {
  content-visibility: auto;
  contain-intrinsic-size: auto 150px;
}

@media (max-width: 1024px) {
  :root { --dlwe-touch-target: 46px; }

  .dlwe-mobile-context-bar {
    position: sticky;
    top: calc(var(--wp-admin--admin-bar--height, 0px) + 72px);
    z-index: 980;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: 10px;
    align-items: center;
    min-height: 58px;
    margin: -8px 0 20px;
    padding: 8px 10px;
    border: 1px solid rgba(177, 137, 76, .25);
    border-radius: 14px;
    background: rgba(255, 253, 249, .94);
    box-shadow: 0 8px 24px rgba(30, 24, 18, .08);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }

  .dlwe-mobile-context-menu,
  .dlwe-mobile-context-top {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid #d9cfbf;
    border-radius: 10px;
    background: #fff;
    color: #302920;
    padding: 8px 11px;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
  }

  .dlwe-mobile-context-title {
    display: grid;
    min-width: 0;
    gap: 1px;
  }

  .dlwe-mobile-context-title span {
    color: #817568;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
  }

  .dlwe-mobile-context-title strong {
    overflow: hidden;
    color: #2b251f;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .dlwe-mobile-connectivity {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #526858;
    font-size: 9px;
    font-weight: 800;
    white-space: nowrap;
  }

  .dlwe-mobile-connectivity i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #5d8067;
  }

  .dlwe-mobile-connectivity.is-slow { color: #8b682e; }
  .dlwe-mobile-connectivity.is-slow i { background: #bc8434; }
  .dlwe-mobile-connectivity.is-offline { color: #963e35; }
  .dlwe-mobile-connectivity.is-offline i { background: #a64a40; }

  body.dlwe-is-touch .dlwe-portal-shell button,
  body.dlwe-is-touch .dlwe-portal-shell a.dlwe-primary-button,
  body.dlwe-is-touch .dlwe-portal-shell a.dlwe-secondary-button,
  body.dlwe-is-touch .dlwe-portal-shell input:not([type="checkbox"]):not([type="radio"]),
  body.dlwe-is-touch .dlwe-portal-shell select,
  body.dlwe-is-touch .dlwe-portal-shell textarea {
    min-height: var(--dlwe-touch-target);
  }

  body.dlwe-is-touch .dlwe-portal-shell input[type="checkbox"],
  body.dlwe-is-touch .dlwe-portal-shell input[type="radio"] {
    width: 20px;
    height: 20px;
  }

  .dlwe-mobile-choice-button {
    display: grid;
    width: 100%;
    min-height: 48px;
    gap: 2px;
    margin-top: 7px;
    padding: 9px 12px;
    border: 1px dashed #bda77f;
    border-radius: 11px;
    background: #faf6ee;
    color: #554939;
    text-align: left;
    cursor: pointer;
  }

  .dlwe-mobile-choice-button span {
    color: #8b744e;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
  }

  .dlwe-mobile-choice-button strong {
    overflow: hidden;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .dlwe-mobile-table-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 10px 0 7px;
    padding: 7px 9px;
    border: 1px solid #e0d7c9;
    border-radius: 10px;
    background: #faf7f1;
    color: #71685e;
    font-size: 10px;
  }

  .dlwe-mobile-table-controls[hidden] { display: none !important; }

  .dlwe-mobile-table-controls > div { display: flex; gap: 6px; }

  .dlwe-mobile-table-controls button {
    display: grid;
    width: 38px;
    min-height: 36px !important;
    place-items: center;
    border: 1px solid #d7ccbb;
    border-radius: 8px;
    background: #fff;
    color: #443b32;
    cursor: pointer;
  }

  .dlwe-mobile-table-controls button:disabled { opacity: .35; }

  .dlwe-mobile-table-region {
    position: relative;
    scrollbar-width: thin;
    scrollbar-color: #b59a6c #eee8df;
  }

  .dlwe-mobile-table-region:focus-visible {
    outline: 3px solid rgba(181, 139, 73, .28);
    outline-offset: 3px;
  }

  .dlwe-mobile-table-region table thead th {
    position: sticky;
    top: 0;
    z-index: 3;
    background: #f6f1e9;
    box-shadow: inset 0 -1px 0 #dcd3c5;
  }

  .dlwe-portal-shell .dlwe-hr-tabs,
  .dlwe-portal-shell .dlwe-command-tabs,
  .dlwe-portal-shell .dlwe-roster-tabs,
  .dlwe-portal-shell .dlwe-task-tabs,
  .dlwe-portal-shell .dlwe-timeline-day-tabs,
  .dlwe-portal-shell .dlwe-couple-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    max-width: 100%;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  .dlwe-portal-shell .dlwe-hr-tabs > *,
  .dlwe-portal-shell .dlwe-command-tabs > *,
  .dlwe-portal-shell .dlwe-roster-tabs > *,
  .dlwe-portal-shell .dlwe-task-tabs > *,
  .dlwe-portal-shell .dlwe-timeline-day-tabs > * {
    flex: 0 0 auto !important;
    scroll-snap-align: center;
  }

  .dlwe-portal-shell .dlwe-panel-header,
  .dlwe-portal-shell .dlwe-portal-header,
  .dlwe-portal-shell .dlwe-command-header,
  .dlwe-portal-shell .dlwe-roster-header,
  .dlwe-portal-shell .dlwe-table-heading,
  .dlwe-portal-shell .dlwe-task-dashboard-card-heading {
    gap: 16px;
  }

  .dlwe-portal-shell .dlwe-command-header-actions,
  .dlwe-portal-shell .dlwe-roster-header-actions,
  .dlwe-portal-shell .dlwe-document-centre-panel .dlwe-header-actions {
    width: 100%;
    max-width: none;
    justify-content: flex-start;
  }

  .dlwe-portal-shell .dlwe-command-item,
  .dlwe-portal-shell .dlwe-roster-shift-card {
    scroll-margin-top: 152px;
  }

  .dlwe-document-modal,
  .dlwe-calendar-modal,
  .dlwe-user-delete-modal,
  .dlwe-quick-actions-modal,
  .dlwe-reset-result-modal {
    padding: 16px !important;
  }

  .dlwe-document-modal-card,
  .dlwe-calendar-modal-card,
  .dlwe-user-delete-dialog,
  .dlwe-quick-actions-dialog,
  .dlwe-reset-result-dialog {
    max-height: calc(var(--dlwe-live-vh) - 32px) !important;
    overscroll-behavior: contain;
  }

  .dlwe-document-modal-card > header,
  .dlwe-document-modal-card > form > footer,
  .dlwe-calendar-modal-card > header,
  .dlwe-calendar-modal-actions {
    position: sticky;
    z-index: 5;
    background: #fffdf9;
  }

  .dlwe-document-modal-card > header,
  .dlwe-calendar-modal-card > header { top: 0; }

  .dlwe-document-modal-card > form > footer,
  .dlwe-calendar-modal-actions {
    bottom: 0;
    padding-bottom: calc(16px + var(--dlwe-safe-bottom));
  }

  /* Tablet wedding-day command layout. */
  body.dlwe-is-tablet.dlwe-is-landscape .dlwe-command-item-list,
  body.dlwe-is-tablet.dlwe-is-landscape .dlwe-roster-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.dlwe-is-tablet.dlwe-is-landscape .dlwe-command-item {
    grid-template-columns: 82px minmax(0, 1fr);
  }

  body.dlwe-is-tablet.dlwe-is-landscape .dlwe-command-summary {
    grid-template-columns: repeat(5, minmax(130px, 1fr));
    overflow-x: auto;
  }

  .dlwe-roster-availability-calendar {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .dlwe-roster-calendar-grid { min-width: 760px; }
}

@media (max-width: 760px) {
  :root { --dlwe-touch-target: 48px; }

  .dlwe-mobile-context-bar {
    top: calc(var(--wp-admin--admin-bar--height, 0px) + 66px);
    grid-template-columns: auto minmax(0, 1fr) auto;
    margin: -6px 0 16px;
  }

  .dlwe-mobile-connectivity { grid-column: 2; }
  .dlwe-mobile-context-top { grid-column: 3; grid-row: 1 / span 2; }
  .dlwe-mobile-context-menu { grid-row: 1 / span 2; }

  .dlwe-portal-shell .dlwe-main {
    padding-bottom: calc(36px + var(--dlwe-safe-bottom)) !important;
  }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-command-header-actions,
  .dlwe-portal-shell .dlwe-roster-header-actions,
  .dlwe-portal-shell .dlwe-document-centre-panel .dlwe-header-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px !important;
  }

  .dlwe-portal-shell .dlwe-header-actions > *,
  .dlwe-portal-shell .dlwe-command-header-actions > *,
  .dlwe-portal-shell .dlwe-roster-header-actions > *,
  .dlwe-portal-shell .dlwe-document-centre-panel .dlwe-header-actions > * {
    width: 100% !important;
    min-width: 0 !important;
  }

  .dlwe-portal-shell .dlwe-summary-grid,
  .dlwe-portal-shell .dlwe-task-summary,
  .dlwe-portal-shell .dlwe-command-summary,
  .dlwe-portal-shell .dlwe-document-summary-grid,
  .dlwe-portal-shell .dlwe-roster-summary,
  .dlwe-portal-shell .dlwe-analytics-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dlwe-portal-shell .dlwe-summary-card,
  .dlwe-portal-shell .dlwe-task-summary-card,
  .dlwe-portal-shell .dlwe-document-summary-card,
  .dlwe-portal-shell .dlwe-analytics-summary-card {
    min-height: 104px !important;
    padding: 14px !important;
  }

  .dlwe-portal-shell .dlwe-summary-card strong,
  .dlwe-portal-shell .dlwe-task-summary-card strong,
  .dlwe-portal-shell .dlwe-document-summary-card strong,
  .dlwe-portal-shell .dlwe-analytics-summary-card strong {
    font-size: clamp(20px, 7vw, 28px) !important;
  }

  .dlwe-command-tabs,
  .dlwe-roster-tabs {
    position: sticky;
    top: calc(var(--wp-admin--admin-bar--height, 0px) + 132px);
    z-index: 20;
    background: rgba(248, 244, 237, .96);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
  }

  .dlwe-command-item {
    gap: 12px !important;
    border-radius: 15px !important;
  }

  .dlwe-command-actions,
  .dlwe-roster-card-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px !important;
    margin-right: -4px;
    margin-left: -4px;
    padding: 10px 4px 2px;
    border-top: 1px solid #eee7dd;
    background: linear-gradient(to bottom, rgba(255,255,255,.8), #fff 28%);
  }

  .dlwe-command-actions > *,
  .dlwe-roster-card-actions > * {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center;
  }

  .dlwe-command-title-row h3 { font-size: 19px; }
  .dlwe-command-time strong { font-size: 19px; }

  .dlwe-roster-shift-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dlwe-document-toolbar,
  .dlwe-command-toolbar,
  .dlwe-roster-toolbar {
    grid-template-columns: 1fr !important;
  }

  .dlwe-document-modal-card,
  .dlwe-calendar-modal-card,
  .dlwe-user-delete-dialog,
  .dlwe-quick-actions-dialog,
  .dlwe-reset-result-dialog {
    width: 100% !important;
    max-width: none !important;
    border-radius: 18px !important;
  }

  .dlwe-document-modal-card > form,
  .dlwe-calendar-modal-card {
    -webkit-overflow-scrolling: touch;
  }

  .dlwe-document-version-item {
    grid-template-columns: 1fr !important;
  }

  .dlwe-document-version-item > div:last-child {
    justify-content: flex-start !important;
  }

  .dlwe-mobile-choice-finder {
    align-items: end;
    padding: 0;
  }

  .dlwe-mobile-choice-dialog {
    width: 100%;
    max-height: min(88dvh, var(--dlwe-live-vh));
    border-radius: 22px 22px 0 0;
    border-bottom: 0;
  }
}

@media (max-width: 620px) {
  .dlwe-mobile-context-menu span:last-child,
  .dlwe-mobile-context-top span,
  .dlwe-mobile-table-controls > span b {
    display: none;
  }

  .dlwe-mobile-context-menu,
  .dlwe-mobile-context-top {
    width: 44px;
    padding: 8px;
  }

  .dlwe-mobile-context-title strong { font-size: 14px; }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-command-header-actions,
  .dlwe-portal-shell .dlwe-roster-header-actions,
  .dlwe-portal-shell .dlwe-document-centre-panel .dlwe-header-actions {
    grid-template-columns: 1fr 1fr !important;
  }

  .dlwe-portal-shell .dlwe-header-actions > :only-child,
  .dlwe-portal-shell .dlwe-header-actions > :last-child:nth-child(odd),
  .dlwe-portal-shell .dlwe-command-header-actions > :last-child:nth-child(odd),
  .dlwe-portal-shell .dlwe-roster-header-actions > :last-child:nth-child(odd),
  .dlwe-portal-shell .dlwe-document-centre-panel .dlwe-header-actions > :last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  .dlwe-portal-shell .dlwe-form-section,
  .dlwe-portal-shell .dlwe-table-card,
  .dlwe-portal-shell .dlwe-task-editor,
  .dlwe-portal-shell .dlwe-client-editor,
  .dlwe-portal-shell .dlwe-workspace-card,
  .dlwe-portal-shell .dlwe-document-toolbar-card,
  .dlwe-portal-shell .dlwe-document-activity-card,
  .dlwe-portal-shell .dlwe-analytics-section {
    border-radius: 14px !important;
  }

  .dlwe-portal-shell .dlwe-form-grid > *,
  .dlwe-portal-shell .dlwe-form-grid .dlwe-field,
  .dlwe-portal-shell .dlwe-field-wide,
  .dlwe-portal-shell .dlwe-field-full {
    min-width: 0;
    grid-column: 1 / -1 !important;
  }

  .dlwe-command-actions,
  .dlwe-roster-card-actions {
    grid-template-columns: 1fr 1fr !important;
  }

  .dlwe-roster-shift-heading,
  .dlwe-roster-availability-card,
  .dlwe-roster-conflict-card {
    gap: 10px !important;
  }

  /* Document tables become readable mobile cards instead of tiny columns. */
  .dlwe-mobile-card-table {
    min-width: 0 !important;
    border: 0 !important;
  }

  .dlwe-mobile-card-table thead { display: none !important; }
  .dlwe-mobile-card-table tbody,
  .dlwe-mobile-card-table tr,
  .dlwe-mobile-card-table td {
    display: block !important;
    width: 100% !important;
  }

  .dlwe-mobile-card-table tr {
    margin: 0 0 12px;
    padding: 12px;
    border: 1px solid #ded5c8;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 7px 18px rgba(31, 25, 18, .04);
  }

  .dlwe-mobile-card-table td {
    display: grid !important;
    grid-template-columns: minmax(88px, .36fr) minmax(0, .64fr);
    gap: 10px;
    min-width: 0 !important;
    padding: 8px 3px !important;
    border: 0 !important;
    border-bottom: 1px solid #eee7dd !important;
    text-align: left !important;
  }

  .dlwe-mobile-card-table td:last-child { border-bottom: 0 !important; }
  .dlwe-mobile-card-table td::before {
    content: attr(data-label);
    color: #7e7265;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
  }

  .dlwe-mobile-card-table .dlwe-document-row-actions {
    justify-content: flex-start !important;
  }

  .dlwe-mobile-choice-dialog > footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .dlwe-mobile-choice-dialog > footer #dlwe-mobile-choice-apply {
    grid-column: 1 / -1;
  }

  body.dlwe-mobile-keyboard-open .dlwe-mobile-context-bar,
  body.dlwe-mobile-keyboard-open .dlwe-command-tabs,
  body.dlwe-mobile-keyboard-open .dlwe-roster-tabs {
    position: static !important;
  }
}

/* Couple Portal phone and tablet refinements. */
.dlwe-couple-network-state {
  position: sticky;
  top: 0;
  z-index: 60;
  padding: 10px 18px;
  background: #8e3b32;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

@media (max-width: 980px) {
  .dlwe-couple-main {
    width: min(100% - 28px, 920px);
    padding-top: 28px;
  }

  .dlwe-couple-tabs {
    position: sticky;
    top: 82px;
    z-index: 18;
    scroll-snap-type: x proximity;
    padding: 7px;
    background: rgba(255, 253, 249, .95);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }

  .dlwe-couple-tabs button { scroll-snap-align: center; }

  body.dlwe-is-touch .dlwe-couple-shell button,
  body.dlwe-is-touch .dlwe-couple-shell input,
  body.dlwe-is-touch .dlwe-couple-shell select,
  body.dlwe-is-touch .dlwe-couple-shell textarea,
  body.dlwe-is-touch .dlwe-couple-shell a.dlwe-button-link {
    min-height: 46px;
  }
}

@media (max-width: 680px) {
  .dlwe-couple-topbar {
    position: sticky;
    top: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 13px 15px;
  }

  .dlwe-couple-topbar > div:first-child { min-width: 0; }
  .dlwe-couple-topbar .dlwe-sidebar-brand { font-size: 21px !important; }
  .dlwe-couple-topbar .dlwe-sidebar-subtitle { font-size: 8px !important; }

  .dlwe-couple-user {
    width: auto;
    flex-direction: row;
  }

  .dlwe-couple-user > span:not(.dlwe-user-avatar) { display: none; }
  .dlwe-couple-user .dlwe-secondary-button { width: auto !important; min-width: 78px; }

  .dlwe-couple-main {
    width: calc(100% - 20px);
    padding: 18px 0 calc(32px + var(--dlwe-safe-bottom));
  }

  .dlwe-couple-hero {
    gap: 20px;
    padding: 24px 20px;
    border-radius: 0;
  }

  .dlwe-couple-hero h1 { font-size: clamp(34px, 12vw, 52px); }
  .dlwe-couple-hero .dlwe-muted { font-size: 14px; line-height: 1.6; }
  .dlwe-couple-countdown { padding: 18px; }

  .dlwe-couple-tabs {
    top: 68px;
    gap: 5px;
    margin: 14px 0;
    border-radius: 13px;
  }

  .dlwe-couple-tabs button {
    min-width: 112px;
    min-height: 44px;
    padding: 9px 11px;
    font-size: 12px;
  }

  .dlwe-couple-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin: 12px 0;
  }

  .dlwe-couple-summary-card {
    min-height: 105px;
    padding: 15px;
  }

  .dlwe-couple-summary-card strong { font-size: 20px; }

  .dlwe-couple-card {
    padding: 20px 16px;
    border-radius: 14px;
  }

  .dlwe-couple-card-heading { margin-bottom: 17px; padding-bottom: 13px; }
  .dlwe-couple-card-heading h2 { font-size: 25px; }

  .dlwe-couple-document-row,
  .dlwe-couple-payment-row,
  .dlwe-couple-meeting-row,
  .dlwe-couple-finance-document {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 11px !important;
    padding: 14px !important;
  }

  .dlwe-couple-document-row > .dlwe-button-link,
  .dlwe-couple-document-actions,
  .dlwe-couple-meeting-actions,
  .dlwe-couple-finance-actions,
  .dlwe-couple-payment-row > .dlwe-status-pill {
    grid-column: 1 / -1;
    width: 100%;
    justify-content: stretch;
  }

  .dlwe-couple-document-actions > *,
  .dlwe-couple-meeting-actions > *,
  .dlwe-couple-finance-actions > *,
  .dlwe-couple-document-row > .dlwe-button-link {
    width: 100% !important;
    justify-content: center;
  }

  .dlwe-couple-upload-form,
  .dlwe-couple-document-upload-grid {
    grid-template-columns: 1fr !important;
  }

  .dlwe-couple-progress-ring {
    width: 128px;
    height: 128px;
  }

  .dlwe-couple-progress-ring::before { width: 98px; height: 98px; }
  .dlwe-couple-progress-ring strong { font-size: 29px; }

  .dlwe-couple-footer { gap: 6px; font-size: 10px; }
}

@media (max-width: 420px) {
  .dlwe-couple-summary-grid { grid-template-columns: 1fr 1fr; }
  .dlwe-couple-summary-card span { font-size: 9px; }
  .dlwe-couple-summary-card small { font-size: 10px; }
  .dlwe-couple-document-row,
  .dlwe-couple-payment-row,
  .dlwe-couple-meeting-row { grid-template-columns: 1fr !important; }
  .dlwe-couple-document-icon { width: 40px; height: 40px; }
}

@media (prefers-reduced-motion: reduce) {
  .dlwe-mobile-choice-dialog,
  .dlwe-mobile-table-region,
  .dlwe-couple-tabs,
  .dlwe-command-tabs,
  .dlwe-roster-tabs {
    scroll-behavior: auto !important;
  }
}

@media print {
  .dlwe-mobile-context-bar,
  .dlwe-mobile-table-controls,
  .dlwe-mobile-choice-button,
  .dlwe-mobile-choice-finder,
  .dlwe-couple-network-state {
    display: none !important;
  }

  .dlwe-mobile-table-region {
    overflow: visible !important;
  }
}

/* Phase 10A loading, error and offline visibility refinements. */
@media (max-width: 1024px) {
  .dlwe-portal-shell .dlwe-form-loading {
    min-height: 96px;
    border: 1px solid #e2d9cc;
    border-radius: 14px;
    background: linear-gradient(100deg, #faf7f1 20%, #fff 38%, #faf7f1 56%);
    background-size: 220% 100%;
    animation: dlweMobileLoadingSweep 1.5s linear infinite;
  }

  .dlwe-portal-shell .dlwe-alert {
    scroll-margin-top: 150px;
    overflow-wrap: anywhere;
  }

  .dlwe-portal-shell button:disabled,
  .dlwe-portal-shell .is-loading {
    cursor: wait;
  }
}

@keyframes dlweMobileLoadingSweep {
  to { background-position-x: -220%; }
}

.dlwe-couple-network-state:not([hidden]) + .dlwe-couple-topbar {
  top: 36px;
}

@media (prefers-reduced-motion: reduce) {
  .dlwe-portal-shell .dlwe-form-loading { animation: none !important; }
}


/* Phase 10B — Security, Audit, Backups & Maintenance */
.dlwe-security-global-mode{display:flex;align-items:center;gap:14px;padding:12px 18px;margin:0 0 18px;border:1px solid #c7a86b;border-radius:14px;background:#fff8e8;box-shadow:0 8px 24px rgba(34,27,17,.06)}
.dlwe-security-global-mode strong{font-family:Georgia,serif;letter-spacing:.03em}
.dlwe-security-global-mode span{color:#66593f}
.dlwe-security-panel{--security-pass:#2f6b52;--security-warning:#9a6a16;--security-fail:#a23a38}
.dlwe-security-mode-banner{display:flex;align-items:center;gap:14px;padding:14px 18px;margin-bottom:18px;border-radius:14px;border:1px solid #d2b774;background:#fff8e7}
.dlwe-security-mode-banner strong{font-family:Georgia,serif;font-size:18px}
.dlwe-security-mode-banner.mode-full_maintenance,.dlwe-security-mode-banner.mode-read_only{border-color:#b76662;background:#fff1f0}
.dlwe-security-tabs{display:flex;gap:8px;overflow-x:auto;padding:5px;margin-bottom:20px;border:1px solid #ddd3c2;border-radius:16px;background:#f8f5ef;scrollbar-width:thin}
.dlwe-security-tabs button{flex:0 0 auto;border:0;background:transparent;padding:11px 17px;border-radius:11px;font:inherit;font-weight:700;color:#655d50;cursor:pointer}
.dlwe-security-tabs button.is-active{background:#1d1b18;color:#fff;box-shadow:0 6px 18px rgba(29,27,24,.18)}
.dlwe-security-tab-panel{animation:dlweSecurityFade .2s ease}
@keyframes dlweSecurityFade{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}
.dlwe-security-overview-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:20px}
.dlwe-security-score-card{display:flex;flex-direction:column}
#dlwe-security-score{display:flex;align-items:center;justify-content:center;gap:24px;min-height:260px;padding:24px}
.dlwe-security-score-ring{--dlwe-security-score:0;position:relative;width:170px;height:170px;border-radius:50%;display:grid;place-items:center;text-align:center;background:conic-gradient(#1d1b18 calc(var(--dlwe-security-score) * 1%),#e8e2d7 0)}
.dlwe-security-score-ring:before{content:"";position:absolute;inset:13px;border-radius:50%;background:#fff}
.dlwe-security-score-ring strong,.dlwe-security-score-ring span{position:relative;z-index:1;display:block}
.dlwe-security-score-ring strong{font-family:Georgia,serif;font-size:39px}
.dlwe-security-score-ring span{font-size:12px;color:#6f675b;margin-top:-36px}
.dlwe-security-score-copy{display:grid;gap:9px}
.dlwe-security-score-copy p{margin:0;padding:10px 12px;border-radius:10px;background:#f7f3ec;font-weight:700;color:#575045}
.dlwe-security-event-list{display:grid;gap:9px}
.dlwe-security-event{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #e5ddd0;border-left:4px solid #777;border-radius:12px;background:#fff}
.dlwe-security-event.severity-warning{border-left-color:var(--security-warning)}
.dlwe-security-event.severity-high,.dlwe-security-event.severity-critical{border-left-color:var(--security-fail)}
.dlwe-security-event div{display:grid;gap:2px}.dlwe-security-event span,.dlwe-security-event time{font-size:12px;color:#756d61}
.dlwe-security-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) repeat(3,minmax(150px,.35fr));gap:10px;margin:16px 0}
.dlwe-security-toolbar input,.dlwe-security-toolbar select{min-height:45px;border:1px solid #d8d0c2;border-radius:11px;padding:0 12px;background:#fff}
.dlwe-security-audit-table td small{display:block;color:#7b7368;margin-top:3px}
.dlwe-security-audit-table td:last-child{min-width:260px;white-space:normal}
.dlwe-security-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#ece8e0}
.dlwe-security-pill.severity-warning{background:#fff0ca;color:#755010}
.dlwe-security-pill.severity-high,.dlwe-security-pill.severity-critical{background:#f9d9d7;color:#812f2c}
.dlwe-security-backup-note{max-width:720px;margin-bottom:15px}
.dlwe-security-backup-list{display:grid;gap:14px}
.dlwe-security-backup-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px;border:1px solid #ddd4c5;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(38,31,20,.04)}
.dlwe-security-backup-card.status-partial,.dlwe-security-backup-card.status-validation_failed{border-color:#d7a87b;background:#fffaf4}
.dlwe-security-backup-main{display:flex;gap:14px;min-width:0}
.dlwe-security-backup-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:13px;background:#1d1b18;color:#fff;font-family:Georgia,serif;font-size:20px}
.dlwe-security-backup-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;color:#756d61}
.dlwe-security-backup-card h3{margin:8px 0 4px;font-family:Georgia,serif}
.dlwe-security-backup-card p{margin:0;color:#6e665b}
.dlwe-security-backup-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.dlwe-security-error-copy{display:block;color:#8b3734;margin-top:7px}
.dlwe-danger-text{color:#9d312e!important}
.dlwe-security-settings-form{padding:22px}
.dlwe-security-warning{padding:15px 17px;margin:15px 0 20px;border:1px solid #dbbc81;border-radius:13px;background:#fff8e8}
.dlwe-security-warning p{margin:4px 0 0;color:#6f6045}
.dlwe-security-diagnostic-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px;padding:20px 22px;border-radius:16px;background:#f2f5f1;border:1px solid #cbdacc}
.dlwe-security-diagnostic-hero.status-action-required{background:#fff1f0;border-color:#e0b1af}
.dlwe-security-diagnostic-hero.status-review{background:#fff8e8;border-color:#e0c88e}
.dlwe-security-diagnostic-hero div{display:flex;align-items:baseline;gap:12px}.dlwe-security-diagnostic-hero strong{font-family:Georgia,serif;font-size:38px}.dlwe-security-diagnostic-hero p{font-weight:800;text-align:right}.dlwe-security-diagnostic-hero small{display:block;font-weight:400;color:#786f63}
.dlwe-security-check-list{display:grid;gap:10px;margin-bottom:20px}
.dlwe-security-check{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;border:1px solid #ddd5c8;border-radius:13px;background:#fff}
.dlwe-security-check-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;font-weight:900;background:#e7f0ea;color:var(--security-pass)}
.dlwe-security-check.status-warning .dlwe-security-check-mark{background:#fff0ca;color:var(--security-warning)}
.dlwe-security-check.status-fail .dlwe-security-check-mark{background:#f9d9d7;color:var(--security-fail)}
.dlwe-security-check p{margin:3px 0 0;color:#6f675c}
.dlwe-security-maintenance-card{max-width:620px;margin:50px auto}
.dlwe-read-only-fieldset{opacity:.7;pointer-events:none}

@media (max-width:1100px){
  .dlwe-security-overview-grid{grid-template-columns:1fr}
  .dlwe-security-toolbar{grid-template-columns:1fr 1fr}
  .dlwe-security-backup-card{grid-template-columns:1fr}
  .dlwe-security-backup-actions{justify-content:flex-start}
}
@media (max-width:680px){
  .dlwe-security-global-mode{align-items:flex-start;flex-direction:column;gap:4px}
  .dlwe-security-toolbar{grid-template-columns:1fr}
  #dlwe-security-score{flex-direction:column}
  .dlwe-security-score-ring{width:145px;height:145px}
  .dlwe-security-backup-main{align-items:flex-start}
  .dlwe-security-backup-actions{display:grid;grid-template-columns:1fr 1fr}
  .dlwe-security-backup-actions a,.dlwe-security-backup-actions button{width:100%;justify-content:center}
  .dlwe-security-check{grid-template-columns:34px minmax(0,1fr)}
  .dlwe-security-check>.dlwe-status-pill{grid-column:2;justify-self:start}
  .dlwe-security-diagnostic-hero{align-items:flex-start;flex-direction:column}
  .dlwe-security-diagnostic-hero p{text-align:left}
}
@media print{
  body.dlwe-print-security-audit .dlwe-sidebar,
  body.dlwe-print-security-audit .dlwe-mobile-context-bar,
  body.dlwe-print-security-audit .dlwe-portal-header,
  body.dlwe-print-security-audit .dlwe-security-tabs,
  body.dlwe-print-security-audit .dlwe-security-toolbar,
  body.dlwe-print-security-audit .dlwe-security-tab-panel:not([data-security-panel="audit"]),
  body.dlwe-print-security-audit .dlwe-header-actions{display:none!important}
  body.dlwe-print-security-audit [data-dlwe-panel]{display:none!important}
  body.dlwe-print-security-audit [data-dlwe-panel="security-backups"]{display:block!important}
  body.dlwe-print-security-audit [data-security-panel="audit"]{display:block!important}
  body.dlwe-print-security-audit .dlwe-portal-main{padding:0!important}
  body.dlwe-print-security-audit .dlwe-table-scroll{overflow:visible}
  body.dlwe-print-security-audit table{font-size:9px}
}

/* Phase 10C - Production Launch Centre */
.dlwe-launch-panel{--launch-gold:#9b8250}
.dlwe-launch-release-banner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}
.dlwe-launch-release-banner>div{display:grid;gap:6px;border:1px solid #ddd4c5;border-radius:15px;background:linear-gradient(145deg,#fff,#faf7f1);padding:15px}
.dlwe-launch-release-banner span{color:#746c62;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.dlwe-launch-release-banner strong{font-family:Georgia,serif;font-size:21px;font-weight:500}
.dlwe-launch-progress-card{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(280px,2fr);align-items:center;gap:24px;border:1px solid #d9cfbd;border-radius:18px;background:#fbf8f2;padding:20px;margin-bottom:16px}
.dlwe-launch-progress-card>div:first-child{display:grid;gap:5px}
.dlwe-launch-progress-card strong{font-family:Georgia,serif;font-size:42px;font-weight:500;line-height:1}
.dlwe-launch-progress-card span{color:#6f675d;font-size:12px}
.dlwe-launch-progress-track,.dlwe-launch-mini-track{overflow:hidden;border-radius:99px;background:#e9e2d6}
.dlwe-launch-progress-track{height:15px}
.dlwe-launch-progress-track span,.dlwe-launch-mini-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#76623e,#b49a63);transition:width .25s ease}
.dlwe-launch-quick-links{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}
.dlwe-launch-quick-links button{border:1px solid #d8d0c3;border-radius:99px;background:#fff;padding:9px 14px;color:#453f38;font:inherit;font-size:12px;cursor:pointer}
.dlwe-launch-quick-links button:hover{border-color:#9b8250;background:#fbf8f2}
.dlwe-launch-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dlwe-launch-group{overflow:hidden;border:1px solid #ddd6ca;border-radius:16px;background:#fff}
.dlwe-launch-group>header{display:grid;gap:9px;border-bottom:1px solid #ebe5dc;background:#faf8f4;padding:13px 15px}
.dlwe-launch-group>header>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dlwe-launch-group>header strong{font-family:Georgia,serif;font-size:16px;font-weight:500}
.dlwe-launch-group>header span{color:#716960;font-size:11px}
.dlwe-launch-mini-track{height:5px}
.dlwe-launch-check{display:block;border-bottom:1px solid #eee9e1;cursor:pointer}
.dlwe-launch-check:last-child{border-bottom:0}
.dlwe-launch-check input{position:absolute;opacity:0;pointer-events:none}
.dlwe-launch-check>span{display:grid;grid-template-columns:21px 1fr;align-items:start;gap:10px;padding:12px 14px;color:#4f4942;font-size:12px;line-height:1.5}
.dlwe-launch-check i{display:grid;width:19px;height:19px;place-items:center;border:1px solid #c9c0b2;border-radius:6px;background:#fff;margin-top:1px}
.dlwe-launch-check input:checked+span{background:#f8fbf8;color:#355340;text-decoration:none}
.dlwe-launch-check input:checked+span i{border-color:#547762;background:#547762}
.dlwe-launch-check input:checked+span i:after{content:'✓';color:#fff;font-size:12px;font-style:normal;font-weight:700}
.dlwe-launch-check input:focus-visible+span{outline:2px solid #9b8250;outline-offset:-2px}
.dlwe-launch-two-column{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin-top:20px}
.dlwe-launch-two-column>.dlwe-form-section{margin:0}
.dlwe-launch-two-column textarea{width:100%;min-height:210px;resize:vertical}
.dlwe-launch-signoff-message{display:grid;gap:3px;border:1px solid #ddd4c6;border-radius:13px;background:#faf8f4;padding:14px;margin-top:14px}
.dlwe-launch-signoff-message strong{font-family:Georgia,serif;font-size:17px;font-weight:500}
.dlwe-launch-signoff-message span{color:#6d655c;font-size:11px}
.dlwe-launch-plan{margin-top:20px}
.dlwe-launch-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.dlwe-launch-step-grid article{display:grid;align-content:start;gap:9px;border:1px solid #ddd5c8;border-radius:15px;background:#fff;padding:15px}
.dlwe-launch-step-grid article>span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#3d3933;color:#fff;font-family:Georgia,serif}
.dlwe-launch-step-grid strong{font-family:Georgia,serif;font-size:16px;font-weight:500}
.dlwe-launch-step-grid p{margin:0;color:#665f56;font-size:11px;line-height:1.55}
@media(max-width:1050px){.dlwe-launch-release-banner,.dlwe-launch-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dlwe-launch-checklist{grid-template-columns:1fr}.dlwe-launch-two-column{grid-template-columns:1fr}}
@media(max-width:720px){.dlwe-launch-release-banner{grid-template-columns:repeat(2,minmax(0,1fr))}.dlwe-launch-progress-card{grid-template-columns:1fr;gap:14px}.dlwe-launch-progress-card strong{font-size:36px}.dlwe-launch-step-grid{grid-template-columns:1fr}.dlwe-launch-quick-links{display:grid;grid-template-columns:1fr 1fr}.dlwe-launch-quick-links button{border-radius:12px;text-align:left}}
@media print{body.dlwe-print-launch-centre .dlwe-sidebar,body.dlwe-print-launch-centre .dlwe-mobile-context-bar,body.dlwe-print-launch-centre .dlwe-header-actions,body.dlwe-print-launch-centre .dlwe-launch-quick-links,body.dlwe-print-launch-centre #dlwe-launch-reset{display:none!important}body.dlwe-print-launch-centre .dlwe-main,body.dlwe-print-launch-centre .dlwe-portal-main{padding:0!important}body.dlwe-print-launch-centre [data-dlwe-panel]{display:none!important}body.dlwe-print-launch-centre [data-dlwe-panel="launch-centre"]{display:block!important;position:static!important}body.dlwe-print-launch-centre .dlwe-launch-checklist{grid-template-columns:1fr 1fr}body.dlwe-print-launch-centre .dlwe-form-section,body.dlwe-print-launch-centre .dlwe-launch-group{break-inside:avoid;box-shadow:none}}


/* DLWE v5.0.1 hardening — explicit backup coverage */
.dlwe-security-backup-coverage{margin:0 0 18px}
.dlwe-security-coverage-card{border:1px solid rgba(134,103,52,.28);border-radius:18px;padding:18px;background:rgba(250,247,240,.86);display:grid;gap:16px}
.dlwe-security-coverage-card.needs-action{border-color:rgba(171,93,43,.45);background:rgba(255,247,238,.94)}
.dlwe-security-coverage-card.is-confirmed{border-color:rgba(71,119,79,.38);background:rgba(244,250,245,.94)}
.dlwe-security-coverage-card h3{margin:2px 0 6px}
.dlwe-security-coverage-card p{margin:0}
.dlwe-security-coverage-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.dlwe-security-coverage-columns strong{display:block;margin-bottom:8px}
.dlwe-security-coverage-columns ul{margin:0;padding-left:18px;display:grid;gap:5px}
@media (max-width:720px){.dlwe-security-coverage-columns{grid-template-columns:1fr}}

/* Dated Connect account approvals — v5.4.0 */
.dlwe-connect-approval-card{margin:24px 0;padding:24px;border:1px solid rgba(169,122,58,.24);border-radius:20px;background:linear-gradient(145deg,#fffdf9,#f8f2e8);box-shadow:0 15px 38px rgba(55,40,24,.08)}
.dlwe-connect-approval-card .dlwe-section-title-row{align-items:flex-start;gap:20px;margin-bottom:18px}
.dlwe-connect-approval-card .dlwe-section-title-row h2{margin-bottom:5px}
.dlwe-connect-approval-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}
.dlwe-connect-approval-stat{padding:14px 16px;border:1px solid #e5dac9;border-radius:14px;background:#fff}
.dlwe-connect-approval-stat span{display:block;color:#7b7166;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.dlwe-connect-approval-stat strong{display:block;margin-top:5px;font:500 24px/1 Georgia,serif;color:#1c1813}
.dlwe-connect-approval-table td{vertical-align:middle}
.dlwe-connect-staff-cell{display:flex;align-items:center;gap:11px;min-width:210px}
.dlwe-connect-staff-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;background:#1c1813;color:#efd7aa;font-weight:800}
.dlwe-connect-staff-cell strong,.dlwe-connect-staff-cell small{display:block}.dlwe-connect-staff-cell small{margin-top:3px;color:#82776b}
.dlwe-connect-role-select{min-width:115px;height:40px;padding:0 10px;border:1px solid #d9cdbb;border-radius:10px;background:#fff;color:#1c1813}
.dlwe-connect-approval-actions{display:flex;flex-wrap:wrap;gap:7px;min-width:170px}
.dlwe-connect-approval-actions button{white-space:nowrap}
.dlwe-connect-status{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.dlwe-connect-status.is-pending{background:#fff0d2;color:#885b16}.dlwe-connect-status.is-active{background:#e8f5ed;color:#2e714d}.dlwe-connect-status.is-suspended{background:#fce8e5;color:#983d35}.dlwe-connect-status.is-rejected{background:#f1ece5;color:#75695c}
@media(max-width:900px){.dlwe-connect-approval-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dlwe-connect-approval-card{padding:18px}}
@media(max-width:560px){.dlwe-connect-approval-summary{grid-template-columns:1fr 1fr}.dlwe-connect-approval-card .dlwe-section-title-row{display:block}.dlwe-connect-approval-card .dlwe-section-title-row button{margin-top:12px;width:100%}}

/* ========================================================================
   DLWE PHASE 3 — LUXURY APPLICATION SHELL, GROUPED NAVIGATION & ROUTING
   ======================================================================== */
:root {
  --dlwe-luxury-ink: #15130f;
  --dlwe-luxury-warm: #f6f3ed;
  --dlwe-luxury-paper: #fffdfa;
  --dlwe-luxury-line: rgba(30, 25, 19, .12);
  --dlwe-luxury-champagne: #b79a67;
  --dlwe-luxury-muted: #756f66;
  --dlwe-app-radius: 14px;
}

html:has(body.dlwe-native-app-page),
body.dlwe-native-app-page {
  margin: 0 !important;
  min-height: 100%;
  background: var(--dlwe-luxury-warm) !important;
}

body.dlwe-native-app-page #wpadminbar {
  display: none !important;
}

html:has(body.dlwe-native-app-page) {
  margin-top: 0 !important;
}

body.dlwe-native-app-page .dlwe-portal-shell {
  min-height: 100dvh;
  width: 100%;
  max-width: none;
  margin: 0;
  background:
    radial-gradient(circle at 88% 4%, rgba(183, 154, 103, .09), transparent 25rem),
    var(--dlwe-luxury-warm);
}

body.dlwe-native-app-page .dlwe-main,
body.dlwe-native-app-page .dlwe-portal-main {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-sidebar {
  background: linear-gradient(180deg, #171510 0%, #100f0c 100%);
  border-right: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 22px 0 50px rgba(21, 19, 15, .08);
}

.dlwe-portal-shell .dlwe-sidebar-brand {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  letter-spacing: .32em;
}

.dlwe-portal-shell .dlwe-sidebar-subtitle {
  color: rgba(255, 255, 255, .57);
  letter-spacing: .22em;
}

.dlwe-portal-shell .dlwe-nav {
  gap: 8px;
  padding-right: 5px;
}

.dlwe-nav-group {
  display: block;
  border-top: 1px solid rgba(255, 255, 255, .07);
  padding-top: 9px;
}

.dlwe-nav-group:first-child {
  border-top: 0;
  padding-top: 0;
}

.dlwe-nav-group-toggle {
  width: 100%;
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, .48);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px 6px;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
  cursor: default;
}

.dlwe-nav-group-toggle i {
  display: none;
  width: 7px;
  height: 7px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  transition: transform .2s ease;
}

.dlwe-nav-group-items {
  display: grid;
  gap: 3px;
}

.dlwe-portal-shell .dlwe-nav-item {
  border: 1px solid transparent;
  border-radius: 9px;
  min-height: 40px;
  padding: 10px 13px 10px 16px;
  color: rgba(255, 255, 255, .74);
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.dlwe-portal-shell .dlwe-nav-item:hover,
.dlwe-portal-shell .dlwe-nav-item:focus-visible {
  color: #fff;
  background: rgba(255, 255, 255, .065);
  border-color: rgba(255, 255, 255, .08);
  transform: translateX(2px);
}

.dlwe-portal-shell .dlwe-nav-item.is-active {
  color: #fff;
  background: linear-gradient(90deg, rgba(183, 154, 103, .24), rgba(183, 154, 103, .07));
  border-color: rgba(210, 183, 132, .24);
  box-shadow: inset 3px 0 0 var(--dlwe-luxury-champagne);
}

.dlwe-portal-shell .dlwe-nav-item.is-active::before {
  display: none;
}

.dlwe-portal-shell .dlwe-panel > .dlwe-portal-header,
.dlwe-portal-shell .dlwe-form-header {
  border-bottom-color: var(--dlwe-luxury-line);
}

.dlwe-portal-shell .dlwe-form-section,
.dlwe-portal-shell .dlwe-home-card,
.dlwe-portal-shell .dlwe-table-card,
.dlwe-portal-shell .dlwe-card {
  background: rgba(255, 253, 250, .92);
  border-color: var(--dlwe-luxury-line);
  border-radius: var(--dlwe-app-radius);
  box-shadow: 0 14px 34px rgba(27, 22, 16, .045);
}

.dlwe-portal-shell input,
.dlwe-portal-shell select,
.dlwe-portal-shell textarea {
  border-radius: 9px;
}

.dlwe-portal-shell .dlwe-primary-button {
  border-radius: 9px;
  letter-spacing: .04em;
}

.dlwe-portal-shell .dlwe-secondary-button {
  border-radius: 9px;
}

.dlwe-native-route-error {
  min-height: 100dvh;
  display: grid;
  place-content: center;
  text-align: center;
  background: var(--dlwe-luxury-warm);
  color: var(--dlwe-luxury-ink);
  padding: 32px;
}

.dlwe-native-route-error h1 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(32px, 5vw, 58px);
  font-weight: 400;
  margin: 0 0 12px;
}

@media (max-width: 1024px) {
  body.dlwe-native-app-page .dlwe-portal-shell {
    min-height: var(--dlwe-live-vh, 100dvh);
  }

  .dlwe-portal-shell .dlwe-sidebar {
    box-shadow: 0 12px 35px rgba(21, 19, 15, .16);
  }

  .dlwe-nav-group {
    padding-top: 3px;
  }

  .dlwe-nav-group-toggle {
    cursor: pointer;
    min-height: 42px;
    color: rgba(255, 255, 255, .64);
    padding: 10px 13px;
  }

  .dlwe-nav-group-toggle i {
    display: block;
  }

  .dlwe-nav-group:not(.is-open) .dlwe-nav-group-items {
    display: none;
  }

  .dlwe-nav-group.is-open .dlwe-nav-group-toggle i {
    transform: rotate(225deg);
  }

  .dlwe-nav-group-items {
    padding-bottom: 5px;
  }

  .dlwe-portal-shell .dlwe-nav-item {
    min-height: 44px;
  }
}

@media (max-width: 620px) {
  body.dlwe-native-app-page .dlwe-main,
  body.dlwe-native-app-page .dlwe-portal-main {
    padding-left: max(14px, env(safe-area-inset-left));
    padding-right: max(14px, env(safe-area-inset-right));
    padding-bottom: max(24px, env(safe-area-inset-bottom));
  }

  .dlwe-portal-shell .dlwe-form-section,
  .dlwe-portal-shell .dlwe-home-card,
  .dlwe-portal-shell .dlwe-table-card,
  .dlwe-portal-shell .dlwe-card {
    border-radius: 11px;
  }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-form-actions {
    gap: 8px;
  }

  .dlwe-portal-shell .dlwe-header-actions > *,
  .dlwe-portal-shell .dlwe-form-actions > * {
    min-height: 44px;
  }
}

/* Version 6.2.1 — compact dropdown navigation and route-scoped performance mode. */
.dlwe-portal-shell .dlwe-nav-group-toggle {
  cursor: pointer;
  min-height: 42px;
  color: rgba(255, 255, 255, .64);
  padding: 10px 13px;
}

.dlwe-portal-shell .dlwe-nav-group-toggle:hover,
.dlwe-portal-shell .dlwe-nav-group-toggle:focus-visible,
.dlwe-portal-shell .dlwe-nav-group.is-open > .dlwe-nav-group-toggle {
  color: #fff;
  background: rgba(255, 255, 255, .035);
}

.dlwe-portal-shell .dlwe-nav-group-toggle i {
  display: block;
}

.dlwe-portal-shell .dlwe-nav-group:not(.is-open) .dlwe-nav-group-items {
  display: none;
}

.dlwe-portal-shell .dlwe-nav-group.is-open .dlwe-nav-group-toggle i {
  transform: rotate(225deg);
}

.dlwe-portal-shell .dlwe-nav-group-items {
  padding: 2px 0 7px;
  animation: dlweNavGroupReveal .16s ease-out;
}

@keyframes dlweNavGroupReveal {
  from { opacity: 0; transform: translateY(-3px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (min-width: 1025px) {
  .dlwe-portal-shell .dlwe-nav {
    gap: 2px;
  }

  .dlwe-portal-shell .dlwe-nav-group {
    padding-top: 3px;
  }

  .dlwe-portal-shell .dlwe-nav-group-toggle {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .dlwe-portal-shell .dlwe-nav-item {
    min-height: 38px;
    padding-top: 9px;
    padding-bottom: 9px;
  }
}

/* Version 6.3.0 — native planning template library and generation workflow. */
.dlwe-checklist-template-card,
.dlwe-checklist-template-preview-card,
.dlwe-checklist-template-editor {
  border-color: rgba(179, 143, 82, 0.34);
}

.dlwe-checklist-template-actions {
  justify-content: flex-start;
}

.dlwe-template-preview-table td:nth-child(3) {
  min-width: 300px;
}

.dlwe-template-preview-table td strong,
.dlwe-template-preview-table td small,
.dlwe-template-preview-table td em {
  display: block;
}

.dlwe-template-preview-table td small {
  color: var(--dlwe-muted, #776f65);
  margin-top: 5px;
  max-width: 560px;
  line-height: 1.45;
}

.dlwe-template-preview-table td em {
  color: #86663a;
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .08em;
  margin-top: 7px;
  text-transform: uppercase;
}

.dlwe-template-preview-table tr.is-existing {
  opacity: .62;
}

.dlwe-template-preview-table select {
  min-width: 210px;
}

.dlwe-template-editor-toolbar {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin: 0 0 18px;
}

.dlwe-template-editor-toolbar strong {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(20px, 2vw, 27px);
  font-weight: 400;
}

.dlwe-template-editor-table td:nth-child(1) {
  min-width: 190px;
}

.dlwe-template-editor-table td:nth-child(2) {
  min-width: 360px;
}

.dlwe-template-editor-table input[type="text"],
.dlwe-template-editor-table input[type="number"],
.dlwe-template-editor-table textarea,
.dlwe-template-editor-table select {
  margin: 0;
  width: 100%;
}

.dlwe-template-editor-table textarea {
  margin-top: 8px;
  min-height: 64px;
  resize: vertical;
}

.dlwe-template-editor-table input[type="checkbox"],
.dlwe-template-preview-table input[type="checkbox"] {
  height: 20px;
  min-height: 20px;
  width: 20px;
}

@media (max-width: 760px) {
  .dlwe-checklist-template-actions .dlwe-primary-button,
  .dlwe-checklist-template-actions .dlwe-secondary-button {
    flex: 1 1 100%;
    width: 100%;
  }

  .dlwe-template-editor-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .dlwe-template-preview-table td:nth-child(3),
  .dlwe-template-editor-table td:nth-child(1),
  .dlwe-template-editor-table td:nth-child(2) {
    min-width: 250px;
  }
}


/* Version 6.3.1 — native checklist workspace and manual timeline builder. */
.dlwe-checklist-workspace {
  margin: 22px 0 28px;
  padding: clamp(18px, 2.2vw, 30px);
  border: 1px solid rgba(179, 145, 82, .28);
  border-radius: 18px;
  background: rgba(255, 253, 248, .92);
  box-shadow: 0 18px 55px rgba(31, 27, 22, .06);
}
.dlwe-checklist-native-title { display:block; margin:10px 0 5px; font-family:Georgia,serif; font-size:17px; line-height:1.25; color:#1c1915; }
.dlwe-checklist-live-table td > small { display:block; margin-top:6px; line-height:1.45; color:#726c63; }
.dlwe-checklist-live-table td > em { display:block; margin-top:7px; font-size:10px; font-style:normal; letter-spacing:.12em; text-transform:uppercase; color:#9b783e; }
.dlwe-checklist-progress-control { display:flex; align-items:center; gap:7px; margin-top:9px; }
.dlwe-checklist-progress-control input { width:76px; min-height:38px; }
.dlwe-checklist-progress-control span { font-weight:700; }
.dlwe-checklist-live-table [data-label="Action"] .dlwe-table-link { display:block; margin-top:9px; }

.dlwe-native-timeline-builder { border-color:rgba(179,145,82,.4); background:linear-gradient(145deg,#fffdf8 0%,#f8f1e6 100%); }
.dlwe-native-timeline-toolbar { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 18px; }
.dlwe-timeline-manual-editor { display:grid; gap:14px; }
.dlwe-timeline-manual-row { border:1px solid rgba(32,28,23,.14); border-radius:16px; background:#fffdfa; overflow:hidden; box-shadow:0 10px 28px rgba(35,30,24,.045); }
.dlwe-timeline-manual-row > header { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:14px 16px; background:#201c17; color:#fff; }
.dlwe-timeline-manual-row > header span { display:block; font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:#d7ba7e; }
.dlwe-timeline-manual-row > header strong { display:block; margin-top:3px; font-family:Georgia,serif; font-size:17px; font-weight:400; }
.dlwe-timeline-row-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.dlwe-timeline-row-actions button { min-height:34px; padding:6px 10px; border:1px solid rgba(255,255,255,.2); border-radius:8px; background:rgba(255,255,255,.06); color:#fff; font-size:10px; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.dlwe-timeline-row-actions button:hover { background:rgba(255,255,255,.14); }
.dlwe-timeline-row-actions button.is-danger { color:#ffb3ad; }
.dlwe-timeline-manual-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; padding:18px; }
.dlwe-timeline-manual-grid label { display:grid; gap:7px; min-width:0; }
.dlwe-timeline-manual-grid label > span { font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:#6d655b; }
.dlwe-timeline-manual-grid .is-wide { grid-column:span 2; }
.dlwe-timeline-manual-grid input,.dlwe-timeline-manual-grid select,.dlwe-timeline-manual-grid textarea { width:100%; min-height:44px; border:1px solid #d9d0c4; border-radius:9px; background:#fff; padding:10px 12px; color:#1d1a16; }
.dlwe-native-timeline-save-grid { display:grid; grid-template-columns:1fr; gap:18px; align-items:end; margin-top:18px; }
.dlwe-timeline-notify-check { min-height:50px; padding:14px 16px; border:1px solid #ddd2c3; border-radius:10px; background:#fff; }
.dlwe-optional-import-card { margin-top:22px; border-style:dashed; background:rgba(255,255,255,.58); }

@media (max-width: 1050px) {
  .dlwe-timeline-manual-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .dlwe-checklist-workspace { padding:14px; border-radius:14px; }
  .dlwe-checklist-live-scroll { overflow:visible; }
  .dlwe-checklist-live-table,.dlwe-checklist-live-table tbody,.dlwe-checklist-live-table tr,.dlwe-checklist-live-table td { display:block; width:100%; }
  .dlwe-checklist-live-table thead { display:none; }
  .dlwe-checklist-live-table tr { margin:0 0 14px; padding:14px; border:1px solid #ded4c6; border-radius:14px; background:#fff; }
  .dlwe-checklist-live-table td { padding:10px 0; border:0; }
  .dlwe-checklist-live-table td::before { content:attr(data-label); display:block; margin-bottom:6px; font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:#9b783e; }
  .dlwe-checklist-live-table select,.dlwe-checklist-live-table textarea { width:100%; }
  .dlwe-native-timeline-toolbar .dlwe-primary-button,.dlwe-native-timeline-toolbar .dlwe-secondary-button { flex:1 1 100%; }
  .dlwe-timeline-manual-row > header { align-items:flex-start; flex-direction:column; }
  .dlwe-timeline-row-actions { justify-content:flex-start; }
  .dlwe-timeline-manual-grid { grid-template-columns:1fr; padding:14px; }
  .dlwe-timeline-manual-grid .is-wide { grid-column:auto; }
  .dlwe-native-timeline-save-grid { grid-template-columns:1fr; }
}

/* Version 6.4.2 — viewport-mounted responsive meeting editor */
#dlwe-meeting-form-modal.dlwe-calendar-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: var(--dlwe-meeting-modal-height, 100dvh);
  max-width: none;
  max-height: none;
  margin: 0;
  padding: clamp(10px, 2vw, 24px);
  overflow: hidden;
  transform: none !important;
  isolation: isolate;
}

#dlwe-meeting-form-modal[hidden] {
  display: none !important;
}

#dlwe-meeting-form-modal .dlwe-calendar-modal-backdrop {
  position: fixed;
  inset: 0;
}

#dlwe-meeting-form-modal .dlwe-meeting-form-card {
  position: relative;
  inset: auto;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(860px, calc(100vw - clamp(20px, 4vw, 48px)));
  height: min(900px, calc(var(--dlwe-meeting-modal-height, 100dvh) - clamp(20px, 4vw, 48px)));
  max-width: 100%;
  max-height: none !important;
  min-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden !important;
  border-radius: 18px;
  background: #fffdf9;
  transform: none !important;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header {
  position: relative;
  min-width: 0;
  padding: 24px 72px 20px 28px;
  border-bottom: 1px solid #e5dccf;
  background: #fffdf9;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-eyebrow,
#dlwe-meeting-form-modal .dlwe-meeting-modal-header h2,
#dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-muted {
  margin-left: 0;
  margin-right: 0;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header h2 {
  margin-top: 4px;
  margin-bottom: 8px;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-muted {
  margin-bottom: 0;
}

#dlwe-meeting-form-modal .dlwe-calendar-modal-close {
  top: 20px;
  right: 24px;
  z-index: 5;
}

#dlwe-meeting-form-modal #dlwe-meeting-form {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-body {
  min-width: 0;
  min-height: 0;
  padding: 22px 28px 26px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
}

#dlwe-meeting-form-modal .dlwe-meeting-form-grid {
  margin-top: 0;
}

#dlwe-meeting-form-modal #dlwe-meeting-form-message {
  margin: 16px 0 0;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-footer {
  position: relative !important;
  inset: auto !important;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 16px 28px;
  border-top: 1px solid #e5dccf;
  background: #fffdf9;
  box-shadow: 0 -10px 24px rgba(31, 27, 22, .04);
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees {
  max-height: none;
  overflow: visible;
}

@media (max-height: 760px) and (min-width: 761px) {
  #dlwe-meeting-form-modal.dlwe-calendar-modal {
    padding: 10px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-form-card {
    width: min(900px, calc(100vw - 20px));
    height: calc(var(--dlwe-meeting-modal-height, 100dvh) - 20px);
    border-radius: 12px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header {
    padding: 16px 64px 14px 22px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header h2 {
    margin-bottom: 4px;
    font-size: 25px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-muted {
    font-size: 12px;
  }

  #dlwe-meeting-form-modal .dlwe-calendar-modal-close {
    top: 13px;
    right: 18px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-body {
    padding: 16px 22px 20px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer {
    padding: 12px 22px;
  }

}

@media (max-width: 760px) {
  #dlwe-meeting-form-modal.dlwe-calendar-modal {
    align-items: stretch;
    padding: 0;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-form-card {
    width: 100vw;
    height: var(--dlwe-meeting-modal-height, 100dvh);
    border: 0;
    border-radius: 0;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header {
    padding: calc(18px + env(safe-area-inset-top)) 62px 16px 18px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header h2 {
    font-size: clamp(25px, 8vw, 31px);
  }

  #dlwe-meeting-form-modal .dlwe-calendar-modal-close {
    top: calc(14px + env(safe-area-inset-top));
    right: 16px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-body {
    padding: 18px 16px 22px;
    scrollbar-gutter: auto;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-form-grid {
    grid-template-columns: 1fr;
  }

  #dlwe-meeting-form-modal .dlwe-field,
  #dlwe-meeting-form-modal .dlwe-field-full {
    grid-column: auto;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-attendees {
    grid-template-columns: 1fr;
    max-height: none;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer > * {
    width: 100%;
  }
}

@media (max-width: 420px) {
  #dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-muted {
    display: none;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header {
    padding-bottom: 12px;
  }
}



/* Version 6.4.3 — luxury meeting editor visual system */
#dlwe-meeting-form-modal,
#dlwe-meeting-form-modal * {
  box-sizing: border-box;
}

#dlwe-meeting-form-modal .dlwe-meeting-form-card {
  width: min(900px, calc(100vw - clamp(24px, 5vw, 64px)));
  border: 1px solid rgba(121, 94, 55, .22);
  border-radius: 20px;
  background: #fbf8f2;
  box-shadow: 0 28px 90px rgba(22, 18, 13, .26);
  color: #1c1915;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header {
  padding: 24px 74px 22px 30px;
  border-bottom: 1px solid #e5dccf;
  background:
    radial-gradient(circle at 94% 5%, rgba(205, 171, 112, .16), transparent 34%),
    linear-gradient(145deg, #fffdf9 0%, #f8f1e7 100%);
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-eyebrow {
  margin: 0 0 6px;
  color: #8b6a3d;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
  line-height: 1.3;
  text-transform: uppercase;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header h2 {
  margin: 0 0 7px;
  color: #171411;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.02em;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-header .dlwe-muted {
  max-width: 640px;
  margin: 0;
  color: #6e675e;
  font-size: 12.5px;
  line-height: 1.55;
}

#dlwe-meeting-form-modal .dlwe-calendar-modal-close {
  top: 20px;
  right: 24px;
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 1px solid #d9cdbd;
  border-radius: 50%;
  background: rgba(255,255,255,.78);
  color: #211d18;
  box-shadow: 0 6px 18px rgba(34,28,20,.06);
  font-size: 22px;
  line-height: 1;
}

#dlwe-meeting-form-modal .dlwe-calendar-modal-close:hover,
#dlwe-meeting-form-modal .dlwe-calendar-modal-close:focus-visible {
  border-color: #9a7747;
  background: #fff;
  outline: 3px solid rgba(167,131,79,.13);
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-body {
  padding: 26px 30px 30px;
  background: #fbf8f2;
}

#dlwe-meeting-form-modal .dlwe-meeting-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 18px;
  margin: 0;
}

#dlwe-meeting-form-modal .dlwe-field,
#dlwe-meeting-form-modal .dlwe-field-full {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
}

#dlwe-meeting-form-modal .dlwe-field-full {
  grid-column: 1 / -1;
}

#dlwe-meeting-form-modal .dlwe-field > span,
#dlwe-meeting-form-modal .dlwe-field-full > span {
  display: block;
  margin: 0 0 8px;
  color: #5d554b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 1.35;
  text-transform: uppercase;
}

#dlwe-meeting-form-modal input:not([type="checkbox"]):not([type="radio"]),
#dlwe-meeting-form-modal select,
#dlwe-meeting-form-modal textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: #1d1915 !important;
  background: #fff !important;
  border: 1px solid #d4c8b8 !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8) !important;
  outline: none !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

#dlwe-meeting-form-modal input:not([type="checkbox"]):not([type="radio"]),
#dlwe-meeting-form-modal select {
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 14px !important;
}

#dlwe-meeting-form-modal select {
  padding-right: 38px !important;
  cursor: pointer;
}

#dlwe-meeting-form-modal textarea {
  min-height: 116px !important;
  padding: 13px 14px !important;
  resize: vertical;
}

#dlwe-meeting-form-modal #dlwe-meeting-title {
  height: 52px !important;
  min-height: 52px !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
}

#dlwe-meeting-form-modal input::placeholder,
#dlwe-meeting-form-modal textarea::placeholder {
  color: #999087;
  opacity: 1;
}

#dlwe-meeting-form-modal input:focus,
#dlwe-meeting-form-modal select:focus,
#dlwe-meeting-form-modal textarea:focus {
  border-color: #9b7847 !important;
  box-shadow: 0 0 0 3px rgba(167,131,79,.13) !important;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  max-height: none;
  padding: 12px;
  overflow: visible;
  border: 1px solid #ddd1c1;
  border-radius: 12px;
  background: #f4eee5;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees label {
  min-height: 66px;
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0;
  padding: 12px 13px;
  border: 1px solid #ded4c8;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(34,28,20,.025);
  cursor: pointer;
  transition: border-color 140ms ease, background 140ms ease, box-shadow 140ms ease;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees label:hover {
  border-color: #b69665;
  background: #fffdf9;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees label:has(input:checked) {
  border-color: #a37d47;
  background: #fff9ef;
  box-shadow: 0 0 0 2px rgba(167,131,79,.11);
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees input[type="checkbox"] {
  flex: 0 0 auto;
  width: 18px !important;
  height: 18px !important;
  min-height: 0 !important;
  margin: 0 !important;
  accent-color: #8a6839;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees label > span {
  min-width: 0;
  margin: 0;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees strong {
  display: block;
  overflow: hidden;
  color: #241f19;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .08em;
  line-height: 1.35;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

#dlwe-meeting-form-modal .dlwe-meeting-attendees small {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: #80766a;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .11em;
  line-height: 1.35;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

#dlwe-meeting-form-modal #dlwe-meeting-form-message {
  margin: 18px 0 0;
  border-radius: 9px;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-footer {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 10px;
  padding: 14px 30px;
  border-top: 1px solid #e1d7c9;
  background: rgba(255,253,249,.97);
  box-shadow: 0 -10px 28px rgba(31,27,22,.045);
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-primary-button,
#dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-secondary-button {
  width: auto !important;
  min-width: 148px;
  min-height: 46px;
  margin: 0;
  padding: 11px 18px;
  border-radius: 9px !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: nowrap;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-secondary-button {
  order: 1;
  color: #26211b !important;
  background: #fff !important;
  border-color: #d5c8b7 !important;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-primary-button {
  order: 2;
  min-width: 230px;
  color: #fff !important;
  background: #191714 !important;
  border-color: #191714 !important;
}

#dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-primary-button:hover,
#dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-primary-button:focus-visible {
  color: #1a1713 !important;
  background: #d6b778 !important;
  border-color: #d6b778 !important;
}

@media (max-height: 760px) and (min-width: 761px) {
  #dlwe-meeting-form-modal .dlwe-meeting-modal-header {
    padding: 16px 66px 14px 22px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header h2 {
    font-size: 28px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-body {
    padding: 18px 22px 22px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-form-grid {
    gap: 15px 16px;
  }

  #dlwe-meeting-form-modal input:not([type="checkbox"]):not([type="radio"]),
  #dlwe-meeting-form-modal select {
    height: 44px !important;
    min-height: 44px !important;
  }

  #dlwe-meeting-form-modal #dlwe-meeting-title {
    height: 48px !important;
    min-height: 48px !important;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer {
    min-height: 66px;
    padding: 10px 22px;
  }
}

@media (max-width: 760px) {
  #dlwe-meeting-form-modal .dlwe-meeting-form-card {
    border-radius: 0;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-header {
    padding: calc(18px + env(safe-area-inset-top)) 62px 16px 18px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-body {
    padding: 18px 16px 24px;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-form-grid,
  #dlwe-meeting-form-modal .dlwe-meeting-attendees {
    grid-template-columns: 1fr;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer {
    min-height: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-primary-button,
  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-secondary-button {
    width: 100% !important;
    min-width: 0;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-primary-button {
    order: 1;
  }

  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-secondary-button {
    order: 2;
  }
}

/* Version 6.5.1 — responsive professional Document Centre editor */
#dlwe-document-modal,
#dlwe-document-modal * {
  box-sizing: border-box;
}

#dlwe-document-modal.dlwe-document-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147482000 !important;
  display: grid;
  place-items: center;
  width: 100vw;
  height: var(--dlwe-document-modal-height, 100dvh);
  max-width: none;
  max-height: none;
  margin: 0;
  padding: clamp(12px, 2vw, 24px);
  overflow: hidden;
  transform: none !important;
  isolation: isolate;
}

#dlwe-document-modal[hidden] {
  display: none !important;
}

#dlwe-document-modal .dlwe-document-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(16, 13, 10, .68);
  backdrop-filter: blur(5px);
}

#dlwe-document-modal .dlwe-document-modal-card {
  position: relative;
  inset: auto;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(980px, calc(100vw - clamp(24px, 5vw, 64px)));
  height: min(920px, calc(var(--dlwe-document-modal-height, 100dvh) - clamp(24px, 4vw, 48px)));
  max-width: 100%;
  max-height: none !important;
  min-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden !important;
  border: 1px solid rgba(121, 94, 55, .22);
  border-radius: 20px;
  background: #fbf8f2;
  box-shadow: 0 28px 90px rgba(22, 18, 13, .28);
  color: #1c1915;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  transform: none !important;
}

#dlwe-document-modal .dlwe-document-modal-header {
  position: relative !important;
  top: auto !important;
  z-index: 4;
  display: block;
  min-width: 0;
  margin: 0;
  padding: 23px 76px 20px 30px;
  border: 0;
  border-bottom: 1px solid #e5dccf;
  background:
    radial-gradient(circle at 94% 5%, rgba(205, 171, 112, .16), transparent 34%),
    linear-gradient(145deg, #fffdf9 0%, #f8f1e7 100%);
}

#dlwe-document-modal .dlwe-document-modal-header .dlwe-eyebrow {
  margin: 0 0 6px;
  color: #8b6a3d;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .18em;
  line-height: 1.3;
  text-transform: uppercase;
}

#dlwe-document-modal .dlwe-document-modal-header h2 {
  margin: 0 0 7px;
  color: #171411;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.02em;
}

#dlwe-document-modal .dlwe-document-modal-header .dlwe-muted {
  max-width: 680px;
  margin: 0;
  color: #6e675e;
  font-size: 12.5px;
  line-height: 1.5;
}

#dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button {
  position: absolute;
  top: 20px;
  right: 24px;
  z-index: 5;
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  min-height: 38px;
  margin: 0;
  padding: 0;
  border: 1px solid #d9cdbd;
  border-radius: 50%;
  background: rgba(255, 255, 255, .82);
  color: #211d18;
  box-shadow: 0 6px 18px rgba(34, 28, 20, .06);
  font-size: 22px;
  line-height: 1;
}

#dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button:hover,
#dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button:focus-visible {
  border-color: #9a7747;
  background: #fff;
  outline: 3px solid rgba(167, 131, 79, .13);
}

#dlwe-document-modal #dlwe-document-form {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
}

#dlwe-document-modal .dlwe-document-modal-body {
  min-width: 0;
  min-height: 0;
  padding: 26px 30px 30px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
  background: #fbf8f2;
}

#dlwe-document-modal .dlwe-document-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 18px;
  width: 100%;
  margin: 0;
  padding: 0;
}

#dlwe-document-modal .dlwe-document-field {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
}

#dlwe-document-modal .dlwe-document-field-full {
  grid-column: 1 / -1;
}

#dlwe-document-modal .dlwe-document-field > span {
  display: block;
  margin: 0 0 8px;
  color: #5d554b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 1.35;
  text-transform: uppercase;
}

#dlwe-document-modal .dlwe-document-field > span small {
  display: block;
  margin-top: 4px;
  color: #8a8177;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.45;
  text-transform: none;
}

#dlwe-document-modal input:not([type="checkbox"]):not([type="radio"]),
#dlwe-document-modal select,
#dlwe-document-modal textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: #1d1915 !important;
  background: #fff !important;
  border: 1px solid #d4c8b8 !important;
  border-radius: 10px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8) !important;
  outline: none !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

#dlwe-document-modal input:not([type="checkbox"]):not([type="radio"]),
#dlwe-document-modal select {
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 14px !important;
}

#dlwe-document-modal select {
  padding-right: 38px !important;
  cursor: pointer;
}

#dlwe-document-modal textarea {
  min-height: 122px !important;
  padding: 13px 14px !important;
  resize: vertical;
}

#dlwe-document-modal #dlwe_document_title {
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
}

#dlwe-document-modal input::placeholder,
#dlwe-document-modal textarea::placeholder {
  color: #999087;
  opacity: 1;
}

#dlwe-document-modal input:focus,
#dlwe-document-modal select:focus,
#dlwe-document-modal textarea:focus {
  border-color: #9b7847 !important;
  box-shadow: 0 0 0 3px rgba(167, 131, 79, .13) !important;
}

#dlwe-document-modal .dlwe-document-checkbox-field {
  display: flex;
  align-items: center;
  align-self: end;
  gap: 10px;
  min-height: 48px;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #d9cebf;
  border-radius: 10px;
  background: #fff;
  color: #332d26;
  cursor: pointer;
}

#dlwe-document-modal .dlwe-document-checkbox-field input[type="checkbox"] {
  flex: 0 0 auto;
  width: 18px !important;
  height: 18px !important;
  min-height: 0 !important;
  margin: 0 !important;
  accent-color: #8a6839;
}

#dlwe-document-modal .dlwe-document-checkbox-field span {
  margin: 0;
  color: #332d26;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
  line-height: 1.35;
  text-transform: none;
}

#dlwe-document-modal .dlwe-document-file-field input[type="file"] {
  height: auto !important;
  min-height: 62px !important;
  padding: 11px !important;
  border-style: dashed !important;
  background: #fffdf9 !important;
  cursor: pointer;
}

#dlwe-document-modal .dlwe-document-file-field input[type="file"]::file-selector-button {
  margin: 0 12px 0 0;
  padding: 10px 14px;
  border: 1px solid #cdbda8;
  border-radius: 8px;
  background: #f2eadf;
  color: #29231c;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
}

#dlwe-document-modal .dlwe-document-version-history {
  margin: 24px 0 0;
  padding: 18px;
  border: 1px solid #e5ddcf;
  border-radius: 12px;
  background: #fff;
}

#dlwe-document-modal .dlwe-document-modal-footer {
  position: relative !important;
  inset: auto !important;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  gap: 10px;
  min-width: 0;
  min-height: 76px;
  margin: 0;
  padding: 14px 30px;
  border: 0;
  border-top: 1px solid #e1d7c9;
  background: rgba(255, 253, 249, .98);
  box-shadow: 0 -10px 28px rgba(31, 27, 22, .045);
}

#dlwe-document-modal .dlwe-document-modal-footer .dlwe-primary-button,
#dlwe-document-modal .dlwe-document-modal-footer .dlwe-secondary-button {
  width: auto !important;
  min-width: 148px;
  min-height: 46px;
  margin: 0;
  padding: 11px 18px;
  border-radius: 9px !important;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .11em;
  line-height: 1.25;
  text-transform: uppercase;
  white-space: nowrap;
}

#dlwe-document-modal .dlwe-document-modal-footer .dlwe-secondary-button {
  order: 1;
  color: #26211b !important;
  background: #fff !important;
  border-color: #d5c8b7 !important;
}

#dlwe-document-modal .dlwe-document-modal-footer .dlwe-primary-button {
  order: 2;
  min-width: 190px;
  color: #fff !important;
  background: #191714 !important;
  border-color: #191714 !important;
}

#dlwe-document-modal .dlwe-document-modal-footer .dlwe-primary-button:hover,
#dlwe-document-modal .dlwe-document-modal-footer .dlwe-primary-button:focus-visible {
  color: #1a1713 !important;
  background: #d6b778 !important;
  border-color: #d6b778 !important;
}

body.dlwe-document-modal-open {
  overflow: hidden !important;
}

@media (max-height: 760px) and (min-width: 761px) {
  #dlwe-document-modal.dlwe-document-modal {
    padding: 10px;
  }

  #dlwe-document-modal .dlwe-document-modal-card {
    width: min(1020px, calc(100vw - 20px));
    height: calc(var(--dlwe-document-modal-height, 100dvh) - 20px);
    border-radius: 13px;
  }

  #dlwe-document-modal .dlwe-document-modal-header {
    padding: 16px 66px 14px 22px;
  }

  #dlwe-document-modal .dlwe-document-modal-header h2 {
    font-size: 28px;
  }

  #dlwe-document-modal .dlwe-document-modal-header .dlwe-muted {
    font-size: 11.5px;
  }

  #dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button {
    top: 13px;
    right: 18px;
  }

  #dlwe-document-modal .dlwe-document-modal-body {
    padding: 18px 22px 22px;
  }

  #dlwe-document-modal .dlwe-document-form-grid {
    gap: 15px 16px;
  }

  #dlwe-document-modal input:not([type="checkbox"]):not([type="radio"]),
  #dlwe-document-modal select {
    height: 44px !important;
    min-height: 44px !important;
  }

  #dlwe-document-modal .dlwe-document-checkbox-field {
    min-height: 44px;
  }

  #dlwe-document-modal .dlwe-document-modal-footer {
    min-height: 66px;
    padding: 10px 22px;
  }
}

@media (max-width: 760px) {
  #dlwe-document-modal.dlwe-document-modal {
    align-items: stretch;
    padding: 0;
  }

  #dlwe-document-modal .dlwe-document-modal-card {
    width: 100vw;
    height: var(--dlwe-document-modal-height, 100dvh);
    border: 0;
    border-radius: 0;
  }

  #dlwe-document-modal .dlwe-document-modal-header {
    padding: calc(18px + env(safe-area-inset-top)) 62px 16px 18px;
  }

  #dlwe-document-modal .dlwe-document-modal-header h2 {
    font-size: clamp(25px, 8vw, 31px);
  }

  #dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button {
    top: calc(14px + env(safe-area-inset-top));
    right: 16px;
  }

  #dlwe-document-modal .dlwe-document-modal-body {
    padding: 18px 16px 24px;
    scrollbar-gutter: auto;
  }

  #dlwe-document-modal .dlwe-document-form-grid {
    grid-template-columns: 1fr;
  }

  #dlwe-document-modal .dlwe-document-field,
  #dlwe-document-modal .dlwe-document-field-full,
  #dlwe-document-modal .dlwe-document-checkbox-field {
    grid-column: auto;
  }

  #dlwe-document-modal .dlwe-document-modal-footer {
    min-height: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  }

  #dlwe-document-modal .dlwe-document-modal-footer .dlwe-primary-button,
  #dlwe-document-modal .dlwe-document-modal-footer .dlwe-secondary-button {
    width: 100% !important;
    min-width: 0;
  }

  #dlwe-document-modal .dlwe-document-modal-footer .dlwe-primary-button {
    order: 1;
  }

  #dlwe-document-modal .dlwe-document-modal-footer .dlwe-secondary-button {
    order: 2;
  }
}

@media (max-width: 420px) {
  #dlwe-document-modal .dlwe-document-modal-header .dlwe-muted {
    display: none;
  }

  #dlwe-document-modal .dlwe-document-modal-header {
    padding-bottom: 12px;
  }
}

/* ========================================================================
   DLWE Native Finance v6.6.1 — Phase 7 responsive invoice/procurement UI
   Repairs missing grid primitives and prevents non-index section headings
   from collapsing into the 36px indexed-heading column.
   ======================================================================== */

/* Shared responsive grids used by the Phase 7 finance editors. */
.dlwe-portal-shell .dlwe-grid {
  width: 100%;
  min-width: 0;
  display: grid !important;
  align-items: start;
  gap: 18px 20px;
}

.dlwe-portal-shell .dlwe-grid > * {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.dlwe-portal-shell .dlwe-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.dlwe-portal-shell .dlwe-grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.dlwe-portal-shell .dlwe-grid .dlwe-field-full {
  grid-column: 1 / -1 !important;
}

/* Phase 7 headings do not use the numbered-circle markup used elsewhere. */
.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-form-section-heading:not(.dlwe-collection-heading-row),
.dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-form-section-heading,
.dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-form-section-heading {
  display: block !important;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 23px !important;
  padding: 0 0 18px !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-form-section-heading:not(.dlwe-collection-heading-row) > *,
.dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-form-section-heading > *,
.dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-form-section-heading > * {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  grid-column: 1 !important;
}

.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-form-section-heading:not(.dlwe-collection-heading-row) .dlwe-eyebrow,
.dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-form-section-heading .dlwe-eyebrow,
.dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-form-section-heading .dlwe-eyebrow {
  display: block !important;
  margin-bottom: 8px !important;
  white-space: normal !important;
}

/* Collection dashboard heading is a title row, not an indexed form heading. */
.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-collection-heading-row {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: 100% !important;
}

.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-collection-heading-row > div {
  width: auto !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-collection-heading-row > small {
  width: auto !important;
  min-width: 220px !important;
  flex: 0 0 auto !important;
}

/* Phase 7 metric cards use direct label/value/helper children. */
.dlwe-portal-shell .dlwe-budget-report-summary-card > span,
.dlwe-portal-shell .dlwe-budget-report-summary-card > strong,
.dlwe-portal-shell .dlwe-budget-report-summary-card > small {
  display: block;
  width: 100%;
}

.dlwe-portal-shell .dlwe-budget-report-summary-card > span {
  margin: 0 0 9px;
  color: var(--dlwe-brand-muted, #6b665f);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .11em;
  line-height: 1.35;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-budget-report-summary-card > strong {
  margin: 0 0 7px;
  color: var(--dlwe-brand-ink, #171512);
  font-family: var(--dlwe-brand-display, Georgia, "Times New Roman", serif);
  font-size: clamp(24px, 2.2vw, 32px);
  font-weight: 400;
  line-height: 1.05;
  overflow-wrap: anywhere;
}

.dlwe-portal-shell .dlwe-budget-report-summary-card > small {
  color: var(--dlwe-brand-muted, #6b665f);
  font-size: 11.5px;
  line-height: 1.5;
}

/* Keep editor content comfortably separated from the fixed action bar. */
.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-budget-editor,
.dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-budget-editor,
.dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-budget-editor {
  width: 100%;
  min-width: 0;
  padding-bottom: 92px;
}

.dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-form-actions,
.dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-form-actions,
.dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-form-actions {
  gap: 10px !important;
  flex-wrap: wrap !important;
}

@media (max-width: 1180px) {
  .dlwe-portal-shell .dlwe-grid-3,
  .dlwe-portal-shell .dlwe-grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .dlwe-portal-shell .dlwe-grid-2,
  .dlwe-portal-shell .dlwe-grid-3,
  .dlwe-portal-shell .dlwe-grid-4 {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .dlwe-portal-shell .dlwe-grid .dlwe-field-full {
    grid-column: auto !important;
  }

  .dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-collection-heading-row {
    display: block !important;
  }

  .dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-collection-heading-row > small {
    min-width: 0 !important;
    max-width: 100% !important;
    margin-top: 12px !important;
  }

  .dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-form-actions,
  .dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-form-actions,
  .dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-form-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .dlwe-portal-shell .dlwe-client-invoices-panel .dlwe-form-actions > button,
  .dlwe-portal-shell [data-dlwe-panel="purchase-orders"] .dlwe-form-actions > button,
  .dlwe-portal-shell [data-dlwe-panel="vendor-payments"] .dlwe-form-actions > button {
    width: 100% !important;
  }
}


/* v6.6.7 vendor payment purchase-order allocation */
.dlwe-vp-allocation-section{margin-top:18px}
.dlwe-vp-allocation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 14px}
.dlwe-vp-allocation-summary>div{display:grid;gap:6px;padding:14px 16px;border:1px solid #e1d8c9;border-radius:14px;background:#fbf8f2}
.dlwe-vp-allocation-summary span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#766b60;font-weight:700}
.dlwe-vp-allocation-summary strong{font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:400;color:#171411}
.dlwe-vp-allocation-section .dlwe-empty-state{display:grid;gap:6px;padding:18px;border:1px dashed #d7c8ae;border-radius:15px;background:#fbf8f2;color:#766b60}
.dlwe-vp-allocation-section .dlwe-empty-state strong{color:#171411}
@media(max-width:760px){.dlwe-vp-allocation-summary{grid-template-columns:1fr}}

/* ========================================================================
   DLWE Native UI Quality Guard v6.6.9
   Global structural formatting rules for every staff-portal module.
   These rules classify indexed headings separately from ordinary title rows,
   prevent narrow-column text collapse, and preserve responsive layouts for
   future dynamically inserted modules and controls.
   ======================================================================== */

/* Every panel and card must be allowed to shrink inside the application grid. */
.dlwe-portal-shell [data-dlwe-panel],
.dlwe-portal-shell [data-dlwe-panel] > *,
.dlwe-portal-shell .dlwe-form-section,
.dlwe-portal-shell .dlwe-form-section > *,
.dlwe-portal-shell .dlwe-table-card,
.dlwe-portal-shell .dlwe-budget-report-card,
.dlwe-portal-shell .dlwe-task-dashboard-card,
.dlwe-portal-shell .dlwe-grid,
.dlwe-portal-shell .dlwe-grid > *,
.dlwe-portal-shell .dlwe-form-grid,
.dlwe-portal-shell .dlwe-form-grid > * {
  min-width: 0;
  max-width: 100%;
}

/* Shared page headers must wrap rather than push controls outside the canvas. */
.dlwe-portal-shell .dlwe-portal-header {
  min-width: 0;
  gap: 22px;
}

.dlwe-portal-shell .dlwe-portal-header > div:first-child {
  min-width: 0;
  flex: 1 1 520px;
}

.dlwe-portal-shell .dlwe-header-actions {
  min-width: 0;
  max-width: 100%;
  flex-wrap: wrap !important;
  align-items: center;
  justify-content: flex-end;
}

/*
 * The historical indexed heading pattern is:
 *   <span>01</span><div>...</div>
 * All other heading patterns are ordinary title rows and must never inherit
 * the fixed 36px index column. The :has rules prevent a flash before JS runs;
 * the dlwe-ui-heading-* classes provide the same protection to dynamic nodes.
 */
.dlwe-portal-shell .dlwe-form-section-heading,
.dlwe-portal-shell .dlwe-form-section-heading * {
  box-sizing: border-box;
}

.dlwe-portal-shell .dlwe-form-section-heading h2,
.dlwe-portal-shell .dlwe-form-section-heading h3,
.dlwe-portal-shell .dlwe-form-section-heading p,
.dlwe-portal-shell .dlwe-form-section-heading small,
.dlwe-portal-shell .dlwe-form-section-heading .dlwe-eyebrow {
  min-width: 0;
  max-width: 100%;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  white-space: normal !important;
}

/* Indexed form step. */
.dlwe-portal-shell .dlwe-form-section-heading:has(> span:first-child + div),
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-indexed {
  display: grid !important;
  grid-template-columns: 36px minmax(0, 1fr) !important;
  align-items: start !important;
  justify-content: start !important;
  gap: 15px !important;
  width: 100% !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-form-section-heading:has(> span:first-child + div) > span:first-child,
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-indexed > span:first-child {
  grid-column: 1;
  grid-row: 1;
}

.dlwe-portal-shell .dlwe-form-section-heading:has(> span:first-child + div) > div:nth-child(2),
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-indexed > div:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
  width: auto !important;
  min-width: 0 !important;
}

/* Optional action block on an indexed heading stays aligned with the copy. */
.dlwe-portal-shell .dlwe-form-section-heading:has(> span:first-child + div) > div:nth-child(n+3),
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-indexed > div:nth-child(n+3) {
  grid-column: 2;
  min-width: 0 !important;
}

/* Ordinary title row: copy on the left, badge/action/meta on the right. */
.dlwe-portal-shell .dlwe-form-section-heading:has(> div:first-child):not(:has(> span:first-child + div)),
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-row {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 14px 22px !important;
  width: 100% !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-form-section-heading:has(> div:first-child):not(:has(> span:first-child + div)) > div:first-child,
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-row > div:first-child {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  flex: 1 1 360px !important;
}

.dlwe-portal-shell .dlwe-form-section-heading:has(> div:first-child):not(:has(> span:first-child + div)) > :not(div:first-child),
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-row > :not(div:first-child) {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  flex: 0 1 auto !important;
}

/* Ordinary stacked heading: direct eyebrow + title + helper copy. */
.dlwe-portal-shell .dlwe-form-section-heading:not(:has(> div:first-child)):not(:has(> span:first-child + div)),
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-stacked {
  display: block !important;
  grid-template-columns: none !important;
  width: 100% !important;
  text-align: left !important;
}

.dlwe-portal-shell .dlwe-form-section-heading:not(:has(> div:first-child)):not(:has(> span:first-child + div)) > *,
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-stacked > * {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 760px !important;
  grid-column: auto !important;
}

.dlwe-portal-shell .dlwe-form-section-heading:not(:has(> div:first-child)):not(:has(> span:first-child + div)) > .dlwe-eyebrow,
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-stacked > .dlwe-eyebrow {
  margin: 0 0 8px !important;
}

.dlwe-portal-shell .dlwe-form-section-heading:not(:has(> div:first-child)):not(:has(> span:first-child + div)) > h2,
.dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-stacked > h2 {
  margin: 0 0 7px !important;
}

/* Shared grids and fields: future modules inherit the same breakpoints. */
.dlwe-portal-shell .dlwe-grid,
.dlwe-portal-shell .dlwe-form-grid,
.dlwe-portal-shell .dlwe-review-grid {
  width: 100%;
}

.dlwe-portal-shell input,
.dlwe-portal-shell select,
.dlwe-portal-shell textarea {
  max-width: 100%;
}

.dlwe-portal-shell textarea {
  resize: vertical;
}

.dlwe-portal-shell .dlwe-table-scroll {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

.dlwe-portal-shell .dlwe-table-scroll table {
  width: 100%;
}

.dlwe-portal-shell .dlwe-form-actions {
  min-width: 0;
  max-width: 100%;
  flex-wrap: wrap !important;
}

/* Financial screens share the same structural guard. */
.dlwe-portal-shell .dlwe-financial-overview-panel .dlwe-financial-filter-section,
.dlwe-portal-shell .dlwe-cash-flow-panel .dlwe-financial-filter-section,
.dlwe-portal-shell .dlwe-financial-reports-panel .dlwe-financial-filter-section {
  min-height: 0 !important;
}

@media (max-width: 1180px) {
  .dlwe-portal-shell .dlwe-portal-header {
    flex-wrap: wrap !important;
  }

  .dlwe-portal-shell .dlwe-header-actions {
    width: 100%;
    justify-content: flex-start !important;
  }

  .dlwe-portal-shell .dlwe-grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .dlwe-portal-shell .dlwe-form-section,
  .dlwe-portal-shell .dlwe-table-card,
  .dlwe-portal-shell .dlwe-budget-report-card,
  .dlwe-portal-shell .dlwe-task-dashboard-card {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .dlwe-portal-shell .dlwe-portal-header > div:first-child,
  .dlwe-portal-shell .dlwe-form-section-heading:has(> div:first-child):not(:has(> span:first-child + div)) > div:first-child,
  .dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-row > div:first-child {
    flex-basis: 100% !important;
  }

  .dlwe-portal-shell .dlwe-header-actions,
  .dlwe-portal-shell .dlwe-form-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-header-actions > *,
  .dlwe-portal-shell .dlwe-form-actions > * {
    width: 100% !important;
    max-width: none !important;
  }

  .dlwe-portal-shell .dlwe-grid-2,
  .dlwe-portal-shell .dlwe-grid-3,
  .dlwe-portal-shell .dlwe-grid-4,
  .dlwe-portal-shell .dlwe-form-grid,
  .dlwe-portal-shell .dlwe-review-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .dlwe-portal-shell .dlwe-form-section-heading:has(> span:first-child + div),
  .dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-indexed {
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  .dlwe-portal-shell .dlwe-form-section-heading:has(> span:first-child + div) > span:first-child,
  .dlwe-portal-shell .dlwe-form-section-heading.dlwe-ui-heading-indexed > span:first-child {
    width: 30px !important;
    height: 30px !important;
  }
}


/* v6.6.14 — Global empty-state readability guard.
 * Keep title and helper copy on separate lines across every module.
 */
.dlwe-portal-shell .dlwe-empty-state > strong,
.dlwe-portal-shell .dlwe-empty-state > span {
  display: block;
  width: 100%;
}

.dlwe-portal-shell .dlwe-empty-state > strong + span {
  margin-top: 4px;
}

/* ========================================================================== 
   v6.7.1 — Phase 8A Staff Rosters & Daily Dashboard Attendance
   ========================================================================== */
.dlwe-portal-shell .dlwe-home-clock-compact {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-top: 20px;
  border-top: 1px solid rgba(73, 61, 47, 0.12);
}

.dlwe-portal-shell .dlwe-home-clock-compact .dlwe-home-clock-active-shift {
  flex: 1 1 auto;
  min-width: 0;
}

.dlwe-portal-shell .dlwe-home-clock-compact .dlwe-home-clock-action {
  flex: 0 0 auto;
  min-width: 168px;
}

.dlwe-home-clock-modal[hidden] {
  display: none !important;
}

.dlwe-home-clock-modal .dlwe-home-clock-modal-card {
  width: min(720px, calc(100vw - 32px));
  max-height: min(760px, calc(100vh - 32px));
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.dlwe-home-clock-modal .dlwe-home-clock-modal-header {
  padding: 28px 30px 18px;
  border-bottom: 1px solid rgba(73, 61, 47, 0.10);
}

.dlwe-home-clock-modal .dlwe-home-clock-modal-header h2 {
  margin: 4px 42px 6px 0;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 400;
  line-height: 1.1;
}

.dlwe-home-clock-modal .dlwe-home-clock-modal-header p:last-child {
  margin: 0;
}

.dlwe-home-clock-modal .dlwe-home-clock-modal-body {
  overflow-y: auto;
  padding: 24px 30px;
  overscroll-behavior: contain;
}

.dlwe-home-clock-modal .dlwe-home-clock-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dlwe-home-clock-modal .dlwe-home-clock-shift-field,
.dlwe-home-clock-modal .dlwe-home-clock-notes-field {
  grid-column: 1 / -1;
}

.dlwe-home-clock-modal .dlwe-home-clock-modal-actions {
  position: static;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 18px 30px;
  border-top: 1px solid rgba(73, 61, 47, 0.10);
  background: #fffdf9;
}

.dlwe-portal-shell .dlwe-roster-logistics-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 12px 0 0;
}

.dlwe-portal-shell .dlwe-roster-logistics-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 5px 9px;
  border: 1px solid rgba(181, 139, 73, 0.28);
  border-radius: 999px;
  background: #faf6ee;
  color: #775d33;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 720px) {
  .dlwe-portal-shell .dlwe-home-clock-compact {
    align-items: stretch;
    flex-direction: column;
  }
  .dlwe-portal-shell .dlwe-home-clock-compact .dlwe-home-clock-action {
    width: 100%;
  }
  .dlwe-home-clock-modal {
    padding: 10px !important;
    align-items: flex-end !important;
  }
  .dlwe-home-clock-modal .dlwe-home-clock-modal-card {
    width: 100%;
    max-height: calc(100dvh - 20px);
    border-radius: 18px 18px 12px 12px;
  }
  .dlwe-home-clock-modal .dlwe-home-clock-modal-header,
  .dlwe-home-clock-modal .dlwe-home-clock-modal-body,
  .dlwe-home-clock-modal .dlwe-home-clock-modal-actions {
    padding-left: 20px;
    padding-right: 20px;
  }
  .dlwe-home-clock-modal .dlwe-home-clock-fields {
    grid-template-columns: 1fr;
  }
  .dlwe-home-clock-modal .dlwe-home-clock-shift-field,
  .dlwe-home-clock-modal .dlwe-home-clock-notes-field {
    grid-column: auto;
  }
  .dlwe-home-clock-modal .dlwe-home-clock-modal-actions {
    flex-direction: column-reverse;
  }
  .dlwe-home-clock-modal .dlwe-home-clock-modal-actions > button {
    width: 100%;
  }
}


/* ==========================================================================
   v6.7.2 — Daily office attendance with optional multi-wedding context
   ========================================================================== */
.dlwe-home-clock-modal .dlwe-home-clock-weddings-field,
.dlwe-home-clock-modal .dlwe-home-clock-notes-field {
  grid-column: 1 / -1;
}

.dlwe-home-clock-modal .dlwe-home-clock-weddings-field > span {
  display: block;
  margin-bottom: 8px;
  color: var(--dlwe-text, #17130f);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.dlwe-home-clock-modal .dlwe-home-clock-weddings-field > span small,
.dlwe-home-clock-modal .dlwe-home-clock-helper {
  color: var(--dlwe-muted, #827a70);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .04em;
  text-transform: none;
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  max-height: 190px;
  overflow-y: auto;
  padding: 8px;
  border: 1px solid rgba(122, 100, 71, .28);
  border-radius: 10px;
  background: rgba(255,255,255,.64);
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-option {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid rgba(122, 100, 71, .15);
  border-radius: 8px;
  background: #fffdf9;
  cursor: pointer;
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-option:hover {
  border-color: rgba(181, 139, 73, .45);
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-option input {
  flex: 0 0 auto;
  margin: 0;
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-option span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--dlwe-text, #17130f);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}

.dlwe-home-clock-modal .dlwe-home-clock-helper {
  display: block;
  margin-top: 7px;
  line-height: 1.45;
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-empty {
  grid-column: 1 / -1;
  padding: 12px;
  color: var(--dlwe-muted, #827a70);
  font-size: 12px;
}

@media (max-width: 720px) {
  .dlwe-home-clock-modal .dlwe-home-clock-wedding-options {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================================
   v6.7.3 — Attendance persistence + Clock In modal alignment
   ========================================================================== */
.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-card {
  width: min(620px, calc(100vw - 32px));
  max-height: min(720px, calc(100dvh - 32px));
  padding: 0;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-header {
  padding: 24px 26px 16px;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-body {
  padding: 20px 26px 22px;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-fields {
  gap: 16px;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-options {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
  max-height: 176px;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-option {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-height: 48px;
  padding: 10px 12px;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-option input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  flex: 0 0 18px;
  margin: 0;
  padding: 0;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-option span {
  flex: 1 1 auto;
  text-align: left;
}

.dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-actions {
  padding: 16px 26px 20px;
}

@media (max-width: 720px) {
  .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-card {
    width: 100%;
    max-height: calc(100dvh - 20px);
  }

  .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-header {
    padding: 22px 20px 14px;
  }

  .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-body {
    padding: 18px 20px 20px;
  }

  .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-actions {
    padding: 14px 20px 18px;
  }

  .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-options {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================================
   v6.7.4 — Luxury executive dashboard header + self-service profile
   ========================================================================== */
.dlwe-portal-shell .dlwe-home-executive-header {
  grid-template-columns: minmax(360px, 1fr) auto !important;
  align-items: center !important;
  gap: 26px !important;
  margin-bottom: 22px !important;
  padding-bottom: 22px !important;
}

.dlwe-portal-shell .dlwe-home-executive-header .dlwe-home-heading-block {
  min-width: 0;
  max-width: 760px;
}

.dlwe-portal-shell .dlwe-home-executive-header h1 {
  font-size: clamp(34px, 3.45vw, 52px) !important;
}

.dlwe-portal-shell .dlwe-home-header-utilities {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 9px !important;
  width: auto !important;
  max-width: none !important;
}

.dlwe-portal-shell .dlwe-home-profile-trigger {
  appearance: none;
  min-width: 235px;
  max-width: 286px;
  min-height: 66px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 11px;
  padding: 9px 11px;
  color: var(--dlwe-brand-ink, #171411);
  background:
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(250,246,238,.90));
  border: 1px solid rgba(183, 148, 94, .34);
  border-radius: 13px;
  box-shadow: 0 8px 24px rgba(34, 27, 19, .055);
  cursor: pointer;
  text-align: left;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dlwe-portal-shell .dlwe-home-profile-trigger:hover,
.dlwe-portal-shell .dlwe-home-profile-trigger:focus-visible {
  border-color: rgba(166, 124, 62, .58);
  box-shadow: 0 12px 30px rgba(34, 27, 19, .09);
  transform: translateY(-1px);
  outline: none;
}

.dlwe-portal-shell .dlwe-home-profile-avatar {
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: 15px;
  letter-spacing: .05em;
}

.dlwe-portal-shell .dlwe-home-profile-avatar img,
.dlwe-portal-shell .dlwe-home-profile-photo-preview img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.dlwe-portal-shell .dlwe-home-profile-copy {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-home-profile-copy strong,
.dlwe-portal-shell .dlwe-home-profile-copy small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-home-profile-copy strong {
  color: #1a1714;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.25;
}

.dlwe-portal-shell .dlwe-home-profile-copy small {
  margin-top: 4px;
  color: #80776d;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.3;
}

.dlwe-portal-shell .dlwe-home-profile-chevron {
  color: #a27b42;
  font-size: 16px;
  line-height: 1;
  text-align: center;
}

.dlwe-portal-shell .dlwe-home-header-time {
  min-width: 138px;
  min-height: 66px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 9px 14px;
  color: #fffaf1;
  background:
    linear-gradient(145deg, #1e1a16 0%, #151310 100%);
  border: 1px solid rgba(197, 160, 101, .38);
  border-radius: 13px;
  box-shadow: 0 9px 25px rgba(24, 20, 16, .12);
}

.dlwe-portal-shell .dlwe-home-header-time span,
.dlwe-portal-shell .dlwe-home-header-time small {
  display: block;
  color: rgba(255, 250, 241, .58);
  font-family: var(--dlwe-sans, Arial, sans-serif);
}

.dlwe-portal-shell .dlwe-home-header-time span {
  margin-bottom: 3px;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-home-header-time strong {
  display: block;
  color: #e5c78f;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.1;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-home-header-time small {
  margin-top: 3px;
  font-size: 8px;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-home-header-workday {
  min-width: 306px;
  min-height: 66px;
  display: grid;
  grid-template-columns: 10px minmax(92px, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 8px 9px 8px 13px;
  background: rgba(255, 253, 249, .92);
  border: 1px solid rgba(183, 148, 94, .30);
  border-radius: 13px;
  box-shadow: 0 8px 24px rgba(34, 27, 19, .045);
}

.dlwe-portal-shell .dlwe-home-workday-indicator {
  width: 8px;
  height: 8px;
  display: block;
  border-radius: 50%;
  background: #b9afa3;
  box-shadow: 0 0 0 4px rgba(185, 175, 163, .12);
}

.dlwe-portal-shell .dlwe-home-workday-indicator.is-active {
  background: #2e8c5a;
  box-shadow: 0 0 0 4px rgba(46, 140, 90, .13);
}

.dlwe-portal-shell .dlwe-home-workday-indicator.is-ready {
  background: #b28a4e;
  box-shadow: 0 0 0 4px rgba(178, 138, 78, .12);
}

.dlwe-portal-shell .dlwe-home-workday-indicator.is-complete {
  background: #777064;
  box-shadow: 0 0 0 4px rgba(119, 112, 100, .10);
}

.dlwe-portal-shell .dlwe-home-workday-indicator.is-unavailable {
  background: #a85a52;
  box-shadow: 0 0 0 4px rgba(168, 90, 82, .10);
}

.dlwe-portal-shell .dlwe-home-workday-copy {
  min-width: 0;
}

.dlwe-portal-shell .dlwe-home-workday-copy small,
.dlwe-portal-shell .dlwe-home-workday-copy strong {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dlwe-portal-shell .dlwe-home-workday-copy small {
  color: #8a8177;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.dlwe-portal-shell .dlwe-home-workday-copy strong {
  margin-top: 4px;
  color: #27221d;
  font-size: 9px;
  font-weight: 650;
}

.dlwe-portal-shell .dlwe-home-header-workday .dlwe-home-clock-action {
  min-width: 92px;
  min-height: 46px;
  padding: 10px 14px;
  border-radius: 9px;
  font-size: 9px;
  letter-spacing: .12em;
}

.dlwe-portal-shell .dlwe-home-header-workday .dlwe-home-clock-action:disabled {
  opacity: .54;
}

.dlwe-portal-shell .dlwe-home-refresh-button {
  min-width: 78px;
  min-height: 66px;
  padding: 0 13px !important;
  border-radius: 13px !important;
}

.dlwe-portal-shell .dlwe-home-header-alert {
  margin: -9px 0 18px;
  border-radius: 10px;
}

.dlwe-portal-shell #dlwe-home-content > .dlwe-home-hero:first-child {
  margin-top: 0;
}

/* My Profile modal ------------------------------------------------------- */
.dlwe-home-profile-modal[hidden] {
  display: none !important;
}

.dlwe-home-profile-modal .dlwe-home-profile-modal-card {
  width: min(700px, calc(100vw - 32px));
  max-height: min(790px, calc(100dvh - 32px));
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 0;
}

.dlwe-home-profile-modal .dlwe-home-profile-modal-header {
  padding: 27px 30px 18px;
  border-bottom: 1px solid rgba(73, 61, 47, .10);
}

.dlwe-home-profile-modal .dlwe-home-profile-modal-header h2 {
  margin: 4px 42px 6px 0;
  color: #171411;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: clamp(30px, 3vw, 40px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.02em;
}

.dlwe-home-profile-modal .dlwe-home-profile-modal-header p:last-child {
  margin: 0;
}

.dlwe-home-profile-modal .dlwe-home-profile-modal-body {
  overflow-y: auto;
  padding: 24px 30px 26px;
  overscroll-behavior: contain;
}

.dlwe-home-profile-modal .dlwe-home-profile-form {
  display: grid;
  gap: 22px;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-row {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 18px;
  background:
    linear-gradient(145deg, rgba(251,247,240,.95), rgba(255,255,255,.9));
  border: 1px solid rgba(181, 139, 73, .23);
  border-radius: 14px;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-preview {
  width: 92px;
  height: 92px;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #2c241b;
  background: #f5ead4;
  border: 1px solid #d9ba82;
  border-radius: 50%;
  font-family: var(--dlwe-serif, Georgia, "Times New Roman", serif);
  font-size: 26px;
  letter-spacing: .05em;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-copy strong,
.dlwe-home-profile-modal .dlwe-home-profile-photo-copy small {
  display: block;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-copy strong {
  color: #1b1713;
  font-size: 13px;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-copy small {
  margin-top: 5px;
  color: #847a70;
  font-size: 10px;
  line-height: 1.45;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 13px;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-button {
  cursor: pointer;
}

.dlwe-home-profile-modal .dlwe-home-profile-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.dlwe-home-profile-modal .dlwe-home-profile-grid label {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin: 0;
}

.dlwe-home-profile-modal .dlwe-home-profile-grid label > span {
  color: #665f57;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.dlwe-home-profile-modal .dlwe-home-profile-grid label > span small {
  color: #8b8176;
  font-size: 8px;
  font-weight: 500;
  letter-spacing: .05em;
  text-transform: none;
}

.dlwe-home-profile-modal .dlwe-home-profile-grid input {
  width: 100%;
  min-width: 0;
  height: 48px;
  padding: 0 14px;
  color: #231f1a;
  background: #fff;
  border: 1px solid #d9cdbd;
  border-radius: 10px;
  box-shadow: none;
  font-size: 12px;
}

.dlwe-home-profile-modal .dlwe-home-profile-grid input:focus {
  border-color: #b58b49;
  outline: none;
  box-shadow: 0 0 0 3px rgba(181, 139, 73, .11);
}

.dlwe-home-profile-modal .dlwe-home-profile-grid input[readonly] {
  color: #766e64;
  background: #f7f3ed;
  border-color: #e2d9cc;
  cursor: default;
}

.dlwe-home-profile-modal .dlwe-home-profile-admin-note {
  margin: -3px 0 0;
  padding: 11px 13px;
  color: #746b61;
  background: #faf7f1;
  border-left: 2px solid #c39b5c;
  font-size: 10px;
  line-height: 1.55;
}

.dlwe-home-profile-modal .dlwe-home-profile-modal-actions {
  position: static;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 17px 30px 21px;
  background: #fffdf9;
  border-top: 1px solid rgba(73, 61, 47, .10);
}

/* Preserve one premium horizontal utility rail on desktop. */
@media (max-width: 1580px) {
  .dlwe-portal-shell .dlwe-home-executive-header {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .dlwe-portal-shell .dlwe-home-header-utilities {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  .dlwe-portal-shell .dlwe-home-profile-trigger {
    flex: 1 1 240px;
    max-width: 310px;
  }

  .dlwe-portal-shell .dlwe-home-header-workday {
    flex: 1 1 300px;
  }
}

@media (max-width: 980px) {
  .dlwe-portal-shell .dlwe-home-header-utilities {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: stretch !important;
  }

  .dlwe-portal-shell .dlwe-home-profile-trigger {
    width: 100%;
    max-width: none;
  }

  .dlwe-portal-shell .dlwe-home-header-time {
    min-width: 148px;
  }

  .dlwe-portal-shell .dlwe-home-header-workday {
    grid-column: 1 / -1;
    width: 100%;
  }

  .dlwe-portal-shell .dlwe-home-refresh-button {
    grid-column: 1 / -1;
    min-height: 46px;
  }
}

@media (max-width: 720px) {
  .dlwe-portal-shell .dlwe-home-executive-header {
    gap: 18px !important;
    margin-bottom: 18px !important;
    padding-bottom: 18px !important;
  }

  .dlwe-portal-shell .dlwe-home-executive-header h1 {
    font-size: clamp(31px, 10vw, 42px) !important;
  }

  .dlwe-portal-shell .dlwe-home-header-utilities {
    grid-template-columns: 1fr !important;
  }

  .dlwe-portal-shell .dlwe-home-profile-trigger,
  .dlwe-portal-shell .dlwe-home-header-time,
  .dlwe-portal-shell .dlwe-home-header-workday,
  .dlwe-portal-shell .dlwe-home-refresh-button {
    grid-column: auto;
    width: 100%;
    max-width: none;
  }

  .dlwe-portal-shell .dlwe-home-header-time {
    min-height: 58px;
    text-align: left;
  }

  .dlwe-portal-shell .dlwe-home-header-workday {
    grid-template-columns: 10px minmax(0, 1fr) auto;
  }

  .dlwe-home-profile-modal {
    padding: 10px !important;
    align-items: flex-end !important;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-modal-card {
    width: 100%;
    max-height: calc(100dvh - 20px);
    border-radius: 18px 18px 12px 12px;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-modal-header,
  .dlwe-home-profile-modal .dlwe-home-profile-modal-body,
  .dlwe-home-profile-modal .dlwe-home-profile-modal-actions {
    padding-left: 20px;
    padding-right: 20px;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-photo-row {
    grid-template-columns: 72px minmax(0, 1fr);
    padding: 15px;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-photo-preview {
    width: 72px;
    height: 72px;
    font-size: 21px;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-grid {
    grid-template-columns: 1fr;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-modal-actions {
    flex-direction: column-reverse;
  }

  .dlwe-home-profile-modal .dlwe-home-profile-modal-actions > button {
    width: 100%;
  }
}


/* ========================================================================== 
   v6.7.5 — Luxury Glass Backdrop System
   Keep every portal popup visually connected to the workspace. The page
   behind a modal is softly blurred and warmed rather than covered by black.
   ========================================================================== */
:root {
  --dlwe-modal-glass: rgba(250, 247, 241, 0.24);
  --dlwe-modal-blur: 13px;
}

/* Calendar-based dialogs: Clock In/Out, My Profile, meetings and event detail. */
.dlwe-calendar-modal .dlwe-calendar-modal-backdrop,
#dlwe-document-modal .dlwe-document-modal-backdrop,
.dlwe-document-modal .dlwe-document-modal-backdrop,
.dlwe-mobile-choice-backdrop {
  background: var(--dlwe-modal-glass) !important;
  -webkit-backdrop-filter: blur(var(--dlwe-modal-blur)) saturate(.88) brightness(.98) !important;
  backdrop-filter: blur(var(--dlwe-modal-blur)) saturate(.88) brightness(.98) !important;
}

/* Modals where the full-screen container itself is the backdrop. */
.dlwe-quick-actions-modal,
.dlwe-reset-result-modal,
.dlwe-user-delete-modal {
  background: var(--dlwe-modal-glass) !important;
  -webkit-backdrop-filter: blur(var(--dlwe-modal-blur)) saturate(.88) brightness(.98) !important;
  backdrop-filter: blur(var(--dlwe-modal-blur)) saturate(.88) brightness(.98) !important;
}

/* Preserve depth without returning the heavy black-overlay feeling. */
.dlwe-calendar-modal-card,
.dlwe-quick-actions-dialog,
.dlwe-reset-result-dialog,
.dlwe-user-delete-dialog,
.dlwe-mobile-choice-dialog,
#dlwe-document-modal .dlwe-document-modal-card {
  box-shadow: 0 26px 72px rgba(42, 34, 25, .16) !important;
}

/* Browsers without backdrop-filter still receive a light neutral veil. */
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .dlwe-calendar-modal .dlwe-calendar-modal-backdrop,
  #dlwe-document-modal .dlwe-document-modal-backdrop,
  .dlwe-document-modal .dlwe-document-modal-backdrop,
  .dlwe-mobile-choice-backdrop,
  .dlwe-quick-actions-modal,
  .dlwe-reset-result-modal,
  .dlwe-user-delete-modal {
    background: rgba(244, 240, 233, .84) !important;
  }
}


/* ========================================================================== 
   v6.7.6 — Executive Header Collision Guard + Profile Photo Control Polish
   ========================================================================== */

/* Keep the editorial greeting inside its own grid column at every desktop size. */
.dlwe-portal-shell .dlwe-home-executive-header .dlwe-home-heading-block {
  min-width: 0 !important;
  max-width: none !important;
  overflow: hidden !important;
}

.dlwe-portal-shell .dlwe-home-executive-header h1 {
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
  font-size: clamp(30px, 3vw, 48px) !important;
  line-height: .98 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

/* Preserve the requested one-line executive rail on normal desktop/laptop widths. */
@media (min-width: 1121px) {
  .dlwe-portal-shell .dlwe-home-executive-header {
    grid-template-columns: minmax(300px, 1fr) minmax(670px, auto) !important;
    align-items: center !important;
    gap: 22px !important;
  }

  .dlwe-portal-shell .dlwe-home-header-utilities {
    width: auto !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(190px, 220px) 132px minmax(280px, 1fr) 78px !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  .dlwe-portal-shell .dlwe-home-profile-trigger {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  .dlwe-portal-shell .dlwe-home-header-time {
    min-width: 0 !important;
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-home-header-workday {
    min-width: 0 !important;
    width: 100% !important;
  }

  .dlwe-portal-shell .dlwe-home-refresh-button {
    min-width: 0 !important;
    width: 78px !important;
  }
}

/* At narrower widths, stack deliberately instead of allowing any collision. */
@media (max-width: 1120px) {
  .dlwe-portal-shell .dlwe-home-executive-header {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .dlwe-portal-shell .dlwe-home-header-utilities {
    width: 100% !important;
    max-width: none !important;
  }
}

/* Browser-native file input text must never bleed into the luxury upload control. */
.dlwe-home-profile-modal .dlwe-home-profile-photo-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 118px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-button input[type="file"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  max-width: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  pointer-events: none !important;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-actions {
  gap: 10px 16px !important;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-actions .dlwe-text-button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

@media (max-width: 560px) {
  .dlwe-home-profile-modal .dlwe-home-profile-photo-actions {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* ========================================================================== 
   v6.8.0 — DLWE Brand System
   Brand source: DLWE Fonts & Colors document.
   Beauty Friday is referenced only as a preferred local display face; no font
   binary is bundled. Cormorant SC / Book Antiqua / Palatino / Georgia provide
   production-safe fallbacks until licensed brand font assets are supplied.
   ========================================================================== */
:root {
  /* DLWE documented palette */
  --dlwe-rosegold: #B76E78;
  --dlwe-parrot-pink: #D998A3;
  --dlwe-pale-pink: #F6DFE1;
  --dlwe-queen-pink: #EFD1D5;
  --dlwe-cameo-pink: #EBBEC4;
  --dlwe-pastel-pink: #D8A2A9;
  --dlwe-sage: #BFAA8C;
  --dlwe-dark-vanilla: #D1C0A8;
  --dlwe-white-coffee: #E8DED1;
  --dlwe-beaver: #A0816C;
  --dlwe-light-french-beige: #C8AD7E;

  /* Brand typography stacks. No font file is bundled. */
  --dlwe-font-display: "Beauty Friday", "Cormorant SC", "Book Antiqua", "Palatino Linotype", Palatino, Georgia, serif;
  --dlwe-font-serif: "Book Antiqua", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;
  --dlwe-font-label: "Cormorant SC", "Book Antiqua", "Palatino Linotype", Palatino, Georgia, serif;
  --dlwe-font-ui: "Book Antiqua", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;

  /* Existing token mapping so older modules inherit the brand automatically. */
  --dlwe-black: #191415;
  --dlwe-charcoal: #2E2728;
  --dlwe-cream: #FAF6F4;
  --dlwe-white: #FFFDFC;
  --dlwe-surface: #FFFDFC;
  --dlwe-champagne: var(--dlwe-rosegold);
  --dlwe-champagne-soft: var(--dlwe-pale-pink);
  --dlwe-border: #E3D6D4;
  --dlwe-border-light: #F0E8E6;
  --dlwe-muted: #766C69;
  --dlwe-success: #456E59;
  --dlwe-error: #914B50;
  --dlwe-warning: #9A7349;
  --dlwe-shadow: 0 22px 56px rgba(59, 41, 43, .075);
  --dlwe-shadow-soft: 0 10px 28px rgba(59, 41, 43, .05);
  --dlwe-modal-glass: rgba(246, 223, 225, .16);
  --dlwe-modal-blur: 16px;
}

/* Brand-level operational tokens. */
.dlwe-portal-shell {
  --dlwe-pro-ink: #1A1516;
  --dlwe-pro-copy: #514849;
  --dlwe-pro-muted: #7A6F6D;
  --dlwe-pro-canvas: #F9F5F3;
  --dlwe-pro-surface: #FFFDFC;
  --dlwe-pro-surface-strong: #FFFFFF;
  --dlwe-pro-line: #E2D4D2;
  --dlwe-pro-line-soft: #F0E6E4;
  --dlwe-pro-accent: var(--dlwe-rosegold);
  --dlwe-pro-accent-dark: #8E535D;
  --dlwe-pro-accent-soft: #F8E9EB;
  --dlwe-pro-danger: #914B50;
  --dlwe-pro-success: #456E59;
  --dlwe-pro-warning: #9A7349;
  --dlwe-pro-radius: 12px;
  --dlwe-pro-radius-sm: 8px;
  --dlwe-pro-shadow: 0 18px 46px rgba(63, 43, 45, .075);
  --dlwe-pro-shadow-soft: 0 8px 24px rgba(63, 43, 45, .045);
  background:
    radial-gradient(circle at 96% -4%, rgba(217, 152, 163, .10), transparent 26%),
    var(--dlwe-pro-canvas);
  border-color: #E8DEDB;
  box-shadow: 0 26px 76px rgba(48, 34, 35, .10);
}

/* Typography: Book Antiqua is the operational face; display stack is reserved
   for brand moments so dense finance/HR screens stay highly readable. */
.dlwe-portal-shell,
.dlwe-auth-shell,
.dlwe-access-card,
.dlwe-portal-shell button,
.dlwe-portal-shell input,
.dlwe-portal-shell select,
.dlwe-portal-shell textarea,
.dlwe-auth-shell button,
.dlwe-auth-shell input,
.dlwe-auth-shell select,
.dlwe-auth-shell textarea {
  font-family: var(--dlwe-font-ui) !important;
}

.dlwe-portal-shell .dlwe-main h1,
.dlwe-portal-shell .dlwe-main h2,
.dlwe-portal-shell .dlwe-main h3,
.dlwe-auth-shell h1,
.dlwe-auth-shell h2,
.dlwe-access-card h1,
.dlwe-access-card h2,
.dlwe-home-profile-modal h2,
.dlwe-calendar-modal-card h2,
.dlwe-document-modal-card h2,
.dlwe-quick-actions-dialog h2,
.dlwe-reset-result-dialog h2,
.dlwe-user-delete-dialog h2 {
  font-family: var(--dlwe-font-serif) !important;
  font-weight: 400 !important;
}

.dlwe-sidebar-brand,
.dlwe-brand,
.dlwe-home-executive-header h1,
.dlwe-home-hero h2 {
  font-family: var(--dlwe-font-display) !important;
  font-weight: 400 !important;
}

.dlwe-eyebrow,
.dlwe-sidebar-subtitle,
.dlwe-nav-section-label,
.dlwe-nav-group-toggle,
.dlwe-form-section-heading > span,
.dlwe-field label,
.dlwe-form-grid label,
.dlwe-data-table th,
.dlwe-task-dashboard-table th,
.dlwe-report-table th,
.dlwe-checklist-table th,
.dlwe-checklist-template-table th,
.dlwe-timeline-table th,
.dlwe-home-workday-copy small,
.dlwe-home-header-time span {
  font-family: var(--dlwe-font-label) !important;
  font-variant-caps: all-small-caps;
  letter-spacing: .13em !important;
}

/* Sidebar: black-tie base with restrained rose-gold brand detail. */
.dlwe-sidebar {
  background:
    linear-gradient(180deg, rgba(183, 110, 120, .035), transparent 22%),
    linear-gradient(180deg, #1A1516 0%, #100D0E 100%) !important;
  border-right-color: rgba(246, 223, 225, .08) !important;
}

.dlwe-sidebar-brand {
  color: #FFF9F7 !important;
}

.dlwe-sidebar-subtitle {
  color: var(--dlwe-dark-vanilla) !important;
}

.dlwe-nav-section-label,
.dlwe-nav-group-toggle {
  color: rgba(232, 222, 209, .58) !important;
}

.dlwe-nav-item::before {
  background: var(--dlwe-rosegold) !important;
}

.dlwe-nav-item:hover,
.dlwe-nav-item:focus-visible {
  background: rgba(246, 223, 225, .055) !important;
  border-color: rgba(246, 223, 225, .08) !important;
}

.dlwe-nav-item.is-active {
  background: linear-gradient(90deg, rgba(183, 110, 120, .18), rgba(183, 110, 120, .07)) !important;
  border-color: rgba(183, 110, 120, .24) !important;
}

.dlwe-nav-item .dlwe-nav-badge {
  color: #241B1D !important;
  background: var(--dlwe-queen-pink) !important;
}

/* Header & dashboard brand moments. */
.dlwe-main {
  background:
    radial-gradient(circle at 100% 0, rgba(217, 152, 163, .10), transparent 29%),
    radial-gradient(circle at 20% 12%, rgba(232, 222, 209, .28), transparent 31%),
    var(--dlwe-pro-canvas) !important;
}

.dlwe-portal-header,
.dlwe-home-executive-header {
  border-bottom-color: rgba(183, 110, 120, .20) !important;
}

.dlwe-eyebrow {
  color: var(--dlwe-pro-accent-dark) !important;
}

.dlwe-home-hero {
  background:
    radial-gradient(circle at 93% 18%, rgba(217, 152, 163, .13), transparent 24%),
    linear-gradient(125deg, rgba(183, 110, 120, .12), transparent 40%),
    #1B1516 !important;
  border-color: rgba(183, 110, 120, .32) !important;
  box-shadow: 0 22px 58px rgba(45, 29, 32, .14) !important;
}

.dlwe-home-hero::after {
  background: linear-gradient(90deg, var(--dlwe-rosegold), var(--dlwe-light-french-beige)) !important;
}

.dlwe-home-role-badge {
  color: #2A1D20 !important;
  background: linear-gradient(135deg, var(--dlwe-queen-pink), var(--dlwe-dark-vanilla)) !important;
}

.dlwe-home-metric,
.dlwe-timeline-summary > div,
.dlwe-checklist-settings {
  border-top-color: var(--dlwe-rosegold) !important;
}

.dlwe-home-action:hover,
.dlwe-home-action:focus-visible,
.dlwe-checklist-module-option:hover {
  border-color: rgba(183, 110, 120, .58) !important;
  box-shadow: 0 15px 34px rgba(89, 55, 61, .09) !important;
}

.dlwe-home-list-row:hover,
.dlwe-data-table tbody tr:hover td,
.dlwe-task-dashboard-table tbody tr:hover td,
.dlwe-report-table tbody tr:hover td,
.dlwe-checklist-table tbody tr:hover td,
.dlwe-checklist-template-table tbody tr:hover td,
.dlwe-timeline-table tbody tr:hover td {
  background: #FCF1F3 !important;
}

/* Executive utility rail. */
.dlwe-portal-shell .dlwe-home-profile-trigger,
.dlwe-portal-shell .dlwe-home-header-workday {
  background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(250,245,243,.92)) !important;
  border-color: rgba(183, 110, 120, .30) !important;
  box-shadow: 0 9px 26px rgba(73, 48, 52, .055) !important;
}

.dlwe-portal-shell .dlwe-home-profile-trigger:hover,
.dlwe-portal-shell .dlwe-home-profile-trigger:focus-visible {
  border-color: rgba(183, 110, 120, .64) !important;
  box-shadow: 0 13px 32px rgba(73, 48, 52, .09) !important;
}

.dlwe-portal-shell .dlwe-home-profile-avatar,
.dlwe-home-profile-modal .dlwe-home-profile-photo-preview {
  color: #3A2428 !important;
  background: linear-gradient(145deg, var(--dlwe-pale-pink), #FFF9F8) !important;
  border-color: rgba(183, 110, 120, .58) !important;
}

.dlwe-portal-shell .dlwe-home-profile-chevron {
  color: var(--dlwe-rosegold) !important;
}

.dlwe-portal-shell .dlwe-home-header-time {
  color: #FFF9F7 !important;
  background:
    linear-gradient(145deg, rgba(183,110,120,.08), transparent 55%),
    #1B1516 !important;
  border-color: rgba(217, 152, 163, .38) !important;
}

.dlwe-portal-shell .dlwe-home-header-time strong {
  color: var(--dlwe-queen-pink) !important;
  font-family: var(--dlwe-font-serif) !important;
}

/* Buttons and interactions. */
.dlwe-primary-button,
.dlwe-panel .dlwe-primary-button,
.dlwe-home-clock-action,
.dlwe-quick-actions-dialog .dlwe-primary-button,
.dlwe-calendar-modal-actions .dlwe-primary-button,
.dlwe-document-modal-card .dlwe-primary-button {
  color: #FFFDFC !important;
  background: #1B1516 !important;
  border-color: #1B1516 !important;
  box-shadow: 0 8px 20px rgba(39, 24, 27, .11) !important;
}

.dlwe-primary-button:hover,
.dlwe-primary-button:focus-visible,
.dlwe-panel .dlwe-primary-button:hover,
.dlwe-panel .dlwe-primary-button:focus-visible,
.dlwe-home-clock-action:hover,
.dlwe-home-clock-action:focus-visible {
  color: #FFFFFF !important;
  background: var(--dlwe-rosegold) !important;
  border-color: var(--dlwe-rosegold) !important;
  box-shadow: 0 10px 24px rgba(183, 110, 120, .24) !important;
}

.dlwe-secondary-button,
.dlwe-panel .dlwe-secondary-button {
  color: #2B2224 !important;
  background: rgba(255, 253, 252, .90) !important;
  border-color: rgba(183, 110, 120, .34) !important;
}

.dlwe-secondary-button:hover,
.dlwe-secondary-button:focus-visible,
.dlwe-panel .dlwe-secondary-button:hover,
.dlwe-panel .dlwe-secondary-button:focus-visible {
  color: #5F343C !important;
  background: var(--dlwe-pale-pink) !important;
  border-color: var(--dlwe-rosegold) !important;
}

.dlwe-text-button {
  color: var(--dlwe-pro-accent-dark) !important;
}

.dlwe-text-button:hover,
.dlwe-text-button:focus-visible {
  color: var(--dlwe-rosegold) !important;
}

/* Forms: warm white surfaces with brand focus rings. */
.dlwe-panel input:not([type="checkbox"]):not([type="radio"]),
.dlwe-panel select,
.dlwe-panel textarea,
.dlwe-home-profile-grid input,
.dlwe-home-clock-modal input,
.dlwe-home-clock-modal select,
.dlwe-home-clock-modal textarea,
.dlwe-document-modal-card input,
.dlwe-document-modal-card select,
.dlwe-document-modal-card textarea {
  border-color: #DED0CD !important;
  background: #FFFDFC !important;
}

.dlwe-panel input:focus,
.dlwe-panel select:focus,
.dlwe-panel textarea:focus,
.dlwe-home-profile-grid input:focus,
.dlwe-home-clock-modal input:focus,
.dlwe-home-clock-modal select:focus,
.dlwe-home-clock-modal textarea:focus,
.dlwe-document-modal-card input:focus,
.dlwe-document-modal-card select:focus,
.dlwe-document-modal-card textarea:focus {
  border-color: var(--dlwe-rosegold) !important;
  box-shadow: 0 0 0 3px rgba(183, 110, 120, .12) !important;
}

input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--dlwe-rosegold);
}

.dlwe-checklist-module-option:has(input:checked) {
  background: var(--dlwe-pale-pink) !important;
  border-color: rgba(183, 110, 120, .55) !important;
  box-shadow: inset 3px 0 0 var(--dlwe-rosegold) !important;
}

/* Card and table language. */
.dlwe-form-section,
.dlwe-report-card,
.dlwe-report-filter-card,
.dlwe-task-dashboard-card,
.dlwe-checklist-settings,
.dlwe-checklist-preview-section,
.dlwe-checklist-template-editor,
.dlwe-checklist-progress-section,
.dlwe-timeline-top-grid > *,
.dlwe-hr-manager-form,
.dlwe-home-card,
.dlwe-home-metric,
.dlwe-home-action,
.dlwe-checklist-progress-card,
.dlwe-timeline-summary > div,
.dlwe-document-summary-card,
.dlwe-document-toolbar-card,
.dlwe-document-activity-card {
  background: rgba(255, 253, 252, .96) !important;
  border-color: var(--dlwe-pro-line) !important;
}

.dlwe-task-dashboard-table th,
.dlwe-data-table th,
.dlwe-report-table th,
.dlwe-checklist-table th,
.dlwe-checklist-template-table th,
.dlwe-timeline-table th {
  color: rgba(255, 249, 247, .92) !important;
  background: #20191B !important;
  border-color: #39292D !important;
  box-shadow: inset 0 -2px 0 rgba(183, 110, 120, .42);
}

.dlwe-task-dashboard-table tbody tr:nth-child(even) td,
.dlwe-data-table tbody tr:nth-child(even) td,
.dlwe-report-table tbody tr:nth-child(even) td,
.dlwe-checklist-table tbody tr:nth-child(even) td,
.dlwe-checklist-template-table tbody tr:nth-child(even) td,
.dlwe-timeline-table tbody tr:nth-child(even) td {
  background: #FFFAF9 !important;
}

/* Popups: same glass rule everywhere, now gently tinted with the brand palette. */
.dlwe-calendar-modal .dlwe-calendar-modal-backdrop,
#dlwe-document-modal .dlwe-document-modal-backdrop,
.dlwe-document-modal .dlwe-document-modal-backdrop,
.dlwe-mobile-choice-backdrop,
.dlwe-quick-actions-modal,
.dlwe-reset-result-modal,
.dlwe-user-delete-modal {
  background: rgba(246, 223, 225, .15) !important;
  -webkit-backdrop-filter: blur(16px) saturate(.92) brightness(1.01) !important;
  backdrop-filter: blur(16px) saturate(.92) brightness(1.01) !important;
}

.dlwe-calendar-modal-card,
.dlwe-quick-actions-dialog,
.dlwe-reset-result-dialog,
.dlwe-user-delete-dialog,
.dlwe-mobile-choice-dialog,
#dlwe-document-modal .dlwe-document-modal-card,
.dlwe-home-profile-modal .dlwe-home-profile-modal-card {
  background: #FFFDFC !important;
  border-color: rgba(183, 110, 120, .26) !important;
  box-shadow: 0 30px 90px rgba(64, 42, 46, .17) !important;
}

.dlwe-home-profile-modal .dlwe-home-profile-photo-row {
  background: linear-gradient(145deg, rgba(246,223,225,.42), rgba(255,253,252,.94)) !important;
  border-color: rgba(183, 110, 120, .26) !important;
}

.dlwe-home-profile-modal .dlwe-home-profile-admin-note {
  background: #FFF8F7 !important;
  border-left-color: var(--dlwe-rosegold) !important;
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-option {
  background: #FFFDFC !important;
  border-color: rgba(183, 110, 120, .18) !important;
}

.dlwe-home-clock-modal .dlwe-home-clock-wedding-option:hover {
  background: #FFF5F6 !important;
  border-color: rgba(183, 110, 120, .52) !important;
}

/* Authentication screens follow the same brand system. */
.dlwe-auth-shell {
  background:
    radial-gradient(circle at 18% 8%, rgba(217, 152, 163, .18), transparent 34%),
    radial-gradient(circle at 88% 88%, rgba(200, 173, 126, .13), transparent 30%),
    linear-gradient(145deg, #FCF8F6 0%, #F1E9E6 100%) !important;
}

.dlwe-login-card,
.dlwe-access-card {
  background: rgba(255, 253, 252, .97) !important;
  border-color: rgba(183, 110, 120, .25) !important;
  box-shadow: 0 28px 76px rgba(62, 41, 45, .13) !important;
}

.dlwe-brand-subtitle {
  color: var(--dlwe-pro-accent-dark) !important;
  font-family: var(--dlwe-font-label) !important;
  font-variant-caps: all-small-caps;
}

.dlwe-divider {
  background: linear-gradient(90deg, var(--dlwe-rosegold), var(--dlwe-light-french-beige)) !important;
}

/* Readability safeguard: keep semantic states semantic. Brand pink is never used
   to signal success/error/warning, preventing visual ambiguity in operations. */
.dlwe-alert.is-success,
.dlwe-status-pill.is-success,
.dlwe-status-pill.dlwe-status-published,
.dlwe-status-pill.dlwe-status-accepted,
.dlwe-status-pill.dlwe-status-available,
.dlwe-status-pill.dlwe-status-completed {
  --dlwe-state-color: var(--dlwe-success);
}

@media (prefers-reduced-motion: reduce) {
  .dlwe-portal-shell *,
  .dlwe-auth-shell * {
    scroll-behavior: auto !important;
  }
}

/* ========================================================================== 
   v6.8.1 — Sidebar Readability & Luxury Hierarchy
   The branded Cormorant/small-caps treatment was visually too delicate at
   operational navigation sizes. Keep the editorial character, but increase
   optical size, weight and contrast so the sidebar is effortless to scan.
   ========================================================================== */
.dlwe-portal-shell .dlwe-sidebar-subtitle {
  font-size: 9.5px !important;
  font-weight: 700 !important;
  letter-spacing: .20em !important;
  color: rgba(209, 192, 168, .92) !important;
}

.dlwe-portal-shell .dlwe-nav-section-label,
.dlwe-portal-shell .dlwe-nav-group-toggle {
  font-family: var(--dlwe-font-label) !important;
  font-variant-caps: normal !important;
  text-transform: uppercase !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .12em !important;
  color: rgba(232, 222, 209, .78) !important;
}

.dlwe-portal-shell .dlwe-nav-group-toggle {
  min-height: 50px !important;
  padding: 13px 13px 12px !important;
}

.dlwe-portal-shell .dlwe-nav-group-toggle:hover,
.dlwe-portal-shell .dlwe-nav-group-toggle:focus-visible,
.dlwe-portal-shell .dlwe-nav-group.is-open > .dlwe-nav-group-toggle {
  color: #FFFDFC !important;
  background: rgba(246, 223, 225, .055) !important;
}

.dlwe-portal-shell .dlwe-nav-group-toggle i {
  width: 9px !important;
  height: 9px !important;
  flex: 0 0 9px !important;
  margin-left: 14px !important;
  border-right-width: 1.5px !important;
  border-bottom-width: 1.5px !important;
  color: rgba(209, 192, 168, .88) !important;
}

.dlwe-portal-shell .dlwe-nav-group {
  border-top-color: rgba(232, 222, 209, .10) !important;
}

.dlwe-portal-shell .dlwe-nav-item {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: rgba(255, 253, 252, .80) !important;
}

.dlwe-portal-shell .dlwe-nav-item > span:first-child {
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
  text-transform: none !important;
}

.dlwe-portal-shell .dlwe-nav-item:hover,
.dlwe-portal-shell .dlwe-nav-item:focus-visible,
.dlwe-portal-shell .dlwe-nav-item.is-active {
  color: #FFFDFC !important;
}

.dlwe-portal-shell .dlwe-nav-item.is-active {
  font-weight: 700 !important;
}

.dlwe-portal-shell .dlwe-logout-link {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: .14em !important;
}

@media (max-width: 1024px) {
  .dlwe-portal-shell .dlwe-nav-group-toggle {
    min-height: 52px !important;
    padding: 14px 13px !important;
    font-size: 12.5px !important;
  }

  .dlwe-portal-shell .dlwe-nav-item {
    min-height: 46px !important;
    font-size: 13.5px !important;
  }
}

@media (max-width: 560px) {
  .dlwe-portal-shell .dlwe-nav-group-toggle {
    font-size: 12px !important;
    letter-spacing: .105em !important;
  }

  .dlwe-portal-shell .dlwe-nav-item {
    font-size: 13px !important;
  }
}

/* v6.8.2 — Sidebar label polish: Finance & Procurement renamed to Finance in navigation markup. */

/* v6.9.0 — Rosters & Scheduling deployment system */
.dlwe-portal-shell .dlwe-roster-separation-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0 0 20px;
  padding: 14px 16px;
  border: 1px solid rgba(183,110,120,.28);
  border-left: 3px solid var(--dlwe-brand-rose-gold, #B76E78);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(246,223,225,.38), rgba(232,222,209,.22));
  color: var(--dlwe-ink, #171411);
}
.dlwe-portal-shell .dlwe-roster-separation-note strong {
  flex: 0 0 auto;
  font-family: "Cormorant SC", "Book Antiqua", Palatino, Georgia, serif;
  letter-spacing: .07em;
  color: var(--dlwe-brand-rose-gold, #B76E78);
}
.dlwe-portal-shell .dlwe-roster-separation-note span {
  line-height: 1.55;
  color: rgba(36,31,27,.72);
}
.dlwe-portal-shell .dlwe-roster-type-chip {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin: 0 0 8px;
  padding: 5px 9px;
  border: 1px solid rgba(183,110,120,.34);
  border-radius: 999px;
  background: rgba(246,223,225,.42);
  color: #8f4f59;
  font-family: "Cormorant SC", "Book Antiqua", Palatino, Georgia, serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.dlwe-portal-shell .dlwe-roster-table td:nth-child(3) .dlwe-roster-type-chip {
  display: flex;
  margin-bottom: 6px;
}
.dlwe-portal-shell .dlwe-status-acknowledged {
  background: rgba(191,170,140,.16);
  border-color: rgba(191,170,140,.45);
  color: #65523c;
}
.dlwe-portal-shell .dlwe-status-issue-reported {
  background: rgba(183,110,120,.12);
  border-color: rgba(183,110,120,.45);
  color: #8d4652;
}
.dlwe-portal-shell .dlwe-home-duty-list {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(183,110,120,.18);
}
.dlwe-portal-shell .dlwe-home-duty-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.dlwe-portal-shell .dlwe-home-duty-heading span {
  font-family: "Cormorant SC", "Book Antiqua", Palatino, Georgia, serif;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #6e4c50;
}
.dlwe-portal-shell .dlwe-home-duty-heading small {
  color: rgba(36,31,27,.55);
}
.dlwe-portal-shell .dlwe-home-duty-row {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 12px;
  border: 1px solid rgba(160,129,108,.18);
  border-radius: 10px;
  background: rgba(255,255,255,.54);
  color: inherit;
  text-align: left;
  cursor: pointer;
}
.dlwe-portal-shell .dlwe-home-duty-row:hover {
  border-color: rgba(183,110,120,.38);
  background: rgba(246,223,225,.26);
}
.dlwe-portal-shell .dlwe-home-duty-row > span {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.dlwe-portal-shell .dlwe-home-duty-row strong {
  font-size: 13px;
  line-height: 1.35;
}
.dlwe-portal-shell .dlwe-home-duty-row small {
  color: rgba(36,31,27,.62);
  line-height: 1.4;
}
.dlwe-portal-shell .dlwe-home-duty-row em {
  flex: 0 0 auto;
  font-style: normal;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #8d5961;
}
.dlwe-portal-shell .dlwe-home-attendance-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  margin-top: 14px;
}
@media (max-width: 760px) {
  .dlwe-portal-shell .dlwe-roster-separation-note,
  .dlwe-portal-shell .dlwe-home-duty-heading {
    flex-direction: column;
  }
  .dlwe-portal-shell .dlwe-home-attendance-links {
    grid-template-columns: 1fr;
  }
  .dlwe-portal-shell .dlwe-home-duty-row {
    align-items: flex-start;
  }
}


/* v7.0.0 — Native Attendance, Leave & Working Hours */
.dlwe-hr-live-team-card,.dlwe-hr-audit-card,.dlwe-hr-policy-card{margin-top:24px}
.dlwe-hr-day-grid{display:grid;grid-template-columns:repeat(7,minmax(74px,1fr));gap:10px;margin-top:8px}
.dlwe-hr-day-grid label{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid rgba(183,110,120,.22);border-radius:12px;background:rgba(246,223,225,.20);font-weight:700;color:#241d1e;cursor:pointer}
.dlwe-hr-day-grid input{width:16px;height:16px;accent-color:#B76E78}
.dlwe-label-optional{font-size:.72em;font-weight:500;color:#8d7779;margin-left:4px}
.dlwe-hr-leave-balance{margin-bottom:16px}
[data-dlwe-hr-panel="schedule"] .dlwe-form-section{margin-top:22px}
[data-dlwe-hr-panel="schedule"] .dlwe-table-wrap{margin-top:18px}
@media(max-width:900px){.dlwe-hr-day-grid{grid-template-columns:repeat(4,minmax(72px,1fr))}}
@media(max-width:560px){.dlwe-hr-day-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ================================================================
   v7.1.0 — Wedding Day Command Centre
   Live luxury operations cockpit
   ================================================================ */
.dlwe-command-live-overview{
  margin:20px 0 22px;
  padding:22px;
  border:1px solid rgba(183,110,120,.24);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,253,249,.98),rgba(246,223,225,.25));
  box-shadow:0 16px 42px rgba(49,35,31,.055);
}
.dlwe-command-live-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.dlwe-command-live-heading h2{margin:2px 0 4px;font-size:26px;line-height:1.1}
.dlwe-command-live-clock{display:inline-flex;align-items:center;white-space:nowrap;padding:8px 12px;border:1px solid rgba(183,110,120,.25);border-radius:999px;background:#fff;color:#6d5651;font-size:12px;font-weight:700;letter-spacing:.05em}
.dlwe-command-now-next-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dlwe-command-focus-card{min-width:0;padding:16px;border:1px solid #eadfda;border-radius:15px;background:rgba(255,255,255,.88)}
.dlwe-command-focus-label{margin-bottom:10px;color:var(--dlwe-rosegold,#B76E78);font-size:10px;font-weight:800;letter-spacing:.15em}
.dlwe-command-compact-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #eee5e1}
.dlwe-command-compact-item:last-child{border-bottom:0}
.dlwe-command-compact-item time{font-family:var(--dlwe-brand-display,Georgia,serif);font-size:17px;color:#28211e}
.dlwe-command-compact-item>div{display:flex;flex-direction:column;min-width:0;gap:2px}
.dlwe-command-compact-item strong{font-size:13px;line-height:1.25;color:#251f1d}
.dlwe-command-compact-item span{font-size:10px;color:#7d706b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dlwe-command-compact-item small{font-size:9px}
.dlwe-command-focus-empty{display:flex;min-height:70px;flex-direction:column;justify-content:center;gap:3px;color:#776b66}
.dlwe-command-focus-empty strong{font-size:13px;color:#3a302d}
.dlwe-command-focus-empty span{font-size:11px}
.dlwe-command-event-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.dlwe-command-event-card{padding:14px;border:1px solid #e8dfda;border-radius:14px;background:#fff;min-width:0}
.dlwe-command-event-card.is-attention{border-color:rgba(183,110,120,.55);box-shadow:inset 3px 0 0 var(--dlwe-rosegold,#B76E78)}
.dlwe-command-event-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.dlwe-command-event-card-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.dlwe-command-event-card-head span{font-size:10px;color:#8a746e;text-transform:uppercase;letter-spacing:.08em}
.dlwe-command-event-card-head strong{font-family:var(--dlwe-brand-display,Georgia,serif);font-size:18px;line-height:1.15;color:#28211f}
.dlwe-command-event-card p{margin:9px 0 0;font-size:10px;color:#766a65}
.dlwe-command-event-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}
.dlwe-command-event-stats span{display:flex;flex-direction:column;gap:1px;font-size:9px;color:#8a7c76}
.dlwe-command-event-stats b{font-size:13px;color:#3b302d}
.dlwe-command-coverage-section{margin-top:24px;padding-top:20px;border-top:1px solid #eadfda}
.dlwe-command-coverage-list,.dlwe-command-contact-list,.dlwe-command-transport-list,.dlwe-command-note-list{display:grid;gap:11px}
.dlwe-command-coverage-card{display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(330px,1.6fr);gap:12px 20px;padding:14px 16px;border:1px solid #e5ddd8;border-radius:14px;background:#fff}
.dlwe-command-coverage-card.is-attention{border-color:rgba(183,110,120,.55);background:rgba(246,223,225,.18)}
.dlwe-command-coverage-card>div:first-child{display:flex;flex-direction:column;gap:2px}
.dlwe-command-coverage-card span,.dlwe-command-coverage-card small,.dlwe-command-coverage-card p{font-size:10px;color:#786c67;margin:0}
.dlwe-command-coverage-card strong{font-size:13px;color:#2d2522}
.dlwe-command-coverage-card p{grid-column:1/-1}
.dlwe-command-coverage-metrics{display:grid;grid-template-columns:repeat(4,minmax(65px,1fr));gap:7px}
.dlwe-command-coverage-metrics span{padding:7px 8px;border-radius:10px;background:#faf7f4;text-align:center}
.dlwe-command-coverage-metrics span.is-warning{background:#fff0ee;color:#8a413b}
.dlwe-command-coverage-metrics b{display:block;font-size:15px;color:#2e2522}
.dlwe-command-contact-card{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;border:1px solid #e5ddd8;border-radius:13px;background:#fff}
.dlwe-command-contact-card>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.dlwe-command-contact-card span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--dlwe-rosegold,#B76E78)}
.dlwe-command-contact-card strong{font-size:13px;color:#2c2421}
.dlwe-command-contact-card small{font-size:10px;color:#786d67}
.dlwe-command-contact-card>div:last-child{display:flex;gap:8px;flex-wrap:wrap}
.dlwe-command-transport-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:13px 14px;border:1px solid #e5ddd8;border-radius:13px;background:#fff}
.dlwe-command-transport-card>div{display:flex;flex-direction:column;gap:2px}
.dlwe-command-transport-card span{font-size:9px;color:#8a756f}
.dlwe-command-transport-card strong{font-size:13px;color:#2d2522}
.dlwe-command-transport-card p,.dlwe-command-transport-card footer{grid-column:1/-1;margin:0;font-size:10px;color:#776b66}
.dlwe-command-note-layout{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);gap:22px}
.dlwe-command-note-card{margin:0!important}
.dlwe-command-note{display:flex;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid #e5ddd8;border-radius:13px;background:#fff}
.dlwe-command-note.is-urgent{border-color:rgba(183,110,120,.58);background:rgba(246,223,225,.18);box-shadow:inset 3px 0 0 var(--dlwe-rosegold,#B76E78)}
.dlwe-command-note>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.dlwe-command-note span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#9a6a71}
.dlwe-command-note strong{font-size:13px;color:#2c2421}
.dlwe-command-note p,.dlwe-command-note>small{margin:0;font-size:10px;color:#776b66}
.dlwe-command-team-card small.is-approved,.dlwe-command-team-card small.is-progress{color:#356048}
.dlwe-command-team-card small.is-cancelled{color:#9a3f38}

@media (max-width:1200px){
  .dlwe-command-event-board{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dlwe-command-note-layout{grid-template-columns:1fr}
}
@media (max-width:860px){
  .dlwe-command-now-next-grid,.dlwe-command-event-board{grid-template-columns:1fr}
  .dlwe-command-live-heading{flex-direction:column}
  .dlwe-command-coverage-card{grid-template-columns:1fr}
  .dlwe-command-coverage-card p{grid-column:auto}
}
@media (max-width:560px){
  .dlwe-command-live-overview{padding:15px;border-radius:15px}
  .dlwe-command-compact-item{grid-template-columns:50px minmax(0,1fr)}
  .dlwe-command-compact-item small{grid-column:2;justify-self:start}
  .dlwe-command-event-stats,.dlwe-command-coverage-metrics{grid-template-columns:1fr 1fr}
  .dlwe-command-contact-card,.dlwe-command-note{align-items:flex-start;flex-direction:column}
}
.dlwe-command-summary{grid-template-columns:repeat(6,minmax(0,1fr))}
.dlwe-command-summary .is-live{border-color:rgba(183,110,120,.38);background:linear-gradient(145deg,#fff,rgba(246,223,225,.24))}
@media (max-width:1350px){.dlwe-command-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.dlwe-command-summary{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.dlwe-command-summary{grid-template-columns:1fr}}

/* ================================================================
   v7.1.1 — Command Centre UX & Event-Date Polish
   Full-width executive heading, dedicated control bar and true event days
   ================================================================ */
.dlwe-portal-shell .dlwe-command-header{
  display:block!important;
  padding-bottom:22px!important;
  margin-bottom:16px!important;
}
.dlwe-portal-shell .dlwe-command-header .dlwe-command-title-block{
  width:100%!important;
  max-width:1040px!important;
  flex:none!important;
}
.dlwe-portal-shell .dlwe-command-header h1{
  width:100%;
  max-width:980px;
  margin:5px 0 12px!important;
  font-size:clamp(46px,4.8vw,72px)!important;
  line-height:.94!important;
  letter-spacing:-.035em!important;
  text-wrap:balance;
}
.dlwe-portal-shell .dlwe-command-header .dlwe-muted{
  max-width:820px!important;
  font-size:14px!important;
  line-height:1.6!important;
}
.dlwe-command-controlbar{
  display:grid;
  grid-template-columns:minmax(420px,1fr) auto;
  gap:18px 24px;
  align-items:end;
  margin:0 0 22px;
  padding:16px 18px;
  border:1px solid rgba(183,110,120,.20);
  border-radius:16px;
  background:rgba(255,253,250,.88);
  box-shadow:0 12px 34px rgba(49,35,31,.045);
}
.dlwe-command-control-fields{
  display:grid;
  grid-template-columns:minmax(280px,1.35fr) minmax(240px,1fr);
  gap:12px;
  min-width:0;
}
.dlwe-command-control-field{
  display:grid;
  gap:7px;
  min-width:0;
}
.dlwe-command-control-field>span{
  color:#7b6668;
  font-family:var(--dlwe-brand-smallcaps,"Cormorant SC",Georgia,serif);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.dlwe-command-control-field select{
  width:100%;
  min-width:0;
  height:46px;
  padding:0 38px 0 13px;
  border:1px solid rgba(160,129,108,.34);
  border-radius:11px;
  background:#fff;
  color:#241d1e;
  font-size:13px;
  font-weight:600;
}
.dlwe-command-control-field select:focus{
  border-color:rgba(183,110,120,.72);
  box-shadow:0 0 0 3px rgba(183,110,120,.10);
  outline:0;
}
.dlwe-command-control-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  min-width:0;
}
.dlwe-command-action-group{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.dlwe-command-action-group-secondary{
  padding-left:12px;
  border-left:1px solid rgba(160,129,108,.24);
}
.dlwe-command-control-actions .dlwe-compact-button{
  min-height:46px;
  white-space:nowrap;
}
.dlwe-portal-shell .dlwe-command-summary{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:10px!important;
  margin-bottom:18px!important;
}
.dlwe-portal-shell .dlwe-command-summary .dlwe-task-summary-card{
  min-height:112px!important;
  padding:14px 15px!important;
}
.dlwe-portal-shell .dlwe-command-summary .dlwe-task-summary-card span{
  font-size:10px!important;
  letter-spacing:.075em!important;
}
.dlwe-portal-shell .dlwe-command-summary .dlwe-task-summary-card strong{
  margin:9px 0 6px!important;
  font-size:clamp(27px,2.2vw,34px)!important;
}
.dlwe-portal-shell .dlwe-command-summary .dlwe-task-summary-card small{
  display:block;
  color:#796c68;
  font-size:9.5px;
  line-height:1.35;
}
.dlwe-command-now-next-grid>.dlwe-command-focus-card:first-child{
  border-color:rgba(183,110,120,.44);
  background:linear-gradient(145deg,#fff,rgba(246,223,225,.24));
  box-shadow:inset 3px 0 0 var(--dlwe-rosegold,#B76E78);
}
.dlwe-command-now-next-grid>.dlwe-command-focus-card:nth-child(2){
  background:rgba(255,255,255,.96);
}

@media(max-width:1180px){
  .dlwe-command-controlbar{grid-template-columns:1fr;align-items:stretch}
  .dlwe-command-control-actions{justify-content:space-between}
  .dlwe-portal-shell .dlwe-command-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .dlwe-portal-shell .dlwe-command-header h1{font-size:clamp(39px,12vw,54px)!important}
  .dlwe-command-controlbar{padding:14px;border-radius:14px}
  .dlwe-command-control-fields{grid-template-columns:1fr}
  .dlwe-command-control-actions{align-items:stretch;flex-direction:column}
  .dlwe-command-action-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .dlwe-command-action-group-secondary{padding-left:0;padding-top:10px;border-left:0;border-top:1px solid rgba(160,129,108,.24)}
  .dlwe-command-action-group .dlwe-compact-button{width:100%!important}
  .dlwe-portal-shell .dlwe-command-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  .dlwe-command-action-group{grid-template-columns:1fr}
  .dlwe-portal-shell .dlwe-command-summary{grid-template-columns:1fr!important}
}


/* ============================================================
   v7.2.0 — DLWE HR, Leave, Permission & Luxury Payroll
   ============================================================ */
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-hr-tabs{
  display:flex;gap:7px;flex-wrap:wrap;padding:7px;border:1px solid rgba(183,110,120,.18);border-radius:15px;background:rgba(255,253,250,.86);box-shadow:0 10px 30px rgba(54,39,34,.04);margin:0 0 22px;
}
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-hr-tab{min-height:42px;padding:0 17px;border-radius:10px;font-weight:700;letter-spacing:.035em}
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-hr-tab.is-active{background:#211c1c;color:#fff;box-shadow:0 8px 22px rgba(31,25,24,.12)}
.dlwe-hr-dashboard-clock-note{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(246,223,225,.28));border-color:rgba(183,110,120,.24)!important}
.dlwe-compensation-card{border:1px solid rgba(183,110,120,.3)!important;background:linear-gradient(145deg,#fff,rgba(246,223,225,.18))!important;box-shadow:0 16px 44px rgba(79,53,51,.06)!important}
.dlwe-compensation-card .dlwe-form-section-heading>span{background:#B76E78!important;color:#fff!important}
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-task-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-task-summary-card{min-height:108px;padding:16px 17px;border:1px solid rgba(191,170,140,.22);background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(66,47,42,.035)}
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-task-summary-card span{font-size:10px;font-weight:700;letter-spacing:.09em}
.dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-task-summary-card strong{font-size:25px;line-height:1.05}
.dlwe-payslip-luxury{max-width:820px!important;margin:0 auto!important;padding:38px 42px!important;background:#fff!important;color:#211c1c!important;border:1px solid rgba(183,110,120,.28)!important;box-shadow:0 22px 70px rgba(44,31,29,.08)!important}
.dlwe-payslip-luxury header{border-bottom:1px solid rgba(183,110,120,.34)!important;padding-bottom:22px!important;margin-bottom:24px!important}
.dlwe-payslip-luxury header>div:first-child strong{color:#B76E78!important;font-size:23px!important;letter-spacing:.24em!important}
.dlwe-payslip-luxury header h1{font-family:var(--dlwe-brand-serif,"Book Antiqua",Palatino,Georgia,serif)!important;font-size:30px!important}
.dlwe-payslip-luxury h3{margin:25px 0 7px;color:#8c5e64;font-family:var(--dlwe-brand-smallcaps,"Cormorant SC",Georgia,serif);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.dlwe-payslip-luxury table{border-top:1px solid rgba(200,173,126,.2)}
.dlwe-payslip-luxury td{padding:10px 4px!important;border-bottom:1px solid rgba(232,222,209,.8)!important}
.dlwe-payslip-luxury tr.is-subtotal td{font-weight:700;background:rgba(246,223,225,.2)}
.dlwe-payslip-luxury tr.is-total td{background:#211c1c!important;color:#fff!important;font-size:17px!important;border:0!important;padding:15px 10px!important}
.dlwe-payslip-luxury .dlwe-payslip-meta{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px 18px!important;background:#fbf8f5!important;border:1px solid rgba(200,173,126,.2)!important;border-radius:12px!important;padding:16px!important}
.dlwe-payslip-luxury .dlwe-payslip-meta h3{grid-column:1/-1;margin:0 0 4px}
.dlwe-payslip-luxury footer{margin-top:24px!important;border-top:1px solid rgba(183,110,120,.24)!important;padding-top:15px!important;color:#6f6260!important}
@media(max-width:760px){
  .dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-hr-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .dlwe-payslip-luxury{padding:24px 20px!important}.dlwe-payslip-luxury .dlwe-payslip-meta{grid-template-columns:1fr!important}
}
@media print{
  body.dlwe-print-payslip .dlwe-payslip-luxury{box-shadow:none!important;border:0!important;max-width:none!important;padding:0!important}
}


/* v7.2.1 — HR structure polish */
.dlwe-portal-shell .dlwe-panel[data-dlwe-panel="attendance-payroll"] > .dlwe-portal-header{padding-top:34px;margin-top:0;}
.dlwe-portal-shell .dlwe-panel[data-dlwe-panel="attendance-payroll"] > .dlwe-portal-header h1{line-height:.96;margin-top:4px;}
.dlwe-portal-shell .dlwe-hr-manager-form .dlwe-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px;}
.dlwe-portal-shell .dlwe-hr-manager-form .dlwe-field-full{grid-column:1/-1;}
.dlwe-portal-shell .dlwe-hr-manager-form textarea{min-height:84px;}
.dlwe-portal-shell .dlwe-hr-history-entry{background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(246,223,225,.22));}
.dlwe-portal-shell .dlwe-hr-history-entry .dlwe-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.dlwe-portal-shell .dlwe-hr-history-entry .dlwe-field-full{grid-column:1/-1;}
@media(max-width:1100px){.dlwe-portal-shell .dlwe-hr-manager-form .dlwe-form-grid,.dlwe-portal-shell .dlwe-hr-history-entry .dlwe-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){.dlwe-portal-shell .dlwe-hr-manager-form .dlwe-form-grid,.dlwe-portal-shell .dlwe-hr-history-entry .dlwe-form-grid{grid-template-columns:1fr;}.dlwe-portal-shell .dlwe-panel[data-dlwe-panel="attendance-payroll"] > .dlwe-portal-header{padding-top:24px;}}

/* v7.2.2 — Hourly wedding compensation */
.dlwe-user-compensation-section #dlwe_user_comp_wedding_day,.dlwe-user-compensation-section #dlwe_user_comp_wedding_night{font-variant-numeric:tabular-nums}


/* Version 7.3.0 — Phase 8E Wedding Day Run Sheet & Operations Builder */
.dlwe-portal-shell .dlwe-run-sheet-manual-row {
  border-color: rgba(183,110,120,.24);
  box-shadow: 0 14px 34px rgba(74,51,45,.055);
}
.dlwe-portal-shell .dlwe-run-sheet-manual-row > header {
  background: linear-gradient(135deg,#211c1c 0%,#352a28 100%);
}
.dlwe-portal-shell .dlwe-run-sheet-grid {
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.dlwe-portal-shell .dlwe-command-milestones {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:10px 0 4px;
}
.dlwe-portal-shell .dlwe-command-milestones span {
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid rgba(191,170,140,.34);
  border-radius:999px;
  background:rgba(246,223,225,.46);
  color:#554844;
  font-size:10px;
  font-weight:700;
  letter-spacing:.045em;
}
.dlwe-portal-shell .dlwe-command-dependency {
  margin:10px 0;
  padding:9px 11px;
  border-left:3px solid #B76E78;
  background:rgba(246,223,225,.32);
  color:#564843;
}
@media (max-width:1050px){
  .dlwe-portal-shell .dlwe-run-sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:720px){
  .dlwe-portal-shell .dlwe-run-sheet-grid{grid-template-columns:1fr;}
}
@media print {
  @page { size: A4 landscape; margin: 9mm; }
  body.dlwe-print-timeline .dlwe-run-sheet-print-event { break-inside:auto; }
  body.dlwe-print-timeline .dlwe-run-sheet-print-event table { table-layout:auto; }
  body.dlwe-print-timeline .dlwe-run-sheet-print-event th,
  body.dlwe-print-timeline .dlwe-run-sheet-print-event td { font-size:7.5px; padding:5px 6px; }
}

/* ========================================================================== 
   DLWE Portal Brand Assets, Dark Mode & Bilingual Preferences — v7.4.0
   Official supplied logo assets are used without alteration.
   ========================================================================== */

:root {
  --dlwe-official-rose: #B76E78;
  --dlwe-official-parrot: #D998A3;
  --dlwe-official-pale: #F6DFE1;
  --dlwe-official-queen: #EFD1D5;
  --dlwe-official-cameo: #EBBEC4;
  --dlwe-official-sage: #BFAA8C;
  --dlwe-official-vanilla: #D1C0A8;
  --dlwe-official-coffee: #E8DED1;
  --dlwe-official-beaver: #A0816C;
  --dlwe-official-beige: #C8AD7E;
}

.dlwe-official-logo {
  display: block;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.dlwe-sidebar-identity {
  min-height: 90px;
}

.dlwe-sidebar-logo-link {
  display: block;
  width: 100%;
  max-width: 190px;
  text-decoration: none !important;
}

.dlwe-official-logo-sidebar {
  width: 100%;
  max-height: 82px;
  object-fit: contain;
  object-position: left center;
}

.dlwe-sidebar-identity .dlwe-sidebar-subtitle {
  margin-top: 7px !important;
  padding-left: 2px;
}

body.dlwe-staff-login-page .dlwe-auth-logo {
  width: min(100%, 270px) !important;
  max-height: 112px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.dlwe-official-logo-access {
  width: min(100%, 265px);
  max-height: 105px;
  object-fit: contain;
  object-position: center;
  margin-inline: auto;
}

/* Preferences ------------------------------------------------------------ */
.dlwe-preferences {
  display: grid;
  gap: 12px;
  margin: 22px 0 4px;
  padding: 15px 12px;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 10px;
  background: rgba(255,255,255,.025);
}

.dlwe-preference-group {
  display: grid;
  gap: 7px;
}

.dlwe-preference-label {
  color: rgba(255,255,255,.38);
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.dlwe-preference-segment {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  padding: 3px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 8px;
  background: rgba(0,0,0,.16);
}

.dlwe-preference-segment button {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 6px 7px;
  color: rgba(255,255,255,.58) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  font-family: var(--dlwe-brand-body, Montserrat, Arial, sans-serif) !important;
  font-size: 8px !important;
  font-weight: 800 !important;
  letter-spacing: .09em;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}

.dlwe-preference-segment button:hover,
.dlwe-preference-segment button:focus-visible {
  color: #fff !important;
  outline: none;
}

.dlwe-preference-segment button.is-active {
  color: #fff !important;
  background: linear-gradient(135deg, rgba(183,110,120,.38), rgba(200,173,126,.20)) !important;
  box-shadow: inset 0 0 0 1px rgba(217,152,163,.30) !important;
}

.dlwe-preference-icon {
  font-size: 11px;
  line-height: 1;
}

.dlwe-auth-preferences,
.dlwe-couple-preferences {
  position: fixed;
  z-index: 99999;
  top: max(16px, env(safe-area-inset-top));
  right: max(16px, env(safe-area-inset-right));
}

.dlwe-preferences-compact {
  width: auto;
  min-width: 220px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 8px;
  border-color: rgba(126,104,73,.20);
  background: rgba(255,253,249,.88);
  box-shadow: 0 12px 34px rgba(31,24,18,.10);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

.dlwe-preferences-compact .dlwe-preference-label {
  color: #83796c;
}

.dlwe-preferences-compact .dlwe-preference-segment {
  border-color: #e1d7c9;
  background: rgba(244,239,231,.78);
}

.dlwe-preferences-compact .dlwe-preference-segment button {
  color: #766d62 !important;
}

.dlwe-preferences-compact .dlwe-preference-segment button.is-active {
  color: #fff !important;
  background: linear-gradient(135deg, var(--dlwe-official-rose), #9c574d) !important;
  box-shadow: none !important;
}

/* Dark theme tokens ------------------------------------------------------ */
html[data-dlwe-theme="dark"] .dlwe-portal-shell {
  --dlwe-brand-ink: #f6efe8;
  --dlwe-brand-ink-soft: #eee3da;
  --dlwe-brand-copy: #d8cdc3;
  --dlwe-brand-muted: #a99d92;
  --dlwe-brand-ivory: #12100f;
  --dlwe-brand-paper: #1a1715;
  --dlwe-brand-paper-soft: #211d1a;
  --dlwe-brand-champagne: #d3aa86;
  --dlwe-brand-champagne-dark: #d998a3;
  --dlwe-brand-champagne-pale: #302321;
  --dlwe-brand-line: #3b332e;
  --dlwe-brand-line-soft: #302a26;
  --dlwe-brand-danger: #df8c86;
  --dlwe-brand-success: #82c59d;
  --dlwe-brand-warning: #d8ad6f;
  --dlwe-brand-shadow-xs: 0 4px 14px rgba(0,0,0,.18);
  --dlwe-brand-shadow-sm: 0 12px 32px rgba(0,0,0,.26);
  --dlwe-brand-shadow-md: 0 24px 70px rgba(0,0,0,.34);
  color: var(--dlwe-brand-copy) !important;
  background: #12100f !important;
  border-color: rgba(217,152,163,.17) !important;
  box-shadow: var(--dlwe-brand-shadow-md) !important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page,
html[data-dlwe-theme="dark"] body.dlwe-couple-portal-page,
html[data-dlwe-theme="dark"] body.dlwe-staff-login-page {
  background: #0d0c0b !important;
  color: #d8cdc3 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar {
  background:
    radial-gradient(circle at 18% 0%, rgba(183,110,120,.17), transparent 25%),
    linear-gradient(180deg, #100e0e 0%, #090808 100%) !important;
  border-right-color: rgba(217,152,163,.17) !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main {
  color: var(--dlwe-brand-copy) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(183,110,120,.10), transparent 27%),
    linear-gradient(180deg, #151210 0%, #100e0d 100%) !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main h1,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main h2,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main h3,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main h4,
html[data-dlwe-theme="dark"] .dlwe-portal-shell strong,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-metric-value,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-summary-card strong {
  color: #f6efe8 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-muted,
html[data-dlwe-theme="dark"] .dlwe-portal-shell p,
html[data-dlwe-theme="dark"] .dlwe-portal-shell small,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-field-help,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-form-help {
  color: #aa9f95 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-eyebrow,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-section-kicker,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-form-section-kicker {
  color: #d998a3 !important;
}

/* Dark panels/cards: intentionally broad to cover all existing and future modules. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-card"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-section"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-panel"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-summary"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-metric"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-toolbar"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-filters"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-filter-bar"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-overview"],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main [class*="-workspace"] {
  border-color: #3a312c !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-form-section,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-summary-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-metric-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-home-metric,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-table-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-workspace-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-command-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-analytics-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-report-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-settings-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-calendar-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-roster-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-hr-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-timeline-item,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-run-sheet-item,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-budget-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-finance-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-user-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-notification-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-document-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-task-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-approval-card {
  color: #d8cdc3 !important;
  background: #1a1715 !important;
  border-color: #3a312c !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.18) !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main select,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main textarea,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-input,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main .dlwe-select {
  color: #eee5dd !important;
  background: #161311 !important;
  border-color: #4a3e37 !important;
  caret-color: #d998a3;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input::placeholder,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main textarea::placeholder {
  color: #776b63 !important;
  opacity: 1;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input:focus,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main select:focus,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main textarea:focus {
  border-color: #b76e78 !important;
  box-shadow: 0 0 0 3px rgba(183,110,120,.13) !important;
  outline: none !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main label,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main th,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main legend {
  color: #c9bcb2 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell table {
  color: #d7cbc1 !important;
  background: #171411 !important;
  border-color: #3a312c !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell thead th {
  color: #e9ddd5 !important;
  background: #211b18 !important;
  border-color: #4a3933 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell tbody td {
  color: #cabdb3 !important;
  background: #171411 !important;
  border-color: #322a26 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell tbody tr:nth-child(even) td {
  background: #1b1714 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell tbody tr:hover td {
  background: #241d1a !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-primary-button,
html[data-dlwe-theme="dark"] .dlwe-portal-shell button.dlwe-primary-button {
  color: #fff !important;
  background: linear-gradient(135deg, #a95f69 0%, #7d413b 100%) !important;
  border-color: #b76e78 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-secondary-button,
html[data-dlwe-theme="dark"] .dlwe-portal-shell button.dlwe-secondary-button {
  color: #e8ddd4 !important;
  background: #211c19 !important;
  border-color: #493b35 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-secondary-button:hover,
html[data-dlwe-theme="dark"] .dlwe-portal-shell button.dlwe-secondary-button:hover {
  background: #2b2420 !important;
  border-color: #6a5048 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-status-badge,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-pill,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-history-pill,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-chip,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-badge {
  border-color: #4b3c36 !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-calendar-modal-backdrop,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-modal-backdrop {
  background: rgba(7,6,6,.72) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-calendar-modal-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-modal-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell [role="dialog"] {
  color: #ddd1c7 !important;
  background: #1c1816 !important;
  border-color: #493a34 !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.48) !important;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell a:not(.dlwe-nav-item):not(.dlwe-primary-button) {
  color: #d998a3;
}

html[data-dlwe-theme="dark"] .dlwe-portal-shell hr,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-divider {
  border-color: #3a312c !important;
  background: #3a312c !important;
}

/* Login/auth dark mode ---------------------------------------------------- */
html[data-dlwe-theme="dark"] body.dlwe-staff-login-page .dlwe-auth-shell {
  --dlwe-auth-ink: #f7eee8;
  --dlwe-auth-ink-soft: #eadfd7;
  --dlwe-auth-copy: #cbbeb4;
  --dlwe-auth-muted: #978b82;
  --dlwe-auth-paper: #191614;
  --dlwe-auth-ivory: #100e0d;
  --dlwe-auth-gold: #d998a3;
  --dlwe-auth-gold-soft: #5c3937;
  --dlwe-auth-line: #40352f;
  background:
    radial-gradient(circle at 14% 8%, rgba(183,110,120,.17), transparent 30%),
    linear-gradient(135deg, #0f0d0c 0%, #151210 100%) !important;
  color: var(--dlwe-auth-copy) !important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-login-page .dlwe-auth-layout {
  background: #171412 !important;
  border-color: rgba(217,152,163,.19) !important;
  box-shadow: 0 34px 100px rgba(0,0,0,.42) !important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-login-page .dlwe-auth-form-panel,
html[data-dlwe-theme="dark"] body.dlwe-staff-login-page .dlwe-login-card,
html[data-dlwe-theme="dark"] .dlwe-access-card {
  color: #d6cac0 !important;
  background: #191614 !important;
  border-color: #40352f !important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-login-page .dlwe-login-card h1,
html[data-dlwe-theme="dark"] body.dlwe-staff-login-page .dlwe-login-card h2,
html[data-dlwe-theme="dark"] .dlwe-access-card h2 {
  color: #f6eee8 !important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-login-page input {
  color: #f0e7e0 !important;
  background: #110f0e !important;
  border-color: #4a3d36 !important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-login-page input::placeholder {
  color: #786c64 !important;
}

html[data-dlwe-theme="dark"] .dlwe-preferences-compact {
  border-color: rgba(217,152,163,.18);
  background: rgba(25,22,20,.90);
  box-shadow: 0 12px 34px rgba(0,0,0,.28);
}

html[data-dlwe-theme="dark"] .dlwe-preferences-compact .dlwe-preference-label {
  color: #8e8178;
}

html[data-dlwe-theme="dark"] .dlwe-preferences-compact .dlwe-preference-segment {
  border-color: #42362f;
  background: rgba(9,8,8,.56);
}

html[data-dlwe-theme="dark"] .dlwe-preferences-compact .dlwe-preference-segment button {
  color: #a99c92 !important;
}

html[data-dlwe-theme="dark"] .dlwe-preferences-compact .dlwe-preference-segment button.is-active {
  color: #fff !important;
}

/* Mobile preferences ----------------------------------------------------- */
@media (max-width: 720px) {
  .dlwe-sidebar-logo-link {
    max-width: 165px;
  }

  .dlwe-official-logo-sidebar {
    max-height: 68px;
  }

  .dlwe-auth-preferences,
  .dlwe-couple-preferences {
    position: relative;
    top: auto;
    right: auto;
    width: min(100%, 420px);
    margin: 12px auto 0;
    padding-inline: 14px;
  }

  .dlwe-preferences-compact {
    min-width: 0;
    width: 100%;
  }
}

/* Vietnamese copy is naturally longer: allow controls and tabs to breathe. */
html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-nav-item,
html[data-dlwe-language="vi"] .dlwe-portal-shell button,
html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-status-badge {
  letter-spacing: .02em;
}

html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-nav-item {
  font-size: 11px !important;
}

html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-tab-button,
html[data-dlwe-language="vi"] .dlwe-portal-shell [role="tab"] {
  white-space: normal !important;
  line-height: 1.25 !important;
}

/* Official logo sizing in printable operational documents ---------------- */
.dlwe-run-sheet-print-header .dlwe-print-brand-logo,
.dlwe-payslip-luxury .dlwe-print-brand-logo {
  display: block;
  width: 240px;
  max-width: 100%;
  max-height: 96px;
  object-fit: contain;
  object-position: left center;
}

@media print {
  .dlwe-run-sheet-print-header .dlwe-print-brand-logo,
  .dlwe-payslip-luxury .dlwe-print-brand-logo {
    width: 225px !important;
    max-height: 86px !important;
  }
}

/* v7.4.0 — official-logo refinements + couple-portal dark mode */
.dlwe-auth-story-mark .dlwe-auth-story-logo {
  display:block;
  width:86px;
  height:86px;
  object-fit:contain;
}
.dlwe-couple-brand-lockup {
  display:grid;
  gap:4px;
  align-items:start;
}
.dlwe-couple-brand-logo {
  width:220px;
  max-width:42vw;
  max-height:78px;
  object-fit:contain;
  object-position:left center;
}
html[data-dlwe-theme="dark"] body.dlwe-couple-portal-page,
html[data-dlwe-theme="dark"] body.dlwe-couple-login-page {
  background:#0d0c0b !important;
  color:#d8cdc3 !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-shell {
  color:#d8cdc3 !important;
  background:#100e0d !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-topbar {
  background:#100e0e !important;
  border-color:#342a26 !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-main {
  background:
    radial-gradient(circle at 100% 0%, rgba(183,110,120,.10), transparent 28%),
    linear-gradient(180deg,#151210 0%,#100e0d 100%) !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-card,
html[data-dlwe-theme="dark"] .dlwe-couple-summary-card,
html[data-dlwe-theme="dark"] .dlwe-couple-access-card,
html[data-dlwe-theme="dark"] .dlwe-couple-team-member,
html[data-dlwe-theme="dark"] .dlwe-couple-progress-panel,
html[data-dlwe-theme="dark"] .dlwe-couple-tabs,
html[data-dlwe-theme="dark"] .dlwe-couple-command-status-card {
  color:#d8cdc3 !important;
  background:#1a1715 !important;
  border-color:#3a312c !important;
  box-shadow:0 10px 30px rgba(0,0,0,.18) !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-shell h1,
html[data-dlwe-theme="dark"] .dlwe-couple-shell h2,
html[data-dlwe-theme="dark"] .dlwe-couple-shell h3,
html[data-dlwe-theme="dark"] .dlwe-couple-shell strong {
  color:#f6efe8 !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-shell p,
html[data-dlwe-theme="dark"] .dlwe-couple-shell small,
html[data-dlwe-theme="dark"] .dlwe-couple-shell .dlwe-muted {
  color:#aa9f95 !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-tabs button {
  color:#c8bbb1 !important;
  background:#191512 !important;
  border-color:#3a312c !important;
}
html[data-dlwe-theme="dark"] .dlwe-couple-tabs button.is-active {
  color:#fff !important;
  background:#7d413b !important;
  border-color:#b76e78 !important;
}
html[data-dlwe-theme="dark"] body.dlwe-couple-login-page .dlwe-auth-shell,
html[data-dlwe-theme="dark"] body.dlwe-couple-login-page .dlwe-auth-form-panel,
html[data-dlwe-theme="dark"] body.dlwe-couple-login-page .dlwe-login-card {
  color:#d6cac0 !important;
  background:#191614 !important;
  border-color:#40352f !important;
}
@media(max-width:720px){
  .dlwe-auth-story-mark .dlwe-auth-story-logo{width:68px;height:68px}
  .dlwe-couple-brand-logo{width:170px;max-width:55vw;max-height:62px}
}

/* ========================================================================== 
   v7.4.1 — Luxury dark theme + global header preferences
   ========================================================================== */

/* Top-header global preferences ----------------------------------------- */
.dlwe-global-preferences{
  position:relative;
  z-index:48;
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  padding:5px;
  border:1px solid rgba(91,72,60,.14);
  border-radius:999px;
  background:rgba(255,252,248,.90);
  box-shadow:0 10px 28px rgba(47,34,27,.07), inset 0 1px 0 rgba(255,255,255,.82);
  -webkit-backdrop-filter:blur(18px) saturate(120%);
  backdrop-filter:blur(18px) saturate(120%);
}
.dlwe-luxury-theme-toggle,
.dlwe-language-trigger{
  appearance:none;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  color:#5f544c !important;
  min-height:34px;
  font-family:var(--dlwe-brand-body,Montserrat,Arial,sans-serif) !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.07em;
  text-transform:uppercase;
  cursor:pointer;
}
.dlwe-luxury-theme-toggle{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:4px 8px 4px 7px !important;
  border-radius:999px !important;
}
.dlwe-luxury-theme-toggle:hover,
.dlwe-language-trigger:hover{background:rgba(183,110,120,.07) !important;color:#332b27 !important;}
.dlwe-theme-sun,.dlwe-theme-moon{font-size:11px;line-height:1;color:#9f8f83;}
.dlwe-theme-track{
  width:31px;
  height:17px;
  padding:2px;
  display:inline-flex;
  align-items:center;
  border:1px solid #d7c9bf;
  border-radius:999px;
  background:#eee8e1;
  transition:.2s ease;
}
.dlwe-theme-track i{
  display:block;
  width:11px;
  height:11px;
  border-radius:50%;
  background:linear-gradient(145deg,#b76e78,#8e5149);
  box-shadow:0 2px 6px rgba(97,54,50,.22);
  transform:translateX(0);
  transition:transform .22s cubic-bezier(.2,.8,.2,1),background .2s ease;
}
html[data-dlwe-theme="dark"] .dlwe-theme-track i{transform:translateX(14px);background:linear-gradient(145deg,#d8a2a9,#c8ad7e);}
.dlwe-theme-state{min-width:29px;text-align:left;}
.dlwe-luxury-language{position:relative;}
.dlwe-language-trigger{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:52px;
  padding:4px 8px !important;
  border-left:1px solid rgba(109,88,75,.12) !important;
  border-radius:999px !important;
}
.dlwe-language-current{white-space:nowrap;}
.dlwe-language-chevron{font-size:11px;opacity:.58;transform:translateY(-1px);}
.dlwe-language-popover{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  width:220px;
  padding:9px;
  border:1px solid #e0d5cc;
  border-radius:14px;
  background:rgba(255,252,248,.98);
  box-shadow:0 20px 54px rgba(45,30,23,.16);
  -webkit-backdrop-filter:blur(20px);
  backdrop-filter:blur(20px);
}
.dlwe-language-popover[hidden]{display:none!important;}
.dlwe-language-popover:before{
  content:"";
  position:absolute;
  right:20px;
  top:-5px;
  width:9px;height:9px;
  border-left:1px solid #e0d5cc;
  border-top:1px solid #e0d5cc;
  background:#fffaf6;
  transform:rotate(45deg);
}
.dlwe-language-popover-label{
  display:block;
  padding:5px 7px 8px;
  color:#97877b;
  font-size:8px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.dlwe-language-popover button{
  width:100%;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr);
  align-items:center;
  gap:9px;
  min-height:49px;
  padding:7px 9px!important;
  border:0!important;
  border-radius:9px!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:left!important;
  color:#453a34!important;
  cursor:pointer;
}
.dlwe-language-popover button:hover{background:#f5eeea!important;}
.dlwe-language-popover button.is-active{background:linear-gradient(135deg,rgba(183,110,120,.12),rgba(200,173,126,.10))!important;box-shadow:inset 0 0 0 1px rgba(183,110,120,.16)!important;}
.dlwe-language-option-code{font-size:10px;font-weight:850;letter-spacing:.06em;white-space:nowrap;}
.dlwe-language-popover strong{display:block!important;color:#392f2a!important;font-size:11px!important;font-weight:750!important;letter-spacing:0!important;text-transform:none!important;}
.dlwe-language-popover small{display:block!important;margin-top:1px;color:#94867c!important;font-size:9px!important;letter-spacing:0!important;text-transform:none!important;}
.dlwe-global-preferences + .dlwe-primary-button,
.dlwe-global-preferences + .dlwe-secondary-button{margin-left:2px;}

/* Luxury dark palette ---------------------------------------------------- */
html[data-dlwe-theme="dark"] .dlwe-portal-shell{
  --dlwe-luxury-dark-bg:#0b0909;
  --dlwe-luxury-dark-main:#100d0d;
  --dlwe-luxury-dark-surface:#171312;
  --dlwe-luxury-dark-surface-2:#1e1917;
  --dlwe-luxury-dark-surface-3:#261f1c;
  --dlwe-luxury-dark-line:#3c302c;
  --dlwe-luxury-dark-line-soft:#2d2522;
  --dlwe-luxury-dark-text:#f7eee8;
  --dlwe-luxury-dark-copy:#d2c4ba;
  --dlwe-luxury-dark-muted:#9d8f85;
  --dlwe-luxury-dark-rose:#d998a3;
  --dlwe-luxury-dark-champagne:#c8ad7e;
  background:var(--dlwe-luxury-dark-bg)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main{
  background:
    radial-gradient(900px 430px at 90% -10%,rgba(183,110,120,.095),transparent 64%),
    radial-gradient(680px 390px at 15% 12%,rgba(200,173,126,.045),transparent 66%),
    linear-gradient(180deg,#110e0e 0%,#0d0b0b 100%)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-panel{background:transparent!important;}

/* Header / hero surfaces */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-portal-header,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-hero{
  color:var(--dlwe-luxury-dark-copy)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-hero{
  background:
    linear-gradient(135deg,rgba(35,27,24,.97),rgba(21,17,16,.98))!important;
  border-color:#42342f!important;
  box-shadow:0 18px 55px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-date-block{
  border-color:#433530!important;
  background:rgba(10,8,8,.26)!important;
}

/* Dashboard cards and quick actions */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-section,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-card,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-metric,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-quick-action,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-quick-actions > *,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-list > *,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-attendance-summary,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-approval-item{
  color:var(--dlwe-luxury-dark-copy)!important;
  background:linear-gradient(145deg,#1b1715 0%,#151211 100%)!important;
  border-color:#3a2f2b!important;
  box-shadow:0 13px 34px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.018)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-metric:hover,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-quick-action:hover,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-list > *:hover{
  background:linear-gradient(145deg,#211a18 0%,#191513 100%)!important;
  border-color:#60483f!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-metric > span,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-card-heading p,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-section-heading p{
  color:#bfaea3!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-metric strong,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-card h3,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-section h2,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-quick-actions strong{
  color:#f8f0e9!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-metric small,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-quick-actions small,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-list small{
  color:#9f9188!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-text-button{
  color:#dda4ad!important;
}

/* Broad module surfaces: CRM, planning, finance, HR, roster, command centre. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main :is(
  .dlwe-card,.dlwe-panel-card,.dlwe-form-card,.dlwe-filter-card,.dlwe-table-card,.dlwe-summary-card,.dlwe-metric-card,
  .dlwe-workspace-card,.dlwe-document-card,.dlwe-vendor-card,.dlwe-client-card,.dlwe-task-card,.dlwe-approval-card,
  .dlwe-budget-card,.dlwe-finance-card,.dlwe-report-card,.dlwe-collection-card,.dlwe-invoice-card,.dlwe-expense-card,
  .dlwe-roster-card,.dlwe-roster-shift-card,.dlwe-hr-card,.dlwe-hr-summary-card,.dlwe-payroll-card,.dlwe-payslip-card,
  .dlwe-command-card,.dlwe-command-panel,.dlwe-incident-card,.dlwe-calendar-card,.dlwe-meeting-card,.dlwe-timeline-item,.dlwe-run-sheet-item,
  .dlwe-checklist-card,.dlwe-template-card,.dlwe-analytics-card,.dlwe-settings-card,.dlwe-status-card,.dlwe-profile-card
){
  color:var(--dlwe-luxury-dark-copy)!important;
  background:var(--dlwe-luxury-dark-surface)!important;
  border-color:var(--dlwe-luxury-dark-line)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.15)!important;
}
/* Catch legacy white inline surfaces without flattening colored status chips. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main :is(
  .dlwe-form-section,.dlwe-calendar-toolbar,.dlwe-client-toolbar,.dlwe-task-toolbar,.dlwe-vendor-toolbar,
  .dlwe-budget-report-toolbar,.dlwe-expense-history-toolbar,.dlwe-approval-toolbar,.dlwe-document-toolbar-card,
  .dlwe-native-timeline-toolbar,.dlwe-template-editor-toolbar,.dlwe-section-shell,.dlwe-content-section
){
  color:var(--dlwe-luxury-dark-copy)!important;
  background:var(--dlwe-luxury-dark-surface)!important;
  border-color:var(--dlwe-luxury-dark-line)!important;
}

/* Inputs, selects, dates, search, browser autofill */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input:not([type="checkbox"]):not([type="radio"]),
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main select,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main textarea{
  color:#eee3dc!important;
  background:#110f0e!important;
  border-color:#453833!important;
  caret-color:#d998a3!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input[readonly],
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input:disabled,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main select:disabled,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main textarea:disabled{
  color:#a99a90!important;
  background:#171311!important;
  opacity:1!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input::placeholder,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main textarea::placeholder{color:#776b64!important;opacity:1!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main select option{background:#171311!important;color:#eee3dc!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input:-webkit-autofill,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input:-webkit-autofill:hover,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main input:-webkit-autofill:focus{
  -webkit-text-fill-color:#eee3dc!important;
  -webkit-box-shadow:0 0 0 1000px #110f0e inset!important;
  transition:background-color 9999s ease-in-out 0s;
}

/* Tables and list rows */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main table{
  background:#151211!important;
  border-color:#362c28!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main thead th{
  color:#e4d7cf!important;
  background:#211a18!important;
  border-color:#453630!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main tbody td{
  color:#cdbfb5!important;
  background:#161311!important;
  border-color:#302724!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main tbody tr:nth-child(even) td{background:#191513!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-main tbody tr:hover td{background:#211a18!important;}

/* Modal / dialog luxury treatment */
html[data-dlwe-theme="dark"] .dlwe-portal-shell :is(.dlwe-calendar-modal-card,.dlwe-modal-card,[role="dialog"]){
  background:linear-gradient(145deg,#1d1816,#151211)!important;
  border:1px solid #493832!important;
  box-shadow:0 34px 100px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell :is(.dlwe-calendar-modal-backdrop,.dlwe-modal-backdrop){
  background:rgba(6,5,5,.76)!important;
  -webkit-backdrop-filter:blur(10px) saturate(75%);
  backdrop-filter:blur(10px) saturate(75%);
}

/* Status badges remain legible in dark mode. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-status-badge,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-chip,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-badge,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-pill{
  color:#d8cbc2!important;
  background:#241e1b!important;
  border-color:#493a34!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell :is(.is-success,.status-approved,.status-paid) .dlwe-status-badge,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-status-badge.is-success{color:#b7e2c6!important;background:#173023!important;border-color:#2d5940!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell :is(.is-warning,.status-pending) .dlwe-status-badge,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-status-badge.is-warning{color:#edd09d!important;background:#332718!important;border-color:#665033!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell :is(.is-danger,.status-overdue,.status-rejected) .dlwe-status-badge,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-status-badge.is-danger{color:#efb1ad!important;background:#351c1c!important;border-color:#693b39!important;}

/* Global preference bar dark variant */
html[data-dlwe-theme="dark"] .dlwe-global-preferences{
  border-color:rgba(217,152,163,.19);
  background:rgba(24,19,18,.92);
  box-shadow:0 14px 38px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
}
html[data-dlwe-theme="dark"] .dlwe-luxury-theme-toggle,
html[data-dlwe-theme="dark"] .dlwe-language-trigger{color:#cdbfb5!important;}
html[data-dlwe-theme="dark"] .dlwe-luxury-theme-toggle:hover,
html[data-dlwe-theme="dark"] .dlwe-language-trigger:hover{background:rgba(217,152,163,.08)!important;color:#fff!important;}
html[data-dlwe-theme="dark"] .dlwe-theme-sun,
html[data-dlwe-theme="dark"] .dlwe-theme-moon{color:#bfaea3;}
html[data-dlwe-theme="dark"] .dlwe-theme-track{background:#0f0d0c;border-color:#4a3a34;}
html[data-dlwe-theme="dark"] .dlwe-language-trigger{border-left-color:#3f322e!important;}
html[data-dlwe-theme="dark"] .dlwe-language-popover{
  border-color:#4a3933;
  background:rgba(27,22,20,.98);
  box-shadow:0 24px 70px rgba(0,0,0,.42);
}
html[data-dlwe-theme="dark"] .dlwe-language-popover:before{border-color:#4a3933;background:#1b1614;}
html[data-dlwe-theme="dark"] .dlwe-language-popover-label{color:#8f8178;}
html[data-dlwe-theme="dark"] .dlwe-language-popover button{color:#d8cbc2!important;}
html[data-dlwe-theme="dark"] .dlwe-language-popover button:hover{background:#261e1b!important;}
html[data-dlwe-theme="dark"] .dlwe-language-popover button.is-active{background:linear-gradient(135deg,rgba(183,110,120,.17),rgba(200,173,126,.08))!important;box-shadow:inset 0 0 0 1px rgba(217,152,163,.20)!important;}
html[data-dlwe-theme="dark"] .dlwe-language-popover strong{color:#f5ebe5!important;}
html[data-dlwe-theme="dark"] .dlwe-language-popover small{color:#95877e!important;}

/* Scrollbars — restrained, app-like. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell *{scrollbar-color:#4b3a34 #151211;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell *::-webkit-scrollbar{width:10px;height:10px;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell *::-webkit-scrollbar-track{background:#151211;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell *::-webkit-scrollbar-thumb{background:#493933;border:2px solid #151211;border-radius:999px;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell *::-webkit-scrollbar-thumb:hover{background:#604940;}

/* Keep printed records professional and light regardless of UI theme. */
@media print{
  html[data-dlwe-theme="dark"],html[data-dlwe-theme="dark"] body{color-scheme:light!important;background:#fff!important;}
  .dlwe-global-preferences,.dlwe-auth-preferences,.dlwe-couple-preferences{display:none!important;}
  body.dlwe-print-payslip .dlwe-payslip-luxury,
  body.dlwe-print-timeline .dlwe-timeline-print-area{color:#111!important;background:#fff!important;}
}

@media(max-width:1180px){
  .dlwe-global-preferences{padding:4px;gap:4px;}
  .dlwe-theme-state{display:none;}
  .dlwe-luxury-theme-toggle{padding-inline:6px!important;}
}
@media(max-width:760px){
  .dlwe-portal-shell .dlwe-portal-header{position:relative;}
  .dlwe-global-preferences{order:-1;margin-left:auto;}
  .dlwe-language-popover{position:fixed;top:76px;right:14px;width:min(260px,calc(100vw - 28px));}
  .dlwe-luxury-theme-toggle{min-height:32px;}
  .dlwe-language-trigger{min-height:32px;min-width:48px;}
}


/* ========================================================================== 
   v7.4.3 — Executive utility rail, dark-surface polish & locale finishing
   ========================================================================== */

/* Keep the new global controls in the executive header without forcing any
   existing dashboard utility off-canvas. */
@media (min-width:1121px){
  .dlwe-portal-shell .dlwe-home-executive-header{
    grid-template-columns:minmax(280px,1fr) minmax(760px,auto)!important;
    gap:18px!important;
  }
  .dlwe-portal-shell .dlwe-home-header-utilities{
    display:grid!important;
    grid-template-columns:150px 145px 142px minmax(250px,280px) 48px!important;
    align-items:stretch!important;
    gap:7px!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    flex-wrap:nowrap!important;
  }
  .dlwe-portal-shell .dlwe-home-header-utilities > *{min-width:0!important;max-width:100%!important;}
  .dlwe-portal-shell .dlwe-global-preferences{
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
    gap:3px!important;
    padding:4px!important;
    justify-content:center;
  }
  .dlwe-portal-shell .dlwe-luxury-theme-toggle{gap:3px!important;padding:4px 5px!important;}
  .dlwe-portal-shell .dlwe-theme-sun,.dlwe-portal-shell .dlwe-theme-moon{font-size:9px!important;}
  .dlwe-portal-shell .dlwe-theme-track{width:27px!important;height:16px!important;}
  .dlwe-portal-shell .dlwe-theme-track i{width:10px!important;height:10px!important;}
  html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-theme-track i{transform:translateX(11px)!important;}
  .dlwe-portal-shell .dlwe-theme-state{min-width:25px!important;font-size:8px!important;}
  .dlwe-portal-shell .dlwe-language-trigger{min-width:43px!important;padding:4px 5px!important;}
  .dlwe-portal-shell .dlwe-home-profile-trigger{
    min-width:0!important;width:145px!important;max-width:145px!important;
    grid-template-columns:36px minmax(0,1fr) 12px!important;
    gap:7px!important;padding:8px!important;
  }
  .dlwe-portal-shell .dlwe-home-profile-avatar{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:13px!important;}
  .dlwe-portal-shell .dlwe-home-profile-copy strong{font-size:10px!important;}
  .dlwe-portal-shell .dlwe-home-profile-copy small{font-size:8px!important;}
  .dlwe-portal-shell .dlwe-home-header-time{width:142px!important;min-width:142px!important;padding:9px 11px!important;}
  .dlwe-portal-shell .dlwe-home-header-workday{
    width:auto!important;min-width:250px!important;max-width:280px!important;
    grid-template-columns:8px minmax(78px,1fr) 86px!important;
    gap:8px!important;padding:8px 8px 8px 11px!important;
  }
  .dlwe-portal-shell .dlwe-home-header-workday .dlwe-home-clock-action{min-width:86px!important;padding:9px 10px!important;}
  .dlwe-portal-shell .dlwe-home-refresh-button{
    width:48px!important;min-width:48px!important;max-width:48px!important;
    min-height:66px!important;padding:0!important;font-size:0!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
  }
  .dlwe-portal-shell .dlwe-home-refresh-button::before{content:"↻";font-size:19px;line-height:1;font-weight:400;letter-spacing:0;}
}

/* On mid-sized laptops keep all utilities together on a deliberate second rail
   instead of wrapping one control by itself. */
@media (min-width:1121px) and (max-width:1439px){
  .dlwe-portal-shell .dlwe-home-executive-header{grid-template-columns:1fr!important;align-items:start!important;}
  .dlwe-portal-shell .dlwe-home-header-utilities{justify-self:start!important;}
}

/* Remove browser-blue focus chrome and use the DLWE rose/champagne focus ring. */
.dlwe-luxury-theme-toggle:focus,.dlwe-language-trigger:focus{outline:none!important;}
.dlwe-luxury-theme-toggle:focus-visible,.dlwe-language-trigger:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 2px rgba(183,110,120,.30)!important;
}

/* The executive profile and attendance surfaces must belong to dark mode too. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-profile-trigger,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-header-workday{
  color:#d7c9bf!important;
  background:linear-gradient(145deg,#1a1614,#131110)!important;
  border-color:#443530!important;
  box-shadow:0 11px 30px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.02)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-profile-trigger:hover,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-profile-trigger:focus-visible{
  border-color:#6b4d45!important;
  background:linear-gradient(145deg,#201917,#171311)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-profile-copy strong,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-workday-copy strong{color:#f7eee8!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-profile-copy small,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-workday-copy small{color:#9f9188!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-profile-chevron{color:#c8ad7e!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-refresh-button{
  color:#d8cbc2!important;background:#171312!important;border-color:#443530!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-home-refresh-button:hover{
  color:#fff!important;background:#211a18!important;border-color:#60483f!important;
}

@media(max-width:1120px){
  .dlwe-portal-shell .dlwe-home-header-utilities .dlwe-global-preferences{order:-2;}
  .dlwe-portal-shell .dlwe-home-header-utilities .dlwe-home-profile-trigger{order:-1;}
}

/* ==========================================================================
   v7.4.4 — Portal-wide dark-mode consistency audit
   Every light-mode component surface used by the staff portal is remapped to
   the same warm-charcoal DLWE dark palette. This intentionally sits last in
   the stylesheet so older module-specific light backgrounds cannot win.
   ========================================================================== */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell{
  color-scheme:dark;
  --dlwe-dark-canvas:#0f0d0c;
  --dlwe-dark-surface:#1a1715;
  --dlwe-dark-surface-2:#211d1a;
  --dlwe-dark-surface-3:#171411;
  --dlwe-dark-border:#3b332e;
  --dlwe-dark-border-strong:#4a3e37;
  --dlwe-dark-text:#f4ebe5;
  --dlwe-dark-copy:#d8cdc3;
  --dlwe-dark-muted:#9f9288;
  --dlwe-dark-rose:#d998a3;
  --dlwe-dark-champagne:#c8ad7e;
}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell [data-dlwe-panel]{color:var(--dlwe-dark-copy)!important;}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-body,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-footer,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-footer .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-version-history,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-calendar-modal-close,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-attendees label,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-form-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-modal-body,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-modal-footer,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-modal-header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe_client_additional_leads,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-access-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-alert,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-alert,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-alert.is-high,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-alert.is-low,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-financial-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-metric.is-positive,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-risk-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-score-pill,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-score-pill.is-watch,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-section,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-summary-card.is-positive,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-approval-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-approval-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-approval-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-calculation .is-overrun,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-command-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-existing-file,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-file-chip,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-import-meta,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-import-preview-summary span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-list-item,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-confirmed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-meeting,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-meeting-event,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-task,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-task-event,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-task-progress,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-task-review,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-all-day > span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-confirmed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-meeting,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-meeting-event,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-task,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-task-event,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-task-progress,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-task-review,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-filterbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-hour-label,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-icon-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-modal-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-modal-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-modal-card > header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-modal-close,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-month-day,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-month-day.is-outside,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-month-weekdays,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-stage-wrap,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-status-pill.is-confirmed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-status-pill.is-meeting,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-status-pill.is-task,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-status-pill.is-task-progress,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-status-pill.is-task-review,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-summary article,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-view-switch,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-week-all-day > span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-week-day,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-week-header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-week-hour-label,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-year-view,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-command-bar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-detection-summary span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-filter-grid,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-live-scroll,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-live-table tr,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-module-option,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-preview-scroll,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-preview-section,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-progress-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-progress-section,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-settings,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-switch,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-template-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-workspace,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-approval-dashboard-insight-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-approval-dashboard-register,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-assignment-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-date-summary,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-collection-dashboard-section,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-collection-heading-row > small,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-collection-history-list article,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-collection-metric-list > div:not(.dlwe-empty-state),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-collection-reminder-status > span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-collection-reminder-status > strong,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-client-safe,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-client-safe-section,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-completion,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-contact-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-controlbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-coverage-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-coverage-metrics span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-department-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-event-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-focus-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-issue,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-item,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-item.is-urgent,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-live-clock,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-live-overview,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-meta>span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-note,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-now-next-grid>.dlwe-command-focus-card:first-child,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-now-next-grid>.dlwe-command-focus-card:nth-child(2),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-summary .is-live,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-tabs,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-team-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-transport-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-vendor-line,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-communication-follow-up-toggle .dlwe-checkbox-option,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-compensation-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-connect-approval-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-connect-approval-stat,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-activity-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-modal-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-modal-card > form > footer,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-modal-card > header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-row-actions button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-toolbar-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-version-history,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-empty-cell,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-empty-state,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-expense-history-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-feature-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-finance-alert,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-financial-breakdown-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-form-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-form-loading,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-form-section,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-header-actions .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-history-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-history-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-action,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-action-line,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-attendance-status,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-modal-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-option,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-options,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-panel,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-unavailable,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-duty-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-empty,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-header-workday,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-mini-stats div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-avatar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-admin-note,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-modal-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-modal-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-photo-preview,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-photo-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-trigger,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-quick-actions-empty,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-dashboard-clock-note,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-history-entry,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-manager-form,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-payroll-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-tab.is-active,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-tabs,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-icon-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-inline-month,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-invoice-collection-summary,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-invoice-line,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-invoice-totals,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-language-popover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-language-popover:before,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-check i,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-group,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-group>header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-progress-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-quick-links button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-release-banner>div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-signoff-message,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-step-grid article,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-login-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-alert,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-control-actions .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-control-panel,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-currency-list > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(4n+3),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(4n+4),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(even),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-detail:nth-child(n),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-document-status,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-empty-block,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-mini-metrics > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-team-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-timeline-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-attendees,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-attendees label,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-action-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-card-actions > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-card-files a,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-client-response,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-decision-preview,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-existing-files a,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-note-linked-task,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-notes-register,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-card-table tr,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-dialog,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-dialog > footer,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-dialog > header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-dialog > header > button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-search,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-context-bar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-context-menu,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-context-top,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-table-controls,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-table-controls button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-native-timeline-builder,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-notification-item,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-notification-item.is-unread,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-optional-import-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-pagination,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-pagination button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-pagination-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-mini-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-payment-allocation-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-payslip,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-payslip-luxury,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-payslip-luxury .dlwe-payslip-meta,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-payslip-meta p,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-payslip-person div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-personal-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-preferences-compact,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-quick-action-editor-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-quick-action-order-controls button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-quick-actions-close,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-quick-actions-dialog,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-quick-actions-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-readonly-value,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-currency-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-filter-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-filter-grid,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-table tbody tr:nth-child(even),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-table-wrap,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-confirmation,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-option,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-overview,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-result-close,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-result-dialog,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-result-stats > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-toggle,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-resubmission-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-review-item,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-assignment-preview,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-availability-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-calendar-day,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-calendar-day.is-empty,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-calendar-day.is-weekend,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-calendar-grid,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-card-actions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-instructions,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-logistics-chips span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-shift-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-shift-meta span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-tabs,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-backup-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-backup-card.status-partial,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-backup-card.status-validation_failed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-check,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-coverage-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-coverage-card.is-confirmed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-coverage-card.needs-action,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-diagnostic-hero,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-diagnostic-hero.status-action-required,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-diagnostic-hero.status-review,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-event,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-global-mode,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-mode-banner.mode-full_maintenance,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-mode-banner.mode-read_only,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-note,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-score-copy p,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-score-ring:before,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-tabs,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-table-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-table-scroll,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-table-wrap,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-attachment-link,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-bulk-bar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-bulk-option,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-bulk-option.is-enabled,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-comment,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-comment-count,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-create-mode-switch button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-chip,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-chip.is-clear,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-meta,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-stat,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-deadline-item,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-discussion-panel,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-multi-assignee,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-multi-assignees,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-multi-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-multi-summary.is-over-limit,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-note,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-note.is-completion,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-priority.is-low,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-scope-note,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-command-bar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-day-tab,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-detection-summary article,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-event-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-event-header,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-live-notes,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-live-status,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-manual-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-notify-check,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table-scroll,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table-wrap,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-top-grid > *,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-chip,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-delete-actions .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-delete-close,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-delete-dialog,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-editor,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-private,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vp-allocation-section .dlwe-empty-state,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vp-allocation-summary>div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-access-summary.is-empty,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-card.is-past,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-metric,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-toolbar,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-alert,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-control-panel,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-currency-list > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-document-status,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-empty-block,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-mini-metrics > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-summary-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-team-row,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-timeline-summary > div,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-hr-tabs,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell [data-dlwe-panel="attendance-payroll"] .dlwe-task-summary-card{
  color:var(--dlwe-dark-copy)!important;
  background:linear-gradient(145deg,#1c1816 0%,var(--dlwe-dark-surface) 100%)!important;
  border-color:var(--dlwe-dark-border)!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-checkbox-field,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-file-field input[type="file"],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-attendees label:has(input:checked),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-checkbox-field,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table input[type="date"],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table input[type="number"],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table input[type="text"],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-editor input:disabled,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-editor select:disabled,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-editor textarea:disabled,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-other-input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-total-field,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-control-field select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-connect-role-select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-modal-card input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-modal-card select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-modal-card textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-expense-history-toolbar input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-expense-history-toolbar select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-field input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-field select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-field textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-form-grid input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-form-grid select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-form-grid textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-fields input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-fields select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-grid input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-grid input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-profile-modal .dlwe-home-profile-grid input[readonly],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-clock-card input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-clock-card select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-clock-card textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-check input:checked+span,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-workspace-selector-label select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-choice-search input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel input:not([type="checkbox"]):not([type="radio"]),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel input[type="file"],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-portal .dlwe-auto-generated-input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-portal .dlwe-auto-generated-input[readonly],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-portal-form input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-portal-form select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-portal-form textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-quick-action-editor-row.is-selected,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-option-caution:has(input:checked),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-toolbar input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-toolbar select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-toolbar input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-toolbar select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-select-control,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-toolbar input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-toolbar select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-manual-grid input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-manual-grid select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-manual-grid textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table textarea,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-toolbar input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-vendor-toolbar select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-toolbar input,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-toolbar select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-selector-label select,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell body.dlwe-staff-login-page .dlwe-field input:focus,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell body.dlwe-staff-login-page .dlwe-field input[type="password"],
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell body.dlwe-staff-login-page .dlwe-field input[type="text"]{
  color:#eee5dd!important;
  background:var(--dlwe-dark-surface-3)!important;
  border-color:var(--dlwe-dark-border-strong)!important;
  box-shadow:none!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-mobile-table-region table thead th{
  color:#eadfd7!important;
  background:#211b18!important;
  border-color:#493a34!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-preview-more td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table tbody tr:hover td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table td:first-child,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-template-table tbody tr:hover td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-template-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-template-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-table tbody tr:hover td:last-child,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-table tbody tr:nth-child(even) td:last-child,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-client-table td:last-child,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table tbody tr:hover td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-finance-risk-row td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-table tbody tr:hover td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-table tbody tr:hover td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-dynamic-table tbody tr:hover:not(.dlwe-timeline-section-row) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-dynamic-table tbody tr:nth-child(even):not(.dlwe-timeline-section-row) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-dynamic-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table tbody tr:hover td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-timeline-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-table tbody tr:nth-child(even) td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-user-table td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell tbody td,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell tbody tr:nth-child(even) td{
  color:#d2c5bc!important;
  background:#181512!important;
  border-color:#332b27!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-calendar-modal-close:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-calendar-modal-close:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell #dlwe-meeting-form-modal .dlwe-meeting-attendees label:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-icon-button:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-icon-button:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-week-day:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-week-day:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-module-option:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-table tbody tr:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-checklist-template-table tbody tr:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-data-table tbody tr:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-document-row-actions button:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-header-actions .dlwe-secondary-button:hover:not(:disabled),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-clock-modal .dlwe-home-clock-wedding-option:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-list-row:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-tab:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-hr-tab:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-launch-quick-links button:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-meeting-attendees label:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-mini-button:focus-visible:not(:disabled),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-mini-button:hover:not(:disabled),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:focus-visible:not(:disabled),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-panel .dlwe-secondary-button:hover:not(:disabled),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-report-table tbody tr:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-secondary-button:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-secondary-button:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-table tbody tr:hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-hero .dlwe-secondary-button:focus-visible,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-workspace-hero .dlwe-secondary-button:hover{
  color:#f5ece6!important;
  background:#251e1b!important;
  border-color:#4d3d36!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-alert-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-alert.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-metric.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-summary-card.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-list-item.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-coverage-metrics span.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-command-summary .is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-finance-alert.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-attendance-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-reset-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-assignment-preview.is-understaffed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-security-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-chip.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-summary-card.is-warning,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-wedding-scope-note.is-warning{
  color:#e9cfa5!important;
  background:linear-gradient(145deg,#302416,#241c14)!important;
  border-color:#5d4930!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-alert-error,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-alert.is-critical,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-metric.is-negative,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-score-pill.is-critical,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-summary-card.is-negative,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-list-item.is-danger,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-report-summary-danger,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-summary-danger,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-agenda-item.is-task-overdue,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-event.is-task-overdue,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-calendar-status-pill.is-task-overdue,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-finance-alert.is-critical,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-conflict-card,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-conflict-card.is-blocking,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-conflict-preview,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-conflict-preview.has-blocking,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-roster-row-conflict,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-card.is-overdue,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-dashboard-chip.is-danger,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-note.is-notification-error,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-summary-card.is-danger{
  color:#efb6b0!important;
  background:linear-gradient(145deg,#321c1b,#241514)!important;
  border-color:#653b38!important;
}

html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-alert-success,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-score-pill.is-excellent,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-analytics-score-pill.is-on-track,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-budget-summary-success,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-finance-all-clear,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-home-attendance-success,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-card.is-completed,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-task-summary-card.is-success{
  color:#bce1c8!important;
  background:linear-gradient(145deg,#173024,#14251c)!important;
  border-color:#315642!important;
}

/* Stable dark typography and controls inside every module. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(h1,h2,h3,h4,h5,h6,strong,legend,dt){color:var(--dlwe-dark-text)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(p,small,.dlwe-muted,.dlwe-field-help,.dlwe-form-help){color:var(--dlwe-dark-muted)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(hr,.dlwe-divider){border-color:var(--dlwe-dark-border)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(input,select,textarea,button):focus-visible{outline:none!important;box-shadow:0 0 0 2px rgba(183,110,120,.28)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main select{color-scheme:dark;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main option{color:#eee5dd;background:#171411;}

/* Shared surfaces that are defined through grouped legacy rules rather than
   their own background declaration. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell :is(.dlwe-form-section,.dlwe-table-card,.dlwe-report-card,.dlwe-report-filter-card,.dlwe-task-dashboard-card,.dlwe-checklist-settings,.dlwe-checklist-preview-section,.dlwe-checklist-template-editor,.dlwe-checklist-progress-section,.dlwe-hr-manager-form,.dlwe-user-editor,.dlwe-client-editor,.dlwe-task-editor,.dlwe-approval-editor,.dlwe-resubmission-editor,.dlwe-workspace-card,.dlwe-approval-card,.dlwe-wedding-card,.dlwe-vendor-card,.dlwe-task-card,.dlwe-history-card,.dlwe-empty-state,.dlwe-security-note){color:var(--dlwe-dark-copy)!important;background:linear-gradient(145deg,#1c1816,#181512)!important;border-color:var(--dlwe-dark-border)!important;box-shadow:0 12px 34px rgba(0,0,0,.16)!important;}

/* Tables and sticky columns — eliminates white strips in CRM, Finance, Tasks,
   Checklists, Run Sheet, Vendors, Documents and Reports. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(.dlwe-table-wrap,.dlwe-table-scroll,.dlwe-report-table-wrap,.dlwe-timeline-table-scroll,.dlwe-budget-table-scroll,.dlwe-mobile-table-region){background:#171411!important;border-color:var(--dlwe-dark-border)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main table :is(th,td){border-color:#332b27!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main table tbody td{color:#d2c5bc!important;background:#181512!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main table tbody tr:nth-child(even) td{background:#1b1714!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main table tbody tr:hover td{background:#241d1a!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(.dlwe-client-table,.dlwe-data-table,.dlwe-task-dashboard-table,.dlwe-report-table,.dlwe-checklist-table,.dlwe-checklist-template-table,.dlwe-timeline-table) td:last-child{background:inherit!important;}

/* Modal/dialog surfaces across Calendar, Documents, HR, Planning and mobile. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell :is(.dlwe-calendar-modal-card,.dlwe-document-modal-card,.dlwe-mobile-choice-dialog,.dlwe-mobile-context-menu,.dlwe-mobile-context-top){color:var(--dlwe-dark-copy)!important;background:#1a1715!important;border-color:#493a34!important;box-shadow:0 28px 80px rgba(0,0,0,.5)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell :is(.dlwe-calendar-modal-card,.dlwe-document-modal-card,.dlwe-mobile-choice-dialog) :is(header,footer){background:#1c1816!important;border-color:#3b332e!important;}

/* Calendar. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell :is(.dlwe-calendar-stage-wrap,.dlwe-calendar-month-day,.dlwe-calendar-week-day,.dlwe-calendar-week-header,.dlwe-calendar-year-view){background:#181512!important;border-color:#332b27!important;color:var(--dlwe-dark-copy)!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell :is(.dlwe-calendar-month-weekdays,.dlwe-calendar-hour-label,.dlwe-calendar-week-hour-label,.dlwe-calendar-all-day>span,.dlwe-calendar-week-all-day>span){background:#211b18!important;color:#b9aaa0!important;border-color:#3b332e!important;}

/* Operational modules. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell :is(.dlwe-command-item,.dlwe-command-team-card,.dlwe-command-department-card,.dlwe-roster-shift-card,.dlwe-roster-availability-card,.dlwe-timeline-event-card,.dlwe-timeline-day-tab,.dlwe-budget-command-card,.dlwe-analytics-section,.dlwe-document-summary-card,.dlwe-document-toolbar-card,.dlwe-document-activity-card,.dlwe-notification-item){color:var(--dlwe-dark-copy)!important;background:linear-gradient(145deg,#1c1816,#181512)!important;border-color:#3b332e!important;}

/* UI theme never changes paper output. */
@media print{
  html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main [data-dlwe-print-area],
  html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page.dlwe-print-payslip #dlwe-hr-print-area,
  html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page.dlwe-print-timeline #dlwe-timeline-print-area{color:#111!important;background:#fff!important;}
}


/* ========================================================================== 
   v7.4.5 — Global Sidebar Controls + Nickname + Final Dark Button Polish
   ========================================================================== */
/* Remove the dashboard-only utility rail and reclaim the top whitespace. */
.dlwe-portal-shell .dlwe-home-executive-header{
  grid-template-columns:1fr!important;
  min-height:0!important;
  padding-top:0!important;
  margin-top:0!important;
}
.dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"]{padding-top:0!important;}
.dlwe-portal-shell .dlwe-home-heading-block{padding-top:0!important;margin-top:0!important;}

/* Luxury global control block directly below the official logo. */
.dlwe-sidebar-global-controls{
  margin:10px 14px 14px!important;
  padding:12px!important;
  border:1px solid rgba(200,173,126,.24)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 30px rgba(0,0,0,.10)!important;
}
.dlwe-sidebar-control-label{
  margin:0 2px 9px!important;color:#c8ad7e!important;font-size:9px!important;font-weight:800!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
}
.dlwe-sidebar-global-controls .dlwe-global-preferences{display:grid!important;grid-template-columns:1fr auto!important;gap:7px!important;margin-bottom:9px!important;}
.dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle,
.dlwe-sidebar-global-controls .dlwe-language-trigger{width:100%!important;min-width:0!important;height:36px!important;border-radius:12px!important;}
.dlwe-sidebar-global-controls .dlwe-sidebar-global-utilities{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;width:100%!important;}
.dlwe-sidebar-global-controls .dlwe-home-profile-trigger,
.dlwe-sidebar-global-controls .dlwe-home-header-time,
.dlwe-sidebar-global-controls .dlwe-home-header-workday,
.dlwe-sidebar-global-controls .dlwe-home-refresh-button{
  width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;border-radius:13px!important;
}
.dlwe-sidebar-global-controls .dlwe-home-profile-trigger{padding:8px 9px!important;justify-content:flex-start!important;}
.dlwe-sidebar-global-controls .dlwe-home-profile-avatar{width:34px!important;height:34px!important;min-width:34px!important;}
.dlwe-sidebar-global-controls .dlwe-home-profile-copy{min-width:0!important;text-align:left!important;}
.dlwe-sidebar-global-controls .dlwe-home-profile-copy strong,
.dlwe-sidebar-global-controls .dlwe-home-profile-copy small{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.dlwe-sidebar-global-controls .dlwe-home-header-time{padding:8px 10px!important;display:grid!important;grid-template-columns:auto 1fr!important;column-gap:8px!important;align-items:center!important;}
.dlwe-sidebar-global-controls .dlwe-home-header-time span{grid-row:1!important;}
.dlwe-sidebar-global-controls .dlwe-home-header-time strong{grid-row:1!important;text-align:right!important;font-size:16px!important;}
.dlwe-sidebar-global-controls .dlwe-home-header-time small{grid-column:1/-1!important;margin-top:2px!important;}
.dlwe-sidebar-global-controls .dlwe-home-header-workday{padding:9px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:7px!important;align-items:center!important;}
.dlwe-sidebar-global-controls .dlwe-home-clock-action{grid-column:1/-1!important;width:100%!important;margin-top:3px!important;min-height:36px!important;}
.dlwe-sidebar-global-controls .dlwe-home-refresh-button{height:34px!important;}
.dlwe-sidebar-global-controls .dlwe-language-popover{left:0!important;right:auto!important;top:42px!important;z-index:9999!important;}

/* Dark mode: no stray white action buttons anywhere in staff modules. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main button:not(.dlwe-primary-button):not(.dlwe-nav-item):not(.dlwe-nav-item-danger):not(.dlwe-text-button):not(.dlwe-calendar-modal-close):not([class*="danger"]):not([class*="delete"]),
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-secondary-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-compact-button,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-mini-button{
  color:#efe5de!important;background:linear-gradient(145deg,#27211e,#1f1a17)!important;border-color:#493a34!important;box-shadow:none!important;
}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main button:not(.dlwe-primary-button):not(.dlwe-nav-item):not(.dlwe-nav-item-danger):not(.dlwe-text-button):hover,
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-secondary-button:hover{
  color:#fff5ef!important;background:linear-gradient(145deg,#332824,#2a211e)!important;border-color:#73564d!important;
}
html[data-dlwe-theme="dark"] .dlwe-sidebar-global-controls{
  background:linear-gradient(145deg,rgba(34,28,25,.96),rgba(23,19,17,.96))!important;
  border-color:#493a34!important;
}
html[data-dlwe-theme="dark"] .dlwe-sidebar-global-controls :is(.dlwe-luxury-theme-toggle,.dlwe-language-trigger,.dlwe-home-profile-trigger,.dlwe-home-header-time,.dlwe-home-header-workday,.dlwe-home-refresh-button){
  color:#eee5dd!important;background:#1d1916!important;border-color:#41352f!important;
}
html[data-dlwe-theme="dark"] .dlwe-sidebar-global-controls :is(strong){color:#f5ece6!important;}
html[data-dlwe-theme="dark"] .dlwe-sidebar-global-controls :is(small,span){color:#b9aaa0!important;}
html[data-dlwe-theme="dark"] .dlwe-sidebar-global-controls .dlwe-home-clock-action{color:#fff!important;background:linear-gradient(135deg,#b76e78,#9f5e68)!important;border-color:#c4828c!important;}

@media(max-width:900px){
  .dlwe-sidebar-global-controls{margin:8px 10px 12px!important;}
}

/* Dashboard greeting starts closer to the top edge while preserving normal module padding. */
@media (min-width:901px){
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{margin-top:-24px!important;}
}
@media (max-width:900px){
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{margin-top:-8px!important;}
}

/* ========================================================================== 
   v7.4.6 — Structural Sidebar Controls + Luxury Dark Button Completion
   ========================================================================== */
/* The global control panel is now real sidebar markup, not JavaScript-reparented DOM. */
.dlwe-portal-shell .dlwe-sidebar-global-controls{
  width:100%!important;
  margin:18px 0 20px!important;
  padding:12px!important;
  position:relative!important;
  display:block!important;
  border:1px solid rgba(200,173,126,.24)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.022))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 14px 30px rgba(0,0,0,.10)!important;
}
.dlwe-portal-shell .dlwe-sidebar-control-label{
  margin:0 2px 9px!important;
  color:#c8ad7e!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-controls .dlwe-global-preferences{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 62px!important;
  gap:7px!important;
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle,
.dlwe-portal-shell .dlwe-sidebar-global-controls .dlwe-language-trigger{
  width:100%!important;
  min-width:0!important;
  height:36px!important;
  min-height:36px!important;
  border-radius:11px!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities{
  width:100%!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities > *{min-width:0!important;max-width:none!important;margin:0!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-trigger,
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-time,
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-workday,
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-refresh-button{
  width:100%!important;
  border-radius:12px!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-trigger{
  min-height:48px!important;
  padding:7px 8px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:center!important;
  text-align:left!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-avatar{width:34px!important;height:34px!important;min-width:34px!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-copy{min-width:0!important;text-align:left!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-copy strong,
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-copy small{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-time{
  min-height:42px!important;
  padding:7px 9px!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
  gap:2px 8px!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-time > span{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.08em!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-time > strong{text-align:right!important;font-size:15px!important;line-height:1!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-time > small{grid-column:1/-1!important;font-size:9px!important;}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-workday{
  min-height:74px!important;
  padding:8px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:6px 8px!important;
  align-items:center!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-clock-action{
  grid-column:1/-1!important;
  width:100%!important;
  min-height:34px!important;
  margin-top:1px!important;
  border-radius:10px!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-refresh-button{height:32px!important;min-height:32px!important;font-size:9px!important;letter-spacing:.10em!important;}
.dlwe-portal-shell .dlwe-sidebar-global-controls .dlwe-language-popover{left:0!important;right:auto!important;top:42px!important;z-index:10020!important;}

/* The dashboard header is now intentionally simple: greeting + context only. */
.dlwe-portal-shell .dlwe-home-executive-header{
  display:block!important;
  min-height:0!important;
  padding-top:0!important;
  margin-top:0!important;
}
.dlwe-portal-shell .dlwe-home-executive-header .dlwe-home-heading-block{max-width:920px!important;padding-top:0!important;margin-top:0!important;}
.dlwe-portal-shell .dlwe-home-executive-header .dlwe-home-header-utilities{display:none!important;}
@media (min-width:1025px){
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{margin-top:-38px!important;}
}
@media (min-width:1700px){
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{margin-top:-40px!important;}
}

/* Luxury dark sidebar controls. */
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar-global-controls{
  background:linear-gradient(145deg,rgba(37,30,27,.98),rgba(24,20,18,.98))!important;
  border-color:#4b3b35!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 16px 34px rgba(0,0,0,.22)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar-global-controls :is(.dlwe-luxury-theme-toggle,.dlwe-language-trigger,.dlwe-home-profile-trigger,.dlwe-home-header-time,.dlwe-home-header-workday,.dlwe-home-refresh-button){
  color:#eee5dd!important;
  background:linear-gradient(145deg,#211b18,#191513)!important;
  border-color:#493a34!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar-global-controls :is(strong){color:#f7eee8!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar-global-controls :is(small,span){color:#bbaaa0!important;}
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar-global-controls .dlwe-home-clock-action{
  color:#fff!important;
  background:linear-gradient(135deg,#b76e78,#965661)!important;
  border-color:#c4818b!important;
  box-shadow:0 8px 18px rgba(183,110,120,.16)!important;
}

/* Final dark-button completion: cover anchors, labels and legacy named button families too. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(
  .dlwe-secondary-button,
  .dlwe-mini-button,
  .dlwe-compact-button,
  .dlwe-pagination-button,
  .dlwe-calendar-icon-button,
  .dlwe-icon-button,
  .dlwe-document-row-actions button,
  .dlwe-mobile-table-controls button,
  .dlwe-mobile-choice-dialog > header > button,
  .dlwe-launch-quick-links button,
  .dlwe-task-create-mode-switch button,
  .dlwe-home-action,
  a.dlwe-secondary-button,
  label.dlwe-secondary-button
){
  color:#efe6df!important;
  background:linear-gradient(145deg,#28211e,#1d1816)!important;
  border-color:#4d3e37!important;
  box-shadow:none!important;
}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main :is(
  .dlwe-secondary-button,
  .dlwe-mini-button,
  .dlwe-compact-button,
  .dlwe-pagination-button,
  .dlwe-calendar-icon-button,
  .dlwe-icon-button,
  .dlwe-document-row-actions button,
  .dlwe-mobile-table-controls button,
  .dlwe-launch-quick-links button,
  .dlwe-task-create-mode-switch button,
  .dlwe-home-action,
  a.dlwe-secondary-button,
  label.dlwe-secondary-button
):hover:not(:disabled){
  color:#fff8f3!important;
  background:linear-gradient(145deg,#372b27,#2b221f)!important;
  border-color:#76584f!important;
}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-primary-button:not(.dlwe-danger-button):not(.dlwe-delete-button){
  color:#fff!important;
  background:linear-gradient(135deg,#b76e78,#965661)!important;
  border-color:#c4818b!important;
  box-shadow:0 8px 18px rgba(183,110,120,.13)!important;
}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main .dlwe-primary-button:not(.dlwe-danger-button):not(.dlwe-delete-button):hover:not(:disabled){
  background:linear-gradient(135deg,#c37b86,#a55e69)!important;
  border-color:#d397a0!important;
}

/* Keep modal footers and icon actions dark even where legacy rules used !important white. */
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page :is(
  .dlwe-document-modal-card > form > footer,
  .dlwe-calendar-modal-actions,
  .dlwe-home-clock-modal .dlwe-home-clock-modal-actions,
  .dlwe-home-profile-modal .dlwe-home-profile-modal-actions
){background:#211b18!important;border-color:#493a34!important;}
html[data-dlwe-theme="dark"] body.dlwe-staff-portal-page :is(
  #dlwe-meeting-form-modal .dlwe-meeting-modal-footer .dlwe-secondary-button,
  #dlwe-document-modal .dlwe-document-modal-footer .dlwe-secondary-button,
  #dlwe-document-modal .dlwe-document-modal-header .dlwe-icon-button,
  .dlwe-user-delete-actions .dlwe-secondary-button
){
  color:#efe6df!important;
  background:#27211e!important;
  border-color:#4d3e37!important;
}

@media (max-width:1024px){
  .dlwe-portal-shell .dlwe-sidebar-global-controls{margin:10px 0 12px!important;padding:10px!important;border-radius:15px!important;}
  .dlwe-portal-shell .dlwe-sidebar-global-utilities{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-profile-trigger,
  .dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-header-workday{grid-column:1/-1!important;}
  .dlwe-portal-shell .dlwe-sidebar-global-utilities .dlwe-home-refresh-button{height:42px!important;}
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{margin-top:-10px!important;}
}

/* ========================================================================== 
   v7.4.7 — Light Luxury Polish + Sidebar Control Readability
   Keeps the approved dark-mode system intact while refining the light canvas,
   removing dashboard top whitespace and improving global-control legibility.
   ========================================================================== */

/* Dashboard greeting should meet the top content edge cleanly. Match the
   desktop main padding exactly rather than leaving an 8px remainder. */
@media (min-width:1025px){
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{
    margin-top:calc(-1 * clamp(30px, 3vw, 48px))!important;
  }
}
@media (min-width:621px) and (max-width:1024px){
  .dlwe-portal-shell .dlwe-panel[data-dlwe-panel="dashboard"] > .dlwe-home-executive-header{
    margin-top:-24px!important;
  }
}

/* Light mode: warm editorial ivory rather than pink/washed-out surfaces. */
html:not([data-dlwe-theme="dark"]) .dlwe-portal-shell{
  --dlwe-cream:#F7F4EE;
  --dlwe-surface:#FFFDF9;
  --dlwe-white:#FFFDF9;
  --dlwe-border:#DED4CB;
  --dlwe-border-light:#EEE7E0;
  --dlwe-muted:#766B65;
  --dlwe-pro-ink:#1D1817;
  --dlwe-pro-copy:#514945;
  --dlwe-pro-muted:#786D67;
  --dlwe-pro-canvas:#F7F4EE;
  --dlwe-pro-surface:#FFFDF9;
  --dlwe-pro-surface-strong:#FFFFFF;
  --dlwe-pro-line:#DED4CB;
  --dlwe-pro-line-soft:#EEE7E0;
  --dlwe-pro-accent-dark:#8B5B54;
  --dlwe-pro-accent-soft:#F2E8E3;
}
html:not([data-dlwe-theme="dark"]) body.dlwe-staff-portal-page .dlwe-portal-shell .dlwe-main{
  color:#211C1A!important;
  background:
    radial-gradient(circle at 98% -5%,rgba(200,173,126,.12),transparent 30rem),
    linear-gradient(180deg,#FBF9F5 0%,#F8F5EF 52%,#F6F2EC 100%)!important;
}
html:not([data-dlwe-theme="dark"]) body.dlwe-staff-portal-page .dlwe-portal-shell :is(
  .dlwe-home-card,.dlwe-card,.dlwe-table-card,.dlwe-form-section,.dlwe-home-metric,
  .dlwe-summary-card,.dlwe-stat-card,.dlwe-kpi-card
){
  background:#FFFDF9!important;
  border-color:#DED4CB!important;
  box-shadow:0 12px 30px rgba(50,39,33,.045)!important;
}
html:not([data-dlwe-theme="dark"]) body.dlwe-staff-portal-page .dlwe-portal-shell :is(input,select,textarea){
  background:#FFFDF9!important;
  border-color:#D9CEC5!important;
  color:#2B2421!important;
}
html:not([data-dlwe-theme="dark"]) body.dlwe-staff-portal-page .dlwe-portal-shell :is(input,select,textarea):focus{
  border-color:#B88A80!important;
  box-shadow:0 0 0 3px rgba(183,110,120,.10)!important;
}

/* Sidebar is always dark, so its global controls must use a dark luxury
   surface in BOTH application themes. This avoids low-contrast brown-on-black
   labels when the main canvas is in Light mode. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls{
  margin:16px 0 20px!important;
  padding:13px!important;
  border:1px solid rgba(200,173,126,.30)!important;
  border-radius:17px!important;
  background:
    radial-gradient(circle at 100% 0,rgba(183,110,120,.10),transparent 55%),
    linear-gradient(145deg,#211B18 0%,#171311 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 16px 32px rgba(0,0,0,.22)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-control-label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  margin:0 1px 11px!important;
  color:#D5B77F!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.17em!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-control-label::after{
  content:"";
  height:1px;
  flex:1 1 auto;
  background:linear-gradient(90deg,rgba(200,173,126,.38),rgba(200,173,126,0));
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-global-preferences{
  grid-template-columns:minmax(0,1fr) 74px!important;
  gap:8px!important;
  margin-bottom:9px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls :is(
  .dlwe-luxury-theme-toggle,.dlwe-language-trigger,.dlwe-home-profile-trigger,
  .dlwe-home-header-time,.dlwe-home-header-workday,.dlwe-home-refresh-button
){
  color:#EADFD7!important;
  background:linear-gradient(145deg,#1D1816,#161210)!important;
  border:1px solid #463831!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls :is(
  .dlwe-luxury-theme-toggle,.dlwe-language-trigger
){
  height:38px!important;
  min-height:38px!important;
  border-radius:11px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle{
  justify-content:flex-start!important;
  gap:6px!important;
  padding:5px 8px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-sun,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-moon{
  color:#CFC0B6!important;
  opacity:.85!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-state{
  color:#F0E5DE!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-track{
  border-color:#6A574C!important;
  background:#2B231F!important;
}

/* Language control: visibly separate the code and chevron; popover belongs to
   the dark sidebar rather than switching to a bright white card. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-trigger{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-width:74px!important;
  padding:5px 9px!important;
  border-left:1px solid #463831!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-current{
  color:#F2E7E0!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.07em!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-chevron{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:15px!important;
  height:15px!important;
  margin-left:1px!important;
  color:#C8AD7E!important;
  opacity:.95!important;
  font-size:10px!important;
  transform:translateY(-1px)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover{
  width:226px!important;
  padding:9px!important;
  border-color:#4A3B34!important;
  background:rgba(24,20,18,.985)!important;
  box-shadow:0 22px 52px rgba(0,0,0,.34)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover::before{
  border-color:#4A3B34!important;
  background:#181412!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover-label{
  color:#AA9A8F!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover button{
  color:#E8DDD5!important;
  background:transparent!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover button:hover{
  background:#28211E!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover button.is-active{
  background:linear-gradient(135deg,rgba(183,110,120,.18),rgba(200,173,126,.09))!important;
  box-shadow:inset 0 0 0 1px rgba(217,152,163,.20)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover strong{
  color:#F6ECE6!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover small{
  color:#A7978D!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-option-code{
  color:#D6B981!important;
}

/* Utility content: improve hierarchy/readability on the permanently dark rail. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-profile-copy strong,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-workday-copy strong,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-header-time strong{
  color:#F7EEE8!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-profile-copy small,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-workday-copy small,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-header-time span,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-header-time small{
  color:#B9AAA0!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-profile-chevron{
  color:#C8AD7E!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-profile-trigger:hover,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-trigger:hover,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle:hover,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-refresh-button:hover{
  color:#FFF8F3!important;
  background:linear-gradient(145deg,#2A211E,#201916)!important;
  border-color:#72564D!important;
}

/* Refresh: generated icon and text are distinct flex items with deliberate gap. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-utilities .dlwe-home-refresh-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  color:#E9DED6!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.10em!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-utilities .dlwe-home-refresh-button::before{
  content:"↻"!important;
  display:inline-block!important;
  flex:0 0 auto!important;
  margin:0!important;
  font-size:15px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
}

/* Keep primary attendance action luxurious and unmistakable in both themes. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-home-clock-action{
  color:#FFF!important;
  background:linear-gradient(135deg,#B76E78,#945862)!important;
  border-color:#C7838D!important;
  box-shadow:0 8px 18px rgba(183,110,120,.16)!important;
}


/* ========================================================================
   v7.4.8 — Native Shell Zero-Offset + Sidebar Toggle / Language Fit
   ======================================================================== */

/* Native app shell: remove any WordPress/admin-bar/theme offset before the
   application starts. The native template also repeats this after wp_head so
   late WordPress admin-bar CSS cannot re-introduce the gap. */
html:has(body.dlwe-native-app-page),
body.dlwe-native-app-page{
  margin-top:0!important;
  padding-top:0!important;
}
body.dlwe-native-app-page .dlwe-portal-shell{
  margin-top:0!important;
  top:0!important;
}
body.dlwe-native-app-page .dlwe-portal-shell .dlwe-sidebar{
  top:0!important;
  height:100dvh!important;
  max-height:100dvh!important;
}

/* Portal Control row — two balanced controls instead of one squeezed theme
   control beside a tiny language button. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-global-preferences{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:9px!important;
  width:100%!important;
  overflow:visible!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language{
  position:static!important;
  min-width:0!important;
  width:100%!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-trigger{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  padding:0 12px!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}
/* Show only the icon relevant to the current mode, avoiding the previous
   sun + switch + moon + label collision. */
html:not([data-dlwe-theme="dark"]) .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-moon,
html[data-dlwe-theme="dark"] .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-sun{
  display:none!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-sun,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-moon{
  flex:0 0 auto!important;
  font-size:14px!important;
  line-height:1!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-track{
  flex:0 0 30px!important;
  width:30px!important;
  min-width:30px!important;
  height:17px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-theme-state{
  flex:0 1 auto!important;
  min-width:0!important;
  font-size:10px!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-trigger{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  border-left:1px solid #463831!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-current{
  min-width:0!important;
  font-size:10px!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-chevron{
  flex:0 0 auto!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  transform:none!important;
}

/* The language popover belongs to the full two-control row. This keeps the
   dropdown entirely inside the sidebar card at every desktop sidebar width. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover{
  left:0!important;
  right:0!important;
  top:48px!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box!important;
  z-index:10040!important;
  padding:10px!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover::before{
  left:auto!important;
  right:30px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover button{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  padding:10px 11px!important;
  border-radius:10px!important;
  text-align:left!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-option-code{
  min-width:0!important;
  font-size:10px!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover button > span:last-child{
  min-width:0!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover strong,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover small{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Slightly more legible control heading without making the card louder. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-control-label{
  color:#DFC48E!important;
  font-size:9.5px!important;
  letter-spacing:.15em!important;
}

@media (max-width:720px){
  .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-global-preferences{
    grid-template-columns:1fr 1fr!important;
  }
  .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-popover{
    top:48px!important;
  }
}

/* ========================================================================
   v7.4.9 — Flag Language Toggle + Local Time Optical Alignment
   ======================================================================== */
/* Language now mirrors the theme control: one compact two-state switch,
   no dropdown/popover that can escape the sidebar card. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-global-preferences{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:9px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language-toggle{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  padding:0 11px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border:1px solid #463831!important;
  border-radius:12px!important;
  color:#d9cec6!important;
  background:#1b1715!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  cursor:pointer!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-flag{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:20px!important;
  font-size:15px!important;
  line-height:1!important;
  opacity:.38!important;
  filter:saturate(.78)!important;
  transition:opacity .18s ease,filter .18s ease,transform .18s ease!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track{
  position:relative!important;
  flex:0 0 34px!important;
  width:34px!important;
  height:18px!important;
  border:1px solid rgba(200,173,126,.42)!important;
  border-radius:999px!important;
  background:#100e0d!important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.34)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track i{
  position:absolute!important;
  top:2px!important;
  left:2px!important;
  width:12px!important;
  height:12px!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#d998a3,#b76e78)!important;
  box-shadow:0 1px 4px rgba(0,0,0,.32)!important;
  transition:transform .2s ease!important;
}
html[data-dlwe-language="en"] .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-flag-en,
html:not([data-dlwe-language="vi"]) .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-flag-en{
  opacity:1!important;
  filter:none!important;
  transform:scale(1.04)!important;
}
html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-flag-vi{
  opacity:1!important;
  filter:none!important;
  transform:scale(1.04)!important;
}
html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track i{
  transform:translateX(16px)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language-toggle:hover{
  color:#fff!important;
  border-color:#72564d!important;
  background:linear-gradient(145deg,#2a211e,#201916)!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language-toggle:focus{
  outline:none!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language-toggle:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 2px rgba(183,110,120,.24),inset 0 1px 0 rgba(255,255,255,.03)!important;
}

/* Local Time: label + date form one left stack; the clock occupies the full
   right column and is optically centered through both rows. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-utilities .dlwe-home-header-time{
  min-height:58px!important;
  padding:9px 11px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:3px!important;
  align-items:center!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-utilities .dlwe-home-header-time > span{
  grid-column:1!important;
  grid-row:1!important;
  align-self:end!important;
  margin:0!important;
  line-height:1.15!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-utilities .dlwe-home-header-time > small{
  grid-column:1!important;
  grid-row:2!important;
  align-self:start!important;
  margin:0!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-utilities .dlwe-home-header-time > strong{
  grid-column:2!important;
  grid-row:1 / 3!important;
  align-self:center!important;
  justify-self:end!important;
  margin:0!important;
  font-size:18px!important;
  line-height:1!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}

/* Keep the same flag-toggle affordance wherever global preferences are reused. */
.dlwe-global-preferences .dlwe-luxury-language-toggle{
  appearance:none;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:4px 9px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#5f544c;
  cursor:pointer;
}
.dlwe-global-preferences .dlwe-luxury-language-toggle .dlwe-language-track{
  position:relative;
  display:inline-block;
  width:31px;
  height:17px;
  border:1px solid #d7c9bf;
  border-radius:999px;
  background:#eee8e1;
}
.dlwe-global-preferences .dlwe-luxury-language-toggle .dlwe-language-track i{
  position:absolute;
  top:2px;
  left:2px;
  width:11px;
  height:11px;
  border-radius:50%;
  background:#b76e78;
  transition:transform .2s ease;
}
html[data-dlwe-language="vi"] .dlwe-global-preferences .dlwe-luxury-language-toggle .dlwe-language-track i{transform:translateX(14px);}
html[data-dlwe-theme="dark"] .dlwe-global-preferences .dlwe-luxury-language-toggle{color:#d8cbc2;}
html[data-dlwe-theme="dark"] .dlwe-global-preferences .dlwe-luxury-language-toggle .dlwe-language-track{border-color:#4a3b35;background:#171311;}

/* ========================================================================
   v7.4.10 — Single Active Flag Language Toggle
   ======================================================================== */
/* Match the language control to the appearance toggle: one active symbol
   plus one compact switch. The inactive language flag is never shown. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language-toggle{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  padding:0 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  overflow:hidden!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-active-flag{
  flex:0 0 22px!important;
  width:22px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:16px!important;
  line-height:1!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track{
  flex:0 0 30px!important;
  width:30px!important;
  min-width:30px!important;
  height:17px!important;
  margin:0!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track i{
  width:11px!important;
  height:11px!important;
  top:2px!important;
  left:2px!important;
}
html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track i{
  transform:translateX(13px)!important;
}
/* Retire the old dual-flag layout if stale cached markup is briefly present. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-flag-en,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-flag-vi{
  display:none!important;
}


/* ========================================================================
   v7.4.11 — Deterministic Single-Flag Language Control
   ======================================================================== */
/* The sidebar markup now server-renders the current active flag. Keep the
   language affordance optically identical to the appearance affordance. */
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-global-preferences{
  align-items:stretch!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-theme-toggle,
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-luxury-language-toggle{
  height:40px!important;
  min-height:40px!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  overflow:visible!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-active-flag{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 22px!important;
  width:22px!important;
  min-width:22px!important;
  height:22px!important;
  align-items:center!important;
  justify-content:center!important;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif!important;
  font-size:17px!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-indent:0!important;
  color:initial!important;
  filter:none!important;
  transform:none!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track{
  display:inline-block!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 34px!important;
  width:34px!important;
  min-width:34px!important;
  height:18px!important;
}
.dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track i{
  width:12px!important;
  height:12px!important;
  top:2px!important;
  left:2px!important;
}
html[data-dlwe-language="vi"] .dlwe-portal-shell .dlwe-sidebar .dlwe-sidebar-global-controls .dlwe-language-track i{
  transform:translateX(16px)!important;
}


/* v7.4.12 — one global Refresh control in the sidebar.
   Page-specific refresh controls stay in the DOM so their established handlers
   can be invoked by the sidebar button, but duplicate buttons are not rendered. */
.dlwe-portal-shell [data-dlwe-panel] :is(button,a)[id*="refresh"]:not(#dlwe-home-refresh){
  display:none!important;
}
.dlwe-portal-shell .dlwe-sidebar-global-controls #dlwe-home-refresh{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
