
:root{--bg:#f3f5f9;--card:#fff;--tx:#18202f;--mut:#6b7587;--bd:#e3e7ee;--pri:#1d4ed8;--pri2:#e8efff;--ok:#12805c;--warn:#b45309;--bad:#c0262d;--side:#0f172a;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0b1020;--card:#151c2e;--tx:#e8ecf5;--mut:#929bb0;--bd:#263049;--pri:#6b9bff;--pri2:#1c2a4d;--ok:#3ecf9b;--warn:#f0a94a;--bad:#ff7a80;--side:#070b17}}
:root[data-theme="dark"]{--bg:#0b1020;--card:#151c2e;--tx:#e8ecf5;--mut:#929bb0;--bd:#263049;--pri:#6b9bff;--pri2:#1c2a4d;--ok:#3ecf9b;--warn:#f0a94a;--bad:#ff7a80;--side:#070b17}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font:14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.app{display:flex;min-height:100vh}
aside{width:236px;background:var(--side);color:#cbd5e1;display:flex;flex-direction:column;padding:14px 10px;position:sticky;top:0;height:100vh;transition:width .2s;flex:none;overflow:hidden}
.brand{display:flex;gap:10px;align-items:center;padding:4px 6px 14px}
.logo{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-weight:800;display:grid;place-items:center;flex:none}
.brand b{color:#fff;display:block;line-height:1.1}.brand small{color:#94a3b8}
.unit{margin:0 4px 12px;padding:8px 10px;border:1px solid #243049;border-radius:10px;font-size:12px;cursor:default}
.unit small{color:#94a3b8;display:block}.unit b{color:#fff}.unit i{font-style:normal;color:#64748b;font-size:11px}
nav a{display:flex;gap:12px;align-items:center;padding:10px;border-radius:9px;color:#cbd5e1;text-decoration:none;white-space:nowrap;margin-bottom:2px}
nav a:hover{background:#1a2540}nav a.on{background:#1d4ed8;color:#fff}nav a.off{opacity:.4;cursor:not-allowed}nav .ic{width:20px;text-align:center;flex:none}
.sec{font-size:10px;letter-spacing:.08em;color:#64748b;padding:12px 10px 4px;white-space:nowrap}
.foot{margin-top:auto;font-size:11px;color:#64748b;padding:8px}
.foot a{color:#94a3b8;cursor:pointer;text-decoration:underline}
body.col aside{width:66px}body.col .tx,body.col .sec,body.col .unit,body.col .brand div,body.col .foot{display:none}
main{flex:1;min-width:0;padding:0 22px 40px}
.top{display:flex;align-items:center;gap:12px;padding:14px 0;position:sticky;top:0;background:var(--bg);z-index:5}
.top h1{font-size:20px;margin:0;flex:1}.demo{font-size:11px;background:#fef3c7;color:#92400e;padding:3px 9px;border-radius:99px}
.btn{border:1px solid var(--bd);background:var(--card);color:var(--tx);padding:8px 13px;border-radius:9px;cursor:pointer;font:inherit}
.btn:hover{border-color:var(--pri)}.btn.p{background:var(--pri);border-color:var(--pri);color:#fff}.btn.s{padding:4px 9px;font-size:12px}.btn.x{padding:6px 9px}
.btn.p:hover{filter:brightness(1.1)}
.grid{display:grid;gap:14px}.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:14px}
.two{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));margin-bottom:14px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:13px;padding:15px;min-width:0}
.card h3{margin:0 0 10px;font-size:14px}.kpi small{color:var(--mut)}.kpi b{display:block;font-size:22px;margin-top:2px}
.tbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
input,select,textarea{font:inherit;color:var(--tx);background:var(--card);border:1px solid var(--bd);border-radius:9px;padding:8px 10px;width:100%}
.tbar input,.tbar select{width:auto;flex:1;min-width:140px}.tbar input[type=search]{flex:3}
input:focus,select:focus,textarea:focus{outline:2px solid var(--pri);border-color:transparent}
.tw{overflow-x:auto}table{width:100%;border-collapse:collapse}
th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);text-align:left;padding:9px 10px;border-bottom:1px solid var(--bd);white-space:nowrap}
td{padding:10px;border-bottom:1px solid var(--bd);vertical-align:middle}tr.cl{cursor:pointer}tr.cl:hover td{background:var(--pri2)}
.r{text-align:right}.mut{color:var(--mut)}.tag{display:inline-block;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:600;background:var(--pri2);color:var(--pri);white-space:nowrap}
.tag.ok{background:#d9f5e9;color:#0b6b4b}.tag.bad{background:#fde3e4;color:#a11d24}.tag.warn{background:#fdecd0;color:#8a4a07}.tag.gr{background:var(--bd);color:var(--mut)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .tag.ok{background:#12372b;color:#6ee7b7}:root:not([data-theme="light"]) .tag.bad{background:#46191c;color:#ffa3a8}:root:not([data-theme="light"]) .tag.warn{background:#44300f;color:#fbbf6a}}
.kan{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px;align-items:flex-start}
.col1{flex:0 0 240px;background:var(--card);border:1px solid var(--bd);border-radius:13px;padding:10px;min-height:200px}
.col1 h4{margin:0 0 8px;font-size:12px;display:flex;justify-content:space-between}.col1.over{outline:2px dashed var(--pri)}
.opp{background:var(--bg);border:1px solid var(--bd);border-radius:10px;padding:10px;margin-bottom:8px;cursor:grab}
.opp:hover{border-color:var(--pri)}.opp b{display:block;margin-bottom:2px}.opp small{color:var(--mut);display:block}
.ov{position:fixed;inset:0;background:rgba(5,10,25,.55);display:grid;place-items:center;z-index:50;padding:12px}
.mod{background:var(--card);border-radius:14px;width:100%;max-width:680px;max-height:92vh;overflow:auto;padding:18px}
.mod h2{margin:0 0 12px;font-size:17px}.fg{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:11px}
.fg label{font-size:12px;color:var(--mut);display:block}.fg label input,.fg label select,.fg label textarea{margin-top:3px;color:var(--tx)}.full{grid-column:1/-1}
.mf{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.auto{background:var(--pri2);border-radius:10px;padding:10px;font-size:13px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}
.auto small{color:var(--mut);display:block}
.irow{display:grid;grid-template-columns:1fr 70px 110px auto;gap:6px;margin-bottom:6px}
.hist{border-left:2px solid var(--bd);margin:6px 0 0 6px;padding-left:12px}.hist div{margin-bottom:8px}.hist small{color:var(--mut)}
.tabs{display:flex;gap:6px;flex-wrap:wrap}.soon{border:1px dashed var(--bd);border-radius:10px;padding:10px;color:var(--mut);font-size:12px;flex:1;min-width:150px}
.toast{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));background:#0f172a;color:#fff;padding:10px 16px;border-radius:10px;z-index:99;box-shadow:0 6px 24px #0005}
.bar{display:flex;align-items:center;gap:8px;margin-bottom:7px;font-size:12px}.bar span:first-child{width:105px;flex:none}.bar i{display:block;height:12px;border-radius:6px;background:var(--pri)}.bar .t{flex:1;background:var(--bd);border-radius:6px}
.hm{display:none}
@media(max-width:820px){aside{position:fixed;left:-250px;z-index:40;width:236px!important;transition:left .2s}body.open aside{left:0}body.col .tx,body.col .sec,body.col .unit,body.col .brand div,body.col .foot{display:revert}.hm{display:inline-block}main{padding:0 12px 40px}.irow{grid-template-columns:1fr 60px 95px auto}}
[hidden]{display:none!important}
.seg{display:flex;gap:8px}.seg label{display:inline-flex!important;align-items:center;gap:6px;border:1px solid var(--bd);padding:7px 16px;border-radius:9px;cursor:pointer;color:var(--tx)!important;font-size:14px!important}
.seg input{width:auto;margin:0}.seg label:has(input:checked){background:var(--pri);border-color:var(--pri);color:#fff!important}

/* ---- A1: acréscimos ---- */
.envbar{position:sticky;top:0;z-index:30;padding:5px 12px;font-size:12px;font-weight:700;text-align:center;letter-spacing:.04em}
.envbar.demo{background:#fef3c7;color:#92400e}.envbar.test{background:#e0e7ff;color:#3730a3}.envbar.prod{background:#dcfce7;color:#166534}
.offline{background:#fde3e4;color:#a11d24;padding:8px 12px;border-radius:9px;margin-bottom:10px;font-weight:600}
.login{max-width:420px;margin:8vh auto;padding:0 16px}.login .card{padding:22px}.login h1{font-size:22px;margin:0 0 4px}.login .btn{width:100%;margin-top:10px;padding:11px}
.login label{display:block;margin-top:12px;font-size:12px;color:var(--mut)}.login .chk{display:flex;gap:8px;align-items:center;color:var(--tx)}.login .chk input{width:auto}
.err{background:#fde3e4;color:#a11d24;border-radius:9px;padding:9px 12px;margin-top:12px}
.pager{display:flex;gap:10px;align-items:center;justify-content:flex-end;padding:10px 4px 0;color:var(--mut);font-size:12px}
.loading{color:var(--mut);padding:18px}
.who{font-size:11px;color:#94a3b8;padding:0 10px 8px;word-break:break-all}
.hist-tag{background:#ede9fe;color:#5b21b6}
.srch{position:relative}.pick{border:1px solid var(--bd);border-radius:9px;max-height:180px;overflow:auto;margin-top:4px;background:var(--card)}.pick div{padding:7px 10px;cursor:pointer}.pick div:hover{background:var(--pri2)}
.visually-hidden{position:absolute;left:-9999px}
