:root{--bg: #0f172a;--surface: #1e293b;--border: #334155;--border-focus: #818cf8;--text: #f1f5f9;--text-muted: #94a3b8;--primary: #818cf8;--primary-hover: #6366f1;--primary-text: #ffffff;--success: #4ade80;--error: #f87171;--warning: #f59e0b;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);--shadow: 0 4px 12px rgba(0,0,0,.4), 0 1px 3px rgba(0,0,0,.3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;min-height:100vh;color-scheme:dark}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none}.app-container{max-width:680px;margin:0 auto;padding:2rem 1rem 4rem}.app-header{text-align:center;margin-bottom:2rem}.app-header h1{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.app-header .subtitle{margin-top:.35rem;font-size:.875rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;gap:.35rem}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--surface);user-select:none}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--primary);background:#1e1b4b}.drop-zone__icon{display:flex;justify-content:center;margin-bottom:.75rem;color:var(--text-muted)}.drop-zone__text{font-size:1rem;font-weight:600;color:var(--text)}.drop-zone__sub{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.drop-zone__btn{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;padding:.5rem 1.25rem;border:1.5px solid var(--border);border-radius:var(--radius);font-size:.875rem;font-weight:500;color:var(--text);background:var(--surface);transition:border-color .15s,background .15s;cursor:pointer}.drop-zone__btn:hover{border-color:var(--primary);background:#312e81;color:var(--primary)}.file-list{display:flex;flex-direction:column;gap:.625rem;margin-top:1rem}.file-list__divider{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-muted);padding:.25rem 0}.file-list__divider:before,.file-list__divider:after{content:"";flex:1;height:1px;background:var(--border)}.file-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:.875rem 1rem;display:grid;grid-template-columns:1.5rem 1fr auto;gap:0 .75rem;align-items:center;box-shadow:var(--shadow-sm);transition:opacity .15s,border-color .15s}.file-card.is-dragging{opacity:.4}.file-card.drag-target{border-color:var(--primary)}.file-card__drag{color:var(--text-muted);cursor:grab;display:flex;align-items:center;touch-action:none}.file-card__drag:active{cursor:grabbing}.file-card__info{min-width:0}.file-card__name{font-size:.9375rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-card__meta{font-size:.825rem;color:var(--text-muted);margin-top:.15rem}.file-card__actions{display:flex;align-items:center;gap:.5rem}.file-card__status{display:flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:500}.file-card__format-badge{font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:.1em .4em;border-radius:3px;background:#4ade8026;color:var(--success);margin-left:.25rem}.file-card__status--converting{color:var(--primary)}.file-card__status--done{color:var(--success)}.file-card__status--error{color:var(--error)}.file-card__status--pending{color:var(--text-muted)}.file-card__progress{grid-column:1 / -1;margin-top:.5rem;height:4px;background:#1e1b4b;border-radius:9999px;overflow:hidden}.file-card__progress-bar{height:100%;background:var(--primary);border-radius:9999px;animation:indeterminate 1.4s ease infinite}@keyframes indeterminate{0%{transform:translate(-100%);width:60%}to{transform:translate(200%);width:60%}}.icon-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-sm);color:var(--text-muted);transition:background .12s,color .12s}.icon-btn:hover{background:var(--bg);color:var(--text)}.icon-btn--delete:hover{background:#450a0a;color:var(--error)}.icon-btn--download{color:var(--primary)}.icon-btn--download:hover{background:#312e81;color:var(--primary-hover)}.file-group{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.file-group__summary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:600;color:var(--text);cursor:pointer;list-style:none;user-select:none;transition:background .12s;position:relative;overflow:hidden}.file-group__summary:not(.file-group__summary--static):hover{background:var(--bg)}.file-group__summary--static{cursor:default}.file-group__summary::-webkit-details-marker{display:none}.file-group__summary svg{color:var(--text-muted);transition:transform .2s;flex-shrink:0}details.file-group[open] .file-group__summary{border-bottom:1px solid var(--border)}details.file-group[open] .file-group__summary svg{transform:rotate(180deg)}.file-group__body{display:flex;flex-direction:column;gap:.625rem;padding:.75rem}.file-group__progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#1e1b4b;overflow:hidden}.file-group__progress-bar{height:100%;background:var(--primary);border-radius:9999px;animation:indeterminate 1.4s ease infinite}details.file-group[open] .file-group__progress{display:none}.options-panel{margin-top:1.25rem;background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.options-panel__summary{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;list-style:none;color:var(--text);user-select:none}.options-panel__summary::-webkit-details-marker{display:none}.options-panel__summary:hover{background:var(--bg)}.options-panel__chevron{margin-left:auto;color:var(--text-muted);transition:transform .2s}details[open] .options-panel__chevron{transform:rotate(180deg)}.options-panel__body{padding:1rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1rem}.opt-row{display:flex;flex-direction:column;gap:.35rem}.opt-label{font-size:.825rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.format-radios{display:flex;gap:.5rem}.format-radio{display:none}.format-radio-label{padding:.375rem .875rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .12s,background .12s,color .12s}.format-radio:checked+.format-radio-label{border-color:var(--primary);background:#1e1b4b;color:var(--primary)}.range-row{display:flex;align-items:center;gap:.75rem}.range-row input[type=range]{flex:1;accent-color:var(--primary);height:4px;cursor:pointer}.range-value{font-size:.85rem;font-weight:600;min-width:3rem;text-align:right}.toggle-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.toggle-row input[type=checkbox]{accent-color:var(--primary)}.resize-fields{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;transition:opacity .15s}.resize-fields.disabled{opacity:.4;pointer-events:none}.resize-fields input{width:100%;padding:.5rem .75rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);font:inherit;font-size:.875rem;outline:none;transition:border-color .12s}.resize-fields input:focus{border-color:var(--primary)}.action-bar{margin-top:1.5rem;display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:var(--primary);color:var(--primary-text);border-radius:var(--radius);font-size:.9375rem;font-weight:600;box-shadow:0 2px 8px #6366f14d;transition:background .15s,box-shadow .15s,transform .1s}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 4px 14px #6366f166}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-zip{background:#0f766e;box-shadow:0 2px 8px #0f766e4d}.btn-zip:hover{background:#0d6460;box-shadow:0 4px 14px #0f766e66}.file-list__zip-bar{display:flex;justify-content:center;padding:.5rem 0}.btn-zip--inline{padding:.625rem 1.5rem;font-size:.875rem}@media(max-width:480px){.app-container{padding:1.25rem .875rem 3rem}.app-header h1{font-size:1.375rem}.btn-primary{padding:.875rem 1.5rem;width:100%;justify-content:center}.resize-fields{grid-template-columns:1fr}}
