/*
Theme Name: Vortex Zone V44
Theme URI: https://vortexzone.ir/
Author: Vortex Zone
Description: Vortex Zone V43 frontend theme, migrated from the existing HTML/CSS/JS build. WooCommerce-ready.
Version: 47.0.0
Text Domain: vortex-zone-v44
*/

@import url('https://fonts.googleapis.com/css2?family=Exo+2:wght@400;500;600;700;800;900&family=Vazirmatn:wght@400;500;600;700;800;900&display=swap');
:root{--red:#ef1b24;--red2:#ff3b43;--black:#111;--muted:#777;--bg:#fff;--soft:#fff6f6;--border:#ff4b52;--card:#fff;--text:#111;--link:#ef1b24;--neon:#00eaff;--aurora:#7c3aed}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'Exo 2','Vazirmatn',Arial,sans-serif;overflow-x:hidden}
button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{height:76px;border-bottom:1px solid #eee;display:flex;align-items:center;gap:14px;padding:0 22px;position:sticky;top:0;background:var(--card);z-index:30}.brand{font-size:34px;direction:ltr;white-space:nowrap;margin-right:auto}.brand b{font-weight:900}.brand span,.about-logo span,footer span{color:var(--red);font-size:.55em;font-weight:800}
.search-wrap{width:min(470px,42vw);display:flex;border:2px solid var(--red);border-radius:18px;overflow:hidden}.search-wrap input{border:0;outline:0;padding:12px 16px;width:100%;text-align:right}.search-wrap button{border:0;background:#fff;font-size:24px;width:52px;color:var(--red)}
.top-actions{display:flex;align-items:center;gap:8px}.icon-btn,.outline-btn,.primary-btn,.text-btn{border-radius:12px;padding:10px 15px;border:1px solid #ddd;background:#fff}.icon-btn{position:relative;border:0;font-size:22px}.primary-btn{background:var(--red);border-color:var(--red);color:#fff;font-weight:800}.outline-btn{border-color:var(--red);color:var(--red);font-weight:700}.text-btn{border:0;color:var(--red);font-weight:800}.cart-icon i,.top-actions .icon-btn i{position:absolute;top:0;right:0;background:var(--red);color:#fff;border-radius:50%;font-size:10px;min-width:17px;height:17px;line-height:17px;font-style:normal}.top-actions .icon-btn i:empty{display:none}.hamburger{font-size:28px}
.side-menu{position:fixed;top:0;right:-340px;width:320px;height:100vh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--card);z-index:60;border-left:3px solid var(--red);box-shadow:-10px 0 35px #0001;transition:.3s;padding:22pxz-index:1000!important;overflow-y:auto;overflow-x:hidden;max-height:100dvh;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}.side-menu.open{right:0;z-index:100}.side-head{display:flex;justify-content:space-between;align-items:center;font-weight:900;color:var(--red);margin-bottom:24px}.side-head button{border:0;background:none;font-size:30px}.side-menu nav{display:grid;gap:8px}.side-menu a{padding:13px;border-radius:12px;font-weight:700}.side-menu a:hover{background:var(--soft);color:var(--red);transform:translateX(-5px)}.overlay{position:fixed;inset:0;background:#0005;z-index:50;display:none}.overlay.show{display:block}
main{max-width:1450px;margin:auto;padding:22px}.page{display:none}.page.active{display:block}.hero{min-height:330px;border:2px solid var(--red);border-radius:25px;padding:38px;display:flex;align-items:center;overflow:hidden;position:relative;background:linear-gradient(120deg,#fff,#fff6f6)}.hero h1{font-size:clamp(28px,4vw,54px);margin:10px 0;max-width:760px}.hero p{color:#555;max-width:650px}.hero-art{width:340px;height:260px;margin-right:auto;position:relative}.orb{position:absolute;width:170px;height:170px;border:2px solid #ddd;border-radius:50%;display:grid;place-items:center;font-size:92px;font-weight:900;right:65px;top:45px;box-shadow:0 10px 35px #0001;animation:controllerFloat 3.8s ease-in-out infinite}
/* Lightweight link-color glow for the controller and Vortex AI.
   It follows --link automatically when the admin changes site link color. */
.controller-orb{
  filter:none;
  z-index:2;
  animation:controllerFloat 4.2s ease-in-out infinite;
  box-shadow:0 10px 35px #0001, 0 0 22px color-mix(in srgb,var(--link) 32%,transparent), 0 0 55px color-mix(in srgb,var(--link) 18%,transparent);
}
.controller-orb::before{
  content:"";
  position:absolute;
  inset:-24px;
  border-radius:50%;
  background:radial-gradient(circle, color-mix(in srgb,var(--link) 42%,transparent) 0%, color-mix(in srgb,var(--link) 18%,transparent) 38%, transparent 72%);
  filter:blur(10px);
  z-index:-1;
  pointer-events:none;
  animation:controllerGlow 4.2s ease-in-out infinite;
}
@keyframes controllerGlow{
  0%,100%{transform:translateY(2px) scale(.96);opacity:.62}
  50%{transform:translateY(-3px) scale(1.02);opacity:.9}
}
.ai-open-btn{position:fixed!important;z-index:2147483000!important;display:flex!important;visibility:visible!important;opacity:1!important;right:auto!important;bottom:auto!important;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
.ai-open-btn::before{
  content:"";
  position:absolute;
  inset:-12px;
  border-radius:inherit;
  background:radial-gradient(ellipse, color-mix(in srgb,var(--link) 34%,transparent), transparent 68%);
  filter:blur(8px);
  z-index:-1;
  pointer-events:none;
  animation:aiGlow 4.2s ease-in-out infinite;
}
@keyframes aiFloat{
  0%,100%{transform:translateY(2px)}
  50%{transform:translateY(-3px)}
}
@keyframes aiGlow{
  0%,100%{transform:translateY(2px) scale(.96);opacity:.58}
  50%{transform:translateY(-3px) scale(1.03);opacity:.88}
}
@media (prefers-reduced-motion:reduce){
  .controller-orb,.controller-orb::before,.ai-open-btn,.ai-open-btn::before{animation:none!important}
}





15%,85%{opacity:1}100%{transform:translateX(-560px) rotate(-18deg);opacity:0}}
50%{transform:translate3d(-70px,-8px) scale(1.08);opacity:.8}}
.section-head,.page-title,.admin-header{display:flex;justify-content:space-between;align-items:center;margin:34px 0 16px}.section-head h2,.page-title h1{margin:0}.wall-grid,.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.wall-card,.product-card,.article-card,.category-card,.about-card{border:1.5px solid #f14a50;border-radius:18px;background:var(--card);overflow:hidden;transition:.25s;position:relative}.wall-card:hover,.product-card:hover,.article-card:hover{transform:translateY(-10px) scale(1.025);box-shadow:0 12px 35px #ef1b2430}.wall-card:after,.product-card:after,.article-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--red);transform:scaleX(0);transition:.25s}.wall-card:hover:after,.product-card:hover:after,.article-card:hover:after{transform:scaleX(1)}.wall-card img,.product-card img,.article-card img{width:100%;height:170px;object-fit:cover;display:block}.card-body{padding:12px}.card-body h3{font-size:15px;margin:0 0 8px}.meta{font-size:12px;color:#777}.download-btn{margin-top:10px;width:100%;padding:9px;border:1px solid var(--red);color:var(--red);background:#fff;border-radius:10px;font-weight:800}.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.category-card{padding:20px;min-height:190px}.category-card h3{margin-top:0}.category-card select,.page-title select{width:100%;padding:11px;border:1px solid #ddd;border-radius:10px;background:#fff;margin:10px 0}.category-card button{background:var(--red);color:#fff;border:0;border-radius:10px;padding:10px 18px}.product-card .price{font-weight:900;color:var(--red);font-size:17px}.discount{position:absolute;top:10px;left:10px;background:var(--red);color:#fff;padding:5px 8px;border-radius:8px;font-size:11px;font-weight:800}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-card{padding-bottom:12px}.article-card .card-body{padding:15px}
.drawer{position:fixed;left:-450px;top:0;width:430px;max-width:95vw;height:100vh;background:#fff;z-index:70;box-shadow:10px 0 40px #0002;transition:.3s;padding:22px;overflow:auto}.drawer.open{left:0}.drawer-head{display:flex;justify-content:space-between}.drawer-head button,.modal-close{border:0;background:none;font-size:28px}.cart-row{display:flex;gap:10px;align-items:center;border-bottom:1px solid #eee;padding:12px 0}.cart-row img{width:65px;height:65px;object-fit:cover;border-radius:10px}.qty{display:flex;gap:6px;align-items:center;margin-right:auto}.qty button{border:1px solid #ddd;background:#fff;border-radius:7px;width:28px;height:28px}.cart-summary{margin-top:20px;border-top:2px solid #eee;padding-top:15px}.cart-summary>div{display:flex;justify-content:space-between;margin:9px 0}.profit{color:#0a8f47}.coupon{display:flex!important;gap:8px}.coupon input{flex:1;border:1px solid #ddd;border-radius:9px;padding:10px}.coupon button{border:0;background:var(--red);color:#fff;border-radius:9px;padding:10px 15px}.wide{width:100%}
.notification-panel{position:fixed;top:82px;right:25px;left:auto;width:330px;max-width:90vw;background:#fff;border:1px solid var(--red);border-radius:16px;padding:15px;z-index:65;display:none;box-shadow:0 10px 30px #0002}.notification-panel.open{display:block}.notice{padding:10px;border-bottom:1px solid #eee}.notice.unread{background:#fff3f3;border-right:4px solid var(--red)}
.modal{position:fixed;inset:0;background:#0007;z-index:100;display:none;place-items:center;padding:20px}.modal.open{display:grid}.modal-box{background:#fff;border:2px solid var(--red);border-radius:20px;padding:25px;width:min(520px,95vw);max-height:90vh;overflow:auto;position:relative}.modal-box.large{width:min(850px,95vw)}.modal-box h2{margin-top:0}.form{display:grid;gap:12px}.form input,.form textarea,.form select{border:1px solid #ddd;border-radius:10px;padding:12px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.tabs button{border:1px solid #ddd;background:#fff;border-radius:9px;padding:9px}.tabs button.active{border-color:var(--red);color:var(--red)}.order-box{border:1px solid #eee;border-right:4px solid var(--red);padding:15px;border-radius:12px;margin:12px 0}.status{display:inline-block;padding:5px 8px;border-radius:7px;background:#eee;font-size:12px}.status.current{background:#fff0f0;color:var(--red)}.status.done{background:#e9fff1;color:#168047}
.admin-login{max-width:480px;margin:80px auto;border:2px solid var(--red);border-radius:20px;padding:30px;text-align:center}.admin-login input{width:100%;padding:12px;border:1px solid #ddd;border-radius:10px;margin:12px 0}.hidden{display:none!important}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{border:1px solid #f14a50;border-radius:14px;padding:18px;background:#fff}.stat b{font-size:28px;color:var(--red);display:block}.admin-tabs{display:flex;gap:8px;overflow:auto;margin:20px 0}.admin-tabs button{white-space:nowrap;border:1px solid #ddd;background:#fff;padding:10px 13px;border-radius:10px}.admin-tabs button.active{background:var(--red);color:#fff;border-color:var(--red)}.admin-card{border:1px solid #eee;border-radius:15px;padding:18px;margin-bottom:14px}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.file-note{font-size:12px;color:#777}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:10px;border-bottom:1px solid #eee;text-align:right;white-space:nowrap}.danger{color:#c00}.small-btn{border:1px solid #ddd;background:#fff;border-radius:8px;padding:7px}.about-card{padding:45px;text-align:center;max-width:900px;margin:60px auto}.about-logo{font-size:65px;font-weight:900;direction:ltr}.social-links{display:flex;justify-content:center;gap:15px}.social-links a{border:1px solid var(--red);padding:12px 25px;border-radius:12px;color:var(--link);text-decoration:none}
.ai-open-btn{position:fixed;right:22px;bottom:20px;z-index:45;border:2px solid var(--red);background:#fff;color:var(--red);border-radius:999px;padding:12px 16px;font-weight:900;box-shadow:0 10px 30px #0002;display:flex;align-items:center;gap:8px}.ai-open-btn:hover{transform:translateY(-2px)}
.ai-open-btn.dragging{cursor:grabbing;transform:none!important}.ai-box{position:fixed;right:22px;bottom:20px;width:350px;max-width:calc(100vw - 30px);background:#fff;border:2px solid var(--red);border-radius:18px;z-index:45;box-shadow:0 15px 45px #0002;overflow:hidden}.ai-head{background:var(--red);color:#fff;padding:12px 15px;display:flex;justify-content:space-between}.ai-head button{border:0;background:none;color:#fff;font-size:22px}.ai-quick{display:flex;gap:6px;overflow:auto;padding:8px}.ai-quick button{white-space:nowrap;border:1px solid #ffb0b3;background:#fff6f6;border-radius:9px;padding:7px;font-size:11px}.ai-messages{height:220px;overflow:auto;padding:12px;display:grid;align-content:start;gap:8px;background:#fffafa}.ai-messages .bot,.ai-messages .user{max-width:85%;padding:9px 11px;border-radius:12px;font-size:13px}.bot{background:#eee;justify-self:start}.user{background:#ffe4e5;justify-self:end}.ai-input{display:flex;border-top:1px solid #eee}.ai-input input{flex:1;border:0;padding:12px;outline:0}.ai-input button{width:45px;border:0;background:var(--red);color:#fff}.support-btn{width:calc(100% - 20px);margin:10px;border:1px solid var(--red);background:#fff;color:var(--red);padding:9px;border-radius:10px;font-weight:800}
footer{margin-top:50px;border-top:1px solid #eee;padding:25px;display:flex;justify-content:space-between;direction:rtl}.footer b{font-size:24px}
@keyframes edge{to{transform:translateX(-120vw)}}
@media(max-width:1000px){.wall-grid,.product-grid{grid-template-columns:repeat(3,1fr)}.hero-art{display:none}.search-wrap{width:38vw}.top-actions .outline-btn,.top-actions .primary-btn{display:none}.triple{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.topbar{padding:0 10px}.brand{font-size:24px}.search-wrap{width:38vw}.wall-grid,.product-grid,.article-grid{grid-template-columns:repeat(2,1fr)}main{padding:12px}.hero{padding:22px;min-height:300px}.hero h1{font-size:30px}.ai-box{right:10px;bottom:10px}.drawer{width:100%;left:-100%}.about-logo{font-size:42px}footer{display:block}.stats{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}}

.ai-box.hidden{display:none!important}
@media(max-width:650px){.ai-open-btn{right:10px;bottom:10px}.ai-open-btn span{display:none}}

.ai-open-btn{position:fixed}
.push-permission{position:fixed;right:20px;bottom:20px;z-index:120;width:min(390px,calc(100vw - 30px));padding:18px;border:2px solid var(--link);border-radius:18px;background:var(--card);box-shadow:0 18px 50px #0003}
.push-permission p{font-size:13px;color:var(--muted);line-height:1.8}
.push-permission>div{display:flex;gap:8px;align-items:center}
.color-row{display:grid;grid-template-columns:1fr 75px;gap:8px;align-items:center}
.color-row input[type=color]{width:75px;height:44px;padding:3px;border:1px solid #ddd;border-radius:10px}
.color-row input[type=text]{direction:ltr;text-align:left}
.setting-preview{border-radius:14px;padding:15px;border:2px solid var(--border);background:var(--card)}
50%{opacity:.8;transform:scale(1.02)}}

/* Vortex RGB Gaming Pack — 30 NEW full-screen effects, off by default */
#rgbEffects{position:fixed;inset:0;width:100vw;height:100vh;overflow:hidden;pointer-events:none;z-index:5;isolation:isolate;contain:strict}
.rgb-effect{position:absolute;inset:0;display:none;pointer-events:none;opacity:0;background:transparent;contain:paint}
.rgb-effect.is-on{display:block;opacity:1}
.rgb-1{background:radial-gradient(circle at 15% 25%, var(--effect-color) 0, transparent 26%);background-size:140% 140%;animation:rgbN1 6.7s ease-in-out infinite;opacity:.18}
@keyframes rgbN1{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-2{background:radial-gradient(circle at 85% 70%, var(--effect-color) 0, transparent 24%);background-size:140% 140%;animation:rgbN2 7.4s ease-in-out infinite;opacity:.18}
@keyframes rgbN2{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-3{background:linear-gradient(125deg, transparent 35%, var(--effect-color) 50%, transparent 65%);background-size:140% 140%;animation:rgbN3 8.1s ease-in-out infinite;opacity:.18}
@keyframes rgbN3{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-4{background:repeating-linear-gradient(0deg, transparent 0 38px, var(--effect-color) 39px 40px, transparent 41px 78px);background-size:140% 140%;animation:rgbN4 8.8s ease-in-out infinite;opacity:.18}
@keyframes rgbN4{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-5{background:radial-gradient(circle, var(--effect-color) 0 1px, transparent 2px);background-size:140% 140%;animation:rgbN5 9.5s ease-in-out infinite;opacity:.18}
@keyframes rgbN5{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-6{background:radial-gradient(circle at 50% 50%, transparent 0 18%, var(--effect-color) 19% 19.5%, transparent 20% 30%, var(--effect-color) 31% 31.5%, transparent 32%);background-size:140% 140%;animation:rgbN6 10.2s ease-in-out infinite;opacity:.18}
@keyframes rgbN6{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-7{background:repeating-linear-gradient(115deg, transparent 0 70px, var(--effect-color) 71px 73px, transparent 74px 145px);background-size:140% 140%;animation:rgbN7 6.0s ease-in-out infinite;opacity:.18}
@keyframes rgbN7{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-8{background:linear-gradient(180deg, var(--effect-color), transparent 18%);background-size:140% 140%;animation:rgbN8 6.7s ease-in-out infinite;opacity:.18}
@keyframes rgbN8{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-9{background:linear-gradient(0deg, var(--effect-color), transparent 18%);background-size:140% 140%;animation:rgbN9 7.4s ease-in-out infinite;opacity:.18}
@keyframes rgbN9{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-10{background:linear-gradient(135deg, transparent 20%, var(--effect-color) 48%, transparent 52%);background-size:140% 140%;animation:rgbN10 8.1s ease-in-out infinite;opacity:.18}
@keyframes rgbN10{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-11{background:radial-gradient(ellipse at 50% 50%, var(--effect-color), transparent 48%);background-size:140% 140%;animation:rgbN11 8.8s ease-in-out infinite;opacity:.18}
@keyframes rgbN11{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-12{background:radial-gradient(ellipse at 20% 80%, var(--effect-color), transparent 40%);background-size:140% 140%;animation:rgbN12 9.5s ease-in-out infinite;opacity:.18}
@keyframes rgbN12{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-13{background:repeating-linear-gradient(90deg, transparent 0 58px, var(--effect-color) 59px 60px, transparent 61px 118px), repeating-linear-gradient(0deg, transparent 0 58px, var(--effect-color) 59px 60px, transparent 61px 118px);background-size:140% 140%;animation:rgbN13 10.2s ease-in-out infinite;opacity:.18}
@keyframes rgbN13{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-14{background:radial-gradient(circle at 75% 30%, var(--effect-color), transparent 28%);background-size:140% 140%;animation:rgbN14 6.0s ease-in-out infinite;opacity:.18}
@keyframes rgbN14{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-15{background:linear-gradient(90deg, transparent, var(--effect-color), transparent);background-size:140% 140%;animation:rgbN15 6.7s ease-in-out infinite;opacity:.18}
@keyframes rgbN15{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-16{background:linear-gradient(90deg, transparent, var(--effect-color), transparent);background-size:140% 140%;animation:rgbN16 7.4s ease-in-out infinite;opacity:.18}
@keyframes rgbN16{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-17{background:linear-gradient(90deg, transparent 45%, var(--effect-color) 50%, transparent 55%);background-size:140% 140%;animation:rgbN17 8.1s ease-in-out infinite;opacity:.18}
@keyframes rgbN17{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-18{background:radial-gradient(circle at 30% 35%, var(--effect-color), transparent 18%);background-size:140% 140%;animation:rgbN18 8.8s ease-in-out infinite;opacity:.18}
@keyframes rgbN18{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-19{background:linear-gradient(90deg, transparent, var(--effect-color), transparent);background-size:140% 140%;animation:rgbN19 9.5s ease-in-out infinite;opacity:.18}
@keyframes rgbN19{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-20{background:radial-gradient(circle at 70% 75%, var(--effect-color), transparent 22%);background-size:140% 140%;animation:rgbN20 10.2s ease-in-out infinite;opacity:.18}
@keyframes rgbN20{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-21{background:radial-gradient(circle at 100% 0%, var(--effect-color), transparent 35%);background-size:140% 140%;animation:rgbN21 6.0s ease-in-out infinite;opacity:.18}
@keyframes rgbN21{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-22{background:radial-gradient(circle at 0% 100%, var(--effect-color), transparent 35%);background-size:140% 140%;animation:rgbN22 6.7s ease-in-out infinite;opacity:.18}
@keyframes rgbN22{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-23{background:linear-gradient(180deg, var(--effect-color), transparent 4%);background-size:140% 140%;animation:rgbN23 7.4s ease-in-out infinite;opacity:.18}
@keyframes rgbN23{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-24{background:linear-gradient(0deg, var(--effect-color), transparent 4%);background-size:140% 140%;animation:rgbN24 8.1s ease-in-out infinite;opacity:.18}
@keyframes rgbN24{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-25{background:radial-gradient(ellipse at center, transparent 45%, var(--effect-color) 46% 46.5%, transparent 47%);background-size:140% 140%;animation:rgbN25 8.8s ease-in-out infinite;opacity:.18}
@keyframes rgbN25{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-26{background:linear-gradient(110deg, transparent 40%, var(--effect-color) 50%, transparent 60%), linear-gradient(290deg, transparent 40%, var(--effect-color) 50%, transparent 60%);background-size:140% 140%;animation:rgbN26 9.5s ease-in-out infinite;opacity:.18}
@keyframes rgbN26{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-27{background:repeating-conic-gradient(from 0deg at 50% 50%, transparent 0 8deg, var(--effect-color) 9deg 10deg);background-size:140% 140%;animation:rgbN27 10.2s ease-in-out infinite;opacity:.18}
@keyframes rgbN27{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-28{background:repeating-linear-gradient(90deg, transparent 0 70px, var(--effect-color) 71px 72px, transparent 73px 140px);background-size:140% 140%;animation:rgbN28 6.0s ease-in-out infinite;opacity:.18}
@keyframes rgbN28{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
.rgb-29{background:radial-gradient(ellipse at 50% 15%, var(--effect-color), transparent 45%), radial-gradient(ellipse at 50% 85%, var(--effect-color), transparent 45%);background-size:140% 140%;animation:rgbN29 6.7s ease-in-out infinite;opacity:.18}
@keyframes rgbN29{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:100% 100%;opacity:.30}}
.rgb-30{background:radial-gradient(circle at 50% 50%, var(--effect-color), transparent 8%, var(--effect-color) 22%, transparent 42%);background-size:140% 140%;animation:rgbN30 7.4s ease-in-out infinite;opacity:.18}
@keyframes rgbN30{0%,100%{background-position:50% 50%;opacity:.10}50%{background-position:0 0;opacity:.30}}
@media(prefers-reduced-motion:reduce){.rgb-effect{animation:none!important}.rgb-effect.is-on{opacity:.20!important}}

.rgb-setting-row{display:grid;grid-template-columns:1fr auto 170px;gap:10px;align-items:center;border:1px solid #eee;border-radius:12px;padding:10px;margin:8px 0}
.rgb-setting-info{display:grid;gap:2px}.rgb-setting-info small{color:var(--muted);font-size:11px}
.rgb-toggle{display:flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap}.rgb-toggle input{position:absolute;opacity:0;pointer-events:none}.rgb-toggle span{width:42px;height:23px;border-radius:99px;background:#ddd;position:relative;transition:.2s}.rgb-toggle span:after{content:"";position:absolute;width:17px;height:17px;top:3px;right:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:.2s}.rgb-toggle input:checked+span{background:var(--link)}.rgb-toggle input:checked+span:after{right:3px}.rgb-toggle em{font-style:normal;font-size:12px;color:var(--muted)}
.rgb-setting-row.enabled{border-color:var(--link);box-shadow:0 0 0 1px color-mix(in srgb,var(--link) 15%,transparent)}
.color-row.compact{grid-template-columns:1fr 52px}.color-row.compact input[type=color]{width:52px;height:36px}
.rgb-manager-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
@media(max-width:650px){.rgb-setting-row{grid-template-columns:1fr auto}.rgb-setting-row .color-row{grid-column:1/-1}.rgb-12,.rgb-2{right:35px}.rgb-6{right:45px}}
@media(prefers-reduced-motion:reduce){.rgb-effect{animation:none!important;transition:none!important}.rgb-effect.is-on{opacity:.35!important}.orb{animation:none!important}}

/* Vortex Zone — subtle controller & AI glow */
.controller-orb,.ai-open-btn{position:relative;isolation:isolate}
.controller-orb::before,.ai-open-btn::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  width:120%;height:120%;left:-10%;top:-10%;
  border-radius:50%;
  background:radial-gradient(circle, color-mix(in srgb,var(--link) 42%,transparent), transparent 68%);
  filter:blur(18px);
  opacity:.62;
  animation:vortexGlowFloat 3.8s ease-in-out infinite;
}
.ai-open-btn::before{width:145%;height:145%;left:-22.5%;top:-22.5%;border-radius:22px;filter:blur(14px);opacity:.48}
@keyframes vortexGlowFloat{0%,100%{transform:translateY(0) scale(.98);opacity:.48}50%{transform:translateY(-4px) scale(1.02);opacity:.7}}
@media (prefers-reduced-motion:reduce){.controller-orb::before,.ai-open-btn::before{animation:none}}

/* Keep Vortex AI pinned to the side; do not let generic glow rules change it. */
.ai-open-btn{position:fixed!important;right:auto!important;left:auto!important;bottom:auto!important;top:auto!important;z-index:80!important;transform:none;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
.ai-open-btn:hover{transform:translateY(-2px)}
.ai-open-btn::before{
  width:auto;height:auto;inset:-12px;
  border-radius:999px;
  background:radial-gradient(ellipse at center,color-mix(in srgb,var(--link) 34%,transparent),transparent 70%);
  filter:blur(10px);
  animation:aiGlowFixed 4.2s ease-in-out infinite;
}
@keyframes aiGlowFixed{
  0%,100%{transform:translateY(2px) scale(.96);opacity:.5}
  50%{transform:translateY(-3px) scale(1.03);opacity:.85}
}

/* Soft halo behind the controller, not a visible ring. */
.hero-art .controller-orb{
  position:relative;
  z-index:2;
  isolation:isolate;
  animation:controllerFloatFixed 4.2s ease-in-out infinite;
  box-shadow:none!important;
  filter:none!important;
}
.hero-art .controller-orb::before{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  width:230px;
  height:145px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center,
    color-mix(in srgb,var(--link) 48%,transparent) 0%,
    color-mix(in srgb,var(--link) 25%,transparent) 28%,
    transparent 70%);
  filter:blur(18px);
  opacity:.72;
  animation:controllerGlowFixed 4.2s ease-in-out infinite;
}
@keyframes controllerFloatFixed{
  0%,100%{transform:translateY(2px)}
  50%{transform:translateY(-3px)}
}
@keyframes controllerGlowFixed{
  0%,100%{transform:translate(-50%,-50%) scale(.94);opacity:.58}
  50%{transform:translate(-50%,-50%) scale(1.06);opacity:.9}
}
@media(prefers-reduced-motion:reduce){
  .hero-art .controller-orb,.hero-art .controller-orb::before,.ai-open-btn,.ai-open-btn::before{animation:none!important}
}

/* The settings are live; no save button is shown. */
#settingsForm > button[type="button"][disabled]{display:none!important}

.article-text{white-space:pre-line;line-height:2;color:#333;font-size:13px}.article-excerpt{margin:10px 0 0;line-height:1.9;color:#444;font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-more{cursor:pointer}.article-full-text{white-space:pre-line;line-height:2.05;color:#333;font-size:14px;margin-top:12px}.hashtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.hashtags span{font-size:11px;color:var(--link);background:var(--soft);border:1px solid #ffd0d2;border-radius:999px;padding:4px 8px}

/* Product color variants */
.product-colors{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12px;font-weight:800}
.product-colors select{flex:1;padding:9px;border:1px solid #ddd;border-radius:9px;background:#fff;color:#222}
.color-option{display:flex;align-items:center;gap:8px;margin:10px 0;font-weight:800}
.color-manager{margin:10px 0;padding:12px;border:1px dashed #f14a50;border-radius:12px;background:#fff}
.color-manager.hidden{display:none}
.color-add-row{display:flex;gap:8px;align-items:center}
.color-add-row input{flex:1;padding:9px;border:1px solid #ddd;border-radius:9px}
.color-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.color-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:#f7f7f7;border:1px solid #ddd;font-size:12px}
.color-chip button{border:0;background:transparent;cursor:pointer;font-weight:900;color:#c00}
.cart-color{font-size:12px;color:#666;margin:4px 0}

/* Product color palette — exact color picker swatches */
.color-add-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.color-add-row input[type="color"]{width:46px;height:42px;padding:3px;border:1px solid #ddd;border-radius:10px;background:#fff;cursor:pointer}
.color-chip{padding:6px 8px;gap:7px}
.swatch-dot{display:inline-block;width:20px;height:20px;min-width:20px;border-radius:50%;background:var(--swatch,#ccc);border:2px solid #fff;box-shadow:0 0 0 1px #bbb,0 1px 3px #0002;vertical-align:middle}
.chip-color-input{width:28px;height:28px;padding:1px;border:0;border-radius:50%;background:transparent;cursor:pointer}
.product-colors{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-size:12px;font-weight:800;flex-wrap:wrap}
.product-swatch-list{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.product-swatch{display:inline-flex;align-items:center;gap:4px;cursor:pointer;border:1px solid #ddd;border-radius:999px;padding:4px 8px;background:#fff;font-size:11px;font-weight:700}
.product-swatch input{position:absolute;opacity:0;pointer-events:none}
.product-swatch .swatch-dot{width:18px;height:18px;min-width:18px}
.product-swatch em{font-style:normal}
.product-swatch:has(input:checked){border-color:var(--link);box-shadow:0 0 0 1px var(--link)}
@media(max-width:650px){.color-add-row input:not([type="color"]){flex:1;min-width:150px}.product-swatch{padding:4px 7px}}

.full-ai-support{max-width:950px;margin:20px auto;border:2px solid var(--red);border-radius:22px;padding:20px;background:var(--card);box-shadow:0 10px 35px #0001}.full-ai-messages{height:520px;overflow:auto;padding:14px}.full-ai-quick{margin-top:12px}.support-page-messages{overflow:auto}.support-chat-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 0 14px;border-bottom:1px solid #eee;margin-bottom:12px}.chat-shortcut{display:block;margin-top:8px;border:1px solid var(--red);background:#fff;color:var(--red);border-radius:9px;padding:6px 10px;font-weight:800}.support-shortcut-option{display:flex;align-items:center;gap:8px;margin:12px 0;padding:10px;border:1px solid #eee;border-radius:10px}.support-blocked{margin:10px 0;padding:10px;border-radius:10px;background:#fff0f0;color:#b00000}

.message-delete-btn{border:0;background:transparent;cursor:pointer;font-size:.78rem;opacity:.7;padding:3px 6px;margin-inline-start:6px;border-radius:6px}.message-delete-btn:hover{opacity:1;background:rgba(255,80,80,.12)}.admin-search{width:100%;padding:12px;border:1px solid #ddd;border-radius:10px;margin-bottom:10px}.support-user-results{display:flex;gap:8px;flex-wrap:wrap;max-height:180px;overflow:auto}.user-last-message{margin:8px 0;padding:8px;border-radius:8px;background:rgba(0,0,0,.04)}

/* Final Vortex AI button rules: always visible near the bottom until opened,
   fixed to the viewport, and safe to drag. */
.ai-open-btn{
  position:fixed!important;
  left:auto!important;
  right:20px!important;
  top:auto!important;
  bottom:20px!important;
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:2147483647!important;
  touch-action:none!important;
  cursor:grab!important;
}
.ai-open-btn.dragging{cursor:grabbing!important;transform:none!important}

.ai-open-btn.hidden{display:none!important}

#notifBadge.has-unread{display:flex!important;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:11px;line-height:18px;font-weight:800}
.admin-notification-list{display:grid;gap:10px;max-height:420px;overflow:auto}
.admin-notification-item{padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:12px}
.admin-notification-item p{margin:6px 0}

.side-menu,.side-menu.open{z-index:1000!important;overflow-y:auto;max-height:100dvh;-webkit-overflow-scrolling:touch;}
.ai-open-btn{z-index:900!important;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;}
.ai-open-btn.dragging{cursor:grabbing!important;transform:none!important;}


/* ===== Vortex character system / 2.5D presentation ===== */
body.theme-night{--bg:#070a10;--card:#0d121a;--soft:#0b1824;--text:#eef7ff;--muted:#91a7ba;--link:#168cff;--red:#168cff;--red2:#3bb7ff;--border:#168cff;background:var(--bg)}
body.theme-night .topbar,body.theme-night .drawer,body.theme-night .modal-box,body.theme-night .notification-panel,body.theme-night .side-menu{background:#0b1018;color:var(--text);border-color:#168cff}
body.theme-night input,body.theme-night select,body.theme-night textarea,body.theme-night .icon-btn,body.theme-night .outline-btn,body.theme-night .search-wrap button,body.theme-night .download-btn,body.theme-night .chat-shortcut,body.theme-night .product-swatch{background:#101721;color:var(--text);border-color:#26435c}
body.theme-night .hero{background:linear-gradient(120deg,#090d14,#0d1722);border-color:#168cff}
body.theme-night .hero p,body.theme-night .meta,body.theme-night .file-note{color:#a9bdce}
body.theme-night .wall-card,body.theme-night .product-card,body.theme-night .article-card,body.theme-night .category-card,body.theme-night .about-card,body.theme-night .admin-card{border-color:#168cff;background:#0d121a;color:var(--text)}
body.theme-night .about-logo span,body.theme-night footer span{color:#168cff}
body.theme-night .wall-card:hover,body.theme-night .product-card:hover,body.theme-night .article-card:hover{box-shadow:0 12px 35px #168cff2b}
.profile-btn{position:relative;width:46px;height:46px;padding:0;border-radius:50%;border:2px solid var(--red);background:var(--card);overflow:visible;display:grid;place-items:center}.profile-btn.hidden{display:none}.profile-btn img{width:100%;height:100%;border-radius:50%;object-fit:cover}.profile-btn span{position:absolute;right:-2px;bottom:0;width:11px;height:11px;border-radius:50%;background:#20d66b;border:2px solid var(--card)}
.hero{min-height:430px}.character-hero{width:430px;height:400px;flex:0 0 430px;display:grid;place-items:center}.character-3d-wrap{width:330px;height:390px;position:relative;perspective:1000px;display:grid;place-items:end center}.character-3d{height:390px;width:auto;max-width:100%;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 28px 25px #0003);transform-origin:50% 88%;transform:rotateY(-8deg) rotateX(1deg) translateZ(20px);transition:filter .3s}.character-glow{position:absolute;inset:28px 20px 5px;border-radius:45% 45% 18% 18%;background:radial-gradient(ellipse at 50% 58%,color-mix(in srgb,var(--link) 28%,transparent),transparent 65%);filter:blur(22px);animation:charGlow 3.6s ease-in-out infinite}.character-speech-mini{position:absolute;z-index:5;bottom:4px;left:50%;transform:translateX(-50%);font-size:12px;font-weight:900;letter-spacing:5px;color:var(--link);text-shadow:0 0 16px color-mix(in srgb,var(--link) 40%,transparent);direction:ltr}.character-hand-pulse{position:absolute;z-index:4;right:36px;top:148px;width:54px;height:54px;border-radius:50%;border:2px solid color-mix(in srgb,var(--link) 55%,transparent);box-shadow:0 0 20px color-mix(in srgb,var(--link) 40%,transparent);opacity:0;animation:handWaveCue 4.1s ease-in-out infinite}
@keyframes charGlow{0%,100%{transform:scale(.96);opacity:.45}50%{transform:scale(1.04);opacity:.8}}@keyframes handWaveCue{0%,18%{opacity:0;transform:rotate(-10deg) scale(.6)}20%,36%{opacity:.9;transform:rotate(18deg) scale(1.05)}42%,100%{opacity:0;transform:rotate(0) scale(.8)}}
.about-character-stage{position:relative;min-height:530px;border:2px solid var(--red);border-radius:26px;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--link) 9%,transparent),transparent 45%),var(--card);overflow:hidden;padding:190px 28px 30px}.about-card-raised{position:relative;z-index:3;max-width:850px;margin:0 auto;min-height:260px;box-shadow:0 20px 55px #0002}.about-character{position:absolute;z-index:5;top:10px;left:50%;width:390px;height:280px;transform:translateX(-50%) rotate(-2deg);transform-origin:50% 100%;pointer-events:none}.about-character-image{width:100%;height:100%;object-fit:cover;object-position:50% 12%;border-radius:28px;filter:drop-shadow(0 18px 20px #0003);animation:aboutFloat 4.2s ease-in-out infinite}.about-character::after{content:"";position:absolute;right:18px;top:28px;width:80px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--link) 18%,transparent);filter:blur(14px);opacity:.6}.about-character-shadow{position:absolute;bottom:0;left:15%;right:15%;height:30px;border-radius:50%;background:#0003;filter:blur(12px)}@keyframes aboutFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(2deg)}}.about-leg{position:absolute;z-index:-1;background:linear-gradient(135deg,#10141a,#05070b);border-radius:18px;box-shadow:0 10px 20px #0003}.about-leg-top{width:170px;height:42px;right:-30px;top:210px;transform:rotate(10deg)}.about-leg-drop{width:55px;height:145px;right:88px;top:225px;transform:rotate(-3deg);transform-origin:top}
.auth-modal-box{width:min(920px,96vw)!important;min-height:520px}.auth-character-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:stretch;direction:ltr}.auth-character-layout .auth-form-side{direction:rtl}.auth-character-side{position:relative;border-radius:20px;overflow:hidden;min-height:450px;background:linear-gradient(145deg,#f8fafc,#eef1f4);display:flex;align-items:flex-end;justify-content:center}.auth-character-side img{height:430px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 20px 24px #0003);transform:perspective(900px) rotateY(-8deg);}.auth-character-bubble{position:absolute;left:12px;right:12px;top:12px;padding:12px 14px;border-radius:15px;background:var(--card);border:1px solid var(--red);box-shadow:0 8px 22px #0002;font-weight:800;font-size:13px;direction:rtl}.auth-character-bubble.talk{animation:bubbleTalk .45s ease-in-out 2}@keyframes bubbleTalk{50%{transform:translateY(-3px) scale(1.01)}}@keyframes authIdle{0%,100%{transform:perspective(900px) rotateY(-8deg) translateY(0)}50%{transform:perspective(900px) rotateY(-4deg) translateY(-4px)}}.avatar-options{display:flex;gap:10px;flex-wrap:wrap}.avatar-option{border:2px solid #ddd;border-radius:16px;padding:5px;background:var(--card);cursor:pointer}.avatar-option.active{border-color:var(--red);box-shadow:0 0 0 2px color-mix(in srgb,var(--red) 18%,transparent)}.avatar-option img{width:70px;height:70px;object-fit:cover;border-radius:12px;display:block}
.ai-box{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;border:0!important;border-radius:0!important;background:var(--bg)!important;z-index:100000!important;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,42vw);grid-template-rows:70px 1fr;overflow:hidden;padding:0!important}.ai-box.hidden{display:none!important}.ai-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid color-mix(in srgb,var(--red) 35%,transparent);background:var(--card);z-index:3}.ai-head button{border:0;background:none;font-size:32px;color:var(--text)}.ai-character-side{grid-column:2;grid-row:2;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--link) 18%,transparent),transparent 48%)}.ai-character-image{height:min(88vh,820px);width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 25px 30px #0005);transform:perspective(1000px) rotateY(-8deg);z-index:2}.ai-character-aura{position:absolute;width:60%;height:60%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--link) 22%,transparent),transparent 68%);filter:blur(28px);animation:charGlow 4s ease-in-out infinite}.ai-character-tag{position:absolute;bottom:18px;z-index:4;direction:ltr;letter-spacing:4px;font-weight:900;color:var(--link);text-shadow:0 0 18px color-mix(in srgb,var(--link) 35%,transparent)}.ai-conversation-side{grid-column:1;grid-row:2;display:flex;flex-direction:column;min-width:0;padding:22px}.ai-conversation-side .ai-messages{flex:1;min-height:0;max-height:none;height:auto}.ai-conversation-side .ai-input{margin-top:14px}.ai-conversation-side .ai-quick{flex-wrap:wrap}.ai-box .bot,.ai-box .user{max-width:min(820px,88%)}.ai-box .ai-character-image.talking{animation:aiTalk 1s ease-in-out 2 alternate}@keyframes aiTalk{0%{transform:perspective(1000px) rotateY(-8deg) translateY(0) scale(1)}50%{transform:perspective(1000px) rotateY(-3deg) translateY(-5px) scale(1.015)}100%{transform:perspective(1000px) rotateY(-10deg) translateY(0) scale(.998)}}
.search-miss-character{display:flex;align-items:center;gap:22px;padding:28px;border:2px solid var(--red);border-radius:20px;background:var(--card);grid-column:1/-1}.search-miss-character img{width:190px;height:250px;object-fit:cover;border-radius:18px;object-position:50% 12%;filter:drop-shadow(0 12px 15px #0003);}@keyframes searchPeek{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg) translateY(-5px)}}
.admin-character-card{display:flex;align-items:center;gap:14px;max-width:560px;margin:0 auto 20px;padding:12px 16px;border:1px solid var(--red);border-radius:18px;background:var(--card);text-align:right}.admin-character-card img{width:90px;height:110px;object-fit:cover;object-position:50% 12%;border-radius:14px;filter:drop-shadow(0 8px 10px #0002)}.admin-character-card b{direction:ltr;display:block;letter-spacing:3px;color:var(--red)}.admin-character-card p{margin:5px 0 0;font-weight:700}.admin-character-card.talk img{animation:characterTalk .8s ease-in-out 2}.admin-character-card.talk p{animation:bubbleTalk .4s ease-in-out 2}.admin-user-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0;padding:10px;border:1px dashed var(--red);border-radius:12px}.admin-user-tools label{display:flex;align-items:center;gap:7px;font-weight:800}.admin-user-tools input{accent-color:var(--red)}
@media(max-width:900px){.hero{display:block}.character-hero{width:100%;height:330px}.character-3d-wrap{height:320px}.character-3d{height:320px}.auth-character-layout{grid-template-columns:1fr}.auth-character-side{min-height:260px;order:-1}.auth-character-side img{height:280px}.ai-box{grid-template-columns:1fr;grid-template-rows:58px 45vh 1fr}.ai-character-side{grid-column:1;grid-row:2}.ai-character-image{height:45vh}.ai-conversation-side{grid-column:1;grid-row:3;padding:12px}.about-character-stage{padding-top:170px}.about-character{width:320px;height:250px}}
@media(max-width:650px){.topbar{padding:0 10px;gap:6px}.brand{font-size:24px}.search-wrap{display:none}.top-actions{gap:3px}.top-actions .outline-btn,.top-actions .primary-btn{display:none}.profile-btn{width:40px;height:40px}.hero{padding:24px;min-height:600px}.character-hero{height:360px}.character-3d-wrap{height:350px}.character-3d{height:350px}.search-miss-character{display:block}.search-miss-character img{width:100%;height:260px}.about-character-stage{padding:150px 12px 20px}.about-character{width:280px;height:230px}.auth-modal-box{padding:16px}.ai-box{grid-template-rows:52px 38vh 1fr}.ai-character-image{height:38vh}}
.hero-character-dialog{max-width:650px;margin-top:14px;padding:13px 16px;border-radius:16px;border:1px solid var(--red);background:color-mix(in srgb,var(--card) 88%,transparent);box-shadow:0 8px 24px #0002;font-weight:800;line-height:1.9;opacity:0;transform:translateY(12px);pointer-events:none}.hero-character-dialog.show{animation:heroDialogIn 1.8s ease forwards}@keyframes heroDialogIn{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:translateY(0)}}
.account-character-panel{display:flex;justify-content:space-between;align-items:center;gap:20px}.account-character-panel>img{width:150px;height:150px;object-fit:cover;border-radius:22px;object-position:50% 10%;filter:drop-shadow(0 12px 18px #0003)}.account-settings-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:15px 0}.small-btn.active{border-color:var(--red);color:var(--red);box-shadow:0 0 0 1px color-mix(in srgb,var(--red) 25%,transparent)}
@media(max-width:650px){.account-character-panel{display:block}.account-character-panel>img{width:100%;height:250px;margin-top:15px}}

/* Vortex character cleanup: static cutout presentation only. */
.character-3d,.character-wave,.character-3d.talking,.character-3d.idle-life,.ai-character-image,.ai-character-image.talking,.ai-character-image.idle-life,.about-character-image,.auth-character-side img,.admin-character-card img,.search-miss-character img{animation:none!important;transition:none!important;transform:none!important}
.character-glow,.character-hand-pulse,.ai-character-aura,.about-character-shadow,.about-leg,.about-character::after{display:none!important}
.character-3d-wrap,.character-hero,.ai-character-side,.auth-character-side,.admin-character-card,.search-miss-character{background:transparent!important;background-image:none!important}
.hero-art.character-hero{border:0!important;box-shadow:none!important}
.about-simple{display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);gap:42px;align-items:center;min-height:520px;padding:30px 10px}
.about-simple-character{display:flex;align-items:flex-end;justify-content:center;min-height:500px;background:transparent!important}
.about-simple-character .about-character-image{width:auto;height:min(74vh,620px);max-width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 18px #0003);border-radius:0}
.about-simple-content{padding:36px;border:1px solid color-mix(in srgb,var(--red) 55%,transparent);border-radius:24px;background:var(--card);box-shadow:0 14px 38px #0001}
.profile-picker{margin:18px 0;padding:16px;border:1px dashed var(--red);border-radius:16px}
.profile-presets{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 14px}
.profile-presets .avatar-option{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:92px;color:var(--text);background:var(--card)}
.profile-presets .avatar-option img{width:72px;height:72px;object-fit:cover;border-radius:50%;background:transparent}
.profile-presets .avatar-option span{font-size:10px;line-height:1.3}
.upload-avatar-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--red);border-radius:10px;padding:10px 14px;color:var(--red);font-weight:800;cursor:pointer;margin-inline-end:8px}
.account-character-panel>img{width:150px;height:180px;object-fit:contain;background:transparent;border-radius:0}
.profile-admin-card img{width:100%;height:190px;object-fit:contain;background:transparent;border-radius:14px}
body.theme-night .ai-messages,body.theme-night .full-ai-support,body.theme-night #supportPageContent .ai-messages{background:#151a21!important;color:#fff!important;border-color:#29313b!important}
body.theme-night .ai-messages .bot,body.theme-night .ai-messages .user{color:#fff!important;border:1px solid #303946!important}
body.theme-night .ai-messages .bot{background:#242b34!important}
body.theme-night .ai-messages .user{background:#1d3448!important}
body.theme-night .ai-input{background:#12171e!important;border-color:#2b333d!important}
body.theme-night .ai-input input{background:#12171e!important;color:#fff!important}
body.theme-night .ai-input input::placeholder{color:#9eabb8!important}
body.theme-night .full-ai-support{background:#151a21!important}
body.theme-night .chat-shortcut{background:#1b2732!important;color:#fff!important}
body.theme-night .support-blocked{background:#322126!important;color:#fff!important}
body.theme-night .search-miss-character{background:#151a21!important;color:#fff!important}
body.theme-night .search-miss-character h2,body.theme-night .search-miss-character p{color:#fff!important}
@media(max-width:900px){.about-simple{grid-template-columns:1fr;gap:18px}.about-simple-character{min-height:340px}.about-simple-character .about-character-image{height:420px}.about-simple-content{padding:24px}}

/* Vortex full-body character breathing: subtle idle only, no waving/talking. */
.character-breath{animation:vortexBreath 4.2s ease-in-out infinite!important;transform-origin:50% 100%;will-change:transform}
@keyframes vortexBreath{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-2px) scale(1.006)}
}
.character-3d.character-breath{transform-origin:50% 100%}
.about-simple-character .about-character-image.character-breath{transform-origin:50% 100%}
.ai-character-image.character-breath{transform-origin:50% 100%}
@media (prefers-reduced-motion:reduce){.character-breath{animation:none!important}}

/* Gaming rounded typography: Exo 2 handles English/Latin; Vazirmatn cleanly handles Persian fallback. */
body,button,input,select,textarea{font-family:'Exo 2','Vazirmatn',Arial,sans-serif}
.brand,.about-logo,footer b,.character-3d,.ai-character-tag,.admin-character-card b{font-family:'Exo 2','Vazirmatn',Arial,sans-serif}

/* Vortex final character + dark admin fixes */
.character-3d.character-breath,
.about-simple-character .about-character-image.character-breath,
.ai-character-image.character-breath{
  animation:vortexBreath 4.2s ease-in-out infinite!important;
  transform-origin:50% 100%!important;
  will-change:transform;
}
@keyframes vortexBreath{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-2px) scale(1.008)}
}
body.theme-night .stats .stat,
body.theme-night #stats .stat{
  background:#171d25!important;
  color:#fff!important;
  border-color:#344454!important;
}
body.theme-night #stats .stat span{color:#b8c5d2!important}
body.theme-night #stats .stat b{color:#fff!important}
body.theme-night .admin-tabs button{background:#171d25;color:#fff;border-color:#344454}
body.theme-night .admin-card{color:#eef7ff}
.add-cart-btn{cursor:pointer!important;pointer-events:auto!important;position:relative;z-index:3}
.shop-categories{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 26px}.category-chip{border:1px solid var(--red);background:var(--card);color:var(--text);border-radius:12px;padding:10px 15px;font-weight:800}.category-chip.active,.category-chip:hover{background:var(--red);color:#fff;transform:translateY(-2px)}
.club-intro{border:2px solid var(--red);border-radius:22px;padding:28px;background:linear-gradient(135deg,#fff,#fff4f4);margin-bottom:20px}.club-intro h1{margin:8px 0}.club-tiers{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.club-tier{border:1.5px solid #ddd;border-radius:18px;padding:18px;background:var(--card);min-height:190px;transition:.25s}.club-tier:hover{transform:translateY(-6px);box-shadow:0 12px 30px #0001}.club-tier.unlocked{border-color:var(--red);box-shadow:0 0 0 2px color-mix(in srgb,var(--red) 10%,transparent)}.club-tier-head{display:flex;justify-content:space-between;align-items:center}.club-tier-head span{font-family:'Exo 2';font-size:12px;letter-spacing:1px;color:var(--red)}.club-discount{font-size:28px;font-weight:900;color:var(--red);margin:18px 0 8px}.club-min,.club-status,.club-next{font-size:12px;color:var(--muted);margin-top:8px}.club-status{font-weight:800}.club-progress{margin-top:20px;padding:18px;border:1px solid #eee;border-radius:16px;background:var(--card)}.progress-track{height:10px;background:#eee;border-radius:999px;overflow:hidden;margin-top:10px}.progress-track span{display:block;height:100%;background:var(--red);border-radius:999px}
@media(max-width:1100px){.club-tiers{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.club-tiers{grid-template-columns:1fr 1fr}}@media(max-width:480px){.club-tiers{grid-template-columns:1fr}}


/* Store search/filter + wallpaper color shortcuts */
.search-wrap{position:relative;z-index:120}
.search-quick-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(520px,92vw);background:var(--card,#fff);border:1px solid #ef4b52;border-radius:16px;padding:12px;box-shadow:0 16px 40px #0002;display:none;z-index:200}
.search-quick-panel.open{display:block}
.search-quick-title{font-size:12px;font-weight:900;color:var(--red);margin-bottom:9px}
.search-color-shortcuts,.wallpaper-color-shortcuts{display:flex;gap:8px;flex-wrap:wrap}
.search-color-shortcuts button,.wallpaper-color-shortcuts button{display:flex;align-items:center;gap:7px;border:1px solid #e5e5e5;background:#fff;border-radius:999px;padding:8px 11px;cursor:pointer;font-weight:800;transition:.2s}
.search-color-shortcuts button:hover,.wallpaper-color-shortcuts button:hover{transform:translateY(-2px);border-color:var(--red);box-shadow:0 6px 18px #0001}
.search-color-shortcuts i,.wallpaper-color-shortcuts i{width:14px;height:14px;border-radius:50%;background:var(--c);display:inline-block;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #bbb}
.shop-search-panel{border:1.5px solid #f14a50;border-radius:18px;background:var(--card);padding:18px;margin:18px 0 25px;box-shadow:0 8px 24px color-mix(in srgb,var(--link) 10%,transparent)}
.shop-search-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px}.shop-search-head div{display:grid;gap:4px}.shop-search-head small{color:#777;font-size:12px}
.shop-filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:10px}.shop-filter-grid label{display:grid;gap:6px;font-size:12px;font-weight:800}.shop-filter-grid input,.shop-filter-grid select{width:100%;box-sizing:border-box;padding:11px;border:1px solid #ddd;border-radius:10px;background:#fff;outline:none}.shop-filter-grid input:focus,.shop-filter-grid select:focus{border-color:var(--red);box-shadow:0 0 0 3px #ef1b2414}.shop-filter-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.wallpaper-color-shortcuts{margin:0 0 20px}.wallpaper-color-shortcuts:before{content:'جستجوی سریع بر اساس رنگ';display:block;font-size:12px;font-weight:900;color:var(--red);margin-bottom:9px}
body.theme-night .search-quick-panel,body.theme-night .shop-search-panel{background:#0d121a;border-color:#168cff}body.theme-night .search-color-shortcuts button,body.theme-night .wallpaper-color-shortcuts button,body.theme-night .shop-filter-grid input,body.theme-night .shop-filter-grid select{background:#101721;color:var(--text);border-color:#26435c}
@media(max-width:900px){.shop-filter-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.shop-filter-grid{grid-template-columns:1fr}.shop-search-head{display:grid}.search-quick-panel{right:-30px}.search-color-shortcuts button,.wallpaper-color-shortcuts button{font-size:11px;padding:7px 9px}}

/* v8 requested navigation correction */
.side-menu nav button{display:block;width:100%;box-sizing:border-box;padding:13px;border:0;border-radius:12px;font-weight:800;text-align:right;background:transparent;color:#111;text-decoration:none;cursor:pointer;transition:.2s} .side-menu nav button:hover{background:#f7f7f7;color:#111;transform:translateX(-5px)}
.brand{color:#111;text-decoration:none;font-weight:700}.brand b{color:#111}.brand span{color:var(--red)!important;font-size:.55em;font-weight:800}
.about-home-card{border:1.5px solid var(--link);border-radius:18px;background:var(--card);padding:28px;min-height:130px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 8px 24px #0000000a}
.about-home-card h3{margin:0 0 8px}.about-home-card p{margin:0;color:#666}
@media(max-width:650px){.about-home-card{display:block}.about-home-card .primary-btn{margin-top:14px}}

/* Game controller hero - replaces character art */
.hero-controller-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:3;animation:controllerFloat 3.2s ease-in-out infinite}
.game-controller{position:relative;width:260px;height:150px;background:#fff;border:5px solid #161616;border-radius:70px 70px 58px 58px;box-shadow:0 18px 28px #0002, inset 0 -8px 0 #e7e7e7;transform:rotate(-2deg)}
.game-controller:before,.game-controller:after{content:"";position:absolute;bottom:-12px;width:74px;height:52px;background:#fff;border:5px solid #161616;border-top:0;border-radius:0 0 35px 35px}
.game-controller:before{left:18px;transform:rotate(8deg)}.game-controller:after{right:18px;transform:rotate(-8deg)}
.controller-stick{position:absolute;width:30px;height:30px;border-radius:50%;background:#333;border:4px solid #111;box-shadow:inset 0 4px 0 #555;z-index:3}
.controller-stick.left{left:58px;top:70px}.controller-stick.right{right:58px;top:70px}
.controller-dpad{position:absolute;left:22px;top:52px;font-size:48px;line-height:1;color:#171717;font-weight:900;z-index:3}
.controller-buttons{position:absolute;right:20px;top:46px;text-align:center;line-height:22px;font-size:21px;letter-spacing:4px;color:#222;font-weight:900;z-index:3}
.controller-center{position:absolute;left:50%;top:30px;transform:translateX(-50%);width:55px;height:16px;border-radius:20px;background:#ddd;border:2px solid #aaa}
body.theme-night .game-controller,body.theme-night .game-controller:before,body.theme-night .game-controller:after{background:#111;border-color:#000;box-shadow:0 18px 28px #0007,inset 0 -8px 0 #222}
body.theme-night .controller-stick{background:#ddd;border-color:#eee}.theme-night .controller-dpad,.theme-night .controller-buttons{color:#eee}.theme-night .controller-center{background:#333;border-color:#555}
@keyframes controllerFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-14px) rotate(2deg)}}
.auth-form-only{max-width:520px;margin:auto;padding:12px 4px}.auth-form-only h2{text-align:center;margin:0 0 18px}

/* Vortex three-color theme: day = white/black/red, night = black/white/teal. */
:root{--bg:#fff;--card:#f4f4f4;--text:#111;--link:#e51b23;--red:#e51b23;--red2:#e51b23;--border:#e51b23;--soft:#f7f7f7}
body{background:var(--bg)!important;color:var(--text)!important}
body,body *{border-color:var(--border)}
.topbar{background:var(--bg)!important;color:var(--text)!important;border-bottom:1px solid var(--border)!important}
.brand{display:flex;align-items:baseline;gap:6px;text-decoration:none!important;color:var(--text)!important;direction:ltr}
.brand-vortex{font-size:1.45rem;font-weight:950;letter-spacing:1px;color:var(--text)!important}
.brand-zone{font-size:.82rem;font-weight:900;color:var(--link)!important;letter-spacing:.3px}
.side-menu{background:var(--card)!important;color:var(--text)!important}
.side-menu nav button{background:transparent!important;color:var(--text)!important;border:1px solid transparent!important}
.side-menu nav button:hover{background:color-mix(in srgb,var(--link) 8%,var(--card))!important;color:var(--text)!important;border-color:var(--link)!important}
.top-actions .primary-btn,.primary-btn{background:var(--link)!important;color:#fff!important;border-color:var(--link)!important}
.outline-btn,.small-btn,.icon-btn{background:var(--card)!important;color:var(--text)!important;border-color:var(--link)!important}
input,select,textarea{background:var(--card)!important;color:var(--text)!important;border-color:#ddd!important}
.page,.hero,.about-home-card,.shop-search-panel,.club-intro,.club-progress,.admin-card,.modal-box,.drawer,.notification-panel{color:var(--text)}
.wall-card,.product-card,.article-card,.category-card,.about-card,.admin-card,.shop-search-panel,.club-tier,.about-vortex-card{background:var(--card)!important;color:var(--text)!important;border-color:var(--link)!important}
.meta,.file-note,.about-home-card p,.shop-search-head small{color:color-mix(in srgb,var(--text) 62%,transparent)!important}
.download-btn{background:var(--card)!important;color:var(--link)!important;border-color:var(--link)!important}

/* About page: taller central frame, male on right, seated female on left with legs allowed outside. */
.about-vortex-card{position:relative;min-height:650px;margin:28px auto 50px;max-width:1250px;border:2px solid var(--link);border-radius:30px;overflow:visible;background:var(--card);display:grid;grid-template-columns:1.05fr 1.25fr 1.05fr;align-items:stretch;direction:ltr;box-shadow:0 18px 50px #0001}
.about-vortex-content{direction:rtl;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:70px 34px;z-index:4}
.about-vortex-content h1{margin:10px 0 12px;font-size:34px}.about-vortex-content p{max-width:520px;line-height:2;font-size:16px}
.about-character-column{position:relative;min-height:650px;overflow:visible;display:flex;align-items:flex-end;justify-content:center}
.about-vortex-character{position:relative;z-index:3;width:auto;object-fit:contain;filter:drop-shadow(0 22px 20px #0003);pointer-events:none}
.about-male-column .about-vortex-character{height:670px;max-width:115%;margin-bottom:-4px}
.about-female-column{align-items:flex-end}
.about-female-column .about-vortex-character{height:560px;max-width:125%;margin-bottom:-120px}
.about-logo{direction:ltr;font-size:56px;font-weight:950;color:var(--text)}.about-logo span{color:var(--link)}
.about-vortex-card .social-links{direction:ltr}

/* Full AI page: character on the left, conversation on the right, quick replies only in a small strip above typing. */
.full-ai-layout{direction:ltr;min-height:calc(100vh - 130px);display:grid;grid-template-columns:minmax(280px,38%) minmax(0,1fr);border:2px solid var(--link);border-radius:26px;overflow:hidden;background:var(--card)}
.full-ai-character-side{grid-column:1;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--link) 15%,transparent),transparent 58%)}
.full-ai-character-image{height:min(88vh,760px);width:auto;max-width:100%;object-fit:contain;z-index:2;filter:drop-shadow(0 24px 24px #0004)}
.full-ai-character-aura{position:absolute;width:72%;height:60%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--link) 20%,transparent),transparent 68%);filter:blur(28px)}
.full-ai-character-tag{position:absolute;bottom:18px;z-index:4;letter-spacing:5px;font-weight:950;color:var(--link);direction:ltr}
.full-ai-conversation-side{grid-column:2;display:flex;flex-direction:column;min-width:0;direction:rtl;padding:20px;background:var(--bg)}
.full-ai-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:1px solid var(--link);border-radius:15px;background:var(--card);color:var(--text);margin-bottom:12px}.full-ai-head b{font-size:22px}.full-ai-head span{color:var(--link);font-size:12px;font-weight:900}
.full-ai-messages{flex:1;height:auto;min-height:0;max-height:none;border:1px solid #ddd;border-radius:15px;background:var(--card);color:var(--text)}
.full-ai-quick{display:flex;align-items:center;gap:7px;flex-wrap:nowrap;overflow:auto;margin:10px 0 8px;padding:8px;border:1px solid #ddd;border-radius:13px;background:var(--card)}
.full-ai-quick .quick-title{flex:0 0 auto;font-size:11px;font-weight:900;color:var(--link);padding-left:4px}.full-ai-quick button{flex:0 0 auto;border:1px solid var(--link);background:var(--card);color:var(--text);border-radius:999px;padding:7px 10px;font-size:11px;cursor:pointer}

/* Support page: female character on the right, chat on the left. */
.support-layout{direction:ltr;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,38%);min-height:620px;border:2px solid var(--link);border-radius:26px;overflow:hidden;background:var(--card)}
.support-chat-side{grid-column:1;direction:rtl;padding:22px;background:var(--bg);min-width:0}.support-character-side{grid-column:2;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--link) 15%,transparent),transparent 58%)}
.support-character-image{height:min(88vh,720px);max-width:100%;width:auto;object-fit:contain;filter:drop-shadow(0 22px 22px #0004)}
.support-chat-side .admin-card{height:100%;box-sizing:border-box}

/* Rotating rank icons. */
.club-tier-head{justify-content:flex-start;gap:12px}.club-tier-head>div:last-child{display:grid;gap:2px}.club-tier-icon{width:48px;height:48px;display:grid;place-items:center;font-size:31px;filter:drop-shadow(0 5px 7px #0003);animation:clubCoinSpin 2.8s linear infinite;transform-style:preserve-3d}
.tier-bronze{filter:drop-shadow(0 5px 7px #0003) sepia(.55)}.tier-silver{filter:drop-shadow(0 5px 7px #0003) grayscale(.2)}.tier-gold{filter:drop-shadow(0 5px 7px #0003) sepia(.8)}.tier-platinum{filter:drop-shadow(0 5px 7px #0003) hue-rotate(135deg)}.tier-diamond{filter:drop-shadow(0 5px 10px #0003)}
@keyframes clubCoinSpin{0%{transform:rotateY(0deg) rotateZ(0deg)}50%{transform:rotateY(180deg) rotateZ(2deg)}100%{transform:rotateY(360deg) rotateZ(0deg)}}

/* Visit analytics: responsive SVG scales automatically to the current max value. */
.stat-clickable{width:100%;text-align:right;cursor:pointer;font:inherit}.stat-clickable small{display:block;margin-top:6px;color:var(--link);font-weight:800}.visit-analytics{margin:18px 0 26px;padding:20px;border:2px solid var(--link);border-radius:22px;background:var(--card);color:var(--text)}
.visit-analytics-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px}.visit-analytics-head h2{margin:0}.visit-analytics-head p{margin:6px 0 0;color:color-mix(in srgb,var(--text) 62%,transparent)}
.visit-chart{border:1px solid #ddd;border-radius:16px;padding:14px;margin-top:14px;background:var(--bg);overflow:hidden}.visit-chart h3{margin:0 0 10px;color:var(--text)}.visit-chart svg{display:block;width:100%;height:260px;overflow:visible}.visit-chart line{stroke:color-mix(in srgb,var(--text) 25%,transparent);stroke-width:1}.visit-chart polygon{fill:color-mix(in srgb,var(--link) 10%,transparent)}.visit-chart polyline{fill:none;stroke:var(--link);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.visit-chart circle{fill:var(--link);stroke:var(--bg);stroke-width:2}.visit-chart text{font-size:11px;fill:var(--text)}.chart-max{font-size:11px;color:color-mix(in srgb,var(--text) 60%,transparent);margin-top:5px}.chart-empty{padding:30px;text-align:center;color:var(--text)}

/* Night palette: black background, white text, dark-gray cards, teal links/borders. */
body.theme-night{--bg:#000!important;--card:#181818!important;--soft:#101010!important;--text:#fff!important;--link:#0097a7!important;--red:#0097a7!important;--red2:#0097a7!important;--border:#0097a7!important;background:#000!important;color:#fff!important}
body.theme-night .topbar,body.theme-night .drawer,body.theme-night .modal-box,body.theme-night .notification-panel,body.theme-night .side-menu{background:#111!important;color:#fff!important;border-color:#0097a7!important}
body.theme-night .wall-card,body.theme-night .product-card,body.theme-night .article-card,body.theme-night .category-card,body.theme-night .about-card,body.theme-night .admin-card,body.theme-night .shop-search-panel,body.theme-night .club-intro,body.theme-night .club-progress,body.theme-night .club-tier,body.theme-night .about-vortex-card,body.theme-night .full-ai-head,body.theme-night .full-ai-quick,body.theme-night .full-ai-messages,body.theme-night .visit-analytics{background:#181818!important;color:#fff!important;border-color:#0097a7!important}
body.theme-night input,body.theme-night select,body.theme-night textarea,body.theme-night .icon-btn,body.theme-night .outline-btn,body.theme-night .small-btn{background:#202020!important;color:#fff!important;border-color:#0097a7!important}
body.theme-night .full-ai-conversation-side,body.theme-night .support-chat-side,body.theme-night .visit-chart{background:#000!important;color:#fff!important}
body.theme-night .visit-chart line,body.theme-night .visit-chart text{color:#fff;fill:#fff;stroke:#555}.theme-night .controller-dpad,.theme-night .controller-buttons{color:#fff!important}
body.theme-night .about-home-card p,body.theme-night .meta,body.theme-night .file-note,body.theme-night .visit-analytics-head p{color:#ddd!important}
body.theme-night .brand-vortex{color:#fff!important}.theme-night .brand-zone{color:#0097a7!important}
body.theme-night .side-menu nav button{color:#fff!important;background:#181818!important;border-color:transparent!important}.theme-night .side-menu nav button:hover{border-color:#0097a7!important;background:#222!important}

@media(max-width:900px){.about-vortex-card{grid-template-columns:1fr;min-height:900px}.about-character-column{min-height:390px}.about-male-column{order:1}.about-vortex-content{order:2;padding:34px 22px}.about-female-column{order:3}.about-male-column .about-vortex-character{height:440px}.about-female-column .about-vortex-character{height:400px;margin-bottom:-80px}.full-ai-layout,.support-layout{grid-template-columns:1fr;min-height:auto}.full-ai-character-side,.support-character-side{grid-column:1;min-height:390px}.full-ai-conversation-side,.support-chat-side{grid-column:1}.full-ai-character-image,.support-character-image{height:420px}.visit-analytics-head{display:grid}}
@media(max-width:600px){.brand-vortex{font-size:1.15rem}.brand-zone{font-size:.68rem}.about-logo{font-size:40px}.about-vortex-card{min-height:820px}.about-male-column .about-vortex-character{height:360px}.about-female-column .about-vortex-character{height:340px}.full-ai-character-side,.support-character-side{min-height:330px}.full-ai-character-image,.support-character-image{height:350px}.visit-chart svg{height:220px}}

/* Xbox-style controller: day white + red aura, night black + teal aura. */
.game-controller{box-shadow:0 18px 28px #0002,inset 0 -8px 0 #e7e7e7,0 0 45px color-mix(in srgb,#e51b23 28%,transparent)!important}
.controller-center{font-size:10px;font-weight:950;display:grid;place-items:center;color:#666!important}
body.theme-night .game-controller{box-shadow:0 18px 28px #0008,inset 0 -8px 0 #222,0 0 55px color-mix(in srgb,#0097a7 38%,transparent)!important}
body.theme-night .controller-center{color:#fff!important}
/* Readability guard: text always follows the active theme instead of hard-coded gray/black values. */
body h1,body h2,body h3,body h4,body h5,body h6,body p,body label,body li,body td,body th,body small,body .card-body,body .section-head,body .page-title{color:var(--text)}
body .social-links a,body a:not(.brand){color:var(--link)}
body.theme-night h1,body.theme-night h2,body.theme-night h3,body.theme-night h4,body.theme-night h5,body.theme-night h6,body.theme-night p,body.theme-night label,body.theme-night li,body.theme-night td,body.theme-night th,body.theme-night small{color:#fff}
body.theme-night .bot{background:#252525!important;color:#fff!important}.theme-night .user{background:#15363b!important;color:#fff!important}
body.theme-night .ai-input,body.theme-night .ai-input input{background:#181818!important;color:#fff!important;border-color:#333!important}
body.theme-night .ai-input input::placeholder{color:#aaa!important}
body.theme-night .search-quick-title,.theme-night .eyebrow,.theme-night .club-tier-head span,.theme-night .club-discount,.theme-night .club-next,.theme-night .club-status{color:#0097a7!important}


/* Compact admin settings */
.settings-compact{display:grid;gap:10px}
.settings-section{border:1px solid #e5e7eb;border-radius:14px;background:var(--card);overflow:hidden;box-shadow:0 4px 14px #00000008}
.settings-section summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;font-weight:800}
.settings-section summary::-webkit-details-marker{display:none}
.settings-section summary::after{content:"＋";font-size:18px;color:var(--link);margin-right:auto}
.settings-section[open] summary::after{content:"−"}
.settings-section summary span{display:flex;align-items:center;gap:7px}
.settings-section summary small{font-size:11px;font-weight:500;color:#777;margin-right:8px}
.settings-section-body{padding:0 15px 15px;border-top:1px solid #eee}
.settings-mini-grid,.settings-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.settings-mini-grid label,.settings-about-grid label,.settings-color-grid label{display:grid;gap:5px}
.settings-mini-grid label span,.settings-about-grid label span,.settings-color-grid label>span{font-size:12px;font-weight:700}
.settings-mini-grid input,.settings-about-grid input,.settings-about-grid textarea{width:100%;box-sizing:border-box;padding:9px 10px;border:1px solid #ddd;border-radius:9px;background:var(--card);color:var(--text)}
.settings-about-grid{display:grid;grid-template-columns:1fr 2fr;gap:10px;padding-top:12px}
.settings-about-text textarea{resize:vertical;min-height:105px}
.settings-save-row{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}
.settings-color-grid{padding-top:12px}
.settings-color-grid label{background:#fafafa;border:1px solid #eee;border-radius:10px;padding:8px}
.settings-tools-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;padding-top:12px}
.settings-tool-box{border:1px solid #eee;border-radius:10px;padding:12px}
.settings-tool-box h3{margin:0 0 7px;font-size:14px}
.compact-form{display:grid;grid-template-columns:1.2fr .7fr .8fr auto;gap:7px;align-items:center}
.compact-form input,.compact-form select{min-width:0;padding:8px;border:1px solid #ddd;border-radius:8px;background:var(--card);color:var(--text)}
.coupon-list{display:grid;gap:6px;margin-top:8px}
.coupon-item{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid #eee;border-radius:8px}
.coupon-item span{margin-left:auto;font-size:12px}
.rgb-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:12px 0}
.rgb-settings-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rgb-settings-compact .rgb-setting-row{margin:0;min-width:0;border:1px solid #e7e7e7;border-radius:10px;padding:9px;background:linear-gradient(135deg,var(--card),#fafafa)}
.rgb-settings-compact .rgb-setting-info{min-width:0}
.rgb-settings-compact .rgb-setting-info b{font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rgb-settings-compact .rgb-setting-info small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rgb-settings-compact .rgb-toggle{margin:7px 0}
.rgb-settings-compact .color-row.compact{display:grid;grid-template-columns:1fr 32px;gap:5px}
.rgb-settings-compact .color-row.compact input[type=text]{width:100%;box-sizing:border-box;padding:6px;border-radius:7px;border:1px solid #ddd;background:var(--card);color:var(--text)}
.rgb-settings-compact .color-row.compact input[type=color]{width:32px;height:30px;padding:1px;border-radius:7px}
body.theme-night .settings-section{border-color:#303840;background:#181818}
body.theme-night .settings-section-body{border-color:#303840}
body.theme-night .settings-section summary small,.settings-section summary small{color:color-mix(in srgb,var(--text) 62%,transparent)}
body.theme-night .settings-tool-box,.theme-night .settings-color-grid label,.theme-night .coupon-item,.theme-night .rgb-settings-compact .rgb-setting-row{border-color:#303840;background:#121212}
@media(max-width:900px){
  .rgb-settings-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .settings-tools-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .settings-mini-grid,.settings-color-grid,.settings-about-grid{grid-template-columns:1fr}
  .settings-section summary{align-items:flex-start;flex-wrap:wrap}
  .settings-section summary small{width:100%;margin:0}
  .rgb-settings-compact{grid-template-columns:1fr}
  .compact-form{grid-template-columns:1fr 1fr}
  .compact-form button{grid-column:1/-1}
}

/* Final polish: real Xbox-style SVG controller, password reveal controls, analytics close button. */
.game-controller{
  width:min(500px,86vw)!important;
  height:auto!important;
  aspect-ratio:620/360;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  transform:none!important;
  filter:drop-shadow(0 24px 22px #0002);
  box-shadow:none!important;
}
.game-controller:before,.game-controller:after{display:none!important}
.xbox-controller-svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 18px color-mix(in srgb,#e51b23 48%,transparent));}
.xbox-shell{fill:#fff;stroke:#161616;stroke-width:8}
.xbox-wing{fill:#f5f5f5;stroke:#222;stroke-width:5;opacity:.9}
.xbox-stick{fill:#191919;stroke:#050505;stroke-width:6}
.xbox-stick-cap{fill:#343434;stroke:#555;stroke-width:3}
.xbox-dpad-base{fill:#ececec;stroke:#222;stroke-width:4}
.xbox-dpad{fill:#202020}
.xbox-menu{fill:#bcbcbc}
.xbox-logo-ring{fill:#f3f3f3;stroke:#222;stroke-width:4}
.xbox-logo{fill:#222}
.xbox-button{stroke:#222;stroke-width:3}
.xbox-button.a{fill:#38b54a}.xbox-button.b{fill:#e33b3b}.xbox-button.x{fill:#4d8de8}.xbox-button.y{fill:#f0c52e}
body.theme-night .xbox-controller-svg{filter:drop-shadow(0 0 22px color-mix(in srgb,#1976ff 58%,transparent));}
body.theme-night .xbox-shell{fill:#111;stroke:#050505}
body.theme-night .xbox-wing{fill:#171717;stroke:#000}
body.theme-night .xbox-stick{fill:#e8e8e8;stroke:#fff}.theme-night .xbox-stick-cap{fill:#b9b9b9;stroke:#777}
body.theme-night .xbox-dpad-base{fill:#222;stroke:#000}.theme-night .xbox-dpad{fill:#eee}
body.theme-night .xbox-menu{fill:#555}.theme-night .xbox-logo-ring{fill:#151515;stroke:#777}.theme-night .xbox-logo{fill:#eee}
.hero-controller-wrap{animation:controllerFloat 4.8s ease-in-out infinite!important}
@keyframes controllerFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}

/* Standing female character sits on the bottom border of the About card. */
.about-female-column{align-items:flex-end!important;overflow:visible!important;position:relative}
.about-female-column .about-vortex-character{height:720px!important;max-width:145%!important;margin-bottom:-92px!important;transform:translateY(4px);}
.about-vortex-card{overflow:visible!important}
.about-vortex-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--link);box-shadow:0 0 16px color-mix(in srgb,var(--link) 50%,transparent);z-index:5;pointer-events:none}
body.theme-night .about-vortex-card:after{background:#1976ff;box-shadow:0 0 18px color-mix(in srgb,#1976ff 55%,transparent)}

.visit-analytics-head{align-items:flex-start!important}
.visit-analytics-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.analytics-close{width:40px;height:40px;border:1px solid var(--link);border-radius:12px;background:var(--card);color:var(--text);font-size:28px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.2s}
.analytics-close:hover{transform:scale(1.06);background:var(--link);color:#fff}

.password-field{position:relative;display:block;width:100%}
.password-field>input{width:100%!important;box-sizing:border-box;padding-left:46px!important}
.password-eye{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:transparent!important;color:#777;cursor:pointer;border-radius:9px;font-size:18px;z-index:3}
.password-eye:hover,.password-eye.active{color:var(--link)!important;background:color-mix(in srgb,var(--link) 10%,transparent)!important}
body.theme-night .password-eye{color:#aaa}
@media(max-width:900px){.about-female-column .about-vortex-character{height:470px!important;margin-bottom:-58px!important;max-width:125%!important}}
@media(max-width:600px){.about-female-column .about-vortex-character{height:410px!important;margin-bottom:-45px!important}}

/* Support chat gets the larger share of the screen; the standing character remains on the edge. */
.support-layout{grid-template-columns:minmax(0,1.85fr) minmax(300px,0.72fr)!important;min-height:720px!important}
.support-chat-side{padding:18px 22px!important}
.support-chat-side .admin-card{min-height:100%!important}
.support-character-side{min-height:720px}
.support-character-image{height:min(92vh,820px)!important;max-width:118%!important}
@media(max-width:900px){.support-layout{grid-template-columns:1fr!important;min-height:auto!important}.support-character-side{min-height:420px}.support-character-image{height:460px!important}}


/* v9 visual polish */
/* PS5 DualSense-inspired hero controller: transparent canvas, theme-aware shell and glow. */
.hero-controller-wrap{inset:4% 0 0!important;animation:controllerFloat 5.6s ease-in-out infinite!important}
.game-controller.ps5-controller{width:min(560px,88vw)!important;aspect-ratio:720/430!important;background:transparent!important;border:0!important;box-shadow:none!important;filter:none!important}
.ps5-controller-svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 20px 18px #0002)}
.ps5-shell{fill:#e5e7ea;stroke:#c5c9cf;stroke-width:8}
.ps5-shoulder{fill:#f7f8fa;stroke:#cdd1d6;stroke-width:5}
.ps5-touchpad{fill:#bfc4ca;stroke:#aeb4bb;stroke-width:4}
.ps5-lightbar{fill:none;stroke:#e51b23;stroke-width:9;stroke-linecap:round;filter:drop-shadow(0 0 8px #e51b23)}
.ps5-stick-ring{fill:#d0d4d9;stroke:#aab0b7;stroke-width:4}
.ps5-stick{fill:#4e535a;stroke:#30343a;stroke-width:5}
.ps5-dpad{fill:#3f444a;stroke:#24282d;stroke-width:3}
.ps5-face{fill:#d5d9de;stroke:#9da3aa;stroke-width:3}
.ps5-symbol{font-family:Arial,sans-serif;font-size:16px;font-weight:900;text-anchor:middle;dominant-baseline:middle;fill:#4a4f55}
.ps5-options{fill:#4b5056}
.ps5-mic{fill:#555b62;stroke:#33383e;stroke-width:2}
body.theme-night .ps5-controller-svg{filter:drop-shadow(0 20px 20px #0009) drop-shadow(0 0 30px #1976ff66)}
body.theme-night .ps5-shell{fill:#454a51;stroke:#2d3238}
body.theme-night .ps5-shoulder{fill:#555b63;stroke:#343941}
body.theme-night .ps5-touchpad{fill:#252a30;stroke:#181c20}
body.theme-night .ps5-lightbar{stroke:#1976ff;filter:drop-shadow(0 0 10px #1976ff)}
body.theme-night .ps5-stick-ring{fill:#363b42;stroke:#1e2328}
body.theme-night .ps5-stick{fill:#15181c;stroke:#090b0e}
body.theme-night .ps5-dpad{fill:#171b20;stroke:#0b0d10}
body.theme-night .ps5-face{fill:#4d535b;stroke:#272c32}
body.theme-night .ps5-symbol{fill:#dce1e6}
body.theme-night .ps5-options{fill:#171b20}
body.theme-night .ps5-mic{fill:#aab0b7;stroke:#686f77}

/* About: both characters stay inside the card; female is slightly shorter and rests at the bottom border. */
.about-vortex-card{overflow:hidden!important}
.about-character-column{min-height:650px!important;overflow:hidden!important}
.about-male-column .about-vortex-character{height:650px!important;max-width:112%!important;margin-bottom:0!important}
.about-female-column .about-vortex-character{height:610px!important;max-width:112%!important;margin-bottom:0!important;transform:none!important}
.about-vortex-card:after{background:var(--link)!important;box-shadow:0 0 16px color-mix(in srgb,var(--link) 45%,transparent)!important}
@media(max-width:900px){.about-vortex-card{overflow:hidden!important}.about-character-column{min-height:360px!important}.about-male-column .about-vortex-character{height:430px!important}.about-female-column .about-vortex-character{height:405px!important}}
@media(max-width:600px){.about-male-column .about-vortex-character{height:360px!important}.about-female-column .about-vortex-character{height:340px!important}}

/* Support: compact, elevated two-column composition instead of a huge full-height box. */
.support-layout{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)!important;min-height:0!important;max-width:1080px!important;margin:20px auto!important;align-items:center!important;border:2px solid var(--link)!important;border-radius:24px!important;overflow:hidden!important}
.support-character-side{grid-column:2!important;min-height:540px!important;height:540px!important;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--link) 12%,transparent),transparent 62%)!important}
.support-chat-side{grid-column:1!important;padding:16px 18px!important;background:var(--bg)!important;align-self:stretch!important}
.support-chat-side .admin-card{min-height:0!important;height:auto!important;align-self:center!important;margin:auto 0!important}
.support-character-image{height:530px!important;max-width:108%!important}
.support-page-messages{height:300px!important}
@media(max-width:900px){.support-layout{grid-template-columns:1fr!important}.support-character-side{grid-column:1!important;min-height:390px!important;height:390px!important}.support-chat-side{grid-column:1!important}.support-character-image{height:380px!important}.support-page-messages{height:260px!important}}

/* Home About card border uses the same theme accent as every other site bar. */
.about-home-card{border-color:var(--link)!important;box-shadow:0 8px 24px color-mix(in srgb,var(--link) 9%,transparent)!important}

/* 3D club medals with accurate bronze / silver / gold / platinum / diamond tones. */
.club-tier-icon{position:relative;width:58px!important;height:64px!important;display:grid!important;place-items:center!important;font-size:0!important;filter:drop-shadow(0 8px 7px #0004)!important;animation:clubMedalFloat 3.6s ease-in-out infinite!important;transform-style:preserve-3d}
.club-tier-icon:before{content:"";position:absolute;top:0;width:14px;height:18px;border-radius:4px 4px 2px 2px;background:linear-gradient(90deg,#6d7177,#e7e9eb,#7c8086);box-shadow:inset 0 0 0 2px #0002}
.club-tier-icon:after{content:"";position:absolute;top:13px;width:46px;height:46px;border-radius:50%;background:var(--medal-gradient);border:3px solid var(--medal-edge);box-shadow:inset 5px 6px 9px #fff7,inset -6px -7px 10px #0005,0 4px 7px #0004}
.club-medal-core{position:relative;z-index:2;margin-top:14px;font:900 18px/1 Arial,sans-serif;color:var(--medal-text);text-shadow:0 1px 1px #fff6,0 2px 2px #0005}
.club-tier-icon.tier-bronze{--medal-gradient:linear-gradient(135deg,#7b3f19,#b86b32 42%,#e2a16b 62%,#713514);--medal-edge:#5c2c12;--medal-text:#fff0dc}
.club-tier-icon.tier-silver{--medal-gradient:linear-gradient(135deg,#6f757c,#c8cdd2 38%,#f4f6f8 58%,#7b8188);--medal-edge:#555b62;--medal-text:#30343a}
.club-tier-icon.tier-gold{--medal-gradient:linear-gradient(135deg,#8a5b00,#d69d08 38%,#ffe58a 58%,#9a6700);--medal-edge:#6f4900;--medal-text:#5b3a00}
.club-tier-icon.tier-platinum{--medal-gradient:linear-gradient(135deg,#4c5661,#aeb9c5 38%,#f1f5f8 58%,#697581);--medal-edge:#424b55;--medal-text:#1d252d}
.club-tier-icon.tier-diamond{--medal-gradient:linear-gradient(135deg,#3568a8,#6fb9ff 38%,#e2f4ff 58%,#3f74b7);--medal-edge:#29558b;--medal-text:#fff}
@keyframes clubMedalFloat{0%,100%{transform:translateY(0) rotateY(0deg)}50%{transform:translateY(-3px) rotateY(8deg)}}
.club-tier{position:relative;overflow:hidden}
.club-tier:after{content:"";position:absolute;inset:auto -30% -50% -30%;height:80px;background:radial-gradient(ellipse,color-mix(in srgb,var(--link) 12%,transparent),transparent 70%);pointer-events:none}

/* The bottom Vortex AI shortcut opens the dedicated AI page. */
.ai-open-btn{cursor:pointer;box-shadow:0 10px 30px #0002,0 0 20px color-mix(in srgb,var(--link) 18%,transparent)!important}


/* ===== Vortex final visual pass ===== */
.hero{min-height:430px!important;padding:34px 42px!important;align-items:center!important;background:linear-gradient(120deg,var(--card),var(--soft))!important}
.hero-art{width:min(520px,44vw)!important;height:360px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin-right:0!important;margin-left:auto!important}
.hero-controller-wrap{width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important}
.hero-controller-wrap:before{content:"";position:absolute;width:410px;height:220px;border-radius:50%;background:radial-gradient(ellipse at center,color-mix(in srgb,#ef1b24 42%,transparent),transparent 68%);filter:blur(20px);opacity:.8;z-index:0}
.game-controller.ps5-controller{position:relative!important;width:min(500px,100%)!important;height:auto!important;aspect-ratio:3120/2760!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:center!important}
.ps5-controller-image{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;position:relative!important;z-index:2!important;filter:drop-shadow(0 20px 18px #0002)!important;transition:filter .3s ease,transform .3s ease!important}
.ps5-controller-fallback{position:absolute!important;inset:0!important;display:none!important;align-items:center!important;justify-content:center!important;z-index:1!important}
.ps5-controller-fallback .ps5-controller-svg{width:100%!important;height:100%!important;display:block!important}
body.theme-night .hero-controller-wrap:before{background:radial-gradient(ellipse at center,color-mix(in srgb,#1976ff 48%,transparent),transparent 68%)!important;opacity:.75!important}
body.theme-night .ps5-controller-image{filter:grayscale(1) brightness(.48) contrast(1.08) drop-shadow(0 22px 20px #0009)!important}
body.theme-day .ps5-controller-image{filter:grayscale(1) brightness(1.05) contrast(.98) drop-shadow(0 20px 18px #0002)!important}

/* Support: character and chat are a true side-by-side pair, compact and centered. */
.support-layout{direction:ltr!important;grid-template-columns:minmax(0,1fr) minmax(420px,1.15fr)!important;max-width:1160px!important;min-height:0!important;height:570px!important;margin:18px auto 26px!important;border:2px solid var(--link)!important;border-radius:24px!important;overflow:hidden!important;align-items:stretch!important}
.support-character-side{grid-column:2!important;grid-row:1!important;min-height:0!important;height:100%!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;padding:0 18px!important;background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--link) 14%,transparent),transparent 62%)!important}
.support-chat-side{grid-column:1!important;grid-row:1!important;min-width:0!important;height:100%!important;padding:18px!important;display:flex!important;align-items:center!important;background:var(--bg)!important}
.support-chat-side .admin-card{width:100%!important;height:auto!important;max-height:510px!important;margin:0!important;border-radius:18px!important;box-shadow:0 10px 35px #0001!important}
.support-page-messages{height:270px!important;max-height:270px!important}
.support-character-image{height:540px!important;max-height:96%!important;width:auto!important;max-width:100%!important;object-fit:contain!important;filter:drop-shadow(0 22px 22px #0004)!important}
body.theme-night .support-character-side{background:radial-gradient(circle at 50% 42%,color-mix(in srgb,#1976ff 15%,transparent),transparent 62%)!important}
@media(max-width:900px){.support-layout{height:auto!important;grid-template-columns:1fr!important}.support-character-side{grid-column:1!important;grid-row:1!important;height:390px!important;min-height:390px!important}.support-chat-side{grid-column:1!important;grid-row:2!important;height:auto!important}.support-character-image{height:380px!important}.support-page-messages{height:250px!important}}

/* About: both characters sit inside the frame; female is slightly shorter than male. */
.about-vortex-card{grid-template-columns:1fr 1.35fr 1fr!important;overflow:hidden!important;min-height:600px!important;align-items:end!important;border-color:var(--link)!important}
.about-character-column{display:flex!important;align-items:flex-end!important;justify-content:center!important;height:100%!important;overflow:hidden!important}
.about-male-column .about-vortex-character{height:590px!important;max-width:105%!important;margin:0!important}
.about-female-column .about-vortex-character{height:550px!important;max-width:105%!important;margin:0!important}
.about-vortex-card:after{background:var(--link)!important;box-shadow:0 0 16px color-mix(in srgb,var(--link) 45%,transparent)!important}
@media(max-width:900px){.about-vortex-card{grid-template-columns:1fr!important;min-height:auto!important}.about-character-column{min-height:350px!important}.about-male-column{order:1}.about-vortex-content{order:2}.about-female-column{order:3}.about-male-column .about-vortex-character{height:400px!important}.about-female-column .about-vortex-character{height:375px!important}}

.ps5-controller-credit{position:absolute;bottom:0;right:8px;font-size:9px;color:var(--muted);opacity:.65;z-index:3;pointer-events:none}

/* === Vortex Zone controller hero: real generated controller images === */
.hero-controller-wrap{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  isolation:isolate!important;
}
.hero-controller-wrap .controller-glow{
  position:absolute!important;
  width:430px!important;
  height:250px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  filter:blur(24px)!important;
  z-index:0!important;
  pointer-events:none!important;
  animation:controllerGlowPulse 3.8s ease-in-out infinite!important;
}
.game-controller.ps5-controller{
  position:relative!important;
  width:min(500px,100%)!important;
  height:auto!important;
  aspect-ratio:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
  z-index:2!important;
  display:block!important;
}
.ps5-controller-image{
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  position:relative!important;
  display:block!important;
  z-index:2!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  animation:controllerFloatReal 4.2s ease-in-out infinite!important;
  will-change:transform,filter!important;
}
.controller-night-image{display:none!important}
body:not(.theme-night) .controller-day-image{display:block!important;filter:drop-shadow(0 18px 20px rgba(0,0,0,.16)) drop-shadow(0 0 18px rgba(229,27,35,.12))!important}
body:not(.theme-night) .controller-night-image{display:none!important}
body:not(.theme-night) .hero-controller-wrap .controller-glow{
  background:radial-gradient(ellipse at center,rgba(229,27,35,.48) 0%,rgba(229,27,35,.22) 34%,transparent 72%)!important;
}
body.theme-night .controller-day-image{display:none!important}
body.theme-night .controller-night-image{
  display:block!important;
  filter:drop-shadow(0 18px 20px rgba(0,0,0,.58)) drop-shadow(0 0 20px rgba(0,151,167,.22))!important;
}
body.theme-night .hero-controller-wrap .controller-glow{
  background:radial-gradient(ellipse at center,rgba(0,151,167,.52) 0%,rgba(0,151,167,.24) 34%,transparent 72%)!important;
}
@keyframes controllerFloatReal{
  0%,100%{transform:translateY(0) rotate(-1deg) scale(1)}
  50%{transform:translateY(-15px) rotate(1deg) scale(1.015)}
}
@keyframes controllerGlowPulse{
  0%,100%{opacity:.66;transform:translate(-50%,-50%) scale(.94)}
  50%{opacity:.96;transform:translate(-50%,-50%) scale(1.05)}
}
@media(max-width:1000px){
  .hero-art{display:flex!important;width:min(470px,44vw)!important;height:300px!important}
}
@media(max-width:700px){
  .hero{display:flex!important;flex-direction:column!important;gap:18px!important}
  .hero-art{width:100%!important;height:280px!important;margin:0!important}
  .game-controller.ps5-controller{width:min(430px,92vw)!important}
  .hero-controller-wrap .controller-glow{width:360px!important;height:200px!important}
}
@media(prefers-reduced-motion:reduce){
  .ps5-controller-image,.hero-controller-wrap .controller-glow{animation:none!important}
}


/* v13 visual tuning: smaller controller, shifted left, with a full surrounding theme halo. */
@media(min-width:1001px){
  .hero-art{width:310px!important;height:300px!important;position:relative!important;left:-55px!important;}
  .hero-controller-wrap{justify-content:center!important;}
  .game-controller.ps5-controller{width:min(355px,100%)!important;}
  .hero-controller-wrap .controller-glow{width:360px!important;height:215px!important;}
}
@media(min-width:701px) and (max-width:1000px){
  .hero-art{width:330px!important;height:280px!important;left:-25px!important;}
  .game-controller.ps5-controller{width:min(370px,100%)!important;}
  .hero-controller-wrap .controller-glow{width:350px!important;height:205px!important;}
}
@media(max-width:700px){
  .hero-art{left:0!important;}
  .game-controller.ps5-controller{width:min(360px,88vw)!important;}
  .hero-controller-wrap .controller-glow{width:320px!important;height:185px!important;}
}
/* Keep the day character exactly as the newly supplied image. */
.character-3d[src*="vyra-day-custom"],
.support-character-image[src*="vyra-day-custom"],
.ai-character-image[src*="vyra-day-custom"],
.about-character-image[src*="vyra-day-custom"],
.auth-character-side img[src*="vyra-day-custom"],
.admin-character-card img[src*="vyra-day-custom"]{background:#fff;}


/* v15 final fixes: move hero controllers clearly left in RTL layout. */
@media(min-width:1001px){
  .hero-art{margin-right:auto!important;margin-left:0!important;left:-70px!important;transform:translateX(-40px)!important;}
  .hero-controller-wrap{justify-content:center!important;}
}
@media(min-width:701px) and (max-width:1000px){
  .hero-art{margin-right:auto!important;margin-left:0!important;left:-30px!important;transform:translateX(-20px)!important;}
}
@media(max-width:700px){
  .hero-art{margin:0!important;left:0!important;transform:none!important;}
}
/* The supplied day character is a transparent cutout; never paint a white box behind it. */
.character-3d[src*="vyra-day-custom"],
.support-character-image[src*="vyra-day-custom"],
.ai-character-image[src*="vyra-day-custom"],
.about-character-image[src*="vyra-day-custom"],
.auth-character-side img[src*="vyra-day-custom"],
.admin-character-card img[src*="vyra-day-custom"]{background:transparent!important;}

/* CMS / Admin visual editor */
#home.page{
  position:relative;
  background-image:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.86)),var(--home-bg-image);
  background-size:cover;
  background-position:center;
  background-attachment:fixed;
  border-radius:24px;
  padding:10px;
}
body.theme-night #home.page{
  background-image:linear-gradient(180deg,rgba(4,7,11,.91),rgba(4,7,11,.88)),var(--home-bg-image);
}
#home.page > *{position:relative;z-index:1}
.cms-groups{display:grid;gap:14px}.cms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cms-grid label{display:flex;flex-direction:column;gap:7px}.cms-grid textarea{min-height:74px;resize:vertical}
.media-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.media-admin-card{border:1px solid var(--border);border-radius:16px;padding:14px;background:var(--card)}.media-admin-card h3{margin:0 0 6px}.media-admin-card small{display:block;min-height:38px;color:var(--muted)}.media-preview{height:170px;margin:10px 0;border-radius:12px;border:1px dashed var(--border);display:grid;place-items:center;overflow:hidden;background:var(--soft)}.media-preview img{width:100%;height:100%;object-fit:contain}.media-admin-card input[type=file]{width:100%;margin-bottom:8px}
.inline-admin-form,.shortcut-form{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.inline-admin-form input,.shortcut-form input[type=text],.shortcut-form input:not([type]){flex:1;min-width:220px}.admin-chip-list{display:flex;flex-wrap:wrap;gap:8px}.admin-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:var(--soft)}.admin-chip button{border:0;background:transparent;font-size:18px;cursor:pointer;color:var(--red)}
.shortcut-admin-list{display:grid;gap:8px}.shortcut-admin-row{display:grid;grid-template-columns:22px 1fr 70px auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:12px}.shortcut-admin-row input[type=text],.shortcut-admin-row input:not([type]){width:100%}.shortcut-dot{width:18px;height:18px;border-radius:50%;background:var(--shortcut);box-shadow:0 0 14px var(--shortcut)}
@media(max-width:900px){.cms-grid,.media-admin-grid{grid-template-columns:1fr}.shortcut-admin-row{grid-template-columns:22px 1fr 60px}.shortcut-admin-row .small-btn{grid-column:1/-1}}
.home-section-hidden{display:none!important}
#homeExtraSections{display:grid;gap:18px;margin-top:18px}.home-extra-block{min-width:0}
.product-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;margin-top:8px}.product-rating{display:flex;align-items:center;gap:3px;font-size:14px;margin:7px 0}.product-rating span{color:#c8c8c8}.product-rating span.on{color:#f4b400}.product-rating b{margin-inline-start:5px}.product-rating small{color:var(--muted)}.empty-rating{color:var(--muted)}
.modal-close{position:absolute;inset-inline-start:14px;top:10px;border:0;background:var(--soft);border-radius:50%;width:36px;height:36px;font-size:22px;cursor:pointer}.review-modal-card{position:relative;max-width:760px;max-height:88vh;overflow:auto}.review-product-head{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:start}.review-product-head img{width:150px;height:150px;object-fit:contain;border-radius:14px;background:var(--soft)}.review-list{display:grid;gap:10px;margin:18px 0}.review-item,.review-admin-row{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}.review-item p,.review-admin-row p{margin:7px 0}.review-stars{color:#f4b400;display:inline-block;margin-inline-start:8px}.star-picker{display:flex;direction:ltr;gap:4px}.star-pick{border:0;background:transparent;font-size:30px;color:#bbb;cursor:pointer}.star-pick.selected{color:#f4b400}.review-admin-row{display:flex;justify-content:space-between;gap:14px;align-items:start;margin-top:10px}.home-section-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-section-editor label{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}
@media(max-width:700px){.review-product-head{grid-template-columns:1fr}.review-product-head img{width:100%;height:180px}.product-actions{grid-template-columns:1fr}.home-section-editor{grid-template-columns:1fr}}

/* V17 requested tuning: keep the controller inside the hero frame and slightly to the right. */
@media(min-width:1001px){
  .hero-art{left:0!important;right:auto!important;margin-right:auto!important;margin-left:0!important;transform:translateX(42px)!important;}
  .hero-controller-wrap{transform:none!important;}
}
@media(max-width:1000px){
  .hero-controller-wrap{transform:translateX(12px)!important;}
}

/* Character selector shelves in the account page. */
.character-shelves{display:grid;gap:14px;margin-top:12px}
.character-shelf{border:1px solid color-mix(in srgb,var(--link) 22%,#ddd);border-radius:16px;padding:12px;background:color-mix(in srgb,var(--card) 92%,transparent);}
.character-shelf-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.character-shelf-head h3{margin:0}.character-shelf-head span{font-size:12px;color:var(--muted);margin-right:auto}
.character-shelf-grid{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
.character-choice,.character-upload-choice{width:104px;min-height:132px;border:1px solid #ddd;border-radius:13px;background:var(--card);color:var(--text);padding:7px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;cursor:pointer;transition:.2s;box-sizing:border-box}
.character-choice:hover,.character-upload-choice:hover{transform:translateY(-2px);border-color:var(--link)}
.character-choice.active{border-color:var(--link);box-shadow:0 0 0 2px color-mix(in srgb,var(--link) 18%,transparent),0 8px 20px #0002}
.character-choice img{width:100%;height:92px;object-fit:contain;background:transparent}.character-choice span{font-size:11px;font-weight:800;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.character-upload-choice{justify-content:center;border-style:dashed;font-weight:800;color:var(--link)}.character-empty{min-height:100px;display:flex;align-items:center;color:var(--muted);font-size:12px;padding:10px}
.profile-upload-fallback{margin-top:10px}.profile-upload-fallback .upload-avatar-btn{display:inline-flex}
.category-admin-list{margin-top:12px}.compact-admin-card{display:flex;align-items:center;gap:8px}.compact-admin-card small{color:var(--muted)}.compact-admin-card .meta{margin-right:auto;font-size:11px}
.admin-notification-item{display:flex;align-items:center;gap:12px}.admin-notification-item>div{min-width:0;flex:1}.admin-notification-item .small-btn{flex:0 0 auto}
body.theme-night .character-shelf,body.theme-night .character-choice,body.theme-night .character-upload-choice{border-color:#344047;background:#121212}

.wall-user-actions{display:grid;gap:8px;margin:14px 0}.account-wallpaper-picker{margin-top:18px;padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--soft)}.account-wallpaper-actions{display:flex;gap:8px;flex-wrap:wrap}


/* V17.1 player card + ready profile presets + stronger about breathing */
.player-card{position:relative;overflow:hidden;margin:0 0 18px;padding:22px;border:1px solid color-mix(in srgb,var(--link) 55%,#fff);border-radius:24px;background:linear-gradient(135deg,#fff,#fff5f5);box-shadow:0 18px 45px #0002}
.player-card-shine{position:absolute;inset:-60% auto auto -10%;width:55%;height:180%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,#fff8,transparent);animation:playerCardShine 6s ease-in-out infinite;pointer-events:none}
.player-card-head,.player-card-body,.player-card-stats{display:flex;align-items:center;justify-content:space-between;gap:16px}.player-card-head{position:relative}.player-card-club{font-weight:900;color:var(--red)}
.player-card-body{justify-content:flex-start;position:relative}.player-card-avatar{width:112px;height:112px;border-radius:22px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#fff,#f1f1f1);border:1px solid #ddd;flex:none}.player-card-avatar img{width:100%;height:100%;object-fit:contain}.player-card-info{flex:1}.player-card-info h2{margin:0 0 4px}.player-card-info p{margin:0 0 12px;color:var(--muted)}.player-card-stats{justify-content:flex-start;flex-wrap:wrap}.player-card-stats span{padding:8px 12px;border-radius:12px;background:#00000008;font-size:12px}.player-card-stats b{display:block;margin-top:3px}.player-card-note,.club-gift-banner{margin-top:12px;padding:10px 12px;border-radius:12px;font-weight:700}.player-card-note{background:#00000006;color:var(--muted)}.club-gift-banner{background:#fff0cf;color:#7a4b00;border:1px solid #e2ad42}.ready-profile-picker{margin:14px 0;padding:14px;border:1px solid #ddd;border-radius:18px;background:color-mix(in srgb,var(--card) 94%,var(--link) 6%)}.ready-profile-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.ready-profile-head h3{margin:0 0 4px}.ready-profile-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.ready-profile{width:92px;border:1px solid #ddd;border-radius:15px;padding:8px;background:var(--card);color:var(--text);cursor:pointer;transition:.2s}.ready-profile:hover,.ready-profile.active{transform:translateY(-2px);border-color:var(--link);box-shadow:0 0 0 2px color-mix(in srgb,var(--link) 12%,transparent)}.ready-profile img{width:72px;height:72px;display:block;margin:auto;object-fit:contain;border-radius:12px;background:transparent}.ready-profile span{display:block;font-size:11px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gift-order-note{font-weight:900;color:#8b5b00}
@keyframes playerCardShine{0%,65%{transform:translateX(-30%) rotate(18deg);opacity:0}72%{opacity:.8}88%,100%{transform:translateX(230%) rotate(18deg);opacity:0}}
.character-breath{animation:vortexBreath 3.6s ease-in-out infinite!important;transform-origin:50% 100%!important;will-change:transform}
@keyframes vortexBreath{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.012)}}
body.theme-night .player-card{background:linear-gradient(135deg,#151a21,#10151c);border-color:#0097a7;box-shadow:0 18px 45px #0006}.theme-night .ready-profile-picker{border-color:#344454}.theme-night .ready-profile{border-color:#344454;background:#151a21}.theme-night .player-card-stats span{background:#fff1}.theme-night .player-card-note{background:#fff1}.theme-night .club-gift-banner{background:#24321f;color:#d7f6b6;border-color:#6e9f4a}
@media(max-width:700px){.player-card-body{align-items:flex-start}.player-card-stats{display:grid;grid-template-columns:1fr 1fr}.player-card-avatar{width:92px;height:92px}.ready-profile{width:82px}.ready-profile img{width:62px;height:62px}}

/* V19: editable club tiers admin */
#adminContent .compact-admin-card label{display:grid;gap:6px;margin:10px 0;font-size:.9rem}
#adminContent .compact-admin-card label input{width:100%;box-sizing:border-box}

/* VORTEX account character-style switcher */
.character-style-picker{margin:18px 0;padding:18px;border:1px solid color-mix(in srgb,var(--link) 45%,#ddd);border-radius:20px;background:var(--card)}
.character-style-picker h3{margin:0 0 4px}.character-style-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.character-style-option{border:1px solid #ddd;border-radius:16px;padding:14px;background:var(--bg);color:var(--text);cursor:pointer;display:grid;gap:5px;text-align:center;transition:.2s}.character-style-option:hover,.character-style-option.active{transform:translateY(-3px);border-color:var(--link);box-shadow:0 0 0 2px color-mix(in srgb,var(--link) 12%,transparent)}.character-style-option span{font-size:30px}.character-style-option small{opacity:.65}
.account-top-grid{display:grid;grid-template-columns:1fr;gap:16px}.account-user-head{display:flex;align-items:center;gap:14px}.account-user-head img{width:82px;height:82px;border-radius:18px;object-fit:contain;background:transparent;border:1px solid #ddd}.bookmarks-panel{margin:18px 0;padding:18px;border:1px solid var(--link);border-radius:20px;background:var(--card)}.bookmark-group{margin-top:18px}.bookmark-group h3{margin-bottom:10px}.bookmark-grid{margin-bottom:0}.bookmark-btn{white-space:nowrap}.wall-card-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.wall-card-actions .download-btn{margin-top:0}
.review-author{display:flex;align-items:center;gap:9px;background:transparent;border:0;padding:0;cursor:pointer;color:var(--text);text-align:right}.review-author img{width:42px;height:42px;border-radius:12px;object-fit:contain;background:var(--bg);border:1px solid #ddd}.review-author span{display:grid;gap:2px}.review-author small{font-size:10px;opacity:.6}.review-item{padding:14px;border-bottom:1px solid #ddd}.review-item:last-child{border-bottom:0}.review-item>.review-stars{display:block;margin:5px 0}.review-locked{margin-top:14px;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--link) 8%,var(--card));border:1px dashed var(--link);font-weight:800}.public-profile-modal{max-width:650px}.public-profile-head{display:flex;align-items:center;gap:16px}.public-profile-head>img{width:100px;height:100px;border-radius:22px;object-fit:contain;background:var(--bg);border:1px solid #ddd}.public-profile-head h2{margin:4px 0}.public-profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.public-profile-stats span{padding:12px;border-radius:14px;background:color-mix(in srgb,var(--link) 7%,var(--card));text-align:center}.public-profile-stats b{display:block;margin-top:5px}.public-profile-review{padding:12px;border:1px solid #ddd;border-radius:14px;margin-top:10px}.public-profile-review p{margin:7px 0}.public-profile-reviews{margin-top:18px}

/* Separate vertical admin dashboard */
.admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start;direction:ltr}.admin-sidebar{position:sticky;top:84px;display:grid;gap:8px;padding:12px;border:1px solid var(--link);border-radius:18px;background:var(--card);box-shadow:0 10px 30px #0001;direction:rtl}.admin-sidebar-title{font-weight:950;padding:8px 10px;border-bottom:1px solid #ddd;margin-bottom:2px}.admin-nav-btn{width:100%;border:1px solid #ddd;border-radius:12px;background:var(--bg);color:var(--text);padding:12px 10px;text-align:right;font-weight:850;cursor:pointer;transition:.2s}.admin-nav-btn:hover,.admin-nav-btn.active{background:var(--link);color:#fff;border-color:var(--link);transform:translateX(-2px)}.admin-main{min-width:0;direction:rtl}.admin-section-heading{padding:18px;border:1px solid var(--link);border-radius:18px;background:var(--card);margin-bottom:14px}.admin-section-heading h2{margin:5px 0}.admin-section-heading p{margin:0;opacity:.7}.admin-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-tool-tile{min-height:120px;border:1px solid #ddd;border-radius:18px;background:var(--card);color:var(--text);padding:18px;text-align:right;cursor:pointer;display:grid;align-content:center;gap:8px;transition:.2s}.admin-tool-tile:hover{transform:translateY(-4px);border-color:var(--link);box-shadow:0 12px 28px #0001}.admin-tool-tile b{font-size:16px}.admin-tool-tile small{opacity:.65}.admin-back-btn{border:1px solid var(--link);background:var(--card);color:var(--link);border-radius:12px;padding:9px 12px;font-weight:850;cursor:pointer;margin-bottom:12px}
body.theme-night .admin-sidebar,body.theme-night .admin-section-heading,body.theme-night .admin-tool-tile{background:#181818;border-color:#0097a7;color:#fff}body.theme-night .admin-nav-btn{background:#202020;border-color:#344454;color:#fff}body.theme-night .admin-nav-btn:hover,body.theme-night .admin-nav-btn.active{background:#0097a7;border-color:#0097a7;color:#fff}body.theme-night .admin-back-btn{background:#181818;color:#0097a7;border-color:#0097a7}

/* Club: coins and gems rotate in 3D and catch a moving highlight. */
.club-tier-icon{perspective:500px!important;animation:club3dFloat 3.2s ease-in-out infinite!important;overflow:visible!important}.club-tier-icon:after{animation:club3dSpin 3.6s linear infinite,clubShine 2.4s ease-in-out infinite!important;transform-style:preserve-3d;overflow:visible}.club-tier-icon:before{animation:clubRibbonSpin 3.6s linear infinite;transform-origin:50% 100%;z-index:3}.club-medal-core{animation:clubCoreSpin 3.6s linear infinite;z-index:4}.club-medal-core:after{content:"✦";position:absolute;font-size:12px;top:-5px;right:-4px;color:#fff;opacity:0;animation:clubSparkle 1.5s ease-in-out infinite}.club-tier-icon.tier-diamond:after,.club-tier-icon.tier-platinum:after{border-radius:8px 8px 12px 12px;clip-path:polygon(50% 0,100% 30%,78% 100%,22% 100%,0 30%);width:48px;height:50px;top:11px}.club-tier-icon.tier-diamond:before,.club-tier-icon.tier-platinum:before{display:none}.club-tier-icon.tier-diamond:after{background:linear-gradient(135deg,#1d5eb4 0%,#6fc8ff 38%,#e9fbff 52%,#2d7bd0 70%,#103d7b 100%);filter:drop-shadow(0 0 8px #4bbcff)}.club-tier-icon.tier-platinum:after{background:linear-gradient(135deg,#7054c9 0%,#b78cff 38%,#f3eaff 52%,#875bdc 72%,#3c287b 100%);filter:drop-shadow(0 0 8px #a875ff)}.club-tier-icon.tier-gold:after{background:linear-gradient(135deg,#8b5a00,#e5aa12 38%,#fff0a1 54%,#c47d00 75%,#704500)}.club-tier-icon.tier-silver:after{background:linear-gradient(135deg,#6d737a,#d9dee3 38%,#fff 54%,#a2a8af 75%,#555b61)}.club-tier-icon.tier-bronze:after{background:linear-gradient(135deg,#6d3211,#b96731 38%,#f1b17a 54%,#8a451c 75%,#4c210d)}
@keyframes club3dSpin{0%{transform:rotateY(0deg) rotateX(8deg)}50%{transform:rotateY(180deg) rotateX(-5deg)}100%{transform:rotateY(360deg) rotateX(8deg)}}@keyframes clubCoreSpin{0%{transform:rotateY(0)}50%{transform:rotateY(180deg)}100%{transform:rotateY(360deg)}}@keyframes clubRibbonSpin{0%{transform:rotateY(0)}50%{transform:rotateY(180deg)}100%{transform:rotateY(360deg)}}@keyframes club3dFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes clubShine{0%,30%{box-shadow:inset 5px 6px 9px #fff4,inset -7px -8px 11px #0005,0 0 0 transparent}50%{box-shadow:inset -2px 3px 8px #fff,inset -6px -7px 10px #0004,0 0 14px #fff9}70%,100%{box-shadow:inset 5px 6px 9px #fff4,inset -7px -8px 11px #0005,0 0 0 transparent}}@keyframes clubSparkle{0%,55%,100%{opacity:0;transform:scale(.5) rotate(0)}65%{opacity:1;transform:scale(1.4) rotate(25deg)}75%{opacity:.2;transform:scale(.7) rotate(50deg)}}

@media(max-width:900px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar-title{grid-column:1/-1}.admin-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-style-options{grid-template-columns:1fr}}
@media(max-width:600px){.admin-sidebar{grid-template-columns:1fr}.admin-tools-grid{grid-template-columns:1fr}.public-profile-stats{grid-template-columns:1fr}.public-profile-head{align-items:flex-start}.account-user-head img{width:68px;height:68px}}
.product-actions{grid-template-columns:1fr 1fr 1.35fr!important}.product-actions .bookmark-btn,.product-actions .product-reviews-btn{min-width:0}.review-item{background:var(--soft)}
@media(max-width:600px){.product-actions{grid-template-columns:1fr!important}}

/* V20 */
.admin-header-actions{display:flex;align-items:center;gap:10px}.admin-alerts{display:flex;gap:8px;flex-wrap:wrap}.admin-alert{border:1px solid var(--link);background:var(--card);color:var(--text);border-radius:12px;padding:8px 11px;font-weight:800;cursor:pointer}.admin-alert .dot,.support-unread-dot,.order-new-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#e11;box-shadow:0 0 8px #e11;margin-inline-start:5px}.admin-external-link{display:block;padding:10px 12px;color:inherit;text-decoration:none;border-radius:10px}.admin-external-link:hover{background:var(--soft)}
.account-section{margin-top:14px;padding:14px;border:1px solid color-mix(in srgb,var(--link) 20%,#ddd);border-radius:16px;background:var(--soft)}.account-order-tabs{display:flex;gap:8px;flex-wrap:wrap}.account-order-tabs button{border:1px solid var(--border);background:var(--soft);color:var(--text);padding:10px 14px;border-radius:10px;cursor:pointer}.account-order-tabs button.active{background:var(--link);color:#fff}.player-card-bg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0}.player-bg-option{border:2px solid transparent;border-radius:12px;overflow:hidden;background:var(--card);color:var(--text);padding:5px;cursor:pointer}.player-bg-option.active{border-color:var(--link)}.player-bg-option img{width:100%;height:80px;object-fit:cover;border-radius:8px}.player-bg-option span{display:block;font-size:11px;padding:4px}.player-card.has-custom-bg{background-image:linear-gradient(#0004,#0008),var(--player-card-bg),linear-gradient(135deg,#151a21,#10151c);background-size:cover;background-position:center}.support-user-row{display:flex;align-items:center;gap:7px}.support-user-row.new{order:-1}.delivery-options{display:grid;gap:8px}.delivery-option{border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--soft);display:flex;gap:8px;align-items:center}.admin-delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.admin-delivery-item{border:1px solid var(--border);border-radius:10px;padding:9px;background:var(--soft);display:flex;justify-content:space-between;gap:8px}.admin-standalone .page:not(#admin),.admin-standalone .topbar,.admin-standalone .side-menu,.admin-standalone .overlay,.admin-standalone #notifPanel,.admin-standalone #aiOpenBtn,.admin-standalone #aiBox,.admin-standalone #cartDrawer,.admin-standalone .modal,.admin-standalone #toast{display:none!important}.admin-standalone #admin{display:block!important}.admin-standalone .admin-login{display:block!important}.admin-standalone #adminPanel{display:none!important}.admin-standalone main{padding-top:0}.admin-standalone .admin-header{position:sticky;top:0;z-index:20}.admin-standalone .admin-layout{grid-template-columns:230px minmax(0,1fr)}.admin-standalone .admin-sidebar{position:sticky;top:80px;align-self:start;max-height:calc(100vh - 100px);overflow:auto}
@media(max-width:700px){.player-card-bg-grid,.admin-delivery-grid{grid-template-columns:1fr 1fr}.admin-standalone .admin-layout{display:block}.admin-standalone .admin-sidebar{position:relative;max-height:none;margin-bottom:14px}}

/* V20.1 account redesign: hero first, then horizontally scrollable shelves. */
.account-profile-hero{position:relative;isolation:isolate;overflow:hidden;margin:0 0 22px;padding:22px;border:2px solid var(--link);border-radius:28px;min-height:0;background:linear-gradient(135deg,var(--card),var(--soft));background-image:var(--account-wallpaper),linear-gradient(135deg,var(--card),var(--soft));background-size:cover;background-position:center;box-shadow:0 18px 50px #0002}
.account-profile-hero.has-account-wallpaper{background-blend-mode:soft-light}
.account-profile-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0003,#0007);z-index:-1}
.account-profile-hero-content{position:relative;z-index:1;max-width:1180px;margin:auto}
.account-profile-hero-title{color:#fff;padding:6px 6px 14px;text-shadow:0 2px 12px #0008}
.account-profile-hero-title h1{margin:5px 0;font-size:clamp(24px,4vw,42px)}
.account-profile-hero-title p{margin:0;opacity:.9}
.account-profile-hero .player-card{margin:0;background:linear-gradient(135deg,#ffffffee,#fff8)!important;color:#111;backdrop-filter:blur(5px)}
.account-profile-controls{margin-top:12px;padding:12px;border-radius:18px;background:#0007;border:1px solid #fff4;color:#fff}
.account-profile-controls .account-settings-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.account-profile-controls .ready-profile-picker{margin:10px 0 0;background:#ffffffea;color:#111;border-color:#fff}
.account-profile-controls .profile-upload-fallback{margin-top:10px}
.account-customization-section{display:grid;gap:16px;margin:0 0 24px}
.account-customization-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:4px 2px}
.account-customization-heading h2{margin:3px 0 0;font-size:clamp(22px,3vw,32px)}
.account-customization-heading>span{color:var(--muted);font-size:12px}
.account-future-section{border:1px solid color-mix(in srgb,var(--link) 35%,#ddd);border-radius:22px;padding:16px;background:var(--card);box-shadow:0 10px 28px #0000000b}
.account-shelf-head{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:12px}
.account-shelf-head h3{margin:3px 0 4px;font-size:20px}.account-shelf-head p{margin:0;color:var(--muted);font-size:12px}.account-shelf-head>span{font-size:12px;color:var(--link);font-weight:900;white-space:nowrap}
.account-horizontal-shelf{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding:4px 2px 10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.account-horizontal-shelf::-webkit-scrollbar{height:8px}.account-horizontal-shelf::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--link) 55%,#999);border-radius:99px}
.account-shelf-card{position:relative;flex:0 0 170px;width:170px;min-height:122px;padding:7px;border:2px solid transparent;border-radius:16px;background:var(--soft);color:var(--text);cursor:pointer;scroll-snap-align:start;transition:.2s;overflow:hidden;text-align:right}
.account-shelf-card:hover{transform:translateY(-3px);border-color:var(--link)}.account-shelf-card.active{border-color:var(--link);box-shadow:0 0 0 2px color-mix(in srgb,var(--link) 15%,transparent),0 10px 25px #0002}
.account-shelf-card img{display:block;width:100%;height:88px;object-fit:cover;border-radius:11px;background:var(--bg)}
.account-shelf-card span{display:block;padding:7px 3px 2px;font-size:12px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-shelf-card b{display:block;color:var(--link);font-size:10px;padding:0 3px 3px}
.account-player-shelf-card img{height:92px;object-fit:cover}
.account-custom-upload{margin-top:10px}
.account-character-style-section{padding:20px 18px;min-height:210px}
.account-character-style-section .character-style-picker{margin:0;border:0;padding:0;background:transparent}
.account-character-style-section .character-style-options{min-height:150px;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.account-character-style-section .character-style-option{min-height:150px;align-content:center;font-size:16px}
.account-character-style-section .character-style-option span{font-size:42px}

/* Character assets are already cut out; do not add artificial ground shadows/glows. */
.character-3d,.about-character-image,.about-vortex-character,.full-ai-character-image,.support-character-image,.auth-character-side img,.ai-character-image,.admin-character-card img{filter:none!important}
.character-glow,.about-character-shadow{display:none!important}

@media(max-width:700px){
 .account-profile-hero{padding:12px;border-radius:20px}.account-profile-hero .player-card{padding:15px}
 .account-profile-controls .account-settings-row{justify-content:flex-start}.account-customization-heading{display:block}.account-customization-heading>span{display:block;margin-top:5px}
 .account-shelf-card{flex-basis:145px;width:145px}.account-shelf-card img{height:78px}.account-character-style-section .character-style-options{grid-template-columns:1fr;min-height:0}.account-character-style-section .character-style-option{min-height:105px}
}

/* Vortex character library / media manager fixes */
.character-admin-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.character-admin-tab{border:1px solid var(--border);border-radius:16px;padding:15px;background:var(--soft);color:var(--text);font-weight:900;cursor:pointer;transition:.2s}
.character-admin-tab:hover{transform:translateY(-2px);border-color:var(--link);box-shadow:0 8px 22px #0001}
.character-category-panel{scroll-margin-top:90px}
.character-category-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.character-category-title h3{margin:0 0 4px}
.character-category-title small{color:var(--muted)}
.character-add-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,1fr) auto;gap:10px;align-items:end;margin-bottom:16px}
.character-admin-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.character-library-card{min-width:0}
.character-library-card img{height:220px!important;object-fit:contain!important;background:transparent!important;border-radius:12px}
.media-character-select{width:100%;margin:8px 0;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text)}
.player-card-admin-block{margin-top:18px}
@media(max-width:900px){.character-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-add-form{grid-template-columns:1fr}.character-admin-tabs{grid-template-columns:1fr}}
@media(max-width:600px){.character-admin-grid{grid-template-columns:1fr}.character-library-card img{height:260px!important}}

/* V25 homepage ranking, leaderboard, ultra diamond and admin stats */
.stat.stat-clickable{border:1px solid #f14a50;background:var(--card);color:var(--text);cursor:pointer;text-align:right;transition:.2s}.stat.stat-clickable:hover{transform:translateY(-3px);box-shadow:0 10px 24px #0002}.stat.stat-clickable small{display:block;margin-top:8px;opacity:.7}.home-order-editor{display:grid;gap:10px}.home-order-row{display:grid;grid-template-columns:48px 1fr 100px auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--soft)}.home-order-row.locked{opacity:.8}.home-order-row small{display:block;opacity:.65;margin-top:3px}.home-order-row input[type=number]{width:80px;padding:8px;border:1px solid #ddd;border-radius:9px}.home-rank-badge{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--link);color:#fff;font-weight:900}.admin-user-full-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.admin-user-full-head h3{margin:0}.admin-user-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.admin-user-specs span{padding:10px;border-radius:10px;background:var(--soft);font-size:12px}.admin-user-overrides{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.admin-user-overrides label{display:grid;gap:5px;font-size:12px}.admin-user-overrides input,.admin-user-overrides select{padding:9px;border:1px solid #ddd;border-radius:9px;background:var(--card);color:var(--text)}.admin-user-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.club-tier-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-weight:900;font-size:11px;background:#0001}.club-tier-pill.ultra-diamond{background:#0b7d3e;color:#fff;box-shadow:0 0 14px #18e87c88}.leaderboard-admin{margin-top:14px}.leader-row{display:grid;grid-template-columns:45px 1fr auto auto;align-items:center;gap:10px;padding:12px;border-bottom:1px solid #ddd;background:var(--card);color:var(--text);text-align:right}.leader-row:last-child{border-bottom:0}.leader-name{font-weight:900}.site-leader-row{width:100%;border:0;border-bottom:1px solid #ddd;cursor:pointer}.leader-avatar{width:42px;height:42px;border-radius:12px;overflow:hidden;background:var(--soft);display:grid;place-items:center}.leader-avatar img{width:100%;height:100%;object-fit:contain}.leaderboard-hero{padding:30px;border:1px solid var(--link);border-radius:22px;background:var(--card);margin-bottom:14px}.leaderboard-hero h1{margin:6px 0}.leaderboard-list{border:1px solid #ddd;border-radius:18px;overflow:hidden}.ultra-diamond-feature{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:20px;padding:22px;border:1px solid #18c66a;border-radius:22px;background:linear-gradient(135deg,#071d12,#0d3a21);color:#fff;margin:18px 0;overflow:hidden}.ultra-diamond-stage{height:210px;display:grid;place-items:center;perspective:800px}.ultra-diamond-gem{width:110px;height:110px;display:block;position:relative;transform:rotateX(18deg) rotateZ(45deg);background:linear-gradient(135deg,#b8ffd3 0%,#20f17d 32%,#079447 65%,#003d1f 100%);border:3px solid #6affaa;box-shadow:0 0 35px #1cff77aa, inset 10px 10px 20px #ffffff55, inset -12px -12px 20px #001b0d88;animation:ultraDiamondSpin 5s linear infinite}.ultra-diamond-gem:before,.ultra-diamond-gem:after{content:"";position:absolute;inset:0;background:inherit;border:inherit}.ultra-diamond-gem:before{transform:rotateY(60deg);filter:brightness(.8)}.ultra-diamond-gem:after{transform:rotateX(60deg);filter:brightness(1.15)}@keyframes ultraDiamondSpin{from{transform:rotateX(18deg) rotateZ(45deg) rotateY(0)}to{transform:rotateX(18deg) rotateZ(45deg) rotateY(360deg)}}.club-tier-icon.tier-ultra-diamond{display:grid;place-items:center}.club-tier-icon.tier-ultra-diamond .ultra-diamond-gem{width:54px;height:54px}.account-style-library{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #ddd}.account-style-library .character-choice{width:110px;border:1px solid #ddd;border-radius:14px;background:var(--card);padding:8px;color:var(--text);cursor:pointer}.account-style-library .character-choice img{width:100%;height:110px;object-fit:contain;display:block}.account-style-library .character-choice.active{border-color:var(--link);box-shadow:0 0 0 2px #ef1b2422}.realistic-fixed-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.realistic-slot{margin:0;text-align:center}.realistic-slot img{width:100%;height:220px;object-fit:contain;background:var(--soft);border-radius:12px;display:block;margin-bottom:8px}.realistic-slot small{display:block;opacity:.7;margin:4px 0}.realistic-slot input{width:100%;font-size:11px;margin:7px 0}.home-section-hidden{display:none!important}
@media(max-width:900px){.home-order-row{grid-template-columns:40px 1fr 80px}.home-order-row label{grid-column:2/-1}.admin-user-specs{grid-template-columns:1fr 1fr}.admin-user-overrides{grid-template-columns:1fr}.realistic-fixed-grid{grid-template-columns:1fr 1fr}.ultra-diamond-feature{grid-template-columns:1fr}.ultra-diamond-stage{height:150px}}
@media(max-width:600px){.admin-user-specs{grid-template-columns:1fr}.leader-row{grid-template-columns:35px 1fr auto}.leader-row .leader-avatar{display:none}.realistic-fixed-grid{grid-template-columns:1fr}.home-order-row{grid-template-columns:40px 1fr}.home-order-row input[type=number]{grid-column:2;width:100%}}

/* V27 character manager actions */
.character-admin-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:7px}.character-admin-actions .file-note{margin:0}.character-library-card input[type=file]{width:100%;font-size:11px;margin:7px 0}.realistic-slot .small-btn{margin-top:4px}


/* ===== Minecraft-inspired Vortex Club rank icons ===== */
.club-tier-icon{font-size:0!important;overflow:visible!important;perspective:700px!important}
.mc-icon{position:relative;display:block;width:58px;height:58px;transform-style:preserve-3d;animation:mcRankSpin 4.8s linear infinite;filter:drop-shadow(0 8px 7px #0005)}
@keyframes mcRankSpin{0%{transform:rotateY(0deg) rotateX(8deg)}50%{transform:rotateY(180deg) rotateX(-4deg)}100%{transform:rotateY(360deg) rotateX(8deg)}}
.mc-ingot{width:56px;height:34px;top:12px;clip-path:polygon(12% 18%,88% 18%,100% 42%,92% 90%,8% 90%,0 42%);border:2px solid #333;box-shadow:inset 0 4px 0 #fff6,inset 0 -7px 0 #0004,0 4px 8px #0005}
.mc-ingot:before{content:"";position:absolute;left:12%;right:12%;top:5px;height:7px;background:#fff5;clip-path:polygon(0 0,100% 0,82% 100%,18% 100%)}
.mc-copper{background:linear-gradient(135deg,#6b2c18 0%,#b65a2e 35%,#e39a62 55%,#7a321c 100%);border-color:#54210f}
.mc-iron{background:linear-gradient(135deg,#656a70 0%,#b9c0c7 38%,#f4f6f8 55%,#777d83 100%);border-color:#555a60}
.mc-gold{background:linear-gradient(135deg,#8a5700 0%,#d69b05 34%,#ffe889 55%,#9b6700 100%);border-color:#694500}
.mc-emerald{width:48px;height:58px;margin-top:1px;clip-path:polygon(50% 0,82% 18%,100% 48%,78% 100%,22% 100%,0 48%,18% 18%);background:linear-gradient(135deg,#063f24,#0aa95a 28%,#6affad 48%,#078447 68%,#032d1a);border:3px solid #38e88b;box-shadow:inset 7px 6px 12px #fff6,inset -8px -10px 14px #001c0d99,0 0 18px #20e878aa}
.mc-emerald:after{content:"";position:absolute;left:11px;top:8px;width:14px;height:8px;background:#d9ffea99;clip-path:polygon(0 0,100% 0,70% 100%,25% 100%)}
.mc-flower{width:56px;height:56px;margin-top:2px}
.mc-flower:before{content:"";position:absolute;left:20px;top:3px;width:17px;height:17px;background:var(--flower);box-shadow:-14px 13px 0 var(--flower),14px 13px 0 var(--flower),0 27px 0 var(--flower);transform:rotate(45deg);border:2px solid #0003}
.mc-flower:after{content:"";position:absolute;left:23px;top:20px;width:13px;height:13px;background:#f6d34a;border:2px solid #9d7410;box-shadow:0 4px 5px #0004}
.mc-white-flower{--flower:#f4f4ef}
.mc-purple-flower{--flower:#9d4edd}
.mc-diamond-core{position:absolute;z-index:4;left:18px;top:17px;width:22px;height:26px;clip-path:polygon(50% 0,100% 28%,78% 100%,22% 100%,0 28%);background:linear-gradient(135deg,#8a2be2,#d8a6ff 45%,#5d1aa0 100%);border:2px solid #c58aff;box-shadow:0 0 12px #a45cff88}
.club-tier-icon.tier-ultra-diamond:before,.club-tier-icon.tier-ultra-diamond:after{display:none!important}
.club-tier-icon.tier-bronze:before,.club-tier-icon.tier-bronze:after,.club-tier-icon.tier-silver:before,.club-tier-icon.tier-silver:after,.club-tier-icon.tier-gold:before,.club-tier-icon.tier-gold:after,.club-tier-icon.tier-platinum:before,.club-tier-icon.tier-platinum:after,.club-tier-icon.tier-diamond:before,.club-tier-icon.tier-diamond:after{display:none!important}
.ultra-copy-editor textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #ddd;border-radius:12px;background:var(--card);color:var(--text);font:inherit;resize:vertical;min-height:80px}
/* V29 dynamic character themes */
.character-theme-slot{min-width:0;overflow:hidden}
.character-theme-slot .file-note{font-size:11px;line-height:1.7;margin:4px 0}
.account-character-slots{display:grid!important;grid-template-columns:repeat(4,minmax(105px,1fr));align-items:stretch}
.account-character-slots .character-choice{width:auto!important;min-width:0}
.account-character-slots .character-choice small{display:block;font-size:10px;opacity:.65;margin-top:4px}
@media(max-width:800px){.realistic-fixed-grid{grid-template-columns:repeat(2,1fr)}.account-character-slots{grid-template-columns:repeat(2,minmax(110px,1fr))!important}}
@media(max-width:450px){.realistic-fixed-grid{grid-template-columns:1fr}.account-character-slots{grid-template-columns:repeat(2,minmax(90px,1fr))!important}}

/* V30: separate day/night site backgrounds and explicit controller media surfaces */
#home.page{
  background-image:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.86)),var(--home-bg-image),var(--home-bg-day)!important;
  background-size:cover,cover,cover;
  background-position:center,center,center;
}
body.theme-night #home.page{
  background-image:linear-gradient(180deg,rgba(4,7,11,.91),rgba(4,7,11,.88)),var(--home-bg-image),var(--home-bg-night)!important;
}
.media-subtitle{margin:20px 0 10px;padding-top:4px;border-top:1px solid var(--border);}
.hero-controller-wrap{background:transparent!important;border-radius:24px;}
body:not(.theme-night) .hero-controller-wrap{background:rgba(255,255,255,.04)!important;}
body.theme-night .hero-controller-wrap{background:rgba(0,0,0,.08)!important;}

/* Ready-made site templates */
.site-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:16px}.site-template-card{border:1px solid var(--border);border-radius:var(--template-radius,20px);background:var(--card);padding:12px;display:flex;flex-direction:column;gap:10px;transition:.25s;box-shadow:0 8px 24px #00000008}.site-template-card:hover{transform:translateY(-5px);box-shadow:var(--template-shadow,0 14px 38px #0002)}.site-template-card.active{outline:3px solid var(--link);outline-offset:2px}.site-template-preview{aspect-ratio:640/390;border-radius:14px;overflow:hidden;background:var(--soft);border:1px solid var(--border)}.site-template-preview img{width:100%;height:100%;object-fit:cover;display:block}.site-template-info{display:flex;align-items:center;justify-content:space-between;gap:10px}.site-template-info>div{min-width:0}.site-template-info b{display:block;font-size:15px}.site-template-info small{display:block;color:var(--muted);font-size:11px;line-height:1.7;margin-top:3px}.template-dot{width:18px;height:18px;min-width:18px;border-radius:50%;background:var(--template-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--template-accent) 15%,transparent)}.site-template-card .primary-btn{width:100%;margin-top:auto}
body[data-vortex-template] .hero{background:var(--template-hero)!important;border-radius:var(--template-radius)!important;box-shadow:var(--template-shadow)!important}.hero,.wall-card,.product-card,.article-card,.category-card,.about-card,.admin-card,.about-vortex-card,.shop-search-panel,.club-intro,.club-progress,.club-tier{border-radius:var(--template-radius)}body[data-vortex-template] .wall-card,body[data-vortex-template] .product-card,body[data-vortex-template] .article-card,body[data-vortex-template] .category-card,body[data-vortex-template] .admin-card,body[data-vortex-template] .about-card,body[data-vortex-template] .about-vortex-card{box-shadow:0 8px 26px color-mix(in srgb,var(--link) 10%,transparent)}body[data-vortex-template] .primary-btn{border-radius:calc(var(--template-radius) * .55)}body[data-vortex-template] .outline-btn,body[data-vortex-template] .small-btn{border-radius:calc(var(--template-radius) * .5)}body[data-vortex-template] .section-head h2,body[data-vortex-template] .page-title h1{letter-spacing:.2px}body[data-vortex-template="minecraft-pixel"] .hero,body[data-vortex-template="minecraft-pixel"] .wall-card,body[data-vortex-template="minecraft-pixel"] .product-card,body[data-vortex-template="minecraft-pixel"] .article-card,body[data-vortex-template="minecraft-pixel"] .category-card{box-shadow:4px 4px 0 color-mix(in srgb,var(--link) 22%,transparent)!important}body[data-vortex-template="matrix"] *{border-radius:var(--template-radius)!important}body[data-vortex-template="stealth-black"] .hero,body[data-vortex-template="stealth-black"] .wall-card,body[data-vortex-template="stealth-black"] .product-card,body[data-vortex-template="stealth-black"] .article-card,body[data-vortex-template="stealth-black"] .category-card{box-shadow:0 18px 40px #0008!important}
@media(max-width:1000px){.site-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.site-template-grid{grid-template-columns:1fr}.site-template-card{padding:10px}}

/* V33 advanced settings */
:root{--button-neon-color:#00eaff;--button-neon-intensity:1;--vortex-fa-font:"Vazirmatn";--vortex-en-font:"Orbitron"}
body{font-family:var(--vortex-en-font),var(--vortex-fa-font),Tahoma,Arial,sans-serif}
button,input,select,textarea{font-family:inherit}
body[data-neon-buttons="on"] .primary-btn,body[data-neon-buttons="on"] .outline-btn,body[data-neon-buttons="on"] .small-btn,body[data-neon-buttons="on"] .admin-tool-tile,body[data-neon-buttons="on"] button{border-color:var(--button-neon-color)!important;box-shadow:0 0 calc(8px * var(--button-neon-intensity)) var(--button-neon-color),inset 0 0 calc(3px * var(--button-neon-intensity)) color-mix(in srgb,var(--button-neon-color) 35%,transparent)!important}
body[data-neon-buttons="on"][data-neon-style="1"] button{border-radius:12px}
body[data-neon-buttons="on"][data-neon-style="2"] button{box-shadow:0 0 8px var(--button-neon-color),0 0 20px color-mix(in srgb,var(--button-neon-color) 45%,transparent),inset 0 0 3px #fff!important}
body[data-neon-buttons="on"][data-neon-style="3"] button{animation:v33NeonPulse 1.5s ease-in-out infinite}
body[data-neon-buttons="on"][data-neon-style="4"] button{border-style:dashed!important}
body[data-neon-buttons="on"][data-neon-style="5"] button{animation:v33NeonPulse .9s ease-in-out infinite}
body[data-neon-buttons="on"][data-neon-style="6"] button{border-radius:4px;transform:skewX(-2deg)}
body[data-neon-buttons="on"][data-neon-style="7"] button{animation:v33Rainbow 4s linear infinite}
body[data-neon-buttons="on"][data-neon-style="8"] button{box-shadow:0 0 5px var(--button-neon-color)!important}
body[data-neon-buttons="on"][data-neon-style="9"] button{border-width:3px!important;box-shadow:0 0 18px var(--button-neon-color)!important}
body[data-neon-buttons="on"][data-neon-style="10"] button{border-radius:20px;box-shadow:0 0 25px var(--button-neon-color),inset 0 0 12px var(--button-neon-color)!important}
body[data-neon-buttons="on"][data-neon-style="11"] button{box-shadow:0 0 12px var(--button-neon-color),0 0 2px #fff inset!important}
body[data-neon-buttons="on"][data-neon-style="12"] button{border-width:2px!important;box-shadow:0 0 9px var(--button-neon-color),0 0 24px color-mix(in srgb,var(--button-neon-color) 35%,transparent)!important}
@keyframes v33NeonPulse{50%{filter:brightness(1.3)}}@keyframes v33Rainbow{to{filter:hue-rotate(360deg)}}
#vortexVideoBackground{position:fixed;inset:0;width:100vw;height:100vh;object-fit:cover;z-index:-3;pointer-events:none;opacity:.72}.chroma-video{mix-blend-mode:screen;filter:saturate(1.2) contrast(1.05)}
body:has(#vortexVideoBackground){background:transparent!important}
.builder-grid,.animation-ready-grid,.daily-reward-grid{display:grid;gap:12px}.builder-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.builder-row,.animation-ready-card{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--link);border-radius:14px;background:var(--soft)}.builder-row label{margin-inline-start:auto}.animation-ready-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.animation-ready-card{display:grid;grid-template-columns:auto 1fr auto}.daily-reward-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.daily-reward-grid label{display:grid;gap:5px}
.placement-editor{max-width:900px!important}.placement-stage{height:500px;background:linear-gradient(135deg,#111,#333);border:2px solid var(--link);border-radius:22px;position:relative;overflow:hidden;margin:18px 0}.placement-stage:after{content:"محل قرارگیری";position:absolute;inset:0;display:grid;place-items:center;color:#fff3;font-size:3rem;pointer-events:none}.placement-stage img{position:absolute;max-width:45%;max-height:85%;transform:translate(-50%,-50%);z-index:2;cursor:grab;user-select:none}.extra-site-character{position:absolute;z-index:20;transform:translate(-50%,-50%);max-width:260px;max-height:420px;pointer-events:none;filter:drop-shadow(0 12px 20px #0005)}
.club-crown-spin{display:inline-block;animation:v33Crown 2.2s linear infinite;margin-inline-end:5px}@keyframes v33Crown{to{transform:rotateY(360deg)}}.animated-club-card{animation:v33CardFloat 4s ease-in-out infinite}@keyframes v33CardFloat{50%{transform:translateY(-4px)}}
.first-purchase-offer .offer-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}@media(max-width:700px){.first-purchase-offer .offer-choice-grid{grid-template-columns:1fr}}

@keyframes v33Float{50%{transform:translateY(-6px)}}@keyframes v33Glow{50%{filter:drop-shadow(0 0 14px var(--neon))}}@keyframes v33Shimmer{to{background-position:200% 0}}@keyframes v33Shake{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}@keyframes v33Spin{to{transform:rotate(360deg)}}
body[data-ready-animations*="anim-1"] .page:nth-of-type(2),body[data-ready-animations*="anim-1"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-2"] .page:nth-of-type(3),body[data-ready-animations*="anim-2"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-3"] .page:nth-of-type(4),body[data-ready-animations*="anim-3"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-4"] .page:nth-of-type(5),body[data-ready-animations*="anim-4"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-5"] .page:nth-of-type(6),body[data-ready-animations*="anim-5"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-6"] .page:nth-of-type(7),body[data-ready-animations*="anim-6"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-7"] .page:nth-of-type(8),body[data-ready-animations*="anim-7"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-8"] .page:nth-of-type(1),body[data-ready-animations*="anim-8"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-9"] .page:nth-of-type(2),body[data-ready-animations*="anim-9"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-10"] .page:nth-of-type(3),body[data-ready-animations*="anim-10"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-11"] .page:nth-of-type(4),body[data-ready-animations*="anim-11"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-12"] .page:nth-of-type(5),body[data-ready-animations*="anim-12"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-13"] .page:nth-of-type(6),body[data-ready-animations*="anim-13"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-14"] .page:nth-of-type(7),body[data-ready-animations*="anim-14"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-15"] .page:nth-of-type(8),body[data-ready-animations*="anim-15"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-16"] .page:nth-of-type(1),body[data-ready-animations*="anim-16"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-17"] .page:nth-of-type(2),body[data-ready-animations*="anim-17"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-18"] .page:nth-of-type(3),body[data-ready-animations*="anim-18"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-19"] .page:nth-of-type(4),body[data-ready-animations*="anim-19"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-20"] .page:nth-of-type(5),body[data-ready-animations*="anim-20"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-21"] .page:nth-of-type(6),body[data-ready-animations*="anim-21"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-22"] .page:nth-of-type(7),body[data-ready-animations*="anim-22"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-23"] .page:nth-of-type(8),body[data-ready-animations*="anim-23"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-24"] .page:nth-of-type(1),body[data-ready-animations*="anim-24"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-25"] .page:nth-of-type(2),body[data-ready-animations*="anim-25"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-26"] .page:nth-of-type(3),body[data-ready-animations*="anim-26"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-27"] .page:nth-of-type(4),body[data-ready-animations*="anim-27"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-28"] .page:nth-of-type(5),body[data-ready-animations*="anim-28"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-29"] .page:nth-of-type(6),body[data-ready-animations*="anim-29"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-30"] .page:nth-of-type(7),body[data-ready-animations*="anim-30"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-31"] .page:nth-of-type(8),body[data-ready-animations*="anim-31"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-32"] .page:nth-of-type(1),body[data-ready-animations*="anim-32"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-33"] .page:nth-of-type(2),body[data-ready-animations*="anim-33"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-34"] .page:nth-of-type(3),body[data-ready-animations*="anim-34"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-35"] .page:nth-of-type(4),body[data-ready-animations*="anim-35"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-36"] .page:nth-of-type(5),body[data-ready-animations*="anim-36"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-37"] .page:nth-of-type(6),body[data-ready-animations*="anim-37"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-38"] .page:nth-of-type(7),body[data-ready-animations*="anim-38"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-39"] .page:nth-of-type(8),body[data-ready-animations*="anim-39"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-40"] .page:nth-of-type(1),body[data-ready-animations*="anim-40"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-41"] .page:nth-of-type(2),body[data-ready-animations*="anim-41"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-42"] .page:nth-of-type(3),body[data-ready-animations*="anim-42"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-43"] .page:nth-of-type(4),body[data-ready-animations*="anim-43"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-44"] .page:nth-of-type(5),body[data-ready-animations*="anim-44"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-45"] .page:nth-of-type(6),body[data-ready-animations*="anim-45"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-46"] .page:nth-of-type(7),body[data-ready-animations*="anim-46"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-47"] .page:nth-of-type(8),body[data-ready-animations*="anim-47"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-48"] .page:nth-of-type(1),body[data-ready-animations*="anim-48"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-49"] .page:nth-of-type(2),body[data-ready-animations*="anim-49"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-50"] .page:nth-of-type(3),body[data-ready-animations*="anim-50"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}

.site-template-card.archived{opacity:.5;filter:saturate(.5)}.template-admin-actions{display:flex;gap:7px;flex-wrap:wrap}.coupon-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.account-coupon-card{border:1px solid var(--link);border-radius:16px;padding:15px;background:var(--soft);display:grid;gap:6px}.daily-reward-strip{display:flex;gap:8px;overflow:auto;padding:10px 0}.daily-reward-chip{min-width:120px;border:1px solid var(--link);border-radius:14px;padding:10px;background:var(--soft);display:grid;gap:4px}.daily-reward-chip.active{box-shadow:0 0 15px var(--neon);border-width:2px}.animated-lock-shelf .locked,.account-horizontal-section .locked{position:relative;opacity:.48;filter:brightness(.65);cursor:not-allowed}.lock-overlay{display:block;font-size:1.8rem}.animated-ready small,.account-horizontal-section.locked small{display:block}.

@keyframes v33Float{50%{transform:translateY(-6px)}}@keyframes v33Glow{50%{filter:drop-shadow(0 0 14px var(--neon))}}@keyframes v33Shimmer{to{background-position:200% 0}}@keyframes v33Shake{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}@keyframes v33Spin{to{transform:rotate(360deg)}}
body[data-ready-animations*="anim-1"] .page:nth-of-type(2),body[data-ready-animations*="anim-1"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-2"] .page:nth-of-type(3),body[data-ready-animations*="anim-2"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-3"] .page:nth-of-type(4),body[data-ready-animations*="anim-3"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-4"] .page:nth-of-type(5),body[data-ready-animations*="anim-4"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-5"] .page:nth-of-type(6),body[data-ready-animations*="anim-5"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-6"] .page:nth-of-type(7),body[data-ready-animations*="anim-6"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-7"] .page:nth-of-type(8),body[data-ready-animations*="anim-7"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-8"] .page:nth-of-type(1),body[data-ready-animations*="anim-8"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-9"] .page:nth-of-type(2),body[data-ready-animations*="anim-9"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-10"] .page:nth-of-type(3),body[data-ready-animations*="anim-10"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-11"] .page:nth-of-type(4),body[data-ready-animations*="anim-11"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-12"] .page:nth-of-type(5),body[data-ready-animations*="anim-12"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-13"] .page:nth-of-type(6),body[data-ready-animations*="anim-13"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-14"] .page:nth-of-type(7),body[data-ready-animations*="anim-14"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-15"] .page:nth-of-type(8),body[data-ready-animations*="anim-15"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-16"] .page:nth-of-type(1),body[data-ready-animations*="anim-16"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-17"] .page:nth-of-type(2),body[data-ready-animations*="anim-17"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-18"] .page:nth-of-type(3),body[data-ready-animations*="anim-18"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-19"] .page:nth-of-type(4),body[data-ready-animations*="anim-19"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-20"] .page:nth-of-type(5),body[data-ready-animations*="anim-20"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-21"] .page:nth-of-type(6),body[data-ready-animations*="anim-21"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-22"] .page:nth-of-type(7),body[data-ready-animations*="anim-22"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-23"] .page:nth-of-type(8),body[data-ready-animations*="anim-23"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-24"] .page:nth-of-type(1),body[data-ready-animations*="anim-24"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-25"] .page:nth-of-type(2),body[data-ready-animations*="anim-25"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-26"] .page:nth-of-type(3),body[data-ready-animations*="anim-26"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-27"] .page:nth-of-type(4),body[data-ready-animations*="anim-27"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-28"] .page:nth-of-type(5),body[data-ready-animations*="anim-28"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-29"] .page:nth-of-type(6),body[data-ready-animations*="anim-29"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-30"] .page:nth-of-type(7),body[data-ready-animations*="anim-30"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-31"] .page:nth-of-type(8),body[data-ready-animations*="anim-31"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-32"] .page:nth-of-type(1),body[data-ready-animations*="anim-32"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-33"] .page:nth-of-type(2),body[data-ready-animations*="anim-33"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-34"] .page:nth-of-type(3),body[data-ready-animations*="anim-34"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-35"] .page:nth-of-type(4),body[data-ready-animations*="anim-35"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-36"] .page:nth-of-type(5),body[data-ready-animations*="anim-36"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-37"] .page:nth-of-type(6),body[data-ready-animations*="anim-37"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-38"] .page:nth-of-type(7),body[data-ready-animations*="anim-38"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-39"] .page:nth-of-type(8),body[data-ready-animations*="anim-39"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-40"] .page:nth-of-type(1),body[data-ready-animations*="anim-40"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-41"] .page:nth-of-type(2),body[data-ready-animations*="anim-41"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-42"] .page:nth-of-type(3),body[data-ready-animations*="anim-42"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-43"] .page:nth-of-type(4),body[data-ready-animations*="anim-43"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-44"] .page:nth-of-type(5),body[data-ready-animations*="anim-44"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-45"] .page:nth-of-type(6),body[data-ready-animations*="anim-45"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}
body[data-ready-animations*="anim-46"] .page:nth-of-type(7),body[data-ready-animations*="anim-46"] .home-extra-block:nth-child(2){animation:v33Float 3s ease-in-out infinite;}
body[data-ready-animations*="anim-47"] .page:nth-of-type(8),body[data-ready-animations*="anim-47"] .home-extra-block:nth-child(3){animation:v33Glow 2.2s ease-in-out infinite;}
body[data-ready-animations*="anim-48"] .page:nth-of-type(1),body[data-ready-animations*="anim-48"] .home-extra-block:nth-child(4){animation:v33Shimmer 4s ease-in-out infinite;}
body[data-ready-animations*="anim-49"] .page:nth-of-type(2),body[data-ready-animations*="anim-49"] .home-extra-block:nth-child(5){animation:v33Shake 1.5s ease-in-out infinite;}
body[data-ready-animations*="anim-50"] .page:nth-of-type(3),body[data-ready-animations*="anim-50"] .home-extra-block:nth-child(1){animation:v33Spin 6s ease-in-out infinite;}

.site-template-card.archived{opacity:.5;filter:saturate(.5)}.template-admin-actions{display:flex;gap:7px;flex-wrap:wrap}.coupon-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.account-coupon-card{border:1px solid var(--link);border-radius:16px;padding:15px;background:var(--soft);display:grid;gap:6px}.daily-reward-strip{display:flex;gap:8px;overflow:auto;padding:10px 0}.daily-reward-chip{min-width:120px;border:1px solid var(--link);border-radius:14px;padding:10px;background:var(--soft);display:grid;gap:4px}.daily-reward-chip.active{box-shadow:0 0 15px var(--neon);border-width:2px}.animated-lock-shelf .locked,.account-horizontal-section .locked{position:relative;opacity:.48;filter:brightness(.65);cursor:not-allowed}.lock-overlay{display:block;font-size:1.8rem}.animated-ready small,.account-horizontal-section.locked small{display:block}.
#vortexVideoCanvas{position:fixed;inset:0;width:100vw;height:100vh;object-fit:cover;z-index:-3;pointer-events:none;opacity:.72}
.mc-star-tier,.mc-crown-tier,.mc-flame-tier,.mc-royal-tier{display:grid;place-items:center;width:54px;height:54px;border-radius:12px;font-size:32px;font-weight:900;transform:none;animation:clubIconShine 2.8s ease-in-out infinite;position:relative;overflow:hidden}.mc-star-tier{background:#d9d9d9;color:#fff;text-shadow:0 0 8px #fff}.mc-crown-tier{background:#c79222;color:#fff7b2}.mc-flame-tier{background:#8a3b12;color:#ffcf66}.mc-royal-tier{background:#5c3a9e;color:#fff}@keyframes clubIconShine{0%,100%{filter:brightness(1)}45%{filter:brightness(1.12)}60%{filter:brightness(1.5)}} .mc-star-tier:after,.mc-crown-tier:after,.mc-flame-tier:after,.mc-royal-tier:after{content:"";position:absolute;top:-20%;left:-65%;width:35%;height:140%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.9),transparent);transform:skewX(-18deg);animation:clubIconSweep 2.8s ease-in-out infinite}@keyframes clubIconSweep{0%,35%{left:-65%}70%,100%{left:140%}}

/* V35 polish: compact settings, square management tiles, true layout templates */
.admin-tools-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}
.admin-tool-tile{min-height:150px;aspect-ratio:1/1;padding:20px;border-radius:20px;align-content:center;text-align:center;justify-items:center}
.admin-tool-tile b{font-size:17px}.admin-tool-tile small{max-width:150px;line-height:1.7}
.settings-compact{gap:8px}.settings-section{border-radius:12px}.settings-section summary{padding:11px 13px;font-size:13px}.settings-section-body{padding:0 13px 13px}
.settings-color-grid{gap:8px}.theme-palette-editor{display:grid;grid-template-columns:1fr 1fr;gap:12px}.theme-palette-box{border:1px solid #ddd;border-radius:14px;padding:12px;background:color-mix(in srgb,var(--card) 92%,var(--soft));}.theme-palette-box h3{margin:0 0 10px;font-size:14px}
.settings-account-editor{max-width:100%}
@media(max-width:1100px){.admin-tools-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}}
@media(max-width:800px){.admin-tools-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.theme-palette-editor{grid-template-columns:1fr}}
@media(max-width:500px){.admin-tools-grid{grid-template-columns:1fr}.admin-tool-tile{aspect-ratio:auto;min-height:110px}}

/* Keep the user's chosen day/night palette while changing layout only. */
body[data-vortex-layout="cinema"] .hero{grid-template-columns:1fr;min-height:620px}.hero .hero-art{min-height:420px}
body[data-vortex-layout="command"] .topbar{border-radius:0 0 18px 18px}.admin-card,body[data-vortex-layout="command"] .card{border-radius:10px}
body[data-vortex-layout="magazine"] .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-grid .article-card:first-child{grid-column:span 2}
body[data-vortex-layout="arcade"] .wall-grid,body[data-vortex-layout="arcade"] .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wall-card,.product-card{transition:.22s}
body[data-vortex-layout="arcade"] .wall-card:hover,body[data-vortex-layout="arcade"] .product-card:hover{transform:translateY(-6px) rotate(-1deg)}
body[data-vortex-layout="showcase"] .wall-grid,body[data-vortex-layout="showcase"] .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wall-grid>*:first-child,.product-grid>*:first-child{grid-column:span 2}
body[data-vortex-layout="grid"] .wall-grid,body[data-vortex-layout="grid"] .product-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
body[data-vortex-layout="floating"] .wall-card,body[data-vortex-layout="floating"] .product-card,body[data-vortex-layout="floating"] .about-home-card{border-radius:28px;box-shadow:0 18px 45px #0002;margin:6px}
body[data-vortex-layout="terminal"] .topbar,body[data-vortex-layout="terminal"] .page-title,body[data-vortex-layout="terminal"] .section-head{border-bottom:2px solid var(--link);border-radius:0}
body[data-vortex-layout="terminal"] .card,body[data-vortex-layout="terminal"] .admin-card{border-radius:8px}
body[data-vortex-layout="cardstack"] .wall-card:nth-child(3n+1),body[data-vortex-layout="cardstack"] .product-card:nth-child(3n+1){transform:translateY(-8px)}
body[data-vortex-layout="cardstack"] .wall-card:nth-child(3n+2),body[data-vortex-layout="cardstack"] .product-card:nth-child(3n+2){transform:translateY(5px)}
body[data-vortex-layout="split"] .hero{grid-template-columns:1fr 1fr;min-height:600px}.about-vortex-card{border-radius:24px}
body[data-vortex-layout="poster"] .hero h1{font-size:clamp(3rem,8vw,7rem);line-height:.95}.hero{transition:.2s}
body[data-vortex-layout="dashboard"] .shop-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.section-head{padding:12px 0}
body[data-vortex-layout="pixel"] .card,body[data-vortex-layout="pixel"] button,body[data-vortex-layout="pixel"] input,body[data-vortex-layout="pixel"] select{border-radius:4px!important}.page-title,.section-head{border-radius:4px}
body[data-vortex-layout="vertical"] .page{max-width:980px}.wall-grid,.product-grid{gap:22px}
body[data-vortex-layout="zen"] .hero{box-shadow:none;border:0;background:transparent}.section-head{border-bottom:0}.wall-grid,.product-grid{gap:24px}
@media(max-width:900px){body[data-vortex-layout="grid"] .wall-grid,body[data-vortex-layout="grid"] .product-grid,body[data-vortex-layout="arcade"] .wall-grid,body[data-vortex-layout="arcade"] .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-vortex-layout="split"] .hero{grid-template-columns:1fr}}
@media(max-width:600px){body[data-vortex-layout="magazine"] .article-grid{grid-template-columns:1fr}body[data-vortex-layout="magazine"] .article-grid .article-card:first-child{grid-column:auto}body[data-vortex-layout="showcase"] .wall-grid,body[data-vortex-layout="showcase"] .product-grid{grid-template-columns:1fr}body[data-vortex-layout="showcase"] .wall-grid>*:first-child,body[data-vortex-layout="showcase"] .product-grid>*:first-child{grid-column:auto}}

/* Media upload previews stay visible immediately after a new upload. */
.media-preview img,.character-theme-slot img,.character-library-card img,.profile-admin-card img{background:transparent;display:block;max-width:100%;object-fit:contain}

/* V38 fixes */
body[data-vortex-layout="original"] .article-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
body[data-vortex-layout="original"] .article-grid .article-card:first-child{grid-column:auto!important}
body[data-vortex-layout="original"] .article-card img{height:170px!important}
.template-settings{max-height:520px;overflow:auto}
.template-settings .site-template-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.template-settings .site-template-preview{aspect-ratio:16/8}
.template-settings .site-template-card{padding:9px;gap:7px}
.template-settings .template-admin-actions{gap:5px}
.template-settings .template-admin-actions button{font-size:11px;padding:7px 8px}
.character-theme-top-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.character-theme-archived{opacity:.65;filter:saturate(.55)}
.club-admin-icon-preview{width:70px;height:70px;object-fit:contain;display:block;margin:8px auto;border-radius:12px;border:1px solid var(--link);background:var(--soft)}
.club-tier-icon{position:relative;overflow:hidden}
.club-tier-icon:after{content:"";position:absolute;top:-25%;left:-70%;width:38%;height:150%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.9),transparent);transform:skewX(-18deg);animation:clubIconSweep 3s ease-in-out infinite}
@media(max-width:1100px){.template-settings .site-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.template-settings .site-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.template-settings .site-template-grid{grid-template-columns:1fr}.character-theme-top-actions{justify-content:flex-start}}
.settings-section summary{min-height:54px;display:flex;align-items:center;gap:10px;cursor:pointer}
.settings-section summary span{font-size:15px;font-weight:950}
.settings-section summary small{font-size:11px;opacity:.62}

.club-custom-icon{width:100%;height:100%;object-fit:contain;display:block;position:relative;z-index:1}.club-tier-icon{transform:none!important;animation:none!important}.club-tier-icon:after{z-index:2;pointer-events:none}
/* Club icons: no rotation, only a light sweep across the icon. */
.mc-icon{animation:none!important;transform:none!important}

/* V39: reliable character placement editor + larger settings controls */
.character-placement-modal{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:20px;direction:rtl}
.character-placement-dialog{width:min(860px,96vw);max-height:92vh;overflow:auto;background:var(--card,#fff);color:var(--text,#111);border:1px solid var(--link,#d71920);border-radius:22px;padding:18px;box-shadow:0 25px 80px rgba(0,0,0,.4)}
.character-placement-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.character-placement-head b{font-size:20px}.character-placement-section{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.character-placement-section label{display:grid;gap:6px;font-weight:800}.character-placement-stage{height:480px;border:2px dashed var(--link,#d71920);border-radius:18px;position:relative;overflow:hidden;background:linear-gradient(135deg,#ececec,#d9d9d9);touch-action:none;cursor:grab;display:flex;align-items:center;justify-content:center}.character-placement-stage:active{cursor:grabbing}.character-placement-stage img{max-width:72%;max-height:88%;object-fit:contain;user-select:none;pointer-events:none;transform-origin:center center;filter:drop-shadow(0 18px 18px rgba(0,0,0,.2))}
.club-reward{margin-top:8px;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--soft) 80%,transparent);font-weight:800;font-size:12px}
/* Make the settings choices easy to hit with a mouse. */
.settings-section summary{min-height:82px!important;padding:14px 18px!important;border-radius:16px!important;font-size:15px!important}
.settings-section summary span{font-size:17px!important}.settings-section summary small{font-size:12px!important}.settings-compact{gap:14px!important}.settings-section{border-radius:18px!important;overflow:hidden}.settings-section-body{padding:16px!important}.settings-mini-grid label,.settings-about-grid label{min-height:58px}.settings-mini-grid input,.settings-mini-grid select,.settings-about-grid input,.settings-about-grid textarea{min-height:46px!important;font-size:14px!important}
@media(max-width:700px){.character-placement-section{grid-template-columns:1fr}.character-placement-stage{height:380px}.settings-section summary{min-height:72px!important}}
/* V40 character placement editor */
.character-placement-editor-v2{max-width:1100px!important;width:min(96vw,1100px)!important}
.placement-controls-grid{display:grid!important;grid-template-columns:1fr 1fr 1.3fr auto;gap:12px;align-items:end;margin-bottom:14px}
.placement-controls-grid label{display:flex;flex-direction:column;gap:7px;font-weight:700}
.placement-controls-grid select,.placement-controls-grid input{width:100%}
.character-placement-stage{position:relative!important;min-height:520px!important;height:min(68vh,680px)!important;overflow:hidden!important;border:2px dashed rgba(128,128,128,.45);border-radius:20px;background:linear-gradient(135deg,#f7f7f7,#e9e9e9);display:flex;align-items:center;justify-content:center;touch-action:none}
.character-placement-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.8%,rgba(128,128,128,.16) 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,rgba(128,128,128,.16) 50%,transparent 50.2%);}
.character-placement-stage #placementImage{position:absolute;max-width:72%;max-height:88%;object-fit:contain;cursor:grab;user-select:none;touch-action:none;z-index:2;transform-origin:center center}
.character-placement-stage #placementImage:active{cursor:grabbing}
.placement-page-label{position:absolute;top:12px;right:14px;z-index:3;padding:7px 12px;border-radius:999px;background:rgba(0,0,0,.7);color:#fff;font-size:12px;pointer-events:none}
@media(max-width:800px){.placement-controls-grid{grid-template-columns:1fr 1fr}.character-placement-stage{min-height:430px;height:62vh}}
@media(max-width:520px){.placement-controls-grid{grid-template-columns:1fr}.character-placement-stage{min-height:360px}}

/* ================= V42 QUALITY LAYER ================= */
:root{--v42-ease:cubic-bezier(.2,.8,.2,1)}
[data-character-section]{--cp-use-x:var(--cp-x,0px);--cp-use-y:var(--cp-y,0px);--cp-use-s:var(--cp-s,1);--cp-use-m:var(--cp-m,1);--cp-use-r:var(--cp-r,0deg);--cp-use-z:var(--cp-z,8);position:relative}
.v42-extra-character-layer{position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:10}
.v42-extra-character-layer img{position:absolute;left:50%;top:50%;max-width:min(42vw,520px);max-height:80vh;object-fit:contain;transform:translate(var(--ec-x,0px),var(--ec-y,0px)) scale(var(--ec-s,1)) scaleX(var(--ec-m,1)) rotate(var(--ec-r,0deg));transform-origin:center;pointer-events:none;transition:transform .18s var(--v42-ease)}
.placement-real-preview{position:relative;min-height:520px;max-height:68vh;overflow:auto;border:2px dashed var(--link);border-radius:22px;background:var(--soft);padding:14px;isolation:isolate}
.placement-real-preview>.page{display:block!important;position:relative!important;inset:auto!important;min-height:480px;overflow:visible!important;padding:12px!important;border-radius:18px;background:var(--bg)!important;transform:none!important}
.v42-placement-overlay-stage{position:absolute;inset:0;pointer-events:none;z-index:30;overflow:visible}
.v42-placement-overlay-stage img{position:absolute;left:50%;top:50%;max-width:min(42vw,520px);max-height:70%;object-fit:contain;pointer-events:auto;touch-action:none;cursor:grab;user-select:none;filter:drop-shadow(0 16px 28px #0003)}
.v42-placement-overlay-stage img:active{cursor:grabbing}
.character-placement-editor-v42{width:min(1180px,96vw)!important;max-width:none!important}
.v42-product-detail-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:26px;align-items:center}
.v42-product-detail-grid>img{width:100%;max-height:520px;object-fit:contain;border-radius:20px;background:var(--soft)}
.v42-product-detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.product-detail-btn{width:100%;margin-top:8px}
.v42-event-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 24px;padding:22px 26px;border:1px solid var(--link);border-radius:24px;background:linear-gradient(135deg,var(--card),var(--soft));box-shadow:var(--template-shadow);position:relative;overflow:hidden}
.v42-event-banner:after{content:"";position:absolute;inset:auto -10% -70% 20%;height:180px;background:radial-gradient(circle,var(--link),transparent 65%);opacity:.13;pointer-events:none}
.v42-event-banner h2{margin:5px 0}.v42-event-banner p{margin:0;opacity:.72}.v42-event-badge{border:1px solid var(--link);color:var(--link);padding:8px 12px;border-radius:999px;font-weight:900;white-space:nowrap}
.v42-achievement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v42-achievement{border:1px solid #ddd;border-radius:16px;padding:16px;display:flex;gap:10px;align-items:center;background:var(--card)}.v42-achievement.locked{opacity:.48;filter:saturate(.4)}.v42-achievement.unlocked{border-color:var(--link);box-shadow:0 8px 22px #0001}.v42-achievement b{font-size:20px}
.v42-mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v42-mission{border:1px solid #ddd;border-radius:18px;padding:16px;background:var(--card);display:grid;gap:9px}.v42-mission.done{border-color:var(--link)}.v42-mission p{margin:6px 0;opacity:.7}.v42-progress{height:8px;background:#0001;border-radius:999px;overflow:hidden}.v42-progress span{display:block;height:100%;background:var(--link);border-radius:999px}.v42-claimed{color:var(--link);font-weight:900}
.v42-notif-mini{display:grid;gap:8px}.v42-notif-mini>div{padding:12px;border-radius:14px;background:var(--soft);display:flex;justify-content:space-between;gap:12px}.v42-notif-mini span{opacity:.7}.v42-search-group{margin:0 0 28px}.v42-search-character{display:flex;justify-content:space-between;align-items:center;padding:14px;border:1px solid #ddd;border-radius:14px;background:var(--card);margin-bottom:8px}
.v42-event-admin-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid #ddd;border-radius:14px;margin-top:8px}.v42-event-admin-row>div{display:grid;gap:3px}.v42-event-admin-row small{opacity:.65}
body.theme-night .v42-achievement,body.theme-night .v42-mission,body.theme-night .v42-search-character,body.theme-night .v42-event-admin-row{border-color:#344454}
.reduce-motion *, .reduce-motion *::before, .reduce-motion *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
.password-field{position:relative;display:block;width:100%}.password-field input{width:100%;padding-inline-end:48px}.password-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:inherit;cursor:pointer;padding:7px;border-radius:8px}.password-eye:hover,.password-eye.active{background:var(--soft)}
@media(max-width:760px){
  [data-character-section]{--cp-use-x:var(--cp-mx,0px);--cp-use-y:var(--cp-my,0px);--cp-use-s:var(--cp-ms,1);--cp-use-m:var(--cp-mm,1);--cp-use-r:var(--cp-mr,0deg);--cp-use-z:var(--cp-mz,8)}
  .v42-extra-character-layer img{max-width:70vw;max-height:55vh;transform:translate(var(--ec-mx,0px),var(--ec-my,0px)) scale(var(--ec-ms,1)) scaleX(var(--ec-mm,1)) rotate(var(--ec-mr,0deg))}
  .v42-placement-overlay-stage img{max-width:68vw;max-height:55%}
  .v42-product-detail-grid{grid-template-columns:1fr}.v42-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v42-mission-grid{grid-template-columns:1fr}.v42-event-banner{align-items:flex-start;flex-direction:column}.v42-notif-mini>div{display:grid}.placement-real-preview{min-height:420px}
}
@media(max-width:430px){.v42-achievement-grid{grid-template-columns:1fr}.v42-event-banner{padding:17px}.character-placement-editor-v42{width:98vw!important}.placement-controls-grid{grid-template-columns:1fr!important}}

/* ================= VORTEX ZONE V43 ================= */
.v43-reduce-motion *, .reduce-motion *{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
.v43-character-stack{position:relative;display:inline-block;vertical-align:middle;width:max-content;height:max-content;transform-origin:center center;pointer-events:none;isolation:isolate}
.v43-character-stack img{position:absolute;inset:0;display:block;max-width:none;width:100%;height:100%;object-fit:contain;pointer-events:none}
.v43-character-stack .v43-character-back{z-index:1}.v43-character-stack .v43-character-card-slot{position:absolute;inset:22% 14% 12%;z-index:5;border-radius:18px;pointer-events:none}.v43-character-stack .v43-character-front{z-index:8}
.v43-live-character{position:relative;min-width:80px;min-height:120px;line-height:0}
.v43-live-character .v43-character-back,.v43-live-character .v43-character-front{width:100%;height:100%}
.v43-home-priority,.v43-home-block,.v43-loyalty,.v43-achievements,.v43-missions,.v43-notifications{margin:28px 0;padding:24px;border:1px solid color-mix(in srgb,var(--border,#d71920) 18%,transparent);border-radius:var(--template-radius,22px);background:color-mix(in srgb,var(--card,#fff) 94%,transparent);box-shadow:var(--template-shadow,0 14px 38px rgba(0,0,0,.08))}
.v43-home-priority{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--template-hero,linear-gradient(135deg,#fff,#fff0f1))}.v43-home-priority h2,.v43-page-hero h1{margin:5px 0 10px}.v43-home-actions{display:flex;gap:10px;flex-wrap:wrap}.v43-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.v43-section-head h3{margin:0}.v43-section-head p{margin:5px 0 0;opacity:.72}
.v43-product-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.v43-product-mini{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid rgba(127,127,127,.16);border-radius:16px}.v43-product-mini img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:12px}.v43-product-mini span{font-weight:800}.v43-product-mini button{align-self:flex-start}
.v43-xpbar,.v43-progress{height:10px;border-radius:999px;background:rgba(127,127,127,.16);overflow:hidden}.v43-xpbar span,.v43-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--link,#d71920),var(--neon,#00b7ff))}.v43-levels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:14px}.v43-level{padding:12px;border:1px solid rgba(127,127,127,.14);border-radius:14px;opacity:.58}.v43-level.unlocked{opacity:1;border-color:var(--link,#d71920)}.v43-level b,.v43-level small,.v43-level span{display:block}.v43-level small,.v43-level span{margin-top:4px;opacity:.75;font-size:.78rem}
.v43-achievement-grid,.v43-mission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v43-achievement,.v43-mission{padding:15px;border:1px solid rgba(127,127,127,.16);border-radius:16px}.v43-achievement{opacity:.56}.v43-achievement.unlocked{opacity:1;border-color:var(--link,#d71920)}.v43-achievement p,.v43-mission p{margin:7px 0;opacity:.72}.v43-achievement small,.v43-mission small{display:block;margin:9px 0}.v43-mission.done{border-color:#2eaa67}.v43-mission-top{display:flex;justify-content:space-between;gap:8px}.v43-mission-top span{font-size:.7rem;opacity:.65}.v43-mission i{font-style:normal;color:#2eaa67;font-weight:800}
.v43-notification-list{display:grid;gap:8px}.v43-notice{display:flex;gap:12px;padding:12px;border-radius:14px;background:rgba(127,127,127,.07)}.v43-notice.unread{border-inline-start:4px solid var(--link,#d71920);background:color-mix(in srgb,var(--link,#d71920) 5%,transparent)}.v43-notice>span{font-size:1.35rem}.v43-notice p{margin:4px 0;opacity:.72}.v43-notice small{opacity:.55}.v43-empty{padding:30px;text-align:center;opacity:.7;border:1px dashed rgba(127,127,127,.25);border-radius:16px}
.v43-page-hero{padding:36px 0 22px}.v43-featured-events{margin-bottom:18px}.v43-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.v43-event-card{overflow:hidden;border:1px solid rgba(127,127,127,.16);border-radius:22px;background:var(--card,#fff)}.v43-event-banner{min-height:145px;padding:16px;background:linear-gradient(135deg,var(--soft,#f5f5f5),var(--card,#fff));background-size:cover;background-position:center;display:flex;align-items:flex-start;justify-content:flex-start}.v43-event-banner span{padding:7px 10px;border-radius:999px;background:rgba(0,0,0,.7);color:#fff;font-size:.72rem}.v43-event-body{padding:18px}.v43-event-body h3{margin:4px 0}.v43-event-body p{opacity:.72}.v43-event-stats{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.v43-event-stats span{padding:7px 9px;border-radius:10px;background:rgba(127,127,127,.08);font-size:.82rem}.v43-event-body .primary-btn{margin-top:12px}.v43-event-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.v43-event-detail-grid>div{padding:14px;border-radius:14px;background:rgba(127,127,127,.07)}
.v43-modal{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.62);display:flex;align-items:center;justify-content:center;padding:16px}.v43-modal-card{position:relative;max-width:980px;width:min(100%,980px);max-height:90vh;overflow:auto;background:var(--card,#fff);color:var(--text,#111);border-radius:24px;padding:26px;box-shadow:0 28px 90px rgba(0,0,0,.3)}.v43-product-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.v43-product-detail-grid>div:first-child img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px}.v43-price-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0}.v43-price-row strong{font-size:1.6rem}.v43-price-row span{padding:5px 8px;border-radius:8px;background:var(--link,#d71920);color:#fff}.v43-product-meta{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.v43-product-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.v43-related{margin-top:26px}.v43-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.v43-related-grid button{border:1px solid rgba(127,127,127,.14);background:transparent;color:inherit;padding:8px;border-radius:14px;text-align:start}.v43-related-grid img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:10px}.v43-related-grid b{display:block;margin-top:5px}
.v43-search-panel{position:absolute;inset-inline:0;top:calc(100% + 7px);z-index:5000;display:none;max-height:420px;overflow:auto;padding:10px;border:1px solid rgba(127,127,127,.2);border-radius:16px;background:var(--card,#fff);box-shadow:0 20px 60px rgba(0,0,0,.16)}.v43-search-panel.open{display:block}.v43-search-group{padding:8px}.v43-search-group>b{display:block;font-size:.72rem;opacity:.6;margin-bottom:5px}.v43-search-group button{display:block;width:100%;border:0;background:transparent;color:inherit;text-align:start;padding:8px;border-radius:9px}.v43-search-group button:hover{background:rgba(127,127,127,.08)}.v43-search-empty{padding:20px;text-align:center;opacity:.7}.v43-search-results{margin-bottom:25px}.v43-search-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v43-search-result-character{padding:12px;border:1px solid rgba(127,127,127,.16);border-radius:16px}.v43-search-result-character img{width:100%;height:220px;object-fit:contain;background:rgba(127,127,127,.06);border-radius:12px}.v43-search-result-character b,.v43-search-result-character small{display:block;margin-top:6px}mark{background:color-mix(in srgb,var(--link,#d71920) 25%,transparent);color:inherit;border-radius:3px}
.v43-admin-shell{margin-top:24px;padding:22px;border:1px solid rgba(127,127,127,.16);border-radius:22px;background:var(--card,#fff)}.v43-admin-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.v43-admin-tabs{display:flex;gap:6px;flex-wrap:wrap}.v43-admin-tabs button{border:1px solid rgba(127,127,127,.18);background:transparent;color:inherit;padding:9px 12px;border-radius:10px}.v43-admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.v43-admin-metrics>div{padding:18px;border-radius:16px;background:rgba(127,127,127,.07)}.v43-admin-metrics b,.v43-admin-metrics span{display:block}.v43-admin-metrics b{font-size:1.5rem}.v43-admin-note{margin-top:15px;padding:14px;border-radius:14px;background:rgba(127,127,127,.07)}.v43-admin-card{margin-top:15px}.v43-placement-list,.v43-admin-list{display:grid;gap:9px;margin-top:14px}.v43-placement-list>div,.v43-admin-list>div{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(127,127,127,.13);border-radius:12px}.v43-placement-list img{width:50px;height:60px;object-fit:contain}.v43-admin-list>div>div{flex:1}.v43-admin-list small{display:block;opacity:.65}.v43-form{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.v43-form textarea{grid-column:1/-1;min-height:90px}
.v43-notif-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(127,127,127,.14);margin-bottom:10px}
@media(max-width:900px){.v43-product-mini-grid{grid-template-columns:repeat(2,1fr)}.v43-levels{grid-template-columns:repeat(3,1fr)}.v43-achievement-grid,.v43-mission-grid{grid-template-columns:repeat(2,1fr)}.v43-event-grid,.v43-search-results-grid{grid-template-columns:1fr}.v43-admin-head{flex-direction:column}.v43-product-detail-grid{grid-template-columns:1fr}.v43-product-detail-grid>div:first-child img{max-height:420px;object-fit:contain}.v43-related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.v43-home-priority{display:block}.v43-home-actions{margin-top:15px}.v43-home-priority,.v43-home-block,.v43-loyalty,.v43-achievements,.v43-missions,.v43-notifications{padding:16px;margin:18px 0}.v43-product-mini-grid{grid-template-columns:1fr 1fr;gap:8px}.v43-levels{grid-template-columns:repeat(2,1fr)}.v43-achievement-grid,.v43-mission-grid{grid-template-columns:1fr}.v43-event-card{border-radius:16px}.v43-event-banner{min-height:110px}.v43-event-detail-grid{grid-template-columns:1fr}.v43-form{grid-template-columns:1fr}.v43-form textarea{grid-column:auto}.v43-admin-metrics{grid-template-columns:1fr 1fr}.v43-modal{padding:8px}.v43-modal-card{padding:18px;border-radius:18px;max-height:94vh}.v43-product-detail-grid>div:first-child img{max-height:300px}.v43-search-panel{position:fixed;top:74px;inset-inline:10px}.v43-character-stack{max-width:100%;height:auto}.v43-live-character{max-width:70vw}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}}
.v43-extra-layer{position:absolute;inset:0;z-index:30;pointer-events:none;display:block}.v43-extra-layer .v43-character-stack{position:absolute;left:0;top:0}.page{position:relative}
.v43-placement-context{position:relative;min-height:360px;margin:18px 0;padding:16px;overflow:hidden;border:1px solid rgba(127,127,127,.18);border-radius:18px;background:var(--soft,#f5f5f5)}.v43-preview-label{font-size:.75rem;opacity:.55;margin-bottom:8px}.v43-preview-page-clone{max-height:420px;overflow:hidden;pointer-events:none;opacity:.45}.v43-studio-character{position:absolute;left:35%;top:20%;z-index:20;pointer-events:none}.v43-studio-character .v43-character-stack{position:relative}.v43-check{display:flex;align-items:center;gap:8px}
.v43-extra-layer .v43-character-stack{width:min(320px,42vw);height:min(420px,55vw)}
/* V43 requested refinement styles */
.season-theme-active{--season-bg:var(--v43-season-bg);--season-card:var(--v43-season-card);--season-text:var(--v43-season-text);--season-link:var(--v43-season-link)}
.season-theme-active body{background:var(--season-bg);color:var(--season-text)}
/* V43 production mobile hardening */
html,body{max-width:100%;overflow-x:hidden}
img,video,canvas,iframe{max-width:100%}
button,input,select,textarea{max-width:100%;box-sizing:border-box}
@media (max-width:768px){
  .drawer,.modal-box,.admin-main,.admin-card{max-width:100vw;box-sizing:border-box}
  .drawer{width:min(94vw,420px)}
  .modal-box{width:min(94vw,760px);padding:16px}
  .admin-layout{grid-template-columns:1fr!important}
  .admin-sidebar{position:static!important;display:flex;overflow-x:auto;gap:6px;white-space:nowrap}
  .admin-nav-btn{flex:0 0 auto}
  .settings-mini-grid,.settings-color-grid,.builder-grid,.admin-grid{grid-template-columns:1fr!important}
  .product-gallery-main img{height:190px}
  .glb-viewer{min-height:360px}
  .glb-viewer model-viewer{height:360px!important}
  .club-tiers{grid-template-columns:1fr!important}
  .club-tier{min-width:0}
  .account-mini-grid{grid-template-columns:1fr 1fr}
  .request-player-card{min-height:280px}
  .request-player-card-video,.request-player-card-bg{max-width:none!important}
}
@media (max-width:430px){
  .account-mini-grid{grid-template-columns:1fr}
  .product-actions,.article-actions,.settings-save-row{flex-direction:column;align-items:stretch}
  .product-actions button,.article-actions button,.settings-save-row button{width:100%}
  .path-dots{max-height:72px}
}
/* V44.1 — character display polish */
.character-3d-wrap,.character-hero,.ai-character-side,.auth-character-side,.search-miss-character{min-height:260px}
.character-3d-wrap img,.character-hero img,.ai-character-side img,.auth-character-side img{max-height:min(52vh,560px)!important;width:auto!important;max-width:min(46vw,430px)!important;object-fit:contain!important}
.character-3d,.character-wave{width:min(42vw,400px)!important;min-height:300px!important;max-height:560px!important}
.admin-character-card img{width:120px!important;height:150px!important;object-fit:contain!important}
@media(max-width:700px){.character-3d-wrap,.character-hero,.ai-character-side,.auth-character-side,.search-miss-character{min-height:210px}.character-3d-wrap img,.character-hero img,.ai-character-side img,.auth-character-side img{max-height:360px!important;max-width:78vw!important}.character-3d,.character-wave{width:min(78vw,330px)!important;min-height:230px!important;max-height:400px!important}}

/* V47 settings redesign */
.v47-square-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:14px 0}
.v47-square-grid .admin-tool-tile,.v47-setting-card{min-height:150px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;border:1px solid var(--link);border-radius:18px;padding:18px;background:var(--card);color:var(--text);box-shadow:0 8px 24px #0001}
.v47-setting-card input:not([type=checkbox]):not([type=radio]){width:100%}
.v47-setting-card img{width:100%;height:150px;object-fit:contain;border-radius:12px;background:var(--soft)}
.v47-season-tile.selected{outline:3px solid var(--link);box-shadow:0 0 25px color-mix(in srgb,var(--link) 28%,transparent)}
.v47-color-dots{display:flex;gap:8px}.v47-color-dots i{width:24px;height:24px;border-radius:50%;border:1px solid #0002}
.v47-menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:15px 0}
.v47-migrated-inline{margin-top:18px}
@media(max-width:700px){.v47-square-grid{grid-template-columns:1fr 1fr}.notification-panel{right:12px;left:auto;width:min(360px,calc(100vw - 24px))}}
