/* ═══════════════════════════════════════════════════════════════════
   admin-enhancements.css — UX/UI polish for the CDV admin portal
   Same colour palette. Better transitions, cards, forms, interactions.
   ═══════════════════════════════════════════════════════════════════ */

/* ── Global transition timing upgrade ──────────────────────────── */
.adminlite-shell * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ── Buttons — more satisfying states ──────────────────────────── */
.button-primary,
.button-secondary,
.button-ghost {
  transition:
    background 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
    box-shadow 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
    transform   200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
    border-color 200ms ease;
  letter-spacing: 0.01em;
}

.button-primary {
  background: linear-gradient(135deg, #026b84 0%, #024d5e 100%);
  box-shadow:
    0 1px 2px rgba(2, 77, 94, 0.1),
    0 4px 12px rgba(2, 77, 94, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.button-primary:hover {
  background: linear-gradient(135deg, #027d9a 0%, #026b84 100%);
  transform: translateY(-2px);
  box-shadow:
    0 2px 4px rgba(2, 77, 94, 0.1),
    0 10px 28px rgba(2, 77, 94, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.button-primary:active {
  transform: translateY(0);
  box-shadow:
    0 1px 2px rgba(2, 77, 94, 0.12),
    0 4px 10px rgba(2, 77, 94, 0.14);
}

.button-primary:focus-visible {
  outline: 2px solid rgba(119, 194, 206, 0.6);
  outline-offset: 3px;
}

.button-secondary {
  background: rgba(2, 77, 94, 0.07);
  border: 1px solid rgba(2, 77, 94, 0.1);
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.button-secondary:hover {
  background: rgba(2, 77, 94, 0.11);
  border-color: rgba(2, 77, 94, 0.18);
  transform: translateY(-1px);
}

.button-secondary:active {
  transform: translateY(0);
}

.button-secondary:focus-visible {
  outline: 2px solid rgba(119, 194, 206, 0.5);
  outline-offset: 3px;
}

/* ── Sidebar — left accent indicator + smoother items ──────────── */
.adminlite-sidebar-item {
  position: relative;
  transition: background 160ms ease, color 160ms ease, padding-left 160ms ease;
  border-left: 2px solid transparent;
}

.adminlite-sidebar-item:hover {
  background: rgba(255, 255, 255, 0.09);
  color: rgba(255, 255, 255, 0.92);
  padding-left: 14px;
  border-left-color: rgba(119, 194, 206, 0.3);
}

.adminlite-sidebar-item.is-active {
  background: rgba(119, 194, 206, 0.14);
  color: #77c2ce;
  border-left: 2px solid #77c2ce;
  padding-left: 14px;
  font-weight: 600;
}

.adminlite-sidebar-item.is-active .adminlite-sidebar-badge {
  background: rgba(119, 194, 206, 0.18);
  color: rgba(119, 194, 206, 0.9);
}

.adminlite-sidebar-logout {
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.adminlite-sidebar-logout:hover {
  transform: translateY(-1px);
}

/* ── Topbar ─────────────────────────────────────────────────────── */
.adminlite-topbar {
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

/* ── Core panels / blocks — richer depth + smooth hover ─────────── */
.adminlite-block,
.adminlite-panel,
.adminlite-subcard,
.adminlite-panel-timeline {
  transition:
    box-shadow 240ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
    border-color 240ms ease,
    transform 240ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow:
    0 1px 3px rgba(8, 55, 68, 0.04),
    0 6px 20px rgba(8, 55, 68, 0.06);
  border: 1px solid rgba(2, 77, 94, 0.08);
}

/* ── Hero section — polished gradient ──────────────────────────── */
.adminlite-hero {
  background:
    radial-gradient(circle at 92% 8%, rgba(119, 194, 206, 0.14), transparent 32%),
    linear-gradient(135deg, rgba(246, 250, 252, 0.99), rgba(240, 248, 250, 0.97));
  border: 1px solid rgba(2, 77, 94, 0.07);
  box-shadow:
    0 1px 3px rgba(8, 55, 68, 0.03),
    0 8px 24px rgba(8, 55, 68, 0.06);
  transition: box-shadow 240ms ease;
}

/* ── Quick cards (home) — buttery hover ──────────────────────────── */
.adminlite-quick-card {
  transition:
    transform 260ms cubic-bezier(0.34, 1.26, 0.64, 1),
    border-color 240ms ease,
    box-shadow 260ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow:
    0 2px 8px rgba(9, 60, 75, 0.05),
    0 10px 28px rgba(9, 60, 75, 0.07);
  border: 1px solid rgba(2, 77, 94, 0.08);
}

.adminlite-quick-card:hover {
  transform: translateY(-4px) scale(1.005);
  border-color: rgba(2, 77, 94, 0.15);
  box-shadow:
    0 4px 12px rgba(9, 60, 75, 0.07),
    0 20px 44px rgba(9, 60, 75, 0.11);
}

.adminlite-quick-card:active {
  transform: translateY(-1px) scale(1.002);
}

.adminlite-quick-link {
  font-weight: 700;
  transition: gap 200ms ease, color 200ms ease;
}

/* ── Membership selector cards ───────────────────────────────────── */
.adminlite-membership-card {
  transition:
    transform 220ms cubic-bezier(0.34, 1.26, 0.64, 1),
    border-color 200ms ease,
    box-shadow 220ms ease;
}

.adminlite-membership-card:hover,
.adminlite-membership-card:focus-visible {
  transform: translateY(-2px);
}

.adminlite-membership-card.is-active {
  transform: translateY(-1px);
}

/* ── Forms — polished focus states ───────────────────────────────── */
.adminlite-field span {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(75, 108, 118, 0.85);
  margin-bottom: 2px;
}

.adminlite-field input,
.adminlite-field select,
.adminlite-field textarea {
  border: 1.5px solid rgba(2, 77, 94, 0.12);
  background: rgba(255, 255, 255, 0.97);
  box-shadow:
    inset 0 1px 2px rgba(2, 77, 94, 0.04),
    0 1px 2px rgba(255, 255, 255, 0.8);
  transition:
    border-color 200ms ease,
    box-shadow 200ms ease,
    background 200ms ease,
    transform 150ms ease;
}

.adminlite-field input:hover,
.adminlite-field select:hover,
.adminlite-field textarea:hover {
  border-color: rgba(2, 77, 94, 0.2);
  background: rgba(255, 255, 255, 0.99);
}

.adminlite-field input:focus,
.adminlite-field select:focus,
.adminlite-field textarea:focus {
  border-color: rgba(2, 77, 94, 0.4);
  box-shadow:
    0 0 0 3.5px rgba(119, 194, 206, 0.22),
    inset 0 1px 2px rgba(2, 77, 94, 0.02);
  background: #ffffff;
  outline: none;
}

/* ── Table — refined hover + transitions ─────────────────────────── */
.adminlite-table-wrap {
  border: 1px solid rgba(2, 77, 94, 0.08);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.8),
    0 2px 8px rgba(8, 55, 68, 0.04);
  overflow: hidden;
}

.adminlite-table thead th {
  background: linear-gradient(180deg, rgba(238, 244, 246, 0.98), rgba(232, 241, 243, 0.96));
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  color: rgba(75, 108, 118, 0.8);
  padding: 13px 16px;
}

.adminlite-table tbody td {
  transition: background 140ms ease;
}

.adminlite-table tbody tr {
  transition: background 140ms ease;
}

.adminlite-table tbody tr:hover {
  background: rgba(236, 245, 247, 0.9);
}

/* ── Table action buttons ────────────────────────────────────────── */
.adminlite-table-button {
  transition:
    background 160ms ease,
    border-color 160ms ease,
    transform 160ms cubic-bezier(0.34, 1.26, 0.64, 1),
    box-shadow 160ms ease;
  border: 1px solid rgba(2, 77, 94, 0.1);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}

.adminlite-table-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 3px 10px rgba(2, 77, 94, 0.1);
  background: rgba(240, 248, 249, 0.98);
}

.adminlite-table-button:active {
  transform: translateY(0);
  box-shadow: none;
}

/* ── Status pills — slightly richer, badge-like ──────────────────── */
.adminlite-status-pill {
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  border: 1px solid transparent;
  transition: box-shadow 160ms ease, transform 160ms ease;
}

.adminlite-status-pill.is-active,
.adminlite-status-pill.is-approved,
.adminlite-status-pill.is-membership {
  background: rgba(47, 143, 91, 0.1);
  border-color: rgba(47, 143, 91, 0.18);
  color: #237a4a;
}

.adminlite-status-pill.is-pending,
.adminlite-status-pill.is-incomplete,
.adminlite-status-pill.is-global {
  background: rgba(198, 122, 35, 0.1);
  border-color: rgba(198, 122, 35, 0.2);
  color: #a85f12;
}

.adminlite-status-pill.is-expired,
.adminlite-status-pill.is-canceled,
.adminlite-status-pill.is-cancelada,
.adminlite-status-pill.is-rejected,
.adminlite-status-pill.is-none {
  background: rgba(182, 72, 61, 0.1);
  border-color: rgba(182, 72, 61, 0.2);
  color: #922e24;
}

.adminlite-status-pill.is-inactive {
  background: rgba(16, 55, 68, 0.06);
  border-color: rgba(16, 55, 68, 0.1);
  color: var(--ink-soft);
}

/* ── Chips ───────────────────────────────────────────────────────── */
.adminlite-chip,
.adminlite-tag {
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

/* ── Kicker labels — sharper visual hierarchy ───────────────────── */
.adminlite-kicker {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  color: rgba(2, 77, 94, 0.55);
  text-transform: uppercase;
}

/* ── Block/panel head separator ─────────────────────────────────── */
.adminlite-block-head,
.adminlite-panel-head,
.adminlite-subcard-head {
  border-bottom: 1px solid rgba(2, 77, 94, 0.07);
  padding-bottom: 14px;
  margin-bottom: 18px;
}

.adminlite-block-head h3,
.adminlite-panel-head h3,
.adminlite-subcard-head h4 {
  color: #0e3444;
  letter-spacing: -0.01em;
}

/* ── Analytics trend cards — polished ───────────────────────────── */
.adminlite-analytics-trend-card {
  transition:
    box-shadow 220ms ease,
    transform 220ms cubic-bezier(0.34, 1.26, 0.64, 1),
    border-color 220ms ease;
  border: 1px solid rgba(2, 77, 94, 0.08);
}

.adminlite-analytics-trend-card:hover {
  transform: translateY(-2px);
  box-shadow:
    0 4px 16px rgba(8, 55, 68, 0.08),
    0 1px 4px rgba(8, 55, 68, 0.04);
  border-color: rgba(2, 77, 94, 0.14);
}

/* ── Benefit cards ───────────────────────────────────────────────── */
.adminlite-benefit-card {
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background 180ms ease,
    transform 180ms cubic-bezier(0.34, 1.26, 0.64, 1);
}

.adminlite-benefit-card:hover:not(:disabled) {
  transform: translateY(-1px);
}

/* ── Quote option cards ──────────────────────────────────────────── */
.adminlite-quote-option-card {
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background 180ms ease,
    transform 180ms cubic-bezier(0.34, 1.26, 0.64, 1);
}

.adminlite-quote-option-card:hover {
  transform: translateY(-2px);
}

/* ── Period pills ────────────────────────────────────────────────── */
.adminlite-period-pill {
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
  font-weight: 500;
}

.adminlite-period-pill:hover {
  transform: translateY(-1px);
}

.adminlite-period-pill.active {
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(2, 77, 94, 0.18);
}

/* ── Inline/ghost buttons ────────────────────────────────────────── */
.adminlite-inline-button {
  transition: background 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.adminlite-inline-button:hover {
  transform: translateY(-1px);
}

/* Usage workspace: keep the beneficiary summary compact and prevent desktop overlap. */
#admin-usage-section-register .adminlite-overview-panel-head {
  align-items: flex-start;
}

.adminlite-usage-search-form {
  min-width: min(100%, 320px);
}

.adminlite-usage-search-controls {
  display: flex;
  flex: 1 1 auto;
  align-items: flex-end;
  gap: 10px;
  min-width: 0;
  flex-wrap: wrap;
}

.adminlite-usage-search-controls .adminlite-field {
  flex: 1 1 280px;
  min-width: min(100%, 260px);
  margin-bottom: 0;
}

.adminlite-usage-workspace {
  grid-template-columns: minmax(280px, 0.9fr) minmax(360px, 1.3fr);
  gap: 20px;
}

.adminlite-usage-summary,
.adminlite-usage-register-panel,
.adminlite-usage-capture-form,
.adminlite-usage-search-results {
  min-width: 0;
}

.adminlite-usage-beneficiary-card {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid rgba(2, 77, 94, 0.08);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(247, 251, 252, 0.96));
  box-shadow: 0 10px 24px rgba(9, 60, 75, 0.05);
}

.adminlite-usage-beneficiary-head {
  display: grid;
  gap: 10px;
}

.adminlite-usage-beneficiary-title h4 {
  margin: 4px 0 0;
  color: #013843;
  font-size: 1.08rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.adminlite-usage-beneficiary-codes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.adminlite-usage-beneficiary-facts {
  grid-template-columns: 1fr;
}

.adminlite-usage-benefit-snapshot {
  display: grid;
  gap: 8px;
}

.adminlite-usage-benefit-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid rgba(2, 77, 94, 0.08);
}

.adminlite-usage-benefit-line span {
  min-width: 0;
  color: #0e3444;
  font-size: 0.84rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.adminlite-usage-benefit-line strong {
  color: var(--brand-primary, #024d5e);
  font-size: 0.78rem;
  white-space: nowrap;
}

.adminlite-usage-register-panel .adminlite-form-actions,
.adminlite-usage-capture-grid {
  min-width: 0;
}

.adminlite-usage-capture-form .button-primary {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}

@media (max-width: 1100px) {
  .adminlite-usage-workspace {
    grid-template-columns: 1fr;
  }

  .adminlite-usage-summary {
    position: static;
  }
}

/* Reception usage console */
.adminlite-usage-reception-panel {
  background:
    linear-gradient(180deg, rgba(250, 252, 252, 0.99), rgba(243, 247, 248, 0.98));
}

.adminlite-usage-command-center {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(320px, 1.28fr);
  gap: 16px;
  align-items: end;
  padding: 16px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(242, 248, 249, 0.96));
  box-shadow: 0 10px 24px rgba(9, 60, 75, 0.05);
}

.adminlite-usage-command-copy {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.adminlite-usage-command-copy h3 {
  margin: 0;
  color: #073646;
  font-size: 1.35rem;
  line-height: 1.15;
}

.adminlite-usage-stats,
.adminlite-usage-register-head-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.adminlite-usage-stat {
  display: grid;
  gap: 2px;
  min-width: 92px;
  padding: 8px 10px;
  border: 1px solid rgba(2, 77, 94, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.adminlite-usage-stat span {
  color: rgba(75, 108, 118, 0.82);
  font-size: 0.66rem;
  font-weight: 800;
  text-transform: uppercase;
}

.adminlite-usage-stat strong {
  color: #073646;
  font-size: 0.9rem;
  line-height: 1.18;
}

.adminlite-usage-stat.ready {
  border-color: rgba(47, 143, 91, 0.22);
  background: rgba(237, 248, 242, 0.92);
}

.adminlite-usage-stat.warn {
  border-color: rgba(198, 122, 35, 0.26);
  background: rgba(255, 247, 235, 0.94);
}

.adminlite-usage-search-form {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.adminlite-usage-search-controls {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.adminlite-usage-search-controls .adminlite-field {
  margin: 0;
}

.adminlite-usage-workspace {
  grid-template-columns: minmax(290px, 0.78fr) minmax(420px, 1.22fr);
  gap: 16px;
  margin-top: 16px;
}

.adminlite-usage-summary {
  top: 76px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.adminlite-usage-beneficiary-card,
.adminlite-usage-register-panel {
  border-radius: 12px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(9, 60, 75, 0.05);
}

.adminlite-usage-beneficiary-card {
  padding: 16px;
}

.adminlite-usage-beneficiary-title h4 {
  font-size: 1.16rem;
}

.adminlite-usage-register-panel {
  padding: 16px;
}

.adminlite-usage-register-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(2, 77, 94, 0.08);
}

.adminlite-usage-register-head h4 {
  margin: 3px 0 0;
  font-size: 1.05rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.adminlite-benefit-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.adminlite-benefit-card {
  min-height: 112px;
  padding: 13px;
  border-radius: 10px;
  border: 1px solid rgba(2, 77, 94, 0.11);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 251, 252, 0.96));
  box-shadow: none;
}

.adminlite-benefit-card:hover:not(:disabled) {
  border-color: rgba(2, 77, 94, 0.3);
  box-shadow: 0 8px 18px rgba(9, 60, 75, 0.08);
}

.adminlite-benefit-card.active {
  border-color: #024d5e;
  background:
    linear-gradient(180deg, rgba(239, 248, 249, 0.98), rgba(255, 255, 255, 0.98));
  box-shadow: inset 0 0 0 1px rgba(2, 77, 94, 0.2), 0 8px 18px rgba(9, 60, 75, 0.08);
}

.adminlite-benefit-card-top {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: flex-start;
  min-width: 0;
}

.adminlite-benefit-card-name {
  min-width: 0;
  font-size: 0.94rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.adminlite-benefit-card-selected {
  flex: 0 0 auto;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(2, 77, 94, 0.1);
  color: #024d5e;
  font-size: 0.66rem;
  font-weight: 800;
  text-transform: uppercase;
}

.adminlite-benefit-card-bar {
  height: 6px;
}

.adminlite-usage-commit-card {
  padding: 14px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 10px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(244, 249, 250, 0.98));
}

.adminlite-usage-capture-form {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.adminlite-usage-capture-grid {
  grid-template-columns: minmax(120px, 0.65fr) repeat(3, minmax(150px, 1fr));
  gap: 12px;
}

.adminlite-usage-confirm-button {
  min-height: 48px;
  padding-inline: 22px;
  font-weight: 800;
}

.adminlite-usage-person-cell {
  display: grid;
  gap: 5px;
  min-width: 190px;
}

.adminlite-usage-person-cell strong {
  color: #073646;
  font-size: 0.9rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

#admin-usage-section-history .adminlite-table-wrap {
  max-height: 560px;
  overflow: auto;
}

#admin-usage-section-history .adminlite-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
}

@media (max-width: 1120px) {
  .adminlite-usage-command-center,
  .adminlite-usage-search-controls,
  .adminlite-usage-capture-grid {
    grid-template-columns: 1fr;
  }

  .adminlite-usage-register-head {
    display: grid;
  }
}

@media (max-width: 700px) {
  .adminlite-usage-command-center,
  .adminlite-usage-beneficiary-card,
  .adminlite-usage-register-panel {
    padding: 13px;
  }

  .adminlite-usage-stats,
  .adminlite-usage-register-head-meta,
  .adminlite-usage-command-center .adminlite-form-actions.compact {
    width: 100%;
  }

  .adminlite-usage-stat,
  .adminlite-usage-search-controls .button-primary,
  .adminlite-usage-search-controls .button-ghost,
  .adminlite-usage-confirm-button {
    width: 100%;
  }
}

/* Credential export workspace */
.adminlite-credential-workspace {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.adminlite-credential-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 18px;
  border: 1px solid rgba(2, 77, 94, 0.1);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(247, 251, 252, 0.99), rgba(236, 245, 247, 0.96));
  box-shadow: 0 10px 24px rgba(9, 60, 75, 0.05);
}

.adminlite-credential-hero h4,
.adminlite-credential-card h4 {
  margin: 0;
  color: #073646;
  line-height: 1.2;
}

.adminlite-credential-hero h4 {
  font-size: 1.18rem;
}

.adminlite-credential-hero p,
.adminlite-credential-card p,
.adminlite-credential-progress p {
  margin: 4px 0 0;
  color: rgba(38, 72, 84, 0.78);
  font-size: 0.88rem;
  line-height: 1.42;
  overflow-wrap: anywhere;
}

.adminlite-credential-format {
  display: grid;
  gap: 4px;
  min-width: 220px;
  padding: 12px 14px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
}

.adminlite-credential-format span {
  color: rgba(75, 108, 118, 0.82);
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
}

.adminlite-credential-format strong {
  color: #024d5e;
  font-size: 0.9rem;
  line-height: 1.25;
}

.adminlite-credential-grid {
  display: grid;
  grid-template-columns: minmax(280px, 1.2fr) repeat(2, minmax(220px, 0.8fr));
  gap: 14px;
  align-items: stretch;
}

.adminlite-credential-card {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 22px rgba(9, 60, 75, 0.05);
}

.adminlite-credential-card.primary {
  grid-row: span 2;
}

.adminlite-credential-card.all-active {
  border-color: rgba(2, 77, 94, 0.18);
  background: linear-gradient(180deg, #ffffff, rgba(247, 251, 252, 0.96));
}

.adminlite-credential-card-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  min-width: 0;
}

.adminlite-credential-card-head > div {
  min-width: 0;
}

.adminlite-credential-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 72px;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(2, 77, 94, 0.09);
  color: #024d5e;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.adminlite-credential-badge.family {
  background: rgba(47, 143, 91, 0.12);
  color: #246c47;
}

.adminlite-credential-badge.enterprise {
  background: rgba(198, 122, 35, 0.13);
  color: #875219;
}

.adminlite-credential-badge.all {
  background: rgba(2, 77, 94, 0.13);
  color: #024d5e;
}

.adminlite-credential-card .adminlite-form {
  margin: 0;
}

.adminlite-credential-card .adminlite-form-grid-toolbar {
  align-items: end;
}

.adminlite-credential-card .button-secondary,
.adminlite-credential-card .button-primary,
.adminlite-credential-card .button-ghost {
  width: fit-content;
  max-width: 100%;
}

.adminlite-credential-card .button-secondary:disabled,
.adminlite-credential-card .button-primary:disabled,
.adminlite-credential-card .button-ghost:disabled {
  cursor: not-allowed;
  opacity: 0.55;
  transform: none;
}

.adminlite-credential-progress {
  display: grid;
  gap: 8px;
  padding: 12px 14px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.92);
}

.adminlite-credential-progress[data-active="true"] {
  border-color: rgba(2, 77, 94, 0.22);
  box-shadow: 0 8px 20px rgba(2, 77, 94, 0.07);
}

.adminlite-credential-progress-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.adminlite-credential-progress-top strong {
  min-width: 0;
  color: #073646;
  font-size: 0.9rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.adminlite-credential-progress-top span {
  flex: 0 0 auto;
  color: rgba(75, 108, 118, 0.82);
  font-size: 0.78rem;
  font-weight: 800;
}

.adminlite-credential-progress-bar {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(2, 77, 94, 0.08);
}

.adminlite-credential-progress-bar span {
  display: block;
  height: 100%;
  min-width: 8px;
  border-radius: inherit;
  background: linear-gradient(90deg, #024d5e, #3a9db5);
  transition: width 240ms ease;
}

@media (max-width: 1100px) {
  .adminlite-credential-grid,
  .adminlite-credential-hero {
    grid-template-columns: 1fr;
  }

  .adminlite-credential-card.primary {
    grid-row: auto;
  }

  .adminlite-credential-format {
    min-width: 0;
  }
}

@media (max-width: 680px) {
  .adminlite-credential-card-head {
    display: grid;
  }

  .adminlite-credential-badge,
  .adminlite-credential-card .button-secondary,
  .adminlite-credential-card .button-ghost {
    width: 100%;
  }

  .adminlite-credential-progress-top {
    display: grid;
  }
}

/* Process step numbers */
.adminlite-process-step-number {
  background: linear-gradient(135deg, #024d5e, #116b82);
  box-shadow:
    0 4px 12px rgba(2, 77, 94, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

/* ── Summary / metric / info cards ──────────────────────────────── */
.adminlite-summary-card,
.adminlite-metric-card,
.adminlite-info-card {
  transition: box-shadow 220ms ease, border-color 220ms ease, transform 220ms cubic-bezier(0.34, 1.26, 0.64, 1);
  border: 1px solid rgba(2, 77, 94, 0.08);
}

.adminlite-summary-card:hover,
.adminlite-metric-card:hover,
.adminlite-info-card:hover {
  box-shadow:
    0 2px 8px rgba(8, 55, 68, 0.06),
    0 8px 24px rgba(8, 55, 68, 0.08);
  border-color: rgba(2, 77, 94, 0.13);
}

/* ── Anchor highlight — smoother ─────────────────────────────────── */
.adminlite-anchor-target {
  transition:
    border-color 280ms ease,
    box-shadow 280ms ease,
    background 280ms ease;
}

/* ── KPI items ───────────────────────────────────────────────────── */
.adminlite-kpi-item strong {
  font-size: 2rem;
  letter-spacing: -0.02em;
  color: #0b3546;
}

.adminlite-kpi-item span {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

/* ── Bar chart fill ──────────────────────────────────────────────── */
.adminlite-bar-fill {
  background: linear-gradient(90deg, #024d5e 0%, #3a9db5 100%);
  transition: width 600ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.adminlite-bar-track {
  border-radius: 999px;
  background: rgba(2, 77, 94, 0.07);
}

/* ── Sparklines ──────────────────────────────────────────────────── */
.adminlite-sparkline-line {
  stroke-width: 2.5;
}

.adminlite-sparkline-point {
  r: 4;
  filter: drop-shadow(0 2px 4px rgba(2, 77, 94, 0.2));
}

/* ── SIM workspace hero ──────────────────────────────────────────── */
.adminlite-sim-workspace-hero {
  background: linear-gradient(135deg, rgba(243, 248, 250, 0.99), rgba(236, 245, 248, 0.97));
}

/* ── Notices ─────────────────────────────────────────────────────── */
/* SIM operations console */
.adminlite-sim-command {
  display: grid;
  gap: 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(248, 252, 252, 0.99), rgba(239, 247, 249, 0.98));
}

.adminlite-sim-command-head {
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(420px, 1.22fr);
  gap: 18px;
  align-items: end;
}

.adminlite-sim-command-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.adminlite-sim-command-copy h3 {
  margin: 0;
  color: #073646;
  font-size: 1.45rem;
  line-height: 1.14;
}

.adminlite-sim-command-copy p:last-child {
  margin: 0;
  color: rgba(38, 72, 84, 0.78);
  font-size: 0.92rem;
  line-height: 1.45;
}

.adminlite-sim-command-stats,
.adminlite-sim-detail-overview {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 10px;
}

.adminlite-sim-detail-overview {
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  margin-bottom: 14px;
}

.adminlite-sim-stat {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.86);
}

.adminlite-sim-stat span {
  color: rgba(75, 108, 118, 0.84);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.adminlite-sim-stat strong {
  min-width: 0;
  color: #073646;
  font-size: 1rem;
  line-height: 1.18;
  overflow-wrap: anywhere;
}

.adminlite-sim-stat small {
  color: rgba(75, 108, 118, 0.8);
  font-size: 0.76rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.adminlite-sim-stat.success {
  border-color: rgba(47, 143, 91, 0.22);
  background: rgba(237, 248, 242, 0.92);
}

.adminlite-sim-stat.warning {
  border-color: rgba(198, 122, 35, 0.25);
  background: rgba(255, 247, 235, 0.94);
}

.adminlite-sim-stat.info {
  border-color: rgba(2, 77, 94, 0.16);
  background: rgba(241, 248, 249, 0.95);
}

.adminlite-sim-action-rail .adminlite-quick-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}

.adminlite-sim-action-rail .adminlite-quick-card {
  min-height: 178px;
  padding: 14px;
  border-radius: 12px;
}

.adminlite-sim-action-rail .adminlite-quick-card h3 {
  font-size: 0.98rem;
  line-height: 1.22;
}

.adminlite-sim-action-rail .adminlite-quick-card[data-value="consumption"] {
  border-color: rgba(2, 107, 132, 0.2);
  background:
    linear-gradient(135deg, rgba(2, 107, 132, 0.08), rgba(255, 255, 255, 0.98) 42%),
    #ffffff;
}

.adminlite-sim-action-rail .adminlite-quick-card[data-value="consumption"] .adminlite-quick-badge {
  background: rgba(2, 107, 132, 0.14);
  color: #024d5e;
}

.adminlite-sim-action-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 4px;
}

.adminlite-sim-action-tags span {
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(2, 77, 94, 0.07);
  color: rgba(38, 72, 84, 0.85);
  font-size: 0.66rem;
  font-weight: 800;
}

.adminlite-sim-create-panel .adminlite-panel-head p:last-child {
  margin: 5px 0 0;
  color: rgba(38, 72, 84, 0.78);
  font-size: 0.9rem;
}

.adminlite-sim-create-layout {
  display: grid;
  grid-template-columns: minmax(270px, 0.75fr) minmax(420px, 1.25fr);
  gap: 14px;
  align-items: stretch;
}

.adminlite-sim-pricing-rail,
.adminlite-sim-create-card,
.adminlite-sim-family-draft-card {
  min-width: 0;
}

.adminlite-sim-pricing-rail {
  display: grid;
  gap: 12px;
  align-content: start;
}

.adminlite-sim-create-card,
.adminlite-sim-family-draft-card {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 8px 22px rgba(9, 60, 75, 0.05);
}

.adminlite-sim-create-card h4 {
  margin: 2px 0 0;
  color: #073646;
  font-size: 1.04rem;
}

.adminlite-sim-family-draft-card {
  grid-column: 1 / -1;
}

.adminlite-sim-price-card {
  border-radius: 12px;
  border-color: rgba(2, 77, 94, 0.1);
  background: linear-gradient(135deg, rgba(241, 248, 249, 0.99), rgba(255, 255, 255, 0.98));
  box-shadow: 0 8px 20px rgba(9, 60, 75, 0.05);
}

.adminlite-sim-price-card strong {
  color: #024d5e;
}

.adminlite-sim-panel .adminlite-form-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 14px;
}

.adminlite-sim-usage-card .adminlite-form-grid {
  grid-template-columns: minmax(0, 1fr);
}

.adminlite-sim-usage-card .adminlite-field.span-2 {
  grid-column: span 1;
}

.adminlite-sim-primary-action {
  min-height: 48px;
  padding-inline: 22px;
  font-weight: 800;
}

.adminlite-sim-user-cell,
.adminlite-sim-coverage-cell {
  display: grid;
  gap: 5px;
  min-width: 190px;
}

.adminlite-sim-user-cell strong,
.adminlite-sim-coverage-cell strong {
  color: #073646;
  font-size: 0.9rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.adminlite-sim-coverage-cell span {
  color: rgba(75, 108, 118, 0.82);
  font-size: 0.78rem;
  line-height: 1.25;
}

.adminlite-sim-detail-empty {
  padding-top: 4px;
}

.adminlite-sim-workspace {
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(9, 60, 75, 0.05);
}

.adminlite-sim-workspace-hero {
  align-items: center;
  padding: 20px;
  background: linear-gradient(135deg, rgba(243, 248, 250, 0.99), rgba(255, 255, 255, 0.98));
}

.adminlite-sim-workspace-hero h4 {
  font-size: 1.34rem;
  overflow-wrap: anywhere;
}

.adminlite-sim-workspace-tabs {
  padding: 14px;
}

.adminlite-sim-workspace-tab {
  min-height: 62px;
  border-radius: 10px;
}

.adminlite-sim-tab-grid {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.82fr);
}

.adminlite-sim-overview-list div {
  border-radius: 10px;
}

.adminlite-sim-workspace-grid {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.82fr);
}

.adminlite-sim-section {
  padding: 20px;
}

.adminlite-sim-section-head h4 {
  font-size: 1.05rem;
}

.adminlite-sim-section .adminlite-table-wrap {
  margin-top: 2px;
}

@media (max-width: 1180px) {
  .adminlite-sim-command-head,
  .adminlite-sim-create-layout {
    grid-template-columns: 1fr;
  }

  .adminlite-sim-command-stats,
  .adminlite-sim-detail-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .adminlite-sim-tab-grid {
    grid-template-columns: 1fr;
  }

  .adminlite-sim-detail-shell {
    grid-template-columns: 1fr;
  }

  .adminlite-sim-workspace-tabs {
    flex-direction: row;
    overflow-x: auto;
    border-right: 0;
    border-bottom: 1px solid rgba(2, 77, 94, 0.08);
  }

  .adminlite-sim-workspace-tab {
    min-width: 136px;
    flex: 0 0 136px;
  }

  .adminlite-sim-tab-grid > .adminlite-sim-section + .adminlite-sim-section {
    border-left: 0;
    border-top: 1px solid rgba(2, 77, 94, 0.08);
  }

  .adminlite-sim-action-rail .adminlite-quick-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .adminlite-sim-command-stats,
  .adminlite-sim-detail-overview,
  .adminlite-sim-action-rail .adminlite-quick-grid {
    grid-template-columns: 1fr;
  }

  .adminlite-sim-command,
  .adminlite-sim-panel,
  .adminlite-sim-consumption-panel,
  .adminlite-sim-workspace,
  .adminlite-sim-section,
  .adminlite-sim-action-rail,
  .adminlite-sim-action-rail .adminlite-quick-grid,
  .adminlite-sim-action-rail .adminlite-quick-card {
    min-width: 0;
    max-width: 100%;
  }

  .adminlite-sim-command-copy h3,
  .adminlite-sim-command-copy p,
  .adminlite-sim-section-head h4 {
    overflow-wrap: anywhere;
  }

  .adminlite-sim-workspace-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }

  .adminlite-sim-workspace-tab {
    min-width: 0;
    width: 100%;
    flex: none;
  }

  .adminlite-sim-command,
  .adminlite-sim-create-card,
  .adminlite-sim-family-draft-card,
  .adminlite-sim-workspace-hero,
  .adminlite-sim-workspace-tabs,
  .adminlite-sim-section {
    padding: 14px;
  }

  .adminlite-sim-primary-action,
  .adminlite-sim-section .button-primary,
  .adminlite-sim-section .button-secondary {
    width: 100%;
  }
}

/* SIM task console redesign */
.adminlite-sim-command,
.adminlite-sim-panel,
.adminlite-sim-consumption-panel {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.adminlite-sim-task-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 10px;
  min-width: 0;
}

.adminlite-sim-task-button {
  min-width: 0;
  min-height: 92px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 14px;
  border: 1px solid rgba(2, 77, 94, 0.1);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.88);
  color: #073646;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 8px 18px rgba(9, 60, 75, 0.04);
  transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.adminlite-sim-task-button:hover,
.adminlite-sim-task-button:focus-visible {
  border-color: rgba(2, 107, 132, 0.26);
  background: #ffffff;
  box-shadow: 0 12px 24px rgba(9, 60, 75, 0.08);
  outline: none;
  transform: translateY(-1px);
}

.adminlite-sim-task-button.is-active {
  border-color: rgba(2, 107, 132, 0.36);
  background: linear-gradient(135deg, rgba(235, 247, 249, 0.98), rgba(255, 255, 255, 0.98));
  box-shadow: 0 14px 28px rgba(9, 60, 75, 0.1);
}

.adminlite-sim-task-badge,
.adminlite-sim-user-avatar {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  border-radius: 10px;
  background: rgba(2, 107, 132, 0.12);
  color: #024d5e;
  font-size: 0.74rem;
  font-weight: 900;
}

.adminlite-sim-task-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.adminlite-sim-task-copy span {
  color: rgba(75, 108, 118, 0.86);
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}

.adminlite-sim-task-copy strong {
  color: #073646;
  font-size: 0.94rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.adminlite-sim-task-copy small {
  color: rgba(38, 72, 84, 0.78);
  font-size: 0.78rem;
  line-height: 1.36;
  overflow-wrap: anywhere;
}

.adminlite-sim-picker-intro {
  display: grid;
  gap: 6px;
  padding: 16px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(247, 251, 252, 0.98), rgba(255, 252, 247, 0.94));
}

.adminlite-sim-picker-intro h4 {
  margin: 2px 0 6px;
  color: #073646;
  font-size: 1rem;
}

.adminlite-sim-picker-intro p:last-child {
  margin: 0;
  color: rgba(38, 72, 84, 0.78);
  line-height: 1.5;
}

.adminlite-sim-selected-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.adminlite-sim-card-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr));
  gap: 12px;
  min-width: 0;
}

.adminlite-sim-user-card {
  min-width: 0;
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(2, 77, 94, 0.09);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 8px 20px rgba(9, 60, 75, 0.05);
}

.adminlite-sim-user-card.is-inactive {
  background: linear-gradient(180deg, rgba(255, 252, 247, 0.96), rgba(255, 255, 255, 0.94));
}

.adminlite-sim-user-card-main,
.adminlite-sim-user-card-title,
.adminlite-sim-user-card-foot {
  display: flex;
  gap: 12px;
  min-width: 0;
}

.adminlite-sim-user-card-main,
.adminlite-sim-user-card-foot {
  align-items: flex-start;
  justify-content: space-between;
}

.adminlite-sim-user-card-title {
  align-items: flex-start;
  flex: 1 1 auto;
}

.adminlite-sim-user-card-title h4 {
  margin: 0 0 6px;
  color: #073646;
  font-size: 1rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}

.adminlite-sim-user-identifiers,
.adminlite-sim-user-status,
.adminlite-sim-user-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.adminlite-sim-user-status {
  justify-content: flex-end;
}

.adminlite-sim-user-card-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.adminlite-sim-user-card-meta div {
  min-width: 0;
  padding: 10px;
  border-radius: 10px;
  background: rgba(241, 248, 249, 0.78);
}

.adminlite-sim-user-card-meta span {
  display: block;
  color: rgba(75, 108, 118, 0.84);
  font-size: 0.66rem;
  font-weight: 850;
  text-transform: uppercase;
}

.adminlite-sim-user-card-meta strong {
  display: block;
  margin-top: 3px;
  color: #073646;
  font-size: 0.9rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.adminlite-sim-user-card-foot small {
  flex: 1 1 180px;
  color: rgba(38, 72, 84, 0.78);
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.adminlite-sim-user-actions {
  justify-content: flex-end;
}

.adminlite-sim-card-action {
  min-height: 38px;
  padding: 8px 12px;
  border: 1px solid rgba(2, 77, 94, 0.12);
  border-radius: 10px;
  background: #ffffff;
  color: #024d5e;
  font-size: 0.78rem;
  font-weight: 850;
  cursor: pointer;
  white-space: nowrap;
}

.adminlite-sim-card-action.primary {
  border-color: rgba(2, 107, 132, 0.2);
  background: #026b84;
  color: #ffffff;
}

.adminlite-sim-card-action.danger {
  border-color: rgba(151, 44, 44, 0.18);
  color: #8d2929;
}

.adminlite-sim-card-action:hover,
.adminlite-sim-card-action:focus-visible {
  border-color: rgba(2, 107, 132, 0.28);
  box-shadow: 0 0 0 3px rgba(119, 194, 206, 0.16);
  outline: none;
}

.adminlite-sim-panel .adminlite-form-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
}

.adminlite-sim-panel .adminlite-field.span-2 {
  grid-column: 1 / -1;
}

@media (max-width: 760px) {
  .adminlite-sim-card-list,
  .adminlite-sim-selected-summary {
    grid-template-columns: minmax(0, 1fr);
  }

  .adminlite-sim-task-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .adminlite-sim-task-button {
    grid-template-columns: minmax(0, 1fr);
    min-height: 82px;
    padding: 12px;
  }

  .adminlite-sim-task-copy small {
    display: none;
  }

  .adminlite-sim-task-copy strong {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-size: 0.86rem;
  }

  .adminlite-sim-panel .adminlite-panel-head {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .adminlite-sim-panel .adminlite-panel-head .adminlite-inline-button {
    align-self: stretch;
    justify-content: center;
  }

  .adminlite-sim-user-card {
    padding: 14px;
  }

  .adminlite-sim-user-card-main,
  .adminlite-sim-user-card-foot {
    flex-direction: column;
    align-items: stretch;
  }

  .adminlite-sim-user-card-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .adminlite-sim-user-status,
  .adminlite-sim-user-actions {
    justify-content: flex-start;
  }

  .adminlite-sim-card-action {
    flex: 1 1 auto;
    white-space: normal;
  }
}

@media (max-width: 430px) {
  .adminlite-sim-task-button {
    grid-template-columns: minmax(0, 1fr);
  }

  .adminlite-sim-user-card-meta {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 360px) {
  .adminlite-sim-task-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.adminlite-notice {
  border-left: 3px solid rgba(2, 77, 94, 0.2);
  border-radius: 12px;
  transition: box-shadow 180ms ease;
}

.adminlite-notice[data-tone="warning"] {
  border-left-color: rgba(198, 122, 35, 0.5);
}

.adminlite-notice[data-tone="success"] {
  border-left-color: rgba(47, 143, 91, 0.5);
}

/* ── Empty states ────────────────────────────────────────────────── */
.adminlite-empty-state,
.adminlite-empty-inline {
  border-radius: 14px;
  font-size: 0.92rem;
}

/* ── Danger callout ──────────────────────────────────────────────── */
.adminlite-danger-callout {
  border-left: 3px solid rgba(182, 72, 61, 0.4);
}

/* ── Table wrap scrollbar ────────────────────────────────────────── */
.adminlite-table-wrap::-webkit-scrollbar {
  height: 5px;
}

.adminlite-table-wrap::-webkit-scrollbar-track {
  background: rgba(2, 77, 94, 0.04);
}

.adminlite-table-wrap::-webkit-scrollbar-thumb {
  background: rgba(2, 77, 94, 0.14);
  border-radius: 999px;
}

.adminlite-table-wrap::-webkit-scrollbar-thumb:hover {
  background: rgba(2, 77, 94, 0.24);
}

/* ── Sidebar scrollbar ───────────────────────────────────────────── */
.adminlite-sidebar::-webkit-scrollbar {
  width: 4px;
}

.adminlite-sidebar::-webkit-scrollbar-track {
  background: transparent;
}

.adminlite-sidebar::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 999px;
}

/* ── Responsive ──────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .adminlite-shell *,
  .button-primary,
  .button-secondary,
  .button-ghost {
    transition-duration: 0ms !important;
    animation-duration: 0ms !important;
  }
}
