/*
 * Retired Young / Atelier — shared, authenticated workspace.
 * Load last. The existing server-authorized navigation is the scope boundary:
 * Landing, signup and embedded previews remain untouched. A panel-only loading
 * shell receives neutral colors without authorizing or rendering navigation.
 * Visual layer only: no route, role, hidden-state or interaction changes.
 */

body:has(.ry-panel-nav) {
  --atelier-paper: #f6f4ee;
  --atelier-sidebar: #191a18;
  --atelier-surface: #ffffff;
  --atelier-ink: #181c24;
  --atelier-muted: #626c7b;
  --atelier-line: #e8e8e6;
  --atelier-control: #878d96;
  --atelier-gold: #8b662f;
  --atelier-accent: #b69a5c;
  --atelier-focus: #8e692d;
  --atelier-error: #a12f2b;
  --ink: var(--atelier-ink);
  --ink2: var(--atelier-ink);
  --paper: var(--atelier-ink);
  --cream: var(--atelier-ink);
  --soft: var(--atelier-muted);
  --muted: var(--atelier-muted);
  --line: var(--atelier-line);
  --gold: var(--atelier-gold);
  --purple: var(--atelier-gold);
  --violet: var(--atelier-gold);
  --lilac: var(--atelier-gold);
  background: var(--atelier-paper);
  color: var(--atelier-ink);
  color-scheme: light;
  font-size: 16px;
  line-height: 1.65;
}

/* A quiet masthead, a permanent grouped index, and one editorial canvas. */
body:has(.ry-panel-nav) :is(#app, #app > [inert]):has(> .ry-panel-nav) {
  display: grid;
  grid-template-columns: 268px minmax(0, 1fr);
  grid-template-rows: auto 1fr;
  min-height: 100svh;
  align-items: start;
}

body:has(.ry-panel-nav) .crm-app-header {
  grid-column: 1 / -1;
  width: 100%;
  max-width: none;
  min-height: 88px;
  margin: 0;
  padding: max(16px, env(safe-area-inset-top)) 36px 16px;
  gap: 20px 28px;
  border-bottom: 1px solid var(--atelier-line);
  background: var(--atelier-paper);
}

body:has(.ry-panel-nav) .crm-brand {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  color: var(--atelier-ink);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .17em;
}

body:has(.ry-panel-nav) .language {
  margin-left: auto;
  border: 0;
  border-radius: 0;
  padding: 0;
  gap: 4px;
  background: transparent;
}

body:has(.ry-panel-nav) .language button {
  min-width: 48px;
  min-height: 48px;
  padding: 10px;
  color: var(--atelier-muted);
  font-size: 13px;
  font-weight: 600;
  background: transparent;
  border-radius: 0;
  border-bottom: 2px solid transparent;
}

body:has(.ry-panel-nav) .language button[aria-pressed=true] {
  color: var(--atelier-ink);
  background: transparent;
  border-bottom-color: var(--atelier-gold);
}

body:has(.ry-panel-nav) .ry-session-actions {
  gap: 16px;
  width: auto;
}

body:has(.ry-panel-nav) .ry-session-actions :is(.button, .text-link) {
  min-height: 48px;
  padding: 10px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--atelier-ink);
  font-size: 16px;
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: #a99a7d;
  text-underline-offset: 6px;
}

body:has(.ry-panel-nav) .ry-panel-nav {
  grid-column: 1;
  grid-row: 2;
  position: sticky;
  top: 0;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-self: start;
  min-height: calc(100svh - 88px);
  max-height: 100svh;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  gap: 30px;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 36px 22px 40px;
  border: 0;
  border-right: 1px solid var(--atelier-line);
  border-radius: 0;
  background: #f3f2ee;
  color: var(--atelier-ink);
  box-shadow: none;
}

body:has(.ry-panel-nav) .ry-panel-group {
  flex: 0 0 auto;
  min-width: 0;
  width: 100%;
}

body:has(.ry-panel-nav) .ry-panel-group-label {
  margin: 0 0 12px;
  padding: 0 12px;
  color: var(--atelier-muted);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

body:has(.ry-panel-nav) .ry-panel-links {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 4px;
}

body:has(.ry-panel-nav) .ry-panel-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  min-height: 48px;
  width: 100%;
  padding: 12px;
  border: 0;
  border-left: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--atelier-ink);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  hyphens: none;
  box-shadow: none;
}

body:has(.ry-panel-nav) .ry-panel-link:hover {
  background: #e8e7dd;
  color: var(--atelier-ink);
  border-color: transparent;
}

body:has(.ry-panel-nav) .ry-panel-link[aria-current=page] {
  border: 0;
  border-left: 2px solid var(--atelier-gold);
  background: #e8e5d9;
  color: var(--atelier-ink);
  font-weight: 700;
  box-shadow: none;
}

body:has(.ry-panel-nav) #main {
  grid-column: 2;
  grid-row: 2;
  min-width: 0;
  width: calc(100% - 88px);
  max-width: 1140px;
  margin: 0 auto;
  padding: 42px 0 80px;
}

body:has(.ry-panel-nav) #main :is(.crm-main, .crm-detail, .crm-subpage) {
  max-width: none;
  min-width: 0;
}

/* Typography is shared by old and newly mounted panel modules. */
body:has(.ry-panel-nav) #main :is(h1, .ryc-heading h2):not(:where(.ry-device *)) {
  margin: 0 0 24px;
  color: var(--atelier-ink);
  font-family: Manrope, ui-sans-serif, system-ui, sans-serif;
  font-size: clamp(34px, 3.5vw, 48px);
  font-weight: 400;
  line-height: 1.12;
  letter-spacing: -.045em;
  overflow-wrap: break-word;
}

body:has(.ry-panel-nav) #main h2:not(:where(.ry-device *)) {
  color: var(--atelier-ink);
  font-size: 25px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.035em;
}

body:has(.ry-panel-nav) #main h3:not(:where(.ry-device *)) {
  color: var(--atelier-ink);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -.02em;
}

body:has(.ry-panel-nav) #main :is(p, .partner-intro, .crm-human-status):not(:where(.ry-device *)) {
  color: var(--atelier-muted);
  font-size: 16px;
  line-height: 1.75;
  overflow-wrap: anywhere;
}

body:has(.ry-panel-nav) #main > p {
  max-width: 760px;
  margin: 12px 0 24px;
}

body:has(.ry-panel-nav) #main :is(small, .fine, .crm-person-facts p, .crm-contact-heading p, .ryc-muted):not(:where(.ry-device *)) {
  color: var(--atelier-muted);
  font-size: 13px !important;
  line-height: 1.7;
}

body:has(.ry-panel-nav) #main :is(.eyebrow, .crm-small-scope) {
  color: var(--atelier-muted) !important;
  font-size: 12px;
}

body:has(.ry-panel-nav) #main :is(.ry-org, .ry-pi, .ry-routing, .ryc-root) {
  color: var(--atelier-ink);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.65;
}

/* Replace stacked decorative cards with ruled, spacious content sections. */
body:has(.ry-panel-nav) #main :is(.partner-card, .ry-org article, .ry-org section, .ry-pi article, .ry-pi form, .ry-pi section, .ry-routing, .ryc-card, .ryc-insight, .ryc-empty) {
  min-width: 0;
  margin: 28px 0;
  padding: 28px 0;
  border: 0;
  border-top: 1px solid var(--atelier-line);
  border-radius: 0;
  background: transparent;
  color: var(--atelier-ink);
  box-shadow: none;
}

body:has(.ry-panel-nav) #main :is(.ry-org article, .ry-org section, .ry-pi article, .ry-pi section) :is(article, section, form) {
  margin: 24px 0 0;
  padding-bottom: 0;
}

body:has(.ry-panel-nav) #main :is(.partner-card, .ryc-card) h2 {
  margin: 0;
}

body:has(.ry-panel-nav) #main .partner-card dt {
  color: var(--atelier-muted);
  font-size: 15px;
  line-height: 1.6;
}

body:has(.ry-panel-nav) #main .partner-card dd {
  color: var(--atelier-ink);
  font-size: 16px;
  line-height: 1.65;
}

body:has(.ry-panel-nav) #main :is(.partner-card-head, .ryc-heading) {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 16px 24px;
}

body:has(.ry-panel-nav) #main :is(.partner-status, .status, .tiny-tag) {
  color: #575e48;
  background: #e8eadf;
  border: 1px solid #aeb39e;
  border-radius: 3px;
  padding: 5px 9px;
  font-size: 13px;
  line-height: 1.5;
  white-space: normal;
}

body:has(.ry-panel-nav) #main :is(.ry-confirm, .ry-flow-notice, .ry-flow-inventory) {
  padding: 20px 24px;
  border: 0;
  border-left: 2px solid #a99a7d;
  border-radius: 0;
  background: #f0eee5;
  color: var(--atelier-ink);
}

/* Forms: readable on iPhone, genuine boundaries, and no low-contrast errors. */
body:has(.ry-panel-nav) #main label {
  color: var(--atelier-ink);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
}

body:has(.ry-panel-nav) #main :where(input:not([type=checkbox]):not([type=radio]):not([type=file]), select, textarea) {
  min-width: 0;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--atelier-control);
  border-radius: 4px;
  background: var(--atelier-surface);
  color: var(--atelier-ink);
  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  box-shadow: none;
}

body:has(.ry-panel-nav) #main :is(input, textarea)::placeholder {
  color: var(--atelier-muted);
  opacity: 1;
}

body:has(.ry-panel-nav) #main :is(input[type=checkbox], input[type=radio]) {
  accent-color: var(--atelier-focus);
}

/* Compatible with the pending phone-input module, without changing validation. */
body:has(.ry-panel-nav) #main .ry-phone-prefix {
  border-color: var(--atelier-control);
  border-radius: 4px 0 0 4px;
  background: #f3f2ee;
  color: var(--atelier-ink);
}

body:has(.ry-panel-nav) #main .ry-phone-number-row input {
  margin: 0;
  border-radius: 0 4px 4px 0;
}

body:has(.ry-panel-nav) #main .ry-phone-error {
  color: var(--atelier-error) !important;
  font-size: 16px;
  line-height: 1.6;
}

body:has(.ry-panel-nav) #main .ry-phone-input [aria-invalid=true] {
  outline-color: var(--atelier-error);
}

body:has(.ry-panel-nav) #main :is(.partner-fields, .field-grid, .ryc-form-grid, .ry-flow-field-row) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

body:has(.ry-panel-nav) #main :is(.partner-fields, .field-grid) > label {
  min-width: 0;
}

body:has(.ry-panel-nav) #main :is(.button, .ry-org button, .ry-pi button, .ry-routing button, .ry-flow-stage-list button, .ry-flow-tabs button) {
  min-width: 48px;
  min-height: 48px;
  max-width: 100%;
  padding: 12px 20px;
  border: 1px solid var(--atelier-control);
  border-radius: 4px;
  background: transparent;
  color: var(--atelier-ink);
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  gap: 12px;
  white-space: normal;
  overflow-wrap: break-word;
  box-shadow: none;
  transform: none;
}

body:has(.ry-panel-nav) #main :is(.button.primary, button[type=submit], .ry-flow-stage-list button[aria-pressed=true], .ry-flow-tabs button[aria-selected=true], .ry-flow-tabs button[aria-pressed=true]) {
  border-color: var(--atelier-gold);
  background: var(--atelier-gold);
  color: #fffefb;
  font-weight: 600;
}

body:has(.ry-panel-nav) #main :is(.button, .ry-org button, .ry-pi button, .ry-routing button):hover:not(:disabled) {
  border-color: var(--atelier-gold);
  background: #ebe7dc;
  color: var(--atelier-ink);
  transform: none;
}

body:has(.ry-panel-nav) #main :is(.button.primary, button[type=submit]):hover:not(:disabled) {
  background: #65502d;
  border-color: #65502d;
  color: #fffefb;
}

body:has(.ry-panel-nav) #main :is(.text-button, .text-link, .button.text-button) {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  padding: 10px 0;
  border: 0;
  background: transparent;
  color: var(--atelier-ink);
  font-size: 16px;
  text-decoration: underline;
  text-decoration-color: #a99a7d;
  text-underline-offset: 5px;
}

body:has(.ry-panel-nav) #main :is(.form-error, #partner-error, .ryc-error, .ry-flow-error, .ry-org [role=alert], .ry-pi [role=alert], .ry-routing [role=alert]) {
  color: var(--atelier-error) !important;
  font-size: 16px !important;
  line-height: 1.6;
}

body:has(.ry-panel-nav) #main [aria-invalid=true] {
  border: 2px solid var(--atelier-error);
}

body:has(.ry-panel-nav) #main .ryc-error {
  border-left: 3px solid var(--atelier-error);
  background: #faece8;
}

body:has(.ry-panel-nav) :is(a, button, input, select, textarea, summary, [tabindex]):not(:where(.ry-device *)):focus-visible {
  outline: 3px solid var(--atelier-focus);
  outline-offset: 4px;
}

body:has(.ry-panel-nav) :is(.skip:focus, #toast) {
  background: var(--atelier-ink);
  color: var(--atelier-surface);
  font-size: 16px;
  border-radius: 4px;
}

/* Contacts and detail history use the same paper, rules and human-scale type. */
body:has(.ry-panel-nav) #main .crm-contacts-title {
  margin-bottom: 24px;
}

body:has(.ry-panel-nav) #main #person-search {
  margin: 0 0 30px;
}

body:has(.ry-panel-nav) #main :is(.crm-cards, .crm-card, .crm-options-group, .crm-person-links, .crm-composer) {
  border-color: var(--atelier-line);
  background: transparent;
  border-radius: 0;
}

body:has(.ry-panel-nav) #main .crm-contact-row {
  min-height: 88px;
  padding: 22px 8px 22px 0;
  gap: 18px;
  color: var(--atelier-ink);
}

body:has(.ry-panel-nav) #main .crm-contact-row:hover {
  background: #efeee6;
}

body:has(.ry-panel-nav) #main .crm-contact-copy strong {
  color: var(--atelier-ink);
  font-size: 18px;
  font-weight: 600;
}

body:has(.ry-panel-nav) #main .crm-contact-row:hover strong {
  text-decoration: underline;
  text-decoration-color: #a99a7d;
  text-underline-offset: 5px;
}

body:has(.ry-panel-nav) #main .crm-contact-copy > span {
  color: var(--atelier-muted);
  font-size: 14px;
  line-height: 1.65;
}

body:has(.ry-panel-nav) #main .crm-row-arrow {
  display: none;
}

body:has(.ry-panel-nav) #main :is(.crm-avatar, .avatar) {
  width: 42px;
  height: 42px;
  background: #e0e3d6;
  color: #4f5941;
  font-size: 15px;
  font-weight: 500;
}

body:has(.ry-panel-nav) #main .crm-human-status {
  color: var(--atelier-ink) !important;
  font-size: 22px;
  line-height: 1.55 !important;
  max-width: 760px;
}

body:has(.ry-panel-nav) #main .crm-note {
  padding: 22px;
  border-radius: 0;
  background: #eeeee4;
  color: var(--atelier-ink);
  font-size: 16px;
}

body:has(.ry-panel-nav) #main .crm-timeline li {
  border-color: var(--atelier-line);
  color: var(--atelier-muted);
  font-size: 15px;
  padding-left: 22px;
}

body:has(.ry-panel-nav) #main :is(.crm-timeline strong, .crm-options-group h2) {
  color: var(--atelier-ink);
}

/* Progress is a set of figures on a ruled page, never four floating cards. */
body:has(.ry-panel-nav) #main :is(.ryc-metrics, .ry-org-metrics, .summary-grid) {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 30px 0;
  border-block: 1px solid var(--atelier-line);
}

body:has(.ry-panel-nav) #main :is(.ryc-metrics article, .ry-org-metrics p, .summary-grid > div) {
  margin: 0;
  padding: 26px 20px;
  border: 0;
  border-right: 1px solid var(--atelier-line);
  border-radius: 0;
  background: transparent;
}

body:has(.ry-panel-nav) #main :is(.ryc-metrics article, .ry-org-metrics p, .summary-grid > div):last-child {
  border-right: 0;
}

body:has(.ry-panel-nav) #main :is(.ryc-metrics strong, .ry-org-metrics strong, .summary-grid strong, .ryc-insight strong) {
  color: var(--atelier-ink);
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.05em;
  font-variant-numeric: tabular-nums;
}

body:has(.ry-panel-nav) #main :is(.ryc-metrics span, .summary-grid small) {
  color: var(--atelier-muted);
  font-size: 14px;
  line-height: 1.6;
  min-height: 0;
  letter-spacing: 0;
}

body:has(.ry-panel-nav) #main :is(.ryc-cards, .ryc-insight) {
  gap: 36px;
}

body:has(.ry-panel-nav) #main :is(.ryc-root fieldset, .ryc-review-row) {
  border-color: var(--atelier-line);
  border-radius: 0;
}

body:has(.ry-panel-nav) #main :is(.ryc-root legend, .ryc-settings summary, .ryc-rules summary, .ryc-prizes strong) {
  color: var(--atelier-ink);
  font-size: 16px;
}

body:has(.ry-panel-nav) #main summary {
  align-items: center;
  min-height: 48px;
  line-height: 1.5;
}

body:has(.ry-panel-nav) #main :is(table, .ryc-root table) {
  color: var(--atelier-ink);
  font-size: 15px;
  line-height: 1.6;
}

body:has(.ry-panel-nav) #main :is(th, td, .ryc-root th, .ryc-root td) {
  padding: 20px 12px;
  border-bottom: 1px solid var(--atelier-line);
  vertical-align: top;
}

body:has(.ry-panel-nav) #main :is(th, .ryc-root th) {
  color: var(--atelier-muted);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .02em;
}

body:has(.ry-panel-nav) #main :is(.table-scroll, .ryc-table-wrap) {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-color: #a5a995 var(--atelier-paper);
}

body:has(.ry-panel-nav) #main .empty {
  padding: 36px 0;
  border: 0;
  border-block: 1px solid var(--atelier-line);
  border-radius: 0;
  text-align: left;
  font-size: 16px;
}

/* Flow editor chrome shares Atelier; device contents remain an honest preview. */
body:has(.ry-panel-nav) #main .ry-flow-grid {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 370px);
  gap: 36px;
  margin-top: 32px;
}

body:has(.ry-panel-nav) #main .ry-flow-controls {
  gap: 18px 24px;
  padding: 24px 0;
  margin: 24px 0;
  border: 0;
  border-block: 1px solid var(--atelier-line);
  border-radius: 0;
  background: transparent;
}

body:has(.ry-panel-nav) #main .ry-flow-tabs {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body:has(.ry-panel-nav) #main :is(.ry-device-caption p, .ry-device-footnote) {
  color: var(--atelier-muted);
  font-size: 13px;
  line-height: 1.6;
}

body:has(.ry-panel-nav) #main .ry-device-preview-tag {
  padding: 4px 0;
  border-radius: 0;
  background: transparent;
  color: var(--atelier-gold);
  font-size: 12px;
  font-weight: 600;
}

body:has(.ry-panel-nav) #main .ry-device {
  box-shadow: 0 0 0 1px #686965, 0 12px 30px #292c2714;
}

/* A language-choice dialog is not a page: keep its dark foreground explicit. */
body:has(.ry-panel-nav) .ry-language-dialog {
  color: #f5f2eb;
}

body:has(.ry-panel-nav) .ry-language-dialog .eyebrow {
  color: #ead6a5;
}

body:has(.ry-panel-nav) .ry-language-dialog :focus-visible {
  outline-color: #ead6a5;
}

@media (max-width: 1180px) and (min-width: 1025px) {
  body:has(.ry-panel-nav) :is(#app, #app > [inert]):has(> .ry-panel-nav) {
    grid-template-columns: 248px minmax(0, 1fr);
  }
  body:has(.ry-panel-nav) #main {
    width: calc(100% - 56px);
  }
  body:has(.ry-panel-nav) #main .ry-flow-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  body:has(.ry-panel-nav) #main .ry-flow-preview {
    position: static;
  }
}

@media (max-width: 1024px) {
  body:has(.ry-panel-nav) :is(#app, #app > [inert]):has(> .ry-panel-nav) {
    display: block;
  }
  body:has(.ry-panel-nav) .crm-app-header {
    padding-inline: 28px;
  }
  body:has(.ry-panel-nav) .ry-panel-nav {
    position: static;
    min-height: 0;
    max-height: none;
    overflow-y: visible;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 28px;
    padding: 24px 28px;
    border-right: 0;
    border-bottom: 1px solid var(--atelier-line);
  }
  body:has(.ry-panel-nav) .ry-panel-group {
    flex: 1 1 210px;
    width: auto;
  }
  body:has(.ry-panel-nav) #main {
    width: calc(100% - 56px);
    padding-top: 36px;
  }
}

@media (max-width: 800px) {
  body:has(.ry-panel-nav) #main .ry-flow-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
  body:has(.ry-panel-nav) #main :is(.partner-fields, .field-grid, .ryc-form-grid, .ry-flow-field-row) {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }
  body:has(.ry-panel-nav) #main :is(.ryc-metrics, .ry-org-metrics, .summary-grid) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body:has(.ry-panel-nav) #main :is(.ryc-metrics article, .ry-org-metrics p, .summary-grid > div):nth-child(2n) {
    border-right: 0;
  }
  body:has(.ry-panel-nav) #main :is(.ryc-metrics article, .ry-org-metrics p, .summary-grid > div):nth-child(n + 3) {
    border-top: 1px solid var(--atelier-line);
  }
}

@media (max-width: 700px) {
  body:has(.ry-panel-nav) .crm-app-header {
    padding: max(12px, env(safe-area-inset-top)) 20px 12px;
    gap: 8px 12px;
  }
  body:has(.ry-panel-nav) .crm-brand {
    font-size: 12px;
    letter-spacing: .13em;
  }
  body:has(.ry-panel-nav) .language {
    margin-left: auto;
    gap: 0;
  }
  body:has(.ry-panel-nav) .language button {
    padding: 8px;
  }
  body:has(.ry-panel-nav) .ry-session-actions {
    flex-basis: 100%;
    justify-content: flex-end;
  }
  body:has(.ry-panel-nav) .ry-panel-nav {
    gap: 20px;
    padding: 24px 18px;
  }
  body:has(.ry-panel-nav) .ry-panel-group {
    flex-basis: 100%;
  }
  body:has(.ry-panel-nav) .ry-panel-group-label {
    padding-inline: 10px;
    margin-bottom: 6px;
  }
  body:has(.ry-panel-nav) .ry-panel-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px 8px;
  }
  body:has(.ry-panel-nav) .ry-panel-link {
    padding: 10px;
  }
  body:has(.ry-panel-nav) .ry-panel-group:last-child:has([data-route=preferences]) .ry-panel-links {
    grid-template-columns: minmax(0, 1fr);
  }
  body:has(.ry-panel-nav) #main {
    width: calc(100% - 40px);
    padding: 34px 0 max(56px, env(safe-area-inset-bottom));
  }
  body:has(.ry-panel-nav) #main :is(h1, .ryc-heading h2):not(:where(.ry-device *)) {
    font-size: 36px;
  }
  body:has(.ry-panel-nav) #main h2:not(:where(.ry-device *)) {
    font-size: 24px;
  }
  body:has(.ry-panel-nav) #main :is(.partner-card, .ry-org article, .ry-org section, .ry-pi article, .ry-pi form, .ry-pi section, .ry-routing, .ryc-card, .ryc-insight, .ryc-empty) {
    padding: 24px 0;
    margin-block: 24px;
  }
  body:has(.ry-panel-nav) #main :is(.ry-confirm, .ry-flow-notice, .ry-flow-inventory) {
    padding: 18px;
  }
  body:has(.ry-panel-nav) #main .partner-actions {
    gap: 12px;
  }
  body:has(.ry-panel-nav) #main .partner-actions > .button {
    width: 100%;
  }
  body:has(.ry-panel-nav) #main :is(.ryc-cards, .ryc-insight) {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  body:has(.ry-panel-nav) #main :is(.ryc-metrics article, .ry-org-metrics p, .summary-grid > div) {
    padding: 22px 16px;
  }
  body:has(.ry-panel-nav) #main .crm-contact-copy strong {
    font-size: 17px;
  }
  body:has(.ry-panel-nav) #main .crm-human-status {
    font-size: 21px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:has(.ry-panel-nav) {
    scroll-behavior: auto;
  }
  body:has(.ry-panel-nav) :is(.button, .ry-panel-link) {
    transition: none;
  }
}

/* Task-first navigation: native disclosures keep occasional tools nearby. */
body:has(.ry-panel-nav) .ry-panel-disclosure {
  border-top: 1px solid var(--atelier-line);
  padding-top: 6px;
}
body:has(.ry-panel-nav) .ry-panel-disclosure > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
  min-height: 48px;
  padding: 12px;
  color: var(--atelier-ink);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
  overflow-wrap: break-word;
}
body:has(.ry-panel-nav) .ry-panel-disclosure > summary::after {
  content: '';
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-right: 2px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: none;
}
body:has(.ry-panel-nav) .ry-panel-disclosure[open] > summary::after {
  transform: rotate(225deg);
}
body:has(.ry-panel-nav) .ry-panel-disclosure[open] > summary {
  margin-bottom: 6px;
}
body:has(.ry-panel-nav) .ry-panel-disclosure > summary:focus-visible {
  outline: 3px solid var(--atelier-focus);
  outline-offset: 2px;
}
body:has(.ry-panel-nav) #main .ry-prospect-share {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
  margin: 0 0 28px;
  padding: 22px 24px;
  border: 1px solid var(--atelier-line);
  background: var(--atelier-surface);
}
body:has(.ry-panel-nav) #main .ry-prospect-share > div {
  min-width: 0;
}
body:has(.ry-panel-nav) #main .ry-prospect-share :is(h2, p) {
  margin: 0 0 8px;
}
body:has(.ry-panel-nav) #main .ry-prospect-share h2 {
  font-size: 20px;
}
body:has(.ry-panel-nav) #main .ry-prospect-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}
body:has(.ry-panel-nav) #main .ry-prospect-filter {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 10px 14px;
  color: var(--atelier-ink);
  font-size: 16px;
  border: 1px solid var(--atelier-control);
  border-bottom: 3px solid transparent;
  background: var(--atelier-surface);
  overflow-wrap: anywhere;
}
body:has(.ry-panel-nav) #main .ry-prospect-filter[aria-current=true] {
  border-bottom-color: var(--atelier-gold);
  background: #e8e5d9;
  font-weight: 700;
}
body:has(.ry-panel-nav) #main .ry-prospect-filter span {
  font-variant-numeric: tabular-nums;
}
body:has(.ry-panel-nav) #main .ry-attention-label {
  color: var(--atelier-gold);
  font-size: 14px;
  line-height: 1.5;
}
body:has(.ry-panel-nav) #main .ry-flow-advanced {
  margin-top: 24px;
  border-top: 1px solid var(--atelier-line);
}
body:has(.ry-panel-nav) #main .ry-flow-advanced > summary {
  min-height: 48px;
  padding-block: 12px;
  cursor: pointer;
  font-size: 16px;
}
@media (max-width: 700px) {
  body:has(.ry-panel-nav) .ry-panel-nav {
    gap: 8px;
    padding-block: 16px;
  }
  body:has(.ry-panel-nav) #main .ry-prospect-share {
    padding: 18px;
  }
  body:has(.ry-panel-nav) #main .ry-prospect-share .partner-actions {
    width: 100%;
  }
}

/* One Master workspace, with alert drafts separate from prospect access. */
body:has(.ry-panel-nav) #main .ry-team-alerts {
  margin-block: 28px 40px;
}
body:has(.ry-panel-nav) #main .ryta-controls {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
body:has(.ry-panel-nav) #main .ryta-notice {
  padding: 14px 18px;
  border-left: 3px solid var(--atelier-gold);
  background: #e8e5d9;
  color: var(--atelier-ink);
}
body:has(.ry-panel-nav) #main .ryta-partner {
  margin-top: 28px;
}
body:has(.ry-panel-nav) #main .ryta-team {
  margin-block: 24px;
  padding: 24px;
  border: 1px solid var(--atelier-line);
  background: var(--atelier-surface);
}
body:has(.ry-panel-nav) #main .ryta-heading {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
body:has(.ry-panel-nav) #main .ryta-badge {
  padding: 6px 10px;
  color: var(--atelier-ink);
  background: #e8e5d9;
  font-size: 14px;
  overflow-wrap: anywhere;
}
body:has(.ry-panel-nav) #main .ryta-team-choice {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-height: 48px;
  padding-block: 10px;
}
body:has(.ry-panel-nav) #main .ryta-team-choice input {
  flex: 0 0 22px;
  margin-top: 3px;
}
body:has(.ry-panel-nav) #main .ryta-team-choice small {
  display: block;
  color: var(--atelier-muted);
}
body:has(.ry-panel-nav) #main .ryta-channel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
body:has(.ry-panel-nav) #main .ryta-channel-grid > div {
  min-width: 0;
}
body:has(.ry-panel-nav) #main .ryta-language {
  margin-top: 24px;
  max-width: 520px;
}
body:has(.ry-panel-nav) #main .ryta-access {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--atelier-line);
}
body:has(.ry-panel-nav) #main .ryta-access h4 {
  margin: 0 0 8px;
  font-size: 16px;
}
body:has(.ry-panel-nav) #main .ryta-channel-id {
  overflow-wrap: anywhere;
  font-variant-numeric: tabular-nums;
}
body:has(.ry-panel-nav) #main .ryta-dirty {
  color: var(--atelier-gold);
  font-weight: 600;
}
body:has(.ry-panel-nav) #main .ry-team-access-options {
  margin-top: 36px;
  padding-top: 12px;
  border-top: 1px solid var(--atelier-line);
}
body:has(.ry-panel-nav) #main .ry-team-access-options > summary {
  min-height: 48px;
  padding-block: 12px;
  color: var(--atelier-ink);
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
}
@media (max-width: 700px) {
  body:has(.ry-panel-nav) #main .ryta-channel-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  body:has(.ry-panel-nav) #main .ryta-team {
    padding: 18px;
  }
}
body:has(.ry-panel-nav) #main :is(.ry-team-access-options, .ryta-partner > details) > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
  min-height: 48px;
  font-size: 16px;
  cursor: pointer;
}
body:has(.ry-panel-nav) #main :is(.ry-team-access-options, .ryta-partner > details) > summary::after {
  content: '';
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-right: 3px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: none;
}
body:has(.ry-panel-nav) #main :is(.ry-team-access-options, .ryta-partner > details)[open] > summary::after {
  transform: rotate(225deg);
}
/* Alert delivery is distinct from draft configuration and prospect access. */
body:has(.ry-panel-nav) #main .ryta-delivery {
  margin-top: 24px;
  padding: 18px;
  border-left: 3px solid var(--atelier-gold);
  background: #f0eee7;
  color: var(--atelier-ink);
}
body:has(.ry-panel-nav) #main .ryta-delivery h4 {
  margin: 0 0 10px;
  font-size: 17px;
}
body:has(.ry-panel-nav) #main .ryta-confirmation {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--atelier-line);
  scroll-margin-block: 24px;
}
body:has(.ry-panel-nav) #main .ryta-confirmation :is(dd, li, time) {
  overflow-wrap: anywhere;
}
body:has(.ry-panel-nav) #main .ryta-confirmation dd {
  margin: 4px 0 16px;
}

/* A manual contact action and concise, provider-accurate send history. */
body:has(.ry-panel-nav) #main .crm-whatsapp-action { margin: 20px 0 28px; }
body:has(.ry-panel-nav) #main .crm-whatsapp-action .button { min-height: 48px; }
body:has(.ry-panel-nav) #main .crm-whatsapp-action .fine { margin: 10px 0 0; max-width: 52ch; }
body:has(.ry-panel-nav) #main .crm-personal-messages { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--atelier-line); }
body:has(.ry-panel-nav) #main .crm-personal-messages h2 { font-size: 20px; line-height: 1.35; }
body:has(.ry-panel-nav) #main .crm-personal-messages p { margin: 6px 0 0; max-width: 60ch; }

body:has(.ry-panel-nav) #main .ry-segment-messages form label {
  display: block;
  margin: 20px 0 8px;
}
body:has(.ry-panel-nav) #main .ry-segment-messages textarea {
  display: block;
  width: 100%;
  min-height: 180px;
  padding: 14px;
  resize: vertical;
  box-sizing: border-box;
}

body:has(.ry-panel-nav) #main .ry-crm-simple {
  margin: 24px 0;
}
body:has(.ry-panel-nav) #main .ry-crm-simple details {
  padding: 16px 0;
  border-top: 1px solid var(--atelier-control);
}
body:has(.ry-panel-nav) #main .ry-crm-simple summary {
  min-height: 48px;
  padding: 12px 0;
  cursor: pointer;
  font-weight: 600;
}
body:has(.ry-panel-nav) #main .ry-crm-simple form label {
  display: block;
  margin: 16px 0;
}
body:has(.ry-panel-nav) #main .ry-crm-simple form :is(input,select,textarea) {
  display: block;
  width: 100%;
  padding: 12px;
  margin-top: 8px;
  box-sizing: border-box;
}

/* Daily work: less chrome, the same paper, type and 48px controls. */
body:has(.ry-panel-nav) #main .ry-prospect-share-compact {
  padding: 0 0 14px;
  margin-bottom: 20px;
  border: 0;
  border-bottom: 1px solid var(--atelier-line);
  background: transparent;
  gap: 4px 16px;
}
body:has(.ry-panel-nav) #main .ry-prospect-share-compact h2 {
  margin: 0;
  font-size: 16px;
  font-weight: 500;
}
body:has(.ry-panel-nav) #main .ry-prospect-share-compact .partner-actions {
  gap: 12px;
  margin: 0;
}
body:has(.ry-panel-nav) #main .ry-prospect-share-compact .button {
  width: auto;
}
body:has(.ry-panel-nav) #main .ry-prospect-tools {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, .65fr);
  align-items: center;
  gap: 12px;
  margin: 20px 0 12px;
}
body:has(.ry-panel-nav) #main .ry-prospect-tools :is(input,select) {
  margin: 0;
  width: 100%;
  min-width: 0;
}
body:has(.ry-panel-nav) #main .ry-prospect-filters {
  gap: 0;
  border-bottom: 1px solid var(--atelier-line);
  margin-bottom: 12px;
}
body:has(.ry-panel-nav) #main .ry-prospect-filter {
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  padding-inline: 16px;
}
body:has(.ry-panel-nav) #main .ry-prospect-filter[aria-current=true] {
  background: transparent;
}
body:has(.ry-panel-nav) #main .ry-crm-next {
  padding: 16px 20px;
  border-left: 3px solid var(--atelier-gold);
  background: #f3f2ee;
  margin: 16px 0;
}
body:has(.ry-panel-nav) #main .ry-crm-next h2 {
  margin: 0 0 6px;
  font-size: 20px;
}
body:has(.ry-panel-nav) #main .ry-crm-next p {
  margin: 0 0 6px;
}
body:has(.ry-panel-nav) #main .ry-crm-next [data-crm=open] {
  margin-top: 6px;
}
body:has(.ry-panel-nav) #main .crm-contact-row {
  padding-block: 16px;
}
body:has(.ry-panel-nav) #main .crm-telegram-action .text-link {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  padding: 10px 18px;
  background: var(--atelier-gold);
  color: var(--atelier-surface);
  text-decoration: none;
  border: 1px solid var(--atelier-gold);
}
@media (max-width: 700px) {
  body:has(.ry-panel-nav) .ry-panel-nav {
    flex-direction: row;
    flex-wrap: wrap;
    padding: 12px 16px;
    gap: 0 16px;
  }
  body:has(.ry-panel-nav) .ry-panel-group-label {
    margin-bottom: 0;
    font-size: 14px;
  }
  body:has(.ry-panel-nav) .ry-panel-link {
    padding: 8px;
  }
  body:has(.ry-panel-nav) .ry-panel-disclosure {
    flex: 1 1 calc(50% - 16px);
    width: auto;
  }
  body:has(.ry-panel-nav) .ry-panel-disclosure[open] {
    flex-basis: 100%;
  }
  body:has(.ry-panel-nav) .ry-panel-disclosure > summary {
    margin: 0;
    padding: 10px 8px;
  }
  body:has(.ry-panel-nav) #main {
    padding-top: 22px;
  }
  body:has(.ry-panel-nav) #main .crm-contacts-title {
    margin-bottom: 16px;
  }
  body:has(.ry-panel-nav) #main .ry-prospect-share-compact .partner-actions {
    width: auto;
  }
  body:has(.ry-panel-nav) #main .ry-prospect-tools {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  body:has(.ry-panel-nav) #main .ry-prospect-filters {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  body:has(.ry-panel-nav) #main .ry-prospect-filter {
    padding: 10px 6px;
    gap: 5px;
    font-size: 14px;
    line-height: 1.4;
    justify-content: center;
  }
  body:has(.ry-panel-nav) #main .ry-crm-next {
    padding: 12px 14px;
    margin: 12px 0;
  }
}
body:has(.ry-panel-nav) #main .ry-crm-next [data-crm=open] {
  background: var(--atelier-gold);
  color: var(--atelier-surface);
  border-color: var(--atelier-gold);
}
@media (max-width: 700px) {
  body:has(.ry-panel-nav) .ry-panel-group:not(.ry-panel-disclosure) .ry-panel-links {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
body:has(.ry-panel-nav) #main .crm-contacts-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px 12px;
}
body:has(.ry-panel-nav) #main .crm-contacts-title h1 {
  margin: 0;
}
body:has(.ry-panel-nav) #main .ry-prospect-share-compact {
  padding: 0;
  margin: 0;
  border: 0;
}
body:has(.ry-panel-nav) #main .ry-prospect-tools #person-search {
  margin: 0;
}
body:has(.ry-panel-nav) #main .ry-crm-next {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}
body:has(.ry-panel-nav) #main .ry-crm-next h2 {
  font-size: 14px;
  color: var(--atelier-muted);
  font-weight: 500;
}
body:has(.ry-panel-nav) #main .ry-crm-next p {
  margin: 0;
}
body:has(.ry-panel-nav) #main .ry-crm-next [data-crm=open] {
  margin: 0;
}
body:has(.ry-panel-nav) #main .ry-crm-next .ry-next-action {
  border: 0;
  margin: 0;
  padding: 0;
}
@media (max-width: 700px) {
  body:has(.ry-panel-nav) .crm-app-header {
    min-height: 64px;
    padding: max(8px, env(safe-area-inset-top)) 16px 8px;
  }
  body:has(.ry-panel-nav) .ry-panel-nav {
    padding-block: 0;
  }
  body:has(.ry-panel-nav) .ry-panel-group-label {
    display: none;
  }
  body:has(.ry-panel-nav) .ry-panel-link {
    line-height: 1.3;
  }
  body:has(.ry-panel-nav) #main .crm-contacts-title h1 {
    font-size: 28px;
  }
  body:has(.ry-panel-nav) #main .ry-prospect-share-compact .button {
    padding-inline: 12px;
  }
  body:has(.ry-panel-nav) #main .ry-crm-next {
    padding: 12px;
    gap: 8px;
  }
  body:has(.ry-panel-nav) #main .ry-crm-next [data-crm=open] {
    padding-inline: 12px;
    white-space: normal;
    max-width: 112px;
  }
}
/* A panel route is loading, not authorized yet: neutral shell only, no navigation. */
body:has(.ry-panel-loading) { background: #f8f6f1; color: #292c27; }
body:has(.ry-panel-loading) .crm-app-header { border-color: #d8d9cf; }
body:has(.ry-panel-loading) .crm-brand,
body:has(.ry-panel-loading) #main p { color: #292c27; }
body:has(.ry-panel-loading) .language { border-color: #838878; }
body:has(.ry-panel-loading) .language button { color: #292c27; min-height: 48px; }
body:has(.ry-panel-loading) .language button[aria-pressed=true] { background: #e8e6d9; }

/* Socio record: one reading column, quiet separators and everyday details. */
body:has(.ry-panel-nav) .ry-person-summary { margin: 24px 0 18px; }
body:has(.ry-panel-nav) .ry-contact-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; padding-block: 18px; border-block: 1px solid var(--atelier-line); }
body:has(.ry-panel-nav) .ry-contact-actions > .text-link { min-height: 44px; display: inline-flex; align-items: center; }
body:has(.ry-panel-nav) .ry-contact-actions .crm-whatsapp-action { margin: 0; }
body:has(.ry-panel-nav) .ry-contact-actions .crm-whatsapp-action p { margin: 8px 0 0; max-width: 42ch; }
body:has(.ry-panel-nav) .ry-person-details { margin-block: 24px; border-bottom: 1px solid var(--atelier-line); padding-bottom: 14px; }
body:has(.ry-panel-nav) .ry-person-details summary { cursor: pointer; min-height: 44px; padding-block: 10px; font-weight: 600; }
body:has(.ry-panel-nav) .ry-person-details .crm-person-facts { margin: 0; }
body:has(.ry-panel-nav) .ry-message-confirm { padding-block: 16px; }
body:has(.ry-panel-nav) .ry-message-confirm .button { margin: 8px 8px 0 0; }
@media (max-width: 600px) {
 body:has(.ry-panel-nav) .crm-contacts-title { flex-wrap: wrap; }
 body:has(.ry-panel-nav) .ry-contact-actions { align-items: flex-start; flex-direction: column; }
 body:has(.ry-panel-nav) .ry-prospect-share-compact { max-width: 100%; }
 body:has(.ry-panel-nav) .ry-prospect-share-compact .button { white-space: normal; }
}
body:has(.ry-panel-nav) .ry-person-heading { display: block; margin-block: 24px; }
body:has(.ry-panel-nav) .ry-person-heading h1 { margin-bottom: 8px; overflow-wrap: anywhere; }
body:has(.ry-panel-nav) .ry-person-heading p { margin: 0; overflow-wrap: anywhere; }

/* Guided administrator workspace: task-first navigation and optional language detail. */
body:has(.ry-panel-nav) .ry-admin-start { margin: 0 0 2rem; }body:has(.ry-panel-nav) .ry-admin-start h2, body:has(.ry-panel-nav) .ry-admin-guide h2 { font-size: 1.2rem; }body:has(.ry-panel-nav) .ry-admin-tasks { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; }body:has(.ry-panel-nav) .ry-admin-task { display: flex; flex-direction: column; gap: .65rem; border: 1px solid #d9d6cf; border-radius: 16px; padding: 1rem; color: inherit; text-decoration: none; background: #fffdf8; min-width: 0; overflow-wrap: anywhere; }body:has(.ry-panel-nav) .ry-admin-task span { color: #776947; font-size: .8rem; }body:has(.ry-panel-nav) .ry-admin-task strong { font-size: 1rem; line-height: 1.4; }body:has(.ry-panel-nav) .ry-admin-task small { line-height: 1.5; color: #5f625e; }body:has(.ry-panel-nav) .ry-admin-task:hover, body:has(.ry-panel-nav) .ry-admin-task:focus-visible { border-color: #58683e; background: #f2f4eb; }body:has(.ry-panel-nav) .ry-admin-guide { padding: 1.25rem; border-radius: 16px; background: #f2f4eb; margin-bottom: 1.5rem; }body:has(.ry-panel-nav) .ry-admin-guide ol { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; list-style: none; padding: 0; }body:has(.ry-panel-nav) .ry-admin-guide a { color: inherit; text-underline-offset: .2em; }body:has(.ry-panel-nav) #teams-create { scroll-margin-top: 1rem; margin-bottom: 2rem; }body:has(.ry-panel-nav) .ry-language-options { border-top: 1px solid #ddd; padding: .8rem 0; }body:has(.ry-panel-nav) .ry-language-options summary { cursor: pointer; font-weight: 650; padding: .4rem 0; }body:has(.ry-panel-nav) .ry-language-options label { display: block; margin-top: .8rem; }body:has(.ry-panel-nav) .ry-confirm dl { overflow-wrap: anywhere; }
@media (max-width:900px) {body:has(.ry-panel-nav) .ry-admin-tasks { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:480px) {body:has(.ry-panel-nav) .ry-admin-tasks { grid-template-columns: minmax(0,1fr); }body:has(.ry-panel-nav) .ry-admin-guide ol { flex-direction: column; }body:has(.ry-panel-nav) .ry-admin-task { padding: 1rem; } }

body:has(.ry-panel-nav) .ry-existing-teams { margin-block: 1.5rem; }
body:has(.ry-panel-nav) .ry-existing-teams .button { margin: 0 .5rem .5rem 0; white-space: normal; text-align: left; overflow-wrap: anywhere; }

/* Organization prospect directory: compact, readable provenance and combined filters. */
body:has(.ry-panel-nav) #main .ry-organization-filters {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0;}
body:has(.ry-panel-nav) #main .ry-organization-filters label {display:grid;gap:6px;font-size:12px;min-width:0;}
body:has(.ry-panel-nav) #main .ry-organization-filters :is(input,select) {width:100%;min-width:0;margin:0;}
body:has(.ry-panel-nav) #main .ry-organization-search,body:has(.ry-panel-nav) #main .ry-organization-filters .partner-actions {grid-column:1/-1;}
body:has(.ry-panel-nav) #main .ry-prospect-attribution b {font-weight:600;}
body:has(.ry-panel-nav) #main .crm-contact-copy :is(span,small),body:has(.ry-panel-nav) #main .ry-detail-attribution {overflow-wrap:anywhere;}
body:has(.ry-panel-nav) #main .ry-detail-attribution {display:grid;gap:7px;padding:14px 0;border-bottom:1px solid var(--atelier-line);font-size:14px;}
body:has(.ry-panel-nav) #main .ry-list-total {font-size:13px;}
body:has(.ry-panel-nav) #main .ry-list-total span {color:var(--atelier-muted);}
body:has(.ry-panel-nav) #main .ry-list-pages {margin-top:20px;justify-content:space-between;}
@media (max-width:600px){body:has(.ry-panel-nav) #main .ry-organization-filters {grid-template-columns:minmax(0,1fr);}body:has(.ry-panel-nav) #main .ry-organization-filters .partner-actions {flex-wrap:wrap;}}

/* Keep the two audiences explicit before the daily prospect list. */
body:has(.ry-panel-nav) #main .ry-invitation-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;margin:20px 0 24px}
body:has(.ry-panel-nav) #main .ry-invitation-links .ry-invitation-card{display:flex;flex-direction:column;gap:10px;min-width:0;margin:0;padding:20px;border:1px solid var(--pa-border,#ddd9cc);border-radius:14px;background:var(--pa-surface,#fffdf8)}
body:has(.ry-panel-nav) #main .ry-invitation-links :is(h2,p){margin:0}
body:has(.ry-panel-nav) #main .ry-invitation-links h2{font-size:18px;line-height:1.3}
body:has(.ry-panel-nav) #main .ry-invitation-links p{font-size:14px;line-height:1.6}
body:has(.ry-panel-nav) #main .ry-invitation-links .ry-share-link{overflow-wrap:anywhere;font-size:13px}
body:has(.ry-panel-nav) #main .ry-invitation-links .partner-actions{margin-top:auto;padding-top:6px}
body:has(.ry-panel-nav) #main .ry-invitation-links .button{min-height:44px;white-space:normal}
@media (max-width:700px){body:has(.ry-panel-nav) #main .ry-invitation-links{grid-template-columns:1fr;gap:12px;margin-top:16px}body:has(.ry-panel-nav) #main .ry-invitation-links .ry-invitation-card{padding:17px}}

/* Daily workspace: invitations first, people in focus, community in the margin. */
body:has(.ry-panel-nav) .ry-dashboard-welcome { padding: 0 0 24px; border-bottom: 1px solid var(--atelier-line); margin-bottom: 24px; }
body:has(.ry-panel-nav) #main .ry-dashboard-welcome h1 { margin: 4px 0 12px; font-size: clamp(28px, 3vw, 42px); line-height: 1.15; }
body:has(.ry-panel-nav) .ry-dashboard-welcome p { margin: 0; max-width: 62ch; }
body:has(.ry-panel-nav) .ry-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, 310px); gap: 40px; align-items: start; margin-top: 36px; }
body:has(.ry-panel-nav) .ry-dashboard-grid > * { min-width: 0; }
body:has(.ry-panel-nav) .ry-dashboard-aside { border-left: 1px solid var(--atelier-line); padding-left: 28px; }
body:has(.ry-panel-nav) .ry-monthly-board { padding-bottom: 28px; }
body:has(.ry-panel-nav) #main .ry-monthly-board h2 { font-size: 25px; margin: 4px 0 8px; }
body:has(.ry-panel-nav) .ry-monthly-rows { list-style: none; padding: 0; margin: 24px 0 0; }
body:has(.ry-panel-nav) .ry-monthly-rows li { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 16px 0; border-top: 1px solid var(--atelier-line); }
body:has(.ry-panel-nav) .ry-monthly-place { color: var(--atelier-gold); font-weight: 700; }
body:has(.ry-panel-nav) .ry-monthly-rows strong { font-size: 16px; overflow-wrap: anywhere; }
body:has(.ry-panel-nav) .ry-monthly-rows li > span:last-child { text-align: right; }
body:has(.ry-panel-nav) .ry-monthly-rows b { font-size: 23px; font-weight: 500; font-variant-numeric: tabular-nums; }
body:has(.ry-panel-nav) .ry-monthly-rows small { display: block; font-size: 12px; color: var(--atelier-muted); }
body:has(.ry-panel-nav) .ry-contact-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 20px; margin: 24px 0; padding: 24px 0; }
body:has(.ry-panel-nav) .ry-contact-actions :is(.ry-action-item, .crm-whatsapp-action) { min-width: 0; }
body:has(.ry-panel-nav) #main .ry-contact-actions .button { width: 100%; min-height: 52px; padding: 12px 16px; white-space: normal; line-height: 1.4; }
body:has(.ry-panel-nav) .ry-contact-actions .fine { margin: 10px 0 0; font-size: 14px; line-height: 1.5; }
body:has(.ry-panel-nav) .ry-contact-actions button:disabled { opacity: 1; color: var(--atelier-muted); background: #f3f2ee; border-style: dashed; cursor: not-allowed; }
body:has(.ry-panel-nav) .ry-admin-start { margin: 24px 0; }
@media (max-width: 1150px) {
 body:has(.ry-panel-nav) .ry-dashboard-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
 body:has(.ry-panel-nav) .ry-dashboard-aside { border-left: 0; border-top: 1px solid var(--atelier-line); padding: 28px 0 0; }
}
@media (max-width: 700px) {
 body:has(.ry-panel-nav) .ry-contact-actions { grid-template-columns: minmax(0, 1fr); gap: 16px; }
 body:has(.ry-panel-nav) .ry-dashboard-grid { margin-top: 24px; }
 body:has(.ry-panel-nav) .ry-panel-group-label { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
 body:has(.ry-panel-nav) .ry-panel-group:not(.ry-panel-disclosure) .ry-panel-links { display: flex; flex-wrap: wrap; }
 body:has(.ry-panel-nav) .ry-panel-link { flex: 1 1 150px; }
}
@media (max-width: 700px) {
 body:has(.ry-panel-nav) .crm-detail { scroll-margin-top: 16px; }
 body:has(.ry-panel-nav) .crm-detail :is(.ry-person-heading, .crm-contact-heading) { margin-bottom: 16px; }
 body:has(.ry-panel-nav) .crm-detail .ry-person-summary { padding-block: 12px; }
 body:has(.ry-panel-nav) .crm-detail .ry-contact-actions { margin-block: 16px; padding-block: 16px; gap: 12px; }
 body:has(.ry-panel-nav) .crm-detail .ry-contact-actions .fine { margin-top: 6px; }
}
body:has(.ry-panel-nav) #main .ry-tutorial-share{grid-column:1/-1}

/* V1 Renovada: an application workspace, not a decorative document.
   Authentication and application behavior remain owned by the mounted modules. */
body:has(.ry-panel-nav) {
  font-family: Manrope, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 14px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body:has(.ry-panel-nav) [hidden] { display: none !important; }
body:has(.ry-panel-nav) :is(#app, #app > [inert]):has(> .ry-panel-nav) {
  grid-template-columns: 248px minmax(0, 1fr);
  grid-template-rows: 76px minmax(0, 1fr);
}
body:has(.ry-panel-nav) .crm-app-header {
  grid-column: 2;
  grid-row: 1;
  min-height: 76px;
  padding: 12px 36px;
  background: #fbfaf7;
  border-bottom: 1px solid #e8e8e6;
  gap: 16px;
}
body:has(.ry-panel-nav) .crm-brand { font-size: 12px; letter-spacing: .07em; font-weight: 700; }
body:has(.ry-panel-nav) .language { background: #eeefed; border-radius: 10px; padding: 3px; gap: 2px; }
body:has(.ry-panel-nav) .language button { min-width: 44px; min-height: 44px; padding: 8px; border: 0; border-radius: 8px; font-size: 11px; }
body:has(.ry-panel-nav) .language button[aria-pressed=true] { background: #fff; color: #644b22; border: 0; box-shadow: 0 1px 4px #181c240b; }
body:has(.ry-panel-nav) .ry-panel-nav {
  grid-column: 1;
  grid-row: 1 / 3;
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 100svh;
  max-height: 100svh;
  padding: 26px 14px 22px;
  gap: 22px;
  border: 0;
  background: #191a18;
  color: #f7f7f3;
  scrollbar-width: thin;
  scrollbar-color: #56564d #191a18;
}
body:has(.ry-panel-nav) .ry-sidebar-brand { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 10px 16px; color: #fafaf6; font-size: 14px; font-weight: 750; letter-spacing: .035em; }
body:has(.ry-panel-nav) .ry-sidebar-brand img { max-width: 186px; height: auto; }
body:has(.ry-panel-nav) .ry-sidebar-brand svg { color: #d2b577; width: 30px; height: 30px; flex: 0 0 30px; }
body:has(.ry-panel-nav) .ry-panel-group-label { display: block; padding: 0 14px; margin-bottom: 6px; color: #a2a59c; font-size: 10px; line-height: 1.5; letter-spacing: .09em; text-transform: uppercase; font-weight: 650; }
body:has(.ry-panel-nav) .ry-panel-links { gap: 4px; }
body:has(.ry-panel-nav) .ry-panel-link {
  min-height: 48px;
  padding: 12px 14px;
  gap: 12px;
  border: 0;
  border-radius: 10px;
  color: #e6e7e1;
  font-size: 13px;
  font-weight: 550;
  line-height: 1.5;
  transition: background-color 140ms ease, color 140ms ease;
}
body:has(.ry-panel-nav) .ry-panel-link:hover { background: #ffffff0a; border: 0; color: #fff; }
body:has(.ry-panel-nav) .ry-panel-link[aria-current=page] { background: #b69a5c26; color: #f4e7c9; border: 0; box-shadow: inset 3px 0 #c6a363; font-weight: 700; }
body:has(.ry-panel-nav) .ry-nav-icon { display: inline-flex; width: 20px; height: 20px; flex: 0 0 20px; color: #b7baaf; }
body:has(.ry-panel-nav) .ry-nav-icon svg { display: block; width: 100%; height: 100%; }
body:has(.ry-panel-nav) [aria-current=page] .ry-nav-icon { color: #d6b776; }
body:has(.ry-panel-nav) .ry-nav-label { min-width: 0; }
body:has(.ry-panel-nav) .ry-panel-disclosure { border: 0; padding: 0; }
body:has(.ry-panel-nav) .ry-panel-disclosure > summary { color: #daddd3; padding: 12px 14px; border: 0; border-radius: 10px; font-size: 13px; font-weight: 600; background: transparent; }
body:has(.ry-panel-nav) .ry-panel-disclosure[open] > summary { color: #f4e7c9; background: #ffffff06; border: 0; }
body:has(.ry-panel-nav) .ry-panel-nav :focus-visible { outline-color: #ddbf80; outline-offset: 2px; }
body:has(.ry-panel-nav) .ry-sidebar-account { display: flex; align-items: center; gap: 12px; padding: 20px 10px 0; margin-top: auto; border-top: 1px solid #ffffff13; color: #fff; }
body:has(.ry-panel-nav) .ry-sidebar-account strong { display: block; font-size: 13px; font-weight: 650; }
body:has(.ry-panel-nav) .ry-sidebar-account small { color: #b5b9af; font-size: 11px; }
body:has(.ry-panel-nav) .ry-sidebar-account .crm-avatar { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: #b69a5c; color: #191a18; flex: 0 0 38px; font-weight: 700; }
body:has(.ry-panel-nav) #main { width: calc(100% - 72px); max-width: 1440px; padding: 34px 0 64px; }
body:has(.ry-panel-nav) .ry-workspace-topbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; min-width: 0; }
body:has(.ry-panel-nav) .ry-workspace-topbar p { color: var(--atelier-muted); font-size: 12px; }
body:has(.ry-panel-nav) #main :is(h1, .ryc-heading h2):not(:where(.ry-device *)) { font-size: clamp(28px, 2.5vw, 38px); font-weight: 750; letter-spacing: -.045em; line-height: 1.2; margin-bottom: 12px; }
body:has(.ry-panel-nav) #main h2:not(:where(.ry-device *)) { font-size: 21px; font-weight: 750; letter-spacing: -.03em; }
body:has(.ry-panel-nav) #main h3:not(:where(.ry-device *)) { font-size: 16px; font-weight: 700; letter-spacing: -.02em; }
body:has(.ry-panel-nav) #main :is(p, .partner-intro, .crm-human-status):not(:where(.ry-device *)) { font-size: 14px; line-height: 1.65; }
body:has(.ry-panel-nav) #main label { font-size: 13px; font-weight: 600; }
body:has(.ry-panel-nav) #main :where(input:not([type=checkbox]):not([type=radio]):not([type=file]), select, textarea) { border-color: #878d96; background: #fcfcfc; border-radius: 10px; min-height: 48px; padding: 11px 13px; }
body:has(.ry-panel-nav) #main :is(.button, .ry-org button, .ry-pi button, .ry-routing button, .ry-flow-stage-list button, .ry-flow-tabs button) { border: 1px solid transparent; border-radius: 10px; background: #eeefef; color: #252b35; min-height: 44px; padding: 11px 16px; gap: 8px; font-size: 13px; font-weight: 650; line-height: 1.5; box-shadow: none; transition: background-color 140ms ease, box-shadow 140ms ease, border-color 140ms ease; }
body:has(.ry-panel-nav) #main :is(.button.primary, button[type=submit], .ry-flow-stage-list button[aria-pressed=true], .ry-flow-tabs button[aria-selected=true], .ry-flow-tabs button[aria-pressed=true]) { border-color: transparent; background: #8b662f; color: #fff; }
body:has(.ry-panel-nav) #main :is(.button, .ry-org button, .ry-pi button, .ry-routing button):hover:not(:disabled) { background: #e5e6e4; border-color: transparent; color: #181c24; }
body:has(.ry-panel-nav) #main :is(.button.primary, button[type=submit]):hover:not(:disabled) { background: #806029; border-color: transparent; color: #fff; }
body:has(.ry-panel-nav) #main :is(.text-button, .text-link, .button.text-button) { background: transparent; color: #856127; font-size: 13px; border: 0; padding: 10px 0; text-underline-offset: 4px; }
body:has(.ry-panel-nav) #main :is(.partner-card, .ry-org article, .ry-org section, .ry-pi article, .ry-pi form, .ry-pi section, .ry-routing, .ryc-card, .ryc-insight, .ryc-empty) { background: #fff; border: 0; border-radius: 16px; padding: 24px; margin: 20px 0; box-shadow: 0 5px 24px #282d3804; }
body:has(.ry-panel-nav) #main :is(.partner-status, .status, .tiny-tag) { border: 0; background: #edf2e9; color: #44603d; border-radius: 20px; padding: 5px 10px; font-size: 11px; font-weight: 600; }
body:has(.ry-panel-nav) #main :is(.ry-confirm, .ry-flow-notice, .ry-flow-inventory, .crm-note, .ryta-notice, .ryta-delivery) { border-radius: 12px; background: #f1ede3; border: 0; padding: 18px 20px; }
body:has(.ry-panel-nav) #main .crm-note { color: #343a43; }
body:has(.ry-panel-nav) #main :is(.crm-card, .crm-cards) { border: 0; }
body:has(.ry-panel-nav) #main .crm-card + .crm-card { border-top: 1px solid #e9e9e6; }
body:has(.ry-panel-nav) #main .crm-contact-row { min-height: 82px; padding: 16px 12px; border-radius: 12px; gap: 14px; transition: background-color 140ms ease; }
body:has(.ry-panel-nav) #main .crm-contact-row:hover { background: #eeebe3; }
body:has(.ry-panel-nav) #main .crm-contact-copy strong { font-size: 15px; font-weight: 750; }
body:has(.ry-panel-nav) #main .crm-contact-row:hover strong { text-decoration: none; }
body:has(.ry-panel-nav) #main .crm-contact-copy > span { font-size: 12px; }
body:has(.ry-panel-nav) #main .crm-row-arrow { display: block; color: #9197a0; font-size: 22px; }
body:has(.ry-panel-nav) #main :is(.crm-avatar, .avatar) { border-radius: 50%; background: #eae3d4; color: #665231; font-weight: 650; }
body:has(.ry-panel-nav) #main .ry-dashboard-welcome { border: 0; margin-bottom: 16px; padding-bottom: 12px; }
body:has(.ry-panel-nav) #main .ry-dashboard-welcome h1 { font-size: clamp(28px, 2.8vw, 40px); }
body:has(.ry-panel-nav) #main .ry-dashboard-welcome .eyebrow { font-size: 10px; letter-spacing: .1em; }
body:has(.ry-panel-nav) #main .ry-dashboard-welcome > p:last-child { font-size: 16px; }
body:has(.ry-panel-nav) #main .ry-invitation-links { gap: 14px; margin: 20px 0 26px; }
body:has(.ry-panel-nav) #main .ry-invitation-links .ry-invitation-card { border: 0; background: #ffffff80; border-radius: 14px; padding: 20px; box-shadow: none; }
body:has(.ry-panel-nav) #main .ry-invitation-links :is(h2,h3) { font-size: 15px; }
body:has(.ry-panel-nav) #main .ry-invitation-links p { font-size: 12px; }
body:has(.ry-panel-nav) #main .ry-owner-account { border: 0; padding: 0; }
body:has(.ry-panel-nav) #main .ry-owner-account > h2 { font-size: 15px; }
body:has(.ry-panel-nav) .ry-dashboard-grid { gap: 28px; margin-top: 28px; }
body:has(.ry-panel-nav) .ry-dashboard-aside { padding-left: 24px; }
body:has(.ry-panel-nav) #main .ry-monthly-board h2 { font-size: 20px; }
body:has(.ry-panel-nav) .ry-monthly-rows { margin-top: 16px; }
body:has(.ry-panel-nav) .ry-monthly-rows li { gap: 10px; padding: 14px 0; }
body:has(.ry-panel-nav) .ry-monthly-rows strong { font-size: 13px; }
body:has(.ry-panel-nav) .ry-monthly-rows b { font-size: 18px; font-weight: 650; }
body:has(.ry-panel-nav) #main .ry-prospect-filters { display: flex; flex-wrap: wrap; gap: 6px; border: 0; margin: 16px 0; }
body:has(.ry-panel-nav) #main .ry-prospect-filter { border: 0; border-radius: 24px; background: #eeefef; padding: 10px 14px; font-size: 12px; }
body:has(.ry-panel-nav) #main .ry-prospect-filter[aria-current=true] { border: 0; background: #8b662f; color: #fff; }
body:has(.ry-panel-nav) #main .ry-crm-next { border: 0; border-radius: 12px; background: #ede8dc; padding: 16px 18px; }
body:has(.ry-panel-nav) #main :is(.ryc-metrics, .ry-org-metrics, .summary-grid) { gap: 12px; border: 0; margin: 22px 0; }
body:has(.ry-panel-nav) #main :is(.ryc-metrics article, .ry-org-metrics p, .summary-grid > div) { border: 0; border-radius: 14px; background: #fff; padding: 20px; }
body:has(.ry-panel-nav) #main :is(.ryc-metrics strong, .ry-org-metrics strong, .summary-grid strong, .ryc-insight strong) { font-size: clamp(26px, 3vw, 38px); font-weight: 700; }
body:has(.ry-panel-nav) #main :is(th,td,.ryc-root th,.ryc-root td) { padding: 15px 12px; font-size: 13px; }
body:has(.ry-panel-nav) #main :is(th,.ryc-root th) { background: #f2f3f2; color: #49505c; font-weight: 650; letter-spacing: 0; }
body:has(.ry-panel-nav) #main .ry-contact-actions { border: 0; gap: 10px; padding: 12px 0; margin: 16px 0; }
body:has(.ry-panel-nav) #main .ry-contact-actions .button { font-size: 12px; min-height: 48px; padding: 11px 12px; }
body:has(.ry-panel-nav) #main .ry-contact-actions .fine { font-size: 11px !important; }
body:has(.ry-panel-nav) #main .ry-contact-actions button:disabled { background: #ededeb; color: #717783; border: 0; }
body:has(.ry-panel-nav) #main .crm-composer { border: 1px solid #e4e6ea; background: #fff; border-radius: 12px; padding: 16px; }
body:has(.ry-panel-nav) #main .ry-person-summary { margin: 14px 0; }
body:has(.ry-panel-nav) #main .ry-person-heading { margin: 16px 0; }
body:has(.ry-panel-nav) #main .ry-admin-tasks { gap: 12px; }
body:has(.ry-panel-nav) #main .ry-admin-task { background: #fff; border: 0; border-radius: 14px; padding: 18px; transition: box-shadow 140ms ease, background-color 140ms ease; }
body:has(.ry-panel-nav) #main .ry-admin-task:hover { background: #fff; box-shadow: 0 6px 22px #21242c09; }
body:has(.ry-panel-nav) #main .ry-admin-task span { color: #8b662f; }
body:has(.ry-panel-nav) #main .ry-admin-task strong { font-size: 14px; }
body:has(.ry-panel-nav) #main .ry-admin-guide { background: #ede8dc; border-radius: 14px; }

/* Directory and detail are separate panes; no controls are visually hidden. */
body:has(.ry-panel-nav) #main .ry-directory-layout { display: grid; grid-template-columns: minmax(200px, 260px) minmax(0, 1fr); gap: 20px; align-items: start; margin: 24px 0; }
body:has(.ry-panel-nav) #main :is(.ry-directory-list, .ry-directory-detail) { min-width: 0; margin: 0; border: 0; border-radius: 18px; padding: 22px; background: #fff; box-shadow: 0 5px 28px #282d3804; }
body:has(.ry-panel-nav) #main .ry-directory-list { position: sticky; top: 22px; padding: 18px 12px; }
body:has(.ry-panel-nav) #main .ry-directory-list :is(h2,label) { margin-inline: 8px; }
body:has(.ry-panel-nav) #main .ry-directory-list button { width: 100%; margin: 3px 0; justify-content: flex-start; text-align: left; background: transparent; border: 0; }
body:has(.ry-panel-nav) #main .ry-directory-list button[aria-pressed=true],
body:has(.ry-panel-nav) #main .ry-directory-list button[aria-current=true] { background: #f2ede3; color: #6d5125; box-shadow: inset 3px 0 #b69a5c; }
body:has(.ry-panel-nav) #main .ry-directory-detail :is(article,section,form) { box-shadow: none; border-radius: 0; padding: 18px 0; background: transparent; }
body:has(.ry-panel-nav) #main .ry-person-tabs { display: flex; flex-wrap: wrap; gap: 6px 14px; padding: 0; border-bottom: 1px solid var(--atelier-line); margin: 20px 0; }
body:has(.ry-panel-nav) #main .ry-person-tab { border: 0; border-bottom: 2px solid transparent; border-radius: 0; padding: 12px 8px; margin: 0; background: transparent; color: #626c7b; }
body:has(.ry-panel-nav) #main .ry-person-tab[aria-selected=true],
body:has(.ry-panel-nav) #main .ry-person-tab[aria-current=page] { background: transparent; border-bottom-color: #b69a5c; color: #856127; font-weight: 750; }
@media (min-width: 1600px) {
  body:has(.ry-panel-nav) #main { width: calc(100% - 96px); }
}
@media (max-width: 1200px) and (min-width: 1025px) {
  body:has(.ry-panel-nav) :is(#app, #app > [inert]):has(> .ry-panel-nav) { grid-template-columns: 220px minmax(0, 1fr); }
  body:has(.ry-panel-nav) .crm-app-header { padding-inline: 24px; }
  body:has(.ry-panel-nav) #main { width: calc(100% - 48px); }
  body:has(.ry-panel-nav) #main .ry-directory-layout { grid-template-columns: 210px minmax(0, 1fr); gap: 14px; }
  body:has(.ry-panel-nav) #main .ry-directory-detail { padding: 18px; }
}
@media (max-width: 1024px) {
  body:has(.ry-panel-nav) :is(#app, #app > [inert]):has(> .ry-panel-nav) { display: block; }
  body:has(.ry-panel-nav) .crm-app-header { min-height: 64px; padding: 10px 24px; }
  body:has(.ry-panel-nav) .ry-panel-nav { height: auto; min-height: 0; max-height: none; position: static; flex-direction: row; flex-wrap: wrap; gap: 12px; padding: 14px 20px; overflow: visible; }
  body:has(.ry-panel-nav) .ry-sidebar-brand { display: none; }
  body:has(.ry-panel-nav) .ry-panel-group { flex: 1 1 190px; width: auto; }
  body:has(.ry-panel-nav) .ry-panel-group-label { font-size: 9px; }
  body:has(.ry-panel-nav) .ry-panel-links { display: flex; flex-wrap: wrap; gap: 4px; }
  body:has(.ry-panel-nav) .ry-panel-link { flex: 1 1 140px; padding: 10px 12px; font-size: 12px; }
  body:has(.ry-panel-nav) .ry-sidebar-account { width: 100%; padding: 10px 8px 0; margin: 0; }
  body:has(.ry-panel-nav) #main { width: calc(100% - 48px); padding-top: 28px; }
  body:has(.ry-panel-nav) #main .ry-directory-layout { grid-template-columns: 220px minmax(0, 1fr); }
  body:has(.ry-panel-nav) .ry-directory-list { position: static; }
}
@media (max-width: 700px) {
  body:has(.ry-panel-nav) .crm-app-header { padding: max(10px, env(safe-area-inset-top)) 16px 10px; gap: 10px; }
  body:has(.ry-panel-nav) .crm-brand { font-size: 10px; letter-spacing: .025em; }
  body:has(.ry-panel-nav) .language { gap: 0; }
  body:has(.ry-panel-nav) .language button { min-width: 44px; min-height: 44px; padding: 7px; }
  body:has(.ry-panel-nav) .ry-panel-nav { gap: 8px; padding: 12px; }
  body:has(.ry-panel-nav) .ry-panel-group { flex-basis: 100%; }
  body:has(.ry-panel-nav) .ry-panel-group:not(.ry-panel-disclosure) .ry-panel-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body:has(.ry-panel-nav) .ry-panel-link { min-height: 44px; padding: 10px; font-size: 12px; gap: 8px; }
  body:has(.ry-panel-nav) .ry-panel-group-label { display: none; }
  body:has(.ry-panel-nav) .ry-panel-disclosure { flex-basis: calc(50% - 8px); }
  body:has(.ry-panel-nav) .ry-panel-disclosure[open] { flex-basis: 100%; }
  body:has(.ry-panel-nav) .ry-panel-disclosure > summary { min-height: 44px; padding: 10px; font-size: 12px; }
  body:has(.ry-panel-nav) #main { width: calc(100% - 32px); padding: 24px 0 max(40px, env(safe-area-inset-bottom)); }
  body:has(.ry-panel-nav) #main :is(h1,.ryc-heading h2):not(:where(.ry-device *)),
  body:has(.ry-panel-nav) #main .ry-dashboard-welcome h1 { font-size: 28px; }
  body:has(.ry-panel-nav) #main :is(h2,.ry-monthly-board h2):not(:where(.ry-device *)) { font-size: 20px; }
  body:has(.ry-panel-nav) #main .ry-dashboard-welcome > p:last-child { font-size: 14px; }
  body:has(.ry-panel-nav) #main .ry-invitation-links { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  body:has(.ry-panel-nav) #main .ry-invitation-links .ry-invitation-card { padding: 16px; }
  body:has(.ry-panel-nav) #main .ry-directory-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  body:has(.ry-panel-nav) #main :is(.ry-directory-list,.ry-directory-detail) { position: static; padding: 16px; }
  body:has(.ry-panel-nav) #main .ry-person-tabs { gap: 4px; }
  body:has(.ry-panel-nav) #main .ry-person-tab { padding-inline: 8px; font-size: 12px; }
  body:has(.ry-panel-nav) #main .ry-contact-actions { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  body:has(.ry-panel-nav) #main :is(.partner-card,.ry-pi article,.ry-pi form,.ry-pi section,.ry-routing,.ryc-card,.ryc-insight,.ryc-empty) { padding: 18px; }
  body:has(.ry-panel-nav) #main .crm-contact-row { padding: 14px 6px; }
  body:has(.ry-panel-nav) #main .ry-prospect-filters { display: flex; flex-wrap: wrap; gap: 6px; }
  body:has(.ry-panel-nav) #main .ry-prospect-filter { flex: 1 1 auto; padding: 10px 12px; }
  body:has(.ry-panel-nav) #main :is(.ryc-metrics article,.ry-org-metrics p,.summary-grid > div) { padding: 16px; border: 0; }
  body:has(.ry-panel-nav) .ry-dashboard-aside { padding: 22px 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  body:has(.ry-panel-nav), body:has(.ry-panel-nav) *, body:has(.ry-panel-nav) *::before, body:has(.ry-panel-nav) *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
body:has(.ry-panel-nav) #main .ry-directory-person { display: flex; align-items: center; gap: 12px; min-width: 0; }
body:has(.ry-panel-nav) #main .ry-directory-person > :last-child { min-width: 0; }
body:has(.ry-panel-nav) #main .ry-directory-avatar { display: inline-grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; border-radius: 50%; background: #eae3d4; color: #665231; font-weight: 750; font-size: 14px; }
body:has(.ry-panel-nav) #main .ry-directory-detail > .ry-directory-person .ry-directory-avatar { flex-basis: 56px; width: 56px; height: 56px; font-size: 18px; }
body:has(.ry-panel-nav) #main .ry-workspace-links { margin: 18px 0; padding: 0; list-style: none; }
body:has(.ry-panel-nav) #main .ry-workspace-links > * { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid #e8e8e6; padding: 14px 0; min-width: 0; }
body:has(.ry-panel-nav) #main .ry-workspace-links :is(p,a,span,dd) { overflow-wrap: anywhere; min-width: 0; }
body:has(.ry-panel-nav) #main .ry-channel-table { width: 100%; table-layout: fixed; }
body:has(.ry-panel-nav) #main .ry-channel-table :is(th,td) { overflow-wrap: anywhere; min-width: 0; }
@media (max-width:700px) {
  body:has(.ry-panel-nav) #main .ry-channel-table :is(th,td) { font-size: 12px; padding: 12px 6px; }
  body:has(.ry-panel-nav) #main .ry-workspace-links > * { align-items: flex-start; }
}
body:has(.ry-panel-nav) #main .ry-directory-person.is-selected { background: #f2ede3; color: #6d5125; box-shadow: inset 3px 0 #b69a5c; }
body:has(.ry-panel-nav) #main .ry-directory-person strong { font-size: 13px; font-weight: 650; margin: 0; }
body:has(.ry-panel-nav) #main .ry-directory-person small { display: block; font-size: 11px; color: #626c7b; }
body:has(.ry-panel-nav) #main .ry-directory-person-header { display: flex; align-items: center; gap: 16px; padding-bottom: 6px; }
body:has(.ry-panel-nav) #main .ry-directory-person-header h2 { margin: 0 0 5px; font-size: 23px; }
body:has(.ry-panel-nav) #main .ry-directory-person-header .ry-directory-avatar { width: 56px; height: 56px; flex-basis: 56px; font-size: 20px; }
body:has(.ry-panel-nav) #main .ry-directory-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 24px 0; }
body:has(.ry-panel-nav) #main .ry-directory-summary dt { font-size: 12px; color: #626c7b; }
body:has(.ry-panel-nav) #main .ry-directory-summary dd { font-size: 15px; font-weight: 650; margin: 5px 0 0; color: #181c24; }
body:has(.ry-panel-nav) #main .ry-directory-content { min-width: 0; }
body:has(.ry-panel-nav) #main .ry-directory-content .ry-workspace-link { display: grid; grid-template-columns: minmax(100px,.6fr) minmax(0,1fr); margin: 0; padding: 15px 0; gap: 8px 16px; border-bottom: 1px solid #e8e8e6; }
body:has(.ry-panel-nav) #main .ry-workspace-link .ry-share-link { grid-column: 2; font-size: 12px; }
body:has(.ry-panel-nav) #main .ry-workspace-link .partner-actions { grid-column: 2; margin: 0; }
body:has(.ry-panel-nav) #main .ry-directory-team { margin: 18px 0; }
body:has(.ry-panel-nav) #main .ry-channel-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
@media (max-width:700px) {
  body:has(.ry-panel-nav) #main .ry-directory-summary { grid-template-columns: minmax(0,1fr); gap: 16px; }
  body:has(.ry-panel-nav) #main .ry-directory-content .ry-workspace-link { grid-template-columns: minmax(0,1fr); }
  body:has(.ry-panel-nav) #main .ry-workspace-link :is(.ry-share-link,.partner-actions) { grid-column: 1; }
}
body:has(.ry-panel-nav) .ry-workspace-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; min-width: 0; margin-right: auto; color: #626c7b; font-size: 12px; }
body:has(.ry-panel-nav) .ry-workspace-breadcrumb strong { color: #181c24; font-weight: 650; }
@media (min-width:1025px) { body:has(.ry-panel-nav) .ry-workspace-topbar .crm-brand { display: none; } }
@media (max-width:700px) {
 body:has(.ry-panel-nav) .ry-workspace-topbar { flex-wrap: wrap; }
 body:has(.ry-panel-nav) .ry-workspace-breadcrumb { order: 3; width: 100%; font-size: 11px; gap: 8px; }
}
body:has(.ry-panel-nav) #main .ry-channel-table { min-width: 560px; }
body:has(.ry-panel-nav) #main .ry-channel-table th:first-child { width: 19%; }
body:has(.ry-panel-nav) #main .ry-channel-table :is(th,td):last-child { width: 20%; }
body:has(.ry-panel-nav) #main .ry-channel-table .button { padding-inline: 8px; font-size: 12px; }
/* Legacy landing FAQs rotate summary spans. In navigation only the chevron moves. */
body:has(.ry-panel-nav) .ry-panel-disclosure > summary > :is(.ry-nav-label, .ry-nav-icon),
body:has(.ry-panel-nav) .ry-panel-disclosure[open] > summary > :is(.ry-nav-label, .ry-nav-icon) { transform: none; color: inherit; }
body:has(.ry-panel-nav) .ry-panel-disclosure > summary > .ry-nav-label { flex: 1 1 auto; text-align: left; }

/* Conversations are customer-facing records, never a technical event log. */
body:has(.ry-panel-nav) .ry-conversations {max-width:960px;margin-inline:auto}
body:has(.ry-panel-nav) .ry-conversation-list {display:grid;gap:10px;margin-block:20px}
body:has(.ry-panel-nav) .ry-conversation-list .crm-contact-row {width:100%;text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e3dc;border-radius:16px;padding:18px;display:flex;gap:14px}
body:has(.ry-panel-nav) .crm-contact-copy {display:grid;gap:5px;min-width:0}
body:has(.ry-panel-nav) .crm-contact-copy>span {overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:65vw}
body:has(.ry-panel-nav) .ry-conversation-thread {display:flex;flex-direction:column;gap:14px;margin-block:24px}
body:has(.ry-panel-nav) .ry-chat-message {width:min(88%,680px);padding:18px 20px;border-radius:18px;background:#fff;border:1px solid #e5e3dc;overflow-wrap:anywhere}
body:has(.ry-panel-nav) .ry-chat-message.outgoing {align-self:flex-end;background:#f1ebdc;border-color:#e5d9bd}
body:has(.ry-panel-nav) .ry-chat-message header {display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
body:has(.ry-panel-nav) .ry-chat-message p,body:has(.ry-panel-nav) .ry-message-preview {white-space:pre-wrap}
body:has(.ry-panel-nav) .ry-chat-message small {font-size:12px;color:#65665f}
body:has(.ry-panel-nav) .ry-conversations textarea {width:100%;margin-block:8px 14px;resize:vertical}
body:has(.ry-panel-nav) .ry-message-confirm {padding:22px;border:1px solid #cbb985;border-radius:18px;background:#fff}
body:has(.ry-panel-nav) .ry-message-count {display:inline-flex;align-items:center;justify-content:center;min-width:23px;padding:2px 6px;background:#d3b778;color:#191a18;border-radius:20px;font-size:12px;margin-left:auto}

/* CRM workspaces keep the important actions on the page, not in option menus. */
body:has(.ry-panel-nav) .crm-groups>header {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
body:has(.ry-panel-nav) .crm-groups>header h2 {margin:0 auto 0 0;font-size:clamp(25px,3vw,36px);letter-spacing:-.04em}
body:has(.ry-panel-nav) .crm-groups>nav {display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}
body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) button {border:1px solid #dcd9d0;border-radius:11px;padding:10px 15px;background:#fff;color:#30332d;font:600 13px Manrope,Arial,sans-serif;cursor:pointer;min-height:42px}
body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) button:hover {background:#f4f0e7;border-color:#b69a5c}
body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) button:disabled {opacity:.5;cursor:not-allowed}
body:has(.ry-panel-nav) .crm-groups button[aria-pressed=true],body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) button[type=submit] {background:#2b3028;border-color:#2b3028;color:#fff}
body:has(.ry-panel-nav) :is(.crm-groups>section,#ry-crm-tags>section,.ry-pending-partner) {background:#fff;border:1px solid #e5e3dc;border-radius:18px;padding:24px;margin-block:20px}
body:has(.ry-panel-nav) .crm-groups form[data-groups-form=filters],body:has(.ry-panel-nav) .ry-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body:has(.ry-panel-nav) .crm-groups form[data-groups-form=filters] {background:#fff;padding:24px;border:1px solid #e5e3dc;border-radius:18px}
body:has(.ry-panel-nav) .crm-groups label,body:has(.ry-panel-nav) #ry-crm-tags label,body:has(.ry-panel-nav) .ry-partner-conversion label {display:grid;gap:7px;font-size:13px;font-weight:600;color:#50534b}
body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) label:has(input[type=checkbox]),body:has(.ry-panel-nav) .crm-groups label:has(input[type=radio]) {display:flex;gap:9px;align-items:center;font-weight:500}
body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) input:is([type=checkbox],[type=radio]) {width:17px;height:17px;margin:0;accent-color:#8b662f;flex:none}
body:has(.ry-panel-nav) :is(.crm-groups,#ry-crm-tags) fieldset {border:1px solid #e5e3dc;border-radius:12px;display:flex;gap:12px;flex-wrap:wrap;padding:14px}
body:has(.ry-panel-nav) .crm-groups ul {list-style:none;padding:0;display:grid;gap:8px;margin-block:18px}
body:has(.ry-panel-nav) .crm-groups li {padding:12px 0;border-bottom:1px solid #efede7;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
body:has(.ry-panel-nav) .crm-groups article {border-bottom:1px solid #e5e3dc;padding-block:14px}
body:has(.ry-panel-nav) .crm-groups time {font-size:12px;color:#72756c}
body:has(.ry-panel-nav) .crm-groups pre {font:inherit;overflow-wrap:anywhere}
body:has(.ry-panel-nav) .ry-partner-conversion {max-width:840px}
body:has(.ry-panel-nav) .ry-partner-conversion dl {display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px}
body:has(.ry-panel-nav) .ry-partner-conversion dd {margin:0;overflow-wrap:anywhere}
body:has(.ry-panel-nav) .ry-partner-conversion form>.button {margin-top:20px}
body:has(.ry-panel-nav) #ry-crm-tags form {margin-block:12px}
@media (max-width:600px){body:has(.ry-panel-nav) .crm-groups form[data-groups-form=filters],body:has(.ry-panel-nav) .ry-form-grid {grid-template-columns:1fr}body:has(.ry-panel-nav) :is(.crm-groups>section,#ry-crm-tags>section,.ry-pending-partner) {padding:18px}body:has(.ry-panel-nav) .ry-partner-conversion dl {grid-template-columns:1fr;gap:5px}body:has(.ry-panel-nav) .ry-partner-conversion dd {margin-bottom:10px}}

/* Compact sharing shortcuts: effective routing remains private. */
body:has(.ry-panel-nav) #main .ry-share-compact .ry-invitation-card{padding:14px 16px;gap:8px;justify-content:space-between}
body:has(.ry-panel-nav) #main .ry-share-compact h2{font-size:15px;line-height:1.35;margin:0}
body:has(.ry-panel-nav) #main .ry-share-compact .partner-actions{margin:0;gap:8px}
body:has(.ry-panel-nav) #main .ry-share-compact .button{min-height:40px;padding:8px 12px;font-size:13px}
@media (max-width:700px){body:has(.ry-panel-nav) #main .ry-share-compact{gap:8px}body:has(.ry-panel-nav) #main .ry-share-compact .ry-invitation-card{display:flex;flex-direction:row;align-items:center;padding:12px 14px;flex-wrap:wrap}body:has(.ry-panel-nav) #main .ry-share-compact .partner-actions{justify-content:flex-end}}

body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact .partner-actions{width:auto;flex:0 1 auto;padding:0}
body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact .button{width:auto;flex:0 1 auto;min-height:40px}
body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact .ry-invitation-card{min-height:0}
body:has(.ry-panel-nav) #main .ry-dashboard-welcome{padding-bottom:12px;margin-bottom:12px}
/* Monthly competition: stronger hierarchy, unchanged real counts and scope. */
body:has(.ry-panel-nav) #main .ry-monthly-board{background:#20231f;color:#fffdf6;border:1px solid #b99a52;border-radius:18px;padding:24px;box-shadow:0 12px 30px #20231f18}
body:has(.ry-panel-nav) #main .ry-monthly-board :is(h2,strong,b){color:#fffdf6}
body:has(.ry-panel-nav) #main .ry-monthly-board :is(.fine,small){color:#d2d5cb}
body:has(.ry-panel-nav) #main .ry-monthly-board .eyebrow{color:#e8c777;letter-spacing:.12em}
body:has(.ry-panel-nav) #main .ry-monthly-board .text-button{color:#e8c777}
body:has(.ry-panel-nav) #main .ry-monthly-rows li{border-color:#ffffff25;grid-template-columns:32px minmax(0,1fr) auto;transition:background-color .16s ease}
body:has(.ry-panel-nav) #main .ry-monthly-rows li:hover{background:#ffffff09}
body:has(.ry-panel-nav) #main .ry-monthly-place{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#e8c777;background:#ffffff0b}
body:has(.ry-panel-nav) #main .ry-monthly-rows li:nth-child(1) .ry-monthly-place{background:#e8c777;color:#24251e;box-shadow:0 0 0 3px #e8c77720}
body:has(.ry-panel-nav) #main .ry-monthly-rows li:nth-child(2) .ry-monthly-place{background:#d2d9df;color:#20231f}
body:has(.ry-panel-nav) #main .ry-monthly-rows li:nth-child(3) .ry-monthly-place{background:#cba57c;color:#20231f}
@media (prefers-reduced-motion:reduce){body:has(.ry-panel-nav) #main .ry-monthly-rows li{transition:none}}
body:has(.ry-panel-nav) .ry-section-tabs{margin:0 40px 0 284px;display:flex;gap:6px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--atelier-line)}
body:has(.ry-panel-nav) .ry-section-tabs .ry-panel-link{color:#45483f;background:transparent;border-radius:10px;display:flex;align-items:center;gap:7px;padding:10px 13px;font-size:13px;text-decoration:none}
body:has(.ry-panel-nav) .ry-section-tabs .ry-panel-link[aria-current="page"]{color:#24251e;background:#e8e4d6;font-weight:650}
body:has(.ry-panel-nav) .ry-section-tabs .ry-nav-icon{width:17px;height:17px}
@media (max-width:900px){body:has(.ry-panel-nav) .ry-section-tabs{margin:0 16px}}
body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact{grid-template-columns:repeat(3,minmax(0,1fr))}
body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact .ry-invitation-card{grid-column:auto;text-align:left;align-items:flex-start}
body:has(.ry-panel-nav) #main .ry-workspace-switch{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
body:has(.ry-panel-nav) #main .ry-workspace-switch .button{font-size:13px;min-height:40px;padding:9px 14px}
@media (max-width:700px){body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact{grid-template-columns:1fr}body:has(.ry-panel-nav) #main .ry-invitation-links.ry-share-compact .ry-invitation-card{align-items:center}}
body:has(.ry-panel-nav) .ry-section-tabs{grid-column:2;grid-row:2;margin:0 40px;min-width:0;align-self:start}
body:has(.ry-panel-nav) #app:has(> .ry-section-tabs) > #main,body:has(.ry-panel-nav) #app > [inert]:has(> .ry-section-tabs) > #main{grid-row:3}
body:has(.ry-panel-nav) #app:has(> .ry-section-tabs) > .ry-panel-nav,body:has(.ry-panel-nav) #app > [inert]:has(> .ry-section-tabs) > .ry-panel-nav{grid-row:1 / 4}
body:has(.ry-panel-nav) .ry-section-tabs .ry-panel-link{width:auto;flex:0 1 auto;white-space:normal}
@media (max-width:900px){body:has(.ry-panel-nav) .ry-section-tabs{margin:0 16px}}
body:has(.ry-panel-nav) #app:has(> .ry-section-tabs),body:has(.ry-panel-nav) #app > [inert]:has(> .ry-section-tabs){grid-template-rows:76px auto minmax(0,1fr)}

/* Complete workspace modules share the approved ivory / charcoal / gold system.
   Explicit hooks prevent new functional modules from falling back to browser UI. */
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups){--module-line:#e5e3dc;min-width:0}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) :is(h2,h3,h4){line-height:1.3;letter-spacing:-.025em}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) h2{font-size:clamp(23px,2.3vw,30px);margin:0}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) h3{font-size:18px;margin:0 0 14px}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) :is(button,.button){display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border:1px solid #dedbd2;border-radius:11px;background:#fff;color:#30332d;font:600 13px/1.4 Manrope,Arial,sans-serif;gap:7px;max-width:100%;cursor:pointer}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) :is(button,.button):hover:not(:disabled){background:#f4f0e7;border-color:#b69a5c}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) :is(.primary,button[type=submit]){background:#8b662f;color:#fff;border-color:#8b662f}
body:has(.ry-panel-nav) #main :is(.ry-templates,.ry-analytics,.crm-groups) button:disabled{opacity:.55;cursor:not-allowed}
body:has(.ry-panel-nav) #main :is(.ry-template-header,.ry-analytics-header,.ry-group-header){display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
body:has(.ry-panel-nav) #main :is(.ry-template-actions,.ry-analytics-controls){display:flex;align-items:end;gap:9px;flex-wrap:wrap}
body:has(.ry-panel-nav) #main :is(.ry-template-editor,.ry-template-review,.ry-analytics-section,.ry-group-filters,.ry-group-people,.ry-group-compose,.ry-group-review,.ry-group-history){background:#fff;border:1px solid var(--module-line);border-radius:18px;padding:24px;min-width:0}
body:has(.ry-panel-nav) #main .ry-templates{margin-top:32px;padding-top:28px;border-top:1px solid var(--module-line)}
body:has(.ry-panel-nav) #main .ry-template-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:18px 0}
body:has(.ry-panel-nav) #main .ry-template-card{background:#fff;border:1px solid var(--module-line);border-radius:16px;padding:20px;min-width:0}
body:has(.ry-panel-nav) #main :is(.ry-template-card-heading,.ry-template-editor-heading){display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
body:has(.ry-panel-nav) #main .ry-template-card-heading strong{font-size:16px;overflow-wrap:anywhere}
body:has(.ry-panel-nav) #main .ry-template-status{display:inline-flex;padding:4px 9px;background:#f0efea;color:#596052;border-radius:20px;font-size:11px;font-weight:650}
body:has(.ry-panel-nav) #main .ry-template-status.is-reviewed{color:#3b634d;background:#edf4ed}
body:has(.ry-panel-nav) #main :is(.ry-template-languages,.ry-template-hint){font-size:12px;color:#626c7b;margin:10px 0 16px}
body:has(.ry-panel-nav) #main .ry-template-editor{display:grid;gap:16px}
body:has(.ry-panel-nav) #main :is(.ry-template-editor,.ry-analytics-controls) label{display:grid;gap:7px;font-size:12px;font-weight:650;color:#50534b;min-width:0}
body:has(.ry-panel-nav) #main .ry-template-name{max-width:520px}
body:has(.ry-panel-nav) #main :is(.ry-template-language-tabs,.ry-group-language-tabs){display:flex;gap:5px;padding:5px;background:#f4f3ee;border-radius:12px;flex-wrap:wrap;align-self:start;width:fit-content;max-width:100%}
body:has(.ry-panel-nav) #main :is(.ry-template-language-tabs,.ry-group-language-tabs) button{background:transparent;border-color:transparent;min-height:38px;padding:8px 12px}
body:has(.ry-panel-nav) #main :is(.ry-template-language-tabs,.ry-group-language-tabs) button[aria-pressed=true]{background:#fff;color:#795927;border-color:#e4dece;box-shadow:0 2px 5px #181c2408}
body:has(.ry-panel-nav) #main .ry-template-filled{color:#8b662f}
body:has(.ry-panel-nav) #main :is(.ry-template-message,.ry-group-compose) textarea{display:block;width:100%;min-height:160px;resize:vertical;line-height:1.6}
body:has(.ry-panel-nav) #main .ry-template-review-texts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
body:has(.ry-panel-nav) #main .ry-template-review-language{background:#f8f7f3;border-radius:12px;padding:16px;min-width:0}
body:has(.ry-panel-nav) #main .ry-template-review-language h4{font-size:12px;color:#795927;margin:0 0 10px}
body:has(.ry-panel-nav) #main :is(.ry-template-review,.ry-group-review) pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px}
body:has(.ry-panel-nav) #main :is(.ry-template-empty,.ry-group-empty,.ry-analytics-empty){list-style:none;grid-column:1/-1;padding:24px;border:1px dashed #dcd7ca;border-radius:16px;background:#faf9f5;color:#626c7b;font-size:14px;margin:16px 0}
body:has(.ry-panel-nav) #main :is(.ry-template-notice,.ry-analytics-error){border-radius:12px;padding:13px 16px;background:#f3efe3;font-size:13px}
body:has(.ry-panel-nav) #main .ry-analytics-controls{margin:0}
body:has(.ry-panel-nav) #main .ry-analytics-controls select{min-height:42px;width:auto;min-width:170px;padding:9px 34px 9px 12px;font-size:13px;border-color:#dedbd2;border-radius:10px;background:#fff}
body:has(.ry-panel-nav) #main .ry-analytics-section{margin:18px 0;padding:22px}
body:has(.ry-panel-nav) #main .ry-analytics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body:has(.ry-panel-nav) #main .ry-analytics-metric{min-width:0;background:#f7f6f1;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:10px}
body:has(.ry-panel-nav) #main .ry-analytics-metric :is(p,span){margin:0;font-size:12px;line-height:1.45;color:#626c7b}
body:has(.ry-panel-nav) #main .ry-analytics-metric strong{font-size:clamp(25px,3vw,38px);line-height:1.2;letter-spacing:-.04em;color:#20251e;overflow-wrap:anywhere}
body:has(.ry-panel-nav) #main .ry-analytics-metric small{font-size:11px;line-height:1.45;color:#626c7b}
body:has(.ry-panel-nav) #main .ry-analytics-metric--highlight{background:#252a23;color:#fff}
body:has(.ry-panel-nav) #main .ry-analytics-metric--highlight strong{color:#ebce8d}
body:has(.ry-panel-nav) #main .ry-analytics-metric--highlight :is(p,span,small){color:#e0e3d8}
body:has(.ry-panel-nav) #main .ry-analytics-method{margin-top:18px;padding-top:14px;border-top:1px solid var(--module-line);font-size:12px;color:#626c7b}
body:has(.ry-panel-nav) #main :is(.ry-analytics-method,.ry-group-filters) summary{cursor:pointer;color:#50534b;font-size:13px;font-weight:600;min-height:30px}
body:has(.ry-panel-nav) #main .ry-analytics-method p{font-size:12px;max-width:900px;margin:12px 0 0}
body:has(.ry-panel-nav) #main .ry-group-filters{margin:18px 0;padding:16px 20px}
body:has(.ry-panel-nav) #main .ry-group-filters form[data-groups-form=filters]{border:0;padding:18px 0 0;margin:0;border-radius:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body:has(.ry-panel-nav) #main .ry-group-filters fieldset{grid-column:1/-1}
body:has(.ry-panel-nav) #main .ry-group-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;border:0;background:transparent;padding:0;margin:20px 0}
body:has(.ry-panel-nav) #main .ry-group-people ul{max-height:410px;overflow:auto}
body:has(.ry-panel-nav) #main .ry-group-selection{display:flex;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--module-line)}
body:has(.ry-panel-nav) #main .ry-group-compose form{display:grid;gap:15px}
body:has(.ry-panel-nav) #main .ry-group-compose button[type=submit]{justify-self:start}
body:has(.ry-panel-nav) #main .ry-group-history{margin-top:24px}
body:has(.ry-panel-nav) #main .ry-group-counts{display:flex;flex-wrap:wrap;gap:10px;font-size:12px}
body:has(.ry-panel-nav) #main .ry-group-review{border-color:#cdb679;background:#fffefb}
body:has(.ry-panel-nav) #main .ry-group-review details{background:#f7f5ee;padding:14px;border-radius:12px;margin:12px 0}
body:has(.ry-panel-nav) #main .ry-group-review details summary{font-size:13px;color:#795927;font-weight:650;margin-bottom:8px;cursor:pointer}
@media (max-width:1150px){body:has(.ry-panel-nav) #main .ry-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body:has(.ry-panel-nav) #main .ry-group-filters form[data-groups-form=filters]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){body:has(.ry-panel-nav) #main :is(.ry-template-list,.ry-template-review-texts,.ry-group-workspace){grid-template-columns:1fr}body:has(.ry-panel-nav) #main :is(.ry-template-editor,.ry-template-review,.ry-group-people,.ry-group-compose,.ry-group-review,.ry-group-history,.ry-analytics-section){padding:18px}body:has(.ry-panel-nav) #main .ry-group-filters form[data-groups-form=filters]{grid-template-columns:1fr}body:has(.ry-panel-nav) #main .ry-analytics-controls{width:100%}body:has(.ry-panel-nav) #main .ry-analytics-controls label{flex:1 1 130px}body:has(.ry-panel-nav) #main .ry-analytics-controls select{width:100%;min-width:0}body:has(.ry-panel-nav) #main .ry-analytics-metric{padding:15px}body:has(.ry-panel-nav) #main .ry-analytics-metric strong{font-size:28px}}
@media (max-width:360px){body:has(.ry-panel-nav) #main .ry-analytics-grid{grid-template-columns:1fr}}
body:has(.ry-panel-nav) #main .crm-groups [hidden]{display: none !important;}
body:has(.ry-panel-nav) #main form.ry-group-compose{display:flex;flex-direction:column;gap:15px;align-self:start}
body:has(.ry-panel-nav) #main .ry-analytics-value--empty{font-size:18px!important;letter-spacing:-.02em!important}
body:has(.ry-panel-nav) .ry-template-library{width:min(900px,calc(100vw - 32px));max-height:85svh;border:1px solid #e5e3dc;border-radius:22px;padding:26px;background:#f6f4ee;color:#181c24;box-shadow:0 24px 100px #191a1833;overflow:auto}
body:has(.ry-panel-nav) .ry-template-library::backdrop{background:#191a1870;backdrop-filter:blur(4px)}
body:has(.ry-panel-nav) #main .ry-template-library .ry-templates{margin:0;padding:0;border:0}
body:has(.ry-panel-nav) .ry-template-library-close{display:flex;justify-content:flex-end;margin-bottom:12px}
body:has(.ry-panel-nav) #main .ry-group-workspace-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:6px;background:#edeae1;border-radius:13px;margin:16px 0;width:fit-content}
body:has(.ry-panel-nav) #main .ry-group-workspace-tabs button{background:transparent;border-color:transparent}
body:has(.ry-panel-nav) #main .ry-group-workspace-tabs button[aria-pressed=true]{background:#fff;color:#795927;box-shadow:0 2px 6px #181c2409}
body:has(.ry-panel-nav) #main .ry-group-pending{padding:14px;border:1px solid #b8814a;background:#fff7e8;border-radius:12px;font-size:13px}
body:has(.ry-panel-nav) #main .ry-group-workspace{background:transparent;border:0;padding:0}
body:has(.ry-panel-nav) #main .ry-group-header h2{margin-right:auto}
@media (min-width:1050px){body:has(.ry-panel-nav) .ry-dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(240px,280px);gap:22px}body:has(.ry-panel-nav) .ry-dashboard-aside{border:0;padding:0}body:has(.ry-panel-nav) #main .ry-dashboard-aside .ry-monthly-board{padding:20px}}
body:has(.ry-panel-nav) #main .ry-crm-next{padding:12px 15px;margin:12px 0}
body:has(.ry-panel-nav) #main .ry-prospect-tools{margin-block:12px}
body:has(.ry-panel-nav) #main .ry-dashboard-grid{margin-top:22px}
body:has(.ry-panel-nav) #main.ry-context-workspace{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:24px;align-items:start}
body:has(.ry-panel-nav) #main.ry-context-workspace:not(:has(.ry-context-prospects)){grid-template-columns:minmax(0,1fr)}
body:has(.ry-panel-nav) .ry-context-prospects{position:sticky;top:20px;min-width:0}
body:has(.ry-panel-nav) .ry-context-prospects>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
body:has(.ry-panel-nav) .ry-context-list{display:flex;flex-direction:column;gap:6px;max-height:72svh;overflow:auto}
body:has(.ry-panel-nav) .ry-context-person{display:flex;gap:10px;padding:14px 12px;color:#30352d;text-decoration:none;border-radius:12px;border:1px solid transparent;min-width:0;align-items:center}
body:has(.ry-panel-nav) .ry-context-person[aria-current=page]{background:#ece6d6;border-color:#d8cba9;box-shadow:inset 3px 0 #b69a5c}
body:has(.ry-panel-nav) .ry-context-person:hover{background:#f0ece1}
body:has(.ry-panel-nav) .ry-context-person>span:not(.crm-avatar){min-width:0;display:grid;gap:4px}
body:has(.ry-panel-nav) .ry-context-person strong{font-size:13px;overflow-wrap:anywhere}
body:has(.ry-panel-nav) .ry-context-person small{font-size:11px;color:#626c7b}
body:has(.ry-panel-nav) .ry-context-person .crm-avatar{width:34px;height:34px;flex:0 0 34px;font-size:13px}
body:has(.ry-panel-nav) #main.ry-context-workspace .crm-detail{width:100%;max-width:none;background:#fff;border:1px solid #e5e3dc;border-radius:20px;padding:24px;min-width:0}
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-person-heading{margin:16px 0}
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-person-heading h1{font-size:26px}
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-contact-actions{padding:0;margin:16px 0;gap:8px}
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-contact-actions .button{min-height:44px;padding:10px 9px;font-size:12px}
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-person-tabs{gap:5px;margin:18px 0}
body:has(.ry-panel-nav) #main .ry-group-selection label{margin:0;padding:0;min-height:28px}
body:has(.ry-panel-nav) #main .ry-group-selection{display:grid;gap:8px}
body:has(.ry-panel-nav) #main .ry-group-compose>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
body:has(.ry-panel-nav) #main .ry-group-compose>header h3{margin:0}
body:has(.ry-panel-nav) #main .ry-group-picker{display:flex;gap:8px;flex-wrap:wrap}
body:has(.ry-panel-nav) #main .ry-group-picker button[aria-pressed=true]{background:#292f25;color:#fff}
body:has(.ry-panel-nav) #main .ry-group-filters summary{display:flex;justify-content:space-between;align-items:center;gap:12px}
body:has(.ry-panel-nav) #main .ry-group-filters summary span{color:#795927}
body:has(.ry-panel-nav) #main .ry-group-total{background:#eeeadf;color:#735626;border-radius:20px;font-size:12px;padding:3px 8px;margin-left:5px}
@media (max-width:900px){body:has(.ry-panel-nav) #main.ry-context-workspace{display:block}body:has(.ry-panel-nav) .ry-context-prospects{display:none}body:has(.ry-panel-nav) #main.ry-context-workspace .crm-detail{padding:18px}body:has(.ry-panel-nav) .ry-template-library{padding:18px}}
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-person-heading{display:flex;align-items:center;gap:14px}
body:has(.ry-panel-nav) #main .ry-tags-compact{padding:14px 16px;margin:14px 0}
body:has(.ry-panel-nav) #main .ry-tags-compact header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body:has(.ry-panel-nav) #main .ry-tags-compact h3{font-size:13px;margin:0}
body:has(.ry-panel-nav) #main .ry-tag-chips{display:flex;gap:6px;flex-wrap:wrap}
body:has(.ry-panel-nav) #main .ry-tag-chips span{padding:4px 9px;border-radius:20px;background:#f2ead6;color:#71511f;font-size:11px}
body:has(.ry-panel-nav) #main .ry-tags-compact summary{font-size:12px;cursor:pointer;color:#795927;margin-top:9px}
body:has(.ry-panel-nav) #main .ry-conversation-organize{margin-top:18px;padding:12px 0;border-top:1px solid #e5e3dc}
body:has(.ry-panel-nav) #main .ry-conversation-organize summary{cursor:pointer;font-size:13px;color:#626c7b}
body:has(.ry-panel-nav) #main .ry-conversation-workflow-state{font-size:12px;background:#f0ede3;padding:8px 12px;border-radius:10px}
body:has(.ry-panel-nav) #main :is(.ry-group-filters,.ry-analytics-method,.ry-tags-compact,.ry-conversation-organize) summary span{transform:none;rotate:none;transition:none;width:auto;height:auto;position:static;flex:none}
body:has(.ry-panel-nav) #main .ry-group-filters .muted{font-size:12px;margin:0;color:#626c7b}
@media (max-width:700px){body:has(.ry-panel-nav) #main .ry-group-header{gap:8px}body:has(.ry-panel-nav) #main .ry-group-header h2{flex-basis:100%;margin-bottom:5px}body:has(.ry-panel-nav) #main .ry-group-header button{font-size:12px;padding:9px 11px}body:has(.ry-panel-nav) #main .ry-group-filters summary{flex-wrap:wrap}}
body:has(.ry-panel-nav) #main .ry-group-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body:has(.ry-panel-nav) #main .ry-group-review>:is(h3,p,ul){grid-column:1/-1;margin:0}
body:has(.ry-panel-nav) #main .ry-group-review>details{margin:0;min-width:0}
@media (max-width:700px){body:has(.ry-panel-nav) #main .ry-group-review{grid-template-columns:1fr}}
body:has(.ry-panel-nav) #main .ry-group-discard{padding:18px;border:1px solid #c7ab70;border-radius:14px;background:#fff8e9;margin:16px 0}
body:has(.ry-panel-nav) #main .ry-group-discard button{margin:8px 8px 0 0}
body:has(.ry-panel-nav) #main :is(.ry-partner-links-editor,.ry-partner-lifecycle){padding:22px;border:1px solid #dfd9c9;border-radius:16px;background:#fffdf8;margin:18px 0}
body:has(.ry-panel-nav) #main :is(.ry-partner-links-editor,.ry-partner-lifecycle) p{font-size:13px;max-width:70ch}
body:has(.ry-panel-nav) #main .ry-partner-links-editor form{display:grid;gap:14px}
body:has(.ry-panel-nav) #main .ry-lifecycle-impact{width:100%;padding:16px;background:#fff5df;border-radius:12px;overflow-wrap:anywhere}
body:has(.ry-panel-nav) #main .ry-lifecycle-impact label{display:flex;align-items:flex-start;gap:10px;font-size:13px}
body:has(.ry-panel-nav) #main .ry-lifecycle-impact input[type=checkbox]{width:18px;height:18px;min-width:18px;margin-top:4px}
body:has(.ry-panel-nav) #main .ry-partner-lifecycle dd{overflow-wrap:anywhere}
/* Keep the first person and monthly ranking in the first working viewport. */
@media (min-width:1050px){
 body:has(.ry-panel-nav) #main:has(.ry-dashboard-grid){padding-top:24px}
 body:has(.ry-panel-nav) #main .ry-dashboard-welcome{padding-bottom:0;margin-bottom:18px}
 body:has(.ry-panel-nav) #main .ry-dashboard-welcome h1{margin-bottom:0}
 body:has(.ry-panel-nav) #main .ry-share-compact .ry-invitation-card{padding:12px 14px}
 body:has(.ry-panel-nav) #main .ry-dashboard-grid{margin-top:18px}
 body:has(.ry-panel-nav) #main .ry-dashboard-grid .crm-shortcuts{gap:6px}
 body:has(.ry-panel-nav) #main .ry-dashboard-grid .crm-shortcuts a{font-size:12px;padding:10px 12px}
}
body:has(.ry-panel-nav) #main .ry-contact-actions{margin-block:16px;gap:8px;align-items:start;padding-block:0}
body:has(.ry-panel-nav) #main .ry-contact-actions :is(.ry-action-item,.crm-whatsapp-action){padding:0;margin:0}
body:has(.ry-panel-nav) #main .ry-contact-actions .button{min-height:40px;padding:10px 12px}
body:has(.ry-panel-nav) #main .ry-prospect-filters{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;margin-block:10px;padding-bottom:2px}
body:has(.ry-panel-nav) #main .ry-prospect-filter{white-space:nowrap;font-size:11px;padding:9px 10px;min-height:36px;flex:0 0 auto}
body:has(.ry-panel-nav) #main .ry-crm-next{padding:10px 12px;margin:8px 0;gap:10px;align-items:center}
body:has(.ry-panel-nav) #main .ry-crm-next .ry-next-copy{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px}
body:has(.ry-panel-nav) #main .ry-crm-next .ry-next-copy h2{font-size:11px;margin:0}
body:has(.ry-panel-nav) #main .ry-crm-next .ry-next-copy p{font-size:12px;margin:0}
body:has(.ry-panel-nav) #main .ry-crm-next .ry-next-copy .fine{flex-basis:100%;font-size:11px}
body:has(.ry-panel-nav) #main .ry-crm-next [data-crm=open]{min-height:36px;margin:0;padding:8px 12px;font-size:12px}
body:has(.ry-panel-nav) #main .ry-monthly-board li{padding-block:12px}
body:has(.ry-panel-nav) #main .ry-monthly-board ol{margin-top:16px}
body:has(.ry-panel-nav) #main .ry-person-tabs{flex-wrap:nowrap;overflow-x:auto;gap:4px;margin-block:14px;padding-bottom:0}
body:has(.ry-panel-nav) #main .ry-person-tab{white-space:nowrap;font-size:12px;padding:10px 8px;flex:0 0 auto}
body:has(.ry-panel-nav) #main .ry-person-heading{margin-block:12px}
body:has(.ry-panel-nav) #main .ry-person-heading h1{font-size:26px;margin:0 0 5px}
body:has(.ry-panel-nav) #main .ry-person-heading p{margin:0;font-size:13px}
body:has(.ry-panel-nav) #main .ryc-progress-comparison{border:1px solid #e6e2d8;border-radius:14px;margin-block:18px;padding:14px 16px;background:#fff}
body:has(.ry-panel-nav) #main .ryc-progress-comparison>summary{font-size:13px;font-weight:600;cursor:pointer}
@media (max-width:700px){
 body:has(.ry-panel-nav) .ry-panel-nav{padding:8px 12px;gap:4px 8px}
 body:has(.ry-panel-nav) .ry-panel-group:not(.ry-panel-disclosure) .ry-panel-links{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px;gap:4px}
 body:has(.ry-panel-nav) .ry-panel-group:not(.ry-panel-disclosure) .ry-panel-link{flex:0 0 auto;min-height:44px;padding:8px;font-size:11px;gap:5px}
 body:has(.ry-panel-nav) .ry-panel-disclosure{flex:0 1 105px}
 body:has(.ry-panel-nav) .ry-sidebar-account{width:auto;flex:1 1 170px;border:0;padding:4px 0;margin:0;gap:7px}
 body:has(.ry-panel-nav) .ry-sidebar-account .crm-avatar{width:28px;height:28px;font-size:11px;flex-basis:28px}
 body:has(.ry-panel-nav) .ry-sidebar-account strong{font-size:11px}
 body:has(.ry-panel-nav) .ry-sidebar-account small{font-size:10px}
 body:has(.ry-panel-nav) #main{padding-top:16px}
}
@media (max-width:700px){
 body:has(.ry-panel-nav) .ry-panel-group:not(.ry-panel-disclosure) .ry-panel-link{width:auto;min-width:0;white-space:nowrap}
 body:has(.ry-panel-nav) .ry-panel-disclosure{flex-basis:130px}
 body:has(.ry-panel-nav) .ry-panel-disclosure>summary{white-space:nowrap;overflow-wrap:normal;word-break:normal}
}
body:has(.ry-panel-nav) #main .ry-group-review button[data-cg-action=confirm]{background:#8e6c30;border-color:#8e6c30;color:#fff;font-weight:650}
body:has(.ry-panel-nav) #main .ry-group-review button[data-cg-action=confirm]:disabled{opacity:.5}
@media (min-width:901px){
 body:has(.ry-panel-nav) #app:has(> .ry-section-tabs),body:has(.ry-panel-nav) #app > [inert]:has(> .ry-section-tabs){grid-template-rows:76px max-content minmax(0,1fr);align-content:start}
 body:has(.ry-panel-nav) #app:has(> .ry-section-tabs)>#main,body:has(.ry-panel-nav) #app > [inert]:has(> .ry-section-tabs)>#main{align-self:start}
}

/* Keep each prospect's four frequent actions visible, above the detail tabs. */
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-contact-actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-contact-actions .button { min-height:48px; font-size:13px; white-space:normal; overflow-wrap:anywhere; }
body:has(.ry-panel-nav) #main.ry-context-workspace .ry-conversion-action .button { border:1px solid var(--atelier-ink); font-weight:700; }
@media (min-width:1200px) { body:has(.ry-panel-nav) #main.ry-context-workspace .ry-contact-actions { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:360px) { body:has(.ry-panel-nav) #main.ry-context-workspace .ry-contact-actions { grid-template-columns:minmax(0,1fr); } }
/* Partner-controlled access, scoped to new registrations. */
body:has(.ry-panel-nav) .ry-access-grid{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:24px;align-items:start}body:has(.ry-panel-nav) .ry-access-settings fieldset{border:0;padding:0;margin:20px 0;display:grid;gap:12px}body:has(.ry-panel-nav) .ry-access-choice{display:flex;gap:12px;padding:16px;border:1px solid #dedbd4;border-radius:14px;cursor:pointer;align-items:flex-start}body:has(.ry-panel-nav) .ry-access-choice:has(input:checked){border-color:#947137;background:#faf7ef}body:has(.ry-panel-nav) .ry-access-choice input{margin-top:5px;width:auto;accent-color:#947137}body:has(.ry-panel-nav) .ry-access-choice strong,body:has(.ry-panel-nav) .ry-access-choice small{display:block}body:has(.ry-panel-nav) .ry-access-choice small{margin-top:5px;line-height:1.45;color:#666}body:has(.ry-panel-nav) .ry-access-requests .partner-card{margin:14px 0;overflow-wrap:anywhere}body:has(.ry-panel-nav) .ry-access-confirm{padding-top:12px;border-top:1px solid #dedbd4}body:has(.ry-panel-nav) .ry-access-header h1{margin-bottom:20px}body:has(.ry-panel-nav) .ry-access-requests .partner-actions{flex-wrap:wrap}body:has(.ry-panel-nav) .ry-access-settings{margin-top:0!important}@media (max-width:760px){body:has(.ry-panel-nav) .ry-access-grid{grid-template-columns:1fr;gap:12px}body:has(.ry-panel-nav) .ry-access-choice{padding:14px}body:has(.ry-panel-nav) .ry-access-requests .partner-actions .button{flex:1;min-width:130px}}

/* Read-only cohort milestones: independent shares, not a nested sales funnel. */
body:has(.ry-panel-nav) .ry-funnel{margin:0 0 2rem;padding:clamp(1rem,3vw,2rem);border:1px solid rgba(213,183,117,.28);border-radius:20px;background:linear-gradient(145deg,rgba(213,183,117,.08),transparent)}body:has(.ry-panel-nav) .ry-funnel header h2{margin:.35rem 0}body:has(.ry-panel-nav) .ry-funnel .ry-analytics-controls{flex-wrap:wrap}body:has(.ry-panel-nav) .ry-funnel .ry-analytics-controls label{min-width:140px;flex:1}body:has(.ry-panel-nav) .ry-funnel select{max-width:100%;width:100%}body:has(.ry-panel-nav) .ry-funnel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:1.2rem 0}body:has(.ry-panel-nav) .ry-funnel-metric{padding:16px;border:1px solid var(--atelier-line, #d5cebe);border-radius:14px;min-width:0}body:has(.ry-panel-nav) .ry-funnel-metric h3{font-size:.85rem;line-height:1.45;min-height:2.6em;margin:0 0 10px}body:has(.ry-panel-nav) .ry-funnel-metric strong{font-size:2rem;color:var(--atelier-ink)}body:has(.ry-panel-nav) .ry-funnel-metric p{font-size:.75rem;opacity:.75}body:has(.ry-panel-nav) .ry-funnel-track{width:100%;height:6px;accent-color:#8b662f;border-radius:10px;overflow:hidden}body:has(.ry-panel-nav) .ry-funnel-track span{height:100%;display:block;background:#8b662f}body:has(.ry-panel-nav) .ry-funnel-availability{margin-top:1rem;padding:16px;border-radius:12px;background:var(--atelier-paper, #f6f4ee)}body:has(.ry-panel-nav) .ry-funnel-availability h3{font-size:.9rem}body:has(.ry-panel-nav) .ry-funnel-availability p,body:has(.ry-panel-nav) .ry-funnel .ry-analytics-method p{font-size:.85rem;line-height:1.6}@media (max-width:720px){body:has(.ry-panel-nav) .ry-funnel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body:has(.ry-panel-nav) .ry-funnel .ry-analytics-controls label{min-width:0;width:100%;flex-basis:100%}body:has(.ry-panel-nav) .ry-funnel-metric{padding:12px}}@media (max-width:340px){body:has(.ry-panel-nav) .ry-funnel-grid{grid-template-columns:1fr}}

/* A bounded, read-only help list; do not reuse the old one-person flex strip. */
body:has(.ry-panel-nav) #main .ry-help-priority { display: block; padding: 18px; }
body:has(.ry-panel-nav) #main .ry-help-priority .ry-next-copy { display: block; min-width: 0; }
body:has(.ry-panel-nav) #main .ry-help-priority .ry-next-copy h2 { font-size: 17px; line-height: 1.3; margin: 0 0 12px; }
body:has(.ry-panel-nav) #main .ry-help-priority .ry-next-copy p { font-size: 13px; line-height: 1.5; margin: 5px 0; }
body:has(.ry-panel-nav) #main .ry-help-priority .ry-help-list { list-style: decimal; padding: 0 8px 0 24px; margin: 0 0 14px; max-height: 29rem; overflow: auto; overscroll-behavior: contain; }
body:has(.ry-panel-nav) #main .ry-help-priority .ry-help-list li { padding: 10px 0; border-bottom: 1px solid #d5cebe; overflow-wrap: anywhere; }
body:has(.ry-panel-nav) #main .ry-help-priority [data-crm=open-item] { min-height: 42px; margin: 7px 0 0; padding: 8px 14px; font-size: 13px; }
body:has(.ry-panel-nav) #main .ry-help-priority .ry-next-action { display: flex; justify-content: flex-end; margin-top: 10px; }
body:has(.ry-panel-nav) #main .ry-help-priority small { display: block; line-height: 1.5; margin-top: 6px; }
body:has(.ry-panel-nav) #main .ry-help-priority :focus-visible { outline: 2px solid #735e2f; outline-offset: 3px; }
@media (max-width: 540px) { body:has(.ry-panel-nav) #main .ry-help-priority { padding: 14px; } body:has(.ry-panel-nav) #main .ry-help-priority .ry-help-list { max-height: 25rem; } }

/* Transfer provenance remains visible independently of stage or contact eligibility. */
body:has(.ry-panel-nav) #main .ry-assignment-label{display:inline-block;width:fit-content;max-width:100%;margin-top:5px;padding:3px 8px;border:1px solid #b99a56;border-radius:6px;background:#332b19;color:#ffdfa0;font-size:12px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}

/* One current phase, at most two supporting labels; no horizontal overflow. */
body:has(.ry-panel-nav) .ry-lifecycle-labels{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .45rem;margin-top:.35rem;min-width:0}
body:has(.ry-panel-nav) .ry-lifecycle-primary{flex-basis:100%;font-weight:600;overflow-wrap:anywhere}
body:has(.ry-panel-nav) .ry-lifecycle-badge{display:inline-block!important;max-width:100%;padding:.2rem .5rem;border:1px solid rgba(181,145,65,.28);border-radius:999px;background:rgba(181,145,65,.08);font-size:.75rem!important;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
body:has(.ry-panel-nav) .ry-person-summary>.ry-lifecycle-badge,body:has(.ry-panel-nav) .crm-detail>.ry-lifecycle-badge{margin:0 .35rem .4rem 0}
