/* Lotto Orbit Ultimate 2026 — subtle progressive upgrades; no third-party assets. */
:root{
 --ou-ink:#11344b;--ou-muted:#50718a;--ou-surface:rgba(255,255,255,.91);
 --ou-edge:#cbdfea;--ou-glow:#21a7a0;--ou-shade:0 15px 36px rgba(20,78,108,.09);
}
html[data-theme="dark"]{
 --ou-ink:#ebf8ff;--ou-muted:#afc7db;--ou-surface:rgba(20,43,61,.96);
 --ou-edge:#36536a;--ou-glow:#75e6cb;--ou-shade:0 16px 39px rgba(1,8,17,.22);
}
/* Sitewide lottery finder: compact even on an already busy header. */
#siteHeader .ou-search-trigger{
 order:15;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;
 min-height:39px;min-width:44px;padding:8px 12px;border:1px solid var(--ou-edge);
 border-radius:12px;background:var(--ou-surface);color:var(--ou-ink);
 font:800 10px/1.1 Montserrat,system-ui,sans-serif;letter-spacing:.02em;white-space:nowrap;
 transition:border-color .18s,box-shadow .18s,transform .18s;
}
#siteHeader .ou-search-trigger:hover{border-color:var(--ou-glow);box-shadow:0 6px 16px rgba(22,95,133,.10);transform:translateY(-1px)}
.ou-search-symbol{font:600 26px/18px system-ui,sans-serif;display:inline-block;transform:rotate(-13deg)}
.ou-dialog-open{overflow:hidden}
.ou-search-mask{position:fixed;inset:0;z-index:100010;display:grid;place-items:start center;padding:clamp(40px,12vh,110px) 14px 20px;background:rgba(4,16,27,.68);backdrop-filter:blur(7px);overflow:auto}
.ou-search-mask[hidden]{display:none!important}
.ou-search-dialog{width:min(640px,100%);max-height:calc(100vh - 90px);overflow:auto;background:var(--ou-surface);border:1px solid var(--ou-edge);color:var(--ou-ink);border-radius:20px;padding:20px;box-shadow:0 32px 80px rgba(0,0,0,.3)}
.ou-search-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:13px}
.ou-search-header h2{font:900 23px/1.2 Montserrat,system-ui,sans-serif;margin:0;color:var(--ou-ink)}
.ou-search-close{flex:0 0 36px;border:1px solid var(--ou-edge);border-radius:10px;background:transparent;color:var(--ou-ink);font-size:24px;height:36px;line-height:1}
.ou-search-field{display:block}.ou-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ou-search-input{width:100%;min-height:51px;background:var(--ou-surface)!important;border:1px solid var(--ou-edge)!important;border-radius:13px!important;color:var(--ou-ink)!important;padding:12px 15px!important;font-size:14px!important}
.ou-search-input::placeholder{color:var(--ou-muted)}.ou-search-help{color:var(--ou-muted);font-size:11px;line-height:1.6;margin:11px 0}
.ou-search-results{display:grid;gap:6px;max-height:min(55vh,510px);overflow:auto}
.ou-search-result{display:grid;grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:11px;color:var(--ou-ink)!important;padding:11px;border-radius:12px;border:1px solid transparent;text-decoration:none!important;min-height:56px}
.ou-search-result:hover,.ou-search-result.is-selected{background:color-mix(in srgb,var(--ou-glow) 10%,var(--ou-surface));border-color:var(--ou-edge)}
.ou-search-initial{height:38px;width:38px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--ou-glow) 18%,var(--ou-surface));color:var(--ou-ink);font-weight:900;font-size:15px}
.ou-search-result-meta{min-width:0;display:grid;gap:3px}.ou-search-result-meta strong{font-size:12px}.ou-search-result-meta small{font-size:10px;color:var(--ou-muted)}
.ou-search-result-arrow{color:var(--ou-muted);font-weight:800}.ou-search-empty{padding:20px 10px;color:var(--ou-muted)}
/* Next Draw Spotlight, using the calendar's existing timezone-aware schedule engine. */
.ou-spotlight{margin:0 0 30px;padding:clamp(19px,2.8vw,31px);border-radius:22px;border:1px solid var(--ou-edge);background:linear-gradient(120deg,color-mix(in srgb,var(--ou-glow) 10%,var(--ou-surface)),var(--ou-surface) 70%);box-shadow:var(--ou-shade);color:var(--ou-ink)}
.ou-spotlight-head{margin-bottom:17px}.ou-eyebrow{color:#168d8a;font:900 10px/1.3 Montserrat,system-ui,sans-serif;letter-spacing:.16em;margin-bottom:7px}
.ou-spotlight-head h2{font:900 clamp(19px,2.2vw,27px)/1.25 Montserrat,system-ui,sans-serif;letter-spacing:-.025em;color:var(--ou-ink);margin:0 0 5px}
.ou-spotlight-head p{font:500 11px/1.6 Montserrat,system-ui,sans-serif;color:var(--ou-muted);margin:0}
.ou-spotlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ou-spotlight-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:7px;padding:18px;border-radius:17px;border:1px solid var(--ou-edge);background:var(--ou-surface);box-shadow:0 4px 16px rgba(18,81,111,.045)}
.ou-spotlight-card-main{border-color:color-mix(in srgb,var(--ou-glow) 58%,var(--ou-edge));background:linear-gradient(135deg,color-mix(in srgb,var(--ou-glow) 10%,var(--ou-surface)),var(--ou-surface) 70%)}
.ou-spotlight-top{display:flex;align-items:center;justify-content:space-between;width:100%;flex-wrap:wrap;gap:7px}
.ou-spotlight-place{font:900 9px Montserrat,system-ui,sans-serif;letter-spacing:.14em;color:#1a868d}.ou-spotlight-region{font:750 10px Montserrat,system-ui,sans-serif;color:var(--ou-muted)}
.ou-spotlight-card h3{font:900 clamp(15px,1.5vw,19px)/1.28 Montserrat,system-ui,sans-serif;color:var(--ou-ink);margin:7px 0 2px}
.ou-spotlight-count{font:900 clamp(18px,2vw,24px)/1.3 Montserrat,system-ui,sans-serif;color:#137c95;letter-spacing:-.025em}
html[data-theme="dark"] .ou-spotlight-count{color:#8ae3e2}.ou-spotlight-when{font:500 10px/1.5 Montserrat,system-ui,sans-serif;color:var(--ou-muted);margin:0}
.ou-spotlight-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:5px;font:800 11px Montserrat,system-ui,sans-serif;color:#08739a!important;text-decoration:none!important}
html[data-theme="dark"] .ou-spotlight-link{color:#8ee4e9!important}.ou-spotlight-link:hover{text-decoration:underline!important}
.ou-spotlight-all{display:inline-flex;margin-top:16px;color:#158e9a!important;text-decoration:none!important;font:800 11px Montserrat,system-ui,sans-serif}
html[data-theme="dark"] .ou-spotlight-all{color:#9ceacb!important}.ou-spotlight-fallback{font-size:12px;color:var(--ou-muted)}
/* Refined card previews and generated numbers, without touching existing PNG/canvas logic. */
body[data-game] .line-card:not(.is-empty) .number-ball:not(.ball-placeholder){
 position:relative;border:1px solid rgba(255,255,255,.24)!important;
 background-image:radial-gradient(circle at 29% 19%,rgba(255,255,255,.54) 0%,rgba(255,255,255,.12) 21%,transparent 44%),linear-gradient(145deg,rgba(255,255,255,.10),transparent 60%)!important;
 box-shadow:inset 0 -4px 8px rgba(0,0,0,.10),inset 0 2px 4px rgba(255,255,255,.18),0 6px 14px rgba(9,37,54,.13)!important;
}
body[data-game] .line-card:not(.is-empty) .number-ball.ball-extra{box-shadow:inset 0 -5px 8px rgba(50,20,10,.17),inset 0 2px 4px rgba(255,255,255,.20),0 7px 16px rgba(53,37,13,.15)!important}
@keyframes ou-ball-reveal{from{opacity:.32;transform:translateY(9px) scale(.87)}to{opacity:1;transform:translateY(0) scale(1)}}
body[data-game] .ou-new-line .number-ball:not(.ball-placeholder){animation:ou-ball-reveal .42s cubic-bezier(.22,.73,.33,1.1) both;animation-delay:calc(var(--ou-ball-index,0)*55ms)}
body[data-game] .orbit-share-card-tool{border-radius:21px!important;border:1px solid var(--ou-edge)!important;box-shadow:var(--ou-shade)!important;overflow:hidden}
body[data-game] .orbit-share-preview{border-radius:17px!important;overflow:hidden}
body[data-game] .orbit-share-preview-image{max-width:100%;height:auto}
body[data-game] .ou-ticket-jump{white-space:normal;min-height:36px;line-height:1.3}
body[data-game] .orbit-share-card-tool.ou-spotlit{outline:2px solid #36b7ab;outline-offset:3px}
/* History: clear distinction between user-imported evidence and forecasts. */
.ou-history-context{font:650 11px/1.65 Montserrat,system-ui,sans-serif;padding:11px 14px;border-left:3px solid #3ca9a0;border-radius:9px;background:color-mix(in srgb,var(--ou-glow) 9%,var(--ou-surface));color:var(--ou-muted)}
.ou-history-context[hidden]{display:none!important}
body[data-game] .freq-track{height:11px;border-radius:99px;overflow:hidden}
body[data-game] .freq-fill{border-radius:99px;box-shadow:inset 0 1px 1px rgba(255,255,255,.18)}
body[data-game] .analysis-metrics>span{border-radius:12px;border:1px solid var(--ou-edge)}
/* Small-screen studio refinement — keep Number Controls always visible. */
.ou-mobile-jump{display:none;position:fixed;right:14px;bottom:calc(85px + env(safe-area-inset-bottom,0px));z-index:35;min-height:43px;border:1px solid #3aacc4;border-radius:999px;padding:9px 15px;background:#1a608b;color:#fff;font:800 10px Montserrat,system-ui,sans-serif;box-shadow:0 8px 25px rgba(5,38,67,.22)}
.ou-mobile-jump[hidden]{display:none!important}
body[data-game] #numberStudio .left-sidebar>.panel:first-child .panel-inner{visibility:visible}
body[data-game] .orbit-mobile-info-toggle{min-height:49px;touch-action:manipulation}
/* Country-tile and action polish: soft hover, no movement for reduced-motion. */
.country-tile,.orbit-foot-connect>div{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.country-tile:hover{transform:translateY(-2px);box-shadow:var(--ou-shade)}
.country-lottery-link:focus-visible,.ou-search-trigger:focus-visible,.ou-search-close:focus-visible,.ou-search-result:focus-visible,.ou-mobile-jump:focus-visible{outline:3px solid #4abdc6!important;outline-offset:3px}
@media(max-width:1100px){#siteHeader .ou-search-words{display:none}#siteHeader .ou-search-trigger{margin-left:0;min-width:40px;padding:7px 9px}}
@media(max-width:850px){.ou-spotlight-grid{grid-template-columns:1fr 1fr}.ou-spotlight-card-main{grid-column:1/-1}}
@media(max-width:650px){
 .ou-spotlight{padding:18px;margin-bottom:21px;border-radius:17px}
 .ou-spotlight-grid{grid-template-columns:1fr;gap:10px}.ou-spotlight-card-main{grid-column:auto}
 .ou-spotlight-card{padding:15px}.ou-spotlight-card h3{margin-top:2px}
 .ou-search-mask{padding-top:20px}.ou-search-dialog{padding:16px;border-radius:16px;max-height:90vh}
 .ou-mobile-jump:not([hidden]){display:inline-flex;align-items:center;justify-content:center}
 body[data-game] #numberStudio .panel-inner{min-width:0}
 body[data-game] #numberStudio .quick-buttons button{min-height:44px}
 body[data-game] .line-card{scroll-margin-top:95px}
}
@media(prefers-reduced-motion:reduce){
 .country-tile,.orbit-foot-connect>div,#siteHeader .ou-search-trigger,.line-card .number-ball{transition:none!important;animation:none!important;transform:none!important}
 .country-tile:hover,#siteHeader .ou-search-trigger:hover{transform:none!important}
 body[data-game] .ou-new-line .number-ball{animation:none!important}
}
@media print{.ou-spotlight,.ou-search-trigger,.ou-search-mask,.ou-ticket-jump,.ou-mobile-jump,.ou-history-context{display:none!important}}
