
/* Centro de puesta en marcha y autorizaciones: prioridad de negocio antes del detalle técnico. */
.settings-workbench-nav {
  --settings-menu-accent: #0a7b3c;
  --settings-menu-border: #dce9e0;
  --settings-menu-border-subtle: #d9e9dd;
  --settings-menu-border-active: #9dcfaf;
  --settings-menu-surface: #ffffff;
  --settings-menu-surface-active: #eff8f1;
  --settings-menu-surface-panel: #fbfdfb;
  --settings-menu-surface-soft: #f5fbf6;
  background: var(--settings-menu-surface);
  border: 1px solid var(--settings-menu-border);
  border-radius: 18px;
  display: grid;
  gap: 0.75rem;
  margin: 0 0 1.5rem;
  padding: clamp(0.85rem, 1.5vw, 1.15rem);
}

.settings-menu-toolbar {
  align-items: center;
  display: flex;
  gap: 1.25rem;
  justify-content: space-between;
  padding: 0 0 0.15rem;
}

.settings-menu-toolbar .eyebrow,
.settings-menu-toolbar h2,
.settings-menu-toolbar p {
  margin: 0;
}

.settings-menu-toolbar h2 {
  color: var(--ink);
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  line-height: 1.15;
  margin-top: 0.2rem;
}

.settings-menu-toolbar > div > p:not(.eyebrow) {
  color: var(--muted);
  font-size: 0.74rem;
  line-height: 1.35;
  margin-top: 0.32rem;
  max-width: 620px;
}

.settings-menu-overview-link {
  align-items: flex-end;
  border: 1px solid var(--settings-menu-border-subtle);
  border-radius: 10px;
  color: #335a41;
  display: grid;
  flex: 0 0 auto;
  gap: 0.16rem;
  padding: 0.5rem 0.65rem;
  text-align: right;
  text-decoration: none;
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.settings-menu-overview-link span {
  color: #64766a;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.settings-menu-overview-link strong {
  color: #123b27;
  font-size: 0.76rem;
  line-height: 1.2;
}

.settings-menu-overview-link:hover,
.settings-menu-overview-link.is-active {
  background: var(--settings-menu-surface-active);
  border-color: var(--settings-menu-border-active);
  box-shadow: 0 5px 12px rgba(19, 60, 40, 0.08);
}

.settings-menu-grid {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.settings-menu-item,
.settings-all-sections > summary {
  align-items: center;
  background: var(--settings-menu-surface);
  border: 1px solid var(--settings-menu-border);
  border-radius: 11px;
  color: var(--ink);
  cursor: pointer;
  display: flex;
  gap: 0.7rem;
  min-height: 70px;
  padding: 0.7rem 0.78rem;
  text-align: left;
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, background 160ms ease;
}

.settings-menu-item:hover,
.settings-all-sections > summary:hover {
  background: var(--settings-menu-surface-soft);
  border-color: #8fce9f;
  box-shadow: 0 6px 15px rgba(19, 60, 40, 0.08);
  transform: translateY(-1px);
}

.settings-menu-item:focus-visible,
.settings-menu-overview-link:focus-visible,
.settings-all-sections > summary:focus-visible,
.settings-all-sections-list a:focus-visible {
  outline: 3px solid rgba(25, 144, 72, 0.34);
  outline-offset: 2px;
}

.settings-menu-item.is-active {
  background: var(--settings-menu-surface-active);
  border-color: var(--settings-menu-border-active);
  box-shadow: inset 4px 0 0 var(--settings-menu-accent);
}

.settings-menu-copy {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
}

.settings-menu-copy strong {
  font-size: 0.82rem;
  line-height: 1.15;
}

.settings-menu-copy small {
  color: #607368;
  font-size: 0.69rem;
  line-height: 1.2;
}

.settings-menu-current {
  align-items: center;
  background: #d9f4e1;
  border-radius: 999px;
  color: #116735;
  display: inline-flex;
  font-size: 0.62rem;
  font-weight: 900;
  margin-left: auto;
  padding: 0.22rem 0.4rem;
}

.settings-all-sections {
  border: 1px solid var(--settings-menu-border);
  border-radius: 11px;
  overflow: hidden;
}

.settings-all-sections > summary {
  background: #f8fbf8;
  border: 0;
  border-radius: 0;
  list-style: none;
  min-height: 56px;
}

.settings-all-sections > summary::-webkit-details-marker {
  display: none;
}

.settings-all-sections[open] > summary {
  background: var(--settings-menu-surface-active);
  border-bottom: 1px solid var(--settings-menu-border);
}

.settings-all-sections-summary-action {
  align-items: center;
  color: #087b3c;
  display: inline-flex;
  font-size: 0.68rem;
  font-weight: 850;
  gap: 0.4rem;
  margin-left: auto;
}

.settings-all-sections-summary-action::after {
  content: "⌄";
  font-size: 1.05rem;
  line-height: 1;
  transition: transform 160ms ease;
}

.settings-all-sections[open] .settings-all-sections-summary-action::after {
  transform: rotate(180deg);
}

.settings-all-sections-panel {
  background: var(--settings-menu-surface-panel);
  display: grid;
  gap: 0.75rem;
  padding: 0.85rem;
}

.settings-all-sections-heading {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.settings-all-sections-heading > div {
  display: grid;
  gap: 0.18rem;
}

.settings-all-sections-heading strong {
  color: var(--ink);
  font-size: 0.86rem;
}

.settings-all-sections-heading span {
  color: var(--muted);
  font-size: 0.75rem;
}

.settings-all-sections-count {
  background: #ffffff;
  border: 1px solid #d5ead9;
  border-radius: 999px;
  color: #176438 !important;
  font-size: 0.68rem !important;
  font-weight: 800;
  padding: 0.3rem 0.5rem;
  white-space: nowrap;
}

.settings-all-sections-list {
  column-count: 3;
  column-gap: 0.65rem;
}

.settings-all-sections-list > section {
  -webkit-column-break-inside: avoid;
  background: var(--settings-menu-surface);
  border: 1px solid #e0ebe3;
  border-radius: 9px;
  break-inside: avoid;
  display: grid;
  gap: 0.5rem;
  margin: 0 0 0.65rem;
  padding: 0.66rem;
}

.settings-all-sections-list > section > strong {
  color: #5c6e62;
  font-size: 0.73rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.settings-all-sections-list > section > div {
  display: grid;
  gap: 0.2rem;
}

.settings-all-sections-list a {
  align-items: center;
  border-radius: 6px;
  color: var(--ink);
  display: flex;
  font-size: 0.82rem;
  font-weight: 750;
  gap: 0.45rem;
  justify-content: space-between;
  padding: 0.28rem 0.36rem;
  text-decoration: none;
}

.settings-all-sections-list a:hover,
.settings-all-sections-list a[aria-current="page"] {
  background: #eaf7ed;
  color: #087b3c;
}

.settings-all-sections-list a small {
  background: #d9f4e1;
  border-radius: 999px;
  color: #136c35;
  font-size: 0.6rem;
  font-weight: 850;
  padding: 0.15rem 0.34rem;
}

.settings-setup-center {
  background: linear-gradient(135deg, #f3fbf5 0%, #ffffff 58%);
  border: 1px solid #cde7d4;
  border-radius: 20px;
  display: grid;
  gap: 1.2rem;
  margin-bottom: 1.25rem;
  padding: clamp(1rem, 2vw, 1.65rem);
}

.settings-setup-heading,
.settings-setup-card-heading,
.settings-setup-actions,
.configuration-decision-card,
.settings-related-steps,
.authorization-process-card-heading,
.authorization-request-heading,
.authorization-request-actions,
.authorization-orientation,
.authorization-orientation-stats,
.authorization-decision-overview,
.authorization-decision-main {
  align-items: center;
  display: flex;
  gap: 0.85rem;
  justify-content: space-between;
}

.settings-setup-heading h2,
.settings-setup-heading p,
.settings-setup-card h3,
.settings-setup-card p,
.configuration-decision-card h2,
.configuration-decision-card p,
.authorization-orientation h2,
.authorization-orientation p,
.authorization-process-card h3,
.authorization-process-card > p,
.authorization-policy-item p,
.authorization-request-card h3,
.authorization-request-card p,
.authorization-decision-overview h2,
.authorization-decision-overview p {
  margin: 0;
}

.settings-setup-grid {
  display: grid;
  gap: 0.9rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.settings-setup-card,
.authorization-process-card,
.authorization-onboarding-card,
.authorization-request-card {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid #dce9e0;
  border-radius: 14px;
  display: grid;
  gap: 0.8rem;
  min-width: 0;
  padding: 1rem;
}

.settings-setup-card-heading h3,
.authorization-process-card-heading h3 {
  font-size: 1rem;
}

.settings-setup-card > p,
.authorization-process-card > p,
.authorization-onboarding-card > p {
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.settings-setup-card dl,
.authorization-policy-item dl,
.authorization-request-details,
.authorization-decision-overview dl {
  display: grid;
  gap: 0.55rem;
  margin: 0;
}

.settings-setup-card dl {
  border-top: 1px solid #e7f0e9;
  padding-top: 0.72rem;
}

.settings-setup-card dt,
.authorization-policy-item dt,
.authorization-request-details dt,
.authorization-decision-overview dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.settings-setup-card dd,
.authorization-policy-item dd,
.authorization-request-details dd,
.authorization-decision-overview dd {
  color: var(--ink);
  font-size: 0.86rem;
  font-weight: 700;
  margin: 0.12rem 0 0;
}

.settings-setup-actions {
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.configuration-decision-card {
  align-items: flex-start;
  background: linear-gradient(120deg, #ffffff, #f4fbf6);
  border: 1px solid #d9eadf;
  border-radius: 16px;
  flex-wrap: wrap;
  margin-bottom: 1rem;
  padding: 1.1rem 1.2rem;
}

.configuration-decision-card > div:first-child {
  flex: 1 1 260px;
}

.configuration-decision-card > div:first-child > p:not(.eyebrow) {
  color: var(--muted);
  line-height: 1.45;
  margin-top: 0.3rem;
}

.configuration-decision-impact,
.configuration-current-values {
  border-left: 3px solid #74bd88;
  display: grid;
  flex: 1 1 230px;
  gap: 0.2rem;
  padding-left: 0.75rem;
}

.configuration-decision-impact strong,
.configuration-current-values strong {
  font-size: 0.8rem;
}

.configuration-decision-impact span,
.configuration-current-values span {
  color: var(--muted);
  font-size: 0.83rem;
  line-height: 1.4;
}

.settings-related-steps {
  align-items: stretch;
  border: 1px solid #dce9e0;
  border-radius: 14px;
  margin: 0 0 1rem;
  overflow: hidden;
}

.settings-related-steps a {
  align-items: center;
  border-right: 1px solid #dce9e0;
  color: var(--ink);
  display: grid;
  flex: 1;
  gap: 0.1rem 0.55rem;
  grid-template-columns: auto 1fr;
  padding: 0.82rem 1rem;
  text-decoration: none;
}

.settings-related-steps a:last-child {
  border-right: 0;
}

.settings-related-steps a.is-active {
  background: #edf8f0;
}

.settings-related-steps span {
  align-items: center;
  background: #123b27;
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: 900;
  grid-row: span 2;
  height: 1.5rem;
  justify-content: center;
  width: 1.5rem;
}

.settings-related-steps strong,
.settings-related-steps small {
  display: block;
}

.settings-related-steps small {
  color: var(--muted);
  font-size: 0.77rem;
}

.settings-health-disclosure {
  margin-bottom: 1rem;
}

.settings-health-disclosure > .health-panel {
  margin: 1rem 0 0;
}

.configuration-advanced-fields {
  padding: 0;
}

.configuration-advanced-fields > .form-grid {
  border-top: 1px solid var(--line);
  padding: 1rem;
}

.authorization-hero {
  background: linear-gradient(120deg, #f5fbf6, #ffffff 72%);
  border-bottom: 1px solid #dce9e0;
  margin-bottom: 1.1rem;
  padding: 0 0 1rem;
}

.authorization-orientation {
  align-items: stretch;
  background: #123b27;
  border-radius: 18px;
  color: #ffffff;
  gap: 1rem;
  margin-bottom: 1.1rem;
  padding: clamp(1rem, 2vw, 1.45rem);
}

.authorization-orientation .eyebrow,
.authorization-orientation p {
  color: rgba(255, 255, 255, 0.78);
}

.authorization-orientation h2 {
  font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.authorization-orientation > div:first-child {
  flex: 1;
}

.authorization-orientation-stats {
  align-items: stretch;
  justify-content: flex-end;
}

.authorization-orientation-stats span {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.19);
  border-radius: 10px;
  display: grid;
  font-size: 0.77rem;
  min-width: 94px;
  padding: 0.65rem;
}

.authorization-orientation-stats strong {
  font-size: 1.45rem;
}

.authorization-inline-disclosure summary,
.authorization-process-card > details > summary,
.authorization-onboarding-card > details > summary,
.authorization-request-technical summary,
.authorization-timeline summary {
  color: #087b3c;
  cursor: pointer;
  font-size: 0.84rem;
  font-weight: 850;
}

.authorization-process-section,
.authorization-requests-section,
.authorization-onboarding-list {
  display: grid;
  gap: 1rem;
  margin: 1.4rem 0;
}

.authorization-process-grid {
  display: grid;
  gap: 0.9rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.authorization-process-card > details {
  border-top: 1px solid #e7f0e9;
  padding-top: 0.7rem;
}

.authorization-policy-list {
  display: grid;
  gap: 0.65rem;
  margin-top: 0.75rem;
}

.authorization-policy-item {
  background: #f9fcfa;
  border: 1px solid #e0ece3;
  border-radius: 10px;
  display: grid;
  gap: 0.65rem;
  padding: 0.75rem;
}

.authorization-policy-item.is-pending,
.authorization-onboarding-card.is-pending {
  border-color: #f5ca9a;
}

.authorization-policy-item > div > strong,
.authorization-policy-item > div > span {
  display: block;
}

.authorization-policy-item > div > span {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.4;
  margin-top: 0.2rem;
}

.authorization-policy-item dl {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.authorization-technical-audit {
  margin: 1.4rem 0;
  padding: 0;
}

.authorization-technical-content {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 1rem;
  padding: 1rem;
}

.authorization-version-heading {
  border-top: 1px solid var(--line);
  padding-top: 1rem;
}

.authorization-request-list,
.authorization-onboarding-grid,
.authorization-timeline-list {
  display: grid;
  gap: 0.85rem;
}

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

.authorization-current-configuration,
.authorization-save-summary {
  background: #f2f8f4;
  border-left: 3px solid #68b782;
  display: grid;
  gap: 0.2rem;
  padding: 0.7rem 0.8rem;
}

.authorization-current-configuration strong,
.authorization-save-summary strong {
  font-size: 0.8rem;
}

.authorization-current-configuration span,
.authorization-save-summary span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.4;
}

.authorization-onboarding-card > details ul {
  color: var(--muted);
  font-size: 0.85rem;
  line-height: 1.45;
  margin: 0.65rem 0;
  padding-left: 1.15rem;
}

.authorization-onboarding-card > details small {
  color: var(--muted);
  display: block;
  font-size: 0.75rem;
  margin-top: 0.6rem;
}

.authorization-request-card {
  gap: 0.75rem;
}

.authorization-request-heading {
  align-items: flex-start;
}

.authorization-request-heading h3 {
  font-size: 1rem;
  margin-top: 0.35rem;
}

.authorization-request-heading p,
.authorization-request-motive,
.authorization-request-decision {
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.authorization-request-motive,
.authorization-request-decision {
  color: var(--ink);
  margin: 0;
}

.authorization-request-details {
  border-bottom: 1px solid #e7f0e9;
  border-top: 1px solid #e7f0e9;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 0.75rem 0;
}

.authorization-deadline {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  display: grid;
  font-size: 0.78rem;
  gap: 0.16rem;
  padding: 0.48rem 0.62rem;
  text-align: right;
}

.authorization-deadline span {
  color: #9a3412;
  font-weight: 800;
}

.authorization-request-actions {
  flex-wrap: wrap;
  justify-content: flex-start;
}

.authorization-request-technical {
  border-top: 1px dashed #dce9e0;
  padding-top: 0.6rem;
}

.authorization-request-technical p {
  color: var(--muted);
  font-size: 0.78rem;
  margin: 0.45rem 0 0;
}

.authorization-empty-state {
  background: #f8fbf9;
  border: 1px dashed #c8dfcf;
  border-radius: 12px;
  display: grid;
  gap: 0.3rem;
  padding: 1.4rem;
  text-align: center;
}

.authorization-empty-state span {
  color: var(--muted);
  font-size: 0.88rem;
}

.authorization-policy-summary,
.authorization-decision-overview {
  background: #f3faf5;
  border: 1px solid #cce5d3;
  border-radius: 14px;
  display: grid;
  gap: 0.45rem;
  margin-bottom: 1rem;
  padding: 1rem;
}

.authorization-policy-summary p {
  font-size: 1rem;
  line-height: 1.5;
  margin: 0;
}

.authorization-form-section {
  border-bottom: 1px solid var(--line);
  display: grid;
  gap: 0.85rem;
  padding: 1rem 0;
}

.authorization-form-section:first-of-type {
  padding-top: 0;
}

.authorization-form-section h3,
.authorization-form-section p {
  margin: 0;
}

.authorization-form-section p {
  color: var(--muted);
  font-size: 0.88rem;
}

.authorization-advanced-form-fields {
  margin-top: 1rem;
  padding: 0;
}

.authorization-advanced-form-fields > .authorization-form-grid {
  border-top: 1px solid var(--line);
  padding: 1rem;
}

.authorization-save-summary {
  margin: 1rem 0;
}

.authorization-decision-overview {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.5fr);
}

.authorization-decision-main {
  align-items: flex-start;
  display: grid;
  justify-content: start;
}

.authorization-decision-overview dl {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.authorization-decision-request {
  border-top: 1px solid #d5eadb;
  grid-column: 1 / -1;
  padding-top: 0.75rem;
}

.authorization-decision-request p {
  margin: 0.25rem 0 0;
}

.authorization-timeline {
  margin-top: 1rem;
  padding: 0;
}

.authorization-timeline-list {
  border-top: 1px solid var(--line);
  padding: 1rem;
}

.authorization-timeline-list article {
  border-left: 3px solid #69b982;
  padding: 0.2rem 0 0.2rem 0.8rem;
}

.authorization-timeline-list article > div,
.authorization-timeline-list article > div > strong,
.authorization-timeline-list article > div > span {
  display: block;
}

.authorization-timeline-list article > div > span,
.authorization-timeline-list article p,
.authorization-timeline-list article code {
  color: var(--muted);
  font-size: 0.82rem;
}

.authorization-timeline-list article p {
  margin: 0.35rem 0;
}

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

  .settings-setup-grid,
  .authorization-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .settings-all-sections-list {
    column-count: 2;
  }
}

@media (max-width: 760px) {
  .settings-workbench-nav {
    padding: 0.7rem;
  }

  .settings-menu-toolbar,
  .settings-all-sections-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .settings-menu-overview-link {
    align-items: flex-start;
    flex-basis: auto;
    text-align: left;
    width: 100%;
  }

  .settings-menu-grid {
    grid-template-columns: 1fr;
  }

  .settings-all-sections-list {
    column-count: 1;
  }

  .settings-all-sections-summary-action {
    font-size: 0;
  }

  .settings-all-sections-summary-action::after {
    font-size: 1.1rem;
  }

  .settings-setup-grid,
  .authorization-process-grid,
  .authorization-onboarding-grid,
  .authorization-policy-item dl,
  .authorization-request-details,
  .authorization-decision-overview,
  .authorization-decision-overview dl {
    grid-template-columns: 1fr;
  }

  .settings-related-steps,
  .authorization-orientation,
  .authorization-request-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .settings-related-steps a {
    border-bottom: 1px solid #dce9e0;
    border-right: 0;
  }

  .settings-related-steps a:last-child {
    border-bottom: 0;
  }

  .authorization-orientation-stats {
    justify-content: flex-start;
  }

  .authorization-deadline {
    text-align: left;
  }

  .configuration-decision-card {
    display: grid;
  }
}

.authorization-page-heading {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin-bottom: 18px;
}

.authorization-page-heading h1,
.authorization-page-heading p {
  margin-bottom: 4px;
}

.authorization-summary {
  background: #ffffff;
  border: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 18px;
}

.authorization-summary > div {
  border-right: 1px solid var(--line);
  min-width: 0;
  padding: 14px 16px;
}

.authorization-summary > div:last-child {
  border-right: 0;
}

.authorization-summary strong,
.authorization-summary span,
.authorization-cell-detail,
.authorization-policy-warning span {
  display: block;
}

.authorization-summary strong {
  font-size: 22px;
  line-height: 1.1;
}

.authorization-summary span,
.authorization-cell-detail {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.4;
  margin-top: 4px;
}

.authorization-summary .is-warning {
  border-top: 3px solid #d97706;
}

.authorization-health {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  display: grid;
  gap: 8px;
  letter-spacing: 0;
  margin: 0 0 18px;
  padding: 14px 18px;
}

.authorization-health.is-incomplete {
  background: #fff7ed;
  border-color: #fed7aa;
}

.authorization-health div,
.authorization-health p {
  margin: 0;
}

.authorization-health span {
  color: var(--muted);
  display: block;
  margin-top: 3px;
}

.authorization-table-wrap {
  overflow-x: auto;
}

.authorization-matrix-table {
  min-width: 900px;
}

.authorization-matrix-table td {
  vertical-align: top;
}

.authorization-row-details {
  margin-top: 0.6rem;
}

.authorization-row-details summary {
  color: var(--success);
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 800;
}

.authorization-row-details dl {
  display: grid;
  gap: 0.45rem 0.7rem;
  grid-template-columns: minmax(86px, auto) 1fr;
  margin: 0.7rem 0 0;
}

.authorization-row-details dt {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.authorization-row-details dd {
  margin: 0;
}

.authorization-row-details dd span {
  display: block;
  margin-top: 0.2rem;
}

.authorization-row-blocked {
  background: #fffaf0;
}

.authorization-warning-text {
  color: #9a3412;
  font-weight: 700;
}

.authorization-filters {
  border-bottom: 1px solid var(--line);
  display: flex;
  gap: 2px;
  margin: 0 0 16px;
  overflow-x: auto;
}

.authorization-filters a {
  border-bottom: 3px solid transparent;
  color: var(--muted);
  padding: 10px 12px;
  text-decoration: none;
  white-space: nowrap;
}

.authorization-filters a.active {
  border-bottom-color: var(--accent);
  color: var(--text);
}

.compact-button {
  min-height: 34px;
  padding: 7px 10px;
}

.authorization-policy-warning {
  background: #fff7ed;
  border-left: 4px solid #d97706;
  margin-bottom: 18px;
  padding: 14px 16px;
}

.authorization-policy-warning span {
  color: #7c2d12;
  margin-top: 3px;
}

.authorization-form-card {
  max-width: 1080px;
}

.authorization-form-steps {
  display: grid;
  gap: 10px;
}

.authorization-form-step {
  background: #ffffff;
  border: 1px solid var(--line);
}

.authorization-form-step[open] {
  border-color: #bbf7d0;
}

.authorization-form-step summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  list-style: none;
  padding: 16px 18px;
}

.authorization-form-step summary::-webkit-details-marker {
  display: none;
}

.authorization-form-step summary::after {
  color: var(--success);
  content: "+";
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}

.authorization-form-step[open] summary::after {
  content: "−";
}

.authorization-form-step summary strong,
.authorization-form-step summary small {
  display: block;
}

.authorization-form-step summary strong {
  font-size: 17px;
}

.authorization-form-step summary small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 400;
  margin-top: 3px;
}

.authorization-form-step fieldset {
  border: 0;
  border-top: 1px solid var(--line);
  margin: 0;
  padding: 18px;
}

.authorization-form-card legend {
  font-size: 17px;
  font-weight: 800;
  padding-right: 12px;
}

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

.authorization-form-grid > div {
  min-width: 0;
}

.authorization-form-grid input:not([type="checkbox"]),
.authorization-form-grid select,
.authorization-form-grid textarea {
  width: 100%;
}

.authorization-form-wide {
  grid-column: 1 / -1;
}

.authorization-checkboxes {
  align-content: start;
  display: grid;
  gap: 9px;
}

.authorization-checkboxes label {
  align-items: flex-start;
  display: flex;
  gap: 8px;
}

.authorization-inline-check {
  align-items: center;
  display: flex;
  font-weight: 600;
  gap: 8px;
  letter-spacing: 0;
  margin-top: 8px;
}

@media (max-width: 760px) {
  .authorization-page-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .authorization-summary,
  .authorization-form-grid {
    grid-template-columns: 1fr;
  }

  .authorization-summary > div {
    border-bottom: 1px solid var(--line);
    border-right: 0;
  }

  .authorization-summary > div:last-child {
    border-bottom: 0;
  }

  .authorization-form-wide {
    grid-column: auto;
  }

  .authorization-form-step summary {
    align-items: flex-start;
  }
}
