:root{--bg: #f4f6f5;--card: #ffffff;--ink: #15201b;--muted: #647067;--line: #e2e8e4;--brand: #0b3d2e;--brand-ink: #0b3d2e;--accent: #12855f;--ok: #157f4a;--warn: #b26a00;--erro: #b3261e;--div: #b3261e;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0e1512;--card: #15201b;--ink: #eaf1ec;--muted: #9aa8a0;--line: #26332c;--brand: #0e1512;--accent: #2ea37a;--ok: #4cc08a;--warn: #e0a042;--erro: #f3766c;--div: #f3766c;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;-webkit-text-size-adjust:100%}.center{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px max(16px,env(safe-area-inset-left)) 24px max(16px,env(safe-area-inset-right));text-align:center}.muted{color:var(--muted)}.sm{font-size:12px}.bloco{padding:20px}.app{max-width:680px;margin:0 auto;min-height:100dvh}.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px max(16px,env(safe-area-inset-left));background:var(--brand);color:#fff}.top .ident strong{font-size:16px}.top .muted{color:#cfe3d9}.list{padding:14px max(16px,env(safe-area-inset-left)) 40px;display:flex;flex-direction:column;gap:10px}.titulo{margin:6px 2px;font-size:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}.desc{font-weight:600}.cod{font:600 12px/1 IBM Plex Mono,ui-monospace,Menlo,Consolas,monospace;color:var(--accent);margin-right:6px}label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}input{width:100%;padding:14px;font-size:17px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink)}input:focus{outline:2px solid var(--accent);border-color:transparent}button{font:inherit;font-weight:600;border:0;border-radius:12px;padding:12px 16px;cursor:pointer;background:var(--line);color:var(--ink)}button.primary{background:var(--accent);color:#fff}button.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}button.mini{padding:10px 18px;background:var(--accent);color:#fff}button.link{background:none;color:#cfe3d9;padding:0 8px;text-decoration:underline;font-size:12px}button:disabled{opacity:.6;cursor:default}.login{width:100%;max-width:360px;display:flex;flex-direction:column;text-align:left}.login h1{margin:0 0 2px;font-size:20px;color:var(--brand-ink)}.login .primary{margin-top:16px}.barra{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 6px}.prog{font-size:13px;color:var(--muted)}.row{text-align:left;background:var(--card);border:1px solid var(--line);padding:16px;border-radius:14px;font-size:16px}.item{display:flex;align-items:center;justify-content:space-between;gap:10px}.item.done{opacity:.6}.item .ok{color:var(--ok);font-weight:600;font-size:13px;white-space:nowrap}.ok-bloco{color:var(--ok);font-weight:600}.erro{color:var(--erro);font-size:13px;margin-top:8px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-end;justify-content:center;padding:0;z-index:20}.sheet{width:100%;max-width:680px;border-radius:18px 18px 0 0;padding:18px max(16px,env(safe-area-inset-left)) calc(20px + env(safe-area-inset-bottom))}.acoes{display:flex;gap:10px;margin-top:16px}.acoes button{flex:1}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.tab{background:var(--card);border:1px solid var(--line);color:var(--muted);white-space:nowrap}.tab.on{background:var(--brand);color:#fff;border-color:var(--brand)}.dv .meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:8px;font-size:13px;color:var(--muted)}.dv .meta b{color:var(--ink)}.quando{margin-top:6px;font-size:12px;color:var(--muted)}.tag{padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}.tag.divergencia{background:color-mix(in srgb,var(--div) 16%,transparent);color:var(--div)}.tag.barras_invalido{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.tag.ok{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}.dv.divergencia{border-left:4px solid var(--div)}.dv.barras_invalido{border-left:4px solid var(--warn)}
