:root { --bg:#faf6f1; --fg:#3b3029; --muted:#8a7b6f; --accent:#b08968; --card:#fff; --ok:#3f8f5b; --err:#c0392b; }
@media (prefers-color-scheme: dark) { :root { --bg:#1d1916; --fg:#f1e9e1; --muted:#a89a8e; --card:#2a2420; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font-family:Georgia,"Times New Roman",serif; }
main { max-width:480px; margin:0 auto; padding:28px 16px 48px; }
header { text-align:center; margin-bottom:24px; }
.eyebrow { text-transform:uppercase; letter-spacing:.2em; font-size:12px; color:var(--accent); margin:0; }
h1 { font-size:34px; margin:6px 0; font-weight:400; }
.date { color:var(--muted); margin:0 0 12px; }
.lead { color:var(--muted); line-height:1.5; font-family:system-ui,sans-serif; font-size:15px; }
.field { display:block; margin-bottom:16px; font-family:system-ui,sans-serif; }
.field span { display:block; font-size:13px; color:var(--muted); margin-bottom:6px; }
input[type=text] { width:100%; padding:12px; font-size:16px; border:1px solid var(--accent); border-radius:10px; background:var(--card); color:var(--fg); }
.actions { display:grid; gap:12px; }
.btn { display:block; text-align:center; padding:16px; border-radius:14px; border:1.5px solid var(--accent); font:600 17px system-ui,sans-serif; cursor:pointer; color:var(--accent); background:transparent; }
.btn.primary { background:var(--accent); color:#fff; }
#queue { list-style:none; padding:0; margin:24px 0 0; display:grid; gap:10px; }
#queue li { display:grid; grid-template-columns:52px 1fr auto; gap:12px; align-items:center; background:var(--card); padding:10px; border-radius:12px; font-family:system-ui,sans-serif; font-size:14px; }
.thumb { width:52px; height:52px; border-radius:8px; object-fit:cover; background:#0002; display:grid; place-items:center; font-size:22px; }
.meta { min-width:0; }
.meta .name { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bar { height:6px; background:#0002; border-radius:3px; margin-top:6px; overflow:hidden; }
.bar > i { display:block; height:100%; width:0; background:var(--accent); transition:width .2s; }
.status { font-size:13px; }
.ok { color:var(--ok); } .err { color:var(--err); }
.retry { border:0; background:none; color:var(--err); font-weight:600; font-size:13px; cursor:pointer; }
.summary { text-align:center; font-family:system-ui,sans-serif; color:var(--ok); margin-top:20px; font-weight:600; }
