/* All additions are scoped to the converter; shared design tokens include dark mode. */
.case-page .tool-section { padding: 28px 0 56px; }
.case-page .hero-content { margin-bottom: 24px; }
.case-page .hero-description { max-width: 730px; font-size: 16px; margin-top: 14px; }
.case-page .case-editor-label { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 700; }
.case-page #caseInput {
    display: block;
    width: 100%;
    min-height: 220px;
    resize: vertical;
    padding: 18px;
    background: var(--surface);
    color: var(--text-primary);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    font-size: 16px;
    line-height: 1.7;
}
.case-page #caseInput::placeholder { color: var(--text-muted); }
.case-page #caseInput:focus { border-color: var(--primary); }
.case-page .stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 14px 0 20px; }
.case-page .stat-item { min-height: 74px; border: 0; border-right: 1px solid var(--border); }
.case-page .stat-item:last-child { border-right: 0; }
.case-page .stat-label { color: var(--text-secondary); }
.case-page .case-group { margin-top: 18px; }
.case-page .case-group h2 { margin: 0 0 10px; font-size: 14px; line-height: 1.4; }
.case-page .case-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.case-page .case-buttons .btn { padding-inline: 13px; font-size: 13px; }
.case-page .case-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--border); }
.case-page .case-actions .btn { min-width: 100px; }
.case-page .case-actions #caseDownload { margin-left: auto; }
.case-page .case-status { min-height: 44px; margin: 10px 0 0; color: var(--text-secondary); font-size: 13px; }
.case-page .privacy-message { margin-top: 6px; color: var(--text-secondary); }
.case-page .case-guide { padding: 56px 0; }
.case-page .case-guide h2:not(:first-child) { margin-top: 40px; }
.case-page .case-guide h3 { margin: 0 0 8px; font-size: 18px; }
.case-page .case-guide p, .case-page .case-guide li { font-size: 16px; color: var(--text-secondary); }
.case-page .case-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 24px; }
.case-page .case-options > div { min-width: 0; padding-bottom: 16px; border-bottom: 1px solid var(--border); }
.case-page .case-options p { margin-bottom: 8px; }
.case-page code { font: inherit; font-weight: 600; overflow-wrap: anywhere; }
.case-page .case-table { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 24px 0; font-size: 14px; }
.case-page .case-table caption { text-align: left; margin-bottom: 10px; color: var(--text-secondary); }
.case-page .case-table th, .case-page .case-table td { padding: 12px; text-align: left; vertical-align: top; border: 1px solid var(--border); overflow-wrap: anywhere; }
.case-page .case-table thead { background: var(--surface-secondary); }
@media (max-width: 768px) {
    .case-page .tool-section { padding-top: 24px; }
    .case-page .hero-content h1 { font-size: 30px; }
    .case-page .case-buttons, .case-page .case-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .case-page .case-buttons .btn, .case-page .case-actions .btn { width: 100%; min-width: 0; }
    .case-page .case-actions #caseDownload { margin-left: 0; }
    .case-page .case-options { grid-template-columns: 1fr; }
    .case-page .case-table th, .case-page .case-table td { padding: 8px; }
}
@media (max-width: 480px) {
    .case-page .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .case-page .stat-item:nth-child(2n) { border-right: 0; }
    .case-page .stat-item:nth-child(-n + 2) { border-bottom: 1px solid var(--border); }
}
