:root,[data-theme=dark]{--bg-primary:#09090b;--bg-secondary:#0f0f12;--bg-card:#141419;--bg-card-hover:#1a1a22;--bg-input:#141419;--border:#262626;--border-hover:#383838;--ring:rgba(99,102,241,.4);--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-muted:#52525b;--accent:#6366f1;--accent-hover:#5558e6;--accent-subtle:rgba(99,102,241,.12);--success:#22c55e;--success-bg:rgba(34,197,94,.08);--warning:#f59e0b;--warning-bg:rgba(245,158,11,.08);--error:#ef4444;--error-bg:rgba(239,68,68,.08);--radius:12px;--radius-sm:8px;--radius-xs:6px;--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-md:0 4px 12px rgba(0,0,0,.3)}[data-theme=light]{--bg-primary:#fafafa;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f4f4f5;--bg-input:#fff;--border:#e4e4e7;--border-hover:#d4d4d8;--ring:rgba(99,102,241,.3);--text-primary:#09090b;--text-secondary:#71717a;--text-muted:#a1a1aa;--accent:#6366f1;--accent-hover:#5558e6;--accent-subtle:rgba(99,102,241,.06);--success:#16a34a;--success-bg:rgba(22,163,74,.06);--warning:#d97706;--warning-bg:rgba(217,119,6,.06);--error:#dc2626;--error-bg:rgba(220,38,38,.05);--shadow:0 1px 3px rgba(0,0,0,.06);--shadow-md:0 4px 12px rgba(0,0,0,.08)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:640px;margin:0 auto;padding:48px 20px 80px}.header{text-align:center;margin-bottom:32px;position:relative;z-index:100}.header-actions{position:absolute;top:0;right:0;gap:8px}.header h1,.header-actions{display:flex;align-items:center}.header h1{font-size:24px;font-weight:700;letter-spacing:-.02em;justify-content:center;gap:10px}.header h1 svg{color:var(--accent)}.header p{color:var(--text-muted);font-size:14px;margin-top:6px}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.btn-icon:hover{background:var(--bg-card-hover);border-color:var(--border-hover);color:var(--text-primary)}.btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-ghost:hover{background:var(--bg-card-hover);border-color:var(--border-hover);color:var(--text-primary)}.tabs{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:4px;margin-bottom:20px;gap:4px}.tab,.tabs{display:flex}.tab{flex:1 1;padding:10px 16px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;align-items:center;justify-content:center;gap:8px}.tab svg{width:16px;height:16px}.tab:hover{color:var(--text-secondary)}.tab-active{background:var(--accent);color:#fff;box-shadow:var(--shadow)}.tab-active:hover{color:#fff}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.form-input{width:100%;padding:0 12px;height:40px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:14px;transition:all .15s ease;outline:none}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.form-input::placeholder{color:var(--text-muted)}select.form-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}select.form-input option{background:var(--bg-card);color:var(--text-primary)}.drop-zone{border:1.5px dashed var(--border);border-radius:var(--radius);padding:28px 20px;text-align:center;cursor:pointer;transition:all .15s ease;margin-bottom:12px}.drop-zone.dragover,.drop-zone:hover{border-color:var(--accent);background:var(--accent-subtle)}.drop-zone.has-file{border-color:var(--success);border-style:solid;background:var(--success-bg)}.drop-zone-icon{display:flex;align-items:center;justify-content:center;margin:0 auto 10px;color:var(--text-muted)}.drop-zone.has-file .drop-zone-icon{color:var(--success)}.drop-zone-label{font-size:14px;font-weight:500;margin-bottom:4px}.drop-zone-hint{font-size:12px;color:var(--text-muted)}.file-name{font-size:13px;font-weight:500;color:var(--text-primary);margin-top:8px;word-break:break-all}.file-size{font-size:12px;color:var(--text-muted);margin-top:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 20px;height:42px;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover)}.results{margin-top:20px}.results-title{font-size:15px;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px;color:var(--success)}.results-title svg{width:18px;height:18px}.speaker-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:8px}.speaker-info h3{font-size:14px;font-weight:600;margin-bottom:4px;display:flex;align-items:center;gap:6px}.speaker-info h3 svg{width:15px;height:15px;color:var(--accent)}.speaker-meta{font-size:12px;color:var(--text-muted);display:flex;gap:12px;flex-wrap:wrap}.drive-upload-badge{display:flex;align-items:center;gap:12px;background:var(--success-bg);border:1px solid rgba(34,197,94,.15);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:12px}.drive-badge-icon{color:var(--success);flex-shrink:0}.drive-badge-icon svg{width:20px;height:20px}.drive-badge-text{display:flex;flex-direction:column;gap:1px}.drive-badge-text strong{font-size:13px;font-weight:600;color:var(--success)}.drive-badge-text span{font-size:12px;color:var(--text-muted)}.drive-file-link{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:12px;color:var(--accent);text-decoration:none}.drive-file-link:hover{text-decoration:underline}.drive-file-link svg{width:13px;height:13px}.download-panel{margin-top:12px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.download-panel-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:transparent;border:none;color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.download-panel-toggle:hover{background:var(--bg-card-hover)}.download-panel-toggle svg{width:14px;height:14px}.toggle-label{display:flex;align-items:center;gap:6px}.download-panel-hint{font-size:11px;color:var(--text-muted);font-weight:400}.download-panel-content{display:flex;flex-direction:column;gap:6px;padding:10px 14px;border-top:1px solid var(--border)}.btn-download{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-xs);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn-download:hover:not(:disabled){background:var(--accent-hover)}.btn-download:disabled{opacity:.4;cursor:not-allowed}.btn-download svg{width:14px;height:14px}.drive-hint{font-size:12px;color:var(--text-muted);margin-bottom:16px;line-height:1.5}.error{display:flex;align-items:flex-start;gap:8px;background:var(--error-bg);border:1px solid rgba(239,68,68,.15);border-radius:var(--radius-sm);padding:12px 14px;margin-top:16px;font-size:13px;color:var(--error)}.error svg{width:16px;height:16px;flex-shrink:0;margin-top:1px}.progress-bar-container{background:var(--bg-card);border-radius:4px;height:4px;margin-top:16px;overflow:hidden}.progress-bar{height:100%;background:var(--accent);border-radius:4px;transition:width .4s ease}.progress-text{text-align:center;font-size:12px;color:var(--text-muted);margin-top:8px}.spinner{width:16px;height:16px}.spinner,.spinner-sm{display:inline-block;border:2px solid hsla(0,0%,100%,.25);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.spinner-sm{width:13px;height:13px;flex-shrink:0}.login-container{max-width:380px;margin:0 auto;padding:80px 20px}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:32px 28px}.login-card h2{font-size:20px;font-weight:700;text-align:center;margin-bottom:4px;display:flex;align-items:center;justify-content:center;gap:8px}.login-card h2 svg{color:var(--accent)}.login-subtitle{text-align:center;font-size:13px;color:var(--text-muted);margin-bottom:24px}.batch-range{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-bottom:4px}.batch-logs{margin-top:16px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.batch-summary{display:flex;gap:16px;padding:10px 14px;background:var(--bg-card-hover);border-bottom:1px solid var(--border);flex-wrap:wrap}.batch-stat{font-size:13px;font-weight:600;display:flex;align-items:center;gap:4px}.batch-stat svg{width:14px;height:14px}.batch-success{color:var(--success)}.batch-skip{color:var(--text-muted)}.batch-fail{color:var(--error)}.batch-log-list{max-height:300px;overflow-y:auto}.batch-log-item{display:flex;align-items:center;gap:8px;padding:7px 14px;font-size:13px;border-bottom:1px solid var(--border)}.batch-log-item:last-child{border-bottom:none}.batch-log-folder{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:28px;color:var(--text-primary)}.batch-log-status{flex-shrink:0}.batch-log-status svg{width:15px;height:15px}.batch-log-msg{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.batch-log-success{background:var(--success-bg)}.batch-log-success .batch-log-status{color:var(--success)}.batch-log-error{background:var(--error-bg)}.batch-log-error .batch-log-status{color:var(--error)}.batch-log-skipped .batch-log-status{color:var(--text-muted)}.batch-log-updated{background:var(--success-bg)}.batch-log-updated .batch-log-status{color:var(--success)}.batch-log-added{background:color-mix(in srgb,var(--accent) 12%,transparent)}.batch-log-added .batch-log-status,.batch-log-working .batch-log-status{color:var(--accent)}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin 1s linear infinite}[data-theme=light] .btn-primary{box-shadow:0 1px 3px rgba(99,102,241,.2)}[data-theme=light] .spinner,[data-theme=light] .spinner-sm{border-color:#fff hsla(0,0%,100%,.3) hsla(0,0%,100%,.3)}.home-grid{display:grid;grid-gap:12px;gap:12px}.tool-card{display:flex;align-items:center;gap:16px;width:100%;padding:20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .15s ease;text-align:left;font-family:inherit;color:var(--text-primary)}.tool-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover)}.tool-card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-sm);background:var(--accent-subtle);color:var(--accent);flex-shrink:0}.tool-card-text{flex:1 1;min-width:0}.tool-card-text h3{font-size:15px;font-weight:600;margin-bottom:2px}.tool-card-text p{font-size:13px;color:var(--text-muted)}.tool-card-arrow{color:var(--text-muted);flex-shrink:0}.btn-back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-xs);border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;position:absolute;left:0;top:50%;transform:translateY(-50%)}.btn-back:hover{background:var(--bg-card-hover);border-color:var(--border-hover);color:var(--text-primary)}.vc-selectors{margin-bottom:16px}.vc-selectors select.form-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.vc-voice-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.vc-bulk-section{margin-top:4px}.vc-bulk-badge{display:flex;align-items:center;gap:8px;background:var(--accent-subtle);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-sm);padding:10px 14px;margin-bottom:12px;font-size:13px;color:var(--accent)}.vc-bulk-badge strong{font-family:SF Mono,Fira Code,monospace;letter-spacing:.02em}.vc-bulk-file-list{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:12px;max-height:240px;overflow-y:auto}.vc-bulk-file-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;border-bottom:1px solid var(--border)}.vc-bulk-file-item:last-child{border-bottom:none}.vc-bulk-file-name{flex:1 1;display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.vc-bulk-file-name svg{color:var(--accent);flex-shrink:0}.vc-bulk-file-size{font-size:12px;color:var(--text-muted);flex-shrink:0}.vc-bulk-file-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-xs);border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s ease;flex-shrink:0}.vc-bulk-file-remove:hover{background:var(--error-bg);color:var(--error)}.vc-bulk-actions{display:flex;gap:8px;margin-bottom:12px}.vc-bulk-status{margin-top:12px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.vc-bulk-status-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--bg-card-hover);border-bottom:1px solid var(--border);font-size:13px;color:var(--text-secondary);flex-wrap:wrap;gap:8px}.vc-bulk-status-header strong{color:var(--accent)}@media (max-width:480px){.vc-voice-row{grid-template-columns:1fr}.vc-bulk-actions{flex-direction:column}}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px;width:100%;max-width:420px;box-shadow:0 20px 60px rgba(0,0,0,.4);animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-header{justify-content:space-between;margin-bottom:20px}.modal-header,.modal-header h2{display:flex;align-items:center}.modal-header h2{font-size:17px;font-weight:600;gap:8px}.modal-header h2 svg{color:var(--accent)}.password-field{position:relative}.password-field .form-input{padding-right:40px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;display:flex;align-items:center;transition:color .15s ease}.password-toggle:hover{color:var(--text-primary)}.settings-success{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--success);margin-top:8px}.transcriber-options{display:grid;grid-template-columns:1fr 80px auto;grid-gap:12px;gap:12px;margin-bottom:16px;align-items:end}.transcriber-options select.form-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.transcript-preview{margin-top:12px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.transcript-preview-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--bg-card-hover)}.transcript-preview-seg,.transcript-preview-title{padding:8px 12px;border-bottom:1px solid var(--border)}.transcript-preview-seg{display:grid;grid-template-columns:auto auto 1fr;grid-gap:8px;gap:8px;font-size:13px;align-items:start}.transcript-preview-seg:last-child{border-bottom:none}.transcript-seg-speaker{font-weight:600;color:var(--accent);font-size:12px;white-space:nowrap}.transcript-seg-time{font-family:SF Mono,Fira Code,monospace;font-size:11px;color:var(--text-muted);white-space:nowrap}.transcript-seg-text{color:var(--text-secondary);line-height:1.4}@media (max-width:480px){.transcriber-options{grid-template-columns:1fr 1fr}}.dashboard-cards{display:flex;flex-direction:column;gap:12px}.dash-card{display:flex;align-items:center;gap:16px;width:100%;background:var(--card-bg);border:1.5px solid var(--border);border-radius:14px;padding:24px 20px;cursor:pointer;transition:all .2s;text-align:left}.dash-card:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 12%,transparent)}.dash-card-icon{width:64px;height:64px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-card-auto .dash-card-icon{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,var(--accent) 8%,transparent));color:var(--accent)}.dash-card-manual .dash-card-icon{background:color-mix(in srgb,var(--text-muted) 10%,transparent);color:var(--text-secondary)}.dash-card-body{flex:1 1;min-width:0}.dash-card-body h2{font-size:1.1rem;font-weight:600;margin:0 0 4px}.dash-card-body p{font-size:.82rem;color:var(--text-muted);margin:0 0 8px;line-height:1.3}.dash-card-steps{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.dash-card-steps span{font-size:.7rem;padding:2px 8px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-weight:500}.dash-card-arrow,.dash-card-steps svg{color:var(--text-muted);flex-shrink:0}.pipeline-steps{display:flex;align-items:flex-start;justify-content:center;gap:0;margin-bottom:20px;padding:16px 0}.pipeline-step{display:flex;flex-direction:column;align-items:center;position:relative;flex:1 1;max-width:120px}.pipeline-step-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--border);background:var(--card-bg);color:var(--text-muted);z-index:1;transition:all .3s}.pipeline-step-running .pipeline-step-dot{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--card-bg));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 15%,transparent)}.pipeline-step-done .pipeline-step-dot{border-color:var(--success);background:var(--success);color:#fff}.pipeline-step-error .pipeline-step-dot{border-color:var(--error);background:color-mix(in srgb,var(--error) 15%,var(--card-bg));color:var(--error)}.pipeline-step-label{display:flex;align-items:center;gap:4px;margin-top:8px;font-size:.72rem;font-weight:500;color:var(--text-muted);text-align:center;white-space:nowrap}.pipeline-step-running .pipeline-step-label{color:var(--accent)}.pipeline-step-done .pipeline-step-label{color:var(--success)}.pipeline-step-error .pipeline-step-label{color:var(--error)}.pipeline-step-line{position:absolute;top:16px;left:calc(50% + 18px);width:calc(100% - 36px);height:2px;background:var(--border);z-index:0}.pipeline-step-done .pipeline-step-line{background:var(--success)}.pipeline-step-running .pipeline-step-line{background:var(--accent)}.pipeline-logs{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:12px;max-height:300px;overflow-y:auto;font-family:SF Mono,Fira Code,monospace;font-size:.75rem}.pipeline-log-line{padding:2px 0;color:var(--text-secondary);line-height:1.5}.pipeline-mode-toggle{display:flex;gap:4px;margin-bottom:14px;background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:4px}.pipeline-mode-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .2s}.pipeline-mode-btn:hover{color:var(--text-primary)}.pipeline-mode-btn.active{background:var(--accent);color:#fff;box-shadow:0 1px 4px color-mix(in srgb,var(--accent) 30%,transparent)}.pipeline-voice-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:10px;gap:10px;margin-top:8px}.pipeline-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:var(--border);outline:none;padding:0!important;margin-top:6px;border:none!important}.pipeline-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2)}.pipeline-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.2)}@media (max-width:480px){.dash-card{padding:16px 14px;gap:12px}.dash-card-icon{width:48px;height:48px}.dash-card-icon svg{width:24px;height:24px}.dash-card-body h2{font-size:.95rem}.pipeline-step-label{font-size:.65rem}.pipeline-step-dot{width:28px;height:28px}.pipeline-voice-row{grid-template-columns:1fr}}.qa-stats-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:10px}.qa-stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:18px 12px;text-align:center}.qa-stat-number{font-size:2.2rem;font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qa-stat-label{font-size:.78rem;color:var(--text-muted);margin-top:6px;text-transform:uppercase;letter-spacing:.5px}.qa-color-success{color:var(--success)}.qa-color-error{color:var(--error)}.qa-progress-section{margin-bottom:10px}.qa-progress-bar{height:8px;background:var(--border);border-radius:4px;overflow:hidden}.qa-progress-fill{height:100%;border-radius:4px;transition:width .6s ease}.qa-progress-text{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:4px}.qa-duration-row{display:flex;background:var(--card-bg);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;overflow:hidden}.qa-duration-card{flex:1 1;display:flex;align-items:center;gap:10px;padding:14px 16px}.qa-duration-divider{width:1px;background:var(--border);margin:10px 0}.qa-duration-icon{font-size:1.3rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:color-mix(in srgb,var(--text-muted) 10%,transparent);flex-shrink:0}.qa-duration-icon.qa-color-success{background:color-mix(in srgb,var(--success) 12%,transparent)}.qa-duration-info{flex:1 1;min-width:0}.qa-duration-value{font-size:1.25rem;font-weight:700;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qa-duration-detail,.qa-duration-label{font-size:.72rem;color:var(--text-muted)}.qa-duration-label{text-align:right;white-space:nowrap}.qa-breakdown{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:16px}.qa-breakdown h3{font-size:.9rem;font-weight:600;margin:0 0 10px}.qa-filter-row{display:flex;flex-wrap:wrap;gap:6px}.qa-filter-btn{padding:5px 12px;border-radius:16px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:.78rem;cursor:pointer;transition:all .15s}.qa-filter-btn.active,.qa-filter-btn:hover{border-color:var(--accent)}.qa-filter-btn.active{background:var(--accent);color:#fff}.qa-issues{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--card-bg)}.qa-issue-header,.qa-issue-row{display:grid;grid-template-columns:50px 1fr 56px 40px 40px 72px 64px;align-items:center;padding:8px 12px;grid-gap:4px;gap:4px;font-size:.82rem}.qa-issue-header{background:var(--bg);font-weight:600;color:var(--text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--border)}.qa-issue-row{border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);transition:background .1s}.qa-issue-row:last-child{border-bottom:none}.qa-issue-row:hover{background:color-mix(in srgb,var(--accent) 4%,transparent)}.qa-col-num{color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qa-col-file{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qa-col-link,.qa-col-status{text-align:center}.qa-ok{color:var(--success)}.qa-miss{color:var(--error)}.qa-folder-link{display:inline-flex;align-items:center;gap:3px;color:var(--accent);text-decoration:none;font-size:.78rem;font-weight:500}.qa-folder-link:hover{text-decoration:underline}.qa-all-good{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--success);text-align:center}.qa-all-good h3{margin:12px 0 4px;font-size:1.2rem}.qa-all-good p{color:var(--text-muted);margin:0}@media (max-width:480px){.qa-stats-row{grid-template-columns:1fr 1fr 1fr}.qa-stat-number{font-size:1.6rem}.qa-duration-row{flex-direction:column}.qa-duration-divider{width:auto;height:1px;margin:0 10px}.qa-issue-header,.qa-issue-row{grid-template-columns:36px 1fr 40px 32px 32px 56px 50px;font-size:.75rem;padding:6px 8px}}