[hidden] { display: none !important; }
.hero h1 { margin-top: 12px; }
.mode-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
textarea, select { font: inherit; width: 100%; padding: 12px; border: 1px solid #aebed0; border-radius: 7px; color: var(--text); background: #fff; }
textarea { resize: vertical; min-height: 140px; }
textarea:focus, select:focus, button:focus-visible, input:focus-visible { outline: 3px solid #b4d0f6; outline-offset: 2px; }
.hint { margin: 8px 0 16px; color: #536981; font-size: 14px; }
.check-label { display: flex; gap: 8px; align-items: center; margin: 18px 0 0; }
.check-label input { width: 18px; height: 18px; }
#excel-file { max-width: 100%; margin: 5px 0; }
.result-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.result-toolbar h2 { margin: 0; }
.result-toolbar .hint { margin-bottom: 0; }
.example-table { min-width: 620px; }
.example-table td { overflow-wrap: anywhere; max-width: 280px; }
.error-row td { background: #fff6f2; }
.error-text, .status.is-error { color: #a03528; }
.button:disabled { opacity: .55; cursor: not-allowed; }
#copy-fallback { margin-top: 20px; }
@media (max-width: 620px) { .mode-button { padding: 8px 3px; } .result-toolbar .button { width: 100%; } }
