@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#14121c;--card:#1c1926;--text-primary:#fff;--text-secondary:#d1d5db;--text-muted:#9ca3af;--border-color:#ffffff1a;--btn-blue:#3b82f6;--btn-blue-hover:#2563eb;--btn-green:#22c55e;--btn-green-hover:#16a34a;--btn-red:#ef4444;--btn-gray:#4b5563;--btn-gray-hover:#6b7280;--accent-purple:#a855f7;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem}body{background-color:var(--bg);color:var(--text-primary);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}a{color:var(--btn-blue);text-decoration:none}a:hover{text-decoration:underline}a.btn,a.btn:hover{text-decoration:none}.btn{border-radius:var(--radius-sm);cursor:pointer;color:#3b82f6;background-color:#3b82f626;border:none;justify-content:center;align-items:center;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s,opacity .2s;display:inline-flex}.btn:hover:not(:disabled){background-color:#3b82f640}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#3b82f6;background-color:#3b82f626}.btn-primary:hover:not(:disabled){background-color:#3b82f640}.btn-success{color:#22c55e;background-color:#22c55e26}.btn-success:hover:not(:disabled){background-color:#22c55e40}.btn-danger{color:#f87171;background-color:#f8717126}.btn-danger:hover:not(:disabled){background-color:#f8717140}.btn-secondary{color:#9ca3af;background-color:#9ca3af26}.btn-secondary:hover:not(:disabled){background-color:#9ca3af40}.btn-block{width:100%}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);background-color:#ffffff0d;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:#a855f7;outline:none}.label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.select{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;background-color:#ffffff0d;padding:.75rem 1rem;font-size:1rem}.select:focus{border-color:var(--btn-blue);outline:none}.navbar{border-bottom:1px solid var(--border-color);padding:0 1rem}.navbar-container{justify-content:space-between;align-items:center;max-width:80rem;height:4rem;margin:0 auto;display:flex}.navbar-brand{color:var(--text-primary);font-size:1.25rem;font-weight:700;text-decoration:none}.navbar-brand:hover{text-decoration:none}.navbar-nav{gap:.5rem;display:flex}.nav-link{border-radius:var(--radius-sm);color:var(--text-secondary);border:1px solid #0000;padding:.5rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s}.nav-link:hover{color:var(--text-primary);border:1px solid #ffffff0d;text-decoration:none}.nav-link.active{color:var(--text-primary);background-color:#383153}.navbar-right{align-items:center;gap:1rem;display:flex}.navbar-user{color:var(--text-secondary);font-size:.875rem}.badge{border-radius:9999px;margin-left:.5rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.badge-purple{color:#c084fc;background-color:#a855f733}.badge-gray{color:var(--text-secondary);background-color:#ffffff1a}.btn-logout{color:#f87171;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:1px solid #0000;padding:.5rem 1rem;font-size:.875rem;transition:background-color .2s}.btn-logout:hover{background:#ff49401a;border:1px solid #ffffff0d;text-decoration:none}.page{background-color:var(--bg);min-height:100vh}.container{max-width:80rem;margin:0 auto;padding:2rem 0}.page-header{margin-bottom:2rem}.page-title{color:var(--text-primary);font-size:1.5rem;font-weight:700}.page-subtitle{color:var(--text-muted);margin-top:.25rem}.page-header-row{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.video-grid{grid-template-columns:repeat(1,1fr);gap:1rem;display:grid}@media (min-width:768px){.video-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.video-grid{grid-template-columns:repeat(3,1fr)}}.video-card{background-color:var(--card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;transition:border-color .2s}.video-card:hover{border-color:#fff3}.video-card-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.video-card-meta{color:var(--text-muted);margin-top:.5rem;font-size:.875rem}.video-card-meta p{margin:.25rem 0}.video-card-owner{color:var(--btn-blue)!important}.video-card-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.video-card-actions .btn:first-child{flex:1}.upload-zone{border-radius:var(--radius-xl);text-align:center;cursor:pointer;border:2px dashed #fff3;margin-bottom:2rem;padding:2rem;transition:border-color .2s,background-color .2s}.upload-zone:hover{border-color:var(--btn-blue);background-color:#3b82f60d}.upload-zone.drag-active{border-color:var(--btn-blue);background-color:#3b82f61a}.upload-icon{color:var(--text-muted);margin-bottom:1rem;font-size:2.5rem}.upload-text{color:var(--text-secondary);margin-bottom:.5rem}.upload-hint{color:var(--text-muted);font-size:.875rem}.upload-link{color:var(--btn-blue);cursor:pointer;font-size:inherit;background:0 0;border:none}.upload-link:hover{text-decoration:underline}.progress{background-color:#ffffff1a;border-radius:9999px;width:100%;height:.75rem;margin-bottom:1rem;overflow:hidden}.progress-bar{background-color:var(--btn-blue);border-radius:9999px;height:100%;transition:width .3s}.modal-overlay{z-index:50;background-color:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--border-color);border-radius:var(--radius-xl);background-color:#1a1825;width:100%;max-width:28rem}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-title{color:var(--text-primary);font-size:1.25rem;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.25rem;transition:color .2s}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:1.5rem}.modal-footer{border-top:1px solid var(--border-color);padding:1.5rem}.share-list{flex-direction:column;gap:.5rem;display:flex}.share-item{border-radius:var(--radius-md);background-color:#ffffff0d;justify-content:space-between;align-items:center;padding:.75rem;display:flex}.share-item-name{color:var(--text-secondary);font-weight:500}.table-container{background-color:var(--card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;background-color:#ffffff0d;padding:.75rem 1.5rem;font-size:.75rem;font-weight:500}.table th:last-child{text-align:right}.table td{border-top:1px solid var(--border-color);padding:1rem 1.5rem;font-size:.875rem}.table td:last-child{text-align:right}.table tr:hover{background-color:var(--card)}.table-username{color:var(--text-primary);font-weight:500}.table-date{color:var(--text-muted)}.table-link{color:var(--btn-blue);cursor:pointer;background:0 0;border:none;margin-right:1rem;font-size:.875rem}.table-link:hover{text-decoration:underline}.table-link-danger{color:#f87171;margin-right:0}.login-page{background-color:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background-color:var(--card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:100%;max-width:28rem;padding:2rem}.login-title{text-align:center;color:var(--text-primary);margin-bottom:2rem;font-size:1.875rem;font-weight:700}.login-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;display:flex}.create-form{background-color:var(--card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:2rem;padding:1.5rem}.create-form-title{color:var(--text-primary);margin-bottom:1rem;font-size:1.125rem;font-weight:600}.create-form-grid{grid-template-columns:repeat(1,1fr);gap:1rem;display:grid}@media (min-width:768px){.create-form-grid{grid-template-columns:repeat(3,1fr)}}.create-form-actions{gap:.5rem;margin-top:1rem;display:flex}.alert{border-radius:var(--radius-md);padding:.75rem 1rem;font-size:.875rem}.alert-error{color:#f87171;background-color:#ef444433;border:1px solid #ef44444d}.empty-state{text-align:center;background-color:var(--card);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-muted);padding:3rem}.loading{text-align:center;color:var(--text-muted);padding:3rem}.back-link{color:var(--btn-blue);margin-bottom:.5rem;font-size:.875rem;display:inline-block}.back-link:hover{text-decoration:underline}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:.3s ease-out fadeIn}.animate-fade-in-up{animation:.4s ease-out fadeInUp}.animate-fade-in-down{animation:.4s ease-out fadeInDown}.animate-scale-in{animation:.3s ease-out scaleIn}.animate-spin{animation:1s linear infinite spin}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-delay-1{animation-delay:.1s;animation-fill-mode:backwards}.animate-delay-2{animation-delay:.2s;animation-fill-mode:backwards}.animate-delay-3{animation-delay:.3s;animation-fill-mode:backwards}.animate-delay-4{animation-delay:.4s;animation-fill-mode:backwards}.animate-delay-5{animation-delay:.5s;animation-fill-mode:backwards}.spinner{border:3px solid #ffffff1a;border-top-color:var(--btn-blue);border-radius:50%;width:2.5rem;height:2.5rem;animation:.8s linear infinite spin;display:inline-block}.spinner:only-child{margin:0 auto}.spinner-sm{border-width:2px;width:1.25rem;height:1.25rem}.btn .spinner-sm{border-top-color:currentColor}.skeleton{background:linear-gradient(90deg,var(--card)25%,#ffffff14 50%,var(--card)75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s infinite shimmer}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-title{width:60%;height:1.5rem;margin-bottom:1rem}.skeleton-card{height:8rem;margin-bottom:1rem}.page-content{animation:.3s ease-out fadeIn}.video-grid .video-card{animation:.4s ease-out backwards fadeInUp}.video-grid .video-card:first-child{animation-delay:50ms}.video-grid .video-card:nth-child(2){animation-delay:.1s}.video-grid .video-card:nth-child(3){animation-delay:.15s}.video-grid .video-card:nth-child(4){animation-delay:.2s}.video-grid .video-card:nth-child(5){animation-delay:.25s}.video-grid .video-card:nth-child(6){animation-delay:.3s}.video-grid .video-card:nth-child(7){animation-delay:.35s}.video-grid .video-card:nth-child(8){animation-delay:.4s}.video-grid .video-card:nth-child(9){animation-delay:.45s}.modal-overlay{animation:.2s ease-out fadeIn}.modal{animation:.3s ease-out scaleIn}.loading{animation:.3s ease-out fadeIn}.loading .spinner{margin-bottom:1rem}.progress-bar{transition:width .3s ease-out}.page-transition-enter{opacity:0;transform:translateY(10px)}.page-transition-enter-active{opacity:1;transition:opacity .3s,transform .3s;transform:translateY(0)}.video-player-modal{border:1px solid var(--border-color);border-radius:var(--radius-xl);background-color:#1a1825;width:100%;max-width:56rem;max-height:90vh;animation:.3s ease-out scaleIn;overflow:hidden}.video-player-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.video-player-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-right:1rem;font-size:1rem;font-weight:500;overflow:hidden}.video-player-content{background-color:#000}.video-player-video{width:100%;max-height:calc(90vh - 4rem);display:block}.video-card-thumbnail{aspect-ratio:16/9;border-radius:var(--radius-md);cursor:pointer;background-color:#ffffff0d;width:100%;margin-bottom:.75rem;position:relative;overflow:hidden}.video-card-thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.video-card-thumbnail:hover img{transform:scale(1.05)}.video-card-thumbnail-placeholder{width:100%;height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:2rem;display:flex}.video-card-play-btn{cursor:pointer;color:#fff;background-color:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;font-size:1.25rem;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-card-play-btn:hover{background-color:var(--btn-blue);transform:translate(-50%,-50%)scale(1.1)}.user-grid{grid-template-columns:repeat(1,1fr);gap:1rem;display:grid}@media (min-width:640px){.user-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.user-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.user-grid{grid-template-columns:repeat(4,1fr)}}.user-card{background-color:var(--card);border-radius:var(--radius-lg);padding:1.25rem}.user-card-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.user-card-avatar{background:linear-gradient(135deg,var(--accent-purple),var(--btn-blue));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:1.25rem;font-weight:600;display:flex}.user-card-info{flex:1;min-width:0}.user-card-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.25rem;font-size:1rem;font-weight:600;overflow:hidden}.user-card-info .badge{margin-left:0}.user-card-meta{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);margin-bottom:1rem;padding:.75rem 0}.user-card-date{color:var(--text-muted);font-size:.813rem}.user-card-actions{gap:.5rem;display:flex}.user-card-actions .btn{flex:1}.btn-sm{padding:.5rem .75rem;font-size:.85rem}.modal-footer{justify-content:flex-end;gap:.75rem;display:flex}.modal-footer .btn{min-width:6rem}.form-group+.form-group{margin-top:1rem}
