:root{--bg:#ffffff;--fg:#16181d;--muted:#5b6472;--border:#e3e6ea;--card:#f7f8fa;--accent:#2f6df6;--accent-fg:#ffffff;--warn-bg:#fff4e5;--warn-fg:#8a5300;--err-bg:#fdecec;--err-fg:#a11115}@media (prefers-color-scheme:dark){:root{--bg:#0f1115;--fg:#e8ebf0;--muted:#9aa4b2;--border:#262b33;--card:#171a20;--accent:#5b8bff;--accent-fg:#0f1115;--warn-bg:#2a2113;--warn-fg:#e7b768;--err-bg:#2a1416;--err-fg:#ff8a8a}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}main{max-width:820px;margin:0 auto;padding:48px 20px 96px}h1{font-size:26px;margin:0 0 4px;letter-spacing:-.02em}.sub{color:var(--muted);margin:0 0 28px}form{display:flex;flex-direction:column;gap:14px}label{font-size:13px;font-weight:600;color:var(--muted);display:block;margin-bottom:6px}input[type=text],select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--fg);font-size:15px}.row{display:flex;gap:14px;flex-wrap:wrap}.row>div{flex:1 1 180px}.checkbox{display:flex;align-items:center;gap:8px}.checkbox label{margin:0}button{align-self:flex-start;padding:10px 20px;border:none;border-radius:8px;background:var(--accent);color:var(--accent-fg);font-size:15px;font-weight:600;cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.panel{margin-top:28px}.stages{display:flex;flex-direction:column;gap:8px}.stage{display:flex;align-items:center;gap:10px;color:var(--muted)}.stage .dot{width:9px;height:9px;border-radius:50%;background:var(--border)}.stage.active .dot{background:var(--accent);animation:pulse 1s ease-in-out infinite}.stage.active{color:var(--fg);font-weight:600}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.elapsed{color:var(--muted);font-size:13px;margin-top:10px}.banner{padding:12px 14px;border-radius:8px;font-size:14px}.banner.warn{background:var(--warn-bg);color:var(--warn-fg)}.banner.err{background:var(--err-bg);color:var(--err-fg)}.card{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:18px;margin-top:16px}.card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.tag{font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--bg);border:1px solid var(--border);color:var(--muted)}.tag.thin{background:var(--warn-bg);color:var(--warn-fg)}.tag.err,.tag.thin{border-color:transparent}.tag.err{background:var(--err-bg);color:var(--err-fg)}.draft-text{white-space:pre-wrap;margin:0 0 12px}.source{font-size:13px;color:var(--muted)}.source a{color:var(--accent)}.card.failed .draft-text{color:var(--muted);font-style:italic}