/* Theme packs: Auto, Dark, Light, Blueprint, High contrast, Matrix, Full neon LED. Shared by the store, blog, shop and policy pages. */
html:root[data-theme="dark"]{--bg:#10202f;--bg2:#162b3f;--card:#1a3149;--text:#f3f5f8;--muted:#a9b6c6;--gold:#c9a45c;--line:#2a4560;--ok:#4cc38a;--gt:#c9a45c;color-scheme:dark}
html:root[data-theme="light"]{--bg:#f4f1ea;--bg2:#ebe6da;--card:#fff;--text:#14263a;--muted:#55677b;--line:#d8d0bf;--gt:#8a6a22;color-scheme:light}
/* ---- Blueprint ---- */
html:root[data-theme="blueprint"]{--bg:#0b2d63;--bg2:#0e3a7d;--card:#103f86;--text:#eaf3ff;--muted:#a8c8f2;--gold:#8fd3ff;--line:#3c78c8;--ok:#7dffcf;--gt:#bfe6ff;color-scheme:dark}
html[data-theme="blueprint"] body{background-image:linear-gradient(rgba(255,255,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.075) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:96px 96px,96px 96px,16px 16px,16px 16px;background-attachment:fixed}
html[data-theme="blueprint"] .prod,html[data-theme="blueprint"] .svc,html[data-theme="blueprint"] .card,html[data-theme="blueprint"] form{border-style:dashed}
html[data-theme="blueprint"] h1,html[data-theme="blueprint"] h2,html[data-theme="blueprint"] h3{letter-spacing:.01em}
/* ---- High contrast ---- */
html:root[data-theme="contrast"]{--bg:#000;--bg2:#000;--card:#000;--text:#fff;--muted:#fff;--gold:#ffe600;--line:#fff;--ok:#2dff7a;--gt:#ffe600;color-scheme:dark}
html[data-theme="contrast"] a{text-decoration:underline;text-underline-offset:3px}
html[data-theme="contrast"] .prod,html[data-theme="contrast"] .svc,html[data-theme="contrast"] .card,html[data-theme="contrast"] form,html[data-theme="contrast"] .btn,html[data-theme="contrast"] .iconbtn{border-width:2px}
html[data-theme="contrast"] .btn.p,html[data-theme="contrast"] .btn.primary{color:#000;font-weight:800}
html[data-theme="contrast"] :focus-visible{outline:3px solid #ffe600;outline-offset:3px}
html[data-theme="contrast"] .hero::after{background:linear-gradient(0deg,#000 4%,#000c 40%,transparent 72%),linear-gradient(90deg,#000 0,#000f 25%,#000b 45%,#0006 60%,transparent 78%)}
html[data-theme="contrast"] .bg,html[data-theme="contrast"] .guy{filter:grayscale(1) contrast(1.15)}
/* ---- Matrix ---- */
html:root[data-theme="matrix"]{--bg:#000b04;--bg2:#001a0a;--card:#031a0c;--text:#c8ffd6;--muted:#6fe58f;--gold:#00ff41;--line:#0e6a2a;--ok:#00ff41;--gt:#00ff41;color-scheme:dark}
html[data-theme="matrix"] body{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
html[data-theme="matrix"] h1,html[data-theme="matrix"] h2,html[data-theme="matrix"] h3,html[data-theme="matrix"] .price{text-shadow:0 0 12px #00ff4199}
html[data-theme="matrix"] .btn.p,html[data-theme="matrix"] .btn.primary{color:#001409}
html[data-theme="matrix"] .btn.p{box-shadow:0 0 14px #00ff4166}
html[data-theme="matrix"] .hero{background:#000b04}
html[data-theme="matrix"] .hero::after{background:linear-gradient(0deg,#000b04 4%,#000b04c0 40%,transparent 72%),linear-gradient(90deg,#000b04 0,#000b04f2 25%,#000b04b0 45%,#000b0452 60%,transparent 78%)}
html[data-theme="matrix"] .bg,html[data-theme="matrix"] .guy{filter:grayscale(1) sepia(1) hue-rotate(78deg) saturate(3.2) brightness(.75)}
#matrix-rain{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.45}
/* ---- Full neon LED ---- */
html:root[data-theme="neon"]{--bg:#07000f;--bg2:#0d0020;--card:#130029;--text:#ffffff;--muted:#d3c2ff;--gold:#00f0ff;--line:#6d1fd1;--ok:#39ff88;--gt:#ff3df0;--neon-a:#00f0ff;--neon-b:#ff3df0;color-scheme:dark}
html[data-theme="neon"] h1,html[data-theme="neon"] h2{text-shadow:0 0 6px #fff9,0 0 18px var(--neon-b),0 0 38px #ff3df066}
html[data-theme="neon"] h3,html[data-theme="neon"] .price,html[data-theme="neon"] .kicker{text-shadow:0 0 10px #ff3df088}
html[data-theme="neon"] .btn.p,html[data-theme="neon"] .btn.primary{color:#07000f;font-weight:800;box-shadow:0 0 12px var(--neon-a),0 0 30px #00f0ff88;animation:ledb 4s ease-in-out infinite}
html[data-theme="neon"] .btn:not(.p){box-shadow:0 0 10px #00f0ff55,inset 0 0 8px #00f0ff22}
html[data-theme="neon"] .prod,html[data-theme="neon"] .svc,html[data-theme="neon"] .card,html[data-theme="neon"] form,html[data-theme="neon"] .tile{border-color:var(--neon-b);box-shadow:0 0 0 1px #ff3df055,0 0 18px #ff3df044,inset 0 0 22px #6d1fd122;animation:ledc 5s ease-in-out infinite}
html[data-theme="neon"] .iconbtn{border-color:var(--neon-a);box-shadow:0 0 12px var(--neon-a)}
html[data-theme="neon"] .hero{background:#07000f}
html[data-theme="neon"] .hero::after{background:linear-gradient(0deg,#07000f 4%,#07000fc0 40%,transparent 72%),linear-gradient(90deg,#07000f 0,#07000ff2 25%,#07000fb0 45%,#07000f52 60%,transparent 78%)}
html[data-theme="neon"] .bg,html[data-theme="neon"] .guy{filter:saturate(1.35) hue-rotate(-12deg) contrast(1.05)}
html[data-theme="neon"] body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60vw 40vh at 10% 0%,#ff3df022,transparent 70%),radial-gradient(60vw 40vh at 90% 100%,#00f0ff22,transparent 70%)}
@keyframes ledc{0%,100%{border-color:#ff3df0;box-shadow:0 0 0 1px #ff3df055,0 0 18px #ff3df044,inset 0 0 22px #6d1fd122}50%{border-color:#00f0ff;box-shadow:0 0 0 1px #00f0ff55,0 0 22px #00f0ff55,inset 0 0 22px #6d1fd122}}
@keyframes ledb{0%,100%{box-shadow:0 0 12px #00f0ff,0 0 30px #00f0ff88}50%{box-shadow:0 0 14px #ff3df0,0 0 34px #ff3df088}}
@media (prefers-reduced-motion:reduce){html[data-theme="neon"] .prod,html[data-theme="neon"] .svc,html[data-theme="neon"] .card,html[data-theme="neon"] form,html[data-theme="neon"] .tile,html[data-theme="neon"] .btn.p{animation:none}}
/* ---- menu overlay and tiles follow the theme for non-default packs ---- */
html[data-theme="blueprint"] .nav,html[data-theme="contrast"] .nav,html[data-theme="matrix"] .nav,html[data-theme="neon"] .nav{background:color-mix(in srgb,var(--bg) 97%,transparent);color:var(--text)}
html[data-theme="blueprint"] .nav a.tile,html[data-theme="contrast"] .nav a.tile,html[data-theme="matrix"] .nav a.tile,html[data-theme="neon"] .nav a.tile{background:var(--card);border-color:var(--line);color:var(--text)}
html[data-theme="blueprint"] .nav a.tile svg,html[data-theme="contrast"] .nav a.tile svg,html[data-theme="matrix"] .nav a.tile svg,html[data-theme="neon"] .nav a.tile svg{color:var(--gold)}
html[data-theme="blueprint"] .iconbtn,html[data-theme="matrix"] .iconbtn{background:color-mix(in srgb,var(--bg) 85%,transparent)}
/* ---- theme switcher ---- */
.hr .thm,.hd .thm{position:relative;display:inline-block}
.thm-btn{position:relative;width:50px;height:50px;border-radius:50%;border:1.5px solid var(--gold);background:#10202fcc;backdrop-filter:blur(6px);cursor:pointer;display:grid;place-items:center;color:#fff;padding:0;font:inherit}
.thm-btn svg{width:24px;height:24px}
.hd .thm-btn{width:38px;height:38px;background:var(--card);color:var(--text)}.hd .thm-btn svg{width:20px;height:20px}
.thm-menu{position:fixed;z-index:80;top:calc(env(safe-area-inset-top,0px) + 70px);right:max(16px,env(safe-area-inset-right,0px));width:min(280px,calc(100vw - 32px));background:#10202ff7;color:#f3f5f8;border:1.5px solid var(--gold,#c9a45c);border-radius:18px;padding:8px;box-shadow:0 18px 50px rgba(0,0,0,.5);display:none}
.thm-menu.on{display:block}
.thm-menu h5{font:700 .68rem system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#a9b6c6;padding:8px 10px 6px}
.thm-menu button{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;background:none;color:inherit;border-radius:12px;padding:9px 10px;font:600 .95rem system-ui,sans-serif;cursor:pointer}
.thm-menu button:hover,.thm-menu button:focus-visible{background:#ffffff14;outline:0}
.thm-menu button[aria-checked="true"]{background:#c9a45c26}
.thm-menu button[aria-checked="true"]::after{content:"✓";margin-left:auto;color:#c9a45c;font-weight:900}
.thm-sw{flex:none;width:30px;height:30px;border-radius:9px;border:1.5px solid #ffffff55}
.thm-menu small{display:block;color:#a9b6c6;font-weight:500;font-size:.74rem}
