@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-regular.woff) format('woff')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-medium.woff) format('woff')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600 800;font-display:swap;src:url(/fonts/poppins-bold.woff) format('woff')}
/* Layout: phone-first app shell, one column max 480px, fixed bottom tab bar. Deliberately single dark theme (brand world of the shop signs). */
:root{
  --bg:#0B0B14; --surface:#14152A; --surface2:#1C1E38; --line:#262842;
  --fg:#FFFFFF; --muted:#B9BCCB; --dim:#8E92A8;
  --orange:#FF8200; --blue:#0381F2; --red:#E5383B; --violet:#9B51E0; --good:#2BB673;
  --font-display:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-body:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-mono:ui-monospace,'SF Mono','SFMono-Regular',Menlo,Consolas,monospace;
  --r:14px; --r-lg:20px; --r-sm:10px;
  color-scheme:only dark;
}
html,body{height:100%}
body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
button{font:inherit;color:inherit;cursor:pointer}
a{color:var(--orange)}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.app{max-width:480px;margin:0 auto;min-height:100%;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:12px calc(96px + env(safe-area-inset-bottom,0px))}
header.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:6px 14px}
.brand{display:flex;align-items:center;gap:10px}
.flame{width:38px;height:38px;flex-shrink:0;object-fit:contain;display:block}
.brand b{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:.5px;display:block;line-height:1}
.brand small{display:block;font-size:10px;letter-spacing:2.5px;color:var(--blue);font-weight:600;margin-top:3px}
.pts-pill{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-weight:600;font-variant-numeric:tabular-nums}
.pts-pill i{width:8px;height:8px;border-radius:50%;background:var(--orange);display:block}
h1,h2,h3{font-family:var(--font-display);text-wrap:balance;margin:0}
h1{font-size:26px;font-weight:800;line-height:1.1}
h2{font-size:18px;font-weight:600}
h3{font-size:15px;font-weight:600}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--dim)}
.muted{color:var(--muted)} .dim{color:var(--dim)}
.view{display:flex;flex-direction:column;gap:16px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.row{display:flex;align-items:center;gap:12px;min-width:0}
.row.between{justify-content:space-between}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.btn{border:0;border-radius:var(--r-sm);padding:13px 16px;font-weight:600;background:var(--orange);color:#0B0B14;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.btn.blue{background:var(--blue);color:#fff}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--fg)}
.btn.small{padding:8px 12px;font-size:13px;border-radius:var(--r-sm)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.block{width:100%}
.demo-banner{background:rgba(3,129,242,.12);border:1px solid rgba(3,129,242,.45);border-radius:var(--r-sm);padding:10px 12px;font-size:13px;display:flex;gap:10px;align-items:center;justify-content:space-between}
/* hero balance */
.balance{background:linear-gradient(160deg,#1A1C3A 0%,#14152A 60%);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:14px}
.balance .num{font-family:var(--font-display);font-size:44px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}
.balance .num span{font-size:16px;font-weight:600;color:var(--orange);margin-left:6px}
.bar{height:8px;background:var(--surface2);border-radius:99px;overflow:hidden}
.bar>i{display:block;height:100%;background:var(--orange);border-radius:99px;transition:width .5s}
.scroller{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;margin-inline:-2px}
.promo{scroll-snap-align:start;flex:0 0 78%;border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:6px;min-height:118px;border:1px solid var(--line);background:var(--surface)}
.promo.o{background:var(--orange);color:#0B0B14;border-color:var(--orange)}
.promo .tag{font-size:10px;font-weight:800;letter-spacing:2px}
.promo .big{font-family:var(--font-display);font-size:20px;font-weight:800;line-height:1.1}
.promo.o .tag{color:#0B0B14}
.promo:not(.o) .tag{color:var(--orange)}
/* stamps */
/* hotchip */
.stage{display:flex;flex-direction:column;align-items:center;gap:18px;padding-block:8px}
.toss-area{position:relative;width:100%;height:330px;display:flex;align-items:flex-end;justify-content:center;perspective:1000px;overflow:visible}
.hand{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:200px;height:44px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),rgba(0,0,0,0) 70%)}
.coin-fly{position:relative;width:170px;height:170px;margin-bottom:26px;transform-style:preserve-3d}
.coin{width:100%;height:100%;position:relative;transform-style:preserve-3d}
.edge{position:absolute;inset:0;border-radius:50%;background:#7A8090}
.face{position:absolute;inset:0;border-radius:50%;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:grid;place-items:center;overflow:hidden}
.face svg{width:100%;height:100%;display:block}
.face.blue{transform:translateZ(8.5px);box-shadow:0 0 30px rgba(255,164,31,.45)}
.face.red{transform:rotateX(180deg) translateZ(8.5px);box-shadow:0 0 34px rgba(229,56,59,.5)}
.coin.idle{animation:idle 3.2s ease-in-out infinite}
@keyframes idle{0%,100%{transform:rotateX(14deg) rotateY(-10deg)}50%{transform:rotateX(-8deg) rotateY(12deg)}}
.tap-hint{font-size:12px;color:var(--dim);letter-spacing:1px}
.rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rule{border-radius:var(--r-sm);padding:12px;font-size:13px;display:flex;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line)}
.dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}
.result{text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}
.result .big{font-family:var(--font-display);font-size:28px;font-weight:800}
.prizes{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:12px;color:var(--muted);background:var(--surface)}
.chip.ex{border-color:rgba(155,81,224,.6);color:#CDA8F2}
/* vouchers */
.tabs{display:flex;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:4px}
.tabs button{flex:1;border:0;background:transparent;border-radius:9px;padding:8px;font-size:13px;font-weight:500;color:var(--muted)}
.tabs button[aria-selected="true"]{background:var(--surface2);color:var(--fg)}
.voucher{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-align:left;width:100%;padding:0}
.voucher .stub{width:74px;flex-shrink:0;display:grid;place-items:center;background:var(--orange);color:#0B0B14;font-family:var(--font-display);font-weight:800;font-size:12px;letter-spacing:1px;text-align:center;padding:6px;border-right:2px dashed var(--bg)}
.voucher.blue .stub{background:var(--blue);color:#fff}
.voucher.used{opacity:.5}
.voucher .body{padding:12px 14px;display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.voucher .code{font-family:var(--font-mono);font-size:12px;color:var(--dim)}
.reward{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid var(--line)}
.reward:first-of-type{border-top:0}
.cost{font-variant-numeric:tabular-nums;font-weight:600;color:var(--orange);white-space:nowrap}
/* member card */
.mcard{border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:14px;background:linear-gradient(135deg,#1F2142,#0E0F1E);border:1px solid var(--line);position:relative;overflow:hidden}
.mcard.Silber{background:linear-gradient(135deg,#5C6175,#2A2D3D)}
.mcard.Gold{background:linear-gradient(135deg,#B98522,#4A3410)}
.mcard.Platin{background:linear-gradient(135deg,#6E4AA8,#1F1438)}
.mcard>*{position:relative;z-index:1}
.mcard .shine{position:absolute;inset:0;z-index:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.16) 50%,transparent 65%);background-size:250% 100%;animation:shine 3.5s linear infinite;pointer-events:none}
@keyframes shine{from{background-position:150% 0}to{background-position:-100% 0}}
.status-live{display:flex;gap:10px;align-items:center;background:rgba(0,0,0,.28);border-radius:var(--r-sm);padding:10px 12px;font-size:14px}
.status-live .clock{font-family:var(--font-mono);font-size:13px;opacity:.85;margin-top:2px}
.pulse{width:12px;height:12px;border-radius:50%;background:var(--good);flex-shrink:0;box-shadow:0 0 0 0 rgba(43,182,115,.7);animation:pulse 1.6s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(43,182,115,0)}100%{box-shadow:0 0 0 0 rgba(43,182,115,0)}}
.mcard .tier{font-size:11px;font-weight:800;letter-spacing:3px}
.mcard .name{font-family:var(--font-display);font-size:22px;font-weight:800}
.qrbox{background:#fff;border-radius:var(--r-sm);padding:12px;align-self:center;display:grid;place-items:center}
.qrbox img,.qrbox canvas{display:block}
.barbox{background:#fff;border-radius:var(--r-sm);padding:14px 16px 8px;display:flex;flex-direction:column;gap:4px}
.bartext{color:#0B0B14;text-align:center;font-size:15px;letter-spacing:3px}
.mono{font-family:var(--font-mono);letter-spacing:1px}
/* list */
.list{display:flex;flex-direction:column}
.li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid var(--line);font-size:14px}
.li:first-child{border-top:0}
.li .plus{color:var(--good);font-weight:600;font-variant-numeric:tabular-nums}
.li .minus{color:var(--red);font-weight:600;font-variant-numeric:tabular-nums}
.menu button,.menu a{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;border-top:1px solid var(--line);padding:14px 0;text-align:left;color:var(--fg);text-decoration:none;font-size:15px}
.menu > :first-child{border-top:0}
.menu span.dim{font-size:13px}
.rank{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}
.rank:first-child{border-top:0}
.rank .pos{font-weight:800;color:var(--dim)}
.rank.me{color:var(--orange)}
label{font-size:13px;color:var(--muted);display:flex;flex-direction:column;gap:6px}
input,select,textarea{background:var(--surface2);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px;color:var(--fg);font:inherit;width:100%}textarea{resize:vertical;min-height:84px}
.form{display:flex;flex-direction:column;gap:12px}
.kasse{border:1.5px solid var(--violet)}
.ok{color:var(--good);font-weight:600}
.bad{color:var(--red);font-weight:600}
/* tab bar */
nav.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;background:rgba(11,11,20,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px))}
nav.tabbar .in{max-width:480px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr)}
nav.tabbar button{background:none;border:0;padding:10px 2px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:var(--dim)}
nav.tabbar button svg{width:22px;height:22px}
nav.tabbar button[aria-current="page"]{color:var(--orange)}
nav.tabbar button.chipbtn svg{color:var(--blue)}
/* overlay */
.sheet-bg{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:40;display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--surface);border:1px solid var(--line);border-radius:20px 20px 0 0;width:100%;max-width:480px;padding:20px max(16px,env(safe-area-inset-left,0px)) calc(20px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:14px;max-height:92%;overflow:auto}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:50}
@media (prefers-reduced-motion:reduce){.mcard .shine,.pulse{animation:none}.coin{transition:none}.bar>i{transition:none}}
/* ---- Web-App Ergänzungen ---- */
:root{padding-top:env(safe-area-inset-top,0px)}
.auth{max-width:420px;margin:0 auto;display:flex;flex-direction:column;gap:18px;padding-block:28px}
.auth .logo{display:flex;align-items:center;gap:12px}
.auth .logo .flame{width:56px;height:56px}
.err{color:var(--red);font-size:14px;min-height:1em}
.note{color:var(--muted);font-size:13px}
.linkbtn{background:none;border:0;color:var(--orange);font-weight:600;padding:0;text-decoration:underline}
.loading{display:grid;place-items:center;min-height:60vh;color:var(--dim)}
.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--orange);animation:spin 0.9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.vbar{background:#fff;border-radius:var(--r-sm);padding:12px 14px 6px;display:flex;flex-direction:column;gap:4px}
.status-big{border-radius:var(--r);padding:16px;display:flex;align-items:center;gap:14px;font-size:15px}
.status-big.ok{background:rgba(43,182,115,.14);border:1.5px solid var(--good)}
.status-big.no{background:rgba(229,56,59,.12);border:1.5px solid var(--red)}
.status-big.neutral{background:var(--surface);border:1px solid var(--line)}
.status-big .t{font-family:var(--font-display);font-size:22px;font-weight:800;line-height:1.1}
.scanfield{font-size:20px;padding:16px;font-family:var(--font-mono);letter-spacing:2px;text-align:center}
.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px;text-align:center}
.kpi b{display:block;font-family:var(--font-display);font-size:24px;font-variant-numeric:tabular-nums}
.kpi span{font-size:12px;color:var(--dim)}
#reader{width:100%;border-radius:var(--r-sm);overflow:hidden;background:#000}
.seg{display:flex;gap:6px;flex-wrap:wrap}
.seg button{flex:1;min-width:70px}
.seg button[aria-pressed="true"]{background:var(--orange);color:#0B0B14;border-color:var(--orange)}
/* ---- v2 ---- */
h1{letter-spacing:-.3px}
.install{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(135deg,rgba(255,130,0,.16),rgba(3,129,242,.12));border:1px solid rgba(255,130,0,.45);border-radius:var(--r);padding:12px 14px;font-size:13px}
.install b{display:block;font-size:14px;margin-bottom:2px}
.install .x{margin-left:auto;background:none;border:0;color:var(--dim);font-size:20px;line-height:1;padding:0 4px}
.live-game{border:1.5px solid var(--good);background:rgba(43,182,115,.08)}
.live-game .time{font-family:var(--font-display);font-size:30px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}
.countdown{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--fg)}
.fullcard{position:fixed;inset:0;z-index:70;background:radial-gradient(120% 80% at 50% 0%,#23264A 0%,#0B0B14 70%);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:calc(24px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}
.fullcard .fc-name{font-family:var(--font-display);font-size:24px;font-weight:800;text-align:left;line-height:1.1}
.fullcard .fc-tier{font-size:13px;font-weight:700;letter-spacing:3px;padding:6px 12px;border-radius:99px;background:rgba(0,0,0,.45);color:#fff;border:1px solid rgba(255,255,255,.2)}
.fullcard .fc-bar{width:100%;max-width:440px}
.fullcard .fc-clock{font-family:var(--font-mono);font-size:15px;color:#B9BCCB}
.fullcard .fc-hint{font-size:13px;color:#8E92A8;text-align:center;max-width:320px}
.fullcard .btn.ghost{color:#fff;border-color:rgba(255,255,255,.2)}
.legal{display:flex;flex-direction:column;gap:12px;font-size:14px;line-height:1.6}
.legal h2{margin-top:8px}
.legal p{margin:0;color:var(--muted)}
.legal a{color:var(--orange)}
.footer-links{display:flex;gap:16px;justify-content:center;font-size:12px;color:var(--dim)}
.footer-links a,.footer-links button{color:var(--dim);background:none;border:0;padding:0;font:inherit;text-decoration:underline}
.errorbox{display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center;padding-block:60px}
.skel{background:linear-gradient(90deg,var(--surface) 0%,var(--surface2) 50%,var(--surface) 100%);background-size:200% 100%;animation:skel 1.2s linear infinite;border-radius:var(--r)}
@keyframes skel{from{background-position:200% 0}to{background-position:-200% 0}}
.badge-new{display:inline-block;background:var(--orange);color:#0B0B14;font-size:10px;font-weight:700;letter-spacing:1px;border-radius:6px;padding:2px 6px;vertical-align:middle}
.quickamt{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.quickamt button{padding:10px 4px}
.alarm{animation:alarm 1s ease-in-out infinite}
@keyframes alarm{50%{border-color:var(--red);box-shadow:0 0 0 3px rgba(229,56,59,.35)}}
.searchres button{display:flex;justify-content:space-between;width:100%;background:none;border:0;border-top:1px solid var(--line);padding:12px 0;color:var(--fg);text-align:left;font:inherit}
.searchres button:first-child{border-top:0}
@media (prefers-reduced-motion:reduce){.skel,.alarm{animation:none}}
/* ---- Hotchip Arena ---- */
.arena{position:relative;border-radius:var(--r-lg);overflow:hidden;padding:22px 16px 20px;background:radial-gradient(120% 80% at 50% 0%,#1B2A5C 0%,#0E1230 45%,#07080F 100%);border:1px solid #23284A;display:flex;flex-direction:column;align-items:center;gap:14px;isolation:isolate}
.arena::before{content:"";position:absolute;inset:-50%;z-index:-2;background:conic-gradient(from 0deg,transparent 0 10deg,rgba(3,129,242,.16) 14deg,transparent 22deg,transparent 40deg,rgba(255,130,0,.10) 46deg,transparent 54deg,transparent 80deg,rgba(3,129,242,.14) 86deg,transparent 94deg,transparent 130deg,rgba(229,56,59,.10) 136deg,transparent 144deg,transparent 180deg,rgba(3,129,242,.16) 194deg,transparent 202deg,transparent 240deg,rgba(255,130,0,.10) 246deg,transparent 254deg,transparent 300deg,rgba(229,56,59,.12) 306deg,transparent 314deg);animation:rays 40s linear infinite}
.arena::after{content:"";position:absolute;left:50%;bottom:86px;width:260px;height:60px;transform:translateX(-50%);z-index:-1;background:radial-gradient(ellipse at center,rgba(3,129,242,.45),rgba(3,129,242,0) 70%);filter:blur(4px)}
@keyframes rays{to{transform:rotate(360deg)}}
.arena-title{font-family:var(--font-display);font-weight:800;font-size:40px;line-height:.95;letter-spacing:1px;text-align:center;background:linear-gradient(180deg,#FFFFFF 0%,#BFD9FF 55%,#5AB0FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 30px rgba(3,129,242,.35)}
.arena-sub{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--muted);font-weight:500}
.arena-sub i{width:10px;height:10px;border-radius:50%;display:inline-block}
.spinpips{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--dim)}
.spinpips span{width:28px;height:6px;border-radius:9px;background:#2A2F55}
.spinpips span.on{background:linear-gradient(90deg,#5AB0FF,#0381F2);box-shadow:0 0 10px rgba(3,129,242,.7)}
.arena .toss-area{height:300px}
.arena .coin-fly{width:190px;height:190px;margin-bottom:34px}
.spark{position:absolute;width:3px;height:3px;border-radius:50%;background:#BFD9FF;opacity:0;animation:spark 4s linear infinite;z-index:-1}
@keyframes spark{0%{opacity:0;transform:translateY(0)}15%{opacity:.9}100%{opacity:0;transform:translateY(-220px)}}
.throw{position:relative;width:100%;max-width:320px;border:0;border-radius:var(--r-lg);padding:18px;font-family:var(--font-display);font-weight:800;font-size:20px;letter-spacing:2px;color:#fff;background:linear-gradient(180deg,#2E9BFF 0%,#0381F2 55%,#0262BC 100%);box-shadow:0 10px 30px rgba(3,129,242,.45),inset 0 1px 0 rgba(255,255,255,.35);animation:throwpulse 2.2s ease-in-out infinite}
.throw:disabled{animation:none;background:#1C2142;color:#6B7096;box-shadow:none;letter-spacing:1px;font-size:16px}
.throw small{display:block;font-family:var(--font-body);font-weight:500;font-size:12px;letter-spacing:.5px;opacity:.85;margin-top:2px}
@keyframes throwpulse{50%{box-shadow:0 10px 44px rgba(3,129,242,.75),inset 0 1px 0 rgba(255,255,255,.35);transform:translateY(-1px)}}
.bigclock{font-family:var(--font-mono);font-size:34px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:2px;color:#fff;text-shadow:0 0 18px rgba(3,129,242,.6)}
.social{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.social span{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:99px;padding:6px 12px;font-size:12px;color:var(--muted)}
.social b{color:#fff}
.prizegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.prize{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 8px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center;font-size:12px;font-weight:500}
.prize svg{width:26px;height:26px;color:var(--orange)}
.winmodal{position:fixed;inset:0;z-index:65;display:flex;align-items:center;justify-content:center;padding:24px max(16px,env(safe-area-inset-left,0px));background:radial-gradient(circle at 50% 40%,rgba(10,60,130,.97),rgba(7,8,15,.985) 62%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadein .25s ease-out}
.winmodal.lose{background:radial-gradient(circle at 50% 40%,rgba(110,20,24,.97),rgba(7,8,15,.985) 62%)}
.wincard{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;animation:pop .45s cubic-bezier(.2,1.4,.4,1)}
.wincard .head{font-family:var(--font-display);font-weight:800;font-size:44px;line-height:1;letter-spacing:1px}
.ticket{width:100%;display:flex;border-radius:var(--r);overflow:hidden;background:#fff;color:#0B0B14;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.ticket .l{width:90px;background:var(--blue);color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:13px;letter-spacing:1px;border-right:3px dashed #fff;padding:8px}
.ticket .r{padding:16px;text-align:left;flex:1}
.ticket .r b{display:block;font-family:var(--font-display);font-size:19px;line-height:1.2}
.ticket .r span{font-size:12px;color:#4A4D66}
@keyframes pop{0%{transform:scale(.6);opacity:0}100%{transform:scale(1);opacity:1}}
@keyframes fadein{from{opacity:0}}
.shake{animation:shake .5s}
@keyframes shake{20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}
@media (prefers-reduced-motion:reduce){.arena::before,.spark,.throw{animation:none}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* ---- Login Vollbild ---- */
body.authmode{background:radial-gradient(120% 70% at 50% 0%,#1B2A5C 0%,#0E1230 45%,#07080F 100%) fixed}
body.authmode .app{padding-bottom:0}
.auth{min-height:calc(100svh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);justify-content:center;padding-block:16px;max-width:440px}
.auth-hero{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.auth-coin{width:min(34vw,140px);aspect-ratio:1;max-width:100%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#5AB0FF,#0381F2 55%,#01509C);border:5px solid #D8DCE6;box-shadow:0 0 40px rgba(3,129,242,.6),0 18px 40px rgba(0,0,0,.5);display:grid;place-items:center;animation:coinfloat 3.5s ease-in-out infinite}
.auth-coin svg{width:52%;height:52%}
@keyframes coinfloat{0%,100%{transform:translateY(0) rotateY(0)}50%{transform:translateY(-10px) rotateY(25deg)}}
.auth-title{font-family:var(--font-display);font-weight:800;font-size:clamp(28px,9vw,40px);line-height:1;letter-spacing:.5px}
.auth-title span{color:var(--orange)}
.auth-perks{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.auth-perks span{font-size:12px;font-weight:500;padding:5px 10px;border-radius:99px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:var(--muted)}
.auth .card{background:rgba(20,21,42,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.oauth{display:flex;flex-direction:column;gap:8px}
.oauth button{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:var(--r-sm);padding:12px;font-weight:600;border:1px solid var(--line);background:#fff;color:#1F1F1F}
.oauth button svg{width:18px;height:18px}
.divider{display:flex;align-items:center;gap:10px;color:var(--dim);font-size:12px}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line)}
@media (max-height:700px){.auth-coin{width:90px}.auth-perks{display:none}}
@media (prefers-reduced-motion:reduce){.auth-coin{animation:none}}
/* ---- Chat ---- */
.chat-wrap{display:flex;flex-direction:column;height:calc(100svh - 150px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));min-height:360px;background:#0A0B16;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.chat-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:1.5px;font-weight:600;color:var(--muted)}
.chat-head .live{display:flex;align-items:center;gap:6px;color:#fff}
.chat-head .live i{width:8px;height:8px;border-radius:50%;background:#FF3B3B;box-shadow:0 0 8px #FF3B3B;animation:pulse 1.6s infinite}
.chat-list{flex:1;overflow-y:auto;padding:8px 10px;display:flex;flex-direction:column;gap:3px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.msg{font-size:14px;line-height:1.45;word-wrap:break-word;overflow-wrap:anywhere;padding:3px 6px;border-radius:6px}
.msg:hover{background:rgba(255,255,255,.04)}
.msg .ts{color:#5D6188;font-size:11px;font-family:var(--font-mono);margin-right:6px}
.msg .nm{font-weight:700;cursor:default}
.msg .bd{display:inline-block;font-size:9px;font-weight:800;letter-spacing:1px;padding:1px 5px;border-radius:4px;margin-right:5px;vertical-align:2px;color:#0B0B14}
.bd.TEAM{background:#B57BFF}.bd.Platin{background:#C9B6FF}.bd.Gold{background:#F5C451}.bd.Silber{background:#C9CDD8}
.msg .tx{color:#E6E8F2}
.msg.flt .tx{color:#7A7FA3;font-style:italic}
.msg.sys{color:#7A7FA3;font-size:12px;text-align:center}
.msg .mod{margin-left:6px;background:none;border:0;color:#7A7FA3;font-size:11px;text-decoration:underline;padding:0}
.chat-input{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line);background:#0E0F1E}
.chat-input input{flex:1;min-width:0;padding:11px 12px;border-radius:var(--r-sm)}
.chat-input button{border:0;border-radius:var(--r-sm);padding:0 16px;background:var(--orange);color:#0B0B14;font-weight:700}
.chat-more{position:absolute;left:50%;transform:translateX(-50%);bottom:74px;background:var(--blue);color:#fff;border:0;border-radius:99px;padding:6px 12px;font-size:12px;font-weight:600}
.colors{display:flex;gap:8px;flex-wrap:wrap}
.colors button{width:30px;height:30px;border-radius:50%;border:2px solid transparent}
.colors button[aria-pressed="true"]{border-color:#fff}
/* ---- v4: kein Zoom, Chat-Animationen, Sticker ---- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-x:hidden;touch-action:manipulation;overscroll-behavior-y:none}
input,select,textarea{font-size:16px!important}
.app{min-height:100svh}
.msg{animation:msgIn .32s cubic-bezier(.2,.9,.3,1.2) both;transform-origin:left center}
.msg.old{animation:none}
@keyframes msgIn{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
.msg.me{background:linear-gradient(90deg,rgba(255,130,0,.14),rgba(255,130,0,0));border-left:2px solid var(--orange)}
.msg.fresh{animation:msgIn .32s cubic-bezier(.2,.9,.3,1.2) both,msgFlash 1.6s ease-out}
@keyframes msgFlash{0%{background:rgba(90,176,255,.22)}100%{background:transparent}}
.msg .stk{display:block;margin:4px 0 2px 2px;animation:stkPop .5s cubic-bezier(.2,1.6,.4,1) both}
.msg.old .stk{animation:none}
.msg .stk svg{display:block;filter:drop-shadow(0 6px 12px rgba(0,0,0,.45))}
@keyframes stkPop{0%{transform:scale(.2) rotate(-12deg);opacity:0}70%{transform:scale(1.12) rotate(3deg);opacity:1}100%{transform:scale(1) rotate(0)}}
.chat-input{position:relative;align-items:center}
.chat-input .stbtn{background:var(--surface2);border:1px solid var(--line);color:var(--fg);padding:0;width:44px;height:44px;border-radius:var(--r-sm);display:grid;place-items:center;flex-shrink:0}
.chat-input .stbtn svg{width:24px;height:24px}
.chat-input button[type=submit]{height:44px;transition:transform .12s}
.chat-input button[type=submit]:active{transform:scale(.94)}
.stpanel{border-top:1px solid var(--line);background:#0E0F1E;padding:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:44vh;overflow-y:auto;animation:panelUp .22s ease-out}
@keyframes panelUp{from{transform:translateY(12px);opacity:0}}
.stpanel button{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px;display:grid;place-items:center;transition:transform .12s}
.stpanel button:active{transform:scale(.9)}
.stpanel button svg{width:100%;height:auto;max-width:64px}
.stpanel button.locked{opacity:.45}
.stpanel button .lk{position:absolute;right:4px;top:4px;font-size:9px;font-weight:800;letter-spacing:.5px;background:#F5C451;color:#0B0B14;border-radius:4px;padding:1px 4px}
.stpanel .sthead{grid-column:1/-1;font-size:11px;letter-spacing:2px;font-weight:600;color:var(--dim)}
@media (prefers-reduced-motion:reduce){.msg,.msg .stk,.stpanel{animation:none}}
/* Doppeltipp-Zoom aus: touch-action wird nicht vererbt, daher auf alle Elemente */
html,body,*{touch-action:manipulation}

/* Münz-Glanz: Lichtreflex wandert über den Chip */
.face::after{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.35) 46%,transparent 54%);background-size:250% 100%;mix-blend-mode:overlay;animation:coinShine 4.5s ease-in-out infinite;pointer-events:none}
@keyframes coinShine{0%,40%{background-position:150% 0}70%,100%{background-position:-60% 0}}

@media (prefers-reduced-motion:reduce){.face::after{animation:none}}

.auth-coin{background:none;border:0;box-shadow:none;filter:drop-shadow(0 0 26px rgba(255,164,31,.45)) drop-shadow(0 16px 24px rgba(0,0,0,.5))}
.auth-coin svg{width:100%;height:100%}

/* ---- v5 Feinschliff ---- */
*{-webkit-tap-highlight-color:transparent}
.app{min-height:calc(100svh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
nav.tabbar{-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%)}
body.kb nav.tabbar{display:none}
body.kb .chat-wrap{height:calc(100svh - 90px - env(safe-area-inset-top,0px))}
.btn,.quick button,.menu button,.voucher,.cardstrip,.prize,.plan .btn,.tabs button,nav.tabbar button,.pts-pill{transition:transform .14s cubic-bezier(.2,.8,.2,1),opacity .14s,background-color .2s}
.btn:active,.quick button:active,.menu button:active,.voucher:active,.cardstrip:active,nav.tabbar button:active,.pts-pill:active{transform:scale(.96)}
nav.tabbar button[aria-current="page"] svg{transform:translateY(-1px)}
#toasts{position:fixed;left:50%;transform:translateX(-50%);top:calc(12px + env(safe-area-inset-top,0px));z-index:90;display:flex;flex-direction:column;gap:8px;align-items:center;width:calc(100% - 32px);max-width:440px;pointer-events:none}
.toast{position:static;transform:none;left:auto;bottom:auto;background:rgba(255,255,255,.96);color:#0B0B14;padding:11px 16px;border-radius:var(--r);font-weight:600;font-size:14px;box-shadow:0 10px 30px rgba(0,0,0,.35);animation:toastIn .32s cubic-bezier(.2,1.2,.4,1);max-width:100%;text-align:center}
.toast.out{opacity:0;transform:translateY(-8px);transition:opacity .25s,transform .25s}
@keyframes toastIn{from{opacity:0;transform:translateY(-14px) scale(.96)}}
.confetti{z-index:66}
.sheet{animation:sheetUp .34s cubic-bezier(.2,1,.3,1)}
.sheet::before{content:"";display:block;width:40px;height:5px;border-radius:9px;background:var(--line);margin:-8px auto 4px}
.sheet-bg{animation:fadein .2s}
@keyframes sheetUp{from{transform:translateY(100%)}}
.pts-pill.bump{transform:scale(1.08);box-shadow:0 0 0 3px rgba(255,130,0,.35)}
.howto{border:1.5px solid var(--orange);background:linear-gradient(135deg,rgba(255,130,0,.12),rgba(255,130,0,.02))}
.howto ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.howto ol b{color:var(--fg)}
.howto .x{background:none;border:0;color:var(--dim);font-size:22px;line-height:1;padding:0 4px}
.msg .ts{color:#7A7FA3}
@media (prefers-reduced-motion:reduce){.sheet,.toast,.sheet-bg{animation:none}}

/* Spiele-Tab */
.gcount{display:inline-block;min-width:18px;padding:0 5px;border-radius:99px;background:var(--orange,#FF8200);color:#0B0B14;font-size:11px;font-weight:700;line-height:18px;margin-left:4px}
.gamecard{gap:10px}
.gamecard .gtime{font-size:26px;letter-spacing:.5px}
.gamecard.over{border-color:var(--red);box-shadow:0 0 0 1px var(--red) inset}
.gamecard.over .gtime{color:var(--red)}
.gbar{height:6px;border-radius:99px;background:var(--surface2);overflow:hidden}
.gbar i{display:block;height:100%;background:linear-gradient(90deg,#0381F2,#FF8200);border-radius:99px;transition:width 1s linear}
.gamecard.over .gbar i{background:var(--red)}
.btn.red{background:var(--red);color:#fff;border-color:transparent}
.gamecard .gtime{white-space:nowrap}
.gamecard.over .gtime{font-size:18px;font-family:inherit;font-weight:700}
.gbtns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.gbtns .btn{padding-left:4px;padding-right:4px;white-space:nowrap}
.tabs button{white-space:nowrap}
.tabs .gcount{margin-left:3px}

/* Top-10 über dem Chat */
.topstrip{display:flex;gap:8px;overflow-x:auto;padding:8px 10px;border-bottom:1px solid var(--line);scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:stretch}
.topstrip::-webkit-scrollbar{display:none}
.toplbl{flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--orange);line-height:1.2;align-self:center;padding-right:2px}
.toplbl span{color:var(--muted);font-weight:500;letter-spacing:.5px;text-transform:capitalize}
.topitem{flex:0 0 auto;display:flex;align-items:center;gap:6px;background:var(--surface2);border:1px solid var(--line);border-radius:99px;padding:5px 10px 5px 6px;font-size:13px;white-space:nowrap}
.topitem .rk{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--surface);font-size:11px;color:var(--muted)}
.topitem svg{width:22px;height:22px}
.topitem .nm{font-weight:600}
.topitem .pt{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.topitem.r1{background:linear-gradient(180deg,rgba(255,194,51,.22),rgba(255,194,51,.08));border-color:#FFC233}
.topitem.r1 .nm{color:#FFC233}
.topitem.r2 .rk{background:#C9CED8;color:#0B0B14}
.topitem.r3 .rk{background:#CD7F32;color:#0B0B14}
.topitem.me{outline:2px solid var(--blue)}

/* Kamera-Scanner */
.camwrap{position:relative;border-radius:var(--r-sm);overflow:hidden;background:#000;aspect-ratio:4/3}
.camwrap video{width:100%;height:100%;object-fit:cover;display:block}
.camframe{position:absolute;left:5%;right:5%;top:30%;bottom:30%;border:3px solid var(--orange);border-radius:var(--r-sm);box-shadow:0 0 0 999px rgba(0,0,0,.35)}
.camframe i{position:absolute;left:8px;right:8px;top:50%;height:2px;background:#FF3B3F;box-shadow:0 0 8px #FF3B3F;animation:scanline 1.6s ease-in-out infinite}
@keyframes scanline{0%,100%{transform:translateY(-30px)}50%{transform:translateY(30px)}}
.camhint{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:12px;color:#fff;text-shadow:0 1px 3px #000}

/* ---------- Spiele-Hub ---------- */
.coinmini{flex-shrink:0;filter:drop-shadow(0 6px 14px rgba(3,129,242,.45))}
.coinmini svg{width:100%;height:100%;display:block}
.arena.hub{gap:12px}
.arena.hub::after,.arena.run::after{display:none}
.gtile{width:100%;display:flex;align-items:center;gap:14px;text-align:left;color:#fff;border-radius:var(--r-lg);padding:14px;background:linear-gradient(180deg,rgba(27,42,92,.75),rgba(10,13,34,.85));border:1px solid #2A3266;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.gtile:active{transform:scale(.985)}
.gtile.main{padding:16px;border:1.5px solid var(--blue);box-shadow:0 10px 30px rgba(3,129,242,.28),inset 0 1px 0 rgba(255,255,255,.1)}
.gt-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.gt-tx b{font-family:var(--font-display);font-weight:800;font-size:20px;line-height:1.1}
.gt-tx span{font-size:13px;color:var(--muted)}
.gt-tx em{font-style:normal;color:#fff;font-weight:600;font-variant-numeric:tabular-nums}
.gt-eye{font-size:11px;font-weight:700;letter-spacing:2px;color:#5AB0FF}
.gt-go{font-family:var(--font-display);font-weight:800;font-size:13px;letter-spacing:1.5px;padding:10px 12px;border-radius:var(--r-sm);background:linear-gradient(180deg,#2E9BFF,#0262BC);box-shadow:0 6px 18px rgba(3,129,242,.45)}
.gtiles{width:100%;display:grid;gap:10px}
.gt-art{flex-shrink:0;display:grid;place-items:center}
.lcdmini{width:84px;height:46px;border-radius:var(--r-sm);background:#050507;border:2px solid #22243A;box-shadow:inset 0 0 12px rgba(255,0,0,.12)}
.lcdmini span{font-family:var(--font-mono);font-weight:700;font-size:17px;color:#FF2A2A;letter-spacing:1px;text-shadow:0 0 8px rgba(255,40,40,.8)}
.runmini{width:84px;height:46px;position:relative;border-radius:var(--r-sm);background:#0A0D22;overflow:hidden;border:1px solid #2A3266}
.runmini .coinmini{position:absolute;left:12px;top:2px;width:30px!important;height:30px!important}
.runmini i{position:absolute;left:0;right:0;bottom:8px;height:2px;background:#2E9BFF;box-shadow:0 0 8px #0381F2}
.runmini i::after{content:"";position:absolute;right:16px;bottom:2px;border:9px solid transparent;border-bottom:15px solid #FF3B3F;border-top:0}

/* ---------- 10 Sekunden ---------- */
.arena.tm::after{background:radial-gradient(ellipse at center,rgba(255,40,40,.35),rgba(255,40,40,0) 70%);bottom:110px}
.device{width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center}
.housing{position:relative;width:100%;padding:16px 16px 10px;border-radius:var(--r);background:linear-gradient(180deg,#2A2D40,#15172A);border:1px solid #3A3E5A;box-shadow:0 14px 30px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.12),inset 0 -3px 0 rgba(0,0,0,.4)}
.screw{position:absolute;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#8A8FA8,#3A3E55);box-shadow:inset 0 0 0 1px rgba(0,0,0,.5)}
.screw.s1{left:6px;top:6px}.screw.s2{right:6px;top:6px}.screw.s3{left:6px;bottom:6px}.screw.s4{right:6px;bottom:6px}
.lcd{background:#060406;border-radius:8px;padding:12px 10px 6px;border:2px solid #000;box-shadow:inset 0 0 22px rgba(255,0,0,.12),inset 0 2px 8px rgba(0,0,0,.9)}
.lcd .digits{display:flex;align-items:center;justify-content:center;gap:3px;filter:drop-shadow(0 0 5px rgba(255,30,30,.55))}
.lcd .dg{width:13.5%;max-width:40px;height:auto}
.lcd .dg path{fill:#2B0709}
.lcd .dg path.on{fill:#FF2626}
.lcd .sep{width:3.6%;max-width:11px;height:auto;fill:#FF2626}
.lcd.freeze .digits{animation:blink .45s steps(2) 3}
@keyframes blink{50%{opacity:.25}}
.lcdlbl{display:grid;grid-template-columns:1fr 2fr 3fr;text-align:center;font-size:9px;letter-spacing:1.5px;color:#6A3436;font-weight:600;margin-top:6px}
.cable{width:100%;height:auto;display:block;margin-top:-1px;position:relative;z-index:1}
.btnbase{width:150px;height:44px;margin-top:-6px;z-index:2;border-radius:50%/60%;background:linear-gradient(180deg,#2A2D40,#101122);border:1px solid #3A3E5A;box-shadow:0 12px 24px rgba(0,0,0,.6);display:grid;place-items:center;position:relative}
.redbtn{position:relative;top:-22px;width:112px;height:58px;border:0;padding:0;background:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.redbtn span{position:absolute;inset:0;border-radius:50%/48%;background:radial-gradient(ellipse at 40% 30%,#FF8A8A 0%,#FF2A2A 25%,#C40E14 70%,#7A0408 100%);box-shadow:0 10px 0 #7A0408,0 14px 22px rgba(255,30,30,.45),inset 0 -4px 8px rgba(0,0,0,.35);transition:transform .06s,box-shadow .06s}
.redbtn.down span{transform:translateY(8px);box-shadow:0 2px 0 #7A0408,0 4px 10px rgba(255,30,30,.35),inset 0 -2px 6px rgba(0,0,0,.35)}
.redbtn.off span{filter:grayscale(.75) brightness(.6)}
.tm-hint{font-family:var(--font-display);font-weight:800;font-size:16px;letter-spacing:1px;color:#fff;text-align:center;margin-top:4px}
.tm-res{display:flex;flex-direction:column;align-items:center;font-family:var(--font-display);font-weight:800;font-size:22px;color:#fff;margin-top:4px}
.tm-res span{font-family:var(--font-body);font-weight:500;font-size:13px;color:var(--muted)}
.tm-res.win{color:#FF4A4A;text-shadow:0 0 20px rgba(255,40,40,.7)}

/* ---------- Hotchip Run ---------- */
.arena.run{padding-inline:10px}
.runwrap{position:relative;width:100%;height:340px;border-radius:var(--r);overflow:hidden;border:1px solid #2A3266;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.runwrap canvas{display:block}
.runover{position:absolute;inset:0;display:grid;place-items:center;background:rgba(7,8,15,.45);padding:16px}
.runover[hidden]{display:none}
.ro-card{width:100%;max-width:280px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:18px;border-radius:var(--r-lg);background:rgba(14,18,48,.92);border:1px solid #2A3266;box-shadow:0 20px 40px rgba(0,0,0,.5)}
.ro-t{font-family:var(--font-display);font-weight:800;font-size:28px;line-height:1;background:linear-gradient(180deg,#FFFFFF 0%,#BFD9FF 55%,#5AB0FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.ro-sc{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
.ro-sc div{background:#0A0D22;border:1px solid #23284A;border-radius:var(--r-sm);padding:8px}
.ro-sc small{display:block;font-size:10px;letter-spacing:2px;color:var(--dim);font-weight:600}
.ro-sc b{font-family:var(--font-display);font-size:30px;font-weight:800;font-variant-numeric:tabular-nums}

.gtile.main{flex-wrap:wrap}
.gtile.main .gt-go{width:100%;text-align:center;padding:12px}

.auth-logo{width:min(52vw,210px);height:auto;display:block}
@media (max-height:700px){.auth-logo{width:150px}}
.errorbox .auth-logo{width:160px}
.mcard .flame{width:40px;height:40px}

.toplive{display:inline-flex;align-items:center;gap:4px;color:var(--good)!important;font-weight:700}
.toplive i{width:6px;height:6px;border-radius:50%;background:var(--good);box-shadow:0 0 0 0 rgba(43,182,115,.7);animation:pulse 1.6s infinite}

.bon summary{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;list-style:none}
.bon summary::-webkit-details-marker{display:none}
.bon-sum{font-family:var(--font-display);font-weight:800;font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap}
.bon[open] summary{border-bottom:1px solid var(--line);padding-bottom:10px}

/* ---------- Glücksrad ---------- */
.arena.rad::after{background:radial-gradient(ellipse at center,rgba(43,182,115,.35),rgba(43,182,115,0) 70%);bottom:120px}
.radmini{width:84px;height:46px;border-radius:var(--r-sm);background:#0A0D22;border:1px solid #2A3266}
.radmini svg{width:40px;height:40px;filter:drop-shadow(0 0 6px rgba(255,164,31,.4))}
.cabinet{position:relative;width:100%;max-width:340px;border-radius:26px 26px 18px 18px;padding:12px 12px 16px;background:linear-gradient(180deg,#2B2F4A 0%,#171A30 40%,#0E1024 100%);border:1px solid #3A3E5A;box-shadow:0 20px 40px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.15),inset 0 -4px 0 rgba(0,0,0,.45),0 0 0 3px #0B0B14}
.cabinet::before,.cabinet::after{content:"";position:absolute;top:70px;bottom:90px;width:6px;border-radius:4px;background:linear-gradient(180deg,#FF3B3F,#FFD43B,#2BB673,#2A93FF,#9B51E0);opacity:.85;filter:blur(.3px);box-shadow:0 0 12px rgba(255,212,59,.5)}
.cabinet::before{left:-4px}.cabinet::after{right:-4px}
.marquee{position:relative;border-radius:var(--r);padding:8px 10px;background:linear-gradient(180deg,#3B0A12,#1A050A);border:2px solid #0B0B14;box-shadow:inset 0 0 18px rgba(255,59,63,.35)}
.mq-title{text-align:center;font-family:var(--font-display);font-weight:800;line-height:1;color:#FFE7A8;font-size:11px;letter-spacing:4px;padding:4px 0;text-shadow:0 0 8px rgba(255,164,31,.8)}
.mq-title b{display:block;font-size:30px;letter-spacing:2px;color:#fff;background:linear-gradient(180deg,#FFF6C9,#FFD43B 55%,#FF8200);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 0 10px rgba(255,164,31,.65));margin-top:3px}
.bulbs{display:flex;justify-content:space-between;padding:0 4px}
.bulb{width:9px;height:9px;border-radius:50%;background:#5A3A1A;box-shadow:inset 0 -1px 2px rgba(0,0,0,.6)}
.bulb.b0{animation:bulbA 1.2s steps(1) infinite}.bulb.b1{animation:bulbA 1.2s steps(1) infinite .4s}.bulb.b2{animation:bulbA 1.2s steps(1) infinite .8s}
.cabinet.spinning .bulb{animation-duration:.36s}
.cabinet.won .bulb{animation:bulbWin .25s steps(1) infinite}
.cabinet.lost .bulb{animation:none;background:#3A2A40}
@keyframes bulbA{0%{background:#FFE7A8;box-shadow:0 0 8px #FFD43B,0 0 2px #fff inset}33%{background:#5A3A1A;box-shadow:none}}
@keyframes bulbWin{0%{background:#7CF0A8;box-shadow:0 0 10px #2BB673}50%{background:#FFE7A8;box-shadow:0 0 10px #FFD43B}}
.screen{position:relative;margin-top:12px;border-radius:var(--r-lg);padding:22px 12px 10px;background:radial-gradient(120% 90% at 50% 10%,#16224A 0%,#0A0E22 60%,#05060E 100%);border:3px solid #05050A;box-shadow:inset 0 0 30px rgba(42,147,255,.25),inset 0 0 0 2px #2A3266,0 0 0 2px #3A3E5A;overflow:hidden;display:flex;flex-direction:column;align-items:center}
.scanlines{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px);mix-blend-mode:screen;z-index:3}
.pointer{position:absolute;top:4px;left:50%;width:30px;height:36px;transform:translateX(-50%);z-index:4;filter:drop-shadow(0 3px 4px rgba(0,0,0,.6))}
.pointer svg{width:100%;height:100%}
.cabinet.spinning .pointer{animation:flick .12s ease-in-out infinite alternate}
@keyframes flick{from{transform:translateX(-50%) rotate(-6deg)}to{transform:translateX(-50%) rotate(4deg)}}
.wheelbox{width:100%;max-width:270px;aspect-ratio:1;filter:drop-shadow(0 8px 20px rgba(0,0,0,.6))}
.wheelsvg{width:100%;height:100%;display:block}
.screenmsg{margin-top:8px;font-family:var(--font-mono);font-weight:700;font-size:13px;letter-spacing:3px;color:#7CF0A8;text-shadow:0 0 8px rgba(43,182,115,.8);text-transform:uppercase;min-height:18px;text-align:center}
.cabinet.spinning .screenmsg{animation:blink .5s steps(2) infinite}
.deck{margin-top:14px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:10px 8px 4px;border-radius:var(--r);background:linear-gradient(180deg,#1E2138,#0F1124);border:1px solid #2A2E4A;box-shadow:inset 0 2px 6px rgba(0,0,0,.6)}
.slot{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:9px;letter-spacing:1.5px;font-weight:700;color:#8A8FB0}
.slot i{width:28px;height:6px;border-radius:3px;background:#05050A;box-shadow:inset 0 1px 2px rgba(0,0,0,.8),0 1px 0 rgba(255,255,255,.08)}
.greenbase{width:120px;height:56px;border-radius:50%/60%;background:linear-gradient(180deg,#2A2D40,#101122);border:1px solid #3A3E5A;box-shadow:0 10px 20px rgba(0,0,0,.6);display:grid;place-items:center}
.greenbtn{position:relative;top:-20px;width:100px;height:56px;border:0;padding:0;background:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.greenbtn span{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%/48%;font-family:var(--font-display);font-weight:800;font-size:13px;letter-spacing:2px;color:#08381C;background:radial-gradient(ellipse at 40% 30%,#B8FFD2 0%,#3BE07A 28%,#16A34A 70%,#0B5A28 100%);box-shadow:0 10px 0 #0B5A28,0 14px 24px rgba(43,224,122,.45),inset 0 -4px 8px rgba(0,0,0,.3);transition:transform .06s,box-shadow .06s;animation:greenpulse 1.6s ease-in-out infinite}
.greenbtn.down span{transform:translateY(8px);box-shadow:0 2px 0 #0B5A28,0 4px 10px rgba(43,224,122,.35),inset 0 -2px 6px rgba(0,0,0,.3)}
.greenbtn.off span,.greenbtn:disabled span{animation:none;filter:grayscale(.8) brightness(.55)}
@keyframes greenpulse{50%{box-shadow:0 10px 0 #0B5A28,0 14px 34px rgba(43,224,122,.75),inset 0 -4px 8px rgba(0,0,0,.3)}}
.wchances{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:13px}
.wchances div{display:flex;align-items:center;gap:8px}
.wchances i{width:10px;height:10px;border-radius:3px;flex-shrink:0;border:1px solid rgba(255,255,255,.25)}
.wchances span{flex:1;min-width:0;color:var(--muted)}
.wchances b{font-variant-numeric:tabular-nums}
.wpts{display:flex;align-items:baseline;gap:8px;font-family:var(--font-display)}
.wpts b{font-size:56px;font-weight:800;line-height:1;background:linear-gradient(180deg,#fff,#FFD43B);-webkit-background-clip:text;background-clip:text;color:transparent}
.wpts span{font-size:18px;font-weight:700;color:var(--orange)}
@media (prefers-reduced-motion: reduce){.bulb,.greenbtn span,.cabinet.spinning .pointer{animation:none!important}}

/* ---------- Punkte-Shop ---------- */
.shophero{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:18px;display:grid;grid-template-columns:1.2fr 1fr;gap:14px;align-items:end;background:radial-gradient(120% 120% at 0% 0%,#FFB347 0%,#FF8200 40%,#B34700 100%);color:#fff;box-shadow:0 14px 34px rgba(255,130,0,.35),inset 0 1px 0 rgba(255,255,255,.35)}
.shophero::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.35),rgba(255,255,255,0) 70%)}
.sh-pts{font-family:var(--font-display);font-weight:800;font-size:44px;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 2px 0 rgba(0,0,0,.15)}
.sh-pts span{font-size:15px;margin-left:6px;opacity:.9}
.sh-eur{font-size:13px;opacity:.9;margin-top:4px}
.sh-r{position:relative;z-index:1;background:rgba(11,11,20,.28);border-radius:var(--r);padding:10px;display:flex;flex-direction:column;gap:5px;backdrop-filter:blur(6px)}
.sh-r b{font-size:13px;line-height:1.2}
.sh-r .bar{background:rgba(255,255,255,.25)}.sh-r .bar>i{background:#fff}
.sh-next{font-size:10px;letter-spacing:1.5px;font-weight:700;opacity:.85;text-transform:uppercase}
.sh-extras{font-size:13px;color:var(--muted);background:rgba(43,182,115,.1);border:1px solid rgba(43,182,115,.4);border-radius:var(--r-sm);padding:10px 12px}
.sh-extras b{color:#7CF0A8}
.sgrid{grid-auto-rows:1fr;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.stile{position:relative;text-align:left;display:flex;flex-direction:column;gap:4px;padding:14px 12px 12px;border-radius:var(--r-lg);color:var(--fg);background:linear-gradient(180deg,color-mix(in srgb,var(--c) 16%,#14152A),#101122);border:1px solid color-mix(in srgb,var(--c) 45%,#2A2E4A);box-shadow:0 8px 20px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.06);min-height:150px}
.stile b{font-family:var(--font-display);font-size:15px;line-height:1.2;margin-top:4px}
.stile small{font-size:12px;color:var(--muted);line-height:1.3;flex:1}
.sicon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:var(--c);background:color-mix(in srgb,var(--c) 18%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent)}
.sicon svg{width:24px;height:24px}
.sicon.big{width:56px;height:56px;border-radius:var(--r);flex-shrink:0}.sicon.big svg{width:30px;height:30px}
.sprice{align-self:flex-start;margin-top:6px;font-weight:800;font-size:13px;font-variant-numeric:tabular-nums;padding:6px 10px;border-radius:999px;background:var(--c);color:#0B0B14;box-shadow:0 4px 12px color-mix(in srgb,var(--c) 45%,transparent)}
.stile.locked{opacity:.62}
.stile.locked .sprice{background:#23263F;color:var(--muted);box-shadow:none}
.sbadge{position:absolute;top:10px;right:10px;font-size:9px;font-weight:800;letter-spacing:1.2px;padding:3px 7px;border-radius:999px;background:#0B0B14;color:var(--c);border:1px solid var(--c)}
.buyhead{display:flex;gap:14px;align-items:center}
.buyrow{display:flex;justify-content:space-between;font-size:15px;padding:8px 0;border-top:1px solid var(--line)}
.buyrow b{font-variant-numeric:tabular-nums}

/* ---------- Startseite Schnellmenü 2×4 ---------- */
.qdot{position:absolute;top:6px;right:10px;min-width:16px;height:16px;border-radius:99px;background:#FF3B3B;color:#fff;font-size:10px;display:grid;place-items:center;padding:0 4px}

/* ---------- Neuigkeiten ---------- */
.news{gap:8px}
.news.pinned{border-color:var(--orange);background:linear-gradient(180deg,rgba(255,130,0,.1),transparent)}
.ntag{align-self:flex-start;font-size:10px;font-weight:800;letter-spacing:1.5px;padding:3px 8px;border-radius:999px;background:rgba(3,129,242,.18);color:#5AB0FF}
.ro-combo{font-size:12px;letter-spacing:1.5px;font-weight:600;color:var(--muted)}
.ro-combo b{color:#FFD43B}

/* ---------- Punkte-Pass & Mitgliedschaft ---------- */
.passcard{display:flex;gap:12px;align-items:center;text-align:left;width:100%;border:1px solid var(--line);background:linear-gradient(120deg,#1C1E38,#14152A);border-radius:var(--r);padding:12px 14px;color:var(--fg);font:inherit;cursor:pointer}
.passcard .pc-ic{flex:0 0 46px;height:46px;border-radius:var(--r-sm);display:grid;place-items:center;background:rgba(255,130,0,.14);color:var(--orange)}
.passcard .pc-ic svg{width:26px;height:26px}
.passcard .pc-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.passcard .pc-tx b{font-size:15px}.passcard .pc-tx span{font-size:12px;color:var(--muted)}
.passcard .bar{margin-top:4px}
.passcard.ready{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange),0 0 24px rgba(255,130,0,.35);animation:pcpulse 1.6s ease-in-out infinite}
.passcard.ready .pc-ic{background:var(--orange);color:#0B0B14}
@keyframes pcpulse{50%{box-shadow:0 0 0 1px var(--orange),0 0 36px rgba(255,130,0,.6)}}
.mbanner{position:relative;display:flex;flex-direction:column;gap:3px;text-align:left;width:100%;border:0;border-radius:var(--r);padding:14px 16px;padding-right:96px;color:#fff;font:inherit;cursor:pointer;overflow:hidden;background:radial-gradient(120% 140% at 100% 0%,#9B51E0 0%,#4B2A86 45%,#1A1238 100%);box-shadow:0 10px 26px rgba(155,81,224,.28)}
.mbanner::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(255,212,59,.35),transparent 70%)}
.mbanner .eyebrow{color:#FFD43B}.mbanner b{font-family:var(--font-display);font-size:18px;line-height:1.15}.mbanner span{font-size:12.5px;opacity:.85}
.mbanner .mb-go{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-style:normal;font-weight:700;font-size:13px;background:#FFD43B;color:#1A1238;border-radius:99px;padding:7px 12px;z-index:1}
.mbanner.trial{background:radial-gradient(120% 140% at 100% 0%,#8C93A8 0%,#4A4F63 50%,#1C1E2A 100%);padding-right:16px}
.mbanner.warn{background:linear-gradient(120deg,#E5383B,#7A1418);padding-right:16px}
.upsell{display:flex;align-items:center;gap:10px;width:100%;border:1px dashed rgba(255,212,59,.45);background:rgba(255,212,59,.06);border-radius:var(--r-sm);padding:10px 12px;color:var(--fg);font:inherit;font-size:13px;text-align:left;cursor:pointer}
.upsell svg{width:22px;height:22px;color:#FFD43B;flex:0 0 22px}.upsell span{flex:1}
.upsell .u-go{color:#FFD43B;font-size:13px;white-space:nowrap}
.passhero{border-radius:var(--r-lg);padding:18px;display:flex;flex-direction:column;gap:6px;background:radial-gradient(120% 120% at 0% 0%,#FFB347 0%,#FF8200 40%,#B34700 100%);color:#fff;box-shadow:0 14px 34px rgba(255,130,0,.3)}
.passhero .dim{color:rgba(255,255,255,.85)}
.ph-num{font-family:var(--font-display);font-size:40px;font-weight:800;line-height:1}.ph-num span{font-size:14px;font-weight:600;margin-left:8px;opacity:.85}
.ptl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ps{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding-bottom:14px}
.ps-rail{position:absolute;left:21px;top:44px;bottom:0;width:3px;background:var(--line);border-radius:3px;overflow:hidden}
.ps-rail i{position:absolute;inset:0 0 auto 0;height:var(--p,0%);background:var(--orange)}
.ps.done .ps-rail i,.ps.ready .ps-rail i{height:100%}
.ps:last-child .ps-rail{display:none}
.ps-dot{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--surface2);border:2px solid var(--line);color:var(--dim);z-index:1}
.ps-dot svg{width:22px;height:22px}
.ps.done .ps-dot{background:var(--good);border-color:var(--good);color:#06240F}
.ps.ready .ps-dot{background:var(--orange);border-color:#FFD43B;color:#0B0B14;box-shadow:0 0 18px rgba(255,130,0,.7);animation:pcpulse 1.6s ease-in-out infinite}
.ps.next .ps-dot{border-color:var(--orange);color:var(--orange)}
.ps.big .ps-dot{width:52px;height:52px;margin-left:-4px;margin-top:-4px}
.ps-body{display:flex;flex-direction:column;gap:3px;align-items:flex-start;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);padding:10px 12px}
.ps.big .ps-body{border-color:rgba(255,212,59,.5);background:linear-gradient(120deg,rgba(255,212,59,.10),var(--surface))}
.ps.lock .ps-body{opacity:.7}
.ps-body b{font-size:15px}.ps-body>span{font-size:12.5px;color:var(--muted)}
.ps-at{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--orange)}
.ps-star{background:#FFD43B;color:#0B0B14;border-radius:99px;padding:1px 6px;font-size:9px;letter-spacing:1px;margin-left:4px}
.ps-left{font-size:12px;font-weight:600;color:var(--orange)}.ps-left.ok{color:var(--good)}
.ps-body .btn{margin-top:4px}
.pc-big{width:72px;height:72px;margin:4px auto;border-radius:50%;display:grid;place-items:center;background:rgba(255,212,59,.15);color:#FFD43B}.pc-big svg{width:40px;height:40px}
.mhero{border-radius:var(--r-lg);padding:20px 18px;display:flex;flex-direction:column;gap:8px;color:#fff;background:radial-gradient(130% 130% at 100% 0%,#FFD43B 0%,#9B51E0 35%,#2A1660 75%,#0B0B14 100%);box-shadow:0 14px 34px rgba(155,81,224,.35)}
.mhero h1{font-size:30px;line-height:1.05;margin:0}
.mstat{display:flex;flex-direction:column;gap:6px;width:100%;font:inherit;color:var(--fg);text-align:left}
.mstat.Silber{border-color:#9AA1B5}.mstat.Gold{border-color:#D9A62E}.mstat.Platin{border-color:#9B6CE0}
.mstat.trialcta{border-color:var(--orange);cursor:pointer;background:linear-gradient(120deg,rgba(255,130,0,.10),var(--surface))}
.mstat svg.big{width:40px;height:40px;color:#FFD43B}
.mdays{font-family:var(--font-display);font-size:30px;line-height:1;text-align:right}.mdays small{display:block;font-size:11px;color:var(--muted);font-family:inherit}
.calc{display:grid;gap:8px}.calc>div{display:flex;flex-direction:column;border-left:3px solid var(--orange);padding-left:10px}.calc b{font-size:15px}.calc span{font-size:12.5px;color:var(--muted)}
.mplan{border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);background:var(--surface)}
.mplan.Silber{background:linear-gradient(160deg,#3A3E50,#14152A 70%);border-color:#6B7186}
.mplan.Gold{background:linear-gradient(160deg,#5A4212,#14152A 70%);border-color:#D9A62E;box-shadow:0 10px 30px rgba(217,166,46,.18)}
.mplan.Platin{background:linear-gradient(160deg,#3D2470,#14152A 70%);border-color:#9B6CE0;box-shadow:0 10px 30px rgba(155,108,224,.2)}
.mplan.cur{outline:2px solid var(--good);outline-offset:2px}
.mp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.mp-head h2{margin:2px 0 0;font-size:26px}
.mp-tag{font-size:10px;font-weight:800;letter-spacing:2px;color:#FFD43B}
.mp-price{font-family:var(--font-display);font-weight:800;font-size:24px;text-align:right;white-space:nowrap}.mp-price small{display:block;font-family:inherit;font-size:11px;font-weight:500;color:var(--muted)}
.mplan ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--muted)}
.mplan li{padding-left:22px;position:relative}.mplan li b{color:var(--fg)}
.mplan li::before{content:"";position:absolute;left:2px;top:4px;width:12px;height:7px;border-left:2.5px solid var(--good);border-bottom:2.5px solid var(--good);transform:rotate(-45deg)}
.mp-even{font-size:12px;color:var(--muted);background:rgba(255,255,255,.05);border-radius:8px;padding:7px 10px}.mp-even b{color:var(--fg)}
.mtab{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.mtab th{width:34%}
.mtab th{text-align:left;font-weight:500;color:var(--muted);padding:7px 4px}.mtab td{text-align:center;padding:7px 4px;font-weight:600}
.mtab thead td{font-size:10px;letter-spacing:.5px;color:var(--orange)}.mtab tbody tr+tr{border-top:1px solid var(--line)}
.howsteps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;counter-reset:hs}
.howsteps li{counter-increment:hs;display:flex;flex-direction:column;padding-left:38px;position:relative}.howsteps li span{font-size:13px;color:var(--muted)}
.howsteps li::before{content:counter(hs);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;background:var(--orange);color:#0B0B14;font-weight:800;display:grid;place-items:center}

/* ---------- Detail-Runde 31.10. ---------- */
.tbadge{position:absolute;top:4px;left:55%;font-size:10px;font-weight:800;border-radius:99px;padding:1px 5px;line-height:1.4}
.tbadge.g{background:var(--good);color:#06240F;box-shadow:0 0 10px rgba(43,182,115,.6)}
.voucher{position:relative}
.voucher.urgent{border-color:#FF5A5A;box-shadow:0 0 0 1px rgba(255,90,90,.5)}
.vurg{position:absolute;top:8px;right:8px;font-size:10px;font-weight:800;letter-spacing:.5px;background:#E5383B;color:#fff;border-radius:99px;padding:2px 7px;animation:vurg 1.4s ease-in-out infinite}
@keyframes vurg{50%{opacity:.65}}
.urgstrip{display:flex;align-items:center;gap:10px;width:100%;border:0;border-radius:var(--r-sm);padding:10px 12px;background:linear-gradient(90deg,#E5383B,#9E1418);color:#fff;font:inherit;font-size:13px;text-align:left;cursor:pointer}
.urgstrip .us-ic svg{width:20px;height:20px}.urgstrip span:nth-child(2){flex:1}.urgstrip i{font-style:normal;font-weight:800;background:#fff;color:#9E1418;border-radius:99px;padding:5px 10px;font-size:12px}
.passline{display:flex;flex-direction:column;gap:8px;width:100%;background:none;border:0;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.passline .pl-go{color:var(--orange);font-weight:700;white-space:nowrap}
.balance .passcard{margin-top:4px}
.bdaycard{gap:8px;border-color:rgba(255,92,138,.45);background:linear-gradient(120deg,rgba(255,92,138,.12),var(--surface))}
.bdaycard .btn{align-self:flex-start}
.stampmini{padding:12px 14px}.stampmini .row{gap:10px;align-items:flex-start}
.mbadge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#FF3B3B;color:#fff;font-size:11px;margin-left:6px;vertical-align:1px}
.menu button>.dim{text-align:right}
.invcard{align-items:center;text-align:center;gap:10px}
.invcode{font-size:30px;font-weight:700;color:var(--orange);letter-spacing:2px}
.ntag.up{background:rgba(43,182,115,.18);color:#5BE39A}
.news.patch{border-color:rgba(43,182,115,.45);background:linear-gradient(180deg,rgba(43,182,115,.09),transparent 70%)}
.nlist{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:14px}
.nlist li::marker{color:var(--good)}

/* ---------- Avatare, Freunde, Ranglisten ---------- */
.hsav{display:block;flex-shrink:0}
.hsav.bob{animation:avbob 2.6s ease-in-out infinite;filter:drop-shadow(0 14px 22px rgba(0,0,0,.45))}
@keyframes avbob{50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.hsav.bob{animation:none}}
.bd{display:inline-block;font-size:9px;font-weight:800;letter-spacing:1px;padding:2px 6px;border-radius:4px;color:#0B0B14;vertical-align:2px}
.bd.FREUND{background:#7CF0A8}.bd.CHAMP{background:#FFD43B}.bd.Probe{background:#9AA1B5}
.tbadge.r{background:#FF3B3B;color:#fff}

.avfig{position:relative;z-index:1}
.avside{display:flex;flex-direction:column;gap:6px;align-items:flex-start;min-width:0}.avside b{font-family:var(--font-display);font-size:22px}.avside span{font-size:13px;color:var(--muted)}
.avpanel{gap:10px}
.avgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}
.avgrid.full{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}
.avopt{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;border:1.5px solid var(--line);background:var(--surface2);border-radius:var(--r);padding:8px 4px 7px;color:var(--fg);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer;transition:transform .12s,border-color .15s}
.avopt:active{transform:scale(.95)}
.avopt[aria-pressed="true"]{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange),0 6px 16px rgba(255,130,0,.25);background:linear-gradient(180deg,rgba(255,130,0,.12),var(--surface2))}
.avopt.locked .hsav{filter:grayscale(.85) brightness(.55)}.avopt.locked span{color:var(--dim)}
.avopt .lk{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#0B0B14;border:1px solid var(--line);display:grid;place-items:center;color:#FFD43B}.avopt .lk svg{width:12px;height:12px}
.swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.sw{aspect-ratio:1;border-radius:var(--r);border:3px solid #0B0B14;background:var(--c);box-shadow:0 0 0 1px var(--line);cursor:pointer;position:relative}
.sw[aria-pressed="true"]{box-shadow:0 0 0 3px var(--orange)}
.sw[aria-pressed="true"]::after{content:"";position:absolute;inset:30%;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #0B0B14}
.numpick{display:flex;align-items:center;justify-content:center;gap:18px}.numpick b{font-family:var(--font-display);font-size:40px;min-width:70px;text-align:center}.numpick .btn{width:56px;font-size:22px}
.avsave{display:flex;justify-content:center;padding-top:4px}
.avsave .throw[disabled]{opacity:.55;filter:grayscale(.4)}
.prof{display:flex;gap:14px;align-items:center}.prof-av{flex-shrink:0}.prof-tx{display:flex;flex-direction:column;gap:6px;min-width:0}.prof-tx h2{margin:0;font-size:24px}
.prof-load{display:grid;place-items:center;min-height:160px}
.pstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.pstats>div{background:var(--surface2);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 4px;display:flex;flex-direction:column;align-items:center;gap:2px}
.pstats b{font-family:var(--font-display);font-size:16px;font-variant-numeric:tabular-nums}.pstats span{font-size:10.5px;color:var(--muted)}
.champline{display:flex;align-items:center;gap:8px;border:1px solid rgba(255,212,59,.45);background:rgba(255,212,59,.08);border-radius:var(--r-sm);padding:9px 12px;font-size:13px}.champline svg{width:20px;height:20px;color:#FFD43B}
.fbtn{display:flex;align-items:center;justify-content:center;gap:8px}.fbtn svg,.btn svg{width:18px;height:18px}
.frow{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--line)}.frow:first-of-type{border-top:0}
.frow-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;color:var(--fg);font:inherit;text-align:left;cursor:pointer}
.frow-main>div{display:flex;flex-direction:column;gap:2px;min-width:0}.frow-main b{font-size:15px}.frow-main span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fract{display:flex;gap:6px}
.frcode{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}
.frempty{display:flex;gap:12px;align-items:center}
.lbcard{gap:0}
.lbrow{display:grid;grid-template-columns:28px minmax(0,1fr) auto 36px;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--line)}
.lbcard>.lbrow:first-of-type,.lbcard .chall+.lbrow{border-top:0}
.lbrow .pos{display:grid;place-items:center;font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums}
.lbrow.top2 .pos{color:#C9CED8}.lbrow.top3 .pos{color:#CD7F32}
.lbrow.me{background:linear-gradient(90deg,rgba(255,130,0,.14),transparent);border-radius:var(--r-sm)}
.lb-who{display:flex;align-items:center;gap:10px;min-width:0;background:none;border:0;padding:0;color:var(--fg);font:inherit;text-align:left;cursor:pointer}
.lb-who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.lb-val{font-family:var(--font-display);font-weight:800;font-variant-numeric:tabular-nums;text-align:right}.lb-val small{font-family:var(--font);font-size:11px;color:var(--muted);margin-left:2px}
.lb-add{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--surface2);color:var(--orange);display:grid;place-items:center;cursor:pointer}.lb-add svg{width:17px;height:17px}
.lb-sent{font-size:10px;color:var(--dim);text-align:center}
.lbrow.top1 .lb-who b{color:#FFC233}
.lbcard .btn.block{margin-top:10px}
.chall{display:flex;gap:12px;align-items:flex-start;border-radius:var(--r);padding:12px;margin-bottom:8px;background:linear-gradient(120deg,rgba(255,212,59,.16),rgba(155,81,224,.12));border:1px solid rgba(255,212,59,.4)}
.ch-ic{flex:0 0 40px;height:40px;border-radius:var(--r-sm);background:#FFD43B;color:#0B0B14;display:grid;place-items:center}.ch-ic svg{width:24px;height:24px}
.ch-tx{display:flex;flex-direction:column;gap:3px;min-width:0}.ch-tx b{font-size:15px}.ch-tx span{font-size:12px;color:var(--muted)}
.ch-last{display:block}.ch-last b{font-size:12px;color:var(--fg)}
.msg .nm{background:none;border:0;padding:0;font:inherit;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:5px;vertical-align:middle}
.msg .nm .cav{display:inline-block;vertical-align:-5px}
.topitem{font:inherit;color:var(--fg);cursor:pointer}
.topitem .hsav{width:22px;height:22px}
.bal-stage{background:none;border:0;padding:0;color:var(--fg);font:inherit;text-align:right;cursor:pointer}.bal-stage b{font-family:var(--font-display);font-size:22px}.bal-stage small{font-size:13px;color:var(--muted)}
.rcard{display:flex;align-items:center;gap:12px;width:100%;border:1px solid rgba(43,182,115,.5);background:linear-gradient(120deg,rgba(43,182,115,.14),var(--surface));border-radius:var(--r);padding:12px 14px;color:var(--fg);font:inherit;text-align:left;cursor:pointer}
.rc-ic{flex:0 0 40px;height:40px;border-radius:var(--r-sm);background:var(--good);color:#06240F;display:grid;place-items:center}.rc-ic svg{width:22px;height:22px}
.rc-tx{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.rc-tx span{font-size:12.5px;color:var(--muted)}
.rcard i{font-style:normal;font-weight:700;font-size:13px;color:#7CF0A8}
.avprompt{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:var(--r);padding:10px 14px 10px 10px;color:#fff;font:inherit;text-align:left;cursor:pointer;background:radial-gradient(130% 140% at 100% 0%,#2A93FF 0%,#1A3A8A 45%,#14152A 100%);box-shadow:0 10px 26px rgba(3,129,242,.25)}
.avp-fig{flex:0 0 64px;margin:-6px 0}
.avprompt>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.avprompt b{font-family:var(--font-display);font-size:17px}.avprompt>span:nth-child(2)>span{font-size:12px;opacity:.85}
.avprompt i{font-style:normal;font-weight:800;font-size:13px;background:#fff;color:#0B3A8A;border-radius:99px;padding:7px 12px}
.mcard .name .hsav{border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.35)}
.frow-main .bd,.prof .bd{color:#0B0B14;font-size:9px;white-space:nowrap}
details.ed summary{cursor:pointer;list-style:none}details.ed summary::-webkit-details-marker{display:none}
details.ed summary::after{content:"›";float:right;transform:rotate(90deg);color:var(--muted)}details.ed[open] summary::after{transform:rotate(-90deg)}
.pform{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding:10px 0}
.pform label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--muted);min-width:0;flex:1}
.pform input,.pform select{font-size:14px;padding:8px 10px}
.pf-row{display:flex;gap:8px}.pform .pf-chk{flex-direction:row;align-items:center;gap:6px;font-size:13px;color:var(--fg)}.pf-chk input{width:auto}

.pst{border-top:1px solid var(--line)}.pst>summary{cursor:pointer;padding:11px 0;font-size:14px;list-style:none}.pst>summary::-webkit-details-marker{display:none}.pst.off>summary{opacity:.55}.pst .pform{border-top:0;padding-top:0}

/* ---------- Avatar-Editor v2 ---------- */
.avstage{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 16px 14px;border-radius:var(--r-lg);border:1px solid var(--line);background:radial-gradient(90% 70% at 50% 35%,#3A2A7A 0%,#1A1B3A 55%,#0E0F1E 100%)}
.avpod{position:absolute;left:50%;bottom:78px;transform:translateX(-50%);width:190px;height:34px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,130,0,.55),rgba(255,130,0,.12) 70%,transparent);filter:blur(1px)}
.avfig .hsav{border-radius:var(--r-lg)}
.avname{font-family:var(--font-display);font-weight:800;font-size:20px;z-index:1}
.avtools{display:flex;gap:8px;z-index:1;margin-top:2px}
.avtool{display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;font:inherit;font-weight:700;font-size:13px;border-radius:99px;padding:9px 14px;cursor:pointer;backdrop-filter:blur(6px)}
.avtool svg{width:17px;height:17px}
.avtool.main{background:var(--orange);border-color:var(--orange);color:#0B0B14;padding:9px 18px}
.avtool.main[disabled]{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:var(--muted)}
.avtool:active{transform:scale(.95)}
.avcats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.avcats button{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;font-size:11px;font-weight:600;border-radius:var(--r);padding:9px 8px 7px;cursor:pointer}
.avcats button svg{width:22px;height:22px}
.avcats button[aria-selected="true"]{background:linear-gradient(180deg,rgba(255,130,0,.22),rgba(255,130,0,.08));border-color:var(--orange);color:#fff}
.avcats button[aria-selected="true"] svg{color:var(--orange)}
.avsec{display:flex;flex-direction:column;gap:8px}.avsec+.avsec{margin-top:6px;padding-top:12px;border-top:1px solid var(--line)}
.avsec-h{font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.avhint{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:10px}.avhint svg{width:15px;height:15px;color:#FFD43B;flex:0 0 15px;margin-top:1px}
.avopt .hsav{border-radius:var(--r-sm)}

.tstamps{display:flex;flex-direction:column;gap:6px}.tstamp{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:6px}.tstamp>div{display:flex;flex-direction:column;min-width:0}.tstamp b{font-size:13px}.tstamp span{font-size:12px}

/* ---------- Stempelkarten ---------- */
.sc-row .scard{flex:0 0 84%;scroll-snap-align:start}
.scard{display:flex;flex-direction:column;gap:10px;border-radius:var(--r);padding:12px 14px;background:linear-gradient(135deg,color-mix(in srgb,var(--c) 22%,#14152A),#14152A 70%);border:1px solid color-mix(in srgb,var(--c) 45%,transparent);text-align:left}
.sc-h{display:flex;align-items:center;gap:10px}.sc-h>div{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.sc-h b{font-size:14px}.sc-h span{font-size:12px;color:var(--muted)}
.sc-ic{flex:0 0 38px;height:38px;border-radius:var(--r-sm);background:var(--c);color:#0B0B14;display:grid;place-items:center}.sc-ic svg{width:22px;height:22px}
.sc-h em{font-style:normal;font-family:var(--font-display);font-weight:800;font-size:22px}.sc-h em small{font-size:12px;color:var(--muted)}
.sc-dots{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:4px;align-items:center}
.sc-dots i{aspect-ratio:1;border-radius:50%;border:2px dashed rgba(255,255,255,.18);background:rgba(255,255,255,.03)}
.sc-dots i.on{border:2px solid #0B0B14;background:var(--c);box-shadow:inset 0 -2px 0 rgba(0,0,0,.2)}
.sc-dots i.new{animation:scpop .6s cubic-bezier(.2,1.6,.4,1) both}
@keyframes scpop{0%{transform:scale(.2)}100%{transform:scale(1)}}
.sc-dots .gift{display:grid;place-items:center;border:2px solid #FFD43B;background:rgba(255,212,59,.12);color:#FFD43B}.sc-dots .gift svg{width:70%;height:70%}
.wincard .scard{width:100%}

/* ---------- Karten-Skins v2 ---------- */
.mcard.skin-carbon,.minicard.skin-carbon,.fc-card.skin-carbon,.cardstrip.skin-carbon{background:repeating-linear-gradient(45deg,#1b1d24 0 6px,#23262f 6px 12px)}
.mcard.skin-sunset,.minicard.skin-sunset,.fc-card.skin-sunset,.cardstrip.skin-sunset{background:linear-gradient(160deg,#FFB347 0%,#FF5C8A 50%,#6A2FB5 100%)}
.mcard.skin-ocean,.minicard.skin-ocean,.fc-card.skin-ocean,.cardstrip.skin-ocean{background:linear-gradient(160deg,#5AE4FF 0%,#0381F2 55%,#0B2A6B 100%)}
.mcard.skin-galaxy,.minicard.skin-galaxy,.fc-card.skin-galaxy,.cardstrip.skin-galaxy{background:radial-gradient(circle at 20% 25%,rgba(255,255,255,.9) 0 1px,transparent 2px),radial-gradient(circle at 70% 60%,rgba(255,255,255,.8) 0 1px,transparent 2px),radial-gradient(circle at 45% 80%,rgba(255,255,255,.7) 0 1px,transparent 2px),radial-gradient(120% 120% at 80% 0%,#9B51E0 0%,#2A1660 45%,#05050A 100%)}
.mcard.skin-goldrush,.minicard.skin-goldrush,.fc-card.skin-goldrush,.cardstrip.skin-goldrush{background:linear-gradient(135deg,#FFE9A3 0%,#F5B90A 30%,#B98522 60%,#FFE07A 100%);color:#2A1A00}
.mcard.skin-member,.minicard.skin-member,.fc-card.skin-member,.cardstrip.skin-member{background:linear-gradient(135deg,#2A2D4D 0%,#14152A 60%),#14152A;box-shadow:inset 0 0 0 2px #FFD43B}
.mcard.skin-neon,.minicard.skin-neon,.fc-card.skin-neon,.cardstrip.skin-neon{background:linear-gradient(135deg,#0B0B14 0%,#11143A 50%,#0B0B14 100%);box-shadow:inset 0 0 0 2px #00F0FF,0 0 18px rgba(0,240,255,.3)}
.mcard.skin-flame,.minicard.skin-flame,.fc-card.skin-flame,.cardstrip.skin-flame{background:radial-gradient(120% 90% at 50% 120%,#FFD43B 0%,#FF8200 30%,#C81D25 60%,#2A0A0A 100%)}
.mcard.skin-diamant,.minicard.skin-diamant,.fc-card.skin-diamant,.cardstrip.skin-diamant{background:linear-gradient(135deg,#BFF4FF 0%,#6EC6FF 25%,#E9E4FF 50%,#7FB3FF 75%,#D9FBFF 100%);color:#0B0B14}
.mcard.skin-legende,.minicard.skin-legende,.fc-card.skin-legende,.cardstrip.skin-legende{background:conic-gradient(from 200deg at 70% 30%,#FFD43B,#FF8200,#9B51E0,#0381F2,#2BB673,#FFD43B)}
.mcard.skin-goldrush .name,.mcard.skin-goldrush .tier,.mcard.skin-goldrush .status-live,.mcard.skin-diamant .status-live{color:#1A1200}
.skgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sktile{position:relative;display:flex;flex-direction:column;gap:8px;border:1.5px solid var(--line);background:var(--surface2);border-radius:var(--r);padding:8px}
.sktile.cur{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange)}
.sktile .sbadge{top:-6px;right:-4px;z-index:2}
.sk-row{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:32px}.sk-row b{font-size:13px}
.sk-st{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--dim);font-weight:600}.sk-st svg{width:12px;height:12px;color:#FFD43B}.sk-st.on{color:var(--orange)}
.minicard{position:relative;aspect-ratio:1.586;border-radius:var(--r-sm);padding:8px 10px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(135deg,#1F2142,#0E0F1E);overflow:hidden;border:1px solid rgba(255,255,255,.08)}
.minicard::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.18) 50%,transparent 65%)}
.minicard .mc-flame{width:20px;height:20px;align-self:flex-end}
.minicard b{font-family:var(--font-display);font-size:13px;position:relative;z-index:1}
.minicard .mc-bar{display:block;height:12px;border-radius:3px;background:repeating-linear-gradient(90deg,#fff 0 2px,transparent 2px 4px,#fff 4px 5px,transparent 5px 8px);opacity:.85}
.minicard.big{max-width:280px;margin:0 auto;width:100%}
.sktile.notown .minicard{filter:saturate(.85)}
.fc-band{position:absolute;top:0;left:0;right:0;height:18%;border-radius:0 0 var(--r-lg) var(--r-lg)}
.fullcard>*{position:relative}
.sk-row{flex-wrap:wrap}.sk-row .btn,.sk-st{white-space:nowrap}.sk-row b{white-space:nowrap}

/* ---------- Vollbild-Karte mit Skin ---------- */
.fc-card{position:relative;width:100%;max-width:440px;border-radius:var(--r-lg);padding:18px 18px 16px;display:flex;flex-direction:column;gap:14px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#1F2142,#0E0F1E);border:1px solid rgba(255,255,255,.1);box-shadow:0 24px 60px rgba(0,0,0,.55)}
.fc-card.t-Silber:not([class*="skin-"]){background:linear-gradient(135deg,#5C6175,#2A2D3D)}
.fc-card.t-Gold:not([class*="skin-"]){background:linear-gradient(135deg,#B98522,#4A3410)}
.fc-card.t-Platin:not([class*="skin-"]){background:linear-gradient(135deg,#6E4AA8,#1F1438)}
.fc-card>*{position:relative;z-index:1}
.fc-shine{position:absolute;inset:0;z-index:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.2) 50%,transparent 65%);background-size:250% 100%;animation:shine 3.5s linear infinite;pointer-events:none}
.fc-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.fc-logo{width:38px;height:38px}
.fc-who{display:flex;align-items:center;gap:12px}.fc-who .hsav{border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.4)}
.fc-no{font-size:12px;opacity:.8;letter-spacing:1px}
.fc-bar{background:#fff;border-radius:var(--r);padding:14px 14px 10px;color:#0B0B14;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.fc-ean{text-align:center;font-size:19px;letter-spacing:4px;margin-top:6px}
.fc-card.skin-goldrush,.fc-card.skin-diamant{color:#1A1200}.fc-card.skin-goldrush .fc-tier,.fc-card.skin-diamant .fc-tier{color:#fff!important}
@media (prefers-reduced-motion:reduce){.fc-shine{animation:none}}

/* ---------- Patch 2: Navigation ---------- */
.hdr-dot{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;border-radius:99px;background:#FF3B3B;color:#fff;font-size:10px;display:grid;place-items:center;padding:0 4px;box-shadow:0 0 0 2px var(--bg)}
.brand{gap:8px}
.tbadge.o{background:var(--orange);color:#0B0B14}
nav.tabbar button.tb-card{position:relative;color:#fff}
.tb-card-in{display:grid;place-items:center;width:58px;height:58px;margin-top:-36px;border-radius:50%;background:linear-gradient(180deg,#FF9A33,#FF8200);color:#0B0B14;box-shadow:0 8px 22px rgba(255,130,0,.5),0 0 0 4px var(--bg);transition:transform .15s}
.tb-card-in svg{width:28px!important;height:28px!important}
nav.tabbar button.tb-card>span:last-child{color:var(--muted);font-weight:600}
nav.tabbar button.tb-card.on>span:last-child{color:var(--orange)}
nav.tabbar button.tb-card:active .tb-card-in{transform:scale(.92)}
.today{display:flex;flex-direction:column;gap:8px}
.today-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.today-t{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);padding:11px 12px;color:var(--fg);font:inherit;text-align:left;cursor:pointer}
.today-t svg{width:20px;height:20px;color:var(--muted);margin-bottom:4px}
.today-t b{font-family:var(--font-display);font-size:24px;line-height:1}.today-t span{font-size:11.5px;color:var(--muted);line-height:1.25}
.today-t.hot svg{color:#7CF0A8}.today-t.hot b{color:#7CF0A8}
.today-t.warn svg{color:#FF8A8A}.today-t.warn b{color:#FF8A8A}
.today-t.new svg{color:#5AB0FF}.today-t.new b{color:#5AB0FF}
.profhero{display:flex;gap:16px;align-items:center;border-radius:var(--r-lg);padding:16px;background:radial-gradient(120% 120% at 0% 0%,#2E2370 0%,#14152A 60%);border:1px solid var(--line)}
.ph-av{position:relative;flex:0 0 auto;border:0;padding:0;background:none;cursor:pointer}.ph-av .hsav{border-radius:var(--r-lg);box-shadow:0 10px 24px rgba(0,0,0,.45)}
.ph-av i{position:absolute;right:-6px;bottom:-6px;width:30px;height:30px;border-radius:50%;background:var(--orange);color:#0B0B14;display:grid;place-items:center;box-shadow:0 0 0 3px var(--bg)}.ph-av i svg{width:16px;height:16px}
.ph-tx{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.ph-tx h1{font-size:28px;margin:0}
.ph-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.ph-stats button{display:flex;flex-direction:column;align-items:flex-start;gap:0;border:0;background:rgba(255,255,255,.06);border-radius:var(--r-sm);padding:6px 8px;color:var(--fg);font:inherit;cursor:pointer}
.ph-stats b{font-family:var(--font-display);font-size:16px}.ph-stats span{font-size:10.5px;color:var(--muted)}
.pmenu button{gap:10px;justify-content:flex-start!important}
.pmenu .pm-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--r-sm);background:var(--surface2);color:var(--orange);flex:0 0 34px}.pmenu .pm-ic svg{width:19px;height:19px}
.pmenu .pm-l{flex:1;font-weight:600}
.pmenu button>.dim{font-size:12.5px}
.pts-pill{white-space:nowrap;flex-shrink:0}
header.top .brand{min-width:0}
@media (max-width:420px){header.top .brand small{display:none}header.top .brand b{font-size:17px}}
/* Kopfzeile: Logo links frei, Konto-Chip rechts (Punkte + Avatar) */
header.top .brand small{display:block}
.acct{display:flex;align-items:center;flex-shrink:0;height:46px;padding:3px;border-radius:99px;background:var(--surface);border:1px solid var(--line);box-shadow:0 6px 18px rgba(0,0,0,.35)}
.acct-pts{display:flex;align-items:center;gap:6px;height:100%;padding:0 10px 0 12px;border:0;background:none;color:var(--fg);font:inherit;font-family:var(--font-display);font-weight:800;font-size:15px;white-space:nowrap;cursor:pointer;font-variant-numeric:tabular-nums}
.acct-pts i{width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 8px var(--orange)}
.acct-pts small{font-size:11px;color:var(--muted);font-weight:700;margin-left:-2px}
.acct-av{position:relative;width:40px;height:40px;border-radius:50%;border:0;padding:0;background:none;cursor:pointer;box-shadow:0 0 0 2px var(--orange)}
.acct-av .hsav{border-radius:50%}
.acct-av:active,.acct-pts:active{transform:scale(.94)}
@media (max-width:360px){header.top .brand small{display:none}}
header.top .brand small{white-space:nowrap;letter-spacing:2px;font-size:9.5px}
header.top .brand small{letter-spacing:1px;font-size:9px}header.top{gap:10px}

/* ---------- Patch 3: ruhiger, einheitlicher ---------- */
.bal-hi{font-size:13px;color:var(--muted);font-weight:600}
.extra-btn{align-self:center;padding:10px 18px}.extra-btn small{font-weight:600;color:var(--muted);margin-left:4px}
.dsum{font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}.dsum::-webkit-details-marker{display:none}.dsum::after{content:"›";transform:rotate(90deg);color:var(--muted)}details[open]>.dsum::after{transform:rotate(-90deg)}
.stile{display:flex;flex-direction:column}.stile small{flex:1}
.rcard{border-color:var(--line);background:var(--surface)}.rc-ic{background:rgba(43,182,115,.18);color:#7CF0A8}
.urgstrip{background:var(--surface);border:1px solid rgba(229,56,59,.6);color:var(--fg)}.urgstrip i{background:#E5383B;color:#fff}.urgstrip .us-ic svg{color:#FF8A8A}
.avprompt{background:var(--surface);border:1px solid rgba(3,129,242,.5);box-shadow:none;color:var(--fg)}.avprompt i{background:var(--blue);color:#fff}
.mbanner{box-shadow:none}
.install{border-color:var(--line)}
/* Team: Schnell-Leiste, Menü */
.quickbar{position:sticky;top:0;z-index:6;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px 0;background:rgba(11,11,20,.94);backdrop-filter:blur(10px)}
.quickbar button{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:var(--r-sm);padding:8px 2px;font:inherit;font-size:11px;font-weight:600;cursor:pointer}
.quickbar button svg{width:20px;height:20px;color:var(--orange)}.quickbar button.off{opacity:.5}
.quickbar button b{position:absolute;top:4px;right:8px;min-width:16px;height:16px;border-radius:99px;background:var(--orange);color:#0B0B14;font-size:10px;display:grid;place-items:center}
.tmenu{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--fg);font-size:20px;line-height:1;cursor:pointer}
.tmenu-pop{position:absolute;right:16px;top:58px;z-index:30;display:flex;flex-direction:column;min-width:190px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 14px 34px rgba(0,0,0,.5);overflow:hidden}
.tmenu-pop button,.tmenu-pop a{display:block;width:100%;text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:12px 14px;color:var(--fg);font:inherit;font-size:14px;text-decoration:none;cursor:pointer}.tmenu-pop>:first-child{border-top:0}
header.top{position:relative}
.tmenu-pop[hidden]{display:none}
/* Patch 3: Ranglisten-Monat, Inklusiv-Info */
.lb-head{display:flex;flex-direction:column;gap:2px;padding:2px 0 8px}.lb-head b{font-size:15px}.lb-head span{font-size:12px;color:var(--dim)}
.lb-me{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;border-radius:var(--r-sm);background:var(--surface2);font-size:13px}.lb-me b{font-size:14px}
.lb-nm{display:flex;flex-direction:column;min-width:0}.lb-nm b{display:block}.lb-tag{display:block;color:#FFD43B;font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.incl{display:flex;justify-content:space-between;gap:10px;margin:8px 0 6px;padding:8px 10px;border-radius:var(--r-sm);background:rgba(255,255,255,.08);font-size:13px}.incl b{font-weight:700}
.inclrow{display:flex;justify-content:space-between;gap:10px;margin-top:6px;font-size:12px;opacity:.95}.inclrow .bad{color:var(--red)}
/* Einladen: QR */
.qrbox{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px;width:100%;box-sizing:border-box;border-radius:var(--r);background:#fff;color:#0B0B14}.qrbox .hsqr{width:200px;height:200px;max-width:100%}.qrbox .invcode{color:#0B0B14;font-size:20px;letter-spacing:2px}
.qrsteps{display:flex;flex-direction:column;gap:8px;font-size:13px;text-align:left;width:100%}.qrsteps span{display:flex;gap:10px;align-items:flex-start}.qrsteps b{flex:0 0 22px;height:22px;border-radius:50%;background:var(--orange);color:#0B0B14;display:grid;place-items:center;font-size:12px}
/* Gegencheck: Feinschliff */
.bal-tier{display:inline-block;margin-top:6px;padding:3px 9px;border-radius:999px;border:0;font:inherit;font-size:11.5px;font-weight:700;letter-spacing:.02em;background:var(--surface2);color:var(--fg);cursor:pointer}
.bal-tier.Gold{background:rgba(255,194,51,.18);color:#FFC233}.bal-tier.Platin{background:rgba(201,206,216,.18);color:#E6E9F0}.bal-tier.Silber{background:rgba(201,206,216,.14);color:#C9CED8}.bal-tier.Probe{background:rgba(255,130,0,.16);color:var(--orange)}
.scroller.one .promo{flex:0 0 100%}
.tabs button[aria-selected="true"]{background:#F2F3F7;color:#0B0B14;font-weight:700}
.pmenu .pm-l{flex:0 0 auto;max-width:62%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:2px}.pmenu .pm-l .mbadge{vertical-align:middle}.pmenu button>.dim{flex:1 1 auto;min-width:0;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sprice small{font-weight:600;font-size:11px;margin-left:5px;opacity:.85}
#gameq:not(:empty)~#game{display:none}
#tierconfirm:not(:empty)~.areas-block{display:none}
[data-tier][aria-pressed="true"]{background:var(--orange);color:#0B0B14;border-color:var(--orange)}
.hsqr{display:block}
/* Hotchip Run 2.0 HUD */
.hud{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;padding:10px 12px 0;font-family:var(--font-display)}
.hud[hidden]{display:none}
.hud-top{width:100%;display:flex;justify-content:space-between;align-items:center}
.hud-chip{--p:10%;position:relative;font-size:10.5px;font-weight:800;letter-spacing:1.5px;color:#fff;padding:5px 9px 7px;border-radius:999px;background:rgba(11,11,20,.55);border:1px solid rgba(255,255,255,.12);overflow:hidden}
.hud-chip::after{content:"";position:absolute;left:8px;right:8px;bottom:3px;height:2px;border-radius:2px;background:rgba(255,255,255,.18)}
.hud-chip::before{content:"";position:absolute;left:8px;bottom:3px;height:2px;width:calc((100% - 16px) * var(--p) / 100%);border-radius:2px;background:#5AB0FF;z-index:1}
.hud-chip.lv{--p:0%}.hud-chip.lv::after,.hud-chip.lv::before{display:none}
.hud-score{margin-top:6px;font-size:46px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 2px 0 #0B0B14,0 0 18px rgba(3,129,242,.8);transform-origin:center}
.hud-score.pop{animation:hudPop .28s cubic-bezier(.2,1.4,.4,1)}
@keyframes hudPop{0%{transform:scale(1.18)}100%{transform:scale(1)}}
.hud-sub{display:flex;gap:10px;align-items:center;margin-top:4px;font-size:12px;font-weight:700;letter-spacing:1px;color:#fff;text-shadow:0 1px 0 #0B0B14,0 0 8px rgba(0,0,0,.6)}
.hud-dots i{display:inline-block;width:8px;height:8px;background:#fff;box-shadow:0 0 8px #fff;margin-right:6px;vertical-align:1px}
.hud-combo{color:#FFE7A8}.hud-combo b{color:#FFD43B;font-size:14px}.hud-combo.warm b{color:#FF8200}.hud-combo.hot b{color:#FF3B6B;text-shadow:0 0 10px #FF3B6B}
.hud-bar{width:110px;height:4px;margin-top:5px;border-radius:2px;background:rgba(255,255,255,.14);overflow:hidden}.hud-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#FFD43B,#FF8200);transition:width .15s}
.hud-flash{position:absolute;left:0;right:0;top:44%;text-align:center;font-size:24px;font-weight:800;letter-spacing:1px;opacity:0;text-shadow:0 2px 0 #0B0B14,0 0 18px currentColor}
.hud-flash.go{animation:hudFlash 1.3s cubic-bezier(.2,.8,.2,1) both}
@keyframes hudFlash{0%{opacity:0;transform:scale(.7)}12%{opacity:1;transform:scale(1.08)}70%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.04) translateY(-10px)}}
.ro-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 12px;font-size:12px;letter-spacing:.5px;font-weight:600;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.hud-score.pop,.hud-flash.go{animation:none;opacity:1}}
html,body{touch-action:manipulation}
.gt-go.off{background:rgba(255,255,255,.08);box-shadow:none;color:var(--muted)}
.wchances{grid-template-columns:1fr}
.inclrow{flex-direction:column;gap:2px}
.modbtn{background:none;border:0;color:var(--dim);font-size:16px;line-height:1;padding:0 4px;margin-left:4px;cursor:pointer}
.msg .modacts{display:none}.msg.modopen .modacts{display:inline-flex;gap:6px;margin-left:4px}
.msg .mod{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--surface2);color:var(--fg);text-decoration:none}
.talarm{position:fixed;left:12px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:var(--r);background:#3A2A06;border:2px solid #FFD43B;box-shadow:0 14px 40px rgba(0,0,0,.6);color:#fff}
.talarm.end{background:#3A0A0E;border-color:#FF3B3F;animation:talarmPulse 1s ease-in-out 4}
.talarm div{flex:1;min-width:0;display:flex;flex-direction:column;font-size:13px}.talarm b{font-size:15px}
@keyframes talarmPulse{50%{box-shadow:0 0 0 6px rgba(255,59,63,.35),0 14px 40px rgba(0,0,0,.6)}}
.pushcta{display:flex;flex-direction:column;gap:10px}.pushcta>div:first-child{display:flex;flex-direction:column;gap:2px}
/* Willkommen / App installieren */
.onb{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding-top:4px}
.onb-icon{width:72px;height:72px;border-radius:18px;box-shadow:0 10px 30px rgba(255,130,0,.28),0 0 0 1px rgba(255,255,255,.08);margin-bottom:4px}
.onb h2{font-size:22px;line-height:1.2;margin:0;max-width:300px}
.onb>.muted{margin:0;font-size:14px;max-width:320px}
.onb-perks{list-style:none;margin:4px 0 2px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}
.onb-perks li{display:flex;flex-direction:column;align-items:center;gap:6px;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:14px;padding:10px 6px;font-size:12px;line-height:1.25;color:var(--fg)}
.onb-perks li span{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:9px;background:rgba(255,130,0,.14);color:var(--orange);font-size:15px}
.onb-perks li span svg{width:18px;height:18px}
.onb-note{margin:0;font-size:12.5px;color:var(--good)}
.onb .btn{width:100%;padding:15px 16px;font-size:16px}
.onb .onb-later{padding:11px 16px;font-size:14px;border:0;color:var(--dim)}
.isteps{list-style:none;margin:4px 0 0;padding:0;width:100%;display:flex;flex-direction:column;gap:8px;text-align:left;counter-reset:st}
.isteps li{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;background:linear-gradient(135deg,rgba(255,130,0,.12),rgba(3,129,242,.08));border:1px solid rgba(255,130,0,.35);font-size:14px}
.istep-ic{width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:10px;background:#fff;color:#0381F2;font-weight:700}
.onb-arrow{position:fixed;left:50%;bottom:calc(6px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;color:#fff;font-size:11px;font-weight:600;pointer-events:none;animation:onbBob 1.2s ease-in-out infinite;z-index:3}
.onb-arrow svg{width:22px;height:22px;background:#0381F2;border-radius:50%;padding:6px;box-sizing:content-box;box-shadow:0 6px 18px rgba(3,129,242,.5)}
@keyframes onbBob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,6px)}}
@media (prefers-reduced-motion:reduce){.onb-arrow{animation:none}}
.onb .btn:focus:not(:focus-visible){outline:none;box-shadow:none}

/* Online-Shop */
.shop-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px;border-radius:var(--r);text-decoration:none;color:#0B0B14;background:linear-gradient(135deg,#FF8200,#ff5a00);box-shadow:0 14px 34px rgba(255,130,0,.28)}
.shop-hero .eyebrow{color:rgba(11,11,20,.7)}
.shop-hero b{display:block;font-family:var(--font-display);font-size:22px;line-height:1.15;margin:4px 0}
.shop-hero span{font-size:13.5px;line-height:1.4;opacity:.85}
.shop-go{width:52px;height:52px;flex:none;border-radius:16px;background:#0B0B14;color:#FF8200;display:grid;place-items:center}
.shop-go svg{width:26px;height:26px}
.shop-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.shop-steps li{display:flex;gap:12px;align-items:flex-start}
.shop-steps li b{display:block;font-size:14.5px}
.shop-steps li span{font-size:13px;color:var(--muted)}
.shop-n{width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:13px;background:rgba(255,130,0,.15);color:var(--orange);border:1px solid rgba(255,130,0,.4)}
