﻿body{background:#0f172a;color:#e2e8f0}.wrap{width:100%;max-width:none;margin:auto}.live-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(520px,1fr);gap:16px;align-items:start}.player-column{min-width:0}.channel-panel{min-width:0;max-height:calc(100vh - 32px);overflow-y:auto;padding-right:4px}.tabs,.subtabs,.server-bar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.tabs button,.subtabs button,.server-bar button{border:1px solid #334155;background:#1e293b;color:#cbd5e1;border-radius:6px;padding:8px 14px}.tabs button.active,.subtabs button.active,.server-bar button.active{background:#2563eb;color:#fff}.server-bar{min-height:40px;align-items:center;margin-top:12px}.server-group{display:none;gap:8px;flex-wrap:wrap;width:100%}.server-group.active{display:flex}.channel-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.channel{border:1px solid #334155;border-radius:9px;cursor:pointer;min-width:0}.channel.active{border-color:#3b82f6}.logo-box{width:100%;aspect-ratio:1/1;height:auto;display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent;border-radius:6px 6px 0 0}.logo-box img{display:block;width:100%;height:100%;object-fit:fill;object-position:center;border-radius:6px 6px 0 0}.channel strong{display:block;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.6rem}.channel.active strong{background:#dc2626;color:#fff}.source{background:#2563eb;color:#fff;border:0;border-radius:4px;padding:6px 16px}.player{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:fill;background:#000;border-radius:8px}.admin-card{background:#1e293b;padding:12px;margin:8px 0;border-radius:6px}@media(max-width:1100px){.live-layout{grid-template-columns:minmax(0,1.1fr) minmax(480px,1fr)}}@media(max-width:800px){.live-layout{display:block}.channel-panel{max-height:none;margin-top:16px}.channel-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:560px){.channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.public-section{background:#1e293b;border:1px dashed #0ea5e9;border-radius:10px;padding:16px 20px;margin-top:20px;color:#e2e8f0}
.public-section h2{text-align:center;color:#38bdf8;font-size:1.25rem;font-weight:400;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #334155}
.public-link-list{display:grid;gap:8px}
.public-link{display:flex;align-items:center;gap:16px;min-height:50px;padding:12px 14px;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-weight:600;text-decoration:none}
.public-link:hover{color:#fff;border-color:#38bdf8}
.public-link-icon{position:relative;flex:none;width:12px;height:10px;border:1px solid #38bdf8;border-radius:2px}
.public-link-icon:after{content:"";position:absolute;left:2px;right:2px;top:2px;height:1px;background:#38bdf8;box-shadow:0 3px #38bdf8,0 5px #38bdf8}
.public-downloads{display:flex;gap:10px}
.public-download{display:flex;flex:1;align-items:center;justify-content:center;gap:5px;min-height:42px;padding:10px;background:#2563eb;border-radius:8px;color:#fff;font-weight:600;text-align:center;text-decoration:none}
.public-download:hover{background:#1d4ed8;color:#fff}
@media(max-width:560px){.public-section{padding:14px}.public-downloads{flex-direction:column}}
.live-page{--live-primary:#8ab4f8;--live-primary-container:#1e3a5f;--live-surface:#151b23;--live-surface-container:#1e2632;--live-surface-high:#293342;--live-outline:#3b4655;--live-on-surface:#e3e8f0;--live-muted:#aab4c2;min-height:100vh;background:#0d1117;color:var(--live-on-surface);font-family:Roboto,"Segoe UI",Arial,sans-serif}
.live-page .wrap{max-width:1920px;padding:18px 22px!important}
.live-page h1.live-title{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:5px 14px;border:1px solid #7f2635;border-radius:14px;background:transparent;color:#fff1f3;font-size:1.35rem;font-weight:600;letter-spacing:.01em;box-shadow:0 2px 10px #0005}
.live-page .live-title-icon{display:none}
.live-page h1.live-title{justify-content:flex-start}
.live-page .live-brand-logo{display:grid;place-items:center;flex:none;width:125px;height:44px;overflow:hidden;border:0;border-radius:8px;background:transparent}
.live-page .live-brand-logo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transform:translateY(-20%) scale(1.25);transform-origin:center center}
.live-page .live-welcome{display:block;flex:none;color:#fff1f3;font-size:1.4rem;font-weight:700;white-space:nowrap;line-height:1}
.live-page .channel-search{display:flex;align-items:center;gap:12px;flex:0 1 640px;width:min(640px,calc(100% - 64px));max-width:640px;min-width:0;height:36px;margin:0 0 0 auto;padding:0 12px;border:1px solid var(--live-outline);border-radius:12px;background:var(--live-surface-container);color:var(--live-muted);box-shadow:inset 0 1px 2px #0003}
.live-page .channel-search:focus-within{border-color:var(--live-primary);box-shadow:0 0 0 2px #8ab4f833}
.live-page .channel-search>i{flex:none;color:var(--live-primary);font-size:17px}
.live-page .channel-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--live-on-surface);font:inherit;font-size:.95rem}
.live-page .channel-search input::placeholder{color:var(--live-muted)}
.live-page .channel-search button{display:grid;place-items:center;flex:none;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--live-muted)}
.live-page .channel-search button:hover{background:var(--live-surface-high);color:var(--live-on-surface)}
.live-page .live-title.ready{visibility:visible}
.live-page .live-title:not(.ready){visibility:hidden}
.live-page .live-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;align-items:start}
.live-page .player-column,.live-page .channel-panel{padding:16px;border:1px solid var(--live-outline);border-radius:18px;background:var(--live-surface);box-shadow:0 2px 8px #0003}
.live-page .channel-panel{max-height:calc(100vh - 32px);overflow-y:auto;scrollbar-color:var(--live-surface-high) transparent}
.live-page .player{border-radius:14px;background:#000;box-shadow:0 4px 14px #0005}
.live-page .player.player-floating{position:fixed;top:12px;z-index:30}
.live-page .server-bar{min-height:44px;margin:12px 0 0;padding:8px;border-radius:14px;background:var(--live-surface-container)}
.live-page .tabs,.live-page .subtabs{gap:8px;margin:0 0 12px;padding-bottom:4px}
.live-page .tabs button,.live-page .subtabs button{min-height:38px;padding:8px 16px;border:1px solid transparent;border-radius:20px;background:var(--live-surface-container);color:var(--live-on-surface);font-size:.82rem;font-weight:600;transition:background .18s,color .18s,box-shadow .18s}
.live-page .tabs button:hover,.live-page .subtabs button:hover,.live-page .server-bar button:hover{background:var(--live-surface-high)}
.live-page .tabs button.active,.live-page .subtabs button.active{border-color:transparent;background:var(--live-primary-container);color:var(--live-primary);box-shadow:inset 0 0 0 1px #8ab4f833}
.live-page .channel-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px}
.live-page .channel-panel-heading h2{margin:0;color:var(--live-on-surface);font-size:1.08rem;font-weight:600}
.live-page .channel-count{padding:5px 10px;border-radius:14px;background:var(--live-surface-container);color:var(--live-muted);font-size:.75rem;font-weight:600}
.live-page .channel-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.live-page .channel{overflow:hidden;border:1px solid var(--live-outline);border-radius:14px;background:var(--live-surface-container);box-shadow:0 1px 3px #0003;transition:transform .16s,border-color .16s,box-shadow .16s}
.live-page .channel:hover{transform:translateY(-2px);border-color:#718096;box-shadow:0 5px 14px #0005}
.live-page .channel.active{border-color:var(--live-primary);box-shadow:0 0 0 2px #8ab4f833}
.live-page .logo-box{border-radius:0;background:var(--live-surface-high)}
.live-page .logo-box img{border-radius:0}
.live-page .channel strong{min-height:30px;padding:7px 5px;color:var(--live-on-surface);font-size:.72rem;font-weight:500}
.live-page .channel.active strong{background:var(--live-primary-container);color:var(--live-primary)}
.live-page .source{min-height:36px;padding:7px 16px;border-radius:18px;background:var(--live-primary-container);color:var(--live-primary);font-size:.82rem;font-weight:600;transition:background .18s}
.live-page .source:hover{background:#2d4e77}
.live-page .public-section{margin-top:18px;padding:18px;border:1px solid var(--live-outline);border-radius:18px;background:var(--live-surface);box-shadow:0 2px 8px #0003}
.live-page .public-section h2{border-color:var(--live-outline);color:var(--live-primary);font-weight:600}
.live-page .public-link{border-color:var(--live-outline);border-radius:12px;background:var(--live-surface-container);transition:background .18s,border-color .18s}
.live-page .public-link:hover{border-color:var(--live-primary);background:var(--live-surface-high)}
.live-page .public-download{border-radius:22px;background:var(--live-primary-container);color:var(--live-primary)}
.live-page .public-download:hover{background:#2d4e77;color:#fff}
@media(max-width:1100px){.live-page .live-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.live-page .channel-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.live-page .wrap{padding:12px!important}.live-page .live-layout{display:flex;flex-direction:column}.live-page .player-column,.live-page .channel-panel{width:100%;box-sizing:border-box}.live-page .channel-panel{max-height:none;margin-top:0}.live-page .channel-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:560px){.live-page .player-column,.live-page .channel-panel{padding:12px;border-radius:15px}.live-page .channel-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.live-page .tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.live-page .tabs button{flex:none}.live-page h1.live-title{gap:7px;padding:4px 8px}.live-page .live-brand-logo{width:94px;height:38px}.live-page .live-brand-logo img{transform:translateY(-15%) scale(1.25)}.live-page .live-welcome{display:block;font-size:1.15rem}.live-page .channel-search{display:none}.live-page .channel strong{font-size:.68rem}}
.admin-page{min-height:100vh;background:#000 url("img/body-bg5e1f.jpg?v=2") no-repeat fixed center;background-size:cover;color:#fff;font-family:Arial,sans-serif}
.admin-page .wrap{min-height:100vh;padding:1px 4px!important}
.admin-login-card{box-sizing:border-box;width:min(55vw,853px);min-height:82vh;margin:4vh auto 0;padding:20px;background:#1e293b;border:1px solid #334155;border-radius:12px}
.admin-login-card h2{text-align:center;color:#f8fafc;font-size:24px;font-weight:500;margin:0 0 14px}
.admin-login-form{display:flex;flex-direction:column;gap:12px}
.admin-login-form input{box-sizing:border-box;width:100%;height:35px;padding:8px 10px;background:#0f172a;color:#e2e8f0;border:1px solid #111827;border-radius:6px;font-size:12px}
.admin-login-form input::placeholder{color:#64748b}
.admin-login-form button,.admin-dashboard button{width:max-content;border:0;border-radius:6px;padding:9px 16px;background:#2563eb;color:#fff;font-weight:600;cursor:pointer}
.admin-login-form button:hover,.admin-dashboard button:hover{background:#1d4ed8}
.admin-login-error{color:#fca5a5;margin:0}
.admin-dashboard{box-sizing:border-box;max-width:1050px;margin:30px auto;padding:25px;background:#1e293b;border:1px solid #334155;border-radius:12px;color:#e2e8f0}
.admin-dashboard h2,.admin-dashboard h3{color:#f8fafc}
.admin-dashboard h3{margin:24px 0 12px}
.admin-dashboard .admin-form{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px;background:#0f172a;border:1px solid #334155;border-radius:8px}
.admin-dashboard .admin-form input:not([type=hidden]),.admin-dashboard .admin-form select{box-sizing:border-box;min-width:130px;flex:1;padding:10px;background:#111827;border:1px solid #334155;border-radius:6px;color:#e2e8f0}
.admin-dashboard .admin-form label{display:flex;align-items:center;gap:6px;color:#cbd5e1;white-space:nowrap}
.admin-dashboard .admin-form label input{flex:none}
.admin-dashboard .admin-card{margin:10px 0;padding:12px;background:#0f172a;border:1px solid #334155;border-radius:8px}
.admin-dashboard .admin-card .admin-form{padding:0;border:0}
.admin-dashboard a{color:#38bdf8}
.admin-dashboard .admin-header{display:flex;justify-content:space-between;align-items:center;gap:12px}
.admin-dashboard .admin-header h2{margin:0}
.admin-dashboard .admin-header .btn{display:inline-block;padding:9px 14px;border-radius:6px;background:#dc2626;color:#fff;text-decoration:none}
@media(max-width:700px){.admin-login-card{width:calc(100% - 24px);min-height:82vh;margin:12px auto;padding:18px}.admin-dashboard{margin:12px auto;padding:16px}.admin-dashboard .admin-form{align-items:stretch;flex-direction:column}.admin-dashboard .admin-form input:not([type=hidden]),.admin-dashboard .admin-form select{width:100%;flex:auto}.admin-dashboard .admin-header{align-items:flex-start}}
.admin-dashboard#admin-links{width:100%;max-width:880px;min-height:99vh;margin:6px auto;padding:20px;background:#1e293b}
#admin-links .admin-topbar{display:flex;align-items:center;gap:8px;padding-bottom:9px;border-bottom:1px solid #334155}
#admin-links .admin-topbar a{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:5px;background:#2563eb;color:#fff;font-size:12px;font-weight:700;text-decoration:none}
#admin-links .admin-topbar a.logout{background:#dc3545}
#admin-links .admin-settings{margin-top:16px;padding:12px;border:1px solid #334155;border-radius:8px}
#admin-links .admin-settings h3{margin:0 0 14px;color:#60a5fa;font-size:21px}
#admin-links .admin-settings-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}
#admin-links .admin-settings-form label,#admin-links .add-link-form label{display:block;color:#38bdf8;font-size:11px;font-weight:600}
#admin-links .admin-settings-form input,#admin-links .add-link-form input,#admin-links .add-link-form select,#admin-links .edit-link-form input,#admin-links .edit-link-form select{box-sizing:border-box;width:100%;height:36px;margin-top:8px;padding:8px 10px;border:1px solid #111827;border-radius:7px;background:#0f172a;color:#e2e8f0;font-size:12px}
#admin-links .admin-settings-form button{grid-column:1/-1;padding:8px 16px}
#admin-links .link-manager-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;margin-top:18px}
#admin-links .link-manager-grid h2{margin:0 0 12px;color:#f8fafc;font-size:23px;font-weight:400}
#admin-links .add-link-form{display:flex;flex-direction:column;gap:12px}
#admin-links .add-link-form button{width:100%;margin-top:20px;background:#10b981}
#admin-links .add-link-form button:hover{background:#059669}
#admin-links .add-link-form .newtab-label{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px}
#admin-links .add-link-form .newtab-label input{width:auto;height:auto;margin:0;accent-color:#2563eb}
#admin-links .managed-links{height:calc(95vh - 310px);min-height:260px;overflow:auto;padding:4px;background:#0f172a;border:1px solid #334155;border-radius:7px}
#admin-links .managed-link{margin-bottom:3px;border:1px solid #334155;border-radius:5px;background:#1e293b}
#admin-links .managed-link-row{display:flex;align-items:center;gap:6px;min-height:29px;padding:2px 6px}
#admin-links .drag-handle{color:#64748b;cursor:grab;user-select:none}
#admin-links .managed-link-title{flex:1;overflow:hidden;color:#e2e8f0;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
#admin-links .managed-link-actions{display:flex;gap:5px}
#admin-links .managed-link-actions button{padding:3px 6px;font-size:10px}
#admin-links .managed-link-actions .delete{padding:3px 6px;background:#2563eb}
#admin-links .edit-link-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px}
#admin-links .edit-link-form[hidden]{display:none}
#admin-links .edit-link-form label{color:#38bdf8;font-size:11px}
#admin-links .edit-link-form .newtab-label{display:flex;align-items:center;gap:6px}
#admin-links .edit-link-form .newtab-label input{width:auto;height:auto;margin:0}
#admin-links .managed-link.dragging{opacity:.45}
#admin-links .admin-notice{margin:10px 0 0;color:#86efac;font-size:12px}
@media(max-width:700px){.admin-dashboard#admin-links{width:100%;min-height:99vh;margin:4px auto;padding:14px}#admin-links .link-manager-grid{grid-template-columns:1fr;gap:20px}#admin-links .managed-links{height:300px}#admin-links .admin-settings-form{grid-template-columns:1fr}#admin-links .admin-settings-form button{grid-column:auto}}
#admin-links .link-manager-grid{display:grid;grid-template-columns:5fr 7fr;gap:24px;margin-top:18px}
#admin-links .settings-card{padding:15px;background:#1e293b;border:1px solid #334155;border-radius:8px;margin:16px 0 20px}
#admin-links .settings-card h4{margin:0 0 15px;color:#60a5fa;font-size:21px}
#admin-links .settings-card .row{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:0}
#admin-links .settings-card .row>div{padding:0}
#admin-links .settings-card .admin-form,#admin-links .link-add-form{padding:0;border:0;background:transparent}
#admin-links .settings-card label{display:block;color:#38bdf8;font-size:11px;font-weight:600}
#admin-links .settings-card input{box-sizing:border-box;width:100%;height:36px;margin:8px 0 0;padding:8px 10px;border:1px solid #111827;border-radius:7px;background:#0f172a;color:#e2e8f0;font-size:12px}
#admin-links .link-manager-grid h3{margin:0 0 12px;color:#f8fafc;font-size:23px;font-weight:400}
#admin-links .link-add-form{display:flex;flex-direction:column;gap:12px}
#admin-links .link-add-form input,#admin-links .link-add-form select{box-sizing:border-box;width:100%;height:36px;margin:0;padding:8px 10px;border:1px solid #111827;border-radius:7px;background:#0f172a;color:#e2e8f0;font-size:12px}
#admin-links .link-add-form label{display:block;margin:0;color:#38bdf8;font-size:11px}
#admin-links .link-add-form label.newtab{display:flex;align-items:center;gap:8px}
#admin-links .link-add-form label.newtab input{width:auto;height:auto;accent-color:#2563eb}
#admin-links .link-add-form button{width:100%;margin-top:20px;background:#10b981}
#admin-links .sortable-list{height:calc(95vh - 280px);min-height:360px;overflow-y:auto;padding:8px;border:1px solid #334155;border-radius:8px;background:#0f172a}
#admin-links .sortable-list .admin-card{display:flex;align-items:center;justify-content:space-between;min-height:29px;margin:0 0 4px;padding:5px 10px;border:1px solid #334155;border-radius:4px;background:#1e293b;font-size:13px}
#admin-links .sortable-list .drag-handle{margin-right:8px;color:#64748b;cursor:grab}
#admin-links .sortable-list .actions{display:flex;gap:6px}
#admin-links .sortable-list .actions button{padding:2px 7px;border:0;border-radius:5px;background:#2563eb;color:#fff;font-size:11px;line-height:1.2}
#admin-links .sortable-list .actions .delete-btn{padding:2px 7px}
#admin-links .sortable-list .admin-card.dragging{opacity:.45}
#admin-links .modal-overlay{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.75)}
#admin-links .modal-box{position:relative;width:min(92%,600px);max-height:85vh;overflow:auto;padding:25px;border-radius:12px;background:#1e293b;box-shadow:0 8px 30px rgba(0,0,0,.6);color:#fff}
#admin-links .modal-box h3{margin:0 0 20px;padding-bottom:10px;border-bottom:1px solid #334155}
#admin-links .modal-box .admin-form{display:block;padding:0;border:0;background:transparent}
#admin-links .modal-close{position:absolute;top:10px;right:15px;border:0;background:none;color:#fff;font-size:26px}
#admin-links .modal-box label{display:block;margin:10px 0 4px;color:#38bdf8}
#admin-links .modal-box input:not([type=checkbox]),#admin-links .modal-box select{box-sizing:border-box;width:100%;height:38px;margin:5px 0 12px;padding:9px;background:#0f172a;border:1px solid #334155;border-radius:5px;color:#fff}
#admin-links .modal-box .modal-submit{margin-top:12px;background:#10b981}
@media(max-width:700px){#admin-links .link-manager-grid{grid-template-columns:1fr;gap:20px}#admin-links .sortable-list{height:300px;min-height:240px}#admin-links .settings-card .row{grid-template-columns:1fr}}
