/* Стили страницы /daily/: классы с префиксом daily-, цвета — из shared/theme.css. */
.daily-body { margin: 0; min-height: 100vh; background: var(--body-bg, #12335c); color: var(--text-primary, #f2f6fa); font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
.daily-main { max-width: 860px; margin: 0 auto; padding: 16px; box-sizing: border-box; }
.daily-back { color: var(--accent-info, #3ba7ff); text-decoration: none; }
.daily-back:focus-visible, .daily-btn:focus-visible, .daily-sq:focus-visible { outline: 3px solid var(--accent-gold, #ffd23f); outline-offset: 2px; }
.daily-title { margin: 8px 0 4px; font-size: clamp(22px, 5vw, 32px); }
.daily-num { color: var(--accent-gold, #ffd23f); }
.daily-sub, .daily-status, .daily-turn { color: var(--text-secondary, #dbe4ee); }
.daily-mode { font-weight: 700; color: var(--accent-active-text, #8dff9f); }
.daily-play { display: grid; grid-template-columns: minmax(0, 460px) 1fr; gap: 16px; align-items: start; }
.daily-play[hidden], .daily-result[hidden], .daily-promo[hidden], .daily-pocket[hidden] { display: none; }
.daily-boardwrap { width: 100%; }
.daily-board { display: grid; grid-template-columns: repeat(8, 1fr); width: 100%; aspect-ratio: 1; border-radius: 8px; overflow: hidden; border: 2px solid var(--border-color); touch-action: manipulation; }
.daily-sq { position: relative; display: flex; align-items: center; justify-content: center; border: 0; padding: 0; margin: 0; cursor: pointer; font-size: clamp(22px, 7.5vw, 46px); line-height: 1; font-family: "Segoe UI Symbol", "Noto Sans Symbols 2", "DejaVu Sans", sans-serif; color: #111; }
.daily-sq-l { background: #eeeed2; }
.daily-sq-d { background: #769656; }
.daily-sq-w { color: #fff; text-shadow: 0 0 2px #000, 0 0 2px #000, 0 0 3px #000; }
.daily-sq-b { color: #111; }
.daily-sq-sel { box-shadow: inset 0 0 0 4px var(--accent-gold, #ffd23f); }
.daily-sq-last { box-shadow: inset 0 0 0 4px rgba(247, 247, 105, 0.7); }
.daily-sq-duck::after { content: "🦆"; position: absolute; font-size: 0.7em; }
.daily-pocket { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
.daily-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 14px; border-radius: 10px; border: 1px solid var(--border-color); background: var(--card-bg, rgba(0,0,0,.2)); color: inherit; font: inherit; cursor: pointer; text-decoration: none; }
.daily-btn-main { background: var(--accent-gold, #ffd23f); color: var(--on-gold, #2b2100); font-weight: 700; border-color: transparent; }
.daily-btn[aria-pressed="true"] { background: var(--accent-active, #39ff7a); color: var(--on-active, #04210f); }
.daily-actions { display: flex; gap: 8px; flex-wrap: wrap; margin: 8px 0; }
.daily-attempts { font-weight: 700; }
.daily-msg { min-height: 1.4em; }
.daily-hint { background: var(--card-bg); border-left: 4px solid var(--accent-info); padding: 6px 10px; border-radius: 6px; }
.daily-streak { font-size: 18px; }
.daily-result { margin-top: 16px; padding: 16px; border-radius: 12px; background: var(--card-bg); border: 1px solid var(--border-color); text-align: center; }
.daily-result-row { font-size: 32px; letter-spacing: 6px; margin: 6px 0; }
.daily-promo { position: fixed; inset: 0; background: rgba(0,0,0,.55); display: flex; gap: 10px; align-items: center; justify-content: center; z-index: 10; }
.daily-promo .daily-btn { font-size: 32px; min-width: 64px; min-height: 64px; background: var(--panel-bg-solid, #1a1a2e); }
.daily-about { margin-top: 24px; color: var(--text-secondary); }
.daily-shake { animation: daily-shake .35s; }
@keyframes daily-shake { 25% { transform: translateX(-6px); } 75% { transform: translateX(6px); } }
@media (prefers-reduced-motion: reduce) { .daily-shake { animation: none; } }
@media (max-width: 700px) { .daily-play { grid-template-columns: 1fr; } .daily-main { padding: 10px; } }
