/* Daily Code (/daily/) — page styles. Scoped to body.dc-page; the shared frame
 * (game-frame.css) owns header, stage chrome and ad-well positions. Colour pegs
 * always carry a glyph too, so marks never rely on colour alone. */
.dc-page .game-wrap{max-width:420px;margin:0 auto;padding:1rem}
.dc-page .dc-intro{font:500 var(--text-sm,14px)/1.45 var(--font-body,system-ui,sans-serif);margin:4px 0 0;text-transform:none;letter-spacing:0}
.dc-hud{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px;font:600 13px/1.2 var(--font-label,system-ui,sans-serif)}
.dc-hud b{font-weight:800}
.dc-page #status{min-height:2.6em;margin:0 0 10px;font:500 14px/1.35 var(--font-body,system-ui,sans-serif)}

.dc-c0{--peg:#dc2626}.dc-c1{--peg:#ea580c}.dc-c2{--peg:#facc15;--peg-ink:#1e293b}.dc-c3{--peg:#16a34a}.dc-c4{--peg:#2563eb}.dc-c5{--peg:#9333ea}

.dc-board{display:grid;gap:6px;margin:0 0 12px}
.dc-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.dc-cell{position:relative;aspect-ratio:1;min-height:44px;border:2px solid var(--color-ink,#1e293b);border-radius:12px;background:var(--color-paper-2,#f1f5f9);display:grid;place-items:center;padding:0;cursor:default;font:700 20px/1 system-ui,sans-serif;color:#fff;opacity:.55}
.dc-row.is-live .dc-cell{opacity:1;cursor:pointer;border-style:dashed}
.dc-row.is-live .dc-cell.is-cursor{outline:3px solid var(--color-focus,#2563eb);outline-offset:2px;border-style:solid}
.dc-cell span{display:grid;place-items:center;width:72%;height:72%;border-radius:50%;background:var(--peg);color:var(--peg-ink,#fff);box-shadow:inset 0 -3px 0 rgba(0,0,0,.25)}
.dc-cell.dc-m2,.dc-cell.dc-m1,.dc-cell.dc-m0{opacity:1;border-style:solid}
.dc-cell.dc-m2{background:#22c55e;border-color:#15803d}
.dc-cell.dc-m1{background:#fde047;border-color:#a16207}
.dc-cell.dc-m0{background:#cbd5e1;border-color:#64748b}
.dc-cell:focus-visible,.dc-key:focus-visible,.dc-btn:focus-visible{outline:3px solid var(--color-focus,#2563eb);outline-offset:2px}

.dc-palette{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:0 0 8px}
.dc-key{min-height:52px;border:2px solid var(--color-ink,#1e293b);border-radius:12px;background:var(--peg);color:var(--peg-ink,#fff);font:800 20px/1 system-ui,sans-serif;display:grid;place-items:center;gap:0;cursor:pointer;touch-action:manipulation;box-shadow:0 3px 0 var(--color-ink,#1e293b)}
.dc-key small{font:600 10px/1 var(--font-label,system-ui,sans-serif);opacity:.8}
.dc-key:active{transform:translateY(2px);box-shadow:0 1px 0 var(--color-ink,#1e293b)}
.dc-actions{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin:0 0 6px}
.dc-btn{min-height:48px;border:2px solid var(--color-ink,#1e293b);border-radius:12px;background:var(--color-paper-2,#f1f5f9);color:var(--color-ink,#1e293b);font:800 15px/1 var(--font-display,system-ui,sans-serif);cursor:pointer;touch-action:manipulation}
.dc-btn--go{background:var(--color-ink,#1e293b);color:#fff}
.dc-btn:disabled{opacity:.45;cursor:not-allowed}
.dc-btn.is-done{background:#16a34a;color:#fff;border-color:#15803d}

.dc-result{border:2px solid var(--color-ink,#1e293b);border-radius:14px;padding:12px;margin:8px 0 12px;background:var(--color-paper,#fff)}
.dc-result h2{font:800 20px/1.15 var(--font-display,system-ui,sans-serif);margin:0 0 8px}
.dc-answer{display:flex;gap:6px;align-items:center;margin:0 0 10px;font:600 13px/1 var(--font-label,system-ui,sans-serif)}
.dc-peg{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--peg);color:var(--peg-ink,#fff);font:800 15px/1 system-ui,sans-serif;border:2px solid var(--color-ink,#1e293b)}
.dc-card{white-space:pre-wrap;font:500 15px/1.35 var(--font-mono,ui-monospace,monospace);background:var(--color-paper-2,#f1f5f9);border-radius:10px;padding:10px;margin:0 0 10px;user-select:all;overflow-wrap:anywhere}
.dc-result .dc-btn{width:100%}
.dc-next{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:10px 0 0;font:600 14px/1.2 var(--font-body,system-ui,sans-serif)}
.dc-next b{font:800 18px/1 var(--font-mono,ui-monospace,monospace)}
.dc-note{font-size:13px;margin:8px 0 0}

.dc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;text-align:center;margin:0 0 10px}
.dc-stats div{border:2px solid var(--color-ink,#1e293b);border-radius:10px;padding:6px 2px;background:var(--color-paper-2,#f1f5f9)}
.dc-stats b{display:block;font:800 20px/1.1 var(--font-display,system-ui,sans-serif)}
.dc-stats span{font:600 10px/1.2 var(--font-label,system-ui,sans-serif);text-transform:uppercase;letter-spacing:.06em}
.dc-dist{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:3px}
.dc-dist li{display:grid;grid-template-columns:16px 1fr;gap:6px;align-items:center;font:600 12px/1 var(--font-label,system-ui,sans-serif)}
.dc-dist b{display:block;background:var(--color-ink,#1e293b);color:#fff;text-align:right;padding:3px 6px;border-radius:4px;min-width:22px}
.dc-archive{list-style:none;margin:0;padding:0;display:grid;gap:4px;font:500 14px/1.3 var(--font-body,system-ui,sans-serif)}
.dc-archive a{font-weight:700}
.dc-archive a[aria-current]{text-decoration:none;color:inherit}
.dc-sub{font:800 15px/1.2 var(--font-display,system-ui,sans-serif);margin:12px 0 6px}

.dc-more{max-width:426px;margin:0 auto 24px;padding:0 16px}
.dc-more h2{font:800 20px/1.2 var(--font-display,system-ui,sans-serif);margin:0 0 10px}
.dc-rail{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.dc-rail a{display:block;border:2px solid var(--color-ink,#1e293b);border-radius:12px;overflow:hidden;background:var(--color-paper,#fff);color:var(--color-ink,#1e293b);text-decoration:none}
.dc-rail img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--color-paper-2,#f1f5f9)}
.dc-rail span{display:block;padding:8px;font:800 14px/1.2 var(--font-display,system-ui,sans-serif)}
.dc-rail a:focus-visible{outline:3px solid var(--color-focus,#2563eb);outline-offset:2px}

.dc-guide{max-width:720px;margin:0 auto 24px;padding:0 16px;font:400 16px/1.6 var(--font-body,system-ui,sans-serif)}
.dc-guide h2{font:800 22px/1.2 var(--font-display,system-ui,sans-serif);margin:16px 0 8px}
.dc-guide h3{font:800 17px/1.25 var(--font-display,system-ui,sans-serif);margin:14px 0 4px}
.dc-guide p,.dc-guide ul{margin:0 0 10px}
@media (prefers-reduced-motion:reduce){.dc-key:active{transform:none}}
/* Coin Store charms (2026-10-10): Hint button / store link, Puzzle Freeze line, hinted slots */
.dc-charms{display:grid;gap:6px;margin:0 0 8px}
.dc-btn--hint,.dc-btn--buy{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#fef9c3;border-color:#a16207;color:#713f12;text-decoration:none}
.dc-btn--hint small{font:600 12px/1 var(--font-body,system-ui,sans-serif);opacity:.8}
.dc-btn--buy{background:var(--color-paper-2,#f1f5f9);border-style:dashed;color:var(--color-ink,#1e293b)}
.dc-freezes{margin:0;font-size:13px;line-height:1.4;color:var(--color-ink-2,#475569);text-align:center}
.dc-freezes a{color:inherit;font-weight:700}
.dc-freeze-note{margin:0 0 8px;padding:8px 12px;border-radius:10px;background:#e0f2fe;color:#075985;font-weight:700;text-align:center}
.dc-cell.is-hinted{position:relative}
.dc-cell.is-hinted::after{content:"\1F4A1";position:absolute;top:-6px;right:-6px;font-size:13px;line-height:1;pointer-events:none}
