/* Local fonts: SIL Open Font License, see fonts/*-OFL.txt. */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/font-8.ttf) format('truetype');
}

:root{color-scheme:dark;--bg:#03080f;--panel:#0a1622;--cyan:#8cf8ee;--gold:#edcf96;--text:#edf4f9;--muted:#a1b4c4;--line:#ffffff1b;--row:164px;--edge:44px}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#183544 0,#050b14 50%,#03080f);color:var(--text);font:16px/1.6 'Manrope',Arial,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}button{color:inherit;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}a{color:var(--cyan)}button{transition:color .2s,background .2s,transform .2s}.topbar{height:66px;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:20px}.brand{display:flex;align-items:center;gap:5px;color:#e4ebed;text-decoration:none;font-size:15px;font-weight:800;letter-spacing:.09em}.brand>span:last-child{font-weight:400;color:#a4afbc}.brandmark{color:var(--gold);font-size:28px;padding-right:7px}.topbar nav{display:flex;height:100%;gap:28px}.nav{background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:14px;padding:0 3px}.nav.active{color:var(--gold);border-color:var(--gold)}.text-btn{border:0;background:none;font-size:14px;color:var(--muted);padding:10px 0}.text-btn:hover{color:#fff}.version-button{font-size:12px}.version-button span{color:var(--gold)}main{max-width:1380px;margin:auto;padding:0 24px 24px}.arena{position:relative;overflow:hidden;isolation:isolate;border:1px solid #8ab6c338;border-radius:20px;background:#050c16;box-shadow:0 32px 90px #0009,0 1px 0 #dcf3ff26 inset}.ambient{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(180deg,#0309130d 0%,#040b132b 30%,#040b137a 65%,#050d18f5 100%),url('lounge-prive-v032.png');background-size:cover;background-position:center top;transition:filter .8s}.arena:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 34%,transparent 18%,#02071170 80%);pointer-events:none}.stage-bar{height:48px;padding:0 22px;display:flex;align-items:center;justify-content:space-between}.demo-badge{font-size:12px;letter-spacing:.1em;color:#c7d9e8}.stage-bar .text-btn{font-size:14px;color:#dce6f0}.game-heading{text-align:center;height:170px;display:flex;flex-direction:column;justify-content:center;position:relative;margin:0;filter:drop-shadow(0 3px 12px #010b14)}.eyebrow{font-size:12px;letter-spacing:.18em;color:var(--muted);font-weight:700;margin:0 0 6px}.game-heading>.eyebrow{color:#d5f8f7;font-size:12px;letter-spacing:.38em;margin-bottom:1px}h1{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-size:74px;line-height:.89;font-weight:800;letter-spacing:.11em;margin:0;background:linear-gradient(180deg,#fffbea 0,#f0d1a0 48%,#95735e 53%,#f3e6c8 83%);background-clip:text;-webkit-background-clip:text;color:transparent}h1 span{display:block;font-size:38px;letter-spacing:.31em;padding-left:.2em;line-height:1.2;background:linear-gradient(180deg,#fff,#a9e5e8);background-clip:text;-webkit-background-clip:text;color:transparent}.edition{font-size:12px;font-weight:600;color:#c5e4e9;letter-spacing:.06em;margin:8px 0 0}.game-content{position:relative;width:min(680px,calc(100% - 72px));margin:8px auto 0}.machine-top{display:flex;justify-content:space-between;align-items:center;padding:0 12px 8px}.caption{font-size:12px;color:#d2e8e9;letter-spacing:.16em}.reel-area{position:relative;border-radius:15px;padding:8px;background:linear-gradient(135deg,#e1d1a25e,#53778463 25%,#050c15 48%,#e7cc9969 100%);box-shadow:0 0 0 1px #a5d9d670,0 0 0 5px #0005,0 15px 60px #000a,0 0 70px #7ddde01c;isolation:isolate}.reels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;overflow:hidden;border-radius:9px;background:#60818b5c;border:1px solid #07141c}.reel{height:calc(var(--row) + var(--edge)*2);display:grid;grid-template-rows:var(--edge) var(--row) var(--edge);overflow:hidden;background:linear-gradient(180deg,#020b16f0,#0e1d2eed 50%,#020b16f0);position:relative}.symbol{position:relative;display:flex;align-items:center;justify-content:center;min-width:0}.symbol-art{display:block;flex:none;width:150px;height:150px;background-image:none;background-size:300% 200%;background-repeat:no-repeat;mix-blend-mode:screen;pointer-events:none}.art-0{background-position:0 0}.art-1{background-position:50% 0}.art-2{background-position:100% 0}.art-3{background-position:0 100%}.art-4{background-position:50% 100%}.symbol.center .symbol-art{width:var(--row);height:var(--row);max-width:100%;position:relative;filter:drop-shadow(0 0 13px color-mix(in srgb,var(--symbol-color),transparent 65%));transition:filter .4s,transform .4s}.symbol.center{z-index:2;background:radial-gradient(ellipse,#65898c15,transparent 70%)}.symbol.center small{position:absolute;bottom:6px;color:#e1eff6;font-size:12px;letter-spacing:.16em;text-transform:uppercase;z-index:2;line-height:1;text-shadow:0 2px 4px #000}.symbol.dim{overflow:hidden;opacity:.26;filter:saturate(.65)}.symbol.dim:first-child .symbol-art{transform:translateY(-32px) scale(.82)}.symbol.dim:last-child .symbol-art{transform:translateY(32px) scale(.82)}.payline{position:absolute;left:8px;right:8px;top:calc(var(--edge) + 8px);height:var(--row);border-top:1px solid #cce9d95c;border-bottom:1px solid #cce9d95c;box-shadow:0 0 20px #93eee00b;z-index:3;pointer-events:none}.line-marker{position:absolute;top:calc(50% - 23px);color:var(--gold);font-size:30px;filter:drop-shadow(0 0 7px #ffc77c)}.marker-left{left:-23px}.marker-right{right:-23px}.rolling .symbol-art{animation:roll .14s linear infinite;filter:none!important}.rolling small{opacity:0}.result{min-height:94px;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:1px;position:relative}#result-kicker{font-size:12px;letter-spacing:.19em;color:var(--cyan);font-weight:700}#result-title{font:600 26px/1.2 'Barlow Condensed',sans-serif;letter-spacing:.025em}#result-detail{font-size:13px;color:#b7cad5;line-height:1.6}.result.win #result-title{color:var(--gold);font-size:32px}.symbol.matched .symbol-art{transform:scale(1.06);filter:drop-shadow(0 0 16px var(--symbol-color))}.symbol.matched{box-shadow:inset 0 0 28px #befbe514}.fusion .reel-area{animation:fusion-frame 1.5s ease-out}.fusion .symbol.center .symbol-art{animation:fusion-art 1.1s ease-out}.controls{display:grid;grid-template-columns:1fr .8fr 1.45fr;align-items:center;gap:18px;background:linear-gradient(115deg,#0c1c2ded,#122b3aea);border:1px solid #aecad238;border-radius:14px;padding:16px 18px;box-shadow:0 12px 30px #0005,inset 0 1px 0 #c5fff014}.metric>span,.stake-control label{display:block;font-size:12px;letter-spacing:.08em;color:#a7bcca}.metric strong{font-weight:600;font-size:25px;letter-spacing:-.03em}.stake-control{border-left:1px solid #9bc5ca29;padding-left:20px}.stake-control select{border:0;background:transparent;color:#f0f8fc;font-size:24px;max-width:100%;padding:0 6px 0 0}.stake-control option{background:#091824}.spin{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:800;letter-spacing:.04em;min-height:60px;padding:12px 13px 12px 18px;border-radius:9px;border:1px solid #fff0c9;color:#192023;background:linear-gradient(165deg,#fff0c9 0,#e3bd7b 53%,#b89054 100%);box-shadow:0 4px 0 #644831,0 9px 28px #e5b66b2b,inset 0 1px 2px #fff;transition:filter .2s,transform .2s}.spin:hover:not(:disabled){filter:brightness(1.13);transform:translateY(-2px)}.spin:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 #644831}.spin-orb{font-size:30px;line-height:1;font-weight:400}.symbol-legend{display:flex;align-items:center;justify-content:center;gap:5px;padding:13px 0 0}.legend-item{display:grid;grid-template-columns:44px auto;grid-template-rows:20px 20px;align-items:center;padding:0 10px;border-right:1px solid #ffffff17}.legend-item:last-child{border:0}.legend-item .symbol-art{width:44px;height:44px;grid-row:1/3}.legend-item>span:not(.symbol-art){font-size:12px;color:#b1c4d1;line-height:1}.legend-item b{font-size:14px;color:var(--gold);line-height:1}.quick-rules{color:#aabfcf;font-size:12px;text-align:center;line-height:1.5;margin:11px 0 14px}.settings{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px 24px;padding:12px 0;border-top:1px solid #dce9ff12}.settings button,.arena-footer button{background:none;border:0;padding:5px 0;color:#c2d1dd;font-size:13px}.settings button:hover,.arena-footer button:hover{color:var(--gold)}.settings button[aria-pressed=true]{color:var(--cyan)}.audio-volume{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.audio-volume input{width:80px;accent-color:var(--gold)}.arena-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 24px;border-top:1px solid #c5d8ef13;background:#030b1396;color:#99afbe;font-size:12px}.particles{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.particles i{position:absolute;width:3px;height:3px;border-radius:50%;background:#d9ffee;left:var(--x);bottom:0;box-shadow:0 0 8px #8cffee;animation:drift var(--duration) linear infinite;animation-delay:var(--delay);opacity:0}.below-game{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:25px}.below-game p{font-size:13px;margin:3px 0;color:#acbfcc}.session-actions{display:flex;gap:22px}.session-actions button{font-size:13px}.history{display:flex;gap:8px;list-style:none;padding:0;margin:14px 0;overflow:auto}.history li{white-space:nowrap;border:1px solid var(--line);border-radius:6px;padding:7px 12px;color:var(--muted);font-size:12px;background:#0e1d2633}.history .positive{color:var(--gold);border-color:#b794543c}.history .empty-history{border-style:dashed}.footnote{color:var(--muted);font-size:13px;line-height:1.7}.page-footer{max-width:1332px;margin:auto;padding:18px 0 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#8198a9;font-size:12px;letter-spacing:.12em}.lab-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}#lab>.game-heading{height:140px}#lab h1{font-size:42px;line-height:1.15}#lab h1 span{display:inline;font-size:inherit;letter-spacing:inherit}#lab>.game-heading .demo-badge{display:none}.panel{padding:28px;border-radius:12px;background:var(--panel);border:1px solid var(--line)}h2{font-size:24px;line-height:1.3;margin:8px 0 12px}.muted{color:var(--muted);font-size:14px}.panel label{display:block;font-size:14px;margin:16px 0 5px}.panel input,.panel select{width:100%;padding:10px;border:1px solid #456174;border-radius:6px;background:#07131e;color:var(--text)}.calculated{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid var(--line);padding-top:18px;margin-top:25px}.calculated span{display:block;font-size:12px;color:var(--muted)}.calculated strong{color:var(--cyan);font-size:26px}.target-note{font-size:14px}.panel a{font-size:14px}.math-stat{display:flex;align-items:center;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.math-stat>strong{font:500 70px 'Barlow Condensed',sans-serif;color:var(--cyan)}.math-stat>strong span{font-size:30px}.math-stat p{font-size:14px;color:var(--muted)}.facts{list-style:none;padding:12px 0}.facts li{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.facts span{color:var(--muted)}.wide{grid-column:1/-1}.roadmap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:26px 0}.roadmap>div{border-left:1px solid var(--line);padding-left:18px}.roadmap>div>b{font:30px 'Barlow Condensed',sans-serif;color:var(--cyan)}h3{font-size:17px;margin:6px 0}.roadmap p{font-size:14px;color:var(--muted)}.tag{font-size:12px;color:var(--muted)}.tag.ready{color:var(--cyan)}dialog{width:calc(100% - 32px);max-width:620px;max-height:88vh;padding:26px;border-radius:16px;border:1px solid #7899aa80;color:var(--text);background:#091724;box-shadow:0 32px 100px #000a}dialog::backdrop{background:#01050dbd;backdrop-filter:blur(8px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-head button{border:0;background:none;font-size:24px;min-width:44px;min-height:44px}dialog p{font-size:15px}.payrow{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.payrow .symbol-art{width:64px;height:64px}.payrow b{font-size:14px}body[data-theme=eclipse]{--cyan:#d7b6ff}body[data-theme=eclipse] .ambient{filter:hue-rotate(38deg) saturate(.95)}
@keyframes drift{0%{transform:translate(0,0);opacity:0}15%{opacity:.5}80%{opacity:.35}100%{transform:translate(35px,-800px);opacity:0}}@keyframes roll{from{transform:translateY(-40px)}to{transform:translateY(40px)}}@keyframes fusion-frame{0%{box-shadow:0 0 0 1px #ffcda2,0 0 90px #d6ab6e70}100%{box-shadow:0 0 0 1px #a5d9d670,0 15px 60px #000a}}@keyframes fusion-art{30%{transform:scale(1.16);filter:drop-shadow(0 0 20px var(--symbol-color))}100%{transform:scale(1.06)}}
@media(min-width:1100px){.game-content{width:650px}.arena{min-height:850px}.game-heading{height:184px}.ambient{background-position:center 0}.reel-area{margin:0 -10px}.controls{margin:0 -14px}}
@media(max-width:760px){:root{--row:140px;--edge:34px}.topbar{height:58px;padding:0 16px;gap:12px}.brand{font-size:12px}.brandmark{font-size:24px;padding-right:3px}.topbar nav{gap:15px}.nav{font-size:13px}.version-button span{display:none}main{padding:0 10px 18px}.arena{border-radius:13px}.stage-bar{height:40px;padding:0 14px}.demo-badge{font-size:11px;letter-spacing:.05em}.game-heading{height:145px}h1{font-size:62px}h1 span{font-size:31px}.edition{font-size:11px}.game-content{width:calc(100% - 38px);margin-top:6px}.machine-top{padding:0 3px 8px}.caption{font-size:11px;letter-spacing:.08em}.reel-area{padding:5px;border-radius:11px}.reels{border-radius:7px}.payline{top:calc(var(--edge) + 5px);left:5px;right:5px}.marker-left{left:-17px}.marker-right{right:-17px}.line-marker{font-size:24px;top:calc(50% - 20px)}.symbol.center .symbol-art{width:100%;height:auto;aspect-ratio:1}.symbol.center small{font-size:10px;letter-spacing:.1em;bottom:12px}.symbol.dim .symbol-art{width:110px;height:110px}.result{min-height:90px}#result-title{font-size:24px}#result-detail{font-size:12px;line-height:1.4}.result.win #result-title{font-size:28px}#result-kicker{font-size:11px}.controls{grid-template-columns:1fr .8fr 1.35fr;gap:8px;padding:12px 10px;border-radius:10px}.metric>span,.stake-control label{font-size:10px;letter-spacing:.02em}.metric strong{font-size:21px}.stake-control{padding-left:9px}.stake-control select{font-size:21px;width:100%;padding:0}.spin{font-size:11px;min-height:58px;padding:8px 9px;letter-spacing:.02em;line-height:1.35}.spin-orb{font-size:25px}.symbol-legend{gap:0;padding-top:12px}.legend-item{grid-template-columns:1fr;grid-template-rows:32px 15px 18px;padding:0 4px;flex:1;text-align:center;justify-items:center}.legend-item .symbol-art{grid-row:auto;width:38px;height:38px}.legend-item>span:not(.symbol-art){font-size:10px}.legend-item b{font-size:12px}.quick-rules{font-size:11px;max-width:330px;margin:9px auto 12px}.settings{gap:8px 16px;padding:10px 0}.settings button{font-size:12px}.audio-volume{font-size:11px}.audio-volume input{width:58px}.arena-footer{flex-direction:column;gap:4px;padding:11px 12px;text-align:center;font-size:11px}.arena-footer button{font-size:12px}.below-game{flex-direction:column;align-items:flex-start;gap:4px;margin-top:18px}.session-actions{width:100%;justify-content:space-between}.page-footer{margin:0 14px;font-size:10px}.lab-grid{grid-template-columns:1fr}.panel{padding:20px}.roadmap{grid-template-columns:1fr 1fr}.calculated{grid-template-columns:1fr}.facts li{flex-wrap:wrap}.ambient{background-size:auto 100%;background-position:50% 0}}
@media(max-width:360px){.brand>span:last-child{display:none}.topbar nav{gap:12px}.game-content{width:calc(100% - 28px)}h1{font-size:54px}.metric strong,.stake-control select{font-size:18px}.spin{font-size:10px}.spin-orb{display:none}.caption{font-size:10px}.symbol.center small{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.particles{display:none}}

/* v0.5.0 — elemental reactions and cinematic lighting */
.arena::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 16%,#95eeff17,transparent 50%);transition:background .6s}
.arena[data-reaction]::before{background:radial-gradient(ellipse at 50% 35%,color-mix(in srgb,var(--reaction-color),transparent 73%),transparent 65%);animation:scene-bloom 2.6s ease-out both}
.reel-area::before{content:'';position:absolute;inset:-1px;border-radius:inherit;border:1px solid #e2faff40;box-shadow:inset 0 1px 0 #fff8,inset 0 -1px 0 #c99d6150;pointer-events:none}
.symbol.center::after{content:'';position:absolute;inset:4% 7%;pointer-events:none;opacity:.35;background:linear-gradient(125deg,transparent 35%,#e0fcff18 49%,transparent 62%);mix-blend-mode:screen}
.fusion .symbol.center::after{animation:crystal-glint 1.1s ease-out both}
.arena[data-reaction=ion] .symbol.center .symbol-art{animation:ion-lift 1.6s ease-out}
.arena[data-reaction=flux] .symbol.center .symbol-art{animation:flux-twist 1.9s ease-out}
.arena[data-reaction=plasma] .symbol.center .symbol-art{animation:plasma-charge 2.2s ease-out}
.arena[data-reaction=photon] .symbol.center .symbol-art{animation:photon-turn 2.5s ease-out}
.arena[data-reaction=aurora] .symbol.center .symbol-art{animation:aurora-rise 2.9s ease-out}
.fx-host{position:absolute;inset:0;pointer-events:none;z-index:8;isolation:isolate;overflow:hidden;border-radius:inherit;display:grid;place-items:center}
.fx-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.fx-active::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse,#0208103b 5%,#020a137d 70%,#02091121);animation:effect-fade .25s ease-out}
.fx-card{position:relative;z-index:1;max-width:94%;padding:15px 27px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px;background:linear-gradient(150deg,#091625db,#020713b5);border:1px solid color-mix(in srgb,var(--fx-color),transparent 48%);border-radius:12px;box-shadow:0 12px 45px #0009,0 0 30px color-mix(in srgb,var(--fx-color),transparent 85%);backdrop-filter:blur(7px);animation:award-in .45s cubic-bezier(.17,.8,.22,1) both}
.fx-kicker{font-size:11px;letter-spacing:.16em;color:#c8dce9;font-weight:700}.fx-title{font:700 clamp(18px,4.5vw,30px)/1.15 'Barlow Condensed',sans-serif;letter-spacing:.08em;color:var(--fx-color);text-shadow:0 0 20px color-mix(in srgb,var(--fx-color),transparent 65%)}.fx-amount{font:700 clamp(30px,7vw,46px)/1.1 'Barlow Condensed',sans-serif;color:#f4fcff;font-variant-numeric:tabular-nums}.fx-detail{font-size:12px;color:#bdcfdd;line-height:1.4}.fx-aurora .fx-title{background:linear-gradient(100deg,#84ffec,#fff,#d2b3ff,#ffd699);color:transparent;background-clip:text;-webkit-background-clip:text}.fx-partial::before{background:transparent}.fx-partial .fx-card{padding:10px 20px;background:#0b1825ec;border-color:#8b9aaf45;box-shadow:none;animation:effect-fade .2s linear}.fx-partial .fx-title{font-size:18px;color:#c3d0de;text-shadow:none}.fx-partial .fx-amount{font-size:26px;color:#ced8e2}
#effects-open{color:var(--gold);border-bottom:1px solid #e8cf8d50}.preview-disclaimer{color:var(--muted)}#effects-dialog{max-width:680px}.preview-stage{height:285px;position:relative;isolation:isolate;overflow:hidden;border:1px solid #809eaf66;border-radius:12px;background:radial-gradient(ellipse at 50% 40%,#19414f7d,#060c18 75%)}.preview-stage::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0814239c,#030810ce),url('lounge-prive-v032.png') center 20%/cover;z-index:-1}#preview-art{position:absolute;inset:0;display:grid;place-items:center;opacity:.45}#preview-art .symbol-art{width:245px;height:245px}.effect-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0 8px}.effect-choices button{background:#0c1e2b;border:1px solid #49677766;border-radius:9px;display:flex;align-items:center;flex-direction:column;padding:7px 3px;color:#c6d9e5}.effect-choices button[aria-pressed=true]{border-color:var(--gold);background:#28405050;box-shadow:0 0 20px #ddc39115}.effect-choices button:hover{background:#1b3444}.effect-choices .symbol-art{width:60px;height:60px}.effect-choices button>span:not(.symbol-art){font-size:12px}.effect-choices b{font-size:13px;color:var(--gold)}#preview-label{font-size:13px;min-height:40px;color:#d3e2ec;margin:10px 0 0}#partial-preview{font-size:13px;text-align:left}
@keyframes scene-bloom{0%{opacity:0}20%{opacity:1}100%{opacity:0}}@keyframes crystal-glint{from{transform:translateX(-18%);opacity:0}50%{opacity:.6}to{transform:translateX(18%);opacity:0}}@keyframes award-in{from{opacity:0;transform:translateY(15px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes effect-fade{from{opacity:0}to{opacity:1}}@keyframes ion-lift{25%{transform:translateY(-9px) scale(1.06)}70%{transform:translateY(-3px) scale(1.03)}}@keyframes flux-twist{20%{transform:rotate(-9deg) scale(1.09)}55%{transform:rotate(6deg) scale(1.04)}100%{transform:rotate(0) scale(1.06)}}@keyframes plasma-charge{20%{transform:scale(.94);filter:brightness(1.2) drop-shadow(0 0 20px #5bffd0)}60%{transform:scale(1.12)}100%{transform:scale(1.06)}}@keyframes photon-turn{25%{transform:rotate(-13deg) scale(1.12);filter:drop-shadow(0 0 22px #ffce79)}100%{transform:rotate(0) scale(1.06)}}@keyframes aurora-rise{30%{transform:translateY(-12px) scale(1.13);filter:drop-shadow(0 0 26px #b5efff)}65%{transform:translateY(-6px) scale(1.08)}100%{transform:translateY(0) scale(1.06)}}
@media(max-width:760px){.fx-card{padding:12px 14px;gap:2px}.fx-kicker{font-size:10px}.fx-detail{font-size:11px}.preview-stage{height:245px}#effects-dialog{padding:18px}.effect-choices{gap:5px}.effect-choices .symbol-art{width:48px;height:48px}.effect-choices button>span:not(.symbol-art){font-size:11px}.effect-choices button{padding:6px 0}.preview-stage .fx-card{padding:16px}.preview-stage .fx-title{font-size:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.fx-canvas{display:none}.arena[data-reaction]::before{opacity:.25}}

/* v0.6 — continuous reels, cinema and session playback */
.reel.is-travelling{display:block;contain:paint}.reel-strip{will-change:transform;display:block}.strip-cell{height:var(--row);display:flex;align-items:center;justify-content:center}.strip-cell .symbol-art{width:var(--row);height:var(--row);max-width:100%;aspect-ratio:1;filter:none}.reel.is-travelling::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#020a15a6,transparent 27%,transparent 73%,#020a15a6)}
.stage-actions{display:flex;align-items:center;gap:20px}.stage-actions #cinema{color:var(--gold)}.history li{padding:0}.history li.empty-history{padding:10px 14px}.history li button{display:flex;flex-direction:column;align-items:center;width:100%;padding:7px 13px;border:0;background:transparent;color:inherit;font-size:12px;border-radius:6px}.history li button:hover:not(:disabled){background:#c8e6ee0e}.history-symbols{display:flex;height:32px;align-items:center;justify-content:center}.history-symbols .symbol-art{width:32px;height:32px}.history .positive{box-shadow:inset 0 1px #d9b47416}.settings button{min-height:36px}.settings button[aria-pressed=true]{color:var(--cyan)}
.cinema-mode .topbar,.cinema-mode .below-game,.cinema-mode .history,.cinema-mode #game-view>.footnote,.cinema-mode .page-footer{display:none}.cinema-mode main{max-width:none;padding:0}.cinema-mode .arena{border-radius:0;border:0;min-height:100svh}.cinema-mode .game-content{width:min(800px,calc(100% - 60px))}.cinema-mode .stage-bar{position:relative;z-index:10}.cinema-mode .game-heading{height:165px}.cinema-mode .ambient{background-position:center top}.cinema-mode .arena-footer{justify-content:center}.cinema-mode .stage-actions #cinema{border-bottom:1px solid #e8cc8b80}.cinema-mode .reel-area{box-shadow:0 0 0 1px #a5d9d690,0 0 0 6px #0005,0 18px 80px #000b,0 0 95px #7ddde032}
@media(min-width:1100px){.cinema-mode{--row:185px;--edge:46px}.cinema-mode .game-heading{height:190px}}
@media(max-width:760px){.stage-actions{gap:13px}.stage-actions .text-btn{font-size:12px}.demo-badge{font-size:10px}.cinema-mode .game-content{width:calc(100% - 38px)}.cinema-mode .game-heading{height:140px}.strip-cell .symbol-art{width:100%;height:auto}.history-symbols .symbol-art{width:30px;height:30px}.history li button{padding:6px 10px}}
@media(orientation:landscape) and (max-height:620px){.cinema-mode{--row:112px;--edge:22px}.cinema-mode .stage-bar{height:33px}.cinema-mode .game-heading{height:72px}.cinema-mode h1{font-size:35px}.cinema-mode h1 span{font-size:20px;display:inline;margin-left:8px;letter-spacing:.1em}.cinema-mode .game-heading .eyebrow,.cinema-mode .edition{display:none}.cinema-mode .game-content{width:min(620px,calc(100% - 80px));margin-top:0}.cinema-mode .result{min-height:62px}.cinema-mode .controls{padding:9px 13px}.cinema-mode .spin{min-height:44px}.cinema-mode .symbol.center small{bottom:3px}.cinema-mode .symbol-legend{padding-top:7px}}
body[data-motion=calm] *,body[data-motion=calm] *::before,body[data-motion=calm] *::after{animation:none!important;transition:none!important}body[data-motion=calm] .particles{display:none}

/* v0.7 — original evolution forms and full-scene celebrations */
.symbol-art.evo-2{background-image:none}
.symbol-art.evo-3{background-image:none}
.symbol-art.evo-2.art-0{clip-path:inset(0 0 7% 0)}
.symbol-art.evo-2.art-3{background-size:300% 186%}
.evolution-note{text-align:center;color:#bbd6de;font-size:11px;line-height:1.5;margin:16px 0 0}
.legend-item{position:relative}.legend-item .evo-2{filter:drop-shadow(0 0 7px #96ebfc40)}.legend-item .evo-3{filter:drop-shadow(0 0 8px #ffd18060)}
.evolution-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0;color:#e4d3ab;font-size:13px}
.evolution-picker select{border:1px solid #d9b26e66;border-radius:7px;color:#fbedd1;background:#101f2e;padding:8px 10px;max-width:70%;font-size:13px}
.fx-evolve{--fx-origin:39%;--hero-size:clamp(230px,48vw,350px)}
.fx-evolve::before{background:radial-gradient(ellipse at 50% var(--fx-origin),#091e36bb 3%,#020710e8 67%,#020710b5);animation:effect-fade .35s ease-out both}
.fx-hero{position:absolute;width:var(--hero-size);height:var(--hero-size);left:50%;top:var(--fx-origin);transform:translate(-50%,-50%);z-index:2;perspective:700px}
.fx-hero .symbol-art{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 0 22px var(--fx-color));will-change:transform,opacity}
.fx-form-before{animation:form-compress 1.35s cubic-bezier(.5,0,.7,1) both}
.fx-hero .fx-form-after{animation:form-emerge 1.25s 1.08s cubic-bezier(.16,.9,.24,1) both}
.fx-energy{position:absolute;inset:-18%;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--fx-color) 7%,transparent 57%);mix-blend-mode:screen;animation:energy-compress 1.42s ease-in both}
.fx-orbit{position:absolute;inset:-8%;border:1px solid var(--fx-color);border-radius:50%;box-shadow:0 0 18px color-mix(in srgb,var(--fx-color),transparent 50%),inset 0 0 18px color-mix(in srgb,var(--fx-color),transparent 70%);animation:orbit-charge 1.5s ease-in both}
.orbit-b{inset:-17%;animation-name:orbit-cross;opacity:.55}
.fx-impact{position:absolute;inset:-20%;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--fx-color) 15%,transparent 65%);mix-blend-mode:screen;animation:impact-bloom 1.1s 1.03s ease-out both}
.fx-evolve .fx-card{position:absolute;left:50%;top:calc(var(--fx-origin) + var(--hero-size)*.49);transform:translateX(-50%);width:580px;max-width:96%;padding:15px 14px 22px;border:0;border-radius:0;background:radial-gradient(ellipse,#030916cc,transparent 72%);box-shadow:none;backdrop-filter:none;gap:3px;z-index:4;animation:reveal-award .7s 1.32s cubic-bezier(.17,.8,.22,1) both}
.fx-evolution-label{font:800 clamp(30px,7vw,53px)/1 'Barlow Condensed',sans-serif;letter-spacing:.075em;color:#ffe4aa;text-shadow:0 2px 1px #51381d,0 0 38px #ffb24966}
.fx-evolve .fx-title{font-size:clamp(18px,4vw,25px);letter-spacing:.17em;margin-top:5px}
.fx-evolve .fx-amount{font-size:clamp(48px,10vw,78px);color:#fff1cc;line-height:1.05;text-shadow:0 3px 0 #674c2b,0 0 24px #ffce6a50;letter-spacing:-.01em}
.fx-evolve .fx-kicker{font-size:10px;color:#cad5de;margin-bottom:8px;letter-spacing:.18em}
.fx-evolve .fx-detail{color:#e4e1d7;text-shadow:0 2px 5px #000}
.fx-coins{position:absolute;inset:0;z-index:3;overflow:hidden;mix-blend-mode:screen;perspective:900px}
.fx-coin{display:block;position:absolute;left:var(--coin-x);top:-90px;width:var(--coin-size);height:var(--coin-size);opacity:0;animation:coin-fall var(--coin-time) var(--coin-delay) cubic-bezier(.3,.02,.72,.48) both;will-change:transform;z-index:1}
.fx-coin.coin-front{z-index:2}
.fx-coin-face{display:block;width:100%;height:100%;background:url('aurora-evolution-2.png') 100% 100%/300% 200% no-repeat;animation:coin-turn var(--coin-time) var(--coin-delay) linear both}
.coin-front .fx-coin-face{filter:brightness(1.2) drop-shadow(0 0 6px #ffdc7650)}
.fx-ion .fx-form-after{animation-name:ion-emerge}.fx-flux .fx-form-after{animation-name:flux-emerge}.fx-plasma .fx-form-after{animation-name:plasma-emerge}.fx-photon .fx-form-after{animation-name:photon-emerge}
.preview-stage{height:440px}.preview-stage .fx-evolve{--fx-origin:34%;--hero-size:240px}.preview-stage #preview-art{opacity:0}.preview-stage .fx-evolve .fx-card{padding:10px 12px}.preview-stage .fx-evolution-label{font-size:35px}.preview-stage .fx-evolve .fx-amount{font-size:48px}.preview-stage .fx-evolve .fx-title{font-size:20px}
.fx-calm .fx-form-before,.fx-calm .fx-energy,.fx-calm .fx-orbit,.fx-calm .fx-impact,.fx-calm .fx-canvas{display:none}
.fx-calm .fx-form-after,.fx-calm .fx-card{animation:none!important;opacity:1}
@keyframes form-compress{0%{opacity:1;transform:scale(.72) rotate(-8deg);filter:brightness(1)}40%{transform:scale(.9) rotate(4deg);filter:brightness(1.3)}60%{transform:scale(.86) rotate(-5deg)}78%{transform:scale(.99) rotate(6deg);filter:brightness(2.5)}90%{opacity:1;transform:scale(.5) rotate(-12deg);filter:brightness(5)}100%{opacity:0;transform:scale(.04) rotate(30deg);filter:brightness(6)}}
@keyframes energy-compress{0%{opacity:0;transform:scale(1.4)}65%{opacity:.25;transform:scale(.8)}83%{opacity:.7;transform:scale(.37)}100%{opacity:0;transform:scale(.05)}}
@keyframes orbit-charge{0%{opacity:0;transform:rotateX(65deg) rotateZ(-80deg) scale(1.6)}40%{opacity:.75}90%{opacity:1;transform:rotateX(65deg) rotateZ(150deg) scale(.35)}100%{opacity:0;transform:rotateX(65deg) rotateZ(170deg) scale(.01)}}
@keyframes orbit-cross{0%{opacity:0;transform:rotateY(65deg) rotateZ(60deg) scale(1.4)}40%{opacity:.65}90%{opacity:1;transform:rotateY(65deg) rotateZ(-180deg) scale(.35)}100%{opacity:0;transform:scale(.01)}}
@keyframes impact-bloom{0%{opacity:0;transform:scale(.04)}12%{opacity:.95;transform:scale(.55)}37%{opacity:.65;transform:scale(1.7)}100%{opacity:0;transform:scale(3)}}
@keyframes form-emerge{0%{opacity:0;transform:scale(.12) translateY(70px) rotate(-16deg);filter:brightness(4)}35%{opacity:1;transform:scale(1.12) translateY(-10px) rotate(5deg);filter:brightness(1.8)}65%{transform:scale(.95) rotate(-2deg)}100%{opacity:1;transform:scale(1);filter:brightness(1) drop-shadow(0 0 22px var(--fx-color))}}
@keyframes ion-emerge{0%{opacity:0;transform:scale(.08) rotateY(140deg);filter:brightness(4)}45%{opacity:1;transform:scale(1.13) rotateY(-16deg)}100%{opacity:1;transform:scale(1) rotateY(0)}}
@keyframes flux-emerge{0%{opacity:0;transform:translateY(90px) scale(.1) rotate(-40deg);filter:brightness(3)}42%{opacity:1;transform:translateY(-14px) scale(1.1) rotate(8deg)}70%{transform:translateY(4px) rotate(-3deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@keyframes plasma-emerge{0%{opacity:0;transform:scale(.08) rotate(-180deg);filter:brightness(4)}50%{opacity:1;transform:scale(1.12) rotate(20deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes photon-emerge{0%{opacity:0;transform:scale(.05) rotate(65deg);filter:brightness(5)}40%{opacity:1;transform:scale(1.2) rotate(-10deg);filter:brightness(1.8)}100%{opacity:1;transform:scale(1) rotate(0);filter:brightness(1) drop-shadow(0 0 30px #ffd270)}}
@keyframes reveal-award{from{opacity:0;transform:translate(-50%,24px) scale(.7)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@keyframes coin-fall{0%{opacity:0;transform:translate3d(0,0,0) rotate(0)}7%{opacity:1}90%{opacity:1}100%{opacity:0;transform:translate3d(var(--coin-drift),var(--rain-distance),0) rotate(var(--coin-rotation))}}
@keyframes coin-turn{from{transform:rotateY(0)}to{transform:rotateY(var(--coin-turn))}}
@media(max-width:760px){.fx-evolve{--hero-size:260px;--fx-origin:35%}.fx-evolve .fx-card{top:calc(var(--fx-origin) + 128px)}.fx-evolve .fx-evolution-label{font-size:38px}.fx-evolve .fx-title{font-size:21px}.fx-evolve .fx-amount{font-size:60px}.evolution-note{font-size:10px;margin-top:13px}.preview-stage{height:415px}.preview-stage .fx-evolve{--hero-size:218px;--fx-origin:32%}.preview-stage .fx-evolve .fx-card{top:calc(var(--fx-origin) + 106px)}.preview-stage .fx-evolution-label{font-size:33px}.preview-stage .fx-evolve .fx-amount{font-size:45px}.evolution-picker{font-size:12px}.evolution-picker select{font-size:12px}}
@media(prefers-reduced-motion:reduce){.fx-form-before,.fx-energy,.fx-orbit,.fx-impact,.fx-coins{display:none}.fx-form-after,.fx-evolve .fx-card{opacity:1}}

/* v0.8 — sculpted forms, tier III ceremony and persistent previews */
.symbol-art.evo-2,.symbol-art.evo-3{mask-image:radial-gradient(ellipse,#000 54%,#000e 62%,transparent 73%)}
.symbol.center[data-level="3"]{background:radial-gradient(ellipse at 50% 45%,#d5b27721,transparent 70%)}
.symbol.center[data-level="3"] small{color:#ffe2ad}
.evolution-note{font-size:12px;line-height:1.6;max-width:620px;margin-inline:auto}
.evolution-lineage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}
.lineage-form{display:grid;justify-items:center;align-content:center;gap:1px;position:relative;padding:6px 3px 10px;overflow:hidden;border:1px solid #cce6f21c;border-radius:10px;background:linear-gradient(150deg,#15283a80,#060d19)}
.lineage-form .symbol-art{width:100px;height:100px}.lineage-form strong{font-size:14px;color:#b9cbd7;line-height:1.4}.lineage-form>span:not(.symbol-art){font-size:12px;color:#8fa9b9}
.lineage-form.is-selected{border-color:#ebcd8e99;background:radial-gradient(ellipse at 50% 20%,#69533640,#101a27 85%);box-shadow:inset 0 1px #fff0be30}.lineage-form.is-selected strong{color:#ffe0a9}
.preview-stage #preview-art{opacity:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}.preview-stage #preview-art .symbol-art{width:min(270px,90%);height:auto;aspect-ratio:1}
.preview-final-caption{font:600 24px/1.3 'Barlow Condensed',sans-serif;letter-spacing:.08em;color:#e5d0a0}
.fx-form-display{position:absolute;inset:0;animation:form-hover 3.2s 2.2s ease-in-out infinite}
.fx-floor{position:absolute;left:-20%;right:-20%;height:28%;bottom:-15%;border-radius:50%;border:2px solid color-mix(in srgb,var(--fx-color),transparent 50%);background:radial-gradient(ellipse,color-mix(in srgb,var(--fx-color),transparent 72%),transparent 65%);box-shadow:0 0 40px color-mix(in srgb,var(--fx-color),transparent 78%);animation:floor-open 1.2s 1.1s ease-out both}
.fx-corona{display:none;position:absolute;inset:-65%;border-radius:50%;background:repeating-conic-gradient(from 0deg,transparent 0 14deg,color-mix(in srgb,var(--fx-color),transparent 85%) 18deg,transparent 21deg 30deg);mask-image:radial-gradient(circle,transparent 15%,#000 35%,transparent 69%);mix-blend-mode:screen;animation:corona-open 3.8s 1.1s ease-out both}
.fx-legendary .fx-corona{display:block}.fx-legendary .fx-impact{animation-name:legend-impact}.fx-legendary .fx-form-display{animation-name:legend-hover}.fx-legendary .fx-evolution-label{background:linear-gradient(100deg,#cead72,#fff5d4 35%,#d9b573 57%,#fff0b8 75%,#bd9049);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 0 35px #ffd58d55}
.fx-legendary::before{background:radial-gradient(ellipse at 50% var(--fx-origin),#263244c9,#02070fec 75%)}
.coin-burst{left:50%;top:var(--fx-origin);animation-name:coin-launch;animation-timing-function:linear}
@keyframes coin-launch{0%{opacity:0;transform:translate3d(0,0,0) scale(.25)}8%{opacity:1}38%{opacity:1;transform:translate3d(calc(var(--burst-x)*.7),var(--burst-up),0) rotate(170deg) scale(1.15)}100%{opacity:0;transform:translate3d(var(--burst-x),var(--rain-distance),0) rotate(var(--coin-rotation)) scale(.85)}}
@keyframes corona-open{0%{opacity:0;transform:scale(.15) rotate(-35deg)}20%{opacity:1;transform:scale(.98) rotate(-16deg)}100%{opacity:.4;transform:scale(1.15) rotate(16deg)}}
@keyframes floor-open{from{opacity:0;transform:scale(.02)}to{opacity:.7;transform:scale(1)}}
@keyframes legend-impact{0%{opacity:0;transform:scale(.04)}16%{opacity:.9;transform:scale(.8)}48%{opacity:.4;transform:scale(2.5)}100%{opacity:0;transform:scale(4)}}
@keyframes form-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes legend-hover{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-11px) rotate(1.5deg)}}
.fx-calm .fx-corona,.fx-calm .fx-floor{display:none}.fx-calm .fx-form-display{animation:none}
@media(min-width:761px){#effects-dialog{max-width:780px}.evolution-lineage{gap:12px}.lineage-form .symbol-art{width:112px;height:112px}.fx-legendary{--hero-size:370px}.preview-stage .fx-legendary{--hero-size:260px}}
@media(max-width:760px){.lineage-form .symbol-art{width:80px;height:80px}.lineage-form strong{font-size:12px}.lineage-form>span:not(.symbol-art){font-size:11px}.evolution-note{font-size:12px}.preview-stage{height:360px}.preview-stage .fx-evolve{--fx-origin:31%;--hero-size:200px}.preview-stage .fx-evolve .fx-card{top:calc(var(--fx-origin) + 98px)}.preview-stage .fx-evolution-label{font-size:30px}.preview-stage .fx-evolve .fx-amount{font-size:39px}.preview-stage .fx-evolve .fx-title{font-size:18px}.preview-stage .fx-detail{font-size:12px}.evolution-picker{font-size:14px}.evolution-picker select{font-size:13px}.fx-coin.coin-front{filter:none}}
@media(prefers-reduced-motion:reduce){.fx-corona,.fx-floor{display:none}}

/* v0.9 — soundtrack, five levels and a living cosmic scene */
.symbol-art.evo-4{background-image:none}.symbol-art.evo-5{background-image:none;mask-image:radial-gradient(ellipse,#000 54%,#000e 62%,transparent 73%)}
.symbol-art.evo-4.art-0,.symbol-art.evo-4.art-1{clip-path:inset(0 0 6% 0)}.symbol-art.evo-4.art-3,.symbol-art.evo-4.art-4{background-size:300% 191%}
.symbol.center[data-level="4"] small{color:#9dffed}.symbol.center[data-level="5"] small{color:#ffd9a1}.symbol.center[data-level="5"]{background:radial-gradient(ellipse,#aa8f4d26,transparent 73%)}
.strip-cell .symbol-art,.rolling .symbol-art{filter:none!important}.reel-strip{backface-visibility:hidden}
.world-fx{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.nebula-flow{position:absolute;inset:-15%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 20% 38%,#27d8ee16,transparent 35%),radial-gradient(ellipse at 85% 22%,#ffbf7021,transparent 30%);mix-blend-mode:screen;animation:nebula-breathe 16s ease-in-out infinite alternate}
.game-heading,.stage-bar,.game-content,.music-deck,.arena-footer{position:relative;z-index:2}.arena .fx-host{z-index:8}
.ambient{animation:world-drift 28s ease-in-out infinite alternate;transform-origin:50% 20%}.game-heading{height:156px}.game-content{margin-top:16px}
.music-deck{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:2px 12px;width:min(610px,calc(100% - 40px));margin:0 auto 8px;padding:11px 14px;border:1px solid #a3d7e240;border-radius:12px;background:linear-gradient(120deg,#102c3be8,#091522e8);box-shadow:0 8px 24px #0004}
.music-deck strong{display:block;color:#dfefef;font-size:13px;letter-spacing:.12em}.music-deck #music-status{display:block;font-size:12px;color:#acc8d0}.music-deck button{border:1px solid #bdddce70;background:#a1eadd18;color:#d0fff3;padding:9px 12px;border-radius:7px;font-size:13px;min-height:42px}.music-deck a{grid-column:2/-1;color:#a7c4cd;font-size:12px;justify-self:start;text-decoration:none}.music-deck a:hover{text-decoration:underline}.music-meter{display:flex;gap:3px;align-items:center;height:32px;grid-row:1/3}.music-meter i{width:3px;height:6px;border-radius:3px;background:#a8f3e5}.music-meter i:nth-child(2){height:18px}.music-meter i:nth-child(3){height:27px}.music-meter i:nth-child(4){height:12px}
body[data-sound=on] .music-meter i{animation:music-meter .72s ease-in-out infinite alternate}body[data-sound=on] .music-meter i:nth-child(2){animation-delay:-.24s}body[data-sound=on] .music-meter i:nth-child(3){animation-delay:-.48s}
.evolution-lineage{grid-template-columns:repeat(5,minmax(0,1fr))}.lineage-form .symbol-art{width:min(100%,100px);height:auto;aspect-ratio:1}.lineage-form strong{font-size:12px}.lineage-form>span:not(.symbol-art){font-size:11px}
.fx-cosmic .fx-corona{background:repeating-conic-gradient(from 0deg,transparent 0 9deg,#a5ffef35 12deg,transparent 16deg 30deg)}.fx-infinite .fx-corona{background:repeating-conic-gradient(from 0deg,transparent 0 8deg,#ffdf972b 12deg,transparent 17deg 25deg);inset:-80%}.fx-infinite .fx-evolution-label{font-size:clamp(40px,8vw,66px);letter-spacing:.13em}.fx-infinite .fx-floor{border-color:#ffe5a1;box-shadow:0 0 60px #ffe1a130}.fx-infinite .fx-form-after{filter:drop-shadow(0 0 30px #ffe3ac60)}
@keyframes world-drift{from{transform:scale(1.015) translateY(0)}to{transform:scale(1.055) translateY(-8px)}}
@keyframes nebula-breathe{from{transform:translate(-1%,0) rotate(-2deg);opacity:.4}to{transform:translate(2%,-2%) rotate(2deg);opacity:1}}
@keyframes music-meter{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@media(max-width:760px){.game-heading{height:128px}.music-deck{width:calc(100% - 28px);padding:9px 10px;gap:3px 8px;grid-template-columns:22px 1fr auto}.music-deck strong{font-size:11px;letter-spacing:.09em}.music-deck #music-status{font-size:11px}.music-deck button{font-size:12px;padding:8px}.music-deck a{font-size:11px}.lineage-form{padding:4px 1px 6px}.lineage-form strong{font-size:10px}.lineage-form>span:not(.symbol-art){font-size:9px}.evolution-lineage{gap:4px}.fx-infinite .fx-evolution-label{font-size:39px}.preview-stage .fx-infinite .fx-evolution-label{font-size:33px}}
@media(orientation:landscape) and (max-height:620px){.cinema-mode .music-deck{margin:4px auto;padding:4px 10px}.cinema-mode .music-deck a,.cinema-mode .music-deck #music-status{display:none}.cinema-mode .music-deck button{min-height:30px;padding:4px 8px}}
@media(prefers-reduced-motion:reduce){.nebula-flow{display:none}}
body[data-motion=calm] .nebula-flow{display:none}

@media(max-width:760px){.music-deck{grid-template-columns:22px minmax(0,1fr) auto}.evolution-lineage{grid-template-columns:repeat(5,minmax(88px,1fr));overflow-x:auto;scroll-snap-type:x proximity;gap:7px;padding-bottom:6px}.lineage-form{scroll-snap-align:start}.lineage-form strong{font-size:12px}.lineage-form>span:not(.symbol-art){font-size:11px}}

/* v0.10 — a single glass chamber, with no dark per-symbol tiles */
.reel-area{background:linear-gradient(135deg,#ccf9f036,#bfd3e414 35%,#f4dbaa32);padding:7px;border:1px solid #c2fff15c;box-shadow:0 0 0 4px #0716245c,0 14px 44px #0005,inset 0 1px #eeffff8c}
.reel-area::before{content:'';position:absolute;inset:7px;border-radius:10px;background:radial-gradient(ellipse at 20% 40%,#31bdb52b,transparent 55%),radial-gradient(ellipse at 80% 55%,#998de628,transparent 55%),linear-gradient(180deg,#0a25393b,#0b233052);pointer-events:none;z-index:0}
.reels{position:relative;z-index:2;gap:0;background:transparent;border:0;isolation:isolate}.reel{background:transparent;border:0}.reel+.reel::before{content:'';position:absolute;left:0;top:10%;bottom:10%;width:1px;background:linear-gradient(transparent,#d8fff024,transparent);pointer-events:none;z-index:3}
.symbol.center,.symbol.center[data-level="3"],.symbol.center[data-level="5"]{background:transparent}.symbol.matched{box-shadow:none}.symbol.center small{bottom:4px;font-size:12px;letter-spacing:.08em;text-shadow:0 1px 4px #02070a,0 1px 9px #02070a}
.symbol-art{mask-image:radial-gradient(ellipse,#000 51%,#000f 57%,#000c 65%,transparent 73%)}
.payline{border:0;box-shadow:none;background:transparent}.reel.is-travelling::after{background:linear-gradient(180deg,#09233533,transparent 18%,transparent 82%,#09233533)}
#reel-mist{position:absolute;inset:7px;width:calc(100% - 14px);height:calc(100% - 14px);z-index:1;pointer-events:none;border-radius:10px}.symbol.dim{opacity:.20;filter:none}.cinema-mode .reel-area{box-shadow:0 0 0 3px #93dece1a,0 18px 50px #0005,0 0 65px #62dfc219}
.music-choice{grid-column:2/-1;display:flex;gap:9px;align-items:center;font-size:12px;color:#b3d1d8}.music-choice select{min-width:0;max-width:100%;flex:1;background:#0a202f;border:1px solid #a4e0d52f;border-radius:6px;color:#dcece9;padding:5px;font-size:12px}.music-deck a{font-size:12px}.music-deck strong{font-size:13px}.music-deck #music-status{font-size:12px}.music-deck{gap:5px 12px}.music-meter{grid-row:1/4}
@media(max-width:760px){.music-deck{padding:8px 10px;margin-bottom:6px}.music-deck strong{font-size:12px}.music-deck button{font-size:12px;padding:7px}.music-choice{font-size:12px}.music-deck a{display:none}.music-meter{grid-row:1/3}.game-heading,.cinema-mode .game-heading{height:110px}.game-heading h1{font-size:58px}.game-heading h1 span{font-size:30px}.game-heading .edition{margin-top:4px;font-size:10px}.stage-bar{padding-top:env(safe-area-inset-top)}.reel-area{padding:6px}}
@media(orientation:landscape) and (max-height:620px){.cinema-mode .game-heading{height:65px}.cinema-mode .game-heading h1{font-size:35px}.cinema-mode .game-heading h1 span{font-size:20px}.cinema-mode .music-choice{display:none}}

body[data-audio-status=error] .music-deck a{display:block}
/* Blend the complete reel layer so nested stacking contexts cannot retain black sprite squares. */
.reels{mix-blend-mode:screen}


/* v0.11 — true transparent sprites, restrained materials, no masked discs */
.symbol-art,.symbol-art.evo-2,.symbol-art.evo-3,.symbol-art.evo-4,.symbol-art.evo-5{mask-image:none!important;-webkit-mask-image:none!important;clip-path:none!important;mix-blend-mode:normal;filter:none!important;background-size:300% 200%!important;background-color:transparent}
.symbol-art.evo-1{background-image:url('symbols-original-v011.png')}.symbol-art.evo-2{background-image:none}.symbol-art.evo-3{background-image:none}.symbol-art.evo-4{background-image:none}.symbol-art.evo-5{background-image:none}
.symbol-art.art-3,.symbol-art.art-4{background-size:300% 196%!important}.symbol-art.art-0,.symbol-art.art-1,.symbol-art.art-2{clip-path:inset(0 0 5% 0)!important}
.reels{mix-blend-mode:normal;background:transparent}.reel-area::before{background:#09131d85}.symbol.center,.symbol.center[data-level="3"],.symbol.center[data-level="5"],.symbol.matched{background:transparent;box-shadow:none}
#reel-mist{opacity:.35}.ambient{opacity:.45;filter:saturate(.4);animation:none}.nebula-flow{display:none}.world-fx{opacity:.35}.arena{background:#080f16}.game-heading .edition{color:#cab48e;letter-spacing:.12em}.game-heading{filter:none}.music-deck{background:linear-gradient(120deg,#19232bd9,#101820df);border-color:#b8a48345;box-shadow:none}.music-deck button{background:#c8b59314;border-color:#c8b59360;color:#e6d8bc}.music-meter i{background:#d8c29a}.music-choice select{background:#131b23;border-color:#b5a07c42}.reel-area{background:linear-gradient(125deg,#b6ada17a,#34424c7a 35%,#c3b59866);box-shadow:0 9px 24px #0005,inset 0 1px #ede4d052}.cinema-mode .reel-area{box-shadow:0 12px 32px #0005,inset 0 1px #ddd1b642}
.fx-corona,.fx-floor,.fx-energy,.fx-orbit,.fx-impact{display:none!important}.fx-hero .symbol-art{filter:none!important;mix-blend-mode:normal}.fx-form-display{animation:none!important}.fx-form-before{animation:precision-away .7s ease-in both!important}.fx-hero .fx-form-after{animation:precision-in .8s .65s cubic-bezier(.2,.8,.2,1) both!important}.fx-evolution-label{letter-spacing:.07em!important}.fx-evolve::before,.fx-legendary::before{background:#071019e8}.fx-evolve .fx-card{background:none}.fx-infinite .fx-evolution-label{font-size:clamp(32px,7vw,52px)}
.payrow>div{display:flex;flex-direction:column;gap:3px}.payrow>div span{font-size:13px;color:#b9c7d1}.payrow b{font-size:15px}#current-odds{padding:12px;border:1px solid #c9b58e40;border-radius:8px;background:#1a263440;font-size:14px}.lineage-form{background:#111c25;border-color:#bdc5cc24}.lineage-form.is-selected{background:#24282a;border-color:#c3ac7b80;box-shadow:none}.evolution-note{color:#c6d0d5}.preview-final-caption{font-size:22px}
@keyframes precision-away{from{opacity:1;transform:scale(.95)}to{opacity:0;transform:scale(.88)}}
@keyframes precision-in{from{opacity:0;transform:translateY(15px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.fx-form-before{display:none!important}.fx-hero .fx-form-after{animation:none!important}}
body[data-motion=calm] .fx-form-before{display:none!important}body[data-motion=calm] .fx-hero .fx-form-after{animation:none!important}

/* v0.12 — individual sprite viewports preserve complete shapes and transparent edges. */
.symbol-art{position:relative}
:is(.evo-2,.evo-3,.evo-4,.evo-5).symbol-art{background-image:none!important;clip-path:none!important}
:is(.evo-2,.evo-3,.evo-4,.evo-5).symbol-art::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--sprite-width);height:var(--sprite-height);background:var(--atlas) var(--sheet-position)/var(--sheet-size) no-repeat;pointer-events:none}
.symbol-art.evo-2{--atlas:none}
.symbol-art.evo-2.art-0{--sprite-width:88.00000%;--sprite-height:84.17391%;--sheet-size:351.48741% 244.97608%;--sheet-position:5.27753% 8.08581%}
.symbol-art.evo-2.art-1{--sprite-width:64.03326%;--sprite-height:88.00000%;--sheet-size:438.85714% 212.88981%;--sheet-position:50.00000% 2.39411%}
.symbol-art.evo-2.art-2{--sprite-width:65.85928%;--sprite-height:88.00000%;--sheet-size:437.60684% 218.33689%;--sheet-position:92.65823% 4.50450%}
.symbol-art.evo-2.art-3{--sprite-width:86.70316%;--sprite-height:88.00000%;--sheet-size:328.20513% 215.57895%;--sheet-position:3.65169% 91.25683%}
.symbol-art.evo-2.art-4{--sprite-width:66.96050%;--sprite-height:88.00000%;--sheet-size:419.67213% 212.88981%;--sheet-position:50.00000% 92.26519%}
.symbol-art.evo-3{--atlas:none}
.symbol-art.evo-3.art-0{--sprite-width:80.21622%;--sprite-height:88.00000%;--sheet-size:414.01617% 251.59705%;--sheet-position:7.55365% 9.23825%}
.symbol-art.evo-3.art-1{--sprite-width:52.76310%;--sprite-height:88.00000%;--sheet-size:537.06294% 214.67505%;--sheet-position:50.00000% 1.27971%}
.symbol-art.evo-3.art-2{--sprite-width:65.16456%;--sprite-height:88.00000%;--sheet-size:437.60684% 216.03376%;--sheet-position:92.99578% 3.27273%}
.symbol-art.evo-3.art-3{--sprite-width:88.00000%;--sprite-height:87.81435%;--sheet-size:324.05063% 216.49049%;--sheet-position:3.38983% 91.10708%}
.symbol-art.evo-3.art-4{--sprite-width:70.43585%;--sprite-height:88.00000%;--sheet-size:390.83969% 208.55397%;--sheet-position:50.04374% 91.93246%}
.symbol-art.evo-4{--atlas:none}
.symbol-art.evo-4.art-0{--sprite-width:83.14483%;--sprite-height:88.00000%;--sheet-size:373.72263% 235.40230%;--sheet-position:5.68889% 5.77250%}
.symbol-art.evo-4.art-1{--sprite-width:71.37155%;--sprite-height:88.00000%;--sheet-size:402.09424% 217.40977%;--sheet-position:50.00000% 2.53165%}
.symbol-art.evo-4.art-2{--sprite-width:62.34894%;--sprite-height:88.00000%;--sheet-size:461.26126% 217.87234%;--sheet-position:91.93682% 2.70758%}
.symbol-art.evo-4.art-3{--sprite-width:86.53638%;--sprite-height:88.00000%;--sheet-size:324.73573% 212.88981%;--sheet-position:2.82220% 90.97606%}
.symbol-art.evo-4.art-4{--sprite-width:68.88525%;--sprite-height:88.00000%;--sheet-size:402.09424% 209.83607%;--sheet-position:50.00000% 92.16418%}
.symbol-art.evo-5{--atlas:none}
.symbol-art.evo-5.art-0{--sprite-width:87.02222%;--sprite-height:88.00000%;--sheet-size:345.16854% 227.55556%;--sheet-position:3.11641% 3.65854%}
.symbol-art.evo-5.art-1{--sprite-width:85.85841%;--sprite-height:88.00000%;--sheet-size:348.29932% 226.54867%;--sheet-position:49.95434% 4.89510%}
.symbol-art.evo-5.art-2{--sprite-width:70.06723%;--sprite-height:88.00000%;--sheet-size:405.27704% 215.12605%;--sheet-position:94.55488% 0.91241%}
.symbol-art.evo-5.art-3{--sprite-width:83.68098%;--sprite-height:88.00000%;--sheet-size:330.32258% 209.40695%;--sheet-position:2.52101% 92.52336%}
.symbol-art.evo-5.art-4{--sprite-width:71.25506%;--sprite-height:88.00000%;--sheet-size:384.00000% 207.28745%;--sheet-position:50.00000% 93.01887%}
.music-deck strong{font-size:14px}.music-deck #music-status{font-size:12px}.music-deck button{font-size:14px}.music-meter{grid-row:1/3}.music-credits{margin:18px 0;font-size:14px}.music-credits summary{cursor:pointer;color:#e6d8bc}.lineage-form strong{font-size:14px}.lineage-form>span:not(.symbol-art){font-size:12px}.evolution-lineage{grid-template-columns:repeat(5,minmax(106px,1fr));overflow-x:auto}.lineage-form .symbol-art{margin:auto}.fx-host[data-reward=jackpot] .fx-canvas{z-index:3;pointer-events:none}.fx-host[data-reward=small] .fx-coins{opacity:.75}
@media(max-width:480px){.music-deck{grid-template-columns:18px minmax(0,1fr) auto;gap:4px 7px}.music-deck strong{font-size:12px;letter-spacing:.04em}.music-deck button{font-size:12px}.music-deck #music-status{font-size:12px;line-height:1.4}}

/* v0.13 — Signature mécanique, atlas RGBA original sans fond. */
.symbol-art.evo-5{--atlas:none}
.symbol-art.evo-5.art-0{--sprite-width:88.00000%;--sprite-height:84.34180%;--sheet-size:354.73441% 246.74699%;--sheet-position:4.17044% 7.38916%}
.symbol-art.evo-5.art-1{--sprite-width:88.00000%;--sprite-height:83.07054%;--sheet-size:318.67220% 225.05495%;--sheet-position:49.90512% 5.27241%}
.symbol-art.evo-5.art-2{--sprite-width:88.00000%;--sprite-height:84.31628%;--sheet-size:357.20930% 248.54369%;--sheet-position:96.29295% 8.98693%}
.symbol-art.evo-5.art-3{--sprite-width:83.92421%;--sprite-height:88.00000%;--sheet-size:339.07285% 215.57895%;--sheet-position:3.32410% 90.16393%}
.symbol-art.evo-5.art-4{--sprite-width:74.03758%;--sprite-height:88.00000%;--sheet-size:381.14144% 213.77871%;--sheet-position:49.86761% 90.82569%}

@media(max-width:760px){.game-heading,.cinema-mode .game-heading{height:128px}}

/* Candidate uses its exact-currency result panel; effects remain decorative. */
.candidate .fx-card{display:none}

/* v0.14 — symbols float directly on the scene, with no tile or glass enclosure. */
.reel-area,.cinema-mode .reel-area{background:none;border:0;border-radius:0;box-shadow:none}
.reel-area::before,.reel-area::after,.reel+.reel::before,.reel.is-travelling::after{content:none;display:none}
.reels,.reel,.reel-strip,.strip-cell,.symbol,.symbol.center,.symbol.matched{background:none!important;border:0;border-radius:0;box-shadow:none!important;backdrop-filter:none}
.payline{display:none}
.lineage-form,.lineage-form.is-selected{background:none;border:0;border-radius:0;box-shadow:none}
.lineage-form.is-selected strong{text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--gold)}
.effect-choices button,.effect-choices button[aria-pressed=true],.effect-choices button:hover{background:none;border-color:transparent;box-shadow:none;border-radius:0}
.effect-choices button[aria-pressed=true]>span:not(.symbol-art){color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.preview-stage{background:none;border:0;border-radius:0;box-shadow:none}
.preview-stage::before{content:none}
.candidate .music-deck{grid-template-columns:minmax(0,1fr) auto}

/* 3.1 — Prestige: engraved serif title, champagne numerals, restrained casino controls. */
:root{--prestige-serif:Georgia,'Times New Roman',serif;--prestige-numbers:'Barlow Condensed','Arial Narrow',sans-serif}
#game-view .game-heading,.candidate .game-heading{height:158px;gap:3px;padding:12px 14px;filter:none}
#game-view .game-heading .eyebrow,.candidate .game-heading .eyebrow{font-size:12px;letter-spacing:.32em;color:#e9dbc4}
#game-title,.candidate .game-heading h1{font-family:var(--prestige-serif);font-size:clamp(40px,5.4vw,66px);font-weight:400;line-height:1.04;letter-spacing:.15em;padding-left:.15em;background:linear-gradient(180deg,#fff9e8 8%,#ead1a0 42%,#b99052 73%,#f9e7be 100%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}
#game-title span,.candidate .game-heading h1 span{font:600 16px/1.5 'Manrope',sans-serif;letter-spacing:.6em;padding-left:.6em;margin-top:3px;background:none;color:#f5e4c3}
#game-view .edition,.candidate .edition{font-size:12px;letter-spacing:.18em;line-height:1.4;color:#c5d2d8;margin:8px 0 0}
#game-view .edition::before,.candidate .edition::before{content:'';display:inline-block;width:24px;height:1px;background:#c7a870;margin:0 10px 4px 0}
#game-view .edition::after,.candidate .edition::after{content:'';display:inline-block;width:24px;height:1px;background:#c7a870;margin:0 0 4px 10px}
.caption{font-size:12px;letter-spacing:.13em;color:#d4c4a9}
.controls{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,1.25fr);gap:16px;border-color:#d9b77b57;border-radius:12px;background:linear-gradient(115deg,#0b1825f2,#10212ceb);box-shadow:0 10px 28px #0004,inset 0 1px #ffe4ac1a;padding:17px 20px}
.metric,.stake-control{min-width:0}
.metric>span,.stake-control label{font-size:12px;line-height:1.5;letter-spacing:.12em;color:#d6c6ab}
.metric strong,.stake-control select,.legend-item b,.math-stat strong,.calculated strong{font-family:var(--prestige-numbers);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:'tnum' 1,'lnum' 1;letter-spacing:.025em}
.metric strong{display:block;font-size:40px;line-height:1.15;font-weight:600;color:#f3deb0;white-space:nowrap}
.stake-control{padding-left:16px;border-left-color:#d6b77c40}
.stake-control select{font-size:34px;line-height:1.3;font-weight:600;color:#f7eddb;width:100%}
.spin{font:800 15px/1.25 'Manrope',sans-serif;letter-spacing:.12em;min-height:66px;border-radius:9px;border-color:#ffe8b5;padding:12px 16px;background:linear-gradient(160deg,#fff1c5,#dbb86f 57%,#b48841);box-shadow:0 3px 0 #71522b,0 8px 20px #c49a4630,inset 0 1px 1px #fff9;justify-content:center;gap:14px}
.spin-orb{font-size:29px}
#result-kicker{font:700 12px/1.6 'Manrope',sans-serif;letter-spacing:.17em;color:#ddcba7}
#result-title{font:600 30px/1.16 var(--prestige-numbers);letter-spacing:.025em;font-variant-numeric:tabular-nums lining-nums;color:#faf2e3}
.result.win #result-title{font-size:36px;color:#ffe1a0}
#result-detail{font-size:14px;font-variant-numeric:tabular-nums;line-height:1.5;color:#c5d1d8}
.result{min-height:106px;padding:8px 0;gap:4px}
.legend-item b{font-size:20px;font-weight:600;color:#efcd8b}
.symbol.center small{font-size:12px;letter-spacing:.09em;color:#ece4d5}
.music-deck strong{letter-spacing:.08em;font-size:14px;color:#e8dac0}
.music-deck{border-color:#d3b47b36}
#session-summary,.history li button{font-variant-numeric:tabular-nums}
@media(max-width:600px){
 #game-view .game-heading,.candidate .game-heading,.cinema-mode #game-view .game-heading{height:134px}
 #game-title,.candidate .game-heading h1{font-size:clamp(35px,9.5vw,48px);letter-spacing:.11em;padding-left:.11em}
 #game-title span,.candidate .game-heading h1 span{font-size:14px;letter-spacing:.48em;padding-left:.48em}
 .controls{gap:10px;padding:13px 12px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,1fr)}
 .metric strong{font-size:clamp(25px,7.6vw,36px);letter-spacing:0}
 .stake-control{padding-left:10px}
 .stake-control select{font-size:clamp(25px,7vw,32px);padding-right:0}
 .metric>span,.stake-control label{font-size:12px;letter-spacing:.025em}
 .spin{padding:10px 8px;min-height:61px;gap:6px;font-size:13px;letter-spacing:.04em}
 .spin-orb{font-size:24px}
 #result-title{font-size:27px}.result.win #result-title{font-size:31px}
 .result{min-height:104px}#result-detail{font-size:14px}
}
@media(orientation:landscape) and (max-height:620px){
 .cinema-mode #game-view .game-heading{height:91px}
 .cinema-mode #game-title{font-size:34px}
 .cinema-mode #game-title span{display:block;margin:0;font-size:12px}
}
/* 3.1.1 — roomy decimal entry, with no native select arrow over the amount. */
.controls{grid-template-columns:minmax(0,1fr) minmax(180px,1.2fr) minmax(130px,1fr);grid-template-areas:'balance stake spin' 'bets bets bets';gap:16px 24px}
.controls>.metric{grid-area:balance}
.controls>.stake-control{grid-area:stake;padding-left:20px}
.controls>.spin{grid-area:spin}
.controls .metric strong{font-family:'Manrope',sans-serif;font-size:clamp(24px,3.3vw,34px);line-height:1.5;letter-spacing:-.04em;white-space:normal;overflow-wrap:anywhere}
.stake-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.stake-heading #bet-edit{border:0;background:none;color:#e5c98e;font:500 11px/1.5 'Manrope',sans-serif;padding:4px 0;min-height:28px;white-space:nowrap}
.stake-input-wrap{display:flex;align-items:baseline;gap:8px;border-bottom:1px solid #d6b77c80;padding:2px 2px 3px 0}
.stake-input-wrap:focus-within{border-color:#fff0c6;box-shadow:0 1px 0 #ffe8b5}
.stake-input-wrap input{appearance:none;-webkit-appearance:none;display:block;box-sizing:border-box;min-width:0;width:100%;height:54px;padding:6px 3px 6px 1px;border:0;border-radius:0;background:none;color:#fff0cf;font:600 30px/1.4 'Manrope',sans-serif;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.025em;outline:none;box-shadow:none}
.stake-input-wrap input[aria-invalid=true]{color:#ffb8a7}
.stake-input-wrap>span{flex:none;color:#c4b698;font:500 12px/1.5 'Manrope',sans-serif}
.bet-options{grid-area:bets;min-width:0;border-top:1px solid #d6b77c26;padding-top:13px}
.bet-chips{display:flex;flex-wrap:wrap;gap:8px}
.bet-chips button{flex:1;min-width:44px;min-height:40px;padding:8px 10px;border:1px solid #d6b77c42;border-radius:7px;background:#d4b97808;color:#eed8ad;font:600 14px/1.4 'Manrope',sans-serif;font-variant-numeric:tabular-nums;transition:background .15s,border-color .15s}
.bet-chips button:hover:not(:disabled){background:#d4b9781c;border-color:#d6b77c99}
.bet-chips button[aria-pressed=true]{color:#fff4d6;border-color:#ebc87c;background:#d4b97823;box-shadow:inset 0 -2px #ebc87c}
.bet-chips button:disabled{opacity:.35;cursor:not-allowed}
.bet-hint,.bet-error{font:400 11px/1.6 'Manrope',sans-serif;letter-spacing:0;margin:8px 0 0;color:#b7c2c7}
.bet-error{color:#ffb8a7}
#bet-levels{max-width:100%;margin-top:10px;border:1px solid #d6b77c66;border-radius:6px;background:#10212c;color:#fff0cf;padding:9px;font:500 14px/1.5 'Manrope',sans-serif}
.bet-options [hidden],.bet-error[hidden],.controls>[hidden]{display:none}
@media(max-width:620px){
 .controls{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-areas:'balance stake' 'bets bets' 'spin spin';gap:12px 14px;padding:15px 14px}
 .controls>.stake-control{padding-left:14px}
 .controls .metric strong{font-size:clamp(23px,6.4vw,32px);line-height:1.7}
 .controls .stake-control label,.controls .metric>span{font-size:10px;letter-spacing:.05em}
 .stake-heading{align-items:flex-start;gap:4px}
 .stake-heading #bet-edit{font-size:10px;padding:0;min-height:20px}
 .stake-input-wrap{gap:4px}
 .stake-input-wrap input{font-size:clamp(24px,6.6vw,30px);height:52px;padding:6px 2px 6px 1px}
 .controls>.spin{min-height:54px;font-size:14px;letter-spacing:.14em}
 .controls .spin-orb{display:block;font-size:24px}
 .bet-options{padding-top:10px}
 .bet-chips{gap:6px}
 .bet-chips button{padding:8px 5px;min-height:42px}
}
