html,body{background:#1a0a0f;overflow:hidden;cursor:none;}
*{cursor:none!important;}
/* Scrollbar theming */
::-webkit-scrollbar{width:8px;height:8px;}
::-webkit-scrollbar-track{background:#1a0a0f;border-radius:4px;}
::-webkit-scrollbar-thumb{background:#5a2040;border-radius:4px;border:1px solid #3a1525;}
::-webkit-scrollbar-thumb:hover{background:#8a3060;}
::-webkit-scrollbar-corner{background:#1a0a0f;}
*{scrollbar-width:thin;scrollbar-color:#5a2040 #1a0a0f;}
#global-cursor{position:fixed;pointer-events:none;z-index:99999;font-size:28px;line-height:1;transform:translate(-4px,-4px);top:0;left:0;}
*{box-sizing:border-box;margin:0;padding:0;}
#root{width:100%;min-height:100vh;display:flex;flex-direction:column;background:#1a0a0f;color:#f0e0e8;font-family:var(--font-sans);position:relative;}
#banner{width:100%;background:#2a0f1a;border-bottom:1px solid #5a2040;padding:0 20px;height:58px;display:flex;align-items:center;gap:10px;flex-shrink:0;overflow:hidden;}
#banner-left{display:flex;align-items:center;gap:6px;flex:1;min-width:0;}
.b-title{font-size:15px;font-weight:700;color:#f0c0d0;white-space:nowrap;margin-right:4px;}
.b-currency{display:flex;align-items:center;gap:4px;background:#3a1525;border:0.5px solid #6a3050;border-radius:20px;padding:3px 10px;white-space:nowrap;}
.b-currency span:first-child{font-size:14px;}
.b-val{font-size:12px;font-weight:700;color:#f0d0dc;}
.b-lbl{font-size:10px;font-weight:700;color:#c090a8;margin-left:1px;}
#banner-right{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.b-btn{background:#4a1a30;border:0.5px solid #8a3060;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;color:#f0c0d0;cursor:pointer;white-space:nowrap;transition:background 0.15s;}
.b-btn:hover{background:#6a2545;}
.b-btn.vip{background:#3a1560;border-color:#7a50c0;color:#d0b0f0;}
.b-btn.vip:hover{background:#5a25a0;}
.b-btn.vip.active-vip{background:#5a30a0;border-color:#c0a0ff;color:#f0e0ff;}
.b-btn.vip{box-shadow:0 0 12px 3px rgba(120,80,200,0.6),0 0 24px 6px rgba(120,80,200,0.3);}
.b-btn.shop-btn{background:#5a4010;border-color:#c0a030;color:#ffe080;box-shadow:0 0 10px 2px rgba(200,160,40,0.5),0 0 20px 5px rgba(200,160,40,0.25);}
.b-btn.shop-btn:hover{background:#7a5518;}
.b-btn.convert-btn{background:#102a5a;border-color:#3060c0;color:#90c0ff;}
.b-btn.convert-btn:hover{background:#1a3a7a;}
.b-btn.convert-btn{margin-right:50px;}
.b-btn{position:relative;}
.notif-dot{position:absolute;top:-3px;right:-3px;width:8px;height:8px;background:#ff2020;border-radius:50%;animation:pulseDot 1.2s ease-in-out infinite;pointer-events:none;}
@keyframes pulseDot{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 3px 1px rgba(255,32,32,0.4),0 0 6px 2px rgba(255,32,32,0.2);}50%{opacity:0.8;transform:scale(1.4);box-shadow:0 0 5px 2px rgba(255,32,32,0.7),0 0 10px 4px rgba(255,60,60,0.35);}}
#main{display:flex;flex:1;min-height:0;}
#left-col{width:33.33%;border-right:1px solid #3a1525;display:flex;flex-direction:column;align-items:center;background:#1f0d14;position:relative;overflow:hidden;}
#prestige-bar-wrap{width:100%;height:12px;background:#2a1020;flex-shrink:0;}
#prestige-bar-fill{height:100%;background:linear-gradient(to right,#8040c0,#e060c0);width:0%;transition:width 0.4s ease;border-radius:0 3px 3px 0;}
#prestige-info{width:100%;padding:6px 14px 0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;position:relative;z-index:51;}
#prestige-label{font-size:17px;font-weight:500;color:#c090a8;cursor:pointer;transition:color 0.15s;}
#prestige-label:hover{color:#f0c0d0;}
#left-game-wrap{flex:1;display:flex;flex-direction:column;align-items:center;padding:16px 0 8px;}
#game-area{position:relative;width:220px;height:680px;user-select:none;touch-action:none;cursor:none;flex-shrink:0;overflow:visible;}
#cylinder-wrap{position:absolute;left:50%;transform:translateX(-50%);top:330px;width:80px;height:340px;z-index:2;}
#cylinder{position:absolute;inset:0;border-radius:40px;border:2px solid #c080a8;transition:background 0.08s ease,border-color 0.08s ease;}
#cylinder-shine{position:absolute;left:12px;top:20px;width:18px;height:80%;border-radius:10px;background:rgba(255,255,255,0.25);pointer-events:none;}
#tip{position:absolute;left:50%;transform:translateX(-50%);width:48px;height:28px;top:326px;border-radius:24px 24px 0 0;border:2px solid #b07898;border-bottom:none;transition:background 0.08s ease,border-color 0.08s ease;z-index:2;}
#hit-zone{position:absolute;left:50%;transform:translateX(-50%);width:84px;top:320px;height:360px;z-index:8;cursor:none;}
#start-zone{position:absolute;left:50%;transform:translateX(-50%);width:84px;height:70px;border-radius:0 0 40px 40px;border:2px dashed rgba(220,80,120,0.4);border-top:none;top:600px;z-index:2;}
#kiwi-wrap{position:absolute;left:50%;transform:translateX(-50%);top:578px;display:flex;gap:4px;align-items:flex-end;justify-content:center;pointer-events:none;user-select:none;z-index:1;}
#kiwi-left,#kiwi-right{width:114px;height:114px;display:block;flex-shrink:0;}
#hand-cursor{position:absolute;pointer-events:none;transform:translate(-50%,-50%) rotate(-90deg);display:none;font-size:135px;line-height:1;z-index:10;transition:font-size 0.08s,filter 0.08s;}
#hand-cursor.gripping{font-size:115px;filter:brightness(0.82) saturate(1.5);}
#ghost-hand{position:absolute;pointer-events:none;transform:translate(-50%,-50%) rotate(-90deg);font-size:135px;line-height:1;z-index:9;opacity:0;}
#droplets-canvas{position:absolute;top:0;left:0;pointer-events:none;z-index:50;}
#cosmetics-btn-wrap{position:absolute;top:15px;right:10px;z-index:55;display:flex;gap:6px;}
#cosmetics-btn,#themes-btn{background:#2a1040;border:0.5px solid #7040c0;border-radius:12px;padding:7px 20px;font-size:15.8px;font-weight:500;color:#c0a0f0;cursor:pointer;transition:background 0.15s;box-shadow:0 0 12px 3px rgba(112,64,192,0.5),0 0 24px 6px rgba(112,64,192,0.25);}
#cosmetics-btn:hover,#themes-btn:hover{background:#4020a0;}
#left-stats{text-align:center;margin-top:42px;}
#droplet-count-wrap{display:flex;align-items:baseline;justify-content:center;gap:6px;}
#droplet-count{font-size:41.6px;font-weight:700;color:#f0c0d0;}
#droplet-label{font-size:16px;font-weight:700;color:#a07088;}
#dps-display{font-size:15.6px;font-weight:700;color:#c090a8;margin-top:4px;}
#msg{font-size:14.3px;color:#a07088;margin-top:3px;min-height:15px;}
#ghost-timer{font-size:13px;color:#8060a0;margin-top:3px;min-height:13px;}
#mid-col{width:33.33%;border-right:1px solid #3a1525;display:flex;flex-direction:column;background:#180b11;overflow:hidden;min-height:0;}
#bookshelf{flex:1 1 0;display:flex;flex-direction:column;padding:6px;min-height:0;overflow-y:auto;}
.shelf-row{flex:0 0 auto;border-bottom:6px solid #3d1a28;background:linear-gradient(to bottom,#2a1018,#221016);padding:5px 8px 2px;position:relative;min-height:50px;display:flex;flex-direction:column;}
.shelf-label{font-size:13px;color:#7a4060;font-weight:500;margin-bottom:3px;letter-spacing:0.04em;}
.shelf-items{display:flex;flex-wrap:wrap;gap:2px;align-content:flex-start;flex:1;}
.shelf-item{font-size:18.2px;line-height:1;}
.shelf-wood{position:absolute;bottom:-6px;left:0;right:0;height:6px;background:#5a2535;}
#right-col{width:33.33%;display:flex;flex-direction:column;background:#1a0c12;overflow:hidden;min-height:0;}
#shop-header{padding:12px 16px 9px 36px;border-bottom:1px solid #2a1020;font-size:22px;font-weight:500;color:#c090a8;letter-spacing:0.05em;flex-shrink:0;}
#upgrades-list{padding:8px;display:flex;flex-direction:column;gap:6px;flex:1 1 0;min-height:0;overflow-y:auto;}
#perk-section{position:fixed;bottom:0;right:0;width:33.33%;background:#1a0c12;border-top:1px solid #2a1020;z-index:100;}
.upg-card{background:#241018;border:0.5px solid #4a2035;border-radius:10px;padding:10px 12px;display:flex;gap:10px;align-items:center;transition:background 0.15s,border-color 0.15s;position:relative;}
.upg-card.affordable{border-color:#c060a0;background:#2e1220;}
.upg-card.ghost-card{border-color:#6040a0;}
.upg-card.ghost-card.affordable{border-color:#a080e0;background:#1e1030;}
.upg-card.hidden-card{background:#1a0c14;border-color:#2a1025;position:relative;overflow:hidden;min-height:72px;}
.hidden-blur{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;font-size:22px;letter-spacing:4px;filter:blur(4px);opacity:0.5;pointer-events:none;}
.hidden-lock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:28px;z-index:2;}
.upg-stack{position:absolute;top:8px;right:10px;font-size:13px;color:#6a4060;}
.upg-icon{font-size:31px;flex-shrink:0;width:38px;text-align:center;}
.upg-info{flex:1;min-width:0;padding-right:44px;}
.upg-name{font-size:15.6px;font-weight:500;color:#f0c0d0;}
.upg-desc{font-size:13px;color:#a07088;margin-top:2px;}
.upg-owned{font-size:13px;color:#c090a8;margin-top:2px;}
.upg-bottom-row{display:flex;align-items:center;gap:8px;margin-top:5px;justify-content:flex-end;}
.upg-cost-row{display:flex;align-items:center;gap:4px;}
.upg-cost{font-size:14.3px;font-weight:500;color:#e060a0;}
.upg-buy-btn{border-radius:6px;padding:7px 15.4px;font-size:15.4px;font-weight:500;cursor:pointer;transition:all 0.15s;flex-shrink:0;border:none;min-width:64px;}
.upg-buy-btn.can-buy{background:linear-gradient(135deg,#8020d0,#c040e0,#a030c0);color:#fff;box-shadow:0 0 8px rgba(160,60,220,0.5);}
.upg-buy-btn.can-buy:hover{background:linear-gradient(135deg,#a030e0,#d050f0,#b040d0);}
.upg-buy-btn.cannot-buy{background:#3a0f25;border:0.5px solid #6a3050;color:#c090a8;opacity:0.5;cursor:not-allowed;}
.upg-buy-btn.ghost-can{background:linear-gradient(135deg,#4010a0,#8040d0,#6020b0);color:#f0e0ff;box-shadow:0 0 8px rgba(100,50,200,0.5);}
.upg-buy-btn.ghost-can:hover{background:linear-gradient(135deg,#5520c0,#9050e0,#7030c0);}
@keyframes popIn{from{transform:scale(0) rotate(-20deg);opacity:0;}to{transform:scale(1) rotate(0);opacity:1;}}
@keyframes fadeInScale{from{transform:scale(0.85);opacity:0;}to{transform:scale(1);opacity:1;}}
@keyframes rainbowPulse{0%{border-color:#ff0080;box-shadow:0 0 18px 4px rgba(255,0,128,0.7);}14%{border-color:#ff6600;box-shadow:0 0 18px 4px rgba(255,102,0,0.7);}28%{border-color:#ffee00;box-shadow:0 0 18px 4px rgba(255,238,0,0.7);}42%{border-color:#00dd00;box-shadow:0 0 18px 4px rgba(0,221,0,0.7);}57%{border-color:#0088ff;box-shadow:0 0 18px 4px rgba(0,136,255,0.7);}71%{border-color:#8800ff;box-shadow:0 0 18px 4px rgba(136,0,255,0.7);}85%{border-color:#ff00cc;box-shadow:0 0 18px 4px rgba(255,0,204,0.7);}100%{border-color:#ff0080;box-shadow:0 0 18px 4px rgba(255,0,128,0.7);}}
@keyframes etherealKiwi{0%{filter:hue-rotate(0deg) saturate(2.5) brightness(1.2) contrast(1.1);}25%{filter:hue-rotate(90deg) saturate(2.5) brightness(1.3) contrast(1.1);}50%{filter:hue-rotate(180deg) saturate(2.5) brightness(1.2) contrast(1.1);}75%{filter:hue-rotate(270deg) saturate(2.5) brightness(1.3) contrast(1.1);}100%{filter:hue-rotate(360deg) saturate(2.5) brightness(1.2) contrast(1.1);}}
.kiwi-ethereal{animation:etherealKiwi 3s linear infinite !important;}
@keyframes goldPulse{0%{box-shadow:0 0 0 3px rgba(255,210,50,0);border-color:#6a3060;}40%{box-shadow:0 0 0 5px rgba(255,210,50,0.9);border-color:#ffd032;}100%{box-shadow:0 0 0 3px rgba(255,210,50,0);border-color:#6a3060;}}
@keyframes goldPulseLoop{0%{box-shadow:0 0 0 3px rgba(255,210,50,0);border-color:#6a3060;}40%{box-shadow:0 0 0 6px rgba(255,210,50,0.95);border-color:#ffd032;}100%{box-shadow:0 0 0 3px rgba(255,210,50,0);border-color:#6a3060;}}
@keyframes milestoneFloat{0%{opacity:0;transform:translate(-50%,0);}15%{opacity:1;}70%{opacity:1;}100%{opacity:0;transform:translate(-50%,-120px);}}
.milestone-toast{position:absolute;left:50%;top:280px;z-index:100;font-size:26px;font-weight:700;color:#ffd700;text-shadow:0 0 12px rgba(255,215,0,0.8),0 0 24px rgba(255,180,0,0.5);pointer-events:none;white-space:nowrap;animation:milestoneFloat 2s ease-out forwards;}
/* ── Streak system ── */
#streak-wrap{margin-top:4px;text-align:center;}
#streak-msg{font-size:18px;font-weight:700;color:#ff80c0;text-shadow:0 0 8px rgba(255,128,192,0.7);min-height:22px;}
#streak-bar-bg{width:140px;height:6px;background:#2a1020;border-radius:3px;margin:3px auto 0;overflow:hidden;}
#streak-bar-fill{height:100%;width:100%;background:linear-gradient(to right,#e060c0,#ff80d0);border-radius:3px;transition:none;}
@keyframes streakPulse{0%{transform:scale(1);}50%{transform:scale(1.15);}100%{transform:scale(1);}}
.streak-pulse{animation:streakPulse 0.3s ease-out;}
/* ── Torsion event ── */
@keyframes torsionPulse{0%{filter:hue-rotate(0deg) saturate(1) brightness(1);}50%{filter:hue-rotate(-30deg) saturate(2.5) brightness(1.3) drop-shadow(0 0 12px rgba(255,0,0,0.8));}100%{filter:hue-rotate(0deg) saturate(1) brightness(1);}}
.torsion-pulse{animation:torsionPulse 0.8s ease-in-out infinite!important;}
.torsion-toast{position:absolute;left:50%;top:280px;z-index:100;font-size:28px;font-weight:700;color:#ff2020;text-shadow:0 0 12px rgba(255,0,0,0.8),0 0 24px rgba(255,0,0,0.5);pointer-events:none;white-space:nowrap;animation:milestoneFloat 2s ease-out forwards;}
@keyframes arrowFlash{0%{opacity:1;}50%{opacity:0.2;}100%{opacity:1;}}
.torsion-arrow{position:absolute;z-index:101;font-size:52px;font-weight:900;color:#ff2020;text-shadow:0 0 10px rgba(255,0,0,0.7);pointer-events:none;animation:arrowFlash 0.6s ease-in-out infinite;}
.torsion-arrow-left{left:68px;top:540px;}
.torsion-arrow-right{right:68px;top:540px;}
.overlay{position:absolute;inset:0;background:rgba(0,0,0,0.82);display:flex;align-items:center;justify-content:center;z-index:200;}
.modal-box{background:#2a1020;border:1px solid #6a3050;border-radius:14px;padding:24px 28px;min-width:300px;max-width:440px;text-align:center;animation:fadeInScale 0.25s ease;}
.modal-box.rainbow{border-width:3px;animation:fadeInScale 0.25s ease,rainbowPulse 1.4s linear infinite;}
.modal-title{font-size:17px;font-weight:500;color:#f0c0d0;margin-bottom:10px;}
.modal-btn{background:#4a1a30;border:0.5px solid #8a3060;border-radius:8px;padding:7px 20px;font-size:13px;font-weight:500;color:#f0c0d0;cursor:pointer;transition:background 0.15s;}
.modal-btn:hover{background:#6a2545;}
.modal-body{font-size:13px;color:#a07088;margin-bottom:18px;line-height:1.7;white-space:pre-line;}
.modal-close{background:#5a1535;border:0.5px solid #c060a0;border-radius:6px;padding:7px 22px;font-size:12px;color:#f0c0d0;cursor:pointer;}
.modal-close:hover{background:#8a2055;}
.big-reward{font-size:44px;margin:10px 0;}
.vip-modal{background:#1a0d30;border:1.5px solid #9060e0;border-radius:16px;min-width:360px;max-width:460px;overflow:hidden;animation:fadeInScale 0.25s ease;}
.vip-header{background:#2a1050;padding:18px 22px 14px;text-align:center;border-bottom:1px solid #4a2580;}
.vip-crown{font-size:38px;margin-bottom:6px;}
.vip-header h2{font-size:19px;font-weight:500;color:#e0c8ff;margin-bottom:3px;}
.vip-header p{font-size:12px;color:#9070c0;}
.vip-perks{padding:10px 16px;display:flex;flex-direction:column;gap:6px;}
.vip-perk{display:flex;align-items:center;gap:7px;background:#2a1545;border-radius:7px;padding:6px 8px;border:0.5px solid #5a3090;}
.vip-perk-icon{font-size:15px;flex-shrink:0;}
.vip-perk-text{font-size:8.5px;color:#d0b8f8;}
.vip-perk-text strong{color:#f0e0ff;font-weight:500;}
.vip-price{padding:0 22px 14px;text-align:center;}
.vip-price-tag{font-size:26px;font-weight:500;color:#e0c8ff;margin-bottom:3px;}
.vip-price-sub{font-size:11px;color:#7a5090;margin-bottom:12px;}
.vip-buy-btn{background:#7030c0;border:1px solid #c080ff;border-radius:10px;padding:11px 28px;font-size:14px;font-weight:500;color:#fff;cursor:pointer;width:100%;transition:background 0.15s;}
.vip-buy-btn:hover{background:#9040e0;}
.vip-active-badge{background:#3a2060;border:1px solid #9060e0;border-radius:10px;padding:11px;text-align:center;font-size:13px;color:#c0a0f0;}
.vip-footer{padding:8px 22px 16px;text-align:center;font-size:11px;color:#5a4080;}
.daily-modal{background:#2a1020;border:1px solid #6a3050;border-radius:16px;min-width:400px;max-width:500px;overflow:hidden;animation:fadeInScale 0.25s ease;}
.daily-tabs{display:flex;border-bottom:1px solid #3a1530;}
.daily-tab{flex:1;padding:11px;font-size:13px;font-weight:500;cursor:pointer;text-align:center;border:none;background:none;color:#7a5080;transition:all 0.15s;border-bottom:2px solid transparent;}
.daily-tab.active{color:#f0c0d0;border-bottom-color:#c060a0;background:#2e1222;}
.daily-tab.vip-tab{color:#9070c0;}
.daily-tab.vip-tab.active{color:#d0a8ff;border-bottom-color:#9060e0;background:#1e1030;}
.daily-content{padding:18px 22px;}
.daily-greeting{font-size:14px;font-weight:500;color:#f0c0d0;margin-bottom:3px;}
.daily-subtitle{font-size:12px;color:#7a5080;margin-bottom:14px;}
.reward-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:14px;}
.reward-day{border-radius:8px;padding:5px 3px;text-align:center;border:0.5px solid #4a2035;background:#1e0e18;display:flex;flex-direction:column;align-items:center;gap:2px;}
.reward-day.claimed{background:#2a1530;border-color:#6a3050;opacity:0.55;}
.reward-day.today{border-color:#c060a0;background:#2e1228;}
.reward-day.future{opacity:0.4;}
.reward-day .rd-num{font-size:9px;color:#6a4060;}
.reward-day .rd-icon{font-size:17px;line-height:1;}
.reward-day .rd-val{font-size:9px;color:#c090a8;}
.vip-reward-day{border-radius:8px;padding:5px 3px;text-align:center;border:0.5px solid #5a3090;background:#1a0a28;display:flex;flex-direction:column;align-items:center;gap:2px;}
.vip-reward-day.claimed{opacity:0.45;}
.vip-reward-day.today{border-color:#c090ff;background:#260d40;}
.vip-reward-day.future{opacity:0.3;}
.vip-reward-day .rd-num{font-size:9px;color:#7a50a0;}
.vip-reward-day .rd-icon{font-size:18px;line-height:1;}
.vip-reward-day .rd-val{font-size:9px;color:#b080e0;}
.claim-btn{width:100%;padding:10px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;border:none;}
.claim-btn.free-claim{background:#6a1535;color:#f0c0d0;border:0.5px solid #c060a0;}
.claim-btn.free-claim:hover:not(:disabled){background:#8a2055;}
.claim-btn.vip-claim{background:#6020b0;color:#f0e0ff;border:0.5px solid #b080ff;}
.claim-btn.vip-claim:hover:not(:disabled){background:#8030e0;}
.claim-btn:disabled{opacity:0.4;cursor:not-allowed;}
.claim-claimed{font-size:12px;color:#6a4060;margin-top:7px;text-align:center;}
.vip-lock-notice{background:#1a0a28;border:0.5px solid #4a2580;border-radius:10px;padding:13px;text-align:center;margin-top:7px;}
.vip-lock-notice p{font-size:12px;color:#7a50a0;margin-bottom:9px;}
.vip-lock-notice button{background:#5020a0;border:0.5px solid #9060e0;border-radius:8px;padding:6px 16px;font-size:12px;color:#d0b0f0;cursor:pointer;}
.ad-box{background:#2a1020;border:1px solid #6a3050;border-radius:14px;min-width:340px;max-width:440px;overflow:hidden;animation:fadeInScale 0.25s ease;}
.ad-header{background:#3a0f25;padding:13px 20px 9px;border-bottom:1px solid #5a2040;}
.ad-header h2{font-size:15px;font-weight:500;color:#f0c0d0;margin-bottom:3px;}
.ad-header p{font-size:12px;color:#a07088;}
.ad-body{padding:18px;text-align:center;}
.ad-ticket-preview{background:#2a1040;border:2px solid #8040c0;border-radius:12px;padding:18px;margin:0 auto 14px;display:inline-block;}
.tp-row{display:flex;gap:7px;margin-bottom:5px;}
.tp-cell{width:42px;height:42px;background:#5a2080;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:21px;border:1px solid #8050b0;}
.ad-tagline{font-size:13px;color:#c090d0;margin-bottom:5px;font-weight:500;}
.ad-sub{font-size:11px;color:#7a5090;margin-bottom:14px;}
.ad-footer{display:flex;justify-content:space-between;align-items:center;padding:11px 18px;border-top:1px solid #3a1530;}
.ad-close-btn{font-size:12px;color:#7a5080;cursor:pointer;background:none;border:none;}
.ad-buy-btn{background:#8020c0;border:none;border-radius:8px;padding:7px 16px;font-size:13px;font-weight:500;color:#fff;cursor:pointer;}
.scratch-box{background:#2a1020;border:1px solid #6a3050;border-radius:14px;width:588px;max-width:96vw;overflow:hidden;animation:fadeInScale 0.25s ease;}
.scratch-header{background:#3a0f25;padding:13px 20px;border-bottom:1px solid #5a2040;display:flex;align-items:center;justify-content:space-between;}
.scratch-header h2{font-size:16px;font-weight:500;color:#f0c0d0;}
.scratch-close{background:none;border:0.5px solid #6a3050;border-radius:6px;padding:4px 12px;font-size:12px;color:#c090a8;cursor:pointer;}
.scratch-close:hover{background:#3a1525;}
.scratch-body{padding:22px;text-align:center;}
.scratch-grid{display:grid;grid-template-columns:repeat(3,144px);grid-template-rows:repeat(3,144px);gap:10px;margin:0 auto 18px;width:fit-content;}
.scratch-cell{width:144px;height:144px;border-radius:12px;position:relative;overflow:hidden;border:2px solid #6a3060;background:#1a0818;}
.scratch-cell canvas{position:absolute;top:0;left:0;width:100%;height:100%;cursor:crosshair;z-index:2;}
.scratch-cell .prize{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:56px;z-index:1;}
.scratch-cell.done-pulse{animation:goldPulse 1s ease forwards;}
.scratch-cell.win-pulse{animation:goldPulseLoop 1s ease infinite;}
.scratch-cell.cell-revealed{animation:goldPulse 1s ease forwards;}
.scratch-cell.win-triple{animation:goldPulseWin 0.75s ease infinite;border:4px solid #ffd032 !important;}
@keyframes goldPulseWin{0%{box-shadow:0 0 4px 3px rgba(255,210,50,0.35);border-color:#ffd032;}50%{box-shadow:0 0 18px 8px rgba(255,210,50,0.95),0 0 32px 4px rgba(255,180,0,0.5);border-color:#ffee44;}100%{box-shadow:0 0 4px 3px rgba(255,210,50,0.35);border-color:#ffd032;}}
.scratch-result{font-size:15px;font-weight:500;color:#f0c0d0;min-height:20px;margin-bottom:12px;}
.scratch-done-btn{background:#5a1535;border:0.5px solid #c060a0;border-radius:6px;padding:7px 22px;font-size:13px;color:#f0c0d0;cursor:pointer;display:none;}
.scratch-done-btn:hover{background:#8a2055;}
.scratch-prizes{border-top:1px solid #3a1530;margin-top:14px;padding-top:10px;}
.sp-title{font-size:11px;color:#906878;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:7px;}
.sp-row{display:flex;justify-content:space-between;align-items:center;padding:3px 8px;font-size:13px;}
.sp-sym{font-size:15px;letter-spacing:1px;}
.sp-prize{color:#f0c040;font-weight:500;}

/* OPTIONS PANEL */
#mid-top-bar{padding:6px 8px 4px;display:flex;justify-content:flex-end;flex-shrink:0;border-bottom:1px solid #2a1020;gap:6px;}
#cylinder-name-header{padding:8px 12px;font-size:14px;font-weight:500;color:#c090a8;cursor:pointer;border-bottom:1px solid #2a1020;transition:color 0.15s;user-select:none;}
#cylinder-name-header:hover{color:#f0c0d0;}
#shop-version{text-align:right;padding:8px 14px;font-size:11px;color:#5a3050;}
#options-btn{background:#2a1040;border:0.5px solid #7040c0;border-radius:8px;padding:5px 14px;font-size:12px;font-weight:500;color:#c0a0f0;cursor:pointer;transition:background 0.15s;}
#options-btn:hover{background:#4020a0;}
#options-panel{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:14px;}
.opt-section{background:#1e0c18;border:0.5px solid #3a1530;border-radius:10px;padding:12px 14px;}
.opt-section-title{font-size:13px;font-weight:500;color:#c090a8;margin-bottom:10px;letter-spacing:0.04em;}
.opt-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.opt-row:last-child{margin-bottom:0;}
.opt-label{font-size:12px;color:#a07088;min-width:90px;}
.opt-close-btn{background:none;border:none;color:#e04040;font-size:22px;cursor:pointer;padding:0 4px;line-height:1;transition:color 0.15s;margin-left:auto;}
.opt-close-btn:hover{color:#ff6060;}
.opt-header{display:flex;align-items:center;margin-bottom:14px;}
.opt-header-title{font-size:15px;font-weight:500;color:#f0c0d0;}
.opt-export-box{width:100%;background:#110608;border:0.5px solid #4a2035;border-radius:6px;padding:7px 10px;font-size:10px;color:#c090a8;font-family:monospace;resize:none;height:56px;cursor:text;}
.opt-copy-btn{background:#2a1040;border:0.5px solid #7040c0;border-radius:6px;padding:5px 12px;font-size:11px;color:#c0a0f0;cursor:pointer;white-space:nowrap;flex-shrink:0;}
.opt-copy-btn:hover{background:#4020a0;}
.moan-row{display:flex;align-items:center;gap:10px;margin-bottom:0;}
.moan-radio{accent-color:#c060a0;width:15px;height:15px;cursor:pointer;flex-shrink:0;}
.moan-label-a{font-size:13px;font-weight:500;color:#e04040;}
.moan-label-b{font-size:13px;font-weight:500;color:#4080e0;}
.moan-slider{flex:1;accent-color:#c060a0;cursor:pointer;}
.moan-vol{font-size:11px;color:#a07088;min-width:32px;text-align:right;}
#sunburst{position:absolute;left:50%;top:calc(100% + 50px);transform:translate(-50%,-50%);width:250vmax;height:250vmax;pointer-events:none;z-index:0;
  background:conic-gradient(
    from 0deg,
    rgba(255,200,240,0.07) 0deg, transparent 8deg,
    transparent 15deg, rgba(255,180,220,0.06) 15deg, transparent 23deg,
    transparent 30deg, rgba(255,210,245,0.08) 30deg, transparent 38deg,
    transparent 45deg, rgba(255,190,230,0.05) 45deg, transparent 53deg,
    transparent 60deg, rgba(255,200,240,0.07) 60deg, transparent 68deg,
    transparent 75deg, rgba(255,180,220,0.06) 75deg, transparent 83deg,
    transparent 90deg, rgba(255,210,245,0.08) 90deg, transparent 98deg,
    transparent 105deg, rgba(255,190,230,0.05) 105deg, transparent 113deg,
    transparent 120deg, rgba(255,200,240,0.07) 120deg, transparent 128deg,
    transparent 135deg, rgba(255,180,220,0.06) 135deg, transparent 143deg,
    transparent 150deg, rgba(255,210,245,0.08) 150deg, transparent 158deg,
    transparent 165deg, rgba(255,190,230,0.05) 165deg, transparent 173deg,
    transparent 180deg, rgba(255,200,240,0.07) 180deg, transparent 188deg,
    transparent 195deg, rgba(255,180,220,0.06) 195deg, transparent 203deg,
    transparent 210deg, rgba(255,210,245,0.08) 210deg, transparent 218deg,
    transparent 225deg, rgba(255,190,230,0.05) 225deg, transparent 233deg,
    transparent 240deg, rgba(255,200,240,0.07) 240deg, transparent 248deg,
    transparent 255deg, rgba(255,180,220,0.06) 255deg, transparent 263deg,
    transparent 270deg, rgba(255,210,245,0.08) 270deg, transparent 278deg,
    transparent 285deg, rgba(255,190,230,0.05) 285deg, transparent 293deg,
    transparent 300deg, rgba(255,200,240,0.07) 300deg, transparent 308deg,
    transparent 315deg, rgba(255,180,220,0.06) 315deg, transparent 323deg,
    transparent 330deg, rgba(255,210,245,0.08) 330deg, transparent 338deg,
    transparent 345deg, rgba(255,190,230,0.05) 345deg, transparent 353deg,
    transparent 360deg
  );
  border-radius:50%;
  animation:sunburstRotate 25s linear infinite, sunburstPulse 4s ease-in-out infinite;
}
@keyframes sunburstRotate{from{transform:translate(-50%,-50%) rotate(0deg);}to{transform:translate(-50%,-50%) rotate(360deg);}}
@keyframes sunburstPulse{0%{opacity:0.6;filter:blur(0px);}50%{opacity:1;filter:blur(1.5px);}100%{opacity:0.6;filter:blur(0px);}}
#censor-japanese canvas{width:100%;height:100%;image-rendering:pixelated;}
/* SHOP ADS */
#shop-ad-slot{flex-shrink:0;}
.shop-ad{position:relative;margin:6px 8px;border-radius:10px;padding:14px 30px 14px 14px;animation:fadeInScale 0.3s ease;overflow:hidden;}
.shop-ad-close{position:absolute;top:5px;right:7px;background:rgba(0,0,0,0.4);border:none;color:#ff4040;font-size:15px;font-weight:700;cursor:pointer;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;z-index:2;transition:background 0.15s;}
.shop-ad-close:hover{background:rgba(255,0,0,0.3);color:#ff6060;}
.shop-ad-tag{position:absolute;top:5px;left:8px;font-size:8px;color:rgba(255,255,255,0.35);letter-spacing:0.08em;text-transform:uppercase;}
.shop-ad-headline{font-size:14px;font-weight:700;margin-top:8px;line-height:1.3;}
.shop-ad-body{font-size:11px;margin-top:5px;line-height:1.5;opacity:0.85;}
.shop-ad-cta{display:inline-block;margin-top:8px;padding:4px 14px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;border:none;transition:filter 0.15s;}
.shop-ad-cta:hover{filter:brightness(1.2);}
.shop-ad-emoji{font-size:28px;margin-bottom:4px;}
.opt-toggle-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.opt-toggle-row:last-child{margin-bottom:0;}
.opt-toggle-label{font-size:12px;color:#c090a8;min-width:110px;font-weight:500;}
.opt-toggle-btn{background:#2a1040;border:0.5px solid #6040a0;border-radius:6px;padding:4px 12px;font-size:11px;font-weight:500;color:#a080c0;cursor:pointer;transition:all 0.15s;min-width:50px;text-align:center;}
.opt-toggle-btn:hover{background:#3a1560;}
.opt-toggle-btn.active{background:#5020b0;border-color:#a080e0;color:#f0e0ff;}
.opt-seg-group{display:flex;gap:0;border-radius:6px;overflow:hidden;border:0.5px solid #6040a0;}
.opt-seg-btn{background:#2a1040;border:none;border-right:0.5px solid #6040a0;padding:4px 10px;font-size:11px;font-weight:500;color:#a080c0;cursor:pointer;transition:all 0.15s;}
.opt-seg-btn:last-child{border-right:none;}
.opt-seg-btn:hover{background:#3a1560;}
.opt-seg-btn.active{background:#5020b0;color:#f0e0ff;}
.cheater-section{background:#1a0808;border:0.5px solid #5a1010;border-radius:10px;padding:12px 14px;}
.cheater-title{font-size:13px;font-weight:500;color:#e04040;margin-bottom:10px;letter-spacing:0.04em;}
.cheat-btn{background:#2a0808;border:0.5px solid #8a2020;border-radius:6px;padding:6px 12px;font-size:12px;color:#e05050;cursor:pointer;transition:background 0.15s;width:100%;margin-bottom:6px;text-align:left;}
.cheat-btn:hover{background:#4a1010;}
.cheat-btn:last-child{margin-bottom:0;}
.reset-btn{background:#3a0505;border:1.5px solid #cc1010;border-radius:8px;padding:9px 14px;font-size:13px;font-weight:500;color:#ff4040;cursor:pointer;transition:all 0.15s;width:100%;margin-top:4px;}
.reset-btn:hover{background:#5a0808;border-color:#ff2020;}

/* COSMETICS MODAL */
.cosm-modal{background:#1a0820;border:1.5px solid #5030a0;border-radius:16px;width:1020px;max-width:96vw;max-height:88vh;overflow:hidden;display:flex;flex-direction:column;animation:fadeInScale 0.25s ease;}
.cosm-header{background:#240c38;padding:14px 20px;border-bottom:1px solid #3a1860;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.cosm-header h2{font-size:16px;font-weight:500;color:#d0b0ff;}
.cosm-header-right{display:flex;align-items:center;gap:10px;}
.cosm-gold{font-size:13px;color:#c0a060;background:#2a1a08;border:0.5px solid #6a5020;border-radius:8px;padding:3px 12px;}
.cosm-scroll{overflow-y:auto;flex:1;padding:16px;}
.cosm-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;}
.cosm-card{background:#200c30;border:1px solid #3a1860;border-radius:12px;padding:12px 8px;text-align:center;cursor:pointer;transition:all 0.15s;position:relative;}
.cosm-card:hover:not(.cosm-locked){border-color:#8060d0;background:#2e1245;}
.cosm-card.cosm-owned{border-color:#7050c0;}
.cosm-card.cosm-active{border:2px solid #c0a0ff;background:#2e1245;}
.cosm-card.cosm-active::after{content:'✓ active';position:absolute;top:5px;right:6px;font-size:9px;color:#c0a0ff;font-weight:500;}
.cosm-preview{width:60px;height:60px;border-radius:30px;margin:0 auto 8px;border:2px solid rgba(255,255,255,0.15);}
.cosm-name{font-size:11px;font-weight:500;color:#d0b8f8;margin-bottom:3px;}
.cosm-price{font-size:10px;color:#a08060;}
.cosm-price.owned{color:#7060a0;}
.cosm-price.free-price{color:#60a060;}
.cosm-buy-btn{margin-top:6px;background:#3a1060;border:0.5px solid #7050c0;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:500;color:#c0a0f0;cursor:pointer;transition:background 0.15s;width:100%;}
.cosm-buy-btn:hover:not(:disabled){background:#5020a0;}
.cosm-buy-btn.affordable{background:#5020b0;border-color:#a080e0;color:#f0e0ff;}
.cosm-buy-btn.affordable:hover{background:#7030d0;}
.cosm-buy-btn.active-btn{background:#2a1040;border-color:#6040a0;color:#a080c0;cursor:default;}
.cosm-buy-btn:disabled{opacity:0.4;cursor:not-allowed;}
.cosm-equip-btn{margin-top:6px;background:#4a2080;border:0.5px solid #9060d0;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:500;color:#d0b0ff;cursor:pointer;width:100%;}
.cosm-equip-btn:hover{background:#6030a0;}

.cosm-section-title{font-size:12px;font-weight:500;color:#8060c0;letter-spacing:0.08em;margin:18px 0 10px;text-transform:uppercase;border-bottom:0.5px solid #2a1050;padding-bottom:6px;}
.size-grid{display:flex;gap:10px;flex-wrap:wrap;}
.size-card{background:#200c30;border:1px solid #3a1860;border-radius:12px;padding:12px 8px;text-align:center;cursor:pointer;transition:all 0.15s;position:relative;width:120px;}
.size-card:hover:not(.size-locked){border-color:#8060d0;background:#2e1245;}
.size-card.size-owned{border-color:#7050c0;}
.size-card.size-active{border:2px solid #c0a0ff;background:#2e1245;}
.size-card.size-active::after{content:'✓ active';position:absolute;top:5px;right:6px;font-size:9px;color:#c0a0ff;font-weight:500;}
.size-preview{display:flex;align-items:flex-end;justify-content:center;height:60px;margin-bottom:8px;}
.size-cylinder{background:linear-gradient(to right,#d4a0c0,#f5cce0,#e8b5d0);border:1.5px solid #c080a8;}
.theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.theme-card{background:#200c30;border:1px solid #3a1860;border-radius:12px;padding:12px 8px;text-align:center;cursor:pointer;transition:all 0.15s;position:relative;}
.theme-card:hover{border-color:#8060d0;background:#2e1245;}
.theme-card.theme-active{border:2px solid #c0a0ff;background:#2e1245;}
.theme-card.theme-active::after{content:'✓ active';position:absolute;top:5px;right:6px;font-size:9px;color:#c0a0ff;font-weight:500;}
.theme-preview{width:80px;height:50px;border-radius:8px;margin:0 auto 8px;border:2px solid rgba(255,255,255,0.15);display:flex;overflow:hidden;}
.theme-preview-col{flex:1;}.theme-name{font-size:11px;font-weight:500;color:#d0b8f8;margin-bottom:3px;}
.theme-equip-btn{margin-top:6px;background:#4a2080;border:0.5px solid #9060d0;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:500;color:#d0b0ff;cursor:pointer;width:100%;}
.theme-equip-btn:hover{background:#6030a0;}
.theme-equip-btn.active-btn{background:#2a1040;border-color:#6040a0;color:#a080c0;cursor:default;}
.theme-buy-btn{margin-top:6px;background:#3a1020;border:0.5px solid #803040;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:500;color:#e09090;cursor:pointer;transition:background 0.15s;width:100%;}
.theme-buy-btn:hover:not(:disabled){background:#5a1830;}
.theme-buy-btn.affordable{background:#5a1030;border-color:#c04060;color:#ffe0e0;}
.theme-buy-btn.affordable:hover{background:#7a1840;}
.theme-buy-btn:disabled{opacity:0.4;cursor:not-allowed;}
.theme-price{font-size:10px;color:#c06060;margin-bottom:2px;}
.theme-price.owned{color:#7060a0;}
.theme-card.theme-owned{border-color:#7050c0;}

.prestige-modal{background:#0d0818;border:1.5px solid #6030b0;border-radius:16px;width:680px;max-width:95vw;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;animation:fadeInScale 0.25s ease;}
.prestige-header{background:#180830;padding:16px 22px;border-bottom:1px solid #3a1870;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.prestige-header h2{font-size:17px;font-weight:500;color:#d0b0ff;}
.prestige-header-right{display:flex;align-items:center;gap:12px;}
.prestige-pts-display{font-size:13px;color:#a080e0;background:#2a1050;border:0.5px solid #6040b0;border-radius:8px;padding:4px 12px;}
.prestige-scroll{overflow-y:auto;flex:1;padding:20px;}
.skill-section{margin-bottom:24px;}
.skill-section-title{font-size:12px;font-weight:500;color:#8060c0;letter-spacing:0.08em;margin-bottom:12px;text-transform:uppercase;border-bottom:0.5px solid #2a1050;padding-bottom:6px;}
.skill-row{display:flex;gap:10px;flex-wrap:wrap;}
.skill-node{width:130px;border-radius:12px;padding:12px 10px;border:1px solid #3a1870;background:#160828;cursor:pointer;transition:all 0.15s;text-align:center;position:relative;}
.skill-node:hover:not(.locked-node){border-color:#9060e0;background:#200d38;}
.skill-node.unlocked{border-color:#a070e0;background:#1e0d3a;}
.skill-node.unlocked::after{content:'✓';position:absolute;top:6px;right:8px;font-size:11px;color:#a070e0;}
.skill-node.locked-node{opacity:0.35;cursor:not-allowed;}
.skill-node.maxed{border-color:#c0a0ff;background:#280f48;}
.skill-node .sn-icon{font-size:28px;margin-bottom:5px;}
.skill-node .sn-name{font-size:11px;font-weight:500;color:#d0b0ff;margin-bottom:3px;}
.skill-node .sn-desc{font-size:10px;color:#8060a0;line-height:1.4;}
.skill-node .sn-cost{font-size:10px;color:#e080ff;margin-top:5px;font-weight:500;}
.skill-node .sn-level{font-size:10px;color:#9070c0;margin-top:2px;}
#stats-btn{background:#2a1040;border:0.5px solid #7040c0;border-radius:8px;padding:5px 14px;font-size:12px;font-weight:500;color:#c0a0f0;cursor:pointer;transition:background 0.15s;}
#stats-btn:hover{background:#4020a0;}

/* ─── Virility Panel ─── */
#virility-panel{padding:10px 8px;border-top:2px solid #5a2040;background:#1a0c12;flex-shrink:0;min-height:120px;overflow-y:auto;max-height:40%;}
.virility-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 4px;gap:8px;flex-wrap:wrap;}
.virility-title{font-size:19.5px;font-weight:500;color:#c090a8;letter-spacing:0.03em;}
.virility-score{font-size:28.6px;font-weight:700;}
.virility-exchange-btn{background:#2a1040;border:1px solid #a050d0;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:500;color:#d0a0ff;cursor:pointer;transition:background 0.15s,border-color 0.15s;white-space:nowrap;}
.virility-exchange-btn:hover{background:#4020a0;border-color:#c080ff;}
.virility-cat-label{font-size:20.3px;font-weight:700;color:#7a4060;margin:8px 0 4px 4px;letter-spacing:0.04em;}
/* Virility Bars */
.virility-bars{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;padding:0 4px;}
.virility-bar-track{position:relative;height:14px;background:#0d0608;border-radius:7px;border:1px solid #3a1828;overflow:hidden;}
.virility-bar-fill{height:100%;border-radius:7px;transition:width 0.4s ease;}
.virility-bar-base{background:linear-gradient(90deg,#a03050,#e06080);}
.virility-bar-green{background:linear-gradient(90deg,#30a050,#50e080);box-shadow:0 0 8px rgba(60,220,100,0.6),0 0 16px rgba(60,220,100,0.3);animation:virility-glow-green 1.5s ease-in-out infinite alternate;}
.virility-bar-blue{background:linear-gradient(90deg,#3060d0,#50a0ff);box-shadow:0 0 8px rgba(80,160,255,0.6),0 0 16px rgba(80,160,255,0.3);animation:virility-glow-blue 1.5s ease-in-out infinite alternate;}
.virility-bar-label{position:absolute;right:6px;top:0;height:100%;display:flex;align-items:center;font-size:9px;color:rgba(255,255,255,0.7);font-weight:600;}
@keyframes virility-glow-green{from{box-shadow:0 0 6px rgba(60,220,100,0.4),0 0 12px rgba(60,220,100,0.2);}to{box-shadow:0 0 12px rgba(60,220,100,0.8),0 0 24px rgba(60,220,100,0.4);}}
@keyframes virility-glow-blue{from{box-shadow:0 0 6px rgba(80,160,255,0.4),0 0 12px rgba(80,160,255,0.2);}to{box-shadow:0 0 12px rgba(80,160,255,0.8),0 0 24px rgba(80,160,255,0.4);}}
.virility-icons{display:flex;flex-wrap:wrap;gap:5px;padding:0 2px;}
.virility-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:2px solid #555;background:#1e0e18;cursor:pointer;transition:all 0.15s;opacity:0.4;font-size:18px;}
.virility-icon.active{opacity:1;}
.virility-icon.bad{border-color:#cc3030;}
.virility-icon.bad.active{border-color:#ff4040;background:#2a0c0c;box-shadow:0 0 6px rgba(255,60,60,0.4);}
.virility-icon.good{border-color:#30a040;}
.virility-icon.good.active{border-color:#40e060;background:#0c2a10;box-shadow:0 0 6px rgba(60,220,80,0.4);}
.virility-icon.neutral{border-color:#888;}
.virility-icon.neutral.active{border-color:#ddd;background:#1a1a1a;box-shadow:0 0 6px rgba(200,200,200,0.3);}

/* ─── PREMIUM SHOP ─────────────────────────────────────────────────────────── */
.premium-shop-modal{background:#1a0a0f;border:2px solid #c0a030;border-radius:16px;width:680px;max-width:96vw;max-height:82vh;display:flex;flex-direction:column;overflow:hidden;animation:fadeInScale 0.25s ease;position:relative;}
.pshop-header{background:linear-gradient(135deg,#3a2000,#5a3800);padding:18px 22px 10px;text-align:center;border-bottom:2px solid #c0a030;position:relative;}
.pshop-title{font-size:22px;font-weight:700;color:#ffe080;text-shadow:0 0 10px rgba(255,200,40,0.6);letter-spacing:1px;}
.pshop-subtitle{font-size:12px;color:#d0a050;margin-top:4px;animation:pulseDot 1.5s ease-in-out infinite;}
.pshop-timer{font-size:13px;color:#ff6060;font-weight:600;margin-top:6px;}
.pshop-banner{background:linear-gradient(90deg,#ff2020,#ff8020,#ff2020);background-size:200% 100%;animation:shopBannerSlide 3s linear infinite;padding:8px;text-align:center;font-size:13px;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,0.5);}
@keyframes shopBannerSlide{0%{background-position:0% 50%;}100%{background-position:200% 50%;}}
.pshop-scroll{flex:1;overflow-y:auto;padding:12px 18px;}
.pshop-cat-label{font-size:15px;font-weight:600;color:#f0c0d0;margin:14px 0 8px;padding-bottom:4px;border-bottom:1px solid #3a1525;}
.pshop-cat-label:first-child{margin-top:0;}
.pshop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:8px;}
.shop-item-card{background:#2a1020;border:1.5px solid #6a3050;border-radius:10px;padding:14px 10px 10px;text-align:center;cursor:pointer;transition:all 0.15s;position:relative;overflow:hidden;}
.shop-item-card:hover{background:#3a1535;border-color:#c0a030;transform:translateY(-2px);box-shadow:0 4px 16px rgba(200,160,40,0.3);}
.shop-tag{position:absolute;top:0;right:0;background:#ff2020;color:#fff;font-size:9px;font-weight:700;padding:2px 8px;border-radius:0 8px 0 8px;text-transform:uppercase;}
.shop-tag-whale{background:linear-gradient(135deg,#2040ff,#8020ff);animation:pulseDot 1.2s ease-in-out infinite;}
.shop-tag-best{background:#20a020;}
.shop-item-icon{font-size:32px;margin-bottom:4px;}
.shop-item-name{font-size:12px;font-weight:600;color:#f0c0d0;margin-bottom:3px;}
.shop-item-desc{font-size:11px;color:#a07088;margin-bottom:6px;}
.shop-item-price{font-size:14px;font-weight:700;color:#ffe080;}
.shop-old-price{font-size:11px;color:#805060;text-decoration:line-through;margin-right:4px;}
.shop-item-btn{background:#7030c0;border-radius:6px;padding:5px 0;margin-top:7px;font-size:11px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:0.5px;}
.shop-item-card:hover .shop-item-btn{background:#9040e0;}
.pshop-footer{padding:10px 18px;border-top:1px solid #3a1525;text-align:center;}

/* ─── FAKE PAYMENT MODAL ──────────────────────────────────────────────────── */
.fake-pay-modal{background:#1a0a0f;border:2px solid #4080c0;border-radius:16px;width:420px;max-width:94vw;overflow:hidden;animation:fadeInScale 0.25s ease;}
.fp-header{background:linear-gradient(135deg,#0a1a30,#1a3060);padding:16px 20px 10px;text-align:center;border-bottom:1px solid #3060a0;}
.fp-title{font-size:18px;font-weight:600;color:#90c0ff;}
.fp-lock{font-size:10px;color:#506080;margin-top:4px;}
.fp-order{padding:12px 20px;background:#120818;border-bottom:1px solid #2a1535;}
.fp-order-label{font-size:10px;color:#705080;font-weight:600;letter-spacing:1px;margin-bottom:6px;}
.fp-order-row{display:flex;justify-content:space-between;font-size:13px;color:#c0a0c0;padding:2px 0;}
.fp-order-price{color:#ffe080;font-weight:600;}
.fp-order-fee{font-size:11px;color:#605060;}
.fp-order-total{font-size:15px;font-weight:700;color:#f0c0d0;border-top:1px solid #3a1525;margin-top:6px;padding-top:6px;}
.fp-tabs{display:flex;border-bottom:1px solid #2a1535;background:#1a0d14;}
.fp-tab{flex:1;background:none;border:none;padding:10px;font-size:12px;color:#806080;cursor:pointer;transition:all 0.15s;border-bottom:2px solid transparent;}
.fp-tab.active{color:#90c0ff;border-bottom-color:#4080c0;background:#0a1020;}
.fp-tab:hover{color:#c0a0c0;}
.fp-form{padding:14px 20px;}
.fp-form label{display:block;font-size:11px;color:#806080;margin-bottom:3px;margin-top:10px;}
.fp-form label:first-child{margin-top:0;}
.fp-form input,.fp-form select{width:100%;background:#2a1525;border:1px solid #5a3050;border-radius:6px;padding:8px 10px;font-size:13px;color:#f0c0d0;outline:none;transition:border-color 0.15s;}
.fp-form input:focus{border-color:#4080c0;}
.fp-row{display:flex;gap:10px;}
.fp-field{flex:1;}
.fp-pay-btn{display:block;width:calc(100% - 40px);margin:0 20px 12px;background:linear-gradient(135deg,#20a040,#40c060);border:none;border-radius:10px;padding:13px;font-size:16px;font-weight:700;color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:1px;transition:all 0.15s;text-shadow:0 1px 3px rgba(0,0,0,0.3);}
.fp-pay-btn:hover{background:linear-gradient(135deg,#30c050,#50e070);box-shadow:0 0 20px rgba(40,200,60,0.4);}
.fp-footer{text-align:center;padding:0 20px 10px;font-size:9px;color:#504050;}
.fp-cancel{display:block;width:calc(100% - 40px);margin:0 20px 16px;background:none;border:1px solid #3a1525;border-radius:8px;padding:8px;font-size:12px;color:#705060;cursor:pointer;}
.fp-cancel:hover{border-color:#6a3050;color:#a07088;}
