.lottery-overlay{position:fixed;inset:0;z-index:6000;display:flex;align-items:center;justify-content:center;padding:10px;background:rgba(29,17,12,.74);backdrop-filter:blur(6px);overflow-y:auto}
.lottery-card{width:min(520px,100%);max-height:calc(100dvh - 20px);overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;position:relative;background:linear-gradient(144deg,#fff4dc 0%,#ffefd0 55%,#f8dca9 100%);color:#633a20;border:4px solid #94572e;border-radius:27px;padding:0;box-shadow:inset 0 0 0 3px #f9d49b,inset 0 -8px 12px #b17b3b22,0 8px 0 #512b1c,0 21px 45px #1009019c;scrollbar-width:thin;scrollbar-color:#b8895b transparent;font:15px/1.45 'Segoe UI',Arial,sans-serif;text-align:center}
.lottery-card:focus{outline:none}
.lottery-card .lottery-hero{height:139px;position:relative;overflow:hidden;border-radius:21px 21px 45% 45% / 21px 21px 12% 12%;background:radial-gradient(ellipse at 49% 92%,#a9693e 0%,#5e3a2a 62%,#37251e 100%);border-bottom:4px solid #d8a066;pointer-events:none}
.lottery-card .lottery-hero:after{content:'';position:absolute;inset:auto 0 0;height:28px;background:linear-gradient(transparent,#e2af72b8)}
.lottery-hero-illustration{position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:490px;max-width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 3px 2px #24150b5c)}
.lottery-inner{position:relative;padding:9px 24px 16px;z-index:1}
.lottery-eyebrow{display:block;letter-spacing:.045em;font-weight:900;color:#845129;font-size:12px;line-height:1.35;background:linear-gradient(#ffe5ba,#f3c995);border:1px solid #ca9864;border-radius:100px;padding:7px 10px;margin:0 4px 8px;box-shadow:inset 0 2px 1px #fff8e5,0 2px 2px #9d62354d}
.lottery-card h2{position:relative;font:900 clamp(23px,3.6vw,29px)/1.16 'Patrick','Trebuchet MS',sans-serif;letter-spacing:.006em;color:#64300f;text-shadow:0 2px 0 #fff2ce;margin:2px 0 12px;padding:8px 12px;background:linear-gradient(175deg,#fff0cb,#f4ca8b);border:2px solid #d5a061;border-radius:17px;box-shadow:inset 0 3px 2px #ffffffcf,inset 0 -3px 0 #d69a55,0 4px 5px #8c552841}
.lottery-card p{margin:9px 0;line-height:1.5}
.lottery-card .lottery-dialogue{color:#63361e;font-size:14.5px;font-weight:650;padding:13px 14px;margin:0 0 11px;border:1px solid #f3cf94;border-radius:20px;background:linear-gradient(150deg,#fffaf1,#fff1d7);box-shadow:inset 0 2px 0 #ffffff,0 4px 10px #a56d3026}
.lottery-card .lottery-small{font-size:12.5px;color:#81553a;margin:9px 1px 5px;line-height:1.48}
.lottery-flourish{height:13px;color:#d39a55;font-size:13px;line-height:13px;margin:3px 0 8px;position:relative}
.lottery-flourish:before,.lottery-flourish:after{content:'';position:absolute;top:6px;width:26%;height:1px;background:linear-gradient(90deg,transparent,#dba66b)}
.lottery-flourish:before{right:54%}.lottery-flourish:after{left:54%;transform:scaleX(-1)}
.lottery-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;text-align:left;margin:6px 0 14px}
.lottery-picks label{display:block;min-width:0;font-weight:800;font-size:12px;color:#65351b}
.lottery-pick-label{display:flex;align-items:center;gap:5px;min-height:31px;line-height:1.17}
.lottery-pick-label>span{font-size:17px;line-height:1.25;flex:none}
.lottery-picks select{font:800 20px 'Segoe UI',Arial,sans-serif;display:block;box-sizing:border-box;width:100%;border:2px solid #ad713d;appearance:auto;background:linear-gradient(#fffdf6,#fdf0d5);border-radius:13px;padding:10px 9px;margin-top:5px;color:#693917;min-height:49px;box-shadow:inset 0 3px 0 #ffffffcf,inset 0 -3px 0 #edd1a4,0 4px 0 #bf8a53,0 6px 10px #a8743933;cursor:pointer}
.lottery-picks select:focus-visible{outline:3px solid #70924f;outline-offset:2px}
.lottery-actions{display:grid;gap:11px}
.lottery-card button{border:0;border-radius:13px;padding:12px 14px;font-size:14px;font-weight:900;cursor:pointer;min-height:44px;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}
.lottery-card button:focus-visible{outline:3px solid #714623;outline-offset:3px}
.lottery-card button:active{transform:translateY(3px)}
.lottery-card .lottery-buy{position:relative;display:flex;align-items:center;justify-content:center;gap:11px;min-height:56px;font:900 19px/1.25 'Patrick','Trebuchet MS',sans-serif;color:#fff8e5;text-shadow:0 2px 1px #395527;background:linear-gradient(180deg,#99be65 0%,#638f37 48%,#50732e 100%);border:2px solid #446b2b;box-shadow:inset 0 3px 2px #def7a57a,inset 0 -4px 0 #31502185,0 5px 0 #64452b,0 7px 10px #4a2d1a4d}
.lottery-card .lottery-buy:active{box-shadow:inset 0 3px 2px #def7a57a,0 2px 0 #64452b}
.lottery-button-ticket{font-size:25px;filter:drop-shadow(0 2px 0 #29451944)}
.lottery-button-sparkle{color:#f9eaa6}
.lottery-card .lottery-skip{background:linear-gradient(#fce4c1,#edc18f);color:#754222;border:2px solid #d7a36a;box-shadow:inset 0 2px 1px #fffbef,0 4px 0 #bf8952,0 6px 8px #a06d363c;min-height:48px}
.lottery-card .lottery-close{display:block;margin:14px auto 0 0;min-width:158px;min-height:39px;background:linear-gradient(#fff0d7,#f2d1a9);color:#734423;font-size:13px;border:1px solid #d8a779;box-shadow:inset 0 2px 0 #fff7e4,0 3px 0 #bc8f60}
.lottery-card .lottery-close span{font-size:17px;vertical-align:-1px;margin-right:3px}
.lottery-draw-card .lottery-hero{height:100px}
.lottery-draw-card .lottery-hero-illustration{width:370px;bottom:-32px}
.lottery-draw-card .lottery-inner{padding-bottom:18px}
.lottery-draw-card .lottery-content>p:first-child{font-size:14px}
@media (hover:hover){.lottery-card button:hover{filter:brightness(1.065)}}
@media(prefers-reduced-motion:reduce){.lottery-card button{transition:none}}
.lottery-results{display:grid;gap:7px;margin:15px 0;text-align:left}
.lottery-results>span{display:flex;align-items:center;gap:9px;justify-content:space-between;border-radius:10px;padding:9px 12px;background:#f2e3c7}
.lottery-results b{font:800 23px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.12em;color:#914b36}
.lottery-results b.lottery-multi{font-size:15px;letter-spacing:.03em;white-space:normal;text-align:center;line-height:1.5}
.lottery-results .lottery-bonus{background:#e9e9cf}
.lottery-results small{font-size:12px}
.lottery-tickets{display:grid;gap:8px;margin:12px 0}
.lottery-ticket{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fffaf0;border:1px dashed #b98b55;border-radius:10px;padding:10px 12px;text-align:left}
.lottery-ticket span{display:grid;gap:2px}
.lottery-ticket small{font-size:12px;color:#735638}
.lottery-ticket b{font:800 21px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.12em}
.lottery-ticket strong{font-size:12px;white-space:nowrap}
.lottery-ticket button{background:#718f52;color:#fff;padding:9px;font-size:12px}
.lottery-hub{max-width:950px;box-sizing:border-box;width:100%;margin:0 auto;padding:22px;line-height:1.5;color:#603c24;background:linear-gradient(130deg,#fff2d6,#f4ddb6);border:3px solid #c29358;border-radius:17px;box-shadow:inset 0 0 0 3px #fff8e7,0 7px 0 #3a21165e;font-family:var(--font-body,'Segoe UI',Arial,sans-serif)}
.lottery-hub *{opacity:1;filter:none}
.lottery-hub h3{font-size:24px;color:#603b22;margin:15px 0 10px}
.lottery-hub-intro{border-bottom:1px dashed #b88c57;padding-bottom:10px}
.lottery-hub-intro>small,.lottery-history-day header small,.lottery-hub-totals small{font-size:13px;letter-spacing:.06em;color:#6e452a;font-weight:700}
.lottery-hub-intro h3{margin:4px 0}
.lottery-hub-intro p{font-size:17px;color:#67452a;margin:8px 0;line-height:1.5}
.lottery-hub-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.lottery-hub-totals span{background:#e9d0a6;border:1px solid #bd955f;border-radius:10px;padding:10px 12px;min-width:0}
.lottery-hub-totals small{display:block;font-size:12px}
.lottery-hub-totals b{display:block;font-size:22px;color:#58371e;overflow-wrap:anywhere}
.lottery-history-list{display:grid;gap:14px}
.lottery-history-day{padding:14px 17px;background:#fff9ec;border:2px solid #d0a877;border-radius:13px;color:#5a3c25}
.lottery-history-day header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.lottery-history-day header b{display:block;font-size:22px;font-weight:700;color:#5a3b23}
.lottery-history-day header strong{font-size:17px;color:#557234}
.lottery-hub .lottery-ticket{background:#f7ead0;border-color:#c8a77b;color:#593921;min-width:0}
.lottery-hub .lottery-ticket b{color:#6a3e21}
.lottery-hub .lottery-ticket strong{font-size:15px;color:#6a5137;text-align:right;white-space:normal}
.lottery-hub .lottery-ticket .lottery-won{color:#4b7a37}
.lottery-hub .lottery-tickets>.empty-note{color:#644429;background:#faeacb;border-radius:10px}
.lottery-history-empty{padding:20px 16px;border:1px dashed #b78b52;border-radius:10px;background:#f8e9c9;color:#65472a;text-align:center;font-size:17px}
.lottery-hub .lottery-reopen{border:1px solid #567338;border-radius:10px;padding:10px 15px;font-weight:800;margin-top:6px;min-height:44px;background:#76964d;color:#fff9ea;cursor:pointer}
.lottery-hub .lottery-reopen:focus-visible{outline:3px solid #67411f;outline-offset:3px}
@media(max-width:650px){.lottery-hub{padding:13px;border-width:2px}.lottery-hub-intro p{font-size:15px}.lottery-hub-totals{gap:6px}.lottery-hub-totals span{padding:8px 6px}.lottery-hub-totals small{font-size:11px}.lottery-hub-totals b{font-size:16px}.lottery-history-day{padding:10px}.lottery-history-day header b{font-size:19px}.lottery-hub .lottery-ticket strong{font-size:13px}}
@media(max-width:420px){.lottery-overlay{padding:7px}.lottery-card{max-height:calc(100dvh - 14px);border-width:3px;border-radius:23px}.lottery-card .lottery-hero{height:106px}.lottery-hero-illustration{width:390px;bottom:-5px}.lottery-inner{padding:8px 14px 13px}.lottery-eyebrow{font-size:11px;padding:5px 7px;margin-bottom:7px}.lottery-card h2{font-size:23px;margin-bottom:9px;padding:7px}.lottery-card .lottery-dialogue{font-size:13px;padding:9px 10px;margin-bottom:8px}.lottery-card .lottery-small{font-size:11.5px;line-height:1.4}.lottery-picks{gap:8px;margin:5px 0 12px}.lottery-pick-label{font-size:11px;min-height:31px}.lottery-picks select{font-size:17px;min-height:46px;padding:7px 5px}.lottery-card .lottery-buy{font-size:17px;min-height:51px}.lottery-card .lottery-skip{font-size:13px;min-height:43px}.lottery-card .lottery-close{margin-top:10px;min-height:36px}.lottery-results>span{padding:8px;gap:5px}.lottery-results b{font-size:19px}.lottery-ticket{padding:8px}}
@media(max-height:520px){.lottery-overlay{align-items:flex-start}.lottery-card{max-height:calc(100dvh - 12px)}.lottery-card .lottery-hero{height:80px}.lottery-hero-illustration{width:295px;bottom:-4px}.lottery-inner{padding-top:7px}.lottery-card .lottery-dialogue{font-size:13px;padding:8px}.lottery-card h2{font-size:22px;margin-bottom:8px}}
