.draw-demo{--navy:#05254f;--accent:#ff9a31;--gold:#ffc46a;margin:20px 20px 36px;color:#fff;border-radius:28px;background:radial-gradient(ellipse at 25% 65%,#1261b0 0,transparent 47%),linear-gradient(140deg,#031c3e,#084287 65%,#04224f);padding:40px 44px 36px;overflow:hidden;isolation:isolate}.draw-intro{max-width:620px;margin:auto;text-align:center}.demo-label{display:inline-block;border:1px solid #eeb46b80;border-radius:30px;padding:5px 13px;color:#ffcf91;font-size:10px;letter-spacing:1.5px;font-weight:750}.draw-intro .eyebrow{color:#b4d8ff;margin:24px 0 10px}.draw-intro h1{font-size:clamp(33px,4.6vw,52px);line-height:1.08;letter-spacing:-1.5px;margin:0 0 18px}.draw-intro em{font-style:normal;color:var(--gold)}.draw-intro p:not(.eyebrow){font-size:15px;color:#d0e4ff;max-width:520px;margin:auto}.draw-scene{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:25px;max-width:930px;margin:32px auto 0;padding-right:48px;min-height:510px}.worm-stage{position:relative;align-self:center;padding-top:42px}.draw-worm{width:100%;height:auto;filter:drop-shadow(0 22px 14px #00122e65);transform-origin:50% 85%}.worm-speech{position:absolute;top:0;right:5px;max-width:235px;text-align:center;border:1px solid #8ec8ff55;border-radius:18px 18px 3px 18px;padding:11px 18px;font-size:14px;font-weight:700;background:#ffffff0f;color:#ffcf91}.machine-stage{position:relative;perspective:900px;padding-bottom:60px}.slot-machine{position:relative;max-width:385px;margin:auto;filter:drop-shadow(0 20px 17px #00112690)}.slot-sign{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;min-height:110px;padding:22px 18px 16px;border:6px solid #e8c486;border-radius:62px 62px 22px 22px;background:radial-gradient(ellipse at top,#2267af,#062852 70%);box-shadow:inset 0 0 0 3px #ad5b14,inset 0 0 0 7px #ffac3f,0 3px 0 #02204b;z-index:2}.slot-sign:before{content:"";position:absolute;inset:8px;border:5px dotted #fff2bf;border-radius:49px 49px 14px 14px;opacity:.9;pointer-events:none}.slot-sign strong{font-size:clamp(21px,2.8vw,33px);color:#ffcb73;letter-spacing:.6px;font-weight:950;line-height:1.25;text-shadow:0 2px 0 #914211,0 3px 0 #02152e}.slot-star{position:absolute;top:-20px;background:#06346b;border:3px solid #e8c486;border-radius:50%;width:38px;height:38px;color:#ffd281;line-height:31px;font-size:25px}.slot-subtitle{color:#b8d9ff;font-size:7px;letter-spacing:1.2px;margin-top:6px;font-weight:700}.slot-cabinet{position:relative;padding:17px 16px 0;margin:-6px 5px 0;border:5px solid #b7cbdc;border-radius:10px 10px 18px 18px;background:linear-gradient(100deg,#1c68b7,#063d82 10%,#052c60 82%,#041b3e);box-shadow:inset 3px 0 0 #f6fcff,inset -4px 0 0 #49779e,7px 0 0 #01162f}.slot-screens{display:grid;gap:9px;padding:12px;background:#02152d;border:2px solid #c87924;border-radius:13px;box-shadow:0 0 0 3px #082751}.slot-row{min-height:48px;display:flex;align-items:center;gap:10px;border:2px solid #d8af68;border-radius:8px;background:linear-gradient(#fffdf2,#efe7cf);padding:5px 9px;overflow:hidden;color:#113d6a;box-shadow:inset 0 2px 5px #b98a3240}.slot-rank{font-size:13px;font-weight:850;color:#a87a31;border-right:1px solid #cfbb96;padding-right:9px;font-variant-numeric:tabular-nums}.slot-row-content{flex:1;min-width:0}.slot-row small{display:block;font-size:7px;font-weight:800;letter-spacing:1px;color:#94652c;line-height:1.3}.slot-name{display:block;white-space:nowrap;font-size:15px;line-height:1.35;overflow:hidden;text-overflow:ellipsis}.slot-check{color:#bd9d59;font-size:15px}.slot-row.is-revealed{background:linear-gradient(#fff8e5,#ffdf9d);border-color:#ffa23b}.slot-row.is-revealed .slot-check{color:#ce7016}.slot-base{text-align:center;padding:14px 10px 12px}.slot-caption{color:#ffc778;font-size:10px;font-weight:850;letter-spacing:1.4px;min-height:18px}.ticket-outlet{height:42px;width:64%;margin:10px auto;border:4px solid #bed2e3;border-radius:9px;background:linear-gradient(#000d20,#05162a);box-shadow:inset 0 -7px 10px #ff8d1940,0 2px 0 #001126}.ticket-outlet span{display:block;height:3px;margin:3px 8px;background:#ffb444;box-shadow:0 0 8px #ffaa29}.slot-trim{font-size:7px;letter-spacing:1.6px;color:#8ab3db}.slot-foot{height:20px;margin:-7px -6px 0;border:4px solid #b7cbdc;border-top:2px solid #f8c16c;border-radius:0 0 13px 13px;background:linear-gradient(90deg,#2066a7,#041d42,#2066a7);box-shadow:0 4px 0 #01152e}.slot-lever{position:absolute;right:-58px;top:32%;width:62px;height:185px;padding:0;background:transparent;border:0;border-radius:12px;box-shadow:none;z-index:3;touch-action:manipulation}.lever-hub{position:absolute;bottom:16px;left:-2px;width:40px;height:44px;background:radial-gradient(ellipse at 35% 35%,#d0e3f3,#527797 48%,#082b53 51%);border:3px solid #b8cddd;border-radius:50%}.lever-arm{position:absolute;bottom:37px;left:19px;width:12px;height:123px;border:2px solid #d0e5f4;background:linear-gradient(90deg,#527393,#f3f9ff,#476581);border-radius:8px;transform:rotate(10deg);transform-origin:50% 100%;transition:transform .28s cubic-bezier(.2,.8,.4,1)}.lever-ball{position:absolute;top:-17px;left:-20px;width:49px;height:49px;border:3px solid #ffc77e;border-radius:50%;background:radial-gradient(circle at 30% 24%,#fff0c9 0 8%,#ffb145 13%,#f57919 48%,#ba4110);box-shadow:0 4px 8px #00132e88}.lever-hint{position:absolute;bottom:-6px;right:-9px;font-size:8px;white-space:nowrap;color:#ffc778;letter-spacing:1px}.slot-lever:hover .lever-ball{box-shadow:0 0 22px #ffb14e80}.draw-demo.is-running .lever-arm{animation:lever-pull .75s ease-in-out}.draw-demo.is-running .slot-sign:before{animation:marquee-glow 1.1s ease-in-out infinite alternate}.draw-demo.is-running .draw-worm{animation:worm-celebrate 1.1s ease-in-out 4}.draw-demo.is-running .slot-row:not(.is-revealed) .slot-name{animation:reel-roll .15s linear infinite;filter:blur(.8px);color:#497498}.draw-controls{text-align:center;position:relative;z-index:4;margin-top:6px}.draw-message{font-size:18px;font-weight:750;min-height:29px;color:#ffcd8b;margin:0 0 14px}.draw-controls button{min-width:240px;box-shadow:0 4px 0 #a9470f,0 9px 22px #001b4050}.draw-auto{font-size:12px;color:#b4d0ef;min-height:20px;margin-top:15px}.ticket-fall-zone{position:absolute;bottom:-2px;left:3%;width:94%;height:110px;pointer-events:none;z-index:5}.flying-pair{position:absolute;left:calc(50% - 37px);top:-23px;width:74px;height:85px;opacity:0;transform:translateY(-22px) scale(.5);transform-origin:center top}.mini-ticket{position:absolute;left:0;top:0;display:block;background:#0873d8;color:#fff;padding:8px 4px;border:2px solid #d3eaff;border-radius:3px;width:44px;height:64px;font-size:5px;font-weight:800;text-align:center;box-shadow:0 2px 5px #00142b88;transform:rotate(-13deg);z-index:2}.mini-ticket b{display:block;font-size:14px;color:#ffce70}.mini-ticket.orange{left:28px;top:4px;background:#f58020;transform:rotate(10deg);z-index:1}.flying-pair small{position:absolute;top:71px;left:-4px;width:84px;text-align:center;font-size:7px;color:#ffe0a4;font-weight:800;letter-spacing:.7px}.flying-pair:nth-child(1){--land:-145px;--turn:-12deg}.flying-pair:nth-child(2){--land:-73px;--turn:-6deg}.flying-pair:nth-child(3){--land:0px;--turn:0deg}.flying-pair:nth-child(4){--land:73px;--turn:6deg}.flying-pair:nth-child(5){--land:145px;--turn:12deg}.flying-pair.is-out{animation:ticket-drop .85s cubic-bezier(.2,.65,.3,1.2) both}.demo-winners{margin:30px auto 0;padding-top:25px;border-top:1px solid #96c2f140;max-width:800px}.demo-winners[hidden]{display:none}.demo-winners h2{color:#ffcd8b;font-size:25px;text-align:center;margin:0}.demo-winners .muted{color:#bdd6f4;text-align:center}.demo-winners ol{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:9px}.demo-winners li{display:flex;gap:15px;align-items:center;padding:14px 18px;border:1px solid #a3caf22b;border-radius:12px;background:#ffffff08}.winner-number{color:#ffb764;font-weight:850;font-size:19px}.demo-winners li div{flex:1}.demo-winners li strong{font-size:15px}.demo-winners li div span{display:block;font-size:11px;color:#b4d0ef}.winner-state{font-size:10px;color:#f8cd88;background:#ffb45112;padding:6px 9px;border-radius:20px}.animation-link{font-size:12px;text-align:center;margin:10px 20px}.animation-link a{color:#944218}
@keyframes lever-pull{0%,100%{transform:rotate(10deg)}45%,65%{transform:rotate(75deg)}}@keyframes marquee-glow{from{opacity:.45}to{opacity:1}}@keyframes worm-celebrate{0%,100%{transform:translateY(0) rotate(0)}45%{transform:translateY(-9px) rotate(-2deg)}}@keyframes reel-roll{from{transform:translateY(-8px);opacity:.4}to{transform:translateY(8px);opacity:1}}@keyframes ticket-drop{0%{opacity:0;transform:translate(0,-24px) scale(.55)}20%{opacity:1}75%{opacity:1;transform:translate(var(--land),26px) rotate(var(--turn)) scale(1)}100%{opacity:1;transform:translate(var(--land),17px) rotate(var(--turn)) scale(1)}}
@media(max-width:800px){.draw-demo{padding:32px 24px}.draw-scene{gap:8px;padding-right:42px;min-height:450px}.slot-sign strong{font-size:25px}.slot-subtitle{font-size:6px}.slot-screens{padding:8px}.slot-name{font-size:13px}.slot-row{gap:6px}.worm-speech{font-size:11px;padding:9px 10px;max-width:170px}.flying-pair:nth-child(1){--land:-116px}.flying-pair:nth-child(2){--land:-58px}.flying-pair:nth-child(4){--land:58px}.flying-pair:nth-child(5){--land:116px}.winner-state{max-width:165px}}
@media(max-width:560px){.draw-demo{margin:12px 10px 25px;padding:28px 16px;border-radius:21px}.draw-intro h1{font-size:36px}.draw-intro p:not(.eyebrow){font-size:13px}.draw-scene{grid-template-columns:1fr;gap:0;padding:0;margin-top:15px;min-height:0}.worm-stage{width:155px;padding-top:22px;justify-self:start;margin-left:0;margin-bottom:-24px;z-index:3;pointer-events:none}.worm-speech{top:24px;left:155px;right:auto;width:130px;max-width:none;font-size:11px;border-radius:14px 14px 14px 3px}.machine-stage{width:calc(100% - 45px);max-width:330px;justify-self:center;margin-right:32px;padding-bottom:88px}.slot-machine{width:100%;max-width:295px}.slot-sign{min-height:95px;padding:22px 10px 13px}.slot-sign strong{font-size:27px}.slot-subtitle{font-size:6px}.slot-cabinet{padding:14px 10px 0}.slot-row{min-height:46px}.slot-name{font-size:14px}.slot-lever{right:-48px;width:52px;height:175px}.lever-arm{height:109px;left:14px}.lever-ball{width:43px;height:43px;left:-17px}.lever-hub{width:32px;height:38px;left:-4px}.lever-hint{right:-3px}.ticket-fall-zone{bottom:18px;left:0;width:100%}.flying-pair:nth-child(1){--land:-102px}.flying-pair:nth-child(2){--land:-51px}.flying-pair:nth-child(4){--land:51px}.flying-pair:nth-child(5){--land:102px}.mini-ticket{width:34px;height:54px;font-size:4px;padding:6px 2px}.mini-ticket.orange{left:22px}.mini-ticket b{font-size:12px}.flying-pair{width:58px;left:calc(50% - 29px)}.flying-pair small{top:61px;width:65px;font-size:6px}.draw-controls{margin-top:0}.draw-message{font-size:16px;min-height:48px;display:flex;justify-content:center;align-items:center}.draw-controls button{min-width:220px}.draw-auto{font-size:11px}.demo-winners li{padding:12px 10px;gap:10px;flex-wrap:wrap}.winner-state{max-width:none;margin-left:30px;width:calc(100% - 30px);background:transparent;padding:0}.demo-winners h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.draw-demo *{animation:none!important;transition:none!important}.flying-pair.is-out{opacity:1;transform:translate(var(--land),17px) rotate(var(--turn))}.draw-worm{transform:none!important}}

.winner-progress{display:flex;flex-direction:column;align-items:flex-end;gap:7px;max-width:310px}.winner-countdown{display:block;color:#ffcf91;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.5}.winner-countdown[hidden]{display:none}
@media(max-width:560px){.winner-progress{width:calc(100% - 30px);margin-left:30px;max-width:none;align-items:flex-start}.winner-progress .winner-state{margin-left:0;width:auto}.winner-countdown{font-size:14px}}

.demo-winners li[data-status]{border-left:4px solid #8295ad}.demo-winners li[data-status="waiting"],.demo-winners li[data-status="notification_pending"]{border-left-color:#ffac43}.demo-winners li[data-status="confirmed"],.demo-winners li[data-status="tickets_sent"]{border-left-color:#64d7aa}.demo-winners li[data-status="confirmed"] .winner-state,.demo-winners li[data-status="tickets_sent"] .winner-state{color:#9fefcb;background:#64d7aa15}.demo-winners li[data-status="confirmed"] .winner-state:before,.demo-winners li[data-status="tickets_sent"] .winner-state:before{content:"✓ ";font-weight:900}.demo-winners li[data-status="waiting"] .winner-state:before{content:"◷ ";font-weight:900}.winner-countdown[data-urgent="1"]{color:#ffb15c;background:#ff9a311a;padding:5px 9px;border-radius:8px}

/* Explicit foreground colours for the cream card inside the blue draw panel. */
.draw-demo .coupon{color:#05254f;background:#fff0d3;border:1px solid #ffd28b;border-left:5px solid #f28a22;box-shadow:0 8px 24px #00152b26}.draw-demo .coupon div{color:#05254f}.draw-demo .coupon b{display:block;color:#05254f;font-size:18px;line-height:1.4}.draw-demo .coupon p{color:#193e65;font-size:14px;line-height:1.65;margin:8px 0 14px}.draw-demo .coupon strong{color:#05254f;background:#fff;border:2px dashed #bc5b13;font-size:16px;font-weight:850;white-space:nowrap}.draw-demo .coupon .coupon-shop-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;background:#05254f;color:#fff;border-radius:9px;text-decoration:none;font-size:14px;font-weight:750}.draw-demo .coupon .coupon-shop-link:hover{background:#0a427b}.draw-demo .coupon .coupon-shop-link:focus-visible{outline:3px solid #0754c8;outline-offset:4px}@media(max-width:560px){.draw-demo .coupon{margin:24px 0 0;padding:20px 17px}.draw-demo .coupon b{font-size:17px}.draw-demo .coupon strong{max-width:100%;white-space:normal;overflow-wrap:anywhere}}
