:root{--bg: #0f1115;--card: #1a1d24;--border: #2a2e38;--text: #e7e9ee;--muted: #9aa0ac;--accent: #5865f2;--accent-hover: #4752c4;--error: #ff6b6b;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.app{max-width:540px;margin:0 auto;padding:48px 20px;display:flex;flex-direction:column;gap:16px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px}h1,h2{margin:0 0 12px}.muted{color:var(--muted)}.error{color:var(--error)}.topbar{display:flex;justify-content:space-between;align-items:center;font-size:14px}.form{display:flex;flex-direction:column;gap:16px}label{display:flex;flex-direction:column;gap:6px;font-size:14px}input[type=text],input[type=password],select{background:#0f1115;border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px 12px;font-size:15px}input[type=file]{font-size:14px;color:var(--muted)}fieldset{border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:8px}legend{color:var(--muted);font-size:13px;padding:0 6px}.check{flex-direction:row;align-items:center;gap:8px}button{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:11px 18px;font-size:15px;cursor:pointer}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:transparent;border:1px solid var(--border)}button.link{background:none;color:var(--muted);padding:4px 8px;font-size:13px;text-decoration:underline}.prompt form{display:flex;gap:8px}.prompt input{flex:1}.actions{display:flex;gap:10px}.filename{font-size:14px;word-break:break-all}.bar{height:10px;background:#0f1115;border-radius:6px;overflow:hidden;margin:8px 0}.bar-fill{height:100%;background:var(--accent);transition:width .2s ease}.pct{font-variant-numeric:tabular-nums;margin:4px 0}.hint{font-size:13px}
