.scratch-dialog {width:min(94vw,600px);padding:30px;border:1px solid #ffffff20;border-radius:28px;background:#111113;box-shadow:0 35px 100px #000b;color:#f5f5f7;}
.scratch-dialog[open] {animation:scratch-open .35s cubic-bezier(.2,.7,.2,1);}
.scratch-dialog::backdrop {background:#000b;backdrop-filter:blur(12px);}
.scratch-dialog .modal-heading {border:0;margin-bottom:14px;padding:0;}
.scratch-dialog .modal-heading .eyebrow {font-size:10px;letter-spacing:2px;color:#929298;}
.scratch-dialog .modal-close {border:1px solid #ffffff12;border-radius:50%;background:#ffffff06;margin:0;}
.scratch-dialog>h2 {font-size:42px;font-weight:700;letter-spacing:-1.8px;line-height:1.1;text-transform:none;}
.scratch-dialog .modal-subtitle {font-size:13px;color:#a1a1a8;margin:12px 0 26px;}
.scratch-dialog .scratch-area,.scratch-dialog .scratch-area.has-prize-image {height:340px;border:1px solid #ffffff12;border-radius:22px;background:radial-gradient(ellipse at 50% 20%,#c9ff6819,#171b16 75%);}
.scratch-dialog .scratch-prize {padding:24px;}
.scratch-dialog .prize-decoration {border-radius:50%;width:54px;height:54px;border-color:#c9ff6822;}
.scratch-dialog .prize-image {max-width:100%;width:auto;height:150px;max-height:150px;border-radius:10px;margin-bottom:20px;filter:none;}
.scratch-dialog .prize-eyebrow {font-size:10px;letter-spacing:1.6px;color:#b1c79b;}
.scratch-dialog .scratch-prize h3,.scratch-dialog .scratch-prize.has-prize-image h3 {font-size:30px;font-weight:650;line-height:1.15;letter-spacing:-1px;color:#f5f5f7;}
.scratch-dialog .scratch-prize p:empty {display:none;}
.scratch-dialog .scratch-progress-row {font-size:12px;margin-top:21px;color:#a1a1a8;}
.scratch-dialog progress {height:3px;border-radius:5px;background:#ffffff12;margin-top:12px;}
.scratch-dialog progress::-webkit-progress-bar {background:#ffffff12;}
.scratch-dialog progress::-webkit-progress-value {transition:width .15s ease;}
.scratch-dialog .reveal-button {border-radius:24px;min-height:44px;padding:12px;margin-top:16px;}
.scratch-dialog .reveal-button>span {font-size:12px;font-weight:500;}
.scratch-dialog .modal-loading {padding:65px 20px;color:#a1a1a8;font-size:13px;}
.scratch-dialog .result-message {font-size:13px;text-align:center;color:#b9c5ad;margin-top:21px;}
.scratch-dialog .modal-done {border-radius:28px;justify-content:center;font-size:13px;padding:15px 22px;margin-top:18px;}
.scratch-dialog .is-revealed .scratch-prize {animation:prize-arrive .65s cubic-bezier(.2,.7,.2,1) both;}
.scratch-dialog #scratch-result:not([hidden]) {animation:scratch-open .4s .1s ease backwards;}
.scratch-dialog .scratch-area canvas {transition:opacity .5s ease;}
@keyframes scratch-open {from{opacity:0;transform:translateY(18px) scale(.97);}to{opacity:1;transform:none;}}
@keyframes prize-arrive {from{opacity:.3;transform:translateY(12px) scale(.94);}to{opacity:1;transform:none;}}
@media(max-width:600px){.scratch-dialog{padding:22px 18px;border-radius:24px;}.scratch-dialog>h2{font-size:35px;letter-spacing:-1.4px;}.scratch-dialog .scratch-area,.scratch-dialog .scratch-area.has-prize-image{height:310px;border-radius:18px;}.scratch-dialog .prize-image{height:125px;max-height:125px;}.scratch-dialog .scratch-prize h3,.scratch-dialog .scratch-prize.has-prize-image h3{font-size:26px;}.scratch-dialog .modal-subtitle{margin-bottom:22px;}}
@media(prefers-reduced-motion:reduce){.scratch-dialog[open],.scratch-dialog .is-revealed .scratch-prize,.scratch-dialog #scratch-result:not([hidden]){animation:none;}.scratch-dialog .scratch-area canvas,.scratch-dialog progress::-webkit-progress-value{transition:none;}}
