@font-face{font-family:'FatFrank';src:url('/assets/fat-frank-heavy.otf') format('opentype');font-weight:normal;font-style:normal;font-display:swap}
:root{--brand-primary:#1b3b82;--brand-accent:#f8a816;--muted:#7f8c8d;--line:#e0e6ed;--mint:#1b3b82;--panel:#fff;font-family:'Segoe UI',Roboto,Helvetica,Arial,sans-serif;background:#f4f7f6;color:#2c3e50;color-scheme:light}body{background:#f4f7f6}h1,h2,h3,.brand b{font-family:'FatFrank','Segoe UI',sans-serif;font-weight:normal;letter-spacing:.35px}h1{font-size:30px}h2{font-size:20px}header{background:var(--brand-primary);border:0;box-shadow:0 4px 12px #0002;height:auto;min-height:78px;gap:18px;padding-top:10px;padding-bottom:10px}header nav a{color:#fff}header nav button{color:#fff;background:#ffffff18;border-color:#ffffff40}.brand{letter-spacing:0;color:#fff;font-size:20px;gap:14px;max-width:70%}.brand img{height:44px;width:auto;max-width:110px;object-fit:contain}.brand b{font-size:18px;max-width:330px;line-height:1.2}.brand:hover{text-decoration:none}.card{box-shadow:0 2px 12px #00000005;background:#fff;border-color:var(--line)}a{color:var(--brand-primary)}button,.button{background:#eef2f8;color:var(--brand-primary);border:1px solid #dbe2ec}button:hover,.button:hover{background:#e1e9f4}button.primary,.button.primary{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}button.danger{color:#a13131;background:#fff5f5;border-color:#ebcece}input,select,textarea{background:#fff;color:#2c3e50;border-color:#d3dce6}input:disabled{background:#f4f6f9;color:#718093}input[type=color]{height:46px;padding:5px}label{color:#506172}.eyebrow{color:var(--brand-primary)}.badge{color:#112656;background:var(--brand-accent)}.badge.off{background:#e9eef4;color:#617187}.tabs button.active{color:var(--brand-primary);border-color:var(--brand-primary)}.file-icon{background:#edf2fb;color:var(--brand-primary);border-color:#d4deee}.file-state{color:#3d668f}.file-info strong{color:#26374b}.playback-label{color:#526881}.pill{border-color:#d8e1eb;color:#63768b}.error{color:#af3636}.empty{border-color:#d6dfe8;background:#fafbfd}.folder-tree summary{background:#f1f5fa;border-color:#dce4ec}.folder-tree summary button,.tree-folder-icon{color:var(--brand-primary)}.tree-children{border-color:#d4deea}.tree-file button{color:#334960}.folder-config{border-color:var(--line)}.playback-stats>div{background:#f4f7fb;border-color:#dee6f0}.playback-stats strong{color:var(--brand-primary)}.drag-over{background:#edf2fa;box-shadow:inset 0 3px var(--brand-accent)}.order-row{border-color:var(--line)}.schedule-table td:first-child,.schedule-day{color:var(--brand-primary)}.schedule-table th{background:#f7f9fc}.schedule-table td{color:#2c3e50}.schedule-table tbody tr:nth-child(even){background:#fafbfd}.stats strong{color:var(--brand-primary)}code{color:#426187}.logo-preview{border-radius:10px;background:var(--brand-primary);padding:25px;text-align:center;margin-bottom:18px}.logo-preview img{max-width:100%;max-height:110px}.checkbox-label{display:flex;align-items:center;gap:10px}.login{box-shadow:0 12px 45px #1b3b820c}.login h1{color:var(--brand-primary)}dialog{background:#fff;color:#2c3e50;border-color:#d5dfed}.progress{background:#e2e8ef}#toast{background:#e2f3e7;color:#214a31;border:1px solid #c7e4d0}#toast.error{background:#fff0ed;color:#8c332a}footer{color:#7f8c8d}.note{color:#7f8c8d}@media(max-width:600px){header{padding-left:16px;padding-right:16px}.brand{gap:9px;max-width:62%}.brand img{height:34px;max-width:65px}.brand b{font-size:14px}h1{font-size:26px}header nav{gap:8px}header nav button{padding:8px 10px}}

.audience-scroll{overflow:auto;max-height:420px}.audience-table{width:100%;text-align:left}.audience-table td,.audience-table th{padding:8px;white-space:nowrap}.disk-usage{width:100%;height:16px;accent-color:var(--primary,#1b3b82)}

/* Panel de trabajo compacto */
body{padding-top:0}#appHeader{position:sticky;top:0;z-index:20;display:flex;align-items:stretch;justify-content:space-between;gap:16px;min-height:62px;padding:0 24px;background:var(--brand-primary);box-shadow:0 3px 12px #0002}.admin-menu{display:flex;align-items:stretch;gap:0;overflow-x:auto;scrollbar-width:none}.admin-menu::-webkit-scrollbar{display:none}.admin-menu button{flex:none;border:0;border-radius:0;background:transparent;color:#ffffffc7;padding:0 13px;font-size:13px;font-weight:700;white-space:nowrap}.admin-menu button:hover,.admin-menu button.active{background:#ffffff12;color:#fff;box-shadow:inset 0 -3px var(--brand-accent)}.header-actions{display:flex;align-items:center;gap:10px;flex:none;color:#fff}.header-actions>a{color:#fff;font-size:12px;white-space:nowrap}.header-actions>#logout{padding:7px 10px}.broadcast-controls{display:flex;overflow:hidden;border:1px solid #ffffff55;border-radius:8px}.broadcast-controls button{border:0;border-right:1px solid #ffffff35;border-radius:0;min-width:38px;padding:7px 10px;color:#fff;background:#ffffff16}.broadcast-controls button:last-child{border:0}.broadcast-controls button.primary{background:#f8a816;color:#112656}.broadcast-controls button.danger{background:#a73131;color:#fff}main{max-width:1440px;padding-top:28px}.library-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.library-toolbar h1{margin:0 0 4px}.library-toolbar p{margin:0}.library-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.library-tools input{width:270px;margin:0}.library-tools select{width:190px;margin:0}.library-tools button{white-space:nowrap}.library-sheet{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 2px 12px #00000005}.library-sheet-scroll{overflow:auto;max-height:calc(100vh - 220px)}.library-table{width:100%;border-collapse:collapse;min-width:980px;text-align:left}.library-table th{position:sticky;top:0;z-index:1;background:#edf2f8;color:#526881;padding:12px;font-size:11px;text-transform:uppercase;letter-spacing:.7px}.library-table td{padding:11px 12px;border-top:1px solid var(--line);font-size:13px;vertical-align:middle}.library-table tbody tr:hover{background:#f6f9fc}.library-title{min-width:250px}.library-title strong,.library-title small{display:block}.library-title small{margin-top:3px;color:#718093;font-size:11px;overflow-wrap:anywhere}.library-actions{display:flex;gap:5px;flex-wrap:wrap;min-width:260px}.library-actions button{padding:5px 8px;font-size:11px}.inline-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.inline-form label{min-width:220px}.inline-form input,.inline-form select{margin-bottom:0}.upload-storage{margin:10px 0 18px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f7f9fc}.upload-storage strong{display:block;color:var(--brand-primary);margin-bottom:8px}#uploadDialog{width:min(620px,92vw)}#uploadDialog form{max-height:86vh;overflow:auto}.card hr{border:0;border-top:1px solid var(--line);margin:28px 0}
@media(max-width:1050px){#appHeader{padding:0 14px}.admin-menu button{padding:0 10px;font-size:12px}.header-actions>a{display:none}.library-toolbar{align-items:stretch;flex-direction:column}.library-tools{justify-content:flex-start}.library-sheet-scroll{max-height:none}}
@media(max-width:650px){#appHeader{padding:0 8px;min-height:54px}.admin-menu{max-width:calc(100vw - 145px)}.admin-menu button{padding:0 9px;font-size:11px}.header-actions{gap:5px}.header-actions>#logout{font-size:11px;padding:6px 7px}.broadcast-controls button{min-width:30px;padding:7px}.library-tools input,.library-tools select{width:100%}.library-tools{display:grid;grid-template-columns:1fr auto}.library-tools input{grid-column:1/-1}.library-tools select{grid-column:1}.library-toolbar h1{font-size:25px}.library-table{min-width:920px}.library-sheet-scroll{border-radius:12px}.library-sheet{margin-left:-2px;margin-right:-2px}}
 .broadcast-controls button{display:inline-flex;align-items:center;gap:5px}.sheet-hint{display:none;margin:0;padding:9px 12px;background:#fff8e8;color:#71540f;font-size:12px}.quick-folder{display:flex;align-items:end;gap:8px;margin:-6px 0 14px}.quick-folder input{margin:0;flex:1;min-width:180px}@media(max-width:650px){.admin-menu{max-width:calc(100vw - 126px);mask-image:linear-gradient(90deg,#000 calc(100% - 22px),transparent)}.broadcast-controls button span{display:none}.sheet-hint{display:block}}
