:root{--bg:#0a0a0a;--card:#111;--card-hover:#171717;--text-primary:#f0ede8;--text-secondary:#8a8580;--muted:#6b6560;--accent:#c9a96e;--accent-dim:#c9a96e1a;--accent-hover:#d4b47a;--danger:#c0392b;--warning:#b8860b;--success:#2d7a55;--hairline:#ffffff0f;--hairline-strong:#ffffff1a;--radius-card:6px;--radius-btn:4px;--radius-sm:4px;--shadow-modal:0 8px 32px #0009}.re-card{background:var(--card);border:1px solid var(--hairline);border-radius:var(--radius-card);transition:border-color .2s}.re-card:hover{border-color:var(--hairline-strong)}.re-btn{background:var(--accent);color:#0a0a0a;border-radius:var(--radius-btn);letter-spacing:.02em;cursor:pointer;border:none;justify-content:center;align-items:center;padding:10px 22px;font-size:13px;font-weight:500;text-decoration:none;transition:opacity .2s;display:inline-flex}.re-btn:hover{opacity:.82}.re-btn:disabled{opacity:.35;cursor:not-allowed}.re-btn-ghost{color:var(--text-secondary);border:1px solid var(--hairline);border-radius:var(--radius-btn);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:10px 20px;font-size:13px;transition:opacity .2s,border-color .2s;display:inline-flex}.re-btn-ghost:hover{border-color:var(--hairline-strong);color:var(--text-primary)}.re-pill{letter-spacing:.08em;text-transform:uppercase;border-radius:3px;align-items:center;padding:2px 8px;font-size:10px;font-weight:500;display:inline-flex}.re-pill-pending{color:var(--warning);background:#b8860b1f}.re-pill-done{color:var(--success);background:#2d7a551f}.re-pill-error{color:var(--danger);background:#c0392b1f}.re-pill-draft{background:var(--hairline);color:var(--muted)}.re-input{border:none;border-bottom:1px solid var(--hairline);color:var(--text-primary);background:0 0;border-radius:0;outline:none;width:100%;padding:10px 0;font-size:14px;transition:border-color .2s}.re-input:focus{border-bottom-color:var(--accent)}.re-input::placeholder{color:var(--muted)}textarea.re-input{resize:vertical;padding:8px 0}select.re-input{cursor:pointer;appearance:auto}.re-shimmer{background:linear-gradient(90deg, var(--card) 25%, var(--card-hover) 50%, var(--card) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.re-fade-in{animation:.25s forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
