body { max-width: 960px; margin: 0 auto; padding: 2rem 1rem; }
.container { margin-top: 2rem; }
.flash { padding: 0.75rem 1rem; margin-bottom: 1rem; border: 2px solid #000; }
.flash-error { background: #ffcdd2; }
.flash-success { background: #c8e6c9; }
.hidden { display: none; }
.episode-actions { display: flex; gap: 0.5rem; }
.settings-section { margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 2px solid #ddd; }
.settings-form { display: flex; gap: 1rem; align-items: flex-end; flex-wrap: wrap; }
.settings-form .form-group { margin-bottom: 0; }
.file-upload { position: relative; display: inline-block; }
.file-upload input[type="file"] { position: absolute; opacity: 0; width: 100%; height: 100%; cursor: pointer; }
.file-name { margin-left: 0.5rem; font-size: 0.85rem; color: #666; }
.form-flex-1 { flex: 1; min-width: 200px; }
.form-flex-slug { flex: 1; min-width: 160px; }
.podcast-img-preview { margin-top: 1rem; }
.podcast-img-preview img { max-width: 150px; max-height: 150px; border: 2px solid #000; }
.rss-row { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1.5rem; font-size: 0.85rem; }
.rss-url-btn { font-size: 0.85rem !important; padding: 0.3rem 0.75rem !important; }
.rss-url-btn:disabled { opacity: 0.7; cursor: default; }
.rss-label { color: #666; font-weight: 600; white-space: nowrap; }
.new-ep-row { margin-bottom: 1.5rem; }
.ep-thumb { max-width: 48px; max-height: 48px; border: 1px solid #000; }
