@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#1c1609;--panel:#2e2510;--accent:#ecc260;--light:#f9e4b3;--muted:#bbb29d;--border:#6f5e38;--text:#fefaf2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 10% 25%,#5c471735,transparent 45%),radial-gradient(ellipse at 92% 5%,#9c7c312b,transparent 40%),var(--bg);color:var(--text);font-family:'Space Grotesk',Arial,sans-serif;font-size:16px;line-height:1.55}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #fbebc7;outline-offset:4px}input,select{min-width:0}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}a{color:inherit;text-decoration:none}.container{max-width:1280px;padding:0 16px;margin:auto}header{height:65px;background:#1d1709eb;backdrop-filter:blur(15px);border-bottom:1px solid #463b20;position:sticky;top:0;z-index:20}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font-size:30px;font-weight:700;font-style:italic;letter-spacing:-1.3px;line-height:1;display:inline-flex;align-items:center}.brand span{color:#f4d58c}.brand small{font-size:10px;font-style:normal;letter-spacing:2px;line-height:1.3;max-width:29px;border-left:1px solid #76663f;padding-left:9px;margin-left:10px}.nav-actions{display:flex;align-items:center;gap:8px}.btn{border-radius:5px;padding:7px 19px;border:1px solid #7a6a45;font-size:14px;font-weight:600;color:#fefcf8;transition:.2s;background:none}.btn:hover{filter:brightness(1.2);border-color:#edcf8a}.primary{background:linear-gradient(110deg,#cda340,#e6c373);border-color:#e6cd91;box-shadow:0 0 14px #e7b6452b}.outline{background:#2e2613}.demo-pill{font-size:11px;font-weight:700;letter-spacing:1.3px;color:#b9ae94;margin-right:15px}.hero{display:grid;grid-template-columns:minmax(0,min(100%,42rem)) minmax(0,1fr);gap:32px;margin-top:24px;padding-top:40px;padding-bottom:40px}.hero-copy{min-width:0}.live-tag{display:inline-flex;align-items:center;gap:7px;border:1px solid #c7ac6b66;border-radius:50px;padding:3px 9px;color:#f3e1b7;background:linear-gradient(90deg,#cda3402b,transparent);font-size:12px;font-weight:600;box-shadow:0 0 16px #ecc26015}.live-tag>span{width:7px;height:7px;border-radius:50%;background:#f8dea2;box-shadow:0 0 10px #ecc260}.live-tag b{font-size:10px;padding-left:7px;border-left:1px solid #96845a}h1{font-size:48px;line-height:1.2;letter-spacing:-1.5px;margin:16px 0;background:linear-gradient(110deg,#f9e1a9,#ebc66f,#fbeece);background-clip:text;color:transparent}h1 span{white-space:nowrap}.intro{color:#cbc5b8;font-size:16px;line-height:1.65;margin:0 0 10px;max-width:576px}.hero h2{color:#f7da97;font-size:18px;margin:8px 0 15px}.form-panel{max-width:576px;background:linear-gradient(145deg,#352b13dc,#221c0ded);border:1px solid #796639;border-radius:14px;padding:18px;box-shadow:inset 0 0 25px #bb98470a,0 0 22px #ab8b421a}.form-panel label{display:block;font-size:13px;color:#cbc3b1;margin-bottom:5px}.form-panel label:not(:first-child){margin-top:11px}em{font-style:normal;color:#e1cc9b}.form-panel input{width:100%;background:#1c170a;border:1px solid #534a33;border-radius:5px;padding:9px 12px;color:#fef8eb;font-size:14px}.input-wrap{position:relative}.input-wrap input{padding-left:39px}.input-wrap svg{width:17px;height:17px;position:absolute;left:13px;top:12px;stroke:#c0af88;fill:none;stroke-width:1.6}input::placeholder{color:#8e856e}.generate{margin-top:15px;width:100%;display:flex;justify-content:center;gap:13px;align-items:center;padding:12px 8px;color:#fff;font-size:19px;letter-spacing:1px;font-weight:700;border-radius:11px;border:1px solid #f8dea2;background:linear-gradient(0deg,#8c6e28,#cba449 50%,#e6c881);box-shadow:0 0 20px #e0b7584d,inset 0 1px 0 #fae7bc55;text-shadow:0 1px 2px #372b10}.generate:hover{filter:brightness(1.15)}.generate:disabled{opacity:.7;cursor:progress}.generate span{font-size:25px;line-height:1}.form-note{font-size:11px;color:#b7af9b;margin:11px 0 0;text-align:center}.updated{font-size:12px;color:#e3cc98;margin:16px 0 0}.hero-art{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.neon-frame{width:100%;max-width:352px;padding:4px;border-radius:17px;background:conic-gradient(#f6d589,#cba140,#f7d992,#927633,#f6d589);box-shadow:0 0 15px #f0c76770,0 0 45px #ba964347}.neon-frame img{width:100%;height:auto;aspect-ratio:1;display:block;object-fit:cover;border-radius:13px}.trust-strip{width:100%;border:1px solid #937c4666;border-radius:12px;background:linear-gradient(110deg,#392e13,#251e0e,#3e3215);display:flex;gap:12px;align-items:center;justify-content:center;min-height:82px;padding:12px;text-align:center;box-shadow:inset 0 1px 0 #c8b17d20}.trust-strip strong{font-size:12px;letter-spacing:.6px}.trust-strip strong span{color:#f8e0a7}.trust-strip p{font-size:9px;letter-spacing:.4px;color:#c8bc9e;margin:5px 0 0}.trust-symbol{font-size:35px;color:#e9d29d}.mobile-banner{display:none}.provider-panel{position:relative;margin:24px 0;border:1px solid #aa9054;border-radius:15px;padding:29px 53px 19px;background:linear-gradient(125deg,#3b2f14,#231c0b 55%,#3f3215);box-shadow:0 0 24px #d7ad4a2a,inset 0 0 25px #d1a94b0d}.provider-panel>h2{position:absolute;top:-15px;left:50%;transform:translateX(-50%);margin:0;font-size:13px;font-weight:700;letter-spacing:2px;white-space:nowrap;padding:5px 28px;background:linear-gradient(#a78c4c,#443920);border:1px solid #e1ca9466;border-radius:7px;color:#fdf5e1;box-shadow:0 0 15px #e4c06b40}.providers{display:flex;gap:14px;overflow:auto;scrollbar-width:none;scroll-behavior:smooth}.providers::-webkit-scrollbar{display:none}.provider{flex-shrink:0;min-width:110px;height:64px;border:1px solid #635636;background:#231c0d80;border-radius:12px;color:#c9c1af;display:flex;justify-content:center;align-items:center;padding:8px 18px;font-size:14px;font-weight:700;transition:.2s}.provider img{height:42px;max-width:126px;object-fit:contain}.provider.active{border-color:#f7da96;color:#f9e1a9;background:#5e4d2644;box-shadow:0 0 14px #d3ac5333}.provider:hover{border-color:#ceb67f}.scroll-provider{position:absolute;top:50%;transform:translateY(-35%);background:#302711;border:1px solid #7b693e;width:36px;height:36px;border-radius:50%;color:#e6dabf;font-size:27px;line-height:1}.previous{left:10px}.next{right:10px}.filter-panel{display:flex;gap:12px;padding:16px;border:1px solid #857144;border-radius:13px;background:linear-gradient(110deg,#3d3219,#231d0e);box-shadow:0 0 18px #ab8c4421;margin-bottom:12px}.filter-panel select,.search-wrap{border:1px solid #736545;border-radius:7px;background:#201a0c;color:#e3ddce;height:44px;font-size:14px}.filter-panel select{flex:0 1 260px;padding:0 13px}.search-wrap{flex:1;display:flex;gap:11px;align-items:center;padding:0 13px;min-width:0}.search-wrap svg{width:18px;height:18px;fill:none;stroke:#bca97c;stroke-width:1.8;flex-shrink:0}.search-wrap input{width:100%;border:0;background:transparent;color:#fef8eb;font-size:14px;outline:none}.search-wrap:focus-within{outline:2px solid #ecc260}.catalog-meta{display:flex;justify-content:space-between;color:#a79c83;font-size:12px;padding:0 2px;margin:12px 0}.games{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.game{overflow:hidden;border:1px solid #998351;border-radius:12px;background:linear-gradient(#2f2611,#221b0c);box-shadow:0 0 13px #c9a44f21,0 7px 20px #0004;transition:transform .2s,border-color .2s}.game:hover{transform:translateY(-3px);border-color:#f8dd9e}.game-media{position:relative;aspect-ratio:1.24;overflow:hidden;background:#372d16;display:block;width:100%;border:0;padding:0}.game-media>img{height:100%;width:100%;object-fit:contain;transition:transform .3s}.game-media:hover>img{transform:scale(1.06)}.game-badges{position:absolute;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:flex-start;gap:3px}.game-badges span{font-size:10px;border-radius:20px;padding:2px 7px;font-weight:700;background:#3f3111e6;border:1px solid #f7db98a1;color:#fcf3dc}.game-badges .hot{background:linear-gradient(100deg,#c15817,#dd932b);border-color:#f1b15d;color:white}.game-info{padding:11px}.game-info h3{font-size:14px;line-height:1.35;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-name{font-size:11px;color:#b1a891}.rtp-row{display:flex;align-items:center;justify-content:space-between;margin-top:9px}.rtp-row label{font-size:10px;letter-spacing:1px;color:#c5b89b}.rtp-row strong{font-size:27px;line-height:1.2;color:#f8e0a7;text-shadow:0 0 15px #e7bc5673}.rtp-row strong small{font-size:13px}.rtp-track{height:7px;border:1px solid #8f7a4b;border-radius:9px;overflow:hidden;background:#181309;margin-top:7px}.rtp-track div{height:100%;border-radius:9px;background:linear-gradient(90deg,#ba9642,#f8dfa5);box-shadow:0 0 10px #f4cb6b}.rtp-label{font-size:10px;display:flex;justify-content:space-between;color:#cfc3a6;margin:6px 0 10px}.detail-button{border:1px solid #d6be84;border-radius:6px;background:linear-gradient(#c09e4f,#947630);color:#fff;font-size:12px;font-weight:700;width:100%;padding:7px 3px}.detail-button:hover{filter:brightness(1.2)}.load-wrap{text-align:center;margin:30px 0 38px}.load-wrap .btn{padding:10px 24px}.load-wrap span{margin-left:12px}.empty{border:1px dashed #7b6b47;border-radius:12px;text-align:center;padding:55px 15px;color:#cdc3ac}.empty h3{color:#ebe2cd}.empty[hidden]{display:none}footer{display:flex;align-items:center;gap:25px;border-top:1px solid #493e24;padding-top:25px!important;padding-bottom:30px!important;color:#8d8573;font-size:11px}footer .brand{font-size:25px}footer p{max-width:650px;flex:1}footer>span{white-space:nowrap}#to-top{position:fixed;bottom:25px;right:23px;background:#423517;border:1px solid #b19759;box-shadow:0 3px 15px #0007;color:#fae5b6;border-radius:50%;height:45px;width:45px;font-size:22px;z-index:10;opacity:0;pointer-events:none}#to-top.visible{opacity:1;pointer-events:auto}dialog{border:1px solid #e5c781;border-radius:18px;background:radial-gradient(ellipse at top right,#6e592755,transparent),#292210;color:#faf5eb;width:min(94%,490px);padding:30px;box-shadow:0 0 70px #b790354d;max-height:90vh;overflow:auto}dialog::backdrop{background:#0d0a03d9;backdrop-filter:blur(7px)}.close{position:absolute;top:12px;right:16px;color:#d6caaf;background:none;border:0;font-size:28px}.modal-kicker{font-size:11px;letter-spacing:1.7px;color:#e7cc8d}dialog h2{font-size:25px;margin:10px 0 18px;line-height:1.3}dialog p{font-size:14px;color:#cdc4b0}dialog .modal-done{width:100%;margin-top:20px}.result-card{display:flex;gap:14px;align-items:center;padding:12px;border:1px solid #6c5d3b;border-radius:12px;background:#1c1609;margin-top:10px}.result-card img{width:70px;height:70px;object-fit:cover;border-radius:8px}.result-card strong{display:block;font-size:15px}.result-card span{display:block;font-size:12px;color:#c8b997}.result-card b{color:#f9e2ac;font-size:24px}.detail-hero{display:block;width:100%;height:clamp(180px,35vh,280px);object-fit:contain;object-position:center;background:#1c1609;border-radius:10px}.detail-data{display:flex;justify-content:space-between;margin:18px 0;border-bottom:1px solid #5f5336;padding-bottom:10px}.detail-data strong{color:#f3dba1}.muted-note{padding:12px;border-radius:7px;background:#d2b36913;border:1px solid #8374503d}.screen-reader{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1600px){.hero{padding-top:48px;padding-bottom:48px}}@media(max-width:1023px){.hero{grid-template-columns:1.25fr 1fr;gap:25px}h1{font-size:40px}.trust-symbol{display:none}.filter-panel select{flex-basis:220px}.game-info{padding:9px}.rtp-row strong{font-size:24px}}@media(max-width:767px){.container{padding-left:14px;padding-right:14px}header{height:60px}.brand{font-size:27px}.demo-pill{display:none}.nav-actions .btn{padding:6px 14px}.hero{display:block;margin-top:8px;padding-top:22px;padding-bottom:10px}.hero-heading{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}.hero-heading>div{min-width:0;flex:1}.mobile-banner{display:block;width:110px;height:110px;object-fit:cover;border:2px solid #eac56f;border-radius:12px;box-shadow:0 0 15px #d8b35d4d}.live-tag{font-size:10px;padding:3px 7px;gap:5px}.live-tag b{font-size:8px}h1{font-size:32px;letter-spacing:-1px;margin:12px 0}.hero-art{display:none}.intro{font-size:14px;margin:14px 0 10px}.hero h2{font-size:16px;margin:10px 0 13px}.form-panel{max-width:none;padding:15px}.form-panel input{font-size:16px}.generate{font-size:16px;padding:12px}.updated{font-size:11px;margin-top:13px}.provider-panel{margin:31px 0 18px;padding:26px 43px 15px;border-radius:12px}.provider-panel>h2{font-size:11px;padding:4px 17px;letter-spacing:1.5px;top:-13px}.providers{gap:9px}.provider{height:60px;min-width:92px;padding:6px 9px;border-radius:9px}.provider img{max-width:96px;height:36px}.scroll-provider{height:29px;width:29px;font-size:24px}.previous{left:7px}.next{right:7px}.filter-panel{flex-wrap:wrap;gap:9px;padding:11px}.search-wrap{flex-basis:100%;height:43px}.filter-panel select{flex:1 1 calc(50% - 5px);width:45%;font-size:12px;padding:0 7px}.games{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.game{border-radius:9px}.game-media{aspect-ratio:1}.game-info{padding:7px}.game-info h3{font-size:12px}.provider-name{font-size:10px}.game-badges{top:5px;left:5px;right:5px}.game-badges span{font-size:8px;padding:1px 4px}.game-badges .hot{display:none}.rtp-row{align-items:flex-end;gap:3px;margin-top:6px}.rtp-row label{font-size:8px;letter-spacing:0}.rtp-row strong{font-size:21px}.rtp-row strong small{font-size:10px}.rtp-label{font-size:8px;margin:5px 0 7px}.detail-button{font-size:10px;padding:6px 1px}.catalog-meta{font-size:10px;gap:8px}.rtp-track{height:6px}.form-note{font-size:10px}.load-wrap{margin:22px 0}footer{flex-wrap:wrap;gap:12px}footer p{flex-basis:65%;margin:0;font-size:10px}footer>span{font-size:10px}dialog{padding:25px 20px}}@media(max-width:359px){h1{font-size:27px}.mobile-banner{width:90px;height:90px}.brand{font-size:24px}.brand small{display:none}.game-info{padding:5px}.rtp-row strong{font-size:18px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.provider{position:relative;padding-bottom:15px}.provider-count{position:absolute;bottom:3px;left:0;right:0;text-align:center;font-size:9px;font-weight:400;color:#beb194;line-height:1}.game-media img[hidden]{display:none}.cover-unavailable{display:flex;align-items:center;justify-content:center;min-height:100px;padding:15px;font-size:15px;font-weight:700;color:#ebdab2;text-align:center}.catalog-meta{align-items:center}
.pattern-open,.pattern-regenerate{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 15px;border:1px solid #f7d992;border-radius:6px;background:linear-gradient(110deg,#bd973e,#dcb65d);color:#fff;font-size:15px;font-weight:700;box-shadow:0 0 18px #dbb4592b}.pattern-open:hover,.pattern-regenerate:hover{filter:brightness(1.14)}.pattern-open span:last-child{margin-left:auto}.pattern-open span:first-child{margin-right:auto}.sample-pattern{display:block;margin-top:6px;padding:5px 12px;border:1px solid #b19759;border-radius:5px;color:#fbecc8;background:#55441b;font-size:13px;font-weight:600}.pattern-dialog{width:min(94vw,448px);padding:20px;border:1px solid #cdb06d;border-radius:12px;background:#2f2818;box-shadow:0 14px 80px #0008;max-height:94dvh}.pattern-dialog .modal-kicker{font-size:10px;letter-spacing:1px;color:#d1c6ab}.pattern-dialog h2{font-size:20px;line-height:1.3;margin:8px 25px 6px 0;color:#e8ce90}.pattern-dialog .close{top:10px;right:13px;font-size:26px}.pattern-dialog .pattern-game{font-size:14px;color:#b6ae9c;margin:0 0 15px}.pattern-game strong{color:#fef8ec}.pattern-panel{padding:16px;border:1px solid #665b40;border-radius:5px;background:#18140b}.pattern-dialog .pattern-intro{font-size:14px;line-height:1.5;font-weight:600;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid #4d4637;color:#f7db99}.pattern-intro strong{color:#fef9ee}.pattern-stats{display:grid;grid-template-columns:1fr 1fr;gap:13px 15px;margin-bottom:18px}.pattern-stats div{min-width:0}.pattern-stats span{display:block;font-size:12px;color:#bbb3a1;margin-bottom:3px}.pattern-stats strong{display:block;font-size:14px;color:#fefaf2;overflow-wrap:anywhere}.pattern-stats .pattern-profit{color:#ead092}.pattern-bet{grid-column:1/-1}.pattern-steps{list-style:none;padding:0;margin:0;display:grid;gap:12px}.pattern-steps li{padding:10px 9px;border:1px solid transparent;border-radius:4px;background:#342c1b;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.5}.pattern-steps li:last-child{border-color:#917d4e;background:#3a311b}.pattern-steps strong{display:block;color:#efd392;font-weight:600}.pattern-steps span{display:block;color:#f8f4eb}.pattern-note{margin-top:16px;padding:10px;border-radius:4px;background:#0d0b06}.pattern-dialog .pattern-note p{font-size:12px;line-height:1.6;color:#beb6a3;margin:0}.pattern-note strong{color:#f9e1ab}.pattern-dialog .pattern-note p+p{margin-top:9px;color:#aba38f;font-size:11px}.pattern-regenerate{margin-top:16px;min-height:47px;border:0;border-radius:4px}.pattern-back{display:block;width:100%;margin-top:9px;padding:7px;border:0;background:transparent;color:#d0c6ae;font-size:13px}.pattern-back:hover{color:#fff}.modal-done[hidden]{display:none}@media(max-width:480px){.pattern-dialog{padding:17px;width:calc(100vw - 24px)}.pattern-panel{padding:13px}.pattern-dialog h2{font-size:19px}.pattern-stats{column-gap:10px}.pattern-stats strong{font-size:13px}.pattern-steps li{padding:9px}.pattern-steps{gap:10px}}@media(max-height:760px){.pattern-dialog{max-height:94dvh;overflow-y:auto}.pattern-dialog .pattern-note{margin-top:12px}.pattern-steps{gap:9px}}

/* Reference-matched popup footer and vertical rhythm. */
.pattern-dialog{padding:20px;width:min(94vw,448px);border-radius:12px;background:#30291a}.pattern-dialog .modal-kicker{display:none}.pattern-dialog h2{margin:0 24px 7px 0;font-size:20px;line-height:1.3}.pattern-dialog .pattern-game{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px;margin:0 0 17px;font-size:14px}.pattern-demo-tag{margin-left:auto;color:#c7ba9b;font-size:10px;letter-spacing:1px}.pattern-panel{padding:16px}.pattern-dialog .pattern-intro{margin-bottom:14px;padding-bottom:9px}.pattern-stats{row-gap:12px;margin-bottom:18px}.pattern-stats span{font-size:11px;margin-bottom:2px}.pattern-stats .pattern-profit{color:#00bd96}.pattern-stats strong{font-size:14px}.pattern-steps{gap:12px}.pattern-steps li{padding:8px 7px;border-radius:4px;font-size:12px;line-height:1.5}.pattern-steps strong{font-weight:500}.pattern-dialog .pattern-note{margin-top:16px;padding:10px 8px;background:#050402;border-radius:4px}.pattern-dialog .pattern-note p{font-size:10px;line-height:1.9;color:#c0b8a6;margin:0}.pattern-note strong,.pattern-note span{color:#f7da96}.pattern-dialog .pattern-note p+p{margin-top:10px;font-size:10px;color:#a59c88}.pattern-note em{font-style:italic;color:inherit}.pattern-play{display:block;width:100%;min-height:48px;margin-top:16px;padding:12px 8px;border:0;border-radius:4px;background:#e1b95d;color:#1b1405;font-size:16px;font-weight:700;line-height:1.25;letter-spacing:-.4px}.pattern-play:hover{background:#edce84}.pattern-play:focus-visible{outline:2px solid #fdf5e1;outline-offset:3px}@media(max-width:480px){.pattern-dialog{padding:20px;width:calc(100vw - 24px)}.pattern-panel{padding:14px}.pattern-dialog h2{font-size:19px}.pattern-stats strong{font-size:13px}.pattern-steps li{font-size:11px}}@media(max-width:359px){.pattern-dialog{padding:14px}.pattern-panel{padding:11px}.pattern-dialog h2{font-size:18px}.pattern-demo-tag{font-size:9px}}

/* Replaceable logo: preserve aspect ratio and reserve space for the header controls. */
.brand .brand-image{display:block;width:auto;height:var(--brand-logo-height,32px);max-width:190px;object-fit:contain;object-position:left center}footer .brand .brand-image{height:calc(var(--brand-logo-height,32px)*.82);max-width:160px}@media(max-width:767px){header .brand{min-width:0;max-width:calc(100% - 156px)}header .brand .brand-image{max-width:100%;max-height:40px}.nav-actions{flex-shrink:0}}@media(max-width:359px){header .brand{max-width:calc(100% - 148px)}}

/* KingToto: dark gold front page. */
:root{--gold:#ffd21b;--bg:#141109}
body{background:radial-gradient(ellipse at 15% 0%,#50422060,transparent 50%),#141109}
header{height:76px;background:#17130bed;border-bottom:1px solid #ffffff12}
header .brand{font-size:30px}header .brand span{color:var(--gold)}
header .btn{min-height:42px;border-radius:9px;padding:9px 22px}
header .outline{background:transparent;border-color:#ffffff25}
header .primary{background:var(--gold);border-color:var(--gold);color:#211707;box-shadow:none}
.demo-pill{color:#c8c1b2;font-size:11px;letter-spacing:1.4px}
.hero{width:calc(100% - 32px);max-width:1248px;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1fr);grid-template-areas:"art heading" "art intro" "art form" "art updated";gap:0 44px;align-items:start;margin:32px auto 36px;padding:32px;border:1px solid #ffffff19;border-radius:28px;background:linear-gradient(125deg,#2f281780,#201b10 62%,#2e2715);box-shadow:0 24px 65px #0003;position:relative;overflow:hidden}
.hero-copy{grid-area:heading;align-self:end;min-width:0}
.hero-eyebrow{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#e5d8b9;font-size:11px;font-weight:700;letter-spacing:2px;margin:5px 0 12px}
.hero-eyebrow>span{padding:4px 7px;border:1px solid #d2c19a2d;border-radius:5px;color:#c1b9a5;font-size:9px;letter-spacing:1px;white-space:nowrap}
.hero h1{font-size:clamp(34px,3.5vw,49px);font-weight:750;line-height:1.08;letter-spacing:-2px;margin:0 0 15px;color:#fefcf8;background:none}
.hero h1>span{color:var(--gold)}.title-dot{color:#e0c481}
.hero>.intro{grid-area:intro;max-width:none;color:#c9c2b3;line-height:1.7;font-size:14px;margin:0 0 24px}
.hero .hero-art{grid-area:art;display:flex;flex-direction:column;justify-content:center;align-self:stretch;min-width:0;margin:0;padding:0;background:none;gap:15px}
.hero .neon-frame{width:100%;max-width:none;aspect-ratio:1;overflow:hidden;border:1px solid #d4bd8766;border-radius:19px;padding:0;box-shadow:0 12px 36px #0004;transform:none;background:#251d0b}
.hero .neon-frame img{display:block;width:100%;height:100%;object-fit:contain;border-radius:0}
.hero figcaption{display:flex;align-items:center;justify-content:space-between;color:#cbbe9e;font-size:10px;letter-spacing:2px;padding:0 3px}
.hero figcaption>span:last-child{font-size:16px;color:var(--gold)}
.hero .form-panel{grid-area:form;max-width:none;width:100%;margin:0;padding:22px;background:#16120980;border:1px solid #ffffff16;border-radius:17px;box-shadow:none}
.generator-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.form-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:#d6c190}
.hero .generator-heading h2{margin:5px 0 0;color:#fbf8f2;font-size:21px;line-height:1.25;letter-spacing:-.5px;font-weight:600}
.generator-icon{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:1px solid #8a7b585c;background:#cdb57f1a;border-radius:12px;color:#f0dcac;font-size:28px}
.generator-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.field-group{min-width:0}
.hero .form-panel label{display:block;color:#e0dbce;font-size:13px;line-height:1.4;margin:0 0 8px;font-weight:500}
.hero .form-panel label em{color:#cabc9b;font-style:normal}
.hero .input-wrap,.hero .amount-input{display:flex;align-items:center;gap:9px;position:relative;height:48px;margin:0;padding:0 12px;border:1px solid #615946;border-radius:8px;background:#120f08}
.hero .input-wrap:focus-within,.hero .amount-input:focus-within{border-color:#d6c6a0;outline:2px solid #c3ae7f3b;outline-offset:2px}
.hero .input-wrap svg{position:static;transform:none;width:16px;height:16px;flex-shrink:0;stroke:#c2b699;fill:none;stroke-width:1.5}
.hero .amount-input>span{font-size:14px;color:#c6bda8}
.hero .form-panel input{display:block;width:100%;min-width:0;height:100%;border:0;outline:0;border-radius:0;background:transparent;color:#fbf8f2;padding:0;margin:0;box-shadow:none;font-size:16px}
.hero .form-panel input::placeholder{color:#9d9687;font-size:14px;opacity:1}
.hero .generate{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:51px;margin:0;padding:13px 16px;border:1px solid #f9df9d;border-radius:9px;background:linear-gradient(110deg,#eac36e,#ffe5a4);color:#261904;box-shadow:0 5px 18px #e8b74c16;font-size:14px;font-weight:750;letter-spacing:.4px;transition:filter .2s,transform .2s}
.hero .generate>span:last-child{margin-left:auto;font-size:20px}.hero .generate>span:first-child{margin-right:auto;font-size:20px}.hero .generate:hover{filter:brightness(1.07);transform:translateY(-1px)}.hero .generate:disabled{opacity:.7;transform:none;cursor:wait}.hero .generate:focus-visible{outline:2px solid #fff4cc;outline-offset:4px}
.hero .form-note{font-size:11px;line-height:1.6;color:#bbb3a2;margin:13px 0 0;text-align:center}
.hero>.updated{grid-area:updated;color:#a69e8c;font-size:11px;margin:14px 0 0;line-height:1.5}
.provider-panel{border-color:#ffffff1b;background:#201b11;box-shadow:none;border-radius:18px;margin-top:0;padding-top:36px}
.provider-panel>h2{border-color:#7c7156;background:#322a18;box-shadow:none;font-size:11px;letter-spacing:2px;border-radius:6px}
.provider{border-color:#ffffff17;background:#19150b}.provider.active{border-color:#d2ad61;color:#f2cc73;background:#9d783d13;box-shadow:none}
.filter-panel{border-color:#ffffff1c;background:#1f1a10;box-shadow:none}
@media(min-width:1600px){.hero{padding:36px;gap:0 48px}}
@media(max-width:1023px){.hero{gap:0 26px;padding:24px;grid-template-columns:minmax(0,.82fr) minmax(0,1fr)}.hero h1{font-size:37px}.hero-eyebrow{letter-spacing:1px;font-size:10px}.hero-eyebrow>span{font-size:8px}.hero .form-panel{padding:18px}.generator-fields{gap:10px}.hero>.intro{font-size:14px;margin-bottom:18px}.hero .generator-heading h2{font-size:19px}}
@media(max-width:767px){header{height:64px}header .btn{min-height:38px;padding:7px 14px}.hero{grid-template-columns:minmax(0,1fr) 112px;grid-template-areas:"heading art" "intro intro" "form form" "updated updated";width:calc(100% - 28px);margin:20px auto 30px;padding:20px;border-radius:22px;gap:0 14px}.hero-copy{align-self:center}.hero-eyebrow{display:block;font-size:9px;letter-spacing:1.2px;margin:0 0 12px}.hero-eyebrow>span{display:table;margin-top:7px;padding:3px 5px;font-size:8px}.hero h1{font-size:33px;line-height:1.08;margin:0;letter-spacing:-1.1px}.hero h1>span{display:block;margin-top:4px}.hero .hero-art{align-self:center;gap:0}.hero .neon-frame{border-radius:13px}.hero figcaption{display:none}.hero>.intro{font-size:14px;margin:18px 0 20px;line-height:1.7}.hero .form-panel{padding:18px;border-radius:14px}.generator-heading{margin-bottom:18px}.hero .generator-heading h2{font-size:21px}.generator-fields{gap:12px}.hero .form-note{font-size:11px}.hero>.updated{font-size:10px;margin-top:12px}.provider-panel{margin-top:0}.hero .form-panel label{font-size:12px}}
@media(max-width:400px){.hero{padding:16px;grid-template-columns:minmax(0,1fr) 96px;gap:0 10px}.hero h1{font-size:29px}.hero .form-panel{padding:15px}.generator-fields{grid-template-columns:1fr}.hero .generate{font-size:13px}.hero .generator-heading h2{font-size:19px}.hero .form-panel label{font-size:13px}}
@media(prefers-reduced-motion:reduce){.hero .generate{transition:none}.hero .generate:hover{transform:none}}

/* Cancellable preparation state for every visible Pola AI entry point. */
.pattern-loading-dialog{width:min(94vw,448px);padding:34px 30px 30px;border:1px solid #caaf70;border-radius:14px;background:#2e2716;box-shadow:0 20px 80px #0008;overflow:hidden}
.pattern-loading-dialog .modal-kicker{display:none}
.pattern-loading-dialog h2{position:relative;margin:80px 10px 7px;text-align:center;font-size:16px;color:#fdf8eb;line-height:1.4}
.pattern-loading-dialog .close{top:8px;right:12px}
.pattern-loading-content{text-align:center}
.pattern-spinner{position:absolute;top:30px;left:calc(50% - 23px);width:46px;height:46px;border:3px solid #ffffff0c;border-top-color:#eed291;border-right-color:#f2cc73;border-radius:50%;animation:pattern-spin .9s linear infinite}
.pattern-spinner::after{content:"";position:absolute;inset:5px;border:2px solid transparent;border-bottom-color:#cfb373;border-radius:50%}
.pattern-loading-dialog .loading-game{font-size:14px;color:#d6caaf;margin:0 0 5px;overflow-wrap:anywhere}
.pattern-loading-dialog .loading-status{font-size:12px;color:#bbb29d;margin:0 0 21px;min-height:19px}
.pattern-progress{display:block;width:100%;height:6px;border:0;border-radius:20px;overflow:hidden;background:#141008;appearance:none}
.pattern-progress::-webkit-progress-bar{background:#141008;border-radius:20px}
.pattern-progress::-webkit-progress-value{background:linear-gradient(90deg,#d8b25a,#edce83);border-radius:20px;transition:width .35s ease}
.pattern-progress::-moz-progress-bar{background:linear-gradient(90deg,#d8b25a,#edce83);border-radius:20px}
@keyframes pattern-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.pattern-spinner{animation:none}.pattern-progress::-webkit-progress-value{transition:none}}

/* One readable disclosure instead of repeated status badges. */
footer.container p{font-size:13px;line-height:1.6;color:#c3bbaa}

/* RTP meter: length follows percentage; colors follow the five bands. */
.game .rtp-row strong{color:var(--rtp-color);text-shadow:none}
.rtp-status .rtp-track{border-color:#ffffff18;background:#0d0b06}
.rtp-status .rtp-track>div{background:var(--rtp-color);box-shadow:none;transition:width .45s ease,background-color .45s ease}
.rtp-status .rtp-label{color:var(--rtp-color);font-weight:600}
.rtp-status .rtp-label span{display:inline-flex;align-items:center;gap:5px}
.rtp-status .rtp-label span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.catalog-meta{flex-wrap:wrap}
#rtp-update{color:var(--muted)}

/* KingToto brand: charcoal surfaces, gold actions and warm readable text. */
:root{--bg:#0e0d0a;--panel:#1a1710;--accent:#ffc400;--gold:#ffd21b;--light:#ffe66b;--muted:#b7ad96;--border:#705016;--text:#fff8e8;--brand-logo-height:40px}
body{background:radial-gradient(ellipse at 15% 0%,#74551630,transparent 50%),var(--bg)}
header{background:#100f0ced;border-bottom-color:#d7b76222}
.hero{background:linear-gradient(125deg,#30271590,#15130f 62%,#251f13);border-color:#cfab5733}
.hero .neon-frame{background:#12100c;border-color:#c59a485c}
.hero .form-panel{background:#0b0a088c;border-color:#cfab5724}
.provider-panel,.filter-panel{background:#191610;border-color:#c8a44f2c}
.primary,.pattern-open,.pattern-regenerate,.pattern-play,.detail-button{background:linear-gradient(110deg,#d6aa46,#f4d78b);border-color:#e4bd65;color:#201706;box-shadow:none;text-shadow:none}
.pattern-play:hover{background:#ffe3a0}
.sample-pattern{background:#332812;border-color:#907133;color:#f3d890}
.game{background:linear-gradient(#211c12,#15120d);border-color:#6a532d}
.game:hover{border-color:#dcb65c}
.game-media{background:#17140e}
.hero .generate{text-shadow:none}
@media(min-width:768px){.hero h1{font-size:clamp(30px,3.05vw,44px);letter-spacing:-1.5px}}
@media(max-width:767px){.hero h1{font-size:clamp(24px,5.8vw,33px);letter-spacing:-1px}}

/* Saturated yellow-to-orange gold taken from the KingToto logo. */
:root{--gold:#ffd21b;--gold-deep:#f58a00;--accent:#ffc400}
header{border-bottom-color:#ffb90029}
.hero{border-color:#ffb90035;background:linear-gradient(125deg,#39270d66,#14110b 62%,#281c0b)}
.hero .neon-frame{border-color:#ffc40078;box-shadow:0 12px 36px #0005}
.hero h1>span{color:var(--gold);background:linear-gradient(180deg,#ffe83d 15%,#ffc414 58%,#ff9e00 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero .title-dot{color:#ffb600}
.hero .generate,header .primary,.primary,.pattern-open,.pattern-regenerate,.pattern-play,.detail-button{background:linear-gradient(125deg,#ffe52b,#ffcf14 48%,#ff9e00);border-color:#ffd637;color:#211300;box-shadow:0 3px 14px #ffb30018;text-shadow:none}
.pattern-play:hover{background:linear-gradient(125deg,#fff050,#ffba14)}
.hero .generate:focus-visible,button:focus-visible,a:focus-visible{outline-color:#ffe438}
.hero .input-wrap:focus-within,.hero .amount-input:focus-within{border-color:#ffc400;outline-color:#ffc40036}
.hero-eyebrow,.form-eyebrow,.hero figcaption,.modal-kicker,.pattern-dialog h2,.pattern-dialog .pattern-intro,.pattern-steps strong,.pattern-note strong,.pattern-note span{color:#ffd21b}
.generator-icon{color:#ffd21b;border-color:#ffc40055;background:#ffb30012}
.provider.active{border-color:#ffc400;color:#ffdf31;background:#ffb00014}
.provider-panel>h2{color:#ffdc36;border-color:#94701d;background:#2b200e}
.provider:hover,.game:hover{border-color:#ffc400}
.sample-pattern{color:#ffdb29;border-color:#a87616;background:#32230b}
.scroll-provider,#to-top{color:#ffd329;border-color:#8f681c;background:#231b0d}
.pattern-steps li:last-child{border-color:#b47d12}
.pattern-spinner{border-top-color:#ffdc22;border-right-color:#ff9800}
.pattern-spinner::after{border-bottom-color:#ffbe00}
.pattern-progress::-webkit-progress-value{background:linear-gradient(90deg,#ff9800,#ffe32b)}
.pattern-progress::-moz-progress-bar{background:linear-gradient(90deg,#ff9800,#ffe32b)}
