/* Giro da Sorte 4.24 — ferramentas */
.gdsf{--lc:var(--primary);padding-block:24px 48px;display:grid;gap:20px}
.gdsf.lot-megasena,.gdsf-lot.lot-megasena,.gdsf-esp.lot-megasena{--lc:var(--mega)}
.gdsf.lot-lotofacil,.gdsf-lot.lot-lotofacil,.gdsf-esp.lot-lotofacil{--lc:var(--loto)}
.gdsf.lot-quina,.gdsf-lot.lot-quina,.gdsf-esp.lot-quina{--lc:var(--quina)}
.gdsf.lot-lotomania,.gdsf-lot.lot-lotomania{--lc:var(--mania)}
.gdsf.lot-duplasena,.gdsf-lot.lot-duplasena,.gdsf-esp.lot-duplasena{--lc:var(--dupla)}
.gdsf.lot-timemania,.gdsf-lot.lot-timemania{--lc:var(--time)}
.gdsf.lot-diadesorte,.gdsf-lot.lot-diadesorte{--lc:var(--dia)}
.gdsf.lot-supersete,.gdsf-lot.lot-supersete{--lc:var(--sete)}
.gdsf.lot-maismilionaria,.gdsf-lot.lot-maismilionaria{--lc:var(--milionaria)}
.gdsf h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.15;margin:0 0 6px;letter-spacing:-.02em}
.gdsf h2{font-size:1.15rem;margin:0 0 12px}
.gdsf-head p{margin:0;color:var(--muted-foreground);max-width:70ch}
.gdsf-sub{color:var(--muted-foreground);margin:0 0 10px;font-size:.92rem}
.gdsf-crumbs{font-size:.85rem;color:var(--muted-foreground)}.gdsf-crumbs a{color:var(--lc);font-weight:600}
.gdsf-abas{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.gdsf-abas a{white-space:nowrap;padding:9px 16px;border-radius:999px;border:1px solid var(--border);background:var(--card);font-weight:700;font-size:.9rem}
.gdsf-abas a.active{background:var(--foreground);color:var(--background);border-color:var(--foreground)}
.gdsf-lots{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.gdsf-lot{white-space:nowrap;padding:8px 14px;border-radius:12px;border:1.5px solid color-mix(in oklch,var(--lc) 35%,var(--border));color:var(--lc);font-weight:700;font-size:.88rem;background:var(--card)}
.gdsf-lot.active{background:var(--lc);color:var(--primary-foreground);border-color:var(--lc)}
.gdsf-janelas{display:flex;gap:6px;flex-wrap:wrap}.gdsf-janelas a{padding:6px 12px;border-radius:999px;background:var(--muted);font-size:.85rem;font-weight:600}.gdsf-janelas a.active{background:var(--lc);color:var(--primary-foreground)}
.gdsf .tool-panel{padding:20px}
.gdsf-grid2,.gdsf-grid3,.gdsf-tool{display:grid;gap:20px}
@media(min-width:860px){.gdsf-grid2,.gdsf-tool{grid-template-columns:1fr 1fr}.gdsf-grid3{grid-template-columns:repeat(3,1fr)}}
/* Volante */
.gdsf-volante{display:grid;grid-template-columns:repeat(var(--cols,10),minmax(0,1fr));gap:5px;position:relative;margin-bottom:12px}
.gdsf-volante button,.gdsf-volante span{aspect-ratio:1;border-radius:10px;border:1.5px solid var(--border);background:var(--card);font-weight:800;font-size:clamp(.72rem,2.6vw,.92rem);color:var(--foreground);display:grid;place-items:center;padding:0;transition:transform .12s,background .12s}
.gdsf-volante button:hover{border-color:var(--lc)}
.gdsf-volante button:active{transform:scale(.92)}
.gdsf-volante button.is-on{background:var(--lc);border-color:var(--lc);color:var(--primary-foreground)}
.gdsf-volante button.is-excl{background:var(--muted);color:var(--muted-foreground);text-decoration:line-through;border-style:dashed}
.gdsf-volante.is-colunas button{aspect-ratio:auto;padding:8px 0}
.gdsf-volante.is-trevos{max-width:320px}
.gdsf-volante.has-msg::after{content:attr(data-msg);position:absolute;inset:auto 0 -6px 0;transform:translateY(100%);text-align:center;font-size:.8rem;font-weight:700;color:var(--destructive,oklch(.58 .22 27))}
.gdsf-volante.is-heat span{background:color-mix(in oklch,var(--lc) calc(var(--p)*85%),var(--card));color:var(--foreground);display:flex;flex-direction:column;line-height:1.05;gap:1px}
.gdsf-volante.is-heat span b{font-size:clamp(.7rem,2.4vw,.9rem)}
.gdsf-volante.is-heat span small{font-size:.62rem;opacity:.7;font-weight:600}
.gdsf-volhead{display:flex;justify-content:space-between;align-items:center;gap:10px}
.gdsf-count{font-size:.85rem;font-weight:700;color:var(--lc)}
.gdsf-mini{font-size:.95rem;margin:4px 0 8px}
.gdsf-colar{display:grid;gap:4px;margin-top:6px}
.gdsf-acoes{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.gdsf-modos{display:grid;gap:8px;margin-bottom:14px}
.gdsf-modos label{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1.5px solid var(--border);border-radius:12px;font-weight:600;cursor:pointer}
.gdsf-modos label:has(input:checked){border-color:var(--lc);background:color-mix(in oklch,var(--lc) 8%,var(--card))}
.gdsf-modos input{accent-color:var(--lc)}
.gdsf-res{margin-top:16px}
.gdsf-big{font-size:1.1rem;margin:0 0 10px}.gdsf-big strong{color:var(--lc)}
.gdsf-loading{color:var(--muted-foreground);font-weight:600}
.gdsf-distbox{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.gdsf-distbox div{min-width:70px;padding:8px 10px;border-radius:12px;background:var(--muted);display:grid;text-align:center;line-height:1.2}
.gdsf-distbox div.is-prize{background:var(--lc);color:var(--primary-foreground)}
.gdsf-distbox strong{font-size:1.2rem}.gdsf-distbox small{font-size:.7rem;opacity:.8}.gdsf-distbox em{font-style:normal;font-weight:700;font-size:.85rem}
/* Tabelas */
.gdsf-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:var(--card)}
.gdsf-table{width:100%;border-collapse:collapse;font-size:.88rem}
.gdsf-table th,.gdsf-table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap}
.gdsf-table thead th{background:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground)}
.gdsf-table a{color:var(--lc)}
.gdsf-table tr.is-especial{background:color-mix(in oklch,var(--highlight) 18%,var(--card))}
.gdsf-dz{display:flex;flex-wrap:wrap;gap:4px;white-space:normal!important;min-width:180px}
.gdsf-dz b{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:color-mix(in oklch,var(--lc) 14%,var(--card));color:var(--lc);font-size:.78rem;font-weight:800}
.gdsf-dz b.is-hit{background:var(--lc);color:var(--primary-foreground)}
.gdsf-sep{font-size:.7rem;font-weight:800;color:var(--muted-foreground);align-self:center;margin:0 2px}
.gdsf-tag{font-size:.65rem;font-weight:800;text-transform:uppercase;padding:2px 6px;border-radius:6px;background:var(--highlight);color:var(--highlight-foreground)}
.gdsf-acu{font-weight:800;color:var(--lc);font-size:.8rem}
.gdsf-heat td{background:color-mix(in oklch,var(--lc) calc(var(--p)*70%),var(--card));text-align:center;font-weight:700}
.gdsf-pag{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.gdsf-pag-num{display:flex;flex-wrap:wrap;gap:6px}
.gdsf-pag-num a{font-size:.75rem;padding:4px 8px;border-radius:8px;background:var(--muted);font-weight:600}
.gdsf-pag-num a.active{background:var(--lc);color:var(--primary-foreground)}
.gdsf-ir{display:flex;gap:8px;align-items:end;flex-wrap:wrap}
.gdsf-ir label{display:grid;gap:4px;font-weight:600;font-size:.88rem}
.gdsf-ir input,.gdsf-filtros input{padding:10px 12px;border:1.5px solid var(--border);border-radius:10px;background:var(--card);min-width:0}
.gdsf-cta{display:flex;gap:10px;flex-wrap:wrap}.gdsf-cta.is-col{flex-direction:column;align-items:stretch}
/* Ranking e distribuições */
.gdsf-rank{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.gdsf-rank li{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px}
.gdsf-rank .ball{width:36px;height:36px;font-size:.85rem;display:grid;place-items:center;border-radius:50%;background:var(--lc);color:var(--primary-foreground);font-weight:800}
.gdsf-bar{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--lc) calc(var(--p)*100%),var(--muted) 0)}
.gdsf-bar.is-alt{background:linear-gradient(90deg,var(--highlight) calc(var(--p)*100%),var(--muted) 0)}
.gdsf-bar.is-muted{background:linear-gradient(90deg,var(--muted-foreground) calc(var(--p)*100%),var(--muted) 0)}
.gdsf-rank em,.gdsf-dist em{font-style:normal;font-weight:700;font-size:.82rem;color:var(--muted-foreground)}
.gdsf-dist{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.gdsf-dist li{display:grid;grid-template-columns:minmax(110px,auto) 1fr 52px;gap:10px;align-items:center;font-size:.86rem}
.gdsf-dist i{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--lc) calc(var(--p)*100%),var(--muted) 0)}
.gdsf-quad{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.gdsf-quad div{padding:14px;border-radius:14px;background:color-mix(in oklch,var(--lc) 10%,var(--card));display:grid;gap:2px}
.gdsf-quad strong{font-size:1.5rem;color:var(--lc)}.gdsf-quad span{font-weight:700;font-size:.85rem}.gdsf-quad small{color:var(--muted-foreground);font-size:.75rem}
.gdsf-cities{margin:0;padding-left:22px;display:grid;gap:6px}
.gdsf-cities li{font-size:.9rem}.gdsf-cities li span{font-weight:600}.gdsf-cities li em{font-style:normal;color:var(--muted-foreground);margin-left:6px;font-size:.82rem}
/* Gerador */
.gdsf-tabs{display:flex;gap:6px;background:var(--muted);padding:5px;border-radius:14px;width:fit-content;max-width:100%;overflow-x:auto}
.gdsf-tabs button{border:0;background:transparent;padding:9px 14px;border-radius:10px;font-weight:700;white-space:nowrap;color:var(--muted-foreground)}
.gdsf-tabs button.active{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-sm)}
.gdsf [data-gdsf-gerador]{grid-template-columns:1fr}
.gdsf-filtros{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0}
.gdsf-filtros label{display:grid;gap:4px;font-weight:700;font-size:.85rem}
.gdsf-filtros span{display:flex;align-items:center;gap:6px;font-weight:500;color:var(--muted-foreground)}
.gdsf-filtros input{width:64px}
.gdsf-k{padding:1px 6px;border-radius:6px;font-size:.8rem}.gdsf-k.is-fixa{background:var(--lc);color:var(--primary-foreground)}.gdsf-k.is-excl{background:var(--muted);text-decoration:line-through}
.gdsf-out{display:grid;gap:8px;margin-top:14px;max-height:620px;overflow:auto}
.gdsf-out .gds-gen__game{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border);border-radius:12px}
.gdsf-out .gds-gen__game>span{font-size:.75rem;font-weight:800;color:var(--muted-foreground);min-width:52px}
.gdsf-out .gds-gen__balls{display:flex;gap:4px;flex-wrap:wrap}
.gdsf-out .gds-gen__balls b{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--lc);color:var(--primary-foreground);font-size:.8rem}
/* Especiais */
.gdsf-hero{border-radius:28px;padding:clamp(22px,5vw,44px);background:radial-gradient(600px 300px at 90% 0,color-mix(in oklch,var(--highlight) 35%,transparent),transparent 70%),linear-gradient(140deg,var(--lc),color-mix(in oklch,var(--lc) 60%,var(--foreground)));color:var(--primary-foreground);display:grid;gap:12px}
.gdsf-hero p{margin:0;opacity:.92;max-width:65ch}
.gdsf-eyebrow{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:.85}
.gdsf-countdown{display:flex;gap:10px;flex-wrap:wrap}
.gdsf-countdown div{min-width:74px;padding:12px 10px;border-radius:16px;background:oklch(1 0 0 / .14);backdrop-filter:blur(4px);display:grid;text-align:center;line-height:1.1}
.gdsf-countdown b{font-size:clamp(1.6rem,6vw,2.4rem);font-variant-numeric:tabular-nums}
.gdsf-countdown small{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;opacity:.85}
.gdsf-countdown.is-sm div{min-width:54px;padding:8px 6px;border-radius:12px}.gdsf-countdown.is-sm b{font-size:1.3rem}
.gdsf-hero-meta strong{font-weight:800}
.gdsf-hero-prize{display:flex;gap:12px;flex-wrap:wrap}
.gdsf-hero-prize div{padding:12px 16px;border-radius:16px;background:oklch(1 0 0 / .12);display:grid}
.gdsf-hero-prize small{font-size:.75rem;opacity:.85}.gdsf-hero-prize strong{font-size:1.5rem}
.gdsf-hero .tool-note{color:inherit;opacity:.8}
.gdsf-list{margin:0;padding-left:18px;display:grid;gap:8px}
.gdsf-faq details{border-bottom:1px solid var(--border);padding:10px 0}.gdsf-faq summary{font-weight:700;cursor:pointer}.gdsf-faq p{margin:8px 0 0;color:var(--muted-foreground)}
.gdsf-especiais{display:grid;gap:16px}
@media(min-width:760px){.gdsf-especiais{grid-template-columns:1fr 1fr}}
.gdsf-esp{border-radius:24px;padding:22px;background:linear-gradient(140deg,var(--lc),color-mix(in oklch,var(--lc) 60%,var(--foreground)));color:var(--primary-foreground);display:grid;gap:10px;transition:transform .15s}
.gdsf-esp:hover{transform:translateY(-2px)}
.gdsf-esp h2{margin:0;font-size:1.35rem}.gdsf-esp p{margin:0;opacity:.9}
.gdsf-esp-prize{display:grid}.gdsf-esp-prize strong{font-size:1.4rem}
.gdsf-resumo{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.gdsf-resumo div{padding:10px 14px;border-radius:12px;background:var(--muted);display:grid;line-height:1.25}
.gdsf-resumo small{font-size:.72rem;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em}.gdsf-resumo strong{font-size:1rem}
.gdsf-nav-conc{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.gdsf-home-tools{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin:24px 0}
.gdsf-home-tools a{padding:18px;border-radius:20px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-sm);display:grid;gap:4px}
.gdsf-home-tools a strong{font-size:1rem}.gdsf-home-tools a span{font-size:.85rem;color:var(--muted-foreground)}
.gdsf-home-tools a:hover{border-color:var(--primary)}
.gdsf>*,.gdsf-grid2>*,.gdsf-grid3>*,.gdsf-tool>*{min-width:0}
.gdsf-hero,.gdsf-hero *{overflow-wrap:anywhere}
.gdsf-res .gdsf-dz b{background:var(--muted);color:var(--muted-foreground)}
.gdsf-res .gdsf-dz b.is-hit{background:var(--lc);color:var(--primary-foreground)}
.gdsf-countdown{flex-wrap:nowrap}.gdsf-countdown div{flex:1 1 0;min-width:0}
