:root{font-family:"Noto Sans Thai","Tahoma","Arial",sans-serif;color:#fff;font-synthesis:none;-webkit-tap-highlight-color:transparent;font-smooth:always}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#05060a}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible{outline:3px solid #98f0ff;outline-offset:4px}#viewport{position:fixed;inset:0;overflow:hidden;display:grid;place-items:center;background:radial-gradient(ellipse at center,#1a1b24 0%,#030408 76%)}#kiosk{position:absolute;top:50%;left:50%;width:540px;height:960px;overflow:hidden;transform:translate(-50%,-50%) scale(var(--kiosk-scale,1));transform-origin:center center;background:radial-gradient(ellipse 430px 520px at 51% 35%,#292031 0%,#141420 40%,#070a14 82%),#080a11;isolation:isolate;box-shadow:0 0 100px #000;user-select:none}#particle-canvas{position:absolute;inset:0;z-index:1;pointer-events:none}.ambient{position:absolute;border-radius:50%;filter:blur(75px);pointer-events:none;z-index:0;animation:ambientFloat 8s ease-in-out infinite alternate}.ambient-red{width:330px;height:500px;top:190px;left:-175px;background:#ef1245;opacity:.23}.ambient-blue{width:340px;height:350px;top:250px;right:-220px;background:#4365d4;opacity:.21;animation-delay:-4s}.noise{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.83' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.55' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.light-line{position:absolute;pointer-events:none;z-index:2;opacity:.25;transform:rotate(-27deg);background:linear-gradient(90deg,transparent,#f42b58,transparent);width:2px;height:900px;top:60px;animation:lightScan 10s ease-in-out infinite}.light-line-a{left:20px}.light-line-b{right:35px;animation-delay:-5s}.topbar{position:absolute;top:31px;left:37px;right:37px;height:48px;display:flex;align-items:center;justify-content:space-between;z-index:11}.toyota-brand{display:flex;gap:9px;align-items:center;font-family:Arial,sans-serif;font-weight:900;font-size:20px;letter-spacing:1.5px;text-shadow:0 2px 10px #000}.toyota-brand svg{width:43px;height:29px;fill:none;stroke:#fff;stroke-width:3.5}.expo-mark{text-align:right;display:flex;flex-direction:column;gap:1px;line-height:1.2;letter-spacing:1.7px;font-family:Arial,sans-serif}.expo-mark span{font-size:9px;font-weight:800;color:#b9bac8}.expo-mark strong{font-size:20px;font-weight:950;font-style:italic}.screen{position:absolute;inset:0;z-index:4;opacity:0;visibility:hidden;transform:translateY(22px) scale(1.025);transition:opacity .42s ease,transform .55s cubic-bezier(.2,.8,.2,1),visibility .55s;pointer-events:none}.screen.active{opacity:1;visibility:visible;transform:none;pointer-events:auto}.eyebrow{font-family:Arial,sans-serif;letter-spacing:3px;color:#d7b5c2;font-weight:800;font-size:10px;text-align:center}.landing-eyebrow{position:absolute;top:123px;left:0;right:0}.eyebrow-dot{display:inline-block;width:6px;height:6px;border-radius:99px;background:#ff2d55;box-shadow:0 0 13px #ff5573;margin-right:9px;vertical-align:middle;animation:blink 1.6s infinite}.landing-glow{position:absolute;width:480px;height:360px;top:164px;left:23px;background:radial-gradient(ellipse,#f62b5a40 0%,#fa21591b 43%,transparent 72%);filter:blur(28px)}.hero-title{position:absolute;top:169px;left:0;right:0;text-align:center;z-index:2;pointer-events:none}.hero-wow-wrap{position:relative;height:127px;display:flex;align-items:center;justify-content:center;perspective:500px}.hero-wow,.hero-wow-back{position:absolute;font:italic 1000 127px/.95 Impact,"Arial Black",Arial,sans-serif;letter-spacing:-9px;transform:skewX(-8deg);-webkit-text-stroke:2px #fff;white-space:nowrap}.hero-wow-back{color:#8c092a;transform:translate(7px,12px) skewX(-8deg);filter:blur(3px);opacity:.9}.hero-wow{background:linear-gradient(#fff 12%,#fce4ec 34%,#fff 50%,#f6718b 69%,#e90938 85%,#8b001c);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 0 32px #ff174631;filter:drop-shadow(0 5px 0 #b21135) drop-shadow(0 10px 15px #ee184f90);animation:heroPulse 4s ease-in-out infinite}.hero-star{position:absolute;font:normal 38px Arial,sans-serif;color:#ffd06f;-webkit-text-stroke:0;left:calc(100% - 7px);top:1px;animation:spin 6s linear infinite}.hero-deal{position:relative;display:inline-flex;height:72px;padding:6px 38px 0;align-items:center;justify-content:center;margin-top:-5px;background:linear-gradient(115deg,#9e001e,#fc2855 42%,#9c0428);border:3px solid #ffb2c1;border-radius:16px;box-shadow:inset 0 3px 8px #ffbbc47d,0 9px 0 #63091e,0 13px 35px #f6155499;transform:rotate(-4deg) skew(-5deg);overflow:hidden}.hero-deal span:first-child{font:italic 1000 47px/1 Impact,"Arial Black",Arial,sans-serif;text-shadow:0 3px 3px #9d0d2a;letter-spacing:-1.1px}.hero-deal-shine{position:absolute;inset:-15px;width:90px;transform:skew(-25deg) translateX(-150px);background:linear-gradient(90deg,transparent,#ffffff65,transparent);animation:shimmer 5s 1.7s ease-in-out infinite}.landing-subtitle{position:absolute;top:382px;width:100%;text-align:center;font-size:27px;font-weight:950;letter-spacing:-.3px;text-shadow:0 4px 22px #ed1c4a80}.landing-description{position:absolute;top:425px;width:100%;text-align:center;color:#c5c8d7;font-size:15px;line-height:1.7;font-weight:500}.hero-scene{position:absolute;top:490px;left:0;width:540px;height:285px;perspective:520px}.orbit{position:absolute;border:2px solid #fc2f62;border-radius:50%;width:410px;height:175px;left:65px;top:61px;transform:rotateX(65deg);box-shadow:0 0 20px #f6237b70,inset 0 0 20px #f6237b66;animation:orbitShift 5s ease-in-out infinite alternate}.orbit-two{width:480px;height:220px;left:30px;top:30px;opacity:.37;animation-delay:-3s}.hero-car-glow{position:absolute;top:95px;left:95px;width:350px;height:130px;background:#ff175e55;filter:blur(65px)}.hero-car{position:absolute;top:5px;left:-42px;width:630px;height:350px;object-fit:contain;transform:rotate(-2deg);filter:drop-shadow(0 10px 9px #000a);animation:carHover 5s ease-in-out infinite;z-index:2}.car-shadow{position:absolute;top:231px;left:115px;width:322px;height:25px;border-radius:50%;background:#05030a;filter:blur(14px);z-index:1}.floor-ring{position:absolute;top:187px;left:8px;width:525px;height:130px;border:3px solid #ff2859;border-radius:50%;transform:rotateX(67deg);box-shadow:0 0 18px #ff195e,0 0 60px #ef155c4d;z-index:0}.floor-ring-2{top:195px;left:36px;width:470px;height:110px;border-width:1px;border-color:#e6a4cb;opacity:.8}.floating-offer{position:absolute;display:flex;flex-direction:column;gap:3px;justify-content:center;align-items:center;width:106px;height:105px;border-radius:18px;border:1px solid #ffbdd3;background:linear-gradient(155deg,#ff405fdd,#68071fce 75%);box-shadow:0 8px 35px #ff285859,inset 0 2px 15px #ffffff33;z-index:4;transform:rotate(-15deg);animation:floatOffer 4s ease-in-out infinite;font-family:Arial,sans-serif;font-size:11px;letter-spacing:1.1px;font-weight:900;text-align:center}.floating-offer b{font-size:25px;letter-spacing:-1px}.offer-icon{font-size:28px;line-height:1}.offer-left{left:23px;top:44px}.offer-right{right:22px;top:70px;background:linear-gradient(145deg,#f9d082,#d05817d9 80%);border-color:#ffecc8;color:#2a1018;transform:rotate(13deg);animation-delay:-2.2s}.landing-bottom{position:absolute;left:42px;right:42px;bottom:52px;height:168px;z-index:6}.landing-promo{height:52px;display:flex;align-items:center;justify-content:center;gap:13px;margin-bottom:20px}.landing-promo>span:first-child{font:italic 900 48px Arial;color:#ff2858;text-shadow:0 2px 20px #ef184e80}.landing-promo div{display:flex;flex-direction:column;gap:3px}.landing-promo b{font:900 21px Arial;letter-spacing:3px}.landing-promo small{font-size:11px;color:#bfc0d1}.promo-sparkle{color:#ffd971;font-size:27px;margin-left:12px;animation:spin 4s linear infinite}.primary-button{border:0;background:linear-gradient(180deg,#ff5b70 0%,#fd1248 31%,#ca002b 80%,#a00426 100%);color:#fff;border-radius:20px;box-shadow:inset 0 2px 0 #ffb9c4,inset 0 -5px 0 #750219,0 8px 0 #4c0615,0 12px 30px #fa174b60;font-family:Arial,"Tahoma",sans-serif;font-size:21px;font-weight:950;letter-spacing:1px;display:flex;align-items:center;justify-content:center;transition:transform .12s,filter .12s,box-shadow .12s;position:relative;overflow:hidden}.primary-button::after{content:"";position:absolute;inset:-50%;pointer-events:none;background:linear-gradient(95deg,transparent 42%,#ffffff30 50%,transparent 58%);transform:translateX(-120%);animation:buttonShine 4s ease-in-out infinite}.primary-button:active{transform:translateY(5px);box-shadow:inset 0 2px 0 #ffb9c4,inset 0 -3px 0 #750219,0 3px 0 #4c0615,0 6px 20px #fa174b50}.primary-button:disabled{background:#464454;box-shadow:0 3px #272331;color:#9692a4;filter:saturate(.15)}.start-button{height:72px;width:100%;font-size:26px;border-radius:22px}.button-arrow{position:absolute;right:26px;top:50%;transform:translateY(-50%);font:900 30px Arial}.touch-hint{margin-top:21px;display:flex;align-items:center;justify-content:center;font:700 10px Arial;letter-spacing:1.6px;color:#8b899e;gap:9px}.touch-pulse{font-size:21px;color:#ed2c5b;animation:blink 1.3s infinite}.hint-line{width:17px;height:1px;background:#6b6472}.side-label{position:absolute;top:500px;right:-105px;transform:rotate(90deg);font:700 9px Arial;letter-spacing:3.5px;color:#a5a1b367}
/* Shared step + headings */
.step-line{position:absolute;top:119px;left:39px;right:39px;display:flex;align-items:center;justify-content:space-between;font:900 12px Arial,sans-serif;letter-spacing:1.2px}.step-label{color:#ff4c74}.step-label small{color:#a5a4b6;font-size:11px}.step-caption{font-size:10px;letter-spacing:2px;color:#9293a8}.progress-track{position:absolute;top:148px;left:39px;right:39px;height:5px;display:flex;gap:7px}.progress-track i{flex:1;background:#313242;border-radius:10px;overflow:hidden}.progress-track i.progress-one,.progress-track i.progress-two,.progress-track i.progress-three,.progress-track i.done{background:linear-gradient(90deg,#ff3f66,#fa0a41);box-shadow:0 0 15px #ff204e88}.progress-track i.done{background:#f34a66}.page-title{position:absolute;top:179px;left:38px;right:38px;margin:0;font-size:37px;line-height:1.25;letter-spacing:-.7px;font-weight:950;text-shadow:0 6px 28px #ff14422e}.page-title span{color:#ff476d}.page-subtitle{position:absolute;top:236px;left:39px;right:39px;margin:0;color:#bfc0d0;font-size:13.5px;line-height:1.7;font-weight:500}.register-art{position:absolute;top:189px;right:26px;width:113px;height:120px;pointer-events:none;animation:botHover 4s ease-in-out infinite}.register-art .art-halo{position:absolute;inset:25px 5px 4px;border-radius:50%;background:#f42e643a;filter:blur(25px)}.register-art img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 12px #0009)}
/* Registration */
.register-form{position:absolute;top:298px;left:39px;right:39px;bottom:44px}.input-field{display:flex;flex-direction:column;gap:6px;height:81px;margin-bottom:2px}.field-label{font-size:13px;font-weight:750;color:#f0edf5}.field-label em,.owner-field em{font-style:normal;color:#ff5c77}.field-body{display:flex;align-items:center;gap:13px;height:51px;padding:0 16px;background:#e6e9f5f2;border:2px solid transparent;border-radius:13px;box-shadow:inset 0 1px 2px #fff}.field-body:focus-within{border-color:#ff5477;box-shadow:0 0 0 3px #ff28532e,0 0 30px #ff12421c}.field-icon{font-family:Arial;color:#7d819c;font-size:21px;font-weight:700;width:23px;text-align:center}.field-body input{background:transparent;border:0;outline:none;width:100%;height:100%;font-size:16px;color:#1a1d2f;font-weight:700}.field-body input::placeholder{color:#868a9f;font-weight:500}.owner-field{border:0;padding:0;margin:10px 0 0}.owner-field legend{font-size:13px;font-weight:750;margin:0 0 10px}.owner-options{display:flex;gap:10px}.owner-option{height:54px;flex:1;border:1.5px solid #686879;background:linear-gradient(#242536c9,#151523dc);border-radius:12px;color:#aeb1c2;font-size:17px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:7px;transition:background .18s,border-color .18s,transform .18s}.owner-option span{font-size:12px}.owner-option.active{background:#ed1841;border-color:#ffb6c3;color:#fff;box-shadow:0 5px 22px #f50e4175;transform:translateY(-1px)}.consent{position:relative;margin-top:18px;display:flex;gap:11px;align-items:flex-start;cursor:pointer;color:#dedee9;font-size:11px;line-height:1.45}.consent input{position:absolute;opacity:0;width:26px;height:26px;left:0;top:0}.fake-check{width:23px;height:23px;flex:none;border:1.5px solid #8d8da2;background:#1c1a2a;border-radius:6px;display:grid;place-items:center;color:transparent;font-weight:900}.consent input:checked+.fake-check{background:#f3214f;color:#fff;border-color:#f692a9}.consent small{font-size:10px;color:#9695ae}.form-error{position:absolute;bottom:98px;left:2px;right:2px;min-height:19px;font-size:11.5px;margin:0;color:#ff9baf;font-weight:750}.form-actions,.choice-actions,.reward-actions{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;height:68px}.back-button{height:56px;width:135px;flex:none;border:1px solid #868497;background:#ffffff17;color:#e6e5ed;border-radius:15px;font-size:28px;display:flex;justify-content:center;align-items:center;gap:7px;transition:background .15s}.back-button:active{background:#ffffff44}.back-button span{font-size:13px;font-weight:800}.next-button{height:57px;flex:1;border-radius:15px;font-size:17px;letter-spacing:.5px;box-shadow:inset 0 2px #ffbdca,inset 0 -4px #72051d,0 5px 0 #590519,0 10px 25px #e90a3e40}.next-button .button-arrow{font-size:23px;right:18px}
/* Coupon selection */
.choice-title{top:185px;font-size:42px;line-height:1.19}.choice-subtitle{top:292px}.offer-grid{position:absolute;top:345px;left:38px;right:38px;height:416px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:14px}.coupon-tile{position:relative;border:2px solid #ffffff4d;border-radius:21px;padding:0;overflow:hidden;color:white;box-shadow:inset 0 2px 17px #ffffff23,0 10px 20px #0007;transform-style:preserve-3d;transition:transform .18s,border-color .18s,box-shadow .18s;isolation:isolate}.coupon-tile:active{transform:scale(.96)}.coupon-tile.selected{transform:translateY(-5px) scale(1.015);border-color:#fff;box-shadow:inset 0 2px 25px #fff5,0 0 0 3px #ffffff33,0 10px 32px #ff2d6e80}.fuel-tile{background:linear-gradient(148deg,#fb6b78 0%,#e82445 37%,#7d0c2a 100%)}.ev-tile{background:linear-gradient(148deg,#68c7f4 0%,#1984c0 43%,#11366a 100%)}.accessory-tile{background:linear-gradient(148deg,#b99aff 0%,#7d47bb 42%,#34216f 100%)}.special-tile{background:linear-gradient(148deg,#ffe094 0%,#d68e2b 45%,#95531e 100%)}.tile-orb{position:absolute;left:25%;top:-45px;width:220px;height:150px;border-radius:100%;background:#ffffff32;filter:blur(18px);z-index:-1}.tile-top{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center}.tile-index{font:900 9px Arial;letter-spacing:1.3px;opacity:.92}.tile-selected{display:grid;place-items:center;width:24px;height:24px;border:2px solid #fff;border-radius:50%;opacity:.6;font-weight:900}.selected .tile-selected{background:#fff;color:#ec254d;opacity:1}.tile-art{position:absolute;top:26px;left:0;right:0;height:126px;display:grid;place-items:center;filter:drop-shadow(7px 10px 0 #00000025) drop-shadow(0 0 20px #fff6);animation:artFloat 3.8s ease-in-out infinite}.tile-art svg{width:112px;height:104px;transform:rotate(-8deg);color:#fff;filter:drop-shadow(0 5px 5px #190c2b80)}.ev-tile .tile-art svg{transform:rotate(7deg)}.accessory-tile .tile-art svg{transform:rotate(-12deg)}.special-tile .tile-art svg{transform:rotate(8deg)}.coupon-tile:nth-child(2) .tile-art{animation-delay:-1.8s}.coupon-tile:nth-child(3) .tile-art{animation-delay:-2.8s}.coupon-tile:nth-child(4) .tile-art{animation-delay:-.7s}.tile-bottom{position:absolute;bottom:16px;left:13px;right:13px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:3px;text-shadow:0 2px 6px #0008}.tile-bottom b{font-size:19px;line-height:1.3;font-weight:900}.tile-bottom small{font:bold 10px Arial;letter-spacing:1.3px;color:#ffffffcc}.choice-selected-text{position:absolute;top:785px;left:39px;right:39px;text-align:center;height:27px;font-size:13px;color:#d9b3c1;font-weight:700}.choice-actions{left:39px;right:39px;bottom:43px}
/* Reward */
.reward-kicker{position:absolute;top:190px;left:0;right:0;text-align:center;margin:0;color:#ffcf79;font:bold 13px Arial;letter-spacing:3.2px;animation:blink 3s infinite}.reward-title{top:217px;text-align:center;font:italic 950 54px Arial,"Tahoma",sans-serif;letter-spacing:-1px}.reward-title span{font:900 34px "Tahoma",sans-serif;color:#fff;font-style:normal}.reward-subtitle{text-align:center;top:283px}.reward-burst{position:absolute;top:208px;left:55px;font-size:35px;color:#ffda91;animation:spin 6s linear infinite}.reward-stage{position:absolute;top:326px;left:0;right:0;height:343px;perspective:900px}.reward-ring{position:absolute;top:10px;left:30px;width:480px;height:280px;border-radius:50%;border:2px solid #f81a5080;box-shadow:0 0 37px #f91e4780,inset 0 0 30px #f623502d;transform:rotateX(40deg) rotate(-12deg);animation:orbitShift 5s infinite alternate}.reward-ring-2{top:35px;left:70px;width:400px;height:220px;border-color:#fad18160;animation-delay:-2.4s}.reward-ticket{position:absolute;top:47px;left:62px;width:416px;height:276px;padding:23px 30px 20px;background:linear-gradient(125deg,#fff 0%,#fff1f4 24%,#fff 48%,#ffd5dc 100%);border:4px solid #fff6d2;border-radius:22px;color:#7c0730;box-shadow:0 6px 0 #bd334c,0 15px 0 #7e1a3b,0 25px 55px #fc1b5090,inset 0 0 25px #ff7f992a;overflow:hidden;transform:rotate(-6deg) rotateY(-5deg);animation:ticketAppear .9s cubic-bezier(.15,.9,.25,1) both,ticketFloat 5s 1.1s ease-in-out infinite}.reward-ticket::before,.reward-ticket::after{content:"";position:absolute;top:137px;width:32px;height:32px;border-radius:50%;background:#1a1421;border:3px solid #fff1d0}.reward-ticket::before{left:-21px}.reward-ticket::after{right:-21px}.ticket-top,.ticket-foot{display:flex;align-items:center;justify-content:space-between}.ticket-tag{font:900 11px Arial;letter-spacing:1.4px;color:#e62a4e}.ticket-stars{color:#de971a;font-size:18px;letter-spacing:2px}.ticket-name{font-size:38px;font-weight:950;margin-top:21px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticket-en{font:900 13px Arial;letter-spacing:2px;color:#d73157;margin-top:-1px}.ticket-dash{margin-top:15px;border-top:2px dashed #e39baa}.ticket-code-label{font:bold 9px Arial;letter-spacing:2px;color:#b46574;margin-top:14px}.ticket-code{font:bold 28px Arial;letter-spacing:2px;margin-top:3px}.ticket-foot{font:bold 8px Arial;letter-spacing:1.1px;color:#d2425d;margin-top:10px}.ticket-foot span:last-child{font-size:18px}.reward-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;top:-20px;width:8px;height:13px;animation:confettiFall 3s linear forwards;opacity:0}.print-info{position:absolute;top:699px;left:38px;right:38px;height:84px;border:1px solid #a1a4c04a;border-radius:17px;background:linear-gradient(100deg,#ffffff23,#ffffff0b);display:flex;align-items:center;gap:15px;padding:5px 18px;box-shadow:0 12px 20px #0003}.print-info img{width:74px;height:75px;object-fit:contain}.print-info div{display:flex;flex-direction:column;gap:5px}.print-info b{font-size:15px}.print-info span{font-size:11px;color:#bfc4d9}.print-info .info-spark{margin-left:auto;font-size:27px;color:#ffcf6e}.print-message{position:absolute;top:795px;left:39px;right:39px;text-align:center;color:#d2beca;font-size:12px}.reward-actions{left:39px;right:39px;bottom:61px}.print-button{height:57px;flex:1;font-size:17px;border-radius:15px;box-shadow:inset 0 2px #ffbdca,inset 0 -4px #72051d,0 5px 0 #590519,0 10px 25px #e90a3e40}.print-button .button-arrow{font-size:23px;right:14px}.text-button{border:0;background:none;color:#aaa1b9;font-weight:700;text-decoration:underline;text-underline-offset:4px}.finish-skip{position:absolute;bottom:16px;left:0;right:0;margin:auto;font-size:12px}
/* Thank you */
.thanks-glow{position:absolute;top:193px;left:80px;width:395px;height:360px;border-radius:50%;background:radial-gradient(circle,#f52c654d,#f5316320 46%,transparent 73%);filter:blur(22px)}.thanks-visual{position:absolute;top:200px;left:139px;width:268px;height:290px;animation:botHover 4s infinite ease-in-out}.thanks-visual img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 20px #0009)}.thanks-star{position:absolute;color:#ffd47a;z-index:2;animation:spin 7s linear infinite}.thanks-star-1{top:242px;left:93px;font-size:44px}.thanks-star-2{top:415px;right:84px;font-size:56px;animation-delay:-4s}.thanks-kicker{position:absolute;top:518px;left:0;right:0;text-align:center;font:bold 12px Arial;letter-spacing:3.5px;color:#ffc36d}.thanks-title{position:absolute;top:546px;width:100%;text-align:center;font:italic 1000 74px/.95 Impact,"Arial Black",Arial,sans-serif;letter-spacing:-3px;margin:0;text-shadow:0 6px 0 #841331,0 0 26px #ef215d70}.thanks-title span{color:#ff365d}.thanks-thai{position:absolute;top:628px;left:0;right:0;text-align:center;font-size:20px;font-weight:950;margin:0}.thanks-description{position:absolute;top:669px;left:0;right:0;text-align:center;color:#c2bdce;line-height:1.55;font-size:13px;margin:0}.countdown-card{position:absolute;top:751px;left:46px;right:46px;height:65px;display:flex;align-items:center;gap:14px;background:#ffffff17;border:1px solid #ffffff31;border-radius:14px;padding:10px 20px}.countdown-number{font:italic 950 40px Arial;color:#ff5b77;width:51px}.countdown-card div:last-child{display:flex;flex-direction:column;gap:5px}.countdown-card b{font-size:13px}.countdown-card span{font:bold 10px Arial;letter-spacing:1.2px;color:#afb3c8}.countdown-track{position:absolute;top:825px;left:48px;right:48px;height:3px;background:#ffffff24;border-radius:20px;overflow:hidden}.countdown-track div{height:100%;width:100%;background:#ff3b69;transition:width 1s linear}.restart-button{position:absolute;bottom:43px;left:46px;right:46px;height:61px;font-size:19px;border-radius:17px}
/* Keyboard */
.keyboard-overlay{position:absolute;bottom:0;left:0;right:0;height:345px;padding:13px 13px 15px;background:linear-gradient(#292532,#0c0e18);border-top:2px solid #fe547a;z-index:22;box-shadow:0 -18px 50px #000c;transform:translateY(102%);visibility:hidden;transition:transform .27s ease,visibility .27s;pointer-events:none}.keyboard-overlay.open{transform:translateY(0);visibility:visible;pointer-events:auto}.keyboard-heading{display:flex;justify-content:space-between;align-items:center;min-height:47px;gap:10px;margin-bottom:10px}.keyboard-title{font:bold 10px Arial;letter-spacing:1.7px;color:#ff7b99}.keyboard-preview{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:310px;height:21px}.keyboard-close{height:39px;min-width:107px;border:1px solid #ff627e;border-radius:11px;color:#fff;font-size:12px;font-weight:900;background:#dd1440}.keyboard-rows{display:flex;flex-direction:column;gap:7px;height:199px}.keyboard-row{display:flex;gap:5px;justify-content:center;height:59px}.key{flex:1;max-width:48px;min-width:0;height:56px;border-radius:9px;border:1px solid #606275;background:linear-gradient(#4b4b5b,#333240);font-size:19px;color:#f5f5fa;box-shadow:0 3px #1b1923}.key:active,.key.pressed{transform:translateY(2px);box-shadow:0 1px #14131d;background:#c02b50}.keyboard-actions{display:flex;gap:6px;margin-top:10px}.keyboard-actions button{height:45px;flex:1;border:1px solid #858598;border-radius:9px;background:#282734;color:#fff;font:bold 12px Arial}.keyboard-actions #keyboard-space{flex:2.2}.keyboard-actions #keyboard-backspace{background:#a92649;font-size:24px}.keyboard-overlay.numeric .keyboard-rows{max-width:360px;margin:auto}.keyboard-overlay.numeric .keyboard-row{height:59px}.keyboard-overlay.numeric .key{max-width:108px}
/* Modal */
.modal-backdrop,.idle-overlay{position:absolute;inset:0;background:#03030bcc;backdrop-filter:blur(12px);z-index:30;display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s,visibility .2s}.modal-backdrop.open,.idle-overlay.open{opacity:1;visibility:visible;pointer-events:auto}.modal-card{width:438px;border:1px solid #ffffff43;border-radius:28px;padding:35px 25px 25px;text-align:center;background:linear-gradient(165deg,#333046,#151724 80%);box-shadow:0 0 0 10px #ee255312,0 25px 75px #000}.modal-icon{font-size:67px;color:#ff5479;line-height:1}.modal-card h2{font-size:24px;margin:15px 0}.modal-card p{font-size:13px;line-height:1.8;color:#c9c5d3;margin:10px 0 22px}.modal-success{height:57px;width:100%;font-size:16px;border-radius:14px}.modal-retry,.modal-cancel{display:block;width:100%;margin-top:17px;background:none;border:0;color:#eee;font-weight:800;font-size:14px}.modal-cancel{color:#aaa0b7;font-size:12px;margin-top:14px}.idle-warning{width:440px;background:#242333;border:1px solid #fa5f7d;border-radius:24px;box-shadow:0 10px 40px #000b;padding:37px;display:flex;align-items:center;flex-direction:column;text-align:center;gap:19px}.idle-warning strong{font-size:26px}.idle-warning span{font-size:15px;line-height:1.6;color:#ded6e0}.idle-warning b{color:#ff6e8c}.idle-warning .primary-button{height:60px;width:100%}
/* Print-only */
#print-sheet{display:none}.printed-sticker{width:70mm;height:50mm;background:#fff;color:#190b19;position:relative;overflow:hidden;font-family:Arial,"Tahoma",sans-serif;padding:3.5mm 5mm;border:1mm solid #e81945;border-radius:2mm}.printed-bar{display:flex;justify-content:space-between;color:#de1b3e;font-weight:900;font-size:10pt}.printed-wow{font:italic 900 38pt Impact,"Arial Black",sans-serif;color:#ee2145;line-height:.82;letter-spacing:-2px;margin:3mm 0 1mm}.printed-wow small{display:block;font-size:12pt;font-style:normal;letter-spacing:1px;margin-top:1mm;color:#171427}.printed-type{font-size:13pt;font-weight:900;margin-top:2mm}.printed-code{border:1px dashed #999;display:inline-block;margin-top:2mm;padding:1mm 2mm;font-size:12pt;font-weight:900;letter-spacing:1px}.printed-footer{font-size:5.5pt;letter-spacing:1.3px;color:#e12249;margin-top:3mm}.printed-cut{position:absolute;right:-1mm;top:10mm;font-size:58pt;color:#ffe6ed;transform:rotate(-13deg)}
@media print{html,body{margin:0!important;width:70mm!important;height:50mm!important;background:#fff!important;overflow:visible!important}body>*:not(#print-sheet){display:none!important}#print-sheet{display:block!important;position:absolute;top:0;left:0;visibility:visible!important}.printed-sticker{box-sizing:border-box;print-color-adjust:exact;-webkit-print-color-adjust:exact}@page{size:70mm 50mm;margin:0}}
/* Animation */
@keyframes ambientFloat{from{transform:translate(-30px,-25px)}to{transform:translate(35px,45px)}}@keyframes lightScan{0%,100%{translate:-100px 0;opacity:.1}50%{translate:100px 0;opacity:.35}}@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}@keyframes heroPulse{0%,100%{transform:translateY(0) skewX(-8deg)}50%{transform:translateY(-6px) skewX(-8deg)}}@keyframes shimmer{0%,60%,100%{transform:skew(-25deg) translateX(-160px)}80%{transform:skew(-25deg) translateX(560px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes carHover{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(-1deg)}}@keyframes orbitShift{from{transform:rotateX(65deg) rotate(-9deg)}to{transform:rotateX(65deg) rotate(9deg)}}@keyframes floatOffer{0%,100%{transform:rotate(-15deg) translateY(0)}50%{transform:rotate(-11deg) translateY(-16px)}}@keyframes botHover{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}@keyframes buttonShine{0%,60%,100%{transform:translateX(-120%)}82%{transform:translateX(120%)}}@keyframes artFloat{0%,100%{transform:translateY(2px)}50%{transform:translateY(-8px)}}@keyframes ticketAppear{from{opacity:0;transform:translateY(190px) rotateY(110deg) rotate(-18deg) scale(.4)}to{opacity:1;transform:rotate(-6deg) rotateY(-5deg) scale(1)}}@keyframes ticketFloat{0%,100%{transform:rotate(-6deg) rotateY(-5deg) translateY(0)}50%{transform:rotate(-3deg) rotateY(6deg) translateY(-10px)}}@keyframes confettiFall{0%{opacity:1;transform:translate3d(0,-15px,0) rotate(0)}94%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift,40px),380px,0) rotate(800deg)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
/* Keep the vehicle silhouette visually unobstructed above the call-to-action. */
.landing-promo{display:none}
.landing-bottom{height:92px;bottom:56px}
