.recordings-list{width:100%}.recordings-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.recordings-header h3{color:#1a1a1a;font-size:24px;font-weight:600;margin:0}.recordings-count{background:#f5f5f5;border-radius:12px;color:#666;font-size:14px;padding:4px 12px}.recordings-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:24px}.recording-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;overflow:hidden;transition:transform .2s,box-shadow .2s}.recording-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.recording-thumbnail{background:#000;overflow:hidden;padding-top:56.25%;position:relative;width:100%}.recording-thumbnail img{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.recording-thumbnail-placeholder{background:linear-gradient(135deg,#1a1a1a,#333);color:#ffffff4d;height:100%;left:0;top:0;width:100%}.recording-play-button,.recording-thumbnail-placeholder{align-items:center;display:flex;justify-content:center;position:absolute}.recording-play-button{background:#ffffffe6;border:none;border-radius:50%;cursor:pointer;height:64px;left:50%;top:50%;transform:translate(-50%,-50%);transition:all .2s;width:64px;z-index:2}.recording-play-button:hover{background:#fff;transform:translate(-50%,-50%) scale(1.1)}.recording-play-button svg{color:#1976d2;margin-left:4px}.recording-duration{background:#000c;border-radius:4px;bottom:8px;color:#fff;font-family:monospace;font-size:12px;font-weight:500;padding:4px 8px;position:absolute;right:8px;z-index:1}.recording-info{padding:16px}.recording-title{color:#1a1a1a;font-size:16px;font-weight:600;line-height:1.4;margin:0 0 8px}.recording-description,.recording-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.recording-description{color:#666;font-size:14px;line-height:1.5;margin:0 0 12px}.recording-meta{align-items:center;color:#666;display:flex;flex-wrap:wrap;font-size:13px;gap:12px;margin-bottom:12px}.recording-date,.recording-size{align-items:center;display:flex;gap:4px}.recording-status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:500;padding:4px 10px;white-space:nowrap}.status-pending{background:#fff3e0;color:#e65100}.status-processing{background:#e3f2fd;color:#1565c0}.status-completed{background:#e8f5e9;color:#2e7d32}.status-failed{background:#ffebee;color:#c62828}.recording-actions{align-items:center;display:flex;gap:8px}.recording-action-button{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:10px 16px;transition:all .2s}.recording-action-button:hover{background:#f5f5f5;border-color:#ccc}.recording-action-button.primary{background:#1976d2;border-color:#1976d2;color:#fff}.recording-action-button.primary:hover{background:#1565c0;border-color:#1565c0}.recording-error-text{color:#c62828;font-size:13px;font-weight:500}.recording-locked{align-items:center;color:#f57c00;display:flex;font-size:13px;font-weight:500;gap:6px}.recording-locked svg{flex-shrink:0}.recordings-list-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;text-align:center}.recordings-list-loading .spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#1976d2;height:48px;margin-bottom:16px;width:48px}.recordings-list-loading p{color:#666;font-size:16px;margin:0}.recordings-list-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;text-align:center}.recordings-list-error svg{color:#c62828;margin-bottom:16px}.recordings-list-error p{color:#666;font-size:16px;margin:0 0 24px;max-width:400px}.retry-button{background:#1976d2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:background .2s}.retry-button:hover{background:#1565c0}.recordings-list-empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;text-align:center}.recordings-list-empty svg{margin-bottom:24px}.recordings-list-empty h3{color:#1a1a1a;font-size:20px;font-weight:600;margin:0 0 8px}.recordings-list-empty p{color:#666;font-size:14px;margin:0;max-width:400px}@media (max-width:768px){.recordings-grid{gap:16px;grid-template-columns:1fr}.recordings-header{margin-bottom:16px}.recordings-header h3{font-size:20px}.recording-info{padding:12px}.recording-title{font-size:15px}.recording-description{font-size:13px}.recording-meta{font-size:12px;gap:8px}}@media (max-width:480px){.recordings-list-empty,.recordings-list-error,.recordings-list-loading{padding:48px 16px}}.video-player-container{background:#000;border-radius:8px;overflow:hidden;position:relative;width:100%}.video-player-wrapper{background:#000;padding-top:56.25%;position:relative}.video-player-wrapper>div{left:0;position:absolute;top:0}.video-controls{background:linear-gradient(0deg,#000c,#0000);color:#fff;padding:8px 12px}.video-controls-top{margin-bottom:8px}.video-progress-bar{-webkit-appearance:none;appearance:none;background:#ffffff4d;border-radius:2px;cursor:pointer;height:4px;outline:none;width:100%}.video-progress-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#1976d2;border-radius:50%;cursor:pointer;height:12px;width:12px}.video-progress-bar::-moz-range-thumb{background:#1976d2;border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}.video-controls-bottom{align-items:center;display:flex;gap:12px;justify-content:space-between}.video-controls-left{flex:1 1}.video-controls-left,.video-controls-right{align-items:center;display:flex;gap:8px}.video-control-button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:opacity .2s}.video-control-button:hover{opacity:.8}.video-volume-bar{-webkit-appearance:none;appearance:none;background:#ffffff4d;border-radius:2px;cursor:pointer;height:4px;outline:none;width:80px}.video-volume-bar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;cursor:pointer;height:10px;width:10px}.video-volume-bar::-moz-range-thumb{background:#fff;border:none;border-radius:50%;cursor:pointer;height:10px;width:10px}.video-time{font-family:monospace;font-size:14px;white-space:nowrap}.video-playback-rate{background:#ffffff1a;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:4px 8px}.video-playback-rate:hover{background:#fff3}@media (max-width:768px){.video-volume-bar{width:60px}.video-time{font-size:12px}.video-controls-bottom,.video-controls-left{gap:6px}}.video-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.video-modal-container{animation:slideUp .3s ease-out;background:#1a1a1a;border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.video-modal-header{align-items:flex-start;background:#2a2a2a;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:20px 24px}.video-modal-title{flex:1 1;padding-right:16px}.video-modal-title h2{color:#fff;font-size:20px;font-weight:600;line-height:1.3;margin:0 0 4px}.video-modal-description{color:#aaa;font-size:14px;line-height:1.5;margin:0}.video-modal-close-button{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:all .2s;width:40px}.video-modal-close-button:hover{background:#fff3;transform:rotate(90deg)}.video-modal-content{flex:1 1;overflow-y:auto;padding:24px}.video-modal-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;text-align:center}.video-modal-loading .spinner{animation:spin 1s linear infinite;border:4px solid #333;border-radius:50%;border-top-color:#1976d2;height:48px;margin-bottom:16px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.video-modal-loading p{color:#aaa;font-size:16px;margin:0}.video-modal-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;text-align:center}.video-modal-error svg{color:#c62828;margin-bottom:16px}.video-modal-error p{color:#aaa;font-size:16px;margin:0 0 24px;max-width:400px}.video-modal-error .retry-button{background:#1976d2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:background .2s}.video-modal-error .retry-button:hover{background:#1565c0}.video-modal-meta{align-items:center;background:#ffffff0d;border-radius:8px;display:flex;flex-wrap:wrap;gap:24px;margin-top:20px;padding:16px}.video-modal-meta-item{align-items:center;color:#aaa;display:flex;font-size:14px;gap:8px}.video-modal-meta-item svg{color:#666;flex-shrink:0}.video-modal-expiry-notice{align-items:center;background:#ff98001a;border:1px solid #ff98004d;border-radius:8px;color:#ff9800;display:flex;font-size:13px;gap:8px;margin-top:16px;padding:12px 16px}.video-modal-expiry-notice svg{flex-shrink:0}@media (max-width:768px){.video-modal-overlay{padding:0}.video-modal-container{border-radius:0;max-height:100vh;max-width:100%}.video-modal-header{padding:16px}.video-modal-title h2{font-size:18px}.video-modal-description{font-size:13px}.video-modal-content{padding:16px}.video-modal-meta{gap:16px}.video-modal-meta-item{font-size:13px}}@media (max-width:480px){.video-modal-meta{align-items:flex-start;flex-direction:column;gap:12px}.video-modal-expiry-notice{font-size:12px;padding:10px 12px}}@media (prefers-reduced-motion:reduce){.video-modal-container,.video-modal-overlay{animation:none}.video-modal-close-button:hover{transform:none}}
/*# sourceMappingURL=main.f1dce9cd.css.map*/