/* Agency Console visual layer. Functional layout remains in app.css. */
body.rms-app-page {
  background: var(--rms-bg) !important;
}
.rms-app {
  position: relative;
  overflow: visible;
  font-family: var(--rms-body-font);
  background-color: var(--rms-bg);
  background-image: var(--rms-texture);
  background-size: 18px 18px;
}
.rms-app::before {
  content: '';
  position: fixed;
  inset: 0 0 auto;
  height: 8px;
  z-index: 999;
  background: linear-gradient(90deg, var(--rms-blue), var(--rms-purple), var(--rms-accent));
  pointer-events: none;
}
.rms-app-shell {
  width: min(100%, 1640px);
  padding: calc(30px * var(--rms-density)) clamp(14px, 2.4vw, 36px) 64px;
}
.rms-app-topbar {
  position: sticky;
  top: var(--rms-admin-offset, 0px);
  z-index: 90;
  min-height: 64px;
  margin: 0 0 calc(34px * var(--rms-density));
  padding: 7px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: calc(var(--rms-radius) + 4px);
  background: rgba(16,24,32,.97);
  box-shadow: 0 18px 50px rgba(16,24,32,.13);
  backdrop-filter: blur(18px);
}
.rms-app-nav {
  flex: 1;
  background: transparent;
  padding: 0;
  border-radius: 0;
}
.rms-app-nav a {
  min-height: 48px;
  padding: 11px 15px;
  border-radius: calc(var(--rms-radius) - 5px);
  color: rgba(255,255,255,.72);
  font-size: 13px;
  letter-spacing: .01em;
}
.rms-app-nav a.is-active {
  background: var(--rms-blue);
  color: var(--rms-ink);
}
.rms-user-menu-toggle {
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.08);
  color: #fff;
}
.rms-user-menu-popover {
  border-color: rgba(16,24,32,.12);
}
.rms-app-header h1,
.rms-kpi-chart-head h2,
.rms-kpi-sheet-head h2 {
  font-family: var(--rms-display-font);
  font-weight: 800;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.rms-app-header h1 {
  font-size: clamp(38px, 4.8vw, 64px);
  line-height: .9;
}
.rms-app-header.is-greeting h1 {
  font-size: clamp(30px, 6vw, var(--rms-greeting-size, 54px));
}
.rms-app-header p {
  max-width: 740px;
  font-size: 15px;
}
.rms-panel,
.rms-metric,
.rms-calendar-toolbar,
.rms-unscheduled,
.rms-month,
.rms-week,
.rms-kpi-chart-panel,
.rms-kpi-sheet-panel,
.rms-kpi-controls {
  border-color: color-mix(in srgb, var(--rms-line) 86%, transparent);
  box-shadow: 0 18px 54px rgba(16,24,32,.055);
}
.rms-panel,
.rms-metric {
  position: relative;
  overflow: hidden;
}
.rms-panel::after,
.rms-metric::after {
  content: '';
  position: absolute;
  right: -28px;
  bottom: -28px;
  width: 92px;
  height: 92px;
  border: 1px solid color-mix(in srgb, var(--rms-blue) 24%, transparent);
  border-radius: 50%;
  pointer-events: none;
}
.rms-metric::before { width: 6px; }
.rms-button,
.rms-button-secondary,
.rms-button-danger,
.rms-month-nav,
.rms-day-add,
.rms-event,
.rms-record-link,
.rms-appointment-list-item,
.rms-roadmap-step,
.rms-create-choice button,
.rms-date-card,
.rms-date-arrow,
.rms-time-group button,
.rms-user-menu-toggle,
.rms-user-menu-popover > a,
.rms-modal-head > button,
.rms-drawer-head > button {
  transition: none !important;
  transform: none !important;
  filter: none !important;
}
.rms-app a:hover,
.rms-app button:hover,
.rms-modal-wrap a:hover,
.rms-modal-wrap button:hover,
.rms-drawer-wrap a:hover,
.rms-drawer-wrap button:hover {
  transform: none !important;
  filter: none !important;
  text-decoration: none !important;
}
.rms-button:hover { background: var(--rms-ink) !important; color: #fff !important; border-color: var(--rms-ink) !important; }
.rms-button-secondary:hover { background: #fff !important; color: var(--rms-ink) !important; border-color: var(--rms-line) !important; }
.rms-button-danger:hover { background: var(--rms-danger) !important; color: #fff !important; border-color: var(--rms-danger) !important; }
.rms-app-nav a:hover { background: transparent !important; color: rgba(255,255,255,.72) !important; }
.rms-app-nav a.is-active:hover { background: var(--rms-blue) !important; color: var(--rms-ink) !important; }
.rms-user-menu-toggle:hover { background: rgba(255,255,255,.08) !important; color: #fff !important; }
.rms-user-menu-popover > a:hover { background: transparent !important; color: var(--rms-ink) !important; }
.rms-record-link:hover,
.rms-appointment-list-item:hover,
.rms-event:hover,
.rms-roadmap-step:hover,
.rms-create-choice button:hover,
.rms-date-card:hover,
.rms-date-arrow:hover,
.rms-time-group button:hover,
.rms-day-add:hover,
.rms-month-nav:hover { background-color: inherit !important; color: inherit !important; box-shadow: none !important; }
.rms-event.is-appointment:hover { background: #f2efff !important; }
.rms-event.is-todo:hover { background: #eef1f5 !important; }
.rms-event:not(.is-appointment):not(.is-todo):hover { background: var(--rms-blue-soft) !important; }
.rms-modal-backdrop,
.rms-drawer-backdrop,
.rms-modal-backdrop:hover,
.rms-drawer-backdrop:hover,
.rms-modal-backdrop:focus,
.rms-drawer-backdrop:focus {
  background: rgba(8,13,18,.58) !important;
  box-shadow: none !important;
  outline: none;
}
.rms-sticky-calendar-head {
  top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 64px) + 12px);
  border-radius: calc(var(--rms-radius) - 1px) calc(var(--rms-radius) - 1px) 0 0;
  background: rgba(255,255,255,.96);
  box-shadow: 0 12px 28px rgba(16,24,32,.07);
}
.rms-sticky-calendar-head h2 {
  font-family: var(--rms-display-font);
  font-size: clamp(26px, 3vw, 40px);
  text-transform: uppercase;
  letter-spacing: -.02em;
}
.rms-month-nav { border-radius: 0; border: 0; background: transparent; font-size: 28px; }
.rms-day-add { font-family: var(--rms-body-font); font-weight: 400; }
.rms-month,
.rms-week { border-radius: var(--rms-radius); }
.rms-day { background: rgba(255,255,255,.97); }
.rms-day.is-outside { background: rgba(239,242,246,.72); }
.rms-event { border-radius: 3px; }
.rms-modal,
.rms-drawer { border: 1px solid rgba(255,255,255,.36); }
.rms-modal-head h2,
.rms-drawer-head h2 {
  font-family: var(--rms-display-font);
  font-size: 44px;
  text-transform: uppercase;
}

/* KPI reporting */
.rms-kpi-controls {
  display: grid;
  grid-template-columns: minmax(190px,1.2fr) auto minmax(190px,1fr) 140px auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid var(--rms-line);
  border-radius: var(--rms-radius);
  background: var(--rms-panel);
}
.rms-kpi-controls label { display: grid; gap: 7px; font-size: 12px; font-weight: 800; }
.rms-kpi-controls select { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--rms-line); border-radius: 8px; background: #fff; color: var(--rms-ink); }
.rms-kpi-year { display: grid; grid-template-columns: 42px minmax(80px,auto) 42px; align-items: center; min-height: 44px; border: 1px solid var(--rms-line); border-radius: 8px; overflow: hidden; }
.rms-kpi-year button { height: 42px; border: 0; background: transparent; color: var(--rms-ink); font-size: 20px; }
.rms-kpi-year strong { text-align: center; font-size: 18px; }
.rms-kpi-yoy { display: flex !important; align-items: center; min-height: 44px; gap: 8px !important; padding: 0 10px; white-space: nowrap; }
.rms-kpi-chart-panel,
.rms-kpi-sheet-panel {
  margin-bottom: 16px;
  padding: 22px;
  border: 1px solid var(--rms-line);
  border-radius: var(--rms-radius);
  background: var(--rms-panel);
}
.rms-kpi-chart-head,
.rms-kpi-sheet-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.rms-kpi-chart-head h2,
.rms-kpi-sheet-head h2 { margin: 3px 0 0; font-size: 34px; }
.rms-kpi-legend { display: flex; gap: 16px; align-items: center; color: var(--rms-muted); font-size: 12px; font-weight: 800; }
.rms-kpi-legend span { display: inline-flex; align-items: center; gap: 7px; }
.rms-kpi-legend i { width: 24px; height: 4px; background: var(--rms-blue); }
.rms-kpi-legend i.is-previous { background: var(--rms-purple); }
.rms-kpi-chart { display: block; width: 100%; height: auto; min-height: 280px; overflow: visible; }
.rms-chart-grid line { stroke: color-mix(in srgb, var(--rms-line) 82%, transparent); stroke-width: 1; }
.rms-chart-grid text { fill: var(--rms-muted); font-family: var(--rms-body-font); font-size: 11px; }
.rms-chart-series polyline { fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.rms-chart-series circle { stroke: var(--rms-panel); stroke-width: 3; }
.rms-chart-current { stroke: var(--rms-blue); fill: var(--rms-blue); }
.rms-chart-previous { stroke: var(--rms-purple); fill: var(--rms-purple); opacity: .72; }
.rms-kpi-chart-empty { display: grid; place-items: center; min-height: 260px; padding: 28px; border: 1px dashed var(--rms-line); color: var(--rms-muted); text-align: center; }
.rms-kpi-chart-empty b { color: var(--rms-ink); font-size: 18px; }
.rms-kpi-sheet-head > span { color: var(--rms-muted); font-size: 12px; }
.rms-kpi-sheet-scroll { width: 100%; overflow: auto; border: 1px solid var(--rms-line); border-radius: 10px; background: #fff; }
.rms-kpi-sheet { width: max(1180px,100%); border-collapse: separate; border-spacing: 0; }
.rms-kpi-sheet th,
.rms-kpi-sheet td { min-width: 82px; height: 64px; padding: 8px; border-right: 1px solid var(--rms-line); border-bottom: 1px solid var(--rms-line); background: #fff; text-align: right; }
.rms-kpi-sheet thead th { position: sticky; top: 0; z-index: 3; height: 42px; background: var(--rms-ink); color: #fff; font-size: 11px; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.rms-kpi-sheet th:first-child { position: sticky; left: 0; z-index: 2; min-width: 240px; max-width: 240px; background: #f8fafc; text-align: left; }
.rms-kpi-sheet thead th:first-child { z-index: 4; background: var(--rms-ink); }
.rms-kpi-sheet tbody th b,
.rms-kpi-sheet tbody th small { display: block; }
.rms-kpi-sheet tbody th small { margin-top: 4px; color: var(--rms-muted); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.rms-kpi-sheet td { position: relative; }
.rms-kpi-sheet input { width: 100%; min-width: 0; padding: 9px 5px; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: var(--rms-ink); font-weight: 700; text-align: right; }
.rms-kpi-sheet input:focus { outline: 2px solid var(--rms-blue); outline-offset: -2px; }
.rms-kpi-sheet [data-cell-state] { position: absolute; right: 7px; bottom: 3px; color: var(--rms-muted); font-size: 8px; text-transform: uppercase; }

@media (max-width: 1100px) {
  .rms-kpi-controls { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rms-kpi-yoy { min-height: 44px; }
}
@media (max-width: 782px) {
  .rms-app-shell { padding-top: 14px; }
  .rms-app-topbar { top: var(--rms-admin-offset,0px); min-height: 56px; margin-bottom: 24px; }
  .rms-app-nav a { min-height: 42px; padding: 9px 11px; }
  .rms-sticky-calendar-head { top: calc(var(--rms-admin-offset,0px) + var(--rms-app-topbar-height,56px) + 8px); }
  .rms-kpi-controls { grid-template-columns: 1fr; }
  .rms-kpi-chart-head,
  .rms-kpi-sheet-head { align-items: flex-start; flex-direction: column; }
  .rms-kpi-chart { min-width: 720px; }
  [data-analytics-chart-wrap] { overflow-x: auto; }
}
.rms-app-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
  padding: 0 10px 0 4px;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
}
.rms-app-brand span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  background: #fff;
  color: var(--rms-ink);
  font-family: var(--rms-display-font);
  font-size: 16px;
  letter-spacing: -.04em;
}
.rms-app-brand img {
  display: block;
  width: auto;
  max-width: 118px;
  height: 40px;
  max-height: 40px;
  object-fit: contain;
  object-position: left center;
}
.rms-app-brand b { font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.rms-app-brand:hover { color: #fff !important; }
@media(max-width:1180px){.rms-app-brand b{display:none}.rms-app-brand{padding-right:2px}}
@media(max-width:560px){.rms-app-brand{display:none}}

.rms-app-footer {
  width: 100%;
  margin-top: 44px;
  padding: 24px 16px 6px;
  border-top: 1px solid color-mix(in srgb, var(--rms-line) 82%, transparent);
  color: var(--rms-muted);
  font-family: var(--rms-body-font, Montserrat, Arial, sans-serif);
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}
.rms-app-footer p { margin: 0; }
/* Exact hover-neutral colors so BuddyBoss cannot introduce rollover states. */
.rms-record-link:hover,.rms-roadmap-step:hover,.rms-day-add:hover,.rms-month-nav:hover { background:transparent!important; color:var(--rms-ink)!important; }
.rms-appointment-list-item:hover,.rms-create-choice button:hover,.rms-date-card:hover,.rms-date-arrow:hover,.rms-time-group button:hover { background:#fff!important; color:var(--rms-ink)!important; }
.rms-time-group button.is-selected:hover { background:var(--rms-purple)!important; color:#fff!important; }
.rms-date-card.is-selected:hover { background:#fff!important; color:var(--rms-ink)!important; }

/* 1.7 fixed workspace navigation and calendar stack */
body.rms-app-page {
  --rms-topbar-side: clamp(14px, 2.4vw, 36px);
}
.rms-app-shell {
  padding-top: calc(30px + var(--rms-app-topbar-height, 64px) + 34px);
}
.rms-app-topbar {
  position: fixed !important;
  top: calc(var(--rms-admin-offset, 0px) + 12px) !important;
  left: max(var(--rms-topbar-side), calc((100vw - 1640px) / 2 + var(--rms-topbar-side)));
  right: max(var(--rms-topbar-side), calc((100vw - 1640px) / 2 + var(--rms-topbar-side)));
  z-index: 980 !important;
  margin: 0 !important;
}
.rms-calendar-toolbar {
  position: sticky;
  top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 64px) + 24px);
  z-index: 78;
  margin-bottom: 16px;
  box-shadow: 0 16px 38px rgba(16,24,32,.09);
}
.rms-sticky-calendar-head {
  top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 64px) + var(--rms-calendar-toolbar-height, 80px) + 40px) !important;
  z-index: 68;
}
.rms-unscheduled {
  top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 64px) + var(--rms-calendar-toolbar-height, 80px) + 40px) !important;
}

/* Roadmap progress, centered and unmistakably REMIXED */
.rms-roadmap-step {
  min-height: 130px;
  padding: 58px 16px 12px 0;
  text-align: center;
}
.rms-roadmap-step::before {
  top: 22px;
  left: 20px;
  height: 3px;
  background: color-mix(in srgb, var(--rms-blue) 34%, var(--rms-line));
}
.rms-roadmap-step > span {
  top: 2px;
  left: 50%;
  z-index: 2;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 8px;
  background: var(--rms-blue);
  color: var(--rms-ink);
  font-family: var(--rms-display-font);
  font-size: 17px;
  font-weight: 900;
  line-height: 1;
  transform: translateX(-50%) !important;
}
.rms-roadmap-step.is-complete > span {
  background: var(--rms-blue);
  color: var(--rms-ink);
}
.rms-roadmap-step b,
.rms-roadmap-step small { text-align: center; }

/* Front-end accounting */
.rms-accounting-nav {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  margin: 0 0 18px;
  padding: 7px;
  border: 1px solid var(--rms-line);
  border-radius: 14px;
  background: var(--rms-panel);
  scrollbar-width: none;
}
.rms-accounting-nav::-webkit-scrollbar { display: none; }
.rms-accounting-nav a {
  flex: 0 0 auto;
  padding: 10px 15px;
  border-radius: 9px;
  color: var(--rms-muted);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .02em;
  text-decoration: none;
  text-transform: uppercase;
}
.rms-accounting-nav a.is-active {
  background: var(--rms-ink);
  color: #fff;
}
.rms-finance-controls {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
  padding: 16px;
  border: 1px solid var(--rms-line);
  border-radius: var(--rms-radius);
  background: var(--rms-panel);
}
.rms-finance-controls label { display: grid; gap: 7px; min-width: min(360px,100%); font-size: 12px; font-weight: 850; }
.rms-finance-controls select { min-height: 44px; padding: 10px 12px; border: 1px solid var(--rms-line); border-radius: 9px; background: #fff; }
.rms-finance-year { display: grid; grid-template-columns: 44px 90px 44px; align-items: center; overflow: hidden; border: 1px solid var(--rms-line); border-radius: 9px; }
.rms-finance-year button { height: 44px; border: 0; background: transparent; font-size: 21px; }
.rms-finance-year strong { text-align: center; font-size: 18px; }
.rms-finance-chart-panel { margin-bottom: 18px; }
.rms-finance-chart { display: block; width: 100%; height: auto; min-height: 280px; }
.rms-chart-invoiced { stroke: var(--rms-blue); fill: var(--rms-blue); }
.rms-chart-received { stroke: var(--rms-purple); fill: var(--rms-purple); }
.rms-chart-series polyline.rms-chart-invoiced,
.rms-chart-series polyline.rms-chart-received { fill: none; stroke-width: 4; }
.rms-chart-legend { display: flex; gap: 16px; color: var(--rms-muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.rms-chart-legend span::before { content: ''; display: inline-block; width: 24px; height: 4px; margin-right: 7px; vertical-align: middle; background: var(--rms-blue); }
.rms-chart-legend .is-received::before { background: var(--rms-purple); }
.rms-table tr[data-commercial],
.rms-table tr[data-invoice],
.rms-table tr[data-appointment] { cursor: pointer; }
.rms-table td small { display: block; margin-top: 3px; color: var(--rms-muted); }
.rms-view-state { display: inline-flex; align-items: center; min-height: 27px; padding: 5px 9px; border-radius: 999px; font-size: 10px; font-weight: 850; white-space: nowrap; }
.rms-view-state.is-viewed { background: color-mix(in srgb, var(--rms-success) 12%, #fff); color: var(--rms-success); }
.rms-view-state.is-unviewed { background: #eef1f5; color: var(--rms-muted); }
.rms-document-meta { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: 0 0 20px; }
.rms-document-meta > div { padding: 14px; border: 1px solid var(--rms-line); border-radius: 10px; background: #f8fafc; }
.rms-document-meta span,
.rms-document-meta b { display: block; }
.rms-document-meta span { margin-bottom: 5px; color: var(--rms-muted); font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.rms-document-actions { display: flex; flex-wrap: wrap; gap: 9px; margin: 18px 0; }
.rms-document-total,
.rms-document-discount { display: flex; justify-content: space-between; gap: 16px; margin: 0; padding: 11px 0; border-top: 1px solid var(--rms-line); }
.rms-document-total { font-size: 17px; }
.rms-legal-copy { padding: 16px; border: 1px solid var(--rms-line); border-radius: 10px; background: #f8fafc; line-height: 1.6; }
.rms-commercial-lines-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 10px; }
.rms-commercial-lines-head h3 { margin: 0; }
.rms-commercial-line { display: grid; grid-template-columns: minmax(190px,1.35fr) minmax(180px,1.5fr) 82px 110px 94px 94px 40px; gap: 8px; align-items: center; margin: 9px 0; }
.rms-commercial-line.is-invoice { grid-template-columns: minmax(190px,1.35fr) minmax(180px,1.5fr) 82px 110px 40px; }
.rms-commercial-line > button { width: 40px; height: 40px; padding: 0; border: 1px solid var(--rms-line); border-radius: 8px; background: #fff; }
.rms-button-small { min-height: 34px; padding: 7px 11px; font-size: 11px; }
.rms-call-access { display: grid; gap: 12px; margin: 16px 0; }
.rms-sequence-front { margin: 0 0 22px; }
.rms-sequence-front span { min-width: 86px; text-align: center; }

@media (max-width: 900px) {
  .rms-commercial-line,
  .rms-commercial-line.is-invoice { grid-template-columns: 1fr 1fr; padding: 12px; border: 1px solid var(--rms-line); border-radius: 10px; }
  .rms-commercial-line > select,
  .rms-commercial-line > input:nth-child(2) { grid-column: 1 / -1; }
  .rms-document-meta { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 782px) {
  body.rms-app-page { --rms-topbar-side: 8px; }
  .rms-app-shell { padding-top: calc(14px + var(--rms-app-topbar-height, 56px) + 26px); }
  .rms-app-topbar { top: calc(var(--rms-admin-offset,0px) + 7px) !important; }
  .rms-calendar-toolbar { top: calc(var(--rms-admin-offset,0px) + var(--rms-app-topbar-height,56px) + 15px); }
  .rms-sticky-calendar-head,
  .rms-unscheduled { top: calc(var(--rms-admin-offset,0px) + var(--rms-app-topbar-height,56px) + var(--rms-calendar-toolbar-height,190px) + 25px) !important; }
  .rms-finance-controls { align-items: stretch; flex-direction: column; }
  .rms-finance-year { width: 178px; }
  .rms-finance-chart { min-width: 720px; }
  .rms-finance-chart-panel { overflow-x: auto; }
  .rms-document-meta { grid-template-columns: 1fr 1fr; }
  .rms-commercial-line,
  .rms-commercial-line.is-invoice { grid-template-columns: 1fr; }
  .rms-commercial-line > select,
  .rms-commercial-line > input:nth-child(2) { grid-column: auto; }
}
@media (max-width: 520px) {
  .rms-document-meta { grid-template-columns: 1fr; }
}
.rms-document-activity { display: grid; gap: 6px; justify-items: start; }
.rms-sent-state { color: var(--rms-ink); font-size: 10px; font-weight: 800; white-space: nowrap; }
.rms-sent-state.is-draft { color: var(--rms-muted); }
.rms-document-activity small { color: var(--rms-muted); font-size: 9px; line-height: 1.35; }

/* 1.8 calendar controls and customizable workspace navigation */
.rms-app-topbar {
  transform: none !important;
  will-change: auto;
}
.rms-calendar-filters {
  position: sticky;
  top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 64px) + 24px);
  z-index: 78;
  margin: 0 0 16px;
  border: 1px solid var(--rms-line);
  border-radius: 14px;
  background: var(--rms-panel);
  box-shadow: 0 16px 38px rgba(16,24,32,.09);
}
.rms-calendar-filters > summary {
  display: none;
  min-height: 48px;
  padding: 11px 14px;
  cursor: pointer;
  list-style: none;
  align-items: center;
  gap: 8px;
  color: var(--rms-ink);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.2;
}
.rms-calendar-filters > summary::-webkit-details-marker { display: none; }
.rms-calendar-filters > summary span { flex: 0 0 auto; }
.rms-calendar-filters > summary small { flex: 1 1 auto; color: var(--rms-muted); font-size: 10px; font-weight: 650; }
.rms-calendar-filters > summary svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; transition: transform .18s ease; }
.rms-calendar-filters[open] > summary svg { transform: rotate(180deg); }
.rms-calendar-filters .rms-calendar-toolbar {
  position: static !important;
  top: auto !important;
  z-index: auto;
  margin: 0;
  border: 0;
  border-radius: inherit;
  box-shadow: none;
}
.rms-calendar-toolbar {
  grid-template-columns: auto repeat(4,minmax(130px,1fr));
  align-items: end;
  gap: 10px;
  padding: 13px;
}
.rms-calendar-toolbar label {
  gap: 5px;
  min-width: 0;
  color: var(--rms-ink);
  font-size: 10px !important;
  font-weight: 850;
  line-height: 1.15 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
  overflow: visible;
}
.rms-calendar-toolbar input,
.rms-calendar-toolbar select {
  width: 100%;
  min-height: 40px !important;
  height: 40px !important;
  padding: 7px 10px !important;
  font-family: var(--rms-body-font);
  font-size: 12px !important;
  line-height: 1.2 !important;
}
.rms-calendar-view-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
}
.rms-calendar-view-actions .rms-button {
  min-height: 40px;
  padding: 8px 12px;
  font-size: 10px;
  line-height: 1;
}
.rms-sticky-calendar-head,
.rms-unscheduled {
  top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 64px) + var(--rms-calendar-toolbar-height, 76px) + 40px) !important;
}
.rms-admin-override {
  grid-column: 1 / -1;
  margin: 2px 0 0;
  padding: 12px 14px;
  border: 1px solid color-mix(in srgb, var(--rms-blue) 55%, var(--rms-line));
  border-radius: 10px;
  background: color-mix(in srgb, var(--rms-blue) 8%, #fff);
}
.rms-admin-override span { font-size: 11px; line-height: 1.45; }
.rms-nav-setting {
  display: grid;
  grid-template-columns: minmax(120px,.7fr) minmax(160px,1fr) minmax(150px,.8fr);
  align-items: end;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--rms-line);
}
.rms-nav-setting:last-child { border-bottom: 0; }
.rms-nav-setting > strong { align-self: center; }
.rms-nav-setting .rms-admin-field { margin: 0; }

@media (max-width: 1100px) {
  .rms-calendar-toolbar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rms-calendar-view-actions { grid-column: 1 / -1; }
}
@media (max-width: 782px) {
  .rms-calendar-filters {
    top: calc(var(--rms-admin-offset,0px) + var(--rms-app-topbar-height,56px) + 15px);
    overflow: hidden;
  }
  .rms-calendar-filters > summary { display: flex; }
  .rms-calendar-filters:not([open]) .rms-calendar-toolbar { display: none; }
  .rms-calendar-toolbar { grid-template-columns: 1fr; padding: 0 12px 12px; }
  .rms-calendar-view-actions { grid-column: auto; display: grid; grid-template-columns: repeat(3,1fr); }
  .rms-calendar-toolbar input,
  .rms-calendar-toolbar select { min-height: 44px !important; height: 44px !important; }
  .rms-sticky-calendar-head,
  .rms-unscheduled { top: calc(var(--rms-admin-offset,0px) + var(--rms-app-topbar-height,56px) + var(--rms-calendar-toolbar-height,49px) + 25px) !important; }
  .rms-nav-setting { grid-template-columns: 1fr; }
}

/* 1.8 fixed workspace and payment controls */
body.rms-app-page .rms-app-topbar {
  position: sticky !important;
  top: var(--rms-admin-offset, 0px) !important;
  z-index: 100 !important;
}
body.rms-app-page .rms-calendar-filters {
  position: sticky !important;
  z-index: 88 !important;
}
.rms-payment-link-card {
  border: 1px solid color-mix(in srgb, var(--rms-blue) 48%, var(--rms-line));
  border-radius: var(--rms-radius);
  background: color-mix(in srgb, var(--rms-blue) 7%, var(--rms-panel));
  padding: 16px;
}
.rms-payment-link-card .rms-document-meta { margin: 0; }

/* 1.8.0 final calendar stack corrections */
body.rms-app-page .rms-app-topbar {
  position: fixed !important;
  top: calc(var(--rms-admin-offset, 0px) + 12px) !important;
  transform: none !important;
}
.rms-calendar-toolbar label {
  font-size: 9px !important;
  line-height: 1.35 !important;
  padding-bottom: 1px;
}
.rms-calendar-toolbar label > select,
.rms-calendar-toolbar label > input {
  margin-top: 1px;
}
@media (max-width: 782px) {
  body.rms-app-page .rms-app-topbar {
    top: calc(var(--rms-admin-offset, 0px) + 7px) !important;
  }
  .rms-calendar-filters:not([open]) {
    box-shadow: 0 10px 24px rgba(16,24,32,.08);
  }
}

/* 1.9.0 assignments, reporting, roadmap, and integration refinements */
.rms-app input[type='search'],
.rms-modal input[type='search'],
.rms-drawer input[type='search'],
.rms-wrap input[type='search'],
body.rms-app-page input.search-field,
body.rms-app-page .search-form input[type='text'] {
  padding-left: 42px !important;
  background-position: 14px 50% !important;
  background-repeat: no-repeat !important;
}

.rms-form select[multiple] {
  min-height: 146px;
  padding: 7px;
  background-image: none !important;
}
.rms-form select[multiple] option { padding: 8px 9px; border-radius: 4px; }
.rms-form select[multiple] optgroup { padding: 5px 0; color: var(--rms-muted); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; }
.rms-form select[multiple] optgroup option { color: var(--rms-ink); font-size: 13px; letter-spacing: 0; text-transform: none; }

.rms-availability-loading {
  display: grid;
  place-items: center;
  min-height: 128px;
  color: var(--rms-muted);
  font-size: 12px;
  font-weight: 750;
  text-align: center;
}
.rms-available-date-list {
  display: flex;
  gap: 10px;
  min-width: 0;
  overflow-x: auto;
  padding: 2px;
  scrollbar-width: thin;
}
.rms-available-date-list .rms-date-card { flex: 0 0 148px; }
.rms-date-arrow:disabled { opacity: .25; cursor: default; }
.rms-booking-picker .rms-error { grid-column: 1 / -1; }

.rms-analytics-preview div { min-height: 116px; }
.rms-analytics-preview .rms-kpi-change {
  display: inline-flex;
  width: fit-content;
  margin-top: 8px;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .02em;
}
.rms-kpi-change.is-up { background: color-mix(in srgb, var(--rms-success) 12%, #fff); color: var(--rms-success); }
.rms-kpi-change.is-down { background: color-mix(in srgb, var(--rms-danger) 11%, #fff); color: var(--rms-danger); }
.rms-kpi-change.is-flat { background: #eef1f5; color: var(--rms-muted); }

.rms-kpi-controls {
  grid-template-columns: minmax(180px,1fr) auto minmax(190px,1fr) 130px auto minmax(210px,auto);
}
.rms-metric-picker { position: relative; min-width: 190px; }
.rms-metric-picker > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--rms-line);
  border-radius: 8px;
  background: #fff;
  color: var(--rms-ink);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  list-style: none;
}
.rms-metric-picker > summary::-webkit-details-marker { display: none; }
.rms-metric-picker > summary b { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 5px; background: var(--rms-blue); color: var(--rms-ink); }
.rms-metric-picker > div {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 30;
  display: grid;
  gap: 3px;
  width: min(340px, 82vw);
  max-height: 320px;
  overflow-y: auto;
  padding: 10px;
  border: 1px solid var(--rms-line);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(16,24,32,.16);
}
.rms-metric-picker .rms-square-check { min-height: 36px; padding: 7px 8px; font-size: 12px; }
.rms-report-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 7px; }
.rms-report-actions .rms-button { min-height: 44px; padding: 9px 12px; white-space: nowrap; }
.rms-kpi-legend { flex-wrap: wrap; justify-content: flex-end; max-width: 58%; }
.rms-kpi-legend i { background: currentColor !important; }
.rms-kpi-legend .is-prior { opacity: .5; }
.rms-kpi-legend .is-prior i { background-image: repeating-linear-gradient(90deg,currentColor 0 5px,transparent 5px 8px) !important; }
.rms-chart-metric { stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
polyline.rms-chart-metric { fill: none !important; }
.rms-chart-metric.is-previous { opacity: .42; stroke-dasharray: 7 6; }
.rms-series-0 { stroke: var(--rms-blue); fill: var(--rms-blue); color: var(--rms-blue); }
.rms-series-1 { stroke: var(--rms-purple); fill: var(--rms-purple); color: var(--rms-purple); }
.rms-series-2 { stroke: var(--rms-ink); fill: var(--rms-ink); color: var(--rms-ink); }
.rms-series-3 { stroke: #f33f88; fill: #f33f88; color: #f33f88; }
.rms-series-4 { stroke: #f49b2f; fill: #f49b2f; color: #f49b2f; }
.rms-series-5 { stroke: #1aa66a; fill: #1aa66a; color: #1aa66a; }
.rms-series-6 { stroke: #3c6df0; fill: #3c6df0; color: #3c6df0; }
.rms-series-7 { stroke: #ae49c8; fill: #ae49c8; color: #ae49c8; }

.rms-chart-projected { stroke: var(--rms-accent); fill: var(--rms-accent); opacity: .82; }
.rms-chart-series polyline.rms-chart-projected { fill: none; stroke-width: 3; stroke-dasharray: 9 7; }
.rms-chart-legend .is-projected::before { background: var(--rms-accent); background-image: repeating-linear-gradient(90deg,var(--rms-accent) 0 6px,transparent 6px 9px); }
.rms-finance-controls .rms-report-actions { margin-left: auto; }

.rms-roadmap-overview { display: grid; gap: 24px; }
.rms-roadmap-summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(210px,auto);
  align-items: center;
  gap: 22px;
}
.rms-roadmap-summary h3 { margin: 3px 0 5px; font-family: var(--rms-display-font); font-size: 28px; line-height: 1; text-transform: uppercase; }
.rms-roadmap-summary p { max-width: 680px; margin: 0; color: var(--rms-muted); font-size: 12px; line-height: 1.5; }
.rms-roadmap-progress { display: grid; place-items: center; min-width: 118px; min-height: 86px; padding: 12px; border-radius: 10px; background: var(--rms-blue); color: var(--rms-ink); text-align: center; }
.rms-roadmap-progress strong { font-family: var(--rms-display-font); font-size: 28px; line-height: 1; }
.rms-roadmap-progress span { margin-top: 5px; font-size: 9px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.rms-roadmap-stage-control { display: grid; gap: 5px; color: var(--rms-muted); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.rms-roadmap-stage-control select { min-height: 42px; padding: 8px 10px; border: 1px solid var(--rms-line); border-radius: 8px; background: #fff; color: var(--rms-ink); text-transform: none; }
.rms-roadmap-system {
  --roadmap-progress: 0%;
  position: relative;
  display: grid;
  grid-template-columns: repeat(5,minmax(150px,1fr));
  gap: 0;
  min-width: 900px;
  padding: 18px 0 4px;
}
.rms-roadmap-system::before,
.rms-roadmap-system::after {
  content: '';
  position: absolute;
  top: 38px;
  left: 10%;
  height: 4px;
  border-radius: 999px;
}
.rms-roadmap-system::before { right: 10%; background: var(--rms-line); }
.rms-roadmap-system::after { width: var(--roadmap-progress); max-width: 80%; background: linear-gradient(90deg,var(--rms-blue),var(--rms-purple)); }
.rms-roadmap-stage { position: relative; z-index: 2; display: grid; justify-items: center; gap: 12px; padding: 0 12px; text-align: center; }
.rms-roadmap-number { display: grid; place-items: center; width: 44px; height: 44px; border: 4px solid var(--rms-panel); border-radius: 9px; background: var(--rms-line); color: var(--rms-muted); font-family: var(--rms-display-font); font-size: 17px; font-weight: 900; }
.rms-roadmap-stage.is-complete .rms-roadmap-number { background: var(--rms-purple); color: #fff; }
.rms-roadmap-stage.is-current .rms-roadmap-number { background: var(--rms-blue); color: var(--rms-ink); box-shadow: 0 0 0 4px color-mix(in srgb,var(--rms-blue) 22%,transparent); }
.rms-roadmap-stage b { display: block; font-size: 12px; line-height: 1.25; }
.rms-roadmap-stage small { display: block; margin-top: 5px; color: var(--rms-muted); font-size: 9px; line-height: 1.4; }
.rms-roadmap-stage em { display: inline-flex; margin-top: 8px; padding: 4px 7px; border-radius: 999px; background: var(--rms-blue); color: var(--rms-ink); font-size: 8px; font-style: normal; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.rms-roadmap-work { padding-top: 12px; border-top: 1px solid var(--rms-line); color: var(--rms-muted); font-size: 11px; }
[data-roadmap-list] { overflow-x: auto; }

@media (max-width: 1280px) {
  .rms-kpi-controls { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .rms-report-actions { justify-content: flex-start; }
}
@media (max-width: 900px) {
  .rms-roadmap-summary { grid-template-columns: 1fr auto; }
  .rms-roadmap-stage-control { grid-column: 1 / -1; }
  .rms-finance-controls .rms-report-actions { margin-left: 0; }
}
@media (max-width: 782px) {
  .rms-kpi-controls { grid-template-columns: 1fr; }
  .rms-kpi-legend { max-width: 100%; justify-content: flex-start; }
  .rms-metric-picker > div { position: static; width: 100%; margin-top: 6px; box-shadow: none; }
  .rms-report-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .rms-roadmap-summary { grid-template-columns: 1fr; }
  .rms-roadmap-progress { justify-self: start; }
  .rms-available-date-list .rms-date-card { flex-basis: 132px; }
}

/* 2.0.0 calculated KPIs, dashboard layouts, payments, and in-app profiles */
.rms-dashboard-controls{display:flex;align-items:end;justify-content:flex-end;gap:8px;flex-wrap:wrap}.rms-dashboard-controls label{display:grid;gap:4px;min-width:190px;color:var(--rms-muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.rms-dashboard-controls select{min-height:42px;padding:8px 34px 8px 11px;border:1px solid var(--rms-line);border-radius:8px;background:#fff;color:var(--rms-ink);font:700 12px var(--rms-body-font);text-transform:none}.rms-dashboard-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.rms-dashboard-module{position:relative;min-width:0;cursor:grab}.rms-dashboard-module:active{cursor:grabbing}.rms-dashboard-module.is-dragging{opacity:.45;outline:2px dashed var(--rms-blue);outline-offset:5px}.rms-dashboard-module.is-drag-over{box-shadow:0 0 0 3px color-mix(in srgb,var(--rms-blue) 35%,transparent)}.rms-dashboard-summary-module{grid-column:1/-1;position:relative}.rms-dashboard-module.rms-panel-wide{grid-column:1/-1}.rms-dashboard-drag{display:inline-grid;place-items:center;width:28px;height:28px;margin:-2px 8px -2px -6px;padding:0;border:0;background:transparent;color:var(--rms-muted);font:900 18px/1 var(--rms-body-font);letter-spacing:-5px;cursor:grab}.rms-dashboard-drag.is-floating{position:absolute;top:8px;right:7px;z-index:2;margin:0;background:rgba(255,255,255,.82);border:1px solid var(--rms-line);border-radius:6px}.rms-dashboard-module .rms-panel-title h2{display:flex;align-items:center}.rms-dashboard-module-body>.rms-panel-link{display:inline-flex;margin-top:14px;color:var(--rms-ink);font-size:11px;font-weight:850;text-decoration:none;border-bottom:2px solid var(--rms-blue)}.rms-dashboard-company{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--rms-muted);font-size:9px;font-weight:850;text-transform:uppercase}.rms-dashboard-company select{min-height:40px;padding:7px 34px 7px 10px;border:1px solid var(--rms-line);border-radius:8px;background:#fff;color:var(--rms-ink);font-size:12px;text-transform:none}

.rms-kpi-chart-head small{display:block;max-width:720px;margin-top:6px;color:var(--rms-muted);font-size:10px;line-height:1.45}.rms-kpi-metric-name{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:190px}.rms-kpi-metric-name>div{min-width:0}.rms-kpi-metric-name small{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rms-kpi-metric-name button{flex:0 0 auto;padding:4px 7px;border:1px solid var(--rms-line);border-radius:5px;background:#fff;color:var(--rms-ink);font:800 9px var(--rms-body-font);text-transform:uppercase;letter-spacing:.05em}.rms-kpi-sheet tr.is-formula th{background:color-mix(in srgb,var(--rms-purple) 7%,#fff)}.rms-kpi-sheet tr.is-formula output{display:block;min-width:72px;padding:9px 8px;color:var(--rms-ink);font-weight:800;text-align:right}.rms-formula-keys{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:-4px;padding:12px;border:1px solid var(--rms-line);border-radius:8px;background:#f7f9fb}.rms-formula-keys>span{width:100%;color:var(--rms-muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.rms-formula-keys code{padding:4px 7px;border-radius:5px;background:var(--rms-ink);color:#fff;font-size:10px}.rms-scale-fields{align-self:end}.rms-scale-fields[hidden], [data-formula-fields][hidden], [data-manual-initial][hidden]{display:none!important}

.rms-share-link{display:grid;gap:7px;margin-top:16px;padding:13px;border:1px solid color-mix(in srgb,var(--rms-blue) 44%,var(--rms-line));border-radius:8px;background:#fff}.rms-share-link span{color:var(--rms-muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.rms-share-link code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--rms-ink);font-size:10px}.rms-document-actions{display:flex;flex-wrap:wrap;gap:8px}.rms-payment-link-card .rms-empty{margin:12px 0 0}

.rms-profile-studio{overflow:hidden;border:1px solid var(--rms-line);border-radius:var(--rms-radius);background:var(--rms-panel);box-shadow:var(--rms-shadow)}.rms-profile-cover{position:relative;min-height:280px;background-color:var(--rms-ink);background-image:linear-gradient(125deg,color-mix(in srgb,var(--rms-purple) 78%,var(--rms-ink)),color-mix(in srgb,var(--rms-blue) 72%,var(--rms-ink)));background-size:cover;background-position:center}.rms-profile-cover-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.35))}.rms-profile-cover-button{position:absolute;right:24px;bottom:22px;z-index:2;background:rgba(255,255,255,.92)!important}.rms-profile-identity{position:relative;display:flex;align-items:flex-end;gap:22px;min-height:92px;padding:0 34px 20px}.rms-profile-avatar-wrap{position:relative;flex:0 0 auto;width:150px;height:150px;margin-top:-76px}.rms-profile-avatar-wrap img{display:block;width:150px;height:150px;object-fit:cover;border:7px solid var(--rms-panel);border-radius:20px;background:#fff;box-shadow:0 14px 36px rgba(16,24,32,.2)}.rms-profile-avatar-wrap button{position:absolute;right:4px;bottom:4px;min-height:34px;padding:7px 10px;border:0;border-radius:7px;background:var(--rms-blue);color:var(--rms-ink);font:900 9px var(--rms-body-font);letter-spacing:.06em;text-transform:uppercase}.rms-profile-identity h2{margin:0;font-family:var(--rms-display-font);font-size:36px;line-height:1;text-transform:uppercase}.rms-profile-identity p{margin:5px 0 0;color:var(--rms-muted)}.rms-profile-form{padding:28px 34px 38px;border-top:1px solid var(--rms-line)}.rms-account-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:20px}.rms-account-divider{display:flex;align-items:center;gap:12px;margin:8px 0;color:var(--rms-muted);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.rms-account-divider::after{content:'';height:1px;flex:1;background:var(--rms-line)}.rms-account-profile-card{text-align:center}.rms-account-profile-card img{display:block;width:116px;height:116px;margin:0 auto 18px;object-fit:cover;border-radius:18px;box-shadow:0 12px 28px rgba(16,24,32,.16)}.rms-account-profile-card h2{margin:4px 0;font-family:var(--rms-display-font);font-size:32px;text-transform:uppercase}.rms-account-profile-card p{color:var(--rms-muted)}

body.rms-app-page .site-header,body.rms-app-page #masthead,body.rms-app-page .bb-mobile-header-wrapper,body.rms-app-page .sticky-header,body.rms-app-page .bb-mobile-panel-wrapper{display:none!important}.rms-app-page .rms-app-topbar{position:fixed!important;top:calc(var(--rms-admin-offset,0px) + 12px)!important}.rms-app-page .rms-app-shell{padding-top:calc(var(--rms-app-topbar-height,64px) + 36px)}

@media(max-width:1000px){.rms-dashboard-layout{grid-template-columns:1fr}.rms-dashboard-module.rms-panel-wide,.rms-dashboard-summary-module{grid-column:auto}.rms-account-grid{grid-template-columns:1fr}.rms-kpi-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:782px){.rms-dashboard-controls{width:100%;display:grid;grid-template-columns:1fr 1fr}.rms-dashboard-controls label{grid-column:1/-1;min-width:0}.rms-dashboard-module{cursor:default}.rms-dashboard-drag{display:none}.rms-kpi-controls{grid-template-columns:1fr}.rms-profile-cover{min-height:190px}.rms-profile-cover-button{right:14px;bottom:14px}.rms-profile-identity{display:block;padding:0 20px 20px}.rms-profile-avatar-wrap{width:112px;height:112px;margin-top:-56px;margin-bottom:14px}.rms-profile-avatar-wrap img{width:112px;height:112px;border-width:5px;border-radius:16px}.rms-profile-identity h2{font-size:30px}.rms-profile-form{padding:22px 20px 28px}.rms-app-page .rms-app-shell{padding-top:calc(var(--rms-app-topbar-height,56px) + 28px)}}
@media(max-width:520px){.rms-dashboard-controls{grid-template-columns:1fr}.rms-dashboard-controls label{grid-column:auto}.rms-dashboard-controls .rms-button{width:100%}.rms-profile-cover{min-height:160px}.rms-profile-cover-button{font-size:9px}.rms-account-profile-card{order:-1}.rms-document-actions .rms-button{width:100%;justify-content:center}.rms-kpi-metric-name{min-width:170px}}
.rms-dashboard-mobile-move{display:none;align-items:center;gap:5px}.rms-dashboard-mobile-move button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--rms-line);border-radius:6px;background:#fff;color:var(--rms-ink);font:900 17px/1 var(--rms-body-font)}
@media(max-width:782px){.rms-dashboard-module .rms-panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.rms-dashboard-mobile-move{display:flex}.rms-dashboard-summary-module>.rms-dashboard-mobile-move{justify-content:flex-end;margin:0 0 10px}.rms-dashboard-module[draggable="true"]{touch-action:auto}}


/* 2.1.0 interaction, mobile calendar, and text-only status treatment */
.rms-status,
.rms-sent-state,
.rms-view-state,
.rms-roadmap-stage em {
  display: inline !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-weight: 850 !important;
  line-height: inherit !important;
}
.rms-status { color: var(--rms-muted) !important; }
.rms-status.is-completed,
.rms-status.is-complete,
.rms-status.is-paid,
.rms-status.is-approved,
.rms-status.is-quote_approved,
.rms-status.is-active { color: #087a4d !important; }
.rms-status.is-on_hold,
.rms-status.is-canceled,
.rms-status.is-cancelled,
.rms-status.is-no_show,
.rms-status.is-overdue,
.rms-status.is-failed,
.rms-status.is-deleted { color: #c6283e !important; }
.rms-status.is-in_progress,
.rms-status.is-proposal_sent,
.rms-status.is-quote_sent,
.rms-status.is-sent,
.rms-status.is-confirmed,
.rms-status.is-rescheduled,
.rms-status.is-ready { color: #007da3 !important; }
.rms-status.is-quote_draft,
.rms-status.is-in_review,
.rms-status.is-waiting_on_client,
.rms-status.is-waiting_on_remixed { color: #6741c7 !important; }
.rms-sent-state { color: #007da3 !important; }
.rms-sent-state.is-draft,
.rms-view-state.is-unviewed { color: var(--rms-muted) !important; }
.rms-view-state.is-viewed { color: #087a4d !important; }

@media (max-width: 782px) {
  .rms-app input,
  .rms-app select,
  .rms-app textarea,
  .rms-modal-wrap input,
  .rms-modal-wrap select,
  .rms-modal-wrap textarea,
  .rms-drawer-wrap input,
  .rms-drawer-wrap select,
  .rms-drawer-wrap textarea {
    font-size: 16px !important;
  }

  body.rms-app-page .rms-app-topbar {
    top: var(--rms-admin-offset, 0px) !important;
  }
  body.rms-app-page .rms-app-shell {
    padding-top: calc(var(--rms-app-topbar-height, 56px) + 10px) !important;
  }
  .rms-app[data-view="calendar"] .rms-app-header {
    display: none !important;
  }
  .rms-app[data-view="calendar"] .rms-app-main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .rms-calendar-filters {
    top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 56px) + 6px) !important;
    margin: 0 0 10px !important;
  }
  .rms-calendar-filters > summary {
    min-height: 44px !important;
    padding: 10px 12px !important;
  }
  .rms-calendar-layout {
    gap: 10px !important;
  }
  .rms-month-stream {
    width: 100%;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
  }
  .rms-month {
    min-width: 760px;
  }
  .rms-week {
    min-width: 0;
  }
  .rms-sticky-calendar-head {
    top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 56px) + var(--rms-calendar-toolbar-height, 44px) + 12px) !important;
  }
  .rms-calendar-toolbar label {
    font-size: 9px !important;
    line-height: 1.25 !important;
    padding-bottom: 1px;
  }
}


/* 2.1.0 text-only semantic indicators */
.rms-kpi-change,
.rms-document-activity .rms-status,
.rms-document-activity .rms-sent-state,
.rms-document-activity .rms-view-state {
  display: inline !important;
  width: auto !important;
  margin-top: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.rms-kpi-change.is-up { color: #087a4d !important; }
.rms-kpi-change.is-down { color: #c6283e !important; }
.rms-kpi-change.is-flat { color: var(--rms-muted) !important; }

/* 2.1.0 final mobile calendar and semantic-status refinements */
@media (max-width: 782px) {
  body.rms-app-page .rms-app-topbar {
    position: sticky !important;
    top: var(--rms-admin-offset, 0px) !important;
    margin-bottom: 8px !important;
  }
  body.rms-app-page .rms-app-shell {
    padding-top: 6px !important;
  }
  .rms-calendar-filters {
    top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 56px) + 2px) !important;
  }
  .rms-month-stream {
    overflow-x: visible !important;
  }
  .rms-month {
    width: 100% !important;
    min-width: 0 !important;
  }
  .rms-weekdays,
  .rms-month-grid {
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  }
  .rms-month .rms-day {
    min-width: 0 !important;
    min-height: 88px !important;
    padding: 5px !important;
  }
  .rms-month .rms-day-head {
    min-height: 24px !important;
  }
  .rms-month .rms-day-number {
    font-size: 11px !important;
  }
  .rms-month .rms-day-add {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    padding: 0 !important;
  }
  .rms-month .rms-event {
    min-width: 0 !important;
    padding: 3px 4px !important;
    font-size: 8px !important;
    line-height: 1.15 !important;
  }
  .rms-month .rms-event span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  .rms-month .rms-event small {
    display: none !important;
  }
  .rms-sticky-calendar-head {
    top: calc(var(--rms-admin-offset, 0px) + var(--rms-app-topbar-height, 56px) + var(--rms-calendar-toolbar-height, 44px) + 5px) !important;
  }
}

.rms-status,
.rms-sent-state,
.rms-view-state,
.rms-kpi-change,
.rms-wizard-status,
.aib-payment-status {
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Agency Console 2.2.0: prospect journey, adaptive roadmap, dashboard modules */
.rms-commercial-line.is-roadmap{grid-template-columns:minmax(175px,1.25fr) minmax(165px,1.35fr) 76px 100px 82px 82px minmax(150px,.95fr) 40px}
.rms-module-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rms-module-choice{display:flex!important;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border:1px solid var(--rms-line);border-radius:10px;background:#fff;color:var(--rms-ink);text-transform:none!important}
.rms-module-choice input{flex:0 0 auto;width:18px!important;height:18px!important;margin:0!important}
.rms-module-choice span{display:grid;gap:3px}
.rms-module-choice b{font-size:12px}
.rms-module-choice small{color:var(--rms-muted);font-size:9px}
.rms-module-choice.is-required{background:color-mix(in srgb,var(--rms-blue) 11%,#fff)}
.rms-commercial-summary{display:grid;gap:7px}
.rms-commercial-summary>span{color:var(--rms-blue-dark,var(--rms-blue));font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.rms-commercial-summary>b{font-family:var(--rms-display-font);font-size:22px;line-height:1.05}
.rms-credit-module{display:grid;place-items:center;min-height:150px;padding:22px;background:var(--rms-blue);color:var(--rms-ink);text-align:center}
.rms-credit-module strong{font-family:var(--rms-display-font);font-size:58px;line-height:.9}
.rms-credit-module span{margin-top:8px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.rms-credit-module small{margin-top:10px;font-size:10px}
.rms-activity-list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.rms-activity-list li{padding:11px 0;border-bottom:1px solid var(--rms-line)}
.rms-activity-list li:last-child{border-bottom:0}
.rms-activity-list span{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rms-activity-list b{font-size:11px}
.rms-activity-list small{color:var(--rms-muted);font-size:9px}
.rms-roadmap-stage-work{display:block;margin-top:7px;color:var(--rms-ink);font-size:8px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
.rms-roadmap-stage em{padding:0!important;border-radius:0!important;background:transparent!important;color:var(--rms-blue-dark,var(--rms-blue))!important;border-bottom:2px solid var(--rms-blue)}

.rms-prospect-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(210px,.55fr);gap:34px;align-items:end;padding:clamp(28px,5vw,64px);background:var(--rms-ink);color:#fff}
.rms-prospect-hero::after{content:"";position:absolute;right:-12%;bottom:-52%;width:55%;aspect-ratio:1;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 44px rgba(36,226,255,.05),0 0 0 88px rgba(139,92,246,.04)}
.rms-prospect-hero>div{position:relative;z-index:1}
.rms-prospect-hero .rms-eyebrow{color:var(--rms-blue)}
.rms-prospect-hero h2{max-width:820px;margin:10px 0 18px;font-family:var(--rms-display-font);font-size:clamp(42px,7vw,86px);line-height:.88;letter-spacing:-.045em;text-transform:uppercase}
.rms-prospect-hero p{max-width:710px;margin:0 0 25px;color:rgba(255,255,255,.72);font-size:clamp(13px,1.4vw,16px);line-height:1.65}
.rms-prospect-primary-action{background:var(--rms-blue)!important;color:var(--rms-ink)!important}
.rms-prospect-action-note{display:inline-block;color:var(--rms-blue);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.rms-prospect-credit{display:grid!important;align-content:end;justify-items:end;min-height:180px;padding-left:25px;border-left:1px solid rgba(255,255,255,.18);text-align:right}
.rms-prospect-credit span{color:rgba(255,255,255,.58);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.rms-prospect-credit strong{margin:8px 0 2px;color:var(--rms-blue);font-family:var(--rms-display-font);font-size:clamp(60px,9vw,110px);line-height:.82}
.rms-prospect-credit small{color:rgba(255,255,255,.5);font-size:9px}
.rms-prospect-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--rms-line);border-top:0;background:#fff}
.rms-prospect-step{position:relative;display:flex;align-items:center;gap:13px;min-height:86px;padding:17px 20px;border-right:1px solid var(--rms-line)}
.rms-prospect-step:last-child{border-right:0}
.rms-prospect-step>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;background:var(--rms-line);color:var(--rms-muted);font-family:var(--rms-display-font);font-size:14px}
.rms-prospect-step.is-complete>span{background:var(--rms-purple);color:#fff}
.rms-prospect-step.is-current>span{background:var(--rms-blue);color:var(--rms-ink)}
.rms-prospect-step div{display:grid;gap:2px}
.rms-prospect-step small{color:var(--rms-muted);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.rms-prospect-step b{font-size:11px;line-height:1.25}
.rms-prospect-documents,.rms-prospect-experience{display:grid;gap:20px;padding:clamp(28px,5vw,60px) 0 0}
.rms-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}
.rms-section-heading h2{margin:3px 0 0;font-family:var(--rms-display-font);font-size:clamp(30px,4vw,52px);line-height:.92;text-transform:uppercase}
.rms-prospect-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.rms-prospect-document{appearance:none;width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:19px;border:1px solid var(--rms-line);border-radius:0;background:#fff;color:var(--rms-ink);text-align:left;font:inherit;cursor:pointer}
.rms-prospect-document.is-pending{cursor:default;opacity:.62}
.rms-prospect-document-icon{display:grid;place-items:center;width:48px;height:48px;background:var(--rms-blue);color:var(--rms-ink)}
.rms-prospect-document-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}
.rms-prospect-document>span:nth-child(2){display:grid;gap:3px;min-width:0}
.rms-prospect-document small{color:var(--rms-muted);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.rms-prospect-document b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.rms-prospect-document em{color:var(--rms-purple);font-size:9px;font-style:normal;font-weight:900;text-transform:uppercase}
.rms-prospect-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.rms-prospect-resource{grid-column:span 4;display:grid;grid-template-rows:auto 1fr auto;gap:20px;min-height:250px;padding:25px;border:1px solid var(--rms-line);border-radius:0;background:#fff;color:var(--rms-ink);text-decoration:none;text-align:left;font:inherit}
.rms-prospect-resource:nth-child(2),.rms-prospect-resource:nth-child(4){background:color-mix(in srgb,var(--rms-blue) 9%,#fff)}
.rms-prospect-resource:nth-child(3){grid-column:span 4;background:var(--rms-ink);color:#fff}
.rms-prospect-resource:nth-child(5){grid-column:span 8;background:linear-gradient(120deg,var(--rms-purple),var(--rms-pink));color:#fff}
.rms-prospect-resource-icon{display:grid;place-items:center;width:46px;height:46px;border:1px solid currentColor}
.rms-prospect-resource-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}
.rms-prospect-resource h3{margin:6px 0 8px;font-family:var(--rms-display-font);font-size:26px;line-height:.95;text-transform:uppercase}
.rms-prospect-resource p{margin:0;color:var(--rms-muted);font-size:11px;line-height:1.55}
.rms-prospect-resource:nth-child(3) p,.rms-prospect-resource:nth-child(5) p{color:rgba(255,255,255,.7)}
.rms-prospect-link,.rms-prospect-unavailable{justify-self:start;color:inherit;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-bottom:2px solid var(--rms-blue)}
.rms-prospect-unavailable{color:var(--rms-muted);border-bottom-color:var(--rms-line)}
.rms-prospect-discovery{appearance:none;cursor:pointer}

@media(max-width:1080px){
 .rms-commercial-line.is-roadmap{grid-template-columns:1fr 1fr;padding:12px;border:1px solid var(--rms-line)}
 .rms-commercial-line.is-roadmap>select:first-child,.rms-commercial-line.is-roadmap>input:nth-child(2){grid-column:1/-1}
 .rms-prospect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .rms-prospect-resource,.rms-prospect-resource:nth-child(3),.rms-prospect-resource:nth-child(5){grid-column:auto}
}
@media(max-width:782px){
 .rms-module-picker{grid-template-columns:1fr}
 .rms-prospect-hero{grid-template-columns:1fr;padding:32px 22px}
 .rms-prospect-credit{justify-items:start;min-height:0;padding:22px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.18);text-align:left}
 .rms-prospect-journey{grid-template-columns:1fr 1fr}
 .rms-prospect-step:nth-child(2){border-right:0}
 .rms-prospect-step:nth-child(-n+2){border-bottom:1px solid var(--rms-line)}
 .rms-prospect-document-grid,.rms-prospect-grid{grid-template-columns:1fr}
 .rms-prospect-resource,.rms-prospect-resource:nth-child(3),.rms-prospect-resource:nth-child(5){grid-column:1;min-height:210px}
 .rms-prospect-documents,.rms-prospect-experience{padding-top:34px}
 .rms-section-heading{display:block}
 .rms-commercial-line.is-roadmap{grid-template-columns:1fr}
 .rms-commercial-line.is-roadmap>select:first-child,.rms-commercial-line.is-roadmap>input:nth-child(2){grid-column:auto}
}

/* Agency Console 2.3.0: compact prospect portal + web proposals */
.rms-prospect-intro{display:flex;align-items:end;justify-content:space-between;gap:28px;padding:28px 30px;border:1px solid var(--rms-line);background:var(--rms-ink);color:#fff}
.rms-prospect-intro h2{max-width:720px;margin:6px 0 8px;font-family:var(--rms-display-font);font-size:clamp(30px,4.6vw,58px);line-height:.92;letter-spacing:-.03em;text-transform:uppercase}
.rms-prospect-intro p{margin:0;color:rgba(255,255,255,.7)}
.rms-prospect-intro .rms-eyebrow{color:var(--rms-blue)}
.rms-prospect-intro-actions{display:flex;align-items:center;gap:24px;flex:0 0 auto}
.rms-prospect-intro .rms-prospect-credit{display:grid!important;min-height:0;padding:0 0 0 22px;border:0;border-left:1px solid rgba(255,255,255,.22);text-align:right}
.rms-prospect-intro .rms-prospect-credit span{color:rgba(255,255,255,.62)}
.rms-prospect-intro .rms-prospect-credit strong{margin:3px 0 0;color:var(--rms-blue);font-size:42px;line-height:.9}
.rms-prospect-journey{margin-top:14px;border-top:1px solid var(--rms-line)}
.rms-prospect-step{color:var(--rms-ink);text-decoration:none}
.rms-prospect-step.is-current{background:var(--rms-blue);color:var(--rms-ink);box-shadow:inset 0 -5px 0 var(--rms-ink)}
.rms-prospect-step.is-current .rms-prospect-step-number{background:var(--rms-ink);color:#fff}
.rms-prospect-step.is-current small,.rms-prospect-step.is-current em{color:var(--rms-ink)}
.rms-prospect-step.is-locked{opacity:.48}
.rms-prospect-step .rms-prospect-step-number{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;background:var(--rms-line);color:var(--rms-muted);font-family:var(--rms-display-font);font-size:14px}
.rms-prospect-step.is-complete .rms-prospect-step-number{background:var(--rms-purple);color:#fff}
.rms-prospect-step em{color:var(--rms-purple);font-size:8px;font-style:normal;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.rms-prospect-step-arrow{margin-left:auto!important;width:auto!important;height:auto!important;background:transparent!important;color:currentColor!important;font-size:20px!important}
.rms-prospect-resource-copy{display:flex;align-items:flex-start;gap:16px}
.rms-prospect-resource.has-video{grid-column:span 8;padding:0;overflow:hidden;background:var(--rms-ink);color:#fff}
.rms-prospect-resource.has-video .rms-prospect-resource-copy{padding:22px 25px 25px}
.rms-prospect-resource.has-video .rms-prospect-unavailable{display:none}
.rms-prospect-video{position:relative;width:100%;aspect-ratio:16/9;background:#000}
.rms-prospect-video iframe,.rms-prospect-video video{display:block;width:100%;height:100%;border:0;object-fit:cover}
.rms-ai-proposal-guardrail,.rms-ai-draft-note{display:grid;gap:5px;padding:16px;border-left:5px solid var(--rms-blue);background:color-mix(in srgb,var(--rms-blue) 11%,#fff);color:var(--rms-ink)}
.rms-ai-proposal-guardrail b,.rms-ai-draft-note b{font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.rms-ai-proposal-guardrail span,.rms-ai-draft-note span{font-size:11px;line-height:1.5}
.rms-web-proposal{display:grid;gap:0;margin:24px 0;border:1px solid var(--rms-line);background:#fff;color:var(--rms-ink)}
.rms-web-proposal>section{padding:24px;border-bottom:1px solid var(--rms-line)}
.rms-web-proposal>section:last-child{border-bottom:0}
.rms-proposal-rich-copy{font-size:13px;line-height:1.7}
.rms-proposal-rich-copy p:first-child{margin-top:0}
.rms-proposal-rich-copy p:last-child{margin-bottom:0}
.rms-proposal-objectives{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 30px;margin:14px 0 0;padding-left:20px}
.rms-proposal-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:16px;background:var(--rms-line)}
.rms-proposal-roadmap article{min-height:150px;padding:18px;background:#fff}
.rms-proposal-roadmap article>span{color:var(--rms-purple);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.rms-proposal-roadmap h4{margin:8px 0;font-family:var(--rms-display-font);font-size:19px;line-height:1;text-transform:uppercase}
.rms-proposal-roadmap p{margin:0;color:var(--rms-muted);font-size:10px;line-height:1.5}
.rms-proposal-review-note{background:#fff7f2}
@media(max-width:900px){
 .rms-prospect-intro{align-items:flex-start;flex-direction:column}
 .rms-prospect-intro-actions{width:100%;justify-content:space-between}
 .rms-prospect-resource.has-video{grid-column:auto}
 .rms-proposal-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
 .rms-prospect-intro{padding:22px 18px}
 .rms-prospect-intro-actions{align-items:flex-start;flex-direction:column}
 .rms-prospect-intro .rms-prospect-credit{padding:14px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.22);text-align:left}
 .rms-prospect-journey{grid-template-columns:1fr}
 .rms-prospect-step{border-right:0;border-bottom:1px solid var(--rms-line)!important}
 .rms-proposal-objectives,.rms-proposal-roadmap{grid-template-columns:1fr}
}

/* Long processor identifiers must remain inside payment metadata cards. */
.rms-document-meta > div {
  min-width: 0;
}

.rms-document-meta .rms-wrap-id {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Agency Console 2.4.2: proposal, resources, credits, and meeting refinements */
.rms-prospect-step.is-current,
.rms-prospect-step.is-current div,
.rms-prospect-step.is-current b,
.rms-prospect-step.is-current small,
.rms-prospect-step.is-current em,
.rms-prospect-step.is-current .rms-prospect-step-arrow {
  color: #101820 !important;
}

.rms-prospect-credit {
  cursor: pointer;
  font: inherit;
}
.rms-prospect-intro .rms-prospect-credit {
  background: transparent;
  color: #fff;
}
.rms-prospect-intro .rms-prospect-credit small {
  color: rgba(255,255,255,.72);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.rms-prospect-grid {
  align-items: stretch;
}
.rms-prospect-resource,
.rms-prospect-resource:nth-child(2),
.rms-prospect-resource:nth-child(3),
.rms-prospect-resource:nth-child(4),
.rms-prospect-resource:nth-child(5) {
  grid-column: span 6;
  padding: 25px;
  background: #fff;
  color: var(--rms-ink);
}
.rms-prospect-resource.has-video {
  grid-column: span 12;
  padding: 0;
  background: var(--rms-ink);
  color: #fff;
}
.rms-prospect-resource:not(.has-video) .rms-prospect-resource-thumb {
  width: calc(100% + 50px);
  aspect-ratio: 16 / 9;
  margin: -25px -25px 0;
  overflow: hidden;
  background: color-mix(in srgb, var(--rms-blue) 10%, #fff);
}
.rms-prospect-resource-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.rms-prospect-resource-thumb.is-placeholder {
  display: grid;
  align-content: end;
  gap: 7px;
  padding: 24px;
  background:
    linear-gradient(140deg, color-mix(in srgb, var(--rms-purple) 86%, var(--rms-ink)), color-mix(in srgb, var(--rms-blue) 75%, var(--rms-ink)));
  color: #fff;
}
.rms-prospect-resource-thumb.is-placeholder span {
  color: var(--rms-blue);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.rms-prospect-resource-thumb.is-placeholder b {
  max-width: 85%;
  font-family: var(--rms-display-font);
  font-size: clamp(25px, 4vw, 44px);
  line-height: .9;
  text-transform: uppercase;
}
.rms-prospect-resource:not(.has-video) p {
  color: var(--rms-muted);
}
.rms-prospect-resource.has-video p,
.rms-prospect-resource.has-video .rms-eyebrow {
  color: rgba(255,255,255,.78);
}
.rms-prospect-resource-copy {
  display: block;
}

.rms-prospect-meetings {
  padding-top: 46px;
}
.rms-prospect-meeting-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
  margin-top: 18px;
}
.rms-prospect-meeting-card {
  display: grid;
  align-content: start;
  gap: 7px;
  min-height: 220px;
  padding: 26px;
  border: 1px solid var(--rms-line);
  background: #fff;
  color: var(--rms-ink);
  text-align: left;
  font: inherit;
  cursor: pointer;
}
.rms-prospect-meeting-card.is-proposal-review {
  background: color-mix(in srgb, var(--rms-blue) 10%, #fff);
}
.rms-prospect-meeting-card h3 {
  margin: 4px 0 1px;
  font-family: var(--rms-display-font);
  font-size: clamp(25px,3vw,39px);
  line-height: .95;
  text-transform: uppercase;
}
.rms-prospect-meeting-card p {
  margin: 0;
  color: var(--rms-muted);
  line-height: 1.55;
}
.rms-prospect-meeting-card .rms-prospect-link {
  margin-top: auto;
  padding-top: 18px;
}
.rms-meeting-location {
  display: grid;
  gap: 2px;
  margin-top: 4px;
}
.rms-meeting-location span {
  font-weight: 800;
}
.rms-meeting-location small {
  color: var(--rms-muted);
}
.rms-meeting-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 4px;
}

.rms-ai-progress {
  display: grid;
  gap: 8px;
  margin: 14px 0;
  padding: 15px 17px;
  border: 1px solid var(--rms-line);
  background: #fff;
  color: var(--rms-ink);
}
.rms-ai-progress[hidden] {
  display: none;
}
.rms-ai-progress-label {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  color: var(--rms-ink);
  font-size: 11px;
  font-weight: 750;
}
.rms-ai-progress-track {
  height: 10px;
  overflow: hidden;
  background: var(--rms-line);
}
.rms-ai-progress-track i {
  display: block;
  width: 4%;
  height: 100%;
  background: linear-gradient(90deg, var(--rms-purple), var(--rms-blue));
  transition: width .35s ease;
}
.rms-ai-progress.is-indeterminate .rms-ai-progress-track i {
  width: 42% !important;
  animation: rms-ai-progress 1.1s ease-in-out infinite;
}
@keyframes rms-ai-progress {
  0% { transform: translateX(-105%); }
  100% { transform: translateX(245%); }
}
.rms-multiplier-first {
  padding: 16px;
  border: 2px solid var(--rms-blue);
  background: color-mix(in srgb, var(--rms-blue) 8%, #fff);
  color: var(--rms-ink);
}

.rms-discount-options {
  margin: 8px 0 18px;
  padding: 18px;
  border: 1px solid var(--rms-line);
  background: color-mix(in srgb, var(--rms-purple) 5%, #fff);
  color: var(--rms-ink);
}
.rms-discount-options legend {
  padding: 0 8px;
  color: var(--rms-ink);
  font-weight: 900;
}
.rms-field-help {
  margin: 0 0 12px;
  color: var(--rms-muted);
  font-size: 11px;
}
.rms-discount-lines {
  display: grid;
  gap: 9px;
}
.rms-discount-line {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 11px 13px;
  border: 1px solid var(--rms-line);
  background: #fff;
  color: var(--rms-ink);
}
.rms-discount-line > span:first-of-type {
  display: grid;
  gap: 2px;
}
.rms-discount-line small {
  color: var(--rms-muted);
  font-size: 10px;
}
.rms-discount-line input[type="radio"],
.rms-discount-line input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
}
.rms-discount-manual {
  grid-template-columns: minmax(160px,.75fr) minmax(180px,1fr) auto;
}
.rms-discount-inline {
  display: flex !important;
  align-items: center;
  gap: 5px;
  font-weight: 900;
}
.rms-discount-inline input {
  width: 94px;
}
.rms-document-discounts {
  display: grid;
  gap: 5px;
  margin: 12px 0 0;
}
.rms-discount-summary-line {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 8px 0;
  border-bottom: 1px solid var(--rms-line);
}
.rms-discount-summary-line b {
  color: var(--rms-purple);
}

.rms-credit-module .rms-button {
  margin-top: 16px;
}
.rms-credit-explorer {
  display: grid;
  gap: 26px;
  max-height: min(68vh,760px);
  overflow: auto;
  padding-right: 4px;
}
.rms-credit-category h3 {
  margin: 0 0 10px;
  font-family: var(--rms-display-font);
  font-size: 24px;
  text-transform: uppercase;
}
.rms-credit-explorer-grid {
  display: grid;
  gap: 1px;
  background: var(--rms-line);
}
.rms-credit-explorer-grid article {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding: 15px;
  background: #fff;
  color: var(--rms-ink);
}
.rms-credit-explorer-grid p {
  margin: 4px 0 0;
  color: var(--rms-muted);
  font-size: 11px;
}
.rms-credit-explorer-grid strong {
  flex: 0 0 auto;
  color: var(--rms-purple);
  font-family: var(--rms-display-font);
  font-size: 20px;
  white-space: nowrap;
}
.rms-credit-explorer-grid strong span {
  font: 800 9px var(--rms-body-font);
  letter-spacing: .05em;
  text-transform: uppercase;
}

.rms-appointment-location-card {
  display: grid;
  gap: 3px;
  padding: 16px;
  border-left: 5px solid var(--rms-blue);
  background: color-mix(in srgb, var(--rms-blue) 9%, #fff);
  color: var(--rms-ink);
}
.rms-appointment-location-card span {
  color: var(--rms-purple);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.rms-appointment-location-card small {
  color: var(--rms-muted);
}
[data-location-note] {
  color: var(--rms-muted) !important;
}

/* Keep light text on dark application surfaces and dark text on light controls. */
.rms-app-topbar,
.rms-app-topbar a,
.rms-app-topbar button,
.rms-prospect-intro,
.rms-prospect-intro h2,
.rms-prospect-resource.has-video,
.rms-prospect-resource.has-video h3 {
  color: #fff;
}
.rms-button,
.rms-button-secondary,
.rms-form input,
.rms-form select,
.rms-form textarea,
.rms-modal-content,
.rms-drawer-content,
.rms-panel {
  color: var(--rms-ink);
}
.rms-button:not(.rms-button-secondary):not(.rms-button-danger) {
  color: var(--rms-ink);
}

@media (max-width: 760px) {
  .rms-prospect-resource,
  .rms-prospect-resource:nth-child(2),
  .rms-prospect-resource:nth-child(3),
  .rms-prospect-resource:nth-child(4),
  .rms-prospect-resource:nth-child(5),
  .rms-prospect-resource.has-video {
    grid-column: 1;
  }
  .rms-prospect-meeting-grid {
    grid-template-columns: 1fr;
  }
  .rms-discount-line,
  .rms-discount-manual {
    grid-template-columns: auto 1fr;
  }
  .rms-discount-line .rms-discount-inline,
  .rms-discount-manual > input {
    grid-column: 2;
    width: 100%;
  }
  .rms-credit-explorer-grid article {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Contrast guardrails for customizable brand colors. */
.rms-button:not(.rms-button-secondary):not(.rms-button-danger) {
  color: #fff !important;
}
.rms-app-nav a.is-active,
.rms-app-nav a.is-active:hover,
.rms-prospect-primary-action,
.rms-credit-module,
.rms-prospect-step.is-current,
.rms-prospect-step.is-current > span,
.rms-prospect-document-icon,
.rms-metric-picker > summary b,
.rms-roadmap-progress,
.rms-roadmap-stage.is-current .rms-roadmap-number,
.rms-roadmap-stage em,
.rms-profile-avatar-wrap button {
  background: color-mix(in srgb, var(--rms-blue) 45%, #fff) !important;
  color: #101820 !important;
}

/* Agency Console 2.4.3: prospect portal composition and chrome cleanup */
body.rms-app-page #colophon,
body.rms-app-page #footer,
body.rms-app-page .site-footer,
body.rms-app-page .footer-bottom,
body.rms-app-page .bb-footer,
body.rms-app-page .footer-widget-area,
body.rms-app-page .footer-widgets,
body.rms-app-page .site-info {
  display: none !important;
}
body.rms-app-page .rms-app-footer {
  display: block !important;
}

.rms-prospect-intro {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  box-shadow: 0 24px 64px rgba(16,24,32,.16);
  background:
    radial-gradient(circle at 84% 18%, rgba(36,226,255,.20), transparent 25%),
    radial-gradient(circle at 68% 110%, rgba(139,92,246,.30), transparent 34%),
    linear-gradient(128deg, #101820 0%, #172733 58%, #101820 100%);
}
.rms-prospect-intro::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .26;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(90deg, transparent, #000 52%, #000);
}

.rms-prospect-step.is-current,
.rms-prospect-step.is-current * {
  color: #101820 !important;
}

.rms-prospect-documents,
.rms-prospect-experience,
.rms-prospect-meetings {
  gap: 24px;
}
.rms-section-heading {
  padding-bottom: 15px;
  border-bottom: 1px solid var(--rms-line);
}
.rms-section-heading > span:first-child {
  align-self: flex-start;
}

.rms-prospect-document {
  position: relative;
  overflow: hidden;
  min-height: 92px;
  box-shadow: 0 10px 28px rgba(16,24,32,.055);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
button.rms-prospect-document:hover,
button.rms-prospect-document:focus-visible {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--rms-blue) 72%, var(--rms-line));
  box-shadow: 0 18px 38px rgba(16,24,32,.11);
}
.rms-prospect-document::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(var(--rms-blue), var(--rms-purple));
}
.rms-prospect-document.is-pending,
.rms-prospect-document.is-pending.is-locked {
  border-color: #d8dde3;
  background: #eef1f4;
  color: #7b8490;
  opacity: 1;
  box-shadow: none;
}
.rms-prospect-document.is-pending::before {
  background: #b9c0c8;
}
.rms-prospect-document.is-pending .rms-prospect-document-icon {
  background: #d8dde3 !important;
  color: #7b8490 !important;
}
.rms-prospect-document.is-pending small,
.rms-prospect-document.is-pending b,
.rms-prospect-document.is-pending em {
  color: #7b8490 !important;
}

.rms-prospect-resource-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.rms-prospect-resource-row .rms-prospect-resource,
.rms-prospect-resource-row .rms-prospect-resource:nth-child(n) {
  grid-column: auto !important;
  min-width: 0;
  min-height: 330px;
}
.rms-prospect-feature-row {
  margin-top: 14px;
}
.rms-prospect-feature-row .rms-prospect-resource,
.rms-prospect-feature-row .rms-prospect-resource:nth-child(n) {
  width: 100%;
  grid-column: auto !important;
}
.rms-prospect-resource {
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(16,24,32,.07);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.rms-prospect-resource:has(a:hover),
.rms-prospect-resource:focus-within {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--rms-purple) 45%, var(--rms-line));
  box-shadow: 0 22px 46px rgba(16,24,32,.13);
}
.rms-prospect-resource-thumb {
  position: relative;
}
.rms-prospect-resource-thumb::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 38%;
  pointer-events: none;
  background: linear-gradient(transparent, rgba(16,24,32,.12));
}
.rms-prospect-resource-copy h3 {
  text-wrap: balance;
}
.rms-prospect-feature-row .rms-prospect-resource.has-video {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, .75fr);
  grid-template-rows: 1fr;
  min-height: 360px;
}
.rms-prospect-feature-row .rms-prospect-resource.has-video .rms-prospect-video {
  aspect-ratio: auto;
  min-height: 360px;
}
.rms-prospect-feature-row .rms-prospect-resource.has-video .rms-prospect-resource-copy {
  align-self: center;
  padding: 40px;
}

.rms-prospect-meeting-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--rms-line);
  box-shadow: 0 14px 34px rgba(16,24,32,.075);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  text-decoration: none;
}
button.rms-prospect-meeting-card:hover,
a.rms-prospect-meeting-card:hover,
button.rms-prospect-meeting-card:focus-visible,
a.rms-prospect-meeting-card:focus-visible {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--rms-blue) 70%, var(--rms-line));
  box-shadow: 0 22px 48px rgba(16,24,32,.13);
}
.rms-prospect-meeting-card::after {
  content: "";
  position: absolute;
  right: -60px;
  bottom: -80px;
  width: 180px;
  height: 180px;
  border: 26px solid color-mix(in srgb, var(--rms-blue) 14%, transparent);
  border-radius: 50%;
  pointer-events: none;
}
.rms-prospect-meeting-card.is-recording {
  background:
    radial-gradient(circle at 88% 18%, rgba(36,226,255,.24), transparent 30%),
    linear-gradient(135deg, #101820, #263b49);
  color: #fff;
}
.rms-prospect-meeting-card.is-recording h3,
.rms-prospect-meeting-card.is-recording p,
.rms-prospect-meeting-card.is-recording .rms-eyebrow,
.rms-prospect-meeting-card.is-recording .rms-prospect-link {
  color: #fff !important;
}
.rms-prospect-meeting-card.is-recording .rms-eyebrow {
  color: var(--rms-blue) !important;
}
.rms-recording-ready {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  justify-self: start;
  margin-top: 8px;
  padding: 9px 12px;
  background: rgba(255,255,255,.11);
  color: #fff;
  font-size: 10px;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.rms-recording-ready > span {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--rms-blue);
  color: #101820;
  font-size: 9px;
}
.rms-prospect-meeting-card.is-coming-soon {
  cursor: default;
  background: linear-gradient(135deg, #f4f6f8, #fff);
}
.rms-prospect-meeting-card.is-coming-soon .rms-prospect-unavailable {
  margin-top: auto;
}

@media (max-width: 1080px) {
  .rms-prospect-resource-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .rms-prospect-resource-row .rms-prospect-resource:last-child {
    grid-column: 1 / -1 !important;
  }
  .rms-prospect-feature-row .rms-prospect-resource.has-video {
    grid-template-columns: 1fr;
  }
  .rms-prospect-feature-row .rms-prospect-resource.has-video .rms-prospect-video {
    aspect-ratio: 16 / 9;
    min-height: 0;
  }
}
@media (max-width: 760px) {
  .rms-prospect-resource-row {
    grid-template-columns: 1fr;
  }
  .rms-prospect-resource-row .rms-prospect-resource,
  .rms-prospect-resource-row .rms-prospect-resource:last-child {
    grid-column: 1 !important;
    min-height: 260px;
  }
  .rms-prospect-feature-row .rms-prospect-resource.has-video .rms-prospect-resource-copy {
    padding: 24px;
  }
}
.rms-prospect-feature {
  display: grid;
  gap: 24px;
  padding-top: 46px;
}

/* 2.4.5 final visual system, persistent flavor strip, rich editors, and client-safe presentation */
.rms-app,
.rms-modal,
.rms-drawer,
.rms-app button,
.rms-app input,
.rms-app select,
.rms-app textarea,
.rms-modal button,
.rms-modal input,
.rms-modal select,
.rms-modal textarea,
.rms-drawer button,
.rms-drawer input,
.rms-drawer select,
.rms-drawer textarea {
  font-family: var(--rms-body-font, Montserrat, Arial, sans-serif) !important;
}
.rms-app::before { display: none !important; }
body.rms-app-page .rms-flavor-strip {
  position: fixed;
  top: var(--rms-admin-offset, 0px);
  left: 0;
  right: 0;
  z-index: 1002;
  height: 10px;
  background: linear-gradient(90deg, var(--rms-blue), var(--rms-purple), var(--rms-accent));
  box-shadow: 0 8px 24px rgba(16,24,32,.10);
  pointer-events: none;
}
body.rms-app-page .rms-app-topbar {
  position: fixed !important;
  top: calc(var(--rms-admin-offset, 0px) + 28px) !important;
  z-index: 1000 !important;
  min-height: 68px;
  border-color: rgba(255,255,255,.16);
  background: rgba(16,24,32,.975);
  color: #fff;
  box-shadow: 0 20px 60px rgba(16,24,32,.18);
}
body.rms-app-page .rms-app-shell {
  padding-top: calc(var(--rms-app-topbar-height, 68px) + 82px) !important;
}
.rms-app-topbar .rms-app-brand,
.rms-app-topbar .rms-app-brand b,
.rms-app-topbar .rms-user-menu-toggle,
.rms-app-topbar .rms-notification-toggle {
  color: #fff !important;
}
.rms-app-topbar .rms-app-nav a { color: rgba(255,255,255,.76) !important; }
.rms-app-topbar .rms-app-nav a.is-active,
.rms-app-topbar .rms-app-nav a.is-active * {
  color: #101820 !important;
}
.rms-app-topbar .rms-app-nav a.is-active { background: var(--rms-blue) !important; }
.rms-app-topbar .rms-app-actions .rms-button:not(.rms-button-secondary) {
  background: var(--rms-blue) !important;
  color: #101820 !important;
}
.rms-app-topbar .rms-app-actions .rms-button-secondary {
  background: rgba(255,255,255,.10) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.18) !important;
}
.rms-view-as-control {
  display: grid;
  gap: 3px;
  min-width: 180px;
  color: rgba(255,255,255,.64) !important;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.rms-view-as-control span { color: rgba(255,255,255,.64) !important; }
.rms-view-as-control select {
  width: 100%;
  min-height: 40px;
  padding: 8px 34px 8px 10px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  background-color: rgba(255,255,255,.10);
  color: #fff !important;
  font-size: 11px;
  font-weight: 750;
  text-transform: none;
}
.rms-view-as-control select option { background: #fff; color: #101820; }
.rms-view-as-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 24px;
  padding: 15px 17px;
  border: 1px solid color-mix(in srgb, var(--rms-blue) 48%, var(--rms-line));
  border-left: 6px solid var(--rms-blue);
  border-radius: 12px;
  background: #fff;
  color: #101820;
  box-shadow: 0 12px 32px rgba(16,24,32,.06);
}
.rms-view-as-banner div { display: grid; gap: 2px; }
.rms-view-as-banner b,
.rms-view-as-banner span { color: #101820 !important; }
.rms-view-as-banner span { font-size: 11px; }

/* The active prospect step is always readable on the cyan field. */
.rms-prospect-step.is-current,
.rms-prospect-step.is-current *,
.rms-prospect-step.is-current b,
.rms-prospect-step.is-current small,
.rms-prospect-step.is-current em,
.rms-prospect-step.is-current .rms-prospect-step-arrow {
  color: #101820 !important;
}
.rms-prospect-step.is-current .rms-prospect-step-number {
  background: #101820 !important;
  color: #fff !important;
}

/* Every visible notification string is black, including controls and the unread count. */
.rms-notification-popover,
.rms-notification-popover *,
.rms-notification-head,
.rms-notification-head *,
.rms-notification-list,
.rms-notification-list *,
.rms-notification-item,
.rms-notification-item *,
.rms-notification-empty,
.rms-notification-badge {
  color: #101820 !important;
}
.rms-notification-popover,
.rms-notification-head,
.rms-notification-list,
.rms-notification-item { background-color: #fff; }
.rms-notification-item.is-unread { background: color-mix(in srgb, var(--rms-blue) 10%, #fff); }
.rms-notification-badge {
  border-color: #101820;
  background: var(--rms-blue);
}
.rms-notification-head button,
.rms-notification-item > button { color: #101820 !important; text-decoration: underline; }
.rms-notification-dot { font-size: 0; }

/* Inline WYSIWYG fields replace raw HTML/code textareas in the portal. */
.rms-rich-field { display: grid !important; gap: 7px !important; }
.rms-rich-field > span {
  color: var(--rms-ink);
  font-size: 11px;
  font-weight: 850;
}
.rms-rich-editor {
  overflow: hidden;
  border: 1px solid #cfd5df;
  border-radius: 10px;
  background: #fff;
  color: #101820;
}
.rms-rich-editor:focus-within {
  border-color: var(--rms-blue);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--rms-blue) 18%, transparent);
}
.rms-rich-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding: 7px;
  border-bottom: 1px solid var(--rms-line);
  background: #f4f6f8;
}
.rms-rich-toolbar button {
  width: auto !important;
  min-width: 34px;
  min-height: 32px;
  padding: 5px 9px !important;
  border: 1px solid var(--rms-line) !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #101820 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}
.rms-rich-surface {
  min-height: 132px;
  padding: 13px 14px;
  overflow: auto;
  outline: 0;
  color: #101820;
  font-size: 13px;
  line-height: 1.6;
}
.rms-rich-surface p:first-child { margin-top: 0; }
.rms-rich-surface p:last-child { margin-bottom: 0; }
.rms-rich-editor textarea[data-rich-input] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Proposal presentation: one letter, one six-month service/value roadmap. */
.rms-web-proposal {
  overflow: hidden;
  border-radius: 18px;
  box-shadow: 0 24px 70px rgba(16,24,32,.10);
}
.rms-web-proposal > section { padding: clamp(28px,5vw,62px); }
.rms-proposal-cover-letter {
  position: relative;
  min-height: 520px;
  background: #fff;
  color: #101820;
}
.rms-proposal-cover-letter::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 100%;
  background: linear-gradient(var(--rms-blue), var(--rms-purple), var(--rms-accent));
}
.rms-proposal-date {
  display: block;
  margin-bottom: 28px;
  color: var(--rms-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.rms-proposal-cover-letter > p,
.rms-proposal-rich-copy,
.rms-proposal-signoff { max-width: 780px; }
.rms-proposal-rich-copy { color: #101820; font-size: 14px; line-height: 1.75; }
.rms-proposal-signoff { display: grid; justify-items: start; margin-top: 30px; color: #101820; }
.rms-proposal-signoff p { margin: 0 0 10px; }
.rms-proposal-signoff img { display: block; width: auto; max-width: 210px; max-height: 86px; margin: 0 0 2px; object-fit: contain; }
.rms-proposal-signoff b,
.rms-proposal-signoff span { color: #101820; }
.rms-proposal-signoff span { font-size: 11px; line-height: 1.45; }
.rms-proposal-roadmap-sheet { background: #f5f7f9; color: #101820; }
.rms-proposal-roadmap-sheet h3 {
  margin: 7px 0 24px;
  color: #101820;
  font-family: var(--rms-display-font, Montserrat, Arial, sans-serif);
  font-size: clamp(32px,5vw,58px);
  line-height: .94;
  letter-spacing: -.025em;
}
.rms-roadmap-pricing-table { min-width: 680px; background: #fff; color: #101820; }
.rms-roadmap-pricing-table th,
.rms-roadmap-pricing-table td { color: #101820; vertical-align: top; }
.rms-roadmap-pricing-table thead th {
  background: #101820;
  color: #fff !important;
}
.rms-roadmap-pricing-table th:last-child,
.rms-roadmap-pricing-table td:last-child { text-align: right; white-space: nowrap; }
.rms-roadmap-pricing-table tfoot tr.is-discount th { color: var(--rms-purple); }
.rms-roadmap-pricing-table tfoot tr.is-monthly th {
  background: var(--rms-blue);
  color: #101820 !important;
  font-size: 15px;
}
.rms-proposal-pricing-note { max-width: 920px; margin: 18px 0 0; color: #4d5865; font-size: 10px; line-height: 1.55; }

/* Analysis feedback remains in view while the server is working. */
.rms-ai-progress {
  scroll-margin-top: calc(var(--rms-admin-offset,0px) + var(--rms-app-topbar-height,68px) + 60px);
  border-color: color-mix(in srgb, var(--rms-blue) 55%, var(--rms-line));
  background: #fff;
  color: #101820;
  box-shadow: 0 14px 34px rgba(16,24,32,.08);
}
.rms-ai-progress-label,
.rms-ai-progress-label * { color: #101820 !important; }
.rms-ai-progress-track { background: #dfe5eb; }
.rms-ai-progress-track i { background: linear-gradient(90deg, var(--rms-blue), var(--rms-purple), var(--rms-accent)); }

/* Needs Scheduling stays grouped by client and scrollable beside the endless calendar. */
.rms-unscheduled {
  max-height: calc(100vh - var(--rms-admin-offset,0px) - var(--rms-app-topbar-height,68px) - var(--rms-calendar-toolbar-height,76px) - 74px);
  overflow: hidden;
}
.rms-unscheduled > [data-unscheduled] {
  max-height: calc(100vh - var(--rms-admin-offset,0px) - var(--rms-app-topbar-height,68px) - var(--rms-calendar-toolbar-height,76px) - 140px);
  overflow-y: auto;
  padding-right: 5px;
  scrollbar-width: thin;
}
.rms-needs-scheduling-groups { display: grid; gap: 15px; }
.rms-needs-scheduling-group {
  overflow: hidden;
  border: 1px solid var(--rms-line);
  border-radius: 10px;
  background: #fff;
}
.rms-needs-scheduling-group > summary {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 11px;
  cursor: pointer;
  list-style: none;
  border-bottom: 0;
  background: #101820;
  color: #fff;
}
.rms-needs-scheduling-group[open] > summary { border-bottom: 1px solid var(--rms-line); }
.rms-needs-scheduling-group > summary::-webkit-details-marker { display: none; }
.rms-needs-scheduling-group > summary > span { min-width: 0; }
.rms-needs-scheduling-group > summary h3,
.rms-needs-scheduling-group > summary small { display: block; margin: 0; color: #fff !important; }
.rms-needs-scheduling-group > summary h3 { overflow: hidden; font-size: 11px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.rms-needs-scheduling-group > summary small { margin-top: 3px; font-size: 8px; font-weight: 850; text-transform: uppercase; }
.rms-needs-scheduling-group > summary .rms-accordion-caret {
  display: inline-grid;
  place-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #fff;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  transform: none !important;
  transition: none;
}
.rms-needs-scheduling-group > summary .rms-accordion-caret .is-open { display: none; }
.rms-needs-scheduling-group[open] > summary .rms-accordion-caret .is-closed { display: none; }
.rms-needs-scheduling-group[open] > summary .rms-accordion-caret .is-open { display: inline; }
.rms-needs-scheduling-group > div { position: relative; z-index: 1; display: grid; gap: 6px; padding: 8px; }

/* Light surfaces use ink; dark surfaces use white, with explicit cyan exceptions. */
.rms-panel,
.rms-metric,
.rms-modal,
.rms-drawer,
.rms-document-meta > div,
.rms-legal-copy,
.rms-payment-link-card { color: #101820; }
.rms-panel h1,.rms-panel h2,.rms-panel h3,.rms-panel h4,.rms-panel p,.rms-panel span,.rms-panel b,.rms-panel small,
.rms-modal h1,.rms-modal h2,.rms-modal h3,.rms-modal h4,.rms-modal p,.rms-modal span,.rms-modal b,.rms-modal small,
.rms-drawer h1,.rms-drawer h2,.rms-drawer h3,.rms-drawer h4,.rms-drawer p,.rms-drawer span,.rms-drawer b,.rms-drawer small { color: inherit; }
.rms-prospect-intro,
.rms-prospect-hero,
.rms-profile-cover { color: #fff; }
.rms-prospect-intro h1,.rms-prospect-intro h2,.rms-prospect-intro h3,.rms-prospect-intro p,
.rms-prospect-hero h1,.rms-prospect-hero h2,.rms-prospect-hero h3 { color: #fff; }

@media (max-width: 900px) {
  body.rms-app-page .rms-app-topbar { top: calc(var(--rms-admin-offset,0px) + 22px) !important; }
  body.rms-app-page .rms-app-shell { padding-top: calc(var(--rms-app-topbar-height,60px) + 68px) !important; }
  .rms-view-as-control { min-width: 150px; }
  .rms-proposal-cover-letter { min-height: 0; }
}
@media (max-width: 782px) {
  body.rms-app-page .rms-flavor-strip { height: 8px; }
  body.rms-app-page .rms-app-topbar { top: calc(var(--rms-admin-offset,0px) + 18px) !important; }
  body.rms-app-page .rms-app-shell { padding-top: calc(var(--rms-app-topbar-height,56px) + 60px) !important; }
  .rms-view-as-control { min-width: 132px; }
  .rms-view-as-banner { align-items: flex-start; flex-direction: column; }
  .rms-unscheduled,
  .rms-unscheduled > [data-unscheduled] { max-height: none; overflow: visible; }
  .rms-roadmap-pricing-table { min-width: 620px; }
}

/* Notifications and transient feedback always use black text on light status surfaces. */
.rms-toast,
.rms-toast * {
  color: #101820 !important;
}
.rms-toast.is-success {
  border: 1px solid #8fd7bc;
  background: #dff8ee !important;
}
.rms-toast.is-error {
  border: 1px solid #efaaa2;
  background: #ffe8e5 !important;
}


/* Agency Console 2.4.6: responsive documents, inline scheduling, and profile View As. */
.rms-user-menu-popover .rms-view-as-control {
  min-width: 0;
  margin: 6px 8px;
  padding: 11px 12px 12px;
  border-top: 1px solid var(--rms-line);
  border-bottom: 1px solid var(--rms-line);
  background: #f4f6f8;
  color: #101820 !important;
  letter-spacing: .07em;
}
.rms-user-menu-popover .rms-view-as-control span { color: #101820 !important; }
.rms-user-menu-popover .rms-view-as-control select {
  min-height: 38px;
  border: 1px solid #cbd3dd;
  background: #fff;
  color: #101820 !important;
}
.rms-user-menu-popover .rms-view-as-control select option { color: #101820; background: #fff; }

.rms-drawer { width: min(980px, 96vw) !important; }
.rms-drawer-content,
.rms-commercial-drawer,
.rms-web-proposal,
.rms-proposal-cover-letter,
.rms-proposal-roadmap-sheet,
.rms-proposal-rich-copy,
.rms-legal-copy { min-width: 0; max-width: 100%; }
.rms-commercial-drawer,
.rms-web-proposal { overflow-x: hidden; }
.rms-proposal-rich-copy,
.rms-proposal-rich-copy *,
.rms-legal-copy,
.rms-legal-copy * { overflow-wrap: anywhere; word-break: normal; }
.rms-proposal-cover-letter > p,
.rms-proposal-rich-copy,
.rms-proposal-signoff { width: 100%; max-width: 780px; }
.rms-proposal-roadmap-sheet .rms-table-wrap { width: 100%; max-width: 100%; overflow-x: auto; }
.rms-roadmap-pricing-table {
  width: 100%;
  min-width: 0 !important;
  table-layout: fixed;
}
.rms-roadmap-pricing-table th,
.rms-roadmap-pricing-table td { overflow-wrap: anywhere; }
.rms-roadmap-pricing-table th:nth-child(1),
.rms-roadmap-pricing-table td:nth-child(1) { width: 56%; }
.rms-roadmap-pricing-table th:nth-child(2),
.rms-roadmap-pricing-table td:nth-child(2) { width: 24%; }
.rms-roadmap-pricing-table th:nth-child(3),
.rms-roadmap-pricing-table td:nth-child(3) { width: 20%; }
.rms-proposal-roadmap-sheet h3 {
  max-width: 100%;
  overflow-wrap: anywhere;
  font-size: clamp(30px, 6.2vw, 58px);
}

.rms-client-accounting-card small { margin-top: 8px; color: #55616e !important; line-height: 1.35; }
.rms-client-accounting-card time.is-late { color: #c62828 !important; font-weight: 850; }
.rms-client-accounting-card time.is-on-time { color: #14804a !important; font-weight: 850; }
.rms-filterable-metric label { display: flex; align-items: baseline; gap: 5px; margin-top: 6px; }
.rms-filterable-metric label > span { color: #66717d !important; font-size: 10px; }
.rms-filterable-metric select {
  width: auto;
  min-height: 0;
  padding: 0 16px 0 0;
  border: 0;
  border-bottom: 1px dotted #86919d;
  border-radius: 0;
  background-color: transparent;
  color: #101820 !important;
  font-size: 10px;
  font-weight: 800;
}

.rms-project-line { display: grid; gap: 4px; }
.rms-project-line > small { display: flex; flex-wrap: wrap; align-items: center; gap: 3px; }
.rms-inline-schedule,
.rms-schedule-now {
  border: 0 !important;
  background: transparent !important;
  color: #0b789b !important;
  font: inherit !important;
  font-weight: 850 !important;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.rms-unscheduled-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
}
.rms-unscheduled-row .rms-event { min-width: 0; }
.rms-schedule-now {
  padding: 6px 4px !important;
  white-space: nowrap;
  font-size: 9px !important;
}

.rms-ai-confirmations {
  display: grid;
  gap: 10px;
  margin-top: 18px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--rms-purple) 35%, var(--rms-line));
  border-radius: 12px;
  background: #f8f6ff;
  color: #101820;
}
.rms-ai-confirmations h4,
.rms-ai-confirmations p,
.rms-ai-confirmations span { color: #101820 !important; }
.rms-ai-confirmation-row {
  display: grid;
  grid-template-columns: minmax(220px, .9fr) minmax(240px, 1.1fr);
  align-items: center;
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(16,24,32,.10);
}
.rms-ai-confirmation-row:first-of-type { border-top: 0; }
.rms-ai-confirmation-row input[type="text"] { background: #fff; color: #101820 !important; }
.rms-ai-actions + .rms-ai-progress { margin-top: 13px; }

.rms-delete-blocked {
  border: 1px solid #e7b5ae;
  border-left: 5px solid #c84838;
  background: #fff2ef;
  color: #101820;
}
.rms-delete-blocked h3,
.rms-delete-blocked p { color: #101820 !important; }

@media (max-width: 782px) {
  .rms-drawer { width: 100vw !important; }
  .rms-roadmap-pricing-table { min-width: 0 !important; font-size: 10px; }
  .rms-roadmap-pricing-table th,
  .rms-roadmap-pricing-table td { padding: 8px 6px; }
  .rms-roadmap-pricing-table th:nth-child(1),
  .rms-roadmap-pricing-table td:nth-child(1) { width: 52%; }
  .rms-roadmap-pricing-table th:nth-child(2),
  .rms-roadmap-pricing-table td:nth-child(2) { width: 27%; }
  .rms-roadmap-pricing-table th:nth-child(3),
  .rms-roadmap-pricing-table td:nth-child(3) { width: 21%; }
  .rms-ai-confirmation-row { grid-template-columns: 1fr; }
  .rms-unscheduled-row { grid-template-columns: 1fr; }
  .rms-schedule-now { justify-self: start; }
}

/* 2.4.7 persistent flavor-strip spacing and safe contrast. */
body.rms-app-page .rms-app-topbar { top: calc(var(--rms-admin-offset, 0px) + 36px) !important; }
body.rms-app-page .rms-app-shell { padding-top: calc(var(--rms-app-topbar-height, 68px) + 94px) !important; }
body.rms-app-page .rms-flavor-strip { position:fixed !important; }
.rms-app .rms-panel,.rms-app .rms-panel *:not(.rms-app-nav *):not(.rms-button):not(.rms-status):not(.rms-document-stamp),.rms-modal,.rms-modal *:not(.rms-button),.rms-drawer,.rms-drawer *:not(.rms-button):not(.rms-status):not(.rms-document-stamp){--rms-safe-text:#101820}

/* 2.4.9 Project Wizard, document safety, and portal refinements. */
.rms-user-menu-popover,
.rms-user-menu-popover *,
.rms-user-menu-popover a,
.rms-user-menu-popover b,
.rms-user-menu-popover small,
.rms-user-menu-popover span,
.rms-user-menu-popover label,
.rms-user-menu-popover select,
.rms-user-menu-popover option {
  color: #101820 !important;
}
.rms-user-menu-popover svg { stroke: #101820 !important; }
.rms-user-menu-popover > a:hover,
.rms-user-menu-popover > a:focus-visible { background: #f1f5f8 !important; color: #101820 !important; }

.rms-icon-button,
.rms-icon-button:hover,
.rms-icon-button:focus,
.rms-icon-button:focus-visible {
  width: 28px !important;
  height: 28px !important;
  padding: 3px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}
.rms-icon-button.is-danger { color: #b42318 !important; }
.rms-row-actions { text-align: center; vertical-align: middle; }
.rms-row-actions .rms-icon-button { margin-inline: auto; }

.rms-document-meta code,
.rms-document-meta .rms-wrap-id,
.rms-document-meta b {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}

.rms-prospect-resource.is-clickable {
  display: grid;
  color: #101820;
  text-decoration: none;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.rms-prospect-resource.is-clickable:hover,
.rms-prospect-resource.is-clickable:focus-visible {
  transform: translateY(-3px);
  border-color: var(--rms-blue);
  box-shadow: 0 18px 40px rgba(16,24,32,.12);
  outline: none;
}
.rms-prospect-resource:not(.has-video) .rms-prospect-resource-thumb.is-placeholder {
  background: #101820 !important;
  color: #fff !important;
}
.rms-prospect-resource:not(.has-video) .rms-prospect-resource-thumb.is-placeholder span,
.rms-prospect-resource:not(.has-video) .rms-prospect-resource-thumb.is-placeholder b { color: #fff !important; }
.rms-prospect-resource.is-clickable .rms-prospect-link { pointer-events: none; }

.rms-project-create-choice button svg { width: 38px; height: 38px; }
.rms-project-create-choice button:last-child {
  border-color: color-mix(in srgb, var(--rms-purple) 45%, var(--rms-line));
  background: linear-gradient(145deg, color-mix(in srgb, var(--rms-blue) 12%, #fff), color-mix(in srgb, var(--rms-purple) 10%, #fff));
}
.rms-project-wizard { display: grid; gap: 18px; }
.rms-project-wizard-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.rms-project-wizard-status {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border: 1px solid color-mix(in srgb, var(--rms-blue) 45%, var(--rms-line));
  border-radius: 10px;
  background: color-mix(in srgb, var(--rms-blue) 9%, #fff);
  color: #101820;
  font-weight: 850;
}
.rms-project-wizard-status[hidden] { display: none !important; }
.rms-project-wizard-clarifications,
.rms-project-wizard-plan {
  display: grid;
  gap: 16px;
  padding: 22px;
  border: 1px solid var(--rms-line);
  border-radius: 14px;
  background: #f8fafc;
  color: #101820;
}
.rms-project-wizard-clarifications h3,
.rms-project-wizard-clarifications p,
.rms-project-wizard-plan h3,
.rms-project-wizard-plan p { color: #101820 !important; }
.rms-project-wizard-plan-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .42fr);
  gap: 18px;
  align-items: start;
}
.rms-project-wizard-plan-head > div:first-child { display: grid; gap: 8px; }
.rms-project-wizard-plan-head input[name="plan_title"] {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #101820 !important;
  font: 900 clamp(24px,3vw,38px)/1.05 var(--rms-display-font) !important;
  text-transform: uppercase;
}
.rms-project-wizard-summary {
  display: grid;
  gap: 8px;
  padding: 16px;
  border-radius: 10px;
  background: #101820;
  color: #fff;
}
.rms-project-wizard-summary span,
.rms-project-wizard-summary b { color: #fff !important; }
.rms-project-wizard-summary b { font-size: 18px; }
.rms-project-wizard-tasks { display: grid; gap: 12px; }
.rms-project-wizard-task {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--rms-line);
  border-left: 5px solid var(--rms-blue);
  border-radius: 10px;
  background: #fff;
  color: #101820;
}
.rms-project-wizard-task header {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 12px;
  align-items: start;
}
.rms-project-wizard-task header > div { min-width: 0; }
.rms-project-wizard-task header input {
  width: 100%;
  margin-top: 5px;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #101820 !important;
  font: 850 20px/1.2 var(--rms-body-font) !important;
}
.rms-project-wizard-task-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  padding-top: 10px;
  border-top: 1px solid var(--rms-line);
  color: #52606d;
  font-size: 12px;
}
.rms-project-wizard-task-meta b { color: #101820 !important; }
.rms-project-wizard-removed {
  padding: 14px 16px;
  border: 1px solid #e5c580;
  border-left: 5px solid #d89b17;
  border-radius: 9px;
  background: #fff9e8;
  color: #101820;
}
.rms-project-wizard-removed ul { margin: 8px 0 0 20px; }
.rms-project-wizard-approval {
  position: sticky;
  bottom: -1px;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 16px;
  border-top: 1px solid var(--rms-line);
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(10px);
}
.rms-project-wizard-approval p { flex: 1 1 420px; margin: 0; }
.rms-ai-confirmation-row.is-confirmed {
  margin-inline: -8px;
  padding: 10px 8px 0;
  border-radius: 8px;
  background: color-mix(in srgb, #198754 10%, #fff);
}
.rms-ai-actions .rms-button.is-ready,
[data-ai-generate-submit].is-ready {
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--rms-blue) 28%, transparent), 0 12px 26px rgba(16,24,32,.12);
}
.rms-projects-table .rms-app-actions svg,
.rms-app-actions [data-create-project] svg { width: 17px; height: 17px; margin-right: 7px; vertical-align: -3px; }

@media (min-width: 980px) {
  .rms-modal:has(.rms-project-wizard) { width: min(1120px, calc(100vw - 64px)); }
}
@media (max-width: 760px) {
  .rms-project-wizard-plan-head { grid-template-columns: 1fr; }
  .rms-project-wizard-approval { position: static; }
}
.rms-client-persistent-resources { margin-top: 30px; }

/* Projects may be returned to the Needs Scheduling queue by drag and drop. */
.rms-unscheduled.is-drop-target {
  outline: 3px solid var(--rms-blue);
  outline-offset: -3px;
  background: color-mix(in srgb, var(--rms-blue) 10%, #fff) !important;
}

/* 2.5.2 scheduling, roadmap, and client project fixes */
.rms-roadmap-stage.is-current .rms-roadmap-number{border-color:var(--rms-blue)!important}
.rms-readonly-field{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--rms-line);border-radius:8px;background:var(--rms-soft);color:var(--rms-ink)}
.rms-readonly-field span{font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--rms-muted)}
.rms-readonly-field b{font-size:14px;color:var(--rms-ink)}

/* 3.6.0 responsive masonry dashboard, client review, publishing sheet, and Brand Locker refinements. */
.rms-dashboard-layout{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-flow:dense;
  grid-auto-rows:10px;
  gap:24px!important;
  align-items:start;
}
.rms-dashboard-module{grid-column:span 1;min-width:0}
.rms-dashboard-module.rms-dashboard-width-2{grid-column:span 2}
.rms-dashboard-module.rms-dashboard-width-1{grid-column:span 1}
.rms-dashboard-summary-module{grid-column:auto}
.rms-dashboard-module-picker{display:grid;gap:10px}
.rms-module-choice-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:14px;padding:11px 12px;border:1px solid var(--rms-line);border-radius:10px;background:#f8fafb}
.rms-dashboard-width-choice{display:grid;gap:5px;color:var(--rms-muted);font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.rms-dashboard-width-choice select{min-height:38px;text-transform:none;letter-spacing:normal}

.rms-brand-locker-sections{display:grid;width:100%;max-width:none;gap:28px}
.rms-brand-locker-section{width:100%;max-width:none;margin:0}
.rms-brand-locker-section .rms-brand-asset-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
.rms-brand-locker-section.is-logo .rms-brand-asset-card,
.rms-brand-locker-section.is-color_palette .rms-brand-asset-card{grid-column:1/-1}
.rms-brand-locker-section.is-logo .rms-logo-suite{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:22px}
.rms-brand-locker-section.is-logo .rms-logo-variant>div{height:180px;padding:18px}
.rms-brand-locker-section.is-color_palette .rms-brand-swatches{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:20px}
.rms-brand-locker-section.is-color_palette .rms-brand-swatch{min-width:0}
.rms-brand-locker-section.is-color_palette .rms-brand-swatch>span{height:92px}
.rms-brand-asset-copy{min-height:0}
.rms-brand-asset-card.is-color_palette .rms-brand-asset-copy:has(h3:empty){display:none}
.rms-brand-typography-field{display:grid;grid-column:1/-1;gap:12px;padding:14px;border:1px solid #dce3e8;border-radius:13px;background:#f9fbfc}
.rms-type-specimen{display:grid;gap:12px;padding:22px;border-bottom:1px solid #e7ebef;background:#fff}
.rms-type-specimen-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.rms-type-specimen-meta b{font-size:18px}.rms-type-specimen-meta span{color:var(--rms-muted);font-size:11px;font-weight:750}
.rms-type-specimen p{min-height:116px;margin:0;padding:12px;border:1px dashed #b9c7d1;border-radius:10px;background:#f8fafb;color:#101820;font-family:var(--specimen-font);font-size:clamp(28px,4vw,54px);font-style:var(--specimen-style);font-weight:var(--specimen-weight);line-height:1.2;outline:0;overflow-wrap:anywhere}
.rms-type-specimen p:focus{border-style:solid;border-color:#075f7f;box-shadow:0 0 0 3px rgba(7,95,127,.16)}
.rms-type-specimen small{color:var(--rms-muted)}
.rms-type-specimen.is-expanded p{min-height:220px;font-size:clamp(38px,6vw,78px)}

.rms-brandscape-review,.rms-brandscape-client-document{width:100%;max-width:none}
.rms-brandscape-internal-notes{display:grid;gap:8px;margin:0 0 18px;padding:16px 18px;border:1px solid #dcb66a;border-left:5px solid #c48b16;border-radius:10px;background:#fff8e8;color:#4f3700}
.rms-brandscape-internal-notes h3,.rms-brandscape-internal-notes p{margin:0}
.rms-brandscape-client-content{max-width:1100px}
.rms-brandscape-comments{display:grid;gap:15px;margin-top:24px;padding-top:22px;border-top:1px solid var(--rms-line)}
.rms-brandscape-comment-list{display:grid;gap:10px}
.rms-brandscape-comment{display:grid;gap:8px;padding:14px 16px;border:1px solid #dce3e8;border-radius:10px;background:#f8fafb}
.rms-brandscape-comment header{display:flex;align-items:center;justify-content:space-between;gap:12px}.rms-brandscape-comment time{color:var(--rms-muted);font-size:10px}
.rms-brandscape-comment blockquote{margin:0;padding:10px 12px;border-left:4px solid var(--rms-blue);background:#fff;color:#34414d;font-size:12px;line-height:1.5}
.rms-brandscape-comment p{margin:0;line-height:1.55}.rms-brandscape-comment small{color:var(--rms-muted);font-weight:750}
.rms-brandscape-comments form{max-width:760px}

.rms-social-month-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--rms-line);background:linear-gradient(135deg,#fff,#f2f8fb)}
.rms-social-month-toolbar h2{margin:4px 0 5px;font-size:25px}.rms-social-month-toolbar p{margin:0;color:var(--rms-muted);font-size:11px}
.rms-social-month-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}
.rms-social-calendar{min-width:1420px}
.rms-social-calendar th:nth-child(1),.rms-social-calendar td:nth-child(1){min-width:170px}
.rms-social-calendar th:nth-child(2),.rms-social-calendar td:nth-child(2){min-width:145px}
.rms-social-calendar th:nth-child(3),.rms-social-calendar td:nth-child(3){min-width:210px}
.rms-social-calendar th:nth-child(4),.rms-social-calendar td:nth-child(4){min-width:185px}
.rms-social-calendar th:nth-child(5),.rms-social-calendar td:nth-child(5){min-width:160px}
.rms-social-calendar th:nth-child(6),.rms-social-calendar td:nth-child(6){min-width:330px;text-align:left}
.rms-social-calendar th:nth-child(7),.rms-social-calendar td:nth-child(7),.rms-social-calendar th:nth-child(8),.rms-social-calendar td:nth-child(8){width:92px;min-width:92px;text-align:center}
.rms-social-placeholder-row td{background:#fbfcfd;color:#65727e}
.rms-social-cell-add{width:100%;padding:3px 0;border:0;background:transparent;color:#075f7f;font:inherit;font-size:11px;font-weight:800;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.rms-social-cell-add:hover,.rms-social-cell-add:focus-visible{color:#fff;background:#075f7f;text-decoration:none}
.rms-social-placeholder-actions{display:flex;align-items:center;justify-content:center;gap:8px}
.rms-social-placeholder-actions button{display:grid;place-items:center;width:27px;height:27px;border:1px solid #b42318;border-radius:7px;background:#fff;color:#8f1d15;font:900 18px/1 var(--rms-body-font);cursor:pointer}
.rms-social-placeholder-actions button:hover,.rms-social-placeholder-actions button:focus-visible{background:#8f1d15;color:#fff}

.rms-confirmation-form{max-width:720px}
.rms-button[disabled],button[disabled]{cursor:not-allowed;opacity:.62}
.rms-button-danger:not(:disabled):hover,.rms-button-danger:not(:disabled):focus-visible{border-color:#7f1d1d!important;background:#7f1d1d!important;color:#fff!important}

@media(max-width:1100px){
  .rms-brand-locker-section.is-color_palette .rms-brand-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .rms-dashboard-layout{grid-template-columns:1fr!important;grid-auto-rows:auto!important}
  .rms-dashboard-module,.rms-dashboard-module.rms-dashboard-width-1,.rms-dashboard-module.rms-dashboard-width-2{grid-column:1!important;grid-row:auto!important}
  .rms-module-choice-row{grid-template-columns:1fr}
  .rms-brand-locker-section .rms-brand-asset-grid{grid-template-columns:1fr}
  .rms-brand-locker-section.is-color_palette .rms-brand-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rms-brand-locker-section.is-logo .rms-logo-suite{grid-template-columns:1fr}
  .rms-social-month-toolbar{align-items:stretch;flex-direction:column}
  .rms-social-month-actions{justify-content:flex-start}
}
@media(max-width:480px){
  .rms-brand-locker-section.is-color_palette .rms-brand-swatches{grid-template-columns:1fr}
}


/* 3.6.1 workflow reliability, Brandscape navigation, and dropdown publishing planner. */
.rms-brand-detail-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;padding:8px;border:1px solid var(--rms-line);border-radius:14px;background:#eef3f6}
.rms-brand-detail-tabs button{display:grid;gap:4px;min-height:72px;padding:14px 16px;border:1px solid transparent;border-radius:10px;background:transparent;color:#33414d;text-align:left;cursor:pointer}
.rms-brand-detail-tabs button span{font-size:13px;font-weight:900}.rms-brand-detail-tabs button small{color:#63717d;font-size:10px;line-height:1.4}
.rms-brand-detail-tabs button:hover,.rms-brand-detail-tabs button:focus-visible{border-color:#075f7f;background:#fff;color:#075f7f;outline:0;box-shadow:0 0 0 3px rgba(7,95,127,.14)}
.rms-brand-detail-tabs button.is-active{border-color:#075f7f;background:#075f7f;color:#fff}.rms-brand-detail-tabs button.is-active small{color:#e8f8ff}
.rms-brandscape-version-history{margin-top:20px;border:1px solid var(--rms-line);border-radius:12px;background:#f8fafb;overflow:hidden}
.rms-brandscape-version-history summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;color:#101820;font-weight:900;cursor:pointer}
.rms-brandscape-version-history summary:hover,.rms-brandscape-version-history summary:focus-visible{background:#075f7f;color:#fff;outline:0}
.rms-brandscape-version-history summary b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:999px;background:#dce6ec;color:#101820}
.rms-brandscape-version-history>div{display:grid;gap:8px;padding:0 12px 12px}.rms-brandscape-version-history article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #dce3e8;border-radius:9px;background:#fff}
.rms-brandscape-version-history article>div{display:flex;align-items:center;gap:8px}.rms-brandscape-version-history article small{color:var(--rms-muted)}
.rms-strategy-error{margin:0 0 20px}
.rms-social-placeholder-row select{width:100%;min-width:130px;min-height:40px;padding:8px 30px 8px 10px;border:1px solid #aebdca;border-radius:8px;background:#fff;color:#101820;font:700 11px/1.25 var(--rms-body-font);cursor:pointer}
.rms-social-placeholder-row select:hover,.rms-social-placeholder-row select:focus-visible{border-color:#075f7f;outline:0;box-shadow:0 0 0 3px rgba(7,95,127,.14)}
.rms-social-placeholder-row td:first-child select{min-width:160px}.rms-social-placeholder-row td:first-child small{display:block;margin-top:6px}
.rms-kpi-analysis-panel .rms-inline-notice{margin-top:14px}
@media(max-width:760px){.rms-brand-detail-tabs{grid-template-columns:1fr}.rms-brandscape-version-history article{align-items:flex-start;flex-direction:column}.rms-brandscape-version-history article>div:last-child{flex-wrap:wrap}}

/* 3.6.2 document controls, publishing calendar preferences, and KPI menu stacking. */
.rms-brandscape-review-form{display:grid!important;grid-template-columns:minmax(0,1fr);gap:16px;width:100%}
.rms-brandscape-review-notes{display:grid!important;grid-template-columns:minmax(0,1fr);gap:8px;width:100%;max-width:none;margin:0}
.rms-brandscape-review-notes>span{font-weight:850}
.rms-brandscape-review-notes textarea{display:block;width:100%;min-height:140px;margin:0;resize:vertical}
.rms-brandscape-version-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;margin-top:20px;padding:15px 17px;border:1px solid var(--rms-line);border-radius:12px;background:#f8fafb;color:#101820;text-align:left;cursor:pointer}
.rms-brandscape-version-trigger span{display:grid;gap:3px}.rms-brandscape-version-trigger b{font-size:13px}.rms-brandscape-version-trigger small{color:var(--rms-muted);font-size:10px}
.rms-brandscape-version-trigger strong{display:grid;place-items:center;min-width:30px;height:30px;border-radius:999px;background:#dce6ec;color:#101820}
.rms-brandscape-version-trigger:hover,.rms-brandscape-version-trigger:focus-visible{border-color:#075f7f;background:#075f7f;color:#fff;outline:0;box-shadow:0 0 0 3px rgba(7,95,127,.15)}
.rms-brandscape-version-trigger:hover small,.rms-brandscape-version-trigger:focus-visible small{color:#e5f6fc}
.rms-brandscape-version-list{display:grid;gap:10px;padding:20px}
.rms-brandscape-version-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid #dce3e8;border-radius:10px;background:#fff}
.rms-brandscape-version-list article>div{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.rms-brandscape-version-list article:first-child>div:first-child{display:grid;gap:3px}.rms-brandscape-version-list small{color:var(--rms-muted)}
.rms-brandscape-comments .rms-section-heading p{margin:4px 0 0;color:var(--rms-muted);font-size:10px}

.rms-kpi-sheet tbody th{overflow:visible}
.rms-kpi-sheet tbody th:has(.rms-metric-actions-menu[open]){z-index:80!important}
.rms-kpi-sheet tbody tr:has(.rms-metric-actions-menu[open]){position:relative;z-index:70}
.rms-metric-actions-menu[open]{z-index:90}
.rms-metric-actions-menu>div{z-index:1000!important}

.rms-social-calendar{min-width:1560px}
.rms-social-calendar [data-social-column="actions"]{width:180px;min-width:180px;text-align:left}
.rms-social-calendar[data-hidden-columns~="category"] [data-social-column="category"],
.rms-social-calendar[data-hidden-columns~="topic"] [data-social-column="topic"],
.rms-social-calendar[data-hidden-columns~="platform"] [data-social-column="platform"],
.rms-social-calendar[data-hidden-columns~="media"] [data-social-column="media"],
.rms-social-calendar[data-hidden-columns~="post"] [data-social-column="post"],
.rms-social-calendar[data-hidden-columns~="published"] [data-social-column="published"],
.rms-social-calendar[data-hidden-columns~="approved"] [data-social-column="approved"]{display:none}
.rms-social-row-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px}
.rms-social-row-actions button,.rms-social-row-delete{padding:7px 9px;border:1px solid #b7c4ce;border-radius:7px;background:#fff;color:#101820;font:800 10px/1.2 var(--rms-body-font);cursor:pointer}
.rms-social-row-actions button:hover,.rms-social-row-actions button:focus-visible,.rms-social-row-delete:hover,.rms-social-row-delete:focus-visible{border-color:#075f7f;background:#075f7f;color:#fff;outline:0}
.rms-social-row-actions button.is-danger,.rms-social-row-delete{border-color:#a1271e;color:#8f1d15}
.rms-social-row-actions button.is-danger:hover,.rms-social-row-actions button.is-danger:focus-visible,.rms-social-row-delete:hover,.rms-social-row-delete:focus-visible{border-color:#7f1d1d;background:#7f1d1d;color:#fff}
.rms-social-column-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

@media(max-width:760px){
  .rms-brandscape-version-list article{align-items:flex-start;flex-direction:column}
  .rms-social-column-options{grid-template-columns:1fr}
}

/* 3.6.3 publishing calendar row controls */
.rms-social-plan-order{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.rms-social-plan-order button{min-width:34px;padding:7px 9px;border:1px solid #aebdca;border-radius:7px;background:#fff;color:#101820;font:800 11px/1.2 var(--rms-body-font);cursor:pointer}
.rms-social-plan-order button:hover,.rms-social-plan-order button:focus-visible{border-color:#075f7f;background:#075f7f;color:#fff;outline:0}
.rms-social-plan-order button:disabled{opacity:.35;cursor:not-allowed;background:#eef2f5;color:#667085;border-color:#cbd5df}
.rms-social-post-row [data-social-post-date]{width:100%;min-width:160px;min-height:40px;padding:8px 30px 8px 10px;border:1px solid #aebdca;border-radius:8px;background:#fff;color:#101820;font:700 11px/1.25 var(--rms-body-font)}
.rms-social-post-row [data-social-post-date]:hover,.rms-social-post-row [data-social-post-date]:focus-visible{border-color:#075f7f;outline:0;box-shadow:0 0 0 3px rgba(7,95,127,.14)}
.rms-social-post-row [data-social-column="schedule"] small{display:block;margin-top:6px}

/* 3.7.0 dashboard intelligence, strategy documents, and compact social planning. */
.rms-dashboard-size-dock{position:sticky;top:calc(var(--rms-app-topbar-height,56px) + 12px);z-index:80;display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 16px;padding:12px 16px;border:2px dashed #0aaed9;border-radius:12px;background:rgba(235,249,253,.98);box-shadow:0 12px 28px rgba(16,24,32,.14);color:#12313e;font-weight:800}
.rms-dashboard-size-dock[hidden]{display:none!important}.rms-dashboard-size-dock button{padding:9px 14px;border:1px solid #0b6f91;border-radius:8px;background:#fff;color:#0b4f68;font:800 12px/1.2 var(--rms-body-font);cursor:pointer}.rms-dashboard-size-dock button.is-drag-over,.rms-dashboard-size-dock button:hover,.rms-dashboard-size-dock button:focus-visible{background:#0b6f91;color:#fff}
.rms-dashboard-next-steps{display:grid;gap:12px}.rms-dashboard-next-steps>p{margin:0;color:var(--rms-muted);line-height:1.5}.rms-dashboard-next-step-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.rms-dashboard-next-step-list a{display:grid;gap:4px;padding:12px 14px;border:1px solid #d8e1e8;border-radius:10px;background:#fff;color:#101820;text-decoration:none}.rms-dashboard-next-step-list a:hover,.rms-dashboard-next-step-list a:focus-visible{border-color:#0b6f91;background:#edf8fb}.rms-dashboard-next-step-list b{font-size:13px}.rms-dashboard-next-step-list small{color:var(--rms-muted);line-height:1.4}.rms-dashboard-next-step-list em{color:#0b6f91;font-size:10px;font-style:normal;font-weight:800}
.rms-dashboard-count{display:flex;align-items:end;gap:10px;margin:0 0 15px}.rms-dashboard-count strong{font-size:46px;line-height:.9}.rms-dashboard-count span{color:var(--rms-muted);font-weight:700}.rms-social-performance-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rms-social-performance-summary span{display:grid;gap:3px;padding:13px;border:1px solid #d9e2e8;border-radius:10px;background:#f7fafb}.rms-social-performance-summary strong{font-size:22px}.rms-social-performance-summary small{color:var(--rms-muted);font-weight:700}.rms-dashboard-recording{display:grid;gap:10px}.rms-dashboard-recording h3,.rms-dashboard-recording p{margin:0}.rms-dashboard-recording p{color:var(--rms-muted);line-height:1.5}

.rms-strategy-current{display:grid;gap:16px}.rms-strategy-document{width:min(100%,1000px);margin:0 auto;padding:26px 30px;border:1px solid #d5dee6;border-radius:16px;background:#fff;box-shadow:0 10px 34px rgba(16,24,32,.06)}.rms-strategy-document>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #e1e7ec}.rms-strategy-document>header h2{max-width:760px;margin:5px 0 7px;font-size:30px;line-height:1.15}.rms-strategy-document>header p{margin:0;color:var(--rms-muted)}.rms-strategy-document-actions{display:flex;justify-content:flex-end;margin:16px 0 4px}.rms-strategy-document-body{max-width:900px;margin:0 auto;padding:18px 0 8px}.rms-strategy-rich-content{font-size:16px;line-height:1.68;color:#17202a}.rms-strategy-rich-content section{margin:0 0 30px}.rms-strategy-rich-content h1{font-size:36px}.rms-strategy-rich-content h2{margin:0 0 12px;font-size:24px;line-height:1.25}.rms-strategy-rich-content h3{font-size:19px}.rms-strategy-rich-content p{margin:0 0 14px}.rms-strategy-rich-content ul,.rms-strategy-rich-content ol{margin:0 0 16px;padding-left:24px}.rms-strategy-rich-content li{margin:0 0 7px}.rms-strategy-document>footer{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-top:20px;border-top:1px solid #e1e7ec}.rms-strategy-document>footer>div:last-child{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px}.rms-strategy-review-notes{max-width:560px;padding:13px 15px;border:1px solid #d8c7f0;border-radius:10px;background:#f8f3ff}.rms-strategy-review-notes b{display:block;margin-bottom:5px}.rms-strategy-review-notes div{line-height:1.5}
.rms-strategy-q-and-a{width:min(100%,1000px);margin:20px auto;padding:20px;border:1px solid #d7e0e7;border-radius:14px;background:#f7fafb}.rms-strategy-q-and-a .rms-panel-head{margin-bottom:14px}.rms-strategy-question{display:grid;gap:9px;padding:14px 0;border-top:1px solid #dfe6eb}.rms-strategy-question:first-of-type{border-top:0}.rms-strategy-question>b{font-size:14px}.rms-strategy-question label{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px}.rms-strategy-question textarea{width:100%;box-sizing:border-box}.rms-strategy-sources{width:min(100%,1000px);margin:18px auto;border:1px solid #d8e1e8;border-radius:11px;background:#fff;overflow:hidden}.rms-strategy-sources summary{padding:13px 16px;background:#f2f6f8;font-weight:850;cursor:pointer}.rms-strategy-sources ul{display:grid;gap:9px;margin:0;padding:14px 18px 18px;list-style:none}.rms-strategy-sources li{display:grid;gap:3px}.rms-strategy-sources span{color:var(--rms-muted);font-size:12px}.rms-strategy-roadmap>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rms-strategy-roadmap article{padding:16px;border:1px solid #dce4ea;border-radius:12px;background:#f8fafb}.rms-strategy-roadmap article h3{margin:4px 0 12px}.rms-strategy-roadmap article h4{margin:14px 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.rms-strategy-version-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px;border:1px solid #d9e1e7;border-radius:11px;background:#fff}.rms-strategy-version-card h3,.rms-strategy-version-card p{margin:3px 0 0}.rms-strategy-version-card p{color:var(--rms-muted);font-size:12px}.rms-strategy-version-list{display:grid;gap:10px}.rms-strategy-creation-progress{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid #91d8ed;border-radius:12px;background:#ecf9fd;color:#124d62}.rms-strategy-creation-progress .rms-spinner{flex:0 0 auto}.rms-strategy-review-modal{width:min(94vw,1120px)}.rms-strategy-review-modal .rms-rich-surface{min-height:520px}.rms-status.is-client-draft{background:#fff3d6;color:#6f4d00}

.rms-social-calendar-panel .rms-table-wrap{overflow-x:auto;overscroll-behavior-inline:contain}.rms-social-calendar{width:100%;min-width:1060px!important;table-layout:fixed}.rms-social-calendar th,.rms-social-calendar td{padding:10px 9px}.rms-social-calendar [data-social-column="schedule"]{width:128px!important;min-width:128px!important}.rms-social-calendar [data-social-column="category"]{width:118px!important;min-width:118px!important}.rms-social-calendar [data-social-column="topic"]{width:150px!important;min-width:150px!important}.rms-social-calendar [data-social-column="platform"]{width:112px!important;min-width:112px!important}.rms-social-calendar [data-social-column="media"]{width:110px!important;min-width:110px!important}.rms-social-calendar [data-social-column="post"]{width:auto!important;min-width:180px!important}.rms-social-calendar [data-social-column="published"],.rms-social-calendar [data-social-column="approved"]{width:72px!important;min-width:72px!important;text-align:center}.rms-social-calendar [data-social-column="actions"]{width:142px!important;min-width:142px!important}.rms-social-calendar select{width:100%;min-width:0!important;max-width:100%;padding:8px 28px 8px 8px;white-space:nowrap;text-overflow:ellipsis}.rms-social-calendar td p{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-height:1.4}.rms-social-plan-order{gap:4px}.rms-social-plan-order button{min-width:30px;padding:6px 7px}.rms-social-row-actions{gap:4px}.rms-social-row-actions button{padding:6px 7px}.rms-social-post-row [data-social-post-date]{min-width:0!important}.rms-social-month-toolbar{gap:16px}.rms-social-month-toolbar>div:first-child p{max-width:720px}

@media(max-width:1000px){.rms-strategy-roadmap>div{grid-template-columns:1fr}.rms-strategy-document{padding:22px 20px}.rms-social-calendar{min-width:940px!important}.rms-dashboard-size-dock{top:12px}}
@media(max-width:782px){.rms-strategy-document>header,.rms-strategy-document>footer{flex-direction:column}.rms-strategy-document>footer>div:last-child{justify-content:flex-start}.rms-strategy-version-card{grid-template-columns:1fr}.rms-strategy-question label{grid-template-columns:1fr}.rms-social-performance-summary{grid-template-columns:1fr 1fr}}

@media print{.rms-strategy-document{max-width:100%;padding:0;border:0;box-shadow:none}.rms-strategy-document-actions,.rms-strategy-document>footer,.rms-strategy-q-and-a,.rms-strategy-sources{display:none!important}}

/* Strategy creation persists across navigation and remains visible on return. */
.rms-strategy-progress{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid #91d8ed;border-radius:12px;background:#ecf9fd;color:#124d62}.rms-strategy-progress>div{display:grid;gap:3px}.rms-strategy-progress span{font-size:13px;color:#356a7d}.rms-strategy-review-form{width:min(94vw,1120px)}.rms-strategy-review-form .rms-rich-surface{min-height:520px}


/* Agency Console 3.7.1 workflow and accessibility refinements */
.rms-dashboard-size-dock{position:fixed!important;left:50%!important;right:auto!important;bottom:24px!important;top:auto!important;z-index:100000!important;transform:translateX(-50%);margin:0!important;min-width:min(620px,calc(100vw - 32px));padding:16px 20px!important;background:#f1fbff!important;box-shadow:0 18px 55px rgba(10,24,38,.28)!important}
.rms-dashboard-size-dock>span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.rms-dashboard-size-dock button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:170px;min-height:52px}.rms-dashboard-size-dock button b{display:grid;place-items:center;width:28px;height:28px;border:2px solid currentColor;border-radius:6px}.rms-dashboard-size-dock button.is-drop-target{background:#0b6f91!important;color:#fff!important;transform:scale(1.04);box-shadow:0 0 0 4px rgba(10,174,217,.2)}
.rms-strategy-review-form,.rms-strategy-review-form .rms-rich-field,.rms-strategy-review-form .rms-rich-editor,.rms-strategy-review-form .rms-rich-surface{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.rms-strategy-review-form .rms-rich-surface{font-weight:400!important;line-height:1.65!important;white-space:normal!important;overflow-x:hidden!important;overflow-y:auto!important;overflow-wrap:anywhere!important;word-break:normal!important}.rms-strategy-review-form .rms-rich-surface *{max-width:100%!important;box-sizing:border-box!important}.rms-strategy-review-form .rms-rich-surface h1,.rms-strategy-review-form .rms-rich-surface h2,.rms-strategy-review-form .rms-rich-surface h3,.rms-strategy-review-form .rms-rich-surface h4{font-weight:800!important;line-height:1.2!important}.rms-strategy-review-form .rms-rich-surface p,.rms-strategy-review-form .rms-rich-surface li{font-weight:400!important}.rms-strategy-review-form .rms-rich-surface table,.rms-strategy-review-form .rms-rich-surface img{max-width:100%!important;height:auto!important}.rms-strategy-review-form .rms-rich-surface .rms-strategy-rich-content{width:100%!important;max-width:none!important}
.rms-social-calendar{min-width:920px!important;table-layout:fixed}.rms-social-calendar [data-social-column="schedule"]{width:112px!important;min-width:112px!important}.rms-social-calendar [data-social-column="category"]{width:100px!important;min-width:100px!important}.rms-social-calendar [data-social-column="topic"]{width:125px!important;min-width:125px!important}.rms-social-calendar [data-social-column="platform"]{width:92px!important;min-width:92px!important}.rms-social-calendar [data-social-column="media"]{width:96px!important;min-width:96px!important}.rms-social-calendar [data-social-column="post"]{width:auto!important;min-width:170px!important}.rms-social-calendar [data-social-column="published"],.rms-social-calendar [data-social-column="approved"]{width:66px!important;min-width:66px!important;text-align:center}.rms-social-calendar [data-social-column="actions"]{width:104px!important;min-width:104px!important}.rms-social-calendar th{white-space:normal!important;overflow-wrap:anywhere;font-size:9px!important;line-height:1.15!important;padding-inline:8px!important}.rms-social-calendar td{padding:10px 8px!important}.rms-social-calendar select{min-width:0!important;width:100%!important}.rms-social-plan-order{display:grid!important;grid-template-columns:repeat(3,30px);gap:5px;justify-content:center}.rms-social-plan-order button{width:30px!important;height:30px!important;min-width:30px!important;padding:0!important}.rms-social-row-delete svg{width:15px;height:15px}
.rms-profile-archive{margin-top:24px}.rms-profile-archive-list{display:grid;gap:10px}.rms-profile-archive-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--rms-line);border-radius:10px;background:#fff}.rms-profile-archive-list article div{display:grid;gap:4px}.rms-profile-archive-list small{color:var(--rms-muted)}
@media(max-width:760px){.rms-dashboard-size-dock{flex-wrap:wrap}.rms-dashboard-size-dock>span{width:100%;text-align:center}.rms-dashboard-size-dock button{min-width:130px;flex:1}.rms-social-calendar{min-width:820px!important}}

/* Agency Console 3.8.0 final cascade overrides. */
.rms-social-calendar{min-width:940px!important;table-layout:fixed!important}
.rms-social-calendar .rms-social-week-head,.rms-social-calendar .rms-social-week-label{width:42px!important;min-width:42px!important;max-width:42px!important}
.rms-social-calendar [data-social-column="schedule"]{width:106px!important;min-width:106px!important}
.rms-social-calendar [data-social-column="category"]{width:96px!important;min-width:96px!important}
.rms-social-calendar [data-social-column="topic"]{width:120px!important;min-width:120px!important}
.rms-social-calendar [data-social-column="platform"]{width:90px!important;min-width:90px!important}
.rms-social-calendar [data-social-column="media"]{width:80px!important;min-width:80px!important}
.rms-social-calendar [data-social-column="post"]{width:180px!important;min-width:180px!important}
.rms-social-calendar [data-social-column="published"],.rms-social-calendar [data-social-column="approved"]{width:62px!important;min-width:62px!important;text-align:center!important}
.rms-social-calendar thead [data-social-column="published"],.rms-social-calendar thead [data-social-column="approved"]{white-space:nowrap!important;overflow-wrap:normal!important;font-size:8.5px!important;letter-spacing:.025em!important}
.rms-social-calendar [data-social-column="actions"]{width:94px!important;min-width:94px!important;text-align:center!important}
.rms-social-calendar .rms-social-week-label{padding:0!important;background:#101820!important;color:#fff!important}
.rms-social-calendar .rms-social-week-label span{writing-mode:vertical-rl!important;transform:rotate(180deg)!important;white-space:nowrap!important}
.rms-social-calendar tr.is-week-odd>td{background:#fbfdfe!important}
.rms-social-calendar tr.is-week-even>td{background:#edf7fb!important}
.rms-social-calendar tr:hover>td{background:#dff3fa!important}
.rms-social-post-row [data-social-post-date]{min-width:0!important}
.rms-document-cover-logo-image{display:block;width:100%;max-width:220px;max-height:110px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.14))}
.rms-brand-locker-section .rms-file-empty-state{grid-column:1/-1;width:100%;text-align:center}
.rms-brand-asset-standard-fields{align-items:start}
.rms-brand-asset-standard-fields textarea{width:100%;min-height:110px}
@media(max-width:760px){.rms-social-calendar{min-width:860px!important}}

/* Agency Console 3.8.1 interface normalization. */
#rms-app *,
.rms-modal *,
.rms-drawer * { box-sizing: border-box; }

/* One checkbox treatment throughout the portal. */
#rms-app input[type="checkbox"],
.rms-modal input[type="checkbox"],
.rms-drawer input[type="checkbox"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  position: relative;
  flex: 0 0 22px;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  margin: 0 !important;
  border: 2px solid #aab7c4 !important;
  border-radius: 6px !important;
  background: #fff !important;
  box-shadow: none !important;
  vertical-align: middle;
  cursor: pointer;
}
#rms-app input[type="checkbox"]::before,
.rms-modal input[type="checkbox"]::before,
.rms-drawer input[type="checkbox"]::before { content: none !important; display: none !important; }
#rms-app input[type="checkbox"]::after,
.rms-modal input[type="checkbox"]::after,
.rms-drawer input[type="checkbox"]::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 7px;
  height: 12px;
  border: solid #101820;
  border-width: 0 3px 3px 0;
  opacity: 0;
  transform: rotate(45deg) scale(.7);
  transform-origin: center;
}
#rms-app input[type="checkbox"]:checked,
.rms-modal input[type="checkbox"]:checked,
.rms-drawer input[type="checkbox"]:checked {
  border-color: var(--rms-blue, #16c5ef) !important;
  background: var(--rms-blue, #16c5ef) !important;
}
#rms-app input[type="checkbox"]:checked::after,
.rms-modal input[type="checkbox"]:checked::after,
.rms-drawer input[type="checkbox"]:checked::after { opacity: 1; transform: rotate(45deg) scale(1); }
#rms-app input[type="checkbox"]:focus-visible,
.rms-modal input[type="checkbox"]:focus-visible,
.rms-drawer input[type="checkbox"]:focus-visible { outline: 3px solid rgba(19,186,243,.24); outline-offset: 2px; }
#rms-app input[type="checkbox"]:disabled,
.rms-modal input[type="checkbox"]:disabled,
.rms-drawer input[type="checkbox"]:disabled { cursor: not-allowed; opacity: .48; }
.rms-square-check,
.rms-check-pill,
.rms-notification-preference-row label { align-items: flex-start !important; gap: 10px !important; line-height: 1.35; }

/* Shared controls and button alignment. */
.rms-form-actions,
.rms-file-preview-actions,
.rms-brand-asset-actions,
.rms-social-row-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
.rms-form-actions.is-centered,
.rms-file-preview-actions { justify-content: center; }
.rms-button,
.rms-icon-button,
.rms-segmented-control button { min-height: 42px; line-height: 1.15; }
.rms-icon-button { display: inline-grid; place-items: center; }
.rms-button + .rms-button,
.rms-button + .rms-icon-button,
.rms-icon-button + .rms-button { margin-left: 0 !important; }

/* Calendar toolbar and event density. */
.rms-calendar-toolbar {
  display: grid !important;
  grid-template-columns: auto minmax(300px, 1.25fr) repeat(4, minmax(155px, 1fr));
  align-items: end;
  gap: 16px;
  margin: 0 0 22px;
  padding: 22px !important;
  border: 1px solid var(--rms-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(16,24,32,.055);
}
.rms-calendar-toolbar-group,
.rms-calendar-filter { display: grid; align-content: end; gap: 8px; min-width: 0; }
.rms-calendar-toolbar .rms-eyebrow,
.rms-calendar-filter > span,
.rms-calendar-type-filters legend {
  margin: 0;
  color: var(--rms-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.rms-calendar-toolbar select,
.rms-calendar-toolbar input[type="search"] { width: 100%; min-height: 46px; }
.rms-calendar-type-filters {
  display: flex;
  align-items: center;
  align-self: stretch;
  flex-wrap: wrap;
  gap: 9px;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.rms-calendar-type-filters legend { width: 100%; padding: 0; }
.rms-check-pill {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px;
  padding: 9px 12px;
  border: 1px solid #d7e0e8;
  border-radius: 12px;
  background: #f7f9fb;
  color: var(--rms-ink);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.rms-check-pill:has(input:checked) { border-color: #8eddf5; background: #eaf9fe; }
.rms-segmented-control { display: flex; gap: 6px; }
.rms-segmented-control .rms-button { min-width: 76px; padding-inline: 15px; }
.rms-calendar-layout { gap: 22px; }
.rms-sticky-calendar-head { min-height: 70px; padding: 14px 18px; }
.rms-sticky-calendar-head h2 { margin: 0; line-height: 1.05; }
.rms-event,
.rms-event span,
.rms-event small,
.rms-appointment-list-item,
.rms-call-library-section td { line-height: 1.2 !important; }
.rms-event { gap: 5px; padding: 9px 10px; }
.rms-event span { overflow-wrap: anywhere; }
.rms-event small { margin-top: 0; }
.rms-day-head { line-height: 1.2; }

/* Social calendar: compact, readable and clearly grouped by week. */
.rms-social-calendar { min-width: 1080px !important; table-layout: fixed; }
.rms-social-calendar th,
.rms-social-calendar td { padding: 12px 9px !important; vertical-align: middle; }
.rms-social-calendar thead th { white-space: nowrap; font-size: 9px; letter-spacing: .07em; }
.rms-social-calendar th:nth-child(1), .rms-social-calendar td:nth-child(1) { width: 40px !important; min-width: 40px !important; padding: 0 !important; }
.rms-social-calendar th:nth-child(2), .rms-social-calendar td:nth-child(2) { width: 112px !important; min-width: 112px !important; }
.rms-social-calendar th:nth-child(3), .rms-social-calendar td:nth-child(3) { width: 105px !important; min-width: 105px !important; }
.rms-social-calendar th:nth-child(4), .rms-social-calendar td:nth-child(4) { width: 135px !important; min-width: 135px !important; }
.rms-social-calendar th:nth-child(5), .rms-social-calendar td:nth-child(5) { width: 104px !important; min-width: 104px !important; }
.rms-social-calendar th:nth-child(6), .rms-social-calendar td:nth-child(6) { width: 100px !important; min-width: 100px !important; }
.rms-social-calendar th:nth-child(7), .rms-social-calendar td:nth-child(7) { width: 190px !important; min-width: 190px !important; }
.rms-social-calendar th:nth-child(8), .rms-social-calendar td:nth-child(8),
.rms-social-calendar th:nth-child(9), .rms-social-calendar td:nth-child(9) { width: 72px !important; min-width: 72px !important; text-align: center; }
.rms-social-calendar th:nth-child(10), .rms-social-calendar td:nth-child(10) { width: 120px !important; min-width: 120px !important; }
.rms-social-calendar select { width: 100%; min-width: 0; min-height: 40px; padding: 7px 27px 7px 9px; font-size: 11px; text-overflow: ellipsis; }
.rms-social-calendar [data-social-column="post"] p { max-height: 4.5em; margin: 0; overflow: hidden; font-size: 12px; line-height: 1.45; }
.rms-social-week-head { background: #101820 !important; color: #fff !important; text-align: center; }
.rms-social-week-label {
  position: relative;
  background: #101820 !important;
  color: #fff !important;
  text-align: center;
}
.rms-social-week-label span {
  display: inline-block;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.rms-social-calendar tr.is-week-odd > td { background: #fbfdfe; }
.rms-social-calendar tr.is-week-even > td { background: #f1f7fa; }
.rms-social-calendar tr:hover > td { background: #e8f6fb; }
.rms-social-plan-order,
.rms-social-row-actions { justify-content: center; gap: 6px; }
.rms-social-plan-order button,
.rms-social-row-actions button {
  min-width: 32px;
  min-height: 32px;
  padding: 5px 8px;
  border-radius: 8px;
  font-size: 10px;
  line-height: 1.1;
}
.rms-social-row-delete { color: #b42318 !important; }

/* Brand Kit typography and in-place asset editing. */
.rms-brand-asset-standard-fields { display: grid; grid-template-columns: minmax(220px,.7fr) minmax(320px,1.3fr); gap: 18px; align-items: start; }
.rms-brand-asset-standard-fields textarea { min-height: 110px; resize: vertical; }
.rms-brand-locker-section .rms-empty,
.rms-brand-locker-section .rms-empty-state { grid-column: 1 / -1; width: 100%; text-align: center; }
.rms-brand-font-family { overflow: hidden; }
.rms-brand-font-family > header {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(220px,320px);
  align-items: end;
  gap: 24px;
  padding: 24px 28px;
  border-bottom: 1px solid var(--rms-line);
  background: linear-gradient(135deg,#fff,#f4f8fa);
}
.rms-brand-font-family > header h3 { margin: 5px 0 0; font-size: 28px; line-height: 1; }
.rms-brand-font-family > header label { display: grid; grid-template-columns: auto minmax(150px,1fr); align-items: center; gap: 12px; }
.rms-brand-font-family > header label span { color: var(--rms-muted); font-size: 12px; white-space: nowrap; }
.rms-brand-font-family > header select { min-height: 46px; border-radius: 12px; background-color: #fff; font-weight: 700; }
.rms-brand-font-family .rms-type-specimen { padding: 28px; }
.rms-brand-font-family .rms-type-specimen p {
  font-family: var(--specimen-font) !important;
  font-weight: var(--specimen-weight) !important;
  font-style: var(--specimen-style) !important;
  font-synthesis: none;
}
.rms-brand-font-family .rms-brand-asset-actions { justify-content: flex-start; padding: 18px 28px 24px; border-top: 1px solid var(--rms-line); }
.rms-brand-typography-field { padding: 22px; }
.rms-brand-typography-field > legend { padding: 0 8px; font-size: 16px; font-weight: 850; }

/* Brand Strategy and client document readability. */
.rms-brand-strategy-tabs,
.rms-brand-subtabs,
.rms-brand-detail-tabs { padding: 8px; border: 1px solid #d8e2e8; border-radius: 16px; background: #eef4f7; }
.rms-brand-strategy-tabs button,
.rms-brand-subtabs button,
.rms-brand-detail-tabs button { border-radius: 12px; transition: background .16s ease, color .16s ease, transform .16s ease; }
.rms-brand-strategy-tabs button:hover,
.rms-brand-subtabs button:hover,
.rms-brand-detail-tabs button:hover { transform: translateY(-1px); }
.rms-brandscape-review,
.rms-brandscape-client-document,
.rms-strategy-document,
.rms-strategy-rich-content { max-width: 1000px; margin-inline: auto; }
.rms-strategy-rich-content { font-size: 16px; line-height: 1.68; }
.rms-strategy-rich-content h2 { margin: 34px 0 12px; font-size: 25px; line-height: 1.15; }
.rms-document-toc { margin: 0 0 30px; padding: 20px 24px; border: 1px solid #dce4ea; border-radius: 14px; background: #f6f9fb; }
.rms-document-toc ol { columns: 2; gap: 30px; margin: 12px 0 0; padding-left: 22px; }
.rms-client-pdf-viewer { display: block; width: min(100%,1000px); min-height: 76vh; margin: 0 auto; border: 1px solid var(--rms-line); border-radius: 14px; background: #f5f7f9; }

/* Cover Designer lives as its own Projects workspace. */
.rms-document-design-grid { align-items: start; gap: 24px; }
.rms-document-design-side { padding: 20px; border: 1px solid var(--rms-line); border-radius: 18px; background: #f7f9fb; }
.rms-document-design-side > header { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 18px; margin-bottom: 16px; }
.rms-document-page-settings { display: grid; grid-template-columns: repeat(2,minmax(150px,1fr)); gap: 12px; }
.rms-document-element-control { border-radius: 12px; background: #fff; }
.rms-document-add-element { display: flex; align-items: end; gap: 10px; margin: 16px 0; }

@media (max-width: 1280px) {
  .rms-calendar-toolbar { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .rms-calendar-toolbar-group.is-view,
  .rms-calendar-type-filters { grid-column: span 1; }
}
@media (max-width: 850px) {
  .rms-calendar-toolbar { grid-template-columns: 1fr; }
  .rms-calendar-type-filters { display: grid; grid-template-columns: 1fr; }
  .rms-brand-asset-standard-fields,
  .rms-brand-font-family > header,
  .rms-document-design-side > header,
  .rms-document-page-settings { grid-template-columns: 1fr; }
  .rms-brand-font-family > header label { grid-template-columns: 1fr; }
  .rms-document-toc ol { columns: 1; }
}

/* Brand Strategy workspace polish. */
.rms-strategy-module-tabs {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-bottom: 16px;
  padding: 8px;
  border: 1px solid #d8e2e8;
  border-radius: 18px;
  background: linear-gradient(135deg,#f4f8fa,#eaf2f6);
}
.rms-strategy-module-tabs button {
  display: grid;
  gap: 5px;
  min-height: 78px;
  padding: 16px 18px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: transparent;
  color: #42505c;
  text-align: left;
  cursor: pointer;
}
.rms-strategy-module-tabs button span { font-size: 14px; font-weight: 900; }
.rms-strategy-module-tabs button small { color: #6b7784; font-size: 10px; line-height: 1.35; }
.rms-strategy-module-tabs button:hover,
.rms-strategy-module-tabs button:focus-visible { border-color: #80cde7; background: #fff; color: #075f7f; outline: 0; }
.rms-strategy-module-tabs button.is-active { border-color: #075f7f; background: #075f7f; color: #fff; box-shadow: 0 10px 22px rgba(7,95,127,.16); }
.rms-strategy-module-tabs button.is-active small { color: #dff7ff; }
.rms-brand-tabs { display: flex; flex-wrap: wrap; gap: 8px; padding: 7px; border: 1px solid #dbe3e8; border-radius: 15px; background: #f0f5f7; }
.rms-brand-tabs button { min-height: 44px; padding: 10px 16px; border: 1px solid transparent; border-radius: 10px; background: transparent; font-weight: 800; cursor: pointer; }
.rms-brand-tabs button.is-active { background: #fff; color: #075f7f; box-shadow: 0 5px 14px rgba(16,24,32,.08); }
.rms-document-toc a { color: #075f7f; text-decoration: none; }
.rms-document-toc a:hover,.rms-document-toc a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
@media(max-width:760px){.rms-strategy-module-tabs{grid-template-columns:1fr}.rms-strategy-module-tabs button{min-height:auto}}

/* Connected calendar import and call/project association. */
.rms-google-event-connect {
  margin: 8px 0 2px;
  padding: 18px;
  border: 1px solid #d8e2e8;
  border-radius: 14px;
  background: #f6f9fb;
}
.rms-google-event-connect legend {
  padding: 0 8px;
  color: var(--rms-ink);
  font-size: 13px;
  font-weight: 850;
}
.rms-google-event-connect .description { margin: 10px 0 0; color: var(--rms-muted); line-height: 1.45; }
.rms-call-library-section td small { display: block; margin-top: 4px; color: var(--rms-muted); line-height: 1.25; }
