.customer-page{max-width:1180px}.customer-head{max-width:720px}.customer-head h1{font:normal clamp(48px,5vw,72px)/1 Georgia,serif;margin:24px 0 16px}.customer-head>p:last-child{color:var(--muted)}
.order-lookup{max-width:760px;margin:36px 0 24px;padding:28px;background:var(--soft);border-radius:12px}.order-lookup>label{display:block;margin-bottom:9px;font-size:12px;text-transform:uppercase}.order-lookup>div{display:flex;gap:10px}.order-lookup input{min-width:0;flex:1;border:1px solid var(--line);border-radius:28px;background:#fff;padding:0 20px}.order-lookup .form-error{color:#a83229;margin:12px 4px 0}
.order-status-result{max-width:760px}.order-status-result>article{border:1px solid var(--line);border-radius:12px;padding:28px}.status-line{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.status-line span{color:var(--muted)}.customer-order-status{padding:7px 12px;border-radius:20px;background:var(--soft)}.customer-order-status.processing{background:#fff0ba}.customer-order-status.completed{background:#dff2d0}.status-items{display:flex;flex-direction:column;gap:8px;padding-top:18px;color:var(--muted)}
.favorites-section,.viewed-section{min-width:0;margin-top:80px}.viewed-section{margin-top:55px}.viewed-products{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:16px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x}.viewed-products .product-card{flex:0 0 calc(25% - 18px);scroll-snap-align:start}.viewed-products .empty-state{width:100%;flex:none}
.saved-orders{max-width:760px;margin:30px 0}.saved-orders-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}.saved-orders-head h2{margin:0;font:28px Georgia,serif}.saved-orders-head p{margin:0;color:var(--muted);font-size:12px}.saved-orders>div:last-child{display:flex;flex-direction:column;gap:8px}.saved-orders button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:17px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.saved-orders button:hover{background:var(--soft)}.saved-orders button span{font-weight:700;overflow-wrap:anywhere}.saved-orders button small{color:var(--muted)}.saved-orders button b{font-size:12px}

/* Переключатель языка следует визуальному языку активной темы. */
.header .language-select{--language-bg:color-mix(in srgb,var(--paper) 92%,var(--soft));--language-border:var(--line);--language-shadow:0 7px 20px color-mix(in srgb,var(--ink) 11%,transparent);height:38px;min-width:76px;padding:0 10px;border:1px solid var(--language-border);border-radius:999px;background:var(--language-bg);color:var(--ink);box-shadow:var(--language-shadow),inset 0 1px color-mix(in srgb,#fff 65%,transparent);font-size:11px;font-weight:750;letter-spacing:.02em;cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}
.header .language-select:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--ink) 34%,var(--language-border))}
.header .language-select:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 60%,transparent);outline-offset:2px}
html[data-theme="restaurant"] .header .language-select{--language-bg:linear-gradient(145deg,#241c16,#120f0d);--language-border:#76533c;--language-shadow:0 9px 24px #0007;color:#f0dfca;box-shadow:var(--language-shadow),inset 0 1px #ffffff16}
html[data-theme="services"] .header .language-select{--language-bg:linear-gradient(145deg,#fff,#e9f4f3);--language-border:#a8c9cc;--language-shadow:0 8px 20px #164b5518;color:#123f4b}
html[data-theme="monochrome"] .header .language-select{--language-bg:linear-gradient(145deg,#fff,#e8e9eb);--language-border:#c9cace;--language-shadow:0 8px 22px #0002;color:#111214;box-shadow:var(--language-shadow),inset 0 1px #fff}
html[data-theme="openfire"] .header .language-select{--language-bg:linear-gradient(145deg,#241914,#120f0d);--language-border:#744735;--language-shadow:0 9px 25px #0008;color:#f6e8da;box-shadow:var(--language-shadow),inset 0 1px #ffb18c1f}
.catalog-search-query{margin:0 0 22px;color:var(--muted);font-size:14px}

@media(min-width:801px){
  .header{gap:24px}
  .header>.logo{flex:0 1 auto;max-width:min(330px,32vw);display:flex;align-items:center;gap:13px;overflow:hidden}
  .header>.logo img{flex:0 0 auto;width:auto!important;max-width:140px!important;max-height:42px!important;object-fit:contain}
  .header-store-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;letter-spacing:.04em}
  .header .nav{flex:1 1 0;min-width:0;max-width:none;margin:0!important;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:8px 2px 13px;white-space:nowrap;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
  .header-actions{flex:0 0 auto}
  .header .nav a{flex:0 0 auto}
  .header .nav::-webkit-scrollbar{height:5px}
  .header .nav::-webkit-scrollbar-track{background:transparent}
  .header .nav::-webkit-scrollbar-thumb{border-radius:999px;background:var(--accent);box-shadow:inset 0 1px color-mix(in srgb,#fff 45%,transparent)}
  .header .nav::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 76%,var(--ink))}
}

@media(max-width:800px){.order-lookup{padding:20px}.order-lookup>div{display:block}.order-lookup input{width:100%;height:54px}.order-lookup .button{width:100%;margin-top:10px}.saved-orders-head{display:block}.saved-orders-head p{margin-top:7px}.saved-orders button{grid-template-columns:1fr auto}.saved-orders button small{grid-column:1}.saved-orders button b{grid-column:2;grid-row:1/3}.viewed-products .product-card{flex:0 0 230px}}

/* Единая мобильная раскладка каталогов товаров для всех тем. */
@media(max-width:800px){
  .hero.banner-text-on-light .hero-copy h1,.hero.banner-text-on-light .hero-copy .lead,.hero.banner-text-on-light .hero-copy .eyebrow{color:#080909!important;text-shadow:none!important}
  .hero.banner-text-on-dark .hero-copy h1,.hero.banner-text-on-dark .hero-copy .lead,.hero.banner-text-on-dark .hero-copy .eyebrow{color:#fff!important;text-shadow:none!important}
  .header .language-select{height:34px;min-width:68px;max-width:72px;padding:0 6px;font-size:10px;box-shadow:0 5px 15px color-mix(in srgb,var(--ink) 13%,transparent),inset 0 1px color-mix(in srgb,#fff 55%,transparent)}
  .header>.logo{display:none!important}
  .nav.open{height:auto;max-height:calc(100dvh - 70px);min-height:0;overflow-x:hidden;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding-bottom:calc(36px + env(safe-area-inset-bottom))}
  .nav .mobile-menu-logo{flex:0 0 auto;width:100%;min-height:138px;margin:0 0 18px!important;padding:28px 14px 32px!important;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
  .nav .mobile-menu-logo img{width:66.666%!important;max-width:66.666%!important;height:auto!important;max-height:none;object-fit:contain}
  .nav .mobile-menu-contacts{width:100%;margin-top:18px;padding-top:22px;border-top:1px solid var(--line)}
  .nav .mobile-menu-contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .nav .mobile-menu-contact-actions:has(a:only-child){grid-template-columns:1fr}
  .nav .mobile-menu-contact-button{min-height:46px;padding:10px 12px;border:1px solid currentColor;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;text-align:center}
  .nav .mobile-menu-contacts>span{display:block;margin:23px 0 11px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
  .nav .mobile-menu-socials{display:flex;flex-wrap:wrap;gap:8px}
  .nav .mobile-menu-socials a{padding:9px 12px;border:1px solid var(--line);border-radius:999px;font-size:11px;text-transform:none}
  #catalog .filters{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:14px;overflow:visible;padding:0 0 22px;border-bottom:1px solid var(--line)}
  .category-filters{width:100%;display:flex;flex-wrap:wrap!important;overflow:visible;padding:14px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:16px;background:color-mix(in srgb,var(--soft) 66%,transparent);gap:7px}
  .category-filters button{flex:0 0 auto;white-space:normal;text-align:left}
  #catalog .property-filters{width:100%;min-width:0;display:flex;flex-wrap:wrap!important;overflow:visible!important;gap:10px;padding:16px 0 0;border-top:1px solid var(--line)}
  #catalog .property-filters label{flex:1 1 calc(50% - 5px);min-width:min(145px,100%);max-width:100%;margin:0}
  #catalog .property-filters select{width:100%;min-width:0;min-height:44px;margin:0}
  #catalog .filters>#sortSelect{width:100%;min-height:46px;margin:0}
  #featuredProducts,
  .home-viewed-section .viewed-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;overflow:visible!important;overflow-x:visible!important;padding:0 20px 10px!important;scroll-snap-type:none!important;touch-action:auto}
  #profile .viewed-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;overflow:visible!important;overflow-x:visible!important;padding:0 20px 10px!important;scroll-snap-type:none!important;touch-action:auto}
  #featuredProducts .product-card,
  .home-viewed-section .viewed-products .product-card,
  #profile .viewed-products .product-card{width:100%;max-width:none;min-width:0;flex:none;scroll-snap-align:none;transform:none}
  #profile .viewed-products{padding-inline:0!important}
  #featuredProducts .product-art,
  .home-viewed-section .product-art{height:240px;min-height:0;aspect-ratio:auto}
  #profile .product-art{height:240px;min-height:0;aspect-ratio:auto}
  #profile .viewed-products .empty-state{grid-column:1/-1;width:100%}
}
@media(max-width:430px){#catalog .property-filters label{flex-basis:100%}}
