/* RusWeo — ДЕСКТОПНАЯ ВЕРСИЯ (экран от 1024 px). Подключается на всех страницах приложения после app.css / workspace.css
   с media="(min-width:1024px)", поэтому телефоны и планшеты (< 1024 px) этот файл не получают и не меняются.
   Что делает: левая панель навигации вместо нижней, широкая область контента, колонки для карточек и списков,
   модальные окна по центру, наведение/фокус для мыши и клавиатуры. Разметку и логику страниц не трогает. */
@media (min-width:1024px){
  :root{--rw-rail:212px;--rw-max:1500px;--rw-gap:20px;--rw-zoom:1;--rw-pad:96px}   /* --rw-zoom: масштаб интерфейса под размер монитора (см. конец файла) */
  html{scrollbar-gutter:stable}
  body{background:linear-gradient(180deg,#f3f7fb 0,#eaf0f7 100%)!important;padding-left:calc(var(--rw-rail) * var(--rw-zoom));min-height:100vh}

  /* ---------- левая панель навигации (клиент, водитель, администратор) ---------- */
  nav.bottom-nav,.client-nav-present nav.bottom-nav{zoom:var(--rw-zoom);position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:auto!important;transform:none!important;width:var(--rw-rail)!important;height:auto!important;
    display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;padding:92px 12px 18px!important;margin:0;border:0!important;border-right:1px solid #dfe7ef!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;overflow-y:auto;z-index:2147482000}
  nav.bottom-nav::before{content:'RusWeo';position:absolute;top:26px;left:24px;font:900 26px/1 Inter,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;letter-spacing:-.02em;color:#0c385b}
  nav.bottom-nav>a,nav.bottom-nav>button,nav.bottom-nav .nav-btn{flex:0 0 auto;display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start!important;gap:14px;width:100%;height:46px;min-height:46px;padding:0 14px!important;border-radius:13px;font-size:14px!important;font-weight:800;text-align:left;color:#53657d;background:transparent;cursor:pointer;transition:background .15s,color .15s}
  nav.bottom-nav>a:hover,nav.bottom-nav>button:hover{background:#eef5fb;color:#0c385b}
  nav.bottom-nav>a.active,nav.bottom-nav>a[aria-current],nav.bottom-nav .nav-btn.active{background:#e3f1fd!important;color:#0b5a8c!important}
  nav.bottom-nav .nav-btn.active{background:#0b6fb8!important;color:#fff!important}
  nav.bottom-nav .ico,nav.bottom-nav i{font-size:21px!important;line-height:1;width:26px;text-align:center;margin:0!important}
  nav.bottom-nav>a:focus-visible,nav.bottom-nav>button:focus-visible{outline:3px solid #8cc8f2;outline-offset:2px}

  /* ---------- общий контейнер ---------- */
  main.page,main.shell,main#app.shell{zoom:var(--rw-zoom);width:min(calc((100vw - var(--rw-rail) * var(--rw-zoom) - var(--rw-pad)) / var(--rw-zoom)),var(--rw-max))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;padding-bottom:56px!important}
  main.page .shell{width:100%!important;max-width:none!important;padding-left:0!important;padding-right:0!important;padding-top:22px!important;padding-bottom:40px!important}
  .client-nav-present .shell{padding-bottom:40px!important}
  main.shell,main#app.shell{padding-top:26px!important;padding-left:0!important;padding-right:0!important}
  header.topbar{zoom:var(--rw-zoom);position:sticky;top:0;height:64px;padding:0 32px!important;border-bottom:1px solid #dfe7ef;background:rgba(255,255,255,.94)!important}
  header.topbar .logo{height:40px}
  header.topbar .title{text-align:left!important;flex:1;font-size:20px!important;padding-left:14px}
  .rw-llc{left:calc(var(--rw-rail) * var(--rw-zoom))!important}

  /* ---------- первый экран страницы (баннер) ---------- */
  .hero{height:224px!important;min-height:224px!important;border-radius:26px!important;margin:24px 0 8px!important}
  .hero>img{height:100%!important;width:100%!important;object-fit:cover}
  .hero h1,.hero .hero-title{font-size:clamp(28px,2.6vw,40px)!important}

  /* ---------- главная и «Поддержка»: плитки сервисов ---------- */
  .hub-page .shell{padding-top:30px!important}
  .hub-title{font-size:34px!important}
  .service-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(310px,1fr))!important;gap:var(--rw-gap)!important}
  .service-grid>*{min-height:168px}
  .service-grid>a:hover,.service-grid>button:hover,.service-tile:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(20,60,100,.18)}
  .service-tile{transition:transform .18s,box-shadow .18s}

  /* ---------- страницы-списки карточек (профиль, документы, заявки, новости, справка) ---------- */
  main.page .shell:has(>section.card:nth-child(2)){column-count:2;column-gap:var(--rw-gap)}
  main.page .shell:has(>section.card:nth-child(2))>section.card{break-inside:avoid;margin:0 0 var(--rw-gap)!important}
  main.page .shell:has(>section.card:nth-child(2))>:not(section.card){column-span:all}
  .card{border-radius:20px}
  .card:hover{box-shadow:0 10px 26px rgba(34,57,90,.08)}

  /* ---------- «Мои поездки»: карточки поездок в 2 колонки ---------- */
  #requestList.request-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;align-items:start}
  #requestList.request-list>:not(.request-card){grid-column:1/-1}
  #requestTabs.request-tabs{max-width:560px}

  /* ---------- заказ поездки (Личные поездки / Бизнес): форма слева, итог справа ---------- */
  #mode.tabs{max-width:560px}
  #standardPanel,#hourlyPanel{width:100%}
  #bookingForm{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:24px;align-items:start}
  #bookingForm:has(>#bookingDetails.hidden){grid-template-columns:minmax(0,1040px);justify-content:center}
  #bookingForm>#bookingDetails:not(.hidden){position:sticky;top:90px;max-height:calc(100vh - 110px);overflow:auto}
  .ready-routes-section{max-width:1280px}
  .ready-routes{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
  .ready-routes.hidden{display:none!important}

  /* ---------- кабинеты (водитель, администратор): рабочая область ---------- */
  .page.active>.panel,.page.active>div{max-width:none}
  #page-home.active{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row dense;gap:16px 20px;align-items:start}
  #page-home.active>.push-gate,#page-home.active>#rwPromoCard,#page-home.active>.home-countdown,#page-home.active>.rw-readiness-banner{order:-2}
  #page-home.active>#rwMapsUsage{order:9}
  #page-home.active>.home-nearest{grid-row:span 3}
  #page-home.active>#rwPromoCard,#page-home.active>.home-countdown,#page-home.active>.push-gate,#page-home.active>#rwClientErrCard,#page-home.active>#rwMapsUsage,#page-home.active>.rw-readiness-banner,#page-home.active>.home-unread-messages{grid-column:1/-1}
  #page-menu.active{display:block;column-count:2;column-gap:20px}
  .menu-group{break-inside:avoid;margin-bottom:16px}
  .menu-item:hover{background:#f1f7fc}
  #ordersList.list,#driverOrdersList.list,.list.orders-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;align-items:start}
  #ordersList.list>:not(.classic-order-card),#driverOrdersList.list>:not(.classic-order-card){grid-column:1/-1}
  #ordersList.list>.classic-order-card.rw83-other{grid-column:auto}
  .driver-grid,.finance-grid,.money-grid{gap:16px}
  #driversList.driver-grid{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))!important;align-items:start}
  .finance-compact-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))!important}
  .panel{border-radius:20px}

  /* ---------- всплывающие панели по центру ---------- */
  .sheet-back{align-items:center!important;justify-content:center;padding:32px;z-index:2147483200!important}   /* затемнение закрывает и левую панель */
  .sheet-back .sheet,.rw86-box,.auth-card{zoom:var(--rw-zoom)}
  .sheet-back .sheet{width:min(760px,100%)!important;max-height:86vh!important;border-radius:24px!important;box-shadow:0 30px 80px rgba(16,42,77,.3)!important}

  /* ---------- мышь и клавиатура ---------- */
  a,button,[role=button],.menu-item,.nav-btn{cursor:pointer}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8cc8f2;outline-offset:2px}
  ::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:#c3d0dd;border-radius:10px;border:3px solid transparent;background-clip:content-box}
}
/* маленькие ноутбуки / планшеты в альбомной ориентации: узкая панель, карточки в одну колонку */
@media (min-width:1024px) and (max-width:1279px){
  :root{--rw-rail:200px}
  :root{--rw-pad:72px}
  nav.bottom-nav>a,nav.bottom-nav>button,nav.bottom-nav .nav-btn{font-size:14px!important;padding:0 12px!important}
  main.page .shell:has(>section.card:nth-child(2)){column-count:1}
  #bookingForm,#bookingForm:has(>#bookingDetails.hidden){grid-template-columns:minmax(0,1fr)}
  #bookingForm>#bookingDetails:not(.hidden){position:static;max-height:none}
  #requestList.request-list,#ordersList.list,#driverOrdersList.list{grid-template-columns:minmax(0,1fr)}
  #page-home.active,#page-menu.active{grid-template-columns:minmax(0,1fr)}
}
/* очень широкие мониторы */
@media (min-width:1700px){
  .service-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  main.page .shell:has(>section.card:nth-child(3)){column-count:3}
}

/* масштаб интерфейса под монитор: на большом экране при 100% текст карточек (9–13 px) выглядит мелким — увеличиваем всё содержимое целиком (zoom), а не по одному правилу */
@media (min-width:1280px){:root{--rw-zoom:1.15}}
@media (min-width:1536px){:root{--rw-zoom:1.25}}
@media (min-width:1750px){:root{--rw-zoom:1.35}}
@media (min-width:2200px){:root{--rw-zoom:1.6}}

/* ---------- кабинеты (администратор, водитель): читаемые размеры текста на компьютере (2026-10-30) ----------
   workspace.css задаёт «телефонную» компактную типографику с !important (7.5–11 px) для ВСЕХ экранов; zoom выше увеличивает её
   лишь в 1.15–1.6 раза, поэтому подписи оставались мелкими. Здесь — нижняя граница размеров для экранов от 1024 px (телефоны не затронуты).
   Значения указаны до zoom; при zoom 1.35 (1920 px) 9 px -> 12 px, 12 px -> 16 px. */
@media (min-width:1024px){
  .classic-tabs .filter{min-height:42px!important;font-size:12.5px!important}
  .classic-head strong{font-size:20px!important}.classic-head span{font-size:11px!important}
  .classic-route{font-size:13px!important}.classic-client,.history-client{font-size:12.5px!important}.classic-client b,.history-client b{font-size:13px!important}
  .classic-section-title,.history-actual .classic-section-title{font-size:11px!important}
  .classic-info-grid span,.classic-plan-grid span,.classic-plan-grid small,.classic-comment span,.history-odometer-grid span{font-size:10px!important}
  .classic-info-grid b,.classic-plan-grid b{font-size:13px!important}.classic-info-grid>div,.classic-plan-grid>div{min-height:46px!important}
  .classic-comment b{font-size:12px!important}
  .classic-order-card .terminal-line{font-size:11px!important}.classic-order-card .notice{font-size:11.5px!important}.classic-order-card .order-v2-deadline{font-size:10.5px!important}
  .accepted-actions>.classic-main-btn,.accepted-actions>.classic-btn,.new-order-actions>.classic-main-btn,.new-order-actions>.classic-btn,.history-actions>.classic-btn{height:auto!important;min-height:44px!important;font-size:12px!important;padding:6px 8px!important}
  .classic-actions,.classic-primary-actions{flex-wrap:wrap}
  #ordersList.list>.classic-order-card,#driverOrdersList.list>.classic-order-card,.list.orders-list>.classic-order-card{margin-top:0!important}   /* в сетке из 2 колонок вторая карточка не должна быть смещена вниз */
  .history-lines,.history-compact,.history-actual p,.history-odometer,.history-odometer-grid b{font-size:12px!important}
  .home-nearest .nearest-top b{font-size:12px!important}.home-nearest .route{font-size:13px!important}.home-nearest>small{font-size:11.5px!important}
  .home-countdown small{font-size:12px!important}.home-countdown strong{font-size:24px!important}
  .home-summary-panel .stat small{font-size:11px!important}.home-summary-panel .stat strong{font-size:20px!important}
  .push-gate button{font-size:12px!important}
  .owner-line-copy small{font-size:11.5px!important}
  .finance-note{font-size:12px!important}.finance-chip{font-size:12px!important}.finance-total-card small{font-size:11.5px!important}
  .money-card small,.money-card span,.finance-grid .money-card small{font-size:11px!important}
  .menu-title,.menu-copy small,.field span,.stat small{font-size:11.5px!important}
  .finance-compact-grid span{font-size:11px!important}.finance-compact-grid b{font-size:14px!important}
  .rw-llc{font-size:11px!important}
}
