@charset "UTF-8";.admin-layout{display:flex;margin-top:4vh;min-height:100vh;background-color:#f8f9fa}.admin-sidebar{width:280px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:2px 0 10px #0000001a;position:fixed;height:calc(100vh - 70px);left:0;top:70px;z-index:1000}.admin-sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-sidebar-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#fff}.admin-nav{padding:1rem 0}.admin-nav-list{list-style:none;margin:0;padding:0}.admin-nav-item{margin:.25rem 0}.admin-nav-link{display:flex;align-items:center;padding:1rem 1.5rem;color:#fffc;text-decoration:none;transition:all .3s ease;border-radius:0}.admin-nav-link:hover{background-color:#ffffff1a;color:#fff;transform:translate(4px)}.admin-nav-link.active{background-color:#ffffff26;color:#fff;border-right:4px solid white}.admin-nav-icon{font-size:1.25rem;margin-right:.75rem;width:24px;text-align:center}.admin-nav-label{font-size:1rem;font-weight:500}.admin-main{flex:1;margin-left:280px;background-color:#f8f9fa}.admin-content{padding:2rem;max-width:1200px;margin:0 auto}@media (max-width: 768px){.admin-sidebar{width:100%;height:auto;position:static;top:0}.admin-main{margin-left:0}.admin-nav-link{padding:.75rem 1rem}.admin-content{padding:1rem}}.workspaces-page .page-header{margin-bottom:2rem}.workspaces-page .page-header h1{font-size:2rem;font-weight:600;color:#2d3748;margin:0 0 .5rem}.workspaces-page .page-header .page-description{color:#718096;font-size:1rem;margin:0}.workspaces-page .workspaces-stats{display:flex;gap:1rem;margin-bottom:2rem}.workspaces-page .workspaces-stats .stat-card{background:white;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;min-width:150px}.workspaces-page .workspaces-stats .stat-card .stat-number{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:.25rem}.workspaces-page .workspaces-stats .stat-card .stat-label{color:#718096;font-size:.875rem;font-weight:500}.workspaces-page .workspaces-table-container{background:white;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.workspaces-page .workspaces-table{width:100%;border-collapse:collapse}.workspaces-page .workspaces-table thead{background-color:#f7fafc}.workspaces-page .workspaces-table thead th{padding:1rem;text-align:left;font-weight:600;color:#4a5568;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.workspaces-page .workspaces-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.workspaces-page .workspaces-table tbody tr:hover{background-color:#f7fafc}.workspaces-page .workspaces-table tbody tr:last-child{border-bottom:none}.workspaces-page .workspaces-table tbody td{padding:1rem;color:#2d3748}.workspaces-page .workspaces-table tbody td.workspace-name{font-weight:600;color:#667eea}.workspaces-page .action-buttons{display:flex;gap:.5rem}.workspaces-page .action-buttons .action-button{padding:.375rem .75rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.workspaces-page .action-buttons .action-button.edit{background-color:#667eea;color:#fff}.workspaces-page .action-buttons .action-button.edit:hover{background-color:#5a67d8}.workspaces-page .action-buttons .action-button.delete{background-color:#e53e3e;color:#fff}.workspaces-page .action-buttons .action-button.delete:hover{background-color:#c53030}.workspaces-page .loading-spinner{display:flex;justify-content:center;align-items:center;padding:3rem;color:#718096;font-size:1.125rem}.workspaces-page .error-message{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;padding:1rem;text-align:center}.workspaces-page .error-message p{color:#c53030;margin:0 0 1rem;font-weight:500}.workspaces-page .error-message .retry-button{background-color:#667eea;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.workspaces-page .error-message .retry-button:hover{background-color:#5a67d8}.workspaces-page .empty-state{text-align:center;padding:3rem;color:#718096;font-size:1.125rem;background:white;border-radius:8px;box-shadow:0 1px 3px #0000001a}@media (max-width: 768px){.workspaces-page .workspaces-stats{flex-direction:column}.workspaces-page .workspaces-table-container{overflow-x:auto}.workspaces-page .workspaces-table{min-width:600px}.workspaces-page .action-buttons{flex-direction:column}.workspaces-page .action-buttons .action-button{width:100%}}.users-page .page-header{margin-bottom:2rem}.users-page .page-header .page-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.users-page .page-header h1{font-size:2rem;font-weight:600;color:#2d3748;margin:0 0 .5rem}.users-page .page-header .page-description{color:#718096;font-size:1rem;margin:0}.users-page .page-header .create-user-button{background-color:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.users-page .page-header .create-user-button:hover{background-color:#5a67d8;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.users-page .page-header .create-user-button:active{transform:translateY(0)}.users-page .page-header .create-user-button i{font-size:.875rem}.users-page .users-stats{display:flex;gap:1rem;margin-bottom:2rem}.users-page .users-stats .stat-card{background:white;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;min-width:150px;flex:1}.users-page .users-stats .stat-card .stat-number{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:.25rem}.users-page .users-stats .stat-card .stat-label{color:#718096;font-size:.875rem;font-weight:500}.users-page .users-table-container{background:white;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.users-page .users-table{width:100%;border-collapse:collapse}.users-page .users-table thead{background-color:#f7fafc}.users-page .users-table thead th{padding:1rem;text-align:left;font-weight:600;color:#4a5568;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.users-page .users-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.users-page .users-table tbody tr:hover{background-color:#f7fafc}.users-page .users-table tbody tr:last-child{border-bottom:none}.users-page .users-table tbody td{padding:1rem;color:#2d3748;vertical-align:top}.users-page .users-table tbody td.username{font-weight:600;color:#667eea}.users-page .workspaces-list .no-workspaces{color:#a0aec0;font-style:italic;font-size:.875rem}.users-page .workspaces-list .workspace-item{margin-bottom:.5rem;padding:.5rem;background-color:#f7fafc;border-radius:4px;border-left:3px solid #667eea}.users-page .workspaces-list .workspace-item:last-child{margin-bottom:0}.users-page .workspaces-list .workspace-item .workspace-name{font-weight:600;color:#2d3748;display:block;margin-bottom:.25rem}.users-page .workspaces-list .workspace-item .joined-date{font-size:.75rem;color:#718096}.users-page .action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.users-page .action-buttons .action-button{padding:.375rem .75rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.users-page .action-buttons .action-button.edit{background-color:#667eea;color:#fff}.users-page .action-buttons .action-button.edit:hover{background-color:#5a67d8}.users-page .action-buttons .action-button.assign{background-color:#38a169;color:#fff}.users-page .action-buttons .action-button.assign:hover{background-color:#2f855a}.users-page .action-buttons .action-button.permissions{background-color:#9f7aea;color:#fff}.users-page .action-buttons .action-button.permissions:hover{background-color:#805ad5}.users-page .action-buttons .action-button.activate{background-color:#38a169;color:#fff}.users-page .action-buttons .action-button.activate:hover{background-color:#2f855a}.users-page .action-buttons .action-button.deactivate{background-color:#e53e3e;color:#fff}.users-page .action-buttons .action-button.deactivate:hover{background-color:#c53030}.users-page .action-buttons .action-button.lock{background-color:#ed8936;color:#fff}.users-page .action-buttons .action-button.lock:hover{background-color:#dd6b20}.users-page .action-buttons .action-button.unlock{background-color:#48bb78;color:#fff}.users-page .action-buttons .action-button.unlock:hover{background-color:#38a169}.users-page .status-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.users-page .status-badge.active{background-color:#c6f6d5;color:#22543d}.users-page .status-badge.inactive{background-color:#fed7d7;color:#742a2a}.users-page .status-badge.locked{background-color:#fbb6ce;color:#97266d}.users-page .status-badge.unlocked{background-color:#bee3f8;color:#2c5282}.users-page .inactive-user{opacity:.7;background-color:#f8f8f8}.users-page .loading-spinner{display:flex;justify-content:center;align-items:center;padding:3rem;color:#718096;font-size:1.125rem}.users-page .error-message{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;padding:1rem;text-align:center}.users-page .error-message p{color:#c53030;margin:0 0 1rem;font-weight:500}.users-page .error-message .retry-button{background-color:#667eea;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.users-page .error-message .retry-button:hover{background-color:#5a67d8}.users-page .empty-state{text-align:center;padding:3rem;color:#718096;font-size:1.125rem;background:white;border-radius:8px;box-shadow:0 1px 3px #0000001a}@media (max-width: 1024px){.users-page .users-stats{flex-wrap:wrap}.users-page .action-buttons{flex-direction:column}.users-page .action-buttons .action-button{width:100%}}@media (max-width: 768px){.users-page .page-header .page-header-content{flex-direction:column;align-items:stretch}.users-page .page-header .create-user-button{align-self:flex-start}.users-page .users-stats{flex-direction:column}.users-page .users-table-container{overflow-x:auto}.users-page .users-table{min-width:800px}.users-page .users-table th,.users-page .users-table td{padding:.75rem .5rem;font-size:.875rem}.users-page .workspaces-list .workspace-item{padding:.375rem;margin-bottom:.375rem}.users-page .workspaces-list .workspace-item .workspace-name{font-size:.875rem}.users-page .workspaces-list .workspace-item .joined-date{font-size:.6875rem}}.admin-page{min-height:100vh;background-color:#f8f9fa;padding:2rem 0}.admin-container{max-width:1200px;margin:0 auto;padding:0 2rem}.admin-page h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:2rem;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-section{background:white;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 6px #00000012;border:1px solid #e9ecef}.admin-section h2{color:#2c3e50;font-size:1.75rem;font-weight:600;margin-bottom:1rem;border-bottom:2px solid #667eea;padding-bottom:.5rem}.admin-section p{color:#6c757d;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.admin-action-group{margin-bottom:2rem;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.admin-action-group h3{color:#495057;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.admin-action-group p{color:#6c757d;font-size:.95rem;margin-bottom:1.5rem}.btn{display:inline-block;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;text-align:center;text-decoration:none;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;min-width:120px}.btn-primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 2px 4px #667eea4d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #667eea66}.btn-secondary{background:linear-gradient(135deg,#28a745 0%,#20c997 100%);color:#fff;box-shadow:0 2px 4px #28a7454d}.btn-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #28a74566}.form-input{flex:1;padding:.75rem 1rem;border:2px solid #e9ecef;border-radius:6px;font-size:1rem;transition:all .3s ease}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input::placeholder{color:#adb5bd}.result-message{margin-top:1rem;padding:1rem;border-radius:6px;font-weight:500;white-space:pre-line}.result-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.result-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.admin-section ul{list-style-type:none;padding:0;margin:0}.admin-section li{border-bottom:1px solid #e9ecef;color:#495057;font-size:.95rem;position:relative;padding:.5rem 0 .5rem 1.5rem}.admin-section li:last-child{border-bottom:none}.admin-section li:before{content:"•";color:#667eea;font-weight:700;position:absolute;left:0}@media (max-width: 768px){.admin-container{padding:0 1rem}.admin-page h1{font-size:2rem}.admin-section{padding:1.5rem;margin-bottom:1.5rem}.admin-action-group{padding:1rem}.input-group{flex-direction:column;align-items:stretch}.btn{width:100%;margin-top:.5rem}}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.btn:disabled{animation:pulse 1.5s ease-in-out infinite}.tasks-page{padding:2rem;max-width:1400px;margin:0 auto}.tasks-page .tasks-header{margin-bottom:2rem}.tasks-page .tasks-header h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.tasks-page .tasks-header p{color:var(--text-secondary);font-size:1.1rem;margin:0}.tasks-page .loading{text-align:center;padding:4rem;font-size:1.2rem;color:var(--text-secondary)}.tasks-page .error-message{background:linear-gradient(135deg,#ff6b6b,#ff5252);color:#fff;padding:1rem 1.5rem;border-radius:12px;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #ff6b6b4d}.tasks-page .error-message .error-dismiss{background:rgba(255,255,255,.2);border:none;color:#fff;font-size:1.5rem;width:2rem;height:2rem;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.tasks-page .error-message .error-dismiss:hover{background:rgba(255,255,255,.3)}.tasks-page .tasks-overview{margin-bottom:3rem}.tasks-page .tasks-overview h2{color:var(--text-primary);font-size:1.8rem;margin-bottom:1.5rem;font-weight:600}.tasks-page .tasks-overview .overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1.5rem}.tasks-page .tasks-overview .overview-stats .stat-card{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;text-align:center;box-shadow:0 4px 12px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.tasks-page .tasks-overview .overview-stats .stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.tasks-page .tasks-overview .overview-stats .stat-card .stat-number{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.tasks-page .tasks-overview .overview-stats .stat-card .stat-label{font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.tasks-page .tasks-overview .overview-stats .stat-card.pending{border-left:4px solid #ffa726}.tasks-page .tasks-overview .overview-stats .stat-card.pending .stat-number{color:#ffa726}.tasks-page .tasks-overview .overview-stats .stat-card.processing{border-left:4px solid #42a5f5}.tasks-page .tasks-overview .overview-stats .stat-card.processing .stat-number{color:#42a5f5}.tasks-page .tasks-overview .overview-stats .stat-card.completed{border-left:4px solid #66bb6a}.tasks-page .tasks-overview .overview-stats .stat-card.completed .stat-number{color:#66bb6a}.tasks-page .tasks-overview .overview-stats .stat-card.failed{border-left:4px solid #ef5350}.tasks-page .tasks-overview .overview-stats .stat-card.failed .stat-number{color:#ef5350}.tasks-page .tasks-overview .overview-stats .stat-card.video{border-left:4px solid #ab47bc}.tasks-page .tasks-overview .overview-stats .stat-card.video .stat-number{color:#ab47bc}.tasks-page .tasks-overview .overview-stats .stat-card.image{border-left:4px solid #26c6da}.tasks-page .tasks-overview .overview-stats .stat-card.image .stat-number{color:#26c6da}.tasks-page .tasks-actions{margin-bottom:2rem}.tasks-page .tasks-actions h2{color:var(--text-primary);font-size:1.8rem;margin-bottom:1rem;font-weight:600}.tasks-page .tasks-actions .action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.tasks-page .tasks-actions .action-buttons button{border:none;cursor:pointer;padding:.75rem 1.5rem;border-radius:10px;font-weight:600;transition:all .2s ease}.tasks-page .tasks-actions .action-buttons button.cleanup-button{background:linear-gradient(135deg,#ff7043,#ff5722);color:#fff}.tasks-page .tasks-actions .action-buttons button.cleanup-button:hover:not(:disabled){background:linear-gradient(135deg,#ff5722,#e64a19);transform:translateY(-1px);box-shadow:0 4px 12px #ff704366}.tasks-page .tasks-actions .action-buttons button.cleanup-button:disabled{opacity:.6;cursor:not-allowed}.tasks-page .tasks-actions .action-buttons button.refresh-button{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));color:#fff}.tasks-page .tasks-actions .action-buttons button.refresh-button:hover{background:linear-gradient(135deg,var(--primary-color-dark),var(--primary-color-darker));transform:translateY(-1px);box-shadow:0 4px 12px #42a5f566}.tasks-page .tasks-list .tasks-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.tasks-page .tasks-list .tasks-filters h2{color:var(--text-primary);font-size:1.8rem;margin:0;font-weight:600}.tasks-page .tasks-list .tasks-filters .filters{display:flex;gap:1rem;flex-wrap:wrap}.tasks-page .tasks-list .tasks-filters .filters .filter-group{display:flex;align-items:center;gap:.5rem}.tasks-page .tasks-list .tasks-filters .filters .filter-group label{color:var(--text-secondary);font-weight:600;font-size:.9rem}.tasks-page .tasks-list .tasks-filters .filters .filter-group select{background:var(--background-primary);border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem 1rem;border-radius:8px;min-width:120px}.tasks-page .tasks-list .tasks-table-container{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;box-shadow:0 4px 12px #0000001a}.tasks-page .tasks-list .tasks-table-container .tasks-table{width:100%;border-collapse:collapse}.tasks-page .tasks-list .tasks-table-container .tasks-table thead{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark))}.tasks-page .tasks-list .tasks-table-container .tasks-table thead th{color:#fff;padding:1rem;text-align:left;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--primary-color-darker)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr{transition:background-color .2s ease}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr:nth-child(2n){background:rgba(0,0,0,.02)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr:hover{background:rgba(66,165,245,.05)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr.status-pending{border-left:4px solid #ffa726}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr.status-processing{border-left:4px solid #42a5f5}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr.status-completed{border-left:4px solid #66bb6a}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr.status-failed{border-left:4px solid #ef5350}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td{padding:1rem;border-bottom:1px solid var(--border-color);vertical-align:top}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.task-id{font-family:Courier New,monospace;font-size:.85rem;color:var(--text-secondary)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.file-info .filename{font-weight:600;color:var(--text-primary);margin-bottom:.25rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.file-info .file-id{font-size:.8rem;color:var(--text-secondary)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.task-type .type-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.task-type .type-badge.video{background:rgba(171,71,188,.1);color:#ab47bc}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.task-type .type-badge.image{background:rgba(38,198,218,.1);color:#26c6da}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.status .status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.status .status-badge.status-pending{background:rgba(255,167,38,.1);color:#ffa726}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.status .status-badge.status-processing{background:rgba(66,165,245,.1);color:#42a5f5}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.status .status-badge.status-completed{background:rgba(102,187,106,.1);color:#66bb6a}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.status .status-badge.status-failed{background:rgba(239,83,80,.1);color:#ef5350}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.progress{font-weight:600;color:var(--text-primary)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.created-at,.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.duration{font-size:.9rem;color:var(--text-secondary)}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.error-message{max-width:200px}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.error-message .error-text{color:#ef5350;font-size:.85rem;cursor:help}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.actions .retry-button{border:none;cursor:pointer;background:linear-gradient(135deg,#66bb6a,#4caf50);color:#fff;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;transition:all .2s ease}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.actions .retry-button:hover:not(:disabled){background:linear-gradient(135deg,#4caf50,#388e3c);transform:translateY(-1px);box-shadow:0 2px 8px #66bb6a66}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.actions .retry-button:disabled{opacity:.6;cursor:not-allowed}.tasks-page .tasks-list .tasks-table-container .tasks-table tbody tr td.no-tasks{text-align:center;padding:3rem;color:var(--text-secondary);font-style:italic}@media (max-width: 1200px){.tasks-page .overview-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width: 768px){.tasks-page{padding:1rem}.tasks-page .tasks-header h1{font-size:2rem}.tasks-page .overview-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.tasks-page .overview-stats .stat-card{padding:1rem}.tasks-page .overview-stats .stat-card .stat-number{font-size:2rem}.tasks-page .action-buttons{flex-direction:column}.tasks-page .action-buttons button{width:100%}.tasks-page .tasks-filters{flex-direction:column;align-items:flex-start}.tasks-page .tasks-filters .filters{width:100%;justify-content:space-between}.tasks-page .tasks-table-container{overflow-x:auto}.tasks-page .tasks-table-container .tasks-table{min-width:800px}}@media (max-width: 480px){.tasks-page .overview-stats{grid-template-columns:repeat(2,1fr)}.tasks-page .filters{flex-direction:column;width:100%}.tasks-page .filters .filter-group,.tasks-page .filters .filter-group select{width:100%}}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:rgba(255,255,0,1);box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}:root{--primary-color: #4a6cf7;--primary-hover: #3a5ce4;--secondary-color: #f5f8ff;--text-color: #333;--light-text: #666;--border-color: #e0e0e0;--success-color: #28a745;--error-color: #dc3545}*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body{background-color:#f9f9f9;color:var(--text-color);line-height:1.6;padding:20px}.container{margin:10px auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;position:relative}.header-content{text-align:center;flex-grow:1}.logout-btn{background-color:transparent;color:var(--secondary-color);border:1px solid var(--secondary-color);padding:8px 15px;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin-left:20px}.logout-btn:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 3px 10px #4a6cf733}.logout-btn i{margin-right:5px}h1{color:var(--primary-color);margin-bottom:10px;font-weight:600}p{color:var(--light-text);margin-bottom:20px}.upload-container{display:flex;flex-direction:column;align-items:center}.btn,.upload-link{background-color:var(--primary-color);color:#fff;border:none;padding:12px 25px;border-radius:5px;cursor:pointer;font-size:16px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn:hover,.upload-link:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 5px 15px #4a6cf74d}.btn i,.upload-link i{margin-right:8px}.back-link{display:inline-block;margin-top:10px;color:var(--primary-color);text-decoration:none;font-weight:500;transition:all .3s ease}.back-link:hover{color:var(--primary-hover);transform:translate(-5px)}.back-link i{margin-right:5px}.file-count{color:var(--primary-color);font-weight:600;font-size:.9rem}.search-results{color:var(--success-color);font-weight:500;font-style:italic}.hidden{display:none!important}@media (max-width: 768px){.container{padding:20px;margin:20px auto}}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh;max-width:1200px}.login-card{width:100%;max-width:450px;padding:40px;border-radius:10px;box-shadow:0 10px 30px #0000001a;background-color:#fff;transition:transform .3s ease,box-shadow .3s ease}.login-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000026}.login-header{text-align:center;margin-bottom:30px}.login-header h1{font-size:28px;margin-bottom:10px;color:var(--primary-color)}.login-header p{color:var(--light-text);font-size:16px}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;color:var(--text-color);display:flex;align-items:center;gap:8px}.form-group input[type=text],.form-group input[type=password]{padding:12px 15px;border:1px solid var(--border-color);border-radius:5px;font-size:16px;transition:border-color .3s ease,box-shadow .3s ease}.form-group input[type=text]:focus,.form-group input[type=password]:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf733;outline:none}.remember-me{flex-direction:row;align-items:center;gap:10px}.remember-me input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color)}.login-btn{margin-top:10px;padding:14px;font-size:18px;font-weight:600;width:100%}.error-message,.success-message{display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:5px;font-size:14px;font-weight:500}.error-message{background-color:#dc35451a;color:var(--error-color)}.success-message{background-color:#28a7451a;color:var(--success-color)}.error-message i,.success-message i{font-size:18px}.form-footer{margin-top:20px;text-align:center;font-size:14px;color:var(--light-text)}.form-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .3s ease}.form-link:hover{color:var(--primary-hover);text-decoration:underline}@media (max-width: 768px){.login-card{padding:30px 20px}.login-header h1{font-size:24px}}.upload-area{width:100%;min-height:200px;border:2px dashed var(--border-color);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;margin-bottom:20px;transition:all .3s ease;background-color:var(--secondary-color);position:relative;cursor:pointer}.upload-area.highlight{border-color:var(--primary-color);background-color:#4a6cf70d}.upload-area i{font-size:50px;color:var(--primary-color);margin-bottom:15px}.upload-area h3{margin-bottom:10px;font-weight:500}.upload-area p{text-align:center;margin-bottom:0}.file-input{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer}.btn:disabled{background-color:var(--border-color);cursor:not-allowed;transform:none;box-shadow:none}.file-list{width:100%;margin-top:20px}.file-item{display:flex;border:1px solid var(--border-color);border-radius:5px;margin-bottom:10px;background-color:#fff;transition:all .3s ease}.file-item:hover{box-shadow:0 3px 8px #0000000d}.file-icon{font-size:24px;color:var(--primary-color);margin-right:15px}.file-details{flex:1}.file-name{font-weight:500;margin-bottom:3px;word-break:break-all}.file-size{font-size:12px;color:var(--light-text)}.file-actions{display:flex;align-items:center}.remove-btn{background:none;border:none;color:var(--error-color);cursor:pointer;font-size:18px;transition:all .3s ease}.remove-btn:hover{transform:scale(1.1)}.progress-container{width:100%;height:5px;background-color:var(--border-color);border-radius:5px;margin-top:5px;overflow:hidden}.progress-bar{height:100%;background-color:var(--primary-color);width:0;transition:width .3s ease}.status-message{margin-top:20px;padding:10px;border-radius:5px;text-align:center;display:none}.status-message.success{background-color:#28a7451a;color:var(--success-color);border:1px solid rgba(40,167,69,.2);display:block}.status-message.error{background-color:#dc35451a;color:var(--error-color);border:1px solid rgba(220,53,69,.2);display:block}.image-previews{margin-top:30px;text-align:center;display:flex;flex-wrap:wrap;justify-content:center;gap:15px}.image-preview-item{position:relative;margin-bottom:10px}.image-preview-item img{border-radius:5px;width:140px;object-fit:contain}.image-preview-remove{position:absolute;top:-10px;right:-10px;background-color:var(--error-color);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;box-shadow:0 2px 5px #0003}.label-selection-section{margin:20px 0;padding:20px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--secondary-color)}.label-selection-section h3{margin-bottom:5px;font-size:18px;font-weight:500}.label-selection-section p{margin-bottom:15px;color:var(--light-text);font-size:14px}.selected-labels{margin-bottom:15px;min-height:40px}.label-chips{display:flex;flex-wrap:wrap;gap:8px}.label-chip{display:flex;align-items:center;background-color:#fff;border:1px solid var(--border-color);border-radius:16px;padding:4px 8px;font-size:12px;gap:6px}.label-chip .label-color{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.label-chip .label-name{font-weight:500}.remove-label-btn{background:none;border:none;color:var(--light-text);cursor:pointer;font-size:10px;padding:2px;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.remove-label-btn:hover{background-color:var(--error-color);color:#fff}.no-labels-selected{color:var(--light-text);font-style:italic;margin:0;padding:10px 0}.label-actions{display:flex;gap:10px;flex-wrap:wrap}.label-actions .btn{font-size:14px;padding:8px 16px}.btn-outline{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color)}.btn-outline:hover{background-color:var(--border-color)}.upload-mode-section{margin:20px 0;padding:20px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--secondary-color)}.upload-mode-section h3{margin-bottom:5px;font-size:18px;font-weight:500}.mode-toggle{display:flex;align-items:center;gap:12px;margin-bottom:10px}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}input:checked+.toggle-slider{background-color:var(--primary-color)}input:checked+.toggle-slider:before{transform:translate(26px)}input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.mode-label{font-weight:500;font-size:14px}.mode-description{color:var(--light-text);font-size:12px;margin:0;line-height:1.4}.pdf-previews{margin-top:30px}.pdf-previews h3{margin-bottom:20px;text-align:center;font-size:20px;font-weight:500}.pdf-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;justify-items:center}.pdf-preview-item{position:relative;border-radius:8px;overflow:hidden;background:white;box-shadow:0 2px 8px #0000001a;transition:all .3s ease;width:100%;max-width:320px}.pdf-preview-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.pdf-preview-item.pending{opacity:.8}.pdf-preview-item.uploading .pdf-preview-overlay{background:rgba(74,108,247,.1)}.pdf-preview-item.completed .pdf-preview-overlay .preview-status{background:rgba(40,167,69,.9)}.pdf-preview-item.error{border:2px solid var(--error-color)}.pdf-preview-item.error .pdf-preview-overlay .preview-status{background:rgba(220,53,69,.9)}.pdf-preview-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:transparent;display:flex;align-items:flex-start;justify-content:space-between;padding:10px;opacity:0;transition:opacity .3s ease;pointer-events:none}.pdf-preview-item:hover .pdf-preview-overlay{opacity:1;pointer-events:auto}.pdf-preview-overlay .preview-status{background:rgba(0,0,0,.7);color:#fff;padding:6px 10px;border-radius:16px;font-size:14px;display:flex;align-items:center;gap:6px}.pdf-preview-remove{background:var(--error-color);color:#fff;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;box-shadow:0 2px 5px #0000004d;transition:all .2s ease}.pdf-preview-remove:hover{background:#c82333;transform:scale(1.1)}.pdf-preview-progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:rgba(0,0,0,.1);overflow:hidden}.pdf-preview-progress .progress-bar{height:100%;background:var(--primary-color);transition:width .3s ease}@media (max-width: 768px){.upload-area{min-height:150px;padding:20px}.upload-mode-section,.label-selection-section{padding:15px}.label-actions{flex-direction:column}.label-actions .btn{width:100%}.mode-toggle{flex-direction:column;align-items:flex-start;gap:8px}.pdf-preview-grid{grid-template-columns:1fr;gap:15px}.pdf-preview-item{max-width:100%}}@media (max-width: 480px){.pdf-previews h3{font-size:18px}.pdf-preview-overlay{padding:8px}.pdf-preview-remove{width:28px;height:28px;font-size:12px}}:root{--card-bg: white;--bg-color: #f9f9f9;--hover-bg: #f0f0f0;--input-bg: white}.categorize-container{display:grid;grid-template-columns:300px 1fr;gap:30px;margin-top:20px}.labels-section{background-color:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 2px 10px #0000001a}.labels-section h2{margin-top:0;margin-bottom:15px;color:var(--primary-color);font-size:1.5rem}.labels-list{margin-bottom:30px;max-height:400px;overflow-y:auto}.label-tree{list-style-type:none;padding-left:0;margin:0}.label-tree ul{list-style-type:none;padding-left:20px;margin:0}.label-tree li{margin-bottom:4px}.label-item{display:flex;align-items:center;padding:10px;background-color:var(--bg-color);border-radius:4px;cursor:grab;transition:all .2s ease;position:relative}.label-item.dragging{opacity:.5}.label-item.drop-target{box-shadow:0 0 0 2px var(--primary-color)}.toggle-children{width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-right:5px;color:var(--light-text)}.toggle-children:hover{color:var(--primary-color)}.toggle-children i{transition:transform .2s ease}.root-drop-zone{padding:10px;margin-bottom:15px;border:2px dashed var(--border-color);border-radius:4px;text-align:center;color:var(--light-text);background-color:var(--bg-color);transition:all .2s ease}.root-drop-zone.drop-target{border-color:var(--primary-color);background-color:#4a6cf70d;color:var(--primary-color)}.label-color{width:16px;height:16px;border-radius:50%;margin-right:10px}.label-name{flex-grow:1;font-weight:500}.delete-label-btn{background:none;border:none;color:var(--light-text);cursor:pointer;opacity:.7;transition:all .2s ease}.delete-label-btn:hover{color:var(--error-color);opacity:1}.empty-message{color:var(--light-text);font-style:italic;text-align:center;padding:20px 0}.create-label-form{border-radius:4px;padding:15px}.create-label-form h3{margin-top:0;margin-bottom:15px;font-size:1.2rem}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input[type=text]{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--input-bg);color:var(--text-color)}.form-group input[type=color]{width:100%;height:40px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--input-bg);cursor:pointer}.form-group select{width:80%;max-width:250px;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--input-bg);color:var(--text-color)}.files-section{background-color:var(--card-bg);border-radius:8px;padding:20px;box-shadow:0 2px 10px #0000001a}.files-section h2{margin-top:0;margin-bottom:15px;color:var(--primary-color);font-size:1.5rem}.bulk-controls{margin-bottom:20px;padding:15px;background-color:var(--bg-color);border-radius:8px;border:1px solid var(--border-color)}.selection-controls{display:flex;align-items:center;gap:15px;margin-bottom:10px}.selection-count{font-size:.9rem;color:var(--light-text);font-weight:500}.bulk-actions{display:flex;gap:10px;align-items:center}.bulk-actions .btn{padding:8px 16px;font-size:.9rem}.file-item-container{position:relative;display:flex;flex-direction:column}.file-selection{position:absolute;top:10px;left:10px;z-index:10;background-color:#ffffffe6;border-radius:4px;padding:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.file-selection input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.files-list{display:grid;gap:20px}.file-item{background-color:var(--bg-color);border-radius:4px;transition:all .2s ease;display:flex;flex-direction:column}.file-item:hover{background-color:var(--hover-bg)}.file-item.drag-over{background-color:var(--hover-bg);box-shadow:0 0 0 2px var(--primary-color)}.file-item-hovered .video-icon{opacity:0}.file-preview{background-color:var(--bg-color);display:flex;overflow:hidden;position:relative;margin-bottom:10px;border-radius:4px}.preview-image{width:100%;height:100%;object-fit:cover;position:relative;transition:opacity .2s ease}.video-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;z-index:2;pointer-events:none;transition:opacity .2s ease}.video-icon i{font-size:40px;color:#fffc;text-shadow:0 0 10px rgba(0,0,0,.5)}.file-name{font-weight:500;margin-bottom:10px;word-break:break-word}.file-labels{display:flex;flex-wrap:wrap;gap:5px}.file-label{display:inline-flex;align-items:center;padding:3px 8px;border-radius:12px;font-size:.8rem;color:#fff;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-label-btn{background:none;border:none;color:#ffffffb3;margin-left:5px;cursor:pointer;font-size:.9rem;line-height:1;padding:0 2px}.remove-label-btn:hover{color:#fff}.empty-labels{color:var(--light-text);font-style:italic;font-size:.9rem}.back-button{display:inline-flex;align-items:center;color:var(--primary-color);text-decoration:none;font-weight:500;margin-bottom:20px;transition:all .3s ease;padding:8px 15px;border:1px solid var(--primary-color);border-radius:5px;background-color:transparent}.back-button i{margin-right:8px}.back-button:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 3px 10px #4a6cf733}.primary-btn{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;width:auto;margin-top:10px}.primary-btn:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 3px 10px #4a6cf733}.bulk-label-modal{max-width:600px;width:90vw;max-height:80vh;overflow-y:auto}.bulk-label-modal .modal-body{padding:20px;max-height:400px;overflow-y:auto}.bulk-label-modal .modal-footer{padding:20px;background-color:var(--bg-color);border-top:1px solid var(--border-color)}.bulk-label-modal .bulk-actions{display:flex;gap:10px;justify-content:flex-end}.bulk-label-modal .btn{min-width:120px}.secondary-btn{background-color:var(--bg-color);color:var(--text-color);border:1px solid var(--border-color);padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center}.secondary-btn:hover{background-color:var(--hover-bg);border-color:var(--primary-color)}.secondary-btn:disabled{opacity:.5;cursor:not-allowed}.danger-btn{background-color:var(--error-color);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center}.danger-btn:hover{background-color:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #dc262633}.danger-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.categorize-container{grid-template-columns:1fr}.labels-section{margin-bottom:20px}.bulk-controls{padding:10px}.selection-controls{flex-direction:column;align-items:flex-start;gap:10px}.bulk-actions{flex-direction:column;width:100%}.bulk-actions .btn{width:100%;justify-content:center}.bulk-label-modal{width:95vw;max-height:90vh}.bulk-label-modal .bulk-actions{flex-direction:column}.files-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}}.labels-grid{margin-top:30px}.labels-grid .label{padding:9px 24px;border-radius:12px;cursor:pointer}.labels-grid .label:hover{opacity:.6}.labels-grid .label .label-name{margin-left:5px}.top-navigation{position:fixed;top:0;left:0;right:0;z-index:1100;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 2px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.top-nav-container{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 1.5rem;height:70px}.top-nav-brand .brand-link{display:flex;align-items:center;text-decoration:none;color:#fff;font-weight:700;font-size:1.25rem;transition:all .3s ease}.top-nav-brand .brand-link:hover{transform:scale(1.05)}.top-nav-brand .brand-link .brand-icon{font-size:1.5rem;margin-right:.5rem}.top-nav-brand .brand-link .brand-text{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.top-nav-menu{display:flex;align-items:center}.top-nav-menu .nav-list{display:flex;list-style:none;margin:0;padding:0;gap:.5rem}.top-nav-menu .nav-item{position:relative}.top-nav-menu .nav-link{display:flex;align-items:center;padding:.75rem 1rem;color:#ffffffe6;text-decoration:none;border-radius:8px;transition:all .3s ease;font-weight:500;font-size:.95rem}.top-nav-menu .nav-link:hover{background-color:#ffffff26;color:#fff;transform:translateY(-2px)}.top-nav-menu .nav-link.active{background-color:#fff3;color:#fff;box-shadow:0 4px 12px #00000026}.top-nav-menu .nav-link.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:20px;height:3px;background-color:#fff;border-radius:2px}.top-nav-menu .nav-link.admin-link{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a24 100%);color:#fff;margin-left:.5rem}.top-nav-menu .nav-link.admin-link:hover{background:linear-gradient(135deg,#ff5252 0%,#d63031 100%);transform:translateY(-2px)}.top-nav-menu .nav-link.admin-link.active{background:linear-gradient(135deg,#ff3838 0%,#c0392b 100%)}.top-nav-menu .nav-link .nav-icon{font-size:1.1rem;margin-right:.5rem}.top-nav-menu .nav-link .nav-label{white-space:nowrap}.top-nav-actions{display:flex;align-items:center}.top-nav-actions .action-link{display:flex;align-items:center;padding:.75rem 1rem;color:#ffffffe6;text-decoration:none;border-radius:8px;border:2px solid rgba(255,255,255,.3);transition:all .3s ease;font-weight:500}.top-nav-actions .action-link:hover{background-color:#fff;color:#667eea;border-color:#fff;transform:translateY(-2px)}.top-nav-actions .action-link .action-icon{font-size:1.1rem;margin-right:.5rem}.top-nav-actions .action-link .action-label{white-space:nowrap}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .3s ease}.mobile-menu-toggle:hover{background-color:#ffffff1a}.mobile-menu-toggle .hamburger{display:flex;flex-direction:column;width:24px;height:18px;position:relative}.mobile-menu-toggle .hamburger span{display:block;height:2px;width:100%;background-color:#fff;border-radius:1px;transition:all .3s ease}.mobile-menu-toggle .hamburger span:nth-child(1){transform-origin:top left}.mobile-menu-toggle .hamburger span:nth-child(2){margin:6px 0}.mobile-menu-toggle .hamburger span:nth-child(3){transform-origin:bottom left}.mobile-menu-toggle .hamburger.open span:nth-child(1){transform:rotate(45deg) translate(2px,-2px)}.mobile-menu-toggle .hamburger.open span:nth-child(2){opacity:0;transform:translate(-20px)}.mobile-menu-toggle .hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(2px,2px)}body{padding-top:70px}@media (max-width: 768px){.top-nav-container{padding:0 1rem}.top-nav-menu{position:absolute;top:100%;left:0;right:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 20px #00000026;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease}.top-nav-menu.mobile-open{transform:translateY(0);opacity:1;visibility:visible}.top-nav-menu .nav-list{flex-direction:column;padding:1rem;gap:.5rem}.top-nav-menu .nav-link{justify-content:flex-start;padding:1rem;border-radius:8px}.top-nav-menu .nav-link .nav-icon{margin-right:.75rem}.top-nav-actions .action-label{display:none}.top-nav-actions .action-link{padding:.75rem}.mobile-menu-toggle{display:block}}@media (max-width: 480px){.top-nav-container{height:60px}body{padding-top:60px}.top-nav-brand .brand-text{display:none}}.viewer-container{margin:0 auto;padding:20px}.viewer-container header{position:relative}.viewer-container .header-content{text-align:center;margin-bottom:30px}.viewer-container .header-content h1{color:#333;margin-bottom:10px}.viewer-container .header-content p{color:#666;font-size:1.1em}.viewer-container .header-content .header-actions{position:absolute;top:0;right:0;display:flex;gap:10px}.viewer-container .header-content .keyboard-help-btn,.viewer-container .header-content .delete-btn{background:none;border:1px solid #ddd;border-radius:4px;padding:8px 12px;color:#666;cursor:pointer;transition:all .3s ease}.viewer-container .header-content .keyboard-help-btn:hover,.viewer-container .header-content .delete-btn:hover{background-color:#f8f9fa;border-color:#007bff;color:#007bff}.viewer-container .header-content .keyboard-help-btn:disabled,.viewer-container .header-content .delete-btn:disabled{opacity:.6;cursor:not-allowed}.viewer-container .header-content .keyboard-help-btn:disabled:hover,.viewer-container .header-content .delete-btn:disabled:hover{background-color:transparent;border-color:#ddd;color:#666}.viewer-container .header-content .keyboard-help-btn i,.viewer-container .header-content .delete-btn i{font-size:1.1em}.viewer-container .header-content .delete-btn:hover:not(:disabled){border-color:#dc3545;color:#dc3545;background-color:#fff5f5}.viewer-container .keyboard-help{margin-bottom:20px;padding:15px 20px;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;text-align:left}.viewer-container .keyboard-help h4{margin:0 0 10px;color:#333;font-size:1.1em}.viewer-container .keyboard-help .shortcuts-list{display:flex;flex-wrap:wrap;gap:15px}.viewer-container .keyboard-help .shortcuts-list .shortcut{display:flex;align-items:center;gap:8px}.viewer-container .keyboard-help .shortcuts-list .shortcut kbd{background-color:#fff;border:1px solid #ccc;border-radius:4px;padding:4px 8px;font-family:monospace;font-size:.9em;color:#333;box-shadow:0 1px 2px #0000001a}.viewer-container .keyboard-help .shortcuts-list .shortcut span{color:#666;font-size:.9em}.viewer-container .delete-confirmation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.viewer-container .delete-confirmation-dialog{background:white;border-radius:8px;padding:24px;max-width:500px;width:90%;box-shadow:0 10px 25px #0003}.viewer-container .delete-confirmation-dialog h3{color:#333;margin:0 0 16px;font-size:1.2em}.viewer-container .delete-confirmation-dialog p{margin:8px 0;color:#666;line-height:1.4}.viewer-container .delete-confirmation-dialog p strong{color:#333;font-weight:600}.viewer-container .delete-confirmation-dialog .warning-text{color:#dc3545;font-size:.9em;margin-top:16px}.viewer-container .delete-confirmation-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.viewer-container .delete-confirmation-dialog .dialog-actions button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:.9em;transition:all .3s ease}.viewer-container .delete-confirmation-dialog .dialog-actions button:disabled{opacity:.6;cursor:not-allowed}.viewer-container .delete-confirmation-dialog .dialog-actions button i{margin-right:6px}.viewer-container .delete-confirmation-dialog .dialog-actions .cancel-btn{background-color:#6c757d;color:#fff}.viewer-container .delete-confirmation-dialog .dialog-actions .cancel-btn:hover:not(:disabled){background-color:#5a6268}.viewer-container .delete-confirmation-dialog .dialog-actions .confirm-delete-btn{background-color:#dc3545;color:#fff}.viewer-container .delete-confirmation-dialog .dialog-actions .confirm-delete-btn:hover:not(:disabled){background-color:#c82333}.viewer-container .media-container{margin-bottom:40px;text-align:center;position:relative}.viewer-container .media-container .loading{padding:40px;color:#666}.viewer-container .media-container .loading i{font-size:2em;margin-bottom:10px;animation:spin 1s linear infinite}.viewer-container .media-container .error-message{padding:20px;background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px;margin:20px 0}.viewer-container .media-container .error-message i{margin-right:10px}.viewer-container .media-container .media-content{max-width:100%;max-height:90vh;border-radius:8px;box-shadow:0 4px 8px #0000001a;transition:all .4s cubic-bezier(.4,0,.2,1);will-change:transform,opacity,width,height;object-fit:contain;display:block}.viewer-container .media-container .video-container{position:relative;margin-bottom:20px;transition:all .4s cubic-bezier(.4,0,.2,1)}.viewer-container .media-container .video-container .video-player{width:100%;max-height:90vh;border-radius:8px;transition:all .4s cubic-bezier(.4,0,.2,1);object-fit:contain;display:block}.viewer-container .media-container .download-link{display:inline-block;padding:10px 20px;background-color:#007bff;color:#fff;text-decoration:none;border-radius:4px;transition:background-color .3s}.viewer-container .media-container .download-link:hover{background-color:#0056b3;text-decoration:none;color:#fff}.viewer-container .media-container .download-link i{margin-right:8px}.viewer-container .media-container .file-icon{font-size:4em;color:#666;margin-bottom:20px}.viewer-container .media-container .nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background-color:#0009;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:50%;width:50px;height:50px;font-size:1.2em;cursor:pointer;transition:all .3s ease;z-index:10;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 4px 12px #0000004d}.viewer-container .media-container .nav-arrow:hover:not(:disabled){background-color:#000c;border-color:#fff9;transform:translateY(-50%) scale(1.1);box-shadow:0 6px 20px #0006}.viewer-container .media-container .nav-arrow:active:not(:disabled){transform:translateY(-50%) scale(1.05)}.viewer-container .media-container .nav-arrow:disabled{opacity:.4;cursor:not-allowed;transform:translateY(-50%)}.viewer-container .media-container .nav-arrow:focus{outline:2px solid #007bff;outline-offset:2px}.viewer-container .media-container .nav-arrow.nav-arrow-left{left:20px}.viewer-container .media-container .nav-arrow.nav-arrow-right{right:20px}.viewer-container .media-container .nav-arrow i{font-size:1em;transition:transform .2s ease}.viewer-container .media-container .nav-arrow:hover:not(:disabled) i{transform:translate(2px)}.viewer-container .media-container .nav-arrow.nav-arrow-left:hover:not(:disabled) i{transform:translate(-2px)}.viewer-container .tags-section{margin-bottom:40px;padding:20px;background-color:#f8f9fa;border-radius:8px}.viewer-container .tags-section h3{margin-bottom:15px;color:#333;font-size:1.3em}.viewer-container .tags-section .tags-list{display:flex;flex-wrap:wrap;gap:8px}.viewer-container .tags-section .tags-list .tag{text-decoration:none;display:inline-block;padding:6px 12px;border-radius:16px;color:#fff;font-size:.9em;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.2);box-shadow:0 2px 4px #0000001a;transition:transform .2s}.viewer-container .tags-section .tags-list .tag:hover{transform:translateY(-1px)}.viewer-container .tags-section .no-tags{color:#666;font-style:italic;margin:0}.viewer-container .related-videos-section{margin-bottom:40px}.viewer-container .related-videos-section h3{margin-bottom:20px;color:#333;font-size:1.3em}.viewer-container .related-videos-section.deepest-level{border-left:3px solid #4caf50;padding-left:20px;margin-left:0}.viewer-container .related-videos-section.deepest-level h3{color:#2c5530;position:relative}.viewer-container .related-videos-section.deepest-level h3:before{content:"🎯";margin-right:8px}.viewer-container .related-videos-section.top-level{border-left:3px solid #2196f3;padding-left:20px;margin-left:0}.viewer-container .related-videos-section.top-level h3{color:#1e3a5f;position:relative}.viewer-container .related-videos-section.top-level h3:before{content:"🌐";margin-right:8px}.viewer-container .related-videos-section .related-videos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.viewer-container .related-videos-section .related-videos-grid .related-video-item .related-video-link{display:block;text-decoration:none;color:inherit;transition:transform .2s}.viewer-container .related-videos-section .related-videos-grid .related-video-item .related-video-link:hover{transform:translateY(-2px);text-decoration:none;color:inherit}.viewer-container .related-images-section{margin-bottom:40px}.viewer-container .related-images-section h3{margin-bottom:20px;color:#333;font-size:1.3em}.viewer-container .related-images-section .related-images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.viewer-container .related-images-section .related-images-grid .related-image-item .related-image-link{display:block;text-decoration:none;color:inherit;transition:transform .2s}.viewer-container .related-images-section .related-images-grid .related-image-item .related-image-link:hover{transform:translateY(-2px);text-decoration:none;color:inherit}@media (max-width: 768px){.viewer-container{padding:15px}.viewer-container .header-content .keyboard-help-btn{top:10px;right:10px;padding:6px 10px;font-size:.9em}}@media (max-width: 768px) and (orientation: landscape){.viewer-container .media-container .media-content,.viewer-container .media-container .video-container .video-player{max-height:85vh;max-width:95vw}}@media (max-width: 768px){.viewer-container .keyboard-help{padding:12px 15px;margin-bottom:15px}.viewer-container .keyboard-help .shortcuts-list{gap:10px}.viewer-container .keyboard-help .shortcuts-list .shortcut{gap:6px}.viewer-container .keyboard-help .shortcuts-list .shortcut kbd{padding:3px 6px;font-size:.8em}.viewer-container .keyboard-help .shortcuts-list .shortcut span{font-size:.8em}.viewer-container .media-container .media-content,.viewer-container .media-container .video-container .video-player{max-height:90vh}.viewer-container .media-container .nav-arrow{width:40px;height:40px;font-size:1em}.viewer-container .media-container .nav-arrow.nav-arrow-left{left:10px}.viewer-container .media-container .nav-arrow.nav-arrow-right{right:10px}.viewer-container .tags-section{padding:15px}.viewer-container .tags-section .tags-list{gap:6px}.viewer-container .tags-section .tags-list .tag{padding:4px 8px;font-size:.8em}.viewer-container .related-videos-section .related-videos-grid,.viewer-container .related-images-section .related-images-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}}@media (max-width: 480px){.viewer-container{padding:10px}.viewer-container .header-content{margin-bottom:20px}.viewer-container .header-content h1{font-size:1.5em}.viewer-container .header-content .keyboard-help-btn{top:5px;right:5px;padding:4px 8px;font-size:.8em}.viewer-container .keyboard-help{padding:10px 12px;margin-bottom:10px}.viewer-container .keyboard-help h4{font-size:1em}.viewer-container .keyboard-help .shortcuts-list{gap:8px;flex-direction:column}.viewer-container .keyboard-help .shortcuts-list .shortcut{gap:5px}.viewer-container .keyboard-help .shortcuts-list .shortcut kbd{padding:2px 5px;font-size:.7em}.viewer-container .keyboard-help .shortcuts-list .shortcut span{font-size:.7em}.viewer-container .media-container .media-content,.viewer-container .media-container .video-container .video-player{max-height:85vh}.viewer-container .media-container .nav-arrow{width:35px;height:35px;font-size:.9em}.viewer-container .media-container .nav-arrow.nav-arrow-left{left:5px}.viewer-container .media-container .nav-arrow.nav-arrow-right{right:5px}.viewer-container .related-videos-section .related-videos-grid,.viewer-container .related-images-section .related-images-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}}.viewer-container .subtitle-controls{background:var(--card-background);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-top:1rem}.viewer-container .subtitle-controls .subtitle-selector{display:flex;align-items:center;gap:.75rem}.viewer-container .subtitle-controls .subtitle-selector label{font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;flex-shrink:0}.viewer-container .subtitle-controls .subtitle-selector label i{color:var(--primary-color)}.viewer-container .subtitle-controls .subtitle-selector select{flex:1;max-width:300px;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--input-background);color:var(--text-primary);font-size:.9rem;transition:border-color .2s ease}.viewer-container .subtitle-controls .subtitle-selector select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-background)}@media (max-width: 768px){.viewer-container .subtitle-controls .subtitle-selector{flex-direction:column;align-items:flex-start;gap:.5rem}.viewer-container .subtitle-controls .subtitle-selector select{max-width:100%;width:100%}}.viewer-container video::cue{background-color:#000c;color:red;font-size:1.2em;font-family:Arial,sans-serif;font-weight:400;text-shadow:1px 1px 1px rgba(0,0,0,.8);padding:.2em .4em;border-radius:2px;line-height:1.3;white-space:pre-line}.viewer-container video::cue(.large){font-size:1.4em}.viewer-container video::cue(.small){font-size:1em}.viewer-container .video-container{position:relative}.viewer-container .video-container video{width:100%;height:auto;background:#000}.viewer-container .video-container video::-webkit-media-text-track-container{position:relative;z-index:10}.viewer-container .video-container video::-webkit-media-text-track-display{position:absolute;bottom:5%;left:50%;transform:translate(-50%);max-width:90%;text-align:center;z-index:10}@media (prefers-color-scheme: dark){.viewer-container video::cue{background-color:#000000e6;color:red;text-shadow:1px 1px 2px rgb(0,0,0)}}@media (max-width: 768px){.viewer-container video::cue{font-size:1em;padding:.1em .3em}}.breadcrumb-nav{margin-bottom:1rem;padding:.75rem 0;border-bottom:1px solid #e9ecef}.breadcrumb-list{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;gap:.5rem}.breadcrumb-item{display:flex;align-items:center;gap:.5rem}.breadcrumb-link{background:none;border:none;padding:.25rem .5rem;border-radius:.25rem;font-size:.9rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease}.breadcrumb-link:hover{background-color:#007bff1a;text-decoration:underline}.breadcrumb-link:focus{outline:2px solid #007bff;outline-offset:2px}.breadcrumb-separator{color:#6c757d;font-size:.75rem;margin:0 .25rem}.breadcrumb-current .breadcrumb-current-label{font-size:.9rem;font-weight:600;padding:.25rem .5rem}@media (max-width: 768px){.breadcrumb-nav{padding:.5rem 0}.breadcrumb-list{gap:.25rem}.breadcrumb-link,.breadcrumb-current-label{font-size:.8rem;padding:.2rem .4rem}.breadcrumb-separator{font-size:.7rem;margin:0 .1rem}}@media (prefers-color-scheme: dark){.breadcrumb-nav{border-bottom-color:#495057}.breadcrumb-separator{color:#adb5bd}.breadcrumb-link:hover{background-color:#ffffff1a}}.label-tree-navigation{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;height:fit-content;max-height:calc(100vh - 120px);overflow:hidden;display:flex;flex-direction:column}.nav-header{padding:15px 20px;border-bottom:1px solid var(--border-color);background-color:var(--bg-color);display:flex;justify-content:space-between;align-items:center}.nav-header h3{margin:0;color:var(--primary-color);font-size:1.1rem;font-weight:600}.nav-controls{display:flex;gap:5px;flex-wrap:wrap}.nav-control-btn{background:none;border:none;color:var(--light-text);cursor:pointer;padding:4px 6px;border-radius:3px;transition:all .2s ease;font-size:.9rem;text-decoration:none;display:flex;align-items:center;justify-content:center}.nav-control-btn:hover{color:var(--primary-color);background-color:var(--hover-bg)}.nav-control-btn.create-btn:hover{color:#28a745;background-color:#28a7451a}.nav-control-btn.manage-btn:hover{color:var(--primary-color);background-color:#4a6cf71a}.nav-content{padding:10px;flex:1;overflow-y:auto}.nav-loading,.nav-error{display:flex;align-items:center;justify-content:center;padding:30px 20px;text-align:center;color:var(--light-text)}.nav-loading i,.nav-error i{margin-right:8px;font-size:1.1rem}.nav-error{color:var(--error-color)}.nav-loading i{animation:spin 1s linear infinite}.nav-label-tree{list-style-type:none;padding-left:0;margin:10px 0 0}.nav-label-tree ul.nav-label-children{list-style-type:none;padding-left:20px;margin:0}.nav-label-tree li{margin-bottom:2px}.nav-label-item{display:flex;align-items:center;padding:8px 10px;border-radius:6px;transition:all .2s ease;cursor:pointer;position:relative}.nav-label-item:hover{background-color:var(--hover-bg)}.nav-label-item.current{background-color:#4a6cf71a;border-left:3px solid var(--primary-color);font-weight:600}.nav-label-item.current .nav-label-name{color:var(--primary-color)}.nav-label-item.mature{border-left:3px solid #ff6b6b;background-color:#ff6b6b0d}.nav-label-item.mature .nav-label-name{color:#d63031}.root-item{margin-bottom:10px;border-bottom:1px solid var(--border-color);padding-bottom:10px}.root-item .nav-label-name{font-weight:500}.root-item .nav-label-icon{color:var(--primary-color)}.toggle-children{width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-right:5px;color:var(--light-text);border-radius:3px;transition:all .2s ease}.toggle-children:hover{color:var(--primary-color);background-color:var(--hover-bg)}.toggle-children i{transition:transform .2s ease;font-size:.8rem}.toggle-children.collapsed i{transform:rotate(-90deg)}.toggle-spacer{width:20px;height:20px;margin-right:5px;flex-shrink:0}.nav-label-color{width:8px;height:8px;border-radius:50%;margin-right:6px;flex-shrink:0;border:1px solid rgba(0,0,0,.1)}.nav-label-icon{width:16px;height:16px;margin-right:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--light-text);font-size:.9rem}.nav-label-name{flex-grow:1;font-size:.9rem;color:var(--text-color);cursor:pointer;transition:color .2s ease;word-break:break-word;line-height:1.3}.nav-label-name:hover{color:var(--primary-color)}.nav-label-mature-indicator{margin-left:5px;margin-right:5px;color:#ff6b6b;font-size:.8rem;flex-shrink:0}.nav-label-actions{display:flex;gap:2px;margin-left:5px;opacity:.6;transition:opacity .2s ease}.nav-label-action-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--light-text);border-radius:3px;transition:all .2s ease;flex-shrink:0;font-size:.8rem}.nav-label-mature-toggle:hover{color:#ff6b6b;background-color:#ff6b6b1a}.nav-label-mature-toggle.active{color:#ff6b6b;background-color:#ff6b6b26}.nav-label-mature-toggle.active:hover{background-color:#ff6b6b40}.nav-label-edit:hover{color:var(--primary-color);background-color:#4a6cf71a}.nav-label-add-child:hover{color:#28a745;background-color:#28a7451a}.nav-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px;text-align:center;color:var(--light-text)}.nav-empty i{font-size:2rem;margin-bottom:10px;opacity:.5}.nav-empty span{font-size:.9rem;opacity:.8;margin-bottom:15px}.create-first-label-btn{margin-top:10px;padding:8px 16px;font-size:.85rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.create-first-label-btn:hover{background-color:#5a78d4;transform:translateY(-1px);box-shadow:0 2px 8px #4a6cf74d}.nav-content::-webkit-scrollbar{width:6px}.nav-content::-webkit-scrollbar-track{background:var(--bg-color);border-radius:3px}.nav-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.nav-content::-webkit-scrollbar-thumb:hover{background:var(--light-text)}@media (max-width: 768px){.label-tree-navigation{max-height:none;margin-bottom:20px}.nav-header{padding:12px 15px;flex-direction:column;align-items:flex-start;gap:10px}.nav-controls{align-self:flex-end}.nav-content{padding:8px}.nav-label-item{padding:6px 8px}.nav-label-name{font-size:.85rem}.toggle-children,.toggle-spacer{width:18px;height:18px}.nav-label-actions{gap:1px}.nav-label-action-btn{width:18px;height:18px;font-size:.75rem}.nav-controls{gap:3px}.nav-control-btn{padding:3px 5px;font-size:.8rem}}.label-context-menu{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 20px #00000026;padding:6px 0;min-width:180px;z-index:1000;animation:contextMenuAppear .15s ease-out}@keyframes contextMenuAppear{0%{opacity:0;transform:scale(.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.context-menu-item{width:100%;padding:10px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;color:var(--text-color);display:flex;align-items:center;gap:10px;transition:all .15s ease}.context-menu-item:hover{background-color:var(--hover-bg);color:var(--primary-color)}.context-menu-item i{width:16px;font-size:.85rem;color:var(--light-text)}.context-menu-item:hover i{color:var(--primary-color)}.context-menu-item.mature-toggle-item:hover,.context-menu-item.mature-toggle-item:hover i{color:#ff6b6b}.context-menu-item.delete-item:hover{background-color:#dc35451a;color:var(--error-color)}.context-menu-item.delete-item:hover i{color:var(--error-color)}.context-menu-divider{height:1px;background-color:var(--border-color);margin:6px 0}.nav-label-actions{opacity:.5;transition:opacity .2s ease}.nav-label-item:hover .nav-label-actions{opacity:1}.nav-label-item{position:relative}.nav-label-item:after{content:"Right-click for more options";position:absolute;top:100%;left:50%;transform:translate(-50%);background-color:#000c;color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:100;margin-top:5px}.nav-label-item:hover:after{opacity:1}@media (max-width: 768px){.nav-label-item:after{display:none}.label-context-menu{min-width:160px;font-size:.85rem}.context-menu-item{padding:8px 12px}}.quick-label-edit{position:absolute;top:100%;left:0;right:0;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 20px #00000026;padding:12px;z-index:999;margin-top:4px;animation:quickEditAppear .2s ease-out}@keyframes quickEditAppear{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.quick-edit-form{display:flex;flex-direction:column;gap:8px}.quick-edit-row{display:flex;gap:8px;align-items:center}.quick-edit-input{flex:1;padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;font-size:.85rem;background-color:var(--bg-color);color:var(--text-color);transition:all .2s ease}.quick-edit-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4a6cf71a}.quick-edit-controls{display:flex;gap:8px;align-items:center;justify-content:space-between}.quick-edit-color-group{display:flex;gap:6px;align-items:center}.quick-edit-color-picker{width:24px;height:24px;border:1px solid var(--border-color);border-radius:3px;background:none;cursor:pointer;padding:0}.quick-edit-color-preview{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.quick-edit-mature-toggle{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-color);cursor:pointer}.quick-edit-mature-toggle input[type=checkbox]{width:auto;margin:0}.mature-checkbox-text{font-size:.8rem;color:var(--light-text)}.quick-edit-actions{display:flex;gap:4px}.quick-save-btn,.quick-cancel-btn{width:24px;height:24px;border:none;border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all .2s ease}.quick-save-btn{background-color:var(--primary-color);color:#fff}.quick-save-btn:hover:not(:disabled){background-color:#5a78d4}.quick-save-btn:disabled{opacity:.6;cursor:not-allowed}.quick-cancel-btn{background-color:var(--secondary-color);color:var(--light-text);border:1px solid var(--border-color)}.quick-cancel-btn:hover{background-color:var(--hover-bg);color:var(--text-color)}.quick-edit-preview{display:flex;align-items:center;gap:6px;padding:6px 8px;background-color:var(--bg-color);border-radius:4px;margin-top:8px;border-left:3px solid transparent;transition:all .2s ease}.quick-edit-preview.mature{border-left-color:#ff6b6b;background-color:#ff6b6b0d}.preview-color-dot{width:8px;height:8px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.preview-name{flex:1;font-size:.8rem;font-weight:500;color:var(--text-color)}.quick-edit-preview.mature .preview-name{color:#d63031}.preview-mature-indicator{color:#ff6b6b;font-size:.7rem}@media (max-width: 768px){.quick-label-edit{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);right:auto;width:90%;max-width:300px}.quick-edit-controls{flex-direction:column;gap:10px;align-items:stretch}.quick-edit-actions{justify-content:center}.quick-save-btn,.quick-cancel-btn{width:32px;height:32px}}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:white;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:90vw;max-height:90vh;display:flex;flex-direction:column}.modal-content.label-selection-modal{width:500px;max-height:600px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:1.5rem;color:#333}.modal-close-btn{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:5px;border-radius:4px;transition:background-color .2s}.modal-close-btn:hover{background-color:#f0f0f0;color:#333}.modal-body{flex:1;padding:20px;overflow-y:auto}.modal-body .empty-message{text-align:center;color:#666;font-style:italic;margin:20px 0}.modal-body .error-message{color:#e74c3c;text-align:center;margin:20px 0}.modal-footer{padding:20px;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;gap:10px}.selectable-label-tree{list-style:none;padding:0;margin:0}.selectable-label-tree ul{list-style:none;padding-left:20px;margin:0}.selectable-label-tree li{margin:0}.selectable-label-item{display:flex;align-items:center;padding:8px 12px;margin:2px 0;border-radius:6px;cursor:pointer;transition:background-color .2s}.selectable-label-item:hover{background-color:#f8f9fa}.selectable-label-item.selected{background-color:#e3f2fd;border:1px solid #2196f3}.selectable-label-item .toggle-children{width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:3px;transition:transform .2s,background-color .2s}.selectable-label-item .toggle-children:hover{background-color:#e0e0e0}.selectable-label-item .toggle-children.collapsed{transform:rotate(-90deg)}.selectable-label-item .toggle-children i{font-size:12px;color:#666}.selectable-label-item .label-color{width:16px;height:16px;border-radius:50%;margin:0 8px;border:1px solid rgba(0,0,0,.1);flex-shrink:0}.selectable-label-item .label-name{flex:1;font-size:14px;color:#333;-webkit-user-select:none;user-select:none}.selectable-label-item .label-name:hover{color:#2196f3}.selectable-label-item .selected-indicator{color:#2196f3;font-size:14px;margin-left:8px;flex-shrink:0}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s,transform .1s}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary-btn{background-color:#2196f3;color:#fff}.btn.primary-btn:hover{background-color:#1976d2}.btn.secondary-btn{background-color:#f5f5f5;color:#333;border:1px solid #ddd}.btn.secondary-btn:hover{background-color:#e0e0e0}.labels-management-layout{max-width:1200px;margin:0 auto;padding:20px;display:flex;flex-direction:column;gap:30px}.labels-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px;display:flex;align-items:center;gap:15px;transition:transform .2s ease}.stat-card:hover{transform:translateY(-2px)}.stat-card i{font-size:2rem;color:var(--primary-color);width:40px;text-align:center}.stat-info{display:flex;flex-direction:column}.stat-number{font-size:1.8rem;font-weight:600;color:var(--text-color);line-height:1}.mature-indicator{color:#ff6b6b;margin-left:8px;animation:matureWarning 2s ease-in-out infinite}.mature-indicator i{font-size:.9rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}@keyframes matureWarning{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.mature-toggle{background:none;border:1px solid #dee2e6;color:#6c757d;padding:4px 8px;border-radius:4px;cursor:pointer;transition:all .2s ease;margin-right:8px}.mature-toggle:hover{background-color:#f8f9fa;border-color:#adb5bd}.mature-toggle.active{background-color:#ff6b6b;border-color:#ff5252;color:#fff}.mature-toggle.active:hover{background-color:#ff5252}.mature-toggle i{font-size:.9rem}.label-item.mature{border:2px solid #ff6b6b;background-color:#ff6b6b0d}.label-item.mature .label-name{font-weight:500}.setting-item .mature-example{color:#ff6b6b;font-weight:500}.setting-item .mature-example i{margin-right:8px}.stat-label{font-size:.9rem;color:var(--light-text);margin-top:2px}.labels-controls{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:20px;background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;flex-wrap:wrap}.search-filter-group{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.search-group{position:relative;min-width:250px}.search-input{width:100%;padding:10px 15px 10px 40px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf71a}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--light-text);font-size:.9rem}.filter-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:var(--text-color)}.filter-checkbox input[type=checkbox]{width:auto;margin:0}.label-form-container{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.label-form{padding:25px}.label-form h3{margin:0 0 20px;color:var(--primary-color);font-size:1.3rem;font-weight:600}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color)}.form-input,.form-select{width:100%;padding:12px 15px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);transition:all .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf71a}.color-input-group{display:flex;gap:10px;align-items:center}.color-input{width:60px;height:45px;border:1px solid var(--border-color);border-radius:6px;background:none;cursor:pointer;transition:all .2s ease}.color-input:hover{transform:scale(1.05)}.color-text-input{flex:1;max-width:200px}.checkbox-label{display:flex!important;align-items:center;gap:10px;cursor:pointer;margin-bottom:0!important}.checkbox-label input[type=checkbox]{width:auto;margin:0}.checkbox-text{color:var(--text-color);font-weight:400}.form-actions{display:flex;gap:15px;padding-top:10px}.labels-list-container{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.labels-tree{padding:20px}.tree-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.tree-header h3{margin:0;color:var(--primary-color);font-size:1.2rem;font-weight:600}.tree-controls{display:flex;gap:8px}.tree-control-btn{background:none;border:1px solid var(--border-color);color:var(--light-text);cursor:pointer;padding:8px 12px;border-radius:4px;transition:all .2s ease;font-size:.9rem}.tree-control-btn:hover{color:var(--primary-color);border-color:var(--primary-color);background-color:#4a6cf70d}.labels-tree-content{max-height:600px;overflow-y:auto}.label-item{display:flex;align-items:center;padding:12px 15px;margin-bottom:2px;border-radius:6px;transition:all .2s ease;border-left:3px solid transparent;background-color:var(--bg-color)}.label-item:hover{background-color:var(--hover-bg)}.label-item.mature{border-left-color:#ff6b6b;background-color:#ff6b6b0d}.label-item.mature .label-name{color:#d63031}.expand-toggle{background:none;border:none;color:var(--light-text);cursor:pointer;padding:4px;margin-right:8px;border-radius:3px;transition:all .2s ease;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.expand-toggle:hover{color:var(--primary-color);background-color:var(--hover-bg)}.expand-toggle i{transition:transform .2s ease;font-size:.8rem}.expand-toggle.expanded i{transform:rotate(90deg)}.expand-spacer{width:24px;margin-right:8px}.label-color-indicator{width:12px;height:12px;border-radius:50%;margin-right:12px;border:1px solid rgba(0,0,0,.1);flex-shrink:0}.label-name{flex-grow:1;font-size:1rem;font-weight:500;color:var(--text-color);margin-right:15px}.label-stats{font-size:.8rem;color:var(--light-text);margin-right:10px;font-style:italic}.mature-indicator{color:#ff6b6b;margin-right:10px;font-size:.9rem}.label-actions{display:flex;gap:5px;opacity:.7;transition:opacity .2s ease}.label-item:hover .label-actions{opacity:1}.label-actions button{background:none;border:none;color:var(--light-text);cursor:pointer;padding:6px 8px;border-radius:4px;transition:all .2s ease;font-size:.85rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.mature-toggle:hover{color:#ff6b6b;background-color:#ff6b6b1a}.mature-toggle.active{color:#ff6b6b;background-color:#ff6b6b26}.edit-btn:hover{color:var(--primary-color);background-color:#4a6cf71a}.add-child-btn:hover{color:#28a745;background-color:#28a7451a}.delete-btn:hover{color:var(--error-color);background-color:#dc35451a}.label-children{margin-left:0}.labels-legend{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px}.labels-legend h4{margin:0 0 15px;color:var(--primary-color);font-size:1.1rem;font-weight:600}.legend-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.legend-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:var(--bg-color);border-radius:4px;font-size:.9rem;color:var(--text-color)}.legend-item i{width:16px;color:var(--light-text);font-size:.85rem}.legend-item.mature-example i{color:#ff6b6b}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-state i{font-size:2.5rem;color:var(--primary-color);margin-bottom:15px}.error-state i{font-size:2.5rem;color:var(--error-color);margin-bottom:15px}.empty-state i{font-size:3rem;color:var(--light-text);margin-bottom:20px;opacity:.6}.empty-state h3{margin:0 0 10px;color:var(--text-color);font-size:1.4rem}.empty-state p{margin:0 0 25px;color:var(--light-text);font-size:1rem}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:#5a78d4;transform:translateY(-1px);box-shadow:0 4px 12px #4a6cf74d}.btn-secondary{background-color:var(--secondary-color);color:var(--primary-color);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--hover-bg);border-color:var(--primary-color)}@media (max-width: 768px){.labels-management-layout{padding:15px;gap:20px}.labels-stats{grid-template-columns:1fr;gap:15px}.stat-card{padding:15px}.stat-card i,.stat-number{font-size:1.5rem}.labels-controls{flex-direction:column;align-items:stretch;gap:15px}.search-filter-group{flex-direction:column;align-items:stretch;gap:12px}.search-group{min-width:auto}.tree-header{flex-direction:column;align-items:flex-start;gap:15px}.tree-controls{align-self:flex-end}.legend-items{grid-template-columns:1fr}.form-actions{flex-direction:column}.color-input-group{flex-direction:column;align-items:flex-start}.color-text-input{max-width:none}.label-item{padding:10px 12px;flex-wrap:wrap;gap:10px}.label-actions{order:1;flex-basis:100%;justify-content:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}.label-name{margin-right:0}}@media (min-width: 1400px){.labels-management-layout{max-width:1400px}.legend-items{grid-template-columns:repeat(3,1fr)}.labels-tree-content{max-height:800px}}.label-item:focus-within{outline:2px solid var(--primary-color);outline-offset:2px}.btn:focus{outline:2px solid var(--primary-color);outline-offset:2px}.form-input:focus,.form-select:focus{box-shadow:0 0 0 3px #4a6cf71a}.label-form-container{animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.loading-state i{animation:spin 1s linear infinite}.label-children{transition:all .2s ease}.expand-toggle i{transition:transform .2s ease}.label-item{position:relative}.label-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:transparent;transition:background-color .2s ease}.label-item:hover:before{background-color:var(--primary-color)}.label-item.mature:before{background-color:#ff6b6b}.bulk-actions-container{background-color:var(--card-bg);border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:15px 20px;margin-bottom:20px;transition:all .3s ease}.bulk-actions-container.active{background:linear-gradient(135deg,rgba(74,108,247,.05),rgba(74,108,247,.1));border:1px solid rgba(74,108,247,.2)}.bulk-selection-info{display:flex;justify-content:space-between;align-items:center}.selection-hint{display:flex;align-items:center;gap:8px;color:var(--light-text);font-size:.9rem}.selection-hint i{color:var(--primary-color)}.bulk-selection-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.selection-count{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--primary-color)}.selection-count i{color:#28a745}.selection-breakdown{display:flex;gap:15px;font-size:.85rem}.mature-count{display:flex;align-items:center;gap:4px;color:#ff6b6b}.non-mature-count{display:flex;align-items:center;gap:4px;color:var(--primary-color)}.bulk-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.bulk-action-group{display:flex;gap:8px}.bulk-action-group.dangerous{margin-left:auto}.btn-sm{padding:8px 14px;font-size:.85rem}.btn-warning{background-color:#ffc107;color:#212529}.btn-warning:hover:not(:disabled){background-color:#e0a800;transform:translateY(-1px);box-shadow:0 3px 10px #ffc1074d}.btn-info{background-color:#17a2b8;color:#fff}.btn-info:hover:not(:disabled){background-color:#138496;transform:translateY(-1px);box-shadow:0 3px 10px #17a2b84d}.btn-danger{background-color:var(--error-color);color:#fff}.btn-danger:hover:not(:disabled){background-color:#c82333;transform:translateY(-1px);box-shadow:0 3px 10px #dc35454d}.bulk-actions-container.active{animation:selectionActivate .3s ease-out}@keyframes selectionActivate{0%{transform:scale(.98);opacity:.8}to{transform:scale(1);opacity:1}}@media (max-width: 768px){.bulk-selection-summary{flex-direction:column;gap:10px;align-items:stretch;text-align:center}.selection-breakdown{justify-content:center}.bulk-actions{flex-direction:column;gap:10px}.bulk-action-group{justify-content:center;width:100%}.bulk-action-group.dangerous{margin-left:0;order:1}.btn-sm{flex:1;min-width:120px}}.label-edit-modal{width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.label-edit-modal .modal-body{padding:0}.label-edit-modal form{padding:25px}.label-edit-modal .form-group{margin-bottom:24px}.label-edit-modal .form-group:last-child{margin-bottom:0}.label-edit-modal label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color);font-size:.95rem}.label-edit-modal .form-input,.label-edit-modal .form-select{width:100%;padding:12px 15px;border:2px solid var(--border-color);border-radius:6px;font-size:14px;background-color:var(--bg-color);color:var(--text-color);transition:all .2s ease;box-sizing:border-box}.label-edit-modal .form-input:focus,.label-edit-modal .form-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf71a}.label-edit-modal .form-input.error,.label-edit-modal .form-select.error{border-color:var(--error-color)}.label-edit-modal .form-input.error:focus,.label-edit-modal .form-select.error:focus{box-shadow:0 0 0 3px #dc35451a}.form-error{display:block;color:var(--error-color);font-size:.85rem;margin-top:6px;font-weight:500}.label-edit-modal .color-input-group{display:flex;gap:12px;align-items:center}.color-picker{width:60px!important;height:45px;border:2px solid var(--border-color)!important;border-radius:6px;background:none;cursor:pointer;transition:all .2s ease;padding:2px!important}.color-picker:hover{transform:scale(1.05);border-color:var(--primary-color)!important}.color-picker:focus{outline:none;border-color:var(--primary-color)!important;box-shadow:0 0 0 3px #4a6cf71a}.color-text-input{flex:1;min-width:120px}.color-preview{width:30px;height:30px;border-radius:50%;border:2px solid var(--border-color);flex-shrink:0;transition:transform .2s ease}.color-preview:hover{transform:scale(1.1)}.label-edit-modal .checkbox-label{display:flex!important;align-items:flex-start;gap:12px;cursor:pointer;margin-bottom:0!important;padding:15px;background-color:var(--secondary-color);border-radius:6px;border:1px solid var(--border-color);transition:all .2s ease}.label-edit-modal .checkbox-label:hover{background-color:var(--hover-bg);border-color:var(--primary-color)}.label-edit-modal .checkbox-label input[type=checkbox]{width:auto!important;margin:0;position:relative;opacity:0;width:20px;height:20px}.checkbox-custom{position:absolute;width:20px;height:20px;border:2px solid var(--border-color);border-radius:4px;background-color:var(--bg-color);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.checkbox-custom:after{content:"";width:6px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .2s ease}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background-color:var(--primary-color);border-color:var(--primary-color)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{transform:rotate(45deg) scale(1)}.checkbox-label input[type=checkbox]:focus+.checkbox-custom{box-shadow:0 0 0 3px #4a6cf71a}.checkbox-text{flex:1;color:var(--text-color);font-weight:400;line-height:1.4}.checkbox-description{display:block;color:var(--light-text);font-size:.85rem;margin-top:4px;font-weight:400}.label-preview{display:flex;align-items:center;gap:10px;padding:12px 15px;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;transition:all .2s ease}.label-preview.mature{border-left:3px solid #ff6b6b;background-color:#ff6b6b0d}.preview-color{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.1);flex-shrink:0}.preview-name{flex-grow:1;font-weight:500;color:var(--text-color)}.label-preview.mature .preview-name{color:#d63031}.preview-mature-indicator{color:#ff6b6b;font-size:.9rem}.label-edit-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 25px;background-color:var(--secondary-color);border-top:1px solid var(--border-color)}.label-edit-modal .btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease;white-space:nowrap}.label-edit-modal .btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.label-edit-modal .btn-primary{background-color:var(--primary-color);color:#fff}.label-edit-modal .btn-primary:hover:not(:disabled){background-color:#5a78d4;transform:translateY(-1px);box-shadow:0 4px 12px #4a6cf74d}.label-edit-modal .btn-secondary{background-color:var(--bg-color);color:var(--text-color);border:1px solid var(--border-color)}.label-edit-modal .btn-secondary:hover:not(:disabled){background-color:var(--hover-bg);border-color:var(--primary-color)}.form-input.error,.form-select.error{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (max-width: 768px){.label-edit-modal{width:95%;max-width:none;margin:10px}.label-edit-modal form{padding:20px}.label-edit-modal .modal-footer{padding:15px 20px;flex-direction:column;gap:10px}.label-edit-modal .btn{width:100%;justify-content:center}.color-input-group{flex-direction:column;align-items:stretch;gap:10px}.color-picker{width:100%!important;height:50px}.color-text-input{min-width:auto}.color-preview{align-self:center;width:40px;height:40px}.checkbox-label{flex-direction:column;align-items:flex-start!important;gap:8px;padding:12px}.checkbox-custom{position:relative;margin-top:2px}}.label-edit-modal input:focus,.label-edit-modal select:focus{z-index:1}.label-edit-modal .btn.loading{position:relative;color:transparent}.label-edit-modal .btn.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;border:2px solid currentColor;border-radius:50%;border-top-color:transparent;animation:spin 1s linear infinite;color:#fff}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.label-edit-modal .modal-header{background:linear-gradient(135deg,var(--primary-color),#5a78d4);color:#fff;padding:20px 25px}.label-edit-modal .modal-header h2{color:#fff;margin:0;font-size:1.3rem;font-weight:600}.label-edit-modal .modal-close-btn{color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);width:32px;height:32px;border-radius:6px;transition:all .2s ease}.label-edit-modal .modal-close-btn:hover{background:rgba(255,255,255,.2);transform:scale(1.05)}.form-success{color:#28a745;background-color:#28a7451a;border:1px solid rgba(40,167,69,.2);padding:12px 15px;border-radius:6px;margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-success i{font-size:1.1rem}@media (prefers-color-scheme: dark){.label-edit-modal .checkbox-custom{border-color:#4a4a4a;background-color:#2a2a2a}.label-edit-modal .color-picker{border-color:#4a4a4a!important}.label-edit-modal .color-preview{border-color:#4a4a4a}}.label-edit-modal *{transition:color .2s ease,background-color .2s ease,border-color .2s ease}.label-edit-modal .form-group+.form-group{margin-top:24px}.label-edit-modal *:focus{outline:none}.label-edit-modal input:focus,.label-edit-modal select:focus,.label-edit-modal button:focus{box-shadow:0 0 0 3px #4a6cf726}.label-edit-modal .checkbox-label{position:relative;padding-left:32px}.label-edit-modal .checkbox-custom{position:absolute;left:0;top:2px}.label-edit-modal .checkbox-text{display:block;padding-left:0}.label-edit-modal.submitting{pointer-events:none}.label-edit-modal.submitting .btn-primary{background-color:#6c757d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.user-permissions-modal{background:white;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.user-permissions-modal .modal-header{padding:24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:#f9fafb}.user-permissions-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.user-permissions-modal .modal-header .close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:all .2s}.user-permissions-modal .modal-header .close-button:hover{background-color:#f3f4f6;color:#374151}.user-permissions-modal .modal-content{flex:1;overflow-y:auto;padding:24px}.user-permissions-modal .modal-content .loading-spinner{text-align:center;padding:40px;color:#6b7280;font-size:1rem}.user-permissions-modal .modal-content .error-message{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:16px;margin-bottom:24px}.user-permissions-modal .modal-content .error-message p{margin:0 0 12px;color:#dc2626;font-weight:500}.user-permissions-modal .modal-content .error-message .retry-button{background-color:#dc2626;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s}.user-permissions-modal .modal-content .error-message .retry-button:hover{background-color:#b91c1c}.user-permissions-modal .modal-content .assign-permission-section{margin-bottom:32px}.user-permissions-modal .modal-content .assign-permission-section h3{margin:0 0 16px;font-size:1.125rem;font-weight:600;color:#111827}.user-permissions-modal .modal-content .assign-permission-section .assign-form{display:flex;gap:12px;align-items:center}.user-permissions-modal .modal-content .assign-permission-section .assign-form select{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background-color:#fff;color:#374151;transition:border-color .2s}.user-permissions-modal .modal-content .assign-permission-section .assign-form select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.user-permissions-modal .modal-content .assign-permission-section .assign-form select:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.user-permissions-modal .modal-content .assign-permission-section .assign-form .assign-button{background-color:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s;white-space:nowrap}.user-permissions-modal .modal-content .assign-permission-section .assign-form .assign-button:hover:not(:disabled){background-color:#2563eb}.user-permissions-modal .modal-content .assign-permission-section .assign-form .assign-button:disabled{background-color:#9ca3af;cursor:not-allowed}.user-permissions-modal .modal-content .current-permissions-section h3{margin:0 0 16px;font-size:1.125rem;font-weight:600;color:#111827}.user-permissions-modal .modal-content .current-permissions-section .no-permissions{color:#6b7280;font-style:italic;text-align:center;padding:24px;background-color:#f9fafb;border-radius:8px;margin:0}.user-permissions-modal .modal-content .current-permissions-section .permissions-list{display:flex;flex-direction:column;gap:12px}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item:hover{background-color:#f3f4f6;border-color:#d1d5db}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .permission-info{flex:1;display:flex;flex-direction:column;gap:4px}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .permission-info .permission-name{font-weight:600;color:#111827;font-size:.875rem}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .permission-info .permission-subject,.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .permission-info .permission-workspace{font-size:.75rem;color:#6b7280;background-color:#e5e7eb;padding:2px 8px;border-radius:12px;display:inline-block;width:fit-content}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .remove-button{background-color:#dc2626;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:500;transition:background-color .2s}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .remove-button:hover{background-color:#b91c1c}.user-permissions-modal .modal-footer{padding:20px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;display:flex;justify-content:flex-end}.user-permissions-modal .modal-footer .close-modal-button{background-color:#6b7280;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background-color .2s}.user-permissions-modal .modal-footer .close-modal-button:hover{background-color:#4b5563}@media (max-width: 640px){.user-permissions-modal{width:95%;max-height:90vh}.user-permissions-modal .modal-content{padding:16px}.user-permissions-modal .modal-content .assign-permission-section .assign-form{flex-direction:column;align-items:stretch}.user-permissions-modal .modal-content .assign-permission-section .assign-form .assign-button{width:100%}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item{flex-direction:column;align-items:stretch;gap:12px}.user-permissions-modal .modal-content .current-permissions-section .permissions-list .permission-item .remove-button{align-self:flex-end}}.create-user-modal{width:450px;max-width:90vw}.create-user-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.create-user-modal .modal-header h2{margin:0;color:var(--text-primary);font-size:1.5rem;font-weight:600}.create-user-modal .modal-header .close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:.5rem;border-radius:.25rem;transition:all .2s ease}.create-user-modal .modal-header .close-button:hover{background-color:var(--hover-background);color:var(--text-primary)}.create-user-modal .create-user-form .form-group{margin-bottom:1.5rem}.create-user-modal .create-user-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary);font-size:.875rem}.create-user-modal .create-user-form .form-group input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.375rem;font-size:1rem;background-color:var(--input-background);color:var(--text-primary);transition:all .2s ease;box-sizing:border-box}.create-user-modal .create-user-form .form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.create-user-modal .create-user-form .form-group input:disabled{background-color:var(--disabled-background);color:var(--text-secondary);cursor:not-allowed}.create-user-modal .create-user-form .form-group input::placeholder{color:var(--text-secondary)}.create-user-modal .create-user-form .error-message{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem;border-radius:.375rem;margin-bottom:1.5rem;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.create-user-modal .create-user-form .error-message:before{content:"⚠️"}.create-user-modal .create-user-form .modal-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.create-user-modal .create-user-form .modal-actions button{flex:1;padding:.75rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.create-user-modal .create-user-form .modal-actions button:disabled{cursor:not-allowed;opacity:.6}.create-user-modal .create-user-form .modal-actions .cancel-button{background-color:var(--secondary-background);color:var(--text-secondary);border-color:var(--border-color)}.create-user-modal .create-user-form .modal-actions .cancel-button:hover:not(:disabled){background-color:var(--hover-background);color:var(--text-primary)}.create-user-modal .create-user-form .modal-actions .create-button{background-color:var(--primary-color);color:#fff}.create-user-modal .create-user-form .modal-actions .create-button:hover:not(:disabled){background-color:var(--primary-hover)}.create-user-modal .create-user-form .modal-actions .create-button:disabled{background-color:var(--primary-color)}[data-theme=dark] .create-user-modal .error-message{background-color:#431316;border-color:#991b1b;color:#fca5a5}.video-progress-indicator{position:absolute;bottom:8px;left:8px;right:8px;z-index:10}.video-progress-indicator .watched-indicator{display:flex;align-items:center;gap:4px;background:rgba(34,197,94,.9);color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.video-progress-indicator .watched-indicator i{font-size:14px}.video-progress-indicator .watched-indicator .watched-text{white-space:nowrap}.video-progress-indicator .progress-container{display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.8);padding:4px 8px;border-radius:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.video-progress-indicator .progress-container .progress-bar{flex:1;height:4px;background:rgba(255,255,255,.3);border-radius:2px;overflow:hidden}.video-progress-indicator .progress-container .progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:2px;transition:width .3s ease}.video-progress-indicator .progress-container .progress-text{color:#fff;font-size:11px;font-weight:500;min-width:28px;text-align:right}.file-preview{position:relative}.file-item-hovered .video-progress-indicator{opacity:.7;transition:opacity .2s ease}.clip-mode-indicator{position:absolute;top:20px;left:20px;right:20px;z-index:1000;background:rgba(0,0,0,.85);border:2px solid #3b82f6;border-radius:8px;padding:12px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.clip-mode-indicator .clip-mode-content{display:flex;align-items:center;justify-content:space-between;gap:12px}.clip-mode-indicator .clip-mode-content .clip-mode-label{color:#fff;font-weight:600;font-size:14px;display:flex;align-items:center;gap:8px}.clip-mode-indicator .clip-mode-content .clip-mode-label i{color:#3b82f6}.clip-mode-indicator .clip-mode-content .clip-mode-time{color:#3b82f6;font-family:Courier New,monospace;font-size:13px;font-weight:600}.clip-mode-indicator .clip-mode-content .btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.clip-mode-indicator .clip-mode-content .btn.btn-secondary{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.3)}.clip-mode-indicator .clip-mode-content .btn.btn-secondary:hover{background:rgba(255,255,255,.25);transform:translateY(-1px)}.clip-mode-indicator .clip-progress-bar{width:100%;height:4px;background:rgba(255,255,255,.2);border-radius:2px;margin-top:8px;overflow:hidden}.clip-mode-indicator .clip-progress-bar .clip-progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:2px;transition:width .1s ease}.clips-section{margin:20px 0;padding:20px;background:rgba(255,255,255,.05);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.clips-section .clips-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.clips-section .clips-header h3{margin:0;color:#fff;font-size:1.2rem;font-weight:600}.clips-section .clips-header .btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.clips-section .clips-header .btn.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.clips-section .clips-header .btn.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px)}.clips-section .clip-creator{background:rgba(0,0,0,.3);border-radius:8px;padding:16px;margin-bottom:16px;border:1px solid rgba(255,255,255,.1)}.clips-section .clip-creator .clip-time-controls{display:flex;gap:16px;margin-bottom:16px}.clips-section .clip-creator .clip-time-controls .time-control{display:flex;align-items:center;gap:8px}.clips-section .clip-creator .clip-time-controls .time-control .btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.clips-section .clip-creator .clip-time-controls .time-control .btn.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2)}.clips-section .clip-creator .clip-time-controls .time-control .btn.btn-secondary:hover:not(:disabled){background:rgba(255,255,255,.2);transform:translateY(-1px)}.clips-section .clip-creator .clip-time-controls .time-control .btn.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.clips-section .clip-creator .clip-time-controls .time-control .time-display{color:#fff;font-family:Courier New,monospace;font-size:14px;font-weight:600;background:rgba(0,0,0,.4);padding:4px 8px;border-radius:4px;min-width:50px;text-align:center}.clips-section .clip-creator .clip-form{display:flex;flex-direction:column;gap:12px}.clips-section .clip-creator .clip-form .clip-name-input,.clips-section .clip-creator .clip-form .clip-description-input{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:8px 12px;color:#fff;font-size:14px;resize:vertical}.clips-section .clip-creator .clip-form .clip-name-input::placeholder,.clips-section .clip-creator .clip-form .clip-description-input::placeholder{color:#fff9}.clips-section .clip-creator .clip-form .clip-name-input:focus,.clips-section .clip-creator .clip-form .clip-description-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.clips-section .clip-creator .clip-form .clip-form-actions{display:flex;gap:8px}.clips-section .clip-creator .clip-form .clip-form-actions .btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.clips-section .clip-creator .clip-form .clip-form-actions .btn.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.clips-section .clip-creator .clip-form .clip-form-actions .btn.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.clips-section .clip-creator .clip-form .clip-form-actions .btn.btn-success:disabled{opacity:.5;cursor:not-allowed}.clips-section .clip-creator .clip-form .clip-form-actions .btn.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2)}.clips-section .clip-creator .clip-form .clip-form-actions .btn.btn-secondary:hover{background:rgba(255,255,255,.2)}.clips-section .clips-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:24px;color:#ffffffb3}.clips-section .clips-loading i{font-size:16px;color:#3b82f6}.clips-section .clips-loading span{font-size:14px}.clips-section .clips-list{display:flex;flex-direction:column;gap:12px}.clips-section .clips-list .clip-item{display:flex;justify-content:space-between;align-items:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;transition:all .2s ease;gap:16px;animation:slideInUp .3s ease-out forwards;opacity:0;transform:translateY(20px)}.clips-section .clips-list .clip-item:hover{background:rgba(255,255,255,.08);border-color:#fff3}.clips-section .clips-list .clip-item .clip-preview{flex-shrink:0;width:120px;height:68px;border-radius:6px;overflow:hidden;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1)}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container{position:relative;width:100%;height:100%;cursor:pointer;overflow:hidden;border-radius:6px}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container .clip-preview-image{width:100%;height:100%;object-fit:cover;transition:all .2s ease}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container .clip-preview-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);opacity:0;transition:all .2s ease}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container .clip-preview-overlay i{color:#fff;font-size:24px;text-shadow:0 2px 4px rgba(0,0,0,.5)}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container:hover .clip-preview-image{transform:scale(1.05);filter:brightness(1.1)}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container:hover .clip-preview-overlay{opacity:1}.clips-section .clips-list .clip-item .clip-preview .clip-preview-container .clip-duration-badge{position:absolute;bottom:6px;right:6px;background:rgba(0,0,0,.8);color:#fff;padding:2px 6px;border-radius:3px;font-size:10px;font-weight:600;font-family:Courier New,monospace;border:1px solid rgba(255,255,255,.2)}.clips-section .clips-list .clip-item .clip-preview .clip-preview-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;background:rgba(255,255,255,.05);color:#fff9;border:1px dashed rgba(255,255,255,.2)}.clips-section .clips-list .clip-item .clip-preview .clip-preview-placeholder i{font-size:20px;margin-bottom:4px;color:#fff6}.clips-section .clips-list .clip-item .clip-preview .clip-preview-placeholder span{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.clips-section .clips-list .clip-item .clip-preview .clip-preview-placeholder:hover{background:rgba(255,255,255,.1);border-color:#ffffff4d;transform:scale(1.02)}.clips-section .clips-list .clip-item .clip-preview .clip-preview-placeholder:hover i{color:#fff9}.clips-section .clips-list .clip-item .clip-preview .clip-preview-placeholder:hover span{color:#fffc}.clips-section .clips-list .clip-item .clip-info{flex:1}.clips-section .clips-list .clip-item .clip-info .clip-name{margin:0 0 6px;color:#fff;font-size:16px;font-weight:600}.clips-section .clips-list .clip-item .clip-info .clip-times{display:flex;align-items:center;gap:8px;margin-bottom:4px}.clips-section .clips-list .clip-item .clip-info .clip-times .clip-time{color:#3b82f6;font-family:Courier New,monospace;font-size:13px;font-weight:600}.clips-section .clips-list .clip-item .clip-info .clip-times .clip-duration{color:#ffffffb3;font-size:12px}.clips-section .clips-list .clip-item .clip-info .clip-description{margin:8px 0 0;color:#fffc;font-size:14px;line-height:1.4}.clips-section .clips-list .clip-item .clip-actions{display:flex;gap:6px;margin-left:12px}.clips-section .clips-list .clip-item .clip-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s ease;padding:6px 8px}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px)}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-outline-primary{background:transparent;color:#3b82f6;border:1px solid #3b82f6}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-outline-primary:hover{background:rgba(59,130,246,.1);transform:translateY(-1px)}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px)}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-success:disabled{opacity:.6;cursor:not-allowed;transform:none}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.clips-section .clips-list .clip-item .clip-actions .btn.btn-sm.btn-danger:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.clips-section .no-clips{text-align:center;color:#fff9;font-style:italic;padding:20px;margin:0}@keyframes slideInUp{to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.clip-mode-indicator{top:10px;left:10px;right:10px;padding:10px 12px}.clip-mode-indicator .clip-mode-content{flex-direction:column;align-items:stretch;gap:8px}.clip-mode-indicator .clip-mode-content .clip-mode-label,.clip-mode-indicator .clip-mode-content .clip-mode-time{text-align:center}.clip-mode-indicator .clip-mode-content .btn{align-self:center}.clips-section{margin:16px 0;padding:16px}.clips-section .clips-header{flex-direction:column;align-items:stretch;gap:12px}.clips-section .clips-header h3{text-align:center}.clips-section .clip-creator .clip-time-controls{flex-direction:column;gap:12px}.clips-section .clip-creator .clip-time-controls .time-control{justify-content:space-between}.clips-section .clip-creator .clip-form-actions{flex-direction:column}.clips-section .clip-creator .clip-form-actions .btn{justify-content:center}.clips-section .clips-list .clip-item{flex-direction:column;gap:12px}.clips-section .clips-list .clip-item .clip-preview{width:100%;height:120px;align-self:center;max-width:200px}.clips-section .clips-list .clip-item .clip-actions{margin-left:0;justify-content:center}}.subtitle-upload{background:var(--card-background);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;margin-top:1rem}.subtitle-upload h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.25rem;font-weight:600}.subtitle-upload h4{margin:1.5rem 0 1rem;color:var(--text-primary);font-size:1.1rem;font-weight:500}.subtitle-upload .error-message{background:var(--error-background);color:var(--error-color);border:1px solid var(--error-border);border-radius:4px;padding:.75rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.subtitle-upload .error-message i{flex-shrink:0}.subtitle-upload .loading{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);padding:1rem 0}.subtitle-upload .loading i{color:var(--primary-color)}.subtitle-upload .existing-subtitles{margin-bottom:1.5rem}.subtitle-upload .existing-subtitles .no-subtitles{color:var(--text-secondary);font-style:italic;margin:0;padding:1rem 0}.subtitle-upload .existing-subtitles .subtitle-list{display:flex;flex-direction:column;gap:.5rem}.subtitle-upload .existing-subtitles .subtitle-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:4px;transition:all .2s ease}.subtitle-upload .existing-subtitles .subtitle-item:hover{background:var(--background-hover);border-color:var(--border-hover)}.subtitle-upload .existing-subtitles .subtitle-item .subtitle-info{display:flex;align-items:center;gap:.5rem;flex:1}.subtitle-upload .existing-subtitles .subtitle-item .subtitle-info .subtitle-language{font-weight:500;color:var(--text-primary)}.subtitle-upload .existing-subtitles .subtitle-item .subtitle-info .subtitle-label{color:var(--text-secondary);font-style:italic}.subtitle-upload .existing-subtitles .subtitle-item .subtitle-info .subtitle-format{color:var(--text-secondary);font-size:.9rem;font-family:var(--font-mono)}.subtitle-upload .existing-subtitles .subtitle-item .subtitle-info .default-badge{background:var(--success-color);color:#fff;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase}.subtitle-upload .existing-subtitles .subtitle-item .btn{flex-shrink:0}.subtitle-upload .subtitle-upload-form{border-top:1px solid var(--border-color);padding-top:1.5rem}.subtitle-upload .subtitle-upload-form .file-drop-area{border:2px dashed var(--border-color);border-radius:8px;padding:2rem;text-align:center;cursor:pointer;transition:all .2s ease;margin-bottom:1rem}.subtitle-upload .subtitle-upload-form .file-drop-area:hover{border-color:var(--primary-color);background:var(--background-hover)}.subtitle-upload .subtitle-upload-form .file-drop-area.dragging{border-color:var(--primary-color);background:var(--primary-background);transform:scale(1.02)}.subtitle-upload .subtitle-upload-form .file-drop-area.has-file{border-color:var(--success-color);background:var(--success-background)}.subtitle-upload .subtitle-upload-form .file-drop-area .drop-message{color:var(--text-secondary)}.subtitle-upload .subtitle-upload-form .file-drop-area .drop-message i{font-size:2rem;color:var(--primary-color);margin-bottom:.5rem;display:block}.subtitle-upload .subtitle-upload-form .file-drop-area .drop-message p{margin:.5rem 0;font-size:1.1rem;color:var(--text-primary)}.subtitle-upload .subtitle-upload-form .file-drop-area .drop-message small{font-size:.9rem;color:var(--text-secondary)}.subtitle-upload .subtitle-upload-form .file-drop-area .selected-file{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--text-primary)}.subtitle-upload .subtitle-upload-form .file-drop-area .selected-file i{color:var(--success-color);font-size:1.25rem}.subtitle-upload .subtitle-upload-form .file-drop-area .selected-file span{font-weight:500}.subtitle-upload .subtitle-upload-form .file-drop-area .selected-file .btn{margin-left:.5rem}.subtitle-upload .subtitle-upload-form .form-fields{display:grid;gap:1rem;margin-bottom:1rem}@media (min-width: 768px){.subtitle-upload .subtitle-upload-form .form-fields{grid-template-columns:1fr 1fr}}@media (min-width: 1200px){.subtitle-upload .subtitle-upload-form .form-fields{grid-template-columns:1fr 1fr 1fr}}.subtitle-upload .subtitle-upload-form .form-fields .form-group{display:flex;flex-direction:column;gap:.25rem}.subtitle-upload .subtitle-upload-form .form-fields .form-group:last-child{grid-column:1/-1}.subtitle-upload .subtitle-upload-form .form-fields .form-group label{font-weight:500;color:var(--text-primary);font-size:.9rem}.subtitle-upload .subtitle-upload-form .form-fields .form-group label.checkbox-label{flex-direction:row;align-items:center;gap:.5rem;cursor:pointer}.subtitle-upload .subtitle-upload-form .form-fields .form-group label.checkbox-label input[type=checkbox]{margin:0}.subtitle-upload .subtitle-upload-form .form-fields .form-group input,.subtitle-upload .subtitle-upload-form .form-fields .form-group select{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--input-background);color:var(--text-primary);font-size:.9rem;transition:border-color .2s ease}.subtitle-upload .subtitle-upload-form .form-fields .form-group input:focus,.subtitle-upload .subtitle-upload-form .form-fields .form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-background)}.subtitle-upload .subtitle-upload-form .form-fields .form-group input:disabled,.subtitle-upload .subtitle-upload-form .form-fields .form-group select:disabled{background:var(--background-disabled);color:var(--text-disabled);cursor:not-allowed}.subtitle-upload .subtitle-upload-form .form-fields .form-group input[type=checkbox]{width:auto;margin-right:.5rem}.subtitle-upload .subtitle-upload-form .btn{align-self:flex-start}@media (min-width: 1400px){.subtitle-upload .subtitle-upload-form .form-fields{grid-template-columns:repeat(4,1fr)}}@media (prefers-color-scheme: dark){.subtitle-upload .file-drop-area.dragging{background:rgba(var(--primary-color-rgb),.1)}.subtitle-upload .file-drop-area.has-file{background:rgba(var(--success-color-rgb),.1)}}@media (max-width: 767px){.subtitle-upload{padding:1rem}.subtitle-upload .subtitle-item{flex-direction:column;align-items:flex-start;gap:.75rem}.subtitle-upload .subtitle-item .subtitle-info{flex-wrap:wrap}.subtitle-upload .subtitle-item .btn{align-self:flex-end}.subtitle-upload .file-drop-area{padding:1.5rem 1rem}.subtitle-upload .file-drop-area .drop-message i{font-size:1.5rem}.subtitle-upload .file-drop-area .drop-message p{font-size:1rem}}.subtitle-selector{margin:1rem 0;border:1px solid var(--border-color, #ddd);border-radius:8px;background:var(--card-background, #fff);box-shadow:0 2px 4px #0000001a}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn{width:100%;padding:1rem;background:none;border:none;display:flex;align-items:center;gap:.75rem;font-size:1rem;cursor:pointer;transition:all .2s ease;color:var(--text-color, #333)}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn:hover{background:var(--hover-background, rgba(0, 0, 0, .05))}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn:disabled{opacity:.6;cursor:not-allowed}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .fa-closed-captioning{font-size:1.25rem;color:var(--primary-color, #007bff)}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn span{font-weight:500}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .active-subtitle-indicator{font-weight:400;color:var(--secondary-text, #666);font-size:.9rem;flex:1;text-align:left}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .fa-chevron-up,.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .fa-chevron-down{margin-left:auto;font-size:.875rem;color:var(--secondary-text, #666)}.subtitle-selector .subtitle-selector-content{border-top:1px solid var(--border-color, #ddd);background:var(--content-background, #fafafa)}.subtitle-selector .subtitle-selector-content .subtitle-loading,.subtitle-selector .subtitle-selector-content .subtitle-error{padding:1rem;display:flex;align-items:center;gap:.5rem;color:var(--secondary-text, #666)}.subtitle-selector .subtitle-selector-content .subtitle-loading .fa-spinner,.subtitle-selector .subtitle-selector-content .subtitle-error .fa-spinner{animation:spin 1s linear infinite}.subtitle-selector .subtitle-selector-content .subtitle-error{color:var(--error-color, #dc3545);background:var(--error-background, rgba(220, 53, 69, .1))}.subtitle-selector .subtitle-selector-content .subtitle-error .fa-exclamation-triangle{color:var(--error-color, #dc3545)}.subtitle-selector .subtitle-selector-content .subtitle-options{max-height:300px;overflow-y:auto}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--border-color, #eee)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option:last-child{border-bottom:none}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option:hover{background:var(--hover-background, rgba(0, 0, 0, .05))}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option.active{background:var(--primary-light, rgba(0, 123, 255, .1));border-color:var(--primary-color, #007bff)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option.active .active-indicator{color:var(--primary-color, #007bff)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main{display:flex;align-items:center;gap:.75rem;flex:1}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .fa-closed-captioning,.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .fa-times{font-size:1.125rem;color:var(--primary-color, #007bff);min-width:1.125rem}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .fa-times{color:var(--secondary-text, #666)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .subtitle-option-details{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .subtitle-option-details .subtitle-language{font-weight:500;color:var(--text-color, #333)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .subtitle-option-details .subtitle-label{color:var(--secondary-text, #666);font-size:.9rem}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .subtitle-option-details .subtitle-default-badge{background:var(--success-color, #28a745);color:#fff;padding:.125rem .375rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-meta{display:flex;align-items:center;gap:.5rem}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-meta .subtitle-format{color:var(--secondary-text, #666);font-size:.875rem;font-family:monospace}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-meta .active-indicator{font-size:1rem;color:var(--primary-color, #007bff)}.subtitle-selector .subtitle-selector-content .subtitle-options .no-subtitles{padding:1.5rem;text-align:center;color:var(--secondary-text, #666);display:flex;align-items:center;justify-content:center;gap:.5rem}.subtitle-selector .subtitle-selector-content .subtitle-options .no-subtitles .fa-info-circle{color:var(--info-color, #17a2b8)}@media (min-width: 1200px){.subtitle-selector .subtitle-selector-content .subtitle-options{max-height:400px}}@media (prefers-color-scheme: dark){.subtitle-selector{border-color:#444;background:#2d2d2d}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn{color:#e0e0e0}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn:hover{background:rgba(255,255,255,.1)}.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .active-subtitle-indicator,.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .fa-chevron-up,.subtitle-selector .subtitle-selector-header .subtitle-toggle-btn .fa-chevron-down{color:#b0b0b0}.subtitle-selector .subtitle-selector-content{border-top-color:#444;background:#252525}.subtitle-selector .subtitle-selector-content .subtitle-loading,.subtitle-selector .subtitle-selector-content .subtitle-error{color:#b0b0b0}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option{border-bottom-color:#444}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option:hover{background:rgba(255,255,255,.05)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option.active{background:rgba(0,123,255,.2)}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .fa-times{color:#b0b0b0}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .subtitle-option-details .subtitle-language{color:#e0e0e0}.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-main .subtitle-option-details .subtitle-label,.subtitle-selector .subtitle-selector-content .subtitle-options .subtitle-option .subtitle-option-content .subtitle-option-meta .subtitle-format,.subtitle-selector .subtitle-selector-content .subtitle-options .no-subtitles{color:#b0b0b0}}.playlists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px}.playlist-card{background:white;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;cursor:pointer;transition:all .3s ease;border:1px solid var(--border-color);position:relative;overflow:hidden}.playlist-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026;border-color:var(--primary-color)}.playlist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.playlist-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--primary-color),#6c5ce7);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px}.playlist-name{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--text-color);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.playlist-description{color:var(--light-text);font-size:14px;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.playlist-meta{display:flex;align-items:center;gap:16px;margin-bottom:8px;font-size:13px}.item-count{display:flex;align-items:center;gap:6px;color:var(--primary-color);font-weight:500}.item-count i{font-size:12px}.created-by{color:var(--light-text)}.playlist-date{font-size:12px;color:var(--light-text)}.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:14px}.breadcrumb a{color:var(--primary-color);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.separator{color:var(--light-text)}.edit-form{display:flex;flex-direction:column;gap:12px;width:100%}.edit-name-input{font-size:24px;font-weight:600;border:2px solid var(--border-color);border-radius:8px;padding:12px;background:white}.edit-name-input:focus{outline:none;border-color:var(--primary-color)}.edit-description-input{border:2px solid var(--border-color);border-radius:8px;padding:12px;background:white;resize:vertical;font-family:inherit}.edit-description-input:focus{outline:none;border-color:var(--primary-color)}.edit-actions{display:flex;gap:12px}.playlist-meta{display:flex;gap:20px;color:var(--light-text);font-size:14px;margin-top:8px}.playlist-meta span{display:flex;align-items:center;gap:6px}.add-files-section{background:white;border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color)}.add-files-section h3{margin-bottom:16px;color:var(--text-color);font-size:18px;font-weight:600}.file-search{display:flex;gap:12px;align-items:flex-start}.file-select{flex:1}.file-select .react-select__control{border:2px solid var(--border-color);border-radius:8px;min-height:44px;box-shadow:none}.file-select .react-select__control:hover{border-color:var(--primary-color)}.file-select .react-select__control--is-focused{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color)}.file-select .react-select__multi-value{background-color:var(--primary-color);color:#fff}.file-select .react-select__multi-value__label{color:#fff}.file-select .react-select__multi-value__remove{color:#fff;opacity:.8}.file-select .react-select__multi-value__remove:hover{opacity:1;background-color:#fff3}.playlist-items{display:flex;flex-direction:column;gap:12px}.playlist-item{background:white;border-radius:12px;padding:16px;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color);display:flex;align-items:center;gap:16px;transition:all .2s ease}.playlist-item:hover{box-shadow:0 4px 12px #0000001f;border-color:var(--primary-color)}.playlist-item.dragging{transform:rotate(2deg);box-shadow:0 8px 25px #0003;z-index:1000}.drag-handle{color:var(--light-text);cursor:grab;padding:8px;margin:-8px;border-radius:6px;transition:all .2s ease}.drag-handle:hover{color:var(--primary-color);background-color:#4a6cf71a}.drag-handle:active{cursor:grabbing}.item-preview{width:60px;height:60px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.video-thumbnail{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.image-thumbnail{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.file-thumbnail{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff}.item-info{flex:1;cursor:pointer;padding:8px;margin:-8px;border-radius:8px;transition:background-color .2s ease}.item-info:hover{background-color:#4a6cf70d}.item-name{font-size:16px;font-weight:500;color:var(--text-color);margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.item-meta{display:flex;gap:12px;font-size:13px;color:var(--light-text)}.watch-progress{margin-top:8px;display:flex;flex-direction:column;gap:4px;opacity:.8;transition:opacity .2s ease}.item-info:hover .watch-progress{opacity:1}.progress-bar{width:100%;height:4px;background-color:#00000014;border-radius:3px;overflow:hidden;box-shadow:inset 0 1px 2px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),#6c5ce7);transition:width .3s ease;border-radius:3px;position:relative}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);border-radius:3px}.progress-info{display:flex;align-items:center;font-size:11px;color:var(--light-text);min-height:14px}.completed-indicator{display:flex;align-items:center;gap:4px;color:#27ae60;font-weight:500;animation:fadeIn .3s ease}.completed-indicator i{font-size:10px;opacity:.9}.time-indicator{font-family:Monaco,Menlo,monospace;font-size:10px;color:var(--light-text);opacity:.8;transition:opacity .2s ease}.item-info:hover .time-indicator{opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.item-info:hover .progress-bar{background-color:#0000001f;transform:scaleY(1.1);transition:all .2s ease}.playlist-item.completed-item{background:linear-gradient(135deg,rgba(39,174,96,.02),rgba(39,174,96,.01));border-left:3px solid rgba(39,174,96,.3)}.playlist-item.completed-item:hover{border-left-color:#27ae60}.item-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.position-indicator{background:var(--secondary-color);color:var(--primary-color);padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;min-width:32px;text-align:center}.btn-icon{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background-color:#dc35451a}.btn-icon.delete-btn{color:var(--light-text)}.btn-icon.delete-btn:hover{color:var(--error-color)}.btn-icon.play-btn{color:var(--light-text)}.btn-icon.play-btn:hover{color:var(--primary-color);background-color:#4a6cf71a}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:white;border-radius:12px;padding:0;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-color)}.modal-close{background:none;border:none;font-size:20px;color:var(--light-text);cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease}.modal-close:hover{color:var(--text-color);background-color:var(--secondary-color)}.modal-content form{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-color)}.form-group input,.form-group textarea{width:100%;border:2px solid var(--border-color);border-radius:8px;padding:12px;font-size:14px;transition:border-color .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group textarea{resize:vertical}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}@media (max-width: 768px){.playlists-grid{grid-template-columns:1fr;gap:16px}.file-search{flex-direction:column}.playlist-item{padding:12px;gap:12px}.item-preview{width:48px;height:48px;font-size:20px}.modal-content{margin:20px;max-width:none}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%;justify-content:center}}@media (max-width: 480px){.playlist-meta{flex-direction:column;gap:8px;align-items:flex-start}.edit-actions{flex-direction:column}.edit-actions .btn{width:100%;justify-content:center}}.modal-body{padding:24px}.modal-description{margin-bottom:20px;color:var(--light-text);font-size:14px}.loading-state{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px 0;color:var(--light-text)}.loading-state i{font-size:20px;color:var(--primary-color)}.create-playlist-form{background:var(--secondary-color);border-radius:8px;padding:20px;margin-bottom:20px}.create-playlist-form h3{margin-bottom:16px;color:var(--text-color);font-size:16px;font-weight:600}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.playlist-selection{display:flex;flex-direction:column;gap:16px}.playlist-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;margin-bottom:16px}.playlist-option{border:2px solid var(--border-color);border-radius:8px;padding:16px;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;background:white}.playlist-option:hover{border-color:var(--primary-color);background-color:#4a6cf705}.playlist-option.selected{border-color:var(--primary-color);background-color:#4a6cf70d}.playlist-option-content{display:flex;align-items:center;gap:12px;flex:1}.playlist-option-icon{width:40px;height:40px;background:var(--primary-color);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;flex-shrink:0}.playlist-option-info{flex:1}.playlist-option-info h4{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text-color)}.playlist-option-description{margin:0 0 4px;font-size:12px;color:var(--light-text);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.playlist-option-count{font-size:12px;color:var(--light-text)}.selected-indicator{color:var(--primary-color);font-size:16px;flex-shrink:0}.create-new-btn{align-self:center;border:2px dashed var(--border-color);background:transparent;color:var(--primary-color);padding:12px 24px;border-radius:8px;transition:all .2s ease}.create-new-btn:hover{border-color:var(--primary-color);background-color:#4a6cf70d}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:#fff}.modal-footer{padding:20px 24px;border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end}.empty-state{text-align:center;padding:40px 0}.empty-state i{font-size:48px;color:var(--border-color);margin-bottom:16px}.empty-state p{color:var(--light-text);margin:0}@media (max-width: 480px){.playlist-option-content{gap:8px}.playlist-option-icon{width:32px;height:32px;font-size:14px}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%;justify-content:center}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%;justify-content:center}}.playlist-viewer{background:var(--background-color);min-height:100vh}.playlist-viewer .header-content{display:flex;flex-direction:column;gap:12px}.playlist-viewer .header-content .playlist-info{display:flex;justify-content:space-between;align-items:center}.header-buttons{display:flex;align-items:center;gap:8px}.playlist-info{margin:12px 0}.playlist-info p{margin:4px 0;color:var(--light-text)}.playlist-info strong{color:var(--text-color)}.playlist-progress{display:flex;align-items:center;gap:16px;background:white;padding:16px 24px;border-radius:12px;margin:24px 0;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color)}.progress-bar{flex:1;height:8px;background:var(--secondary-color);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),#6c5ce7);border-radius:4px;transition:width .3s ease}.progress-text{font-size:14px;font-weight:600;color:var(--primary-color);min-width:60px;text-align:center}.media-container{position:relative;background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 16px #0000001a;margin:24px 0}.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.7);color:#fff;border:none;width:50px;height:50px;border-radius:50%;font-size:18px;cursor:pointer;z-index:10;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.nav-arrow:hover{background:rgba(0,0,0,.9);transform:translateY(-50%) scale(1.1)}.nav-arrow.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.nav-arrow-left{left:20px}.nav-arrow-right{right:20px}.media-content{width:100%;height:auto;max-height:80vh;object-fit:contain;display:block;background:#000}.quick-navigation{background:white;border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color)}.quick-navigation h3{margin-bottom:16px;color:var(--text-color);font-size:18px;font-weight:600}.nav-buttons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nav-buttons .btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-size:14px;min-width:100px;justify-content:center}.current-position{background:var(--secondary-color);color:var(--primary-color);padding:10px 16px;border-radius:8px;font-weight:600;font-size:14px;min-width:80px;text-align:center}.back-to-playlist{text-align:center;margin:32px 0}.back-to-playlist .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:16px}.tags-section{background:white;border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color)}.tags-section h3{margin-bottom:16px;color:var(--text-color);font-size:18px;font-weight:600}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-flex;align-items:center;padding:6px 12px;border-radius:16px;color:#fff;text-decoration:none;font-size:12px;font-weight:500;transition:all .2s ease}.tag:hover{transform:scale(1.05);text-decoration:none;color:#fff}.keyboard-help-btn{background:var(--secondary-color);border:none;width:40px;height:40px;border-radius:50%;color:var(--primary-color);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:16px}.keyboard-help-btn:hover{background:var(--primary-color);color:#fff}.auto-play-btn{background:var(--secondary-color);border:none;width:50px;height:40px;border-radius:20px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:12px;margin-left:8px;position:relative;padding:0 8px;gap:4px}.auto-play-btn.enabled{background:var(--success-color, #28a745);color:#fff}.auto-play-btn.disabled{background:var(--secondary-color);color:var(--text-muted, #6c757d)}.auto-play-btn:hover.enabled{background:var(--success-dark, #218838)}.auto-play-btn:hover.disabled{background:var(--primary-color);color:#fff}.auto-play-delay{font-size:10px;font-weight:600;white-space:nowrap}.auto-play-notification{position:fixed;top:20px;right:20px;z-index:1000;animation:slideInRight .3s ease}.auto-play-notification.image-advance{top:70px}.notification-content{background:var(--primary-color);color:#fff;padding:16px 20px;border-radius:8px;box-shadow:0 4px 16px #00000026;display:flex;align-items:center;gap:12px;min-width:280px}.image-advance .notification-content{background:var(--info-color, #17a2b8)}.notification-content i:first-child{font-size:18px;color:var(--success-color, #28a745)}.image-advance .notification-content i:first-child{color:var(--warning-color, #ffc107)}.notification-content span{flex:1;font-weight:500;font-size:14px}.cancel-auto-play-btn{background:rgba(255,255,255,.2);border:none;width:24px;height:24px;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;font-size:12px}.cancel-auto-play-btn:hover{background:rgba(255,255,255,.3)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.keyboard-help{background:white;border-radius:12px;padding:20px;margin:16px 0;box-shadow:0 4px 16px #0000001a;border:1px solid var(--border-color)}.keyboard-help h4{margin-bottom:16px;color:var(--text-color);font-size:16px;font-weight:600}.shortcuts-list{display:flex;flex-direction:column;gap:8px}.shortcut{display:flex;align-items:center;gap:12px}.shortcut kbd{background:var(--secondary-color);color:var(--primary-color);padding:4px 8px;border-radius:4px;font-family:monospace;font-size:12px;font-weight:600;min-width:30px;text-align:center;border:1px solid var(--border-color)}.shortcut span{color:var(--light-text);font-size:14px}@media (max-width: 768px){.playlist-progress{padding:12px 16px;margin:16px 0}.nav-arrow{width:40px;height:40px;font-size:16px}.nav-arrow-left{left:10px}.nav-arrow-right{right:10px}.nav-buttons{justify-content:center}.nav-buttons .btn{flex:1;min-width:auto;max-width:120px}.quick-navigation,.tags-section,.back-to-playlist{margin:16px 0;padding:16px}}@media (max-width: 480px){.nav-buttons{flex-direction:column;align-items:stretch}.nav-buttons .btn,.current-position{width:100%;justify-content:center}.shortcuts-list{gap:12px}.shortcut{justify-content:space-between}.playlist-info{text-align:center}.nav-arrow{width:35px;height:35px;font-size:14px}.nav-arrow-left{left:5px}.nav-arrow-right{right:5px}}.admin-page{padding:2rem;max-width:1200px;margin:0 auto}.admin-container{background:var(--background-secondary);border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}.admin-page h1{color:var(--text-primary);margin-bottom:2rem;font-size:2.5rem;font-weight:600;text-align:center}.admin-section{margin-bottom:3rem;padding:1.5rem;background:var(--background-primary);border-radius:6px;border:1px solid var(--border-color)}.admin-section h2{color:var(--text-primary);margin-bottom:1rem;font-size:1.8rem;font-weight:500;border-bottom:2px solid var(--primary-color);padding-bottom:.5rem}.admin-section p{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.admin-action-group{background:var(--background-secondary);padding:1.5rem;border-radius:6px;margin-bottom:1.5rem;border-left:4px solid var(--primary-color)}.admin-action-group:last-child{margin-bottom:0}.admin-action-group h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.3rem;font-weight:500}.admin-action-group p{color:var(--text-secondary);margin-bottom:1rem;font-size:.9rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-block;text-align:center}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-color-dark);transform:translateY(-1px)}.btn-secondary{background:var(--secondary-color);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--secondary-color-dark);transform:translateY(-1px)}.input-group{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.form-input{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--background-primary);color:var(--text-primary);font-size:1rem;flex:1;transition:border-color .2s ease}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2)}.form-input::placeholder{color:var(--text-secondary)}.result-message{padding:1rem;border-radius:4px;margin-top:1rem;font-weight:500}.result-message.success{background:rgba(34,197,94,.1);color:#059669;border:1px solid rgba(34,197,94,.3)}.result-message.error{background:rgba(239,68,68,.1);color:#dc2626;border:1px solid rgba(239,68,68,.3)}.admin-section ul{color:var(--text-secondary);padding-left:1.5rem}.admin-section li{margin-bottom:.5rem;line-height:1.5}[data-theme=dark]{--background-primary: #1a1a1a;--background-secondary: #2a2a2a;--text-primary: #ffffff;--text-secondary: #b3b3b3;--border-color: #404040;--primary-color: #3b82f6;--primary-color-dark: #2563eb;--primary-color-rgb: 59, 130, 246;--secondary-color: #6b7280;--secondary-color-dark: #4b5563}[data-theme=light]{--background-primary: #ffffff;--background-secondary: #f8f9fa;--text-primary: #1a1a1a;--text-secondary: #6b7280;--border-color: #e5e7eb;--primary-color: #3b82f6;--primary-color-dark: #2563eb;--primary-color-rgb: 59, 130, 246;--secondary-color: #6b7280;--secondary-color-dark: #4b5563}:root{--background-primary: #ffffff;--background-secondary: #f8f9fa;--text-primary: #1a1a1a;--text-secondary: #6b7280;--border-color: #e5e7eb;--primary-color: #3b82f6;--primary-color-dark: #2563eb;--primary-color-rgb: 59, 130, 246;--secondary-color: #6b7280;--secondary-color-dark: #4b5563}@media (max-width: 768px){.admin-page,.admin-container{padding:1rem}.admin-page h1{font-size:2rem}.input-group{flex-direction:column;align-items:stretch}.btn{width:100%}}.pagination-container{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem;padding:1.5rem 0;border-top:1px solid var(--border-color);background:rgba(245,248,255,.5);border-radius:8px;margin-bottom:2rem}.pagination-container .pagination-info{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--light-text);font-weight:500}.pagination-container .pagination-info .page-size-selector label{display:flex;align-items:center;gap:.5rem;font-weight:500}.pagination-container .pagination-info .page-size-selector label select{padding:.25rem .5rem;border:1px solid var(--border-color);border-radius:4px;background:white;color:var(--text-color);font-size:.9rem}.pagination-container .pagination-info .page-size-selector label select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #4a6cf733}.pagination-container .pagination-info .page-size-selector label select:disabled{opacity:.6;cursor:not-allowed}.pagination-container .pagination{display:flex;justify-content:center;align-items:center;gap:.5rem}.pagination-container .pagination .pagination-btn{display:flex;align-items:center;gap:.25rem;padding:.6rem .85rem;border:1px solid var(--border-color);background:white;color:var(--text-color);border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.9rem;min-width:2.8rem;justify-content:center;font-weight:500;box-shadow:0 1px 3px #0000001a}.pagination-container .pagination .pagination-btn:hover:not(:disabled){background:var(--secondary-color);border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 2px 8px #4a6cf733}.pagination-container .pagination .pagination-btn:active:not(:disabled){transform:translateY(-1px)}.pagination-container .pagination .pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:#f8f9fa;color:#ccc}.pagination-container .pagination .pagination-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);font-weight:600;box-shadow:0 2px 8px #4a6cf74d}.pagination-container .pagination .pagination-btn.active:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 3px 12px #4a6cf766}.pagination-container .pagination .pagination-btn.prev,.pagination-container .pagination .pagination-btn.next{font-weight:600;padding:.6rem 1.2rem;background:linear-gradient(135deg,white,#f8f9fa)}.pagination-container .pagination .pagination-btn.prev i,.pagination-container .pagination .pagination-btn.next i{font-size:.85rem}.pagination-container .pagination .pagination-btn.prev:hover:not(:disabled),.pagination-container .pagination .pagination-btn.next:hover:not(:disabled){background:linear-gradient(135deg,var(--secondary-color),white)}.pagination-container .pagination .pagination-btn.page-number{min-width:2.8rem;font-weight:500}.pagination-container .pagination .pagination-ellipsis{display:flex;align-items:center;justify-content:center;min-width:2.8rem;color:var(--light-text);font-weight:700;font-size:1.1rem}.pagination-container .pagination .page-numbers{display:flex;gap:.3rem;align-items:center;padding:0 .5rem}.pagination-container .pagination-empty-state{text-align:center;padding:2rem 1rem;color:var(--light-text)}.pagination-container .pagination-empty-state i{font-size:2.5rem;margin-bottom:1rem;opacity:.6}.pagination-container .pagination-empty-state p{font-size:1rem;margin:0;font-weight:500}@media (max-width: 768px){.pagination-container .pagination-info{flex-direction:column;gap:.5rem;align-items:flex-start}.pagination-container .pagination-info .page-size-selector{align-self:flex-end}.pagination-container .pagination .pagination-btn{padding:.4rem .6rem;font-size:.8rem;min-width:2rem}.pagination-container .pagination .pagination-btn.prev,.pagination-container .pagination .pagination-btn.next{padding:.4rem .8rem}.pagination-container .pagination .pagination-btn.prev span,.pagination-container .pagination .pagination-btn.next span{display:none}.pagination-container .pagination .page-numbers{gap:.1rem}}@media (max-width: 480px){.pagination-container .pagination .page-numbers .pagination-btn.page-number:not(.active){display:none}.pagination-container .pagination .page-numbers .pagination-btn.page-number:first-child,.pagination-container .pagination .page-numbers .pagination-btn.page-number:last-child,.pagination-container .pagination .page-numbers .pagination-btn.page-number.active{display:flex}}.search-bar{width:100%;margin-bottom:1.5rem}.search-bar .search-input-container{position:relative;display:flex;align-items:center;width:100%;max-width:400px;margin:0 auto}.search-bar .search-input-container .search-icon{position:absolute;left:12px;color:var(--light-text);font-size:.9rem;z-index:2;pointer-events:none}.search-bar .search-input-container .search-input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:2px solid var(--border-color);border-radius:8px;background:white;color:var(--text-color);font-size:1rem;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.search-bar .search-input-container .search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf71a;transform:translateY(-1px)}.search-bar .search-input-container .search-input::placeholder{color:var(--light-text);opacity:.7}.search-bar .search-input-container .search-input:disabled{opacity:.6;cursor:not-allowed;background:#f8f9fa}.search-bar .search-input-container .clear-search-btn{position:absolute;right:12px;background:none;border:none;color:var(--light-text);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.search-bar .search-input-container .clear-search-btn:hover:not(:disabled){color:var(--error-color);background:rgba(220,53,69,.1)}.search-bar .search-input-container .clear-search-btn:disabled{opacity:.4;cursor:not-allowed}.search-bar .search-input-container .clear-search-btn i{font-size:.8rem}.search-bar .search-input-container .search-loading{position:absolute;right:12px;color:var(--primary-color);pointer-events:none}.search-bar .search-input-container .search-loading i{font-size:.9rem;animation:spin 1s linear infinite}.search-bar.has-results .search-input-container .search-input{border-color:var(--success-color);background:rgba(40,167,69,.05)}.search-bar.no-results .search-input-container .search-input{border-color:#ffc107;background:rgba(255,193,7,.05)}@media (max-width: 768px){.search-bar .search-input-container{max-width:100%}.search-bar .search-input-container .search-input{font-size:.9rem;padding:.6rem 1rem .6rem 2.2rem}.search-bar .search-input-container .search-icon{left:10px;font-size:.8rem}.search-bar .search-input-container .clear-search-btn{right:10px;width:20px;height:20px}.search-bar .search-input-container .clear-search-btn i{font-size:.7rem}}@media (max-width: 480px){.search-bar{margin-bottom:1rem}.search-bar .search-input-container .search-input{padding:.5rem .8rem .5rem 2rem;font-size:.85rem}.search-bar .search-input-container .search-icon{left:8px;font-size:.75rem}.search-bar .search-input-container .clear-search-btn{right:8px;width:18px;height:18px}}.filter-bar{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:1rem}.filter-bar .filter-label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--text-secondary);white-space:nowrap}.filter-bar .filter-label i{color:var(--primary-color)}.filter-bar .filter-options{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-bar .filter-option{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background:var(--background);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.filter-bar .filter-option:hover{background:var(--background-hover);border-color:var(--primary-color)}.filter-bar .filter-option.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.filter-bar .filter-option.active:hover{background:var(--primary-color-dark)}.filter-bar .filter-option i{font-size:.75rem}@media (max-width: 768px){.filter-bar{flex-direction:column;align-items:flex-start;gap:.75rem}.filter-bar .filter-label{width:100%}.filter-bar .filter-options{width:100%;justify-content:flex-start}}.notification-container{position:fixed;top:70px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.notification-container .notification{background:white;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:16px;display:flex;align-items:flex-start;gap:12px;border-left:4px solid;pointer-events:auto;transform:translate(100%);opacity:0;animation:slideIn .3s ease-out forwards;max-width:100%;word-wrap:break-word}.notification-container .notification.notification-success{border-left-color:#28a745}.notification-container .notification.notification-success .notification-content i{color:#28a745}.notification-container .notification.notification-error{border-left-color:#dc3545}.notification-container .notification.notification-error .notification-content i{color:#dc3545}.notification-container .notification.notification-warning{border-left-color:#ffc107}.notification-container .notification.notification-warning .notification-content i{color:#ffc107}.notification-container .notification.notification-info{border-left-color:#17a2b8}.notification-container .notification.notification-info .notification-content i{color:#17a2b8}.notification-container .notification .notification-content{display:flex;align-items:flex-start;gap:12px;flex:1}.notification-container .notification .notification-content i{font-size:18px;margin-top:2px;flex-shrink:0}.notification-container .notification .notification-content .notification-text{flex:1}.notification-container .notification .notification-content .notification-text .notification-title{font-weight:600;font-size:14px;color:#333;margin-bottom:4px;line-height:1.4}.notification-container .notification .notification-content .notification-text .notification-message{font-size:13px;color:#666;line-height:1.4}.notification-container .notification .notification-close{background:none;border:none;color:#999;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.notification-container .notification .notification-close:hover{background:#f5f5f5;color:#666}.notification-container .notification .notification-close i{font-size:12px}.notification-container .notification:hover{box-shadow:0 6px 16px #0003;transform:translateY(-2px);transition:all .2s ease}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@media (max-width: 768px){.notification-container{left:20px;right:20px;top:60px;max-width:none}.notification-container .notification{padding:14px}.notification-container .notification .notification-content{gap:10px}.notification-container .notification .notification-content i{font-size:16px}.notification-container .notification .notification-content .notification-text .notification-title{font-size:13px}.notification-container .notification .notification-content .notification-text .notification-message{font-size:12px}}@media (prefers-color-scheme: dark){.notification-container .notification{background:#2d3748;color:#e2e8f0}.notification-container .notification .notification-content .notification-text .notification-title{color:#e2e8f0}.notification-container .notification .notification-content .notification-text .notification-message,.notification-container .notification .notification-close{color:#a0aec0}.notification-container .notification .notification-close:hover{background:#4a5568;color:#e2e8f0}}@media (prefers-contrast: high){.notification-container .notification{border-width:2px;box-shadow:0 0 0 1px #000}.notification-container .notification.notification-success{border-left-color:#0f5132}.notification-container .notification.notification-error{border-left-color:#721c24}.notification-container .notification.notification-warning{border-left-color:#856404}.notification-container .notification.notification-info{border-left-color:#0c5460}}@media (prefers-reduced-motion: reduce){.notification-container .notification{animation:none;transform:none;opacity:1}.notification-container .notification:hover{transform:none}}.lazy-image-placeholder,.lazy-image-loading,.lazy-image-error{position:relative;overflow:hidden;border-radius:4px}.lazy-image-placeholder{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.lazy-image-loading{background-color:#f8f8f8}.lazy-image-error{background-color:#fafafa;border:1px dashed #ddd}.lazy-image-error .error-content{display:flex;align-items:center;flex-direction:column;gap:8px;color:#999;font-size:.9rem}.lazy-image{display:block;width:100%;height:100%}.lazy-image.loading{opacity:0}.lazy-image.loaded{opacity:1;transition:opacity .3s ease-in-out}.loading-spinner{display:flex;align-items:center;justify-content:center}.loading-spinner i{font-size:1.5rem;color:#666}.placeholder-image{max-width:100%;max-height:100%;object-fit:cover;opacity:.7}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.file-item .lazy-image-placeholder,.file-item .lazy-image-loading,.file-item .lazy-image-error{width:100%;min-height:200px}.file-item .lazy-image{width:100%;object-fit:cover}.video-preview.lazy-image{position:relative}.settings-layout{max-width:1000px;margin:0 auto;padding:2rem}@media (max-width: 768px){.settings-layout{padding:1rem}}.settings-section{background:white;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;overflow:hidden}.settings-section .section-header{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);padding:1.5rem 2rem;border-bottom:1px solid #dee2e6}.settings-section .section-header h2{margin:0 0 .5rem;font-size:1.4rem;color:#495057;display:flex;align-items:center;gap:.75rem}.settings-section .section-header h2 i{color:#6c757d;width:20px;text-align:center}.settings-section .section-header p{margin:0;color:#6c757d;font-size:.95rem}.settings-section .settings-group{padding:1.5rem 2rem}.setting-item{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 0;border-bottom:1px solid #f1f3f4;gap:2rem}.setting-item:last-child{border-bottom:none}.setting-item.coming-soon{opacity:.6}.setting-item.coming-soon .setting-info h3,.setting-item.coming-soon .setting-info p{color:#6c757d}@media (max-width: 768px){.setting-item{flex-direction:column;gap:1rem;align-items:stretch}}.setting-info{flex:1;min-width:0}.setting-info h3{margin:0 0 .5rem;font-size:1.1rem;color:#212529;font-weight:600}.setting-info p{margin:0 0 1rem;color:#6c757d;font-size:.9rem;line-height:1.5}.setting-info .setting-details ul{margin:0;padding-left:1.5rem;color:#6c757d;font-size:.85rem}.setting-info .setting-details ul li{margin:.25rem 0;line-height:1.4}.setting-control{display:flex;align-items:center;gap:1rem;flex-shrink:0}@media (max-width: 768px){.setting-control{justify-content:space-between}}.toggle-switch{position:relative;width:60px;height:34px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch input:checked+.toggle-slider{background-color:#28a745}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #28a74540}.toggle-switch input:disabled+.toggle-slider{opacity:.6;cursor:not-allowed}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:all .3s ease;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:all .3s ease;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-slider:hover{box-shadow:0 0 0 3px #6c757d26}.toggle-label{font-size:.9rem;color:#495057;font-weight:500;min-width:70px;text-align:left}.coming-soon-badge{background:linear-gradient(135deg,#ffc107 0%,#fd7e14 100%);color:#fff;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #ffc1074d}.settings-footer{background:#f8f9fa;padding:1.5rem 2rem;border-top:1px solid #dee2e6;margin-top:2rem;border-radius:12px}.settings-footer .footer-info{text-align:center}.settings-footer .footer-info p{margin:.5rem 0;color:#6c757d;font-size:.9rem}.settings-footer .footer-info p.last-updated{font-size:.8rem;opacity:.8}.settings-footer .footer-info p i{margin-right:.5rem;color:#17a2b8}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-state i,.error-state i{font-size:3rem;margin-bottom:1rem}.loading-state span,.error-state span{font-size:1.1rem;color:#6c757d}.loading-state i{color:#007bff}.error-state i{color:#dc3545}.error-state .error-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.error-state .error-content span{color:#dc3545;font-weight:500}@media (min-width: 1400px){.settings-layout{max-width:1200px}.settings-layout .setting-item{padding:2rem 0}.settings-layout .settings-section .section-header{padding:2rem 2.5rem}.settings-layout .settings-section .section-header h2{font-size:1.5rem}.settings-layout .settings-section .settings-group{padding:2rem 2.5rem}}@media (min-width: 1920px){.settings-layout{max-width:1400px}.settings-layout .settings-section .section-header,.settings-layout .settings-section .settings-group{padding:2.5rem 3rem}}.setting-item.admin-locked{background:linear-gradient(135deg,#fff5f5 0%,#fed7d7 100%);border:1px solid #fc8181;border-radius:8px;padding:1.5rem;margin:1rem 0}.setting-item.admin-locked .setting-info h3{color:#c53030;display:flex;align-items:center;gap:.5rem}.setting-item.admin-locked .setting-info h3 i{color:#e53e3e}.setting-item.admin-locked .setting-info p{color:#742a2a;font-weight:500;display:flex;align-items:center;gap:.5rem}.setting-item.admin-locked .setting-info p i{color:#e53e3e;font-size:.9rem}.setting-item.admin-locked .setting-control .locked-badge{background:linear-gradient(135deg,#e53e3e 0%,#c53030 100%);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #e53e3e4d}@media (prefers-color-scheme: dark){.settings-section{background:#2d3748}.settings-section .section-header{background:linear-gradient(135deg,#4a5568 0%,#2d3748 100%);border-bottom-color:#4a5568}.settings-section .section-header h2,.settings-section .section-header p{color:#e2e8f0}.settings-section .setting-item{border-bottom-color:#4a5568}.settings-section .setting-item .setting-info h3{color:#f7fafc}.settings-section .setting-item .setting-info p{color:#cbd5e0}.settings-section .setting-item.admin-locked{background:linear-gradient(135deg,#553c3c 0%,#742a2a 100%);border-color:#c53030}.settings-section .setting-item.admin-locked .setting-info h3{color:#fc8181}.settings-section .setting-item.admin-locked .setting-info p{color:#fed7d7}.settings-footer{background:#4a5568;border-top-color:#718096}.settings-footer .footer-info p{color:#cbd5e0}}.file-grid-container{display:flex;flex-direction:column;gap:1.5rem;width:100%}.file-grid-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.file-grid-header .header-content{flex:1}.file-grid-header .header-content h1{margin:0 0 .5rem;color:var(--text-primary);font-size:1.8rem;font-weight:600}.file-grid-header .header-content p{margin:0;color:var(--text-secondary);font-size:.95rem;line-height:1.4}.file-grid-header .header-content p .file-count{color:var(--text-tertiary);font-size:.9rem}.file-grid-header .header-actions{flex-shrink:0;display:flex;gap:.75rem;align-items:center}.file-grid-header .header-actions .selection-info{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end;background:var(--bg-secondary);padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border-light)}.file-grid-header .header-actions .selection-info span{font-size:.9rem;color:var(--text-secondary);font-weight:500}.file-grid-header .header-actions .selection-info .selection-actions{display:flex;gap:.5rem}.file-grid-header .header-actions .selection-info .selection-actions .btn{padding:.4rem .8rem;font-size:.85rem;border-radius:6px;border:none;cursor:pointer;font-weight:500;transition:all .2s ease}.file-grid-header .header-actions .selection-info .selection-actions .btn.btn-primary{background:var(--accent-blue);color:#fff}.file-grid-header .header-actions .selection-info .selection-actions .btn.btn-primary:hover{background:var(--accent-blue-dark)}.file-grid-header .header-actions .selection-info .selection-actions .btn.btn-primary i{margin-right:.4rem}.file-grid-header .header-actions .selection-info .selection-actions .btn.btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-light)}.file-grid-header .header-actions .selection-info .selection-actions .btn.btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.file-grid{display:grid;grid-template-columns:repeat(5,minmax(280px,1fr));gap:1.25rem;margin:1.5rem 0}@media (min-width: 1920px){.file-grid{grid-template-columns:repeat(5,minmax(320px,1fr));gap:1.5rem}}@media (min-width: 2560px){.file-grid{grid-template-columns:repeat(5,minmax(360px,1fr));gap:2rem}}@media (min-aspect-ratio: 21/9){.file-grid{grid-template-columns:repeat(5,minmax(300px,1fr));gap:1.75rem}}.file-grid .file-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:12px;overflow:hidden;transition:all .3s ease;cursor:pointer;position:relative}@media (min-width: 1920px){.file-grid .file-card:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #00000026}}.file-grid .file-card:hover{border-color:var(--accent-blue);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.file-grid .file-card.selected{border-color:var(--accent-blue);box-shadow:0 0 0 2px #4a90e233;background:var(--accent-blue-light)}.file-grid .file-card.selected .file-info{background:rgba(74,144,226,.1)}.file-grid .file-card .file-info{padding:.75rem;background:var(--bg-tertiary);border-top:1px solid var(--border-light)}.file-grid .file-card .file-info .file-meta{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-secondary)}.file-grid .file-card .file-info .file-meta span:first-child{font-weight:500;color:var(--text-primary)}.file-grid .file-card .file-info .file-meta span:last-child{font-size:.8rem;color:var(--text-tertiary)}.file-grid .file-card .file-info .file-meta .delete-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;font-size:.9rem}.file-grid .file-card .file-info .file-meta .delete-btn:hover{color:var(--accent-red);background:var(--accent-red-light)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:var(--text-secondary);background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-light);margin:2rem 0}.empty-state i{font-size:3rem;color:var(--text-tertiary);margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;color:var(--text-primary);font-size:1.2rem;font-weight:600}.empty-state p{margin:0;font-size:.95rem;line-height:1.4}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:var(--text-secondary)}.loading i{font-size:2rem;color:var(--accent-blue);margin-bottom:1rem;animation:spin 1s linear infinite}.loading p{margin:0;font-size:.95rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.file-grid-header{flex-direction:column;gap:1rem}.file-grid-header .header-actions{width:100%}.file-grid-header .header-actions .selection-info{width:100%;align-items:stretch}.file-grid-header .header-actions .selection-info .selection-actions{justify-content:center}.file-grid{grid-template-columns:repeat(5,minmax(240px,1fr));gap:1rem}}@media (max-width: 768px) and (orientation: landscape){.file-grid{grid-template-columns:repeat(5,minmax(220px,1fr));gap:.75rem}}@media (max-width: 480px){.file-grid{grid-template-columns:1fr;gap:.75rem}.file-grid-header .header-content h1{font-size:1.5rem}}.video-player-page{max-width:1200px;margin:0 auto;padding:20px}.video-player-page .page-header{text-align:center;margin-bottom:30px}.video-player-page .page-header h1{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:10px;background:linear-gradient(135deg,var(--primary-color),#6c5ce7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.video-player-page .page-header p{color:#666;font-size:1.1rem;margin:0}.dash-video-player{max-width:1200px;margin:0 auto;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.dash-video-player .video-container{position:relative;width:100%;max-width:800px;margin:0 auto 20px;background-color:#000;border-radius:8px;overflow:hidden;box-shadow:0 4px 15px #0003}.dash-video-player .video-container .video-element{width:100%;height:auto;display:block}.dash-video-player .video-controls{display:flex;flex-direction:column;gap:20px}.dash-video-player .video-controls .control-group{display:flex;flex-direction:column;gap:8px}.dash-video-player .video-controls .control-group label{font-weight:600;color:#333;font-size:14px}.dash-video-player .video-controls .control-group .input-with-button{display:flex;gap:10px;align-items:center}.dash-video-player .video-controls .control-group .input-with-button .manifest-input{flex:1;padding:10px 12px;border:2px solid #e1e5e9;border-radius:6px;font-size:14px;transition:all .2s ease}.dash-video-player .video-controls .control-group .input-with-button .manifest-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf71a}.dash-video-player .video-controls .control-group .input-with-button .load-button{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;white-space:nowrap}.dash-video-player .video-controls .control-group .input-with-button .load-button:hover:not(:disabled){background-color:var(--primary-color-dark);transform:translateY(-1px)}.dash-video-player .video-controls .control-group .input-with-button .load-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.dash-video-player .video-controls .control-group .subtitle-select,.dash-video-player .video-controls .control-group .vtt-input{padding:10px 12px;border:2px solid #e1e5e9;border-radius:6px;font-size:14px;transition:all .2s ease}.dash-video-player .video-controls .control-group .subtitle-select:focus,.dash-video-player .video-controls .control-group .vtt-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6cf71a}.dash-video-player .video-controls .control-group .toggle-button,.dash-video-player .video-controls .control-group .add-button{background-color:var(--secondary-color);color:var(--primary-color);border:2px solid var(--primary-color);padding:10px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;margin-right:10px}.dash-video-player .video-controls .control-group .toggle-button:hover,.dash-video-player .video-controls .control-group .add-button:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #4a6cf733}.dash-video-player .video-controls .control-group .toggle-button:last-child,.dash-video-player .video-controls .control-group .add-button:last-child{margin-right:0}.dash-video-player .video-controls .subtitle-controls{background-color:#f8f9fa;padding:20px;border-radius:8px;border-left:4px solid var(--primary-color)}.dash-video-player .video-controls .subtitle-controls h3{margin:0 0 15px;color:#333;font-size:18px;font-weight:600}.dash-video-player .video-controls .subtitle-controls .control-group{margin-bottom:15px}.dash-video-player .video-controls .subtitle-controls .control-group:last-child{margin-bottom:0}.dash-video-player .video-controls .info-panel{background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;padding:16px;transition:all .2s ease}.dash-video-player .video-controls .info-panel.error{background-color:#ffebee;border-left-color:#f44336}.dash-video-player .video-controls .info-panel.error .info-message{color:#c62828}.dash-video-player .video-controls .info-panel .info-message{color:#1565c0;margin-bottom:12px;font-size:14px;font-weight:500}.dash-video-player .video-controls .info-panel .instructions{color:#555;font-size:14px}.dash-video-player .video-controls .info-panel .instructions p{margin:0 0 8px;font-weight:600}.dash-video-player .video-controls .info-panel .instructions ul{margin:0;padding-left:20px}.dash-video-player .video-controls .info-panel .instructions ul li{margin-bottom:4px;line-height:1.5}@media (max-width: 768px){.dash-video-player{padding:15px;margin:10px}.dash-video-player .video-container{margin-bottom:15px}.dash-video-player .video-controls{gap:15px}.dash-video-player .video-controls .control-group .input-with-button{flex-direction:column;align-items:stretch;gap:8px}.dash-video-player .video-controls .control-group .input-with-button .load-button{width:100%}.dash-video-player .video-controls .control-group .toggle-button,.dash-video-player .video-controls .control-group .add-button{width:100%;margin-right:0;margin-bottom:8px}.dash-video-player .video-controls .control-group .toggle-button:last-child,.dash-video-player .video-controls .control-group .add-button:last-child{margin-bottom:0}.dash-video-player .video-controls .subtitle-controls{padding:15px}.dash-video-player .video-controls .subtitle-controls h3{font-size:16px}}@media (min-width: 1400px){.dash-video-player{max-width:1400px;padding:30px}.dash-video-player .video-container{max-width:1000px}.dash-video-player .video-controls .control-group .input-with-button{max-width:600px}.dash-video-player .video-controls .subtitle-controls{padding:25px}}@media (prefers-color-scheme: dark){.dash-video-player{background-color:#1a1a1a;color:#e0e0e0}.dash-video-player .video-controls .control-group label{color:#e0e0e0}.dash-video-player .video-controls .control-group .manifest-input,.dash-video-player .video-controls .control-group .subtitle-select,.dash-video-player .video-controls .control-group .vtt-input{background-color:#2d2d2d;border-color:#404040;color:#e0e0e0}.dash-video-player .video-controls .control-group .manifest-input:focus,.dash-video-player .video-controls .control-group .subtitle-select:focus,.dash-video-player .video-controls .control-group .vtt-input:focus{border-color:var(--primary-color)}.dash-video-player .video-controls .subtitle-controls{background-color:#2d2d2d}.dash-video-player .video-controls .subtitle-controls h3{color:#e0e0e0}.dash-video-player .video-controls .info-panel{background-color:#1e3a5f;border-left-color:#64b5f6}.dash-video-player .video-controls .info-panel.error{background-color:#4a1e1e;border-left-color:#ef5350}.dash-video-player .video-controls .info-panel .instructions{color:#b0b0b0}.dash-video-player .video-controls .info-panel .instructions p{color:#e0e0e0}}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.dash-video-player .load-button:disabled{animation:pulse 1.5s ease-in-out infinite}.dash-video-player .toggle-button:focus,.dash-video-player .add-button:focus,.dash-video-player .load-button:focus{outline:2px solid var(--primary-color);outline-offset:2px}.dash-video-player .manifest-input:focus,.dash-video-player .subtitle-select:focus,.dash-video-player .vtt-input:focus{box-shadow:0 0 0 3px #4a6cf733}.vanilla-video-player{width:100%;height:auto;max-width:100%;display:block;background:#000;border-radius:4px;object-fit:contain}.vanilla-video-player::-webkit-media-controls-panel{background:linear-gradient(transparent,rgba(0,0,0,.8))}.vanilla-video-player::-webkit-media-controls-play-button,.vanilla-video-player::-webkit-media-controls-pause-button{background:rgba(255,255,255,.9);border-radius:50%}@media (min-width: 1200px){.vanilla-video-player{max-height:80vh}}@media (min-width: 1600px){.vanilla-video-player{max-height:85vh}}@media (min-width: 2000px){.vanilla-video-player{max-height:90vh}}.video-error-notice{padding:10px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;margin:10px 0;font-size:14px;color:#856404;box-shadow:0 2px 4px #0000001a}.video-error-notice strong{font-weight:600}@media (max-width: 768px){.video-error-notice{padding:8px;font-size:13px;margin:8px 0}}.vanilla-video-container{position:relative;width:100%;margin:0 auto;display:flex;flex-direction:column;align-items:center}@media (min-width: 1200px){.vanilla-video-container{max-width:90vw}}@media (min-width: 1600px){.vanilla-video-container{max-width:85vw}}@media (min-width: 2000px){.vanilla-video-container{max-width:80vw}}.vanilla-video-loading{display:flex;justify-content:center;align-items:center;min-height:200px;background:#f8f9fa;border-radius:4px;color:#6c757d}.vanilla-video-loading:after{content:"Loading video...";animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.vanilla-video-player:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-color-scheme: dark){.video-error-notice{background:#332701;border-color:#664d03;color:#ffda6a}.vanilla-video-loading{background:#212529;color:#adb5bd}}.file-label-manager{background:var(--secondary-color);border:1px solid var(--border-color);border-radius:12px;padding:20px;margin:16px 0;box-shadow:0 2px 8px #0000001a}.file-label-manager .label-manager-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.file-label-manager .label-manager-header .label-manager-title{margin:0;font-size:18px;font-weight:600;color:var(--text-color);display:flex;align-items:center;gap:8px}.file-label-manager .label-manager-header .label-manager-title i{color:var(--primary-color);font-size:16px}.file-label-manager .label-manager-header .btn{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;border-radius:8px;transition:all .2s ease}.file-label-manager .label-manager-header .btn i{font-size:12px}.file-label-manager .label-manager-header .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4a6cf74d}.file-label-manager .label-manager-header .btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.file-label-manager .current-labels .no-labels{text-align:center;padding:24px 0;color:var(--light-text)}.file-label-manager .current-labels .no-labels .no-labels-text{margin:0 0 16px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px}.file-label-manager .current-labels .no-labels .no-labels-text i{color:var(--border-color);font-size:18px}.file-label-manager .current-labels .no-labels .btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;font-size:14px;border-radius:8px;transition:all .2s ease}.file-label-manager .current-labels .no-labels .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.file-label-manager .current-labels .labels-grid{display:flex;flex-wrap:wrap;gap:8px;min-height:40px}.file-label-manager .current-labels .labels-grid .label-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:white;border:2px solid var(--border-color);border-radius:20px;font-size:13px;font-weight:500;color:var(--text-color);transition:all .2s ease;position:relative;box-shadow:0 2px 4px #0000000d}.file-label-manager .current-labels .labels-grid .label-chip:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.file-label-manager .current-labels .labels-grid .label-chip.mature{border-color:#ff6b6b;background:linear-gradient(135deg,#fff 0%,#fff5f5 100%);box-shadow:0 0 8px #ff6b6b33;animation:maturePulse 3s ease-in-out infinite}.file-label-manager .current-labels .labels-grid .label-chip.mature .label-name{color:#d63031;font-weight:600}.file-label-manager .current-labels .labels-grid .label-chip .label-color{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:1px solid rgba(0,0,0,.1)}.file-label-manager .current-labels .labels-grid .label-chip .label-name{color:var(--text-color);font-weight:500;white-space:nowrap}.file-label-manager .current-labels .labels-grid .label-chip .label-remove-btn{background:none;border:none;color:var(--light-text);cursor:pointer;padding:2px;width:16px;height:16px;border-radius:50%;font-size:10px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;opacity:.7;margin-left:4px}.file-label-manager .current-labels .labels-grid .label-chip .label-remove-btn:hover{background-color:#dc35451a;color:var(--error-color);opacity:1;transform:scale(1.1)}.file-label-manager .current-labels .labels-grid .label-chip .label-remove-btn:disabled{cursor:not-allowed;opacity:.5}.file-label-manager .current-labels .labels-grid .label-chip .label-remove-btn i{font-size:8px}@keyframes maturePulse{0%,to{box-shadow:0 0 8px #ff6b6b33}50%{box-shadow:0 0 12px #ff6b6b66}}@media (max-width: 768px){.file-label-manager{padding:16px;margin:12px 0}.file-label-manager .label-manager-header{flex-direction:column;gap:12px;align-items:stretch}.file-label-manager .label-manager-header .label-manager-title{font-size:16px;justify-content:center}.file-label-manager .label-manager-header .btn{justify-content:center;padding:12px 20px;font-size:16px}.file-label-manager .current-labels .labels-grid{gap:6px}.file-label-manager .current-labels .labels-grid .label-chip{padding:6px 10px;font-size:12px;border-radius:16px}.file-label-manager .current-labels .labels-grid .label-chip .label-color{width:10px;height:10px}.file-label-manager .current-labels .labels-grid .label-chip .label-remove-btn{width:14px;height:14px;margin-left:2px}}@media (max-width: 480px){.file-label-manager .current-labels .labels-grid .label-chip{padding:5px 8px;font-size:11px;gap:4px}.file-label-manager .current-labels .labels-grid .label-chip .label-color{width:8px;height:8px}}@media (prefers-color-scheme: dark){.file-label-manager{background:var(--dark-secondary-color, #2c2c2c);border-color:var(--dark-border-color, #444)}.file-label-manager .current-labels .labels-grid .label-chip{background:var(--dark-background-color, #333);color:var(--dark-text-color, #e0e0e0)}.file-label-manager .current-labels .labels-grid .label-chip.mature{background:linear-gradient(135deg,#333 0%,#3d2f2f 100%)}}.pdf-viewer{display:flex;flex-direction:column;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.pdf-viewer.error{padding:20px;text-align:center}.pdf-viewer.error .error-message{color:#e74c3c}.pdf-viewer.error .error-message i{font-size:24px;margin-bottom:10px}.pdf-viewer.error .error-message p{margin:0;font-size:16px}.pdf-controls{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:#f8f9fa;border-bottom:1px solid #e9ecef;gap:15px;flex-wrap:wrap}@media (max-width: 768px){.pdf-controls{flex-direction:column;gap:10px}}.page-controls{display:flex;align-items:center;gap:8px}.page-controls .page-info{display:flex;align-items:center;gap:5px;margin:0 10px}.page-controls .page-info .page-input{width:60px;padding:4px 8px;border:1px solid #ced4da;border-radius:4px;text-align:center;font-size:14px}.page-controls .page-info .page-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.page-controls .page-info .page-total{color:#6c757d;font-size:14px}.zoom-controls{display:flex;align-items:center;gap:8px}.zoom-controls .zoom-level{min-width:50px;text-align:center;font-size:14px;color:#6c757d}.pdf-content{flex:1;display:flex;justify-content:center;padding:20px;background:#f8f9fa;overflow:auto;position:relative}.pdf-content .react-pdf__Document{display:flex;flex-direction:column;align-items:center}.pdf-content .react-pdf__Page{margin-bottom:20px;box-shadow:0 4px 8px #0000001a;border-radius:4px;overflow:hidden;background:white}.pdf-content .react-pdf__Page canvas{display:block;max-width:100%;height:auto}.pdf-metadata{padding:15px;border-top:1px solid #e9ecef;background:#f8f9fa}.pdf-metadata h4{margin:0 0 10px;color:#495057;font-size:16px}.pdf-metadata .metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px}.pdf-metadata .metadata-item{display:flex;gap:8px}.pdf-metadata .metadata-item .label{font-weight:600;color:#6c757d;min-width:70px}.pdf-metadata .metadata-item .value{color:#495057;flex:1}.pdf-preview{display:flex;flex-direction:column;background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden;transition:box-shadow .2s ease}.pdf-preview:hover{box-shadow:0 4px 12px #00000026}.pdf-preview.error .error-message{padding:15px;text-align:center;color:#e74c3c;background:#fdf2f2}.pdf-preview.error .error-message i{margin-right:5px}.pdf-preview-header{display:flex;align-items:center;padding:12px 15px;border-bottom:1px solid #e9ecef;gap:10px}.pdf-preview-header i.fa-file-pdf{font-size:18px;color:#e74c3c}.pdf-preview-header .pdf-info{flex:1;min-width:0}.pdf-preview-header .pdf-info .pdf-name{font-weight:600;color:#495057;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.pdf-preview-header .pdf-info .pdf-details{display:flex;gap:10px;font-size:12px;color:#6c757d}.pdf-preview-header .pdf-info .pdf-details .pdf-size:before,.pdf-preview-header .pdf-info .pdf-details .pdf-pages:before{content:"•";margin-right:5px}.pdf-preview-header .pdf-info .pdf-details .pdf-size:first-child:before,.pdf-preview-header .pdf-info .pdf-details .pdf-pages:first-child:before{display:none}.pdf-preview-content{position:relative;display:flex;justify-content:center;align-items:center;min-height:200px;background:#f8f9fa}.pdf-preview-content .loading-indicator{display:flex;flex-direction:column;align-items:center;gap:8px;color:#6c757d}.pdf-preview-content .loading-indicator i{font-size:24px}.pdf-preview-content .loading-indicator span{font-size:14px}.pdf-thumbnail{position:relative;display:flex;justify-content:center;align-items:center}.pdf-thumbnail .react-pdf__Document{position:relative}.pdf-thumbnail .react-pdf__Page{border:1px solid #dee2e6;border-radius:4px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.pdf-thumbnail .react-pdf__Page canvas{display:block;max-width:100%;height:auto}.pdf-thumbnail .page-indicator{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;display:flex;align-items:center;gap:4px}.pdf-thumbnail .page-indicator i{font-size:10px}.pdf-metadata-preview{padding:12px 15px;background:#f8f9fa;border-top:1px solid #e9ecef}.pdf-metadata-preview .metadata-item{display:flex;margin-bottom:6px;font-size:12px}.pdf-metadata-preview .metadata-item:last-child{margin-bottom:0}.pdf-metadata-preview .metadata-item .label{font-weight:600;color:#6c757d;min-width:60px;margin-right:8px}.pdf-metadata-preview .metadata-item .value{color:#495057;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-metadata-preview .metadata-item.text-preview .value{white-space:normal;line-height:1.4;max-height:40px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#6c757d}.loading-indicator i{font-size:32px;margin-bottom:10px}.loading-indicator p,.loading-indicator span{margin:0;font-size:14px}.error-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#e74c3c}.error-message i{font-size:32px;margin-bottom:10px}.error-message p,.error-message span{margin:0;font-size:14px}.no-data-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#6c757d}.no-data-message i{font-size:32px;margin-bottom:10px}.no-data-message p{margin:0;font-size:14px}.text-pdf{color:#e74c3c!important}.text-success{color:#28a745!important}.text-error{color:#dc3545!important}.text-muted{color:#6c757d!important}@media (max-width: 768px){.pdf-viewer .pdf-controls{padding:8px 10px}.pdf-viewer .pdf-controls .page-controls,.pdf-viewer .pdf-controls .zoom-controls{gap:6px}.pdf-viewer .pdf-content,.pdf-viewer .pdf-metadata{padding:10px}.pdf-viewer .pdf-metadata .metadata-grid{grid-template-columns:1fr}.pdf-preview .pdf-preview-header,.pdf-preview .pdf-metadata-preview{padding:10px 12px}}@media (max-width: 480px){.pdf-controls .page-controls .page-info{margin:0 5px}.pdf-controls .page-controls .page-info .page-input{width:50px}.pdf-controls .zoom-controls .zoom-level{min-width:40px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx){.react-pdf__Page canvas{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}.home-layout{display:grid;grid-template-columns:300px 1fr;gap:30px;margin-top:20px;align-items:start}.navigation-sidebar{position:sticky;top:20px}.main-content{min-width:0}@media (max-width: 768px){.home-layout{grid-template-columns:1fr;gap:0}.navigation-sidebar{position:static;margin-bottom:20px}}.file-card{background-color:#fff;border-radius:8px;box-shadow:0 3px 10px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;cursor:pointer}.file-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0003}.file-card.selected{border:2px solid var(--primary-color);box-shadow:0 0 0 2px #4a6cf733;transform:translateY(-2px)}.file-card.selected:hover{transform:translateY(-3px)}.file-preview{background-color:var(--secondary-color);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.file-preview img{width:100%;height:100%;object-fit:contain}.file-preview i{font-size:50px;color:var(--primary-color)}.video-preview{width:100%;height:100%;object-fit:cover}.video-previews-container{position:absolute;top:0;left:0;width:100%;height:100%}.video-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;pointer-events:none;transition:opacity .2s ease}.video-icon i{font-size:60px;color:#fffc;text-shadow:0 0 10px rgba(0,0,0,.5)}.file-card-hovered .video-icon{opacity:0}.file-info{padding:15px;position:relative}.delete-btn{background-color:transparent;border:none;color:var(--light-text);font-size:14px;cursor:pointer;padding:0 8px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;opacity:.7;margin:0 5px}.delete-btn:hover{color:var(--error-color);opacity:1;background-color:#dc35451a}.file-card:hover .delete-btn{opacity:.9}.file-name{font-weight:500;margin-bottom:5px;word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.file-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--light-text)}.action-buttons{display:flex;gap:15px;margin-top:20px;justify-content:center}.upload-link,.categorize-link{display:inline-block}.categorize-link{background-color:var(--secondary-color);color:var(--primary-color);border:1px solid var(--primary-color);padding:12px 25px;border-radius:5px;cursor:pointer;font-size:16px;font-weight:500;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.categorize-link:hover{background-color:var(--primary-color);color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #4a6cf74d}.categorize-link i{margin-right:8px}.empty-state{text-align:center;padding:50px 0}.empty-state i{font-size:70px;color:var(--border-color);margin-bottom:20px}.empty-state h3{margin-bottom:10px;color:var(--light-text)}.loading{text-align:center;padding:50px 0}.loading i{font-size:50px;color:var(--primary-color);animation:spin 1s linear infinite}.selection-info{background:var(--secondary-color);border-radius:8px;padding:16px;margin-top:16px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--primary-color)}.selection-info span{color:var(--primary-color);font-weight:600}.selection-actions{display:flex;gap:12px}.selection-actions .btn{padding:8px 16px;font-size:14px}.file-labels{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.file-label{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500;color:#fff;position:relative;transition:all .2s ease}.file-label.mature{border:2px solid #ff6b6b;box-shadow:0 0 8px #ff6b6b4d;animation:maturePulse 2s ease-in-out infinite}@keyframes maturePulse{0%,to{box-shadow:0 0 8px #ff6b6b4d}50%{box-shadow:0 0 12px #ff6b6b80}}.file-label .mature-icon{font-size:9px;color:#ffeb3b;text-shadow:0 1px 2px rgba(0,0,0,.5)}.remove-label-btn{background:none;border:none;color:#fff;cursor:pointer;margin-left:4px;padding:0;width:14px;height:14px;border-radius:50%;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s ease;opacity:.8}.remove-label-btn:hover{background-color:#fff3;opacity:1;transform:scale(1.1)}.empty-labels{font-size:11px;color:var(--light-text);font-style:italic}@media (max-width: 768px){.selection-info{flex-direction:column;gap:12px;align-items:stretch}.selection-actions{justify-content:center}.selection-actions .btn{flex:1}.file-labels{gap:4px}.file-label{font-size:10px;padding:3px 6px}.file-label .mature-icon{font-size:8px}}
