@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#f4f5f7;font-synthesis:none;text-rendering:optimizelegibility;--panel:#101319;--panel2:#151a22;--line:#252b35;--muted:#8d96a5;--accent:#a5f05b;--accent2:#c4ff85;background:#090b0f;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html,body,#root{background:#090b0f;width:100%;min-height:100%;margin:0}body{min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}.dashboard{color:#f4f5f7;background:radial-gradient(at 15% 0,#a5f05b0e,#0000 32%),#090b0f;min-height:100vh}.topbar{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0c10eb;border-bottom:1px solid #202630;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,4vw,64px);display:flex;position:sticky;top:0}.brand{letter-spacing:1.8px;align-items:center;gap:11px;font:700 18px Space Grotesk,sans-serif;display:flex}.brand-mark{background:var(--accent);color:#10150b;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.brand-accent{color:var(--accent)}.topbar-right{align-items:center;gap:20px;display:flex}.admin-label{letter-spacing:1.5px;color:#a6afbd;align-items:center;gap:8px;font-size:10px;display:flex}.online-dot,.playing-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 12px #a5f05b88}.icon-btn{border:1px solid var(--line);color:#bfc6d0;background:#151a22;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.icon-btn:hover{color:var(--accent);border-color:#566044}.watch-layout{grid-template-columns:minmax(0,2.12fr) minmax(310px,.98fr);align-items:start;gap:28px;width:min(1600px,100%);margin:0 auto;padding:34px clamp(18px,3vw,46px) 24px;display:grid}.watch-main{min-width:0}.section-kicker{letter-spacing:2px;color:#87919f;margin-bottom:13px;font-size:10px;font-weight:700}.watch-player-wrap{aspect-ratio:16/9;background:#030405;border:1px solid #252b35;border-radius:15px;width:100%;overflow:hidden;box-shadow:0 22px 70px #0008}.main-player{object-fit:contain;background:#030405;width:100%;height:100%;display:block}.player-placeholder{aspect-ratio:16/9;text-align:center;background:radial-gradient(at 50% 45%,#1b2420 0%,#11161b 40%,#0c1015 78%);border:1px solid #252b35;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:24px;display:flex}.placeholder-icon{width:68px;height:68px;color:var(--accent);background:#a5f05b12;border:1px solid #45533a;border-radius:22px;place-items:center;margin-bottom:22px;display:grid}.player-placeholder h2{margin:0 0 9px;font:600 clamp(22px,3vw,30px) Space Grotesk,sans-serif}.player-placeholder p{color:var(--muted);margin:0;font-size:13px}.now-playing-meta{justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 2px 17px;display:flex}.playing-label{letter-spacing:1.7px;color:var(--accent);align-items:center;gap:8px;margin-bottom:9px;font-size:9px;font-weight:700;display:flex}.now-playing-meta h1{margin:0 0 7px;font:600 clamp(19px,2.2vw,26px)/1.25 Space Grotesk,sans-serif}.now-playing-meta p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.clear-player-btn{border:1px solid var(--line);color:#aab2bf;background:#121720;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.main-footnote{color:#778190;letter-spacing:1.3px;border-top:1px solid #202630;justify-content:space-between;padding:15px 2px;font-size:9px;display:flex}.main-footnote span{align-items:center;gap:7px;display:flex}.library-panel{background:#101319c7;border:1px solid #242b35;border-radius:16px;flex-direction:column;min-width:0;min-height:460px;max-height:calc(100vh - 126px);padding:20px;display:flex;overflow:hidden}.library-topline{border-bottom:1px solid #252b35;justify-content:space-between;align-items:center;padding-bottom:18px;display:flex}.library-topline .section-kicker{margin-bottom:6px}.library-topline h2{margin:0;font:600 22px Space Grotesk,sans-serif}.library-topline h2 span{color:#8b95a3;vertical-align:3px;background:#202630;border-radius:20px;margin-left:5px;padding:3px 8px;font:500 12px DM Sans,sans-serif}.add-video-btn{background:var(--accent);color:#11170b;border:0;border-radius:13px;place-items:center;width:42px;height:42px;transition:transform .18s,background .18s;display:grid;box-shadow:0 5px 22px #a5f05b22}.add-video-btn:hover{background:var(--accent2);transform:translateY(-2px)}.add-video-btn.is-open{color:#d9e0e8;box-shadow:none;background:#252c35}.upload-panel{border-bottom:1px solid #252b35;padding:16px 0 17px;animation:.2s ease-out panel-in}@keyframes panel-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.upload-panel-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.upload-panel-heading div{color:#e6ebf0;align-items:center;gap:8px;font-size:12px;display:flex}.upload-panel-heading div svg{color:var(--accent)}.upload-panel-heading>span{color:#788392;letter-spacing:1px;font-size:9px}.drop-zone{text-align:center;min-height:100px;color:var(--accent);cursor:pointer;background:#0d1117;border:1px dashed #414b58;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex}.drop-zone:hover,.drop-zone.dragging,.drop-zone.has-file{border-color:var(--accent);background:#a5f05b09}.drop-zone strong{color:#e5eaf0;overflow-wrap:anywhere;max-width:100%;font-size:11px}.drop-zone span{color:#7e8998;font-size:10px}.upload-fields{gap:8px;margin-top:10px;display:grid}.upload-fields input,.upload-fields textarea,.search-box input{color:#eef2f5;resize:vertical;background:#0c1016;border:1px solid #29313c;border-radius:9px;outline:none;width:100%;padding:10px 11px;font-size:11px}.upload-fields input:focus,.upload-fields textarea:focus,.search-box:focus-within{border-color:#718c52}.upload-submit{background:var(--accent);color:#11170b;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;width:100%;height:38px;margin-top:10px;font-size:11px;font-weight:700;display:flex}.upload-submit:disabled{opacity:.45;cursor:not-allowed}.library-tools{gap:8px;padding:15px 0 12px;display:flex}.search-box{color:#778392;background:#0c1016;border:1px solid #29313c;border-radius:9px;flex:1;align-items:center;gap:8px;height:36px;padding:0 10px;display:flex}.search-box input{background:0 0;border:0;height:100%;padding:0;font-size:11px}.refresh-btn{color:#aab3c0;background:#151a22;border:1px solid #29313c;border-radius:9px;flex:none;place-items:center;width:36px;height:36px;display:grid}.refresh-btn:hover{color:var(--accent);border-color:#566044}.video-list{scrollbar-width:thin;scrollbar-color:#39424d transparent;flex:1;min-height:0;margin:0 -5px;padding:0 5px 5px;overflow-y:auto}.video-row{text-align:left;width:100%;color:inherit;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:11px;padding:10px 8px;transition:background .15s,border-color .15s;display:flex}.video-row:hover{background:#171d25}.video-row.active{background:#a5f05b0d;border-color:#536b3d}.video-thumbnail{aspect-ratio:16/9;color:#a5f05b;background:linear-gradient(135deg,#252e38,#121820);border:1px solid #333d49;border-radius:7px;flex:none;place-items:center;width:88px;display:grid}.video-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.video-info strong{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:11px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.video-info span{color:#87919e;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.video-info small{color:#7f8a98;font-size:9px}.video-info i{color:#596372;padding:0 3px;font-style:normal}.row-play-icon{color:#6f7a88;opacity:0;flex:none}.video-row:hover .row-play-icon,.video-row.active .row-play-icon{opacity:1;color:var(--accent)}.empty-library{text-align:center;color:#718090;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:190px;display:flex}.empty-library svg{color:#64714f}.empty-library strong{color:#cbd2dc;font-size:12px}.empty-library p{margin:0;font-size:10px}.site-footer{text-align:center;color:#606b79;letter-spacing:1.8px;padding:18px 12px 24px;font-size:9px}.site-footer span{color:var(--accent);padding:0 5px}.progress-area{margin-top:12px}.progress-heading{color:#b9c2ce;justify-content:space-between;gap:8px;font-size:10px;display:flex}.progress-heading strong{color:var(--accent)}.progress-track{background:#29313b;border-radius:10px;height:5px;margin-top:8px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:10px;height:100%;transition:width .2s}.progress-area p{color:#7f8997;font-size:9px}.cancel-btn{color:#ff9c9c;background:#241719;border:1px solid #563b3b;border-radius:8px;padding:7px 10px;font-size:10px}.success-message,.error-message{overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:7px;margin-top:9px;padding:9px;font-size:10px;display:flex}.success-message{color:#b8f18e;background:#a5f05b10}.error-message{color:#faa;background:#ff555510}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen,.login-screen{color:#f4f5f7;background:#090b0f;place-items:center;min-height:100vh;display:grid}.login-card{background:#11161d;border:1px solid #29313b;border-radius:18px;flex-direction:column;gap:14px;width:min(390px,100% - 32px);padding:36px;display:flex}.brand-icon{background:var(--accent);color:#11170b;border-radius:15px;place-items:center;width:54px;height:54px;display:grid}.login-card h1{letter-spacing:2px;margin:4px 0 0;font:700 25px Space Grotesk,sans-serif}.login-card p{color:#87919e;margin:0 0 12px;font-size:13px}.login-card label{color:#aab3c0;font-size:11px}.login-card input{color:#fff;background:#0b1016;border:1px solid #303945;border-radius:9px;outline:none;padding:12px}.login-card input:focus{border-color:var(--accent)}.primary-btn{background:var(--accent);color:#11170b;border:0;border-radius:9px;justify-content:center;align-items:center;gap:9px;height:43px;font-weight:700;display:flex}.error{color:#ff9c9c;font-size:12px}@media (width<=900px){.watch-layout{grid-template-columns:minmax(0,1fr) 320px;gap:17px;padding:24px 16px}.library-panel{padding:15px}.video-thumbnail{width:72px}}@media (width<=700px){.topbar{height:62px;padding:0 16px}.watch-layout{flex-direction:column;gap:18px;padding:20px 13px;display:flex}.watch-main,.library-panel{width:100%}.library-panel{min-height:350px;max-height:none}.video-list{max-height:55vh}.player-placeholder{min-height:220px}.now-playing-meta{padding:16px 2px}.main-footnote{font-size:8px}.admin-label{letter-spacing:1px;font-size:8px}}.video-row-wrap{border:1px solid #0000;border-radius:11px;align-items:center;margin-bottom:3px;display:flex;position:relative}.video-row-wrap:hover{background:#171d25}.video-row-wrap.active{background:#a5f05b0d;border-color:#536b3d}.video-row-wrap .video-row{background:0 0;border:0;flex:1;width:auto;min-width:0;padding-right:2px}.video-row-wrap .video-row:hover{background:0 0}.video-row-wrap .video-thumbnail{overflow:hidden}.video-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.video-more-btn{color:#8994a2;opacity:.45;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;width:30px;height:34px;margin:0 5px 0 0;display:grid}.video-row-wrap:hover .video-more-btn,.video-more-btn:focus-visible{opacity:1}.video-more-btn:hover{color:var(--accent);background:#29313b}.video-menu{z-index:8;background:#1a2029;border:1px solid #343e4b;border-radius:10px;width:160px;padding:5px;position:absolute;top:42px;right:8px;box-shadow:0 12px 35px #000a}.video-menu button{color:#dce2e9;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;width:100%;height:35px;padding:0 10px;font-size:11px;display:flex}.video-menu button:hover{background:#29313b}.video-menu button.danger{color:#ff9b9b}.video-menu button.danger:hover{background:#4a2225}.edit-backdrop{z-index:20;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#000b;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.edit-dialog{background:#121720;border:1px solid #303946;border-radius:16px;gap:15px;width:min(480px,100%);padding:23px;display:grid;box-shadow:0 24px 80px #000b}.edit-dialog-head{justify-content:space-between;align-items:center;display:flex}.edit-dialog-head .section-kicker{margin:0 0 4px}.edit-dialog-head h2{margin:0;font:600 22px Space Grotesk,sans-serif}.edit-dialog>label{color:#aeb8c5;gap:7px;font-size:11px;display:grid}.edit-dialog>label input,.edit-dialog>label textarea{color:#f1f4f7;resize:vertical;background:#0b1016;border:1px solid #303a47;border-radius:9px;outline:none;width:100%;padding:11px;font-size:12px}.edit-dialog>label input:focus,.edit-dialog>label textarea:focus{border-color:#829d5e}.thumbnail-edit{background:#0d1219;border:1px solid #29323e;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.thumbnail-edit>div{gap:4px;min-width:0;display:grid}.thumbnail-edit strong{font-size:11px}.thumbnail-edit span{color:#87919e;font-size:9px}.thumbnail-edit button{color:#dce3ea;text-overflow:ellipsis;white-space:nowrap;background:#1a222c;border:1px solid #3a4654;border-radius:8px;flex:none;align-items:center;gap:7px;max-width:170px;padding:8px 10px;font-size:10px;display:flex;overflow:hidden}.edit-actions{justify-content:flex-end;align-items:center;gap:9px;margin-top:2px;display:flex}.edit-actions .upload-submit{width:auto;min-width:135px;margin:0;padding:0 14px}.cancel-edit-btn{color:#c2cad4;background:#1a2029;border:1px solid #394451;border-radius:9px;height:38px;padding:0 14px;font-size:11px}@media (width<=700px){.edit-dialog{padding:18px}.video-more-btn{opacity:1}}
