
:root{--ink:#101828;--muted:#667085;--line:#e4e7ec;--paper:#fff;--wash:#f7f8fa;--max:#155eef;--max-deep:#073b9f;--max-soft:#eaf2ff;--six:#8b3dff;--six-deep:#4c1d95;--six-soft:#f3ecff;--accent:var(--max);--accent-deep:var(--max-deep);--accent-soft:var(--max-soft);--radius:22px;--shadow:0 1px 2px rgba(16,24,40,.05),0 8px 24px rgba(16,24,40,.08)}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--wash);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
button,a{font:inherit}
button{cursor:pointer}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;z-index:100;background:#fff;padding:12px 18px;border-radius:12px;color:#111;outline:3px solid #ffd43b}
.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.nav{max-width:1180px;margin:auto;height:72px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:-.5px;text-decoration:none;color:var(--ink);font-size:20px}
.brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#b7f34a;color:#173600;font-size:18px;transform:rotate(-4deg)}
.nav-actions{display:flex;align-items:center;gap:8px}
.lang{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:750}
.official{display:inline-flex;align-items:center;gap:7px;color:#344054;text-decoration:none;font-size:14px;font-weight:650}
.official:before{display:none}
.wrap{max-width:1180px;margin:auto;padding:28px 24px 80px}
.game-switch{display:inline-grid;grid-template-columns:1fr 1fr;background:#eaecf0;padding:4px;border-radius:999px;margin-bottom:18px}
.game-switch button{border:0;background:transparent;padding:10px 18px;border-radius:999px;color:#475467;font-weight:750}
.game-switch button[aria-selected=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(16,24,40,.16)}
.hero{position:relative;overflow:hidden;border-radius:32px;padding:38px 42px 36px;background:linear-gradient(135deg,var(--accent-deep),var(--accent) 62%,#52a9ff);color:#fff;box-shadow:var(--shadow)}
body[data-game="lotto-649"]{--accent:var(--six);--accent-deep:var(--six-deep);--accent-soft:var(--six-soft)}
body[data-game="lotto-649"] .hero{background:linear-gradient(135deg,#36116f,var(--six) 62%,#ff7ac3)}
.hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-140px;top:-210px;background:rgba(255,255,255,.12)}
.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:850;opacity:.86}
.live-dot{width:8px;height:8px;background:#b7f34a;border-radius:50%;box-shadow:0 0 0 5px rgba(183,243,74,.16)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end}
.hero h1{font-size:clamp(34px,5vw,64px);line-height:.98;letter-spacing:-.055em;margin:16px 0 10px;max-width:740px}
.draw-date{font-size:16px;opacity:.9;margin:0 0 26px}
.balls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ball{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--accent-deep);font-size:21px;font-weight:850;box-shadow:inset 0 -5px 0 rgba(16,24,40,.09),0 6px 18px rgba(0,0,0,.16)}
.bonus-wrap{display:flex;align-items:center;gap:8px;margin-left:6px}
.plus{font-weight:850;opacity:.75}
.ball.bonus{width:48px;height:48px;background:#b7f34a;color:#173600;font-size:18px}
.bonus-label{font-size:12px;opacity:.78}
.hero-side{min-width:210px;display:flex;flex-direction:column;align-items:stretch;gap:10px}
.primary,.secondary{border:0;border-radius:999px;padding:14px 20px;font-weight:800;transition:.18s transform,.18s box-shadow}
.primary{background:#b7f34a;color:#173600;box-shadow:0 8px 22px rgba(0,0,0,.16)}
.secondary{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.38)}
.primary:hover,.secondary:hover{transform:translateY(-2px)}
.primary:focus-visible,.secondary:focus-visible,.game-switch button:focus-visible,.tool:focus-visible,.load-more:focus-visible{outline:3px solid #ffd43b;outline-offset:3px}
.source-line{position:relative;z-index:1;margin:24px 0 0;font-size:13px;opacity:.92}
.source-line a{color:inherit}
.section{margin-top:34px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:15px}
.section h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.035em;margin:0}
.section-head p{margin:4px 0 0;color:var(--muted)}
.tools{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tool{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;text-align:left;min-height:154px;box-shadow:0 1px 2px rgba(16,24,40,.04);transition:.2s transform,.2s box-shadow,.2s border;text-decoration:none;color:inherit}
.tool:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#c7d7fe}
.tool-icon{width:42px;height:42px;border-radius:13px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:19px;margin-bottom:22px}
.tool strong{display:block;font-size:17px;margin-bottom:5px}
.tool span{color:var(--muted);font-size:14px}
.content-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.history-list{display:grid;gap:2px}
.draw-row{display:grid;grid-template-columns:108px 1fr auto;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid #f0f1f3}
.draw-row:last-child{border:0}
.date{font-size:13px;font-weight:720;color:#475467}
.mini-balls{display:flex;flex-wrap:wrap;gap:6px}
.mini{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-deep);font-size:13px;font-weight:800}
.mini.bonus{background:#ecfccb;color:#365314;border:1px solid #bef264}
.complement{font-size:11px;color:var(--muted);white-space:nowrap}
.load-more{width:100%;margin-top:14px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:12px;color:#344054;font-weight:750}
.freq-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px}
.freq{background:var(--accent-soft);border-radius:15px;padding:12px 8px;text-align:center}
.freq b{font-size:21px;display:block;color:var(--accent-deep)}
.freq span{font-size:12px;color:var(--muted)}
.insight{margin-top:16px;padding:14px;border-radius:14px;background:#fffaeb;color:#7a2e0e;font-size:13px}
.generator{display:grid;gap:12px}
.ticket{display:flex;flex-wrap:wrap;gap:7px;padding:15px;border-radius:16px;background:#f8fafc;border:1px solid var(--line)}
.ticket span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d0d5dd;font-weight:800;font-size:13px}
.generate{border:0;background:var(--ink);color:#fff;border-radius:999px;padding:13px;font-weight:800}
.fine{color:var(--muted);font-size:13px;margin:0}
.status{min-height:21px;color:#067647;font-size:13px;font-weight:700}
.error{padding:18px;border-radius:16px;background:#fef3f2;color:#b42318}
.skeleton{height:34px;background:linear-gradient(90deg,#eef0f3,#f8f9fa,#eef0f3);background-size:200% 100%;animation:shine 1.2s infinite;border-radius:10px}
@keyframes shine{to{background-position:-200% 0}
}
footer{max-width:1180px;margin:auto;padding:24px;color:#667085;font-size:13px;border-top:1px solid var(--line)}
footer strong{color:#344054}
@media(max-width:800px){.hero{padding:30px 24px}
.hero-grid{grid-template-columns:1fr}
.hero-side{min-width:0;display:grid;grid-template-columns:1fr 1fr}
.tools{grid-template-columns:1fr}
.content-grid{grid-template-columns:1fr}
.tool{min-height:0}
.section-head{align-items:start;flex-direction:column}
.draw-row{grid-template-columns:86px 1fr}
.complement{grid-column:2}
.ball{width:49px;height:49px;font-size:18px}
.ball.bonus{width:43px;height:43px}
.source-line,.fine{font-size:13px}
}
@media(max-width:430px){.nav{padding:0 12px;height:64px;gap:8px}
.nav-actions{gap:5px}
.official{font-size:12px}
.lang{font-size:12px;padding:7px 8px}
.wrap{padding:18px 14px 60px}
.brand{font-size:17px}
.brand-mark{width:30px;height:30px}
.lang{padding:8px 10px}
.hero{border-radius:24px;padding:26px 18px}
.hero h1{font-size:36px}
.balls{gap:5px}
.ball{width:38px;height:38px;font-size:15px}
.ball.bonus{width:38px;height:38px}
.bonus-wrap{flex-basis:100%;margin:7px 0 0}
.hero-side{grid-template-columns:1fr}
.game-switch{display:grid;width:100%}
.game-switch button{padding:10px 8px}
.panel{padding:16px;border-radius:18px}
.draw-row{grid-template-columns:1fr;gap:8px}
.complement{grid-column:1}
.mini{width:32px;height:32px}
.freq-grid{grid-template-columns:repeat(5,1fr);gap:6px}
.freq{padding:10px 4px}
.freq b{font-size:18px}
}


/* Consumer integration: readable trust copy and responsive navigation. */
.source-line,.fine,.insight,.status,.date,.mini,.freq span,.bonus-label,.eyebrow,footer,.official,.lang,.ticket span{font-size:14px}

a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #f4b400;outline-offset:4px}

.hero a{color:inherit}
.hero a.primary{color:#173600}
.hero-side a{text-align:center;text-decoration:none}
.game-switch a{padding:10px 18px;border-radius:999px;text-align:center;text-decoration:none;color:#475467;font-weight:750}

.game-switch a[aria-current=page]{background:white;color:var(--ink);box-shadow:0 1px 3px #10182829}

.nav{height:auto;min-height:72px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
.nav-actions{flex-wrap:wrap}
.language-menu{position:relative}
.language-menu[open] .language-links{position:absolute;right:0;top:32px;min-width:220px;padding:16px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}

.language-links a{display:block;padding:8px;color:var(--ink)}
.language-links p{font-size:14px}
.source-line{overflow-wrap:anywhere}
.freshness{padding:12px;background:#fff6dc;color:#713f12;border-radius:12px;margin-top:16px;font-size:14px}
.error{display:block}
#generate{scroll-margin-top:150px}
footer a{color:#344054}
footer nav{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px}
.tools a{display:block}
.skeleton{max-width:100%}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{animation:none!important;transition:none!important}
}

