:root { color-scheme:dark; font-family:Arial,'Yu Gothic','Meiryo',sans-serif; color:#ffe1a3; background:#080604; }
* { box-sizing:border-box; }
body { margin:0; min-width:320px; min-height:100svh; display:flex; flex-direction:column; }
.back { display:flex; align-items:center; gap:8px; width:min(100%,2400px); margin:0 auto; padding:10px 16px 4px; text-decoration:none; color:#e4d9bf; font-size:12px; letter-spacing:1px; }
.back span { font-size:18px; line-height:1; }
.back:focus-visible { outline:3px solid #fff7d5; outline-offset:4px; }
a { -webkit-tap-highlight-color:transparent; }
button { font:inherit; }
button:focus-visible { outline:3px solid #fff7d5; outline-offset:6px; }
.page { width:100%; max-width:2400px; margin:auto; container-type:inline-size; flex:1; display:flex; flex-direction:column; }
.scene { position:relative; flex:1 0 auto; width:100%; aspect-ratio:16/9; overflow:hidden; isolation:isolate; background:#080503 url('./assets/lottery-stage-hd.webp') center/100% 100% no-repeat; }
.scene::after { content:''; position:absolute; z-index:-1; inset:0; pointer-events:none; background:linear-gradient(180deg,transparent 85%,#080604bb); }
.gold { color:#f5cd80; background:linear-gradient(#fff1bb 5%,#f6cf7c 43%,#d49a42 70%,#ffe4a0); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; filter:drop-shadow(0 2px 2px #281200); }
.heading { position:absolute; z-index:3; top:7.6%; left:4%; width:36%; padding:0.5cqw 1.8cqw 1.2cqw; text-align:center; background:radial-gradient(ellipse at 65% 50%,#080604f5 35%,#080604d9 62%,transparent 78%); }
.heading::before,.heading::after { content:''; position:absolute; height:1px; left:6%; right:6%; background:linear-gradient(90deg,transparent,#dfb76d,transparent); }
.heading::before { top:-.6cqw; } .heading::after { bottom:0; }
h1 { font-size:2.75cqw; line-height:1.25; white-space:nowrap; margin:0 0 .55cqw; font-weight:900; letter-spacing:-.1cqw; }
.heading p { margin:0; font-size:1.08cqw; white-space:nowrap; color:#f7dca6; }
.laurel { position:absolute; top:-.7cqw; width:3.4cqw; height:7.5cqw; fill:#f2d38c; color:#f2d38c; filter:drop-shadow(0 2px 2px #4c2e0a); }
.laurel.left { left:-1.4cqw; } .laurel.right { right:-1.4cqw; transform:scaleX(-1); }
.grand-summary { position:absolute; left:3.8%; top:22.5%; width:27%; height:16%; display:flex; align-items:center; gap:1.3cqw; padding:1cqw; border:1px solid #a57d3d99; border-radius:1.7cqw; background:linear-gradient(100deg,#100b04c9,#060503b3); box-shadow:inset 0 0 0 3px #e6b25515,0 0 0 3px #05040388; }
.medal { position:relative; display:grid; place-items:center; flex-shrink:0; width:7.2cqw; height:7.2cqw; padding-bottom:.25cqw; color:#171006; font-weight:900; font-size:2.1cqw; isolation:isolate; }
.medal::before { content:''; position:absolute; z-index:-1; inset:-5% -5% -18%; background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20112%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22gold%22%20x2%3D%22.7%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23fff4c7%22%2F%3E%3Cstop%20offset%3D%22.42%22%20stop-color%3D%22%23efd398%22%2F%3E%3Cstop%20offset%3D%22.75%22%20stop-color%3D%22%23eac17b%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23c89044%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22rim%22%20x2%3D%221%22%20y2%3D%221%22%3E%3Cstop%20stop-color%3D%22%23fff4c4%22%2F%3E%3Cstop%20offset%3D%22.5%22%20stop-color%3D%22%23cfa263%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23ffe0a0%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22ribbon%22%3E%3Cstop%20stop-color%3D%22%23b62a0c%22%2F%3E%3Cstop%20offset%3D%22.45%22%20stop-color%3D%22%23ff7933%22%2F%3E%3Cstop%20offset%3D%22.65%22%20stop-color%3D%22%23e44917%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23a6290c%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M22%2072%208%20105%2024%20102%2032%20111%2047%2081%20M55%2081%2069%20111%2078%20102%2094%20105%2079%2072%22%20fill%3D%22url%28%23ribbon%29%22%20stroke%3D%22%23eab45a%22%20stroke-width%3D%221.2%22%2F%3E%3Cpath%20d%3D%22m24%2079-10%2024%2011-4%207%208%2011-25m16%200%2011%2025%207-8%2011%204-11-24%22%20fill%3D%22none%22%20stroke%3D%22%23ffca70%22%20stroke-width%3D%221.4%22%2F%3E%3Cpolygon%20points%3D%2250.00%2C4.40%2051.92%2C4.03%2053.92%2C3.17%2056.00%2C2.40%2058.06%2C2.30%2059.95%2C3.10%2061.65%2C4.53%2063.23%2C6.03%2064.91%2C7.03%2066.84%2C7.34%2069.02%2C7.22%2071.24%2C7.21%2073.20%2C7.82%2074.71%2C9.21%2075.81%2C11.14%2076.79%2C13.08%2078.03%2C14.60%2079.73%2C15.55%2081.82%2C16.18%2083.91%2C16.93%2085.54%2C18.17%2086.49%2C20.00%2086.86%2C22.19%2087.12%2C24.35%2087.76%2C26.20%2089.04%2C27.68%2090.78%2C28.98%2092.49%2C30.40%2093.60%2C32.13%2093.86%2C34.17%2093.47%2C36.35%2092.97%2C38.47%2092.94%2C40.43%2093.63%2C42.26%2094.83%2C44.08%2095.95%2C45.99%2096.40%2C48.00%2095.95%2C50.01%2094.83%2C51.92%2093.63%2C53.74%2092.94%2C55.57%2092.97%2C57.53%2093.47%2C59.65%2093.86%2C61.83%2093.60%2C63.87%2092.49%2C65.60%2090.78%2C67.02%2089.04%2C68.32%2087.76%2C69.80%2087.12%2C71.65%2086.86%2C73.81%2086.49%2C76.00%2085.54%2C77.83%2083.91%2C79.07%2081.82%2C79.82%2079.73%2C80.45%2078.03%2C81.40%2076.79%2C82.92%2075.81%2C84.86%2074.71%2C86.79%2073.20%2C88.18%2071.24%2C88.79%2069.02%2C88.78%2066.84%2C88.66%2064.91%2C88.97%2063.23%2C89.97%2061.65%2C91.47%2059.95%2C92.90%2058.06%2C93.70%2056.00%2C93.60%2053.92%2C92.83%2051.92%2C91.97%2050.00%2C91.60%2048.08%2C91.97%2046.08%2C92.83%2044.00%2C93.60%2041.94%2C93.70%2040.05%2C92.90%2038.35%2C91.47%2036.77%2C89.97%2035.09%2C88.97%2033.16%2C88.66%2030.98%2C88.78%2028.76%2C88.79%2026.80%2C88.18%2025.29%2C86.79%2024.19%2C84.86%2023.21%2C82.92%2021.97%2C81.40%2020.27%2C80.45%2018.18%2C79.82%2016.09%2C79.07%2014.46%2C77.83%2013.51%2C76.00%2013.14%2C73.81%2012.88%2C71.65%2012.24%2C69.80%2010.96%2C68.32%209.22%2C67.02%207.51%2C65.60%206.40%2C63.87%206.14%2C61.83%206.53%2C59.65%207.03%2C57.53%207.06%2C55.57%206.37%2C53.74%205.17%2C51.92%204.05%2C50.01%203.60%2C48.00%204.05%2C45.99%205.17%2C44.08%206.37%2C42.26%207.06%2C40.43%207.03%2C38.47%206.53%2C36.35%206.14%2C34.17%206.40%2C32.13%207.51%2C30.40%209.22%2C28.98%2010.96%2C27.68%2012.24%2C26.20%2012.88%2C24.35%2013.14%2C22.19%2013.51%2C20.00%2014.46%2C18.17%2016.09%2C16.93%2018.18%2C16.18%2020.27%2C15.55%2021.97%2C14.60%2023.21%2C13.08%2024.19%2C11.14%2025.29%2C9.21%2026.80%2C7.82%2028.76%2C7.21%2030.98%2C7.22%2033.16%2C7.34%2035.09%2C7.03%2036.77%2C6.03%2038.35%2C4.53%2040.05%2C3.10%2041.94%2C2.30%2044.00%2C2.40%2046.08%2C3.17%2048.08%2C4.03%22%20fill%3D%22url%28%23gold%29%22%20stroke%3D%22url%28%23rim%29%22%20stroke-width%3D%222.8%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2248%22%20r%3D%2240.8%22%20fill%3D%22none%22%20stroke%3D%22%23fff0bd%22%20stroke-width%3D%221.2%22%2F%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2248%22%20r%3D%2238.9%22%20fill%3D%22none%22%20stroke%3D%22%23c99d5c%22%20stroke-opacity%3D%22.6%22%20stroke-width%3D%22.65%22%2F%3E%3Cpath%20d%3D%22m24%2078%203%207%207-2m42-5-3%207-7-2%22%20fill%3D%22none%22%20stroke%3D%22%23fff0b4%22%20stroke-width%3D%221.8%22%2F%3E%3C%2Fsvg%3E") center/100% 100% no-repeat; filter:drop-shadow(0 .15cqw .18cqw #0008); }
.grand-summary h2 { margin:0 0 .45cqw; font-size:2.05cqw; white-space:nowrap; }
.grand-summary p { margin:0; font-size:.85cqw; white-space:nowrap; }
.wheel-wrap { position:absolute; z-index:2; width:40.8%; aspect-ratio:1; left:29.4%; top:6.9%; filter:drop-shadow(0 1cqw 1.3cqw #000b); }
.wheel-rim { position:absolute; inset:0; border-radius:50%; background:conic-gradient(from 15deg,#65300b,#fff0b2 10%,#c07725 17%,#ffdf80 24%,#70400e 34%,#ffdd7b 43%,#9b4c08 49%,#ffe3a0 57%,#ab621b 65%,#ffedba 74%,#8e420d 80%,#ffe5a0 90%,#65300b); box-shadow:inset 0 0 0 .22cqw #ffe4a0,inset 0 0 .9cqw #ffbd5977,0 0 .7cqw #f0a13499; }
.wheel-rim::before { content:''; position:absolute; inset:3%; border-radius:50%; background:linear-gradient(140deg,#311703,#090502 35%,#5e300d 72%,#110903); border:.2cqw solid #70400e; box-shadow:inset 0 0 0 .25cqw #080501,0 0 0 .14cqw #ffe8a2; }
.rotor { position:absolute; inset:6.6%; border-radius:50%; overflow:hidden; background:conic-gradient(from -30deg,#100b06 0deg 60deg,#24160a 60deg 120deg,#100b06 120deg 180deg,#201308 180deg 240deg,#100b06 240deg 300deg,#24160a 300deg); box-shadow:0 0 0 .23cqw #f5bf60,0 0 .9cqw #c68128; }
.sector-lines { position:absolute; inset:0; width:100%; height:100%; }
.sector-lines line { stroke:#d9ad5f; stroke-width:.65; filter:drop-shadow(0 0 1px #ffdb83); }
.prize { position:absolute; width:31%; height:28%; text-align:center; transform:translate(-50%,-50%); display:flex; flex-direction:column; align-items:center; justify-content:center; mix-blend-mode:screen; }
.product { width:100%; aspect-ratio:1.5; background-image:url('./assets/lottery-prizes-hd.webp'); background-size:300% auto; background-repeat:no-repeat; mix-blend-mode:screen; }
.product.car { background-position:0 12.766%; } .product.phone { background-position:50% 12.766%; } .product.laptop { background-position:100% 12.766%; }
.product.digital { background-position:0 87.234%; } .product.travel { background-position:50% 87.234%; } .product.cash { background-position:100% 87.234%; }
.prize b { display:block; font-weight:600; font-size:1.03cqw; line-height:1.35; white-space:nowrap; text-shadow:0 1px 3px #000; }
.prize small { display:block; font-size:.59cqw; white-space:nowrap; margin-top:.2cqw; }
.p0 { left:50%; top:17%; width:35%; } .p1 { left:79%; top:34%; } .p2 { left:79%; top:68%; }
.p3 { left:50%; top:84%; } .p4 { left:21%; top:68%; } .p5 { left:21%; top:34%; }
.lamp { position:absolute; width:2.5%; height:2.5%; border-radius:50%; transform:translate(-50%,-50%); background:#fffce2; box-shadow:0 0 .35cqw .18cqw #ffe191,0 0 1cqw .35cqw #f7a530,0 0 1.8cqw #ffad35; }
.spin { position:absolute; z-index:4; left:36.8%; top:36.8%; width:26.4%; height:26.4%; border-radius:50%; padding:1cqw .2cqw 0; border:.55cqw solid #ffd079; outline:.12cqw solid #9f621e; background:radial-gradient(ellipse at 50% 15%,#976128,#392009 70%,#221102); box-shadow:inset 0 0 0 .18cqw #ffedb8,inset 0 0 .6cqw #ffbc6480,0 0 .3cqw .1cqw #ffbb5099,0 .4cqw .7cqw #0009; color:#ffdf96; cursor:pointer; text-shadow:0 2px 2px #422307; font-size:1.4cqw; font-weight:800; line-height:1.25; }
.spin::before { content:''; position:absolute; left:39%; top:-31%; width:22%; height:44%; background:linear-gradient(90deg,#a75c15,#fff9cb 45%,#ffd47b 53%,#ae641d); clip-path:polygon(50% 0,100% 52%,50% 100%,0 52%); filter:drop-shadow(0 0 5px #ffbd57); }
.spin .crown { position:absolute; top:12%; left:0; width:100%; font-size:1.8cqw; color:#ffe6a0; }
.spin:hover:enabled { filter:brightness(1.16); } .spin:disabled { cursor:default; }
.showcase { position:absolute; left:71.5%; top:19.5%; width:26.5%; height:40%; text-align:center; }
.showcase h2 { display:flex; flex-wrap:nowrap; white-space:nowrap; align-items:center; justify-content:space-between; padding:0 2.2cqw; margin:0; font-size:3.3cqw; line-height:1.2; font-weight:900; }
.showcase h2 .gold { flex-shrink:0; background-image:linear-gradient(165deg,#f4df9e 12%,#ddba70 52%,#c4954b 78%,#e3c17a); filter:drop-shadow(0 1px 1px #241707); }
.showcase-laurel { width:1.8cqw; height:4cqw; flex-shrink:0; fill:#d8bd7c; color:#b99a5f; filter:drop-shadow(0 1px 1px #241707); }
.showcase-laurel.right { transform:scaleX(-1); }
.showcase .mobile-car { display:none; }
.nameplate { position:absolute; left:13%; right:7%; bottom:0; padding:.5cqw .3cqw; border:.16cqw solid #d7ad62; border-radius:1cqw; background:linear-gradient(#30200ed9,#090604eb); box-shadow:inset 0 0 0 .17cqw #0c0804,0 0 0 .1cqw #553416,0 0 1cqw #dea4394d; }
.nameplate h3 { font-size:1.6cqw; margin:0 0 .2cqw; } .nameplate p { font-size:.84cqw; margin:0; }
.prize-strip { position:absolute; z-index:3; left:14.2%; right:14%; top:79.2%; height:16.2%; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:.17cqw solid #a67d40; border-radius:1.5cqw; padding:.25cqw; background:#090704dc; box-shadow:0 0 0 .15cqw #100c07,inset 0 0 0 .08cqw #efd9a557,0 .4cqw 1cqw #000; }
.prize-card { margin:0; display:flex; align-items:center; justify-content:center; flex-direction:column; border:1px solid #94734688; border-radius:1.05cqw; background:linear-gradient(120deg,#5b421b22,#09070488); }
.prize-card .product { width:65%; height:auto; aspect-ratio:1.5; }
.prize-card figcaption { font-size:1.03cqw; padding:.2cqw 0; white-space:nowrap; }
.preview-note { margin:0; padding:10px 16px; text-align:center; color:#a99169; background:#080604; font-size:11px; line-height:1.6; letter-spacing:.03em; }
dialog { width:min(430px,calc(100vw - 32px)); padding:30px; text-align:center; border:1px solid #d5a755; border-radius:20px; background:radial-gradient(ellipse at top,#422b12,#100b06 70%); color:#f8d798; box-shadow:0 0 70px #b87e2438; }
dialog::backdrop { background:#000b; backdrop-filter:blur(7px); }
dialog .overline { font-size:11px; letter-spacing:4px; color:#bea47b; margin:0 0 16px; }
dialog h2 { font-size:23px; margin:12px 0; }
dialog .product { width:230px; max-width:100%; margin:auto; }
dialog p { font-size:12px; line-height:1.8; color:#c6b398; }
dialog button { margin-top:10px; width:100%; padding:12px; border:1px solid #f3cf88; border-radius:8px; background:linear-gradient(#fce1a3,#c68f3c); color:#251507; font-weight:700; cursor:pointer; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media (max-width:700px) {
  .scene { height:235cqw; aspect-ratio:auto; background-image:url('./assets/lottery-stage-sm.webp'); background-size:auto 140cqw; background-position:50% 10cqw; background-color:#080604; }
  .scene::after { background:linear-gradient(180deg,#08060411 25%,#080604 65%); }
  .heading { left:7%; top:5cqw; width:86%; padding:2cqw 3cqw 3cqw; }
  h1 { font-size:6.3cqw; margin-bottom:2cqw; } .heading p { font-size:2.55cqw; }
  .laurel { width:7.5cqw; height:16.5cqw; top:-1cqw; } .laurel.left { left:-5cqw; } .laurel.right { right:-5cqw; }
  .grand-summary { left:12%; top:26cqw; width:76%; height:17cqw; justify-content:center; gap:4cqw; border-radius:3cqw; }
  .medal { width:13cqw; height:13cqw; font-size:4cqw; } .grand-summary h2 { font-size:4.7cqw; } .grand-summary p { font-size:2.1cqw; }
  .wheel-wrap { left:4%; top:48cqw; width:92%; }
  .prize b { font-size:2.45cqw; } .prize small { font-size:1.35cqw; }
  .spin { font-size:3.4cqw; border-width:1.2cqw; padding-top:3cqw; } .spin .crown { font-size:4.5cqw; }
  .wheel-rim { box-shadow:inset 0 0 0 .5cqw #ffe4a0,0 0 2cqw #e0a032; }
  .showcase { left:7%; top:147cqw; width:86%; height:44cqw; border:1px solid #866332; border-radius:4cqw; background:radial-gradient(ellipse at bottom,#68441750,#0e0a05); }
  .showcase h2 { position:absolute; left:5%; top:7cqw; padding:0; font-size:7cqw; } .showcase-laurel { display:none; }
  .showcase .mobile-car { display:block; position:absolute; right:0; top:0; width:63%; }
  .nameplate { bottom:3cqw; left:6%; right:6%; border-radius:2cqw; padding:1cqw; } .nameplate h3 { font-size:4cqw; } .nameplate p { font-size:2.1cqw; }
  .prize-strip { left:4%; right:4%; top:199cqw; height:29cqw; border-radius:3cqw; padding:1cqw; }
  .prize-card { border-radius:2cqw; } .prize-card .product { width:94%; height:auto; aspect-ratio:1.5; }
  .prize-card figcaption { font-size:2.25cqw; white-space:normal; line-height:1.5; text-align:center; padding:1cqw; }
}

    #eligibility{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:34px 30px 28px;overflow:auto;border:1px solid #b18a4a;border-radius:22px;background:radial-gradient(ellipse at 50% 0%,#49301755,transparent 60%),linear-gradient(145deg,#21190e,#110e09 75%);color:#f5ddb0;box-shadow:inset 0 0 0 4px #20180f,0 28px 100px #000b}
    #eligibility::backdrop{background:#050402c4;backdrop-filter:blur(5px)}
    #eligibility .dismiss{position:absolute;right:12px;top:10px;width:36px;height:36px;padding:0;margin:0;border:0;background:none;color:#a89574;font:28px/1 Arial;box-shadow:none;border-radius:50%}
    #eligibility .dismiss:hover{color:#ffe8b5;background:#ffffff08}
    .calendar-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border:1px solid #b08b4b80;border-radius:50%;background:radial-gradient(circle,#7f592233,#2a2114);box-shadow:0 0 35px #ba8b2920}
    .calendar-icon svg{width:32px;height:32px;stroke:#e8c27c;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
    #eligibility .eyebrow{font-size:11px;letter-spacing:.22em;color:#ba9c69;margin:0 0 10px}
    #eligibility h2{font-size:22px;line-height:1.55;letter-spacing:.01em;color:#ffe4ae;margin:0 0 12px}
    #eligibility-copy{font-size:13px;line-height:1.9;margin:0;color:#cabc9e}
    #eligibility-copy span{color:#e6ca91;white-space:nowrap}
    .streak-card{margin:25px 0 18px;padding:21px 24px 18px;border:1px solid #72572f70;border-radius:14px;background:linear-gradient(120deg,#4a35191e,#08070555)}
    #eligibility .streak-label{font-size:12px;letter-spacing:.07em;color:#bca884;margin:0 0 9px}
    .day-count{display:flex;justify-content:center;align-items:baseline;gap:9px;font-family:Arial,sans-serif;line-height:1.15;margin-bottom:18px}
    .day-count strong{font-size:56px;font-weight:600;letter-spacing:-.045em;color:#f7d38c;text-shadow:0 2px 18px #dba64420}
    .day-count>span{font-size:24px;color:#8f7c5e}
    .day-count .unit{font-size:13px;margin-left:7px}
    #day-progress{display:block;width:100%;height:5px;appearance:none;border:0;border-radius:5px;overflow:hidden;background:#3b3020;color:#edc477}
    #day-progress::-webkit-progress-bar{background:#3b3020;border-radius:5px}
    #day-progress::-webkit-progress-value{border-radius:5px;background:linear-gradient(90deg,#b78535,#f7d797)}
    #day-progress::-moz-progress-bar{background:#edc477;border-radius:5px}
    #eligibility #remaining-copy{margin:14px 0 0;color:#d3bf9a;font-size:13px}
    #remaining-days{font-size:18px;font-weight:600;color:#f3d18c;margin:0 3px}
    #eligibility .encouragement{font-size:12px;line-height:1.8;margin:0 0 22px;color:#a9997b}
    #eligibility .acknowledge{width:100%;margin:0;padding:14px 12px;border:1px solid #f4d69b;border-radius:10px;background:linear-gradient(115deg,#f7dda3,#d4aa60);color:#33220c;font-size:14px;letter-spacing:.08em;box-shadow:inset 0 1px 0 #fff7cf,0 5px 20px #0003}
    #eligibility .acknowledge:hover{filter:brightness(1.08)}
    button:focus-visible,select:focus-visible{outline:2px solid #fff0c7;outline-offset:4px}
    @media(max-width:420px){#eligibility{padding:30px 20px 22px;border-radius:18px}#eligibility h2{font-size:19px}.streak-card{padding:20px;margin-top:22px}#eligibility-copy{font-size:12px}#eligibility .encouragement{font-size:11px}}
