/* =======================================================
   PGES - PLANEJAMENTO E GESTÃO ESTRATÉGICA
   Arquivo: style.css
   ======================================================= */

/* === PGES-GLOBAL-RESET (START) ========================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

:root {
  --ink: #142338;
  --muted: #617186;
  --line: #dbe4ee;
  --line-strong: #c9d5e4;
  --soft: #f4f7fb;
  --soft-2: #edf2f8;
  --soft-3: #f9fbfe;
  --paper: #ffffff;
  --accent: #2755a7;
  --accent-2: #3b73d8;
  --accent-3: #17396f;
  --accent-soft: rgba(59, 115, 216, 0.12);
  --accent-soft-strong: rgba(59, 115, 216, 0.18);
  --shadow-sm: 0 10px 24px rgba(15, 23, 42, 0.05);
  --shadow-md: 0 18px 40px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 28px 64px rgba(15, 23, 42, 0.1);
  --radius-card: 22px;
  --radius-soft: 16px;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  font-family: "Manrope", "Segoe UI", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at top, rgba(255, 255, 255, 0.82) 0%, rgba(255, 255, 255, 0) 38%),
    linear-gradient(180deg, #f7f9fc 0%, #f3f6fb 46%, #edf2f8 100%);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img {
  max-width: 100%;
  display: block;
}

button {
  font-family: inherit;
  cursor: pointer;
}

.hidden {
  display: none !important;
}

/* === PGES-GLOBAL-RESET (END) =========================== */


/* === PGES-LAYOUT-SHELL (START) ========================= */

main {
  padding: 1.5rem 1rem 3rem;
}

header {
  position: sticky;
  top: 0;
  z-index: 30;
  background:
    linear-gradient(135deg, rgba(18, 40, 78, 0.96), rgba(24, 52, 97, 0.95) 58%, rgba(39, 85, 167, 0.92));
  color: #eff4fb;
  border-bottom: 1px solid rgba(226, 232, 240, 0.14);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.14);
  backdrop-filter: blur(10px);
}

header .wrapper {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0.75rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

header h1 {
  margin: 0;
  font-size: 1.08rem;
  font-weight: 700;
  letter-spacing: -0.025em;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

header h1 i {
  color: #8bb5ff;
}

.header-brand-btn {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background: transparent;
  border: 0;
  padding: 0;
  color: inherit;
  cursor: pointer;
  border-radius: 12px;
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.header-brand-btn:hover {
  opacity: 0.94;
  transform: translateY(-1px);
}

.header-brand-btn:focus-visible {
  outline: 2px solid rgba(139, 181, 255, 0.9);
  outline-offset: 4px;
}

#header-buttons {
  display: flex;
  align-items: center;
  gap: 1rem;
}

#header-buttons > * {
  min-width: 0;
}

.pges-app-header__inner,
.pges-app-header__actions,
.operations-page-header__actions {
  min-width: 0;
}

footer {
  border-top: 1px solid rgba(201, 213, 228, 0.78);
  background: rgba(248, 250, 252, 0.82);
  color: #64748b;
  font-size: 0.8rem;
  padding: 0.4rem 1rem;
}

footer .wrapper {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* === PGES-LAYOUT-SHELL (END) =========================== */


/* === PGES-CARDS-AND-CONTAINERS (START) ================= */

.card {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,251,255,0.98));
  border-radius: 26px;
  padding: 1.55rem;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.06);
  border: 1px solid rgba(215, 224, 235, 0.9);
}

.dynamic-card,
.plan-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 252, 255, 0.95));
  border-radius: 18px;
  border: 1px solid rgba(216, 224, 234, 0.88);
  padding: 1.05rem 1.25rem;
  position: relative;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.045);
}

.plan-card {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.remove-card-btn {
  position: absolute;
  top: 0.6rem;
  right: 0.6rem;
  border: none;
  background: transparent;
  color: #cbd5f5;
  font-size: 0.9rem;
  padding: 0;
}

.remove-card-btn:hover {
  color: #ef4444;
}

/* === PGES-CARDS-AND-CONTAINERS (END) =================== */


/* === PGES-FORMS-INPUTS (START) ========================= */

.input-field,
.textarea-field,
.select-field {
  width: 100%;
  border-radius: 14px;
  border: 1px solid var(--line-strong);
  padding: 0.82rem 0.95rem;
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--ink);
  background: rgba(252, 253, 255, 0.96);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.input-field:focus,
.textarea-field:focus,
.select-field:focus {
  outline: none;
  border-color: var(--accent-2);
  background: rgba(255, 255, 255, 1);
  box-shadow: 0 0 0 1px rgba(59, 115, 216, 0.9), 0 0 0 4px rgba(59, 115, 216, 0.12);
}

.textarea-field {
  resize: vertical;
  min-height: 6rem;
}

.input-field::placeholder,
.textarea-field::placeholder {
  color: #94a3b8;
}

/* === PGES-FORMS-INPUTS (END) =========================== */


/* === PGES-BUTTONS (START) ============================== */

.primary-btn,
.secondary-btn,
.danger-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border-radius: 14px;
  border: 1px solid transparent;
  padding: 0.76rem 1.08rem;
  font-size: 0.88rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  gap: 0.4rem;
  transition: background-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease, transform 0.12s ease, border-color 0.16s ease;
}

.primary-btn {
  background: linear-gradient(135deg, var(--accent-2), var(--accent) 72%);
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(39, 85, 167, 0.2);
}

.primary-btn:hover {
  background: linear-gradient(135deg, #457ce2, #2956a6);
  transform: translateY(-1px);
  box-shadow: 0 16px 28px rgba(39, 85, 167, 0.22);
}

.secondary-btn {
  background: rgba(255, 255, 255, 0.94);
  color: var(--ink);
  border-color: rgba(207, 217, 229, 0.94);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.secondary-btn:hover {
  background: rgba(249, 251, 255, 0.98);
  border-color: rgba(148, 163, 184, 0.48);
  transform: translateY(-1px);
}

.danger-btn {
  background: rgba(255, 244, 246, 0.96);
  color: #b4233d;
  border-color: rgba(244, 114, 182, 0.22);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.danger-btn:hover {
  background: rgba(255, 238, 242, 0.98);
  border-color: rgba(244, 114, 182, 0.34);
  transform: translateY(-1px);
}

.secondary-btn.text-red-500 {
  color: #ef4444;
}

.primary-btn:disabled,
.secondary-btn:disabled,
.danger-btn:disabled {
  opacity: 0.64;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.admin-tenant-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1rem;
}

.admin-tenant-card {
  border: 1px solid rgba(199, 210, 224, 0.9);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(248,251,255,0.96));
  box-shadow: 0 18px 36px rgba(17, 24, 39, 0.08);
  padding: 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.admin-tenant-card__head,
.admin-tenant-card__topline,
.admin-tenant-card__actions {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-tenant-card__eyebrow {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: #7b8798;
  margin-bottom: 0.25rem;
}

.admin-tenant-card__title {
  margin: 0;
  font-size: 1.15rem;
  line-height: 1.15;
  color: #162033;
}

.admin-tenant-card__owner {
  margin-top: 0.2rem;
  font-size: 0.86rem;
  color: #64748b;
  word-break: break-word;
}

@media (max-width: 760px) {
  main {
    padding: 1rem 0.75rem 2.25rem;
  }

  .card {
    padding: 1rem;
    border-radius: 22px;
  }

  .pges-app-header__container,
  .operations-page-header__wrapper {
    padding-left: 0.85rem;
    padding-right: 0.85rem;
  }

  .pges-app-header__inner,
  .operations-page-header__wrapper {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }

  .header-brand-btn {
    width: 100%;
    min-width: 0;
    justify-content: flex-start;
  }

  .header-brand-btn h1 {
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1.02rem;
  }

  .pges-app-header__actions,
  .operations-page-header__actions {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.65rem;
  }

  .pges-app-header__actions > *,
  .operations-page-header__actions > * {
    flex: 1 1 calc(50% - 0.35rem);
    min-width: 0;
  }
}

@media (max-width: 520px) {
  .pges-app-header__actions > *,
  .operations-page-header__actions > * {
    flex-basis: 100%;
  }
}

.admin-tenant-card__status {
  flex: 0 0 auto;
}

.admin-tenant-card__topline {
  flex-wrap: wrap;
}

.admin-tenant-chip {
  min-width: 110px;
  border-radius: 16px;
  border: 1px solid rgba(199, 210, 224, 0.92);
  background: rgba(255,255,255,0.9);
  padding: 0.7rem 0.8rem;
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
}

.admin-tenant-chip--wide {
  min-width: 220px;
}

.admin-tenant-chip__label {
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #7b8798;
}

.admin-tenant-card__metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.admin-tenant-metric {
  border-radius: 16px;
  background: rgba(243, 246, 251, 0.88);
  border: 1px solid rgba(214, 223, 235, 0.92);
  padding: 0.85rem 0.9rem;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.admin-tenant-metric span {
  font-size: 0.73rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #7b8798;
}

.admin-tenant-metric strong {
  font-size: 1rem;
  color: #162033;
}

.admin-tenant-metric small {
  font-size: 0.82rem;
  color: #64748b;
}

.admin-command-modal {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.admin-command-modal__lead {
  margin: 0;
  font-size: 0.95rem;
  color: #4b5563;
  line-height: 1.55;
}

.admin-command-modal__hint {
  padding: 0.85rem 0.95rem;
  border-radius: 16px;
  background: rgba(245, 248, 252, 0.95);
  border: 1px solid rgba(214, 223, 235, 0.9);
  color: #526072;
  font-size: 0.85rem;
}

.admin-command-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.admin-command-field {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.admin-command-field span {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #64748b;
  font-weight: 700;
}

.admin-command-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  border-radius: 14px;
  padding: 0.65rem 0.9rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border: 1px solid rgba(199, 210, 224, 0.9);
}

.admin-command-badge.is-active {
  background: rgba(236, 253, 245, 0.95);
  color: #166534;
}

.admin-command-badge.is-blocked {
  background: rgba(254, 242, 242, 0.95);
  color: #b91c1c;
}

.admin-command-checks,
.admin-command-radio-group {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.admin-command-check,
.admin-command-radio {
  border: 1px solid rgba(199, 210, 224, 0.9);
  border-radius: 16px;
  background: rgba(255,255,255,0.96);
  padding: 0.9rem 1rem;
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
}

.admin-command-check input,
.admin-command-radio input {
  margin-top: 0.2rem;
}

.admin-command-check span,
.admin-command-radio span {
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
}

.admin-command-radio small {
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.4;
}

.admin-command-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.admin-command-actions__spacer {
  flex: 1 1 auto;
}

@media (max-width: 860px) {
  .admin-tenant-card__head,
  .admin-tenant-card__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .admin-tenant-card__metrics,
  .admin-command-grid,
  .admin-command-checks,
  .admin-command-radio-group {
    grid-template-columns: 1fr;
  }
}

/* === PGES-BUTTONS (END) ================================ */


/* === PGES-TITLES-HELP (START) ========================== */

.planning-shell {
  display: grid;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  gap: 1.5rem;
  align-items: start;
}

.planning-shell__sidebar {
  min-width: 0;
}

.planning-shell__sidebar-inner {
  position: sticky;
  top: 5.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.planning-shell__intro {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  padding: 1rem 1.05rem;
  border-radius: 1.05rem;
  border: 1px solid rgba(191, 219, 254, 0.92);
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98), rgba(248, 250, 252, 0.96)),
    radial-gradient(circle at top left, rgba(14, 165, 233, 0.14), transparent 58%);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.planning-shell__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0369a1;
}

.planning-shell__title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.02rem;
  font-weight: 700;
  color: #0f172a;
}

.planning-shell__hint {
  font-size: 0.85rem;
  line-height: 1.45;
  color: #475569;
}

.planning-shell__content {
  min-width: 0;
}

.planning-executive-panel {
  margin-bottom: 1.25rem;
  padding: 1.15rem 1.2rem;
  border-radius: 1.25rem;
  border: 1px solid rgba(191, 219, 254, 0.95);
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98), rgba(255, 255, 255, 0.98)),
    radial-gradient(circle at top right, rgba(14, 165, 233, 0.12), transparent 54%);
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08);
}

.planning-executive-panel__head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: 1rem;
  flex-wrap: wrap;
}

.planning-executive-panel__eyebrow,
.planning-example-panel__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #0369a1;
}

.planning-executive-panel__title,
.planning-example-panel__title {
  margin-top: 0.3rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: #0f172a;
}

.planning-executive-panel__status {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: min(320px, 100%);
}

.planning-executive-panel__status-label {
  font-size: 0.88rem;
  font-weight: 800;
  color: #0f172a;
}

.planning-executive-panel__status-helper {
  font-size: 0.84rem;
  line-height: 1.45;
  color: #475569;
}

.planning-executive-panel__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.planning-executive-panel__card {
  padding: 0.95rem 1rem;
  border-radius: 1rem;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: rgba(255, 255, 255, 0.88);
}

.planning-executive-panel__card--wide {
  grid-column: 1 / -1;
}

.planning-executive-panel__card-label {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #64748b;
}

.planning-executive-panel__card-value {
  margin-top: 0.45rem;
  font-size: 1rem;
  line-height: 1.45;
  font-weight: 700;
  color: #0f172a;
}

.planning-executive-panel__context {
  margin-top: 0.55rem;
  font-size: 0.8rem;
  color: #0369a1;
  font-weight: 700;
}

.planning-executive-panel__list,
.planning-example-panel__list {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  margin-top: 0.7rem;
}

.planning-executive-panel__item,
.planning-example-panel__item {
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  padding: 0.65rem 0.75rem;
  border-radius: 0.85rem;
  background: rgba(248, 250, 252, 0.95);
  border: 1px solid rgba(226, 232, 240, 0.9);
  color: #334155;
  font-size: 0.84rem;
  line-height: 1.45;
}

.planning-executive-panel__item strong,
.planning-example-panel__item strong {
  color: #0f172a;
}

.planning-executive-panel__empty {
  margin-top: 0.7rem;
  padding: 0.8rem 0.9rem;
  border-radius: 0.9rem;
  background: rgba(248, 250, 252, 0.85);
  border: 1px dashed rgba(148, 163, 184, 0.55);
  color: #64748b;
  font-size: 0.84rem;
}

.planning-example-panel {
  margin-bottom: 1rem;
  padding: 1rem 1.05rem;
  border-radius: 1.1rem;
  border: 1px solid rgba(203, 213, 225, 0.95);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.95), rgba(255, 255, 255, 0.98));
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.planning-example-panel__body {
  margin-top: 0.75rem;
}

.planning-example-panel__columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
  margin-top: 0.7rem;
}

.planning-example-panel__columns > div {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.75rem;
  border-radius: 0.9rem;
  background: rgba(248, 250, 252, 0.95);
  border: 1px solid rgba(226, 232, 240, 0.9);
  font-size: 0.82rem;
  color: #475569;
}

.planning-example-panel__bundle-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0.65rem;
  margin-top: 0.7rem;
}

.planning-example-panel__bundle {
  padding: 0.8rem;
  border-radius: 0.9rem;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: rgba(248, 250, 252, 0.92);
}

.planning-example-panel__bundle-title {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}

.planning-example-panel__bundle-text {
  margin-top: 0.3rem;
  font-size: 0.8rem;
  line-height: 1.45;
  color: #64748b;
}

.planning-example-panel__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 0.9rem;
}

.planning-block-summary-grid-shell {
  margin-bottom: 1rem;
}

.planning-block-summary-grid-shell__eyebrow,
.planning-block-summary__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #0369a1;
}

.planning-block-summary-grid-shell__title {
  margin-top: 0.25rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.08rem;
  font-weight: 700;
  color: #0f172a;
}

.planning-block-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 0.85rem;
}

.planning-block-summary {
  padding: 0.95rem 1rem;
  border-radius: 1rem;
  border: 1px solid rgba(203, 213, 225, 0.95);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.95), rgba(255, 255, 255, 0.98));
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.planning-block-summary--current {
  margin-top: 1.25rem;
  border-color: rgba(14, 165, 233, 0.4);
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.98), rgba(255, 255, 255, 0.98)),
    radial-gradient(circle at top right, rgba(14, 165, 233, 0.09), transparent 56%);
}

.planning-block-summary__title {
  margin-top: 0.25rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--accent-3);
}

.planning-block-summary__text {
  margin-top: 0.45rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #334155;
}

.planning-block-summary__helper {
  margin-top: 0.45rem;
  font-size: 0.8rem;
  line-height: 1.45;
  color: #64748b;
}

.step-title {
  margin: 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: clamp(1.9rem, 2.6vw, 2.3rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  color: var(--accent-3);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  line-height: 1.06;
}

.step-subtitle {
  margin-top: 0.35rem;
  margin-bottom: 1.6rem;
  color: var(--muted);
  font-size: 0.99rem;
  line-height: 1.62;
  max-width: 58ch;
}

.title-shell {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.title-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.step-context {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding: 0.95rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid rgba(201, 216, 236, 0.9);
  background:
    linear-gradient(135deg, rgba(247, 250, 255, 0.98), rgba(255, 255, 255, 0.98)),
    radial-gradient(circle at top right, rgba(59, 115, 216, 0.1), transparent 54%);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.045);
}

.step-context__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--accent);
}

.step-context__headline {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
}

.step-context__meta {
  font-size: 0.9rem;
  line-height: 1.45;
  color: #475569;
}

.help-btn {
  border-radius: 999px;
  min-height: 2.1rem;
  padding: 0 0.86rem;
  border: 1px solid rgba(59, 115, 216, 0.18);
  font-weight: 700;
  font-size: 0.78rem;
  letter-spacing: 0.01em;
  background-color: rgba(247, 250, 255, 0.98);
  color: var(--accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  white-space: nowrap;
  flex-shrink: 0;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.045);
  transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.help-btn:hover {
  background-color: rgba(240, 245, 255, 1);
  color: var(--accent-3);
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(39, 85, 167, 0.08);
}

.help-btn i {
  font-size: 0.9rem;
}

.help-btn__label {
  font-size: 0.78rem;
  line-height: 1;
}

@media (max-width: 640px) {
  .title-container {
    align-items: flex-start;
  }

  .step-context {
    padding: 0.85rem 0.9rem;
  }

  .step-context__headline {
    font-size: 0.94rem;
  }

  .step-context__meta {
    font-size: 0.84rem;
  }

  .planning-executive-panel__grid,
  .planning-example-panel__columns,
  .planning-block-summary-grid {
    grid-template-columns: 1fr;
  }

  .progress-container {
    grid-template-columns: 1fr;
  }

  .help-btn {
    min-width: 2rem;
    padding: 0;
  }

  .help-btn__label {
    display: none;
  }
}

/* === PGES-TITLES-HELP (END) ============================ */


/* === PGES-PROGRESS-INDICATOR (START) =================== */

.progress-container {
  max-width: 1080px;
  margin: 0.5rem auto 0.75rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 0.85rem;
}

.planning-progress .progress-container {
  max-width: none;
  margin: 0;
  grid-template-columns: 1fr;
}

.planning-block-card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
  border-radius: 1.05rem;
  border: 1px solid rgba(203, 213, 225, 0.95);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96));
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.planning-block-card.is-current {
  border-color: rgba(14, 165, 233, 0.55);
  background:
    linear-gradient(180deg, rgba(240, 249, 255, 0.98), rgba(250, 252, 255, 0.98));
  box-shadow: 0 14px 30px rgba(14, 165, 233, 0.14);
}

.planning-block-card.is-completed {
  border-color: rgba(134, 239, 172, 0.85);
  background:
    linear-gradient(180deg, rgba(240, 253, 244, 0.98), rgba(255, 255, 255, 0.98));
}

.planning-block-card__topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.planning-block-card__eyebrow {
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}

.planning-block-card__summary {
  font-size: 0.74rem;
  font-weight: 700;
  color: #475569;
}

.planning-block-card__title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.06rem;
  font-weight: 700;
  color: #0f172a;
}

.planning-block-card__hint {
  font-size: 0.85rem;
  line-height: 1.45;
  color: #64748b;
}

.planning-block-card__steps {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.planning-block-step {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  text-align: left;
  padding: 0.55rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: rgba(248, 250, 252, 0.88);
  color: #475569;
  transition: border-color 0.18s ease, background-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.planning-block-step:hover {
  transform: translateY(-1px);
  border-color: rgba(14, 165, 233, 0.35);
  box-shadow: 0 10px 18px rgba(14, 165, 233, 0.08);
}

.planning-block-step__index {
  min-width: 1.75rem;
  height: 1.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(226, 232, 240, 0.9);
  color: #334155;
  font-size: 0.74rem;
  font-weight: 800;
}

.planning-block-step__label {
  font-size: 0.82rem;
  line-height: 1.35;
  font-weight: 600;
}

.planning-block-step.completed {
  border-color: rgba(187, 247, 208, 0.95);
  background: rgba(240, 253, 244, 0.92);
  color: #166534;
}

.planning-block-step.completed .planning-block-step__index {
  background: rgba(34, 197, 94, 0.16);
  color: #166534;
}

.planning-block-step.current {
  border-color: rgba(14, 165, 233, 0.65);
  background: rgba(224, 242, 254, 0.96);
  color: #0f172a;
  box-shadow: 0 0 0 1px rgba(14, 165, 233, 0.18);
}

.planning-block-step.current .planning-block-step__index {
  background: rgba(14, 165, 233, 0.18);
  color: #0c4a6e;
}

@media (max-width: 1024px) {
  .planning-shell {
    grid-template-columns: 1fr;
  }

  .planning-shell__sidebar-inner {
    position: static;
  }

  .planning-progress .progress-container {
    grid-template-columns: 1fr;
  }
}

.planning-shell:not(.planning-shell--with-progress) {
  grid-template-columns: minmax(0, 1fr);
}

.planning-shell:not(.planning-shell--with-progress) .planning-shell__sidebar {
  display: none;
}

/* === PGES-PROGRESS-INDICATOR (END) ===================== */


/* === PGES-HELP-MODAL (START) =========================== */

#help-modal {
  position: fixed;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.55);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 1rem;
  overflow-y: auto;
  z-index: 50;
}

#help-modal .modal-content {
  background-color: #ffffff;
  max-width: 680px;
  width: 100%;
  border-radius: 0.75rem;
  padding: 1.25rem 1.5rem 1.5rem;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.35);
  margin: 1rem auto;
  max-height: calc(100vh - 2rem);
  display: flex;
  flex-direction: column;
}

#help-modal-title {
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
}

#help-modal-content {
  font-size: 0.9rem;
  color: #475569;
  overflow-y: auto;
  max-height: calc(100vh - 9rem);
  padding-right: 0.25rem;
}

#help-modal-close {
  margin-top: 0.75rem;
  flex: 0 0 auto;
}

/* === PGES-HELP-MODAL (END) ============================= */


/* === PGES-SWOT-EDITOR (START) ========================== */

.swot-quadrant {
  border-radius: 0.75rem;
  border: 1px solid #e2e8f0;
  background-color: #f8fafc;
  transition: border-color 0.12s ease, box-shadow 0.12s ease, background-color 0.12s ease;
}

.swot-quadrant.selected {
  border-color: #0ea5e9;
  background-color: #f0f9ff;
  box-shadow: 0 0 0 1px #0ea5e9, 0 0 0 4px rgba(14, 165, 233, 0.18);
}

.swot-header {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 700;
  font-size: 0.9rem;
  padding: 0.45rem 0.7rem;
  border-radius: 999px;
  margin-bottom: 0.75rem;
  cursor: pointer;
}

/* cores por quadrante no editor */
.swot-header-strengths {
  background-color: #dcfce7;
  color: #166534;
}

.swot-header-weaknesses {
  background-color: #fee2e2;
  color: #991b1b;
}

.swot-header-opportunities {
  background-color: #dbeafe;
  color: #1e3a8a;
}

.swot-header-threats {
  background-color: #ffedd5;
  color: #9a3412;
}

/* === PGES-SWOT-EDITOR (END) ============================ */


/* === PGES-SWOT-VOTE (START) ============================ */

.swot-vote-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem 0.9rem;
  border-radius: 0.75rem;
  border: 1px solid #e2e8f0;
  background-color: #f8fafc;
}

.swot-vote-item p {
  margin: 0;
  font-size: 0.9rem;
  color: #0f172a;
  flex: 1;
  padding-right: 0.5rem;
}

.vote-controls {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  flex-shrink: 0;
}

.vote-count {
  min-width: 2rem;
  text-align: center;
  font-weight: 600;
  color: #1e293b;
}

/* === PGES-SWOT-VOTE (END) ============================== */


/* === PGES-REPORT-LAYOUT (START) ======================== */

/* corpo do arquivo HTML baixado */
body.report-body {
  background: linear-gradient(180deg, #e6ebf2, #f3f6fa);
  padding: 2rem 0;
  color: var(--ink);
  font-family: "Georgia", "Times New Roman", serif;
}

/* container principal (preview e arquivo) */
.report-main-container {
  max-width: 980px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,251,255,0.99));
  border-radius: 22px;
  padding: 2.25rem 2rem 2.5rem;
  box-shadow: 0 24px 60px rgba(17, 24, 39, 0.16);
  border: 1px solid rgba(199, 210, 224, 0.9);
}

/* quando o relatório é visualizado dentro do app */
.in-app-report-preview {
  border-radius: 20px;
  padding: 1.8rem 1.9rem;
  box-shadow: 0 18px 36px rgba(17, 24, 39, 0.1);
  max-height: none;
  overflow: visible;
  background: rgba(255, 255, 255, 0.98);
}

/* capa / header do relatório */
.report-header {
  text-align: center;
  padding: 2.5rem 1rem 2rem; /* menos espaço em cima e embaixo */
  margin-bottom: 1.5rem;      /* capa mais “colada” do resto */
  border-bottom: none;
}

.report-header h1,
.report-header h2 {
  margin: 0;
}

/* estilos específicos da capa minimalista */
.report-cover-inner {
  max-width: 600px;
  margin: 0 auto;
}

.report-cover-brand {
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: #94a3b8;
  margin-bottom: 1.5rem;
}

.report-cover-main-title {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #0f172a;
  margin-bottom: 1rem;
}

.report-cover-project {
  font-size: 1.3rem;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 0.75rem;
}

.report-cover-subtitle {
  font-size: 1rem;
  font-weight: 600;
  color: #0f172a; /* mesmo tom escuro do título secundário */
  margin-bottom: 1.6rem;
}

.report-cover-meta {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 1rem;
  font-weight: 600;
  color: #0f172a; /* alto contraste */
}

/* seções do relatório */
.report-section-card {
  border-radius: 0.75rem;
  border: 1px solid #e2e8f0;
  padding: 1.25rem 1.35rem 1.3rem;
  margin-bottom: 1rem;
  background: linear-gradient(135deg, #f8fafc 0%, #ffffff 38%, #f8fafc 100%);
  break-inside: avoid;
}
/* capítulos do relatório */
.report-chapter {
  margin-bottom: 1.75rem;
}

.chapter-title {
  font-size: 1.35rem;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 1.1rem;
}

/* separação visual leve entre capítulos */
.report-chapter + .report-chapter {
  border-top: 1px solid #e5e7eb;
  padding-top: 1.5rem;
}

/* ficha de informações iniciais (registro do planejamento) */
.report-meta-line {
  margin-top: 0.35rem;
  font-size: 0.9rem;
  color: #64748b;
}

.report-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 0.15rem;
}

.info-item {
  display: flex;
  flex-direction: column;
  font-size: 0.88rem;
  padding: 1.15rem 1.1rem;
  border: 1px solid rgba(217, 222, 231, 0.95);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(249, 251, 253, 0.9), rgba(255, 255, 255, 0.98));
}

.info-label {
  font-weight: 600;
  color: #475569;
}

.info-value {
  color: #0f172a;
}

.report-section-card h3 {
  margin: 0 0 0.75rem;
  font-size: 0.98rem;
  font-weight: 700;
  color: #0f172a;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.report-section-card h3 i {
  color: #0ea5e9;
}

/* tabelas no relatório */
.report-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 0.25rem;
  font-size: 0.86rem;
}

.report-table thead {
  background-color: #e5e7eb;
}

.report-table th,
.report-table td {
  border: 1px solid #cbd5e1;
  padding: 0.45rem 0.5rem;
  text-align: left;
  vertical-align: top;
}

.report-table th {
  font-weight: 600;
  color: #0f172a;
}

.report-table td {
  color: #111827;
}

/* parágrafos e listas dentro das seções */
.report-section-card p {
  margin: 0.15rem 0 0.4rem;
  font-size: 0.9rem;
  color: #1f2933;
}

.report-section-card ul {
  margin: 0.5rem 0 0.4rem 1.2rem;
  padding: 0;
}

/* === PGES-REPORT-LAYOUT (END) ========================== */


/* === PGES-REPORT-SWOT-MATRIX-STYLES (START) ============ */

.swot-matrix-report table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin-top: 0.75rem;
}

.swot-matrix-report th,
.swot-matrix-report td {
  border: 1px solid #e2e8f0; /* slate-200 */
  padding: 0.7rem 0.75rem;
  vertical-align: top;
  font-size: 0.86rem;
}

.swot-matrix-report th.swot-header-cell {
  font-weight: 700;
  text-transform: uppercase;
}

/* cores por quadrante no RELATÓRIO (podem ser iguais ao editor) */
.swot-matrix-report th.strengths {
  background-color: #dcfce7;
  color: #166534;
}

.swot-matrix-report th.weaknesses {
  background-color: #fee2e2;
  color: #991b1b;
}

.swot-matrix-report th.opportunities {
  background-color: #dbeafe;
  color: #1e3a8a;
}

.swot-matrix-report th.threats {
  background-color: #ffedd5;
  color: #9a3412;
}

.swot-matrix-report ul {
  margin: 0;
  padding-left: 1.1rem;
}

.swot-matrix-report li {
  margin-bottom: 0.2rem;
}
/* parágrafos de observações finais */
.obs-paragraph {
  margin-bottom: 0.9rem;
  line-height: 1.6;
  text-align: justify;
}


/* === PGES-REPORT-SWOT-MATRIX-STYLES (END) ============== */


/* === PGES-AUTH-SCREEEN (START) ========================= */

#auth-container {
  position: relative;
  max-width: 460px;
  margin: 2.6rem auto 3.4rem;
}

#auth-container .card {
  padding: 1.8rem 1.7rem 1.55rem;
}

#auth-container h2 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1.2rem;
  font-weight: 700;
}

#auth-container p {
  margin: 0.1rem 0 0.9rem;
  font-size: 0.85rem;
  color: #64748b;
}

#auth-container form {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

#auth-container label {
  font-size: 0.8rem;
  font-weight: 500;
  color: #0f172a;
}

#auth-container .alt-link {
  margin-top: 0.5rem;
  font-size: 0.8rem;
  text-align: center;
}

#auth-container .alt-link a {
  color: #2563eb;
  font-weight: 600;
  text-decoration: none;
}

#auth-container .alt-link a:hover {
  text-decoration: underline;
}

.auth-brand-block {
  position: relative;
  padding: 1.2rem 1.1rem 0.4rem;
}

.auth-brand-block::before {
  content: "";
  position: absolute;
  inset: -10px 8% auto;
  height: 150px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(59, 115, 216, 0.12), rgba(59, 115, 216, 0));
  filter: blur(10px);
  pointer-events: none;
}

.auth-brand-block--admin::before {
  background: radial-gradient(circle, rgba(99, 102, 241, 0.12), rgba(99, 102, 241, 0));
}

.auth-brand-block > * {
  position: relative;
  z-index: 1;
}

.auth-brand-mark {
  width: 84px;
  height: 84px;
  margin: 0 auto;
  border-radius: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(243, 247, 255, 0.96));
  border: 1px solid rgba(211, 220, 231, 0.88);
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08);
}

.auth-brand-mark--admin {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 247, 255, 0.96));
}

.auth-brand-title {
  font-family: "Merriweather", Georgia, serif;
  letter-spacing: -0.03em;
  color: var(--accent-3);
}

.auth-brand-copy {
  max-width: 34ch;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 0.94rem !important;
  line-height: 1.65;
  color: var(--muted) !important;
}

.auth-brand-contact {
  margin-top: 0.55rem !important;
  font-size: 0.82rem !important;
}

.auth-brand-contact a {
  color: var(--accent);
}

.auth-card {
  border-radius: 28px;
}

.auth-card h3 {
  font-family: "Merriweather", Georgia, serif;
  letter-spacing: -0.02em;
  color: var(--accent-3);
}

.auth-switch-copy {
  color: var(--muted);
}

.app-status-line,
.app-page-marker,
#auth-status,
#auth-error,
#save-status {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.45rem;
  min-height: 2.35rem;
  padding: 0.5rem 0.88rem;
  border-radius: 999px;
  border: 1px solid rgba(215, 226, 240, 0.95);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92));
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.35;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.app-page-marker {
  min-height: 2.1rem;
  padding: 0.42rem 0.78rem;
  font-size: 0.78rem;
}

.app-status-line--center,
#auth-status,
#auth-error {
  width: 100%;
  height: auto;
  justify-content: center;
  text-align: center;
}

.app-status-line--danger,
#auth-error {
  border-color: rgba(248, 113, 113, 0.34);
  background: linear-gradient(180deg, rgba(254, 242, 242, 0.96), rgba(255, 255, 255, 0.92));
  color: #b91c1c;
}

#auth-status {
  border-color: rgba(191, 219, 254, 0.95);
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.94), rgba(255, 255, 255, 0.94));
  color: #31537c;
}

#auth-status:empty,
#auth-error:empty {
  min-height: 1.25rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

#save-status {
  border-color: rgba(191, 219, 254, 0.72);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(248, 250, 252, 0.82));
}

.app-empty-state {
  display: grid;
  place-items: center;
  gap: 0.55rem;
  padding: 2.35rem 1.2rem;
  border: 1px dashed rgba(203, 213, 225, 0.95);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.95), rgba(255, 255, 255, 0.84));
  color: var(--muted);
  text-align: center;
  line-height: 1.55;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86);
}

.app-empty-state--compact {
  padding: 1.95rem 1rem;
  border-radius: 20px;
}

.app-loading-card .app-empty-state {
  min-height: 220px;
}

.app-loading-card .app-empty-state i {
  color: var(--accent);
}

/* === PGES-AUTH-SCREEEN (END) =========================== */


/* === PGES-PRINT-STYLES (START) ========================= */

@media print {

  body.report-body {
    background-color: #ffffff !important;
    padding: 0;
  }

  .report-main-container {
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
    border: none;
    padding: 1.6cm 1.8cm 1.8cm;
  }
  /* capa isolada */
  .report-header {
    page-break-after: always;
  }

  /* capítulos começam em nova página */
  .chapter-title {
    page-break-before: always;
  }

  /* exceto capítulo 1 */
  .chapter-1 .chapter-title {
    page-break-before: auto;
  }


  /* evita grandes espaços em branco e quebras estranhas */
  .report-section-card {
    page-break-inside: avoid;
  }

  /* oculta botões, cabeçalho do app etc. quando imprimir direto da tela */
  header,
  footer,
  [data-action="generate-report"],
  .secondary-btn,
  .primary-btn {
    display: none !important;
  }

  .in-app-report-preview {
    box-shadow: none;
    max-height: none;
    overflow: visible;
    padding: 0;
  }
}
  .report-header {
    page-break-after: always;
  }
@media print {

  body.report-body {
    background-color: #ffffff !important;
    padding: 0;
  }

  .report-main-container {
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
    border: none;
    padding: 1.6cm 1.8cm 1.8cm;
  }

  .report-header {
    page-break-after: always; /* CAPA = página 1 isolada */
  }

  .report-section-card {
    page-break-inside: avoid;
  }

  header,
  footer,
  [data-action="generate-report"],
  .secondary-btn,
  .primary-btn {
    display: none !important;
  }

  .in-app-report-preview {
    box-shadow: none;
    max-height: none;
    overflow: visible;
    padding: 0;
  }
}


/* === PGES-PRINT-STYLES (END) =========================== */
/* ========================= */
/* CAPA PROFISSIONAL PGES    */
/* ========================= */

.report-cover {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #38bdf8, #0284c7, #0369a1);
    color: white;
    text-align: center;
    position: relative;
    border-radius: 0.75rem;
}

.cover-overlay {
    padding: 3rem;
}

.cover-title {
    font-size: 3rem;
    font-weight: 800;
    margin-bottom: 1rem;
    color: #0b3c5d; /* azul PGES escuro */
    letter-spacing: 0.04em;
}

.cover-subtitle {
    font-size: 1.5rem;
    font-weight: 400;
    color: #1e5f8a; /* azul médio PGES */
    max-width: 900px;
    margin: 0 auto;
}

.cover-date {
    margin-top: 2.5rem;
    font-size: 1rem;
    font-weight: 500;
    color: #334155; /* cinza escuro legível */
    line-height: 1.6;
}

/* Clareia a capa para melhorar leitura no PDF/export */
.report-cover::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.12);
    z-index: 0;
    pointer-events: none;
}

/* Garante que o conteúdo fique acima do overlay */
.cover-overlay {
    position: relative;
    z-index: 1;
}


/* Marca d’água */
.report-cover::after {
    content: "PGES";
    position: absolute;
    bottom: 10%;
    right: 5%;
    font-size: 8rem;
    font-weight: 900;
    color: rgba(255, 255, 255, 0.08);
}

/* =========================================================
   PGES — MÓDULO DE GESTÃO (PÓS-PLANEJAMENTO)
   ========================================================= */

.mgmt-grid{display:grid;grid-template-columns:1fr;gap:16px;}

.mgmt-card{background:rgba(255,255,255,.92);border:1px solid rgba(148,163,184,.35);border-radius:18px;box-shadow:0 10px 30px rgba(2,6,23,.06);overflow:hidden;}
.mgmt-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(148,163,184,.25);background:linear-gradient(180deg,rgba(241,245,249,.9),rgba(255,255,255,.6));}
.mgmt-card-title{font-size:1.1rem;font-weight:800;color:#0f172a;line-height:1.2;}
.mgmt-card-kicker{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:#64748b;}
.mgmt-card-body{padding:16px 18px 18px;}
.mgmt-muted{color:#64748b;font-size:.95rem;}

.mgmt-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:rgba(248,250,252,.9);font-size:.85rem;font-weight:800;color:#0f172a;}
.mgmt-badge.ok{background:rgba(220,252,231,.85);border-color:rgba(34,197,94,.35);color:#166534;}
.mgmt-badge.warn{background:rgba(254,249,195,.88);border-color:rgba(234,179,8,.35);color:#854d0e;}
.mgmt-badge.bad{background:rgba(254,226,226,.88);border-color:rgba(239,68,68,.35);color:#991b1b;}

.mgmt-kr-row{display:grid;grid-template-columns:1fr;gap:14px;padding:14px 0;border-bottom:1px dashed rgba(148,163,184,.35);}
.mgmt-kr-row:last-child{border-bottom:none;padding-bottom:0;}
@media (min-width: 900px){.mgmt-kr-row{grid-template-columns:1.2fr .8fr;align-items:start;gap:18px;}}
.mgmt-kr-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#0f172a;}
.mgmt-kr-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px;color:#64748b;font-size:.9rem;}
.mgmt-kr-meta i{margin-right:6px;}

.mgmt-label{display:block;font-size:.85rem;font-weight:800;color:#334155;margin:4px 0 6px;}

.mgmt-form-grid{display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width: 900px){.mgmt-form-grid{grid-template-columns:1.2fr 1.4fr 1fr 1fr 1fr;align-items:start;}.mgmt-form-notes{grid-column:1 / -1;}}

.mgmt-form-grid-2{display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width: 900px){.mgmt-form-grid-2{grid-template-columns:1fr 1fr;}}

.mgmt-notes{background:rgba(241,245,249,.85);border:1px solid rgba(148,163,184,.25);border-radius:14px;padding:10px 12px;color:#0f172a;}

.mgmt-quick-initiative {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(180px, .8fr) auto;
  gap: 12px;
  align-items: end;
}

.mgmt-quick-initiative__fields {
  min-width: 0;
}

.mgmt-quick-initiative__actions {
  display: flex;
  gap: 10px;
  align-items: end;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.mgmt-kr-linked-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mgmt-kr-linked-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 15px;
  border-radius: 18px;
  border: 1px solid rgba(205, 215, 228, 0.78);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.9));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-kr-linked-item__main {
  min-width: 0;
}

.mgmt-kr-linked-item__title {
  font-size: 0.93rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.3;
}

.mgmt-kr-linked-item__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 5px;
  font-size: 0.82rem;
  color: #64748b;
}

.mgmt-kr-linked-item__side {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.icon-btn{width:38px;height:38px;border-radius:12px;border:1px solid rgba(148,163,184,.35);background:rgba(255,255,255,.9);display:inline-flex;align-items:center;justify-content:center;color:#0f172a;transition:transform .08s ease,box-shadow .12s ease,border-color .12s ease;}
.icon-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(2,6,23,.10);border-color:rgba(59,130,246,.35);}
.icon-btn.danger{color:#b91c1c;}
.icon-btn.danger:hover{border-color:rgba(239,68,68,.45);}

.mgmt-history-item{padding:12px 0;border-bottom:1px dashed rgba(148,163,184,.35);}
.mgmt-history-item:last-child{border-bottom:none;padding-bottom:0;}
.mgmt-history-title{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:900;color:#0f172a;}

/* =========================================================
   PGES - MODO GESTÃO (SHELL + SIDEBAR + DASHBOARD)
   ========================================================= */

.mgmt-shell{
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 18px;
  min-height: calc(100vh - 140px);
}

.mgmt-sidebar{
  background: #0b1220;
  color: #e5e7eb;
  border-radius: 18px;
  padding: 16px;
  position: sticky;
  top: 92px;
  height: fit-content;
  box-shadow: 0 12px 35px rgba(2,6,23,.25);
}

.mgmt-sidebar__brand{
  display:flex;
  gap: 12px;
  align-items: center;
  padding: 10px 10px 14px 10px;
  border-bottom: 1px solid rgba(148,163,184,.18);
  margin-bottom: 12px;
}

.mgmt-sidebar__logo{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: linear-gradient(135deg, rgba(59,130,246,.85), rgba(14,165,233,.85));
  color: white;
  box-shadow: 0 10px 25px rgba(59,130,246,.25);
}

.mgmt-sidebar__title{
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.1;
}

.mgmt-sidebar__subtitle{
  font-size: 12px;
  color: rgba(226,232,240,.8);
  margin-top: 2px;
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mgmt-nav{
  display:flex;
  flex-direction: column;
  gap: 6px;
}

.mgmt-nav__divider{
  height: 1px;
  margin: 10px 6px;
  background: rgba(148,163,184,.18);
}

.mgmt-nav__item{
  display:flex;
  align-items:center;
  gap: 10px;
  width: 100%;
  padding: 10px 10px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: rgba(255,255,255,.03);
  color: rgba(226,232,240,.92);
  font-weight: 600;
  transition: transform .08s ease, background .15s ease, border-color .15s ease;
  cursor: pointer;
}

.mgmt-nav__item i{
  width: 18px;
  text-align:center;
  opacity: .95;
}

.mgmt-nav__item:hover{
  background: rgba(255,255,255,.08);
  border-color: rgba(148,163,184,.22);
  transform: translateY(-1px);
}

.mgmt-nav__item.is-active{
  background: rgba(59,130,246,.18);
  border-color: rgba(59,130,246,.35);
}

.mgmt-nav__item--muted{
  background: transparent;
  border-color: transparent;
  color: rgba(226,232,240,.70);
}

.mgmt-content{
  padding: 2px;
}

.mgmt-grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 16px;
}

.mgmt-card{
  background: white;
  border-radius: 18px;
  padding: 16px;
  border: 1px solid rgba(148,163,184,.18);
  box-shadow: 0 10px 30px rgba(2,6,23,.06);
}

.mgmt-kpi{
  display:flex;
  flex-direction: column;
  gap: 6px;
}

.mgmt-kpi__label{
  font-size: 12px;
  color: #64748b;
  font-weight: 700;
}

.mgmt-kpi__value{
  font-size: 26px;
  font-weight: 900;
  color: #0f172a;
}

.mgmt-progress{
  height: 12px;
  background: rgba(148,163,184,.22);
  border-radius: 999px;
  overflow:hidden;
}

.mgmt-progress > div{
  height: 100%;
  background: linear-gradient(90deg, rgba(34,197,94,.9), rgba(59,130,246,.9));
  width: 0%;
}

.mgmt-table{
  width: 100%;
  border-collapse: collapse;
}

.mgmt-table th, .mgmt-table td{
  border-bottom: 1px solid rgba(148,163,184,.18);
  padding: 10px 8px;
  text-align: left;
  vertical-align: top;
}

.mgmt-table th{
  font-size: 12px;
  color: #64748b;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .03em;
}

.mgmt-pill{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148,163,184,.22);
  background: rgba(2,6,23,.02);
  font-weight: 800;
  font-size: 12px;
  color: #0f172a;
}

@media (max-width: 980px){
  .mgmt-shell{
    grid-template-columns: 1fr;
  }
  .mgmt-sidebar{
    position: relative;
    top: auto;
  }
}

.mgmt-badge.info{background:rgba(219,234,254,.88);border-color:rgba(59,130,246,.35);color:#1d4ed8;}


/* =========================================================
   AJUSTES — OKRs/KRs em LISTA + ACCORDION (Gestão)
   (compatível com app.js atualizado)
   ========================================================= */

/* Utilitários leves usados no HTML gerado via JS */
.mb-4{margin-bottom:16px;}
.mb-6{margin-bottom:24px;}
.mt-1{margin-top:4px;}
.mt-2{margin-top:8px;}
.mt-3{margin-top:12px;}
.text-sm{font-size:.9rem;}
.text-slate-500{color:#64748b;}

/* Truncar textos longos sem quebrar o layout */
.mgmt-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* Accordion nativo (details/summary) com aparência de card clicável */
details.mgmt-card{
  padding:0; /* o header já tem padding */
}

details.mgmt-card > summary{
  list-style:none;
}

details.mgmt-card > summary::-webkit-details-marker{
  display:none;
}

.mgmt-accordion-summary{
  cursor:pointer;
  user-select:none;
  position:relative;
  padding-right:46px; /* espaço para o chevron */
  transition:background-color .12s ease;
}

.mgmt-accordion-summary:hover{
  background:linear-gradient(180deg,rgba(226,232,240,.95),rgba(255,255,255,.75));
}

.mgmt-accordion-summary::after{
  content:'›';
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%) rotate(0deg);
  width:26px;
  height:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  border:1px solid rgba(148,163,184,.45);
  color:#0f172a;
  background:rgba(255,255,255,.75);
  box-shadow:0 8px 18px rgba(2,6,23,.06);
  font-size:20px;
  line-height:1;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

details[open] > .mgmt-accordion-summary::after{
  transform:translateY(-50%) rotate(90deg);
  border-color:rgba(59,130,246,.35);
  box-shadow:0 10px 22px rgba(2,6,23,.10);
}

/* Card do KR dentro do objetivo — leve distinção visual */
details[data-kr-details].mgmt-card{
  background:rgba(255,255,255,.88);
  border-color:rgba(203,213,225,.85);
}

details[data-kr-details].mgmt-card .mgmt-card-header{
  background:linear-gradient(180deg,rgba(248,250,252,.95),rgba(255,255,255,.70));
}

/* Layout dos controles do KR (status/valor/nota) */
.mgmt-kr-controls{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:10px;
}

@media (min-width: 900px){
  .mgmt-kr-controls{
    grid-template-columns: 1.2fr .8fr;
    align-items:start;
  }
  .mgmt-kr-controls .mgmt-form-notes{
    grid-column: 1 / -1;
  }
}

/* Melhor “toque” visual em selects/inputs dentro do módulo de gestão */
.mgmt-card-body input,
.mgmt-card-body select,
.mgmt-card-body textarea{
  width:100%;
}

/* Evita que listas longas “grudem” no final do card */
.mgmt-card-body > *:last-child{margin-bottom:0;}




/* ===== Gestão: listas (sem colunas) ===== */
.mgmt-stack{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.mgmt-stack > .mgmt-card{
  width:100%;
}

/* Sub-seções dentro de um KR */
.mgmt-subsection{
  border-top:1px solid rgba(148,163,184,.35);
  padding-top:12px;
}
.mgmt-subsection-title{
  font-weight:700;
  color:#0f172a;
  margin-bottom:10px;
  font-size:14px;
}

/* Accordion (details/summary) */
.mgmt-accordion{
  border:1px solid rgba(148,163,184,.35);
  border-radius:14px;
  background:#fff;
  overflow:hidden;
  box-shadow: 0 6px 16px rgba(15, 23, 42, .04);
}
.mgmt-accordion + .mgmt-accordion{ margin-top:10px; }

.mgmt-accordion__summary{
  list-style:none;
  cursor:pointer;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.mgmt-accordion__summary::-webkit-details-marker{ display:none; }

.mgmt-accordion__title{
  font-weight:700;
  color:#0f172a;
  font-size:14px;
}
.mgmt-accordion__meta{
  color:#64748b;
  font-size:12px;
  flex:1;
  text-align:right;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width: 55%;
}

.mgmt-accordion__body{
  padding:12px 14px 14px;
  border-top:1px solid rgba(148,163,184,.25);
  background: rgba(248,250,252,.9);
}



/* =========================================================
   PGES — ADMIN (tela cheia)
   ========================================================= */

.admin-tabs {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.admin-tab {
  border: 1px solid #e2e8f0;
  background: #ffffff;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  font-weight: 700;
  font-size: 0.85rem;
  color: #0f172a;
}

.admin-tab.is-active {
  border-color: #38bdf8;
  box-shadow: 0 0 0 1px #38bdf8, 0 0 0 4px rgba(56, 189, 248, 0.22);
}

.admin-toolbar {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.admin-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.admin-kicker {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #0f766e;
  margin-bottom: 0.35rem;
}

.admin-section-title {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 800;
  color: #0f172a;
}

.admin-section-subtitle {
  margin: 0.35rem 0 0;
  color: #64748b;
  font-size: 0.95rem;
}

.admin-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.admin-summary-card {
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.95), rgba(255, 255, 255, 1));
  border: 1px solid #dbe7f3;
  border-radius: 16px;
  padding: 0.9rem 1rem;
  min-height: 96px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.045);
}

.admin-summary-label {
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #64748b;
}

.admin-summary-value {
  margin-top: 0.35rem;
  font-size: 1.75rem;
  line-height: 1;
  font-weight: 800;
  color: #0f172a;
}

.admin-search {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 1;
  min-width: 260px;
}

.admin-search i {
  color: #64748b;
}

.admin-panel.card {
  padding: 0;
  overflow: hidden;
  border: 1px solid #dbe7f3;
  border-radius: 18px;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.06);
}

.admin-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.34rem 0.68rem;
  border-radius: 999px;
  font-size: 0.73rem;
  font-weight: 700;
  border: 1px solid transparent;
  white-space: nowrap;
}

.admin-badge.ok { background: #ecfdf5; color: #166534; border-color: #bbf7d0; }
.admin-badge.warn { background: #fffbeb; color: #92400e; border-color: #fde68a; }
.admin-badge.bad { background: #fff1f2; color: #9f1239; border-color: #fecdd3; }
.admin-badge.info { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }

.admin-users-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  min-height: 560px;
}

.admin-users-layout--drawer-open .admin-user-drawer {
  opacity: 1;
}

.admin-users-list {
  padding: 0.85rem;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.55), rgba(255, 255, 255, 0.95));
}

.admin-user-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
  gap: 1rem;
  align-items: center;
  padding: 1rem 1.05rem;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #ffffff;
  text-align: left;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.admin-user-row:hover {
  border-color: #bfdbfe;
  box-shadow: 0 10px 24px rgba(37, 99, 235, 0.08);
  transform: translateY(-1px);
}

.admin-user-row.is-active {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow: 0 0 0 1px #bfdbfe, 0 16px 32px rgba(37, 99, 235, 0.08);
}

.admin-user-row__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.22rem;
}

.admin-user-row__email {
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
  word-break: break-word;
}

.admin-user-row__meta {
  font-size: 0.8rem;
  color: #64748b;
  line-height: 1.25;
}

.admin-user-row__meta--muted {
  color: #94a3b8;
}

.admin-user-row__side {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  align-items: flex-end;
}

.admin-user-row__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: flex-end;
}

.admin-user-row__tenant {
  font-size: 0.82rem;
  color: #475569;
  text-align: right;
  line-height: 1.3;
  word-break: break-word;
}

.admin-user-drawer {
  border-left: 1px solid #e2e8f0;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  padding: 1rem;
}

.admin-user-drawer__panel {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.admin-user-drawer__empty {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 0.75rem;
  color: #64748b;
  padding: 2rem 1rem;
}

.admin-user-drawer__empty h4 {
  margin: 0;
  font-size: 1rem;
  font-weight: 800;
  color: #0f172a;
}

.admin-user-drawer__empty p {
  margin: 0;
  max-width: 260px;
  font-size: 0.9rem;
  line-height: 1.45;
}

.admin-user-drawer__empty-icon {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: #e0f2fe;
  color: #0369a1;
  font-size: 1.2rem;
}

.admin-user-drawer__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-user-drawer__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #0f766e;
  margin-bottom: 0.45rem;
}

.admin-user-drawer__title {
  margin: 0;
  font-size: 1.1rem;
  line-height: 1.3;
  font-weight: 800;
  color: #0f172a;
  word-break: break-word;
}

.admin-user-drawer__subtitle {
  margin: 0.35rem 0 0;
  color: #64748b;
  font-size: 0.9rem;
}

.admin-drawer-close {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid #dbe7f3;
  background: #ffffff;
  color: #475569;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.admin-user-drawer__meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}

.admin-user-drawer__meta-item {
  padding: 0.85rem 0.9rem;
  border-radius: 14px;
  border: 1px solid #e2e8f0;
  background: #ffffff;
}

.admin-user-drawer__meta-item span {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
  margin-bottom: 0.35rem;
}

.admin-user-drawer__meta-item strong {
  display: block;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
  word-break: break-word;
}

.admin-user-drawer__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.admin-user-drawer__section {
  padding: 1rem;
  border-radius: 16px;
  border: 1px solid #e2e8f0;
  background: #ffffff;
}

.admin-user-drawer__section-title {
  font-size: 0.82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #64748b;
  margin-bottom: 0.85rem;
}

.admin-user-drawer__actions {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.admin-action-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-height: 34px;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #d7e2ee;
  background: #f8fafc;
  color: #0f172a;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1;
  transition: background-color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.admin-action-btn:hover {
  background: #eef2f7;
  border-color: #c5d2e0;
  transform: translateY(-1px);
}

.admin-action-btn--accent {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

.admin-action-btn--accent:hover {
  background: #dbeafe;
  border-color: #93c5fd;
}

.admin-action-btn--danger {
  background: #fff1f2;
  border-color: #fecdd3;
  color: #be123c;
}

.admin-action-btn--danger:hover {
  background: #ffe4e6;
  border-color: #fda4af;
}

.admin-action-btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

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

  .admin-users-layout {
    grid-template-columns: 1fr;
  }

  .admin-user-drawer {
    border-left: 0;
    border-top: 1px solid #e2e8f0;
  }
}

@media (max-width: 640px) {
  .admin-summary-grid {
    grid-template-columns: 1fr;
  }

  .admin-users-list {
    padding: 0.75rem;
  }

  .admin-user-row {
    grid-template-columns: 1fr;
  }

  .admin-user-row__side {
    align-items: flex-start;
  }

  .admin-user-row__chips {
    justify-content: flex-start;
  }

  .admin-user-row__tenant {
    text-align: left;
  }

  .admin-user-drawer__meta {
    grid-template-columns: 1fr;
  }
}

/* === PGES-PHASE1-DASHBOARD (START) ===================== */

.dashboard-shell {
  position: relative;
}

/* === PGES-PHASE2-MGMT-ADMIN (START) ===================== */

.mgmt-stage,
.admin-shell,
.team-shell {
  position: relative;
}

.mgmt-stage__intro,
.admin-shell .step-subtitle,
.team-shell .step-subtitle {
  max-width: 760px;
  color: var(--muted);
}

.mgmt-stage .step-title,
.admin-shell .step-title,
.team-shell .step-title,
.admin-section-title {
  font-family: "Merriweather", Georgia, serif;
  letter-spacing: -0.02em;
}

.mgmt-stage__panel,
.admin-hero,
.team-hero {
  position: relative;
}

.mgmt-stage__panel::before,
.admin-hero::before,
.team-hero::before {
  content: "";
  position: absolute;
  inset: -14px 0 auto;
  height: 140px;
  border-radius: 28px;
  background:
    radial-gradient(circle at top left, rgba(142, 183, 255, 0.16), transparent 52%),
    linear-gradient(135deg, rgba(8, 47, 73, 0.08), rgba(30, 64, 175, 0.04));
  z-index: -1;
  pointer-events: none;
}

.mgmt-shell {
  gap: 24px;
  align-items: start;
}

.mgmt-sidebar {
  background:
    linear-gradient(180deg, rgba(9, 26, 53, 0.98), rgba(10, 31, 65, 0.96));
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 26px;
  padding: 18px;
  box-shadow: 0 24px 55px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}

.mgmt-sidebar::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 160px;
  background:
    radial-gradient(circle at top left, rgba(96, 165, 250, 0.28), transparent 48%),
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.18), transparent 42%);
  pointer-events: none;
}

.mgmt-sidebar__brand,
.mgmt-nav,
.mgmt-nav__divider {
  position: relative;
  z-index: 1;
}

.mgmt-sidebar__brand {
  padding: 14px 12px 18px 12px;
  margin-bottom: 14px;
  border-bottom: 1px solid rgba(191, 219, 254, 0.16);
}

.mgmt-sidebar__logo {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: linear-gradient(135deg, #8ab4ff, #4f7ef7);
  box-shadow: 0 18px 32px rgba(79, 126, 247, 0.28);
}

.mgmt-sidebar__title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.28rem;
  font-weight: 700;
  color: #f8fbff;
}

.mgmt-sidebar__subtitle {
  color: rgba(226, 232, 240, 0.72);
  font-size: 0.78rem;
  max-width: 190px;
}

.mgmt-nav {
  gap: 8px;
}

.mgmt-nav__item {
  padding: 12px 13px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.045);
  border: 1px solid rgba(255, 255, 255, 0.05);
  color: rgba(241, 245, 249, 0.9);
  font-weight: 650;
}

.mgmt-nav__item:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(191, 219, 254, 0.2);
  box-shadow: 0 10px 22px rgba(2, 6, 23, 0.16);
}

.mgmt-nav__item.is-active {
  background: linear-gradient(135deg, rgba(111, 157, 255, 0.18), rgba(59, 130, 246, 0.14));
  border-color: rgba(147, 197, 253, 0.34);
  box-shadow: inset 0 0 0 1px rgba(191, 219, 254, 0.16), 0 14px 28px rgba(37, 99, 235, 0.14);
}

.mgmt-content {
  padding: 6px 2px 2px;
}

.mgmt-card {
  border-radius: 22px;
  border: 1px solid rgba(211, 220, 231, 0.82);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95));
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.06);
}

.mgmt-card-header {
  padding: 18px 20px;
  border-bottom: 1px solid rgba(211, 220, 231, 0.78);
  background:
    linear-gradient(180deg, rgba(248, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
}

.mgmt-card-title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.08rem;
  font-weight: 700;
}

.mgmt-card-kicker,
.admin-kicker,
.admin-summary-label,
.admin-user-drawer__section-title,
.admin-user-drawer__meta-item span {
  letter-spacing: 0.14em;
}

.mgmt-card-body {
  padding: 18px 20px 20px;
}

.mgmt-stage__panel {
  padding: 20px;
}

.mgmt-kpi__label {
  font-size: 0.74rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #64748b;
}

.mgmt-kpi__value {
  font-family: "Merriweather", Georgia, serif;
  font-size: 2rem;
  font-weight: 700;
}

.mgmt-kpi-card {
  min-width: 132px;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 247, 252, 0.88));
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
}

.mgmt-kpi__foot {
  margin-top: 6px;
  font-size: 0.78rem;
  color: #64748b;
  line-height: 1.45;
}

.mgmt-progress {
  height: 10px;
  background: rgba(191, 219, 254, 0.35);
}

.mgmt-progress > div {
  background: linear-gradient(90deg, #4f7ef7, #80b8ef);
}

.mgmt-pill,
.mgmt-badge {
  border-radius: 999px;
  font-size: 0.74rem;
  letter-spacing: 0.02em;
}

.mgmt-subsection {
  border-top: 1px solid rgba(203, 213, 225, 0.72);
}

.mgmt-subsection-title {
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #51606f;
}

.mgmt-accordion {
  border-radius: 18px;
  border-color: rgba(203, 213, 225, 0.76);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
}

.mgmt-accordion__summary {
  padding: 14px 16px;
  background: rgba(255, 255, 255, 0.92);
}

.mgmt-accordion__body {
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.95), rgba(255, 255, 255, 0.98));
}

.mgmt-exec-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.95fr);
  gap: 20px;
  padding: 24px;
  border-radius: 30px;
  border: 1px solid rgba(208, 219, 232, 0.84);
  background:
    radial-gradient(circle at top right, rgba(149, 196, 255, 0.26), transparent 34%),
    radial-gradient(circle at bottom left, rgba(191, 219, 254, 0.24), transparent 38%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(245, 249, 255, 0.96));
  box-shadow: 0 28px 56px rgba(15, 23, 42, 0.08);
}

.mgmt-exec-hero::before {
  content: "";
  position: absolute;
  inset: auto -68px -86px auto;
  width: 236px;
  height: 236px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(59, 130, 246, 0.16), transparent 72%);
  pointer-events: none;
}

.mgmt-exec-hero > * {
  position: relative;
  z-index: 1;
}

.mgmt-exec-hero--critical {
  border-color: rgba(248, 113, 113, 0.32);
}

.mgmt-exec-hero--attention {
  border-color: rgba(245, 158, 11, 0.28);
}

.mgmt-exec-hero__summary {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.mgmt-exec-title {
  margin: 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: clamp(1.8rem, 2.4vw, 2.3rem);
  line-height: 1.1;
  color: #12253f;
}

.mgmt-exec-text {
  margin: 0;
  max-width: 54ch;
  color: #4c5d73;
  font-size: 1rem;
  line-height: 1.65;
}

.mgmt-exec-metrics {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.mgmt-exec-metric {
  min-width: 150px;
  padding: 13px 15px;
  border-radius: 20px;
  border: 1px solid rgba(209, 219, 230, 0.86);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-exec-metric__label {
  display: block;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  color: #64748b;
}

.mgmt-exec-metric__value {
  display: block;
  margin-top: 6px;
  color: #0f172a;
  font-size: 1rem;
  font-weight: 800;
}

.mgmt-progress--hero {
  margin-top: auto;
}

.mgmt-exec-kpis {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-content: start;
}

.mgmt-kpi-card--exec {
  padding: 17px 16px 15px;
  border: 1px solid rgba(208, 219, 232, 0.82);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.93));
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.04);
}

.mgmt-kpi-card--warning {
  border: 1px solid rgba(245, 158, 11, 0.22);
  background: linear-gradient(180deg, rgba(255, 252, 245, 0.98), rgba(255, 247, 229, 0.9));
}

.mgmt-kpi-card--danger {
  border: 1px solid rgba(248, 113, 113, 0.2);
  background: linear-gradient(180deg, rgba(255, 249, 249, 0.98), rgba(255, 239, 239, 0.92));
}

.mgmt-exec-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  gap: 18px;
  margin-top: 18px;
}

.mgmt-exec-layout--bottom {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
}

.mgmt-exec-panel,
.mgmt-exec-side {
  padding: 22px;
  border: 1px solid rgba(208, 219, 232, 0.8);
  border-radius: 26px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(247, 250, 253, 0.96));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.05);
}

.mgmt-exec-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

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

.mgmt-decision-card {
  padding: 17px;
  border-radius: 20px;
  border: 1px solid rgba(208, 219, 232, 0.78);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86);
}

.mgmt-decision-card--warning {
  border-color: rgba(245, 158, 11, 0.22);
  background: rgba(255, 249, 235, 0.9);
}

.mgmt-decision-card--danger {
  border-color: rgba(248, 113, 113, 0.22);
  background: rgba(255, 241, 242, 0.92);
}

.mgmt-decision-card__value {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.9rem;
  line-height: 1;
  color: #10213a;
}

.mgmt-decision-card__title {
  margin-top: 8px;
  font-size: 0.95rem;
  font-weight: 800;
  color: #10213a;
}

.mgmt-decision-card__helper {
  margin-top: 6px;
  font-size: 0.82rem;
  line-height: 1.55;
  color: #5b6778;
}

.mgmt-alert-list,
.mgmt-owner-list,
.mgmt-agenda-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mgmt-alert-list {
  margin-top: 16px;
}

.mgmt-alert-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 17px;
  border-radius: 20px;
  border: 1px solid rgba(208, 219, 232, 0.76);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.99));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-alert-item--warning {
  border-color: rgba(245, 158, 11, 0.24);
}

.mgmt-alert-item--danger {
  border-color: rgba(248, 113, 113, 0.28);
}

.mgmt-alert-item__main {
  min-width: 0;
}

.mgmt-alert-item__meta,
.mgmt-agenda-item__type,
.mgmt-owner-row__caption,
.mgmt-mini-card__label {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #64748b;
}

.mgmt-alert-item__title,
.mgmt-agenda-item__title,
.mgmt-owner-row__name {
  margin-top: 4px;
  color: #10213a;
  font-weight: 800;
}

.mgmt-alert-item__info,
.mgmt-agenda-item__meta {
  margin-top: 6px;
  color: #5f6d80;
  font-size: 0.88rem;
}

.mgmt-agenda-item {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  padding: 12px 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.9);
}

.mgmt-agenda-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.mgmt-agenda-item__date {
  padding: 10px 12px;
  border-radius: 16px;
  border: 1px solid rgba(208, 219, 232, 0.84);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92));
  text-align: center;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1rem;
  color: #10213a;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.mgmt-ritual-panel {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(226, 232, 240, 0.92);
}

.mgmt-ritual-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
}

.mgmt-owner-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.9);
}

.mgmt-owner-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.mgmt-owner-row__load {
  min-width: 42px;
  height: 42px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: #10213a;
  background: rgba(191, 219, 254, 0.45);
  border: 1px solid rgba(147, 197, 253, 0.4);
}

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

.mgmt-mini-card {
  padding: 16px 15px;
  border-radius: 20px;
  border: 1px solid rgba(208, 219, 232, 0.8);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-mini-card__value {
  display: block;
  margin-top: 8px;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.3rem;
  color: #10213a;
}

.mgmt-empty-state {
  display: grid;
  gap: 0.45rem;
  justify-items: start;
  padding: 18px 20px;
  border-radius: 20px;
  border: 1px dashed rgba(203, 213, 225, 0.95);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.94), rgba(255, 255, 255, 0.88));
  color: #64748b;
  font-size: 0.92rem;
  line-height: 1.6;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.mgmt-page-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 22px 24px;
  margin-bottom: 18px;
  border-radius: 28px;
  border: 1px solid rgba(208, 219, 232, 0.82);
  background:
    radial-gradient(circle at top right, rgba(148, 197, 255, 0.2), transparent 32%),
    radial-gradient(circle at bottom left, rgba(191, 219, 254, 0.22), transparent 38%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(247, 250, 253, 0.97));
  box-shadow: 0 22px 42px rgba(15, 23, 42, 0.06);
}

.mgmt-page-hero::before {
  content: "";
  position: absolute;
  inset: auto -64px -86px auto;
  width: 228px;
  height: 228px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(59, 130, 246, 0.14), transparent 72%);
  pointer-events: none;
}

.mgmt-page-hero > * {
  position: relative;
  z-index: 1;
}

.mgmt-page-hero--compact {
  padding: 18px 20px;
}

.mgmt-page-hero__content {
  display: grid;
  gap: 0.8rem;
  min-width: 0;
}

.mgmt-page-hero__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #64748b;
}

.mgmt-page-hero__actions {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-self: flex-start;
}

.mgmt-section-shell {
  position: relative;
}

.mgmt-form-shell,
.mgmt-history-shell,
.mgmt-objective-card {
  border-radius: 26px;
  border-color: rgba(203, 213, 225, 0.8);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(247, 250, 253, 0.96));
  box-shadow: 0 18px 36px rgba(15, 23, 42, 0.05);
}

.mgmt-objective-card > .mgmt-card-body {
  padding-top: 18px;
}

.mgmt-inline-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.15rem;
}

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

.mgmt-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: end;
}

.mgmt-status-chip {
  min-height: 34px;
  padding: 0.45rem 0.8rem !important;
  font-size: 0.76rem;
  line-height: 1;
}

.mgmt-inline-stat {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0.55rem 0.92rem;
  border-radius: 999px;
  border: 1px solid rgba(208, 219, 232, 0.84);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 250, 252, 0.9));
  color: #4d5f76;
  font-size: 0.84rem;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.mgmt-inline-stat strong {
  color: #10213a;
  font-weight: 800;
}

.mgmt-view-toggle {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.mgmt-timeline-shell {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.mgmt-timeline-scale {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
  gap: 14px;
  align-items: end;
}

.mgmt-timeline-scale__spacer {
  height: 1px;
}

.mgmt-timeline-scale__months {
  display: flex;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(208, 219, 232, 0.82);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-timeline-scale__month {
  padding: 10px 8px;
  text-align: center;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
  border-right: 1px solid rgba(226, 232, 240, 0.8);
}

.mgmt-timeline-scale__month:last-child {
  border-right: none;
}

.mgmt-timeline-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.mgmt-timeline-row {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr) auto auto;
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px solid rgba(208, 219, 232, 0.82);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.05);
}

.mgmt-timeline-row__title {
  font-size: 0.97rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.25;
}

.mgmt-timeline-row__caption {
  margin-top: 4px;
  font-size: 0.8rem;
  color: #64748b;
  line-height: 1.45;
}

.mgmt-timeline-row__chart {
  position: relative;
  height: 18px;
  overflow: hidden;
  border-radius: 999px;
  border: 1px solid rgba(203, 213, 225, 0.72);
  background:
    linear-gradient(180deg, rgba(241, 245, 249, 0.96), rgba(248, 250, 252, 0.98));
}

.mgmt-timeline-row__track {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(90deg, rgba(148, 163, 184, 0.09) 1px, transparent 1px);
  background-size: 14% 100%;
}

.mgmt-timeline-row__bar {
  position: absolute;
  top: 1px;
  bottom: 1px;
  min-width: 34px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  font-size: 0.72rem;
  font-weight: 800;
  color: #fff;
  white-space: nowrap;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
  text-shadow: 0 1px 2px rgba(15, 23, 42, 0.35);
}

.mgmt-timeline-row__bar--planejado {
  background: linear-gradient(90deg, #64748b, #475569);
}

.mgmt-timeline-row__bar--em-curso {
  background: linear-gradient(90deg, #2563eb, #1d4ed8);
}

.mgmt-timeline-row__bar--travado {
  background: linear-gradient(90deg, #dc2626, #b91c1c);
}

.mgmt-timeline-row__bar--concluido {
  background: linear-gradient(90deg, #16a34a, #15803d);
}

.mgmt-timeline-row__status {
  display: flex;
  justify-content: flex-end;
}

.mgmt-timeline-row__actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.mgmt-home-timeline {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(203, 213, 225, 0.72);
}

.mgmt-home-timeline__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.mgmt-home-timeline__list {
  display: grid;
  gap: 10px;
}

.mgmt-home-timeline__item {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid rgba(208, 219, 232, 0.78);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-home-timeline__date {
  font-size: 0.86rem;
  font-weight: 800;
  color: #1d4ed8;
}

.mgmt-home-timeline__title {
  font-size: 0.92rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.3;
}

.mgmt-home-timeline__meta {
  margin-top: 4px;
  font-size: 0.79rem;
  color: #64748b;
}

.mgmt-objective-summary {
  align-items: center;
}

.mgmt-history-shell .mgmt-card-header,
.mgmt-form-shell .mgmt-card-header {
  background:
    linear-gradient(180deg, rgba(245, 248, 252, 0.98), rgba(255, 255, 255, 0.95));
}

.mgmt-form-shell .mgmt-card-body,
.mgmt-history-shell .mgmt-card-body {
  padding: 20px 22px 22px;
}

.mgmt-stack .mgmt-card {
  transition: transform 0.12s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.mgmt-stack .mgmt-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.08);
}

.mgmt-history-shell .mgmt-accordion {
  border-radius: 18px;
  border-color: rgba(203, 213, 225, 0.78);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
}

.mgmt-accordion--attention {
  border-color: rgba(245, 158, 11, 0.28);
}

.mgmt-accordion--healthy {
  border-color: rgba(34, 197, 94, 0.22);
}

.mgmt-history-shell .mgmt-accordion__summary {
  background: rgba(255, 255, 255, 0.92);
}

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

.mgmt-review-snapshot__item {
  padding: 17px 18px;
  border-radius: 20px;
  border: 1px solid rgba(208, 219, 232, 0.8);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.mgmt-review-snapshot__value {
  margin-top: 6px;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.15rem;
  color: #10213a;
}

.mgmt-review-snapshot__meta {
  margin-top: 6px;
  font-size: 0.84rem;
  color: #64748b;
  line-height: 1.5;
}

@media (max-width: 1024px) {
  .mgmt-exec-hero,
  .mgmt-exec-layout,
  .mgmt-exec-layout--bottom {
    grid-template-columns: 1fr;
  }

  .mgmt-exec-kpis,
  .mgmt-decision-grid,
  .mgmt-mini-grid,
  .mgmt-review-snapshot {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .mgmt-exec-hero,
  .mgmt-exec-panel,
  .mgmt-exec-side {
    padding: 18px;
  }

  .mgmt-exec-kpis,
  .mgmt-decision-grid,
  .mgmt-mini-grid,
  .mgmt-review-snapshot {
    grid-template-columns: 1fr;
  }

  .mgmt-agenda-item {
    grid-template-columns: 1fr;
  }

  .mgmt-quick-initiative {
    grid-template-columns: 1fr;
  }

  .mgmt-alert-item,
  .mgmt-owner-row,
  .mgmt-exec-panel__header {
    flex-direction: column;
    align-items: flex-start;
  }

  .mgmt-page-hero {
    flex-direction: column;
    padding: 18px;
  }

  .mgmt-page-hero__actions {
    width: 100%;
    justify-content: flex-start;
  }

  .mgmt-view-toggle {
    width: 100%;
  }

  .mgmt-filter-grid {
    grid-template-columns: 1fr;
  }

  .mgmt-view-toggle .primary-btn,
  .mgmt-view-toggle .secondary-btn {
    flex: 1;
  }

  .mgmt-timeline-scale,
  .mgmt-timeline-row {
    grid-template-columns: 1fr;
  }

  .mgmt-timeline-row__status {
    justify-content: flex-start;
  }

  .mgmt-timeline-row__actions {
    justify-content: flex-start;
  }

  .mgmt-home-timeline__head {
    flex-direction: column;
    align-items: flex-start;
  }

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

  .mgmt-kr-linked-item,
  .mgmt-quick-initiative__actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

.admin-hero {
  padding: 22px 24px;
  border: 1px solid rgba(203, 213, 225, 0.78);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 250, 255, 0.94));
  box-shadow: 0 20px 44px rgba(15, 23, 42, 0.07);
}

.admin-command-deck {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
}

.admin-command-card {
  padding: 1.2rem 1.25rem;
  border-radius: 24px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background:
    radial-gradient(circle at top right, rgba(59, 130, 246, 0.08), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 251, 255, 0.97));
  box-shadow: 0 18px 36px rgba(15, 23, 42, 0.06);
}

.admin-command-card--workspace {
  background:
    radial-gradient(circle at top right, rgba(16, 185, 129, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 251, 255, 0.97));
}

.admin-command-card__eyebrow {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748b;
}

.admin-command-card__title {
  margin: 0.35rem 0 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.25rem;
  line-height: 1.15;
  color: var(--accent-3);
}

.admin-command-card__text {
  margin: 0.5rem 0 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: 0.92rem;
}

.admin-command-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-top: 0.85rem;
  color: #526173;
  font-size: 0.82rem;
}

.admin-command-card__meta span {
  padding: 0.55rem 0.75rem;
  border-radius: 999px;
  border: 1px solid rgba(203, 213, 225, 0.78);
  background: rgba(255, 255, 255, 0.8);
}

.admin-command-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-top: 1rem;
}

.admin-tabs {
  gap: 0.7rem;
  margin-top: 1.1rem;
}

.admin-tab {
  padding: 0.68rem 1rem;
  border-radius: 14px;
  border-color: rgba(203, 213, 225, 0.82);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(248, 250, 252, 0.96));
  color: var(--ink);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
}

.admin-tab.is-active {
  border-color: rgba(96, 165, 250, 0.42);
  background: linear-gradient(180deg, rgba(239, 246, 255, 1), rgba(255, 255, 255, 0.98));
  box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.46), 0 14px 28px rgba(59, 130, 246, 0.12);
}

.admin-section-hero {
  padding: 18px 20px;
  border: 1px solid rgba(203, 213, 225, 0.72);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(247, 250, 253, 0.98), rgba(255, 255, 255, 0.96));
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.admin-kicker {
  color: #0b5f7b;
}

.admin-section-title {
  font-size: 1.5rem;
  font-weight: 700;
}

.admin-summary-grid {
  gap: 0.95rem;
}

.admin-summary-card {
  min-height: 108px;
  padding: 1rem 1.1rem;
  border-radius: 20px;
  border-color: rgba(203, 213, 225, 0.82);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(244, 248, 252, 0.96));
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.05);
}

.admin-summary-value {
  font-family: "Merriweather", Georgia, serif;
  font-weight: 700;
}

.admin-search {
  min-height: 54px;
  padding: 0 16px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
}

.admin-search .input-field {
  border: 0;
  box-shadow: none;
  background: transparent;
  padding-left: 0;
  padding-right: 0;
}

.admin-search .input-field:focus {
  box-shadow: none;
}

.admin-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
}

.admin-filter-chip {
  min-height: 34px;
  padding: 0 0.9rem;
  border-radius: 999px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
  font-size: 0.8rem;
  font-weight: 700;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.admin-filter-chip:hover {
  border-color: rgba(96, 165, 250, 0.45);
  background: rgba(248, 250, 252, 1);
}

.admin-filter-chip.is-active {
  border-color: rgba(96, 165, 250, 0.45);
  background: rgba(239, 246, 255, 1);
  color: #1d4ed8;
  box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.42), 0 10px 22px rgba(59, 130, 246, 0.08);
}

.admin-panel.card {
  border-radius: 24px;
  border-color: rgba(211, 220, 231, 0.84);
  background:
    linear-gradient(180deg, rgba(253, 254, 255, 0.98), rgba(248, 251, 255, 0.94));
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.06);
}

.admin-users-layout {
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr);
}

.admin-users-list {
  padding: 1rem;
  gap: 0.85rem;
  background:
    linear-gradient(180deg, rgba(247, 250, 253, 0.7), rgba(255, 255, 255, 0.92));
}

.admin-user-row {
  position: relative;
  padding: 1rem 1.1rem;
  border-radius: 18px;
  border-color: rgba(211, 220, 231, 0.82);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.03);
}

.admin-user-row::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  bottom: 16px;
  width: 3px;
  border-radius: 999px;
  background: transparent;
  transition: background-color 0.18s ease;
}

.admin-user-row:hover {
  border-color: rgba(157, 184, 228, 0.72);
  box-shadow: 0 16px 28px rgba(39, 85, 167, 0.08);
}

.admin-user-row.is-active {
  border-color: rgba(147, 197, 253, 0.72);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(243, 248, 255, 0.98));
  box-shadow: 0 0 0 1px rgba(147, 197, 253, 0.44), 0 18px 36px rgba(37, 99, 235, 0.1);
}

.admin-user-row.is-active::before {
  background: linear-gradient(180deg, #4f7ef7, #80b8ef);
}

.admin-user-row__email {
  font-size: 1.03rem;
}

.admin-user-row__foot {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem 0.9rem;
  margin-top: 0.55rem;
  font-size: 0.76rem;
  color: #64748b;
}

.admin-user-row__tenant {
  max-width: 280px;
  font-size: 0.8rem;
  color: #5b6776;
}

.admin-user-row__tenant strong,
.admin-user-row__tenant span {
  display: block;
}

.admin-user-row__tenant strong {
  color: #1e293b;
  font-size: 0.84rem;
}

.admin-user-row__tenant span {
  margin-top: 0.15rem;
  color: #64748b;
}

.admin-user-drawer {
  border-left: 1px solid rgba(203, 213, 225, 0.78);
  background:
    linear-gradient(180deg, rgba(248, 251, 255, 0.96), rgba(255, 255, 255, 0.98));
  padding: 1.1rem;
}

.admin-user-drawer__panel {
  gap: 1.1rem;
}

.admin-user-drawer__eyebrow {
  color: #0b5f7b;
}

.admin-user-drawer__title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.18rem;
  font-weight: 700;
}

.admin-user-drawer__insights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

.admin-user-insight {
  padding: 0.95rem 1rem;
  border-radius: 16px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 253, 0.96));
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
}

.admin-user-insight span {
  display: block;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748b;
}

.admin-user-insight strong {
  display: block;
  margin-top: 0.4rem;
  color: #0f172a;
  font-size: 0.92rem;
  line-height: 1.4;
}

.admin-clients-list {
  padding: 1rem;
}

.admin-client-row .admin-user-row__tenant {
  max-width: 320px;
}

.admin-client-drawer__panel {
  gap: 1.1rem;
}

.admin-health-console {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.admin-health-overview-grid,
.admin-health-signal-grid,
.admin-health-board,
.admin-health-watch-grid {
  display: grid;
  gap: 1rem;
  align-items: start;
}

.admin-health-overview-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.admin-health-overview-card {
  min-height: 118px;
  padding: 0.95rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: #ffffff;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
}

.admin-health-overview-card__eyebrow,
.admin-health-panel__eyebrow,
.admin-health-watch__eyebrow,
.admin-health-signal-card__label {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 700;
}

.admin-health-overview-card__eyebrow,
.admin-health-panel__eyebrow,
.admin-health-watch__eyebrow {
  color: #94a3b8;
}

.admin-health-overview-card__label {
  margin-top: 0.45rem;
  color: #475569;
  font-size: 0.84rem;
  line-height: 1.5;
}

.admin-health-overview-card__value {
  margin-top: 0.55rem;
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1.12;
  color: #0f172a;
}

.admin-health-overview-card__note {
  margin-top: 0.5rem;
  font-size: 0.78rem;
  line-height: 1.45;
  color: #64748b;
}

.admin-health-signal-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-health-signal-card,
.admin-health-queue-row {
  --admin-health-accent: #334155;
  --admin-health-border: rgba(203, 213, 225, 0.82);
  --admin-health-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 253, 0.96));
  --admin-health-soft: rgba(241, 245, 249, 0.92);
  border: 1px solid var(--admin-health-border);
  background: var(--admin-health-bg);
}

.admin-health-signal-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  min-height: 148px;
  padding: 0.95rem 1rem;
  border-radius: 18px;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04);
  text-align: left;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.admin-health-signal-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 20px 36px rgba(15, 23, 42, 0.08);
}

.admin-health-signal-card__label {
  color: var(--admin-health-accent);
}

.admin-health-signal-card__value {
  margin-top: 0.7rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  color: #0f172a;
}

.admin-health-signal-card__caption {
  margin-top: 0.55rem;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #475569;
}

.admin-health-signal-card__action {
  margin-top: auto;
  padding-top: 1rem;
  font-size: 0.8rem;
  font-weight: 800;
  color: var(--admin-health-accent);
}

.admin-health-board {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-health-watch-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-health-panel,
.admin-health-watch {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0.85rem;
  height: 100%;
}

.admin-health-panel__head,
.admin-health-watch__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.admin-health-panel__intro,
.admin-health-watch__intro {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
}

.admin-health-panel__body,
.admin-health-watch__body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
}

.admin-health-panel__footer,
.admin-health-watch__footer {
  display: flex;
  align-items: flex-end;
}

.admin-health-panel__title,
.admin-health-watch__title {
  margin: 0;
  font-size: 1.08rem;
  font-weight: 800;
  color: #0f172a;
}

.admin-health-panel__text,
.admin-health-watch__text {
  margin: 0;
  color: #64748b;
  font-size: 0.9rem;
  line-height: 1.55;
}

.admin-health-panel__action,
.admin-health-watch__action,
.admin-health-item__action {
  display: inline-flex;
  white-space: nowrap;
  flex-shrink: 0;
  min-width: 120px;
  min-height: 40px;
  padding: 0.58rem 0.9rem;
  justify-content: center;
}

.admin-health-list,
.admin-health-queue-list,
.admin-health-fact-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}

.admin-health-queue-row,
.admin-health-fact-row,
.admin-health-item {
  padding: 0.9rem 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.025);
}

.admin-health-queue-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 0.85rem;
  text-align: left;
}

.admin-health-fact-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.85rem;
}

.admin-health-fact-row__body {
  min-width: 0;
}

.admin-health-fact-row__label {
  color: #0f172a;
  font-size: 0.92rem;
  font-weight: 700;
}

.admin-health-fact-row__caption {
  margin-top: 0.2rem;
  color: #64748b;
  font-size: 0.79rem;
  line-height: 1.5;
}

.admin-health-fact-row__value {
  color: #0f172a;
  font-size: 1rem;
  font-weight: 800;
  text-align: right;
  white-space: nowrap;
}

.admin-health-queue-row__value {
  min-width: 50px;
  padding: 0.42rem 0.62rem;
  border-radius: 14px;
  background: var(--admin-health-soft);
  font-size: 1rem;
  font-weight: 800;
  color: var(--admin-health-accent);
  text-align: center;
}

.admin-health-queue-row__body {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  min-width: 0;
}

.admin-health-queue-row__label {
  font-size: 0.95rem;
  font-weight: 800;
  color: #0f172a;
}

.admin-health-queue-row__caption {
  color: #64748b;
  font-size: 0.8rem;
  line-height: 1.5;
}

.admin-health-queue-row__action {
  min-height: 38px;
  align-self: center;
  padding-inline: 0.95rem;
  white-space: nowrap;
}

.admin-health-capacity-card {
  padding: 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(191, 219, 254, 0.82);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(244, 248, 255, 0.95));
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.035);
}

.admin-health-capacity-card__topline,
.admin-health-capacity-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.admin-health-capacity-card__label {
  color: #475569;
  font-size: 0.82rem;
  font-weight: 700;
}

.admin-health-capacity-card__value {
  color: #0f172a;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.08rem;
}

.admin-health-capacity-card__bar {
  position: relative;
  height: 12px;
  margin-top: 0.8rem;
  overflow: hidden;
  border-radius: 999px;
  border: 1px solid rgba(191, 219, 254, 0.82);
  background: rgba(219, 234, 254, 0.44);
}

.admin-health-capacity-card__bar span {
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--admin-health-capacity, 0%);
  border-radius: 999px;
  background: linear-gradient(90deg, #2563eb, #1d4ed8 72%);
}

.admin-health-capacity-card__meta {
  margin-top: 0.65rem;
  color: #475569;
  font-size: 0.8rem;
}

.admin-health-capacity-card__meta strong {
  color: #0f172a;
  font-size: 0.82rem;
}

.admin-health-signal-card.is-amber,
.admin-health-queue-row.is-amber {
  --admin-health-accent: #92400e;
  --admin-health-border: rgba(253, 230, 138, 0.92);
  --admin-health-bg: linear-gradient(180deg, rgba(255, 251, 235, 0.98), rgba(255, 255, 255, 0.96));
  --admin-health-soft: rgba(254, 243, 199, 0.75);
}

.admin-health-signal-card.is-rose,
.admin-health-queue-row.is-rose {
  --admin-health-accent: #9f1239;
  --admin-health-border: rgba(254, 205, 211, 0.96);
  --admin-health-bg: linear-gradient(180deg, rgba(255, 241, 242, 0.98), rgba(255, 255, 255, 0.96));
  --admin-health-soft: rgba(255, 228, 230, 0.82);
}

.admin-health-signal-card.is-sky,
.admin-health-queue-row.is-sky {
  --admin-health-accent: #0c4a6e;
  --admin-health-border: rgba(186, 230, 253, 0.96);
  --admin-health-bg: linear-gradient(180deg, rgba(240, 249, 255, 0.98), rgba(255, 255, 255, 0.96));
  --admin-health-soft: rgba(224, 242, 254, 0.82);
}

.admin-health-signal-card.is-violet,
.admin-health-queue-row.is-violet {
  --admin-health-accent: #5b21b6;
  --admin-health-border: rgba(221, 214, 254, 0.98);
  --admin-health-bg: linear-gradient(180deg, rgba(245, 243, 255, 0.98), rgba(255, 255, 255, 0.96));
  --admin-health-soft: rgba(237, 233, 254, 0.84);
}

.admin-health-signal-card.is-slate,
.admin-health-queue-row.is-slate {
  --admin-health-accent: #334155;
  --admin-health-border: rgba(203, 213, 225, 0.92);
  --admin-health-bg: linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.96));
  --admin-health-soft: rgba(226, 232, 240, 0.84);
}

.admin-health-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.8rem;
}

.admin-health-item__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
}

.admin-health-item__email {
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.3;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.admin-health-item__name {
  margin-top: 0;
  font-size: 0.82rem;
  color: #64748b;
}

.admin-health-item__meta {
  margin-top: 0.1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.admin-health-item__meta-pill {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 0.3rem 0.62rem;
  border-radius: 999px;
  border: 1px solid rgba(203, 213, 225, 0.78);
  background: rgba(248, 250, 252, 0.92);
  font-size: 0.76rem;
  color: #64748b;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.admin-health-item__action {
  justify-self: start;
  align-self: end;
}

.admin-health-empty {
  padding: 0.9rem 0.95rem;
  border-radius: 16px;
  border: 1px dashed rgba(203, 213, 225, 0.9);
  background: rgba(248, 250, 252, 0.72);
  font-size: 0.88rem;
  color: #64748b;
}

.admin-health-shell {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.admin-health-section,
.admin-health-list-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0.9rem;
  height: 100%;
  border-radius: 22px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: #ffffff;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.045);
}

.admin-health-section__head,
.admin-health-list-card__head {
  display: flex;
  flex-direction: column;
  gap: 0.32rem;
  align-items: center;
  text-align: center;
}

.admin-health-section__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #94a3b8;
}

.admin-health-section__title,
.admin-health-list-card__title {
  margin: 0;
  color: #0f172a;
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.3;
}

.admin-health-section__text,
.admin-health-list-card__text {
  margin: 0;
  color: #64748b;
  font-size: 0.9rem;
  line-height: 1.55;
}

.admin-health-section__body,
.admin-health-list-card__body {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  min-width: 0;
}

.admin-health-section__footer,
.admin-health-list-card__footer {
  display: flex;
  align-items: flex-end;
}

.admin-health-section__action {
  min-width: 124px;
  min-height: 40px;
  justify-content: center;
}

.admin-health-action-list,
.admin-health-metric-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.admin-health-action-row {
  --admin-health-accent: #334155;
  --admin-health-surface: rgba(241, 245, 249, 0.92);
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr) max-content;
  align-items: center;
  gap: 1rem;
  padding: 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.03);
}

.admin-health-action-row.is-amber {
  --admin-health-accent: #a16207;
  --admin-health-surface: rgba(254, 243, 199, 0.75);
}

.admin-health-action-row.is-rose {
  --admin-health-accent: #be123c;
  --admin-health-surface: rgba(255, 228, 230, 0.82);
}

.admin-health-action-row.is-violet {
  --admin-health-accent: #6d28d9;
  --admin-health-surface: rgba(237, 233, 254, 0.84);
}

.admin-health-action-row.is-sky {
  --admin-health-accent: #0369a1;
  --admin-health-surface: rgba(224, 242, 254, 0.82);
}

.admin-health-action-row.is-slate {
  --admin-health-accent: #334155;
  --admin-health-surface: rgba(226, 232, 240, 0.84);
}

.admin-health-action-row__value {
  min-width: 56px;
  padding: 0.42rem 0.62rem;
  border-radius: 14px;
  background: var(--admin-health-surface);
  color: var(--admin-health-accent);
  font-size: 1rem;
  font-weight: 800;
  text-align: center;
}

.admin-health-action-row__body {
  display: flex;
  flex-direction: column;
  gap: 0.16rem;
  min-width: 0;
  align-items: center;
  text-align: center;
}

.admin-health-action-row__label {
  color: #0f172a;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.28;
}

.admin-health-action-row__caption {
  color: #64748b;
  font-size: 0.84rem;
  line-height: 1.5;
  max-width: 720px;
}

.admin-health-action-row__cta {
  min-height: 38px;
  align-self: center;
  min-width: 156px;
  padding-inline: 1rem;
  white-space: nowrap;
}

.admin-client-toolbar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 0.9rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}

.admin-client-toolbar__field {
  min-width: 180px;
}

.admin-client-module-grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 0.95rem;
}

.admin-client-module-card {
  padding: 1rem;
  border-radius: 20px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
  box-shadow: 0 14px 26px rgba(15, 23, 42, 0.04);
}

.admin-client-module-card.is-enabled {
  border-color: rgba(125, 211, 252, 0.54);
  box-shadow: 0 0 0 1px rgba(186, 230, 253, 0.75), 0 14px 30px rgba(14, 165, 233, 0.08);
  background:
    radial-gradient(circle at top right, rgba(186, 230, 253, 0.24), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(240, 249, 255, 0.95));
}

.admin-client-module-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.8rem;
  margin-bottom: 0.85rem;
}

.admin-client-module-card__title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1rem;
  font-weight: 700;
  color: #12253f;
}

.admin-client-module-card__caption {
  margin-top: 0.28rem;
  font-size: 0.79rem;
  color: #64748b;
  line-height: 1.5;
}

.admin-client-switch {
  display: inline-flex;
  align-items: center;
  gap: 0.48rem;
  padding: 0.45rem 0.72rem;
  border-radius: 999px;
  border: 1px solid rgba(191, 219, 254, 0.82);
  background: rgba(239, 246, 255, 0.92);
  color: #1d4ed8;
  font-size: 0.78rem;
  font-weight: 700;
  white-space: nowrap;
}

.admin-client-switch input {
  accent-color: #2563eb;
}

.admin-client-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.admin-client-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1rem;
}

.admin-client-footer-note {
  margin-top: 0.95rem;
  padding: 0.85rem 0.95rem;
  border-radius: 16px;
  border: 1px dashed rgba(148, 163, 184, 0.68);
  background: rgba(248, 250, 252, 0.82);
  color: #475569;
  font-size: 0.79rem;
  line-height: 1.6;
}

.admin-user-drawer__meta-item,
.admin-user-drawer__section {
  border-radius: 18px;
  border-color: rgba(203, 213, 225, 0.82);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 253, 0.96));
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.admin-drawer-close {
  border-radius: 14px;
  border-color: rgba(203, 213, 225, 0.82);
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.admin-action-btn {
  justify-content: flex-start;
  min-height: 38px;
  padding: 0.58rem 0.85rem;
  border-radius: 13px;
  border-color: rgba(203, 213, 225, 0.82);
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.96), rgba(255, 255, 255, 0.98));
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.03);
}

.admin-action-btn:hover {
  background: linear-gradient(180deg, rgba(241, 245, 249, 1), rgba(255, 255, 255, 0.98));
  border-color: rgba(148, 163, 184, 0.48);
}

.admin-tenant-card__load {
  display: grid;
  gap: 0.55rem;
}

.admin-tenant-progress {
  position: relative;
  height: 12px;
  overflow: hidden;
  border-radius: 999px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: rgba(241, 245, 249, 0.92);
}

.admin-tenant-progress span {
  position: absolute;
  inset: 0 auto 0 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #22c55e, #16a34a);
}

.admin-tenant-progress.is-warning span {
  background: linear-gradient(90deg, #f59e0b, #d97706);
}

.admin-tenant-progress.is-critical span {
  background: linear-gradient(90deg, #ef4444, #dc2626);
}

.admin-tenant-progress__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  font-size: 0.8rem;
  color: #64748b;
}

.admin-tenant-progress__meta strong {
  color: #0f172a;
  font-size: 0.88rem;
}

.admin-tenant-card__module-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}

.admin-tenant-module {
  padding: 0.9rem 0.95rem;
  border-radius: 18px;
  border: 1px solid rgba(226, 232, 240, 0.92);
  background: rgba(248, 250, 252, 0.82);
}

.admin-tenant-module.is-enabled {
  border-color: rgba(147, 197, 253, 0.55);
  background: rgba(239, 246, 255, 0.76);
}

.admin-tenant-module span,
.admin-tenant-module strong,
.admin-tenant-module small {
  display: block;
}

.admin-tenant-module span {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #64748b;
}

.admin-tenant-module strong {
  margin-top: 0.35rem;
  color: #0f172a;
  font-size: 0.95rem;
}

.admin-tenant-module small {
  margin-top: 0.22rem;
  color: #64748b;
  font-size: 0.78rem;
  line-height: 1.45;
}

.admin-command-modal--confirm .admin-command-modal__lead {
  margin-bottom: 0.2rem;
}

@media (max-width: 980px) {
  .admin-command-deck,
  .admin-health-board,
  .admin-health-watch-grid,
  .admin-user-drawer__insights,
  .admin-tenant-card__module-grid,
  .admin-client-field-grid {
    grid-template-columns: 1fr;
  }

  .admin-health-signal-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .admin-client-toolbar,
  .admin-client-actions,
  .admin-tenant-progress__meta,
  .admin-user-row__foot {
    flex-direction: column;
    align-items: flex-start;
  }

  .admin-health-signal-grid,
  .admin-health-watch-grid {
    grid-template-columns: 1fr;
  }

  .admin-health-panel__head,
  .admin-health-watch__head,
  .admin-health-capacity-card__topline,
  .admin-health-capacity-card__meta {
    align-items: stretch;
  }

  .admin-health-panel__action,
  .admin-health-watch__action,
  .admin-health-section__action,
  .admin-health-item__action {
    width: 100%;
    justify-self: stretch;
  }

  .admin-health-action-row,
  .admin-health-queue-row,
  .admin-health-fact-row {
    grid-template-columns: 1fr;
  }

  .admin-health-action-row__cta,
  .admin-health-queue-row__action,
  .admin-health-fact-row__value {
    text-align: left;
    white-space: normal;
  }

  .admin-health-action-row__cta,
  .admin-health-queue-row__action {
    width: 100%;
  }
}

.team-panel {
  border-radius: 24px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 253, 0.96));
  box-shadow: 0 20px 42px rgba(15, 23, 42, 0.07);
}

.team-meta,
.team-guidance {
  padding: 18px 20px;
  border-radius: 18px;
}

.team-meta {
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: rgba(248, 250, 252, 0.84);
}

.team-guidance {
  border: 1px solid rgba(191, 219, 254, 0.8);
  background:
    linear-gradient(180deg, rgba(239, 246, 255, 0.95), rgba(247, 250, 253, 0.98));
}

.team-guidance h3 {
  font-family: "Merriweather", Georgia, serif;
  font-weight: 700;
}

.team-access-invite {
  display: grid;
  gap: 0.95rem;
}

.team-access-invite__modules {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

.team-module-toggle {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  padding: 0.95rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(203, 213, 225, 0.82);
  background: rgba(248, 250, 252, 0.84);
}

.team-module-toggle input {
  margin-top: 0.15rem;
}

.team-module-toggle strong {
  display: block;
  color: var(--ink);
  font-size: 0.95rem;
}

.team-module-toggle small,
.team-access-invite__hint {
  display: block;
  margin-top: 0.25rem;
  color: var(--muted);
  line-height: 1.45;
  font-size: 0.82rem;
}

.team-module-toggle.is-disabled {
  opacity: 0.58;
}

.team-module-profile {
  display: grid;
  gap: 0.35rem;
  padding: 0 0.1rem;
}

.team-module-profile__note {
  min-height: 46px;
  padding: 0.85rem 0.95rem;
  border-radius: 16px;
  border: 1px dashed rgba(203, 213, 225, 0.95);
  background: rgba(248, 250, 252, 0.68);
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.team-access-invite__actions {
  display: flex;
  justify-content: flex-end;
}

.team-capacity-alert {
  border: 1px solid rgba(245, 158, 11, 0.35);
  background: rgba(255, 247, 237, 0.92);
  color: #9a3412;
  border-radius: 16px;
  padding: 0.9rem 1rem;
  font-size: 0.9rem;
  line-height: 1.55;
}

.team-module-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.team-module-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 0 0.7rem;
  border-radius: 999px;
  background: rgba(219, 234, 254, 0.8);
  color: #1d4ed8;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.team-module-badge.is-muted {
  background: rgba(241, 245, 249, 0.9);
  color: #64748b;
}

.team-member-card {
  display: grid;
  gap: 0.9rem;
  background: #fff;
  border: 1px solid rgba(226, 232, 240, 0.92);
  border-radius: 18px;
  padding: 1rem 1.05rem;
}

.team-member-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.team-member-card__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.55rem;
}

.team-member-card__modules {
  display: grid;
  gap: 0.65rem;
}

.team-member-module-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(226, 232, 240, 0.85);
  border-radius: 16px;
  padding: 0.8rem 0.9rem;
  background: rgba(248, 250, 252, 0.75);
}

.team-member-module-row.is-enabled {
  border-color: rgba(147, 197, 253, 0.55);
  background: rgba(239, 246, 255, 0.72);
}

.team-member-module-row__meta {
  display: grid;
  gap: 0.18rem;
}

.team-member-module-row__meta strong {
  color: var(--ink);
  font-size: 0.94rem;
}

.team-member-module-row__meta span {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.team-member-module-row__actions {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}

.team-module-remove-btn {
  border: 1px solid rgba(248, 113, 113, 0.38);
  background: rgba(254, 242, 242, 0.96);
  color: #b91c1c;
  border-radius: 999px;
  min-height: 30px;
  padding: 0 0.85rem;
  font-size: 0.76rem;
  font-weight: 700;
}

.team-module-remove-btn:hover {
  background: rgba(254, 226, 226, 0.98);
}

.team-module-enable-btn,
.team-module-profile-btn,
.team-remove-tenant-btn,
.team-pending-invite-cancel-btn {
  border-radius: 999px;
  min-height: 30px;
  padding: 0 0.85rem;
  font-size: 0.76rem;
  font-weight: 700;
}

.team-module-enable-btn {
  border: 1px solid rgba(96, 165, 250, 0.38);
  background: rgba(239, 246, 255, 0.96);
  color: #1d4ed8;
}

.team-module-enable-btn:hover {
  background: rgba(219, 234, 254, 0.98);
}

.team-module-profile-btn {
  border: 1px solid rgba(148, 163, 184, 0.32);
  background: rgba(248, 250, 252, 0.98);
  color: #334155;
}

.team-module-profile-btn:hover {
  background: rgba(241, 245, 249, 0.98);
}

.team-remove-tenant-btn {
  border: 1px solid rgba(248, 113, 113, 0.38);
  background: rgba(254, 242, 242, 0.96);
  color: #b91c1c;
}

.team-pending-invite-cancel-btn {
  border: 1px solid rgba(248, 113, 113, 0.32);
  background: rgba(255, 247, 237, 0.98);
  color: #c2410c;
}

.team-pending-invite-cancel-btn:hover {
  background: rgba(255, 237, 213, 0.98);
}

.team-remove-tenant-btn:hover {
  background: rgba(254, 226, 226, 0.98);
}

@media (max-width: 980px) {
  .team-member-card__head,
  .team-member-module-row {
    flex-direction: column;
    align-items: flex-start;
  }

  .team-member-card__actions,
  .team-member-module-row__actions {
    width: 100%;
    justify-content: flex-start;
  }

  .mgmt-shell {
    gap: 18px;
  }
}

/* === PGES-PHASE2-MGMT-ADMIN (END) ======================= */

.dashboard-hero {
  position: relative;
  padding: 1.55rem 1.1rem 0.55rem;
}

.dashboard-hero::before {
  content: "";
  position: absolute;
  inset: -10px 12% auto;
  height: 190px;
  background: radial-gradient(circle, rgba(59, 115, 216, 0.14), rgba(59, 115, 216, 0));
  pointer-events: none;
  filter: blur(12px);
}

.dashboard-hero > * {
  position: relative;
  z-index: 1;
}

.dashboard-hero__subtitle {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.dashboard-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(203, 216, 234, 0.92);
  background: rgba(255, 255, 255, 0.82);
  color: var(--accent);
  font-size: 0.73rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.035);
}

.dashboard-hero__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.65rem;
  margin-top: 1rem;
}

.dashboard-hero__chip {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 36px;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(211, 220, 231, 0.9);
  background: rgba(255, 255, 255, 0.82);
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 700;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.03);
}

.dashboard-hero__chip.is-active {
  border-color: rgba(166, 191, 232, 0.9);
  background: rgba(240, 246, 255, 0.92);
  color: var(--accent-3);
}

.dashboard-hero__chip i {
  color: var(--accent);
}

.dashboard-mobile-advisory {
  display: none;
  align-items: flex-start;
  gap: 0.75rem;
  margin: 0 auto 1rem;
  padding: 0.95rem 1rem;
  border-radius: 20px;
  border: 1px solid rgba(245, 158, 11, 0.28);
  background: linear-gradient(180deg, rgba(255, 251, 235, 0.98), rgba(255, 247, 237, 0.96));
  color: #92400e;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.dashboard-mobile-advisory i {
  margin-top: 0.1rem;
  color: #d97706;
}

.dashboard-mobile-advisory p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.6;
}

.dashboard-mobile-advisory strong {
  color: #78350f;
}

.dashboard-panel {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
}

.dashboard-panel > * {
  position: relative;
  z-index: 1;
}

.dashboard-panel::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 118px;
  background: linear-gradient(180deg, rgba(243, 247, 252, 0.92), rgba(255, 255, 255, 0));
  pointer-events: none;
}

.dashboard-module-hub {
  position: relative;
  z-index: 1;
  padding-bottom: 1.5rem;
  margin-bottom: 1.25rem;
  border-bottom: 1px solid rgba(199, 210, 224, 0.65);
}

.dashboard-module-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

.dashboard-admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.95fr);
  gap: 1rem;
  margin-bottom: 1rem;
}

.dashboard-workspace-strip {
  padding: 1.15rem 1.2rem;
  border-radius: 22px;
  border: 1px solid rgba(211, 220, 231, 0.88);
  background:
    radial-gradient(circle at top right, rgba(59, 115, 216, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,252,255,0.97));
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.dashboard-workspace-strip__eyebrow {
  font-size: 0.74rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #64748b;
}

.dashboard-workspace-strip__title {
  margin: 0.28rem 0 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.3rem;
  color: var(--accent-3);
}

.dashboard-workspace-strip__text {
  margin: 0.45rem 0 0;
  color: var(--muted);
  line-height: 1.6;
  font-size: 0.92rem;
}

.dashboard-workspace-strip__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem;
}

.dashboard-workspace-chip {
  min-width: 170px;
  padding: 0.9rem 1rem;
  border-radius: 16px;
  border: 1px solid rgba(211, 220, 231, 0.8);
  background: rgba(255,255,255,0.86);
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.03);
}

.dashboard-workspace-chip span {
  display: block;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #64748b;
}

.dashboard-workspace-chip strong {
  display: block;
  margin-top: 0.28rem;
  font-size: 0.98rem;
  color: #1e293b;
  word-break: break-word;
}

.dashboard-module-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-height: 100%;
  padding: 1.2rem 1.2rem 1.1rem;
  border-radius: 24px;
  border: 1px solid rgba(211, 220, 231, 0.88);
  background: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,252,255,0.97));
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.dashboard-module-card:hover {
  transform: translateY(-2px);
  border-color: rgba(172, 193, 227, 0.88);
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.06);
}

.dashboard-module-card--planning {
  background:
    radial-gradient(circle at top right, rgba(69, 104, 217, 0.1), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,251,255,0.97));
}

.dashboard-module-card--crm {
  background:
    radial-gradient(circle at top right, rgba(14, 165, 233, 0.11), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,251,255,0.97));
}

.dashboard-module-card--operations {
  background:
    radial-gradient(circle at top right, rgba(34, 197, 94, 0.1), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,251,255,0.97));
}

.dashboard-module-card.is-disabled {
  opacity: 0.78;
}

.dashboard-module-card.is-disabled:hover {
  transform: none;
  border-color: rgba(211, 220, 231, 0.88);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.dashboard-module-card__icon {
  width: 50px;
  height: 50px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  color: #fff;
  background: linear-gradient(135deg, var(--accent-2), var(--accent) 72%);
  box-shadow: 0 12px 22px rgba(39, 85, 167, 0.16);
}

.dashboard-module-card--crm .dashboard-module-card__icon {
  background: linear-gradient(135deg, #0ea5e9, #2563eb);
}

.dashboard-module-card--operations .dashboard-module-card__icon {
  background: linear-gradient(135deg, #16a34a, #15803d);
}

.dashboard-module-card__eyebrow {
  font-size: 0.73rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748b;
}

.dashboard-module-card__title {
  margin: 0.2rem 0 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.34rem;
  line-height: 1.14;
  color: var(--accent-3);
}

.dashboard-module-card__text {
  margin: 0.45rem 0 0;
  color: var(--muted);
  line-height: 1.58;
  font-size: 0.94rem;
}

.dashboard-module-card__actions {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.dashboard-module-card__lock {
  font-size: 0.78rem;
  color: #64748b;
}

.dashboard-admin-strip {
  margin-top: 1rem;
  padding: 1.1rem 1.2rem;
  border-radius: 22px;
  border: 1px solid rgba(211, 220, 231, 0.88);
  background:
    radial-gradient(circle at top right, rgba(245, 158, 11, 0.08), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,252,255,0.97));
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.dashboard-admin-strip__copy {
  min-width: 0;
}

.dashboard-admin-strip__eyebrow {
  font-size: 0.73rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748b;
}

.dashboard-admin-strip__title {
  margin: 0.3rem 0 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.25rem;
  line-height: 1.15;
  color: var(--accent-3);
}

.dashboard-admin-strip__text {
  margin: 0.45rem 0 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 0.94rem;
}

.dashboard-admin-strip__actions {
  flex-shrink: 0;
}

.dashboard-admin-strip__note {
  margin-top: 0.85rem;
  padding: 0.7rem 0.9rem;
  border-radius: 16px;
  background: rgba(248, 250, 252, 0.92);
  border: 1px solid rgba(217, 222, 231, 0.95);
  color: var(--muted);
  font-size: 0.9rem;
}

.dashboard-team-strip {
  margin-top: 1rem;
  padding: 1.15rem 1.2rem;
  border-radius: 22px;
  border: 1px solid rgba(211, 220, 231, 0.88);
  background:
    radial-gradient(circle at top right, rgba(59, 115, 216, 0.07), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,252,255,0.97));
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.dashboard-team-strip__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.dashboard-team-strip__eyebrow,
.team-access-card__label {
  font-size: 0.73rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748b;
}

.dashboard-team-strip__title {
  margin: 0.3rem 0 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.2rem;
  line-height: 1.15;
  color: var(--accent-3);
}

.dashboard-team-strip__text {
  margin: 0.45rem 0 0;
  color: var(--muted);
  line-height: 1.55;
  font-size: 0.94rem;
}

.dashboard-team-strip__actions {
  flex-shrink: 0;
}

.dashboard-team-strip__stats,
.team-access-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
  margin-top: 1rem;
}

.dashboard-team-strip__stat,
.team-access-card {
  padding: 0.95rem 1rem;
  border-radius: 18px;
  border: 1px solid rgba(211, 219, 229, 0.92);
  background: rgba(255, 255, 255, 0.92);
}

.dashboard-team-strip__stat {
  margin-top: 0;
}

.dashboard-team-strip__stat-label {
  display: block;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #64748b;
}

.dashboard-team-strip__stat-value,
.team-access-card__value {
  display: block;
  margin-top: 0.35rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.5rem;
  line-height: 1;
  color: var(--accent-3);
}

.dashboard-team-strip__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
  margin-top: 1rem;
}

.dashboard-team-strip__panel {
  padding: 1rem;
  border-radius: 18px;
  border: 1px solid rgba(211, 219, 229, 0.92);
  background: rgba(255, 255, 255, 0.9);
}

.dashboard-team-strip__panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}

.dashboard-team-strip__panel-title {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--ink);
}

.dashboard-team-strip__panel-count {
  min-width: 30px;
  height: 30px;
  padding: 0 0.6rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(241, 245, 249, 0.95);
  color: var(--accent-3);
  font-weight: 700;
  font-size: 0.82rem;
}

.dashboard-team-strip__list {
  display: grid;
  gap: 0.7rem;
}

.dashboard-team-strip__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.85rem 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: rgba(248, 250, 252, 0.92);
}

.dashboard-team-strip__item-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.dashboard-team-strip__item-main strong {
  color: var(--ink);
  font-size: 0.92rem;
  line-height: 1.35;
}

.dashboard-team-strip__item-main span,
.dashboard-team-strip__empty {
  color: var(--muted);
  font-size: 0.82rem;
}

.dashboard-team-strip__item-status {
  font-size: 0.78rem;
  font-weight: 700;
  color: #b45309;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.dashboard-toolbar {
  position: relative;
  z-index: 1;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(199, 210, 224, 0.65);
}

.dashboard-section {
  position: relative;
  z-index: 1;
  padding-top: 0.5rem;
}

.dashboard-section__head {
  padding: 0 0.15rem;
}

.dashboard-section__title {
  margin: 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.68rem;
  line-height: 1.08;
  color: var(--accent-3);
}

.dashboard-section__subtitle {
  margin: 0.2rem 0 0;
  color: var(--muted);
  font-size: 0.95rem;
}

.dashboard-plan-card {
  background: linear-gradient(135deg, rgba(255,255,255,0.99), rgba(249,252,255,0.98));
  border: 1px solid rgba(215, 224, 235, 0.92);
  border-radius: 20px;
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.045);
  padding: 1.15rem 1.2rem;
}

.dashboard-plan-card__head {
  margin-bottom: 0.35rem;
}

.dashboard-plan-card__title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 800;
  color: var(--ink);
  letter-spacing: -0.01em;
}

.dashboard-plan-card__desc {
  color: var(--muted);
  line-height: 1.55;
  max-width: 58ch;
}

.dashboard-plan-card__actions {
  gap: 0.55rem;
}

.dashboard-plan-card__actions .primary-btn,
.dashboard-plan-card__actions .secondary-btn,
.dashboard-plan-card__actions .danger-btn {
  min-height: 38px;
  padding: 0.48rem 0.9rem;
  border-radius: 12px;
  font-size: 0.79rem;
  font-weight: 700;
  box-shadow: none;
}

.dashboard-plan-card__actions .primary-btn {
  background: linear-gradient(135deg, var(--accent-2), var(--accent));
}

.dashboard-plan-card__actions .primary-btn:hover {
  background: linear-gradient(135deg, #467ce1, #2956a6);
}

.dashboard-plan-card__actions .secondary-btn,
.dashboard-plan-card__actions .danger-btn {
  background: rgba(250, 252, 255, 0.94);
  border-color: rgba(211, 220, 231, 0.84);
}

.dashboard-plan-card__actions .secondary-btn:hover,
.dashboard-plan-card__actions .danger-btn:hover {
  background: rgba(244, 247, 252, 0.98);
}

@media (max-width: 980px) {
  .dashboard-module-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-admin-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-workspace-strip {
    flex-direction: column;
    align-items: flex-start;
  }

  .dashboard-workspace-strip__meta {
    justify-content: flex-start;
  }

  .dashboard-admin-strip {
    flex-direction: column;
    align-items: flex-start;
  }

  .dashboard-toolbar,
  .dashboard-section__head,
  .dashboard-plan-card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.85rem;
  }

  .dashboard-plan-card__actions,
  .dashboard-module-card__actions,
  .dashboard-admin-strip__actions,
  .dashboard-team-strip__actions {
    width: 100%;
    justify-content: flex-start;
  }

  .dashboard-plan-card__actions .primary-btn,
  .dashboard-plan-card__actions .secondary-btn,
  .dashboard-plan-card__actions .danger-btn {
    flex: 1 1 calc(50% - 0.275rem);
  }

  .dashboard-admin-strip__actions {
    width: 100%;
  }

  .dashboard-team-strip__head,
  .dashboard-team-strip__item {
    flex-direction: column;
    align-items: flex-start;
  }

  .dashboard-team-strip__actions,
  .dashboard-team-strip__stats,
  .dashboard-team-strip__grid,
  .team-access-summary {
    width: 100%;
    grid-template-columns: 1fr;
  }

  .team-access-invite__modules {
    grid-template-columns: 1fr;
  }

  .team-access-invite__actions {
    justify-content: stretch;
  }
}

@media (max-width: 760px) {
  .dashboard-hero {
    padding: 0.95rem 0 0;
  }

  .dashboard-mobile-advisory {
    display: flex;
  }

  .dashboard-module-card,
  .dashboard-workspace-strip,
  .dashboard-admin-strip,
  .dashboard-team-strip,
  .dashboard-plan-card {
    padding: 1rem;
    border-radius: 20px;
  }

  .dashboard-section__title {
    font-size: 1.45rem;
  }

  .dashboard-section__subtitle,
  .dashboard-module-card__text,
  .dashboard-admin-strip__text,
  .dashboard-team-strip__text {
    font-size: 0.92rem;
  }

  .dashboard-module-card__title,
  .dashboard-admin-strip__title,
  .dashboard-team-strip__title {
    font-size: 1.18rem;
  }

  .dashboard-workspace-chip {
    width: 100%;
    min-width: 0;
  }

  .dashboard-module-card__actions,
  .dashboard-admin-strip__actions,
  .dashboard-team-strip__actions,
  .dashboard-plan-card__actions {
    width: 100%;
  }

  .dashboard-module-card__actions > *,
  .dashboard-admin-strip__actions > *,
  .dashboard-team-strip__actions > *,
  .dashboard-plan-card__actions > * {
    width: 100%;
    flex: 1 1 100%;
  }
}

/* === PGES-PHASE1-DASHBOARD (END) ======================= */

/* === PGES-OPERATIONS (START) =========================== */

.operations-shell {
  display: grid;
  gap: 1.35rem;
}

.operations-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.75fr);
  gap: 1.25rem;
  padding: 1.75rem 1.85rem;
  border: 1px solid rgba(214, 223, 233, 0.9);
  background:
    radial-gradient(circle at top right, rgba(96, 165, 250, 0.16), transparent 32%),
    radial-gradient(circle at bottom left, rgba(191, 219, 254, 0.16), transparent 36%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(247, 250, 254, 0.97));
  box-shadow: 0 24px 46px rgba(15, 23, 42, 0.06);
}

.operations-hero::before {
  content: "";
  position: absolute;
  inset: auto -62px -82px auto;
  width: 220px;
  height: 220px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(59, 130, 246, 0.14), transparent 72%);
  pointer-events: none;
}

.operations-hero > * {
  position: relative;
  z-index: 1;
}

.operations-hero__content {
  display: grid;
  gap: 0.8rem;
  align-content: start;
}

.operations-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.operations-hero__chip {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 38px;
  padding: 0.5rem 0.88rem;
  border-radius: 999px;
  border: 1px solid rgba(208, 219, 232, 0.84);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(248, 250, 252, 0.9));
  color: var(--ink);
  font-size: 0.82rem;
  font-weight: 800;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.operations-hero__chip.is-active {
  border-color: rgba(96, 165, 250, 0.5);
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.98), rgba(255, 255, 255, 0.95));
  color: var(--accent-3);
}

.operations-hero--demands {
  box-shadow: 0 28px 54px rgba(15, 23, 42, 0.07);
}

.operations-hero__eyebrow,
.operations-modal__eyebrow {
  font-size: 0.77rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-hero__title {
  margin: 0.5rem 0 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: clamp(2rem, 3vw, 2.8rem);
  line-height: 1.02;
  color: var(--accent-3);
}

.operations-hero__text {
  margin: 0.9rem 0 0;
  max-width: 60ch;
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.7;
}

.operations-context {
  border: 1px solid rgba(211, 220, 231, 0.86);
  border-radius: 22px;
  padding: 1.05rem 1.1rem;
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.14), transparent 34%),
    linear-gradient(180deg, rgba(251, 253, 255, 0.98), rgba(247, 250, 254, 0.95));
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.05);
  display: grid;
  gap: 1rem;
  align-content: start;
}

.operations-context__meta {
  display: grid;
  gap: 0.45rem;
  color: var(--muted);
  font-size: 0.92rem;
}

.operations-context__meta span {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  line-height: 1.45;
  word-break: break-word;
}

.operations-context__meta-actions {
  padding-top: 0.25rem;
}

.operations-context__controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: flex-start;
  justify-content: flex-start;
  padding-top: 0.1rem;
  border-top: 1px dashed rgba(208, 219, 232, 0.84);
}

.operations-context__badge {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  border-radius: 999px;
  padding: 0.7rem 1rem;
  border: 1px solid rgba(199, 210, 224, 0.85);
  background: rgba(255, 255, 255, 0.94);
  color: var(--ink);
  font-weight: 700;
}

.operations-context__tenant-switch {
  display: grid;
  gap: 0.35rem;
  min-width: min(320px, 100%);
  flex: 1 1 260px;
}

.operations-context__tenant-switch small {
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-tenant-select {
  max-width: 100%;
}

.operations-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.operations-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.operations-kpi {
  background: linear-gradient(180deg, rgba(255,255,255,0.99), rgba(249,252,255,0.97));
  border: 1px solid rgba(215, 224, 235, 0.9);
  border-radius: 20px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
  padding: 1.2rem 1.25rem;
}

.operations-kpi__label {
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-kpi__value {
  margin-top: 0.5rem;
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1;
  color: var(--accent-3);
}

.operations-kpi__help {
  margin-top: 0.55rem;
  color: var(--muted);
  line-height: 1.5;
}

.operations-views,
.operations-history {
  padding: 1.1rem 1.2rem 1.2rem;
}

.operations-views {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(214, 223, 233, 0.9);
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.1), transparent 30%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.05);
}

.operations-views__copy {
  flex: 1 1 380px;
  max-width: 560px;
}

.operations-views__title,
.operations-history__title {
  margin: 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.45rem;
  line-height: 1.06;
  color: var(--accent-3);
}

.operations-views__subtitle,
.operations-history__subtitle {
  margin: 0.25rem 0 0;
  color: var(--muted);
  line-height: 1.55;
}

.operations-views__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.6rem;
  align-items: center;
}

.operations-views > .operations-views__actions:not(.operations-views__actions--subview) {
  flex: 0 1 auto;
  margin-left: auto;
}

.operations-views__actions--subview {
  flex: 1 1 100%;
  justify-content: flex-end;
  padding-top: 0.7rem;
  margin-top: 0.7rem;
  border-top: 1px dashed rgba(199, 210, 224, 0.9);
}

.operations-view-btn {
  min-height: 38px;
  padding: 0.55rem 0.95rem;
  border-radius: 999px;
  border: 1px solid rgba(199, 210, 224, 0.9);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
  color: var(--ink);
  font-weight: 800;
  transition: transform 0.16s ease, background 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.operations-view-btn:hover {
  transform: translateY(-1px);
  background: linear-gradient(180deg, rgba(248, 250, 252, 1), rgba(241, 245, 249, 0.96));
  box-shadow: 0 14px 26px rgba(15, 23, 42, 0.06);
}

.operations-view-btn.is-active {
  border-color: rgba(61, 89, 201, 0.38);
  background: linear-gradient(135deg, #2c5eb9, #1f4b99);
  color: #fff;
  box-shadow: 0 12px 24px rgba(44, 94, 185, 0.24);
}

.operations-kpi-card {
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(248,251,255,0.97));
  border: 1px solid rgba(214, 223, 233, 0.95);
  border-radius: 22px;
  box-shadow: 0 16px 32px rgba(17, 24, 39, 0.06);
  padding: 0.88rem 1rem;
}

.operations-kpi-card--critical {
  border-color: rgba(239, 68, 68, 0.28);
  background: linear-gradient(180deg, rgba(255,250,250,0.98), rgba(255,244,244,0.96));
}

.operations-kpi-card__label {
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-kpi-card__value {
  margin-top: 0.24rem;
  font-size: 1.75rem;
  font-weight: 800;
  line-height: 1;
  color: var(--accent-3);
}

.operations-kpi-card__caption {
  margin-top: 0.26rem;
  color: var(--muted);
  line-height: 1.35;
  font-size: 0.86rem;
}

.operations-toolbar,
.operations-triage {
  padding: 1.1rem 1.2rem 1.2rem;
}

.operations-triage {
  border: 1px solid rgba(214, 223, 233, 0.9);
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.08), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96));
  box-shadow: 0 20px 38px rgba(15, 23, 42, 0.05);
}

.operations-archive-hero {
  padding: 1.05rem 1.2rem;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
}

.operations-attention-board {
  padding: 0.85rem 1.05rem 0.95rem;
  border: 1px solid rgba(214, 223, 233, 0.9);
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.1), transparent 30%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.05);
}

.operations-attention-board__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.7rem;
}

.operations-attention-board__title,
.operations-attention-card__title {
  margin: 0;
  font-family: "Merriweather", Georgia, serif;
  color: var(--accent-3);
}

.operations-attention-board__title {
  font-size: 1.16rem;
}

.operations-attention-board__subtitle,
.operations-attention-card__subtitle {
  margin: 0.28rem 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.operations-attention-board__subtitle {
  font-size: 0.88rem;
}

.operations-attention-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.operations-attention-compact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.operations-attention-mini {
  width: 100%;
  text-align: left;
  border: 1px solid rgba(217, 222, 231, 0.92);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95));
  padding: 0.9rem 1rem;
  display: grid;
  gap: 0.45rem;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.operations-attention-mini:hover {
  transform: translateY(-1px);
  border-color: rgba(148, 163, 184, 0.65);
  box-shadow: 0 12px 22px rgba(15, 23, 42, 0.08);
}

.operations-attention-mini__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}

.operations-attention-mini__label {
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-attention-mini__body {
  color: var(--ink);
  font-weight: 700;
  line-height: 1.4;
}

.operations-attention-card {
  padding: 1rem 1.05rem;
  border-radius: 20px;
  border: 1px solid rgba(214, 223, 233, 0.92);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.95));
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.05);
}

.operations-attention-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}

.operations-attention-card__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.45rem;
}

.operations-attention-card__title {
  font-size: 1.15rem;
  line-height: 1.1;
}

.operations-attention-card__subtitle {
  font-size: 0.88rem;
}

.operations-attention-card__count {
  min-width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(31, 75, 153, 0.08);
  color: var(--accent-3);
  font-weight: 800;
}

.operations-mini-link {
  border: 0;
  background: transparent;
  padding: 0;
  color: #1d4ed8;
  font-size: 0.84rem;
  font-weight: 800;
  cursor: pointer;
}

.operations-mini-link:hover {
  color: #1e40af;
  text-decoration: underline;
}

.operations-attention-list {
  display: grid;
  gap: 0.7rem;
}

.operations-attention-item {
  width: 100%;
  text-align: left;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: start;
  padding: 0.88rem 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(217, 222, 231, 0.95);
  background: rgba(255, 255, 255, 0.98);
  transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.operations-attention-item:hover {
  transform: translateY(-1px);
  border-color: rgba(148, 163, 184, 0.65);
  box-shadow: 0 12px 22px rgba(15, 23, 42, 0.08);
}

.operations-attention-item__body {
  min-width: 0;
}

.operations-attention-item__title {
  margin-top: 0.45rem;
  font-weight: 800;
  color: var(--ink);
  line-height: 1.32;
}

.operations-attention-item__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
  color: var(--muted);
  font-size: 0.83rem;
  line-height: 1.45;
}

.operations-attention-item__date {
  font-size: 0.84rem;
  font-weight: 800;
  color: var(--ink);
  white-space: nowrap;
}

.operations-attention-item__date.is-overdue {
  color: #b91c1c;
}

.operations-workspace__aside {
  display: none !important;
}

.operations-focus-strip {
  padding: 0.9rem 1.2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(214, 223, 233, 0.9);
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.1), transparent 32%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95));
  box-shadow: 0 16px 30px rgba(15, 23, 42, 0.05);
}

.operations-focus-strip__copy {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--muted);
}

.operations-focus-strip__copy strong {
  color: var(--ink);
}

.operations-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(214, 223, 233, 0.9);
  background:
    radial-gradient(circle at top right, rgba(191, 219, 254, 0.12), transparent 32%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.05);
}

.operations-toolbar--demands {
  box-shadow: 0 22px 40px rgba(15, 23, 42, 0.06);
}

.operations-inline-hint {
  border: 1px solid rgba(208, 219, 232, 0.9);
  border-radius: 18px;
  padding: 0.84rem 1rem;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.94), rgba(255, 255, 255, 0.88));
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.55;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.operations-inline-hint--toolbar {
  max-width: 320px;
}

.operations-toolbar__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem;
}

.operations-toolbar__filters {
  flex: 1;
  display: grid;
  grid-template-columns: 1.2fr repeat(4, minmax(0, 1fr));
  gap: 0.95rem;
}

.operations-filter,
.operations-field {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.operations-filter__label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.operations-filter--search {
  min-width: 220px;
}

.operations-filter .input-field,
.operations-field .input-field {
  min-width: 0;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.03);
}

.operations-filter span,
.operations-field span {
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-filter__edit-btn {
  border: 0;
  background: transparent;
  padding: 0;
  color: #1d4ed8;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
}

.operations-filter__edit-btn:hover {
  color: #1e40af;
  text-decoration: underline;
}

.operations-filter__edit-btn[disabled] {
  opacity: 0.56;
  cursor: wait;
  text-decoration: none;
}

.operations-triage__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.85rem;
}

.operations-triage__title,
.operations-modal__title {
  margin: 0;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.75rem;
  line-height: 1.04;
  color: var(--accent-3);
}

.operations-triage__subtitle {
  margin: 0.25rem 0 0;
  color: var(--muted);
}

.operations-triage__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0.55rem 0.95rem;
  border-radius: 999px;
  border: 1px solid rgba(208, 219, 232, 0.84);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9));
  color: var(--ink);
  font-weight: 800;
  font-size: 0.9rem;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.operations-sort-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  border: 0;
  background: transparent;
  padding: 0;
  color: inherit;
  font: inherit;
  text-transform: inherit;
  letter-spacing: inherit;
  cursor: pointer;
}

.operations-sort-btn i {
  font-size: 0.78rem;
  opacity: 0.7;
}

.operations-sort-btn.is-active {
  color: var(--accent-3);
}

.operations-sort-btn.is-active i {
  opacity: 1;
}

.operations-table-row--clickable {
  cursor: pointer;
  transition: transform 0.16s ease;
}

.operations-table-row--clickable:hover td {
  background: rgba(248, 250, 252, 0.92);
}

.operations-row-link {
  font-size: 0.84rem;
  font-weight: 800;
  color: #1d4ed8;
}

.operations-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(217, 222, 231, 0.92);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
  box-shadow: 0 22px 40px rgba(15, 23, 42, 0.06);
  padding: 0.35rem 0.45rem;
}

.operations-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.9rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(223, 229, 238, 0.95);
}

.operations-pagination__summary {
  color: var(--muted);
  font-size: 0.92rem;
}

.operations-pagination__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.6rem;
}

.operations-pagination__pages {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.operations-pagination__ellipsis {
  color: var(--muted);
  font-weight: 700;
  padding: 0 0.15rem;
}

.operations-page-btn {
  min-width: 40px;
  min-height: 38px;
  padding: 0.5rem 0.75rem;
  border-radius: 12px;
  border: 1px solid rgba(199, 210, 224, 0.9);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
  color: var(--ink);
  font-weight: 800;
  transition: transform 0.16s ease, background 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.operations-page-btn:hover {
  transform: translateY(-1px);
  background: linear-gradient(180deg, rgba(248, 250, 252, 1), rgba(241, 245, 249, 0.96));
  box-shadow: 0 14px 26px rgba(15, 23, 42, 0.06);
}

.operations-page-btn.is-active {
  border-color: rgba(61, 89, 201, 0.38);
  background: linear-gradient(135deg, #2c5eb9, #1f4b99);
  color: #fff;
  box-shadow: 0 12px 24px rgba(44, 94, 185, 0.2);
}

.operations-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 900px;
}

.operations-table thead th {
  text-align: left;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 0.78rem 0.82rem;
  border-bottom: 1px solid rgba(217, 222, 231, 0.85);
  background: rgba(248, 250, 252, 0.92);
}

.operations-table tbody td {
  padding: 0.78rem 0.82rem;
  border-bottom: 1px solid rgba(232, 237, 245, 0.95);
  vertical-align: top;
  color: var(--ink);
  line-height: 1.45;
}

.operations-table tbody tr.is-overdue {
  background: rgba(255, 246, 246, 0.64);
}

.operations-demand-title {
  font-weight: 800;
  color: var(--ink);
  line-height: 1.22;
}

.operations-demand-meta {
  margin-top: 0.18rem;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.34;
}

.operations-deadline {
  font-weight: 700;
  color: var(--ink);
}

.operations-deadline--overdue {
  color: #b91c1c;
}

.operations-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0.34rem 0.72rem;
  border-radius: 999px;
  font-size: 0.82rem;
  font-weight: 800;
  border: 1px solid rgba(199, 210, 224, 0.85);
  background: rgba(248, 250, 252, 0.96);
  color: var(--ink);
}

.operations-pill--normal {
  color: #234f9f;
  border-color: rgba(96, 165, 250, 0.35);
  background: rgba(239, 246, 255, 0.98);
}

.operations-pill--urgent,
.operations-pill--progress {
  color: #92400e;
  border-color: rgba(245, 158, 11, 0.35);
  background: rgba(255, 247, 237, 0.98);
}

.operations-pill--waiting {
  color: #7c3aed;
  border-color: rgba(167, 139, 250, 0.38);
  background: rgba(245, 243, 255, 0.98);
}

.operations-pill--critical {
  color: #b91c1c;
  border-color: rgba(248, 113, 113, 0.38);
  background: rgba(254, 242, 242, 0.98);
}

.operations-pill--resolved {
  color: #166534;
  border-color: rgba(74, 222, 128, 0.35);
  background: rgba(240, 253, 244, 0.98);
}

.operations-pill--archived {
  color: #475569;
  border-color: rgba(148, 163, 184, 0.35);
  background: rgba(248, 250, 252, 0.98);
}

.operations-pill--open {
  color: #1f4b99;
  border-color: rgba(96, 165, 250, 0.35);
  background: rgba(239, 246, 255, 0.98);
}

.operations-row-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.operations-row-actions__status {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 600;
}

.operations-feed-list {
  display: grid;
  gap: 0.85rem;
}

.operations-feed-item {
  border: 1px solid rgba(217, 222, 231, 0.92);
  border-radius: 20px;
  background:
    radial-gradient(circle at top right, rgba(96, 165, 250, 0.06), transparent 30%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95));
  padding: 0.95rem 1rem;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: flex-start;
  box-shadow: 0 16px 30px rgba(15, 23, 42, 0.05);
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.operations-feed-item.is-busy {
  opacity: 0.86;
}

.operations-feed-item:hover {
  transform: translateY(-1px);
  border-color: rgba(191, 219, 254, 0.95);
  box-shadow: 0 22px 38px rgba(15, 23, 42, 0.07);
}

.operations-feed-item__main {
  border: 0;
  background: transparent;
  padding: 0;
  text-align: left;
  display: grid;
  gap: 0.55rem;
}

.operations-feed-item__main:disabled {
  opacity: 0.72;
  cursor: wait;
}

.operations-feed-item__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.85rem;
}

.operations-feed-item__title-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.operations-feed-item__title {
  margin: 0;
  font-size: 1rem;
  font-weight: 800;
  color: var(--ink);
}

.operations-feed-item__date {
  white-space: nowrap;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 700;
}

.operations-feed-item__snippet {
  margin: 0;
  color: var(--ink);
  line-height: 1.55;
}

.operations-feed-item__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  color: var(--muted);
  font-size: 0.82rem;
}

.operations-feed-item__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.4rem;
  align-items: center;
}

.operations-feed-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0.3rem 0.7rem;
  border-radius: 999px;
  border: 1px solid rgba(199, 210, 224, 0.9);
  background: rgba(248, 250, 252, 0.98);
  color: var(--muted);
  font-size: 0.73rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.operations-feed-badge--shared {
  color: #1f4b99;
  border-color: rgba(96, 165, 250, 0.35);
  background: rgba(239, 246, 255, 0.98);
}

.operations-feed-badge--pending {
  color: #9a3412;
  border-color: rgba(251, 146, 60, 0.38);
  background: rgba(255, 247, 237, 0.98);
}

.operations-feed-badge--resolved {
  color: #166534;
  border-color: rgba(74, 222, 128, 0.35);
  background: rgba(240, 253, 244, 0.98);
}

.operations-inline-note {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.45;
}

.operations-inline-note--loading {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
}

.operations-action-btn,
.operations-icon-btn {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  border: 1px solid rgba(199, 210, 224, 0.9);
  background: rgba(255, 255, 255, 0.96);
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.16s ease, background 0.16s ease, border-color 0.16s ease;
}

.operations-action-btn:hover,
.operations-icon-btn:hover {
  transform: translateY(-1px);
  background: rgba(248, 250, 252, 0.98);
}

.operations-action-btn[disabled],
.operations-icon-btn[disabled] {
  opacity: 0.58;
  cursor: wait;
  transform: none;
}

.operations-action-btn--success {
  color: #166534;
  border-color: rgba(74, 222, 128, 0.35);
}

.operations-action-btn--archive {
  color: #475569;
  border-color: rgba(148, 163, 184, 0.35);
}

.operations-action-btn--danger {
  color: #b91c1c;
  border-color: rgba(248, 113, 113, 0.38);
}

.operations-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  color: var(--muted);
  padding: 2rem 0.75rem;
}

.operations-empty--compact {
  justify-content: flex-start;
  padding: 0.7rem 0.1rem;
}

.operations-empty--feed {
  padding: 2.2rem 1rem;
  border: 1px dashed rgba(199, 210, 224, 0.9);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 0.82));
}

.operations-history__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.85rem;
}

.operations-history__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.operations-history-card {
  border: 1px solid rgba(217, 222, 231, 0.92);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95));
  padding: 1rem 1.05rem;
  display: grid;
  gap: 0.7rem;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.05);
}

.operations-history-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.8rem;
}

.operations-history-card__title {
  font-weight: 800;
  color: var(--ink);
  line-height: 1.35;
}

.operations-history-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem 0.8rem;
  color: var(--muted);
  font-size: 0.88rem;
}

.operations-history-card__note {
  color: var(--ink);
  line-height: 1.55;
  font-size: 0.92rem;
}

.operations-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.46);
  backdrop-filter: blur(5px);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 1.25rem 1rem;
  overflow-y: auto;
  z-index: 120;
}

.operations-modal {
  width: min(1140px, calc(100vw - 2rem));
  max-height: calc(100vh - 2.5rem);
  border-radius: 26px;
  border: 1px solid rgba(217, 222, 231, 0.92);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(248, 250, 252, 0.985));
  box-shadow: 0 34px 72px rgba(15, 23, 42, 0.24);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  margin: auto 0;
}

.operations-modal--narrow {
  width: min(760px, calc(100vw - 2rem));
}

.operations-modal__header,
.operations-modal__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.15rem;
  border-bottom: 1px solid rgba(232, 237, 245, 0.95);
}

.operations-modal__footer {
  border-bottom: 0;
  border-top: 1px solid rgba(232, 237, 245, 0.95);
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 0.94));
}

.operations-modal__header {
  background:
    radial-gradient(circle at top right, rgba(96, 165, 250, 0.12), transparent 34%),
    linear-gradient(135deg, rgba(30, 64, 175, 0.08), rgba(59, 130, 246, 0.03) 48%, rgba(255, 255, 255, 0.99));
}

.operations-modal--compact .operations-modal__header {
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.98));
}

.operations-modal__subtitle {
  margin: 0.22rem 0 0;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.operations-modal--compact .operations-modal__summary {
  display: none;
}

.operations-modal__context-strip {
  padding: 0 1.15rem 0.5rem;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.55rem;
}

.operations-context-chip {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.16rem;
  padding: 0.62rem 0.8rem;
  border-radius: 16px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.93));
  color: var(--ink);
  font-size: 0.78rem;
  line-height: 1.28;
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.04);
}

.operations-context-chip strong {
  color: var(--muted);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.operations-context-chip span:last-child {
  color: var(--ink);
  font-weight: 600;
  overflow-wrap: anywhere;
}

.operations-context-chip--open {
  border-color: rgba(191, 219, 254, 0.95);
  box-shadow: inset 3px 0 0 rgba(59, 130, 246, 0.35);
}

.operations-context-chip--progress {
  border-color: rgba(253, 186, 116, 0.82);
  box-shadow: inset 3px 0 0 rgba(249, 115, 22, 0.35);
}

.operations-context-chip--waiting {
  border-color: rgba(196, 181, 253, 0.92);
  box-shadow: inset 3px 0 0 rgba(139, 92, 246, 0.34);
}

.operations-context-chip--resolved {
  border-color: rgba(134, 239, 172, 0.82);
  box-shadow: inset 3px 0 0 rgba(34, 197, 94, 0.34);
}

.operations-context-chip--critical,
.operations-context-chip--urgent {
  border-color: rgba(252, 211, 77, 0.92);
  box-shadow: inset 3px 0 0 rgba(245, 158, 11, 0.34);
}

.operations-context-chip--neutral {
  background: rgba(248, 250, 252, 0.94);
}

.operations-modal__summary {
  padding: 0.95rem 1.15rem 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
}

.operations-modal__summary-card {
  border-radius: 18px;
  border: 1px solid rgba(217, 222, 231, 0.92);
  padding: 0.9rem 0.95rem;
  display: grid;
  gap: 0.22rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.94));
  min-width: 0;
  box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
}

.operations-modal__summary-card strong {
  color: var(--ink);
  font-size: 0.98rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.operations-modal__summary-card small {
  color: var(--muted);
  font-size: 0.79rem;
  line-height: 1.35;
}

.operations-modal__summary-card--accent {
  background: linear-gradient(135deg, rgba(30, 64, 175, 0.08), rgba(59, 130, 246, 0.03));
  border-color: rgba(96, 165, 250, 0.35);
}

.operations-modal__summary-card--status {
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.03), rgba(148, 163, 184, 0.04));
}

.operations-modal__summary-card--urgency {
  background: linear-gradient(135deg, rgba(251, 191, 36, 0.08), rgba(249, 115, 22, 0.04));
  border-color: rgba(251, 191, 36, 0.32);
}

.operations-modal__summary-card--owner {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.07), rgba(14, 165, 233, 0.04));
  border-color: rgba(45, 212, 191, 0.28);
}

.operations-modal__summary-label {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-modal__status {
  margin-right: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 600;
}

.operations-modal__footer-spacer {
  flex: 1 1 auto;
}

.operations-modal__body {
  padding: 1.1rem 1.3rem;
  display: grid;
  gap: 0.95rem;
  overflow-y: auto;
  overflow-x: hidden;
  min-height: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92));
}

.operations-modal__body--category-editor {
  grid-template-columns: 1fr;
}

.operations-modal-section {
  display: grid;
  gap: 0.8rem;
  border: 1px solid rgba(223, 229, 238, 0.95);
  border-radius: 22px;
  padding: 1rem 1.05rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.94));
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.04);
}

.operations-modal-section--section-accent {
  border-color: rgba(191, 219, 254, 0.92);
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.78), rgba(255, 255, 255, 0.98));
}

.operations-modal-section + .operations-modal-section {
  padding-top: 1rem;
  border-top: 0;
}

.operations-modal-section--tone-context {
  background: linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.98));
}

.operations-modal-section--tone-routing {
  background: linear-gradient(180deg, rgba(239, 246, 255, 0.72), rgba(255, 255, 255, 0.98));
  border-color: rgba(191, 219, 254, 0.92);
}

.operations-modal-section--tone-followup {
  background: linear-gradient(180deg, rgba(255, 247, 237, 0.75), rgba(255, 255, 255, 0.98));
  border-color: rgba(253, 186, 116, 0.35);
}

.operations-modal-section__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}

.operations-modal-section__title {
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--muted);
}

.operations-modal-section__content {
  display: grid;
  gap: 0.8rem;
}

.operations-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem;
}

.operations-form-grid > * {
  min-width: 0;
}

.operations-form-grid--compact {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(220px, 0.9fr);
}

.operations-form-grid--assignment {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.operations-form-grid--routing {
  grid-template-columns:
    minmax(230px, 1.2fr)
    minmax(230px, 1.2fr)
    minmax(150px, 0.82fr)
    minmax(150px, 0.82fr)
    minmax(190px, 0.95fr);
  align-items: end;
}

.operations-form-grid--classification {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(220px, 0.88fr);
}

.operations-form-grid--meta {
  grid-template-columns: minmax(220px, 0.95fr) minmax(220px, 1fr) minmax(280px, 1.2fr);
}

.operations-form-grid--routing-compact {
  grid-template-columns:
    minmax(220px, 1.15fr)
    minmax(220px, 1.15fr)
    minmax(150px, 0.82fr)
    minmax(150px, 0.82fr)
    minmax(180px, 0.9fr);
}

.operations-form-grid--meta-compact {
  grid-template-columns: minmax(200px, 0.9fr) minmax(200px, 1fr) minmax(240px, 1.1fr);
}

.operations-field--span-2 {
  grid-column: span 2;
}

.operations-field--compact {
  min-width: 0;
}

.operations-textarea {
  min-height: 112px;
  resize: vertical;
}

.operations-textarea--description {
  min-height: 152px;
}

.operations-textarea--resolution {
  min-height: 172px;
}

.operations-field--read {
  border: 1px solid rgba(217, 222, 231, 0.95);
  border-radius: 16px;
  padding: 0.72rem 0.9rem;
  background: rgba(248, 250, 252, 0.62);
  min-height: 94px;
}

.operations-field--checkbox {
  border: 1px solid rgba(191, 219, 254, 0.78);
  border-radius: 16px;
  padding: 0.6rem 0.85rem;
  background: rgba(239, 246, 255, 0.72);
  max-width: 620px;
  justify-self: start;
}

.operations-field--checkbox-compact {
  width: min(100%, 580px);
}

.operations-field__checkbox {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
}

.operations-field__checkbox input {
  margin-top: 0.14rem;
  flex: 0 0 auto;
}

.operations-field__checkbox strong {
  display: block;
  color: var(--ink);
  font-size: 0.84rem;
}

.operations-field__checkbox small {
  display: block;
  margin-top: 0.08rem;
  color: var(--muted);
  line-height: 1.28;
  font-size: 0.75rem;
}

.operations-field__read-value {
  color: var(--ink);
  font-weight: 700;
  min-height: 20px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.operations-modal input[type="date"] {
  min-width: 0;
  padding-right: 0.85rem;
}

.operations-modal .operations-field--read .operations-field__read-value {
  font-size: 0.98rem;
}

.operations-modal-section--followup .operations-field {
  min-width: 0;
}

.operations-modal__footer-meta {
  margin-right: auto;
  min-width: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.4;
}

.operations-inline-toggle {
  border: 0;
  background: rgba(30, 64, 175, 0.08);
  color: #1d4ed8;
  border-radius: 999px;
  padding: 0.48rem 0.82rem;
  font-size: 0.8rem;
  font-weight: 700;
  transition: background 0.16s ease, transform 0.16s ease;
}

.operations-inline-toggle:hover {
  background: rgba(30, 64, 175, 0.13);
  transform: translateY(-1px);
}

.operations-inline-toggle[disabled] {
  opacity: 0.58;
  cursor: wait;
  transform: none;
}

.operations-icon-btn--ghost {
  background: rgba(248, 250, 252, 0.9);
}

.operations-inline-note--compact {
  padding-top: 0.1rem;
}

.operations-checklist {
  gap: 0.72rem;
}

.operations-checklist__item {
  display: grid;
  grid-template-columns: minmax(132px, 0.44fr) minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.7rem;
}

.operations-checklist__item.is-done .operations-checklist__input {
  color: var(--muted);
  text-decoration: line-through;
}

.operations-checklist__check {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}

.operations-checklist__check input {
  margin: 0;
}

.operations-checklist__input {
  min-width: 0;
}

.operations-checklist__actions {
  display: flex;
  justify-content: flex-start;
}

.operations-category-editor__list {
  display: grid;
  gap: 0.85rem;
}

.operations-category-editor__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 0.75rem;
}

.operations-category-editor__field {
  min-width: 0;
}

.secondary-btn--compact {
  min-height: 40px;
  padding: 0.6rem 0.95rem;
}

@media (max-width: 980px) {
  .operations-hero,
  .operations-kpis,
  .operations-kpi-grid,
  .operations-attention-grid,
  .operations-attention-compact,
  .operations-history__list,
  .operations-toolbar,
  .operations-toolbar__filters,
  .operations-modal__context-strip,
  .operations-modal__summary,
  .operations-form-grid,
  .operations-form-grid--compact,
  .operations-form-grid--meta,
  .operations-form-grid--meta-compact,
  .operations-form-grid--assignment,
  .operations-form-grid--routing,
  .operations-form-grid--routing-compact,
  .operations-form-grid--classification {
    grid-template-columns: 1fr;
  }

  .operations-views,
  .operations-archive-hero,
  .operations-attention-board__head,
  .operations-history__head,
  .operations-toolbar,
  .operations-triage__head {
    align-items: stretch;
    flex-direction: column;
  }

  .operations-views__actions,
  .operations-views__actions--subview,
  .operations-toolbar__actions {
    width: 100%;
    justify-content: flex-start;
  }

  .operations-views__actions > *,
  .operations-views__actions--subview > * {
    flex: 1 1 180px;
  }

  .operations-attention-card__actions,
  .operations-focus-strip,
  .operations-focus-strip__copy {
    align-items: flex-start;
  }

  .operations-focus-strip,
  .operations-focus-strip__copy {
    flex-direction: column;
  }

  .operations-attention-item {
    grid-template-columns: 1fr;
  }

  .operations-feed-item {
    grid-template-columns: 1fr;
  }

  .operations-feed-item__actions {
    justify-content: flex-start;
  }

  .operations-modal-backdrop {
    padding: 0.75rem;
  }

  .operations-modal {
    width: 100%;
    max-height: calc(100vh - 1.5rem);
    border-radius: 20px;
  }

  .operations-checklist__item {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .operations-category-editor__row {
    grid-template-columns: 1fr;
  }

  .operations-inline-hint--toolbar {
    max-width: none;
    width: 100%;
  }

  .operations-filter__label {
    align-items: flex-end;
    flex-wrap: wrap;
  }

  .operations-modal__footer {
    justify-content: stretch;
  }

  .operations-toolbar__actions {
    justify-content: stretch;
  }

  .operations-toolbar__actions > * {
    width: 100%;
  }

  .operations-context__tenant-switch {
    min-width: 100%;
  }

  .operations-attention-item__date {
    white-space: normal;
  }

  .operations-field--span-2 {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  .operations-shell {
    gap: 1rem;
  }

  .operations-hero,
  .operations-views,
  .operations-toolbar,
  .operations-triage,
  .operations-attention-board,
  .operations-history,
  .operations-focus-strip,
  .operations-archive-hero {
    padding: 1rem;
  }

  .operations-hero {
    gap: 1rem;
  }

  .operations-hero__title {
    font-size: clamp(1.75rem, 8.8vw, 2.35rem);
    line-height: 1.06;
  }

  .operations-hero__text,
  .operations-views__subtitle,
  .operations-triage__subtitle,
  .operations-attention-board__subtitle,
  .operations-history__subtitle {
    font-size: 0.94rem;
    line-height: 1.6;
  }

  .operations-context {
    padding: 0.95rem;
  }

  .operations-context__controls {
    display: grid;
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .operations-context__controls > .secondary-btn,
  .operations-context__controls > .operations-context__tenant-switch {
    width: 100%;
  }

  .operations-context__controls > .secondary-btn {
    justify-content: flex-start;
  }

  .operations-kpis,
  .operations-kpi-grid,
  .operations-attention-grid,
  .operations-attention-compact,
  .operations-history__list {
    grid-template-columns: 1fr;
  }

  .operations-kpi-card {
    padding: 0.95rem 1rem;
  }

  .operations-kpi-card__value {
    font-size: 1.55rem;
  }

  .operations-views__title,
  .operations-triage__title,
  .operations-modal__title {
    font-size: 1.35rem;
  }

  .operations-views__actions,
  .operations-pagination__actions {
    width: 100%;
  }

  .operations-feed-item {
    padding: 0.9rem;
  }

  .operations-feed-item__top {
    flex-direction: column;
  }

  .operations-feed-item__date {
    white-space: normal;
  }

  .operations-view-btn,
  .operations-pagination__actions > .secondary-btn {
    width: 100%;
  }

  .operations-filter span,
  .operations-field span,
  .operations-kpi-card__label {
    font-size: 0.72rem;
  }

  .operations-table-wrap {
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    padding: 0;
  }

  .operations-table {
    min-width: 0;
    display: block;
  }

  .operations-table thead {
    display: none;
  }

  .operations-table tbody {
    display: grid;
    gap: 0.85rem;
  }

  .operations-table tbody tr {
    display: grid;
    gap: 0.7rem;
    padding: 0.95rem;
    border: 1px solid rgba(217, 222, 231, 0.95);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
  }

  .operations-table tbody tr.is-overdue {
    border-color: rgba(248, 113, 113, 0.34);
    background: rgba(255, 248, 248, 0.98);
  }

  .operations-table tbody td {
    display: grid;
    grid-template-columns: minmax(86px, 0.82fr) minmax(0, 1fr);
    gap: 0.65rem;
    align-items: start;
    padding: 0;
    border: 0;
    min-width: 0;
  }

  .operations-table tbody td[colspan] {
    display: block;
  }

  .operations-table tbody td[data-label]::before {
    content: attr(data-label);
    font-size: 0.71rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--muted);
    line-height: 1.35;
  }

  .operations-table-cell--title .operations-demand-title {
    font-size: 1rem;
    line-height: 1.3;
  }

  .operations-table-cell--actions {
    grid-template-columns: 1fr;
  }

  .operations-table-cell--actions .operations-row-actions {
    width: 100%;
  }

  .operations-row-actions {
    gap: 0.45rem;
  }

  .operations-pagination {
    flex-direction: column;
    align-items: stretch;
  }

  .operations-pagination__pages {
    justify-content: center;
  }

  .operations-modal-backdrop {
    padding: 0;
    align-items: stretch;
  }

  .operations-modal,
  .operations-modal--narrow {
    width: 100vw;
    max-width: 100vw;
    min-height: 100vh;
    max-height: 100vh;
    border-radius: 0;
    margin: 0;
  }

  .operations-modal__header,
  .operations-modal__footer {
    padding: 0.9rem 0.95rem;
  }

  .operations-modal__header {
    align-items: flex-start;
  }

  .operations-modal__context-strip {
    padding: 0 0.95rem 0.65rem;
    gap: 0.5rem;
  }

  .operations-context-chip {
    padding: 0.58rem 0.72rem;
  }

  .operations-modal__body {
    padding: 0.95rem;
    gap: 0.85rem;
  }

  .operations-modal-section {
    padding: 0.9rem;
    border-radius: 18px;
  }

  .operations-field--checkbox,
  .operations-field--checkbox-compact {
    width: 100%;
    max-width: none;
    justify-self: stretch;
  }

  .operations-modal__footer {
    flex-direction: column;
    align-items: stretch;
  }

  .operations-modal__footer-spacer {
    display: none;
  }

  .operations-modal__footer-meta,
  .operations-modal__status {
    margin-right: 0;
  }

  .operations-modal__footer .primary-btn,
  .operations-modal__footer .secondary-btn,
  .operations-modal__footer .danger-btn {
    width: 100%;
  }
}

/* === PGES-OPERATIONS (END) ============================= */

/* === PGES-PHASE1-REPORT (START) ======================== */

.report-main-container,
.in-app-report-preview {
  color: var(--ink);
}

.report-main-container {
  max-width: 960px;
  border-radius: 24px;
  padding: 2.1rem 2rem 2.35rem;
  background: linear-gradient(180deg, rgba(252, 253, 255, 0.99), rgba(248, 250, 252, 0.98));
  border: 1px solid rgba(217, 222, 231, 0.95);
  box-shadow: 0 22px 46px rgba(17, 24, 39, 0.08);
}

.in-app-report-preview {
  border-radius: 22px;
  padding: 1.7rem 1.75rem;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 18px 36px rgba(17, 24, 39, 0.08);
}

.report-header {
  background: linear-gradient(180deg, rgba(247,249,252,0.92), rgba(255,255,255,0.88));
  padding: 2.7rem 1.2rem 2.2rem;
  margin-bottom: 1.5rem;
  border: 1px solid rgba(217, 222, 231, 0.85);
  border-radius: 24px;
  position: relative;
  overflow: hidden;
}

.report-header::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 12px;
  background: linear-gradient(180deg, var(--accent-2), var(--accent-3));
}

.report-header::after {
  content: "";
  position: absolute;
  inset: auto 28px 24px 42px;
  height: 1px;
  background: linear-gradient(90deg, rgba(31,75,153,0.4), rgba(31,75,153,0));
}

.report-cover-inner {
  max-width: 640px;
  text-align: center;
  margin-left: 0;
}

.report-cover-shell {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100%;
}

.report-cover-rail {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100%;
  padding: 0.15rem 0 0.15rem 0.2rem;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 84px;
}

.report-cover-rail__brand,
.report-cover-kicker {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted);
}

.report-cover-rail__line {
  flex: 1;
  width: 1px;
  margin: 1rem 0;
  background: linear-gradient(180deg, rgba(79, 126, 247, 0.55), rgba(214, 222, 234, 0.15));
}

.report-cover-rail__label {
  font-size: 0.72rem;
  color: var(--muted);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  align-self: flex-start;
}

.report-cover-brand {
  font-size: 0.78rem;
  letter-spacing: 0.22em;
  color: var(--muted);
  margin-bottom: 1rem;
  font-weight: 700;
}

.report-cover-main-title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 2.15rem;
  line-height: 1.15;
  letter-spacing: 0;
  color: var(--accent-3);
  margin-bottom: 0.75rem;
  text-transform: none;
}

.report-cover-project {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.55rem;
  line-height: 1.25;
  color: var(--ink);
  margin-bottom: 0.8rem;
}

.report-cover-subtitle {
  color: var(--muted);
  max-width: 500px;
  line-height: 1.55;
  margin-bottom: 1.15rem;
  margin-left: auto;
  margin-right: auto;
}

.report-cover-meta {
  font-size: 0.92rem;
  color: var(--ink);
  gap: 0.45rem;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(199, 210, 224, 0.7);
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.report-cover-footer {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.35rem;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(217, 222, 231, 0.82);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.report-chapter {
  margin-bottom: 1.7rem;
}

.chapter-title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.78rem;
  color: var(--accent-3);
  margin-bottom: 0.7rem;
}

.report-executive-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: -0.1rem 0 1.55rem;
}

.report-executive-card {
  padding: 0.88rem 0.95rem;
  border-radius: 16px;
  border: 1px solid rgba(217, 222, 231, 0.95);
  background:
    linear-gradient(180deg, rgba(251, 252, 254, 0.94), rgba(255, 255, 255, 0.98));
  box-shadow: 0 8px 18px rgba(17, 24, 39, 0.035);
}

.report-executive-card__label {
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--muted);
}

.report-executive-card__value {
  margin-top: 0.35rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.45rem;
  color: var(--ink);
}

.report-section-card {
  border-radius: 18px;
  border: 1px solid rgba(217, 222, 231, 0.95);
  padding: 1.15rem 1.2rem 1.2rem;
  margin-bottom: 1rem;
  background: linear-gradient(180deg, #fbfcfe 0%, #ffffff 100%);
  box-shadow: 0 8px 18px rgba(17, 24, 39, 0.035);
}

.report-section-card h3 {
  color: var(--ink);
  margin-bottom: 0.8rem;
  font-size: 1rem;
}

.report-section-card h3 i {
  color: var(--accent-2);
}

.report-section-card h4 {
  margin: 0.85rem 0 0.55rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1rem;
  color: var(--accent-3);
}

.report-section-lead {
  margin: 0 0 0.9rem;
  padding: 0.8rem 0.9rem;
  border-left: 2px solid rgba(79, 126, 247, 0.55);
  border-radius: 0 12px 12px 0;
  background: linear-gradient(90deg, rgba(243, 248, 255, 0.82), rgba(255, 255, 255, 0.98));
  color: #51606f;
  line-height: 1.55;
  font-size: 0.92rem;
}

.report-table {
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid #d6deea;
  border-radius: 18px;
  background: #fff;
}

.report-table thead {
  background-color: #f4f7fb;
}

.report-table th,
.report-table td {
  border-color: transparent;
  border-bottom: 1px solid #e2e8f0;
  padding: 0.62rem 0.72rem;
  font-size: 0.84rem;
}

.report-table tbody tr:nth-child(even) {
  background: rgba(249, 251, 253, 0.88);
}

.report-table tbody tr:last-child td {
  border-bottom: none;
}

.report-table th {
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #5b6776;
  font-weight: 700;
}

.report-table td {
  color: #243140;
  line-height: 1.5;
}

.report-emphasis-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.7rem;
  margin-bottom: 0.9rem;
}

.report-emphasis-card {
  padding: 0.82rem 0.92rem;
  border-radius: 15px;
  border: 1px solid rgba(214, 222, 234, 0.92);
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.96), rgba(255, 255, 255, 0.98));
  box-shadow: 0 8px 16px rgba(15, 23, 42, 0.03);
}

.report-emphasis-card__label {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--muted);
}

.report-emphasis-card__value {
  margin-top: 0.28rem;
  font-family: "Merriweather", Georgia, serif;
  font-size: 1.35rem;
  color: var(--ink);
}

.report-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-height: 28px;
  padding: 0.26rem 0.7rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 0.74rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.report-badge--neutral {
  background: #f1f5f9;
  border-color: #d7e2ee;
  color: #334155;
}

.report-badge--low {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: #166534;
}

.report-badge--medium {
  background: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}

.report-badge--high {
  background: #fff1f2;
  border-color: #fecdd3;
  color: #9f1239;
}

.report-metric-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0.25rem 0.62rem;
  border-radius: 12px;
  background: #edf2f8;
  border: 1px solid #d6deea;
  color: #334155;
  font-size: 0.74rem;
  font-weight: 700;
}

.swot-matrix-report {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.swot-quadrant {
  border-radius: 18px;
  border: 1px solid rgba(214, 222, 234, 0.95);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96));
  box-shadow: 0 8px 16px rgba(15, 23, 42, 0.03);
  overflow: hidden;
}

.swot-quadrant__table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.swot-quadrant__table thead th,
.swot-quadrant__table tbody td {
  padding: 0;
  border: 0;
  text-align: left;
  vertical-align: top;
}

.swot-quadrant__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  padding: 0.82rem 0.95rem;
  border-bottom: 1px solid rgba(214, 222, 234, 0.9);
}

.swot-quadrant__title {
  font-family: "Merriweather", Georgia, serif;
  font-size: 0.95rem;
  font-weight: 700;
}

.swot-quadrant__count {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.swot-quadrant__list {
  list-style: none;
  margin: 0;
  padding: 0.55rem 0.95rem 0.8rem;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.swot-quadrant__item {
  padding: 0.62rem 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(226, 232, 240, 0.85);
}

.swot-quadrant__item:last-child {
  border-bottom: 0;
}

.swot-quadrant__row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.65rem;
}

.swot-quadrant__text {
  color: var(--ink);
  line-height: 1.42;
  font-size: 0.88rem;
}

.swot-quadrant__empty {
  margin: 0;
  padding: 1rem;
  color: #94a3b8;
}

.swot-vote-chip {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  min-height: 24px;
  padding: 0.15rem 0.5rem;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  border: 1px solid rgba(214, 222, 234, 0.92);
  background: rgba(255, 255, 255, 0.96);
  color: #51606f;
}

.report-section-card,
.info-item,
.report-table,
.report-emphasis-card,
.swot-quadrant {
  break-inside: avoid;
}

.swot-quadrant--strengths .swot-quadrant__head {
  background: rgba(240, 253, 244, 0.92);
}

.swot-quadrant--strengths .swot-quadrant__title {
  color: #166534;
}

.swot-quadrant--weaknesses .swot-quadrant__head {
  background: rgba(255, 244, 246, 0.96);
}

.swot-quadrant--weaknesses .swot-quadrant__title {
  color: #9f1239;
}

.swot-quadrant--opportunities .swot-quadrant__head {
  background: rgba(243, 248, 255, 0.96);
}

.swot-quadrant--opportunities .swot-quadrant__title {
  color: #1d4ed8;
}

.swot-quadrant--threats .swot-quadrant__head {
  background: rgba(255, 248, 240, 0.98);
}

.swot-quadrant--threats .swot-quadrant__title {
  color: #c2410c;
}

@media (max-width: 760px) {
  .report-info-grid,
  .report-executive-strip,
  .report-emphasis-grid {
    grid-template-columns: 1fr;
  }

  .swot-matrix-report {
    grid-template-columns: 1fr;
  }
}

/* === PGES-PHASE1-REPORT (END) ========================== */

/* === PGES-REPORT-PRINT-SAFE (START) ==================== */

.print-block-page {}
.print-block-keep {}
.print-block-flow {}
.print-block-split {}
.print-table-breakable {}
.print-grid-collapse {}

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

@media print {
  body.report-body,
  body.report-body--print {
    background: #ffffff !important;
    color: #1f2937;
    padding: 0 !important;
    margin: 0 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .report-main-container,
  .report-main-container--print,
  .in-app-report-preview {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #ffffff !important;
    overflow: visible !important;
    max-height: none !important;
  }

  header,
  footer,
  .primary-btn,
  .secondary-btn,
  [data-action="generate-report"],
  [data-action="generate-report-pdf"] {
    display: none !important;
  }

  .report-header {
    margin: 0 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: none !important;
    min-height: 270mm !important;
    display: flex !important;
    align-items: stretch !important;
  }

  .report-header::before {
    width: 7px !important;
    inset: 0 auto 0 0 !important;
  }

  .report-header::after {
    display: none !important;
  }

  .report-cover {
    min-height: 270mm !important;
    height: 270mm !important;
    display: flex !important;
    page-break-after: always;
    break-after: page;
  }

  .report-cover-shell {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 100% !important;
  }

  .report-cover-rail {
    padding: 8mm 0 8mm 5mm !important;
    border-right: 1px solid #d6deea;
    width: 20mm !important;
  }

  .report-cover-rail__brand,
  .report-cover-kicker {
    font-size: 7.4pt !important;
    letter-spacing: 0.18em !important;
  }

  .report-cover-rail__line {
    margin: 6mm 0 !important;
    background: linear-gradient(180deg, #4f7ef7, rgba(214, 222, 234, 0.2)) !important;
  }

  .report-cover-rail__label {
    font-size: 7pt !important;
    letter-spacing: 0.12em !important;
  }

  .report-cover-inner {
    max-width: none !important;
    margin: 0 !important;
    padding: 16mm 8mm 14mm 8mm !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .report-cover-main-title {
    font-size: 25pt !important;
    line-height: 1.08 !important;
    margin: 0 0 4mm !important;
  }

  .report-cover-project {
    font-size: 18pt !important;
    line-height: 1.18 !important;
    max-width: 115mm !important;
    margin: 0 0 5mm !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .report-cover-subtitle,
  .report-cover-meta,
  .report-section-lead,
  .report-section-card p,
  .report-section-card li,
  .report-table td {
    font-size: 9.6pt !important;
    line-height: 1.34 !important;
    orphans: 3;
    widows: 3;
  }

  .report-cover-subtitle {
    max-width: 104mm !important;
    margin: 0 0 7mm !important;
    color: #475569 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .report-cover-meta {
    max-width: 92mm !important;
    padding-top: 4mm !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .report-cover-footer {
    margin-top: auto !important;
    padding-top: 4mm !important;
    font-size: 7.2pt !important;
    color: #64748b !important;
    max-width: 104mm !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .chapter-title {
    font-size: 15.5pt !important;
    margin: 0 0 2.6mm !important;
    break-after: avoid-page;
    page-break-after: avoid;
  }

  .report-chapter {
    margin: 0 0 2.8mm !important;
    break-inside: auto;
  }

  .report-section-card,
  .report-executive-card,
  .report-emphasis-card,
  .swot-quadrant {
    box-shadow: none !important;
    background: #ffffff !important;
  }

  .report-section-card {
    padding: 0 !important;
    margin: 0 0 2.4mm !important;
    border: 0 !important;
    break-inside: auto;
  }

  .report-info-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 2.2mm !important;
  }

  .info-item {
    padding: 2.4mm 2.8mm !important;
    border-radius: 8px !important;
    border: 1px solid #d6deea !important;
    background: #ffffff !important;
  }

  .report-section-card h3 {
    margin: 0 0 2.1mm !important;
    padding-bottom: 1.4mm;
    border-bottom: 1px solid #e2e8f0;
    font-size: 11pt !important;
    break-after: avoid;
  }

  .report-executive-strip,
  .report-emphasis-grid {
    gap: 2.1mm !important;
  }

  .report-executive-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    margin: 0 0 3.2mm !important;
  }

  .report-emphasis-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin: 0 0 2.8mm !important;
  }

  .report-executive-card,
  .report-emphasis-card {
    padding: 2mm 2.5mm !important;
    border: 1px solid #d6deea !important;
    border-radius: 8px !important;
    break-inside: avoid;
  }

  .report-executive-card__label,
  .report-emphasis-card__label {
    font-size: 7.2pt !important;
    letter-spacing: 0.06em !important;
  }

  .report-executive-card__value,
  .report-emphasis-card__value {
    font-size: 12pt !important;
    margin-top: 1.2mm !important;
  }

  .report-section-lead {
    margin: 0 0 2.1mm !important;
    padding: 1.8mm 2.2mm !important;
    border-left-width: 1.5px !important;
    border-radius: 0 8px 8px 0 !important;
  }

  .report-table,
  .print-table-breakable .report-table {
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    border: 1px solid #d6deea !important;
    border-radius: 0 !important;
    overflow: visible !important;
    page-break-inside: auto;
    break-inside: auto;
  }

  .report-table thead {
    display: table-header-group;
  }

  .report-table tbody {
    display: table-row-group;
  }

  .report-table tr {
    page-break-inside: avoid;
    break-inside: avoid-row;
  }

  .report-table th,
  .report-table td {
    padding: 1.8mm 2.2mm !important;
    border: 1px solid #d6deea !important;
    background: #ffffff !important;
  }

  .report-table th {
    font-size: 7.4pt !important;
    background: #f4f7fb !important;
  }

  .report-table td {
    font-size: 8.8pt !important;
  }

  .swot-matrix-report,
  .print-grid-collapse.swot-matrix-report {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: start !important;
    gap: 2.2mm !important;
  }

  .swot-quadrant {
    margin: 0 !important;
    border: 1px solid #d6deea !important;
    border-radius: 8px !important;
    break-inside: auto;
    page-break-inside: auto;
  }

  .swot-quadrant__table {
    width: 100% !important;
    border-collapse: collapse !important;
    page-break-inside: auto !important;
  }

  .swot-quadrant__table thead {
    display: table-header-group !important;
  }

  .swot-quadrant__table tbody {
    display: table-row-group !important;
  }

  .swot-quadrant__head {
    padding: 1.8mm 2.1mm !important;
  }

  .swot-quadrant__item {
    padding: 0 !important;
    border-radius: 0 !important;
    border: 0 !important;
    background: transparent !important;
    break-inside: avoid;
  }

  .swot-quadrant__table tbody td {
    padding: 1.35mm 2.1mm !important;
    border-bottom: 1px solid #e2e8f0 !important;
  }

  .swot-quadrant__table tbody tr:last-child td {
    border-bottom: 0 !important;
  }

  .swot-quadrant__title {
    font-size: 8.5pt !important;
  }

  .swot-quadrant__count {
    font-size: 6.4pt !important;
    letter-spacing: 0.05em !important;
  }

  .swot-quadrant__text {
    font-size: 8.1pt !important;
    line-height: 1.24 !important;
  }

  .swot-quadrant__row {
    gap: 1.4mm !important;
  }

  .swot-quadrant__table tr {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  .swot-vote-chip {
    min-height: 18px !important;
    padding: 0.08rem 0.34rem !important;
    font-size: 6.1pt !important;
  }

  .swot-vote-chip,
  .report-badge,
  .report-metric-chip {
    border-radius: 999px !important;
    box-shadow: none !important;
    min-height: 16px !important;
    padding: 0.5mm 1.4mm !important;
    font-size: 6.8pt !important;
  }

  .print-block-page {
    page-break-before: always;
    break-before: page;
  }

  .chapter-1.print-block-page,
  .report-cover.print-block-page {
    page-break-before: auto;
    break-before: auto;
  }

  .print-block-keep {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  .print-block-flow {
    page-break-inside: auto;
    break-inside: auto;
  }

  .print-block-split {
    page-break-inside: auto;
    break-inside: auto;
  }

  .report-section-card.print-block-flow,
  .report-section-card.print-block-split {
    page-break-inside: auto;
    break-inside: auto;
  }

  .print-grid-collapse {
    display: block;
  }
}

/* === PGES-REPORT-PRINT-SAFE (END) ====================== */
