:root{--bg:#f6f7fb;--panel:#fff;--ink:#172033;--muted:#697386;--line:#dfe4ee;--green:#16794c;--yellow:#9a6700;--red:#b42318;--blue:#2563eb;--teal:#0f766e;--violet:#6d28d9;--orange:#c2410c;--shadow:0 18px 42px #1720331a;--radius:10px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}.shell{flex-direction:column;min-height:100vh;display:flex}header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:10;background:#ffffffe0;position:sticky;top:0}.topbar{grid-template-columns:1fr auto;align-items:center;gap:20px;padding:16px 24px;display:grid}.tabs{gap:6px;display:flex}.tab{border:1px solid var(--line);cursor:pointer;color:var(--muted);background:#fff;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.tab.active{background:var(--teal);color:#fff;border-color:var(--teal)}.user-chip{color:var(--muted);border-left:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;max-width:200px;margin-left:4px;padding:8px 10px;font-size:12.5px;overflow:hidden}.login-shell{background:var(--bg);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{border:1px solid var(--line);width:min(380px,100%);box-shadow:var(--shadow);background:#fff;border-radius:14px;gap:14px;padding:28px;display:grid}.login-card h1{margin:0;font-size:24px}.login-card>.muted{margin:-6px 0 4px}.login-field{color:var(--muted);gap:5px;font-size:13px;font-weight:600;display:grid}.login-field input{border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:14px}.login-field input:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 18%, white);outline:none}.login-card .btn{width:100%;margin-top:4px;padding:11px}.login-erro{color:#8f1d16;background:#fff0ee;border:1px solid #efb5ae;border-radius:8px;padding:9px 12px;font-size:13px}.login-ok{color:#0f5132;background:#eaf8f0;border:1px solid #b7e3ca;border-radius:8px;padding:9px 12px;font-size:13px}.user-form{border:1px solid var(--line);background:#fff;border-radius:10px;gap:12px;padding:16px;display:grid}.carteira{gap:16px;padding:18px;display:grid}.carteira-head{grid-template-columns:1fr auto;align-items:center;gap:16px;display:grid}.carteira-head h2{margin:0 0 4px;font-size:18px}.carteira-head p{margin:0}.carteira-total{text-align:right;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 16px}.carteira-total .label{color:var(--muted);font-size:12px}.carteira-total .value{font-size:20px;font-weight:700}.filtros{flex-wrap:wrap;gap:14px;display:flex}.filtros label{color:var(--muted);gap:4px;font-size:12px;font-weight:600;display:grid}.filtros select,.filtros input[type=date]{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;min-width:160px;padding:8px 10px;font-size:13px}.filtros input[type=date]{min-width:150px}table.carteira-table{min-width:900px}h1{margin:0;font-size:21px;line-height:1.2}.brand-dot{color:var(--teal)}.subtitle{color:var(--muted);margin-top:4px;font-size:13px}.import{border-radius:var(--radius);text-align:center;background:linear-gradient(#fff,#fbfcfe);border:1.5px dashed #b9c2d4;justify-items:center;gap:14px;margin:18px;padding:22px;display:grid}.import.compact{text-align:left;grid-template-columns:1fr auto;place-items:center stretch;padding:14px 18px}.import h2{margin:0;font-size:16px}.import p{color:var(--muted);margin:0;font-size:13px}.import-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.btn{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:filter .15s}.btn:hover{filter:brightness(1.07)}.btn.ghost{color:var(--ink);border:1px solid var(--line);background:#fff}.hidden-file{display:none}.hint{color:var(--muted);font-size:12px}.board{flex:1;grid-template-columns:repeat(5,minmax(258px,1fr));gap:14px;padding:6px 18px 22px;display:grid;overflow-x:auto}.column{background:color-mix(in srgb, var(--stage) 8%, #f4f7fb);border:1px solid var(--line);border-top:4px solid var(--stage);border-radius:var(--radius);flex-direction:column;min-width:258px;max-height:calc(100vh - 220px);display:flex}.column[data-stage=diagnet]{--stage:var(--teal)}.column[data-stage=report_check]{--stage:var(--blue)}.column[data-stage=a_receber]{--stage:var(--green)}.column[data-stage=procurar_guia]{--stage:var(--orange)}.column[data-stage=glosa_recobrar]{--stage:var(--red)}.column-head{border-bottom:1px solid var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--stage) 12%, white), #ffffffc2);border-radius:var(--radius) var(--radius) 0 0;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px;display:flex}.column-head strong{font-size:13.5px}.count{color:var(--stage);background:color-mix(in srgb, var(--stage) 10%, white);border:1px solid color-mix(in srgb, var(--stage) 24%, white);text-align:center;border-radius:999px;min-width:24px;padding:2px 8px;font-size:12px}.cards{gap:10px;padding:12px;display:grid;overflow-y:auto}.empty{color:var(--muted);text-align:center;padding:22px 8px;font-size:12.5px}.card{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--stage,var(--blue));border-radius:var(--radius);cursor:pointer;gap:11px;padding:13px;transition:transform .12s,box-shadow .12s;display:grid;box-shadow:0 8px 20px #1720330f}.card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #1720331f}.card.ok{border-left-color:var(--green)}.card.warning{border-left-color:var(--yellow)}.card.critical{border-left-color:var(--red)}.card h3{margin:0;font-size:14px}.meta{flex-wrap:wrap;gap:6px;display:flex}.pill{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:#fafbfe;border-radius:999px;padding:3px 8px;font-size:11px}.pill.ok{color:#0f5132;background:#eaf8f0;border-color:#b7e3ca}.pill.warning{color:#7a4d00;background:#fff7df;border-color:#f3d08b}.pill.critical{color:#8f1d16;background:#fff0ee;border-color:#efb5ae}.pill.neutral{color:#475467;background:#f2f4f7;border-color:#ccd4df}.metrics{grid-template-columns:1fr 1fr;gap:8px;display:grid}.metric{border-top:1px solid var(--line);min-width:0;padding-top:7px}.metric .label{color:var(--muted);font-size:11px}.metric .value{overflow-wrap:anywhere;margin-top:2px;font-size:13px;font-weight:700}.statusbar{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:6px;padding:2px 7px;font-size:11px;font-weight:600}.chip.ok{color:#0f5132;background:#eaf8f0}.chip.critical{color:#8f1d16;background:#fff0ee}.chip.warning{color:#7a4d00;background:#fff7df}.trail{align-items:center;gap:4px;display:flex}.trail .seg{background:#e4e8f0;border-radius:99px;flex:1;height:5px}.trail .seg.done{background:var(--teal)}.trail .seg.current{background:var(--red)}.overlay{z-index:18;opacity:0;pointer-events:none;background:#0f172a52;transition:opacity .18s;position:fixed;inset:0}.overlay.open{opacity:1;pointer-events:auto}.drawer{width:min(960px,100vw);box-shadow:var(--shadow);z-index:20;border-left:1px solid var(--line);background:#fff;flex-direction:column;transition:transform .2s;display:flex;position:fixed;inset:0 0 0 auto;transform:translate(104%)}.drawer.open{transform:translate(0)}.drawer-head{border-bottom:1px solid var(--line);gap:10px;padding:18px;display:grid}.drawer-title{grid-template-columns:1fr auto;align-items:start;gap:12px;display:grid}.close{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:38px;height:34px}.drawer-body{gap:20px;padding:18px;display:grid;overflow:auto}.section h4{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px;font-size:13px}.totais{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.tot{border:1px solid var(--line);border-radius:8px;padding:10px}.tot .label{color:var(--muted);font-size:11px}.tot .value{margin-top:3px;font-size:15px;font-weight:700}.tot.residual .value{color:var(--red)}.table-wrap{border:1px solid var(--line);border-radius:8px;overflow:auto}table.items{border-collapse:collapse;width:100%;min-width:660px;font-size:12px}table.items th{color:var(--muted);text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;background:#f8fafc;padding:9px 10px;font-weight:700;position:sticky;top:0}table.items td{border-bottom:1px solid var(--line);vertical-align:top;padding:9px 10px}table.items tr:last-child td{border-bottom:0}td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}table.items th.num{text-align:right}td.neg{color:var(--red)}td.pos{color:var(--green)}.row-glosa{background:linear-gradient(90deg,#b423180f,#0000 40%)}.row-sel{background:#14825a14}.tag{border-radius:6px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-block}.tag.ok{color:#0f5132;background:#eaf8f0}.tag.critical{color:#8f1d16;background:#fff0ee}.tag.warning{color:#7a4d00;background:#fff7df}.tag.neutral{color:#475467;background:#f2f4f7}.axis-legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-bottom:8px;font-size:12px;display:flex}.axis-legend b{color:var(--ink)}.residual-list{gap:8px;display:grid}.residual{background:#fff7f6;border:1px solid #efb5ae;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.residual .v{color:var(--red);font-weight:700}.residual-right{align-items:center;gap:10px;display:flex}.btn.small{padding:6px 10px;font-size:12px}.recon-fields{gap:8px;display:grid}.file-pick{color:var(--muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px dashed #b9c2d4;border-radius:8px;padding:10px 12px;font-size:13px;display:block;overflow:hidden}.file-pick input{display:none}.offer-modal{width:min(560px,100vw - 36px);max-height:calc(100vh - 80px);box-shadow:var(--shadow);z-index:25;background:#fff;border-radius:14px;gap:12px;padding:20px;display:grid;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.offer-head{justify-content:space-between;align-items:center;display:flex}.offer-head h3{margin:0;font-size:17px}.offer-list{gap:8px;display:grid}.offer-item{border:1px solid var(--line);cursor:pointer;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.offer-item input{width:16px;height:16px}.offer-value{color:var(--red);font-weight:700}.offer-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.muted{color:var(--muted);font-size:12.5px}.timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.tl-item{grid-template-columns:18px 1fr;gap:10px;padding:0 0 14px;display:grid;position:relative}.tl-item:before{content:"";background:var(--line);width:2px;position:absolute;top:14px;bottom:-2px;left:8px}.tl-item:last-child:before{display:none}.tl-dot{width:12px;height:12px;box-shadow:0 0 0 1px var(--line);z-index:1;background:#9aa6b8;border:2px solid #fff;border-radius:50%;margin-top:3px}.tl-item.ok .tl-dot{background:var(--green)}.tl-item.critical .tl-dot{background:var(--red)}.tl-item.warning .tl-dot{background:var(--yellow)}.tl-body{min-width:0}.tl-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.tl-top strong{font-size:13px}.tl-time{color:var(--muted);white-space:nowrap;font-size:11px}.tl-meta{color:#98a2b3;margin-top:2px;font-size:11px}.toast{background:var(--ink);color:#fff;box-shadow:var(--shadow);z-index:30;opacity:0;pointer-events:none;border-radius:8px;padding:12px 14px;font-size:13px;transition:opacity .2s,transform .2s;position:fixed;bottom:18px;left:18px;transform:translateY(8px)}.toast.show{opacity:1;transform:translateY(0)}@media (max-width:900px){.totais{grid-template-columns:1fr 1fr}}.board-toolbar,.item-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.board-toolbar{padding:6px 18px 0}.item-toolbar{margin-bottom:10px}.search{border:1px solid var(--line);background:#fff;border-radius:8px;flex:1;min-width:220px;padding:8px 12px;font-size:13px}.board-toolbar select,.item-toolbar select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px;font-size:13px}.multiselect{position:relative}.multiselect-btn{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;max-width:240px;padding:8px 10px;font-size:13px;display:inline-flex}.multiselect-label{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.multiselect-caret{color:var(--muted,#8a8f98);font-size:10px}.multiselect-menu{z-index:20;border:1px solid var(--line);background:#fff;border-radius:8px;min-width:240px;max-height:320px;padding:6px;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.multiselect-item{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.multiselect-item:hover{background:var(--bg-soft,#f4f6f8)}.acao-residual{flex-direction:column;gap:6px;min-width:250px;margin-top:8px;display:flex}.acao-linha{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.acao-residual select,.acao-residual input{border:1px solid var(--line);background:#fff;border-radius:6px;padding:5px 8px;font-size:12px}.acao-residual .acao-obs{width:100%}.card-head{align-items:center;gap:8px;display:flex}.card-head h3{flex:1;margin:0;font-size:14px}.conv-logo{color:#fff;letter-spacing:.02em;border-radius:7px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:flex}.conv-logo-img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:6px;flex:none;width:38px;height:30px}.card-del{cursor:pointer;opacity:.4;background:0 0;border:0;border-radius:6px;padding:2px 4px;font-size:14px}.card-del:hover{opacity:1;background:#fff0ee}.axis-help{cursor:help;align-items:center;gap:5px;display:inline-flex}.help-dot{background:var(--line);width:15px;height:15px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex}.btn.ghost.danger{color:#8f1d16;border-color:#efb5ae}.btn.ghost.danger:hover{background:#fff0ee}.residual-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.recurso-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.recurso-row input[type=date]{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12px}.processing{background:var(--ink);color:#fff;box-shadow:var(--shadow);z-index:40;border-radius:8px;align-items:center;gap:10px;padding:12px 16px;font-size:13px;display:flex;position:fixed;bottom:18px;right:18px}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:999px;width:14px;height:14px;animation:.7s linear infinite cc-spin}@keyframes cc-spin{to{transform:rotate(360deg)}}.changelog-list{color:var(--ink);gap:7px;max-height:50vh;margin:4px 0 8px;padding-left:18px;font-size:13px;display:grid;overflow:auto}.changelog-list li{line-height:1.4}.undo-bar{background:var(--ink);color:#fff;box-shadow:var(--shadow);z-index:41;border-radius:8px;align-items:center;gap:12px;padding:8px 10px 8px 16px;font-size:13px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.undo-bar .btn.ghost{color:#fff;background:0 0;border-color:#fff6}.linklike{color:var(--blue,#1d4ed8);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.linklike:hover{text-decoration:underline}.linklike:disabled{opacity:.6;cursor:progress}.guia-modal-overlay{z-index:60;background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.guia-modal{background:var(--card,#fff);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;width:min(920px,96vw);height:min(90vh,1100px);display:flex;overflow:hidden}.guia-modal-head{border-bottom:1px solid var(--line,#e5e7eb);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.guia-modal-frame{border:none;flex:1;width:100%}.banner-erro,.banner-ok{border-radius:8px;margin:8px 0 12px;padding:10px 12px;font-size:13px}.banner-erro{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.banner-ok{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.badge{border:1px solid #0000;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-ok{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.badge-warn{color:#b45309;background:#fffbeb;border-color:#fde68a}
