:root{--bg: #f6f7f9;--card: #ffffff;--text: #1a1d21;--muted: #667085;--border: #d0d5dd;--accent: #2563eb;--accent-text: #ffffff;--danger: #dc2626;--ok: #16a34a}@media(prefers-color-scheme:dark){:root{--bg: #101418;--card: #1a2027;--text: #e6e9ec;--muted: #98a2b3;--border: #344054;--accent: #3b82f6}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,sans-serif;min-height:100vh}main{max-width:640px;margin:0 auto;padding:2rem 1rem 4rem}h1{font-size:1.4rem;margin:0 0 1.25rem}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:1rem}label{display:block;font-weight:600;margin-bottom:.4rem}textarea,input[type=text],input[type=tel]{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);padding:.6rem .75rem;font:inherit}textarea{min-height:9rem;resize:vertical}.hint{color:var(--muted);font-size:.85rem;margin-top:.3rem}#dropzone{border:2px dashed var(--border);border-radius:12px;padding:1.5rem;text-align:center;color:var(--muted);cursor:pointer;transition:border-color .15s,background .15s}#dropzone.dragover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.filerow{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.filerow:last-child{border-bottom:none}.filerow .name{flex:1;overflow-wrap:anywhere}.filerow .size{color:var(--muted);white-space:nowrap;font-size:.85rem}.filerow button{background:none;border:none;color:var(--danger);cursor:pointer;font-size:1rem}progress{width:100%;height:6px}button.primary{width:100%;background:var(--accent);color:var(--accent-text);border:none;border-radius:8px;padding:.75rem;font:inherit;font-weight:600;cursor:pointer}button.primary:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--danger);font-weight:600}.ok{color:var(--ok);font-weight:600}.totp{letter-spacing:.35em;font-variant-numeric:tabular-nums;text-align:center;font-size:1.2rem}pre.message{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;margin:0}a{color:var(--accent)}.status-pill{display:inline-block;padding:.1rem .6rem;border-radius:999px;border:1px solid var(--border);font-size:.8rem;color:var(--muted)}
