/* Photo-driven colors, with the existing storefront layout and animations. */
:root,[data-photo-theme="purple"]{--photo-bg:#190a26;--photo-surface:#271338;--photo-header:#13081eee;--photo-accent:#b8c9d6;--photo-deep:#7840b4;--photo-glow:#60788e26;--photo-text:#f9f1ff}
[data-photo-theme="green"]{--photo-bg:#061b13;--photo-surface:#103326;--photo-header:#04160fee;--photo-accent:#b8c9d6;--photo-deep:#168557;--photo-glow:#60788e26;--photo-text:#f0fff5}
[data-photo-theme="blue"]{--photo-bg:#061627;--photo-surface:#102d4a;--photo-header:#041120ee;--photo-accent:#b8c9d6;--photo-deep:#246fb8;--photo-glow:#60788e26;--photo-text:#f0f8ff}
[data-photo-theme="black"]{--photo-bg:#060708;--photo-surface:#181b20;--photo-header:#050608ee;--photo-accent:#b8c9d6;--photo-deep:#525e70;--photo-glow:#60788e26;--photo-text:#f6f8fc}
:root{--paper:var(--photo-bg);--mist:var(--photo-surface);--accent:var(--photo-accent);--accent-dark:var(--photo-accent);--focus:var(--photo-accent)}
body{background:var(--photo-bg)!important;color:var(--photo-text);transition:background-color 1.2s ease,color 1.2s ease}
.page,.hero-show,.show-copy{background:var(--photo-bg)!important;transition:background-color 1.2s ease}
.bg-tiles{opacity:0!important}
.site-header{background:var(--photo-header)!important;border-bottom-color:var(--photo-deep)!important;box-shadow:0 6px 26px var(--photo-glow)!important;transition:background-color 1.2s ease,border-color 1.2s ease,box-shadow 1.2s ease}
.announce{background:var(--photo-surface)!important;border-color:var(--photo-deep);color:var(--photo-text)!important;transition:background-color 1.2s ease}.announce b{color:var(--photo-accent)!important}
.brand .brand-mark{height:30px!important;width:64px!important;flex:none;color:var(--photo-text)!important;filter:none!important}.brand-mark .logo-speed,.brand-mark .logo-bridge{color:var(--photo-accent);transition:color 1.2s ease}
.brand-wm b{font-family:var(--body)!important;background:none!important;-webkit-text-fill-color:var(--photo-text)!important;color:var(--photo-text)!important;animation:none!important;text-shadow:none!important;font-size:23px!important;font-weight:450!important;letter-spacing:-.055em!important;white-space:nowrap}
.brand-wm b em{font-weight:750;font-style:italic;color:var(--photo-text)!important}.brand-wm b small{font-size:10px;letter-spacing:0;margin-left:2px;color:var(--photo-accent)!important;-webkit-text-fill-color:var(--photo-accent)!important}
.brand-tag{color:var(--photo-accent)!important}.site-header .brand{filter:none!important}
.site-header .nav>a[aria-current],.site-header .nav>a:hover{color:var(--photo-accent)!important;border-color:var(--photo-accent)!important;background:color-mix(in srgb,var(--photo-accent) 8%,transparent)!important}
.head-search,.cart-link,.catalog-filter-toggle{background:var(--photo-surface)!important;border-color:var(--photo-deep)!important;transition:background-color 1.2s ease,border-color 1.2s ease}
.cart-count{background:var(--photo-accent)!important;color:#10151d!important}
.show-media::after{background:linear-gradient(90deg,transparent 64%,var(--photo-bg) 100%),linear-gradient(0deg,#0008,transparent 26%)!important}
.hero-kicker,.hero-pop .mono-label{color:var(--photo-accent)!important}
.hero-show h1 .impact-fast,.hero-show .hero-price{background:linear-gradient(125deg,var(--photo-accent),var(--photo-deep) 62%,var(--photo-bg))!important;border-color:var(--photo-accent)!important;box-shadow:0 0 32px var(--photo-glow)!important;transition:box-shadow 1.2s ease,border-color 1.2s ease}
.hero-show .pixel-layer i{animation:photo-pixels 7s ease-in-out infinite alternate!important;animation-delay:var(--pixel-delay)!important;background:var(--photo-accent)!important}
@keyframes photo-pixels{0%{background:var(--photo-accent);opacity:.25}50%{background:var(--photo-deep);opacity:.65}100%{background:var(--photo-bg);opacity:.4}}
.btn:not(.ghost),.fe-primary{background:linear-gradient(115deg,var(--photo-accent),color-mix(in srgb,var(--photo-accent) 60%,white))!important;color:#111923!important;border-color:var(--photo-accent)!important;box-shadow:0 0 20px var(--photo-glow)!important}
.btn.ghost,.fe-secondary{background:var(--photo-surface)!important;color:var(--photo-text)!important;border-color:var(--photo-deep)!important}
.card,.fe-card,.post-card,.tile,.hero-chart figure,.fe-size-helper,.pdp-price,.price-build,.catalog-sidebar,#co-summary,#cart-summary,.reel .reel-link{background:var(--photo-surface)!important;border-color:var(--photo-deep)!important;box-shadow:0 0 22px var(--photo-glow)!important;transition:background-color 1.2s ease,border-color 1.2s ease,box-shadow 1.2s ease}
.catalog-sidebar-head,.catalog-sidebar .filter-foot,#order-form .stepper,#order-form .pay-box{background:var(--photo-surface)!important}
.swatch label,.fe-lens-step .lo label,#order-form .field input,#order-form .field select,#order-form .rx-grid input,#order-form .rx-grid select{background:var(--photo-surface)!important}
.swatch input:checked+label,.fe-lens-step .lo input:checked+label{border-color:var(--photo-accent)!important;box-shadow:inset 3px 0 var(--photo-accent),0 0 20px var(--photo-glow)!important}
.site-footer{background:linear-gradient(130deg,var(--photo-bg),var(--photo-surface))!important;border-color:var(--photo-deep)!important;transition:background-color 1.2s ease}.site-footer:before{background:linear-gradient(90deg,var(--photo-accent),var(--photo-deep),var(--photo-accent))!important}
.photo-controls{position:absolute;z-index:4;top:20px;left:22px;right:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff}
.photo-controls>div{display:flex;gap:8px;align-items:center}.photo-controls button{min-height:42px;min-width:42px;padding:8px 13px;background:#05080ccc;border:1px solid #ffffff70;color:#fff;backdrop-filter:blur(8px);font:600 12px var(--body);cursor:pointer}.photo-controls button:hover{background:var(--photo-deep);border-color:var(--photo-accent)}
.photo-count{font:600 11px var(--body);letter-spacing:.08em;background:#05080ccc;padding:12px 14px;border:1px solid #ffffff50;white-space:nowrap}
.photo-controls button:focus-visible{outline:3px solid var(--photo-accent);outline-offset:3px}
#stripe-card{background:#f5f6f1;padding:16px;border-radius:4px}
@media(max-width:760px){.site-header .brand .brand-mark{height:22px!important;width:46px!important}.site-header .brand-wm b{font-size:18px!important}.site-header .brand-wm small{display:none!important}.site-header .wrap{gap:8px}.site-header .logo{gap:8px}.photo-controls{top:16px;left:16px;right:16px}.photo-controls button{padding-inline:11px}.photo-count{font-size:10px;padding:12px 10px}.show-media{min-width:0}.site-footer .brand-wm b{font-size:22px!important}}
@media(prefers-reduced-motion:reduce){body,.page,.hero-show,.show-copy,.site-header,*{transition:none!important}.hero-show .pixel-layer i{animation:none!important}}
