:root{
  --bg:#06100c;--bg2:#0a1712;--panel:rgba(14,31,24,.72);--line:rgba(130,255,190,.18);
  --green:#67ffb5;--green2:#2bdc8c;--gold:#ffd45d;--red:#ff6b7a;--text:#f5fff9;--muted:#91a89d;
  --shadow:0 30px 90px rgba(0,0,0,.45);--radius:28px;
}
*,*:before,*:after{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#040907;color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{overflow-x:hidden}
button,input{font:inherit}
button{-webkit-tap-highlight-color:transparent}
.app-shell{min-height:100svh;position:relative;overflow:hidden;background:
radial-gradient(circle at 50% -10%,rgba(57,255,164,.14),transparent 33%),
linear-gradient(180deg,#07120e 0%,#040807 100%)}
.app-shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.24;background-image:
linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px}
.aurora{position:absolute;width:520px;height:520px;border-radius:50%;filter:blur(90px);opacity:.14;pointer-events:none}
.aurora-a{background:#24ff9d;right:-240px;top:10%}.aurora-b{background:#40c4ff;left:-300px;bottom:0}
.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:relative;z-index:10;border-bottom:1px solid rgba(255,255,255,.05);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;color:inherit;font:900 14px/1 Inter,sans-serif;letter-spacing:.08em;cursor:pointer}
.session-pill{font-size:11px;letter-spacing:.12em;color:var(--muted);border:1px solid rgba(255,255,255,.08);padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.03)}
.stage{position:relative;z-index:2;min-height:calc(100svh - 120px)}
.screen{display:none;min-height:calc(100svh - 120px);padding:48px 24px 96px;max-width:760px;margin:0 auto;text-align:center;align-items:center;flex-direction:column;justify-content:center;animation:screenIn .45s cubic-bezier(.2,.8,.2,1)}
.screen.active{display:flex}
@keyframes screenIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
.eyebrow{color:var(--green);font-weight:900;letter-spacing:.18em;font-size:12px;margin-bottom:16px}
.gold-text{color:var(--gold)}
h1,h2{margin:0;font-weight:950;letter-spacing:-.045em;line-height:.95}
h1{font-size:clamp(44px,11vw,82px)}h2{font-size:clamp(36px,9vw,64px)}
.lead{font-size:18px;line-height:1.5;color:var(--muted);max-width:540px;margin:20px auto 30px}
.glass{background:linear-gradient(180deg,rgba(21,44,34,.82),rgba(9,22,17,.84));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(20px)}
.hero-card{width:min(100%,540px);padding:14px 22px;margin:10px 0 28px}
.status-row,.big-line{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);text-align:left}
.status-row:last-child,.big-line:last-child{border-bottom:0}
.status-row span,.big-line span{color:var(--muted);font-size:13px;letter-spacing:.04em}.status-row strong,.big-line strong{font-size:16px}.ok{color:var(--green)}
.primary,.ghost,.package{border:0;cursor:pointer}
.primary{width:min(100%,540px);min-height:64px;border-radius:20px;background:linear-gradient(135deg,var(--green),#22d682);color:#04120b;font-weight:950;letter-spacing:.03em;font-size:17px;box-shadow:0 16px 50px rgba(67,255,166,.21);padding:0 24px;transition:.2s transform,.2s filter}
.primary:active{transform:scale(.975);filter:brightness(.95)}
.ghost{width:min(100%,540px);min-height:54px;margin-top:12px;border-radius:18px;background:rgba(255,255,255,.04);color:var(--muted);border:1px solid rgba(255,255,255,.07);font-weight:800}
.ghost.danger{color:#ff9aa5;border-color:rgba(255,107,122,.18)}
.pulse{animation:pulse 2.1s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 16px 70px rgba(67,255,166,.33)}}
.microcopy{font-size:11px;color:#60756b;margin-top:16px;letter-spacing:.03em}
.footer{position:fixed;z-index:20;bottom:0;left:0;right:0;height:44px;padding:0 16px;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.12em;color:#496057;background:rgba(4,9,7,.78);border-top:1px solid rgba(255,255,255,.04);backdrop-filter:blur(14px)}
.coin{display:inline-grid;place-items:center;width:92px;height:92px;border-radius:50%;font-weight:1000;letter-spacing:-.04em;color:#062316;background:
radial-gradient(circle at 35% 25%,#c8ffe4 0 4%,#71ffb8 18%,#23c87c 58%,#0b6f47 100%);border:2px solid rgba(255,255,255,.35);box-shadow:inset 0 0 0 7px rgba(0,0,0,.14),0 0 45px rgba(61,255,164,.25)}
.coin.mini{width:34px;height:34px;font-size:10px;box-shadow:inset 0 0 0 3px rgba(0,0,0,.16)}
.wheel-wrap{position:relative;width:320px;height:320px;margin:34px auto 30px}
.pointer{position:absolute;z-index:5;top:-13px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:34px solid var(--green);filter:drop-shadow(0 0 12px rgba(86,255,173,.8))}
.pointer.gold{border-top-color:var(--gold);filter:drop-shadow(0 0 12px rgba(255,212,93,.8))}
.wheel{width:100%;height:100%;border-radius:50%;position:relative;border:4px solid rgba(120,255,188,.75);box-shadow:inset 0 0 0 8px rgba(255,255,255,.03),0 0 80px rgba(67,255,166,.18);overflow:hidden;transform:rotate(0deg)}
.value-wheel{background:conic-gradient(#0d291d 0 25%,#163b2b 25% 50%,#0b2218 50% 75%,#1b4934 75% 100%)}
.wheel:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.12),transparent 30%)}
.wheel-core{position:absolute;z-index:4;inset:34%;border-radius:50%;display:grid;place-items:center;background:#06100c;border:2px solid rgba(255,255,255,.1);box-shadow:0 0 40px rgba(0,0,0,.7)}
.wheel-core .coin{width:70px;height:70px;font-size:17px}
.wheel-label{position:absolute;z-index:3;font-weight:950;font-size:20px;color:white;text-shadow:0 3px 12px rgba(0,0,0,.5)}
.l1{top:28px;left:50%;transform:translateX(-50%)}.l2{right:24px;top:50%;transform:translateY(-50%) rotate(90deg)}
.l3{bottom:28px;left:50%;transform:translateX(-50%) rotate(180deg)}.l4{left:20px;top:50%;transform:translateY(-50%) rotate(-90deg)}
.spinning{transition:transform var(--spin-duration,4.3s) cubic-bezier(.08,.66,.13,1)}
.result-kicker{font-size:20px;font-weight:1000;letter-spacing:.28em;color:var(--green);margin-top:10px}
.result-number{font-size:clamp(58px,16vw,112px);font-weight:1000;letter-spacing:-.065em;color:var(--green);text-shadow:0 0 45px rgba(69,255,168,.32);margin:12px 0 4px}
.result-value{font-size:24px;font-weight:850;margin-bottom:26px}
.backend-card{width:min(100%,560px);padding:10px 22px;margin-bottom:26px}
.success-ring{width:130px;height:130px;border-radius:50%;display:grid;place-items:center;margin-bottom:22px;border:2px solid var(--green);box-shadow:0 0 60px rgba(74,255,173,.28),inset 0 0 40px rgba(74,255,173,.08)}
.success-ring span{font-size:64px;color:var(--green);font-weight:950}
.membership{width:min(100%,560px);padding:10px 22px;margin:26px 0}
.big-line strong{font-size:18px}
.simulator-card{width:min(100%,600px);padding:22px;margin:26px 0 18px;text-align:left}
.sim-value{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.sim-value span{color:var(--muted);font-size:13px}.sim-value strong{font-size:26px;color:var(--green)}
#priceSlider{width:100%;margin:28px 0 8px;accent-color:var(--green)}
.ticks{display:flex;justify-content:space-between;color:#64776e;font-size:10px}
.scenario-amount{text-align:center;font-size:54px;font-weight:1000;letter-spacing:-.05em;margin:26px 0 14px}
.chart{height:9px;background:#14231d;border-radius:999px;overflow:hidden}.chart-fill{height:100%;width:12%;background:linear-gradient(90deg,#21ce7d,var(--green));border-radius:999px;box-shadow:0 0 30px rgba(76,255,174,.55);transition:width .35s ease}
.disclaimer{font-size:9px;letter-spacing:.12em;color:#6d8177;text-align:center;margin-top:16px}
.package-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:min(100%,600px)}
.package{height:48px;border-radius:14px;background:#0c1813;color:#8ca298;border:1px solid rgba(255,255,255,.07);font-weight:900}
.package.selected{background:rgba(73,255,169,.12);color:var(--green);border-color:rgba(73,255,169,.5)}
.package-summary{width:min(100%,600px);padding:16px 20px;margin:12px 0 22px;display:flex;justify-content:space-between;gap:14px;text-align:left}
.package-summary span{color:var(--muted);font-size:12px}.package-summary strong{font-size:15px}
.mystery-orb{width:240px;height:240px;border-radius:50%;display:grid;place-items:center;margin:26px auto 34px;background:
radial-gradient(circle at 35% 25%,rgba(255,255,255,.18),transparent 22%),
radial-gradient(circle at center,#17352a,#07100c 68%);border:1px solid rgba(255,212,93,.38);box-shadow:0 0 80px rgba(255,212,93,.12)}
.mystery-orb span{font-size:92px;font-weight:1000;color:var(--gold);text-shadow:0 0 34px rgba(255,212,93,.45)}
.mystery-wheel{border-color:rgba(255,212,93,.72);background:conic-gradient(#1d261f 0 25%,#202d25 25% 50%,#151e19 50% 75%,#263129 75% 100%);box-shadow:inset 0 0 0 8px rgba(255,255,255,.025),0 0 90px rgba(255,212,93,.12)}
.mystery-seg{position:absolute;z-index:3;color:#d7c99a;font-weight:950;font-size:24px;letter-spacing:.08em}
.s1{top:28px;left:50%;transform:translateX(-50%)}.s2{right:25px;top:50%;transform:translateY(-50%) rotate(90deg)}
.s3{bottom:28px;left:50%;transform:translateX(-50%) rotate(180deg)}.s4{left:18px;top:50%;transform:translateY(-50%) rotate(-90deg)}
.gold-core{border-color:rgba(255,212,93,.25)}.gold-core span{font-size:70px;font-weight:1000;color:var(--gold)}
.gold-btn{background:linear-gradient(135deg,#ffe07c,#e9b83b);color:#221800;box-shadow:0 16px 55px rgba(255,212,93,.22)}
.discount-burst{width:260px;height:260px;position:absolute;top:110px;background:radial-gradient(circle,rgba(255,212,93,.25),transparent 65%);filter:blur(3px);animation:burst 1.7s ease-out infinite}
@keyframes burst{50%{transform:scale(1.2);opacity:.55}}
.discount-number{font-size:clamp(88px,24vw,160px);font-weight:1000;line-height:.85;letter-spacing:-.07em;color:var(--gold);text-shadow:0 0 55px rgba(255,212,93,.35);position:relative}
.price-stack{width:min(100%,580px);display:grid;grid-template-columns:1fr auto 1fr auto 1.15fr;gap:10px;align-items:stretch;margin:28px 0 18px}
.price{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);border-radius:18px;padding:14px 10px;display:flex;flex-direction:column;justify-content:center}
.price span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.price strong{font-size:18px;margin-top:6px}
.price.old strong{text-decoration:line-through;color:#94a39b}.price.save strong{color:var(--gold)}.price.final{border-color:rgba(255,212,93,.45);background:rgba(255,212,93,.08)}.price.final strong{color:var(--gold);font-size:22px}
.minus,.equals{display:grid;place-items:center;color:#7c8c84;font-size:24px}
.timer{font-variant-numeric:tabular-nums;font-size:44px;font-weight:950;letter-spacing:.08em;color:var(--gold);margin:8px 0 14px}
.payment-deadline-label{margin-top:14px;color:#d7cbe3;font-size:11px;font-weight:900;letter-spacing:.14em}
.cap{font-size:11px;color:var(--muted);margin-bottom:22px}
.qr-frame{width:280px;height:280px;padding:18px;border-radius:28px;background:#fff;box-shadow:0 20px 70px rgba(0,0,0,.4),0 0 60px rgba(64,255,174,.12);margin:10px 0 14px}
.demo-qr{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;width:100%;height:100%;background:#fff;padding:8px}
.demo-qr span{background:#07120e;border-radius:2px}.demo-qr span:nth-child(2n){opacity:.2}.demo-qr span:nth-child(3n){grid-row:span 2}
.handoff-url{font-size:11px;color:#6f8178;margin-bottom:18px}
.handoff-summary,.customer-card{width:min(100%,560px);padding:10px 22px;margin:8px 0 22px}
.customer-card .highlight{background:rgba(255,212,93,.07);margin:0 -10px;padding:15px 10px}.customer-card .highlight strong{color:var(--gold);font-size:24px}
.confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}
.confetti i{position:absolute;width:8px;height:16px;background:var(--green);top:-20px;animation:fall 1.8s linear forwards}
@keyframes fall{to{transform:translate3d(var(--x),110vh,0) rotate(720deg);opacity:.1}}
@media (max-width:520px){
  .screen{padding-left:18px;padding-right:18px}
  .wheel-wrap{width:290px;height:290px}
  .price-stack{grid-template-columns:1fr 1fr;gap:8px}.minus,.equals{display:none}.price.final{grid-column:1/-1}
  .package-summary{flex-direction:column;align-items:flex-start}
  .footer{font-size:8px}
}
@media (display-mode:standalone){.topbar{padding-top:env(safe-area-inset-top);height:calc(76px + env(safe-area-inset-top))}.footer{padding-bottom:env(safe-area-inset-bottom);height:calc(44px + env(safe-area-inset-bottom))}}

/* WOW PASS V2 */
.cinema-flash{position:fixed;inset:0;z-index:999;pointer-events:none;opacity:0;background:#fff}
.cinema-flash.fire{animation:cinemaFlash .72s ease-out}
@keyframes cinemaFlash{0%{opacity:0}12%{opacity:.92}30%{opacity:.08;background:#9dffd0}100%{opacity:0}}
.win-overlay{position:fixed;inset:0;z-index:998;display:grid;place-items:center;pointer-events:none;opacity:0;background:radial-gradient(circle,rgba(54,255,164,.12),rgba(3,8,6,.7))}
.win-overlay.show{animation:winOverlay 1.35s ease-out}
.win-word{font-size:clamp(34px,10vw,88px);font-weight:1000;letter-spacing:.08em;color:white;text-align:center;text-shadow:0 0 25px #71ffb8,0 0 70px #25d986;transform:scale(.7)}
.win-overlay.show .win-word{animation:winWord 1.35s cubic-bezier(.16,1,.3,1)}
@keyframes winOverlay{0%{opacity:0}15%,60%{opacity:1}100%{opacity:0}}
@keyframes winWord{0%{transform:scale(.5);filter:blur(12px)}28%{transform:scale(1.08);filter:blur(0)}60%{transform:scale(1)}100%{transform:scale(1.25);opacity:0}}
.victory-rays{position:absolute;z-index:-1;width:760px;height:760px;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(75,255,172,.11) 0 7deg,transparent 7deg 18deg);animation:rays 12s linear infinite;mask-image:radial-gradient(circle,#000 0 22%,transparent 70%)}
.gold-rays{background:repeating-conic-gradient(from 0deg,rgba(255,212,93,.14) 0 6deg,transparent 6deg 17deg)}
@keyframes rays{to{transform:rotate(360deg)}}
.screen.screen-shake{animation:screenShake .48s ease-out}
@keyframes screenShake{0%,100%{transform:none}20%{transform:translateX(-8px) rotate(-.3deg)}40%{transform:translateX(7px) rotate(.25deg)}60%{transform:translateX(-4px)}80%{transform:translateX(2px)}}
.wheel.spinning{box-shadow:inset 0 0 0 8px rgba(255,255,255,.07),0 0 110px rgba(67,255,166,.38)}
.mystery-wheel.spinning{box-shadow:inset 0 0 0 8px rgba(255,255,255,.05),0 0 120px rgba(255,212,93,.3)}
.result-number,.discount-number{animation:neonBreath 1.8s ease-in-out infinite alternate}
@keyframes neonBreath{from{filter:brightness(1);transform:scale(1)}to{filter:brightness(1.13);transform:scale(1.025)}}
.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--green),transparent);opacity:.65}
.primary{position:relative;overflow:hidden}
.primary:before{content:"";position:absolute;top:-80%;left:-35%;width:28%;height:260%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:rotate(18deg);animation:buttonSweep 3.2s ease-in-out infinite}
@keyframes buttonSweep{0%,65%{left:-35%}100%{left:125%}}

/* CASINO JOY PASS V3 */
:root{
  --bg:#09051a;--bg2:#160a2c;--panel:rgba(24,13,48,.78);--line:rgba(255,214,92,.24);
  --green:#35f2a1;--green2:#19c77b;--gold:#ffd75a;--red:#ff4b67;--text:#fffaf2;--muted:#b9adc9;
  --pink:#ff4fd8;--violet:#8b5cff;--cyan:#43dcff;--orange:#ff8a3d;
}
.app-shell{
  background:
    radial-gradient(circle at 50% -8%,rgba(255,215,90,.18),transparent 28%),
    radial-gradient(circle at 12% 20%,rgba(255,79,216,.13),transparent 30%),
    radial-gradient(circle at 88% 35%,rgba(67,220,255,.12),transparent 28%),
    linear-gradient(180deg,#110723 0%,#07040f 100%);
}
.app-shell:before{
  opacity:.26;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.10) 0 1px,transparent 1.4px),
    linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:34px 34px,44px 44px,44px 44px;
}
.aurora-a{background:#ff4fd8;opacity:.18}.aurora-b{background:#36e7ff;opacity:.15}
.glass{
  background:linear-gradient(180deg,rgba(40,20,72,.88),rgba(15,9,31,.88));
  border:1px solid rgba(255,215,90,.22);
  box-shadow:0 28px 90px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.05);
}
.eyebrow{color:var(--gold);text-shadow:0 0 18px rgba(255,215,90,.25)}
.primary{
  background:linear-gradient(135deg,#ffe36f 0%,#ffb52e 46%,#ff5d7b 100%);
  color:#281200;
  box-shadow:0 14px 55px rgba(255,175,46,.28),0 0 30px rgba(255,79,216,.10);
}
.gold-btn{background:linear-gradient(135deg,#fff09a,#ffd451 40%,#ff8b39 100%);color:#2b1600}
.value-wheel{
  background:conic-gradient(
    #ff4b67 0 25%, #8b5cff 25% 50%, #20d5a0 50% 75%, #ffb62d 75% 100%
  );
  border-color:#ffe780;
  box-shadow:inset 0 0 0 9px rgba(255,255,255,.12),0 0 34px rgba(255,215,90,.25),0 0 95px rgba(255,79,216,.18);
}
.wheel-label{font-size:22px;text-shadow:0 3px 12px rgba(0,0,0,.75),0 0 16px rgba(255,255,255,.18)}
.wheel-core{
  background:radial-gradient(circle at 40% 30%,#3e2460,#12091f 70%);
  border:2px solid rgba(255,224,120,.5);
  box-shadow:0 0 38px rgba(255,215,90,.22),inset 0 0 20px rgba(0,0,0,.45);
}
.mystery-wheel{
  background:conic-gradient(
    #6c43ff 0 12.5%, #ff4fd8 12.5% 25%, #16d4c1 25% 37.5%, #ffb52e 37.5% 50%,
    #ff4b67 50% 62.5%, #7957ff 62.5% 75%, #20d5a0 75% 87.5%, #ff8a3d 87.5% 100%
  );
  border-color:#ffe780;
  box-shadow:inset 0 0 0 9px rgba(255,255,255,.10),0 0 38px rgba(255,215,90,.20),0 0 110px rgba(139,92,255,.22);
}
.mystery-seg{color:#fff8df;text-shadow:0 2px 12px rgba(0,0,0,.75),0 0 14px rgba(255,255,255,.18)}
.mystery-orb{
  background:
    radial-gradient(circle at 36% 24%,rgba(255,255,255,.28),transparent 18%),
    radial-gradient(circle at 60% 65%,rgba(255,79,216,.24),transparent 38%),
    radial-gradient(circle at center,#492b78,#120920 68%);
  border:2px solid rgba(255,220,105,.55);
  box-shadow:0 0 60px rgba(255,79,216,.18),0 0 110px rgba(139,92,255,.16);
}
.result-number{
  background:linear-gradient(90deg,#fff5a8,#ffd154,#62f7c6,#58d8ff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:none;
}
.discount-number{
  background:linear-gradient(90deg,#fff3a2,#ffd04e,#ff8a3d,#ff4fd8);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:none;
}
.result-kicker{color:#fff1a4;text-shadow:0 0 18px rgba(255,215,90,.35)}
.package{
  background:linear-gradient(180deg,rgba(49,24,86,.88),rgba(20,10,40,.92));
  color:#d1c4e8;border-color:rgba(255,255,255,.10)
}
.package.selected{
  background:linear-gradient(135deg,rgba(255,215,90,.17),rgba(255,79,216,.12));
  color:#fff4b0;border-color:rgba(255,215,90,.58);
  box-shadow:0 0 24px rgba(255,215,90,.12)
}
.timer{
  color:#fff2a5;
  text-shadow:0 0 14px rgba(255,215,90,.38),0 0 34px rgba(255,79,216,.16);
}
.price.final{
  background:linear-gradient(135deg,rgba(255,215,90,.14),rgba(255,79,216,.08));
  border-color:rgba(255,215,90,.5)
}
.price.final strong{color:#fff0a1}
.success-ring{
  border-color:#ffe26a;
  box-shadow:0 0 55px rgba(255,215,90,.26),0 0 110px rgba(255,79,216,.14),inset 0 0 38px rgba(255,215,90,.08)
}
.success-ring span{color:#ffe56f}
.chart-fill{background:linear-gradient(90deg,#42e7ff,#8b5cff,#ff4fd8,#ffd75a)}
.topbar{background:linear-gradient(180deg,rgba(18,8,36,.84),rgba(9,5,18,.68))}
.footer{background:rgba(10,5,20,.82);color:#74688a}

/* === A2G LIVE AGENCY WOW V2 === */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Sora:wght@600;700;800&display=swap');

:root{
  --a2g-bg0:#07040F;--a2g-bg1:#110723;--a2g-gold0:#FFF3A2;--a2g-gold1:#FFD75A;--a2g-gold2:#FFB52E;
  --a2g-violet:#8B5CFF;--a2g-magenta:#FF4FD8;--a2g-cyan:#43DCFF;--a2g-emerald:#35F2A1;--a2g-ruby:#FF4B67;
}
html,body{background:var(--a2g-bg0);font-family:Inter,system-ui,-apple-system,sans-serif}
h1,h2,.result-number,.discount-number,.win-word{font-family:Sora,Inter,sans-serif}
.app-shell{
  min-height:100svh;
  background:
    radial-gradient(circle at 50% -5%,rgba(255,215,90,.17),transparent 26%),
    radial-gradient(circle at 8% 30%,rgba(255,79,216,.16),transparent 32%),
    radial-gradient(circle at 92% 42%,rgba(67,220,255,.13),transparent 28%),
    linear-gradient(180deg,#14082b 0%,#080411 72%);
  overflow:hidden;
}
.app-shell:after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.22;
  background-image:radial-gradient(circle,rgba(255,255,255,.34) 0 1px,transparent 1.2px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,black,transparent 72%);
  animation:starDrift 22s linear infinite;
}
@keyframes starDrift{to{transform:translateY(42px)}}
.stage,.topbar,.footer{position:relative;z-index:2}
.screen{transform-origin:50% 30%}
.screen.active{animation:screenIn .46s cubic-bezier(.16,1,.3,1) both}
@keyframes screenIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
h1,h2{letter-spacing:-.035em;text-wrap:balance}
h1{font-size:clamp(2.25rem,10vw,4rem);line-height:.96}
h2{font-size:clamp(1.85rem,8vw,3.2rem);line-height:1.02}
.lead{color:#d7cbe8;max-width:620px;margin-inline:auto}
.live-badges{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:10px 0 22px}
.live-badges span{
  font-size:10px;font-weight:800;letter-spacing:.18em;padding:7px 10px;border-radius:999px;
  border:1px solid rgba(255,215,90,.35);color:#fff1a7;background:rgba(255,215,90,.07);
  box-shadow:0 0 24px rgba(255,215,90,.08)
}
.glass{
  background:linear-gradient(180deg,rgba(47,23,83,.84),rgba(14,8,29,.9));
  border:1px solid rgba(255,215,90,.2);
  box-shadow:0 28px 90px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(22px) saturate(140%);
}
.primary{
  min-height:62px;border-radius:20px;font-family:Sora,Inter,sans-serif;font-weight:800;letter-spacing:.01em;
  background:linear-gradient(135deg,#fff1a0 0%,#ffd55a 35%,#ffab36 70%,#ff6b7d 100%);
  color:#281100;box-shadow:0 16px 48px rgba(255,183,50,.28),0 0 32px rgba(255,79,216,.09);
  position:relative;overflow:hidden;isolation:isolate
}
.primary:after{
  content:"";position:absolute;inset:-20% auto -20% -38%;width:28%;transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);
  animation:ctaSweep 3.2s ease-in-out infinite
}
@keyframes ctaSweep{0%,58%{left:-38%}82%,100%{left:132%}}
.primary:active{transform:scale(.985)}
.eyebrow{color:#ffe676;font-weight:800;letter-spacing:.16em;text-shadow:0 0 20px rgba(255,215,90,.24)}
.session-pill{border-color:rgba(255,215,90,.26);color:#fff0a2;background:rgba(255,215,90,.06)}
.brand .coin.mini{box-shadow:0 0 24px rgba(255,215,90,.28)}
.wheel-wrap{filter:drop-shadow(0 28px 54px rgba(0,0,0,.45))}
.wheel{transition:transform var(--spin-duration,4.3s) cubic-bezier(.08,.6,.08,1)}
.value-wheel{
  border:10px solid #ffe574;
  outline:2px solid rgba(255,255,255,.18);
  background:conic-gradient(
    #ff4b67 0 25%,#8256ff 25% 50%,#20d5a0 50% 75%,#ffb52e 75% 100%);
  box-shadow:inset 0 0 0 8px rgba(255,255,255,.10),inset 0 0 44px rgba(0,0,0,.22),
    0 0 38px rgba(255,215,90,.26),0 0 110px rgba(255,79,216,.19);
}
.value-wheel:after,.mystery-wheel:after{
  content:"";position:absolute;inset:10px;border-radius:50%;pointer-events:none;
  background:conic-gradient(from 10deg,transparent 0 20%,rgba(255,255,255,.14) 25%,transparent 31% 100%);
  mix-blend-mode:screen;animation:wheelLight 4.6s linear infinite
}
@keyframes wheelLight{to{transform:rotate(360deg)}}
.pointer{
  filter:drop-shadow(0 0 14px rgba(255,230,109,.9));
  transform-origin:50% 20%;animation:pointerIdle 1.4s ease-in-out infinite
}
@keyframes pointerIdle{50%{transform:translateY(2px)}}
.wheel-label{font-family:Sora,Inter,sans-serif;font-weight:800;font-size:21px;text-shadow:0 3px 10px rgba(0,0,0,.7),0 0 14px rgba(255,255,255,.2)}
.wheel-core{
  background:radial-gradient(circle at 35% 25%,#6f4c9c,#271438 52%,#0d0715 100%);
  border:2px solid rgba(255,229,116,.72);
  box-shadow:0 0 32px rgba(255,215,90,.24),inset 0 0 28px rgba(0,0,0,.45)
}
.mystery-wheel{
  border:10px solid #ffe574;
  background:conic-gradient(
    #744dff 0 16.666%,#ff4fd8 16.666% 33.333%,#22d5ca 33.333% 50%,
    #ffb52e 50% 66.666%,#ff4b67 66.666% 83.333%,#6f54ff 83.333% 100%);
  box-shadow:inset 0 0 0 8px rgba(255,255,255,.08),0 0 44px rgba(255,215,90,.2),0 0 120px rgba(139,92,255,.24)
}
.mystery-seg{font-size:25px;color:#fff8df;text-shadow:0 2px 12px rgba(0,0,0,.75),0 0 16px rgba(255,255,255,.2)}
.mystery-seg.s5{right:17%;bottom:18%;transform:rotate(45deg)}
.mystery-seg.s6{left:17%;top:18%;transform:rotate(-45deg)}
.mystery-orb{
  background:
    radial-gradient(circle at 36% 24%,rgba(255,255,255,.25),transparent 16%),
    radial-gradient(circle at 62% 68%,rgba(255,79,216,.28),transparent 36%),
    radial-gradient(circle,#513282,#1a0b2d 68%);
  box-shadow:0 0 60px rgba(255,79,216,.2),0 0 120px rgba(139,92,255,.17);
  animation:mysteryPulse 2.1s ease-in-out infinite
}
@keyframes mysteryPulse{50%{transform:scale(1.035);box-shadow:0 0 80px rgba(255,79,216,.28),0 0 150px rgba(139,92,255,.21)}}
.result-number,.discount-number{
  background:linear-gradient(90deg,#fff6b1 0%,#ffd455 34%,#52edc2 67%,#57d9ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 24px rgba(255,215,90,.16))
}
.discount-number{background-image:linear-gradient(90deg,#fff4a8,#ffd04e,#ff8a3d,#ff4fd8)}
.victory-rays{opacity:.55}
.price-stack{perspective:900px}
.price{animation:priceIn .5s cubic-bezier(.16,1,.3,1) both}
.price.save{animation-delay:.12s}.price.final{animation-delay:.24s}
@keyframes priceIn{from{opacity:0;transform:translateY(12px) rotateX(10deg)}to{opacity:1;transform:none}}
.timer{font-family:Sora,Inter,sans-serif;font-variant-numeric:tabular-nums;color:#fff0a0;text-shadow:0 0 18px rgba(255,215,90,.35),0 0 36px rgba(255,79,216,.15);animation:timerBreath 2s ease-in-out infinite}
@keyframes timerBreath{50%{filter:brightness(1.16)}}
.package-row{gap:10px}
.package{font-family:Sora,Inter,sans-serif;min-height:58px;border-radius:16px}
.package.selected{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,215,90,.35),0 10px 34px rgba(255,215,90,.15)}
.scenario-bars{height:190px;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;gap:8px;margin:22px 0 10px}
.scenario-bar{
  appearance:none;border:0;background:transparent;color:#bdb1d1;padding:0;display:grid;grid-template-rows:1fr auto auto;gap:6px;align-items:end;
  min-width:0;font-size:10px;cursor:pointer
}
.scenario-bar i{
  display:block;width:100%;height:var(--h);min-height:18px;border-radius:10px 10px 4px 4px;
  background:linear-gradient(180deg,rgba(130,86,255,.65),rgba(67,220,255,.24));
  border:1px solid rgba(255,255,255,.08);transition:.34s cubic-bezier(.16,1,.3,1)
}
.scenario-bar span{font-size:9px}.scenario-bar b{font-size:9px;white-space:nowrap}
.scenario-bar.selected{color:#fff2a0}
.scenario-bar.selected i{
  background:linear-gradient(180deg,#fff09a,#ffd452 35%,#4adfcf 100%);
  box-shadow:0 0 24px rgba(255,215,90,.2),0 0 36px rgba(67,220,255,.08);transform:scaleX(1.05)
}
.qr-frame{border:2px solid rgba(255,215,90,.72);box-shadow:0 0 34px rgba(255,215,90,.18),0 0 80px rgba(139,92,255,.18);background:#fff}
.handoff-summary{animation:screenIn .5s .15s cubic-bezier(.16,1,.3,1) both}
.customer-card .highlight{background:linear-gradient(90deg,rgba(255,215,90,.10),rgba(255,79,216,.06));border-radius:14px;padding-inline:12px}
.win-overlay{backdrop-filter:blur(3px)}
.win-word{
  background:linear-gradient(90deg,#fff6ad,#ffd75a,#ff8a3d,#ff4fd8);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:none;filter:drop-shadow(0 10px 35px rgba(255,79,216,.24))
}
.jackpot-mode .app-shell{background:radial-gradient(circle at 50% 25%,rgba(255,215,90,.28),transparent 28%),linear-gradient(180deg,#160c00,#07040F 72%)}
@media(max-width:420px){
  .stage{padding-inline:18px}
  .scenario-bars{height:168px;gap:6px}
  .scenario-bar b{font-size:8px}
  .wheel-label{font-size:18px}
}

/* A2G 3D COIN + CELEBRATION PASS */
.coin{
  position:relative;isolation:isolate;color:#07160f;
  background:
    radial-gradient(circle at 34% 26%,rgba(255,255,255,.98) 0 3%,rgba(255,245,178,.95) 5%,transparent 15%),
    radial-gradient(circle at 50% 50%,#72f5bd 0 42%,#25bd82 43% 56%,#ffd75a 57% 70%,#b96d12 84%,#fff0a1 100%);
  border:2px solid rgba(255,242,164,.86);
  box-shadow:
    inset 0 0 0 5px rgba(87,45,0,.20),
    inset 0 -8px 15px rgba(74,29,0,.22),
    inset 0 6px 11px rgba(255,255,255,.25),
    0 12px 24px rgba(0,0,0,.34),
    0 0 38px rgba(255,215,90,.24);
  text-shadow:0 1px 0 rgba(255,255,255,.42)
}
.coin:after{
  content:"";position:absolute;inset:4%;border-radius:50%;pointer-events:none;
  border:1px solid rgba(255,255,255,.38);
  background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.36) 42%,transparent 56%);
  transform:translateX(-65%);animation:coinShine 3.8s ease-in-out infinite
}
@keyframes coinShine{0%,58%{transform:translateX(-75%) rotate(-8deg)}82%,100%{transform:translateX(75%) rotate(-8deg)}}
.confetti i:nth-child(5n+1){background:#ffd75a!important}
.confetti i:nth-child(5n+2){background:#ff4fd8!important;border-radius:50%}
.confetti i:nth-child(5n+3){background:#43dcff!important}
.confetti i:nth-child(5n+4){background:#35f2a1!important;border-radius:4px}
.confetti i:nth-child(5n){background:#ff4b67!important}


/* === A2G LIVE FINAL AGENCY PASS V2.1 === */
.ambient-particles{
  position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden;
}
.ambient-particles i{
  position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);
  border-radius:50%;background:#fff7c7;
  box-shadow:0 0 10px rgba(255,215,90,.75),0 0 24px rgba(139,92,255,.35);
  opacity:.15;animation:ambientFloat var(--d) ease-in-out var(--delay) infinite alternate;
}
.ambient-particles i:nth-child(3n){background:#58dcff;box-shadow:0 0 10px rgba(67,220,255,.65);opacity:.18}
.ambient-particles i:nth-child(4n){background:#ff68dd;box-shadow:0 0 12px rgba(255,79,216,.58);opacity:.14}
@keyframes ambientFloat{
  0%{transform:translate3d(-8px,10px,0) scale(.7);opacity:.08}
  55%{opacity:.32}
  100%{transform:translate3d(12px,-22px,0) scale(1.25);opacity:.12}
}

.session-pill.offline{
  color:#ffd0d5;border-color:rgba(255,75,103,.45);background:rgba(255,75,103,.08);
  box-shadow:0 0 24px rgba(255,75,103,.12)
}
button:disabled{cursor:not-allowed;filter:saturate(.35) brightness(.7);box-shadow:none!important}

.hero-card,.membership,.simulator-card,.handoff-summary,.customer-card{
  position:relative;overflow:hidden
}
.hero-card:before,.membership:before,.simulator-card:before,.handoff-summary:before,.customer-card:before{
  content:"";position:absolute;left:-35%;top:-110%;width:55%;height:320%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.055),transparent);
  transform:rotate(20deg);animation:glassSweep 7s ease-in-out infinite
}
@keyframes glassSweep{0%,72%{left:-45%}100%{left:145%}}

.wheel-wrap:before{
  content:"";position:absolute;inset:-13px;border-radius:50%;z-index:-1;
  background:
    radial-gradient(circle at 50% 0,#fff1a1 0 3px,transparent 4px),
    radial-gradient(circle at 85% 15%,#ff79df 0 3px,transparent 4px),
    radial-gradient(circle at 100% 50%,#5ce7ff 0 3px,transparent 4px),
    radial-gradient(circle at 85% 85%,#ffd75a 0 3px,transparent 4px),
    radial-gradient(circle at 50% 100%,#6cf3bd 0 3px,transparent 4px),
    radial-gradient(circle at 15% 85%,#8b5cff 0 3px,transparent 4px),
    radial-gradient(circle at 0 50%,#ff5b7a 0 3px,transparent 4px),
    radial-gradient(circle at 15% 15%,#ffd75a 0 3px,transparent 4px);
  filter:drop-shadow(0 0 8px rgba(255,215,90,.65));
  opacity:.72;animation:ringPulse 1.7s ease-in-out infinite alternate
}
.wheel-wrap:after{
  content:"";position:absolute;inset:-28px;border-radius:50%;z-index:-2;pointer-events:none;
  background:radial-gradient(circle,transparent 46%,rgba(139,92,255,.16) 64%,transparent 72%);
  filter:blur(9px);animation:haloBreathe 2.4s ease-in-out infinite
}
@keyframes ringPulse{to{opacity:1;filter:drop-shadow(0 0 13px rgba(255,215,90,.9))}}
@keyframes haloBreathe{50%{transform:scale(1.05);opacity:.65}}

.value-wheel{
  background:conic-gradient(from -45deg,
    #ff4b67 0 25%,
    #8256ff 25% 50%,
    #20d5a0 50% 75%,
    #ffb52e 75% 100%);
}
.mystery-wheel{
  background:conic-gradient(from -30deg,
    #744dff 0 16.666%,
    #ff4fd8 16.666% 33.333%,
    #22d5ca 33.333% 50%,
    #ffb52e 50% 66.666%,
    #ff4b67 66.666% 83.333%,
    #6f54ff 83.333% 100%);
}

.wheel-core:before{
  content:"";position:absolute;inset:8%;border-radius:50%;pointer-events:none;
  border:1px solid rgba(255,238,153,.36);
  box-shadow:inset 0 0 15px rgba(255,255,255,.05)
}
.wheel-core .coin{transform:translateZ(0);animation:coinHover 2.4s ease-in-out infinite}
@keyframes coinHover{50%{transform:translateY(-2px) rotateY(7deg);filter:brightness(1.08)}}

[data-screen="first-result"]::before,[data-screen="discount-result"]::before{
  content:"";position:absolute;inset:5% -30%;z-index:-2;pointer-events:none;
  background:radial-gradient(circle at center,rgba(255,215,90,.14),rgba(139,92,255,.06) 38%,transparent 68%);
  animation:heroHalo 2.2s ease-in-out infinite alternate
}
@keyframes heroHalo{to{transform:scale(1.06);filter:brightness(1.15)}}

.result-number,.discount-number{
  position:relative;z-index:2;
}
.result-number:after,.discount-number:after{
  content:"";position:absolute;left:8%;right:8%;bottom:-10px;height:3px;border-radius:999px;
  background:linear-gradient(90deg,transparent,#ffd75a,#ff4fd8,#43dcff,transparent);
  filter:blur(1px);opacity:.65
}

.scenario-bars{
  padding:10px 6px 0;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0));
}
.scenario-bar:nth-child(1) i{background:linear-gradient(180deg,#43dcff,#166584)}
.scenario-bar:nth-child(2) i{background:linear-gradient(180deg,#8b5cff,#43278b)}
.scenario-bar:nth-child(3) i{background:linear-gradient(180deg,#ff4fd8,#812b76)}
.scenario-bar:nth-child(4) i{background:linear-gradient(180deg,#ffb52e,#9b5017)}
.scenario-bar:nth-child(5) i{background:linear-gradient(180deg,#35f2a1,#167653)}
.scenario-bar.selected i{
  background:linear-gradient(180deg,#fff6b1 0%,#ffd75a 28%,#ff8a3d 55%,#ff4fd8 78%,#43dcff 100%);
  box-shadow:0 0 20px rgba(255,215,90,.32),0 0 45px rgba(255,79,216,.15);
  transform:scaleX(1.08) translateY(-2px)
}
.scenario-bar.selected b{color:#fff7c2;text-shadow:0 0 12px rgba(255,215,90,.35)}

.package{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,rgba(50,25,88,.8),rgba(16,9,33,.92));
  border:1px solid rgba(255,255,255,.10);
}
.package:before{
  content:"";position:absolute;inset:0;opacity:0;
  background:radial-gradient(circle at 50% 0,rgba(255,215,90,.18),transparent 62%);
  transition:opacity .2s ease
}
.package.selected:before{opacity:1}
.package.selected{
  color:#fff4ad;border-color:rgba(255,215,90,.62);
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 12px 36px rgba(255,215,90,.14),0 0 28px rgba(255,79,216,.08)
}

.mystery-orb{position:relative;isolation:isolate}
.mystery-orb:before,.mystery-orb:after{
  content:"";position:absolute;border-radius:50%;pointer-events:none
}
.mystery-orb:before{
  inset:-18px;border:1px solid rgba(255,215,90,.25);
  background:repeating-conic-gradient(from 0deg,rgba(255,215,90,.42) 0 2deg,transparent 2deg 16deg);
  mask:radial-gradient(transparent 64%,#000 66%);animation:orbRing 18s linear infinite
}
.mystery-orb:after{
  inset:-36px;border:1px solid rgba(139,92,255,.18);
  background:repeating-conic-gradient(from 0deg,rgba(67,220,255,.28) 0 1deg,transparent 1deg 22deg);
  mask:radial-gradient(transparent 72%,#000 74%);animation:orbRing 24s linear infinite reverse
}
@keyframes orbRing{to{transform:rotate(360deg)}}

.price-stack .price{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 28px rgba(0,0,0,.16)
}
.price.final{
  background:linear-gradient(145deg,rgba(255,215,90,.16),rgba(255,79,216,.09),rgba(67,220,255,.05));
  box-shadow:0 0 0 1px rgba(255,215,90,.18),0 16px 44px rgba(255,172,46,.12)
}

.qr-frame{position:relative}
.qr-frame:before{
  content:"";position:absolute;inset:-7px;border-radius:34px;z-index:-1;
  background:conic-gradient(from 0deg,#ffd75a,#ff4fd8,#43dcff,#8b5cff,#ffd75a);
  filter:blur(6px);opacity:.38;animation:qrAura 6s linear infinite
}
@keyframes qrAura{to{transform:rotate(360deg)}}

.offer-expiring .timer{
  color:#ffd16a;text-shadow:0 0 18px rgba(255,138,61,.55),0 0 46px rgba(255,75,103,.18);
  animation:urgentPulse 1.05s ease-in-out infinite
}
@keyframes urgentPulse{50%{transform:scale(1.025);filter:brightness(1.25)}}

.jackpot-mode [data-screen="discount-result"].active{
  background:radial-gradient(circle at 50% 32%,rgba(255,215,90,.10),transparent 42%)
}
.jackpot-mode .discount-number{
  animation:jackpotNumber .85s cubic-bezier(.2,.9,.2,1) 2 alternate;
  filter:drop-shadow(0 0 22px rgba(255,215,90,.34))
}
@keyframes jackpotNumber{to{transform:scale(1.09);filter:brightness(1.32) drop-shadow(0 0 38px rgba(255,215,90,.42))}}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}

/* Correct six-way mystery symbol geometry */
.mystery-seg{left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;transform-origin:50% 50%!important}
.mystery-seg.s1{--a:0deg}.mystery-seg.s2{--a:60deg}.mystery-seg.s3{--a:120deg}
.mystery-seg.s4{--a:180deg}.mystery-seg.s5{--a:240deg}.mystery-seg.s6{--a:300deg}
.mystery-seg{transform:translate(-50%,-50%) rotate(var(--a)) translateY(-112px) rotate(calc(-1 * var(--a)))!important}
@media(max-width:520px){.mystery-seg{transform:translate(-50%,-50%) rotate(var(--a)) translateY(-100px) rotate(calc(-1 * var(--a)))!important}}

.jackpot-crown{display:none;font-size:58px;line-height:1;color:#ffd75a;margin-bottom:6px;text-shadow:0 0 22px rgba(255,215,90,.55),0 0 52px rgba(255,79,216,.22)}
.jackpot-mode .jackpot-crown{display:block;animation:crownDrop .8s cubic-bezier(.16,1,.3,1) both}
@keyframes crownDrop{0%{opacity:0;transform:translateY(-28px) scale(.65) rotate(-9deg)}55%{opacity:1;transform:translateY(4px) scale(1.12) rotate(3deg)}100%{transform:none}}

.activated-ring{
  border-color:#ffd75a;
  box-shadow:0 0 56px rgba(255,215,90,.28),0 0 110px rgba(53,242,161,.12),inset 0 0 36px rgba(255,215,90,.08)
}
.activated-ring span{color:#fff0a0}

/* OPERATOR / DEMO CONTROL */
.topbar-actions{display:flex;align-items:center;gap:10px}
.operator-toggle{
  width:36px;height:36px;border-radius:12px;border:1px solid rgba(255,215,90,.22);
  background:rgba(255,215,90,.06);color:#ffe681;font-size:17px;cursor:pointer;
  box-shadow:0 0 20px rgba(255,215,90,.06)
}
.operator-toggle[hidden]{display:none!important}
.operator-panel{
  position:fixed;z-index:900;right:14px;top:88px;width:min(360px,calc(100vw - 28px));
  padding:18px;border-radius:24px;
  background:linear-gradient(180deg,rgba(36,17,66,.98),rgba(10,6,23,.98));
  border:1px solid rgba(255,215,90,.28);
  box-shadow:0 30px 90px rgba(0,0,0,.58),0 0 60px rgba(139,92,255,.14);
  backdrop-filter:blur(24px);transform:translateX(calc(100% + 32px));opacity:0;
  pointer-events:none;transition:.32s cubic-bezier(.16,1,.3,1)
}
.operator-panel.open{transform:none;opacity:1;pointer-events:auto}
.operator-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;text-align:left}
.operator-head .eyebrow{margin:0 0 6px;font-size:9px}
.operator-head strong{font-family:Sora,Inter,sans-serif;font-size:18px}
.operator-close{
  width:34px;height:34px;border-radius:12px;border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);color:#fff;font-size:24px;line-height:1;cursor:pointer
}
.operator-note{font-size:11px;line-height:1.45;color:#b9adc9;text-align:left;margin:14px 0 18px}
.operator-group{margin-top:14px;text-align:left}
.operator-group>span{display:block;font-size:9px;letter-spacing:.15em;color:#a89abf;font-weight:800;margin-bottom:8px}
.operator-mode-note{margin-top:8px;color:#b9abc9;font-size:10px;line-height:1.35}
.operator-group[hidden]{display:none}
.operator-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.payment-deadline-grid{grid-template-columns:repeat(4,1fr)}
.payment-deadline-grid button{min-width:0;padding:0 4px;font-size:11px}
.payment-deadline-grid button:last-child{grid-column:span 2}
.operator-grid button{
  min-height:44px;border-radius:13px;border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);color:#d9cfe6;font-weight:800;cursor:pointer
}
.operator-grid button.selected{
  color:#271000;background:linear-gradient(135deg,#fff2a1,#ffd75a,#ff9a42);
  border-color:transparent;box-shadow:0 8px 24px rgba(255,215,90,.16)
}
.operator-pin-box{margin-top:14px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.035);overflow:hidden}
.operator-pin-box[hidden]{display:none}
.operator-pin-box summary{min-height:44px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;color:#fff0a0;font-size:11px;font-weight:900;letter-spacing:.08em}
.operator-pin-box summary::-webkit-details-marker{display:none}
.operator-pin-box summary small{color:#b9adc9;font-size:9px}
.operator-pin-content{padding:4px 12px 12px;display:grid;gap:9px;text-align:left}
.operator-pin-content label{display:grid;gap:5px;color:#a89abf;font-size:9px;font-weight:900;letter-spacing:.10em}
.operator-pin-content input{min-height:42px;border-radius:11px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.28);color:#fff;padding:0 12px;font-size:18px;letter-spacing:.35em;text-align:center}
.operator-pin-content .primary{min-height:44px;font-size:11px;border-radius:12px}
.operator-pin-content .inline-feedback{margin-top:0;font-size:10px;padding:9px}
.operator-summary{
  display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:16px 0 12px;
  padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.035);
  color:#fff0a0;font-size:10px;font-weight:800
}
.operator-apply{min-height:52px;width:100%;font-size:13px;border-radius:15px}
@media(max-width:520px){
  .session-pill{font-size:8px;padding:8px 9px;letter-spacing:.08em}
  .operator-toggle{width:32px;height:32px}
  .operator-panel{top:78px;right:10px;width:calc(100vw - 20px)}
}

/* LOCKED SCREEN 1 — SELLER HANDOFF */
.seller-handoff{
  min-height:calc(100svh - 120px);
  justify-content:center;
  gap:0;
}
.seller-name{
  font-family:Sora,Inter,sans-serif;
  font-size:clamp(64px,16vw,118px);
  line-height:.9;
  font-weight:800;
  letter-spacing:-.055em;
  color:#fffaf2;
  text-shadow:0 0 34px rgba(255,215,90,.12);
  margin-bottom:22px;
}
.seller-ready{
  margin:0 0 18px;
  font-size:clamp(18px,4vw,24px);
  line-height:1.35;
  color:#d7cbe8;
  font-weight:500;
}
.seller-access{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  margin-bottom:34px;
  border-radius:999px;
  border:1px solid rgba(255,215,90,.28);
  background:rgba(255,215,90,.055);
  color:#ffe681;
  font-family:Sora,Inter,sans-serif;
  font-size:15px;
  font-weight:800;
  letter-spacing:.05em;
  box-shadow:0 0 28px rgba(255,215,90,.07);
}
.seller-start{
  width:min(100%,420px);
  min-height:66px;
  font-size:20px;
}
.session-pill.demo-hidden{display:none!important}
@media(max-width:520px){
  .seller-name{font-size:clamp(58px,18vw,86px);margin-bottom:18px}
  .seller-ready{font-size:18px;margin-bottom:16px}
  .seller-access{margin-bottom:28px}
  .seller-start{min-height:64px;font-size:19px}
}

.operator-voice{
  width:100%;
  min-height:44px;
  margin:0 0 10px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  color:#d9cfe6;
  font-weight:900;
  letter-spacing:.04em;
  cursor:pointer;
}
.operator-voice.selected{
  color:#0d1511;
  background:linear-gradient(135deg,#74f7bf,#35f2a1);
  border-color:transparent;
  box-shadow:0 8px 24px rgba(53,242,161,.14);
}

/* LOCKED FIRST DRAW — 9 SEGMENTS */
.nine-segment-wheel{
  --final-angle:0deg;
  background:conic-gradient(from -20deg,
    #ff4b67 0deg 40deg,
    #8b5cff 40deg 80deg,
    #43dcff 80deg 120deg,
    #35f2a1 120deg 160deg,
    #ff8a3d 160deg 200deg,
    #ff4fd8 200deg 240deg,
    #6f54ff 240deg 280deg,
    #22d5ca 280deg 320deg,
    #ffb52e 320deg 360deg);
}
.nine-segment-wheel .wheel-label{
  left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;
  width:68px;height:28px;margin:-14px 0 0 -34px;
  display:grid;place-items:center;
  font-size:15px;line-height:1;
  transform-origin:50% 50%!important;
}
.nine-segment-wheel .wheel-label b{
  display:block;
  font:inherit;
  transform:rotate(calc(-1 * var(--final-angle)));
}
.nine-segment-wheel .seg1{--a:0deg}
.nine-segment-wheel .seg2{--a:40deg}
.nine-segment-wheel .seg3{--a:80deg}
.nine-segment-wheel .seg4{--a:120deg}
.nine-segment-wheel .seg5{--a:160deg}
.nine-segment-wheel .seg6{--a:200deg}
.nine-segment-wheel .seg7{--a:240deg}
.nine-segment-wheel .seg8{--a:280deg}
.nine-segment-wheel .seg9{--a:320deg}
.nine-segment-wheel .wheel-label{
  transform:rotate(var(--a)) translateY(-118px) rotate(calc(-1 * var(--a)))!important;
}
.reward-grid{grid-template-columns:repeat(3,1fr)}
.reward-grid button{font-size:12px;padding:0 6px}
@media(max-width:520px){
  .nine-segment-wheel .wheel-label{
    width:60px;margin-left:-30px;font-size:13px;
    transform:rotate(var(--a)) translateY(-106px) rotate(calc(-1 * var(--a)))!important;
  }
}

.token-value-setting{
  display:flex;align-items:center;gap:10px;
  min-height:48px;padding:6px 12px;
  border-radius:13px;border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035)
}
.token-value-setting input{
  width:100%;min-width:0;border:0;outline:0;background:transparent;
  color:#fff3a2;font:800 18px/1.2 Sora,Inter,sans-serif;
}
.token-value-setting strong{color:#ffd75a;font-size:16px}
.operator-panel{max-height:calc(100svh - 105px);overflow-y:auto}

/* Gentle visual polish — no flow/copy changes */
.draw-title{
  max-width:720px;
  margin-inline:auto;
  font-size:clamp(36px,7.4vw,58px)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
.draw-title #drawCustomerName{
  color:#fff2a3;
  text-shadow:0 0 18px rgba(255,215,90,.18);
}
.screen[data-screen="first-draw"] .eyebrow{margin-bottom:12px}
.screen[data-screen="first-draw"] .wheel-wrap{margin-top:28px;margin-bottom:26px}
.screen[data-screen="first-draw"] .primary{width:min(100%,500px)}
.glass,.backend-card,.membership,.simulator-card,.handoff-summary,.customer-card{
  box-shadow:0 18px 56px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035);
}
.primary{
  box-shadow:0 14px 42px rgba(255,184,72,.16),0 0 28px rgba(255,79,216,.06);
}
@media(max-width:520px){
  .draw-title{font-size:clamp(32px,10.4vw,44px)!important;max-width:360px}
  .screen[data-screen="first-draw"] .wheel-wrap{margin-top:24px;margin-bottom:22px}
}

/* Language selector */
.language-switch{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.language-switch button{
  min-height:46px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  color:#d9cfe6;
  font-weight:900;
  font-size:14px;
  cursor:pointer;
}
.language-switch button.selected{
  color:#241500;
  background:linear-gradient(135deg,#fff2a1,#ffd75a,#ff9a42);
  border-color:transparent;
  box-shadow:0 8px 24px rgba(255,215,90,.16);
}
.operator-voice:disabled{
  opacity:.58;
  cursor:not-allowed;
  box-shadow:none;
}
#discardFirstButton{
  min-height:58px;
  line-height:1.15;
  padding:12px 20px;
  text-wrap:balance;
}

/* ROUND: bigger buyer labels + large language flags */
.language-switch button{
  min-height:84px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:10px 16px;
}
.language-switch .lang-flag{
  font-size:42px;
  line-height:1;
  display:block;
}
.language-switch .lang-code{
  font-size:20px;
  font-weight:950;
  letter-spacing:.04em;
}

.screen[data-screen="welcome"] .primary,
.screen[data-screen="first-draw"] .primary,
.screen[data-screen="first-result"] .primary,
.screen[data-screen="first-result"] .ghost,
.screen[data-screen="claimed"] .primary{
  font-size:clamp(28px,4vw,34px)!important;
  font-weight:950!important;
  line-height:1.04!important;
  min-height:82px!important;
  letter-spacing:-.01em!important;
}
#discardFirstButton{
  min-height:84px!important;
  font-size:clamp(26px,3.6vw,32px)!important;
  line-height:1.08!important;
  padding:14px 24px!important;
}
#resultKicker{
  font-size:clamp(32px,4.6vw,44px)!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  font-weight:950!important;
}
#resultEyebrow{
  font-size:clamp(18px,2.4vw,24px)!important;
  line-height:1.05!important;
  letter-spacing:.14em!important;
  font-weight:900!important;
  margin-bottom:20px!important;
}
@media(max-width:520px){
  .language-switch button{min-height:74px;gap:9px}
  .language-switch .lang-flag{font-size:36px}
  .language-switch .lang-code{font-size:18px}
  .screen[data-screen="welcome"] .primary,
  .screen[data-screen="first-draw"] .primary,
  .screen[data-screen="first-result"] .primary,
  .screen[data-screen="first-result"] .ghost,
  .screen[data-screen="claimed"] .primary{
    font-size:28px!important;
    min-height:76px!important;
  }
  #discardFirstButton{font-size:25px!important;min-height:82px!important}
  #resultKicker{font-size:34px!important}
  #resultEyebrow{font-size:19px!important}
}

/* Real flag images + declined-reward follow-up */
.language-switch .lang-flag{display:none!important}
.language-switch .lang-flag-img{
  width:72px;
  height:36px;
  object-fit:cover;
  border-radius:6px;
  box-shadow:0 3px 12px rgba(0,0,0,.28);
  flex:0 0 auto;
}
@media(max-width:520px){
  .language-switch .lang-flag-img{width:64px;height:32px}
}

.discard-choice-row{
  width:min(100%,560px);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:10px;
}
.discard-choice-row .primary,
.discard-choice-row .ghost{
  min-height:80px;
  font-size:30px;
  font-weight:950;
}
.sms-preview{
  width:min(100%,640px);
  padding:24px 26px;
  margin:8px 0 20px;
  text-align:left;
  font-size:18px;
  line-height:1.5;
  color:#fff6d7;
  border-color:rgba(255,215,90,.24);
}
#discardPhone{
  color:#ffe47a;
  white-space:nowrap;
}
.consent-note{
  width:min(100%,640px);
  margin:0 auto 22px;
  color:#cfc3da;
  font-size:14px;
  line-height:1.5;
  text-align:left;
}
.discard-success{
  width:110px;
  height:110px;
  border-radius:999px;
  display:grid;
  place-items:center;
  margin-bottom:24px;
  background:radial-gradient(circle at 35% 30%,#9dffd4,#35f2a1 54%,#0baa69);
  box-shadow:0 0 0 10px rgba(53,242,161,.08),0 0 52px rgba(53,242,161,.28);
}
.discard-success span{
  font-size:62px;
  color:#07140e;
  font-weight:1000;
}
@media(max-width:520px){
  .discard-choice-row{grid-template-columns:1fr}
  .discard-choice-row .primary,.discard-choice-row .ghost{min-height:72px;font-size:27px}
  .sms-preview{font-size:16px;padding:20px}
  .consent-note{font-size:13px}
}

/* Seller login — isolated identity gate */
.seller-login{
  max-width:620px;
}
.app-version-bar{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:#e9ddff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
  white-space:nowrap;
}
#appVersionLabel{
  color:#f4eaff;
  text-shadow:0 0 14px rgba(188,125,255,.45);
}
.app-version-bar button{
  min-height:28px;
  padding:4px 11px;
  border:1px solid rgba(255,215,90,.58);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(111,61,160,.72),rgba(255,190,73,.22));
  color:#ffe585;
  box-shadow:0 0 18px rgba(180,105,255,.18);
  font:900 10px/1 Inter,sans-serif;
  letter-spacing:.08em;
  cursor:pointer;
}
.app-version-bar button:hover{filter:brightness(1.16)}
.app-version-bar button:disabled{opacity:.55;cursor:wait}
#appRefreshStatus{
  max-width:210px;
  overflow:hidden;
  color:#75ffc0;
  text-overflow:ellipsis;
}
#appRefreshStatus.is-error{color:#ff9aa5}
@media(min-width:701px){
  .app-version-bar{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
  }
}
@media(max-width:520px){
  .topbar{gap:5px}
  .app-version-bar{gap:4px;font-size:8px;letter-spacing:.025em}
  .app-version-bar button{min-height:24px;padding:3px 6px;font-size:8px;letter-spacing:.03em}
  #appRefreshStatus{max-width:108px;font-size:8px}
  .app-version-bar:has(#appRefreshStatus:not([hidden])) #appVersionLabel{display:none}
}
.seller-login-field{
  width:min(100%,560px);
  margin:8px 0 18px;
  text-align:left;
}
.seller-login-field span{
  display:block;
  margin:0 0 8px;
  color:#bdb0c9;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}
.seller-login-field select{
  width:100%;
  min-height:72px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);
  color:#fff;
  font:900 19px/1.2 Sora,Inter,sans-serif;
  padding:0 18px;
  box-sizing:border-box;
  cursor:pointer;
}
.seller-login-field select:focus{
  outline:2px solid #ffd75a;
  outline-offset:2px;
}
.seller-login-field option{
  color:#17101f;
  background:#fff;
}
.seller-login-field input{
  width:100%;min-height:72px;border-radius:18px;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);color:#fff;font:900 25px/1.2 Sora,Inter,sans-serif;
  padding:0 18px;box-sizing:border-box;letter-spacing:.4em;text-align:center;
}
.seller-login-field input:focus{outline:2px solid rgba(255,220,105,.72);outline-offset:2px}
.seller-choice{max-width:700px}
.seller-choice #sellerChoiceTitle{margin-bottom:32px}
.seller-choice-grid{width:min(100%,620px);display:grid;gap:16px}
.seller-modules,.seller-workday,.seller-daily-activity{position:relative}
.seller-modules{max-width:700px;justify-content:flex-start;padding-top:72px}
.seller-modules h2{font-size:clamp(25px,6vw,44px);margin-bottom:28px}
.seller-module-list{width:min(100%,560px);display:flex;flex-direction:column;gap:14px}
.seller-module-list button{width:100%;min-height:66px;font-size:18px;font-weight:900}
.seller-screen-back{position:absolute;top:18px;left:24px;width:auto;min-width:0;min-height:36px;padding:0 14px;border-radius:11px;font-size:10px;letter-spacing:.08em}
.seller-choice-grid button{min-height:112px;display:grid;place-content:center;gap:7px}
.seller-choice-grid strong{font-size:24px}.seller-choice-grid span{font-size:14px;font-weight:700;opacity:.78}
.seller-workday{max-width:620px}
.seller-daily-activity{max-width:760px;justify-content:flex-start;padding-top:72px}
.seller-daily-activity h2{font-size:clamp(28px,7vw,48px)}
.daily-activity-form{width:min(100%,680px);padding:22px;display:grid;gap:18px;text-align:left}
.daily-activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.daily-activity-form label{display:grid;gap:7px;color:#d9cee4;font-size:12px;font-weight:900;letter-spacing:.07em}
.daily-activity-form input,.daily-activity-form textarea{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(0,0,0,.3);color:#fff;font:800 18px/1.3 Sora,Inter,sans-serif;padding:14px;box-sizing:border-box}
.daily-activity-form input{min-height:56px}.daily-activity-form textarea{resize:vertical;letter-spacing:0}
.daily-activity-form input:focus,.daily-activity-form textarea:focus{outline:2px solid rgba(255,220,105,.72);outline-offset:2px}
.activity-history{width:min(100%,680px);margin-top:24px;text-align:left}.activity-history h3{color:#ffe47a;font-size:14px;letter-spacing:.1em}
.activity-history-card{display:grid;gap:5px;padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.1)}
.activity-history-card span,.activity-history-card p,.activity-empty{margin:0;color:#cfc3da;font-size:13px;line-height:1.45}
.daily-entry-button{margin-bottom:8px}
.seller-pin-card{width:min(100%,560px);padding:24px;display:grid;gap:14px;text-align:left}
.seller-pin-card h3{margin:0;color:#ffe47a;text-align:center}.seller-pin-card label{display:grid;gap:6px;color:#cfc3da;font-size:12px;font-weight:900;letter-spacing:.08em}
.seller-pin-card input{min-height:56px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.28);color:#fff;padding:0 16px;font-size:22px;letter-spacing:.35em;text-align:center}
.admin-pin-list{width:min(100%,760px);padding:12px 18px;margin-bottom:16px}
.admin-pin-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.admin-pin-row:last-child{border-bottom:0}.admin-pin-row strong{color:#fff3a2}.admin-pin-row code{font-size:22px;color:#75ffc0;letter-spacing:.15em}
@media(max-width:520px){.seller-choice-grid button{min-height:96px}.daily-activity-grid{grid-template-columns:1fr}.daily-activity-form{padding:16px}}
.seller-login #sellerLoginButton:disabled{
  opacity:.42;
  cursor:not-allowed;
}
.inline-feedback{width:100%;max-width:100%;margin:14px 0 0;padding:12px 14px;border:1px solid rgba(255,135,135,.55);border-radius:14px;background:rgba(128,18,36,.28);color:#ffe1e1;font-weight:750;line-height:1.35;text-align:center}
@media(max-width:520px){
  .seller-login-field select{min-height:64px;font-size:18px}
}

/* Seller-only end state after declined reward */
.seller-session-end,.seller-waiting{
  max-width:720px;
}
.seller-end-card{
  width:min(100%,620px);
  margin:6px 0 22px;
}
.seller-session-end .primary{
  width:min(100%,520px);
}
.seller-waiting .lead{
  margin-top:8px;
  color:#d7cbe8;
}
@media(max-width:520px){
  .seller-session-end h2,.seller-waiting h2{
    font-size:clamp(30px,9vw,42px);
  }
}
/* First draw wheel matches the responsive second-draw wheel */
.screen[data-screen="first-draw"] .wheel-wrap{
  width:min(100%,calc(100vw - 24px))!important;
  max-width:560px!important;
  height:auto!important;
  aspect-ratio:1/1;
}
.screen[data-screen="first-draw"] .nine-segment-wheel .wheel-label{
  transform:rotate(var(--a)) translateY(-142px) rotate(calc(-1 * var(--a)))!important;
  font-size:18px;
}
@media(max-width:520px){
  .screen[data-screen="first-draw"] .nine-segment-wheel .wheel-label{
    transform:rotate(var(--a)) translateY(-127px) rotate(calc(-1 * var(--a)))!important;
    font-size:16px;
  }
}

/* Minimal admin audit — isolated from buyer flow */
.admin-entry{
  margin-top:12px;
  min-height:48px;
  width:min(100%,240px);
  font-size:13px;
  letter-spacing:.12em;
}
.admin-screen{
  max-width:900px;
}
.admin-summary{
  width:min(100%,820px);
  margin:4px 0 16px;
  color:#ffe681;
  font-weight:800;
  line-height:1.5;
}
.admin-audit-list{
  width:min(100%,820px);
  max-height:54vh;
  overflow:auto;
  padding:10px 16px;
  margin-bottom:18px;
  text-align:left;
}
.admin-audit-row{
  padding:13px 2px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.admin-audit-row:last-child{border-bottom:0}
.admin-audit-top{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
}
.admin-audit-top strong{color:#fff3a2}
.admin-audit-top span{
  color:#6fffc0;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
}
.admin-audit-meta{
  margin-top:5px;
  color:#aa9db7;
  font-size:12px;
  line-height:1.4;
}

.seller-exit{
  margin-top:28px;
  min-height:48px;
  width:min(100%,260px);
  font-size:13px;
  font-weight:900;
  letter-spacing:.10em;
  opacity:.82;
}

/* Gate 1 isolated demo/session controls */
.demo-banner{
  position:fixed;
  z-index:1200;
  top:8px;
  left:50%;
  transform:translateX(-50%);
  width:min(calc(100% - 24px),760px);
  padding:8px 14px;
  border:1px solid rgba(255,215,90,.45);
  border-radius:999px;
  background:rgba(18,10,28,.94);
  backdrop-filter:blur(12px);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-align:center;
}
.demo-banner[hidden]{display:none}
.prospect-form{
  width:min(100%,600px);
  padding:20px;
  margin:18px 0 22px;
  display:grid;
  gap:14px;
  text-align:left;
}
.prospect-form label{
  display:grid;
  gap:7px;
  font-size:12px;
  font-weight:800;
  color:var(--muted);
}
.prospect-form input{
  width:100%;
  min-height:50px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:#0a120f;
  color:#fff;
  padding:0 14px;
  font:700 16px/1.2 Sora,Inter,sans-serif;
}
.amount-card{
  width:min(100%,600px);
  padding:20px;
  margin:4px 0 22px;
  text-align:left;
}
.amount-title{
  font-size:11px;
  font-weight:900;
  letter-spacing:.09em;
  color:var(--muted);
}
.amount-card>strong{
  display:block;
  margin:5px 0 16px;
  font-size:28px;
}
#amountSlider{width:100%;accent-color:#49ffa9}
.amount-scale{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:5px;
  font-size:11px;
  color:var(--muted);
}
.selected-amount{
  margin:18px 0 10px;
  font-size:24px;
  font-weight:900;
}
.selected-projections{
  display:grid;
  gap:7px;
  margin-top:12px;
}
.projection-row{
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:var(--muted);
}
.projection-row strong{color:#fff}
.scenario-bars{grid-template-columns:repeat(7,1fr)}
@media(max-width:600px){
  .scenario-bars{grid-template-columns:repeat(7,1fr);gap:4px}
  .scenario-bar span,.scenario-bar b{font-size:8px}
  .selected-amount{font-size:20px}
}

.prospect-proposals{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:4px;
}
.prospect-proposals span{
  width:100%;
  color:var(--muted);
  font-size:11px;
}
.prospect-proposals button{
  min-width:120px;
  min-height:42px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:#0c1813;
  color:#fff;
  font-weight:900;
}
.prospect-proposals button.selected{
  border-color:rgba(73,255,169,.55);
  background:rgba(73,255,169,.12);
  color:var(--green);
}
.scenario-growth{
  margin-top:-4px;
  margin-bottom:12px;
  font-size:40px;
  line-height:1;
  font-weight:950;
  color:#67ffb5;
  text-align:center;
}
.selected-amount-heading{
  margin:4px 0 10px;
  color:#fff;
  font-size:15px;
  font-weight:800;
}
.selected-amount-heading strong{
  color:#ffe681;
}
.handoff-navigation{
  width:min(100%,900px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(12px,4vw,48px);
  margin-top:22px;
}
.handoff-navigation .ghost,
.handoff-navigation .primary{
  width:100%;
  min-height:72px;
}
.payment-grid{
  width:min(100%,900px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.payment-panel{
  padding:18px;
}
.payment-panel h3{
  margin:0 0 14px;
  font-size:14px;
  letter-spacing:.06em;
}
#sessionQrFrame,.upn-qr-frame{
  width:250px;
  max-width:100%;
  aspect-ratio:1;
  margin:0 auto 12px;
  padding:10px;
  border-radius:18px;
  background:#fff;
}
.upn-qr-frame svg{
  width:100%;
  height:100%;
  display:block;
}
.upn-note{
  color:var(--muted);
  font-size:11px;
  line-height:1.5;
}
.payment-summary{
  width:min(100%,900px);
  padding:16px 20px;
  margin-bottom:16px;
}
.payment-actions{
  width:min(100%,900px);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:10px;
}
.payment-actions>*{
  min-height:54px;
}
@media(max-width:700px){
  .payment-grid{grid-template-columns:1fr}
  .payment-actions{grid-template-columns:1fr}
  .scenario-growth{font-size:34px}
}

/* Mobile-first payment flow hardening */
html,body,.app-shell,.stage,.screen{
  width:100%;
  max-width:100%;
}
.screen{
  overflow-x:hidden;
}
.screen>*,
.glass,
.payment-handoff,
.customer-payment,
.seller-session-card,
.customer-payment-card,
.payment-summary,
.handoff-summary,
.payment-actions,
.customer-payment-actions{
  min-width:0;
  max-width:100%;
}
.seller-session-card,
.customer-payment-card,
.payment-summary,
.handoff-summary{
  width:100%;
}
.seller-session-card{
  padding:16px;
  margin:14px 0;
}
#sessionQrFrame,
.customer-payment .upn-qr-frame{
  width:min(82vw,320px);
  height:auto;
  aspect-ratio:1/1;
  max-width:100%;
  padding:10px;
  margin:0 auto 12px;
  overflow:hidden;
}
#sessionQrFrame canvas,
#sessionQrFrame img,
.customer-payment .upn-qr-frame{cursor:pointer}
.customer-payment .upn-qr-frame canvas,
.customer-payment .upn-qr-frame img,
.customer-payment .upn-qr-frame svg{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%;
  object-fit:contain;
}
.handoff-url{
  display:block;
  width:100%;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
  white-space:normal;
}
.status-row,.big-line{
  width:100%;
  min-width:0;
}
.status-row span,.big-line span{
  flex:1 1 45%;
  min-width:0;
}
.status-row strong,.big-line strong{
  flex:1 1 55%;
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
  text-align:right;
}
.handoff-summary .status-row span{font-size:17px}
.handoff-summary .status-row strong{font-size:22px}
.handoff-summary .final-total span{font-size:17px}
.handoff-summary .final-total strong{font-size:clamp(44px,7vw,72px)}
.customer-payment-actions{
  width:100%;
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin:14px 0 8px;
}
.customer-payment-actions .primary,
.customer-payment-actions .ghost{
  width:100%;
  max-width:100%;
  margin:0;
  min-height:58px;
}
.compact-payment-summary{
  width:100%;
  max-width:100%;
  padding:6px 14px;
  margin:8px 0 0;
}
.customer-payment-card{
  padding:16px;
  margin:14px 0;
}
.customer-payment .lead,
.seller-payment-handoff .lead{
  max-width:100%;
}
@media(max-width:430px){
  .screen{
    padding-left:14px;
    padding-right:14px;
    padding-top:36px;
  }
  h2{font-size:clamp(30px,9vw,44px)}
  .lead{font-size:15px;margin:16px auto 22px}
  .status-row,.big-line{gap:10px;padding:12px 0}
  .status-row span,.big-line span{font-size:11px}
  .status-row strong,.big-line strong{font-size:13px}
  #sessionQrFrame,
  .customer-payment .upn-qr-frame{
    width:min(calc(100vw - 60px),320px);
  }
  .customer-payment-card,
  .seller-session-card{padding:12px}
}
@media(max-width:360px){
  .screen{padding-left:10px;padding-right:10px}
  #sessionQrFrame,
  .customer-payment .upn-qr-frame{
    width:min(calc(100vw - 44px),300px);
    padding:8px;
  }
  .status-row{align-items:flex-start}
  .status-row span{flex-basis:42%}
  .status-row strong{flex-basis:58%}
}
@media(max-width:320px){
  .topbar{padding-left:10px;padding-right:10px}
  .brand{font-size:12px}
  .screen{padding-left:8px;padding-right:8px}
  #sessionQrFrame,
  .customer-payment .upn-qr-frame{
    width:min(calc(100vw - 32px),288px);
  }
  .customer-payment-card,
  .seller-session-card,
  .compact-payment-summary{padding-left:8px;padding-right:8px}
  .customer-payment-actions .primary,
  .customer-payment-actions .ghost{font-size:13px;padding-inline:10px}
}

/* Mobile-first payment flow hardening */
.screen,
.payment-handoff,
.customer-payment,
.seller-session-card,
.handoff-summary,
.customer-payment-card,
.payment-summary,
.customer-payment-actions,
.payment-grid,
.payment-panel{
  width:100%;
  max-width:100%;
  min-width:0;
}
.payment-handoff,
.customer-payment{
  padding-left:16px;
  padding-right:16px;
}
.payment-handoff h2,
.customer-payment h2,
.payment-handoff .lead,
.customer-payment .lead{
  max-width:100%;
  overflow-wrap:anywhere;
}
.seller-session-card,
.customer-payment-card{
  padding:16px;
}
#sessionQrFrame,
#customerUpnQrFrame,
.upn-qr-frame{
  width:min(100%,260px);
  height:auto;
  aspect-ratio:1/1;
  max-width:100%;
  padding:10px;
  margin:0 auto 14px;
  overflow:hidden;
}
#sessionQrFrame img,
#sessionQrFrame canvas,
#customerUpnQrFrame img,
#customerUpnQrFrame canvas,
.upn-qr-frame img,
.upn-qr-frame canvas,
.upn-qr-frame svg{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%;
  object-fit:contain;
}
.handoff-url{
  display:none;
}
.payment-summary,
.compact-payment-summary{
  margin-left:0;
  margin-right:0;
  padding:10px 12px;
}
.payment-summary .status-row,
.compact-payment-summary .status-row,
.handoff-summary .status-row{
  width:100%;
  min-width:0;
  gap:10px;
}
.payment-summary .status-row span,
.compact-payment-summary .status-row span,
.handoff-summary .status-row span{
  flex:0 0 42%;
  min-width:0;
}
.payment-summary .status-row strong,
.compact-payment-summary .status-row strong,
.handoff-summary .status-row strong{
  flex:1 1 auto;
  min-width:0;
  text-align:right;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.customer-payment-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.customer-payment-actions .primary,
.customer-payment-actions .ghost{
  width:100%;
  max-width:100%;
  margin:0;
  min-height:58px;
  white-space:normal;
  padding:12px 16px;
}
.upn-note{
  max-width:100%;
  overflow-wrap:anywhere;
}
@media(max-width:430px){
  .screen{padding-left:14px;padding-right:14px}
  .payment-handoff,.customer-payment{padding-left:12px;padding-right:12px}
  .payment-handoff h2,.customer-payment h2{font-size:clamp(28px,8.8vw,38px);line-height:1.02}
  .payment-handoff .lead,.customer-payment .lead{font-size:15px;line-height:1.42;margin:16px auto 20px}
  .seller-session-card,.customer-payment-card{padding:12px}
  #sessionQrFrame,#customerUpnQrFrame,.upn-qr-frame{width:min(100%,240px);padding:8px}
  .payment-summary .status-row,
  .compact-payment-summary .status-row,
  .handoff-summary .status-row{padding:11px 0;align-items:flex-start}
  .payment-summary .status-row span,
  .compact-payment-summary .status-row span,
  .handoff-summary .status-row span{font-size:11px}
  .payment-summary .status-row strong,
  .compact-payment-summary .status-row strong,
  .handoff-summary .status-row strong{font-size:13px}
}
@media(max-width:360px){
  #sessionQrFrame,#customerUpnQrFrame,.upn-qr-frame{width:min(100%,220px)}
  .payment-summary .status-row,
  .compact-payment-summary .status-row,
  .handoff-summary .status-row{gap:8px}
  .payment-summary .status-row span,
  .compact-payment-summary .status-row span,
  .handoff-summary .status-row span{flex-basis:40%}
}
@media(max-width:320px){
  .screen{padding-left:10px;padding-right:10px}
  .payment-handoff,.customer-payment{padding-left:8px;padding-right:8px}
  .seller-session-card,.customer-payment-card{padding:10px}
  #sessionQrFrame,#customerUpnQrFrame,.upn-qr-frame{width:min(100%,200px)}
  .customer-payment-actions .primary,
  .customer-payment-actions .ghost{font-size:14px;min-height:54px}
}


/* Flow 1 finalization: reward, simulator, second draw and handoff summary */
.reward-value-card{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px;
  padding:22px 20px!important;
  margin:14px 0 6px;
  text-align:center;
  border:1px solid rgba(255,215,90,.55);
  background:linear-gradient(145deg,rgba(255,215,90,.18),rgba(255,132,69,.10));
  box-shadow:0 18px 44px rgba(255,184,72,.16),inset 0 1px 0 rgba(255,255,255,.18);
}
.reward-value-card span{
  display:block!important;
  color:#fff3b0!important;
  font-size:13px!important;
  font-weight:950!important;
  letter-spacing:.10em;
  text-align:center!important;
}
.reward-value-card strong{
  display:block!important;
  color:#fff9da!important;
  font-size:clamp(46px,10vw,76px)!important;
  line-height:.96!important;
  text-align:center!important;
  letter-spacing:-.06em;
  text-shadow:0 0 30px rgba(255,215,90,.26);
}
.scenario-growth{
  margin:28px 0 20px!important;
  font-size:clamp(46px,11vw,68px)!important;
  line-height:.94!important;
  letter-spacing:-.055em;
  text-shadow:0 0 28px rgba(103,255,181,.22);
}
.screen[data-screen="second-draw"] .wheel-wrap{
  width:min(100%,calc(100vw - 24px))!important;
  max-width:560px!important;
  height:auto!important;
  aspect-ratio:1/1;
  margin:24px auto 26px!important;
}
.screen[data-screen="second-draw"] .mystery-wheel{
  width:100%!important;
  height:100%!important;
}
.screen[data-screen="second-draw"] .pointer{
  z-index:3;
}
.screen[data-screen="second-draw"] .primary{
  width:min(100%,560px);
  min-height:66px;
  font-size:clamp(22px,6vw,30px);
}
.final-payment-summary{
  padding:22px!important;
  border:1px solid rgba(255,215,90,.42);
  background:linear-gradient(145deg,rgba(46,21,83,.92),rgba(18,8,34,.96));
  box-shadow:0 24px 70px rgba(0,0,0,.36),0 0 38px rgba(255,215,90,.10);
}
.summary-kicker{
  margin:0 0 10px;
  color:#ffe681;
  font-size:12px;
  font-weight:950;
  letter-spacing:.16em;
  text-align:center;
}
.final-payment-summary .status-row{
  padding:13px 0!important;
}
.final-payment-summary .status-row span{
  color:#d7c7e4!important;
  font-size:12px!important;
  font-weight:900;
  letter-spacing:.05em;
}
.final-payment-summary .status-row strong{
  color:#fff!important;
  font-size:17px!important;
  font-weight:950!important;
}
.final-total{
  display:grid;
  gap:8px;
  margin:14px -4px -4px;
  padding:20px 16px;
  border-radius:18px;
  background:linear-gradient(135deg,#fff2a1,#ffd75a,#ff9a42);
  color:#261300;
  text-align:center;
  box-shadow:0 14px 36px rgba(255,184,72,.28);
}
.final-total span{
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
}
.final-total strong{
  font-size:clamp(34px,8vw,58px)!important;
  font-weight:950!important;
  line-height:.95;
  letter-spacing:-.055em;
}
.customer-payment .final-total{
  margin:14px 0 4px;
}
@media(max-width:430px){
  .reward-value-card{padding:18px 14px!important}
  .final-payment-summary{padding:16px 12px!important}
  .final-payment-summary .status-row{padding:11px 0!important}
  .final-payment-summary .status-row strong{font-size:15px!important}
  .final-total{padding:18px 10px;margin:12px 0 0}
}
@media(max-width:320px){
  .screen[data-screen="second-draw"] .wheel-wrap{width:min(100%,calc(100vw - 20px))!important}
  .final-payment-summary .status-row span{font-size:10px!important}
  .final-payment-summary .status-row strong{font-size:13px!important}
  .final-total strong{font-size:34px!important}
}

/* Flow 1 responsive width containment */
.aurora{
  width:min(520px,100vw);
  max-width:100%;
}
.aurora-a{right:0}
.aurora-b{left:0}
.screen[data-screen="claimed"] h2,
.screen[data-screen="simulator"] h2,
.screen[data-screen="second-draw"] h2,
.customer-payment h2{
  width:100%;
  max-width:100%;
  overflow-wrap:anywhere;
}
.screen[data-screen="second-draw"] .primary{
  white-space:normal;
}

.screen[data-screen="second-draw"] .wheel-wrap:before,
.screen[data-screen="second-draw"] .wheel-wrap:after{
  inset:0;
}
.screen[data-screen="second-draw"] .mystery-wheel:after{
  animation:none;
  transform:none;
}
/* First reward WOW — draw + monthly bonus timeline */
.first-reward-wow{position:relative;justify-content:flex-start;padding-top:70px!important;padding-bottom:84px!important;overflow-x:clip}
.first-reward-wow .victory-rays{opacity:.75}
.wow-stage{width:min(100%,560px);max-width:100%;opacity:0;transform:translateY(16px) scale(.98);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
.wow-stage.is-visible,.wow-complete .wow-stage{opacity:1;transform:none}
.wow-reward-stage{display:grid;gap:14px;justify-items:center}
.wow-reward-stage .eyebrow{font-size:clamp(13px,3.8vw,17px);color:#fff2a3}
.first-reward-wow .result-number{font-size:clamp(64px,20vw,124px);line-height:.86;color:#fff8d8;text-shadow:0 0 22px rgba(255,255,255,.42),0 0 62px rgba(255,215,90,.5);margin:0}
.wow-drawn-status{margin:0;color:#67ffb5;font-weight:950;letter-spacing:.18em;font-size:11px}
.wow-eur{margin:3px 0 0;color:#fff2a3;font-size:clamp(16px,4.5vw,23px);font-weight:900;line-height:1.1;text-align:center}
#firstRewardEur{font-size:clamp(26px,8vw,48px)}
#monthlyBonusEur{font-size:clamp(18px,5.4vw,28px)}
.wow-bonus-intro{margin:34px auto 0;color:#fff;font-size:clamp(22px,7vw,38px);font-weight:950;letter-spacing:.04em;text-align:center}
.wow-bonus-stage{margin:24px auto 0;display:grid;justify-items:center;gap:12px}
.wow-bonus-stage .eyebrow{font-size:clamp(15px,4.5vw,21px);color:#ffe681;text-align:center}
.wow-monthly{font-size:clamp(27px,8vw,48px);font-weight:950;color:#67ffb5;text-align:center;text-shadow:0 0 28px rgba(103,255,181,.3)}
.bonus-months{width:min(100%,420px);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:6px auto 0}
.bonus-month{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.16);color:#a9a0bb;background:rgba(255,255,255,.04);font:900 clamp(11px,3vw,15px)/1 Sora,Inter,sans-serif;transition:background .2s,color .2s,box-shadow .2s,transform .2s}
.bonus-month.is-lit{color:#231500;background:radial-gradient(circle at 35% 25%,#fff9d5,#ffe173 46%,#5af0d2 100%);box-shadow:0 0 16px rgba(255,215,90,.85),0 0 28px rgba(67,255,209,.28);transform:scale(1.08)}
.wow-total-stage{margin:30px auto 0;display:grid;justify-items:center;gap:14px}
.bonus-total-card{width:min(100%,480px);padding:12px 16px;border:1px solid rgba(255,215,90,.42);border-radius:22px;background:linear-gradient(145deg,rgba(45,18,86,.9),rgba(10,35,49,.9));box-shadow:0 18px 55px rgba(0,0,0,.28),0 0 34px rgba(139,92,255,.16)}
.bonus-total-card>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.09);text-align:left}
.bonus-total-card span{font-size:11px;font-weight:900;letter-spacing:.08em;color:#d8cae6}
.bonus-total-card strong{display:grid;justify-items:end;gap:2px;font-size:clamp(20px,6vw,31px);color:#fff;font-weight:950;white-space:nowrap}
.bonus-total-card strong b{font:inherit}
.bonus-total-card strong small{font-size:clamp(12px,3.5vw,16px);color:#ffe681;font-weight:900}
.bonus-total-card .bonus-grand-total{margin:6px -6px -6px;padding:16px 12px;border:0;border-radius:16px;background:linear-gradient(135deg,#fff2a1,#ffd75a,#5af0d2);color:#201000}
.bonus-grand-total span,.bonus-grand-total strong{color:#201000}
.bonus-grand-total strong small{color:#201000;font-size:clamp(21px,5.8vw,30px)}
.bonus-grand-total strong{font-size:clamp(36px,10vw,58px);letter-spacing:-.06em}
.wow-value-note{margin:0;color:#d8cae6;font-size:12px;line-height:1.4;text-align:center;max-width:100%}
.wow-personal{margin:2px auto 0;font-size:clamp(16px,4.6vw,22px);font-weight:850;line-height:1.2;text-align:center;color:#fff7c7;max-width:520px}
.first-reward-wow .primary{width:min(100%,520px);min-height:64px;font-size:clamp(14px,4vw,22px);line-height:1.2;white-space:normal}
.wow-note{margin:0;color:#cfc3da;font-size:13px;line-height:1.45;text-align:center}
@media(max-width:360px){
  .first-reward-wow{padding-left:12px!important;padding-right:12px!important}
  .bonus-months{gap:6px}
  .bonus-total-card{padding:10px}
  .bonus-total-card>div{gap:8px}
  .bonus-total-card span{font-size:9px}
  .bonus-total-card strong{font-size:18px}
  .bonus-grand-total strong{font-size:clamp(36px,10vw,58px)}
  .first-reward-wow .primary{font-size:14px;line-height:1.2;letter-spacing:-.02em;padding-left:10px;padding-right:10px}
}
@media(max-width:520px){
  .screen[data-screen="first-result"] .primary{font-size:clamp(13px,3.5vw,18px)!important;line-height:1.2;min-height:64px!important;padding-left:10px;padding-right:10px}
}
.payment-pending-card,.admin-payment-test,.activation-summary{width:min(100%,520px);margin:16px auto 0;padding:16px;box-sizing:border-box}
.payment-pending-card strong,.admin-payment-test strong{display:block;color:#ffe681;font-weight:950;text-align:center}
.payment-pending-card p,.admin-payment-test p{margin:8px 0 0;text-align:center;line-height:1.45}
.admin-payment-test .primary{width:100%;margin-top:10px;white-space:normal}
.activation-summary{display:grid;gap:0}
.activated-payment-screen .final-total{margin-top:8px}
@media (prefers-reduced-motion:reduce){
  .wow-stage,.bonus-month{transition:none!important;transform:none!important}
  .first-reward-wow .result-number{animation:none!important}
  .confetti i{animation:none!important}
}
