.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.login-card{background:white;padding:2rem;border-radius:12px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px;text-align:center}.login-card h1{color:#333;margin-bottom:.5rem;font-size:1.8rem}.login-card h2{color:#666;margin-bottom:2rem;font-weight:400;font-size:1.2rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{text-align:left}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:500}.form-group input{width:100%;padding:.75rem;border:2px solid #e1e5e9;border-radius:6px;font-size:1rem;transition:border-color .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#646cff}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-primary:hover:not(:disabled){background-color:#535bf2;transform:translateY(-1px)}.btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.error-message{background-color:#fee;color:#c33;padding:.75rem;border-radius:6px;margin-bottom:1rem;border:1px solid #fcc}.login-footer{margin-top:2rem;padding-top:1rem;border-top:1px solid #eee}.login-footer p{color:#666;font-size:.9rem;margin:0}.video-upload{max-width:600px;margin:0 auto;text-align:center}.video-upload h2{color:#333;margin-bottom:2rem}.upload-zone{border:2px dashed #ccc;border-radius:12px;padding:3rem 2rem;cursor:pointer;transition:all .3s ease;background-color:#fafafa}.upload-zone:hover{border-color:#646cff;background-color:#f8f9ff}.upload-zone.dragover{border-color:#646cff;background-color:#f0f2ff;transform:scale(1.02)}.upload-icon{color:#666;margin-bottom:1rem}.upload-zone h3{color:#333;margin-bottom:.5rem;font-size:1.3rem}.upload-zone p{color:#666;margin-bottom:.5rem}.upload-note{font-size:.9rem;color:#999!important;margin-top:1rem!important}.selected-file{margin-top:2rem;padding:1.5rem;border:1px solid #e1e5e9;border-radius:8px;background-color:#fff}.file-info{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.file-details{flex-grow:1;text-align:left}.file-details h4{margin:0 0 .25rem;color:#333;font-size:1rem}.file-details p{margin:0;color:#666;font-size:.9rem}.remove-file-btn{background:none;border:none;color:#999;cursor:pointer;padding:.5rem;border-radius:4px;transition:all .3s ease}.remove-file-btn:hover:not(:disabled){color:#dc3545;background-color:#ffe6e6}.remove-file-btn:disabled{cursor:not-allowed;opacity:.5}.cost-info{margin:1rem 0;padding:1rem;background-color:#f8f9fa;border-radius:6px;border:1px solid #e9ecef;text-align:left}.calculating-cost{text-align:center;color:#666;font-style:italic}.duration-info,.cost-display,.balance-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:#333;font-weight:500}.duration-info:last-child,.cost-display:last-child,.balance-info:last-child{margin-bottom:0}.cost-display{color:#646cff;font-weight:600}.balance-info{color:#28a745}.insufficient-funds{margin-top:.75rem;padding:.75rem;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;text-align:center}.insufficient-funds p{margin:0;font-weight:500}.progress-container{margin:1rem 0}.progress-bar{width:100%;height:8px;background-color:#e9ecef;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-bar-fill{height:100%;background-color:#646cff;transition:width .5s ease-out;will-change:width}.progress-container p{color:#666;font-size:.9rem;margin:0}.upload-btn{width:100%;padding:.75rem;font-size:1.1rem;font-weight:500}.attenuation-control{margin:1.5rem 0;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.attenuation-label{display:block;font-weight:600;color:#333;margin-bottom:1rem;font-size:1rem}.attenuation-slider{width:100%;height:6px;border-radius:3px;background:#ddd;outline:none;margin-bottom:.75rem;cursor:pointer;transition:background .3s ease}.attenuation-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#646cff;cursor:pointer;box-shadow:0 2px 4px #0003;transition:all .3s ease}.attenuation-slider::-webkit-slider-thumb:hover{background:#5a64e6;transform:scale(1.1);box-shadow:0 3px 6px #0000004d}.attenuation-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#646cff;cursor:pointer;border:none;box-shadow:0 2px 4px #0003;transition:all .3s ease}.attenuation-slider::-moz-range-thumb:hover{background:#5a64e6;transform:scale(1.1);box-shadow:0 3px 6px #0000004d}.attenuation-slider:disabled{opacity:.6;cursor:not-allowed}.attenuation-slider:disabled::-webkit-slider-thumb{cursor:not-allowed;background:#999}.attenuation-slider:disabled::-moz-range-thumb{cursor:not-allowed;background:#999}.attenuation-hints{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.85rem;color:#666}.hint-low,.hint-high{font-weight:500}.attenuation-description{font-size:.9rem;color:#666;text-align:center;margin:0;line-height:1.4}@media (max-width: 600px){.attenuation-control{margin:1rem 0;padding:1rem}.attenuation-label{font-size:.95rem}.attenuation-description{font-size:.85rem}}@media (max-width: 768px){.video-upload{padding:0 1rem}.upload-zone{padding:2rem 1rem}.file-info{flex-direction:column;align-items:flex-start;gap:.5rem}.file-details{text-align:center;width:100%}}.job-status{border:1px solid #e1e5e9;border-radius:8px;padding:1.5rem;background-color:#fff;transition:all .3s ease}.job-status.queued{border-left:4px solid #ffc107}.job-status.processing{border-left:4px solid #17a2b8}.job-status.completed{border-left:4px solid #28a745}.job-status.failed{border-left:4px solid #dc3545}.job-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.job-info{display:flex;align-items:flex-start;gap:.75rem;flex-grow:1}.status-icon{margin-top:.25rem;flex-shrink:0}.status-icon.queued{color:#ffc107}.status-icon.processing{color:#17a2b8}.status-icon.completed{color:#28a745}.status-icon.failed{color:#dc3545}.spinning{animation:spin 1s linear infinite}.job-details{flex-grow:1}.job-details h3{margin:0 0 .25rem;color:#333;font-size:1rem;font-weight:500}.job-meta{margin:0;color:#666;font-size:.85rem}.job-actions{display:flex;align-items:center;gap:.5rem}.refresh-btn{background:none;border:1px solid #e1e5e9;padding:.5rem;border-radius:4px;cursor:pointer;color:#666;transition:all .3s ease}.refresh-btn:hover:not(:disabled){border-color:#646cff;color:#646cff}.refresh-btn:disabled{cursor:not-allowed;opacity:.5}.btn-sm{padding:.375rem .75rem;font-size:.875rem;display:flex;align-items:center;gap:.25rem;text-decoration:none}.job-status-text{margin-bottom:.75rem;color:#666;font-weight:500}.progress-container{display:flex;align-items:center;gap:1rem;margin-top:.75rem}.progress-bar{flex-grow:1;height:6px;background-color:#e9ecef;border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background-color:#17a2b8;transition:width .3s ease}.progress-text{font-size:.875rem;color:#666;min-width:3rem;text-align:right}.error-message{margin-top:.75rem;padding:.75rem;background-color:#ffe6e6;border:1px solid #ffcccc;border-radius:4px;color:#721c24}.error-message p{margin:0;font-size:.9rem}.refund-notice{margin-top:.5rem!important;padding:.5rem;background-color:#e8f5e8!important;border:1px solid #c3e6c3;border-radius:4px;color:#2d5a2d!important;font-weight:500}.refund-processing{margin-top:.5rem!important;padding:.5rem;background-color:#fff3cd!important;border:1px solid #ffeaa7;border-radius:4px;color:#856404!important;font-style:italic}.completion-message{margin-top:.75rem;padding:.75rem;background-color:#e6f7e6;border:1px solid #ccf2cc;border-radius:4px;color:#155724}.completion-message p{margin:0;font-size:.9rem}.download-progress-container{margin:1rem 0;width:100%}.download-progress-container .progress-bar{width:100%;height:8px;background-color:#e9ecef;border-radius:4px;overflow:hidden}.download-progress-container .progress-bar-fill{height:100%;background-color:#646cff;transition:width .3s ease}.download-progress-container .progress-text{font-size:.9rem;color:#666;text-align:right;margin-top:.25rem}@media (max-width: 768px){.job-header{flex-direction:column;gap:1rem}.job-actions{align-self:flex-end}.progress-container{flex-direction:column;align-items:stretch;gap:.5rem}.progress-text{text-align:center}}.account-balance{max-width:1000px;margin:0 auto}.account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.account-header h2{color:#333;margin:0}.account-loading{text-align:center;padding:2rem}.account-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.account-card{background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;color:#646cff}.card-header h3{margin:0;color:#333;font-size:1.1rem}.balance-info{text-align:center}.balance-amount{font-size:2.5rem;font-weight:600;color:#28a745;margin-bottom:.5rem}.balance-status{color:#666;font-size:.9rem}.add-funds-form{display:flex;flex-direction:column;gap:1rem}.input-group{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:12px;color:#666;font-weight:500;z-index:1}.amount-input{width:100%;padding:12px 12px 12px 28px;border:1px solid #ddd;border-radius:6px;font-size:1.1rem;font-weight:500}.amount-input:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff1a}.btn{padding:12px 20px;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background-color:#646cff;color:#fff}.btn-primary:hover:not(:disabled){background-color:#4f46e5}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#f8f9fa;color:#495057;border:1px solid #dee2e6}.btn-secondary:hover{background-color:#e9ecef}.pricing-info{display:flex;flex-direction:column;gap:1rem}.pricing-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #e9ecef}.pricing-label{color:#666;font-weight:500}.pricing-value{color:#333;font-weight:600}.pricing-note{color:#666;font-size:.9rem;font-style:italic;text-align:center;padding:.5rem;background-color:#f8f9fa;border-radius:6px}.transactions-section{background:#fff;border:1px solid #e1e5e9;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-title{display:flex;align-items:center;gap:.75rem;color:#646cff}.header-title h3{margin:0;color:#333;font-size:1.1rem}.no-transactions{text-align:center;padding:2rem;color:#666}.transactions-list{display:flex;flex-direction:column;gap:1rem}.transaction-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f8f9fa;border-radius:6px;border-left:4px solid #e9ecef}.transaction-info{display:flex;flex-direction:column;gap:.25rem}.transaction-type{font-weight:500;color:#333}.transaction-date{font-size:.9rem;color:#666}.transaction-amount{font-weight:600;font-size:1.1rem}.transaction-amount.payment{color:#28a745}.transaction-amount.processing{color:#dc3545}.transaction-amount.refund{color:#28a745}.transaction-item:has(.transaction-amount.payment){border-left-color:#28a745}.transaction-item:has(.transaction-amount.processing){border-left-color:#dc3545}.transaction-item:has(.transaction-amount.refund){border-left-color:#28a745}@media (max-width: 768px){.account-header{flex-direction:column;gap:1rem;text-align:center}.account-cards{grid-template-columns:1fr}.transaction-item{flex-direction:column;align-items:flex-start;gap:.5rem}.transaction-amount{align-self:flex-end}}.dashboard{max-width:1200px;margin:0 auto;padding:2rem}.dashboard-header{text-align:center;margin-bottom:2rem}.dashboard-header h1{color:#333;margin-bottom:.5rem}.dashboard-header p{color:#666;font-size:1.1rem}.payment-message{padding:1rem;margin-bottom:1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center;font-weight:500}.payment-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.payment-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.payment-message button{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:0;margin-left:1rem;opacity:.7}.payment-message button:hover{opacity:1}.dashboard-tabs{display:flex;justify-content:center;margin-bottom:2rem;border-bottom:2px solid #eee}.tab{background:none;border:none;padding:1rem 1.5rem;cursor:pointer;font-size:1rem;color:#666;border-bottom:3px solid transparent;transition:all .3s ease}.tab:hover{color:#333;background-color:#f8f9fa}.tab.active{color:#646cff;border-bottom-color:#646cff;background-color:#f8f9ff}.dashboard-content{min-height:400px}.jobs-container{text-align:center}.jobs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;max-width:800px;margin-left:auto;margin-right:auto}.jobs-actions{display:flex;gap:.5rem}.jobs-container h2{color:#333;margin:0}.clear-jobs-btn{background-color:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .3s ease}.clear-jobs-btn:hover{background-color:#c82333}.no-jobs{color:#666;font-size:1.1rem;margin:2rem 0}.jobs-list{display:flex;flex-direction:column;gap:1rem;max-width:800px;margin:0 auto}@media (max-width: 768px){.dashboard{padding:1rem}.dashboard-tabs{flex-direction:column;align-items:center}.tab{width:100%;max-width:200px}}.navigation{background-color:#fff;border-bottom:1px solid #e1e5e9;padding:0;position:sticky;top:0;z-index:100;box-shadow:0 2px 4px #0000001a}.nav-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 2rem;height:60px}.nav-brand h2{color:#646cff;margin:0;font-size:1.5rem;font-weight:600}.nav-user{display:flex;align-items:center;gap:1rem}.user-info{display:flex;align-items:center;gap:.5rem;color:#333;font-weight:500}.logout-btn{display:flex;align-items:center;gap:.5rem;background:none;border:1px solid #e1e5e9;padding:.5rem 1rem;border-radius:6px;color:#666;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background-color:#f8f9fa;border-color:#646cff;color:#646cff}@media (max-width: 768px){.nav-container{padding:0 1rem}.nav-brand h2{font-size:1.2rem}.user-info span,.logout-btn span{display:none}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion: no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;padding:20px;color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #646cff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.main-content{min-height:calc(100vh - 60px);padding:2rem}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.container{max-width:800px;margin:0 auto;padding:1rem}.upload-zone{border:2px dashed #646cff;border-radius:8px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease}.upload-zone:hover{border-color:#535bf2;background-color:#646cff1a}.upload-zone.dragover{border-color:#535bf2;background-color:#646cff33}.btn{display:inline-block;padding:.75rem 1.5rem;margin:.5rem;border:none;border-radius:4px;background-color:#646cff;color:#fff;text-decoration:none;cursor:pointer;transition:background-color .3s ease;font-size:1rem}.btn:hover{background-color:#535bf2}.btn:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#6c757d}.btn-secondary:hover{background-color:#5a6268}.progress-bar{width:100%;height:20px;background-color:#e9ecef;border-radius:10px;overflow:hidden;margin:1rem 0}.progress-bar-fill{height:100%;background-color:#646cff;transition:width .3s ease}.job-status{padding:1rem;margin:1rem 0;border-radius:4px;border:1px solid #ddd}.job-status.processing{background-color:#ffc1071a;border-color:#ffc107}.job-status.completed{background-color:#28a7451a;border-color:#28a745}.job-status.failed{background-color:#dc35451a;border-color:#dc3545}
