.store-icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.store-mobile-nav{display:none}
.catalog-filters-toggle{display:none;border:1px solid #cbd5e1;border-radius:8px}
.catalog-page #catalog-form.catalog-search-form{display:flex;gap:10px;margin-top:20px;padding:0;border:0;background:white;box-shadow:none;overflow:visible}
.catalog-search-form input{min-width:0;flex:1;border:1px solid #dbe1e8;border-radius:10px;padding:12px 14px;font-size:16px}
.catalog-page #catalog-form.catalog-search-form button{width:auto;flex:none;border-radius:10px;background:#2563eb;color:white;padding:12px 18px;font-weight:600}
.catalog-toolbar [hidden]{display:none!important}
.catalog-filter-fields{display:flex;align-items:end;gap:16px;padding:12px 0;background:white}
.catalog-filter-fields>label,.brand-picker{flex:1;min-width:0;font-size:14px;color:#475569}
.catalog-filter-fields input[type=number],#brand-picker-toggle{display:flex;width:100%;margin-top:6px;min-height:46px;padding:10px 12px;border:1px solid #dbe1e8;border-radius:10px;background:white;color:#111827;font-size:16px}
.brand-picker{position:relative}#brand-picker-toggle{align-items:center;justify-content:space-between;text-align:left}
#brand-picker-options{position:absolute;top:100%;left:0;right:0;z-index:20;max-height:260px;overflow-y:auto;margin-top:5px;padding:6px;border:1px solid #e2e8f0;border-radius:12px;background:white;box-shadow:0 10px 30px #0f172a14}
#brand-picker-options label{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px;border-radius:8px;cursor:pointer;color:#334155}
#brand-picker-options label:has(input:checked){background:#eff6ff;color:#1d4ed8;font-weight:600}
#brand-picker-options input{appearance:none;width:20px;height:20px;flex:none;border:1px solid #cbd5e1;border-radius:5px}
#brand-picker-options input:checked{background:#2563eb;border-color:#2563eb}#brand-picker-options input:checked:after{content:'✓';display:block;color:white;text-align:center;line-height:18px}
.filter-actions{display:flex;gap:10px}.filter-actions button{min-height:46px;padding:10px 18px;border:1px solid #dbe1e8;border-radius:10px;font-weight:600}
#catalog-filter-apply{background:#2563eb;color:white;border-color:#2563eb}
#catalog-filter-sheet[hidden],#catalog-filter-backdrop[hidden],.store-profile-backdrop[hidden]{display:none}
#catalog-filter-sheet{position:fixed;bottom:calc(70px + env(safe-area-inset-bottom,0px));left:0;right:0;z-index:85;max-height:calc(90dvh - 80px);overflow-y:auto;background:white;border-radius:20px 20px 0 0;padding:20px;box-shadow:0 -10px 50px #0f172a20}
#catalog-filter-backdrop,.store-profile-backdrop{position:fixed;inset:0;z-index:80;background:#0f172a66}
.filter-sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.filter-sheet-heading h2{font-size:22px;font-weight:700}.filter-sheet-heading button{width:44px;height:44px;font-size:26px;border-radius:10px;background:#f8fafc}
.store-dialog[open]{position:fixed;z-index:85;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;max-height:80dvh;overflow:auto}
@media(max-width:767px){.store-mobile-nav{z-index:100!important}#cart-panel{bottom:calc(70px + env(safe-area-inset-bottom,0px))}.catalog-filter-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:12px 0 0}.brand-picker,.filter-actions{grid-column:1/-1}.filter-actions button{flex:1}#brand-picker-options{position:static;margin-top:8px;max-height:230px;box-shadow:none}.catalog-page .catalog-toolbar{margin-top:10px}.catalog-page .catalog-intro p{display:none}.store-dialog[open]{top:auto;bottom:calc(80px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);max-height:calc(85dvh - 80px)}}
.store-dialog{border:1px solid #e2e8f0;border-radius:18px;padding:24px;width:min(440px,calc(100% - 32px));color:#17202e;background:white;box-shadow:0 20px 80px #0f172a30}
.store-dialog::backdrop{background:#0f172a80}
.store-dialog h2{font-size:24px;font-weight:700;margin:0 0 16px}.store-dialog p{color:#64748b;margin:12px 0;line-height:1.6}
.store-dialog label{display:block;margin:16px 0}.store-dialog input{display:block;width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:8px;margin-top:6px}
.store-dialog button{padding:10px 16px;border:1px solid #cbd5e1;border-radius:8px;min-height:44px}.store-dialog button[type=submit]{background:#1d4ed8;color:white;border-color:#1d4ed8}
.store-dialog-actions{display:flex;justify-content:space-between;gap:12px}.store-dialog small{display:block;color:#64748b;margin-top:12px}
.catalog-page{background:#fff}.catalog-page main>section:first-child{background:#fff;border-color:#e5e7eb;padding-top:32px;padding-bottom:24px}
.catalog-page main>section:first-child>.max-w-6xl{max-width:1280px}.catalog-page main>section:nth-child(2)>.max-w-6xl{max-width:1280px}
.catalog-intro{text-align:left}.catalog-intro h1{color:#111827;font-size:32px;line-height:1.2}.catalog-intro p{margin:10px 0 0;color:#64748b;font-size:16px;line-height:1.6}
#catalog-browser{margin:24px 0}#catalog-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;color:#64748b;margin-bottom:20px;overflow-wrap:anywhere}
#catalog-breadcrumbs button{min-height:36px;color:#334155;text-align:left}#catalog-breadcrumbs button:hover{text-decoration:underline}#catalog-breadcrumbs [aria-current]{color:#111827;font-weight:600}
.catalog-browser-heading{display:flex;align-items:center;gap:16px;margin-bottom:16px}.catalog-browser-heading h2{font-size:24px;font-weight:700;line-height:1.3}.catalog-back{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;min-height:44px}
#catalog-category-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.catalog-category{display:flex;align-items:center;gap:16px;min-height:78px;padding:18px 4px;border-bottom:1px solid #e5e7eb;text-align:left;width:100%;color:#262b32;background:#fff;font-size:17px;line-height:1.4}
.catalog-category:hover{background:#f8fafc}.catalog-category:focus-visible,.store-mobile-nav a:focus-visible,.store-mobile-nav button:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}
.catalog-category span{flex:1;min-width:0}.catalog-category .category-arrow{width:18px;height:18px;color:#64748b}
#catalog-tree-status{color:#64748b;font-size:14px;margin-top:14px}#catalog-tree-status:empty{display:none}
.catalog-page #catalog-form{max-width:none;box-shadow:none;background:#f8fafc;border-color:#e2e8f0;margin-top:24px;grid-template-columns:2fr 1fr 1fr 1fr auto}
#main-group-filter,#subgroup-filter,#availability-filter{display:none}
.catalog-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.catalog-toolbar button,.catalog-toolbar a{padding:10px 16px;min-height:44px;border-color:#cbd5e1;color:#334155;background:white}
.catalog-page #catalog-status{text-align:left}.catalog-page #catalog-grid{gap:20px}.favorite-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #e2e8f0;border-radius:8px;min-height:44px;padding:8px 12px;margin-top:8px;color:#475569;background:#fff;font-size:13px}.favorite-button[aria-pressed=true]{color:#1d4ed8;border-color:#93c5fd;background:#eff6ff}.favorite-button[aria-pressed=true] svg{fill:#dbeafe}
@media(min-width:768px){.store-desktop-actions{display:flex;gap:8px;justify-content:flex-end;max-width:1280px;margin:12px auto;padding:0 16px}.store-desktop-actions button,.store-desktop-actions a{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:14px;border:1px solid #e2e8f0;border-radius:8px}}
@media(max-width:1023px){#catalog-category-list{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-page #catalog-form{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-page #catalog-query{grid-column:1/-1}}
@media(max-width:767px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.store-desktop-actions{display:none}.store-mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:45;background:#fff;border-top:1px solid #e2e8f0;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 20px #0f172a06}.store-mobile-nav a,.store-mobile-nav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;font-size:11px;color:#64748b;background:transparent;border-radius:10px}.store-mobile-nav [aria-current=page]{color:#1d4ed8;background:#eff6ff;font-weight:700}.store-nav-count{position:absolute;top:0;left:calc(50% + 8px);background:#1d4ed8;color:white;font-size:10px;border-radius:20px;min-width:16px;padding:0 4px}.store-nav-count:empty{display:none}#cart-toast{bottom:calc(86px + env(safe-area-inset-bottom,0px))}#scrollToTopBtn{bottom:calc(88px + env(safe-area-inset-bottom,0px))}.catalog-page header>div{flex-direction:row;flex-wrap:wrap;justify-content:space-between;padding-top:12px;padding-bottom:12px}.catalog-page header img{max-width:155px}.catalog-page header nav{display:none}.catalog-page header>div>div>a{display:none}.catalog-page header>div>div>button{font-size:12px;padding:8px}.catalog-page main>section:first-child{padding-top:24px}.catalog-intro h1{font-size:28px}.catalog-intro p{font-size:14px}#catalog-browser{margin-top:18px}#catalog-category-list{grid-template-columns:1fr;gap:0}.catalog-category{font-size:17px;min-height:72px;padding:16px 0}.catalog-browser-heading h2{font-size:22px}.catalog-page #catalog-form{padding:12px;gap:10px}.catalog-page #catalog-grid{gap:10px}.catalog-toolbar{gap:8px}.catalog-toolbar button{font-size:13px}.catalog-toolbar>a{display:none}.catalog-page main>section:nth-child(2){padding-top:8px}}
@media(prefers-reduced-motion:reduce){.catalog-loader-bar{animation:none}}
@media(max-width:767px){.catalog-filters-toggle{display:inline-flex}.catalog-page #catalog-form{grid-template-columns:minmax(0,1fr) auto}.catalog-page #catalog-query{grid-column:auto;padding:12px;font-size:16px}.catalog-page #catalog-form button[type=submit]{padding:12px}.catalog-page #catalog-form:not(.filters-open) #brand-filter,.catalog-page #catalog-form:not(.filters-open) #min-price-filter,.catalog-page #catalog-form:not(.filters-open) #max-price-filter{display:none}.catalog-page #catalog-form.filters-open #catalog-query{grid-column:1/-1}.catalog-page #catalog-form.filters-open{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Keep product actions inside the visible area above the mobile navigation. */
#catalog-breadcrumbs:empty { display:none; }
.is-favorites .catalog-intro,.is-favorites #catalog-breadcrumbs,.is-favorites #catalog-form,.is-favorites .catalog-toolbar,.is-favorites #catalog-filter-desktop { display:none!important; }
.customer-auth [hidden] { display:none!important; }
.customer-auth input { width:100%; min-height:44px; }
.customer-auth button { min-height:44px; }
.customer-auth button:disabled { opacity:.55; cursor:wait; }
@media(max-width:767px) {
  #product-modal { bottom:var(--store-nav-height,calc(70px + env(safe-area-inset-bottom,0px))); padding:12px; }
  #product-modal > div { max-height:100%; max-height:calc(100dvh - var(--store-nav-height,calc(70px + env(safe-area-inset-bottom,0px))) - 24px); overscroll-behavior:contain; scroll-padding-bottom:24px; padding-bottom:24px; }
}

/* The removed header cart remains reachable through the same bottom menu on desktop. */
@media(min-width:768px) {
 body { padding-bottom:84px; }
 .store-mobile-nav { display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(560px,100%);z-index:100;background:white;border:1px solid #e2e8f0;border-radius:16px 16px 0 0;padding:6px;box-shadow:0 -4px 20px #0f172a06; }
 .store-mobile-nav a,.store-mobile-nav button { display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;min-height:54px;gap:4px;font-size:12px;color:#64748b;border-radius:10px; }
 .store-mobile-nav [aria-current=page] { color:#1d4ed8;background:#eff6ff;font-weight:700; }
 .store-nav-count { position:absolute;top:0;right:20px;font-size:11px;color:#1d4ed8; }
 .store-nav-count:empty { display:none; }
 #cart-panel { bottom:var(--store-nav-height,70px); }
 #product-modal { bottom:var(--store-nav-height,70px); }
 #product-modal > div { max-height:calc(100dvh - var(--store-nav-height,70px) - 32px); }
}

.google-signin{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;background:white;font-weight:600}.google-signin span{font-size:23px;font-weight:700;color:#4285f4}.customer-auth [data-avatar]{border-radius:50%;margin-bottom:12px}.customer-auth [data-name]{font-size:20px;font-weight:700}.customer-orders-title{font-weight:700;font-size:20px;margin-top:24px}.customer-order{border-bottom:1px solid #e2e8f0;padding:12px 0}.customer-order p{margin:4px 0}.customer-future{font-size:13px}
/* Profile is a normal document route, sharing Auth and navigation with the store. */
.profile-route body { background:#fff; }
.profile-route main:not(.profile-content) { display:none!important; }
.profile-content { max-width:720px;margin:0 auto;padding:28px 20px 32px; }
.profile-content h1 {font-size:28px;font-weight:700;letter-spacing:-.6px; margin:0 0 24px;}
.profile-signin {min-height:calc(100svh - 260px - env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:center;}
.profile-signin-content {width:100%;max-width:340px;text-align:center;padding:24px 0 56px;}
.profile-signin h2 {font-size:24px;font-weight:650;letter-spacing:-.4px;}
.profile-signin p {color:#64748b;line-height:1.6;margin:12px 0 28px;}
.profile-content .google-signin {min-height:50px;border:1px solid #dbe2ea;border-radius:14px;padding:12px 20px;box-shadow:0 2px 6px #0f172a06;}
.profile-content button:focus-visible {outline:2px solid #2563eb;outline-offset:3px;}
.profile-content button:hover {background:#f8fafc;}
.profile-identity {display:flex;align-items:center;gap:16px;padding:8px 0 28px;}
.profile-identity>div {min-width:0;}
.profile-content [data-avatar] {flex-shrink:0;object-fit:cover;margin:0;}
.profile-content [data-email] {overflow-wrap:anywhere;color:#64748b;font-size:14px;margin:4px 0;}
.profile-verified {font-size:12px;color:#64748b;}
.profile-sections>section {border-top:1px solid #edf0f4;padding:24px 0;}
.profile-section-heading {display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;}
.profile-section-heading h2 {font-size:20px;font-weight:700;}
.profile-section-heading button {font-size:13px;color:#2563eb;padding:8px;}
.profile-content [data-orders] {color:#64748b;font-size:14px;line-height:1.7;}
.profile-footer {margin-top:32px;padding-top:16px;border-top:1px solid #edf0f4;}
.profile-footer button {color:#64748b;padding:10px 0;min-width:64px;text-align:left;}
.profile-content [role=status]:empty {display:none;}
.profile-content [role=status] {font-size:14px;color:#64748b;margin-top:16px;}

/* On small screens, checkout and totals share one scroll area: no fixed summary over inputs. */
@media(max-width:767px){
 #cart-panel {bottom:var(--store-nav-height,calc(70px + env(safe-area-inset-bottom,0px)));max-height:calc(100dvh - var(--store-nav-height,calc(70px + env(safe-area-inset-bottom,0px))));}
 #cart-panel .cart-layout {display:block;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scroll-padding-block:20px;}
 #cart-panel .cart-content {overflow:visible;}
 #cart-panel .cart-summary {position:static;padding-bottom:24px;}
 #cart-checkout-form input,#cart-checkout-form textarea,#cart-checkout-form select {font-size:16px;scroll-margin-block:24px;}
}
/* Keep intrinsic form-control and grid widths inside the mobile checkout. */
@media(max-width:767px){
 #cart-panel,#cart-panel * {box-sizing:border-box;}
 #cart-panel .cart-layout {width:100%;max-width:480px;overflow-x:hidden;}
 #cart-panel .cart-content,#cart-panel .cart-summary,#cart-items,#cart-items [data-cart-id],#cart-checkout-form,#cart-checkout-form div,#cart-checkout-form label {min-width:0;max-width:100%;overflow-wrap:anywhere;}
 #cart-items [data-cart-id] {grid-template-columns:76px minmax(0,1fr);}
 #cart-items [data-cart-id]>* {min-width:0;max-width:100%;}
 #cart-panel button,#cart-panel img {max-width:100%;}
 #cart-checkout-form input:not([type=checkbox]),#cart-checkout-form select,#cart-checkout-form textarea {display:block;width:100%;min-width:0;max-width:100%;}
 #cart-checkout-form select {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
 #cart-checkout-form input[type=checkbox] {flex-shrink:0;}
}
/* Readable order history cards; data loading and authentication are unchanged. */
.customer-auth .customer-order {min-width:0;max-width:100%;margin:0 0 16px;padding:18px;border:1px solid #e5eaf0;border-radius:16px;background:#fff;box-shadow:0 2px 8px #0f172a04;overflow-wrap:anywhere;}
.customer-order-heading {display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;}
.customer-order-number {min-width:0;font-size:16px;font-weight:700;color:#0f172a;}
.customer-order-date {font-size:12px;color:#64748b;white-space:nowrap;}
.customer-order-badges {display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
.customer-order-badge {max-width:100%;padding:4px 9px;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:600;line-height:1.5;}
.customer-order-payment {background:#f1f5f9;color:#475569;}
.customer-order-items {list-style:none;padding:0;margin:16px 0;color:#334155;}
.customer-order-item {padding:6px 0;font-size:14px;line-height:1.6;overflow-wrap:anywhere;}
.customer-auth .customer-order-total {margin:0;padding-top:14px;border-top:1px solid #edf0f4;color:#0f172a;font-size:17px;font-weight:700;line-height:1.5;}
