.lt-app{--lt-navy:#071d30;--lt-card:#fff;--lt-ink:#173448;--lt-sub:#526b7b;--lt-stroke:#d8e5ea;--lt-mint:#008f90;--lt-light:#edf8fa;--lt-shadow:0 15px 44px rgba(15,48,69,.075);max-width:1390px;margin:0 auto;padding:27px 22px 90px;color:var(--lt-ink);font-family:Montserrat,Arial,sans-serif;line-height:1.55}.lt-app *{box-sizing:border-box}.lt-app button,.lt-app input,.lt-app textarea,.lt-app select{font:inherit}.lt-app button{cursor:pointer}.lt-app .lt-intro{background:radial-gradient(circle at 85% 10%,#0e6e85 0,transparent 32%),linear-gradient(125deg,#0b233a,#071522);color:#fff;border-radius:28px;padding:clamp(25px,5vw,57px);margin:12px 0 24px;position:relative;overflow:hidden;box-shadow:0 22px 60px #021d3040}.lt-eyebrow{text-transform:uppercase;color:#63f3da;letter-spacing:.2em;font-weight:800;font-size:.73rem}.lt-app h1{font-size:clamp(2rem,4vw,3.7rem);line-height:1.13;letter-spacing:-.055em;margin:12px 0 18px;color:inherit}.lt-app .lt-intro p{font-size:clamp(.95rem,1.5vw,1.14rem);max-width:800px;color:#d5e8ed}.lt-breadcrumb{display:flex;gap:8px;flex-wrap:wrap;font-size:.75rem;opacity:.78}.lt-breadcrumb a{color:inherit}.lt-intro-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.lt-intro-tags span{background:#ffffff19;border:1px solid #ffffff23;border-radius:30px;padding:6px 12px;font-size:.73rem;color:#ddfff6}.lt-app .lt-grid{display:grid;grid-template-columns:minmax(295px,.9fr) minmax(0,1.3fr);gap:22px;align-items:start}.lt-app .lt-card{background:var(--lt-card);color:var(--lt-ink);border:1px solid var(--lt-stroke);box-shadow:var(--lt-shadow);border-radius:23px;padding:clamp(17px,2.2vw,30px);min-width:0}.lt-app .lt-card h2{font-size:1.33rem;margin:0 0 6px;color:var(--lt-ink);letter-spacing:-.04em}.lt-app .lt-card h3{font-size:1rem;color:var(--lt-ink);margin:18px 0 8px}.lt-muted{color:var(--lt-sub);font-size:.84rem}.lt-app .lt-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.lt-app .lt-fields .lt-full{grid-column:1/-1}.lt-app label.lt-field{display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:750;color:var(--lt-ink);min-width:0}.lt-app input:not([type=checkbox]):not([type=radio]):not([type=file]),.lt-app textarea,.lt-app select{width:100%;border:1px solid #bfd1da;border-radius:12px;background:#f8fcfd;color:#132f44;padding:11px 12px;font-size:.87rem;min-height:45px;outline-offset:2px}.lt-app input:focus-visible,.lt-app textarea:focus-visible,.lt-app select:focus-visible,.lt-app button:focus-visible,.lt-menu summary:focus-visible{outline:3px solid #17a1d4;outline-offset:2px}.lt-app textarea{resize:vertical;min-height:125px}.lt-app .lt-checks{display:flex;gap:12px 18px;flex-wrap:wrap;margin:10px 0}.lt-app .lt-checks label{display:flex;gap:7px;align-items:center;font-size:.78rem;font-weight:650}.lt-app input[type=checkbox]{accent-color:#008f90;width:16px;height:16px}.lt-app .lt-button{display:inline-flex;gap:8px;align-items:center;justify-content:center;border:1px solid #bfdee2;border-radius:12px;background:#e8f4f6;color:#114351;font-weight:800;letter-spacing:.005em;padding:12px 16px;min-height:44px;font-size:.83rem;transition:transform .15s,background .15s,border-color .15s;text-decoration:none;white-space:normal;text-align:center}.lt-app .lt-button:hover{transform:translateY(-1px);background:#d8eff1}.lt-app .lt-button.primary{border-color:#007e89;color:#fff;background:linear-gradient(125deg,#096f99,#049b91);box-shadow:0 7px 19px #077e9b33}.lt-app .lt-button.primary:hover{background:linear-gradient(125deg,#075b80,#00796c)}.lt-app .lt-button.danger{background:#fff4f3;color:#923728;border-color:#ebc6c1}.lt-app .lt-button[disabled]{opacity:.53;cursor:not-allowed;transform:none}.lt-actions{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0 5px}.lt-app details.lt-advanced{border:1px solid var(--lt-stroke);border-radius:14px;margin-top:18px;padding:13px;background:#f8fcfd}.lt-app details.lt-advanced summary{font-weight:850;cursor:pointer;color:#0d6072}.lt-app details.lt-advanced .lt-fields{margin-top:15px}.lt-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 20px}.lt-tabs button{border:1px solid var(--lt-stroke);background:#f1f7f8;color:#245363;padding:10px 13px;border-radius:11px;font-weight:750;font-size:.79rem}.lt-tabs button[aria-selected=true]{color:#fff;background:#0b5265;border-color:#0b5265}.lt-app [hidden]{display:none!important}.lt-app .lt-status{min-height:28px;font-size:.85rem;color:#165366;margin:12px 0}.lt-app .lt-status.error{color:#b63b35;font-weight:700}.lt-results{min-height:260px;display:grid;align-content:start;gap:16px}.lt-result{padding:16px 18px;background:linear-gradient(160deg,#f4fcfd,#eef6fb);border:1px solid #d4e9ec;border-radius:15px;overflow-wrap:anywhere}.lt-result-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:13px;font-size:.79rem;font-weight:850}.lt-balls{display:flex;gap:9px;flex-wrap:wrap}.lt-ball{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 9px;border-radius:50px;background:linear-gradient(155deg,#baf4ed 2%,#16aea6 70%,#04716e);box-shadow:inset 0 3px 4px #ffffff8c,0 4px 9px #056b6a30;color:#022c34;font-weight:850;font-size:.85rem}.lt-ball.extra{background:linear-gradient(150deg,#faedb6,#e0b94e);color:#583e00}.lt-app .lt-note{background:var(--lt-light);border:1px solid #cce7eb;border-radius:14px;padding:14px;font-size:.8rem;margin-top:16px;color:#315569}.lt-app .lt-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:26px 0}.lt-info article{padding:23px;background:#f5fbfc;border:1px solid #dae9ed;border-radius:18px}.lt-info h3{margin:0 0 8px;font-size:1rem}.lt-info p{font-size:.83rem;color:#527080;margin:0}.lt-app .lt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed #b6d4dd;border-radius:17px;background:#f6fbfc;min-height:205px;color:#6c8290;padding:20px;font-size:.88rem}.lt-app .lt-empty strong{display:block;color:#19445a;font-size:1.2rem}.lt-wheel-area{position:relative;max-width:min(100%,600px);margin:7px auto 0;aspect-ratio:1/1}.lt-wheel-area canvas{width:100%;height:100%;display:block;filter:drop-shadow(0 10px 20px #00273933)}.lt-pointer{position:absolute;top:0;left:50%;transform:translateX(-50%);width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:36px solid #f2c66d;z-index:2;filter:drop-shadow(0 3px 2px #0008)}.lt-wheel-center{position:absolute;inset:43%;width:14%;height:14%;border-radius:50%;background:linear-gradient(145deg,#fff,#9ae3dc);border:6px solid #063b4c;box-shadow:0 3px 10px #0008;pointer-events:none}.lt-winner{margin:15px 0;text-align:center;border-radius:17px;padding:18px;background:#e9fbf6;border:1px solid #b7eadd;color:#074d53}.lt-winner strong{font-size:clamp(1.1rem,3vw,1.8rem);display:block;overflow-wrap:anywhere}.lt-history{max-height:230px;overflow:auto;scrollbar-width:thin}.lt-history li{border-bottom:1px solid #dce9eb;padding:8px 2px;font-size:.81rem}.lt-app .lt-stage{background:radial-gradient(ellipse at 50% 16%,#216d78 0%,#082840 40%,#04111f 100%);color:#fff;border-radius:25px;min-height:650px;position:relative;overflow:hidden;padding:22px}.lt-app .lt-stage[data-theme=gold]{background:radial-gradient(ellipse at 50% 10%,#745d24,#19170f 52%,#080807)}.lt-app .lt-stage[data-theme=neon]{background:radial-gradient(ellipse at 50% 10%,#49217a,#0a173d 48%,#040614)}.lt-app .lt-stage[data-theme=clean]{background:linear-gradient(135deg,#1a425a,#0e2633)}.lt-app .lt-stage[data-theme=festival]{background:radial-gradient(ellipse at 50% 10%,#bd366f,#452978 55%,#180e39)}.lt-stage-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;border-bottom:1px solid #ffffff32;padding:0 0 14px}.lt-stage-title{font-size:clamp(1.2rem,3vw,2rem);line-height:1.2;color:white;margin:8px 0}.lt-stage-meta{font-size:.83rem;color:#c3eaeb}.lt-stage-middle{display:grid;grid-template-columns:minmax(0,2fr) minmax(150px,.9fr);gap:15px;align-items:center;min-height:450px}.lt-stage .lt-wheel-area{width:min(100%,510px)}.lt-stage .lt-wheel-center{border-color:#132f42}.lt-stage-side{font-size:.89rem;padding:15px;background:#ffffff0f;border:1px solid #ffffff2c;border-radius:18px;overflow-wrap:anywhere}.lt-stage-side strong{display:block;font-size:clamp(1rem,2vw,1.5rem);color:#a9ffdc;margin:10px 0}.lt-stage-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;padding-top:12px;border-top:1px solid #ffffff32}.lt-stage-actions button{min-width:100px}.lt-studio-panel{background:#f0f7f9;border:1px solid #d2e6eb;border-radius:17px;padding:18px;margin-top:17px}.lt-stage:fullscreen{height:100%;border-radius:0;display:flex;flex-direction:column;justify-content:space-between;padding:2vw}.lt-stage:fullscreen .lt-stage-middle{flex:1}.lt-stage:fullscreen .lt-wheel-area{width:min(60vh,55vw,710px)}.lt-stage:fullscreen .lt-stage-actions{padding-bottom:1vh}.lt-app .lt-overlay{position:absolute;inset:0;z-index:10;background:#031324e8;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center}.lt-overlay-body{max-width:850px;color:white}.lt-overlay-body .lt-winner-name{font-size:clamp(1.9rem,6vw,5.2rem);font-weight:900;line-height:1.1;color:#92f6e7;margin:14px 0;overflow-wrap:anywhere}.lt-overlay-body h2{color:#fff;font-size:clamp(1.4rem,3vw,2.7rem);margin:10px}.lt-overlay-body p{color:#e4e9ed}.lt-overlay-body .lt-button{margin:10px}.lt-app .lt-listing{display:flex;gap:8px;flex-wrap:wrap}.lt-app .lt-listing span{font-size:.75rem;border-radius:99px;border:1px solid #cfe2e8;padding:5px 9px;color:#315e6a}.lt-stage .lt-listing span{color:#fff;background:#ffffff22;border-color:#ffffff38}.lt-print{display:none}@media(max-width:900px){.lt-app .lt-grid{grid-template-columns:1fr}.lt-app .lt-info{grid-template-columns:1fr}.lt-stage-middle{grid-template-columns:1fr}.lt-app .lt-stage{min-height:560px}.lt-stage-side{order:-1}.lt-app .lt-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.lt-app{padding:12px 11px 60px}.lt-app .lt-card{padding:17px}.lt-app .lt-fields{grid-template-columns:1fr}.lt-app .lt-fields .lt-full{grid-column:auto}.lt-app .lt-intro{border-radius:18px;padding:25px 18px}.lt-balls{gap:6px}.lt-ball{min-width:36px;height:36px;font-size:.75rem}.lt-app .lt-button{font-size:.75rem;padding:10px 13px}.lt-pointer{border-left-width:12px;border-right-width:12px;border-top-width:25px}.lt-app .lt-stage{padding:12px}.lt-stage:fullscreen{padding:12px}.lt-stage:fullscreen .lt-wheel-area{width:min(86vw,53vh)}.lt-stage-side{padding:10px}}@media(prefers-reduced-motion:reduce){.lt-app *, .lt-menu *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{header,footer,.lt-actions,.lt-intro,.lt-tabs,.lt-stage-actions,.lt-fields,.lt-note,.lt-advanced{display:none!important}.lt-app .lt-card{border:0;box-shadow:none}}

html[data-theme='dark'] .lt-app{--lt-card:#11283b;--lt-ink:#edf8fa;--lt-sub:#b2c9d7;--lt-stroke:#335469;--lt-light:#17384d;--lt-shadow:0 12px 36px #03111a35}html[data-theme='dark'] .lt-app .lt-card{color:#edf8fa}html[data-theme='dark'] .lt-app .lt-note,html[data-theme='dark'] .lt-app .lt-info article{background:#19394d;color:#c6dce8;border-color:#365d71}html[data-theme='dark'] .lt-app .lt-info h3{color:#edf8fa}html[data-theme='dark'] .lt-app .lt-result{background:#183c50;border-color:#346279}html[data-theme='dark'] .lt-app .lt-empty{background:#102e43;border-color:#365d71;color:#d4eaf0}html[data-theme='dark'] .lt-app .lt-empty strong{color:#fff}html[data-theme='dark'] .lt-app details.lt-advanced{background:#16344a}html[data-theme='dark'] .lt-app .lt-tabs button{color:#134253}
.lt-confetti{position:absolute;z-index:1;width:9px;height:16px;border-radius:2px;pointer-events:none;animation:lt-fall 2.5s ease-in both}@keyframes lt-fall{0%{transform:translateY(-40px) rotate(0);opacity:1}100%{transform:translateY(110vh) rotate(600deg);opacity:0}}@media(prefers-reduced-motion:reduce){.lt-confetti{display:none!important}}.lt-overlay-body{position:relative;z-index:2}


/* Explicit hidden override: high-specificity app components otherwise override [hidden]. */
.lt-app [hidden], .lt-app [hidden] * {display:none!important}
.lt-app .lt-overlay[hidden], .lt-app .lt-stage[hidden] {display:none!important}
.lt-app :is(button,input,select,textarea,summary):focus-visible{outline:3px solid #159fa6;outline-offset:3px}
.lt-app :is(input,select,textarea){max-width:100%;box-sizing:border-box}
.lt-app .lt-stage canvas{touch-action:manipulation}
html[data-theme="dark"] .lt-app .lt-intro{border:1px solid rgba(92,205,205,.25)}


/* LottoLuma live-master fix, 2026-10-24: hero typography must not inherit the
   dark-ink styles used on ordinary light-background site pages. Scoped only to
   the three tool pages, with explicit colours regardless of light/dark mode. */
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro {
  color: #f5fbff !important;
}
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro > h1 {
  color: #f8fdff !important;
  opacity: 1 !important;
  text-shadow: 0 2px 18px rgba(0, 15, 30, .18);
}
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro > p {
  color: #d5e9f3 !important;
  opacity: 1 !important;
}
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro .lt-breadcrumb,
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro .lt-breadcrumb a {
  color: #ebf7ff !important;
}
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro .lt-eyebrow {
  color: #73f4e1 !important;
}
html body.ll-tools-page main#mainContent.lt-app > section.lt-intro .lt-intro-tags span {
  color: #ecfffc !important;
}


/* LottoLuma full-screen typography repair 20261024.
   The original site includes forceful global h2/h3 colour rules for light pages.
   Keep title and all draw-result captions readable against the dark studio
   in both themes, including when the stage becomes the fullscreen element. */
html body.ll-tools-page main#mainContent.lt-app #lt-stage,
html body.ll-tools-page main#mainContent.lt-app #lt-stage:fullscreen {
  color: #f3fbff !important;
  color-scheme: dark;
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage #lt-stage-event,
html body.ll-tools-page main#mainContent.lt-app #lt-stage:fullscreen #lt-stage-event {
  color: #ffffff !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: 0 2px 18px rgba(0, 10, 20, .38);
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-eyebrow {
  color: #79f4e0 !important;
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-stage-meta,
html body.ll-tools-page main#mainContent.lt-app #lt-stage #lt-stage-participants,
html body.ll-tools-page main#mainContent.lt-app #lt-stage #lt-stage-remaining,
html body.ll-tools-page main#mainContent.lt-app #lt-stage #lt-stage-progress,
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-stage-side small {
  color: #dbedf5 !important;
  opacity: 1 !important;
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage #lt-stage-prize {
  color: #afffe8 !important;
  -webkit-text-fill-color: #afffe8 !important;
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-stage-side h3,
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-overlay-body h2 {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-overlay-body p {
  color: #e0eff8 !important;
}
html body.ll-tools-page main#mainContent.lt-app #lt-stage .lt-overlay-body .lt-winner-name {
  color: #91f5e5 !important;
  -webkit-text-fill-color: #91f5e5 !important;
}
