@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font:"DM Sans", sans-serif;--mono:"DM Mono", monospace;--bg:#f4f2ed;--surface:#fafaf7;--border:#e2ddd6;--ink:#1a1916;--ink2:#6b6760;--ink3:#b0ada8;--accent:#1a1916;--green:#2d6a4f;--green-bg:#ecf5f0;--red:#8b2020;--red-bg:#faecec;--amber:#7a4f00;--amber-bg:#fef3dc;--radius:10px}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}input,select,textarea,button{font-family:var(--font);font-size:14px}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);outline:none;padding:9px 12px;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--ink)}textarea{resize:none}label{color:var(--ink2);letter-spacing:.02em;margin-bottom:5px;font-size:12px;font-weight:500;display:block}.btn{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-primary:hover{opacity:.85}.btn-ghost{color:var(--ink2);border-color:var(--border);background:0 0}.btn-ghost:hover{background:var(--border);color:var(--ink)}.btn-green{background:var(--green-bg);color:var(--green);border-color:#b6d9c6}.btn-green:hover{opacity:.8}.btn-red{background:var(--red-bg);color:var(--red);border-color:#f0bcbc}.btn-red:hover{opacity:.8}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-full{width:100%}.pill{letter-spacing:.02em;border-radius:99px;padding:3px 10px;font-size:11px;font-weight:500;display:inline-block}.pill-pending{background:var(--amber-bg);color:var(--amber)}.pill-approved{background:var(--green-bg);color:var(--green)}.pill-disputed{background:var(--red-bg);color:var(--red)}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px 22px}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--ink3);margin-bottom:12px;font-size:11px;font-weight:600}.empty{text-align:center;color:var(--ink3);padding:2.5rem 1rem;font-size:14px}.alert{border-radius:var(--radius);margin-bottom:12px;padding:10px 14px;font-size:13px}.alert-error{background:var(--red-bg);color:var(--red)}.alert-success{background:var(--green-bg);color:var(--green)}
