/* Theme tokens are selected and validated on the server in app/themes.php. */
body.theme-store{color-scheme:dark;isolation:isolate;color:var(--theme-text);background:radial-gradient(ellipse at 12% 8%,color-mix(in srgb,var(--store-accent) 13%,transparent),transparent 38%),radial-gradient(ellipse at 90% 25%,color-mix(in srgb,var(--theme-secondary) 9%,transparent),transparent 40%),var(--theme-bg)}
.theme-store .theme-backdrop{position:fixed;inset:0;z-index:-2;background-image:var(--theme-image);background-position:center;background-size:cover;pointer-events:none}
.theme-backdrop:after{content:"";position:absolute;inset:0;background:var(--theme-overlay)}
.theme-store.has-background:before,.theme-store.has-background:after{opacity:.04}
.theme-store:after{background:var(--theme-secondary)}
.theme-store h1{background-image:linear-gradient(95deg,var(--theme-text),var(--store-accent),var(--theme-secondary),var(--theme-text))}
.theme-store .subtitle,.theme-store .desc,.theme-store .price span,.theme-store .contact p,.theme-store .info p{color:var(--theme-muted)}
.theme-store .seo-intro{color:var(--theme-muted);font-size:13px;line-height:1.85;max-width:850px;margin:16px auto 0}
.theme-store .server{color:var(--theme-secondary)}
.theme-store .badge{color:var(--theme-text);border-color:color-mix(in srgb,var(--store-accent) 30%,transparent);box-shadow:0 0 25px color-mix(in srgb,var(--store-accent) 10%,transparent)}
.theme-store .card{background:linear-gradient(165deg,color-mix(in srgb,var(--theme-surface) 83%,transparent),var(--theme-card));border-color:var(--theme-line);color:var(--theme-text);border-radius:var(--theme-radius)}
.theme-store.theme-custom .card{background:var(--theme-card)}
.theme-store.has-holiday .card,.theme-store.has-background .card{background:var(--theme-card);backdrop-filter:blur(14px)}
.theme-store .card:hover{border-color:color-mix(in srgb,var(--store-accent) 60%,transparent)}
.theme-store .card.featured{border-color:color-mix(in srgb,var(--store-accent) 42%,transparent)}
.theme-store .card.featured:after{color:var(--theme-accent-ink);background:var(--store-accent);z-index:2}
.theme-store .server-forum-btn:not(.terms-btn):not(.discord-btn){color:var(--theme-accent-ink)}
.theme-store .card .icon{background:color-mix(in srgb,var(--store-accent) 13%,transparent);border-color:color-mix(in srgb,var(--store-accent) 22%,transparent)}
.theme-store .features li{color:var(--theme-muted);border-color:var(--theme-line)}
.theme-store .features li:before{color:var(--store-accent)}
.theme-store .features li.ak-gold{color:#ffdc79;border-color:#e3b74766;background:linear-gradient(90deg,#aa700022,#f1cf7008)}
.theme-store .features li.ak-gold:before{color:#ffdc79}
.theme-store .btn,.theme-store .contact a{color:var(--theme-text);border-color:var(--theme-line);background:color-mix(in srgb,var(--theme-text) 4%,transparent)}
.theme-store .btn:hover,.theme-store .contact a:hover{border-color:var(--store-accent);background:color-mix(in srgb,var(--store-accent) 13%,transparent)}
.theme-store .btn.stripe{background:color-mix(in srgb,var(--store-accent) 14%,transparent);border-color:color-mix(in srgb,var(--store-accent) 25%,transparent)}
.theme-store .info{background:var(--theme-card);border-color:var(--theme-line);backdrop-filter:blur(12px)}
.theme-store .info b{color:var(--theme-text)}
.theme-store .contact{border-color:var(--theme-line)}
.theme-store footer{color:var(--theme-muted)}
.theme-store .maintenance{background:var(--theme-card);border-color:var(--theme-line);backdrop-filter:blur(14px)}
.theme-store .maintenance p{color:var(--theme-muted)}
.theme-store .maintenance a{color:var(--theme-text);border-color:var(--theme-line)}
.holiday-notice{margin:0 auto 26px;display:flex;flex-direction:column;align-items:center;gap:10px}
.holiday-tag{color:var(--store-accent);font-size:10px;font-weight:800;letter-spacing:2px;padding:9px 17px;border-radius:50px;border:1px solid color-mix(in srgb,var(--store-accent) 30%,transparent);background:color-mix(in srgb,var(--theme-bg) 75%,transparent);backdrop-filter:blur(8px)}
.holiday-notice p{color:var(--theme-muted);font-size:12px;letter-spacing:.2px;line-height:1.7;max-width:650px;overflow-wrap:anywhere}
.holiday-effects{position:fixed;inset:0;z-index:3;overflow:hidden;pointer-events:none;contain:strict}
.holiday-effects span{position:absolute;left:var(--x);top:-30px;color:var(--store-accent);font-size:var(--size);opacity:0;animation:holiday-fall var(--duration) linear var(--delay) infinite;text-shadow:0 0 8px currentColor}
.effect-snow span{color:#fff;font-size:calc(var(--size) + 4px)}
.effect-hearts span,.effect-petals span{font-size:calc(var(--size) + 9px)}
.effect-confetti span{font-size:calc(var(--size) + 7px)}
@keyframes holiday-fall{0%{opacity:0;transform:translate3d(0,-20px,0) rotate(0)}10%{opacity:.4}85%{opacity:.3}100%{opacity:0;transform:translate3d(var(--drift),calc(100vh + 50px),0) rotate(100deg)}}
.theme-store.theme-light{color-scheme:light}
.theme-light .server{color:#0369a1}
.theme-light.theme-custom .server{color:var(--theme-secondary)}
.theme-light .card{box-shadow:0 15px 50px #26395d12}
.theme-light .card:before{opacity:.06}
.theme-light h1{background-image:linear-gradient(95deg,var(--theme-text),var(--store-accent),var(--theme-text))}
.theme-light .features li.ak-gold{color:#805100;background:linear-gradient(90deg,#f9e9be99,#fff5db66);text-shadow:none}
.theme-light .features li.ak-gold:before{color:#996107;text-shadow:none}
.theme-light .holiday-tag{background:#ffffffc9}
.theme-preview-bar{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;padding:12px 18px;background:#d9f99b;color:#1c2517;border-bottom:1px solid #a8c67b;font:11px/1.6 Arial,sans-serif;position:relative;z-index:5}
.theme-preview-bar strong{font-size:10px;letter-spacing:.5px}
.theme-preview-bar a{color:#1c2517;font-weight:700;text-decoration:underline}
@media(max-width:600px){.theme-store .seo-intro{font-size:12px;line-height:1.8}.holiday-tag{font-size:8px;letter-spacing:1.3px}.holiday-notice{margin-bottom:23px}.holiday-notice p{font-size:11px}.theme-store .theme-backdrop{background-position:35% center}.theme-preview-bar{gap:7px 16px;font-size:10px}.theme-preview-bar>span{display:none}}
@media(prefers-reduced-motion:reduce){.holiday-effects{display:none}.holiday-effects span{animation:none}}
