/* Cube-only controls: preserve the shared layout and other timers. */
.cube-page #timeDisplay { display: block; width: 100%; min-height: 100px; padding: .5rem; border: 1px solid var(--border); border-radius: 12px; background: var(--bg-secondary); color: var(--text-primary); cursor: pointer; touch-action: none; }
.cube-page #timeDisplay:hover { border-color: var(--primary); }
.cube-page :is(button, summary, a) { scroll-margin-block: 90px 24px; }
.cube-page #timeDisplay:focus-visible { outline: 3px solid var(--primary-dark); outline-offset: 3px; }
.cube-page #penaltyControls { flex-wrap: wrap; justify-content: center; }
.cube-page #penaltyControls [aria-pressed="true"]::after { content: ' ✓'; }
.cube-page #cubeStatus { font-weight: 600; color: var(--primary-dark); min-height: 1.65em; }
.cube-page .cube-storage-notice { padding: .75rem; border: 1px solid #b45309; border-radius: 8px; background: #fff7ed; color: #7c2d12; text-align: left; }
.cube-page .cube-delete-btn { min-width: 44px; min-height: 44px; align-self: flex-end; }
.cube-page .card-header { flex-wrap: wrap; gap: .75rem; }
.cube-page #cubeConfirmDialog { width: calc(100% - 32px); max-width: 420px; max-height: calc(100dvh - 32px); overflow-y: auto; padding: 1.5rem; border: 1px solid var(--border); border-radius: 12px; color: var(--text-primary); }
.cube-page #cubeConfirmDialog::backdrop { background: rgb(17 24 39 / .45); }
.cube-page .text-warning { color: #805400 !important; }
.cube-page .solve-date { color: var(--text-secondary); }

.cube-page .solve-item.solve-dnf { opacity: 1; }
.cube-page .solve-status { color: #545b68; }
.cube-page .btn:focus-visible { outline: 3px solid var(--primary-dark) !important; outline-offset: 3px; }

.cube-page .solve-list:focus-visible { outline: 3px solid var(--primary-dark); outline-offset: -3px; }
