:root{--ink:#14261f;--muted:#5b6b64;--bg:#f7faf8;--green:#1fa463;--green-dark:#157a49;--line:#e2e9e5}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}
header{background:#fff;border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;gap:10px;height:60px}
header img{height:30px}
header b{font-size:1.25rem}header b span{color:var(--green)}
nav{margin-inline-start:auto;display:flex;gap:18px}
nav a{color:var(--muted);text-decoration:none;font-size:.95rem}
nav a.active{color:var(--green-dark);font-weight:600}
.wrap{max-width:720px;margin:0 auto;padding:0 20px}
main{padding:28px 0}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
h1{margin:0 0 6px;font-size:1.4rem}
h1+p{margin:0 0 16px;color:var(--muted);font-size:.95rem}
label{display:block;font-size:.85rem;color:var(--muted);margin:12px 0 4px}
input,select,textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff}
textarea{min-height:100px;resize:vertical}
button{margin-top:16px;background:var(--green);color:#fff;border:0;border-radius:8px;padding:11px 20px;font:inherit;font-weight:600;cursor:pointer}
button:hover{background:var(--green-dark)}button:disabled{opacity:.5}
.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
pre{background:#0f1f18;color:#d7f5e5;padding:12px;border-radius:8px;font-size:.8rem;overflow:auto;margin:16px 0 0;min-height:44px;direction:ltr;text-align:left;white-space:pre-wrap}
.ok{color:#59e39a}.err{color:#ff8c8c}
table{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:18px}
td,th{padding:8px 4px;border-bottom:1px solid var(--line);text-align:right}
.tag{padding:2px 8px;border-radius:99px;font-size:.75rem;background:#eef6f1}
.tag.APPROVED{background:#dff5e8;color:#157a49}.tag.PENDING{background:#fff4d6;color:#8a6100}.tag.REJECTED{background:#ffe1e1;color:#a11}
.login{min-height:100vh;display:grid;place-items:center}
.login .card{width:min(380px,92vw);text-align:center}
.login img{height:64px;margin-bottom:8px}
.login button{width:100%}
.warn{color:#a11;font-size:.9rem;margin:10px 0 0}
