@media (max-width: 800px) {
  body { padding-bottom: 66px; }
  .sidebar { position: fixed; inset: auto 0 0 0; width: 100%; height: 66px; z-index: 900; flex-direction: row; padding: 4px 6px env(safe-area-inset-bottom); border-top: 1px solid rgba(255,255,255,.25); box-shadow: 0 -6px 20px rgba(16,24,40,.12); }
  .side-brand { display: none; }
  .sidebar nav { display: flex; flex: 3; padding: 0; overflow: visible; gap: 2px; }
  .sidebar nav a, .side-bottom a, .side-bottom button { min-width: 0; flex: 1; min-height: 56px; padding: 5px 2px; font-size:var(--ui-size-label); }
  .sidebar nav a iconify-icon, .side-bottom iconify-icon { font-size:var(--ui-size-lg); }
  .sidebar nav .disabled { display: none; }
  .side-bottom { display: flex; flex: 2; align-items: stretch; margin: 0; padding: 0; }
  .side-bottom a, .side-bottom form { flex: 1; }
  .side-bottom button { width: 100%; flex-direction: column; gap: 4px; }
  main { padding-bottom: 24px; }
  .rd-overlay { height: 100dvh; overflow: hidden; }
  .rd-modal { height: 100dvh; }
  .rd-header { padding: calc(10px + env(safe-area-inset-top)) 14px 9px; gap: 8px; }
  .rd-heading { min-width: 0; }
  .rd-heading small { margin-bottom: 4px; font-size:var(--ui-size-caption); }
  .rd-heading h2 { display: -webkit-box; overflow: hidden; font-size: 18px; line-height: 1.25; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  /* Описание в шапке раньше на телефоне пряталось целиком, а больше нигде в
     окне его нет. Теперь это две строки с «Показать полностью»; прячется
     только метка категории — ради места под названием. */
  .rd-heading-desc { margin-top: 4px; font-size:var(--ui-size-caption); }
  .rd-heading-desc .rd-category { display: none; }
  .rd-close { width: 42px; height: 42px; flex: 0 0 42px; }
  .rd-summary { margin: 0 12px 2px; padding: 8px 0; gap: 5px; }
  .rd-summary div { padding: 3px 10px; }
  .rd-summary div:nth-child(5) { display: none; }
  .rd-tabs { gap: 5px; padding: 0 10px; scroll-snap-type: x proximity; scrollbar-width: none; }
  .rd-tabs::-webkit-scrollbar { display: none; }
  .rd-tabs button { min-height: 44px; padding: 11px 9px 8px; font-size:var(--ui-size-caption); scroll-snap-align: start; }
  .rd-main { padding: 12px; }
  .rd-block { padding: 13px; }
  .rd-property { grid-template-columns: 92px 1fr; }
  .rd-side { padding: 0 12px 18px; }
  .rd-side .rd-block:first-child, .rd-side .rd-block:last-child { display: none; }
  .rd-rfq-toolbar { position: static; display: grid; grid-template-columns: 1fr auto; gap: 8px; }
  .rd-rfq-toolbar span { margin: 0; }
  .rd-rfq-toolbar button { grid-column: 1 / -1; min-height: 44px; }
  .rd-rfq-toolbar label { display: flex; align-items: center; gap: 8px; min-height: 44px; }
  .rd-supplier-result { gap: 8px 10px; padding: 12px 0; }
  .rd-result-main p, .rd-result-main small { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  .rd-result-reason { margin-top: 5px; }
  .rd-result-meta { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; text-align: left; }
  .crm-overlay { height: 100dvh; overflow: hidden; }
  .crm-modal { height: 100dvh; }
  .crm-head { padding: calc(10px + env(safe-area-inset-top)) 16px 10px; }
  .crm-title-row h2 { font-size: 18px; }
  .crm-title-row p { font-size:var(--ui-size-caption); }
  .crm-progress { margin-top: 12px; }
  .crm-body { padding: 16px 14px 110px; scroll-padding-bottom: 110px; }
  .crm-body h3 { font-size:var(--ui-size-lg); }
  .crm-tabs { overflow-x: auto; }
  .crm-tabs button { min-width: 105px; min-height: 44px; padding: 7px; }
  .crm-footer { position: relative; bottom: auto; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); box-shadow: 0 -5px 14px rgba(16,24,40,.06); }
  .crm-footer button { min-height: 44px; }
  .crm-description { min-height: 125px; }
  .crm-position { padding: 11px; }
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select, textarea, button, .button { min-height: 44px; }
  input[type="checkbox"], input[type="radio"] { width: 20px; height: 20px; min-width: 20px; min-height: 20px; margin: 0; accent-color: #0868e8; }
  .rd-result-check { display: flex; align-items: flex-start; justify-content: center; padding-top: 4px; }
  .rd-result-check input { width: 20px; height: 20px; }
  .request-card-delete { top: 9px; right: 9px; }
  .request-card-link { padding: 16px; }
  .request-list-card h2 { margin-right: 38px; }
}
@media (max-width: 390px) {
  .sidebar nav a, .side-bottom a, .side-bottom button { font-size:var(--ui-size-label); }
  .rd-tabs button { padding-inline: 7px; }
  .crm-title-row p { display: none; }
}
