/* Shared utility styles for static and dynamically rendered status content. */
.stats-preview-hidden { display: none; }
.setting-group-spaced { margin-top: 15px; }
.stats-reset-group { margin-top: 20px; }
.modal-highlight { font-weight: bold; color: var(--primary-color); }
.welcome-title { color: var(--text-color); }
.welcome-text { color: var(--sub-text-color); }
.welcome-hint { font-size: 12px; margin-top: 20px; color: var(--sub-text-color); }
.online-retry-button { margin-top: 10px; padding: 6px 12px; border-radius: 4px; border: 1px solid var(--border-color); background: var(--bg-color); color: var(--text-color); cursor: pointer; }
.online-retry-note { font-size: 11px; color: #999; margin-top: 5px; }
.fill-answer-display { height: auto; min-height: 46px; display: flex; align-items: center; white-space: pre-wrap; word-break: break-word; user-select: text; }
.correct-answer-note { color: var(--success-text); margin-bottom: 10px; font-weight: bold; }
.multi-submit-wrapper { padding-top: 10px; flex-shrink: 0; }
.completion-message { color: var(--text-color); opacity: 0.7; margin-bottom: 40px; }
.score-circle { position: relative; background: none; }
.score-ring { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.score-ring-track, .score-ring-value { fill: none; stroke-width: 3.8; }
.score-ring-track { stroke: var(--border-color); }
.score-ring-value { stroke: var(--primary-color); stroke-linecap: round; }
.score-inner { position: relative; }
/* Storage errors remain visible without covering the answer controls. */
.storage-status { position: fixed; left: 12px; right: 12px; top: 70px; z-index: 2100; padding: 10px 14px; background: var(--card-bg, white); color: var(--text-color, #222); border: 1px solid #c74343; border-radius: 8px; font-size: 14px; box-shadow: 0 3px 12px #0002; }
.storage-status[hidden] { display: none; }
.storage-status button { margin-left: 12px; padding: 5px 10px; cursor: pointer; }
[role="button"]:focus-visible { outline: 2px solid var(--primary-color, #2675d8); outline-offset: 3px; }
