@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Spline+Sans+Mono:wght@400;600&display=swap";:root{--bg: #f7f5f2;--bg-accent: #efe6da;--panel: #ffffff;--panel-tint: rgba(255, 255, 255, .75);--panel-border: rgba(20, 20, 20, .08);--text: #1f1b16;--muted: #6b6256;--accent: #0f766e;--accent-strong: #0b5f59;--highlight: #f59e0b;--shadow: 0 20px 40px rgba(24, 24, 24, .12);--radius: 16px}[data-theme=dark]{--bg: #0b0c10;--bg-accent: #111827;--panel: #101827;--panel-tint: rgba(16, 24, 39, .72);--panel-border: rgba(255, 255, 255, .08);--text: #e5e7eb;--muted: #9aa3b2;--accent: #22d3ee;--accent-strong: #0891b2;--highlight: #f472b6;--shadow: 0 20px 45px rgba(0, 0, 0, .45)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Space Grotesk,Segoe UI,system-ui,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(245,158,11,.18),transparent 45%),radial-gradient(circle at 80% 10%,rgba(15,118,110,.12),transparent 40%),linear-gradient(120deg,var(--bg) 0%,var(--bg-accent) 100%);min-height:100vh}[data-theme=dark] body{background:radial-gradient(circle at top left,rgba(244,114,182,.18),transparent 45%),radial-gradient(circle at 80% 10%,rgba(34,211,238,.16),transparent 40%),linear-gradient(120deg,var(--bg) 0%,var(--bg-accent) 100%)}.app{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem 4rem}header{display:flex;align-items:center;justify-content:space-between;padding-bottom:1.5rem;margin-bottom:2rem;border-bottom:1px solid var(--panel-border)}header h1{font-size:clamp(1.8rem,1.2rem + 2vw,2.6rem);font-weight:700;letter-spacing:-.02em}.header-actions{display:flex;align-items:center;gap:.6rem}.header-btn,.theme-toggle{background:#ffffff80;color:var(--text);border:1px solid rgba(31,27,22,.18);padding:.5rem 1rem;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer;transition:transform .2s ease,background .2s ease}.header-btn{min-width:74px}[data-theme=dark] .header-btn,[data-theme=dark] .theme-toggle{background:#10182799;border-color:#fff3}.header-btn:hover,.theme-toggle:hover{transform:translateY(-1px);background:#ffffffb3}.error-banner{background:#dc262614;border:1px solid rgba(220,38,38,.25);color:#991b1b;padding:.8rem 1rem;border-radius:12px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.error-banner button{background:none;border:none;color:inherit;cursor:pointer;font-weight:600}.upload-form,.progress-container,.review-view{background:var(--panel-tint);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.upload-form{max-width:540px;margin:0 auto;padding:2.2rem}.upload-form h2{margin-bottom:1.5rem;font-size:1.4rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:600;margin-bottom:.4rem;font-size:.9rem;color:var(--muted)}.form-group input[type=file],.form-group select{width:100%;padding:.65rem .75rem;border:1px solid rgba(31,27,22,.15);border-radius:10px;font-size:.95rem;background:#ffffffe6}[data-theme=dark] .form-group input[type=file],[data-theme=dark] .form-group select{background:#0f172acc;border-color:#ffffff26;color:var(--text)}.form-group input[type=file]:focus,.form-group select:focus{outline:none;border-color:#0f766eb3;box-shadow:0 0 0 3px #0f766e26}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}button[type=submit],.complete-btn{width:100%;padding:.85rem;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:1.2rem;box-shadow:0 10px 20px #0f766e40;transition:transform .2s ease,box-shadow .2s ease}button[type=submit]:hover:not(:disabled),.complete-btn:hover{transform:translateY(-1px);box-shadow:0 14px 26px #0f766e4d}button[type=submit]:disabled{background:#0f766e66;cursor:not-allowed;box-shadow:none}.progress-container{max-width:520px;margin:0 auto;padding:2rem;text-align:center}.progress-container h2{margin-bottom:1.2rem}.progress-bar{width:100%;height:12px;background:#1f1b161a;border-radius:999px;overflow:hidden;margin-bottom:.75rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--highlight));transition:width .3s ease}.progress-container p{color:var(--muted);font-size:.9rem}.review-view{padding:1.6rem}.review-header{margin-bottom:1rem}.review-header h2{margin-bottom:.6rem}.review-columns-label{display:grid;grid-template-columns:1fr 1fr;gap:1rem;font-weight:600;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;padding-bottom:.6rem;border-bottom:1px solid rgba(31,27,22,.08)}.review-grid{max-height:70vh;overflow-y:auto;padding-right:.25rem}.text-block-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;padding:1rem .2rem;border-bottom:1px solid rgba(31,27,22,.06)}.text-block-row.cell{background:#0f766e0d;border-radius:12px;padding:1rem;margin:.5rem 0}.text-block-row.srt{background:#f59e0b14;border-radius:12px;padding:1rem;margin:.5rem 0}.block-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;color:var(--muted);background:#1f1b1614;padding:.15rem .5rem;border-radius:999px;margin-bottom:.3rem}.text-block-row.cell .block-badge{background:#0f766e2e;color:#0b5f59}.text-block-row.srt .block-badge{background:#f59e0b40;color:#a16207}.block-meta{font-size:.75rem;color:var(--muted);font-family:Spline Sans Mono,ui-monospace,SFMono-Regular,Consolas,monospace;margin-bottom:.35rem}.block-text{font-size:.95rem;line-height:1.6;white-space:pre-wrap}.block-translated textarea{width:100%;border:1px solid rgba(31,27,22,.12);border-radius:12px;padding:.75rem;font-size:.95rem;font-family:Space Grotesk,Segoe UI,system-ui,sans-serif;line-height:1.5;resize:vertical;background:#ffffffe6}[data-theme=dark] .block-translated textarea{background:#0f172ad9;border-color:#ffffff2e;color:var(--text)}.block-translated textarea:focus{outline:none;border-color:#0f766eb3;box-shadow:0 0 0 3px #0f766e26}.complete-btn{margin-top:1.5rem}.idle-actions{max-width:540px;margin:1.5rem auto 0;text-align:center}.history-link-btn{background:transparent;color:var(--accent);border:1px solid rgba(15,118,110,.3);padding:.65rem 1.5rem;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}[data-theme=dark] .history-link-btn{border-color:#22d3ee66;color:var(--accent)}.history-link-btn:hover{background:#0f766e1a;border-color:var(--accent)}.about-overlay{position:fixed;inset:0;background:#0f172a73;display:grid;place-items:center;padding:1.25rem;z-index:20}.about-modal{width:min(760px,100%);max-height:90vh;overflow:auto;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.4rem 1.4rem 1.2rem}.about-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.about-header h2{font-size:1.35rem}.about-close-btn{background:transparent;color:var(--accent);border:1px solid rgba(15,118,110,.35);border-radius:10px;padding:.45rem .7rem;font-weight:600;cursor:pointer}.about-version{color:var(--muted);font-size:.88rem;margin-bottom:.8rem}.about-content h3{font-size:1.02rem;margin-top:.95rem;margin-bottom:.25rem}.about-content p,.about-content li{line-height:1.55;font-size:.95rem}.about-content ol{padding-left:1.2rem}.job-history{background:var(--panel-tint);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:2rem}.history-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1.2rem;border-bottom:1px solid var(--panel-border)}.history-header h2{font-size:1.8rem;margin-bottom:.3rem}.history-subtitle{color:var(--muted);font-size:.9rem}.new-translation-btn{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;border:none;border-radius:10px;padding:.65rem 1.2rem;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:0 6px 16px #0f766e40;transition:all .2s ease}.new-translation-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0f766e4d}.history-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.filter-group label{display:block;font-weight:600;font-size:.85rem;color:var(--muted);margin-bottom:.4rem}.filter-group select{width:100%;padding:.6rem .75rem;border:1px solid rgba(31,27,22,.15);border-radius:10px;font-size:.9rem;background:#ffffffe6;cursor:pointer}[data-theme=dark] .filter-group select{background:#0f172acc;border-color:#ffffff26;color:var(--text)}.history-loading,.history-empty{text-align:center;padding:3rem 1rem;color:var(--muted)}.history-empty-hint{font-size:.9rem;margin-top:.5rem}.history-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--panel-border)}.history-table{width:100%;border-collapse:collapse;font-size:.9rem}.history-table thead{background:#1f1b160a;border-bottom:1px solid var(--panel-border)}[data-theme=dark] .history-table thead{background:#ffffff0a}.history-table th{text-align:left;padding:.85rem 1rem;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.history-table td{padding:1rem;border-bottom:1px solid rgba(31,27,22,.06)}[data-theme=dark] .history-table td{border-bottom-color:#ffffff0f}.history-table tbody tr:last-child td{border-bottom:none}.history-table tbody tr:hover{background:#0f766e0a}.filename-cell{display:flex;align-items:center;gap:.6rem;font-weight:500}.file-icon{display:inline-flex;align-items:center;justify-content:center;background:#0f766e1f;color:var(--accent-strong);font-size:.7rem;font-weight:700;text-transform:uppercase;padding:.25rem .5rem;border-radius:6px;min-width:45px}.filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.languages-cell{font-family:Spline Sans Mono,ui-monospace,monospace;font-size:.85rem;color:var(--muted)}.status-badge{display:inline-flex;align-items:center;padding:.3rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.status-completed{background:#22c55e26;color:#15803d}.status-finalized{background:#64748b26;color:#475569}.status-translating{background:#3b82f626;color:#1e40af}.status-pending{background:#fbbf2426;color:#a16207}.status-error{background:#ef444426;color:#991b1b}[data-theme=dark] .status-completed{background:#22c55e33;color:#86efac}[data-theme=dark] .status-finalized{background:#94a3b833;color:#cbd5e1}[data-theme=dark] .status-translating{background:#60a5fa33;color:#93c5fd}[data-theme=dark] .status-pending{background:#fbbf2433;color:#fde047}[data-theme=dark] .status-error{background:#ef444433;color:#fca5a5}.timestamp-cell{font-size:.85rem;color:var(--muted);white-space:nowrap}.actions-cell{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.action-btn{padding:.4rem .8rem;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease;text-decoration:none;display:inline-block;white-space:nowrap}.view-btn{background:#0f766e1f;color:var(--accent-strong);border:1px solid rgba(15,118,110,.25)}.view-btn:hover{background:#0f766e33;border-color:var(--accent)}.download-btn{background:#3b82f61f;color:#1e40af;border:1px solid rgba(59,130,246,.25)}[data-theme=dark] .download-btn{color:#93c5fd}.download-btn:hover{background:#3b82f633}.delete-btn{background:#ef44441f;color:#991b1b;border:1px solid rgba(239,68,68,.25)}[data-theme=dark] .delete-btn{color:#fca5a5}.delete-btn:hover:not(:disabled){background:#ef444433}.delete-btn:disabled{opacity:.5;cursor:not-allowed}.history-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--panel-border)}.pagination-info{font-size:.85rem;color:var(--muted)}.pagination-controls{display:flex;gap:.5rem}.pagination-btn{padding:.5rem 1rem;background:#fff9;border:1px solid rgba(31,27,22,.18);border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}[data-theme=dark] .pagination-btn{background:#10182799;border-color:#fff3}.pagination-btn:hover:not(:disabled){background:#ffffffe6;transform:translateY(-1px)}[data-theme=dark] .pagination-btn:hover:not(:disabled){background:#101827e6}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:900px){header{flex-direction:column;align-items:flex-start;gap:.6rem}.form-row,.text-block-row,.review-columns-label{grid-template-columns:1fr}.history-header{flex-direction:column;gap:1rem}.history-table-wrapper{overflow-x:scroll}.history-table{min-width:700px}.actions-cell{flex-direction:column;align-items:flex-start}}
