*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:#fff;background:#090706}.fa-page{min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 50% 32%,#301c13 0,#17100d 40%,#090706 78%)}.fa-page:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.34;background-image:radial-gradient(circle,rgba(244,215,124,.55) 1px,transparent 1.6px);background-size:18px 18px;mask-image:radial-gradient(circle at 50% 40%,#000,transparent 72%)}button,a,input{font:inherit}.fa-topbar{height:60px;position:sticky;top:0;z-index:40;display:grid;grid-template-columns:42px minmax(0,1fr) auto 42px;gap:10px;align-items:center;padding:8px 14px;background:rgba(8,6,5,.94);border-bottom:1px solid rgba(232,200,116,.3)}.fa-icon-btn{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(232,200,116,.3);border-radius:11px;background:#1b1511;color:#e8c874;text-decoration:none;font-weight:900}.fa-brand{display:grid;line-height:1.05}.fa-brand strong{font-size:.98rem}.fa-brand span{margin-top:4px;color:#9c9187;font-size:.67rem}.fa-balance{display:grid;text-align:right}.fa-balance span{color:#8e837a;font-size:.65rem}.fa-balance strong{color:#f4d77c;font-size:.9rem}.fa-shell{position:relative;z-index:2;width:min(720px,calc(100% - 24px));margin:auto;padding:18px 0 30px;display:grid;gap:12px}.fa-stage,.fa-controls{border:1px solid rgba(232,200,116,.28);border-radius:20px;background:linear-gradient(180deg,rgba(53,39,28,.72),rgba(13,10,8,.88));box-shadow:0 20px 55px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.06)}.fa-stage{padding:15px 18px 20px}.fa-heading{text-align:center}.fa-heading h1{margin:0;color:#f4d77c;font-size:clamp(1.8rem,5vw,2.65rem);text-shadow:0 2px 0 #6f4611,0 0 20px rgba(232,200,116,.3)}.fa-heading p{margin:6px 0 14px;color:#a99d93;font-size:.75rem}.fa-meter{padding:10px 12px;border:1px solid rgba(232,200,116,.25);border-radius:13px;background:rgba(0,0,0,.25)}.fa-meter-copy{display:flex;justify-content:space-between;color:#b8aba0;font-size:.65rem;font-weight:900;letter-spacing:.16em}.fa-meter-copy strong{color:#f4d77c}.fa-meter-track{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:7px}.fa-meter-track i{height:8px;border-radius:5px;background:#211914;border:1px solid rgba(232,200,116,.12)}.fa-meter-track i.active{background:linear-gradient(90deg,#8b1e31,#e8a52c,#f4d77c);box-shadow:0 0 13px rgba(232,200,116,.5)}.fa-meter-tiers{display:flex;justify-content:space-between;margin-top:5px;color:#796f68;font-size:.55rem}.fa-wheel-wrap{position:relative;width:min(100%,600px);aspect-ratio:1;margin:30px auto 0}.fa-halo{position:absolute;inset:-3%;border-radius:50%;background:radial-gradient(circle,rgba(232,200,116,.23),rgba(139,30,49,.12) 52%,transparent 72%)}#faWheelCanvas{position:relative;z-index:2;width:100%;height:100%;display:block}.fa-pointer{position:absolute;z-index:8;left:50%;top:-27px;width:42px;height:42px;transform:translateX(-50%);border:3px solid #e8c874;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff3cf,#d89825 48%,#651329 78%);box-shadow:inset 0 0 0 4px #21140c,0 0 22px rgba(232,200,116,.55)}.fa-pointer:after{content:"";position:absolute;left:8px;right:8px;bottom:-18px;border-left:10px solid transparent;border-right:10px solid transparent;border-top:19px solid #e8c874}.fa-spin{position:absolute;z-index:7;left:50%;top:50%;transform:translate(-50%,-50%);width:112px;height:112px;border:3px solid #e8c874;border-radius:50%;color:#fff7e6;font-weight:950;background:radial-gradient(circle at 35% 28%,#bc7d30,#701c2d 48%,#24130c 78%);box-shadow:inset 0 0 0 7px #130d09,0 0 30px rgba(232,200,116,.4);cursor:pointer}.fa-spin:disabled{opacity:.62}.fa-sparks{position:absolute;inset:-2%;z-index:4;pointer-events:none}.fa-spark{position:absolute;width:5px;height:5px;border-radius:50%;opacity:0;background:#f4d77c;box-shadow:0 0 12px currentColor}.fa-wheel-wrap.spinning .fa-spark{animation:faSpark 1.2s ease-out infinite}.fa-step-callout{position:absolute;z-index:12;left:50%;top:9%;transform:translateX(-50%);padding:8px 17px;border:1px solid #e8c874;border-radius:999px;color:#fff3cf;background:#64182b;font-size:.72rem;font-weight:950;letter-spacing:.2em;animation:faCallout .8s ease-out}.fa-controls{padding:13px}.fa-bet-row{display:grid;grid-template-columns:48px 42px minmax(0,1fr) 42px 48px;gap:7px}.fa-bet-row button,.fa-chips button,.fa-bet-row label{min-height:44px;border:1px solid rgba(232,200,116,.24);border-radius:11px;background:rgba(255,255,255,.045);color:#eee}.fa-bet-row button{cursor:pointer}.fa-bet-row label{display:grid;place-items:center}.fa-bet-row label span{color:#968b82;font-size:.58rem;text-transform:uppercase}.fa-bet-row input{width:100%;border:0;outline:0;text-align:center;color:#f4d77c;background:transparent;font-weight:900}.fa-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:8px}.fa-chips button{cursor:pointer}.fa-chips button.active{color:#1d1207;background:linear-gradient(135deg,#fff3cf,#e8c874 55%,#b27622)}.fa-message{min-height:18px;margin:8px 0 0;text-align:center;color:#a99d93;font-size:.72rem}.fa-win{position:fixed;z-index:100;left:50%;top:10%;transform:translateX(-50%);min-width:220px;padding:12px 24px;text-align:center;border:1px solid #e8c874;border-radius:16px;background:rgba(20,12,8,.94);box-shadow:0 0 45px rgba(232,200,116,.55);animation:faWin .35s cubic-bezier(.2,.8,.2,1)}.fa-win span{display:block;color:#f4d77c;font-size:.67rem;font-weight:950;letter-spacing:.3em}.fa-win strong{display:block;margin-top:3px;color:#fff;font-size:2rem}.fa-win small{color:#d9b85c}.fa-celebration{display:none;position:fixed;inset:0;z-index:90;width:100%;height:100%;pointer-events:none}.fa-celebration.active{display:block}.fa-modal[hidden],.fa-win[hidden],.fa-step-callout[hidden]{display:none}.fa-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:stretch end;background:rgba(0,0,0,.7)}.fa-history-panel{width:min(390px,94vw);height:100%;padding:18px;background:#110d0b;border-left:1px solid rgba(232,200,116,.3)}.fa-history-panel header{display:flex;align-items:center;justify-content:space-between}.fa-history-panel h2{margin:0;color:#f4d77c}.fa-history-panel header button{width:40px;height:40px;border:1px solid #44352a;border-radius:10px;color:#fff;background:#211914}.fa-history-list{display:grid;gap:8px;margin-top:18px}.fa-history-row{padding:12px;border:1px solid #3b2d23;border-radius:11px;background:#17110e}.fa-history-row strong{color:#f4d77c}.fa-history-row span{float:right}.fa-history-row small{display:block;margin-top:4px;color:#887d75}@keyframes faSpark{35%{opacity:1;transform:scale(1.5)}70%{opacity:0}}@keyframes faCallout{0%{opacity:0;transform:translate(-50%,-10px) scale(.7)}35%{opacity:1;transform:translate(-50%,0) scale(1.08)}100%{opacity:0}}@keyframes faWin{from{opacity:0;transform:translate(-50%,-12px) scale(.65)}70%{transform:translate(-50%,0) scale(1.08)}}
@media(max-width:600px){.fa-shell{width:min(calc(100% - 12px),540px);padding:8px 0 20px}.fa-stage{padding:10px 5px 8px}.fa-heading h1{font-size:1.65rem}.fa-heading p{font-size:.65rem}.fa-wheel-wrap{margin-top:26px}.fa-spin{width:88px;height:88px}.fa-pointer{width:32px;height:32px;top:-22px}.fa-pointer:after{left:4px;right:4px;bottom:-16px}.fa-bet-row{grid-template-columns:42px 36px minmax(0,1fr) 36px 42px;gap:5px}.fa-chips{display:flex;overflow-x:auto}.fa-chips button{flex:1 0 74px}.fa-modal{place-items:end stretch}.fa-history-panel{width:100%;height:auto;max-height:78vh;border-left:0;border-top:1px solid rgba(232,200,116,.3);border-radius:20px 20px 0 0}.fa-balance span{display:none}}
@media(prefers-reduced-motion:reduce){.fa-wheel-wrap.spinning .fa-spark,.fa-step-callout,.fa-win{animation:none}}
#le-game-loader{--le-loader-bg:#090706;--le-loader-gold:#e8c874;--le-loader-green:#8b1e31;background:radial-gradient(circle at 50% 38%,#4a2c1e,#1a100c 50%,#090706)}

/* Keep long game copy from expanding the responsive grid. */
.fa-stage,.fa-controls,.fa-brand,.fa-heading{min-width:0}
.fa-brand strong,.fa-brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fa-heading h1{overflow-wrap:anywhere}
@media(max-width:600px){
  .fa-topbar{grid-template-columns:40px minmax(0,1fr) auto 40px;gap:7px;padding-left:8px;padding-right:8px}
  .fa-brand strong{font-size:.82rem}
  .fa-brand span{font-size:.6rem}
  .fa-balance strong{font-size:.72rem}
  .fa-heading h1{max-width:330px;margin-left:auto;margin-right:auto;font-size:1.45rem;line-height:1.05}
  .fa-heading p{max-width:330px;margin-left:auto;margin-right:auto;line-height:1.35}
  .fa-wheel-wrap{max-width:100%}
}
/* Ten-stage Fortune Ascent progress meter. */
.fa-meter-track{display:block;overflow:hidden}
.fa-meter-track i{display:block;width:0;min-width:0;transition:width .35s ease}
.fa-meter-track i.active{min-width:2px}
.fa-chips{grid-template-columns:repeat(3,1fr)}
.fa-meter-tiers{display:flex;justify-content:space-between;color:#8e8178;font-size:.58rem;text-align:center}

/* Base44 Midnight Vault atmosphere: the game sits in the scene, not a large card. */
.fa-page{
  position:relative;
  background:radial-gradient(circle at 50% 34%,#1c1410 0%,#120c08 28%,#0a0606 52%,#060403 78%,#030201 100%);
}
.fa-page:before{
  z-index:0;
  opacity:.42;
  background-image:radial-gradient(circle,rgba(232,200,116,.42) 1px,transparent 1.6px);
  background-size:16px 16px;
  -webkit-mask-image:radial-gradient(circle at 50% 34%,#000 0%,rgba(0,0,0,.55) 30%,transparent 64%);
  mask-image:radial-gradient(circle at 50% 34%,#000 0%,rgba(0,0,0,.55) 30%,transparent 64%);
}
.fa-page:after{
  content:"";
  position:fixed;
  z-index:0;
  left:0;
  right:0;
  bottom:0;
  height:42vh;
  pointer-events:none;
  background:radial-gradient(circle at 2% 100%,rgba(224,64,90,.42),transparent 27%),radial-gradient(circle at 98% 100%,rgba(232,200,116,.42),transparent 27%);
}
.fa-shell:before{
  content:"";
  position:absolute;
  z-index:-1;
  left:50%;
  top:150px;
  width:min(690px,96vw);
  height:min(690px,96vw);
  transform:translateX(-50%);
  border-radius:50%;
  pointer-events:none;
  background:radial-gradient(circle,rgba(232,200,116,.3) 0%,rgba(224,64,90,.14) 48%,transparent 67%);
}
.fa-stage{
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.fa-heading h1{
  color:#f4d77c;
  text-shadow:0 2px 6px rgba(232,200,116,.4),0 0 24px rgba(232,200,116,.18);
}
.fa-meter{
  border-color:rgba(232,200,116,.34);
  background:linear-gradient(180deg,rgba(32,23,17,.78),rgba(8,5,4,.78));
  box-shadow:0 10px 28px rgba(0,0,0,.26);
}
.fa-halo{
  inset:-7%;
  background:radial-gradient(circle at 50% 42%,rgba(232,200,116,.4),transparent 52%),radial-gradient(circle at 50% 58%,rgba(224,64,90,.22),transparent 63%);
}
.fa-controls{
  width:min(520px,100%);
  margin:-22px auto 0;
  position:relative;
  z-index:12;
  border-color:rgba(232,200,116,.34);
  background:linear-gradient(180deg,rgba(35,26,19,.94),rgba(12,8,6,.97));
}
@media(max-width:600px){
  .fa-stage{padding-left:2px;padding-right:2px}
  .fa-shell:before{top:120px}
  .fa-controls{margin-top:-16px}
}

/* Immersive game surface: keep navigation quiet and controls subordinate to the wheel. */
.fa-topbar{
  position:absolute;
  left:0;
  right:0;
  top:0;
  border-bottom:0;
  background:linear-gradient(180deg,rgba(7,4,3,.82),rgba(7,4,3,.16));
}
.fa-shell{
  width:min(760px,calc(100% - 20px));
  padding-top:72px;
  gap:8px;
}
.fa-stage{padding:2px 8px 0}
.fa-meter{
  width:min(580px,94%);
  margin:0 auto;
  padding:9px 13px;
  border-radius:18px;
  background:rgba(12,7,5,.68);
  box-shadow:0 10px 30px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.05);
}
.fa-wheel-wrap{margin-top:36px}
.fa-controls{
  width:min(540px,94%);
  margin:8px auto 0;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(13,8,6,.82);
  box-shadow:0 14px 38px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.05);
}
.fa-bet-row button,.fa-chips button,.fa-bet-row label{
  border-color:rgba(232,200,116,.2);
  background:rgba(8,5,4,.54);
}
.fa-award{display:block;width:100%;min-height:42px;margin-top:8px;border:1px solid rgba(232,200,116,.42);border-radius:11px;color:#f4d77c;background:rgba(92,54,22,.34);font-weight:900;cursor:pointer}
.fa-award[hidden]{display:none}.fa-award:hover{background:rgba(232,200,116,.16)}
.fa-spin span{display:block;font-size:.8rem;line-height:1.15;letter-spacing:.05em}
.fa-spin{transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,color .25s ease}
.fa-spin.mode-spin{border-color:#ffd67a;color:#fff8e7;background:radial-gradient(circle at 35% 28%,#f06464,#a71938 48%,#3f0919 80%);box-shadow:inset 0 0 0 7px #17070c,0 0 32px rgba(230,47,76,.58)}
.fa-spin.mode-ascend{border-color:#fff0a6;color:#251404;background:radial-gradient(circle at 35% 28%,#fff5bd,#f1c84d 48%,#b77517 80%);box-shadow:inset 0 0 0 7px #3b2108,0 0 38px rgba(244,215,124,.8);text-shadow:0 1px rgba(255,255,255,.32)}
.fa-spin.mode-spinning{border-color:#a9eaff;color:#e8fbff;background:radial-gradient(circle at 35% 28%,#5b75db,#3a267d 52%,#17113e 82%);box-shadow:inset 0 0 0 7px #100b2d,0 0 30px rgba(91,117,219,.58)}
.fa-step-callout.is-potential{display:grid;grid-template-columns:auto auto;align-items:center;gap:3px 9px;min-width:250px;border-color:#8ddff0;color:#eafcff;background:linear-gradient(135deg,rgba(33,30,112,.98),rgba(91,32,123,.98));box-shadow:0 8px 30px rgba(92,93,231,.45),inset 0 1px rgba(255,255,255,.18)}
.fa-step-callout.is-potential strong{display:inline-block;padding:3px 9px;border-radius:999px;color:#06222b;background:linear-gradient(135deg,#d9fbff,#75e4f4 58%,#32b8d6);font-size:1.08rem;letter-spacing:.04em;box-shadow:0 0 18px rgba(117,228,244,.65)}
.fa-step-callout.is-potential small{grid-column:1/-1;color:#ffe69a;font-size:.57rem;letter-spacing:.16em;text-align:center}
.fa-step-callout.is-confirmed{border-color:#8df0c9;background:#0d624e;box-shadow:0 8px 28px rgba(41,211,157,.32)}
.fa-step-callout.is-reset{border-color:#ff8b96;background:#851c31;box-shadow:0 8px 28px rgba(229,72,82,.34)}
.fa-meter{border-color:rgba(125,220,255,.72);background:linear-gradient(135deg,rgba(30,42,125,.94),rgba(89,35,126,.94) 58%,rgba(126,39,91,.92));box-shadow:0 12px 34px rgba(73,61,190,.38),inset 0 1px rgba(255,255,255,.16)}
.fa-meter-copy span{color:#91ecff;text-shadow:0 0 12px rgba(117,228,244,.42)}
.fa-meter-copy strong{padding:3px 8px;border:1px solid rgba(255,178,185,.72);border-radius:999px;color:#fff;background:linear-gradient(135deg,#ff5264,#c91f3b 58%,#761126);letter-spacing:.08em;text-shadow:0 1px 2px rgba(0,0,0,.55);box-shadow:0 0 17px rgba(255,66,91,.58)}
.fa-meter-track{border-radius:999px;background:rgba(8,12,46,.64)}
.fa-meter-track i{border-color:rgba(141,223,240,.28);background:rgba(13,18,62,.78)}
.fa-meter-track i.active{background:linear-gradient(90deg,#37b9dc,#8b5cf6 52%,#f4d77c);box-shadow:0 0 16px rgba(117,228,244,.52)}
.fa-meter-tiers span:first-child{color:#91ecff}.fa-meter-tiers span:last-child{color:#ffe69a}
@media(max-width:600px){
  .fa-shell{padding-top:66px}
  .fa-stage{padding-top:0}
  .fa-wheel-wrap{margin-top:32px}
  .fa-halo{inset:0}
  .fa-controls{width:96%;margin-top:6px;padding:9px}
}
