/* Autogik public design system. Native Lumen controls keep Django form participation. */
@font-face{font-family:Play;src:url('/media/fonts/Play.woff2') format('woff2');font-weight:400;font-display:swap}
:root[data-theme='light']{
 --canvas:0 0% 100%;--surface:0 0% 100%;--surface-muted:216 40% 97%;--surface-strong:215 47% 12%;
 --ink:215 52% 6%;--ink-soft:218 32% 19%;--ink-muted:220 24% 44%;--line:216 30% 82%;
 --brand:212 100% 34%;--brand-solid:213 100% 29%;--brand-soft:212 90% 96%;--on-brand:0 0% 100%;--accent:213 100% 49%;
 --success:146 61% 28%;--warning:33 86% 31%;--danger:0 67% 41%;--on-danger:0 0% 100%;
 --ui-font:Play,Arial,sans-serif;--page-gutter:46px;--content-width:1640px;
 --space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--space-6:64px;
}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 var(--ui-font);color:hsl(var(--ink));background:hsl(var(--canvas));-webkit-font-smoothing:antialiased}
a{color:hsl(var(--brand));text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%}button,input,select,textarea{font-family:inherit}
:is(a,button,select,input,textarea,summary):focus-visible{outline:3px solid hsl(var(--accent));outline-offset:4px}main:focus{outline:none}
[hidden]{display:none!important}[aria-disabled='true']{pointer-events:none;opacity:.65}
lumen-icon{display:inline-flex;width:24px;height:24px;flex:0 0 auto;align-items:center;justify-content:center}lumen-icon svg{width:100%;height:100%}
h1{font-size:clamp(30px,3vw,48px);line-height:1.16;font-weight:800;letter-spacing:-1.4px;margin:0 0 var(--space-4);overflow-wrap:anywhere}
h2{font-size:clamp(22px,2vw,30px);line-height:1.3;font-weight:800;letter-spacing:-.5px;margin:var(--space-5) 0 var(--space-3)}h3{font-size:20px;line-height:1.4;font-weight:700;margin:0 0 var(--space-2)}p{margin:0 0 var(--space-2)}
label{display:block;font-size:14px;font-weight:600;color:hsl(var(--ink-soft))}
/* One Button / ButtonLink theme, also covering generated forms and API result links. */
button,.button,.ui-button,.wheel-results a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;height:auto;border:1px solid transparent;border-radius:0;padding:12px 22px;box-shadow:none;background:linear-gradient(115deg,hsl(var(--brand)),hsl(var(--brand-solid)));color:hsl(var(--on-brand));font:700 15px/1.4 var(--ui-font);text-align:center;text-decoration:none;cursor:pointer;touch-action:manipulation;white-space:normal;transition:background .15s ease,border-color .15s ease}
:is(button,.button,.ui-button,.wheel-results a):hover{background:hsl(var(--brand-solid));color:hsl(var(--on-brand));text-decoration:none}:is(button,.ui-button):disabled{opacity:.5;cursor:not-allowed}
:is(.ui-button--outline,.ui-button--secondary,.secondary,.text-button,.compare,.remove-button){border-color:hsl(var(--line));background:hsl(var(--surface));color:hsl(var(--brand))}
:is(.ui-button--outline,.ui-button--secondary,.secondary,.text-button,.compare):hover{background:hsl(var(--brand-soft));color:hsl(var(--brand-solid));border-color:hsl(var(--brand))}
.remove-button{color:hsl(var(--danger))}.remove-button:hover{background:hsl(var(--danger)/.08);color:hsl(var(--danger));border-color:hsl(var(--danger))}
.ui-button--ghost{background:transparent;color:hsl(var(--brand));border-color:transparent}.ui-button--ghost:hover{background:hsl(var(--brand-soft));color:hsl(var(--brand))}
/* One field theme covers Django form.as_p as well as explicit native Input / NativeSelect. */
input:not([type='checkbox']):not([type='radio']):not([type='hidden']),select,textarea{width:100%;min-width:0;max-width:100%;min-height:48px;border:1px solid hsl(var(--line));border-radius:0;padding:11px 14px;background:hsl(var(--surface));color:hsl(var(--ink-soft));font:400 15px/1.5 var(--ui-font);box-shadow:none}
select.ui-select{appearance:auto;padding-right:10px;background-image:none}select[multiple]{min-height:130px}:is(input,select,textarea):disabled{opacity:1;background:hsl(var(--surface-muted));color:hsl(var(--ink-muted));cursor:not-allowed}
input::placeholder,textarea::placeholder{color:hsl(var(--ink-muted))}input[type='number']{max-width:110px}input:is([type='checkbox'],[type='radio']){width:20px;height:20px;accent-color:hsl(var(--brand));vertical-align:middle;flex:0 0 auto}textarea{min-height:140px;resize:vertical}
:is(input,select,textarea)[aria-invalid='true'],.standard-form :is(input,select,textarea):user-invalid{border-color:hsl(var(--danger))}
.site{display:flex;flex-direction:column;min-height:100vh}.site>main{flex:1;min-width:0}.page-body{width:calc(100% - 2 * var(--page-gutter));max-width:var(--content-width);margin-inline:auto;padding:var(--space-5) 0 var(--space-6);min-height:400px}
.breadcrumbs{font-size:13px;color:hsl(var(--ink-muted));margin-bottom:var(--space-3)}.breadcrumbs a{color:inherit}.site-header a{color:inherit;text-decoration:none}
.site-booking{min-height:58px;font-size:21px;font-weight:800;padding:14px 30px;gap:18px;white-space:nowrap}.site-header .site-booking{color:hsl(var(--on-brand))}.site-booking lumen-icon{width:30px;height:30px}
.shopping-links a{color:hsl(var(--ink-soft))}.shopping-links a:hover{text-decoration:none}.site>.site-container>.shopping-bar{margin-bottom:0}.site-logo,.site-phone,.site-city{line-height:1.2}
/* Cards are identical across home, catalog, search, favorites, compare and account. */
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:var(--space-3) 0 var(--space-5)}.product-grid>*{min-width:0}
.product-card{position:relative;min-width:0;padding:24px 18px 18px;border:1px solid hsl(var(--line)/.65);background:hsl(var(--surface));display:flex;flex-direction:column;text-align:center}.product-card:hover{border-color:hsl(var(--brand)/.55)}
.product-title{color:hsl(var(--ink-soft));font-size:16px;min-height:48px;line-height:1.4;font-weight:700;display:block}.product-picture{display:flex;align-items:center;justify-content:center;height:205px;margin:16px 0}.product-picture img{width:100%;height:100%;object-fit:contain}
.product-tags{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;font-size:11px;min-height:33px;color:hsl(var(--ink-muted))}.product-tags span,.stock-label{background:hsl(var(--surface-muted));padding:5px 8px;height:fit-content}
.product-tags .product-tag-studded{background:hsl(var(--brand-solid));color:hsl(var(--on-brand));font-weight:700}
.installment{font-size:14px;color:hsl(var(--ink-muted));margin:14px 0 9px}.installment small{display:block;font-size:11px;margin-top:4px}.price{font-size:28px;line-height:1.3;font-weight:800;color:hsl(var(--ink));white-space:nowrap;margin:12px 0 20px}.price small{font-size:13px;color:hsl(var(--ink-muted));font-weight:400}.price del{color:hsl(var(--ink-muted));font-size:14px}
.card-actions{display:flex;gap:8px;justify-content:center;margin-top:auto}.card-actions [data-add]{flex:1;padding-inline:12px}.card-actions .compare{width:48px;min-width:48px;padding:10px}
.product-card>.text-button{border:0;padding:10px 0;background:transparent;font-size:12px;min-height:44px;color:hsl(var(--ink-muted))}.product-card>.text-button:hover{color:hsl(var(--brand))}.product-card>.text-button lumen-icon{width:18px;height:18px}.cheaper{display:block;font-size:11px;color:hsl(var(--ink-muted));text-decoration:underline;margin-top:12px}
/* Collection, filters, search and pagination compositions. */
.catalog-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:start}.catalog-layout>section{min-width:0}.catalog-filter{border:1px solid hsl(var(--line));padding:24px;height:fit-content;background:hsl(var(--surface-muted)/.5)}
.filter-fields{display:grid;gap:16px}.filter-fields label>span{display:block;font-size:13px;margin-bottom:6px}.filter-buttons{display:flex;align-items:center;gap:16px;margin-top:20px}.filter-buttons button{flex:1}.reset,.vehicle-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
.offset-range{min-width:0;margin:0;padding:0;border:0}.offset-range legend{padding:0;font-size:13px;font-weight:600;color:hsl(var(--ink-soft))}.offset-range-track{position:relative;height:44px;touch-action:none;cursor:pointer}.offset-range-rail{position:absolute;left:10px;right:10px;top:20px;height:4px;background:hsl(var(--line));border-radius:4px}.offset-range-rail span{position:absolute;inset:0;background:hsl(var(--brand));border-radius:inherit}fieldset.offset-range .offset-range-track input[type=range]{position:absolute;inset:0;width:100%;height:44px;min-height:44px;max-width:none;margin:0;padding:0;border:0;background:transparent;appearance:none;pointer-events:none;box-shadow:none}.offset-range input[type=range]::-webkit-slider-thumb{width:20px;height:20px;border:2px solid hsl(var(--surface));border-radius:50%;background:hsl(var(--brand));box-shadow:0 0 0 1px hsl(var(--brand));appearance:none;pointer-events:auto;cursor:grab}.offset-range input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid hsl(var(--surface));border-radius:50%;background:hsl(var(--brand));box-shadow:0 0 0 1px hsl(var(--brand));pointer-events:auto;cursor:grab}.offset-range input[type=range]::-moz-range-track{background:transparent}.offset-range input[data-offset-upper-slider]{z-index:3}.offset-range-values{display:grid;grid-template-columns:1fr 1fr;gap:12px}.offset-range-values label{margin:0!important;font-size:12px}fieldset.offset-range .offset-range-values input[type=number]{display:block;max-width:none;min-height:40px;padding:7px 9px}.offset-range-limits{margin:6px 0 0;font-size:11px;line-height:1.4;font-weight:400;color:hsl(var(--ink-muted))}
.catalog-filter form+form{margin-top:24px;padding-top:24px;border-top:1px solid hsl(var(--line))}.catalog-filter label{margin-bottom:16px}.catalog-filter label select{margin-top:6px}.catalog-filter .filter-fields label select{margin-top:0}.catalog-filter .vehicle-link{display:flex;margin-top:16px}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;border-bottom:1px solid hsl(var(--line));padding-bottom:20px}.sort-form{display:flex;gap:20px;flex-wrap:wrap}.sort-form label{display:flex;align-items:center;gap:10px;font-size:13px}.sort-form select{width:190px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}.catalog-filter-toggle{display:none}
.pagination{display:flex;gap:24px;align-items:center;justify-content:center;flex-wrap:wrap;margin:32px 0;font-size:14px}.pagination a{display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid hsl(var(--line))}
.search-form{display:grid;grid-template-columns:minmax(0,1fr) 240px auto;align-items:end;gap:24px;margin-bottom:32px}.search-form label{margin:0}.search-form label input{margin-top:6px}
.category-links,.page-grid,.branch-grid,.wheel-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.category-links{grid-template-columns:repeat(2,minmax(0,1fr))}
.category-links a,.page-grid>article,.page-grid>a,.branch-grid article,.wheel-results article{border:1px solid hsl(var(--line));padding:32px;background:hsl(var(--surface));min-width:0}.category-links a{color:hsl(var(--ink));font-size:22px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:132px}.category-links a:hover,.page-grid>a:hover{border-color:hsl(var(--brand));text-decoration:none;background:hsl(var(--brand-soft))}.category-links lumen-icon{color:hsl(var(--brand))}
.page-grid h2{margin:0 0 16px;font-size:24px;color:hsl(var(--ink))}.page-grid img{display:block;width:100%;height:185px;object-fit:contain;margin-bottom:24px}.page-grid p{font-size:14px;color:hsl(var(--ink-muted))}.page-grid a>span{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-size:14px}
/* Product, cart, checkout, account and payment layouts reuse the same controls. */
.product-detail{display:grid;grid-template-columns:44% minmax(0,1fr);gap:64px;margin-bottom:64px}.detail-picture{width:100%;height:480px;object-fit:contain;background:hsl(var(--surface))}.product-detail .price{font-size:40px;margin:24px 0 16px}.stock-label{display:inline-block;font-size:13px;color:hsl(var(--ink-soft))}.buy-line{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:32px 0 20px}.buy-line input{display:block;margin-top:7px}.text-button{font-size:13px}
.product-delivery{margin:6px 0;font-size:12px;line-height:1.5;color:hsl(var(--ink-soft))}.catalog-availability .product-delivery{flex-basis:100%;margin:1px 0 0}
.spec-table,.data-table{width:100%;border-collapse:collapse;font-size:14px;margin:32px 0}:is(.spec-table,.data-table) th,:is(.spec-table,.data-table) td{text-align:left;padding:14px 16px;border-bottom:1px solid hsl(var(--line));vertical-align:top}.spec-table th{color:hsl(var(--ink-muted));font-weight:400;width:45%}.data-table th{background:hsl(var(--surface-muted));font-weight:700}.table-scroll{width:100%;overflow-x:auto}
.cart-row{display:grid;grid-template-columns:80px minmax(0,1fr) 110px 110px 110px auto 48px;gap:24px;align-items:center;border-bottom:1px solid hsl(var(--line));padding:24px 0}.cart-row img{width:72px;height:72px;object-fit:contain}.cart-name{color:hsl(var(--ink-soft));font-weight:700;overflow-wrap:anywhere}.cart-row label{font-size:12px}.cart-row input{display:block;margin-top:6px}.remove-button{padding:10px;min-width:48px;font-size:24px}.cart-total{display:flex;justify-content:flex-end;align-items:center;gap:24px;padding:32px 0;font-size:24px;flex-wrap:wrap}.saved-cart-row{grid-template-columns:minmax(0,1fr) auto auto}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;max-width:1200px;align-items:start}.checkout-layout h2{margin-top:0}.standard-form{max-width:620px}.standard-form p,.standard-form>label{margin:0 0 24px}.standard-form label>:is(input:not([type='checkbox']):not([type='radio']),select,textarea){display:block;margin-top:8px}.standard-form p>label{margin-bottom:8px}.standard-form .helptext{display:block;font-size:12px;line-height:1.5;margin-top:8px;color:hsl(var(--ink-muted))}.standard-form ul:not(.errorlist){font-size:12px;color:hsl(var(--ink-muted));padding-left:20px}
.standard-form p:has(input:is([type='checkbox'],[type='radio'])){display:flex;align-items:flex-start;gap:10px}.standard-form p:has(input:is([type='checkbox'],[type='radio'])) label{order:1;margin:0;font-weight:400}.standard-form p>input:is([type='checkbox'],[type='radio']){margin:3px 0 0}
.order-summary{background:hsl(var(--surface-muted));padding:32px;height:fit-content}.order-summary h2{margin-top:0}.order-summary p{font-size:14px;border-bottom:1px solid hsl(var(--line));padding:16px 0}.narrow{max-width:680px}.narrow h1{font-size:38px}.account-head{display:flex;align-items:center;justify-content:space-between;gap:24px;background:hsl(var(--surface-muted));padding:32px;margin-bottom:24px}.account-head h2{margin-top:0}.account-links,.auth-options{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:24px}
[data-payment-state]{border-block:1px solid hsl(var(--line));padding:24px 0;margin:24px 0}
[data-payment-state] .payment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0}
[data-payment-state] .payment-actions form{display:flex;max-width:100%;margin:0}
[data-payment-state] .payment-actions :is(a,button){max-width:100%}
@media(max-width:540px){[data-payment-state] .payment-actions{flex-direction:column;align-items:stretch}[data-payment-state] .payment-actions :is(form,a,button){width:100%}}
.payment-status{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid hsl(var(--line));border-radius:3px;font-size:12px;font-weight:700;line-height:1.4;white-space:nowrap}
.payment-status--paid{color:hsl(var(--success));background:hsl(var(--success)/.1);border-color:hsl(var(--success)/.3)}
.payment-status--unpaid{color:hsl(var(--ink-muted));background:hsl(var(--surface-muted))}
.payment-status--checking{color:hsl(var(--warning));background:hsl(var(--warning)/.1);border-color:hsl(var(--warning)/.3)}
/* Managed editorial HTML inherits the same typography without rewriting saved content. */
.content-page{line-height:1.8;color:hsl(var(--ink-soft))}.content-page img{max-width:100%;height:auto}.content-page :is(h1,h2,h3){color:hsl(var(--ink))}.content-page>:is(p,ul,ol),.content-page .post>p{max-width:1000px}.content-page a{overflow-wrap:anywhere}.content-page table{max-width:100%;border-collapse:collapse}.content-page :is(td,th){border-bottom:1px solid hsl(var(--line));padding:12px}.content-page :is(iframe,video){max-width:100%}.content-page li{margin-bottom:8px}.content-page>section{margin-top:48px}
.contacts-block{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px}.contacts-block>h2{grid-column:1/-1;margin-top:0}.contacts-info__item{padding-bottom:20px;border-bottom:1px solid hsl(var(--line))}.contacts-info__item p{margin-bottom:8px}.content-list-intro{color:hsl(var(--ink-muted));max-width:800px;margin-bottom:32px}
/* Service and vehicle controls, including content returned by the existing APIs. */
.service-description{margin-bottom:48px}.service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-options>label{margin:0;min-width:0}.service-options label small{display:block;font-size:12px;font-weight:400;color:hsl(var(--ink-muted));margin-top:8px}.service-options>button{grid-column:1/-1}.check-label{font-size:13px;line-height:1.6;font-weight:400}
[data-service-result]:not(:empty),[data-booking-result]:not(:empty){padding:24px;border-left:3px solid hsl(var(--brand));background:hsl(var(--brand-soft));margin-top:24px}[data-service-result] h2{margin-top:0;font-size:24px}
.wheel-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:16px;align-items:end;padding:32px;background:hsl(var(--surface-muted));border:1px solid hsl(var(--line));margin-bottom:24px}.wheel-form label{min-width:0}.wheel-form label>span{display:block;margin-bottom:8px}.wheel-form>.reset{grid-column:1/-1;justify-self:start}.wheel-results{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:32px}.wheel-results h3{margin-bottom:16px}.wheel-results a{margin:8px 12px 8px 0}
/* Shared notices, empty states and feedback. */
.notice,.errorlist,.messages{padding:20px 24px;margin:24px 0;line-height:1.7;font-size:14px;border-left:3px solid hsl(var(--brand));background:hsl(var(--brand-soft));color:hsl(var(--ink-soft))}.notice p:last-child,.messages p:last-child{margin-bottom:0}.errorlist{list-style:none;padding:16px 20px!important;border-color:hsl(var(--danger));background:hsl(var(--danger)/.06);color:hsl(var(--danger))}.messages{border-color:hsl(var(--success));background:hsl(var(--success)/.06)}.messages.site-container{margin-inline:auto}
.empty-state{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;min-height:260px;padding:48px 24px;border:1px solid hsl(var(--line));background:hsl(var(--surface-muted)/.5);text-align:center;color:hsl(var(--ink-muted))}.empty-state p{margin:0}.empty-state lumen-icon{width:48px;height:48px;color:hsl(var(--brand))}
.toast{position:fixed;bottom:24px;right:24px;z-index:50;max-width:420px;padding:20px 28px;background:hsl(var(--surface-strong));color:hsl(var(--on-brand));box-shadow:0 4px 20px hsl(var(--ink)/.15)}.checkout-method-status:empty{display:none}.checkout-method-status{font-size:14px;color:hsl(var(--ink-muted))}
.site-notices{position:fixed;right:24px;bottom:24px;z-index:60;display:grid;gap:12px;width:360px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.site-notices .toast{position:static;max-width:none;padding:16px 20px}
.comparison-notice{padding:16px 20px 20px;border:1px solid hsl(var(--brand)/.3);border-radius:6px;background:hsl(var(--surface));color:hsl(var(--ink));box-shadow:0 6px 24px hsl(var(--ink)/.12)}
.comparison-notice-heading{display:grid;grid-template-columns:24px minmax(0,1fr) 36px;align-items:center;gap:10px}.comparison-notice-heading>lumen-icon{color:hsl(var(--brand))}.comparison-notice-heading p{margin:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.comparison-notice .comparison-notice-close{width:36px;height:36px;min-height:36px;padding:8px;border:0;background:transparent;color:hsl(var(--ink-muted))}.comparison-notice .comparison-notice-close:hover{background:hsl(var(--surface-muted));color:hsl(var(--ink))}.comparison-notice-close lumen-icon{width:20px;height:20px}
.comparison-notice-count{margin:8px 0 16px;font-size:12px;color:hsl(var(--ink-muted))}.comparison-notice-link{width:100%;justify-content:space-between;font-size:14px;padding:12px 14px}
@media(max-width:540px){.site-notices{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}}
.runtime-note{padding:10px 24px;font-size:11px;line-height:1.5;text-align:center;color:hsl(var(--ink-muted));background:hsl(var(--surface-muted))}
.site-footer{background:hsl(var(--surface-muted));color:hsl(var(--ink-muted));padding:48px 0 32px;font-size:12px;line-height:1.7}.site-footer a{color:hsl(var(--ink-soft))}.site-footer p{margin-top:20px}.footer-links{display:flex;gap:16px 30px;flex-wrap:wrap;margin-bottom:32px;font-size:14px}.footer-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;font-size:14px}.footer-address{line-height:1.8}
@media(max-width:1300px){:root[data-theme='light']{--page-gutter:28px}.catalog-layout{grid-template-columns:240px minmax(0,1fr);gap:24px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checkout-layout,.product-detail{gap:40px}.cart-row{gap:16px;grid-template-columns:64px minmax(0,1fr) 96px 96px 100px auto 48px}.wheel-form{grid-template-columns:repeat(4,minmax(0,1fr))}.wheel-form>button{grid-column:1/-1}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-toolbar{align-items:flex-start}.sort-form{gap:12px;width:100%}.sort-form label{flex:1;flex-direction:column;align-items:flex-start}.sort-form select{width:100%}.cart-row:not(.saved-cart-row){grid-template-columns:64px minmax(0,1fr) 100px;grid-template-areas:'picture name unit' '. qty total' 'defer defer remove';gap:16px}.cart-picture{grid-area:picture}.cart-name{grid-area:name}.cart-unit-price{grid-area:unit}.cart-row .cart-quantity{grid-area:qty;display:flex;flex-direction:column;align-items:flex-start;gap:5px}.cart-line-total{grid-area:total;align-self:end;padding-bottom:12px}.cart-row [data-defer]{grid-area:defer;justify-self:start}.cart-row .remove-button{grid-area:remove}.cart-row .cart-quantity input{width:100%;max-width:110px}.search-form{grid-template-columns:minmax(0,1fr) 200px}.search-form button{grid-column:1/-1}}
@media(max-width:800px){:root[data-theme='light']{--page-gutter:20px}.page-body{padding-top:32px;padding-bottom:48px}.catalog-layout,.checkout-layout,.product-detail{grid-template-columns:1fr;gap:32px}.catalog-filter{margin-bottom:0}.catalog-filter .filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-filters-ready .catalog-filter-toggle{display:flex;justify-content:space-between;width:100%}.catalog-filters-ready .catalog-filter:not(.is-expanded){display:none}.product-grid,.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.product-title{font-size:14px}.product-picture{height:180px}.product-detail{margin-bottom:40px}.detail-picture{height:340px}.wheel-form{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px}.branch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid>article,.page-grid>a,.branch-grid article,.wheel-results article,.category-links a{padding:24px}.service-options{gap:20px}.content-page table{display:block;overflow-x:auto}}
@media(max-width:540px){:root[data-theme='light']{--page-gutter:16px}body{font-size:15px}h1,.narrow h1{font-size:30px;letter-spacing:-.8px;margin-bottom:24px}h2{margin-top:32px}input:not([type='hidden']):not([type='checkbox']):not([type='radio']),select,textarea{font-size:16px}.page-body{padding-top:28px}.product-grid,.catalog-grid{gap:10px}.product-card{padding:16px 10px 10px}.product-title{font-size:12px;min-height:51px}.product-picture{height:145px;margin:12px 0}.product-tags{font-size:10px}.installment{font-size:12px}.price{font-size:24px}.card-actions{flex-wrap:wrap}.card-actions [data-add]{flex-basis:100%;font-size:13px}.card-actions .compare{width:100%;padding:8px;min-height:44px}.product-card>.text-button{font-size:11px;gap:5px}.category-links,.page-grid,.branch-grid,.wheel-results,.search-form,.contacts-block{grid-template-columns:1fr}.contacts-block{gap:24px}.contacts-block>h2{grid-column:auto}.search-form{gap:16px}.search-form button{grid-column:auto}.category-links a{min-height:100px;font-size:20px}.catalog-filter{padding:20px 16px}.catalog-filter .filter-fields{gap:12px}.pagination{gap:16px;font-size:13px}.cart-row:not(.saved-cart-row){grid-template-columns:48px minmax(0,1fr) 92px;gap:12px}.cart-row img{width:48px;height:48px}.cart-row strong{font-size:13px}.saved-cart-row{grid-template-columns:minmax(0,1fr) auto}.saved-cart-row button{grid-column:1/-1;justify-self:start}.cart-total{font-size:20px;gap:16px}.cart-total .button{width:100%}.order-summary,.account-head{padding:24px}.account-head{align-items:flex-start}.account-head h2{font-size:20px}.account-head button{padding-inline:16px}.data-table{font-size:12px}.data-table td,.data-table th{padding:12px 8px}.wheel-form{padding:20px 16px;gap:16px 12px}.service-options{grid-template-columns:1fr}.service-options>button{grid-column:auto}.buy-line .button,.buy-line button{flex:1 0 100%}.toast{left:16px;right:16px;bottom:16px;max-width:none}.site-footer{padding-top:32px}.footer-links{gap:12px 20px;font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
/* Approved shared header and shopping navigation. */
.site-container { width: calc(100% - 92px); max-width: 1640px; margin-inline: auto; }
.site-skip { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 14px 22px; background: hsl(var(--surface)); transform: translateY(-160%); }
.site-skip:focus { transform: none; }
.site-header { position: relative; z-index: 5; background: hsl(var(--surface)); }
.site-header-inner { min-height: 108px; display: flex; align-items: center; gap: clamp(20px,2.5vw,44px); }
.site-logo { display: flex; flex-direction: column; width: 254px; flex-shrink: 0; align-items: center; padding-block: 8px; }
.site-logo img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; filter: brightness(1.07) contrast(1.1); }
.site-logo span { display: block; font-size: 23px; font-weight: 500; letter-spacing: 13.5px; padding-left: 13.5px; line-height: 1.2; }
.site-nav { display: flex; flex-wrap: wrap; min-width: 0; align-items: center; gap: 0 clamp(22px,2.6vw,43px); margin-right: auto; padding-left: 45px; }
.site-nav a { font-size: 18px; font-weight: 500; white-space: nowrap; padding-block: 18px; }
:is(.site-nav,.shopping-links) a:hover { color: hsl(var(--brand)); }
.site-city { display: flex; align-items: center; gap: 10px; white-space: nowrap; font-size: 18px; }
.site-city > lumen-icon:first-child { width: 30px; height: 30px; color: hsl(var(--brand)); }
.site-city .site-chevron { width: 17px; height: 17px; }
.site-phone { display: flex; align-items: center; gap: 12px; padding-left: 23px; border-left: 1px solid hsl(var(--line) / .5); white-space: nowrap; }
.site-phone > lumen-icon { width: 29px; height: 29px; color: hsl(var(--brand)); }
.site-phone strong { display: block; font-size: 19px; font-weight: 800; line-height: 1.4; }
.site-phone small { display: block; color: hsl(var(--ink-muted)); font-size: 13px; }
.site-booking { min-width: 245px; }
.shopping-bar { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 22px 0; margin-bottom: 44px; border-block: 1px solid hsl(var(--line) / .55); }
.shop-search { display: flex; position: relative; flex: 0 1 480px; }
.shop-search input { height: 49px; padding: 12px 58px 12px 16px; font-size: 15px; border: 1px solid hsl(var(--line)); border-radius: 0; background: hsl(var(--surface)); }
.shop-search button { position: absolute; right: 0; width: 50px; height: 49px; padding: 0; min-width: 0; border: 0; border-radius: 0; background: transparent; color: hsl(var(--brand)); }
.shopping-links { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.shopping-links a { display: inline-flex; align-items: center; gap: 9px; font-size: 14px; font-weight: 600; min-height: 44px; }
.shopping-links lumen-icon { width: 21px; height: 21px; color: hsl(var(--brand)); }
.cart-count { display: inline-flex; justify-content: center; align-items: center; min-width: 22px; height: 22px; border-radius: 50%; background: hsl(var(--brand-soft)); color: hsl(var(--brand)); font-size: 12px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 1500px) {
.site-header-inner { gap: 25px; }
.site-logo { width: 215px; }
.site-logo span { font-size: 19px; letter-spacing: 11px; padding-left: 11px; }
.site-nav { padding-left: 10px; gap: 27px; }
.site-nav a { font-size: 16px; }
.site-booking { min-width: 202px; font-size: 19px; padding-inline: 24px; }
.site-phone strong { font-size: 17px; }
.site-phone { padding-left: 18px; }
}
@media (max-width: 1300px) {
.site-container { width: calc(100% - 56px); }
.site-header-inner { min-height: 100px; gap: 10px 22px; flex-wrap: wrap; justify-content: space-between; padding-block: 15px; }
.site-logo { width: 185px; }
.site-logo span { font-size: 17px; letter-spacing: 9px; padding-left: 9px; }
.site-nav { padding: 0; gap: 24px; order: 5; width: 100%; justify-content: center; margin: 0; border-top: 1px solid hsl(var(--line) / .4); }
.site-nav a { padding-block: 12px 0; }
.shopping-bar { flex-wrap: wrap; gap: 15px; }
.shop-search { flex-basis: 100%; }
.shopping-links { width: 100%; justify-content: space-between; gap: 18px; }
}
@media (max-width: 800px) {
.site-container { width: calc(100% - 40px); }
.site-header-inner { column-gap: 14px; }
.site-logo { width: 155px; }
.site-logo span { font-size: 14px; letter-spacing: 8px; padding-left: 8px; }
.site-city { font-size: 14px; gap: 5px; }
.site-phone { padding-left: 0; border: 0; gap: 8px; }
.site-phone strong { font-size: 15px; }
.site-phone small { font-size: 11px; }
.site-booking { min-width: 155px; min-height: 48px; padding: 12px 16px; font-size: 16px; gap: 10px; }
.site-booking lumen-icon { width: 22px; height: 22px; }
}
@media (max-width: 540px) {
.site-container { width: calc(100% - 32px); }
.site-header-inner { padding-block: 12px 0; min-height: auto; gap: 10px; }
.site-logo { width: 143px; padding: 0; }
.site-logo span { font-size: 12px; letter-spacing: 8px; }
.site-city { margin-left: auto; }
.site-city > lumen-icon:first-child { width: 23px; height: 23px; }
.site-city .site-chevron { display: none; }
.site-phone { order: 3; margin-top: 3px; }
.site-phone > lumen-icon { width: 20px; height: 20px; }
.site-phone strong { font-size: 14px; }
.site-phone small { font-size: 10px; }
.site-booking { order: 4; min-width: 137px; min-height: 44px; font-size: 14px; padding: 10px 13px; gap: 8px; }
.site-nav { gap: 0; justify-content: space-between; padding-block: 0; }
.site-nav a { font-size: 13px; padding-block: 14px; }
.shopping-bar { margin-bottom: 30px; padding-block: 18px; }
.shopping-links { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 16px; }
.shopping-links a { font-size: 12px; }
}

.service-icon { width:40px; height:40px; color:hsl(var(--brand)); margin-bottom:24px; }
.page-grid article > a:last-child { display:inline-flex; align-items:center; gap:8px; min-height:44px; }
.spec-table td { overflow-wrap:anywhere; }

/* One native row per attribute keeps every comparison column synchronized. */
.comparison-help{font-size:14px;color:hsl(var(--ink-muted));margin-bottom:var(--space-2)}
.comparison-scroll{margin-bottom:var(--space-5);overscroll-behavior-x:contain}
.comparison-scroll:focus-visible{outline:3px solid hsl(var(--accent));outline-offset:4px}
.comparison-table{width:max-content;min-width:100%;table-layout:fixed;margin:0}
.comparison-table .comparison-label{width:160px}.comparison-table .comparison-product{width:260px}
.comparison-table th{width:auto}.comparison-table thead th{padding:0 8px 24px;font-weight:400}
.comparison-table thead td{color:hsl(var(--ink-muted))}.comparison-table tbody th{background:hsl(var(--surface-muted))}
.comparison-table .product-card{height:100%}.comparison-table .product-title{overflow-wrap:anywhere}

.messages:has(.message-error) { border-color:hsl(var(--danger)); background:hsl(var(--danger)/.06); color:hsl(var(--danger)); }
.messages:has(.message-warning) { border-color:hsl(var(--warning)); background:hsl(var(--warning)/.06); color:hsl(var(--warning)); }
.auth-social-placeholder{position:relative;display:inline-block;margin-top:24px;cursor:help}
.auth-social-placeholder button:disabled{padding:12px 20px;border:1px solid #b8bdc3;border-radius:8px;background:#e5e7eb;color:#6b7280;cursor:help}
.auth-social-hint{position:absolute;left:0;bottom:calc(100% + 8px);padding:6px 10px;border-radius:6px;background:#333;color:#fff;font-size:13px;white-space:nowrap;visibility:hidden;opacity:0}
.auth-social-placeholder:hover .auth-social-hint,.auth-social-placeholder:focus .auth-social-hint{visibility:visible;opacity:1}
