:root{--background:#FAF9F6;--foreground:#1A1A1A;--primary:#1A1A1A;--primary-foreground:#FAFAF7;--accent:#D4A574;--accent-hover:#C59463;--accent-light:#FDF9F4;--accent-border:#FAEEDB;--success:#10B981;--success-light:#E6FDF5;--success-border:#A7F3D0;--muted:#6B7280;--border:#E8E8E4;--card:#FFFFFF;--shadow-sm:0 2px 8px rgba(26,26,26,0.04);--shadow-md:0 8px 30px rgba(26,26,26,0.06);--shadow-glow:rgba(212,165,116,0.08);--glow-color:rgba(212,165,116,0.15);--font-sans:var(--font-body),Inter,system-ui,sans-serif}.kp-root{max-width:800px;margin:0 auto;padding:60px 20px;font-family:var(--font-sans);background:radial-gradient(circle at 50% 0,var(--shadow-glow) 0,transparent 60%),var(--background);min-height:100vh;transition:background .3s ease}header{text-align:center;margin-bottom:40px}.kp-header-title{margin:0;color:var(--accent);font-size:13px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.kp-headline{margin:12px 0 0;font-size:46px;font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--foreground)}.kp-subtitle{margin:14px auto 0;color:var(--muted);max-width:600px;font-size:15px;line-height:1.6}.kp-card{border:1px solid var(--border);background:var(--card);border-radius:24px;box-shadow:var(--shadow-md);padding:36px;backdrop-filter:blur(10px)}.kp-card,.kp-dropzone{transition:all .3s cubic-bezier(.4,0,.2,1)}.kp-dropzone{border:2px dashed var(--border);border-radius:20px;background:var(--background);padding:48px 24px;text-align:center;cursor:pointer;display:block;position:relative;overflow:hidden}.kp-dropzone:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--accent);opacity:0;transition:opacity .2s ease;pointer-events:none}.kp-dropzone:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow-glow)}.kp-drop-title{margin:12px 0 6px;font-size:16px;font-weight:700;color:var(--foreground)}.kp-muted{color:var(--muted);font-size:13px;margin:0}.kp-choose-chip{margin-top:16px;display:inline-block;background:var(--primary);color:var(--primary-foreground);border-radius:99px;font-size:12px;font-weight:700;padding:8px 18px;transition:all .2s ease}.kp-choose-chip:hover{transform:scale(1.05);box-shadow:var(--shadow-sm)}.kp-banner{margin-top:16px;border:1px solid var(--border);border-radius:14px;padding:12px 16px;background:var(--background);font-size:14px;color:var(--foreground);gap:8px}.kp-actions,.kp-banner{display:flex;align-items:center}.kp-actions{margin-top:24px;flex-wrap:wrap;justify-content:space-between;gap:16px}.kp-primary-btn{background:var(--accent);color:#1A1A1A;border:0;border-radius:14px;padding:14px 28px;font-weight:750;font-size:14px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px rgba(212,165,116,.2);font-family:inherit}.kp-primary-btn:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 20px rgba(212,165,116,.35)}.kp-primary-btn:active:not(:disabled){transform:translateY(0)}.kp-primary-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.kp-success-text{margin-top:16px;color:var(--success);font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px;animation:kp-slide-up .3s ease}.kp-list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}.kp-item{border:1px solid var(--border);border-radius:16px;padding:16px;background:var(--card);transition:all .2s cubic-bezier(.4,0,.2,1)}.kp-item:hover{box-shadow:var(--shadow-sm);border-color:var(--accent)}.kp-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.kp-file-name{margin:0;font-weight:700;font-size:14px;color:var(--foreground);word-break:break-all}.kp-file-size{margin:4px 0 0;color:var(--muted);font-size:11px;font-family:var(--font-mono),monospace;font-weight:600}.kp-status{margin:0;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;padding:4px 10px;border-radius:99px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.05em}.kp-status.status-queued{background:var(--border);color:var(--muted);border-color:var(--border)}.kp-status.status-processing,.kp-status.status-uploading{background:rgba(139,92,246,.08);color:var(--accent-purple);border-color:rgba(139,92,246,.15)}.kp-status.status-ready{background:var(--success-light);color:var(--success);border-color:var(--success-border)}.kp-status.status-failed{background:rgba(239,68,68,.08);color:#ef4444;border-color:rgba(239,68,68,.15)}.kp-progress-track{margin-top:14px;width:100%;height:8px;border-radius:99px;background:var(--background);border:1px solid var(--border);overflow:hidden;position:relative}.kp-progress-fill{height:100%;border-radius:99px;transition:width .3s cubic-bezier(.4,0,.2,1);position:relative}.kp-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.3) 50%,rgba(255,255,255,0));animation:kp-shimmer 1.5s linear infinite;background-size:200% 100%}@keyframes kp-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.kp-format-select-wrapper{margin-top:14px;display:flex;align-items:center;gap:8px}.kp-format-label{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.kp-format-select{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--foreground);outline:none;cursor:pointer;transition:all .2s ease;font-family:inherit}.kp-format-select:focus,.kp-format-select:hover{border-color:var(--accent);box-shadow:0 0 0 2px var(--glow-color)}.kp-format-select:disabled{opacity:.5;cursor:not-allowed}.kp-format-value{color:var(--accent);background:var(--accent-light);border-radius:6px;border:1px solid var(--accent-border);text-transform:uppercase}.kp-format-value,.kp-saving-badge{font-size:11px;font-weight:800;padding:3px 8px;font-family:var(--font-mono),monospace}.kp-saving-badge{color:var(--success);background:var(--success-light);border-radius:6px;border:1px solid var(--success-border);display:inline-flex;align-items:center;gap:4px}.kp-download-section{margin-top:14px}.kp-download{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--card);border-radius:10px;color:var(--foreground);text-decoration:none;font-size:13px;font-weight:700;padding:8px 16px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.kp-download:hover{background:var(--background);border-color:var(--accent);color:var(--foreground)}.kp-remove{margin-top:16px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-weight:700;padding:6px 14px;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:.05em;font-family:inherit}.kp-remove:hover{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.3);color:#ef4444}.kp-error{margin-top:12px;color:#ef4444;font-size:12px;font-weight:600}.kp-footer{margin-top:40px;text-align:center;color:var(--muted);font-size:12px;font-weight:500}.spin{animation:kp-spin 1s linear infinite}@keyframes kp-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.kp-drag-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(10,10,10,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fafaf7;pointer-events:none;animation:kp-fade-in .25s cubic-bezier(.4,0,.2,1) forwards}.kp-drag-overlay-card{border:2px dashed var(--accent);border-radius:24px;padding:48px 36px;text-align:center;max-width:460px;background:rgba(18,18,18,.7);box-shadow:0 20px 50px rgba(0,0,0,.6);margin:20px}.kp-drag-icon{color:var(--accent);margin:0 auto 20px;animation:kp-bounce 2s ease-in-out infinite;display:block}.kp-drag-title-big{font-size:24px;font-weight:800;margin-bottom:8px;color:#ffffff;letter-spacing:-.02em}.kp-drag-subtitle{color:#9ca3af;font-size:14px;line-height:1.6}@keyframes kp-fade-in{0%{opacity:0}to{opacity:1}}@keyframes kp-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes kp-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}