/* Lucky lounge: gold marquees, colourful balls, velvet purple, restrained emoji. */
:root{color-scheme:dark;color:#fff4de;background:#100918;--green:#ffda79;--muted:#c1b3d0;--line:#4a315a;--lime:#ffda79}
body{background:radial-gradient(ellipse at 85% 9%,#60208055,transparent 35%),radial-gradient(ellipse at 2% 38%,#b3176022,transparent 35%),#100918}
.preview{background:#2a1338;color:#e7c892;border-bottom:1px solid #784c3c;font-size:11px;letter-spacing:.4px}
.site-header{border-bottom-color:#553846}.brand-mark{background:linear-gradient(140deg,#fff1b1,#e4a237);color:#42142d;box-shadow:0 0 20px #ffd46725;border:2px solid #ffe8a1}.brand b{color:#ffcf66}.brand small{color:#c4a9d6}.desktop-nav a{color:#cebfd9}.desktop-nav [aria-current]{color:#ffdc81;box-shadow:0 2px #ffcb57}.language>div{background:#21112e;border-color:#805368;box-shadow:0 8px 30px #0009}.language a:hover{background:#3d204b}.language summary{color:#ffe1a0}
h1,h2,h3{color:#fff4de}h1{font-weight:850;letter-spacing:-1px}.hero{padding:58px 0 46px;gap:44px}.hero h1{font-size:52px;color:#ffe598;text-shadow:0 2px 0 #6e391d,0 0 26px #f7a63224}.hero .eyebrow{color:#ff8ace;background:#38162d;border:1px solid #8c315d;display:inline-block;border-radius:30px;padding:7px 13px;letter-spacing:1px}.eyebrow{color:#e7b9ff}.hero p{color:#d6c3e2}.hero .small{color:#ab98bd}.hero-art{height:340px;background:radial-gradient(ellipse at 50% 20%,#582067,#241034 70%);border:2px solid #dca84c;border-radius:23px;box-shadow:0 0 0 6px #341c38,inset 0 0 45px #ce458e25,0 0 38px #ec71bf18;overflow:hidden}.hero-art:before{content:'';position:absolute;inset:10px;border:5px dotted #ffe19d;border-radius:14px;filter:drop-shadow(0 0 5px #ffd971);opacity:.8;pointer-events:none}.orbit{border-color:#c768e230;top:108px}.lucky-label{top:28px;left:0;width:100%;text-align:center;color:#ffcbdc;font-size:9px;letter-spacing:2px}.vegas-sign{position:absolute;top:63px;left:0;right:0;text-align:center;color:#ffcc73;letter-spacing:8px;font-size:13px;font-weight:800;line-height:1.1}.vegas-sign span{display:block;font-family:Georgia,serif;font-size:70px;letter-spacing:5px;color:#fff0cc;text-shadow:2px 2px #922c79,0 0 7px #f841bd,0 0 23px #f841bd;margin-top:9px}.reel-balls{position:absolute;left:0;right:0;top:188px;display:flex;justify-content:center;gap:17px}.reel-balls span{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;color:white;font-weight:800;font-size:28px;background:radial-gradient(circle at 30% 20%,#ff9b9b,#d82251 65%,#821735);box-shadow:0 7px 0 #0005,0 0 15px #f9228033;border:2px solid #ffb8b977;transform:rotate(-9deg)}.reel-balls span:nth-child(2){background:radial-gradient(circle at 30% 20%,#7dc8ff,#3178d9 65%,#183878);transform:translateY(8px);border-color:#99d7ff77}.reel-balls span:nth-child(3){background:radial-gradient(circle at 30% 20%,#adffc8,#15935d 65%,#0b5839);transform:rotate(9deg);border-color:#7bffa777}.art-note{left:0;right:0;text-align:center;bottom:25px;letter-spacing:1.4px;color:#f1c783;font-size:9px}
button,.button{background:#2c193a;border-color:#684477;color:#ffe3a3;border-radius:9px}button:hover,.button:hover{background:#462650;border-color:#d49c5a}.primary{background:linear-gradient(110deg,#e8a63c,#ffe295 50%,#edb847);color:#3b1833;border:1px solid #ffe8a9;box-shadow:0 4px 0 #8c521b,0 0 24px #ebb22b20;font-weight:800}.primary:hover{background:linear-gradient(110deg,#f7bd57,#fff0b8,#f9cc67);color:#2b1029}.actions{gap:12px}.card{background:linear-gradient(145deg,#261331,#1b1028);border-color:#563464;box-shadow:0 8px 25px #0002}.result-preview{border-top:3px solid #efc76a}.textlink{color:#f4cb75}.empty-icon{color:#ce85ec}.empty p{color:#c4b4d0}.tool{position:relative;overflow:hidden}.tool:before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:#f0bf60}.tool:nth-child(2):before{background:#ee6ea7}.tool:nth-child(3):before{background:#64b4ff}.tool:nth-child(4):before{background:#58d5ab}.tool:hover,.guide:hover{border-color:#ee8dc7;box-shadow:0 0 25px #ed54ad15}.card-number{border-color:#88673d;background:#4e302330;color:#ffda79}.tool:nth-child(2) .card-number{border-color:#953e69;color:#ff98c6}.tool:nth-child(3) .card-number{border-color:#3e7095;color:#91cfff}.tool:nth-child(4) .card-number{border-color:#398271;color:#86e4b4}.tool h3 span{color:#f7d081}.guide .eyebrow{color:#efa1d6}.guide h3{color:#ffe9b6}.guide p{color:#c4b4d0}.notice{background:#2d1d35;border-left-color:#eab654;color:#ffe1a0}.notice p{color:#cdbed8}.install-banner{background:radial-gradient(ellipse at 0% 50%,#612650,#321539 65%);border:1px solid #bc8654;box-shadow:inset 0 0 30px #df497510}.install-banner h2{color:#ffe3a1}.install-banner .eyebrow{color:#ff9bd9}.install-banner p{color:#d6bbdb}.install-banner button{background:linear-gradient(110deg,#ffc95a,#ffe6a5);color:#381630}.error{color:#ffc2cb;background:#611c36;border:1px solid #c4567b;padding:12px 16px;border-radius:8px}.error:empty{display:none}.small{color:#b7a6c5}input,select{background:#170e22;border-color:#705081;color:#fff1d3;accent-color:#ffd267}input::placeholder{color:#a995b7}input:focus,select:focus{border-color:#f1c465}.chip{background:#211329;border-color:#664275;color:#ead8f2}.chip:has(input:checked){border-color:#b38756;background:#38263b}.dot.red{color:#ff658b}.dot.blue{color:#67bfff}.dot.green{color:#68e2a4}.ball{color:white;border:2px solid #ffffff33;box-shadow:inset 0 -4px 0 #0003,0 4px 9px #0003}.ball.red,.ball-checkbox.red{background:linear-gradient(145deg,#ff6681,#c61c45);color:white}.ball.blue,.ball-checkbox.blue{background:linear-gradient(145deg,#58b5ff,#2462b9);color:white}.ball.green,.ball-checkbox.green{background:linear-gradient(145deg,#4ee5a4,#128653);color:white}.number-set{border-color:#54345c}.number-set button{background:#341e43;border-color:#674078;color:#ffe1a0}.number-set button:hover{background:#502955}.luck-note{color:#f2ce83;text-align:center;margin:22px 0 10px}.original-results{min-height:0;margin-top:24px;scroll-margin-top:24px;border-top:3px solid #e9be68}.original-results .small{text-align:center}.generated-set{padding:18px 0;border-top:1px solid #503056}.generated-set h3{font-size:15px;color:#d4afe7;margin:0}.generated-set .number-set{padding-top:12px}.generator-heading{max-width:850px}.generator-heading h1{color:#ffe08e}.casino-machine{padding:0;overflow:hidden;border:1px solid #b28048;box-shadow:0 0 0 4px #28192e,0 15px 50px #0004}.machine-top{padding:12px 26px;background:linear-gradient(90deg,#6f263d,#412040,#6b2945);display:flex;justify-content:space-between;gap:12px;color:#ffdda0;font-size:11px;font-weight:750;letter-spacing:2px;border-bottom:1px solid #9b634b}.machine-top span:nth-child(2){color:#ffbde0;letter-spacing:8px}.original-controls{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;padding:26px}.control-panel{background:#180e23;border:1px solid #493153;border-radius:10px;padding:22px}.control-panel h2{font-size:21px;color:#ffdb86;margin-bottom:24px;border-bottom:1px solid #4e3454;padding-bottom:13px}.control-panel label[for=numberSets]{margin-bottom:9px}.range-field{margin-top:24px}.range-inputs{display:flex;gap:12px;align-items:center}.range-inputs label{flex:1;min-width:0}.range-inputs>span{color:#b998c6}.range-inputs input{font-size:20px;font-weight:700}.selection-ticket{border:1px dashed #967145;padding:25px 20px;text-align:center;background:radial-gradient(ellipse at center,#47304466,transparent);border-radius:9px;margin-top:20px}.selection-ticket strong{display:block;font-family:Georgia,serif;font-size:62px;color:#ffe19b;line-height:1.3}.selection-ticket>span:last-of-type{font-size:13px;color:#cab3d8}.selection-ticket hr{border:0;border-top:1px dashed #70503c;margin:20px 0}.selection-ticket p{margin:0;font-size:12px;overflow-wrap:anywhere}.exclusion-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:14px;padding:12px;background:#100a1b;border:1px solid #50365e;border-radius:9px}.number-choice{position:relative;display:flex;align-items:center;justify-content:center;margin:0;min-width:0;min-height:44px;cursor:pointer}.number-choice input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.ball-checkbox{height:37px;width:37px;display:grid;place-items:center;border-radius:50%;font-size:14px;font-weight:800;box-shadow:inset 0 -3px #0003;border:1px solid #ffffff33;position:relative;pointer-events:none}.number-choice input:focus-visible+.ball-checkbox{outline:3px solid #ffe39a;outline-offset:3px}.number-choice input:checked+.ball-checkbox{background:#57475f;color:#d7cbdc;box-shadow:none;text-decoration:line-through;border:2px solid #c597aa}.number-choice input:checked+.ball-checkbox:after{content:'×';position:absolute;right:-4px;top:-8px;font-size:14px;color:white;border-radius:50%;background:#b42966;width:16px;height:16px;line-height:15px;text-align:center;text-decoration:none}.filtered-out{opacity:.28}.grid-hint{text-align:center;margin:12px 0 0}#toggleNumberGrid{width:100%;justify-content:space-between;font-size:13px}#toggleNumberGrid:after{content:'−'}#toggleNumberGrid[aria-expanded=false]:after{content:'+'}.machine-actions{border-top:1px solid #58334e;background:#23122e;display:flex;justify-content:center;gap:16px;padding:24px}.machine-actions .primary{min-width:260px;font-size:18px;padding:15px 28px}.casino-machine>.error{margin:0 26px 20px}#refreshBtn{color:#9df0ca;border-color:#357d65;background:#173b31}.exclusion-grid input:focus{outline:0}#numberGrid[hidden]{display:none}.pop-in{animation:lucky-pop .35s both}@keyframes lucky-pop{from{opacity:0;transform:translateY(12px) scale(.75)}to{opacity:1;transform:none}}
footer{border-color:#4e3152}footer strong{color:#f9d791}footer a{color:#d1b8e2}.mobile-nav{background:#1c1029;border-color:#68425d;box-shadow:0 -4px 24px #0004}.mobile-nav a{color:#bfa7d3}.mobile-nav [aria-current]{color:#ffdc8d;background:#4b2f45}.mobile-nav [aria-current] span{color:#ffe6a6}dialog{background:#251330;border-color:#d1a561;color:#fff0cf;box-shadow:0 0 40px #db70cf33}dialog::backdrop{background:#080410cf}#toast{background:#ffe2a0;color:#32152d;box-shadow:0 4px 20px #0006}.skip{background:#351d40;color:#ffe6a0}
@media(max-width:1000px){.hero h1{font-size:42px}.original-controls{grid-template-columns:.85fr 1.15fr;gap:14px;padding:18px}.control-panel{padding:17px}.exclusion-grid{gap:3px;padding:8px}.ball-checkbox{width:33px;height:33px}}
@media(max-width:700px){.hero{padding:30px 0;gap:25px}.hero h1{font-size:37px;line-height:1.3}.hero-art{height:265px;margin:0 4px 8px}.vegas-sign{top:51px;font-size:10px}.vegas-sign span{font-size:53px;margin-top:7px}.lucky-label{top:26px;font-size:8px;letter-spacing:1.5px}.reel-balls{top:151px;gap:14px}.reel-balls span{height:54px;width:54px;font-size:23px}.art-note{bottom:23px;font-size:8px;letter-spacing:1px}.hero .eyebrow{font-size:10px;padding:6px 10px}.original-controls{grid-template-columns:1fr;padding:14px;gap:14px}.control-panel{padding:17px}.control-panel h2{font-size:19px;margin-bottom:19px}.selection-ticket{padding:12px 15px;display:grid;grid-template-columns:auto 1fr;gap:0 18px;align-items:center;text-align:left;margin-top:0}.selection-ticket .eyebrow{grid-column:1 / -1;font-size:9px}.selection-ticket strong{grid-row:2 / 4;font-size:42px}.selection-ticket hr{display:none}.selection-ticket p{margin-top:4px;max-height:85px;overflow:auto}.range-field{margin-bottom:5px}.exclusion-grid{padding:10px;gap:3px}.number-choice{min-height:44px}.ball-checkbox{width:34px;height:34px}.machine-top{padding:12px 15px;font-size:9px;letter-spacing:1px}.machine-actions{flex-direction:column;padding:19px;gap:14px}.machine-actions .primary{min-width:0;width:100%;font-size:17px}.original-results .section-head{align-items:center}.original-results h2{font-size:20px}.original-results .eyebrow{font-size:9px}.control-panel .chip{padding:9px 8px;font-size:13px}.control-panel .choices{gap:7px}.generator-heading{padding:28px 0 22px}.generator-heading h1{font-size:30px}.install-banner button{white-space:normal}.brand{letter-spacing:0}.casino-machine>.error{margin:0 14px 15px}}
@media(max-width:360px){.control-panel{padding:12px}.original-controls{padding:10px}.exclusion-grid{padding:5px;gap:1px}.ball-checkbox{width:29px;height:29px;font-size:12px}.number-choice{min-height:38px}.control-panel .choices{gap:4px}.control-panel .chip{padding:8px 5px;gap:4px}.machine-top span:nth-child(2){letter-spacing:1px}.hero h1{font-size:33px}.reel-balls{gap:12px}.reel-balls span{width:48px;height:48px}.original-results .eyebrow{display:none}}
@media(max-width:700px){.site-header{gap:12px}.brand small{font-size:8px;letter-spacing:1px}.language{flex-shrink:0}}
@media(max-width:360px){.site-header{padding:15px 16px;gap:8px}.brand{font-size:12px;gap:8px}.brand small{font-size:7px;letter-spacing:.7px}.brand-mark{width:31px;height:31px;flex-shrink:0}.language summary{padding:10px 0}}
@media(prefers-reduced-motion:reduce){.pop-in{animation:none!important}}
