*{box-sizing:border-box}
html,body{margin:0;height:100%;overflow:hidden;background:#ffffff;color:#1a1a1a;font-family:'Arial',sans-serif}
:root{--gold:#FFEC31;--construction-yellow:#FFEC31;--construction-orange:#ff8c00;--text-dark:#1a1a1a;--text-light:#ffffff;--bg-white:#ffffff;--bg-light:#f8f8f8;--border-yellow:#FFEC31}


.page{height:100vh}
.game{display:flex;flex-direction:column;height:100%}
/* Construction Site Design - Absperrbänder */
body::before{display:none}
body::after{display:none}

header{text-align:center;padding:10px 8px 6px;border-bottom:none;background:linear-gradient(180deg,var(--bg-white),#fafafa);position:relative;box-shadow:none}
header::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 16px,#000 16px,#000 32px);opacity:0.9}
.header-content{display:flex;align-items:center;justify-content:center;gap:12px;position:relative}
.header-text{display:flex;flex-direction:column;align-items:center;justify-content:center}
.bob-image{height:calc(1.2em + 11px + 4px);width:auto;object-fit:contain;animation:bobFloat 3s ease-in-out infinite;filter:drop-shadow(2px 2px 4px rgba(0,0,0,0.3));flex-shrink:0;margin-top:6px}
@keyframes bobFloat{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.02)}}
h1{margin:0;color:var(--text-dark);letter-spacing:.35em;font-size:19px;font-weight:900;line-height:1.3em;text-shadow:2px 2px 0 var(--gold),-1px -1px 0 var(--gold),0 0 10px rgba(255,236,49,0.3)}
.tagline{font-size:11px;color:var(--text-dark);opacity:.85;margin:0;margin-top:5px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase}
.hud{display:flex;justify-content:space-between;font-size:12px;align-items:center;flex-wrap:wrap;gap:6px;background:linear-gradient(135deg,var(--bg-light),#f5f5f5);padding:8px 12px;border-radius:8px;border:3px solid var(--gold);margin:4px 0;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2);flex-shrink:0}
.hud span{color:var(--text-dark);font-weight:700;letter-spacing:0.05em}
.hud b{color:#000;font-weight:900;font-size:13px;text-shadow:0 1px 2px rgba(255,236,49,0.3)}
.hud-highscore-btn{background:linear-gradient(135deg,var(--gold),#FFD700);color:#000;border:2px solid var(--gold);font-weight:900;padding:6px 12px;border-radius:6px;font-size:10px;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer;transition:all .2s;box-shadow:0 0 8px rgba(255,236,49,0.3);flex-shrink:0}
.hud-highscore-btn:hover{box-shadow:0 0 12px rgba(255,236,49,0.5);background:linear-gradient(135deg,#FFD700,var(--gold));border-color:#000}
.hud-highscore-btn:active{box-shadow:0 0 6px rgba(255,236,49,0.3)!important}
.swipe-hint{text-align:center;font-size:11px;color:var(--gold);font-weight:700;padding:8px 14px;margin:4px 0;opacity:0.85;animation:swipePulse 2s ease-in-out infinite;cursor:pointer;text-transform:uppercase;letter-spacing:0.12em;border:2px dashed var(--gold);border-radius:6px;background:linear-gradient(135deg,var(--bg-light),#f0f0f0);box-shadow:inset 0 1px 3px rgba(255,236,49,0.2)}
@keyframes swipePulse{0%,100%{opacity:0.8}50%{opacity:1}}
.swipe-hint:hover{opacity:1;border-color:#000;background:var(--gold);color:#000}
#highscoreOverlay{position:fixed;inset:0;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;z-index:50;overflow-y:auto;padding:20px;backdrop-filter:blur(4px)}
#highscorePopup{position:relative;width:100%;max-width:420px;background:linear-gradient(180deg,var(--bg-white),#fafafa);border:4px solid var(--gold);box-shadow:8px 8px 0 #000,0 0 0 2px var(--gold),0 4px 16px rgba(255,236,49,0.2);border-radius:12px;padding:28px;text-align:center;animation:pop .3s ease-out;max-height:90vh;overflow-y:auto}
#highscorePopup::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 20px,#000 20px,#000 40px);border-radius:12px 12px 0 0;opacity:0.9}
.milestones{display:flex;justify-content:space-around;font-size:11px;padding:8px 12px;background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);border-radius:8px;margin:4px 0 2px;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2);gap:8px;flex-shrink:0}
.milestones span{color:var(--text-dark);font-weight:700;opacity:.4;padding:6px 12px;border-radius:6px;transition:all .3s ease;position:relative;text-transform:uppercase;letter-spacing:0.1em;font-size:10px;background:rgba(0,0,0,0.05);border:2px solid transparent}
.milestones .on{opacity:1;color:#000;font-weight:900;background:linear-gradient(135deg,var(--gold),#FFD700);border-color:#000;box-shadow:0 0 15px rgba(255,236,49,0.6),inset 0 1px 2px rgba(255,255,255,0.3),0 2px 4px rgba(0,0,0,0.2);text-shadow:0 1px 2px rgba(0,0,0,0.2);transform:scale(1.05)}
.progressTop{height:16px;margin:2px 8px 4px;background:linear-gradient(135deg,var(--bg-light),#e8e8e8);border-radius:8px;border:3px solid var(--gold);overflow:hidden;position:relative;box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(255,236,49,0.2);flex-shrink:0}
.progressTop::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 12px,#000 12px,#000 24px);opacity:0.6;z-index:1}
.progressTop .fill{height:100%;width:0%;background:linear-gradient(90deg,#FFD700,var(--gold),#FFEC31,#FFD700);background-size:200% 100%;box-shadow:inset 0 1px 3px rgba(255,255,255,0.4),inset 0 -1px 3px rgba(0,0,0,0.2),0 0 10px rgba(255,236,49,0.4);animation:shimmer 2s linear infinite}
.play{flex:1;overflow:hidden;background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);margin:0 8px;border-radius:8px;position:relative;box-shadow:inset 0 2px 8px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.play::before{display:none}
canvas{width:100%;height:100%;display:block}
footer{padding:8px;border-top:none;background:linear-gradient(180deg,#fafafa,var(--bg-white));position:relative;display:flex;flex-direction:column;gap:6px;box-shadow:none;flex-shrink:0}
footer::before{display:none}
#drop{width:100%;padding:12px;background:linear-gradient(135deg,var(--gold),#FFD700,var(--gold));color:#000;border:3px solid var(--gold);font-weight:900;box-shadow:0 0 12px rgba(255,236,49,0.4);transition:all .2s;text-transform:uppercase;letter-spacing:0.12em;font-size:15px;border-radius:6px;position:relative;overflow:hidden}
#drop:hover{box-shadow:0 0 18px rgba(255,236,49,0.6);background:linear-gradient(135deg,#FFD700,var(--gold),#FFD700);background-size:200% 100%;border-color:#000}
#drop:active{box-shadow:0 0 8px rgba(255,236,49,0.3)!important}
.disclaimer-note{text-align:center;font-size:10px;color:var(--text-dark);opacity:0.8;margin:8px 0 4px 0;font-weight:600;line-height:1.4}
.legal-links{display:flex;justify-content:center;align-items:center;gap:8px;font-size:10px;margin-top:4px}
.legal-links a{color:var(--gold);text-decoration:none;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:0.05em}
.legal-links a:hover{color:#000;text-decoration:underline}
.legal-links span{color:var(--text-dark);opacity:0.5}
.legal-content{text-align:left;font-size:12px;line-height:1.6;color:var(--text-dark);max-height:400px;overflow-y:auto;padding:16px;background:var(--bg-light);border:2px solid var(--gold);border-radius:4px;margin:16px 0}
.legal-content h4{color:var(--text-dark);font-size:14px;font-weight:900;margin-top:16px;margin-bottom:8px;text-transform:uppercase}
.legal-content h4:first-child{margin-top:0}
.legal-content p{margin:8px 0;color:var(--text-dark)}
.legal-content ul{margin:8px 0;padding-left:20px}
.legal-content li{margin:4px 0;color:var(--text-dark)}
#overlay{position:fixed;inset:0;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;z-index:50;overflow-y:auto;padding:20px;backdrop-filter:blur(4px)}
#popup{position:relative;width:100%;max-width:420px;background:linear-gradient(180deg,var(--bg-white),#fafafa);border:4px solid var(--gold);box-shadow:8px 8px 0 #000,0 0 0 2px var(--gold),0 4px 16px rgba(255,236,49,0.2);border-radius:12px;padding:28px;text-align:center;animation:pop .3s ease-out;max-height:90vh;overflow-y:auto}
#popup::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 20px,#000 20px,#000 40px);border-radius:12px 12px 0 0;opacity:0.9}
#popup img{width:80px;margin-bottom:8px}
.pscore{font-size:13px;margin:8px 0;color:#000;font-weight:700}
.name-input{width:100%;padding:14px;background:linear-gradient(135deg,var(--bg-white),#fafafa);border:3px solid var(--gold);color:var(--text-dark);border-radius:8px;font-size:13px;font-family:monospace;margin:12px 0;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 0 8px rgba(255,236,49,0.2);text-align:center;letter-spacing:0.03em;font-weight:700;transition:all .3s ease}
.name-input:focus{outline:none;border-color:#000;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 0 12px rgba(255,236,49,0.4),4px 4px 0 #000;background:var(--bg-white);transform:scale(1.02)}
.name-input::placeholder{color:var(--text-dark);opacity:0.5}
.highscore-tabs{display:flex;gap:8px;margin:16px 0 12px;justify-content:center}
.tab-btn{padding:10px 16px;background:linear-gradient(135deg,var(--bg-light),#f0f0f0);color:var(--text-dark);border:3px solid var(--gold);font-size:11px;font-weight:700;letter-spacing:0.1em;border-radius:6px;cursor:pointer;transition:all .2s;flex:1;max-width:120px;box-shadow:0 0 8px rgba(255,236,49,0.2),inset 0 1px 2px rgba(0,0,0,0.1);white-space:nowrap;min-width:80px;display:flex;align-items:center;justify-content:center;text-align:center}
.tab-btn:hover{box-shadow:0 0 12px rgba(255,236,49,0.4);background:linear-gradient(135deg,#fff8dc,var(--gold));color:#000;border-color:#000}
.tab-btn.active{background:linear-gradient(135deg,var(--gold),#FFD700);color:#000;border-color:#000;box-shadow:0 0 12px rgba(255,236,49,0.4);font-weight:900}
.tab-btn:active{box-shadow:0 0 6px rgba(255,236,49,0.3)!important}
.highscore-list{margin:12px 0;border:3px solid var(--gold);border-radius:8px;overflow:hidden;background:var(--bg-white);box-shadow:4px 4px 0 #000,0 2px 8px rgba(255,236,49,0.2)}
.hs-header{display:grid;grid-template-columns:50px 1fr 80px;gap:8px;padding:14px 12px;background:linear-gradient(135deg,var(--gold),#FFD700);border-bottom:3px solid #000;font-size:10px;font-weight:900;letter-spacing:0.12em;color:#000;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,0.2);box-shadow:inset 0 1px 2px rgba(255,255,255,0.3)}
.hs-entries{max-height:300px;overflow-y:auto;background:linear-gradient(135deg,var(--bg-light),#f5f5f5)}
.hs-entry{display:grid;grid-template-columns:50px 1fr 80px;gap:8px;padding:12px;border-bottom:2px solid rgba(255,236,49,0.3);font-size:12px;color:var(--text-dark);font-family:monospace;align-items:center;font-weight:600;transition:all .2s ease;background:transparent;position:relative}
.hs-entry:last-child{border-bottom:none}
.hs-entry:hover{color:#000}
.hs-rank{text-align:center;font-weight:900;color:#000}
.hs-name{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hs-score{text-align:right;font-weight:900;color:#000}
.popup-buttons{margin-top:16px}
#popup button,#highscorePopup button:not(.close-btn){width:100%;padding:14px;background:linear-gradient(135deg,var(--gold),#FFD700);color:#000;border:3px solid var(--gold);font-weight:900;box-shadow:0 0 10px rgba(255,236,49,0.3);transition:all .2s;cursor:pointer;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;border-radius:6px}
#popup button:hover,#highscorePopup button:not(.close-btn):hover{box-shadow:0 0 15px rgba(255,236,49,0.5);background:linear-gradient(135deg,#FFD700,var(--gold));border-color:#000}
#popup button:active,#highscorePopup button:not(.close-btn):active{box-shadow:0 0 6px rgba(255,236,49,0.3)!important}
@keyframes pop{from{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}

.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--gold);border:3px solid #000;color:#000;padding:14px 24px;border-radius:4px;font-size:13px;font-family:monospace;z-index:100;box-shadow:4px 4px 0 #000;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;letter-spacing:0.05em;font-weight:900;text-transform:uppercase}
.toast.show{opacity:1;pointer-events:auto;animation:toastSlideIn .3s ease}
@keyframes toastSlideIn{from{transform:translateX(-50%) translateY(20px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}

/* Dynamische Animationen */
@keyframes glowPulse{0%,100%{box-shadow:0 0 10px rgba(255,236,49,.4),inset 0 0 10px rgba(255,236,49,.1)}50%{box-shadow:0 0 20px rgba(255,236,49,.8),inset 0 0 15px rgba(255,236,49,.3)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
/* Entfernte Animationen, die Bewegung verursachen */
@keyframes numberCount{0%{color:inherit}50%{color:var(--gold)}100%{color:inherit}}
@keyframes progressGlow{0%,100%{box-shadow:inset 0 0 10px rgba(0,0,0,0.2),0 0 5px rgba(255,236,49,.3)}50%{box-shadow:inset 0 0 15px rgba(0,0,0,0.3),0 0 15px rgba(255,236,49,.6)}}
/* Entfernte milestoneActivate Animation */

/* HUD Dynamische Effekte */
.hud b{transition:color .3s ease;display:inline-block}
.hud b.score-updated{animation:numberCount .5s ease-out}
.hud-highscore-btn{position:relative;overflow:hidden}
.hud-highscore-btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}
.hud-highscore-btn:hover::before{left:100%}

/* Milestones Dynamische Effekte */
.milestones span{transition:all .3s cubic-bezier(0.4,0,0.2,1);position:relative}
.milestones .on{text-shadow:0 0 10px rgba(255,236,49,.8),0 0 20px rgba(255,236,49,.5);animation:milestoneGlow 2s ease-in-out infinite}
@keyframes milestoneGlow{0%,100%{box-shadow:0 0 15px rgba(255,236,49,0.6),inset 0 1px 2px rgba(255,255,255,0.3),0 2px 4px rgba(0,0,0,0.2)}50%{box-shadow:0 0 20px rgba(255,236,49,0.8),inset 0 1px 2px rgba(255,255,255,0.4),0 3px 6px rgba(0,0,0,0.3)}}

/* Progress Bar Dynamische Effekte */
.progressTop .fill{transition:width .5s cubic-bezier(0.4,0,0.2,1)}

/* Buttons Dynamische Effekte */
#drop{position:relative;overflow:hidden}

/* Header Dynamische Effekte */
.tagline{opacity:.8;transition:opacity .3s}
.tagline:hover{opacity:1}

/* Popup Dynamische Effekte */
#popup,#highscorePopup,#legalPopup,#welcomePopup{animation:pop .3s ease-out,bounceIn .5s ease-out}
.hs-entry{transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.hs-entry:hover{color:#000}

/* Tab Buttons Dynamische Effekte */
.tab-btn{position:relative;overflow:hidden}
.tab-btn::before{content:'';position:absolute;top:0;left:0;width:0;height:100%;background:var(--gold);transition:width .3s ease;z-index:-1}
.tab-btn:hover::before{width:100%}
.tab-btn.active{animation:glowPulse 2s ease-in-out infinite}

/* Score Counter Animation */
.score-counter{display:inline-block;transition:all .3s ease}
.score-counter.updated{animation:numberCount .5s ease-out}

/* Canvas Container Dynamische Effekte */
.play{position:relative}
.play::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background:radial-gradient(circle at center,transparent 0%,rgba(255,236,49,.05) 50%,transparent 100%);opacity:0;transition:opacity .3s}
.play:hover::after{opacity:1}

/* Footer Dynamische Effekte */

/* Background Dynamische Partikel-Effekte */



/* Smooth Scroll für Overlays */

/* Input Fields Dynamische Effekte */
.name-input,.form-input{transition:border-color .3s ease,box-shadow .3s ease}
.name-input:focus,.form-input:focus{animation:glowPulse 2s ease-in-out infinite}

/* Close Button Dynamische Effekte */
.close-btn{transition:box-shadow .3s ease,background .3s ease}
.close-btn:hover{box-shadow:3px 3px 0 #000!important;background:#FFEC31!important}

/* Share Button Dynamische Effekte */
.share-btn{position:relative;overflow:hidden}
.share-btn::before{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%);transition:width .6s,height .6s}
.share-btn:hover::before{width:300px;height:300px}
.share-btn:hover{box-shadow:0 0 20px rgba(255,236,49,.5);border-color:#000}
.share-btn:active{box-shadow:0 0 10px rgba(255,236,49,.3)!important}

.desktop-layout{display:grid;grid-template-columns:1fr;width:100vw;height:100vh;gap:0;background:var(--bg-white);position:relative}
.desktop-layout::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px);opacity:0.3;pointer-events:none;z-index:0}
.left-panel,.right-panel{display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;height:100%;background:var(--bg-white);position:relative;z-index:1}

/* Bob Side Panels */
.bob-panel{display:none;flex-direction:column;align-items:center;justify-content:flex-start;background:var(--bg-white);position:relative;z-index:1;gap:0;padding:0;overflow:hidden}
.bob-panel::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px);opacity:0.3;pointer-events:none;z-index:0}
.bob-panel-happy::before{background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px)}
.bob-panel-angry::before{background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,var(--bg-light) 2px,var(--bg-light) 4px)}
.bob-panel>*{position:relative;z-index:1}
.bob-panel-img{max-width:500px;max-height:70vh;width:90%;height:auto;object-fit:contain;opacity:0.9;filter:drop-shadow(0 8px 30px rgba(0,0,0,0.15));border-radius:16px;transition:opacity 0.3s ease,transform 0.3s ease}
.bob-panel-img:hover{opacity:1;transform:scale(1.03)}
.bob-panel-label{font-family:monospace;font-size:22px;font-weight:900;letter-spacing:0.3em;color:var(--gold);text-transform:uppercase;text-shadow:2px 2px 0 rgba(0,0,0,0.1)}

/* ═══ EPIC PANELS ═══ */
.bob-panel:has(.ep){justify-content:flex-start!important;padding:0!important;gap:0!important;overflow:hidden!important}
.ep{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;position:relative;font-family:'Arial',sans-serif}
.ep>*{position:relative;z-index:1}

/* Animated gradient background */
.ep-bg{position:absolute;inset:0;z-index:0;opacity:0.4}
.ep-bg-bull{background:radial-gradient(ellipse at 30% 20%,rgba(255,236,49,0.08),transparent 60%),radial-gradient(ellipse at 70% 80%,rgba(255,236,49,0.04),transparent 50%)}
.ep-bg-bear{background:radial-gradient(ellipse at 70% 20%,rgba(255,236,49,0.08),transparent 60%),radial-gradient(ellipse at 30% 80%,rgba(255,236,49,0.04),transparent 50%)}

/* Hero */
.ep-hero{display:flex;align-items:center;gap:14px;padding:14px 16px 8px;flex-shrink:0;border-bottom:3px solid var(--gold);background:linear-gradient(180deg,var(--bg-white),#fafafa);position:relative}
.ep-hero::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 16px,#000 16px,#000 32px);opacity:0.9}
.ep-bob{width:80px;height:80px;object-fit:contain;border-radius:14px;flex-shrink:0}
.ep-bob-bull{filter:drop-shadow(2px 2px 4px rgba(0,0,0,0.3));animation:bobFloat 3s ease-in-out infinite}
.ep-bob-bear{filter:drop-shadow(2px 2px 4px rgba(0,0,0,0.3));animation:bobFloat 3s ease-in-out infinite}
.ep-hero-text{display:flex;flex-direction:column;gap:2px}
.ep-title{font-size:36px;font-weight:900;letter-spacing:0.2em;text-transform:uppercase;margin:0;line-height:1}
.ep-title-bull{color:var(--text-dark);text-shadow:2px 2px 0 var(--gold)}
.ep-title-bear{color:var(--text-dark);text-shadow:2px 2px 0 var(--gold)}
.ep-sub{font-size:9px;letter-spacing:0.3em;color:var(--text-dark);opacity:0.7;text-transform:uppercase}
.ep-sub-bear{color:var(--text-dark);opacity:0.7}

/* Price display - only bullish */
.ep-price{margin:6px 12px;padding:12px 16px;border-radius:8px;text-align:center;flex-shrink:0}
.ep-price-bull{background:linear-gradient(135deg,var(--bg-light),#f5f5f5);border:3px solid var(--gold);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-price-label{font-size:8px;letter-spacing:0.4em;color:var(--text-dark);opacity:0.6;display:block;margin-bottom:4px;font-weight:700}
.ep-price-val{font-size:36px;font-weight:900;color:#000;letter-spacing:0.03em;text-shadow:0 1px 2px rgba(255,236,49,0.3)}
.ep-price-val sub{font-size:0.5em;vertical-align:baseline;opacity:0.45;font-weight:700}

/* Live dot */
.ep-dot{display:inline-block;width:6px;height:6px;border-radius:50%;vertical-align:middle;margin-right:4px}
.ep-dot-live{background:var(--gold);box-shadow:0 0 6px var(--gold);animation:dotBlink 2s ease-in-out infinite}
@keyframes dotBlink{0%,100%{opacity:1}50%{opacity:0.3}}

/* Momentum bar */
.ep-momentum{margin:6px 12px;padding:8px 12px;background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);border-radius:8px;flex-shrink:0;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-mom-head{display:flex;justify-content:space-between;font-size:8px;letter-spacing:0.1em;margin-bottom:3px}
.ep-mom-buy{color:#22c55e;font-weight:700}
.ep-mom-sell{color:#ef4444;font-weight:700}
.ep-mom-bar{width:100%;height:6px;background:rgba(239,68,68,0.2);border-radius:3px;overflow:hidden;border:1px solid rgba(0,0,0,0.1)}
.ep-mom-fill{height:100%;background:linear-gradient(90deg,#22c55e,#4ade80);border-radius:3px;transition:width 1.2s cubic-bezier(0.25,0.46,0.45,0.94)}

/* Stats cards */
.ep-cards{margin:0 12px;flex-shrink:0}
.ep-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.ep-card{background:linear-gradient(135deg,var(--bg-light),#f5f5f5);border:3px solid var(--gold);border-radius:8px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;gap:3px;transition:all 0.3s;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-card:hover{border-color:#000;transform:translateY(-2px)}
.ep-card-bull{border-bottom:3px solid var(--gold)}
.ep-card-bear{border-bottom:3px solid var(--gold)}
.ep-card-val{font-size:18px;font-weight:900;color:#000;letter-spacing:0.02em}
.ep-card-label{font-size:8px;letter-spacing:0.15em;color:var(--text-dark);opacity:0.6;text-transform:uppercase;font-weight:700}

/* Highlight counters */
.ep-highlight-row{display:flex;gap:5px;margin-top:6px}
.ep-highlight{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:8px}
.ep-highlight-bull{background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-highlight-val{font-size:24px;font-weight:900;color:#000;text-shadow:0 1px 2px rgba(255,236,49,0.3)}
.ep-highlight-label{font-size:7px;letter-spacing:0.15em;color:var(--text-dark);opacity:0.6;text-transform:uppercase;font-weight:700}
.ep-highlight-bear{background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-highlight-bear .ep-highlight-val{color:#000;text-shadow:0 1px 2px rgba(255,236,49,0.3)}
.ep-highlight-bear .ep-highlight-label{color:var(--text-dark);opacity:0.6}

/* Divider */
.ep-divider{width:60%;height:3px;margin:6px auto 2px;align-self:center;flex-shrink:0}
.ep-divider-bull{background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.ep-divider-bear{background:linear-gradient(90deg,transparent,var(--gold),transparent)}

/* Dynamic badges container */
.ep-badges{display:flex;gap:5px;margin:5px 12px 3px;flex-wrap:wrap;justify-content:center;flex-shrink:0;min-height:38px;align-items:center}
.ep-badge{display:flex;flex-direction:column;align-items:center;padding:7px 10px;border-radius:8px;flex:1;min-width:60px;transition:transform 0.2s}
.ep-badge:hover{transform:scale(1.05)}
.ep-badge-green{background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-badge-red{background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-badge-tf{font-size:8px;letter-spacing:0.15em;color:var(--text-dark);opacity:0.6;margin-bottom:3px;font-weight:700}
.ep-badge-val{font-size:17px;font-weight:900}
.ep-badge-green .ep-badge-val{color:#22c55e}
.ep-badge-red .ep-badge-val{color:#ef4444}
.ep-allgreen{width:100%;text-align:center;font-size:11px;font-weight:900;color:#22c55e;letter-spacing:0.2em;padding:4px 0;margin-bottom:4px}
.ep-nobadge{width:100%;text-align:center;font-size:10px;font-weight:700;letter-spacing:0.15em;padding:10px 0;opacity:0.5}
.ep-nobadge-bull{color:#22c55e}
.ep-nobadge-bear{color:#22c55e;opacity:0.8}

/* Trades section */
.ep-trades-head{font-size:9px;font-weight:900;letter-spacing:0.3em;text-align:center;margin:4px 12px 4px;padding-top:6px;border-top:3px solid var(--gold);flex-shrink:0;color:var(--text-dark);opacity:0.7}
.ep-trades-head-bull{color:var(--text-dark)}
.ep-trades-head-bear{color:var(--text-dark)}
.ep-trades{display:flex;flex-direction:column;gap:4px;margin:0 12px;flex:1;min-height:0}
.ep-trade{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:8px;animation:tradeIn 0.4s cubic-bezier(0.25,0.46,0.45,0.94) both;transition:all 0.2s}
.ep-trade:hover{transform:translateX(3px)}
.ep-trade-bull{background:linear-gradient(135deg,var(--bg-light),#f5f5f5);border-left:3px solid #22c55e;border:2px solid rgba(255,236,49,0.3);border-left:3px solid #22c55e}
.ep-trade-bear{background:linear-gradient(135deg,var(--bg-light),#f5f5f5);border-left:3px solid #ef4444;border:2px solid rgba(255,236,49,0.3);border-left:3px solid #ef4444}
.ep-trade-big{border-left-width:4px}
.ep-trade-whale{border-left-width:5px;box-shadow:0 2px 4px rgba(255,236,49,0.2)}
.ep-trade-whale .ep-trade-amount{color:#000;font-weight:900}
.ep-trade-amount{font-size:16px;font-weight:900;color:#000}
.ep-trade-meta{font-size:8px;color:var(--text-dark);opacity:0.5;letter-spacing:0.04em}
.ep-trade-empty{font-size:9px;color:var(--text-dark);opacity:0.4;text-align:center;padding:12px;letter-spacing:0.1em}
@keyframes tradeIn{0%{opacity:0;transform:translateX(-10px)}100%{opacity:1;transform:translateX(0)}}

/* Fear & Greed */
.ep-fng{margin:6px 12px;padding:12px 14px;background:linear-gradient(135deg,var(--bg-light),#f0f0f0);border:3px solid var(--gold);border-radius:8px;flex-shrink:0;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 2px 4px rgba(255,236,49,0.2)}
.ep-fng-label{font-size:8px;letter-spacing:0.25em;color:var(--text-dark);opacity:0.6;text-align:center;margin-bottom:6px;text-transform:uppercase;font-weight:700}
.ep-fng-bar{width:100%;height:8px;background:rgba(0,0,0,0.05);border-radius:4px;overflow:hidden;margin-bottom:6px;position:relative;border:1px solid rgba(0,0,0,0.1)}
.ep-fng-bar::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#ef4444,#f97316,#eab308,#84cc16,#22c55e);opacity:0.15;border-radius:4px}
.ep-fng-fill{height:100%;border-radius:4px;transition:width 1.2s ease,background 1s ease;position:relative;z-index:1}
.ep-fng-val{font-size:22px;font-weight:900;text-align:center;letter-spacing:0.12em}

/* Brand footer */
.ep-brand{font-size:9px;letter-spacing:0.35em;text-align:center;padding:6px 0;opacity:0.7;flex-shrink:0;margin-top:auto;border-top:3px solid var(--gold);font-weight:900}
.ep-brand-bull{color:var(--text-dark)}
.ep-brand-bear{color:var(--text-dark)}

/* Swipe indicators */
.swipe-indicators{display:none;gap:8px;align-items:center;justify-content:center;padding:6px 0 2px 0}
.swipe-dot{width:8px;height:8px;border-radius:50%;background:rgba(0,0,0,0.15);cursor:pointer;transition:all 0.3s ease}
.swipe-dot.active{background:var(--gold);width:24px;border-radius:4px;box-shadow:0 0 6px rgba(255,236,49,0.5)}
.left-panel *,.right-panel *{filter:none}
.left-panel{display:flex!important;flex-direction:column!important;width:100%!important;overflow:hidden!important;padding:0!important;gap:0!important;justify-content:center!important;align-items:center!important;perspective:2500px;perspective-origin:center center;background:var(--bg-white)}

.flip-container{position:relative;width:100%;height:100%;overflow:hidden}
.flip-container-inner{position:relative;width:100%;height:100%}
.flip-front{position:relative;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;overflow-y:auto;opacity:1;pointer-events:auto;visibility:visible}
.flip-back{display:none!important}


/* Overlay Popups */
#legalOverlay,#welcomeOverlay{position:fixed;inset:0;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;overflow-y:auto;backdrop-filter:blur(4px)}
#legalPopup,#welcomePopup{background:var(--bg-white);border:4px solid var(--gold);box-shadow:8px 8px 0 #000,0 0 0 2px var(--gold);border-radius:8px;padding:24px;text-align:center;animation:pop .3s ease-out;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative}
#legalPopup::before,#welcomePopup::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 20px,#000 20px,#000 40px)}
#welcomePopup{z-index:1000}
#welcomePopup h2{color:var(--text-dark);font-size:28px;font-weight:900;margin-bottom:20px;text-transform:uppercase;letter-spacing:0.1em;text-shadow:2px 2px 0 var(--gold)}
.welcome-content{text-align:left;font-size:14px;line-height:1.8;color:var(--text-dark);max-height:400px;overflow-y:auto;padding:20px;background:var(--bg-light);border:2px solid var(--gold);border-radius:4px;margin:20px 0}
.welcome-content p{margin:12px 0;color:var(--text-dark);font-weight:500}
.welcome-content p strong{color:var(--text-dark);font-weight:900;font-size:16px;display:block;margin-bottom:4px}
.welcome-content ul{margin:12px 0;padding-left:24px}
.welcome-content li{margin:8px 0;color:var(--text-dark);line-height:1.6}
.welcome-content li strong{color:var(--text-dark);font-weight:700}

/* Welcome popup: in-game button replica (non-interactive) */
.welcome-game-button-wrapper{margin:8px 0 10px}
.welcome-game-button{
  width:100%;
  padding:10px 12px;
  background:linear-gradient(135deg,var(--gold),#FFD700,var(--gold));
  color:#000;
  border:2px solid var(--gold);
  font-weight:600;
  box-shadow:0 0 8px rgba(255,236,49,0.3);
  text-transform:uppercase;
  letter-spacing:0.06em;
  font-size:clamp(10px,2.8vw,12px);
  border-radius:6px;
  position:relative;
  overflow:hidden;
  pointer-events:none;
  white-space:nowrap;
  line-height:1.3;
  text-align:center;
}
.welcome-howto{font-size:14px;line-height:1.8;margin-bottom:8px}
.welcome-combos-text{margin:12px 0}
.welcome-combos-line1,.welcome-combos-line2,.welcome-combos-line3{font-size:14px;line-height:1.8;margin:0!important;color:var(--text-dark);text-align:left}

/* Welcome popup: stickers (match in-game vibe) */
.welcome-stickers{margin:10px 0 2px}
.welcome-sticker-row{display:flex;gap:10px;justify-content:center;align-items:center;margin:8px 0;flex-wrap:wrap}
.welcome-sticker{
  --sticker:#4facfe;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  background:#0b0b0b;
  color:#fff;
  border:3px solid var(--sticker);
  border-radius:8px;
  font-weight:900;
  font-size:14px;
  letter-spacing:0.04em;
  text-transform:uppercase;
  box-shadow:0 0 18px color-mix(in srgb, var(--sticker) 55%, transparent), inset 0 0 10px rgba(0,0,0,0.55);
}
.welcome-sticker.s-x125{--sticker:#4facfe}
.welcome-sticker.s-x150{--sticker:#ff3cac}
.welcome-sticker.s-808{--sticker:#FFD700;color:#fff}
.welcome-sticker.s-build{--sticker:#8f00ff} /* avoid second pink */
.welcome-sticker.s-wagbi{--sticker:#00ff9c;color:#fff}
.welcome-sticker.s-bob{--sticker:#ffe600;color:#fff}
#legalPopup h3{color:var(--text-dark);font-size:24px;font-weight:900;margin-bottom:16px;text-transform:uppercase;letter-spacing:0.1em;text-shadow:2px 2px 0 var(--gold)}
button:focus-visible, .close-btn:focus-visible, .tab-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px;box-shadow:0 0 15px rgba(255,236,49,0.6)}
a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.close-btn{position:absolute!important;top:12px!important;right:12px!important;background:linear-gradient(135deg,var(--gold),#FFD700)!important;border:3px solid var(--gold)!important;color:#000!important;font-size:20px!important;cursor:pointer!important;padding:6px 12px!important;width:auto!important;height:auto!important;display:inline-block!important;line-height:1!important;transition:all .2s!important;box-shadow:0 0 8px rgba(255,236,49,0.3)!important;font-weight:900!important;letter-spacing:normal!important;border-radius:6px!important}
.close-btn:hover{box-shadow:0 0 12px rgba(255,236,49,0.5)!important;background:linear-gradient(135deg,#FFD700,var(--gold))!important;border-color:#000!important}
.close-btn:active{box-shadow:0 0 6px rgba(255,236,49,0.3)!important}

.popup-buttons button:not(.close-btn){padding:12px 18px;background:var(--gold);color:#000;border:3px solid var(--gold);font-weight:900;letter-spacing:0.1em;text-transform:uppercase;border-radius:4px;cursor:pointer;box-shadow:0 0 10px rgba(255,236,49,0.3);transition:all .2s;font-size:12px;text-decoration:none;display:inline-block}
.popup-buttons button:not(.close-btn):hover{box-shadow:0 0 15px rgba(255,236,49,0.5);background:#FFEC31;border-color:#000}
.popup-buttons button:not(.close-btn):active{box-shadow:0 0 6px rgba(255,236,49,0.3)!important}
.header h1{position:sticky;top:12px;z-index:10}
.footer{position:sticky;bottom:12px;z-index:10;pointer-events:none}


/* Mobile & Tablet - Portrait Mode Only - Optimiert für alle Elemente sichtbar */
@media (pointer:coarse) and (orientation:portrait){
  html,body{width:100vw;height:100svh;overflow:hidden;position:fixed}
  /* Gelb-schwarze Linien oben und unten entfernt */
  body::before{display:none!important}
  body::after{display:none!important}
  .desktop-layout{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;width:300vw!important;height:100svh!important;max-height:100svh!important;transition:transform 0.35s cubic-bezier(0.25,0.46,0.45,0.94);will-change:transform;transform:translateX(-100vw)}
  .bob-panel{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:100vw!important;min-width:100vw!important;height:100svh!important;flex-shrink:0!important;padding:40px 20px!important;gap:24px!important}
  .bob-panel-img{max-width:80vw!important;max-height:60svh!important;width:85%!important;opacity:0.95!important}
  .bob-panel-label{font-size:24px!important;letter-spacing:0.35em!important}
  .bob-panel:has(.ep){padding:0!important;justify-content:flex-start!important;overflow:hidden!important}
  .ep{height:100svh!important}
  /* Mobile Performance: teure Animationen deaktivieren */
  .ep-bg-bull,.ep-bg-bear{animation:none!important;opacity:0.4!important}
  .ep-bob-bull,.ep-bob-bear{animation:none!important}
  .ep-bob-bull{filter:drop-shadow(2px 2px 4px rgba(0,0,0,0.3))!important}
  .ep-bob-bear{filter:drop-shadow(2px 2px 4px rgba(0,0,0,0.3))!important}
  .ep-price-val{animation:none!important}
  .ep-dot-live{animation:dotBlink 2s ease-in-out infinite!important}
  .bob-image{animation:none!important}
  .ep-trade{animation:none!important}
  .ep-hero{padding:20px 24px 12px!important;gap:18px!important}
  .ep-bob{width:100px!important;height:100px!important}
  .ep-title{font-size:48px!important}
  .ep-sub{font-size:11px!important;letter-spacing:0.35em!important}
  .ep-price{margin:6px 18px!important;padding:18px 22px!important}
  .ep-price-val{font-size:48px!important}
  .ep-price-label{font-size:10px!important}
  .ep-momentum{margin:6px 18px!important;padding:10px 16px!important}
  .ep-mom-head{font-size:10px!important}
  .ep-mom-bar{height:10px!important}
  .ep-cards{margin:0 18px!important}
  .ep-card-grid{gap:8px!important}
  .ep-card{padding:16px 12px!important}
  .ep-card-val{font-size:24px!important}
  .ep-card-label{font-size:10px!important}
  .ep-highlight-row{margin-top:8px!important}
  .ep-highlight{padding:16px 18px!important}
  .ep-highlight-val{font-size:34px!important}
  .ep-highlight-label{font-size:10px!important}
  .ep-divider{margin:8px auto 4px!important}
  .ep-badges{margin:8px 18px 4px!important;gap:5px!important;min-height:50px!important}
  .ep-badge{padding:12px 16px!important}
  .ep-badge-val{font-size:22px!important}
  .ep-badge-tf{font-size:10px!important}
  .ep-trades-head{margin:6px 18px 5px!important;font-size:11px!important;padding-top:6px!important;letter-spacing:0.35em!important}
  .ep-trades{margin:0 18px!important;gap:6px!important}
  .ep-trade{padding:12px 16px!important}
  .ep-trade-amount{font-size:22px!important}
  .ep-trade-meta{font-size:10px!important}
  .ep-trade-empty{font-size:11px!important}
  .ep-fng{margin:8px 18px!important;padding:18px 22px!important}
  .ep-fng-val{font-size:32px!important}
  .ep-fng-label{font-size:10px!important;margin-bottom:8px!important}
  .ep-fng-bar{height:12px!important;margin-bottom:10px!important}
  .ep-brand{font-size:11px!important;letter-spacing:0.45em!important;padding:10px 0!important}
  .bob-panel-happy{order:0!important}
  .left-panel{order:1!important;width:100vw!important;min-width:100vw!important;height:100svh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;overflow:hidden!important;flex-shrink:0!important}
  .bob-panel-angry{order:2!important}
  .swipe-indicators{display:flex!important;justify-content:center!important}
  .flip-container{width:100%!important;height:100%!important;max-width:100vw!important;max-height:100svh!important}
  .flip-container-inner{width:100%!important;height:100%!important}
  .flip-front,.flip-back{width:100%!important;height:100%!important;max-width:100vw!important;max-height:100svh!important}
  .page{width:100%!important;height:100%!important;max-width:100vw!important;max-height:100svh!important}
  .game{width:100%!important;height:100%!important;max-width:100vw!important;max-height:100svh!important;display:flex!important;flex-direction:column!important;padding:0!important;margin:0!important;justify-content:flex-start!important}
  
  /* Header optimiert für Mobile */
  header{padding:6px 6px 4px!important;flex-shrink:0!important}
  .header-content{gap:6px!important}
  .bob-image{width:32px!important;height:32px!important;flex-shrink:0!important}
  .header-text h1{font-size:16px!important;margin:0!important;line-height:1.2!important}
  .header-text .tagline{font-size:9px!important;margin:2px 0 0 0!important}
  
  /* HUD optimiert */
  .hud{font-size:10px!important;padding:6px 8px!important;margin:4px 0!important;gap:4px!important;flex-shrink:0!important}
  .hud span{font-size:10px!important}
  .hud b{font-size:11px!important}
  .hud-highscore-btn{padding:4px 8px!important;font-size:9px!important;letter-spacing:0.06em!important;white-space:nowrap!important}
  
  /* Milestones optimiert */
  .milestones{font-size:9px!important;padding:4px 8px!important;margin:2px 0!important;gap:4px!important;flex-shrink:0!important}
  .milestones span{padding:4px 6px!important;font-size:8px!important;letter-spacing:0.08em!important}
  
  /* Progress Bar optimiert */
  .progressTop{height:14px!important;margin:2px 8px!important;flex-shrink:0!important}
  
  /* Canvas - nimmt restlichen Platz ein */
  .play{flex:1 1 auto!important;min-height:0!important;margin:2px 8px!important;overflow:hidden!important}
  canvas{width:100%!important;height:100%!important;display:block!important}
  
  /* Footer optimiert */
  footer{padding:8px!important;flex-shrink:0!important;gap:4px!important}
  #drop{padding:8px 12px!important;font-size:11px!important;letter-spacing:0.1em!important}
  
  #highscoreOverlay,#overlay,#legalOverlay{padding:20px!important}
  #highscorePopup,#popup,#legalPopup{max-width:95vw!important;max-height:90svh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
}

/* Tablet Portrait - Optimiert */
@media (pointer:coarse) and (orientation:portrait) and (min-width:600px) and (max-width:1024px){
  header{padding:10px 8px!important}
  .header-text h1{font-size:18px!important}
  .hud{font-size:11px!important;padding:8px 10px!important}
  .milestones{font-size:10px!important;padding:8px 10px!important}
  .milestones span{font-size:9px!important;padding:5px 8px!important}
}

/* Sehr kleine Mobile Geräte */
@media (pointer:coarse) and (orientation:portrait) and (max-height:700px){
  header{padding:6px 4px!important}
  .header-content{gap:4px!important}
  .bob-image{width:28px!important;height:28px!important}
  .header-text h1{font-size:14px!important}
  .header-text .tagline{font-size:8px!important;margin:1px 0 0 0!important}
  .hud{font-size:9px!important;padding:4px 6px!important;margin:2px 0!important}
  .hud b{font-size:10px!important}
  .hud-highscore-btn{padding:3px 6px!important;font-size:8px!important}
  .milestones{font-size:8px!important;padding:4px 6px!important;margin:2px 0!important}
  .milestones span{padding:3px 5px!important;font-size:7px!important}
  .progressTop{height:12px!important;margin:2px 6px!important}
  .play{margin:2px 6px!important}
  footer{padding:6px!important}
  #drop{padding:8px 10px!important;font-size:10px!important}
  .ep-hero{padding:10px 14px 6px!important;gap:10px!important}
  .ep-bob{width:70px!important;height:70px!important}
  .ep-title{font-size:32px!important}
  .ep-sub{font-size:9px!important}
  .ep-price{margin:3px 12px!important;padding:10px 14px!important}
  .ep-price-val{font-size:32px!important}
  .ep-price-label{font-size:8px!important}
  .ep-momentum{margin:3px 12px!important;padding:6px 10px!important}
  .ep-mom-head{font-size:8px!important}
  .ep-mom-bar{height:7px!important}
  .ep-cards{margin:0 12px!important}
  .ep-card-grid{gap:5px!important}
  .ep-card{padding:10px 6px!important}
  .ep-card-val{font-size:16px!important}
  .ep-card-label{font-size:7px!important}
  .ep-highlight-row{margin-top:4px!important;gap:4px!important}
  .ep-highlight{padding:8px 12px!important;gap:6px!important}
  .ep-highlight-val{font-size:22px!important}
  .ep-highlight-label{font-size:7px!important}
  .ep-divider{margin:4px auto 2px!important}
  .ep-badges{margin:4px 12px 2px!important;gap:4px!important;min-height:34px!important}
  .ep-badge{padding:7px 10px!important}
  .ep-badge-val{font-size:16px!important}
  .ep-badge-tf{font-size:8px!important}
  .ep-trades-head{margin:3px 12px 3px!important;font-size:9px!important;padding-top:4px!important}
  .ep-trades{margin:0 12px!important;gap:3px!important}
  .ep-trade{padding:8px 12px!important}
  .ep-trade-amount{font-size:16px!important}
  .ep-trade-meta{font-size:8px!important}
  .ep-fng{margin:4px 12px!important;padding:10px 14px!important}
  .ep-fng-val{font-size:22px!important}
  .ep-fng-label{font-size:8px!important;margin-bottom:5px!important}
  .ep-fng-bar{height:8px!important;margin-bottom:6px!important}
  .ep-brand{font-size:8px!important;padding:4px 0!important;letter-spacing:0.35em!important}
}

/* Landscape Mode - Blocked */
@media (pointer:coarse) and (orientation:landscape){
  .desktop-layout{display:none!important}
  body{overflow:hidden!important;position:fixed;width:100vw;height:100vh}
  body::before{content:"PLEASE ROTATE YOUR DEVICE\A PORTRAIT MODE REQUIRED";white-space:pre-line;position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;z-index:9999;display:flex!important;justify-content:center!important;align-items:center!important;background:var(--bg-white);color:var(--gold);font-family:system-ui,monospace;font-size:20px;letter-spacing:0.2em;text-align:center;font-weight:900;text-shadow:2px 2px 0 #000;border:4px solid var(--gold);box-shadow:8px 8px 0 #000;margin:0;padding:0}
  body::after{display:none!important}
}

/* Tablet Landscape - Also Blocked */
@media (pointer:coarse) and (orientation:landscape) and (min-width:600px){
  body::before{font-size:24px!important}
}

/* Desktop - Pointer Fine (Mouse/Trackpad) */
@media (pointer:fine){
  .desktop-layout{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;width:100vw!important;height:100vh!important}
  .bob-panel{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;overflow:hidden!important;height:100vh!important;padding:0!important;gap:0!important}
  .bob-panel-img{max-width:500px!important;max-height:65vh!important;width:85%!important;opacity:0.9!important}
  .bob-panel-label{font-size:24px!important;letter-spacing:0.3em!important}
  .bob-panel:has(.ep){justify-content:flex-start!important;overflow:hidden!important}
  .ep{height:100vh!important}
  .ep-hero{padding:20px 24px 12px!important;gap:18px!important}
  .ep-bob{width:100px!important;height:100px!important}
  .ep-title{font-size:48px!important}
  .ep-sub{font-size:11px!important;letter-spacing:0.35em!important}
  .ep-price{margin:6px 18px!important;padding:18px 22px!important}
  .ep-price-val{font-size:48px!important}
  .ep-price-label{font-size:10px!important}
  .ep-momentum{margin:6px 18px!important;padding:10px 16px!important}
  .ep-mom-head{font-size:10px!important}
  .ep-mom-bar{height:10px!important}
  .ep-cards{margin:0 18px!important}
  .ep-card-grid{gap:8px!important}
  .ep-card{padding:16px 12px!important}
  .ep-card-val{font-size:24px!important}
  .ep-card-label{font-size:10px!important}
  .ep-highlight-row{margin-top:8px!important}
  .ep-highlight{padding:16px 18px!important}
  .ep-highlight-val{font-size:34px!important}
  .ep-highlight-label{font-size:10px!important}
  .ep-badges{margin:8px 18px 4px!important;min-height:50px!important}
  .ep-badge{padding:12px 16px!important}
  .ep-badge-val{font-size:22px!important}
  .ep-badge-tf{font-size:10px!important}
  .ep-divider{margin:8px auto 4px!important}
  .ep-trades-head{font-size:11px!important;margin:6px 18px 5px!important;letter-spacing:0.35em!important}
  .ep-trades{margin:0 18px!important;gap:6px!important}
  .ep-trade{padding:12px 16px!important}
  .ep-trade-amount{font-size:22px!important}
  .ep-trade-meta{font-size:10px!important}
  .ep-trade-empty{font-size:11px!important}
  .ep-fng{margin:8px 18px!important;padding:18px 22px!important}
  .ep-fng-val{font-size:32px!important}
  .ep-fng-label{font-size:10px!important}
  .ep-fng-bar{height:12px!important;margin-bottom:10px!important}
  .ep-brand{font-size:11px!important;letter-spacing:0.45em!important;padding:10px 0!important}
  .bob-panel-happy{order:0}
  .left-panel{order:1;display:flex!important;overflow:hidden!important;z-index:1;justify-content:center!important;align-items:center!important}
  .bob-panel-angry{order:2}
  .right-panel{display:none!important}
  .game-center{display:none!important}
  .swipe-indicators{display:none!important}
  .flip-container{max-width:100%!important;max-height:100vh!important;width:100%!important;height:100%!important}
  .flip-container-inner{max-width:100%!important;max-height:100vh!important;width:100%!important;height:100%!important}
  .flip-front,.flip-back{max-width:100%!important;max-height:100vh!important;width:100%!important;height:100%!important}
  .page{width:100%!important;height:100%!important;max-width:100%!important;max-height:100vh!important}
  .game{position:relative!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100vh!important;transform:none!important;display:flex!important;flex-direction:column!important}
  canvas{width:100%!important;height:100%!important;flex:1 1 auto!important}
}

html,body{min-height:100%;overflow-x:hidden}
@supports (padding:env(safe-area-inset-top)){
  body{min-height:100svh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);background:#000}
  .desktop-layout{min-height:calc(100svh - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
}


/* Zusätzliche dynamische Effekte */
@keyframes float{0%,100%{transform:translateY(0px)}50%{transform:translateY(-10px)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.7}}
@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}
/* Entfernte Animationen, die Skalierung verursachen */

/* Dynamische Text-Effekte */
h1{position:relative;display:inline-block}
h1::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--gold);transition:width .5s ease}
h1:hover::after{width:100%}

/* Dynamische Effekte beim Laden - nur visuelle Effekte, keine Bewegung */

/* Dynamische Highscore Entry Animationen - nur visuelle Effekte */

/* Dynamische Stat Card Animationen - nur visuelle Effekte */

/* Dynamische Scroll-Indikatoren */
.hs-entries::-webkit-scrollbar{width:8px}
.hs-entries::-webkit-scrollbar-track{background:var(--bg-light);border-radius:4px}
.hs-entries::-webkit-scrollbar-thumb{background:var(--gold);border-radius:4px;transition:background .3s}
.hs-entries::-webkit-scrollbar-thumb:hover{background:#FFD700}

/* Dynamische Focus States */
button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px;box-shadow:0 0 0 6px rgba(255,236,49,.2)}

/* Dynamische Success/Error States */
.success{animation:pulse .5s ease-out,glowPulse 2s ease-in-out infinite}
.error{animation:shake .5s ease-out}

/* Dynamische Cursor-Effekte */

/* Reduzierte Animationen bei niedriger Performance */
body.low-performance *{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}

/* Accessibility: Reduzierte Animationen bei User-Präferenz */
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}