.management-panel, .playlist-link-form, .playlist-imports {
  padding: 24px; margin: 20px 0; border: 1px solid var(--line); border-radius: 10px; background: var(--surface);
}
.management-panel h2, .management-panel h3, .playlist-link-form h3 { margin-top: 0; }
.management-panel form, .playlist-link-form { display: grid; gap: 16px; }
.management-panel label, .playlist-link-form label { display: grid; gap: 8px; font-size: 15px; color: var(--muted); }
.management-panel input, .management-panel select, .playlist-link-form input { width: 100%; min-height: 46px; margin: 0; }
.management-panel form { padding-top: 18px; margin-top: 16px; border-top: 1px solid var(--line); }
.management-panel button, .playlist-link-form button { min-height: 44px; }
.management-panel form > button, .playlist-link-form > button { justify-self: start; }
.management-panel p { line-height: 1.5; color: var(--muted); }
.playlist-modes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.playlist-modes button { margin: 0; }
.playlist-link-form [type="file"] { padding: 12px; height: auto; }
.playlist-link-form progress, .playlist-imports progress { width: 100%; height: 10px; accent-color: #00b6ff; }
.import-card { padding: 18px; margin: 14px 0; border: 1px solid var(--line); border-radius: 8px; background: var(--bg); }
.import-card[data-state="success"] { border-color: #247c67; }
.import-card[data-state="error"] { border-color: #9e535f; }
.import-card[data-state="error"] p { color: #ffb5bd; }
.import-card p { font-size: 14px; line-height: 1.5; }
.import-card { overflow-wrap:anywhere; }
.import-card small { display:block; margin:8px 0; }
.import-status-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.import-status-heading h3 { margin:0; }
.import-summary { font-weight:600; }
.import-results summary { min-height:44px; padding:12px 0; cursor:pointer; color:var(--accent); }
.playlist-management > .playlist-imports { margin-top:0; }
.device-list { display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 16px; margin: 20px 0; }
.device-list article { min-width: 0; padding: 18px; background: var(--bg); border: 1px solid var(--line); border-radius: 8px; }
.device-list h3 { overflow-wrap: anywhere; font-size: 18px; }
.account-shortcuts { display: flex; flex-wrap: wrap; gap: 8px; }
.owner-entry { display: inline-block; margin: 0 0 18px; color: var(--accent); text-underline-offset: 4px; }
.playlist-management { padding:0; background:transparent; border:0; }
.playlist-workspace { display:grid; grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr); gap:24px; align-items:start; }
.playlist-saved { min-width:0; padding:24px; background:var(--surface); border:1px solid var(--line); border-radius:10px; }
.playlist-import-tools { display:grid; gap:24px; min-width:0; }
.playlist-import-tools > .playlist-link-form,.playlist-import-tools > .epg-import { margin:0; min-width:0; }
.epg-import-shortcut { margin-bottom:20px; }
#epg-import { scroll-margin-top:100px; }
.epg-import .epg-history-hint { margin-bottom:0; font-size:13px; }
.playlist-workspace .source-grid { grid-template-columns:1fr; }
.source-card details { margin-top:10px; }
.source-card details summary { min-height:44px; display:flex; align-items:center; color:var(--accent); cursor:pointer; }
.playlist-management > .quick-links { margin-top:20px; }
.account-areas { display:flex; flex-wrap:wrap; gap:12px; padding:16px 0; }
.account-areas a { min-height:44px; padding:12px; border:1px solid var(--line); border-radius:7px; color:var(--accent); }
@media(max-width:1000px) {
  .playlist-workspace { grid-template-columns:1fr; }
  .playlist-workspace > .playlist-import-tools { order:1; }
  .playlist-workspace > .playlist-saved { order:2; }
}
@media(max-width:700px) { .playlist-saved { padding:16px; } .playlist-workspace { gap:16px; } }
.settings-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.settings-tabs button { min-height: 44px; }
body[data-presentation="overview"] .profile-row { flex-wrap: wrap; }
body[data-presentation="overview"] .profile-choice { max-width: 130px; }
@media(max-width:700px) {
  body[data-presentation="overview"][data-view="playlists"] .settings-panel { padding: 16px; }
  body[data-presentation="overview"][data-view="playlists"] .playlist-link-form { padding: 0; border: 0; background: transparent; }
  .management-panel, .playlist-link-form, .playlist-imports { padding: 16px; }
  .playlist-modes { gap: 4px; }
  .playlist-modes button { padding: 10px 5px; font-size: 13px; white-space: nowrap; }
  .management-panel form > button, .playlist-link-form > button { justify-self: stretch; }
  .device-list { grid-template-columns: 1fr; }
}
