@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500&family=Nunito+Sans:wght@400;600;700&display=swap');
:root{--creme:#F7F1E8;--card:#FFFBF5;--areia:#EADFCF;--cafe:#3B2A20;--terra:#9C4F2B;--texto2:#6E5646;--linha:#DCCDBA}
*{box-sizing:border-box}
body{margin:0;background:var(--creme);color:var(--cafe);font-family:'Nunito Sans',system-ui,sans-serif;font-size:16px}
a{color:var(--terra)}a:hover{color:var(--cafe)}
h1,h2,h3,.serif{font-family:'Fraunces',Georgia,serif;font-weight:400}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
header.top{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:18px 20px;max-width:1180px;margin:0 auto}
.logo{font-family:'Fraunces',serif;font-size:26px;letter-spacing:7px}
.logo small{font-family:'Nunito Sans';font-size:11px;letter-spacing:3px;color:var(--terra);font-weight:700;margin-left:10px}
nav.menu{display:flex;flex-wrap:wrap;gap:18px}nav.menu a{text-decoration:none;color:var(--cafe)}
.card{background:var(--card);border-radius:22px;padding:22px 24px}
.escuro{background:var(--cafe);color:#FFF8EF}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.linha{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px}.linha>*{flex:1 1 340px;min-width:0}
.rot{font-size:13px;color:var(--texto2)}
.num{font-family:'Fraunces',serif;font-size:34px;margin:6px 0 2px}
.sub{font-size:13px;color:#5E5E2E}
.btn{display:inline-block;border:0;border-radius:999px;padding:13px 22px;font:700 15px 'Nunito Sans',sans-serif;cursor:pointer;background:var(--cafe);color:#FFF8EF;text-decoration:none;min-height:46px}
.btn.claro{background:var(--areia);color:var(--cafe)}.btn.verde{background:#1F7A45}
input,select{width:100%;min-height:48px;border-radius:14px;border:1.5px solid #CDBBA6;background:var(--card);padding:0 14px;font:16px 'Nunito Sans',sans-serif;color:var(--cafe)}
label{font-weight:700;font-size:14px;display:block;margin:12px 0 6px}
table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--texto2);font-weight:600;padding:10px 8px}td{padding:11px 8px;border-top:1px solid #EDE2D4}
.tab{overflow-x:auto}
.pill{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:700}
.st-pendente,.st-em_analise{background:#F6E7C1;color:#5E4500}.st-liberada,.st-aprovada{background:#E3EEDB;color:#2F5A1E}.st-paga{background:#E6E1F3;color:#43327A}.st-cancelada,.st-recusada{background:#F3DCDC;color:#7A2828}
.barras{display:flex;align-items:flex-end;gap:12px;height:170px;border-bottom:1px solid var(--linha)}
.barras div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;font-size:12px;height:100%}
.barras span.b{width:100%;max-width:42px;background:#C9784C;border-radius:10px 10px 0 0}
.prog{height:10px;border-radius:999px;background:#EDE2D4;overflow:hidden}.prog i{display:block;height:100%;background:var(--terra);border-radius:999px}
.aviso{padding:12px 16px;border-radius:14px;background:#F6E7C1;color:#5E4500;margin:12px 0;display:none}
.aviso.on{display:block}.aviso.ok{background:#E3EEDB;color:#2F5A1E}
section{margin-top:30px}
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px 20px}
.login form{width:100%;max-width:420px}
