:root{--bg:#1a2332;--bg-card:#232e44;--bg-elevated:#2a3548;--fg:#f4f1ed;--fg-muted:#9ba6bb;--border:hsla(34,24%,94%,.1);--accent:#d4af6a;--accent-hover:#e8c481;--green:#5ac985;--red:#e57373;--yellow:#f4c062}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;border-radius:6px;padding:10px 16px;font-weight:600;transition:background .15s,transform .05s}button:active{transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed}button.btn-primary{background:var(--accent);color:var(--bg)}button.btn-primary:hover:not(:disabled){background:var(--accent-hover)}button.btn-approve{background:var(--green);color:var(--bg)}button.btn-deny{background:var(--red);color:var(--bg)}button.btn-revise{background:var(--yellow);color:var(--bg)}button.btn-secondary{background:transparent}button.btn-secondary,input,select,textarea{color:var(--fg);border:1px solid var(--border)}input,select,textarea{font-family:inherit;font-size:inherit;background:var(--bg-elevated);border-radius:6px;padding:10px 12px;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-2px}.container{max-width:720px;margin:0 auto;padding:16px}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--border);margin-bottom:24px}.header h1{font-size:18px;font-weight:700;letter-spacing:-.3px}.header h1 .accent{color:var(--accent)}.header .who{font-size:13px}.empty,.header .who{color:var(--fg-muted)}.empty{text-align:center;padding:60px 20px}.approval-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:12px}.approval-card.urgency-HIGH{border-left:3px solid var(--red)}.approval-card.urgency-MED{border-left:3px solid var(--yellow)}.approval-card.urgency-LOW{border-left:3px solid var(--fg-muted)}.approval-card .meta{display:flex;gap:8px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--fg-muted);margin-bottom:8px;flex-wrap:wrap}.approval-card .meta .pill{background:var(--bg-elevated);padding:3px 8px;border-radius:4px}.approval-card .meta .pill.spend{background:hsla(39,55%,62%,.15);color:var(--accent)}.approval-card h2{font-size:16px;font-weight:600;margin-bottom:8px}.approval-card .body{font-size:14px;color:var(--fg-muted);margin-bottom:12px;white-space:pre-wrap;word-wrap:break-word}.approval-card .body strong{color:var(--fg)}.approval-card .actions{display:flex;gap:8px;flex-wrap:wrap}.approval-card .actions button{flex:1 1;min-width:90px;padding:12px;font-size:14px}.approval-card.decided{opacity:.65}.approval-card .decision{margin-top:8px;padding-top:12px;border-top:1px solid var(--border);font-size:13px;color:var(--fg-muted)}.approval-card .decision.APPROVED{color:var(--green)}.approval-card .decision.DENIED{color:var(--red)}.approval-card .decision.REVISE_REQUESTED{color:var(--yellow)}.tabs{display:flex;gap:4px;margin-bottom:16px;background:var(--bg-card);padding:4px;border-radius:8px}.tabs button{flex:1 1;background:transparent;color:var(--fg-muted);padding:8px;border-radius:6px;font-weight:500}.tabs button.active{background:var(--bg-elevated);color:var(--fg)}.notes-input{margin-top:12px;font-size:13px;min-height:60px;resize:vertical}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.login-card{width:100%;max-width:360px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:32px}.login-card h1{font-size:20px;font-weight:700;margin-bottom:4px;text-align:center}.login-card .subtitle{font-size:13px;color:var(--fg-muted);text-align:center;margin-bottom:24px}.login-card label{display:block;margin-bottom:6px;font-size:13px;color:var(--fg-muted)}.login-card input,.login-card select{margin-bottom:16px}.login-card button{width:100%;padding:14px}.login-card .error{background:hsla(0,69%,67%,.15);color:var(--red);padding:10px 12px;border-radius:6px;font-size:13px;margin-bottom:16px}.toast{position:fixed;bottom:16px;left:16px;right:16px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:12px 16px;font-size:14px;text-align:center;z-index:100;animation:toastIn .2s ease-out}.toast.error{background:hsla(0,69%,67%,.15);border-color:var(--red);color:var(--red)}.toast.success{background:rgba(90,201,133,.15);border-color:var(--green);color:var(--green)}@keyframes toastIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (min-width:720px){.toast{left:auto;right:24px;max-width:360px}}