#game-root .qk { --qk-a: #6366f1; --qk-b: #d946ef; --qk-bg: #0b0a24; --qk-bg2: #1c1048; }
.ht-week { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; align-items: end; height: 120px; padding: 8px 0 0; }
.ht-day { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 6px; height: 100%; font-size: 12px; font-weight: 800; color: var(--qk-mute); }
.ht-day i { display: block; width: 100%; max-width: 34px; border-radius: 8px 8px 4px 4px; background: linear-gradient(180deg, var(--qk-b), var(--qk-a)); min-height: 8px; }
.ht-day.ht-today { color: #fff; }
.ht-day.ht-today i { box-shadow: 0 0 0 2px #fff; }
.ht-lucky { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 10px; }
.ht-lucky div { padding: 12px; border-radius: 14px; background: var(--qk-card); border: 1px solid var(--qk-line); text-align: center; }
.ht-lucky b { display: block; font-size: 20px; margin-top: 4px; }
.ht-lucky span { font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--qk-mute); }
.ht-sw { display: inline-block; width: 20px; height: 20px; border-radius: 50%; vertical-align: -4px; margin-right: 6px; border: 2px solid rgba(255, 255, 255, 0.7); }
#game-root .qk-orb { animation: ht-float 5s ease-in-out infinite; }
#game-root .qk-title { text-shadow: 0 2px 28px color-mix(in srgb, #6366f1 55%, transparent); }
#game-root .qk-btn:focus-visible { box-shadow: 0 0 0 4px color-mix(in srgb, #6366f1 60%, transparent); }
@keyframes ht-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@media (prefers-reduced-motion: reduce) { #game-root .qk-orb { animation: none; } }
