/* ============================================================
   $CHEAPDEV — Shared Styles (Original Vibes)
   cheapdev.fun
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Creepster&family=Cabin+Sketch:wght@700&display=swap');

:root{--swamp:#0d1a0d;--moss:#1a3a1a;--goblin:#3a7a2a;--slime:#6ecf3a;--toxic:#aaff00;--gold:#ffd700;--rust:#c0392b;--puke:#9acd32;--cream:#f5f0dc;--dark:#050d05;}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Ctext y='28' font-size='28'%3E🧌%3C/text%3E%3C/svg%3E"),auto;}
body{background:var(--dark);color:var(--slime);font-family:'Press Start 2P',monospace;overflow-x:hidden;background-image:radial-gradient(circle at 20% 80%,rgba(58,122,42,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(110,207,58,.08) 0%,transparent 50%),repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,30,0,.3) 2px,rgba(0,30,0,.3) 4px);}
body::after{content:'';position:fixed;inset:0;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 3px,rgba(0,0,0,.15) 3px,rgba(0,0,0,.15) 4px);pointer-events:none;z-index:9998;}

/* NAV */
nav{position:fixed;top:0;width:100%;background:rgba(5,13,5,.93);border-bottom:2px solid var(--goblin);padding:12px 24px;display:flex;justify-content:space-between;align-items:center;z-index:1000;backdrop-filter:blur(8px);}
.nav-logo{font-family:'Creepster',cursive;font-size:1.6rem;color:var(--toxic);text-shadow:0 0 10px var(--slime),0 0 30px var(--goblin);text-decoration:none;}
.nav-links{display:flex;gap:14px;flex-wrap:wrap;}
.nav-links a{color:var(--slime);text-decoration:none;font-size:.38rem;transition:color .2s;cursor:pointer;}
.nav-links a:hover{color:var(--toxic);}
.nav-links a.active{color:var(--toxic);border-bottom:1px solid var(--toxic);}
.buy-btn{background:var(--toxic);color:var(--dark);border:none;padding:10px 18px;font-family:'Press Start 2P',monospace;font-size:.45rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);animation:btnpulse 2s infinite;text-decoration:none;display:inline-block;}
.wallet-btn{background:transparent;color:var(--slime);border:2px solid var(--goblin);padding:10px 18px;font-family:'Press Start 2P',monospace;font-size:.38rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);transition:all .2s;margin-right:8px;}
.wallet-btn:hover{border-color:var(--slime);color:var(--toxic);}
.wallet-btn.connected{border-color:var(--toxic);color:var(--toxic);}
@keyframes btnpulse{0%,100%{box-shadow:0 0 8px var(--toxic)}50%{box-shadow:0 0 24px var(--toxic),0 0 40px var(--slime)}}

/* BG GOBLINS */
.bg-goblin{position:absolute;font-size:3rem;opacity:.07;animation:floatgob 8s infinite ease-in-out;pointer-events:none;}
@keyframes floatgob{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-20px) rotate(5deg)}}

/* BUTTONS */
.btn-primary{background:var(--toxic);color:var(--dark);border:none;padding:16px 28px;font-family:'Press Start 2P',monospace;font-size:.6rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);animation:btnpulse 2s infinite;transition:transform .1s;text-decoration:none;display:inline-block;}
.btn-primary:hover{transform:scale(1.06) rotate(-1deg);}
.btn-secondary{background:transparent;color:var(--slime);border:2px solid var(--goblin);padding:16px 28px;font-family:'Press Start 2P',monospace;font-size:.6rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);transition:all .2s;text-decoration:none;display:inline-block;}
.btn-secondary:hover{border-color:var(--slime);color:var(--toxic);}

/* TICKER */
.ticker-band{background:var(--goblin);padding:10px 0;overflow:hidden;white-space:nowrap;border-top:2px solid var(--slime);border-bottom:2px solid var(--slime);}
.ticker-inner{display:inline-block;animation:tickerscroll 20s linear infinite;}
.ticker-item{display:inline-block;margin:0 40px;font-size:.45rem;color:var(--toxic);}
.up{color:#00ff88;}.down{color:var(--rust);}
@keyframes tickerscroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* SECTIONS */
.page-wrap{padding-top:80px;}
section{padding:80px 20px;max-width:1100px;margin:0 auto;}
.section-label{font-size:.4rem;color:var(--goblin);letter-spacing:6px;text-transform:uppercase;margin-bottom:12px;}
.section-title{font-family:'Creepster',cursive;font-size:clamp(2rem,5vw,3.5rem);color:var(--toxic);text-shadow:3px 3px 0 var(--goblin);margin-bottom:40px;line-height:1.2;}
.goblin-card{background:var(--moss);border:2px solid var(--goblin);padding:32px;text-align:center;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));}
.goblin-ascii{font-family:monospace;font-size:.6rem;color:var(--slime);line-height:1.4;margin-bottom:16px;text-align:left;display:inline-block;}
.goblin-name{font-family:'Creepster',cursive;font-size:1.6rem;color:var(--gold);display:block;margin-bottom:6px;}
.goblin-role{font-size:.4rem;color:var(--puke);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}
.about-text p{font-size:.5rem;color:var(--cream);line-height:2.2;margin-bottom:16px;}

/* CHART */
.chart-wrap{background:var(--moss);border:2px solid var(--goblin);padding:24px;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));}
.chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;flex-wrap:wrap;gap:12px;}
.chart-price{font-family:'Creepster',cursive;font-size:2.2rem;color:var(--toxic);}
.chart-change{font-size:.4rem;margin-top:4px;}
.chart-change.up{color:#00ff88;}.chart-change.down{color:var(--rust);}
.chart-stats{display:flex;gap:20px;flex-wrap:wrap;}
.chart-stat{font-size:.38rem;color:var(--cream);opacity:.7;}
.chart-stat span{color:var(--slime);display:block;margin-bottom:2px;}
.live-badge{background:var(--rust);color:#fff;font-size:.38rem;padding:4px 10px;animation:liveblink 1.2s infinite;}
@keyframes liveblink{0%,100%{opacity:1}50%{opacity:.4}}
canvas#priceChart{width:100%;height:200px;display:block;}
.chart-tabs{display:flex;gap:8px;margin-bottom:12px;}
.chart-tab{background:transparent;border:1px solid var(--goblin);color:var(--slime);font-family:'Press Start 2P',monospace;font-size:.35rem;padding:6px 12px;cursor:pointer;transition:all .2s;}
.chart-tab.active{background:var(--goblin);color:var(--toxic);}
.chart-verdict{text-align:center;margin-top:14px;font-size:.4rem;color:var(--puke);}

/* SWAP */
.swap-outer{max-width:480px;margin:0 auto;}
.swap-box{background:var(--moss);border:2px solid var(--goblin);padding:28px;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));}
.swap-label{font-size:.38rem;color:var(--puke);margin-bottom:8px;display:flex;justify-content:space-between;}
.swap-input-row{display:flex;align-items:center;gap:10px;background:var(--swamp);border:1px solid var(--goblin);padding:12px 14px;margin-bottom:12px;}
.swap-input-row input{flex:1;background:transparent;border:none;outline:none;color:var(--toxic);font-family:'Press Start 2P',monospace;font-size:.7rem;width:0;}
.swap-input-row input::placeholder{color:rgba(110,207,58,.3);}
.swap-token-tag{background:var(--goblin);color:var(--toxic);font-size:.4rem;padding:6px 10px;white-space:nowrap;cursor:pointer;}
.swap-arrow-btn{text-align:center;margin:4px 0 12px;font-size:1.4rem;cursor:pointer;transition:transform .3s;display:block;}
.swap-arrow-btn:hover{transform:rotate(180deg);}
.swap-info{background:var(--swamp);border:1px solid var(--goblin);padding:12px 14px;margin-bottom:16px;font-size:.35rem;color:var(--cream);opacity:.7;line-height:2;}
.swap-submit{width:100%;background:var(--toxic);color:var(--dark);border:none;padding:18px;font-family:'Press Start 2P',monospace;font-size:.65rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);animation:btnpulse 2s infinite;}
.swap-submit:disabled{background:#555;color:#888;animation:none;cursor:not-allowed;}
.swap-loading{display:none;text-align:center;padding:16px;font-size:.4rem;color:var(--slime);}
.swap-loading.show{display:block;}
.swap-error{margin-top:16px;background:rgba(192,57,43,.2);border:1px solid var(--rust);padding:14px;font-size:.38rem;color:#ff8888;line-height:2;display:none;}
.swap-error.show{display:block;}
.err-code{color:var(--rust);font-size:.45rem;margin-bottom:6px;display:block;}
.dots-anim::after{content:'.';animation:dotanim 1.2s steps(3) infinite;}
@keyframes dotanim{0%{content:'.'}33%{content:'..'}66%{content:'...'}}

/* TOKENOMICS */
.token-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:40px;}
.token-card{background:var(--moss);border:2px solid var(--goblin);padding:24px 16px;transition:transform .2s,box-shadow .2s;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));}
.token-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px rgba(110,207,58,.25);}
.token-emoji{font-size:2.5rem;display:block;margin-bottom:12px;}
.token-num{font-family:'Creepster',cursive;font-size:2rem;color:var(--toxic);display:block;margin-bottom:6px;}
.token-label{font-size:.38rem;color:var(--cream);opacity:.7;line-height:1.8;}
.token-funny{font-size:.35rem;color:var(--puke);margin-top:6px;font-style:italic;opacity:.7;}

/* ROADMAP */
.roadmap-timeline{position:relative;padding-left:40px;}
.roadmap-timeline::before{content:'';position:absolute;left:8px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--goblin),var(--toxic),var(--goblin));}
.roadmap-item{position:relative;margin-bottom:40px;}
.roadmap-item::before{content:'🧌';position:absolute;left:-38px;top:0;font-size:1.2rem;}
.roadmap-phase{font-size:.4rem;color:var(--toxic);letter-spacing:3px;margin-bottom:6px;}
.roadmap-title{font-family:'Cabin Sketch',cursive;font-size:1.4rem;color:var(--gold);margin-bottom:10px;}
.roadmap-items{list-style:none;}
.roadmap-items li{font-size:.4rem;color:var(--cream);line-height:2.2;padding-left:16px;position:relative;opacity:.85;}
.roadmap-items li::before{content:'▶';position:absolute;left:0;color:var(--goblin);font-size:.35rem;top:4px;}
.roadmap-done .roadmap-items li::before{color:var(--toxic);content:'✓';}
.roadmap-soon .roadmap-items li::before{color:var(--gold);}

/* TEAM */
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;}
.team-card{background:var(--moss);border:2px solid var(--goblin);padding:28px 20px;text-align:center;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));transition:transform .2s;}
.team-card:hover{transform:scale(1.03) rotate(.5deg);}
.team-pfp{width:80px;height:80px;border-radius:50%;background:var(--swamp);border:2px solid var(--goblin);display:flex;align-items:center;justify-content:center;font-size:2.5rem;margin:0 auto 16px;}
.team-name{font-family:'Creepster',cursive;font-size:1.4rem;color:var(--toxic);margin-bottom:4px;}
.team-role{font-size:.38rem;color:var(--puke);margin-bottom:12px;}
.team-bio{font-size:.38rem;color:var(--cream);line-height:2;opacity:.75;}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:16px;}
.faq-item{background:var(--moss);border:2px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));overflow:hidden;}
.faq-q{padding:18px 20px;font-size:.45rem;color:var(--toxic);cursor:pointer;display:flex;justify-content:space-between;align-items:center;}
.faq-q:hover{background:rgba(110,207,58,.06);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .2s;font-size:.4rem;color:var(--cream);line-height:2.2;padding:0 20px;}
.faq-item.open .faq-a{max-height:300px;padding:0 20px 18px;}
.faq-arrow{transition:transform .3s;}
.faq-item.open .faq-arrow{transform:rotate(180deg);}

/* LOTTERY */
.lottery-outer{max-width:1100px;margin:0 auto;padding:80px 20px;}
.lottery-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.lotto-card{background:var(--moss);border:2px solid var(--goblin);padding:28px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));}
.lotto-card.golden{border-color:var(--gold);box-shadow:0 0 30px rgba(255,215,0,.15);}
.pot-amount{font-family:'Creepster',cursive;font-size:clamp(2rem,5vw,3rem);color:var(--gold);display:block;text-shadow:0 0 20px var(--gold);animation:potpulse 2s ease-in-out infinite;}
@keyframes potpulse{0%,100%{text-shadow:0 0 20px var(--gold)}50%{text-shadow:0 0 50px var(--gold),0 0 80px rgba(255,215,0,.4)}}
.pot-label{font-size:.38rem;color:var(--puke);margin-top:6px;display:block;}
.pot-entries{font-size:.35rem;color:var(--cream);opacity:.6;margin-top:4px;display:block;}
.countdown-wrap{display:flex;justify-content:center;gap:12px;margin:16px 0 0;}
.cd-block{text-align:center;background:var(--swamp);border:1px solid var(--goblin);padding:10px 14px;min-width:58px;}
.cd-num{font-family:'Creepster',cursive;font-size:1.8rem;color:var(--toxic);display:block;}
.cd-unit{font-size:.3rem;color:var(--puke);}
.lotto-input-row{display:flex;align-items:center;gap:10px;background:var(--swamp);border:1px solid var(--goblin);padding:12px 14px;margin-bottom:8px;}
.lotto-input-row input{flex:1;background:transparent;border:none;outline:none;color:var(--toxic);font-family:'Press Start 2P',monospace;font-size:.7rem;width:0;}
.lotto-input-row input::placeholder{color:rgba(110,207,58,.3);}
.lotto-token-tag{background:var(--goblin);color:var(--toxic);font-size:.38rem;padding:6px 10px;white-space:nowrap;}
.quick-btns{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap;}
.quick-btn{background:transparent;border:1px solid var(--goblin);color:var(--slime);font-family:'Press Start 2P',monospace;font-size:.3rem;padding:6px 10px;cursor:pointer;transition:all .2s;}
.quick-btn:hover{background:var(--goblin);color:var(--toxic);}
.split-title{font-size:.35rem;color:var(--puke);margin-bottom:10px;}
.split-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.split-lbl{font-size:.3rem;color:var(--cream);width:95px;flex-shrink:0;opacity:.8;}
.split-bar-wrap{flex:1;background:rgba(0,0,0,.3);height:16px;overflow:hidden;}
.split-bar{height:100%;transition:width .5s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:4px;}
.split-bar span{font-size:.25rem;color:#fff;font-family:'Press Start 2P',monospace;}
.bar-winner{background:linear-gradient(90deg,#1a6b1a,var(--slime));}
.bar-burn{background:linear-gradient(90deg,#6b1a1a,var(--rust));}
.bar-mkt{background:linear-gradient(90deg,#4a3a00,var(--gold));}
.bar-hold{background:linear-gradient(90deg,#003a4a,#00aaff);}
.bar-liq{background:linear-gradient(90deg,#1a1a6b,#8888ff);}
.split-amt{font-size:.3rem;color:var(--toxic);width:90px;flex-shrink:0;text-align:right;}
.lotto-info-box{background:var(--swamp);border:1px solid var(--goblin);padding:12px;margin-top:12px;font-size:.3rem;color:var(--cream);line-height:2.2;}
.lotto-enter-btn{width:100%;background:var(--gold);color:var(--dark);border:none;padding:18px;font-family:'Press Start 2P',monospace;font-size:.6rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);animation:goldpulse 2s infinite;margin-top:14px;transition:transform .1s;}
.lotto-enter-btn:hover{transform:scale(1.02);}
@keyframes goldpulse{0%,100%{box-shadow:0 0 10px var(--gold)}50%{box-shadow:0 0 30px var(--gold),0 0 60px rgba(255,215,0,.3)}}
.lotto-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;}
.lotto-stat{background:var(--swamp);border:1px solid var(--goblin);padding:14px;text-align:center;}
.lotto-stat-num{font-family:'Creepster',cursive;font-size:1.3rem;color:var(--toxic);display:block;}
.lotto-stat-label{font-size:.28rem;color:var(--puke);margin-top:4px;display:block;}
.winners-list{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto;}
.winner-item{display:flex;align-items:center;gap:10px;background:var(--swamp);border:1px solid var(--goblin);padding:10px 12px;}
.winner-rank{font-family:'Creepster',cursive;font-size:1.1rem;color:var(--gold);width:28px;flex-shrink:0;}
.winner-info{flex:1;}
.winner-addr{font-size:.3rem;color:var(--toxic);margin-bottom:2px;}
.winner-amt{font-size:.28rem;color:var(--slime);}
.winner-time{font-size:.26rem;color:var(--puke);opacity:.6;flex-shrink:0;}
.winner-badge{font-size:.26rem;background:var(--goblin);color:var(--toxic);padding:2px 6px;margin-left:6px;}
.how-step{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;}
.how-step-num{font-size:1.4rem;flex-shrink:0;}
.how-step-text{font-size:.36rem;color:var(--cream);line-height:2;opacity:.85;}

/* GOBLIN OVERLAY */
#goblinOverlay{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:3000;display:none;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:20px;text-align:center;}
#goblinOverlay.open{display:flex;}
.gob-emoji{font-size:7rem;animation:gobwiggle .4s ease-in-out infinite alternate;}
@keyframes gobwiggle{from{transform:rotate(-8deg) scale(1)}to{transform:rotate(8deg) scale(1.08)}}
.gob-title{font-family:'Creepster',cursive;font-size:clamp(1.4rem,4vw,2.2rem);color:var(--toxic);text-shadow:0 0 20px var(--slime);}
.gob-sub{font-size:.4rem;color:var(--puke);max-width:420px;line-height:2;}
.gob-result{font-family:'Creepster',cursive;font-size:clamp(1.6rem,5vw,2.8rem);max-width:500px;display:none;white-space:pre-line;}
.gob-result.win{color:var(--gold);text-shadow:0 0 30px var(--gold);display:block;}
.gob-result.lose{color:var(--rust);text-shadow:0 0 30px var(--rust);display:block;}
.gob-close{background:var(--goblin);border:2px solid var(--slime);color:var(--toxic);font-family:'Press Start 2P',monospace;font-size:.5rem;padding:12px 24px;cursor:pointer;display:none;margin-top:8px;}
.gob-close.show{display:block;}

/* CONFETTI */
.confetti{position:fixed;width:8px;height:8px;opacity:0;pointer-events:none;z-index:4000;border-radius:2px;animation:cfall 3s ease-in forwards;}
@keyframes cfall{0%{opacity:1;transform:translateY(-10px) rotate(0)}100%{opacity:0;transform:translateY(100vh) rotate(720deg)}}

/* LAIR PUZZLE */
.lair-dot{width:18px;height:18px;border:2px solid #2d5a2d;border-radius:4px;background:#0d1a0d;transition:all 0.3s;}
.lair-dot.on{background:#4caf50;border-color:#4caf50;box-shadow:0 0 8px #4caf50;}
.lair-dot.bad{background:#c0392b;border-color:#c0392b;}
.lair-btn{font-size:24px;background:#0d1a0d;border:1px solid #2d5a2d;border-radius:8px;padding:12px;cursor:pointer;transition:all 0.2s;}
.lair-btn:hover{background:#1a3a1a;border-color:#4caf50;transform:scale(1.05);}
.lair-btn:active{transform:scale(0.95);}

/* DISCLAIMER */
.disclaimer-band{background:var(--rust);padding:10px 0;overflow:hidden;white-space:nowrap;border-top:2px dashed #ff6b6b;border-bottom:2px dashed #ff6b6b;}
.disclaimer-inner{display:inline-block;animation:tickerscroll 14s linear infinite;}
.disclaimer-inner span{font-size:.4rem;color:#fff;margin:0 32px;}

/* FOOTER */
footer{text-align:center;padding:50px 20px;border-top:2px solid var(--goblin);}
.footer-logo{font-family:'Creepster',cursive;font-size:2.5rem;color:var(--slime);margin-bottom:12px;}
.footer-links{display:flex;justify-content:center;gap:24px;margin:20px 0;flex-wrap:wrap;}
.footer-links a{color:var(--goblin);text-decoration:none;font-size:.4rem;transition:color .2s;cursor:pointer;}
.footer-links a:hover{color:var(--toxic);}
.footer-copy{font-size:.35rem;color:var(--goblin);opacity:.6;line-height:2.5;}

/* TOAST */
#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--toxic);color:var(--dark);padding:12px 24px;font-size:.42rem;transition:transform .3s;z-index:9999;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);max-width:90vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#toast.show{transform:translateX(-50%) translateY(0);}

/* MASCOT */
#mascot{position:fixed;bottom:70px;font-size:2.8rem;z-index:999;cursor:pointer;user-select:none;filter:drop-shadow(0 0 8px var(--slime));animation:mascotbob .5s ease-in-out infinite alternate;}
@keyframes mascotbob{from{transform:translateY(0)}to{transform:translateY(-5px)}}
#bubble{position:fixed;bottom:126px;background:var(--moss);border:2px solid var(--goblin);padding:8px 12px;font-size:.33rem;color:var(--toxic);line-height:1.8;z-index:1000;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));max-width:150px;white-space:normal;text-align:center;opacity:0;transition:opacity .3s;pointer-events:none;}
#bubble.show{opacity:1;}

/* LEADERBOARD SPECIFIC */
.board-table{background:var(--moss);border:2px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));overflow:hidden;}
.board-header{background:var(--goblin);padding:14px 20px;display:grid;grid-template-columns:60px 1fr 1fr 180px;gap:10px;}
.board-header div{font-size:.32rem;color:var(--dark);}
.board-row{padding:14px 20px;display:grid;grid-template-columns:60px 1fr 1fr 180px;gap:10px;border-bottom:1px solid var(--swamp);align-items:center;transition:background .2s;}
.board-row:hover{background:rgba(58,122,42,.1);}
.board-row:last-child{border-bottom:none;}
.rank-badge{font-size:.55rem;}
.wallet-addr{font-size:.32rem;color:var(--slime);}
.burn-amt{font-size:.32rem;color:var(--toxic);}
.rank-title-lbl{font-size:.28rem;}
.empty-board{padding:50px 20px;text-align:center;}
.empty-board-icon{font-size:3rem;margin-bottom:16px;}
.empty-board-title{font-family:'Creepster',cursive;font-size:1.8rem;color:var(--toxic);margin-bottom:12px;}
.empty-board-text{font-size:.35rem;color:var(--puke);line-height:2.5;margin-bottom:20px;}
.titles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:40px 0;}
.title-card{background:var(--moss);border:2px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));padding:24px;text-align:center;transition:transform .2s;}
.title-card:hover{transform:translateY(-4px);}
.title-emoji{font-size:3rem;display:block;margin-bottom:12px;}
.title-name{font-size:.42rem;margin-bottom:8px;}
.title-desc{font-size:.3rem;color:var(--puke);line-height:2;opacity:.8;}
.board-tabs{display:flex;gap:12px;margin-bottom:20px;}
.tab-btn{background:transparent;border:2px solid var(--goblin);color:var(--goblin);font-family:'Press Start 2P',monospace;font-size:.35rem;padding:8px 16px;cursor:pointer;transition:all .2s;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);}
.tab-btn.active{background:var(--goblin);color:var(--toxic);}
.tab-btn:hover{border-color:var(--toxic);color:var(--toxic);}

/* HOW TO BUY */
.htb-steps{display:flex;flex-direction:column;gap:20px;margin:40px 0;}
.htb-step{background:var(--moss);border:2px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));padding:28px;display:flex;gap:24px;align-items:flex-start;transition:border-color .2s;}
.htb-step:hover{border-color:var(--slime);}
.htb-num{font-family:'Creepster',cursive;font-size:2.5rem;color:var(--toxic);min-width:50px;text-shadow:0 0 10px rgba(170,255,0,.3);}
.htb-title{font-size:.42rem;color:var(--toxic);margin-bottom:10px;}
.htb-desc{font-size:.36rem;color:var(--cream);line-height:2.2;opacity:.85;}
.htb-link{display:inline-block;margin-top:12px;color:var(--slime);font-size:.32rem;text-decoration:none;border:1px solid var(--goblin);padding:7px 14px;transition:all .2s;}
.htb-link:hover{border-color:var(--toxic);color:var(--toxic);}
.htb-where{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:30px 0;}
.htb-dex{background:var(--moss);border:2px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));padding:28px;text-align:center;transition:all .2s;}
.htb-dex:hover{border-color:var(--toxic);transform:translateY(-4px);}
.htb-dex-icon{font-size:2.5rem;display:block;margin-bottom:12px;}
.htb-dex-name{font-family:'Creepster',cursive;font-size:1.4rem;color:var(--toxic);margin-bottom:8px;}
.htb-dex-desc{font-size:.3rem;color:var(--puke);line-height:2;}
.warning-box{background:rgba(192,57,43,.15);border:2px solid var(--rust);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));padding:24px;margin:40px 0;}
.warning-title{font-size:.42rem;color:var(--gold);margin-bottom:14px;}
.warning-list{list-style:none;}
.warning-list li{font-size:.34rem;color:var(--cream);padding:6px 0;line-height:2;opacity:.85;}
.warning-list li::before{content:'⚠️ ';}

/* WHITEPAPER PAGE */
.wp-page-body{max-width:740px;margin:0 auto;}
.wp-cover{text-align:center;padding:40px 20px;border-bottom:2px solid var(--goblin);margin-bottom:40px;}
.wp-journal-lbl{font-size:.3rem;color:var(--goblin);margin-bottom:8px;letter-spacing:2px;}
.wp-main-title{font-family:'Creepster',cursive;font-size:1.8rem;color:var(--toxic);margin-bottom:16px;line-height:1.4;text-shadow:3px 3px 0 var(--goblin);}
.wp-authors-lbl{font-size:.3rem;color:var(--puke);margin-bottom:6px;opacity:.8;}
.wp-date-lbl{font-size:.26rem;color:var(--goblin);}
.wp-abstract-box{background:var(--moss);border:1px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));padding:22px;margin:28px 0;}
.wp-abstract-ttl{font-size:.38rem;color:var(--toxic);margin-bottom:10px;}
.wp-abstract-txt{font-size:.3rem;color:var(--cream);line-height:2.4;opacity:.85;}
.wp-sec{margin:36px 0;}
.wp-sec-num{font-size:.3rem;color:var(--goblin);margin-bottom:4px;}
.wp-sec-ttl{font-family:'Creepster',cursive;font-size:1.3rem;color:var(--toxic);margin-bottom:14px;}
.wp-txt{font-size:.3rem;color:var(--cream);line-height:2.5;margin-bottom:14px;opacity:.85;}
.wp-formula{background:var(--swamp);border:1px solid var(--goblin);padding:16px;margin:14px 0;font-size:.32rem;color:var(--toxic);text-align:center;line-height:2;}
.wp-tbl{width:100%;border-collapse:collapse;margin:16px 0;font-size:.28rem;}
.wp-tbl th{background:var(--goblin);color:var(--dark);padding:10px;}
.wp-tbl td{padding:10px;border-bottom:1px solid var(--swamp);color:var(--cream);opacity:.85;}
.wp-tbl tr:nth-child(even) td{background:rgba(26,58,26,.4);}
.wp-fn{font-size:.26rem;color:var(--goblin);line-height:2.4;border-top:1px solid var(--goblin);padding-top:16px;margin-top:36px;opacity:.7;}
.wp-ascii-fig{text-align:center;background:var(--swamp);border:1px solid var(--goblin);padding:16px;margin:14px 0;}
.wp-ascii-fig pre{font-family:monospace;font-size:.45rem;color:var(--slime);display:inline-block;text-align:left;}
.wp-ascii-fig .fig-cap{font-size:.28rem;color:var(--puke);margin-top:8px;opacity:.7;}
.wp-stamp{display:inline-block;border:3px solid var(--rust);color:var(--rust);padding:5px 10px;font-size:.38rem;font-weight:bold;transform:rotate(-8deg);margin:8px 0;}

@media(max-width:700px){
  .about-grid,.lottery-grid{grid-template-columns:1fr}
  .nav-links{display:none}
  .titles-grid{grid-template-columns:1fr}
  .board-header,.board-row{grid-template-columns:40px 1fr 1fr}
  .rank-title-lbl,.board-header div:last-child{display:none}
  .htb-step{flex-direction:column;gap:10px}
  .htb-where{grid-template-columns:1fr}
}

/* ===== DESKTOP FIXES (min-width:701px) ===== */
@media(min-width:701px){
  /* Scale up root so rem units are readable on desktop */
  html{font-size:20px;}

  /* Nav — fixed height, no wrapping, all links always visible and clickable */
  nav{padding:14px 32px;flex-wrap:nowrap;overflow:visible;}
  .nav-links{flex-wrap:nowrap;gap:18px;align-items:center;}
  .nav-links a{font-size:.55rem;padding:6px 8px;line-height:1;white-space:nowrap;}
  .nav-links a:hover{color:var(--toxic);}
  .wallet-btn{font-size:.48rem;padding:10px 16px;white-space:nowrap;flex-shrink:0;}
  .buy-btn{font-size:.52rem;padding:10px 18px;white-space:nowrap;flex-shrink:0;}
  .nav-logo{font-size:1.8rem;flex-shrink:0;}

  /* General text scale-up */
  .section-label{font-size:.52rem;letter-spacing:5px;}
  .about-text p{font-size:.62rem;}
  .goblin-role{font-size:.48rem;}
  .team-role{font-size:.44rem;}
  .team-bio{font-size:.44rem;}
  .roadmap-items li{font-size:.48rem;}
  .faq-q{font-size:.52rem;}
  .faq-a{font-size:.48rem;}
  .token-label{font-size:.44rem;}
  .token-funny{font-size:.42rem;}

  /* Lottery page */
  .how-step-text{font-size:.44rem;}
  .split-lbl{font-size:.38rem;}
  .lotto-info-box{font-size:.38rem;}
  .winner-addr{font-size:.38rem;}
  .winner-amt{font-size:.36rem;}
  .lotto-stat-label{font-size:.36rem;}
  .pot-label{font-size:.44rem;}
  .pot-entries{font-size:.42rem;}
  .cd-unit{font-size:.36rem;}

  /* Leaderboard */
  .title-desc{font-size:.36rem;}
  .wallet-addr{font-size:.38rem;}
  .burn-amt{font-size:.38rem;}
  .rank-title-lbl{font-size:.34rem;}
  .board-header div{font-size:.38rem;}

  /* Whitepaper */
  .wp-journal-lbl{font-size:.36rem;}
  .wp-authors-lbl{font-size:.36rem;}
  .wp-date-lbl{font-size:.32rem;}
  .wp-abstract-ttl{font-size:.46rem;}
  .wp-abstract-txt{font-size:.38rem;}
  .wp-sec-num{font-size:.38rem;}
  .wp-txt{font-size:.38rem;}
  .wp-formula{font-size:.4rem;}
  .wp-tbl{font-size:.34rem;}
  .wp-fn{font-size:.32rem;}

  /* How to buy */
  .htb-title{font-size:.5rem;}
  .htb-desc{font-size:.42rem;}
  .htb-dex-name{font-size:1.5rem;}
  .htb-dex-desc{font-size:.36rem;}
  .htb-link{font-size:.38rem;}
  .warning-title{font-size:.5rem;}
  .warning-list li{font-size:.42rem;}

  /* Ticker / disclaimer */
  .ticker-item{font-size:.52rem;}
  .disclaimer-inner span{font-size:.48rem;}
  .footer-links a{font-size:.46rem;}
  .footer-copy{font-size:.4rem;}

  /* Chart / swap */
  .chart-tab{font-size:.42rem;}
  .chart-verdict{font-size:.46rem;}
  .swap-info{font-size:.4rem;}
  .swap-label{font-size:.44rem;}

  /* Bubble */
  #bubble{font-size:.4rem;}
}


/* ===== ITEM IMAGES ===== */
.item-img {
  width: 110px;
  height: 110px;
  object-fit: cover;
  display: block;
  margin: 0 auto 10px;
  border-radius: 8px;
  image-rendering: pixelated;
}
.item-img-sm {
  width: 60px;
  height: 60px;
  object-fit: cover;
  border-radius: 6px;
  flex-shrink: 0;
  image-rendering: pixelated;
}
.item-img-md {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 8px;
  image-rendering: pixelated;
}

/* ===== SPIN SECTION ===== */
.spin-section{background:var(--moss);border:2px solid var(--goblin);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));padding:28px;margin-bottom:30px;}
.spin-title{font-family:'Creepster',cursive;font-size:1.4rem;color:var(--toxic);margin-bottom:16px;}
.spin-price-box{background:rgba(170,255,0,.06);border:2px solid var(--goblin);padding:16px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.spin-price-val{font-family:'Creepster',cursive;font-size:1.4rem;color:var(--toxic);}
.spin-price-sub{font-size:.28rem;color:var(--goblin);margin-top:4px;}
.spin-price-sol{font-size:.32rem;color:var(--slime);}
.spin-qty-btns{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;}
.spin-qty-btn{background:transparent;border:1px solid var(--goblin);color:var(--slime);font-family:'Press Start 2P',monospace;font-size:.3rem;padding:7px 14px;cursor:pointer;transition:all .2s;}
.spin-qty-btn.active{background:var(--goblin);color:var(--toxic);}
.spin-preview{background:var(--swamp);border:1px solid var(--goblin);padding:12px;margin-bottom:14px;font-size:.28rem;color:var(--cream);line-height:2.2;}
.spin-preview-row{display:flex;justify-content:space-between;}
.spin-btn{width:100%;background:linear-gradient(135deg,var(--goblin),var(--slime));color:var(--dark);border:none;padding:16px;font-family:'Press Start 2P',monospace;font-size:.5rem;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);animation:btnpulse 2s infinite;transition:transform .1s;}
.spin-btn:hover{transform:scale(1.02);}
.spin-btn:disabled{background:#444;color:#666;animation:none;cursor:not-allowed;}
.spin-connect-prompt{text-align:center;padding:20px 0;}
.spin-rarity-table{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;}
.spin-rarity-card{border:1px solid;padding:10px 6px;text-align:center;}
.spin-rarity-card.c-common{border-color:#c8860a;background:rgba(200,134,10,.08);}
.spin-rarity-card.c-rare{border-color:#4a6aff;background:rgba(74,106,255,.08);}
.spin-rarity-card.c-epic{border-color:#aa40ff;background:rgba(170,64,255,.08);}
.spin-rarity-card.c-legendary{border-color:var(--gold);background:rgba(255,215,0,.08);}
.spin-rarity-pct{font-family:'Creepster',cursive;font-size:1.2rem;display:block;}
.spin-rarity-card.c-common .spin-rarity-pct{color:#c8860a;}
.spin-rarity-card.c-rare .spin-rarity-pct{color:#4a6aff;}
.spin-rarity-card.c-epic .spin-rarity-pct{color:#aa40ff;}
.spin-rarity-card.c-legendary .spin-rarity-pct{color:var(--gold);}
.spin-rarity-label{font-size:.24rem;color:var(--puke);}
.spin-rarity-supply{font-size:.22rem;color:var(--goblin);margin-top:2px;}
#spinOverlay{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:3001;display:none;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:20px;}
#spinOverlay.open{display:flex;}
.spin-overlay-phase{font-family:'Press Start 2P',monospace;font-size:.45rem;color:var(--toxic);}
.spin-slot{width:150px;height:150px;border:3px solid var(--goblin);display:flex;align-items:center;justify-content:center;background:var(--swamp);overflow:hidden;position:relative;}
.spin-result-name{font-family:'Creepster',cursive;font-size:1.6rem;max-width:420px;}
.spin-result-name.common{color:#c8860a;}
.spin-result-name.rare{color:#4a6aff;}
.spin-result-name.epic{color:#aa40ff;}
.spin-result-name.legendary{color:var(--gold);text-shadow:0 0 30px var(--gold);animation:goldpulse 1s infinite;}
.spin-result-sub{font-size:.34rem;color:var(--puke);max-width:380px;line-height:2;}
.spin-close-btn{background:var(--goblin);border:2px solid var(--slime);color:var(--toxic);font-family:'Press Start 2P',monospace;font-size:.42rem;padding:12px 24px;cursor:pointer;clip-path:polygon(4px 0%,calc(100% - 4px) 0%,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0% calc(100% - 4px),0% 4px);}
@media(max-width:700px){.spin-rarity-table{grid-template-columns:repeat(2,1fr)}}
