/* Challenges Page Styles (terminal aesthetic, progressive checkpoints) */
.challenges-page { min-height: 100vh; padding: 1.25rem; display: flex; flex-direction: column; gap: 1rem; }
.challenges-header { text-align: center; margin-top: 0.25rem; }
.challenges-title { font-size: 1.5rem; letter-spacing: 0.5px; }
.challenges-subtitle { color: var(--color-accent); opacity: 0.9; font-size: 0.95rem; }

.challenge-grid { width: min(1000px, 94vw); margin: 0.5rem auto; display: grid; grid-template-columns: 1fr; gap: 0.9rem; }
@media (min-width: 800px) { .challenge-grid { grid-template-columns: 1fr 1fr; } }

.challenge-card { border: 1px solid color-mix(in oklab, var(--color-primary) 35%, transparent); background: rgba(13,13,13,0.6); border-radius: 10px; padding: 0.9rem; box-shadow: 0 0 18px color-mix(in oklab, var(--color-primary) 12%, transparent); }
.challenge-card[data-tier] { display: block; }
.challenge-title { font-size: 1.05rem; margin-bottom: 0.25rem; color: var(--color-primary); }
.challenge-desc { font-size: 0.9rem; color: color-mix(in oklab, var(--color-primary) 70%, transparent); margin-bottom: 0.5rem; }
.challenge-hint { font-size: 0.8rem; color: var(--color-accent); opacity: 0.9; margin-top: 0.25rem; }

.challenge-input { width: 100%; font: 16px 'Share Tech Mono', monospace; color: var(--color-primary); background: rgba(0,0,0,0.2); border: 1px solid color-mix(in oklab, var(--color-accent) 40%, transparent); border-radius: 8px; outline: none; padding: 10px 12px; }
.challenge-input:focus { border-color: var(--color-accent); box-shadow: 0 0 16px color-mix(in oklab, var(--color-accent) 25%, transparent); }

.checkpoint { display: inline-block; padding: 2px 6px; border-radius: 6px; border: 1px solid color-mix(in oklab, var(--color-secondary) 50%, transparent); color: var(--color-secondary); font-size: 0.75rem; margin-left: 0.4rem; vertical-align: middle; }

.privacy-note { font-size: 0.8rem; color: color-mix(in oklab, var(--color-primary) 55%, transparent); margin-top: 0.4rem; }

.mini-label { display: inline-block; font-size: 0.75rem; color: color-mix(in oklab, var(--color-primary) 60%, transparent); margin-right: 0.3rem; }

