:root{--verde:#0e4d2b;--v2:#1f8a4c;--borda:#dbe4de;--txt:#17231c;--t2:#4b5a51;--t3:#7a877f;--fundo:#f2f5f3}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--fundo);color:var(--txt)}
.logo{background:#fff;color:var(--verde);font-weight:800;letter-spacing:.14em;border-radius:7px;padding:4px 10px;font-size:13px}
.topo{background:var(--verde);color:#fff;display:flex;align-items:center;gap:12px;padding:12px 18px;position:sticky;top:0;z-index:5}
.topo .atu{font-size:12px;opacity:.8;margin-left:auto}.topo .nome{font-weight:700;font-size:14px}.sair{color:#fff;font-size:13px}
.abas{display:flex;gap:6px;padding:12px 16px 0;max-width:1200px;margin:0 auto;flex-wrap:wrap}
.abas button{border:1px solid var(--borda);background:#fff;border-radius:999px;padding:8px 16px;font-weight:700;cursor:pointer;color:var(--t2)}
.abas button.on{background:var(--verde);color:#fff;border-color:var(--verde)}
main{max-width:1200px;margin:0 auto;padding:12px 16px 40px}
.barra{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.barra input{flex:1;min-width:220px;padding:10px 12px;border:1px solid var(--borda);border-radius:10px;font-size:15px}
.tg button{border:1px solid var(--borda);background:#fff;border-radius:10px;padding:8px 12px;font-weight:700;cursor:pointer}.tg button.on{background:#e3f1e8;border-color:var(--v2);color:var(--verde)}
.card{background:#fff;border:1px solid var(--borda);border-left:5px solid #c9d3cd;border-radius:12px;padding:12px 14px;margin-bottom:8px}
.card.CARREGADO{border-left-color:var(--v2)}.card.CARREGANDO{border-left-color:#3b82f6}.card.LIBERADO{border-left-color:#e0a100}.card.AGUARDANDO{border-left-color:#9aa7a0}.card.CANCELADO{opacity:.6}
.ct{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.ct b{font-size:16px}
.st{font-size:12px;font-weight:800;border-radius:999px;padding:3px 10px;background:#eef1ef;white-space:nowrap}
.st.CARREGADO,.st.EFETIVADA{background:#dff3e6;color:#14532d}.st.CARREGANDO,.st.PROGRAMADA{background:#e3eefc;color:#1d4f9c}
.st.LIBERADO,.st.AGUARDANDO_CONFIRMACAO{background:#fff4d6;color:#7a5200}.st.RECUSADA,.st.CANCELADO,.st.bl{background:#fdecea;color:#b42318}
.meta{font-size:13px;color:var(--t2);margin-top:4px}.meta span{margin-right:12px}
.it{font-size:13.5px;border-top:1px dashed var(--borda);margin-top:6px;padding-top:6px}.it div{display:flex;justify-content:space-between;gap:8px}
.q{font-family:ui-monospace,Consolas,monospace;font-weight:800;color:var(--verde);white-space:nowrap}
table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--borda);border-radius:12px;overflow:hidden;font-size:13.5px}
th{background:#f4f8f5;font-size:11px;letter-spacing:.06em;color:var(--t3);text-align:left;padding:9px 10px}td{padding:9px 10px;border-top:1px solid var(--borda);vertical-align:top}
td.n{text-align:right;font-family:ui-monospace,Consolas,monospace;white-space:nowrap}
.bar{height:6px;background:#eef1ef;border-radius:99px;overflow:hidden;margin-top:4px;min-width:80px}.bar i{display:block;height:100%;background:var(--v2)}
.vazio{color:var(--t3);padding:20px 0}
.lg{display:grid;place-items:center;min-height:100vh;padding:16px}.lg-card{background:#fff;border:1px solid var(--borda);border-radius:18px;padding:28px;max-width:380px;width:100%;text-align:center}
.lg-card .logo{display:inline-block;background:var(--verde);color:#fff}.lg-card h1{margin:12px 0 4px}.sub{color:var(--t2);margin:0 0 18px}
.lg-card label{display:block;text-align:left;font-size:13px;font-weight:700;color:var(--t2)}.lg-card input{width:100%;margin-top:6px;padding:12px;border:1.5px solid var(--borda);border-radius:10px;font-size:17px}
.lg-card button{width:100%;margin-top:14px;padding:12px;border:0;border-radius:10px;background:var(--verde);color:#fff;font-weight:800;font-size:16px;cursor:pointer}
.msg{color:var(--t2);font-size:14px;margin-top:14px}.voltar{display:block;margin-top:12px;font-size:13px;color:var(--v2)}
@media(max-width:700px){table thead{display:none}table,tbody,tr,td{display:block;width:100%}tr{border-top:1px solid var(--borda);padding:6px 0}td{border:0;padding:3px 10px}td.n{text-align:left}}
.msg.erro{color:#b42318}.peq{font-size:12px}.qr{width:200px;height:200px;margin:6px auto;display:block}
code{background:#f4f8f5;padding:2px 6px;border-radius:6px;font-size:13px;word-break:break-all}
.lg-card label + label{margin-top:10px}
h2{font-size:16px;margin:18px 0 8px}
.aviso{background:#fff4d6;border:1px solid #e8d08a;color:#6b4a00;border-radius:10px;padding:10px 14px;font-weight:700;margin:8px 0}
.nu{display:grid;grid-template-columns:1fr 1fr 1fr 1.5fr auto;gap:8px;align-items:end;background:#fff;border:1px solid var(--borda);border-radius:12px;padding:12px}
.nu label{font-size:12px;font-weight:700;color:var(--t2);display:flex;flex-direction:column;gap:4px}
.nu input,.nu select,.ed input,.ed select{padding:8px 10px;border:1px solid var(--borda);border-radius:8px;font-size:14px}
.nu button,.ed button{padding:9px 14px;border:0;border-radius:8px;background:var(--verde);color:#fff;font-weight:700;cursor:pointer}
.ed{display:flex;gap:6px;flex-wrap:wrap}.ed input{width:150px}
.acs form{display:inline}.lnk{border:0;background:none;color:var(--v2);font-weight:700;cursor:pointer;padding:2px 4px}
tr.off td{opacity:.5}
@media(max-width:800px){.nu{grid-template-columns:1fr}}
