/* Operational refinement for newly created, server-versioned business panels.
   Existing panels, native apps, clinical workspaces and print layouts keep their styles. */
@media screen {
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) {
    --rn-space: var(--rw-space, 24px);
    --rn-cell-space: 16px;
    --rn-radius: 10px;
    --rn-on-action: var(--rp-primary-text, var(--rp-button-text, var(--on-accent, #fff)));
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile).rp-density-compacta { --rn-cell-space: 12px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile).rp-density-amplia { --rn-cell-space: 20px; }

  /* Extend the established page rhythm without restyling the dashboard or navigation. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) #content > .page:not(.rbu-page) {
    width: 100%; max-width: 1280px; padding: 40px 40px 56px;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.page-hd,.rba-page > .ph) {
    display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between;
    gap: 16px; margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--border);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.page-hd h1,.rba-page .pt) {
    margin: 0 0 8px; font-size: 2rem; font-weight: 600; line-height: 1.25; letter-spacing: -.025em;
    overflow-wrap: anywhere;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile):not(.rp-font-sans):not(.rp-font-serif) :is(.page-hd h1,.rba-page .pt,.ri-dialog h2,.rop h1,.rop h2,.ros-panel h2,.rba-dialog h2) {
    font-family: 'IBM Plex Sans', system-ui, sans-serif;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rbu-records,.rbu-range,.rbu-account,.rbu-services,.ri-panel,.rop-card,.roc-section,.ros-panel,.rtc-panel,.rba-range,.rba-row,.ranking-preferences .rp-panel) {
    padding: var(--rn-space) !important; border-radius: var(--rn-radius); box-shadow: none; min-width: 0;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel-head,.rop-heading,.roc-heading,.rtc-heading,.rbu-services-toolbar) {
    gap: 16px; margin-bottom: 16px;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel h2,.rop-card h2,.roc-heading h2,.ros-panel h2,.rtc-heading h2,.rbc-heading h2) {
    margin: 0 0 8px; font-size: 1.25rem; font-weight: 600; line-height: 1.4; letter-spacing: -.015em;
    overflow-wrap: anywhere;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-muted,.ri-panel-head p,.ri-help,.rop-muted,.ros-intro,.ros-note,.ros-small,.ros-empty,.rtc-heading p,.rtc-item p,.rtc-notice,.rba-page .psub,.rba-muted,.rba-zone) {
    color: var(--text2); font-size: 14px; line-height: 1.6; overflow-wrap: anywhere;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel-head p,.ros-intro,.rtc-heading p,.rba-page .psub,.rbc-heading p) { max-width: 72ch; }

  /* Controls keep native semantics and saved palette/font choices. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.roc-section,.roc-dialog,.ros-panel,.rtc-panel,.rba-page,.rba-dialog,.ranking-preferences) .btn {
    min-width: 44px; min-height: 44px; max-width: 100%; padding: 10px 16px;
    border-radius: 8px; font-size: 14px; line-height: 1.4; font-weight: 500; white-space: normal;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.roc-section,.roc-dialog,.ros-panel,.rtc-panel,.rba-page,.rba-dialog,.ranking-preferences) .btn:hover { transform: none; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.roc-section,.roc-dialog,.ros-panel,.rba-page,.rba-dialog,.ranking-preferences) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=hidden]),select,textarea) {
    min-height: 44px; max-width: 100%; min-width: 0; border-radius: 8px;
    padding: 10px 12px; font-size: 14px; line-height: 1.5; caret-color: var(--teal);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-field,.ri-filter,.rop-form label,.roc-filter,.ros-panel label,.ros-panel legend,.rba-range label,.rba-dialog label) {
    font-size: 14px; line-height: 1.5;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ros-fields,.rop-fields,.rop-line,.rop-form,.rba-fields) { gap: 16px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ros-panel fieldset,.ri-stock,.rba-status,.rtc-state) { border-radius: 8px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ros-check,.rbc-check,.ranking-preferences .rp-check) {
    min-height: 44px; padding-block: 8px;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.roc-section,.roc-dialog,.ros-panel,.rtc-panel,.rba-page,.rba-dialog,.rbc-panel,.ranking-preferences,.rtl,.rtl-dialog,.rtl-workspace,.rtb-dialog,.rwt-dialog) :is(button,input,select,textarea,summary,a):focus-visible {
    outline: 2px solid var(--teal); outline-offset: 3px;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.ros-panel,.rba-page,.rba-dialog,.rbc-panel,.rtl,.rtl-dialog,.rwt-dialog) :is(input,textarea)::placeholder {
    color: var(--text2); opacity: 1;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.roc-section,.roc-dialog,.ros-panel,.rtc-panel,.rba-page,.rba-dialog,.rbc-panel,.ranking-preferences,.rtl,.rtl-dialog,.rtb-dialog,.rwt-dialog) :is(button,input,select,textarea):disabled { cursor: not-allowed; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.ros-panel,.rba-page,.rba-dialog,.rbc-panel,.rtl,.rtl-dialog,.rwt-dialog) button[aria-busy=true] { cursor: wait; }

  /* Tables stay tables, with horizontal scrolling owned by their existing wrappers. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-scroll,.rbu-scroll,.ros-panel .table-wrap,.rwt-table-wrap,.rtb-table-wrap) {
    max-width: 100%; overscroll-behavior-inline: contain; scrollbar-color: var(--border2) var(--bg-card);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-table,.roc-table,.rbu-records table,.ros-panel table) {
    font-size: 14px; line-height: 1.55; font-variant-numeric: tabular-nums;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-table,.roc-table,.rbu-records table,.ros-panel table) :is(th,td) {
    padding: var(--rn-cell-space) 12px; vertical-align: top;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-table,.roc-table,.rbu-records table,.ros-panel table) th {
    font-size: 12px; font-weight: 600; line-height: 1.5; letter-spacing: .02em; color: var(--text2);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-table small,.ri-pages,.roc-pagination span,.roc-totals span,.roc-summary dt,.roc-dialog small,.ros-readonly dt,.rba-count,.rba-when small,.rtc-state) {
    font-size: 12px; line-height: 1.6; color: var(--text2);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.roc-totals strong,.roc-summary dd,.rop-total,.rba-when strong) { font-variant-numeric: tabular-nums; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-pages,.roc-pagination,.ri-actions,.ros-actions,.rba-row-actions) { gap: 8px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .ros-panel table .ros-actions { justify-content: flex-start; margin: 0; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rop { max-width: 1280px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rop-body { gap: 24px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rop-order { padding-block: var(--rn-cell-space); }

  /* Messages retain their semantic colors, content and hidden/busy behavior. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-error,.rop-status,.rop-error,.roc-message,.ros-message,.rba-message,.rbc-error,.ranking-preferences .rp-message) {
    font-size: 14px; line-height: 1.6; overflow-wrap: anywhere;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ros-message,.ros-timezone,.rba-message,.rba-legacy,.rtb-mode,.rtb-warnings,.rtb-error) { border-left-width: 1px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ros-message,.rba-message,.ranking-preferences .rp-message) { border-radius: 8px; padding: 12px 16px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-dialog,.rbu-dialog,.rba-dialog,.rtb-dialog,.rwt-dialog,.rtl-dialog,.rtl-workspace) { border-radius: var(--rn-radius); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-dialog,.rbu-dialog,.rba-dialog,.rtb-dialog) { padding: var(--rn-space); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-dialog-head,.rbu-dialog-head,.rba-dialog-heading) { gap: 16px; margin-bottom: 24px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-dialog-head h2,.rbu-dialog-head h2,.rba-dialog-heading h2) { font-size: 1.375rem; line-height: 1.35; overflow-wrap: anywhere; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-dialog-head,.rbu-dialog-head,.rba-dialog-heading) > button { flex-shrink: 0; }

  /* Channel setup inherits the actual business palette; QR codes remain on white. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-panel { color: var(--text); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-channel {
    padding: var(--rn-space); border-radius: var(--rn-radius); background: var(--bg-card); border-color: var(--border);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rbc-pending,.rbc-candidate,.rbc-pairing,.rbc-learning-export) {
    background: var(--bg-input); color: var(--text); border-color: var(--border); border-radius: 8px;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rbc-wa-editor,.rbc-learning,.rbc-wa-editor fieldset) { border-color: var(--border); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rbc-help,.rbc-wa-editor legend) { color: var(--text2); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-error { color: var(--danger); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-button {
    min-height: 44px; min-width: 44px; max-width: 100%; border-radius: 8px; font-size: 14px; line-height: 1.4;
    background: var(--bg-card); color: var(--text); border-color: var(--border2); white-space: normal;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-button:hover { background: var(--bg-input); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-primary { background: var(--teal); border-color: var(--teal); color: var(--rn-on-action); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-primary:hover { background: var(--teal-deep, var(--teal)); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-channel :is(input:not([type=checkbox]):not([type=hidden]),select,textarea) {
    background: var(--bg-input); color: var(--text); border-color: var(--border2); min-height: 44px; font-size: 14px; caret-color: var(--teal);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rbc-check input { accent-color: var(--teal); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rbc-wa-editor summary,.rtc-item summary,.ranking-preferences .rp-colors summary) { min-height: 44px; padding-block: 12px; }

  /* Shared catalogue and calculators are scoped here, never at their global roots. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl,.rtl-dialog,.rtl-workspace) {
    --rtl-ink: var(--text); --rtl-muted: var(--text2); --rtl-cyan: var(--teal);
    font-family: inherit; color: var(--text); color-scheme: inherit;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-workspace,.rtl-dialog,.rtl-card,.rtl-operation) {
    background: var(--bg-card); color: var(--text); border-color: var(--border);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-card,.rtl-operation) { border-radius: var(--rn-radius); padding: var(--rn-space); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rtl-card:hover { transform: none; border-color: var(--teal); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-controls,.rtl-operations,.rtl-dialog > header,.rtl-dialog footer) { border-color: var(--border); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-intro h2,.rtl-card h3,.rtl-dialog h2,.rtb-top h2,.rtb-metrics strong) { font-family: inherit; letter-spacing: -.015em; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-intro h2,.rtl-workspace .rtl-intro h2) { font-size: 1.75rem; line-height: 1.3; margin: 0; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-eyebrow,.rtb-eyebrow,.rwt-eyebrow) { display: none; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-card > p,.rtl-operation p,.rtl-count,.rtl-card-top,.rtl-group > .rtl-card-top > span,.rtl-action-card .rtl-card-top > span,.rtl-search,.rtl-dialog-content > p,.rtl-dialog li,.rtl-destination p) {
    color: var(--text2); font-size: 14px; line-height: 1.6;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-card-top > span:last-child,.rtl-card-bottom > span) { color: var(--teal); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-categories button,.rtl-selections button,.rtl-search input,.rtl-search select) {
    background: var(--bg-input); color: var(--text); border-color: var(--border2); border-radius: 8px;
    min-height: 44px; font-size: 14px; line-height: 1.4;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-categories button[aria-pressed=true],.rtl-selections button[aria-pressed=true],.rtl-dialog footer button,.rtl-action-card > button,.rtl-add-actions > button,.rtl-load-status button,.rtl-group > button,.rtl-operation > button) {
    background: var(--text); color: var(--bg-card); border-color: var(--text); border-radius: 8px;
    min-height: 44px; max-width: 100%; font-size: 14px; line-height: 1.4; white-space: normal;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-action-card > button,.rtl-operation > button):disabled {
    background: var(--bg-input); color: var(--text2); border-color: var(--border); opacity: .65;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rtl-workspace-top {
    background: var(--bg-input); color: var(--text); letter-spacing: 0; font-size: 14px; border-bottom: 1px solid var(--border);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-dialog > header button,.rtl-workspace-top button) { min-width: 44px; border-radius: 8px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-workspace .rtl,.rtl-dialog-content) { padding: var(--rn-space); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rtb-dialog { font-family: inherit; font-size: 14px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtb-field,.rtb-summary,.rtb-metrics span,.rtb-mode,.rtb-warnings,.rtb-error,.rtb-dialog .rtb-button,.rtb-dialog .rtb-text-button) { font-size: 14px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtb-dialog table,.rtb-footer) { font-size: 12px; }

  /* Documents and forms use the same operational controls, keeping output formatting. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog { background: var(--bg); color: var(--text); border-color: var(--border); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rwt-header,.rwt-tabs,.rwt-card,.rwt-fields,.rwt-field-row,.rwt-table-wrap) {
    background: var(--bg-card); color: var(--text); border-color: var(--border);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rwt-header h1,.rwt-section-head h2,.rwt-card h3) { color: var(--text); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rwt-section-head p,.rwt-muted,.rwt-card p) { color: var(--text2); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog button {
    min-height: 44px; min-width: 44px; max-width: 100%; font-size: 14px; border-radius: 8px; white-space: normal;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog button:not(.rwt-secondary):not(.rwt-icon):not(.rwt-link):not(.rwt-chip) {
    background: var(--teal); border-color: var(--teal); color: var(--rn-on-action);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog :is(.rwt-secondary,.rwt-icon,.rwt-chip) { background: var(--bg-input); border-color: var(--border2); color: var(--text); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog .rwt-link { color: var(--teal); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-status { color: var(--green); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog :is(.rwt-danger,.rwt-error) { color: var(--danger); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog .rwt-tabs button {
    background: transparent; color: var(--text2); border-color: transparent;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog .rwt-tabs button[aria-current=page] { background: var(--teal2); color: var(--teal); border-color: var(--teal); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) {
    background: var(--bg-input); color: var(--text); border-color: var(--border2); min-height: 44px; font-size: 14px; caret-color: var(--teal);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog th { background: var(--bg-input); color: var(--text2); border-color: var(--border); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-dialog td { border-color: var(--border); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rwt-header,.rwt-body) { padding: var(--rn-space); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-tabs { flex-wrap: wrap; padding-inline: var(--rn-space); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rwt-document { color: #132139; }

  /* Inventory's original header and cards sit outside the newer inventory module. */
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) > .ph {
    flex-wrap: wrap; gap: 16px; margin-bottom: 32px; padding-bottom: 24px; border-bottom: 1px solid var(--border);
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) > .ph .pt {
    margin: 0 0 8px; font-size: 2rem; font-weight: 600; line-height: 1.25; letter-spacing: -.025em; overflow-wrap: anywhere;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) > .ph .psub { font-size: 14px; color: var(--text2); line-height: 1.6; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile):not(.rp-font-sans):not(.rp-font-serif) .page:not(.rbu-page) > .ph .pt { font-family: 'IBM Plex Sans', system-ui, sans-serif; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) .btn {
    min-width: 44px; min-height: 44px; max-width: 100%; padding: 10px 16px; border-radius: 8px;
    font-size: 14px; line-height: 1.4; font-weight: 500; white-space: normal;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) .btn:hover { transform: none; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) .btn:focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ranking-product-card,.rpc-panel) {
    padding: var(--rn-space) !important; border-radius: var(--rn-radius); box-shadow: none; min-width: 0;
  }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .ranking-product-card { flex-wrap: wrap; gap: 16px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .ranking-product-card > div:first-child { flex: 1 1 180px; min-width: 0; overflow-wrap: anywhere; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .ranking-product-actions { flex-wrap: wrap; gap: 16px !important; min-width: 0; max-width: 100%; font-variant-numeric: tabular-nums; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-eyebrow { display: none; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-heading h2 { margin: 0 0 8px; font-size: 1.25rem; font-weight: 600; line-height: 1.4; letter-spacing: -.015em; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-heading { gap: 16px; margin-bottom: 24px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rpc-field,.rpc-found,.rpc-notice,.rpc-price) { font-size: 14px; line-height: 1.6; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-price { min-height: 44px; padding-block: 8px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-sheet-controls { flex-wrap: wrap; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-preview { border-radius: var(--rn-radius); }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rpc-panel,.ranking-product-card) :is(button,input,select):focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-field :is(input,select) { caret-color: var(--teal); }
}

@media screen and (max-width: 1100px) {
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) #content > .page:not(.rbu-page) { padding: 32px 28px 48px; }
}
@media screen and (max-width: 768px) {
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) #content > .page:not(.rbu-page) { padding: 28px 20px 40px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.page-hd,.rba-page > .ph) { margin-bottom: 24px; padding-bottom: 20px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.page-hd h1,.rba-page .pt) { font-size: 1.625rem; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel,.ri-dialog,.rop,.roc-section,.roc-dialog,.ros-panel,.rba-page,.rba-dialog,.rbc-panel,.rtl,.rtl-dialog,.rtb-dialog,.rwt-dialog,.ranking-preferences) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea) { font-size: 16px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-panel-head,.roc-heading,.rtc-heading,.rbu-services-toolbar) { flex-wrap: wrap; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-actions,.rbc-actions,.rba-row-actions) { max-width: 100%; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-pages,.roc-pagination) { align-items: flex-start; flex-wrap: wrap; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.rtl-intro h2,.rtl-workspace .rtl-intro h2) { font-size: 1.5rem; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) > .ph { margin-bottom: 24px; padding-bottom: 20px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .page:not(.rbu-page) > .ph .pt { font-size: 1.625rem; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) .rpc-field :is(input,select) { font-size: 16px; }
}
@media screen and (max-width: 360px) {
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) #content > .page:not(.rbu-page) { padding-inline: 16px; }
  body.ranking-business-account.rp-presentation-v2:not(.ranking-mobile) :is(.ri-dialog-head,.rbu-dialog-head,.rba-dialog-heading) { flex-wrap: wrap; gap: 8px; }
}

/* Future academies use their own persisted marker, palette and typography.
   Their shell, navigation and home metrics retain the academy's composition. */
@media screen {
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) {
    --ra-space: 24px; --ra-cell-space: 16px; --ra-radius: 10px;
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native)[data-ranking-academy-density=compacta] { --ra-space: 16px; --ra-cell-space: 12px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native)[data-ranking-academy-density=amplia] { --ra-space: 28px; --ra-cell-space: 20px; }

  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.btn,.view-switch button,.pv-academy-tabs button,.attendance-controls button,.rp-order button) {
    min-height: 44px; min-width: 44px; max-width: 100%; padding: 10px 16px; border-radius: 8px;
    font-size: 14px; line-height: 1.4; white-space: normal;
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=hidden]),select,textarea) {
    min-height: 44px; min-width: 0; max-width: 100%; border-radius: 8px; font-size: 14px; line-height: 1.5;
    caret-color: var(--olive); border-color: var(--line); background: var(--white); color: var(--ink);
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.field label,.ros-panel label,.ros-panel legend,.ranking-preferences label,.sg-search label) { font-size: 14px; line-height: 1.5; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.help,.ros-note,.ros-intro,.ros-small,.rbu-muted,.page-heading p) {
    font-size: 14px; line-height: 1.6; color: var(--muted); overflow-wrap: anywhere;
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.fields,.ros-fields,.ranking-preferences .rp-fields) { gap: 16px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.actions,.ros-actions,.rp-actions) { gap: 8px; flex-wrap: wrap; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.ros-check,.rp-check) { min-height: 44px; padding-block: 8px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) #app .workspace #main :is(.pv-class-help summary,.ros-security summary,.ranking-preferences summary) { min-height: 44px; padding-block: 12px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) #app .workspace #main .pv-operations :is(.ros-panel,.rp-panel,.rbu-records,.rbu-range,.rbu-account,.rbu-services,.roc-section) {
    padding: var(--ra-space) !important; border-radius: var(--ra-radius);
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) #app .workspace #main .pv-staff-accounts .staff-access-form { padding: var(--ra-space); border-radius: var(--ra-radius); }

  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.table-wrap,.rbu-scroll) {
    max-width: 100%; border-radius: var(--ra-radius); scrollbar-color: var(--line) var(--white); overscroll-behavior-inline: contain;
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) table { font-size: 14px; line-height: 1.55; font-variant-numeric: tabular-nums; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(th,td) { padding: var(--ra-cell-space) 16px; border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) th { font-size: 12px; font-weight: 600; line-height: 1.5; letter-spacing: .02em; color: var(--muted); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) td { font-size: 14px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) td small { font-size: 12px; line-height: 1.6; }

  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.pv-dialog,.pvap-dialog,.rbu-dialog) { border-radius: var(--ra-radius); border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.pv-dialog,.pvap-dialog) :is(.dialog-head,.dialog-body,.dialog-foot,.pvap-head,.pvap-body) { padding: var(--ra-space); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.pv-dialog,.pvap-dialog) :is(.dialog-head,.pvap-head) { align-items: flex-start; gap: 16px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.pv-dialog,.pvap-dialog) :is(.dialog-head h2,.pvap-head h2) { line-height: 1.3; overflow-wrap: anywhere; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.dialog-close,.pvap-close) { flex-shrink: 0; border-radius: 8px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .pv-dialog .dialog-foot { gap: 8px; flex-wrap: wrap; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.error,.empty,.ros-message,.safety-note,.flow-context) { font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; border-radius: 8px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog) :is(.error,.ros-message,.ros-timezone,.flow-context) { border-left-width: 1px; }

  /* Shared tools inherit academy tokens only inside their own surfaces. */
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl,.rtl-dialog,.rtl-workspace,.rtb-dialog,.rwt-dialog) {
    --text: var(--ink); --text2: var(--muted); --text3: var(--muted); --bg-card: var(--white); --bg-input: var(--white);
    --border: var(--line); --border2: var(--line); --teal: var(--olive); --danger: var(--red);
    --rtl-ink: var(--ink); --rtl-muted: var(--muted); --rtl-cyan: var(--olive);
    font-family: var(--body); color: var(--ink); color-scheme: inherit;
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-dialog,.rtl-workspace,.rtb-dialog,.rwt-dialog) { border-radius: var(--ra-radius); border-color: var(--line); background: var(--white); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-card,.rtl-operation,.rwt-card,.rwt-fields,.rwt-field-row,.rwt-header,.rwt-tabs,.rwt-table-wrap) { background: var(--white); color: var(--ink); border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-card,.rtl-operation) { padding: var(--ra-space); border-radius: var(--ra-radius); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-categories button,.rtl-selections button) { background: var(--white); color: var(--ink); border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-categories button[aria-pressed=true],.rtl-selections button[aria-pressed=true],.rtl-dialog footer button,.rtl-action-card > button,.rtl-add-actions > button,.rtl-group > button,.rtl-operation > button) { background: var(--ink); color: var(--white); border-color: var(--ink); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-action-card > button,.rtl-operation > button):disabled { background: var(--paper); color: var(--muted); border-color: var(--line); opacity: .65; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rtl-card:hover { transform: none; border-color: var(--olive); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-intro h2,.rtl-card h3,.rtl-dialog h2,.rtb-top h2,.rtb-metrics strong) { font-family: var(--display); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-eyebrow,.rtb-eyebrow,.rwt-eyebrow) { display: none; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-dialog,.rtl-workspace,.rtb-dialog,.rwt-dialog) button {
    min-height: 44px; min-width: 44px; max-width: 100%; font-size: 14px; line-height: 1.4; border-radius: 8px; white-space: normal;
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl,.rtl-dialog,.rtl-workspace,.rtb-dialog,.rwt-dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=hidden]),select,textarea) {
    min-height: 44px; font-size: 14px; border-radius: 8px; caret-color: var(--olive); background: var(--white); color: var(--ink); border-color: var(--line);
  }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-card > p,.rtl-operation p,.rtl-count,.rtl-search,.rtl-card-top,.rtl-dialog-content > p,.rtl-dialog li,.rtl-destination p,.rwt-muted,.rwt-section-head p,.rwt-card p) { font-size: 14px; line-height: 1.6; color: var(--muted); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rwt-header h1,.rwt-section-head h2,.rwt-card h3) { color: var(--ink); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-workspace-top,.rwt-dialog th) { background: var(--paper); color: var(--ink); border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-controls,.rtl-operations,.rtl-dialog > header,.rtl-dialog footer,.rwt-dialog td) { border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rwt-dialog .rwt-tabs { flex-wrap: wrap; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rwt-dialog button:not(.rwt-secondary):not(.rwt-icon):not(.rwt-link):not(.rwt-chip) { background: var(--olive); color: var(--academy-button-text, var(--white)); border-color: var(--olive); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rwt-dialog :is(.rwt-secondary,.rwt-icon,.rwt-chip) { background: var(--paper); color: var(--ink); border-color: var(--line); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rwt-dialog .rwt-link { color: var(--olive); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rwt-dialog .rwt-tabs button { background: transparent; color: var(--muted); border-color: transparent; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) .rwt-dialog .rwt-tabs button[aria-current=page] { background: var(--paper); color: var(--ink); border-color: var(--olive); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rwt-dialog .rwt-danger,.rwt-dialog .rwt-error) { color: var(--red); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtl-workspace .rtl,.rtl-dialog-content,.rtb-dialog,.rwt-body) { padding: var(--ra-space); }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(.rtb-field,.rtb-summary,.rtb-metrics span,.rtb-mode,.rtb-warnings,.rtb-error) { font-size: 14px; }

  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog,.rtl,.rtl-dialog,.rtl-workspace,.rtb-dialog,.rwt-dialog) :is(button,a,input,select,textarea,summary):focus-visible { outline: 2px solid var(--olive); outline-offset: 3px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog,.rtl,.rtl-dialog,.rwt-dialog) :is(input,textarea)::placeholder { color: var(--muted); opacity: 1; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog,.rtl,.rtl-dialog,.rwt-dialog) button[aria-busy=true] { cursor: wait; }
}
@media screen and (max-width: 768px) {
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native):not([data-ranking-academy-density=compacta]):not([data-ranking-academy-density=amplia]) { --ra-space: 16px; }
  body.rp-presentation-v2:not(.ranking-business-account):not(.ranking-mobile):not(.pv-native) :is(#app .workspace #main,.pv-dialog,.pvap-dialog,.rbu-dialog,.rtl,.rtl-dialog,.rtb-dialog,.rwt-dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea) { font-size: 16px; }
}
