.rr-customer-home { display:none; }
@media(max-width:700px) {
  body.rr-mobile-customer { overflow-x:clip; }
  .rr-mobile-customer #rr-customer-nav { position:sticky; top:var(--rr-customer-header-height,0px); z-index:99; display:flex; align-items:center; gap:10px; padding:6px 10px; background:#fff; border-bottom:1px solid #dbe4ee; }
  #rr-customer-nav h1 { flex:1; font-size:17px; margin:0; min-width:0; }
  #rr-customer-nav button, #rr-customer-nav a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 12px; border:1px solid #cbd5e1; border-radius:9px; background:#f8fafc; color:#0f3a5f; font:inherit; font-weight:700; text-decoration:none; }
  #rr-customer-nav button:disabled { opacity:.55; }
  #rr-customer-nav [hidden] { display:none!important; }
  .rr-mobile-customer .rr-customer-home { display:block; padding:20px 16px; margin:0 auto 24px; max-width:480px; border-radius:14px; background:#eff6ff; }
  .rr-customer-home h1 { font-size:26px; margin:0 0 10px; color:#0f3a5f; }
  .rr-customer-home p { color:#475569; line-height:1.6; }
  .rr-customer-home a { display:flex; min-height:48px; align-items:center; justify-content:center; margin:12px 0; border-radius:10px; text-decoration:none; font-size:18px; font-weight:800; }
  .rr-customer-primary { background:#2563eb; color:white; }
  .rr-customer-secondary { border:1px solid #2563eb; color:#1d4ed8; background:white; }
  .rr-customer-home-note { font-size:14px; }
  .rr-mobile-customer .home-info { margin-top:24px; }
  .rr-mobile-customer .home-info-tab { font-size:12px; }
  .rr-mobile-customer #cp-layout { display:block; padding:12px 10px 24px; min-height:0; }
  .rr-mobile-customer #cp-layout #cp-search-form { display:flex; position:static; flex-direction:column; gap:10px; padding:16px; border:1px solid #dbe4ee; border-radius:14px; }
  .rr-mobile-customer #cp-search-form > * { width:100%; box-sizing:border-box; }
  #rr-search-error { color:#991b1b; background:#fef2f2; border:1px solid #fecaca; border-radius:9px; padding:10px; }
  #rr-search-error[hidden] { display:none; }
  .rr-mobile-customer #cp-layout .cp-field { margin:0; min-width:0; }
  .rr-mobile-customer #cp-date-row, .rr-mobile-customer #cp-layout .cp-search-pair { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .rr-mobile-customer #cp-layout input, .rr-mobile-customer #cp-layout select { width:100%; font-size:16px; min-width:0; min-height:44px; }
  .rr-mobile-customer #cp-layout #cp-left-col { width:100%; min-width:0; }
  .rr-mobile-customer #cp-layout #cp-result-controls { position:static; flex-wrap:wrap; gap:8px; padding:10px 0; }
  .rr-mobile-customer #cp-layout #cp-result-sort { width:auto; }
  .rr-mobile-customer #cp-layout .cp-biz-row { display:block; padding:0; border:1px solid #e2e8f0; margin-bottom:14px; }
  .rr-mobile-customer #cp-layout .cp-result-company { white-space:normal; text-align:left; min-height:44px; font-size:16px; }
  .rr-mobile-customer #cp-layout .cp-activity-strip { flex:1 1 100%; min-width:0; max-width:100%; }
  .rr-mobile-customer #cp-layout .cp-result-activities { display:block; overflow:visible; min-width:0; }
  .rr-mobile-customer #cp-layout .cp-search-trip { min-height:48px; width:100%; max-width:none; }
  .rr-mobile-customer #cp-layout .cp-activity-prev, .rr-mobile-customer #cp-layout .cp-activity-next { min-height:48px; min-width:32px; }
  .rr-mobile-customer #cp-layout .cp-result-actions { display:grid; }
  .rr-mobile-customer #cp-layout #cp-divider { display:none!important; }
  .rr-mobile-customer #cp-layout #cp-center { width:100%; overflow:visible; }
  .rr-mobile-customer #cp-layout #cp-center-placeholder { display:none!important; }
  .rr-mobile-customer #cp-layout #cp-calendar-context { display:flex; }
  .rr-mobile-customer #cp-layout #cp-calendar-selection { font-size:16px; }
  .rr-mobile-customer #rr-company-screen { padding:20px 16px; border:1px solid #dbe4ee; border-radius:14px; background:#eff6ff; }
  #rr-company-screen h2 { font-size:23px; overflow-wrap:anywhere; }
  #rr-company-screen .cp-biz-logo { width:72px; height:72px; }
  #rr-company-screen .cp-ra-btn { display:flex; width:100%; box-sizing:border-box; margin:12px 0; min-height:48px; font-size:16px; }
  #rr-results-actions { display:flex; gap:10px; margin-bottom:10px; }
  #rr-results-actions button, #rr-calendar-activities button { min-height:44px; border:1px solid #bfdbfe; border-radius:9px; color:#1d4ed8; background:#eff6ff; padding:8px 14px; font:inherit; }
  #rr-calendar-activities { display:flex; gap:8px; overflow-x:auto; padding:8px 0; }
  #rr-calendar-activities button { flex-shrink:0; }
  #rr-calendar-activities button[aria-expanded="true"] { border:2px solid #1e40af; font-weight:800; background:#dbeafe; }
  .rr-mobile-customer #cp-crit-card { width:100%; box-sizing:border-box; margin-top:0; }
  .rr-mobile-customer .cp-crit-facts { flex:1 1 100%; }
  .rr-mobile-customer .cp-crit-desc { max-height:none; overflow-wrap:anywhere; }
  .rr-mobile-customer #cp-layout .cp-company-page { margin:0; width:100%; }
  .rr-mobile-customer #cp-layout .cp-company-page-frame { width:100%; }
  #rr-company-screen { position:relative; box-sizing:border-box; }
  #rr-company-screen .cp-trip-focus-info { margin:16px 0 12px; }
  #rr-calendar-company { padding:10px 0 4px; font-size:16px; font-weight:700; }
  #rr-calendar-company a { display:inline-block; padding:8px 0; }
  #rr-company-screen [data-ra="calendar"] { margin-top:12px; width:auto; min-height:44px; padding:8px 16px; }
  #rr-company-screen .cp-ra-btn.cp-trip-calendar { width:auto; margin:0; min-height:44px; padding:8px 16px; font-size:14px; }
  #cp-company-screen-body { padding:14px; }
  #cp-company-trip-info { margin:0 auto 14px; }
  #cp-company-screen-calendar { min-height:44px; }
  .rr-mobile-customer #cp-layout.cp-map-mode #cp-search-results { display:flex; flex-direction:column-reverse; }
  .rr-mobile-customer #cp-layout.cp-map-mode #cp-result-list { max-height:none; width:100%; }
  .rr-mobile-customer #cp-layout #cp-map-wrap { width:100%; height:360px; margin-bottom:12px; }
  .rr-mobile-customer #cp-layout.cp-map-mode .cp-biz-row { gap:5px; padding:8px; }
  .rr-mobile-customer #cp-layout.cp-map-mode .cp-biz-logo { width:28px; height:28px; }
  .rr-mobile-customer #cp-layout.cp-map-mode .cp-search-trip { width:auto; }
  /* Customer screens enter and leave from the right. */
  .rr-mobile-customer #cp-layout[data-mobile-motion="right"][data-mobile-screen="search"] #cp-search-form,
  .rr-mobile-customer #cp-layout[data-mobile-motion="right"][data-mobile-screen="results"] #cp-left-col,
  .rr-mobile-customer #cp-layout[data-mobile-motion="right"][data-mobile-screen="map"] #cp-left-col { animation:rr-enter-right 260ms ease-out; }
  .rr-mobile-customer #cp-layout[data-mobile-motion="right"][data-mobile-screen="company"] #rr-company-screen,
  .rr-mobile-customer #cp-layout[data-mobile-motion="right"][data-mobile-screen="website"] .cp-company-page { animation:rr-enter-right 260ms ease-out; }
  .rr-mobile-customer #cp-layout[data-mobile-motion="right"][data-mobile-screen="calendar"] #cp-center { animation:rr-enter-right 260ms ease-out; }
  .rr-mobile-customer #cp-layout .rr-leaving { transform:translateX(100%); transition:transform 220ms ease-in; pointer-events:none; }
  .rr-mobile-customer #cp-layout[data-mobile-screen]:not([data-mobile-screen="search"]) #cp-search-form,
  .rr-mobile-customer #cp-layout[data-mobile-screen="search"] #cp-left-col,
  .rr-mobile-customer #cp-layout[data-mobile-screen="company"] #cp-left-col,
  .rr-mobile-customer #cp-layout[data-mobile-screen="website"] #cp-left-col,
  .rr-mobile-customer #cp-layout[data-mobile-screen="calendar"] #cp-left-col,
  .rr-mobile-customer #cp-layout[data-mobile-screen="search"] #cp-center,
  .rr-mobile-customer #cp-layout[data-mobile-screen="results"] #cp-center,
  .rr-mobile-customer #cp-layout[data-mobile-screen="map"] #cp-center { display:none!important; }
}
@keyframes rr-enter-right { from { transform:translateX(100%); } to { transform:translateX(0); } }
@media(prefers-reduced-motion:reduce) {
  .rr-mobile-customer #cp-layout .cp-company-page, .rr-mobile-customer #cp-layout #cp-center,
  .rr-mobile-customer #cp-layout #cp-search-form, .rr-mobile-customer #cp-layout #cp-left-col,
  .rr-mobile-customer #cp-layout #rr-company-screen { animation:none!important; transition:none!important; }
}
