.settings { padding: 1rem; max-width: 600px; } .heading { font-size: 1.2rem; font-weight: 600; margin-bottom: 1.5rem; color: var(--text-primary, #333); } .loading { padding: 2rem; text-align: center; color: var(--text-secondary, #666); } .error { padding: 0.5rem 0.75rem; background: #fde8e8; color: var(--color-error, #d32f2f); border-radius: 6px; margin-bottom: 1rem; font-size: 0.85rem; } .success { padding: 0.5rem 0.75rem; background: #e8f5e9; color: #2e7d32; border-radius: 6px; margin-bottom: 1rem; font-size: 0.85rem; } .section { margin-bottom: 2rem; } .sectionTitle { font-size: 1rem; font-weight: 600; margin-bottom: 0.75rem; color: var(--text-primary, #333); } .field { margin-bottom: 0.75rem; } .label { display: block; font-size: 0.85rem; font-weight: 500; margin-bottom: 0.3rem; color: var(--text-primary, #333); } .select, .input { width: 100%; padding: 0.5rem 0.75rem; border: 1px solid var(--border-color, #ddd); border-radius: 6px; font-size: 0.9rem; background: var(--bg-input, #fff); color: var(--text-primary, #333); } .voiceRow { display: flex; gap: 0.5rem; } .voiceRow .select { flex: 1; } .testBtn, .addBtn, .removeBtn { padding: 0.5rem 1rem; background: var(--primary-color, #F25843); color: #fff; border: none; border-radius: 6px; cursor: pointer; font-size: 0.85rem; white-space: nowrap; } .testBtn:hover:not(:disabled), .addBtn:hover:not(:disabled) { filter: brightness(1.08); } .testBtn:disabled, .addBtn:disabled { background: var(--color-medium-gray, #ccc); color: var(--text-secondary, #888); cursor: not-allowed; opacity: 0.8; } .removeBtn { background: transparent; color: var(--color-error, #d32f2f); padding: 0.3rem 0.6rem; font-size: 0.8rem; border: 1px solid var(--color-error, #d32f2f); } .removeBtn:hover { background: #fde8e8; } .voiceTable { width: 100%; border-collapse: collapse; margin-top: 0.75rem; } .voiceTable th, .voiceTable td { text-align: left; padding: 0.4rem 0.6rem; border-bottom: 1px solid var(--border-color, #e0e0e0); font-size: 0.85rem; } .voiceTable th { font-weight: 600; color: var(--text-secondary, #666); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.05em; } .emptyHint { color: var(--text-secondary, #999); font-size: 0.85rem; font-style: italic; padding: 0.5rem 0; } .saveBtn { width: 100%; padding: 0.6rem; background: var(--primary-color, #F25843); color: #fff; border: none; border-radius: 6px; cursor: pointer; font-size: 0.9rem; font-weight: 500; } .saveBtn:hover:not(:disabled) { filter: brightness(1.08); } .saveBtn:disabled { background: var(--color-medium-gray, #ccc); color: var(--text-secondary, #888); cursor: not-allowed; opacity: 0.8; } .backBtn { background: none; border: none; cursor: pointer; font-size: 0.85rem; color: var(--primary-color, #1976d2); padding: 0; margin-bottom: 1rem; display: flex; align-items: center; gap: 4px; } .backBtn:hover { text-decoration: underline; }