:root{
  --rh-bg:#eef4fb;--rh-panel:#fff;--rh-panel-2:#f7faff;--rh-sidebar:#f8fbff;--rh-topbar:rgba(248,251,255,.94);
  --rh-text:#14243a;--rh-muted:#64748b;--rh-border:#d8e3ef;--rh-blue:#2789df;--rh-blue-2:#5365e8;
  --rh-shadow:0 12px 34px rgba(31,56,88,.09)
}
html.dark{
  --rh-bg:#122943;--rh-panel:#1b3857;--rh-panel-2:#17314d;--rh-sidebar:#10243b;--rh-topbar:rgba(16,36,59,.94);
  --rh-text:#f5f9ff;--rh-muted:#acc0d5;--rh-border:#315576;--rh-shadow:0 14px 38px rgba(0,0,0,.18);color-scheme:dark
}
html.light{color-scheme:light}
*{box-sizing:border-box}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.45;background:var(--rh-bg)!important;color:var(--rh-text);-webkit-font-smoothing:antialiased}
.admin-sidebar{background:var(--rh-sidebar);box-shadow:12px 0 32px rgba(0,0,0,.07)}
.admin-topbar{background:var(--rh-topbar);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.admin-main{background:radial-gradient(circle at 92% -10%,rgba(71,185,255,.09),transparent 28%),var(--rh-bg)}
.admin-nav-link{color:var(--rh-muted)}
.admin-nav-link:hover{background:rgba(96,165,250,.09);color:var(--rh-text)}
.admin-nav-link.active{background:linear-gradient(135deg,#2789df,#5365e8);color:#fff;box-shadow:0 8px 20px rgba(33,132,216,.2)}
.admin-nav-link .nav-icon-wrap{background:rgba(100,116,139,.1)}
.admin-nav-link.active .nav-icon-wrap{background:rgba(255,255,255,.14)}
.admin-account-card{background:rgba(100,116,139,.08);border:1px solid var(--rh-border)}

/* Lesbarkeit der vorhandenen Tailwind-Seiten. */
.text-\[10px\]{font-size:.76rem!important}.text-\[11px\]{font-size:.8rem!important}.text-xs{font-size:.82rem!important}.text-sm{font-size:.92rem!important}.text-\[9px\]{font-size:.72rem!important}.text-\[8px\]{font-size:.69rem!important}
html.dark .bg-slate-950{background-color:#0f2238!important}html.dark .bg-slate-900{background-color:#15304d!important}html.dark .bg-slate-800{background-color:#1b3958!important}html.dark .bg-slate-700{background-color:#2b4f70!important}
html.dark .border-slate-800{border-color:#2b4c69!important}html.dark .border-slate-700{border-color:#355a78!important}
html.dark .text-slate-600{color:#839bb5!important}html.dark .text-slate-500{color:#96acc2!important}html.dark .text-slate-400{color:#b9cada!important}html.dark .text-slate-300{color:#d6e2ee!important}html.dark .text-slate-200{color:#ebf2f8!important}
html.light .bg-slate-950{background-color:#e9f0f8!important}html.light .bg-slate-900{background-color:#f4f8fc!important}html.light .bg-slate-800{background-color:#fff!important}html.light .bg-slate-700{background-color:#e7eef6!important}
html.light .border-slate-800,html.light .border-slate-700{border-color:#d7e1ec!important}html.light .text-white{color:#13243a!important}html.light .text-slate-200,html.light .text-slate-300{color:#273b53!important}html.light .text-slate-400{color:#526b86!important}html.light .text-slate-500{color:#647b94!important}html.light .text-slate-600{color:#7890a7!important}
html.light input,html.light select,html.light textarea{color:#14243a!important}html.light input::placeholder{color:#8ba0b5!important}
html.light .shadow-2xl,html.light .shadow-xl,html.light .shadow-lg{box-shadow:var(--rh-shadow)!important}

/* Bestehende Seiten etwas kompakter, ohne die Schrift klein zu machen. */
.admin-main .p-8{padding:1.45rem!important}.admin-main .p-7{padding:1.25rem!important}.admin-main .p-6{padding:1.1rem!important}.admin-main .p-5{padding:1rem!important}
.admin-main .mb-10{margin-bottom:1.5rem!important}.admin-main .mb-8{margin-bottom:1.25rem!important}.admin-main .gap-8{gap:1.25rem!important}.admin-main .gap-6{gap:1rem!important}
.admin-main .text-5xl{font-size:2.25rem!important;line-height:1.05!important}.admin-main .text-4xl{font-size:1.9rem!important;line-height:1.1!important}

/* Gemeinsame Admin-Komponenten */
.admin-eyebrow{font-size:.72rem;line-height:1;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:#65b7ff;margin-bottom:.4rem}
.admin-primary-btn,.admin-secondary-btn{height:2.55rem;padding:0 .95rem;border-radius:.72rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:800;font-size:.88rem;transition:.18s;text-decoration:none;white-space:nowrap}
.admin-primary-btn{background:#2789df;color:#fff;border:1px solid #3d99e5;box-shadow:0 8px 18px rgba(39,137,223,.2)}.admin-primary-btn:hover{background:#3298ea;transform:translateY(-1px)}
.admin-secondary-btn{background:var(--rh-panel);color:var(--rh-text);border:1px solid var(--rh-border)}.admin-secondary-btn:hover{border-color:#589bd4;background:var(--rh-panel-2)}
.admin-page-head,.dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.admin-page-head h2,.dashboard-head h2{font-size:1.7rem;line-height:1.05;font-weight:900;letter-spacing:-.025em;margin:0;color:var(--rh-text)}
.admin-page-head p,.dashboard-head p{margin:.4rem 0 0;color:var(--rh-muted);max-width:760px;font-size:.93rem}
.admin-alert{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:.8rem;padding:.75rem .9rem;margin-bottom:.85rem;border:1px solid;font-size:.88rem}.admin-alert div{display:flex;flex-direction:column;gap:.15rem}.admin-alert span{opacity:.82}.admin-alert a{font-weight:850;text-decoration:none;white-space:nowrap}.admin-alert-warn{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.28);color:#f6c35a}.admin-alert-ok{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.25);color:#72ddb8}.admin-alert-error{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.25);color:#f5a0a0}
.admin-panel{background:var(--rh-panel);border:1px solid var(--rh-border);border-radius:.95rem;box-shadow:var(--rh-shadow);overflow:hidden}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid var(--rh-border);background:var(--rh-panel-2)}.admin-panel-head>div{display:flex;flex-direction:column}.admin-panel-head strong{font-size:.98rem}.admin-panel-head span{color:var(--rh-muted);font-size:.77rem;margin-top:.08rem}.admin-count{display:inline-flex!important;align-items:center;justify-content:center;min-width:2rem;height:1.7rem;padding:0 .55rem;border-radius:999px;background:rgba(96,165,250,.11);color:#72baff!important;font-weight:850;font-size:.74rem!important;margin:0!important}.panel-link{font-size:.8rem;color:#72baff;font-weight:850;text-decoration:none}
.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:650px}.admin-table th{padding:.58rem .8rem;text-align:left;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--rh-muted);font-weight:900;background:rgba(100,116,139,.045);border-bottom:1px solid var(--rh-border)}.admin-table td{padding:.66rem .8rem;border-bottom:1px solid color-mix(in srgb,var(--rh-border) 72%,transparent);vertical-align:middle;font-size:.87rem}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table tbody tr:hover{background:rgba(96,165,250,.045)}.text-right{text-align:right!important}.empty-cell{text-align:center!important;color:var(--rh-muted);padding:1.35rem!important}.table-actions{display:flex;justify-content:flex-end;gap:.35rem}.icon-btn{width:2.15rem;height:2.15rem;border-radius:.62rem;border:1px solid var(--rh-border);background:var(--rh-panel-2);color:var(--rh-muted);display:inline-grid;place-items:center;cursor:pointer;transition:.16s}.icon-btn:hover{color:#71baff;border-color:#4b83b0}.icon-btn.danger:hover{color:#fb7777;border-color:rgba(239,68,68,.4);background:rgba(239,68,68,.07)}

/* Dashboard */
.dashboard-head{align-items:center}.dashboard-head-actions{display:flex;gap:.5rem}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:.9rem}.metric-card{min-height:105px;background:var(--rh-panel);border:1px solid var(--rh-border);border-radius:.95rem;box-shadow:var(--rh-shadow);padding:.9rem 1rem;display:flex;align-items:center;gap:.85rem;text-decoration:none;color:var(--rh-text);transition:.16s}.metric-card:hover{transform:translateY(-1px);border-color:#4f86b2}.metric-icon{width:2.65rem;height:2.65rem;border-radius:.78rem;display:grid;place-items:center;font-size:1rem;flex:0 0 auto}.metric-icon.blue{background:rgba(59,130,246,.12);color:#72baff}.metric-icon.violet{background:rgba(139,92,246,.12);color:#ba9aff}.metric-icon.cyan{background:rgba(6,182,212,.12);color:#5ee1f0}.metric-icon.amber{background:rgba(245,158,11,.12);color:#f7c45c}.metric-card>div{display:grid}.metric-card small{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--rh-muted);font-weight:900}.metric-card strong{font-size:1.75rem;line-height:1.1;margin:.12rem 0;font-weight:900}.metric-card em{font-style:normal;color:var(--rh-muted);font-size:.76rem}.dashboard-panels{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.dashboard-list{padding:.35rem .9rem}.dashboard-list-row{display:grid;grid-template-columns:2.25rem 1fr;gap:.7rem;padding:.72rem 0;border-bottom:1px solid var(--rh-border)}.dashboard-list-row:last-child{border-bottom:0}.dashboard-list-row .list-icon{width:2.15rem;height:2.15rem;border-radius:.62rem;background:rgba(96,165,250,.1);color:#72baff;display:grid;place-items:center}.dashboard-list-row .list-icon.hard{background:rgba(239,68,68,.1);color:#fb8b8b}.dashboard-list-row .list-icon.soft{background:rgba(245,158,11,.1);color:#f7c45c}.dashboard-list-row>div{display:flex;flex-direction:column}.dashboard-list-row strong{font-size:.88rem}.dashboard-list-row small{font-size:.78rem;color:var(--rh-muted);margin-top:.12rem}.dashboard-list-row code{display:inline-flex;width:max-content;margin:.25rem 0 .05rem;padding:.18rem .42rem;border-radius:.4rem;background:rgba(16,185,129,.09);color:#75dcb9;font-size:.75rem}

/* Filterseite */
.filter-summary-row{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:.65rem;margin-bottom:.8rem}.filter-summary{min-height:66px;background:var(--rh-panel);border:1px solid var(--rh-border);border-radius:.85rem;padding:.65rem .8rem;display:flex;align-items:center;gap:.65rem}.filter-summary-icon{width:2.25rem;height:2.25rem;border-radius:.65rem;display:grid;place-items:center;flex:0 0 auto}.filter-summary-icon.hard{background:rgba(239,68,68,.1);color:#fb8282}.filter-summary-icon.soft{background:rgba(245,158,11,.1);color:#f8c55e}.filter-summary-icon.info{background:rgba(59,130,246,.1);color:#72baff}.filter-summary>div{display:flex;flex-direction:column}.filter-summary strong{font-size:.9rem}.filter-summary small{color:var(--rh-muted);font-size:.73rem;margin-top:.08rem}.mt-panel{margin-top:.8rem}.filter-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.27rem .48rem;border-radius:.48rem;font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;border:1px solid}.filter-badge-hard{background:rgba(239,68,68,.09);border-color:rgba(239,68,68,.22);color:#fb8b8b}.filter-badge-soft{background:rgba(245,158,11,.09);border-color:rgba(245,158,11,.22);color:#f5c45e}.filter-value{font-weight:760}.filter-value .muted,.muted{color:var(--rh-muted);font-weight:500}.legacy-note{display:block;color:#dcab57;font-size:.66rem;margin-top:.12rem}.station-name-cell{font-size:.82rem}.filter-modal-card{width:min(700px,100%);max-height:92vh;overflow:auto;background:var(--rh-panel);border:1px solid var(--rh-border);border-radius:1rem;box-shadow:0 25px 80px rgba(0,0,0,.32);padding:1rem}.filter-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid var(--rh-border)}.filter-modal-head h3{margin:0;font-size:1.35rem;font-weight:900}.filter-form{padding-top:.85rem;display:grid;gap:.85rem}.form-row{display:flex;flex-direction:column;gap:.35rem}.form-row>label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--rh-muted);font-weight:900}.form-row small{color:var(--rh-muted);font-size:.72rem}.admin-input{width:100%;height:2.6rem;padding:0 .75rem;border-radius:.65rem;border:1px solid var(--rh-border);background:var(--rh-panel-2);color:var(--rh-text);outline:none;font:inherit;font-size:.88rem}.admin-input:focus{border-color:#4c9de0;box-shadow:0 0 0 3px rgba(76,157,224,.12)}.filter-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.filter-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.filter-type-choice{position:relative;display:flex;align-items:center;gap:.65rem;padding:.7rem .75rem;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-panel-2);cursor:pointer;transition:.16s}.filter-type-choice input{position:absolute;opacity:0;pointer-events:none}.choice-dot{width:1rem;height:1rem;border-radius:50%;border:2px solid #71869c;display:block;flex:0 0 auto;box-shadow:inset 0 0 0 3px var(--rh-panel-2)}.filter-type-choice input:checked + .choice-dot{background:#58aaf0;border-color:#58aaf0}.hard-choice input:checked + .choice-dot{background:#ef6464;border-color:#ef6464}.soft-choice input:checked + .choice-dot{background:#e9a72e;border-color:#e9a72e}.filter-type-choice:has(input:checked){border-color:#579fd9;background:rgba(59,130,246,.06)}.hard-choice:has(input:checked){border-color:rgba(239,68,68,.55);background:rgba(239,68,68,.06)}.soft-choice:has(input:checked){border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.06)}.filter-type-choice>span:last-child{display:flex;flex-direction:column}.filter-type-choice strong{font-size:.86rem}.filter-type-choice small{font-size:.72rem;color:var(--rh-muted);margin-top:.08rem}.form-hint{display:flex;align-items:flex-start;gap:.5rem;padding:.65rem .7rem;border-radius:.65rem;background:rgba(59,130,246,.07);color:var(--rh-muted);font-size:.76rem}.form-hint i{color:#64aff1;margin-top:.08rem}.filter-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.15rem}

.dark-icon{display:none}html.dark .light-icon{display:none}html.dark .dark-icon{display:inline-block}html.light .light-icon{display:inline-block}
::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#58728d;border-radius:999px;border:3px solid transparent;background-clip:padding-box}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}

@media(max-width:1150px){.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.dashboard-panels{grid-template-columns:1fr}.filter-summary-row{grid-template-columns:1fr}.admin-page-head,.dashboard-head{align-items:flex-start;flex-direction:column}.dashboard-head-actions{width:100%}}
@media(max-width:700px){.dashboard-metrics{grid-template-columns:1fr}.filter-fields-grid,.filter-type-grid{grid-template-columns:1fr}.admin-primary-btn,.admin-secondary-btn{font-size:.82rem}.dashboard-head-actions{flex-wrap:wrap}.admin-sidebar{box-shadow:28px 0 70px rgba(0,0,0,.3)}}

/* v3.2 Filter / confirmation additions */
.filter-page-head{gap:.8rem}.filter-head-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-modal-wide{width:min(860px,100%)}.bulk-filter-top-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:.7rem}.admin-textarea{width:100%;min-height:15rem;padding:.75rem;border-radius:.7rem;border:1px solid var(--rh-border);background:var(--rh-panel-2);color:var(--rh-text);outline:none;font:inherit;font-size:.86rem;line-height:1.5;resize:vertical}.admin-textarea:focus{border-color:#4c9de0;box-shadow:0 0 0 3px rgba(76,157,224,.12)}.bulk-format-example{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.62rem .72rem;border:1px dashed var(--rh-border);border-radius:.65rem;color:var(--rh-muted);font-size:.75rem;background:rgba(100,116,139,.035)}.bulk-format-example strong{color:var(--rh-text)}.bulk-format-example code{color:#74baff;background:rgba(59,130,246,.08);padding:.15rem .35rem;border-radius:.35rem}.filter-confirm-card{width:min(900px,100%);max-height:92vh;overflow:auto;background:var(--rh-panel);border:1px solid var(--rh-border);border-radius:1rem;box-shadow:0 28px 95px rgba(0,0,0,.42);padding:1rem}.confirm-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin:.8rem 0}.confirm-summary-grid>div{min-height:66px;padding:.62rem .7rem;border-radius:.7rem;background:var(--rh-panel-2);border:1px solid var(--rh-border);display:flex;flex-direction:column}.confirm-summary-grid small{font-size:.65rem;text-transform:uppercase;letter-spacing:.07em;color:var(--rh-muted);font-weight:900}.confirm-summary-grid strong{font-size:.9rem;margin-top:.16rem;line-height:1.25}.confirm-summary-grid span{font-size:.7rem;color:var(--rh-muted);margin-top:.08rem}.confirm-hard{color:#fb8585}.confirm-soft{color:#f4c460}.confirm-rule-list{max-height:245px;overflow:auto;border:1px solid var(--rh-border);border-radius:.75rem;background:var(--rh-panel-2)}.confirm-rule-list>div{display:grid;grid-template-columns:1fr 1.5rem 1fr;align-items:center;gap:.35rem;padding:.48rem .7rem;border-bottom:1px solid var(--rh-border);font-size:.79rem}.confirm-rule-list>div:last-child{border-bottom:0}.confirm-rule-list span{color:var(--rh-muted)}.confirm-rule-list i{text-align:center;color:#536a81;font-size:.65rem}.confirm-rule-list strong{font-weight:800}.confirm-rule-list .more-rules{display:block;text-align:center;color:#73b9f6;font-weight:850}.hard-delete-warning{display:flex;gap:.7rem;align-items:flex-start;margin-top:.75rem;padding:.72rem .8rem;border:1px solid rgba(239,68,68,.27);background:rgba(239,68,68,.065);border-radius:.75rem;color:#f38c8c}.hard-delete-warning>i{margin-top:.1rem}.hard-delete-warning>div{display:flex;flex-direction:column}.hard-delete-warning strong{font-size:.83rem}.hard-delete-warning span{font-size:.74rem;color:var(--rh-muted);margin-top:.15rem;line-height:1.45}.confirm-note{display:flex;gap:.45rem;align-items:center;margin:.55rem 0;color:var(--rh-muted);font-size:.74rem}.compact-confirm-alert{margin:.55rem 0!important}.confirm-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap;padding-top:.85rem}.admin-danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.45rem;padding:.55rem .8rem;border-radius:.65rem;border:1px solid rgba(239,68,68,.34);background:#dc4f4f;color:#fff;font-weight:850;font-size:.8rem;cursor:pointer;transition:.16s}.admin-danger-btn:hover{background:#ef5b5b}.song-filter-badges{display:inline-flex;align-items:center;gap:.3rem;margin-left:.45rem;vertical-align:middle}.song-filter-badge{display:inline-flex;align-items:center;gap:.24rem;padding:.18rem .35rem;border-radius:.38rem;border:1px solid;font-size:.58rem;line-height:1;text-transform:uppercase;letter-spacing:.035em;font-weight:900}.song-filter-badge.soft{color:#f5c45e;background:rgba(245,158,11,.09);border-color:rgba(245,158,11,.24)}.song-filter-badge.hard{color:#fb8585;background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.24)}.song-filter-btn{width:2rem;height:2rem;border-radius:.55rem;border:1px solid var(--rh-border);background:var(--rh-panel-2);color:#7fbaf0;display:inline-grid;place-items:center;cursor:pointer;transition:.16s}.song-filter-btn:hover{background:rgba(59,130,246,.1);border-color:#4a82af;color:#9ed0ff}.master-filter-modal .filter-modal-card{width:min(680px,100%)}
@media(max-width:760px){.bulk-filter-top-grid,.confirm-summary-grid{grid-template-columns:1fr 1fr}.filter-head-actions{width:100%}.filter-head-actions .admin-primary-btn,.filter-head-actions .admin-secondary-btn{flex:1}.confirm-actions>button{flex:1 1 100%}}
@media(max-width:520px){.confirm-summary-grid{grid-template-columns:1fr}.confirm-rule-list>div{grid-template-columns:1fr}.confirm-rule-list i{display:none}}
