/* Paleta do SIGEMED — a mesma da tela de acesso, para o sistema inteiro falar a
   mesma língua visual (teal da marca sobre o azul-petróleo profundo). */
:root{
  --primary:#08a99f;
  --primary-dark:#07837c;
  --primary-deep:#065f5c;
  --navy:#073d4f;
  --navy-deep:#043747;
  --cyan:#39d5ca;
  --bg:#f1f8fa;
  --panel:#ffffff;
  --text:#0b1c37;
  --muted:#64748b;
  --border:#dbe7ec;
  --danger:#dc2626;
  --ok:#16a34a;
  --blue:#2563eb;
  --amber:#d97706;
  --purple:#7c3aed;
  --radius:14px;
  --radius-sm:9px;
  --shadow-sm:0 1px 2px rgba(16,63,78,.05), 0 4px 14px rgba(16,63,78,.05);
  --shadow-md:0 6px 22px rgba(16,63,78,.09);
  --grad-primary:linear-gradient(90deg,#07aa9e,#0a9f9a);
  --font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
body{margin:0;font-family:var(--font);color:var(--text);background:
    radial-gradient(circle at 8% 0%, rgba(30,178,191,.10), transparent 26%),
    radial-gradient(circle at 100% 40%, rgba(85,218,215,.12), transparent 24%),
    linear-gradient(135deg,#eef9fc 0%,#f6fbfc 45%,#eef9fb 100%) fixed}
.hidden{display:none !important}
.small{color:var(--muted);font-size:13px}
.error{color:var(--danger)}
label{display:block;font-size:12.5px;color:#4a5a6e;font-weight:600;margin:10px 0 5px}
input,select,textarea{width:100%;padding:9px 12px;border:1px solid #c8d6df;border-radius:var(--radius-sm);font-size:14px;
  font-family:inherit;background:#fff;color:var(--text);transition:border-color .18s ease, box-shadow .18s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(8,169,159,.12)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.btn{background:var(--grad-primary);color:#fff;border:none;padding:10px 18px;border-radius:var(--radius-sm);cursor:pointer;
  font-size:14px;font-weight:700;box-shadow:0 4px 14px rgba(7,158,150,.18);transition:transform .18s ease, box-shadow .18s ease, background .18s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(7,158,150,.26)}
.btn2{background:#eaf3f6;color:#2a4356;box-shadow:none;border:1px solid var(--border)}
.btn2:hover{background:#dfeef2;transform:none;box-shadow:none}
.small-btn{padding:5px 12px;font-size:12px;margin-bottom:8px;box-shadow:none}
.small-btn:hover{transform:none}

/* login (telas simples — troca de senha obrigatória) */
.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,#075a65 0%,#0a4b5a 45%,#043747 100%);padding:24px}
.login-card{background:#fff;padding:36px;border-radius:20px;width:380px;box-shadow:0 24px 60px rgba(4,40,53,.34)}
.login-card h1{margin:0 0 4px;color:var(--navy)}
.login-hint{margin-top:18px;background:#f0fdfa;border:1px solid #99f6e4;border-radius:8px;padding:10px;font-size:12.5px;line-height:1.6}
.login-hint code{background:#e2e8f0;padding:1px 5px;border-radius:4px}

/* =======================================================================
   Tela de acesso (SIGEMED) — layout de duas colunas.
   Tudo aqui vive dentro de .lg-screen de propósito: as classes genéricas
   deste bloco (label, .lg-field, .lg-modal...) não podem vazar para o resto
   do sistema, que tem o próprio padrão visual.
   ======================================================================= */
.lg-screen{
  --lg-navy:#073d4f; --lg-navy-deep:#063545; --lg-teal:#08a99f; --lg-teal-bright:#16cbbd;
  --lg-cyan:#39d5ca; --lg-text:#0b1c37; --lg-muted:#64748b; --lg-line:#d9e4eb;
  min-height:100vh; color:var(--lg-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 10% 0%, rgba(30,178,191,.15), transparent 28%),
    radial-gradient(circle at 100% 50%, rgba(85,218,215,.2), transparent 22%),
    linear-gradient(135deg,#eef9fc 0%,#f8fbfc 45%,#eef9fb 100%);
}
.lg-screen button,.lg-screen input,.lg-screen textarea{font:inherit}
.lg-screen button{cursor:pointer}

.lg-shell{min-height:100vh;display:grid;place-items:center;align-content:center;
  gap:clamp(10px,1.7vh,20px);padding:clamp(10px,2vh,26px) 22px}
.lg-card{width:min(1180px,95vw);min-height:min(700px,calc(100vh - 118px));display:grid;grid-template-columns:1fr 1fr;
  overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 24px 60px rgba(20,63,78,.18)}

/* ---- coluna da marca ---- */
.lg-brand{position:relative;overflow:hidden;color:#fff;
  background:linear-gradient(145deg,#075a65 0%,#0a4b5a 45%,#043747 100%)}
/* Foto de fundo: desfocada e rebaixada, só para dar profundidade atrás da marca.
   O desfoque também dissolve a marca d'água do banco de imagens; se um dia a foto for
   trocada, basta substituir assets/login-bg.png — nenhum outro ajuste é necessário. */
.lg-brand-photo{position:absolute;inset:-14px;background:url("../assets/login-bg.png") center 42%/cover no-repeat;
  filter:blur(5px) saturate(.78) brightness(.9);opacity:.72;transform:scale(1.05)}
/* Degradê por cima: mais leve no topo (deixa a foto respirar atrás da logo) e quase
   sólido embaixo, onde ficam os textos — é o que garante contraste e legibilidade. */
.lg-brand-overlay{position:absolute;inset:0;background:
    linear-gradient(180deg, rgba(4,68,84,.40) 0%, rgba(5,58,74,.76) 46%, rgba(3,38,50,.96) 100%),
    radial-gradient(circle at 78% 10%, rgba(22,203,189,.28), transparent 48%),
    radial-gradient(circle at 8% 92%, rgba(0,220,205,.16), transparent 42%),
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px);
  background-size:cover,cover,cover,32px 32px,32px 32px}
.lg-brand-content{position:relative;z-index:1;display:flex;flex-direction:column;
  padding:clamp(26px,4.6vh,54px) clamp(26px,3vw,48px) clamp(18px,2.6vh,30px)}
.lg-brand-logo{width:min(400px,92%);height:auto;filter:drop-shadow(0 6px 18px rgba(0,0,0,.28))}
.lg-brand-rule{width:112px;height:3px;border-radius:9px;background:var(--lg-cyan);
  margin:clamp(14px,2vh,22px) 0 clamp(20px,3.2vh,34px) 118px}
.lg-brand-content h1{margin:0;font-size:clamp(1.5rem,2.05vw,2.4rem);line-height:1.18;max-width:430px;letter-spacing:-.03em}
.lg-brand-content h1 span{color:var(--lg-cyan)}

.lg-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(9px,1.4vh,14px);margin-top:clamp(18px,3vh,32px)}
.lg-benefit{display:flex;align-items:center;gap:14px;padding:clamp(10px,1.5vh,15px) 16px;
  border:1px solid rgba(255,255,255,.20);border-radius:13px;background:rgba(255,255,255,.055);backdrop-filter:blur(8px)}
.lg-benefit-icon{flex-shrink:0;width:36px;display:flex;align-items:center;justify-content:center;color:#fff}
.lg-benefit-icon svg{width:28px;height:28px}
.lg-benefit strong,.lg-benefit small{display:block}
.lg-benefit strong{font-size:.95rem}
.lg-benefit small{margin-top:3px;color:rgba(255,255,255,.82);font-size:.82rem;line-height:1.3}
.lg-signature{margin-top:auto;padding-top:clamp(16px,2.4vh,26px);font-family:"Segoe Script","Brush Script MT",cursive;
  font-size:clamp(1.3rem,1.7vw,1.95rem);transform:rotate(-2deg)}
.lg-signature::after{content:"";display:block;width:225px;max-width:70%;height:3px;border-radius:10px;
  background:var(--lg-cyan);margin:9px 0 0 55px;transform:rotate(-2deg)}
.lg-brand-footer{margin-top:clamp(16px,2.6vh,30px);font-size:.66rem;letter-spacing:.24em;font-weight:700;opacity:.9}

/* ---- coluna do formulário ---- */
.lg-form-panel{position:relative;display:flex;align-items:center;background:rgba(255,255,255,.98)}
.lg-help{position:absolute;top:clamp(16px,2.4vh,26px);right:clamp(22px,2.4vw,34px);border:0;background:transparent;
  color:#08747d;font-weight:700;font-size:.93rem;display:flex;align-items:center;gap:7px}
.lg-help svg{width:19px;height:19px}
.lg-form-wrap{width:min(460px,calc(100% - 64px));margin:0 auto}
.lg-form-header h2{margin:0;font-size:clamp(1.75rem,2.3vw,2.6rem);letter-spacing:-.04em}
.lg-form-header p{margin:8px 0 0;color:#53657a;font-size:.95rem}
.lg-tenant{margin:5px 0 clamp(16px,2.6vh,28px) !important;font-weight:700;color:#08747d;font-size:.9rem}
.lg-screen label{display:block;margin:clamp(10px,1.5vh,15px) 0 6px;font-weight:750;color:#101d32;font-size:.92rem}
.lg-field{height:clamp(46px,6vh,54px);display:flex;align-items:center;border:1px solid #c8d6df;border-radius:8px;
  background:#fff;overflow:hidden;transition:.2s ease}
.lg-field:focus-within{border-color:var(--lg-teal);box-shadow:0 0 0 3px rgba(8,169,159,.12)}
.lg-field-icon{width:46px;display:flex;align-items:center;justify-content:center;color:#0d6c7a}
.lg-field-icon svg{width:20px;height:20px}
.lg-screen .lg-field input{flex:1;border:0;outline:0;min-width:0;width:auto;height:100%;padding:0 12px 0 0;
  font-size:.96rem;color:#203044;background:transparent;border-radius:0}
.lg-field input::placeholder{color:#98a7b8}
.lg-toggle{width:46px;height:100%;border:0;background:transparent;color:#607487;display:flex;align-items:center;justify-content:center}
.lg-toggle svg{width:20px;height:20px}
.lg-forgot-row{display:flex;justify-content:flex-end;margin:9px 0 clamp(14px,2vh,20px)}
.lg-link{border:0;background:transparent;color:#08757b;text-decoration:underline;font-weight:650;padding:2px 0;font-size:.9rem}
.lg-primary{width:100%;border:0;border-radius:9px;min-height:clamp(46px,6.2vh,56px);background:linear-gradient(90deg,#07aa9e,#0a9f9a);
  color:#fff;font-size:1.05rem;font-weight:800;display:flex;align-items:center;justify-content:center;gap:11px;
  box-shadow:0 8px 24px rgba(7,158,150,.17);transition:transform .2s ease, box-shadow .2s ease}
.lg-primary svg{width:20px;height:20px}
.lg-primary:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(7,158,150,.25)}
.lg-primary.lg-compact{width:auto;min-height:44px;padding:0 20px;font-size:.95rem}
.lg-error{margin:12px 0 0;color:#c0392b;font-weight:650;font-size:.92rem}
.lg-divider{display:flex;align-items:center;gap:14px;color:#627689;font-weight:700;font-size:.9rem;margin:clamp(16px,2.4vh,24px) 0}
.lg-divider::before,.lg-divider::after{content:"";flex:1;height:1px;background:#d8e3e9}
.lg-reset-card{width:100%;display:flex;align-items:center;gap:15px;border:0;border-radius:12px;text-align:left;
  background:linear-gradient(90deg,#eefafa,#f0fbfc);padding:clamp(12px,1.8vh,17px) 20px;color:#234258}
.lg-reset-card:hover{background:linear-gradient(90deg,#e6f7f8,#eafafb)}
.lg-shield{flex-shrink:0;display:flex;color:#087382}
.lg-shield svg{width:34px;height:34px}
.lg-reset-card strong,.lg-reset-card small{display:block}
.lg-reset-card strong{color:#087082;font-size:.97rem}
.lg-reset-card small{margin-top:4px;line-height:1.35;font-size:.82rem}
.lg-support{display:grid;grid-template-columns:1fr 1px 1fr;align-items:center;gap:18px;margin-top:clamp(16px,2.6vh,28px)}
.lg-support-sep{width:1px;height:56px;background:#d8e3e9}
.lg-support-item{border:0;background:transparent;color:#0a5262;display:flex;flex-direction:column;align-items:center;gap:2px}
.lg-support-item.lg-static{cursor:default}
.lg-support-icon{color:#0b7a82;margin-bottom:4px;display:flex}
.lg-support-icon svg{width:25px;height:25px}
.lg-support-item strong{font-size:.9rem}
.lg-support-item small{color:#5b6f81;font-size:.8rem}

.lg-page-footer{text-align:center;color:#66788b;font-size:.85rem;line-height:1.55}
.lg-page-footer strong{color:#4a6074}
.lg-page-footer span{margin:0 8px}
.lg-page-footer small{display:block}

/* ---- modal de ajuda/suporte ---- */
.lg-modal{border:0;border-radius:18px;padding:0;width:min(520px,calc(100vw - 32px));box-shadow:0 24px 80px rgba(0,0,0,.25)}
.lg-modal::backdrop{background:rgba(4,26,35,.58);backdrop-filter:blur(4px)}
.lg-modal-card{position:relative;padding:34px;text-align:center}
.lg-modal-card h3{margin:8px 0 10px;font-size:1.5rem}
.lg-modal-card p{color:#5f7184;line-height:1.55;margin:0}
.lg-modal-logo{width:58px;height:58px}
.lg-modal-close{position:absolute;top:14px;right:16px;width:36px;height:36px;border:0;border-radius:50%;
  background:#f1f5f7;font-size:1.4rem;color:#607487}
.lg-modal-actions{display:flex;justify-content:center;gap:12px;margin-top:24px}

/* Monitores mais baixos (notebooks 768p/900p): aperta o que dá para o cartão inteiro
   caber sem rolagem, em vez de cortar a tela de acesso. */
@media (max-height:820px){
  .lg-card{min-height:calc(100vh - 96px)}
  .lg-brand-logo{width:min(330px,88%)}
  .lg-brand-rule{margin-left:97px;width:92px}
  .lg-benefit small{font-size:.78rem}
  .lg-page-footer{font-size:.78rem}
  .lg-page-footer small{display:none}
}
@media (max-height:680px){
  .lg-brand-content h1{font-size:1.45rem}
  .lg-signature{font-size:1.25rem}
  .lg-benefits{gap:8px}
  .lg-benefit{padding:8px 12px}
}

@media (max-width:980px){
  .lg-card{grid-template-columns:1fr;min-height:0}
  .lg-brand{display:none}
  .lg-form-panel{min-height:660px}
  .lg-shell{align-content:start;padding-top:22px}
}
@media (max-width:560px){
  .lg-shell{padding:16px 12px}
  .lg-card{width:100%;border-radius:20px;min-height:0}
  .lg-form-panel{min-height:640px}
  .lg-help{top:18px;right:20px}
  .lg-form-wrap{width:calc(100% - 36px);padding-top:32px}
  .lg-form-header h2{font-size:1.9rem}
  .lg-support{gap:12px}
}

/* app shell */
#app{display:flex;min-height:100vh}
/* Mesma barra lateral do sistema das prefeituras — o azul-petróleo da tela de acesso. */
.sidebar{width:236px;color:#fff;display:flex;flex-direction:column;padding:20px 14px;flex-shrink:0;position:relative;
  background:
    radial-gradient(circle at 80% 6%, rgba(22,203,189,.22), transparent 46%),
    radial-gradient(circle at 0% 98%, rgba(0,220,205,.14), transparent 44%),
    linear-gradient(165deg,#075a65 0%,#0a4b5a 42%,#043747 100%)}
.sidebar::after{content:"";position:absolute;inset:0;pointer-events:none;background-size:32px 32px;background-image:
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px)}
.sidebar>*{position:relative;z-index:1}
.brand-row{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.brand-logo{width:40px;height:40px;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.3))}
.brand{font-weight:800;font-size:18px;line-height:1.25}
.brand span{color:var(--cyan);display:block;font-size:10.5px;letter-spacing:.5px;font-weight:500;text-transform:uppercase}
.userbox{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:11px;padding:11px 12px;margin-bottom:16px}
.userbox small{display:block;color:#a7f3d0}
.userbox .scope{color:#d1fae5;margin-top:6px}
nav{display:flex;flex-direction:column;gap:3px;flex:1}
.navBtn{background:transparent;border:none;color:#d8eef0;text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer;
  font-size:13.8px;transition:background .16s ease, color .16s ease}
.navBtn:hover{background:rgba(255,255,255,.1);color:#fff}
.navBtn.active{background:var(--grad-primary);color:#fff;font-weight:700;box-shadow:0 5px 16px rgba(7,158,150,.3)}
.logout{margin-top:10px;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18)}
.logout:hover{background:rgba(255,255,255,.2)}

/* min-width:0 é o que impede uma tabela larga de esticar o flex item e fazer a PÁGINA
   inteira rolar na horizontal — a rolagem tem que ficar dentro da tabela, não na tela. */
.content{flex:1;min-width:0;padding:24px;max-width:1240px}
.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;background:var(--panel);
  border:1px solid var(--border);border-radius:var(--radius);padding:12px 18px;box-shadow:var(--shadow-sm)}
.topbar h1{margin:0;font-size:21px;letter-spacing:-.02em}

.kpis{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.kpi{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:15px 18px;min-width:150px;box-shadow:var(--shadow-sm)}
.kpi b{font-size:26px;display:block}

.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:19px;margin-bottom:18px;box-shadow:var(--shadow-sm)}
.panel h3{margin-top:0;font-size:16px;letter-spacing:-.01em}

.sectionTitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.access-banner{background:#fffbeb;border:1px solid #fde68a;padding:11px 14px;border-radius:11px;margin-bottom:14px;font-size:13.5px}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:13px;margin-top:14px}
.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:15px;cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;box-shadow:var(--shadow-sm)}
.card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}
.card b{display:block;margin-bottom:4px}
.tag{display:inline-block;margin-top:8px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;background:#fee2e2;color:#991b1b}
.tag.ok{background:#dcfce7;color:#166534}

table{width:100%;border-collapse:collapse;font-size:13.5px}
th,td{border-bottom:1px solid var(--border);padding:9px 10px;text-align:left}
th{background:#f2f8fa;position:sticky;top:0;font-size:12.5px;font-weight:700;color:#3d5567;
  letter-spacing:.02em;border-bottom:1px solid #cfe1e8}
tr:hover td{background:#f6fbfc}
input.qty{width:90px}

/* Listas e tabelas longas rolam DENTRO da própria caixa, mostrando ~5 registros por vez. */
.table-scroll{overflow:auto;max-height:300px;border-radius:10px;border:1px solid var(--border)}
.table-scroll table{margin:0}
.table-scroll>p{margin:12px 14px}
/* ~5 cartões visíveis; o resto vem pela rolagem da própria caixa. */
.list-scroll{overflow:auto;max-height:600px;padding-right:4px}
.table-scroll::-webkit-scrollbar,.list-scroll::-webkit-scrollbar{width:10px;height:10px}
.table-scroll::-webkit-scrollbar-thumb,.list-scroll::-webkit-scrollbar-thumb{background:#c3d7de;border-radius:20px;border:3px solid #fff}
.table-scroll::-webkit-scrollbar-thumb:hover,.list-scroll::-webkit-scrollbar-thumb:hover{background:#a8c4ce}

.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.toolbar input{max-width:320px}

.unit-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:260px;overflow:auto;
  border:1px solid var(--border);border-radius:11px;padding:10px;background:#fbfdfe}
.unit-check{display:flex;gap:8px;align-items:flex-start;font-size:13px;border:1px solid var(--border);border-radius:9px;padding:7px 9px;background:#fff}
.unit-check input{width:auto}

@media print{
  .sidebar,.topbar,.no-print,.toolbar,#btnSaveConference,#btnSaveStock{display:none !important}
  .content{padding:0}
}

@media (max-width:900px){
  #app{flex-direction:column}
  .sidebar{width:100%}
  .row{grid-template-columns:1fr}
}

/* painel da plataforma */
.tenant-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}
.tenant-row:last-child{border-bottom:none}
.tenant-name{font-weight:600}
.tenant-meta{color:var(--muted);font-size:13px;margin-top:2px}
.tenant-actions{display:flex;gap:8px;align-items:center}

/* financeiro da empresa */
.fin-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid var(--border)}
.fin-tabs button{background:transparent;border:none;border-bottom:3px solid transparent;padding:10px 14px;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;margin-bottom:-1px}
.fin-tabs button:hover{color:var(--text)}
.fin-tabs button.active{color:var(--primary-dark);border-bottom-color:var(--primary)}
.fin-kpis .kpi{flex:1 1 190px}
.kpi-go{cursor:pointer;position:relative;transition:border-color .15s}
.kpi-go:hover{border-color:#08a99f}
.kpi-go::after{content:"›";position:absolute;top:10px;right:14px;font-size:20px;line-height:1;color:#94a3b8}
.fin-kpis .kpi small{display:block;color:var(--muted);font-size:12px;font-weight:600;margin-bottom:4px}
.fin-kpis .kpi b{font-size:22px;letter-spacing:-.02em}
.fin-kpis .kpi.good b{color:var(--primary-dark)}
.fin-kpis .kpi.bad b{color:var(--danger)}
th.num,td.num{text-align:right;white-space:nowrap}
td.neg{color:var(--danger);font-weight:600}
td.pos{color:var(--primary-dark);font-weight:600}
.fin-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11.5px;font-weight:700;background:#e2e8f0;color:#334155}
.fin-badge.PAGA{background:#dcfce7;color:#166534}
.fin-badge.ATRASADA{background:#fee2e2;color:#991b1b}
.fin-badge.PARCIAL{background:#fef3c7;color:#92400e}
.fin-badge.A_VENCER{background:#dbeafe;color:#1e40af}
.fin-badge.CANCELADA{background:#e5e7eb;color:#4b5563}
.fin-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-top:6px}
.fin-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.toolbar select{max-width:260px}

.danger-btn{color:#991b1b !important;border-color:#fecaca !important}
.danger-btn:hover{background:#fee2e2 !important}
button[type=submit].danger-btn{background:#dc2626 !important;color:#fff !important;border-color:#dc2626 !important}
button[type=submit].danger-btn:hover{background:#b91c1c !important}

