/* Scoped daily challenge presentation. Existing game engines remain unchanged. */
.daily-hub{width:min(1500px,calc(100% - 32px));--dc-ink:#172554;--dc-muted:#475569;--dc-panel:#fff;--dc-soft:#f1f5ff;--dc-border:#dbe4f0;color:var(--dc-ink)}
.daily-hub *{box-sizing:border-box}.daily-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;align-items:center;padding:clamp(24px,4vw,56px);border-radius:28px;background:linear-gradient(125deg,#173fc9,#5840d8 65%,#2669de);color:white}.daily-eyebrow{font-size:13px;font-weight:800;letter-spacing:.04em}.daily-hero h1{font-size:clamp(32px,4.5vw,60px);line-height:1.08;margin:16px 0}.daily-hero p{max-width:660px;font-size:18px;line-height:1.7;color:#edf2ff}.daily-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.daily-pills span{padding:7px 12px;border:1px solid #ffffff50;border-radius:99px;font-size:12px;font-weight:700}.daily-hero-note{padding:28px;border:1px solid #ffffff40;border-radius:22px;background:#ffffff12}.daily-hero-note>span{display:block;font-size:48px;margin-bottom:14px}.daily-hero-note strong{font-size:24px;line-height:1.4}.daily-hero-note p{font-size:15px;margin-top:12px}.daily-progress{margin:20px 0 0;gap:14px}.daily-progress .competition-stat{background:var(--dc-panel);border:1px solid var(--dc-border);padding:20px;text-align:left;border-radius:18px}.daily-progress .competition-stat strong{color:var(--dc-ink);font-size:32px}.daily-progress .competition-stat span{color:var(--dc-muted)}.daily-challenges{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}.daily-challenges .games-section{margin:0;padding:24px;border:1px solid var(--dc-border);border-radius:24px;background:var(--dc-panel);min-width:0}.daily-challenges .daily-primary{border-top:4px solid #2563eb}.daily-challenges .daily-weekly{border-top:4px solid #7c3aed}.daily-kicker{display:block;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.08em;color:#385dc0;margin-bottom:10px}.daily-hub h2{font-size:clamp(24px,2.6vw,34px);line-height:1.2;margin:0 0 12px;color:var(--dc-ink)}.daily-hub h3{font-size:19px;line-height:1.4;color:var(--dc-ink)}.daily-hub p{line-height:1.75}.daily-challenges .games-section-heading p{font-size:15px;color:var(--dc-muted)}.daily-hub .challenge-card{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:22px;background:var(--dc-soft);border:1px solid var(--dc-border);border-radius:18px;box-shadow:none;height:auto}.daily-hub .challenge-card-icon{font-size:36px;align-self:flex-start}.daily-hub .challenge-card-copy h2{font-size:25px;margin:10px 0}.daily-hub .challenge-card-copy p{color:var(--dc-muted);font-size:16px}.daily-hub .challenge-card-copy>span{color:var(--dc-muted)}.daily-hub .challenge-card-tags{display:flex;flex-wrap:wrap;gap:8px}.daily-hub .challenge-card-tags span{background:var(--dc-panel);color:var(--dc-ink);border:1px solid var(--dc-border);padding:6px 9px;white-space:normal}.daily-hub .challenge-card-action{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0}.daily-hub .challenge-status{align-self:flex-start;font-size:13px;white-space:normal}.daily-hub .game-button{min-height:48px;background:#2563eb;color:white;text-align:center}.daily-weekly .game-button{background:#6d28d9}.daily-section{margin-top:40px}.daily-section-title{max-width:760px;margin-bottom:22px}.daily-section-title p,.daily-steps p,.daily-resource p,.daily-explain p,.daily-faq p{color:var(--dc-muted)}.daily-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.daily-steps article,.daily-resource{padding:24px;border:1px solid var(--dc-border);border-radius:20px;background:var(--dc-panel)}.daily-step{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--dc-soft);color:var(--dc-ink);font-weight:800;margin-bottom:16px}.daily-explain{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;background:var(--dc-soft);padding:32px;border-radius:24px;border:1px solid var(--dc-border)}.daily-explain p{margin:14px 0}.daily-explain a,.daily-faq a{color:#2859c2;text-decoration:underline;text-underline-offset:3px}.daily-explain aside{background:var(--dc-panel);padding:24px;border-radius:18px}.daily-explain ul{list-style:disc;padding-left:22px;color:var(--dc-muted)}.daily-explain li{padding:6px 0;line-height:1.65}.daily-resources{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.daily-resource{display:flex;flex-direction:column;text-decoration:none;transition:border-color .15s}.daily-resource>span{font-size:30px;margin-bottom:14px}.daily-resource p{font-size:15px;flex:1;margin:12px 0 20px}.daily-resource b{color:#2859c2;font-size:14px}.daily-resource:hover{border-color:#2563eb}.daily-faq details{border-bottom:1px solid var(--dc-border);padding:18px 0}.daily-faq summary{font-size:17px;font-weight:700;cursor:pointer;line-height:1.5;min-height:32px}.daily-faq details p{max-width:950px;padding:12px 0 0}.daily-hub a:focus-visible,.daily-hub summary:focus-visible{outline:3px solid #f59e0b;outline-offset:5px}.daily-loading{color:var(--dc-muted)}
html[data-theme="dark"] .daily-hub{--dc-ink:#e2e8f0;--dc-muted:#bdcbe0;--dc-panel:#101d33;--dc-soft:#16243e;--dc-border:#334766}html[data-theme="dark"] .daily-hub .daily-kicker,html[data-theme="dark"] .daily-resource b,html[data-theme="dark"] .daily-explain a,html[data-theme="dark"] .daily-faq a{color:#9ebcff}
@media(prefers-color-scheme:dark){html[data-theme="system"] .daily-hub{--dc-ink:#e2e8f0;--dc-muted:#bdcbe0;--dc-panel:#101d33;--dc-soft:#16243e;--dc-border:#334766}html[data-theme="system"] .daily-hub .daily-kicker,html[data-theme="system"] .daily-resource b,html[data-theme="system"] .daily-explain a,html[data-theme="system"] .daily-faq a{color:#9ebcff}}
@media(max-width:1000px){.daily-hero{grid-template-columns:1fr}.daily-hero-note{display:none}.daily-resources{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-explain{grid-template-columns:1fr}}
@media(max-width:700px){.daily-hub{width:calc(100% - 24px)}.daily-challenges,.daily-steps{grid-template-columns:1fr}.daily-challenges .games-section{padding:18px}.daily-hub .challenge-card{padding:18px}.daily-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.daily-progress .competition-stat{padding:14px 10px}.daily-progress .competition-stat span{font-size:11px;line-height:1.4}.daily-progress .competition-stat strong{font-size:26px}.daily-explain{padding:22px}.daily-hero p{font-size:16px}.daily-section{margin-top:30px}}
@media(max-width:420px){.daily-resources{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.daily-resource{transition:none}}
