body{font-size:calc(1rem * var(--text-scale,1))!important}body p,body li,body input,body button,body .product-link{font-size:inherit}body.high-contrast{background:#000!important;color:#fff!important}body.high-contrast header,body.high-contrast footer,body.high-contrast section,body.high-contrast article,body.high-contrast .product-content,body.high-contrast .product-media,body.high-contrast .hero-index,body.high-contrast dialog{background:#000!important;color:#fff!important;border-color:#fff!important}body.high-contrast p,body.high-contrast h1,body.high-contrast h2,body.high-contrast h3,body.high-contrast span,body.high-contrast strong,body.high-contrast small{color:#fff!important}body.high-contrast a{color:#ffed6b!important}body.high-contrast button,body.high-contrast input,body.high-contrast .product-link{background:#000!important;color:#fff!important;border:1px solid #fff!important}body.marked-links a{text-decoration:underline!important;text-underline-offset:4px}body.reduced-motion *,body.reduced-motion *:before,body.reduced-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.utility-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:20px 16px 28px}.utility-tools button,.utility-actions button,[data-close]{min-height:44px;padding:10px 14px;border:1px solid #777;border-radius:8px;background:#fff;color:#241b17;font:inherit;cursor:pointer}.utility-tools button:focus-visible,.utility-actions button:focus-visible,[data-close]:focus-visible,dialog a:focus-visible{outline:3px solid #ab3504;outline-offset:3px}.utility-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.storage-banner{margin:20px auto;padding:20px;max-width:1100px;background:#f5f3f0;border:1px solid #999;border-radius:12px;color:#241b17}.storage-banner h2,dialog h2{font-size:1.4em!important;margin:0}dialog{max-width:min(620px,calc(100% - 32px));max-height:85vh;overflow:auto;border:1px solid #777;border-radius:14px;padding:24px;color:#241b17;background:#fff;font:inherit}dialog::backdrop{background:#0008}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}dialog label{display:flex;align-items:center;gap:10px}dialog input{width:22px;height:22px}dialog p{line-height:1.8}.legal-nav{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0}.legal-nav a{font-size:1rem}.legal-page{max-width:850px;margin:30px auto;padding:0 24px;font:1rem/1.9 Arial,sans-serif;color:#241b17}.legal-page h1{font-size:2em;line-height:1.4}.legal-page h2{font-size:1.4em;margin:30px 0 10px}.legal-page a{color:#933309}.legal-page .pending{border-right:3px solid #997543;background:#faf7f2;padding:16px}.legal-page [hidden],[hidden]{display:none!important}@media(max-width:600px){.storage-banner{margin:16px}.dialog-heading{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
body .product-title{font-size:calc(1.25rem * var(--text-scale,1))}body .hero h1{font-size:calc(clamp(2.25rem,4vw,3.625rem) * var(--text-scale,1))}body .section-heading h2{font-size:calc(2rem * var(--text-scale,1))}body .brand strong{font-size:calc(1.5rem * var(--text-scale,1))}.site-header{flex-wrap:wrap}.brand{min-width:0}.brand small{white-space:normal}.product-title,.hero h1{overflow-wrap:anywhere}body .legal-nav a{font-size:inherit}body .product-points li{font-size:inherit}

.utility-tools{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));z-index:80;display:flex;flex-direction:column-reverse;gap:12px;margin:0}.utility-tools button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;min-height:64px;padding:8px 4px;border:2px solid #fff;border-radius:50%;background:#241b17;color:#fff;box-shadow:0 3px 16px #0003}.utility-tools svg{width:26px;height:26px;flex-shrink:0}.float-label{font-size:12px;line-height:1.3;margin-top:2px}.utility-tools button:hover{background:#933309}.storage-banner{margin:auto;max-width:min(650px,calc(100% - 32px));max-height:85vh;overflow:auto;padding:24px}.storage-banner::backdrop{background:#0008}.storage-banner .utility-actions button{flex:1 1 180px}.storage-banner .utility-actions a{flex-basis:100%}body{padding-bottom:160px}.toast{bottom:170px}body.high-contrast .utility-tools button{border-color:#fff!important}@media(max-width:600px){.utility-tools{left:12px;bottom:max(16px,env(safe-area-inset-bottom));gap:10px}.utility-tools button{width:58px;min-height:58px}.storage-banner{margin:auto;padding:20px}}
/* One compact launcher, expanded tools only when requested. */
.utility-dock{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));z-index:80;display:flex;flex-direction:column-reverse;align-items:flex-start;gap:8px}
#utilityToggle{display:flex;align-items:center;gap:7px;min-height:44px;min-width:44px;padding:9px 12px;border:2px solid #fff;border-radius:12px;background:#241b17;color:#fff;font:inherit;font-weight:700;box-shadow:0 3px 14px #0002}
#utilityToggle:focus-visible{outline:3px solid #2670bd;outline-offset:3px}
.utility-dock .utility-tools{position:static;display:flex;flex-direction:column;gap:8px;margin:0;padding:8px;background:#fff;border:1px solid #ccc;border-radius:12px;box-shadow:0 3px 18px #0002}
.utility-dock .utility-tools button{width:100%;min-width:130px;min-height:44px;flex-direction:row;gap:8px;border-radius:8px;padding:8px 12px}
.utility-dock .float-label{font-size:calc(.875rem * var(--text-scale,1));margin:0;line-height:1.5}
body{padding-bottom:84px}.toast{bottom:80px}
@media(max-width:600px){#utilityToggle{padding:8px 10px;font-size:14px}.utility-dock{left:8px;bottom:max(8px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Compact accessibility/privacy launcher with a comfortable touch target. */
#utilityToggle{min-height:44px;min-width:44px;padding:8px 14px;border:1px solid #d4ccc6;border-radius:999px;background:#fff;color:#45362d;font-size:calc(.8125rem * var(--text-scale,1));font-weight:600;line-height:1.4;box-shadow:0 2px 10px #241b1714;white-space:nowrap}
#utilityToggle:hover{background:#fff6ee;border-color:#ae7354}
#utilityToggle[aria-expanded=true]{background:#fff1e5;border-color:#94380c;color:#642800}
@media(max-width:600px){#utilityToggle{min-height:44px;padding:7px 12px;font-size:calc(.75rem * var(--text-scale,1))}}
/* Requested bold blue border and approximately 3 cm higher placement. */
#utilityToggle,#utilityToggle:hover,#utilityToggle[aria-expanded=true]{border:3px solid #1565d8}
.utility-dock{bottom:calc(max(12px,env(safe-area-inset-bottom)) + 1.5cm)}
@media(max-width:600px){.utility-dock{bottom:calc(max(8px,env(safe-area-inset-bottom)) + 1.5cm)}}

.mobile-utility-icon{display:none;width:22px;height:22px;flex:none}
@media(max-width:600px){
 .site-header .header-actions{direction:ltr;gap:4px}
 .site-header #mobileMenuToggle{order:1}
 .site-header #favoritesView{order:2}
 .site-header .utility-dock{order:4;position:static;left:auto;bottom:auto;display:flex;flex:0 0 44px;width:44px;margin:0;direction:rtl}
 .site-header #utilityToggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:7px;border-radius:10px}
 .site-header #utilityToggle .utility-launcher-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .site-header #utilityToggle .mobile-utility-icon{display:block}
 .site-header:has(.site-brand) .site-brand{width:min(132px,calc(100vw - 220px))}
 .site-header #utilityMenu.mobile-header-tools{position:static;grid-column:1/-1;grid-row:2;display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%;margin:0;padding:8px 0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;max-height:55dvh;overflow:auto;direction:rtl}
 .site-header #utilityMenu button{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft,#f5f3f0);color:var(--ink,#241b17);box-shadow:none}
 .site-header #utilityMenu .float-label{font-size:calc(1rem * var(--text-scale,1));margin:0}
 .site-header .main-nav .admin-owner-link{font-size:16px;width:auto;height:auto;padding:12px 16px}
 .site-header .main-nav .admin-owner-link::after{content:none}
}

/* Return to the top above the desktop launcher, independently fixed on mobile. */
#backToTop{display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;min-height:44px;padding:10px;border:0;border-radius:50%;background:#1565d8;color:#fff;box-shadow:0 3px 12px #0003;cursor:pointer;touch-action:manipulation}
#backToTop svg{display:block;width:24px;height:24px;flex:none}
#backToTop:hover{background:#0d4fae}
#backToTop:focus-visible{outline:3px solid #1565d8;outline-offset:4px}
@media(max-width:600px){#backToTop{position:fixed;left:calc(12px + env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:80}}
