/* Admin common shell - lot 037. Top navigation is the only primary navigation. */
:root {
  --rad-admin-bg: #f4f7f6;
  --rad-admin-surface: #ffffff;
  --rad-admin-border: #d7e4e2;
  --rad-admin-text: #1d3337;
  --rad-admin-muted: #607176;
  --rad-admin-primary: #2f747e;
  --rad-admin-primary-dark: #245b64;
  --rad-admin-soft: #eef6f7;
  --rad-admin-warn: #fff4d8;
  --rad-admin-danger: #fde8e8;
  --rad-admin-ok: #e5f6eb;
  --rad-admin-shadow: 0 10px 24px rgba(34, 96, 109, 0.08);
  --rad-admin-font: system-ui, -apple-system, "Segoe UI", sans-serif;
  --rad-admin-radius: 8px;
  --rad-admin-focus: #154d72;
  --rad-admin-space: 12px;
  --rad-admin-z-header: 1000;
  --rad-admin-z-popup-backdrop: 30000;
  --rad-admin-z-popup: 30010;
}

/* 132M: tableaux de bord Configuration et Statistiques. */
.rd-admin-config,
.rd-analytics {
  width: min(1280px, calc(100% - 32px));
  margin: 24px auto;
}
.rd-admin-config .rd-admin-panel,
.rd-analytics .rd-admin-panel {
  margin: 16px 0;
  padding: 18px;
  border: 1px solid #d4e1e2;
  background: #fff;
}
.rd-admin-form { display: grid; gap: 14px; max-width: 820px; }
.rd-admin-form label { display: grid; gap: 6px; font-weight: 700; }
.rd-admin-form input,
.rd-admin-form textarea,
.rd-admin-form select { width: 100%; max-width: 720px; padding: 9px; border: 1px solid #aebfc2; border-radius: 6px; font: inherit; }
.rd-admin-notice { padding: 12px 14px; border-left: 4px solid #3b7780; background: #edf6f7; }
.rd-admin-notice.is-error { border-color: #b43a32; background: #fff0ef; color: #6f211d; }
.rd-analytics-kpis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 18px 0; }
.rd-analytics-kpis article { padding: 14px; border: 1px solid #cadadb; background: #f6faf9; }
.rd-analytics-kpis span { display: block; color: #4a6266; font-size: .9rem; }
.rd-analytics-kpis strong { display: block; margin-top: 5px; font-size: 1.7rem; }
.rd-analytics-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.rd-analytics-list { margin: 0; padding-left: 1.35rem; }
.rd-analytics-list li { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px solid #e6eeee; }
.radc-client-summary > td { padding: 0 12px 16px !important; background: #f7fbfa; }
.radc-client-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 12px; padding: 14px; border-left: 4px solid #3b7780; }
.radc-client-summary-grid h3 { margin: 0 0 6px; font-size: 1rem; letter-spacing: 0; }
.radc-client-summary-grid p { margin: 3px 0; }

@media (max-width: 900px) {
  .rd-analytics-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .radc-client-summary-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 680px) {
  .rd-admin-config, .rd-analytics { width: calc(100% - 16px); margin: 8px auto; }
  .rd-analytics-grid, .rd-analytics-kpis { grid-template-columns: 1fr; }
  .radc-client-summary-grid { grid-template-columns: 1fr; }
}

.rad-admin-brandbar,
.rd-admin-brandbar {
  width: 100%;
  margin: 0;
  padding: 8px 12px;
  background: #236575;
  color: #ffffff;
  box-shadow: 0 4px 14px rgba(29, 51, 55, 0.12);
}

.rad-admin-brandbar-link,
.rd-admin-brandbar-link {
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(100%, 1180px);
  min-width: 0;
  margin: 0 auto;
  color: #ffffff;
  text-decoration: none;
}

.rad-admin-brandbar-link:hover,
.rad-admin-brandbar-link:focus-visible,
.rd-admin-brandbar-link:hover,
.rd-admin-brandbar-link:focus-visible {
  color: #ffffff;
  text-decoration: none;
}

.rad-admin-brandbar-link:focus-visible,
.rd-admin-brandbar-link:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}

.rad-admin-brandbar-logo,
.rd-admin-brandbar-logo {
  display: block;
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 999px;
  object-fit: contain;
  background: #ffffff;
  padding: 4px;
}

.rad-admin-brandbar-text,
.rd-admin-brandbar-text {
  display: grid;
  gap: 1px;
  min-width: 0;
}

.rad-admin-brandbar-text strong,
.rd-admin-brandbar-text strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.1;
  letter-spacing: 0;
}

.rad-admin-brandbar-text small,
.rd-admin-brandbar-text small {
  color: rgba(255, 255, 255, 0.82);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.15;
}

* {
  box-sizing: border-box;
}

:where(html.rad-admin-ui) body,
body.rd-admin-compact,
body.rd-admin-page,
body.admin {
  margin: 0;
  background: var(--rad-admin-bg);
  color: var(--rad-admin-text);
  font-family: var(--rad-admin-font);
  font-size: 15px;
  line-height: 1.5;
}

:where(html.rad-admin-ui, body.rd-admin-page, body.rd-admin-compact) :where(button, input, select, textarea) { font-family: var(--rad-admin-font); }
:where(html.rad-admin-ui, body.rd-admin-page, body.rd-admin-compact) :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--rad-admin-focus); outline-offset: 3px; }
:where(html.rad-admin-ui, body.rd-admin-page, body.rd-admin-compact) a:not([class]) { color: var(--rad-admin-primary-dark); text-underline-offset: 3px; }
:where(html.rad-admin-ui, body.rd-admin-page, body.rd-admin-compact) :where(button:disabled, input:disabled, select:disabled, textarea:disabled) { cursor: not-allowed; opacity: .65; }

.rd-admin-page,
.rad-admin-page,
.rd-admin-layout,
main.rd-admin-page,
main.rd-admin-layout {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  padding: 18px 12px 32px;
  color: var(--rad-admin-text);
  overflow-x: hidden;
}

.rd-admin-shell,
.rad-admin-container,
.rd-admin-content,
.rd-admin-page > .service-box,
.rd-admin-layout > .service-box,
.rd-admin-home {
  width: min(100%, 1180px);
  max-width: 1180px;
  min-width: 0;
  margin-left: auto;
  margin-right: auto;
}

.rd-admin-shell,
.rd-admin-content {
  display: block;
  padding: 0;
}

.rd-admin-hero {
  display: block;
  min-width: 0;
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.rd-admin-home {
  padding: 18px 12px 32px;
}

.rd-admin-home-header {
  width: min(100%, 1180px);
  max-width: 1180px;
  margin: 0 auto 14px;
  padding: 14px;
  border: 1px solid var(--rad-admin-border);
  border-radius: var(--rad-admin-radius);
  background: var(--rad-admin-surface);
  box-shadow: var(--rad-admin-shadow);
}

.rd-admin-home-header h1 {
  margin: 0 0 6px;
  color: var(--rad-admin-text);
  font-size: 22px;
  line-height: 1.15;
}

.rd-admin-home-header p {
  margin: 0;
  color: var(--rad-admin-muted);
  font-size: 14px;
}

.rd-admin-home-kicker {
  margin: 0 0 6px;
  color: var(--rad-admin-primary-dark);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
}

.rd-admin-card-head {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin-bottom: 6px;
}

.rd-admin-card-head h2 {
  margin: 0;
  min-width: 0;
}

.rd-admin-home .rd-admin-card {
  display: flex;
  flex-direction: column;
}

.rd-admin-home .rd-admin-card-head {
  align-items: flex-start;
  min-height: 3.25rem;
}

.rd-admin-home .rd-admin-card-head h2 {
  font-size: 18px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.rd-admin-home .rd-admin-card > .rd-admin-btn {
  margin-top: auto;
  align-self: stretch;
  min-height: 48px;
  text-align: center;
}

.rad-admin-help-tip-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}

html button.rad-admin-help-tip {
  position: relative;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box;
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  padding: 0 !important;
  margin: 0 0 0 4px !important;
  border: 1px solid #9bb8bd !important;
  border-radius: 999px !important;
  background: #eef6f7 !important;
  color: #245b64 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: help !important;
  vertical-align: middle;
  appearance: none !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

.rad-admin-help-tip:focus-visible {
  outline: 2px solid #2f747e;
  outline-offset: 2px;
}

html .rad-admin-help-tip-text {
  position: absolute;
  z-index: 30;
  left: 50%;
  bottom: calc(100% + 8px);
  width: max-content;
  min-width: min(220px, calc(100vw - 32px));
  max-width: min(340px, calc(100vw - 32px));
  padding: 8px 10px;
  border: 1px solid #c9dad8;
  border-radius: 8px;
  background: #ffffff;
  color: #1d3337;
  box-shadow: 0 12px 26px rgba(34, 96, 109, .16);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  opacity: 0;
  pointer-events: none;
  transform: translateX(-50%) translateY(4px);
  transition: opacity .12s ease, transform .12s ease;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}

.rad-admin-help-tip-wrap.is-open > .rad-admin-help-tip-text,
.rad-admin-help-tip-wrap:hover > .rad-admin-help-tip-text,
.rad-admin-help-tip-wrap:focus-within > .rad-admin-help-tip-text {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

.rad-admin-help-tip-content {
  display: block;
}

.rad-admin-help-tip-link {
  display: inline-flex;
  margin-top: 8px;
  color: var(--rad-admin-primary-dark);
  font-weight: 800;
}

.rad-admin-help-tip-close {
  display: none;
  min-height: 28px;
  margin-top: 8px;
  padding: 4px 8px;
  font-size: 12px;
}

@media (max-width: 1100px) {
  html .rad-admin-help-tip-text {
    position: fixed;
    z-index: var(--rad-admin-z-popup, 1000);
    left: 12px;
    right: 12px;
    bottom: 12px;
    width: min(340px, calc(100vw - 24px));
    min-width: 0;
    max-width: none;
    max-height: min(70dvh, 520px);
    margin-inline: auto;
    overflow-y: auto;
    transform: translateY(4px);
  }

  body > .rad-admin-help-tip-text.is-portal-open {
    position: fixed !important;
    z-index: var(--rad-admin-z-popup, 1000) !important;
    top: auto !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }

  .rad-admin-help-tip-wrap.is-open > .rad-admin-help-tip-text,
  .rad-admin-help-tip-wrap:hover > .rad-admin-help-tip-text,
  .rad-admin-help-tip-wrap:focus-within > .rad-admin-help-tip-text {
    transform: translateY(0);
  }

  .rad-admin-help-tip-close {
    display: inline-flex;
  }
}

.rad-admin-state-pending details[data-admin-section-id] > :not(summary) {
  visibility: hidden;
}

[data-admin-partial][aria-busy="true"] {
  cursor: progress;
}

[data-admin-partial] {
  overflow-anchor: none;
}

.rad-admin-partial-status {
  margin: 8px 0 0;
  color: var(--rad-admin-muted);
  font-size: 12px;
}

.rad-admin-partial-status.is-error {
  color: var(--rad-admin-danger);
  font-weight: 750;
}

.rad-admin-section > summary.rad-admin-section-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  margin: -14px -14px 0;
  padding: 14px;
  border-radius: 10px;
  background: var(--rad-admin-surface);
  color: var(--rad-admin-text);
  cursor: pointer;
  list-style: none;
}

.rad-admin-section[open] > summary.rad-admin-section-summary {
  margin-bottom: 14px;
  border-bottom: 1px solid var(--rad-admin-border);
  border-radius: 10px 10px 0 0;
  background: var(--rad-admin-soft);
}

.rad-admin-section > summary.rad-admin-section-summary::-webkit-details-marker {
  display: none;
}

.rad-admin-section-heading,
.rad-admin-section-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.rad-admin-section-heading h2 {
  margin: 0;
  color: var(--rad-admin-text);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
}

.rad-admin-section-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  border-radius: 999px;
  background: var(--rad-admin-soft);
  color: var(--rad-admin-primary-dark);
  font-size: 12px;
  font-weight: 800;
}

.rad-admin-section-count.is-critical {
  background: #fee2e2;
  color: #991b1b;
}

.rad-admin-section-count.is-warning {
  background: #ffedd5;
  color: #9a3412;
}

.rad-admin-section-toggle {
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform .15s ease;
}

.rad-admin-section[open] > summary .rad-admin-section-toggle {
  transform: rotate(225deg) translate(-2px, -2px);
}

.rd-template-modal,
.rd-service-mail-modal,
.rd-service-questionnaire-modal {
  z-index: var(--rad-admin-z-popup-backdrop) !important;
}

.rd-template-modal-card,
.rd-service-mail-modal-card,
.rd-service-questionnaire-modal-card {
  position: relative;
  z-index: var(--rad-admin-z-popup);
}

.rd-admin-panel,
.rd-admin-card,
.rd-admin-row,
.rd-admin-kpi,
.service-box {
  overflow: visible;
}

.rd-admin-module-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-width: 28px;
  height: 24px;
  border-radius: 999px;
  background: var(--rad-admin-primary);
  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
}

.rad-admin-header,
.rd-admin-header {
  position: relative;
  z-index: var(--rad-admin-z-header);
  font-family: var(--rad-admin-font);
  color: var(--rad-admin-text);
  width: min(100%, 1180px);
  max-width: 1180px;
  min-width: 0;
  margin: 0 auto 14px;
  padding: 12px 14px;
  border: 1px solid var(--rad-admin-border);
  border-radius: var(--rad-admin-radius);
  background: var(--rad-admin-surface);
  box-shadow: var(--rad-admin-shadow);
  overflow: visible;
}

.rad-admin-header-row,
.rd-admin-header-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.rad-admin-header-row .rad-admin-title { text-align: center; }
.rad-admin-global-links { display: grid; gap: 4px; }
.rad-admin-global-links a, .rad-admin-global-links a:visited { color: var(--rad-admin-primary-dark); text-decoration: none; }
.rad-admin-global-links a:hover { text-decoration: underline; }
.rad-admin-global-links a:focus-visible { outline: 2px solid var(--rad-admin-focus); outline-offset: 3px; }
/* The global frame is outside legacy module wrappers; context keeps its own height. */
html.rad-admin-ui body.rad-admin-has-global-menu { margin: 0 !important; padding: 16px 0 0 !important; }
html.rad-admin-ui body > [data-rad-admin-topnav] { box-sizing: border-box; width: min(1180px,calc(100% - 32px)) !important; max-width: 1180px !important; margin: 0 auto 14px !important; padding: 12px 14px !important; }
html.rad-admin-ui body > [data-rad-admin-topnav] > .rad-admin-header-row { box-sizing: border-box; height: 60px; min-height: 60px; margin: 0; }
html.rad-admin-ui .rad-admin-context { box-sizing: border-box; width: min(1180px,calc(100% - 32px)); margin: 0 auto 14px; padding: 0; }
html.rad-admin-ui body.rad-admin-has-global-menu > main.rd-admin-content { width: min(1180px,calc(100% - 32px)); max-width: 1180px; margin: 24px auto; }
@media(max-width:700px) {
  html.rad-admin-ui body > [data-rad-admin-topnav] > .rad-admin-header-row { height: 112px; min-height: 112px; }
}
html.rad-admin-ui body > [data-rad-admin-module-id="accueil"] > .rad-admin-header-row { grid-template-columns: minmax(0,1fr) auto; height: auto; min-height: 44px; }
.rad-admin-site-link, .rad-admin-site-link:visited { color: var(--rad-admin-primary-dark); font-weight: 700; text-decoration: none; }
.rad-admin-site-link:focus-visible { outline: 2px solid var(--rad-admin-focus); outline-offset: 3px; }
.rad-admin-modules { position: static; min-width: 0; }
.rad-admin-modules > summary { display: flex; align-items: center; gap: 8px; min-height: 36px; padding: 6px 12px; border: 1px solid var(--rad-admin-border); border-radius: var(--rad-admin-radius); background: var(--rad-admin-soft); color: var(--rad-admin-primary-dark); font-size: 13px; font-weight: 700; cursor: pointer; list-style: none; }
.rad-admin-modules > summary::-webkit-details-marker { display: none; }
.rad-admin-modules[open] > summary { background: var(--rad-admin-primary); color: #fff; }
.rad-admin-modules > nav { position: absolute; inset: auto 0 auto auto; z-index: 2; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; width: min(520px, 100%); max-height: 65dvh; overflow-y: auto; overflow-x: hidden; padding: 10px; border: 1px solid var(--rad-admin-border); border-radius: var(--rad-admin-radius); background: #fff; box-shadow: var(--rad-admin-shadow); }
.rad-admin-modules:not([open]) > nav { display: none; }
.rad-admin-modules > nav a { display: flex; align-items: center; min-height: 40px; padding: 8px; border-radius: 4px; color: var(--rad-admin-primary-dark); text-decoration: none; font-size: 14px; line-height: 1.3; }
.rad-admin-modules > nav a:hover { background: var(--rad-admin-soft); }
.rad-admin-modules > nav a.is-active { background: var(--rad-admin-soft); box-shadow: inset 3px 0 var(--rad-admin-primary); font-weight: 700; }

.rad-admin-title,
.rd-admin-title,
.rd-admin-page h1 {
  margin: 0;
  color: var(--rad-admin-text);
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: 0;
}

.rd-admin-page h2,
.service-box h2 {
  font-size: 17px;
  line-height: 1.2;
  letter-spacing: 0;
}

.rd-admin-page h3,
.service-box h3 {
  font-size: 15px;
  line-height: 1.25;
  letter-spacing: 0;
}

.rad-admin-back,
.rd-admin-back,
.rd-admin-main-back,
.rad-admin-topnav-link,
.rd-admin-topnav-link,
.cta-btn,
button,
input[type="submit"],
input[type="button"],
.button,
.btn,
.admin-btn,
.rd-admin-btn,
.rd-admin-btn-secondary,
.rad-admin-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  max-height: none;
  width: auto;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 8px;
  border: 1px solid var(--rad-admin-border);
  background: var(--rad-admin-soft);
  color: var(--rad-admin-primary-dark);
  font-size: 13px;
  font-weight: 750;
  font-family: var(--rad-admin-font);
  line-height: 1.15;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  overflow-wrap: anywhere;
  box-shadow: none;
  cursor: pointer;
}

.rad-admin-back,
.rd-admin-back,
.rd-admin-main-back,
.rad-admin-topnav-link,
.rd-admin-topnav-link {
  white-space: normal;
  overflow-wrap: normal;
}

.cta-btn:not(.secondary),
button.primary,
.btn-primary,
.rd-admin-btn-primary,
.rad-admin-btn-primary {
  border-color: var(--rad-admin-primary);
  background: var(--rad-admin-primary);
  color: #ffffff;
}

.cta-btn.secondary,
.btn-secondary,
.rd-admin-btn-secondary,
.rad-admin-btn-secondary {
  background: var(--rad-admin-soft);
  color: var(--rad-admin-primary-dark);
}

.cta-btn.danger,
.btn-danger,
.rd-admin-btn-danger {
  border-color: #e1a5a5;
  background: var(--rad-admin-danger);
  color: #8b1f1f;
}

.rad-admin-topnav,
.rd-admin-topnav {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  min-width: 0;
  margin-top: 10px;
  padding-bottom: 2px;
  overflow: visible;
}

.rad-admin-topnav-link.is-active,
.rad-admin-topnav-link.active,
.rd-admin-topnav-link.is-active,
.rd-admin-topnav-link.active {
  border-color: var(--rad-admin-primary);
  background: var(--rad-admin-primary);
  color: #ffffff;
}

.rad-admin-topnav-link-cross {
  border-style: dashed;
  background: #ffffff;
}

.rd-admin-sidebar,
.rd-admin-module-nav,
.radc-module-nav,
.radq-module-nav,
.rd-email-side {
  display: none;
}

.service-box,
.rd-admin-panel,
.rd-admin-card,
.rad-admin-card,
.radc-note,
.radc-alert,
.admin-card {
  max-width: 100%;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--rad-admin-border);
  border-radius: var(--rad-admin-radius);
  background: var(--rad-admin-surface);
  box-shadow: var(--rad-admin-shadow);
  overflow-wrap: normal;
  word-break: normal;
}

.rd-admin-panel,
.rd-admin-card,
.service-box {
  margin-bottom: 14px;
}

a.rd-admin-card,
a.rd-admin-card:visited {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: var(--rad-admin-text);
  text-decoration: none;
}

a.rd-admin-card > strong {
  color: var(--rad-admin-primary-dark);
}

a.rd-admin-card:hover {
  border-color: var(--rad-admin-primary);
  background: var(--rad-admin-soft);
}

a.rd-admin-card:focus-visible {
  outline: 3px solid var(--rad-admin-primary);
  outline-offset: 3px;
}

.rd-admin-grid,
.rd-admin-form-grid,
.admin-card-grid,
.radc-grid,
.form-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
  min-width: 0;
}

.rd-admin-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.rd-admin-list,
.rd-admin-location-list,
.rd-admin-usage-list,
.rd-selected-chips {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.rd-selected-chips,
.rd-admin-usage-list {
  display: flex;
  flex-wrap: wrap;
}

.rd-admin-row,
.rd-admin-location-card,
.rd-form-field-card,
.rd-form-builder-list-card,
.rd-form-preview-card {
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--rad-admin-border);
  border-radius: 10px;
  background: #ffffff;
  overflow-wrap: normal;
  word-break: normal;
}

.rd-admin-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
  gap: 8px;
  margin: 8px 0;
}

.rd-admin-actions,
.radc-actions,
.admin-actions,
.rd-admin-event-actions,
.rd-admin-form-actions,
.radc-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.rd-admin-muted,
.radc-muted,
.admin-mini,
.service-box small {
  color: var(--rad-admin-muted);
}

label,
.rd-admin-page label,
.service-box label {
  font-size: 13px;
  line-height: 1.25;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.rd-admin-page input:not([type="checkbox"]):not([type="radio"]),
.rd-admin-page select,
.rd-admin-page textarea,
.service-box input:not([type="checkbox"]):not([type="radio"]),
.service-box select,
.service-box textarea {
  width: 100%;
  max-width: 100%;
  min-height: 34px;
  padding: 6px 9px;
  border: 1px solid #b7c8cd;
  border-radius: 8px;
  background: #ffffff;
  color: var(--rad-admin-text);
  font: inherit;
  font-size: 14px;
  line-height: 1.2;
}

textarea,
.rd-admin-page textarea,
.service-box textarea {
  min-height: 76px;
  resize: vertical;
}

input[type="checkbox"],
input[type="radio"],
.rd-admin-page input[type="checkbox"],
.rd-admin-page input[type="radio"],
.service-box input[type="checkbox"],
.service-box input[type="radio"] {
  width: 16px;
  min-width: 16px;
  max-width: 16px;
  height: 16px;
  min-height: 16px;
  max-height: 16px;
  margin: 0 6px 0 0;
  padding: 0;
  accent-color: var(--rad-admin-primary);
  vertical-align: -2px;
}

.checkline,
.rd-admin-checkline,
.radc-checkline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 24px;
}

table,
.radc-table,
.admin-table,
.rd-admin-table {
  width: 100%;
  border-collapse: collapse;
  max-width: 100%;
}

th,
td,
.radc-table th,
.radc-table td,
.admin-table th,
.admin-table td,
.rd-admin-table th,
.rd-admin-table td {
  padding: 7px 9px;
  border-bottom: 1px solid var(--rad-admin-border);
  text-align: left;
  vertical-align: top;
  font-size: 13px;
}

th,
.radc-table th,
.admin-table th,
.rd-admin-table th {
  background: var(--rad-admin-soft);
  color: var(--rad-admin-text);
}

.radc-table-wrap,
.admin-table-wrap,
.rd-admin-table-wrap {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: auto;
}

.rd-admin-table-wrap > table { display: table; width: 100%; max-width: none; overflow: visible; }
.rd-admin-table-wrap:focus-visible { outline: 3px solid var(--rad-admin-focus); outline-offset: 2px; }
.rd-admin-scroll-hint { margin: 6px 0; color: var(--rad-admin-muted); font-size: 13px; }
.rd-admin-number { text-align: right; font-variant-numeric: tabular-nums; }
.rd-admin-form [aria-invalid="true"] { border-color: #a62626; }
.rd-admin-field-error { color: #8b1f1f; }
.rd-admin-dialog { width: min(720px, calc(100% - 32px)); max-height: 90dvh; overflow: auto; border: 1px solid var(--rad-admin-border); border-radius: var(--rad-admin-radius); padding: 20px; background: var(--rad-admin-surface); color: var(--rad-admin-text); }
.rd-admin-dialog::backdrop { background: rgb(29 51 55 / .4); }

.rd-admin-badge,
.radc-pill,
.status-pill,
.pill {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 7px;
  border-radius: 999px;
  background: var(--rad-admin-soft);
  color: var(--rad-admin-primary-dark);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.1;
}

.radc-alert.ok,
.notice-ok,
.status-ok,
.pill-ok {
  background: var(--rad-admin-ok);
  color: #1e6238;
}

.radc-alert.bad,
.notice-bad,
.status-bad,
.pill-bad {
  background: var(--rad-admin-danger);
  color: #8b1f1f;
}

.radc-alert.warn,
.notice-warn,
.status-warn,
.pill-warn {
  background: var(--rad-admin-warn);
  color: #715100;
}

.rd-admin-kpi {
  display: block;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--rad-admin-border);
  border-radius: 10px;
  background: #ffffff;
  color: inherit;
  text-decoration: none;
}

.rd-admin-kpi strong {
  display: block;
  margin-top: 4px;
  font-size: 22px;
  line-height: 1;
}

.rd-admin-kpi-link:hover,
.rd-admin-kpi-link:focus-visible,
.radc-stat-link:hover,
.radc-stat-link:focus-visible {
  outline: 2px solid var(--rad-admin-primary);
  outline-offset: 2px;
}

.rd-admin-calendar-layout {
  display: grid;
  grid-template-columns: minmax(280px, 380px) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.rd-admin-calendar,
.rd-admin-event-list {
  min-width: 0;
}

.rd-admin-calendar-toolbar,
.rd-admin-weekdays,
.rd-admin-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

.rd-admin-calendar-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.rd-admin-day,
.rd-admin-icon-button {
  min-height: 34px;
  max-height: none;
  padding: 5px;
  white-space: normal;
}

.rd-admin-day {
  display: grid;
  place-items: center;
  gap: 2px;
  background: #ffffff;
}

.rd-admin-day.is-selected {
  border-color: var(--rad-admin-primary);
  background: var(--rad-admin-soft);
}

.rd-admin-day.is-empty {
  min-height: 34px;
  border: 0;
  background: transparent;
}

.rd-admin-day-count {
  min-width: 18px;
  padding: 1px 5px;
  border-radius: 999px;
  background: var(--rad-admin-primary);
  color: #ffffff;
  font-size: 11px;
}

.rd-admin-dots {
  display: flex;
  gap: 2px;
  justify-content: center;
}

.rd-admin-dot {
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: var(--rad-admin-primary);
}

.rd-admin-event-card {
  display: block;
  margin-bottom: 8px;
  padding: 10px;
  border: 1px solid var(--rad-admin-border);
  border-radius: 10px;
  background: #ffffff;
}

.rd-admin-event-card.is-hidden {
  display: none;
}

.rd-admin-event-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.rd-admin-event-head > * {
  min-width: 0;
}

.rd-admin-filter-note {
  display: none;
  margin: 0 0 8px;
  padding: 8px 10px;
  border-radius: 8px;
  background: var(--rad-admin-soft);
}

.rd-admin-filter-note.is-visible {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}

.is-hidden {
  display: none !important;
}

.rd-admin-save-bar,
.rd-admin-sticky-actions {
  margin-top: 18px;
  padding: 12px 14px;
  border: 1px solid var(--rad-admin-border);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: var(--rad-admin-shadow);
}

.rd-admin-section + .rd-admin-save-bar,
.rd-admin-panel + .rd-admin-save-bar {
  margin-top: 18px;
}

.rd-admin-page,
.rad-admin-page {
  overflow-x: hidden;
}

.rd-admin-page *,
.rad-admin-page * {
  box-sizing: border-box;
}

.rd-admin-page :where(.rd-admin-shell, .rd-admin-panel, .rd-admin-section, .rd-admin-card, .rd-admin-kpi, .rd-admin-row, .admin-card, .service-box, form, fieldset, label, p, a, span, strong, small),
.rad-admin-page :where(.rd-admin-shell, .rd-admin-panel, .rd-admin-section, .rd-admin-card, .rd-admin-kpi, .rd-admin-row, .admin-card, .service-box, form, fieldset, label, p, a, span, strong, small) {
  min-width: 0;
  max-width: 100%;
}

.rd-admin-page :where(h1, h2, h3, h4, h5, h6, summary, p, li, dt, dd, small, span, strong, td, th, a, label, button),
.rad-admin-page :where(h1, h2, h3, h4, h5, h6, summary, p, li, dt, dd, small, span, strong, td, th, a, label, button) {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none;
}

.rd-admin-page :where(code, pre, .rd-email-mono, .radc-mono),
.rad-admin-page :where(code, pre, .rd-email-mono, .radc-mono) {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.rd-admin-page :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
.rad-admin-page :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  max-width: 100%;
}

.rd-admin-page :where(.radc-table, table),
.rad-admin-page :where(.radc-table, table) {
  max-width: 100%;
}

@media (max-width: 760px) {
  .rad-admin-brandbar,
  .rd-admin-brandbar {
    padding: 7px 10px;
  }

  .rad-admin-brandbar-logo,
  .rd-admin-brandbar-logo {
    width: 36px;
    height: 36px;
    min-width: 36px;
  }

  .rad-admin-brandbar-text strong,
  .rd-admin-brandbar-text strong {
    font-size: 15px;
  }

  .rd-admin-page,
  .rad-admin-page,
  main.rd-admin-page {
    padding: 10px 8px 24px;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .rad-admin-header,
  .rd-admin-header {
    padding: 10px;
    max-width: 100%;
  }

  .rad-admin-header-row,
  .rd-admin-header-row {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .rad-admin-header-row > .rad-admin-back, .rad-admin-header-row > .rad-admin-global-links { grid-column: 1 / -1; justify-self: start; }
  .rad-admin-header-row .rad-admin-title { text-align: left; font-size: 20px; }
  .rad-admin-modules > summary, .rad-admin-modules > nav a, .rad-admin-topnav-link { min-height: 44px; }

  .rad-admin-topnav,
  .rd-admin-topnav {
    flex-wrap: wrap;
    margin-right: 0;
    padding-right: 0;
    overflow: visible;
  }

  :where(html.rad-admin-ui) :where(.cta-btn, .rd-admin-btn, .rd-admin-btn-secondary, button:not(.rad-admin-help-tip):not(.rd-mail-emoji-fav):not(.rd-mail-emoji-pick), input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), select) { min-height: 44px; }
  :where(html.rad-admin-ui) :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { font-size: 16px; }

  .rd-admin-grid,
  .rd-admin-form-grid,
  .admin-card-grid,
  .radc-grid,
  .form-grid,
  .rd-admin-calendar-layout,
  .rd-admin-two-col {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100%;
    min-width: 0;
  }

  .rd-admin-panel,
  .rd-admin-section,
  .rd-admin-card,
  .rd-admin-kpi,
  .rd-admin-row,
  .admin-card,
  .service-box {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }

  .rd-admin-actions,
  .radc-actions,
  .admin-actions {
    width: 100%;
    min-width: 0;
    align-items: stretch;
  }

  .rd-admin-actions form,
  .radc-actions form,
  .admin-actions form {
    min-width: 0;
    max-width: 100%;
  }

  .rd-admin-actions .cta-btn,
  .radc-actions .cta-btn,
  .admin-actions .cta-btn {
    width: auto;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
  }

  .rd-admin-page input:not([type="checkbox"]):not([type="radio"]),
  .rd-admin-page select,
  .rd-admin-page textarea,
  .rad-admin-page input:not([type="checkbox"]):not([type="radio"]),
  .rad-admin-page select,
  .rad-admin-page textarea {
    width: 100%;
    min-width: 0;
  }

  .rd-admin-page .radc-table,
  .rad-admin-page .radc-table,
  .rd-admin-page table,
  .rad-admin-page table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .rd-admin-page .radc-table th,
  .rd-admin-page .radc-table td,
  .rad-admin-page .radc-table th,
  .rad-admin-page .radc-table td {
    min-width: 120px;
    white-space: normal;
  }

  .rad-admin-help-tip::before {
    content: "";
    position: absolute;
    inset: -8px;
  }

  .rad-admin-section > summary.rad-admin-section-summary {
    min-height: 48px;
    padding: 12px;
  }

  .rad-admin-section-heading h2 {
    font-size: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rad-admin-section-toggle { transition: none; }
}
