.levels-page { max-width: 1080px; }
.level-overview, .level-next, .level-rules { margin-bottom: 28px; padding: 24px; border: 3px solid #25252d; border-radius: 14px; background: #fff; box-shadow: 6px 6px 0 #25252d; }
.level-overview { background: #f4eaff; }
.level-progress h2 { font-size: 2.4rem; margin: 18px 0 8px; }
.level-progress progress { width: 100%; height: 18px; accent-color: #7844c6; }
.level-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 24px 0 12px; }
.level-stats div { padding: 16px; background: #fff; border: 2px solid #25252d; border-radius: 8px; }
.level-stats dt { font-weight: 700; font-size: .85rem; overflow-wrap: anywhere; }
.level-stats dd { margin: 8px 0 0; font-size: clamp(1.2rem, 4vw, 2rem); font-weight: 900; overflow-wrap: anywhere; }
.level-next { background: #fff3bc; }
.level-next h2 { margin: 16px 0 8px; }
.level-table-scroll { overflow-x: auto; border: 3px solid #25252d; border-radius: 12px; background: #fff; margin: 24px 0 32px; }
.level-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.level-table th, .level-table td { text-align: left; padding: 12px 14px; border-bottom: 1px solid #dedbe5; white-space: nowrap; }
.level-table thead { background: #25252d; color: #fff; }
.level-table .is-unlocked { background: #edf8ef; }
.level-table .is-current { background: #ffd166; font-weight: 900; }
.level-rules { background: #fff; line-height: 1.6; }
.level-rules a { color: #5d2bb8; font-weight: 800; }
@media (max-width: 600px) {
    .levels-page { padding: 16px; }
    .level-overview, .level-next, .level-rules { padding: 18px; }
    .level-stats { gap: 8px; }
    .level-stats div { padding: 10px; }
}
