﻿/* PMOC — tema cliente (Pompéia) · Mirali discreta */
  :root{
    color-scheme:light;
    /* Marca hospital — navy + laranja do ecossistema */
    --navy:#0B1B4A;
    --navy-2:#071233;
    --accent:#E85D04;
    --accent-2:#F26A1B;
    --teal:#2BB8B0;
    --gold:#C4944C; /* Mirali — uso mínimo */
    --gold-2:#b3823a;
    --bg:#f4f6fa;
    --surface:#ffffff;
    --surface-2:#eef2f7;
    --ink:#0B1B4A;
    --muted:#5a6a7d;
    --faint:#8a99a8;
    --hair:#e3e8ef;
    --ok:#128a5a;--ok-soft:#e2f3ea;
    --warn:#c0801a;--warn-soft:#f6ecd6;
    --crit:#d0413b;--crit-soft:#f8e2e0;
    --blue:#2f6fb2;
    --shadow:0 1px 2px rgba(11,27,74,.04),0 10px 28px rgba(11,27,74,.06);
    --f:"Manrope",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
    --mono:ui-monospace,"SF Mono",Menlo,monospace;
  }
  @media (prefers-color-scheme:dark){:root{
    --bg:#0a0f1c;--surface:#111827;--surface-2:#162032;--ink:#e8eef2;--muted:#93a5b0;--faint:#61727e;--hair:#243044;
    --ok:#37c087;--ok-soft:#123026;--warn:#dda23f;--warn-soft:#352b14;--crit:#e2645e;--crit-soft:#371f1e;--blue:#5b9bdd;
    --shadow:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.4);
  }}
  :root[data-theme="light"]{color-scheme:light;
    --bg:#f4f6fa;--surface:#fff;--surface-2:#eef2f7;--ink:#0B1B4A;--muted:#5a6a7d;--faint:#8a99a8;--hair:#e3e8ef;
    --ok:#128a5a;--ok-soft:#e2f3ea;--warn:#c0801a;--warn-soft:#f6ecd6;--crit:#d0413b;--crit-soft:#f8e2e0;--blue:#2f6fb2;
    --shadow:0 1px 2px rgba(11,27,74,.04),0 10px 28px rgba(11,27,74,.06);
  }
  :root[data-theme="dark"]{color-scheme:dark;
    --bg:#0a0f1c;--surface:#111827;--surface-2:#162032;--ink:#e8eef2;--muted:#93a5b0;--faint:#61727e;--hair:#243044;
    --ok:#37c087;--ok-soft:#123026;--warn:#dda23f;--warn-soft:#352b14;--crit:#e2645e;--crit-soft:#371f1e;--blue:#5b9bdd;
    --shadow:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.4);
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f);font-size:15px;-webkit-font-smoothing:antialiased}
  .tnum{font-variant-numeric:tabular-nums;font-family:var(--mono)}
  .wrap{max-width:1300px;margin:0 auto;padding:16px 22px 44px}
  header{display:flex;align-items:center;gap:14px;padding:12px 22px;background:var(--navy);color:#fff;flex-wrap:wrap}
  header img{height:32px}header .ti b{font-weight:800;font-size:15px}header .ti span{display:block;font-size:11.5px;color:#9fb6c9}
  header .sp{flex:1}
  .hbtn{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;border-radius:9px;padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer;font-family:var(--f)}
  .tbtn{width:34px;height:34px;border-radius:9px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#cfe0ec;cursor:pointer;display:grid;place-items:center}
  nav.views{display:flex;gap:4px;background:var(--navy-2);padding:0 22px}
  nav.views button{border:0;background:none;color:#9fb6c9;padding:12px 16px;font-weight:700;font-size:14px;cursor:pointer;font-family:var(--f);border-bottom:3px solid transparent}
  nav.views button.on{color:#fff;border-bottom-color:var(--accent)}
  .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px;margin-bottom:20px}
  .kpi{background:var(--surface);border:1px solid var(--hair);border-radius:13px;padding:13px 15px;box-shadow:var(--shadow)}
  .kpi .l{font-size:12px;color:var(--muted)}.kpi .v{font-family:var(--mono);font-size:24px;font-weight:700;margin-top:3px}
  .kpi .v small{font-size:13px;color:var(--muted)}.kpi.ok .v{color:var(--ok)}.kpi.crit .v{color:var(--crit)}.kpi.warn .v{color:var(--warn)}.kpi.gold .v{color:var(--accent)}
  .charts{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:22px}
  @media(min-width:900px){.charts{grid-template-columns:1fr 1fr 1fr}}
  .card{background:var(--surface);border:1px solid var(--hair);border-radius:14px;box-shadow:var(--shadow)}
  .card .hd{padding:14px 16px;border-bottom:1px solid var(--hair)}.card .hd h2{font-size:14px;margin:0}.card .bd{padding:16px}
  .legend{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:12.5px;color:var(--muted);margin-top:10px}
  .legend i{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:5px;vertical-align:middle}
  .barh{font-size:13px;margin-bottom:9px}.barh .t{display:flex;justify-content:space-between;margin-bottom:3px}.barh .tk{height:8px;border-radius:5px;background:var(--surface-2);overflow:hidden;display:flex}.barh .fl{height:100%}
  .toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
  input,select{font-family:var(--f);font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--hair);border-radius:9px;padding:9px 12px}
  input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}
  .grow{flex:1;min-width:170px}
  .btn{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:13.5px;padding:9px 15px;border-radius:9px;cursor:pointer;border:1.5px solid transparent;font-family:var(--f)}
  .btn-navy{background:var(--navy);color:#fff}.btn-gold{background:var(--accent);color:#fff}.btn-ghost{background:var(--surface);border-color:var(--hair);color:var(--ink)}
  table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--hair)}
  th{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.03em}
  tbody tr{cursor:pointer}tbody tr:hover{background:var(--surface-2)}
  .badge{font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;white-space:nowrap}
  .b-ok{background:var(--ok-soft);color:var(--ok)}.b-warn{background:var(--warn-soft);color:var(--warn)}.b-crit{background:var(--crit-soft);color:var(--crit)}
  .rdc{font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:6px}.rdc.c{background:var(--crit-soft);color:var(--crit)}.rdc.s{background:var(--warn-soft);color:var(--warn)}.rdc.n{background:var(--surface-2);color:var(--muted)}
  .tag{font-family:var(--mono);font-weight:700}
  .pag{display:flex;gap:8px;align-items:center;justify-content:flex-end;padding:12px 14px;font-size:13px;color:var(--muted)}
  .pag button{border:1px solid var(--hair);background:var(--surface);border-radius:8px;padding:6px 11px;cursor:pointer;font-family:var(--f)}
  .ov{position:fixed;inset:0;background:rgba(8,18,28,.55);display:none;align-items:center;justify-content:center;z-index:50;padding:18px}.ov.open{display:flex}
  .modal{background:var(--surface);border-radius:16px;max-width:680px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.4)}
  .mh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 0}.mh h3{font-size:19px;margin:0}.mh .sub{font-size:12.5px;color:var(--muted);margin-top:3px}
  .x{cursor:pointer;background:none;border:0;font-size:22px;color:var(--muted);line-height:1}
  .tabs{display:flex;gap:4px;padding:14px 22px 0;flex-wrap:wrap}.tab{border:0;background:var(--surface-2);padding:8px 13px;border-radius:9px;font-weight:700;font-size:13px;color:var(--muted);cursor:pointer;font-family:var(--f)}.tab.on{background:var(--navy);color:#fff}
  .mb{padding:16px 22px 22px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .fld{background:var(--surface-2);border:1px solid var(--hair);border-radius:10px;padding:9px 12px}.fld .l{font-size:11px;color:var(--muted);text-transform:uppercase}.fld .v{font-weight:700;margin-top:2px;font-size:14px}
  .frow{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.frow label{font-size:12px;color:var(--muted);font-weight:600}textarea{font-family:var(--f);font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--hair);border-radius:9px;padding:9px 12px;resize:vertical}
  h4.sec{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:6px 0 10px}
  .rot{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--hair);font-size:13.5px}
  .hi{padding:10px 12px;background:var(--surface-2);border:1px solid var(--hair);border-radius:10px;border-left:3px solid var(--ok);margin-bottom:8px}.hi.corr{border-left-color:var(--crit)}
  .hi .tp{font-weight:700;font-size:13px;display:flex;justify-content:space-between}.hi .ds{font-size:12.5px;color:var(--muted);margin-top:2px}
  .peca{display:grid;grid-template-columns:1fr 70px 34px;gap:8px;align-items:center;margin-bottom:6px}
  .peca input{padding:7px 10px}
  .plan-grp{margin-bottom:18px}.plan-grp h3{font-size:14px;margin:0 0 8px;display:flex;align-items:center;gap:8px}
  .plan-item{display:flex;gap:10px;align-items:center;padding:9px 12px;background:var(--surface);border:1px solid var(--hair);border-radius:10px;margin-bottom:6px;font-size:13.5px;cursor:pointer}
  .plan-item:hover{background:var(--surface-2)}.plan-item .dt{margin-left:auto;font-family:var(--mono);font-size:12.5px;color:var(--muted)}
  .etq{border:1px solid var(--hair);border-radius:12px;padding:18px;text-align:center;background:#fff;color:#111;max-width:300px;margin:0 auto}
  .etq .lg{height:64px;max-width:240px;object-fit:contain;margin:0 auto 10px;display:block}
  .etq .qr img{width:170px;height:170px;image-rendering:pixelated;display:block;margin:6px auto}
  .etq .cli{font-size:12px;color:#555;font-weight:700}.etq .tg{font-family:var(--mono);font-weight:800;font-size:18px;margin-top:6px}
  .note{font-size:12px;color:var(--muted)}
  @media print{body *{visibility:hidden}#printArea,#printArea *{visibility:visible}#printArea{position:absolute;left:0;right:0;top:0;width:100%;margin:0 auto;padding:0;box-sizing:border-box}.noprint{display:none!important}}

/* ===== SaaS shell ===== */
.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(280px,88vw);transform:translateX(-105%);z-index:40;transition:transform .2s}.sidebar.open{transform:none}.sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:35}.sidebar-backdrop.open{display:block}}
.sidebar{background:linear-gradient(180deg,var(--navy) 0%,var(--navy-2) 100%);color:#cfe0ec;display:flex;flex-direction:column;padding:16px 12px 20px}
.sidebar .brand{padding:4px 10px 16px}
.sidebar .brand-logo{display:block;max-width:168px;max-height:52px;width:auto;height:auto;object-fit:contain;margin:0 0 10px;background:#fff;border-radius:10px;padding:8px 10px}
.sidebar .brand b{display:block;color:#fff;font-size:14px;font-weight:800;line-height:1.25}
.sidebar .brand span{font-size:11.5px;color:#9fb6c9;line-height:1.35}
.sidebar .tenant{margin:0 8px 14px;padding:10px;border-radius:10px;background:rgba(255,255,255,.06);font-size:12.5px}
.sidebar .tenant strong{display:block;color:#fff;font-size:13px}
.side-nav{display:flex;flex-direction:column;gap:2px;flex:1}
.side-nav button{text-align:left;border:0;background:transparent;color:#9fb6c9;padding:10px 12px;border-radius:9px;font:inherit;font-weight:700;font-size:13.5px;cursor:pointer}
.side-nav button:hover{background:rgba(255,255,255,.06);color:#fff}
.side-nav button.on{background:rgba(232,93,4,.18);color:#fff;box-shadow:inset 3px 0 0 var(--accent)}
.side-nav .grp{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#6f8799;padding:14px 12px 6px;font-weight:800}
.side-foot{padding:12px 8px 0;border-top:1px solid rgba(255,255,255,.1);font-size:12px}
.side-foot a{color:#c9d6e4;text-decoration:none;font-weight:600;margin-right:10px;opacity:.85}
.side-foot a:hover{opacity:1;color:#fff}
.side-foot .powered{display:flex;align-items:center;gap:8px;margin-top:12px;opacity:.55;filter:grayscale(.15)}
.side-foot .powered img{height:14px;width:auto;opacity:.75}
.side-foot .powered span{font-size:10px;color:#8aa0b3;letter-spacing:.02em}
.main{min-width:0;display:flex;flex-direction:column}
.topbar{display:flex;align-items:center;gap:12px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--hair);flex-wrap:wrap}
.topbar h1{font-size:17px;margin:0;font-weight:800}.topbar .sub{font-size:12.5px;color:var(--muted)}
.topbar .sp{flex:1}.menu-btn{display:none}@media(max-width:900px){.menu-btn{display:inline-flex}}

/* Sininho de notificações */
.notif-wrap{position:relative}
.notif-btn{position:relative;padding:8px 10px;min-width:42px}
.notif-btn__ico{display:block;color:var(--ink)}
.notif-btn.has-unread .notif-btn__ico{color:var(--navy)}
.notif-badge{
  position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;
  border-radius:999px;background:var(--crit);color:#fff;font-size:10px;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;line-height:1;
  box-shadow:0 0 0 2px var(--surface)
}
.notif-badge[hidden]{display:none!important}
.notif-panel{
  position:absolute;right:0;top:calc(100% + 8px);width:min(360px,92vw);max-height:min(70vh,520px);
  overflow:auto;z-index:80;background:var(--surface);border:1px solid var(--hair);
  border-radius:14px;box-shadow:var(--shadow);padding:12px 14px
}
.notif-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.notif-hd b{font-size:14px}
.notif-push{
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--hair);
  margin-bottom:10px;font-size:12px;color:var(--ink)
}
.notif-push.is-on{border-color:color-mix(in srgb,var(--ok) 40%,var(--hair))}
.notif-list{display:flex;flex-direction:column;gap:8px}
.notif-item{
  display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;width:100%;
  padding:10px 12px;border-radius:10px;border:1px solid var(--hair);background:var(--surface-2);
  cursor:pointer;font-family:var(--f)
}
.notif-item:hover{border-color:var(--navy)}
.notif-item.is-unread{box-shadow:inset 3px 0 0 var(--accent)}
.notif-item--crit{border-left:3px solid var(--crit);background:var(--crit-soft)}
.notif-item--warn{border-left:3px solid var(--warn);background:var(--warn-soft)}
.notif-item--info{border-left:3px solid var(--navy)}
.notif-item__t{font-size:13px;font-weight:800;color:var(--ink)}
.notif-item__d{font-size:12px;color:var(--muted)}
@media(max-width:900px){
  .notif-panel{position:fixed;left:12px;right:12px;top:58px;width:auto;max-height:75vh}
}

/* Solicitação de compra (estilo Tasy) */
.sc-doc{
  background:#fff;color:#111;padding:14px 16px 20px;max-width:190mm;margin:0 auto;
  font-family:Calibri,Candara,Segoe UI,Arial,sans-serif;font-size:12px;box-sizing:border-box
}
.sc-head{display:grid;grid-template-columns:140px 1fr 160px;gap:12px;align-items:start;margin-bottom:12px;border-bottom:1px solid #222;padding-bottom:10px}
.sc-brand img{max-height:56px;max-width:140px;object-fit:contain}
.sc-logo-txt{font-weight:800;font-size:13px;color:#0B1B4A;line-height:1.2}
.sc-title{text-align:center;padding-top:4px}
.sc-hosp{font-size:15px;font-weight:700}
.sc-docname{font-size:18px;font-weight:800;margin-top:2px}
.sc-nums{border:1px solid #333;font-size:11px}
.sc-nums>div{display:flex;justify-content:space-between;gap:8px;padding:4px 8px;border-bottom:1px solid #ccc}
.sc-nums>div:last-child{border-bottom:0}
.sc-nums span{color:#444}.sc-nums b{font-weight:700;text-align:right}
.sc-info{width:100%;border-collapse:collapse;margin-bottom:10px;border:1px solid #333}
.sc-info td{border:1px solid #333;padding:6px 8px;vertical-align:top;width:50%}
.sc-info label{display:block;font-size:10px;color:#555;font-weight:700;margin-bottom:2px}
.sc-info div{font-size:12px;min-height:1.2em}
.sc-obs{white-space:pre-wrap}
.sc-urgente{
  border:2px solid #c0392b;padding:8px 10px;margin:0 0 10px;font-size:12px;
  font-weight:700;background:#fdecea;color:#7a1f1a;line-height:1.35
}
.sc-anexo-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}
.sc-anexo-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px;border:1px solid var(--hair);border-radius:8px;background:var(--surface-2)}
.sc-anexo-thumb{width:48px;height:48px;object-fit:cover;border-radius:6px}
.sc-anexos-print{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 12px}
.sc-link-box{
  background:var(--surface);border:1px solid var(--hair);border-radius:10px;
  padding:10px 12px;margin:0 0 12px
}
.sc-assina-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:4px}
.sc-assina{border:1px solid #333;padding:8px 10px;min-height:96px;font-size:11px}
.sc-assina__tit{font-weight:800;font-size:10px;text-transform:uppercase;margin-bottom:8px;color:#0B1B4A}
.sc-assina__selo{font-size:9px;font-weight:700;color:#1a7a4c;margin-bottom:4px;letter-spacing:.04em}
.sc-assina__vazio{color:#888;font-style:italic;margin-top:18px;border-top:1px solid #ccc;padding-top:8px}
@media(max-width:700px){.sc-assina-grid{grid-template-columns:1fr}}
@media print{.sc-assina-grid{grid-template-columns:repeat(3,1fr)}}
.sc-meta-line{font-size:11px;margin:0 0 8px;color:#333}
.sc-itens{width:100%;border-collapse:collapse;margin-top:4px}
.sc-itens th,.sc-itens td{border:1px solid #333;padding:5px 6px;vertical-align:top}
.sc-itens th{background:#e8e8e8;font-size:11px;font-weight:700;text-align:left}
.sc-itens .sc-c{text-align:center;white-space:nowrap}
.sc-itens .sc-empty{text-align:center;color:#666;padding:12px}
.sc-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;gap:12px}
.sc-foot b{margin-left:6px}
.sc-total{border:1px solid #333;padding:6px 14px;font-weight:800;font-size:14px;min-width:110px;text-align:right}
.sc-form-item{border:1px solid var(--hair);border-radius:10px;padding:10px 12px;margin-bottom:10px;background:var(--surface-2)}
.sc-form-item__hd{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:12px;margin-bottom:8px}
.sc-estoque-picker{border:1px dashed var(--hair);border-radius:10px;padding:12px;margin-bottom:12px;background:var(--surface)}
.os-hist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.os-hist li{display:grid;grid-template-columns:minmax(120px,140px) 1fr;gap:6px 12px;padding:8px 10px;border:1px solid var(--hair);border-radius:8px;background:var(--surface-2);font-size:13px}
.os-hist__t{color:var(--muted,#667);font-variant-numeric:tabular-nums;font-size:12px}
.os-hist__l{font-weight:700}
@media(max-width:560px){.os-hist li{grid-template-columns:1fr}}
@media print{
  .sc-doc{max-width:none;padding:0}
  .sc-head{grid-template-columns:120px 1fr 150px}
}

.content{padding:18px 20px 40px;max-width:1280px;width:100%;margin:0 auto}
.timer-bar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--ok-soft);border:1px solid var(--ok);border-radius:12px;margin-bottom:14px;font-weight:700}
.timer-bar .clock{font-family:var(--mono);font-size:18px;color:var(--ok)}
.scan-box{position:relative;background:#000;border-radius:12px;overflow:hidden;aspect-ratio:4/3;max-width:420px;margin:0 auto}
.scan-box video{width:100%;height:100%;object-fit:cover}
.btn-ok{background:var(--ok);color:#fff}.btn-crit{background:var(--crit);color:#fff}
.empty{text-align:center;padding:36px 20px;color:var(--muted)}.empty h3{color:var(--ink);margin:0 0 8px}
.platform-note{font-size:12px;color:var(--faint);padding:8px 12px;border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 8px 8px 0;margin-bottom:14px}

/* ===== Relatório OS (estilo operacional) ===== */
.rep{background:#fff;color:#111;padding:8px 4px 24px;font-size:13px;max-width:720px;margin:0 auto;font-family:Calibri,Candara,Segoe UI,Optima,Arial,sans-serif}
.rep-top{display:flex;gap:16px;align-items:flex-start;margin-bottom:18px;flex-wrap:wrap}
.rep-brand img{max-height:52px;max-width:160px}.rep-logo-txt{font-weight:800;font-size:15px;color:#0B1B4A}
.rep-title{flex:1;min-width:200px}.rep-title h1{font-size:18px;margin:4px 0 6px}
.rep-num{display:inline-block;background:#1a7a4c;color:#fff;font-weight:800;font-family:var(--mono);padding:4px 10px;border-radius:6px;font-size:14px}
.rep-meta{font-size:12px;color:#555;line-height:1.45}
.rep-mat{width:100%;border-collapse:collapse;font-size:12px;margin:0}
.rep-mat th,.rep-mat td{border-bottom:1px solid #d5dde6;padding:7px 10px;text-align:left;vertical-align:top}
.rep-mat th{background:#f7f9fb;font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:#5a6b7a}
.rep-sc-block{padding:4px 0 8px}
.rep-sec-hd{background:#f0f3f6;font-weight:700;padding:9px 12px;font-size:12px;letter-spacing:.02em;text-transform:uppercase;border-bottom:1px solid #c5ced8;color:#0B1B4A}
.rep-sec-bd{padding:0}
.rep-row{display:grid;grid-template-columns:38% 1fr;border-bottom:1px solid #e2e7ec}
.rep-row:nth-child(odd){background:#fafbfc}.rep-row:last-child{border-bottom:0}
.rep-k{padding:8px 12px;font-size:11px;color:#5a6a7a;font-weight:700}.rep-v{padding:8px 12px;font-weight:400;word-break:break-word}
.rep-diag{margin-bottom:16px}.rep-diag h4{margin:0 0 8px;font-size:13px;font-weight:700}
.rep-foto{margin-bottom:14px;border:1px solid #c5ced8;border-radius:0;overflow:hidden}
.rep-foto-cap{padding:8px 10px;font-size:12px;font-weight:700;background:#f4f7fa}
.rep-foto img{display:block;width:100%;max-height:420px;object-fit:contain;background:#f3f5f7}
.rep-sign{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid #c5ced8;padding:12px;margin:14px 0}
.rep-ass{max-height:72px;max-width:100%;background:#fff}
.rep-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;color:#667;padding-top:12px;border-top:2px solid #0B1B4A;margin-top:8px}

/* Documento oficial — Calibri */
.rep-oficial{font-family:Calibri,Candara,Segoe UI,Optima,Arial,sans-serif;color:#1a1f24;background:#fff;padding:8px 12px;max-width:190mm;margin:0 auto;box-sizing:border-box}
.rep-oficial .note{font-family:inherit}
.rep-oficial-top{display:flex;gap:20px;align-items:flex-start;justify-content:center;margin-bottom:14px;padding-bottom:14px;border-bottom:2px solid #0B1B4A;flex-wrap:wrap;text-align:left}
.rep-oficial-logos{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;width:100%}
.rep-oficial-logos img{max-height:72px;max-width:180px;object-fit:contain}
.rep-oficial-head{flex:1;min-width:220px;text-align:center}
.rep-oficial-doc{font-size:11px;font-weight:700;letter-spacing:.06em;color:#0B1B4A;margin-bottom:4px}
.rep-oficial-num{font-family:Calibri,Candara,Segoe UI,Arial,sans-serif;font-size:15px;font-weight:700;color:#0B1B4A;margin:2px 0 6px}
.rep-oficial-head h1{font-size:20px;margin:0 0 6px;font-weight:700;line-height:1.25}
.rep-oficial-meta{font-size:12px;color:#445;line-height:1.45;font-weight:400}
.rep-oficial-band{font-size:12px;background:#eef2f6;border:1px solid #c5ced8;padding:8px 12px;margin-bottom:14px}
.rep-oficial-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.rep-oficial-kpis>div{border:1px solid #c5ced8;padding:10px 12px;text-align:center}
.rep-oficial-kpis span{display:block;font-size:11px;color:#667;margin-bottom:4px;font-weight:400}
.rep-oficial-kpis b{font-size:20px;color:#0B1B4A;font-weight:700}
.rep-sign-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rep-sign-card{border:1px solid #c5ced8;padding:10px;min-height:140px;font-family:inherit}
.rep-sign-title{font-size:11px;font-weight:700;text-transform:uppercase;color:#0B1B4A;margin-bottom:6px}
.rep-sign-nome{font-weight:700;font-size:13px;margin-bottom:4px}
.rep-sign-box{border-top:1px solid #dde3ea;margin-top:8px;padding-top:8px;min-height:64px;display:flex;align-items:center;justify-content:center}
.rep-period-grupo{margin-bottom:18px}
.rep-period-grupo h3{font-size:15px;margin:0 0 8px;font-family:inherit;font-weight:700}
.rep-period-table{width:100%;border-collapse:collapse;font-family:inherit;font-size:12px}
.rep-period-table th,.rep-period-table td{border:1px solid #c5ced8;padding:6px 8px;text-align:left;vertical-align:top}
.rep-period-table th{background:#eef2f6;font-size:11px;text-transform:uppercase;letter-spacing:.02em;font-weight:700}
.pecas-eq-row{display:grid;grid-template-columns:minmax(140px,38%) 1fr;gap:8px;padding:8px 0;border-bottom:1px solid var(--hair);font-size:13px;align-items:start}
.pecas-eq-row .lab{font-weight:700;color:var(--muted)}
.pecas-eq-row .val{font-family:var(--mono);font-size:12.5px;word-break:break-word}
.pecas-eq-row .val.empty{color:var(--faint);font-family:inherit;font-style:italic}
@media (max-width:720px){
  .rep-sign-grid,.rep-oficial-kpis{grid-template-columns:1fr}
}
.sig-pad{border:1px solid var(--hair);border-radius:10px;background:#fff;touch-action:none;width:100%;height:140px;cursor:crosshair}
.foto-papel{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.foto-papel button{font-size:12px;padding:6px 10px}
.foto-papel button.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.chk-sec{border:1px solid var(--hair);border-radius:12px;margin-bottom:12px;overflow:hidden;background:var(--surface)}
.chk-sec-extra{opacity:.92;border-style:dashed}
.chk-sec-hd{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;background:var(--surface-2);font-weight:800;font-size:13px}
.chk-item{padding:10px 12px;border-top:1px solid var(--hair);font-size:13px}
.chk-item .txt{margin-bottom:8px;line-height:1.35}
.chk-st{display:flex;gap:6px;flex-wrap:wrap}
.chk-st button{font-size:12px;padding:6px 10px;border-radius:8px;border:1px solid var(--hair);background:var(--surface);cursor:pointer;font-family:var(--f);font-weight:700}
.chk-st button.on-ok{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}
.chk-st button.on-bad{background:var(--crit-soft);border-color:var(--crit);color:var(--crit)}
.chk-st button.on-na{background:var(--surface-2);color:var(--muted)}
.med-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:600px){.med-grid{grid-template-columns:1fr}}
.rotina-hero{background:linear-gradient(135deg,#0B1B4A 0%,#163066 55%,#E85D04 160%);color:#fff;border-radius:14px;padding:18px 20px;margin-bottom:16px}
.rotina-hero .eyebrow{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.8;margin-bottom:6px}
.rotina-hero h2{margin:0 0 8px;font-size:22px;font-weight:800;line-height:1.25}
.rotina-hero p{margin:0;font-size:13px;line-height:1.45;opacity:.92;max-width:52rem}
.rotina-hero b{color:#f0d9a8}

/* Bancada do técnico */
.bancada{max-width:1100px;margin:0 auto}
.bancada__bar{margin-bottom:16px}
.bancada__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:900px){.bancada__grid{grid-template-columns:1fr}}
.bancada__block{margin-bottom:16px}
.bancada__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.bancada__pecas{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.bancada__peca-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--hair);border-radius:10px;background:var(--surface-2)}
.bancada__peca-nome{flex:1;font-weight:700;font-size:13.5px}
.bancada__peca-qtd{width:72px}
.bancada__peca-add{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.bancada__peca-add input[type=number]{width:72px}
.bancada__cam{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 14px}
.bancada__cam-btn{cursor:pointer;display:inline-flex;align-items:center}
.bancada__fotos{display:flex;flex-direction:column;gap:10px}
.bancada__foto{display:grid;grid-template-columns:88px 1fr auto;gap:10px;align-items:start;padding:10px;border:1px solid var(--hair);border-radius:12px;background:var(--surface-2)}
.bancada__foto img{width:88px;height:88px;object-fit:cover;border-radius:8px}
.bancada__foto-body{display:flex;flex-direction:column;gap:6px;min-width:0}
.bancada__foto-body input{width:100%}
.rotina-hero ul{margin:8px 0 0;padding-left:18px;color:rgba(255,255,255,.88);font-size:14px}

/* ===== Monitoramento (gestão visual) ===== */
.mon-hero{display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-radius:16px;padding:20px 22px;margin-bottom:16px;color:#fff}
.mon-hero--ok{background:linear-gradient(135deg,#0d5c3d 0%,#128a5a 55%,#1a5270 100%)}
.mon-hero--warn{background:linear-gradient(135deg,#8a5a12 0%,#c0801a 50%,#0B1B4A 100%)}
.mon-hero--crit{background:linear-gradient(135deg,#8a2420 0%,#d0413b 45%,#0B1B4A 100%)}
.mon-hero__eye{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.85;margin-bottom:6px}
.mon-hero h2{margin:0 0 8px;font-size:24px;font-weight:800;line-height:1.2}
.mon-hero p{margin:0;font-size:14px;line-height:1.45;opacity:.95;max-width:36rem}
.mon-hero__main{flex:1;min-width:220px}
.mon-gauge{flex-shrink:0}
.mon-gauge__ring{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;text-align:center;
  background:conic-gradient(var(--gcolor, #37c087) calc(var(--pct,0) * 1%), rgba(255,255,255,.22) 0);
  box-shadow:inset 0 0 0 10px rgba(0,0,0,.12)}
.mon-gauge__ring::before{content:"";width:78px;height:78px;border-radius:50%;background:rgba(0,0,0,.22);grid-area:1/1}
.mon-gauge__val,.mon-gauge__lab{grid-area:1/1;z-index:1;position:relative}
.mon-gauge__val{font-family:var(--mono);font-size:26px;font-weight:800;line-height:1}
.mon-gauge__val small{font-size:13px;opacity:.85}
.mon-gauge__lab{font-size:10px;line-height:1.2;opacity:.8;margin-top:42px;font-weight:600}

.mon-pulse{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:18px}
.mon-pulse__item{background:var(--surface);border:1px solid var(--hair);border-radius:12px;padding:14px 14px 12px;box-shadow:var(--shadow);border-top:3px solid var(--hair)}
.mon-pulse__item.is-live{border-top-color:var(--warn)}
.mon-pulse__item.is-warn{border-top-color:var(--warn)}
.mon-pulse__item.is-crit{border-top-color:var(--crit)}
.mon-pulse__n{font-size:28px;font-weight:800;line-height:1;color:var(--ink)}
.mon-pulse__item.is-live .mon-pulse__n{color:var(--warn)}
.mon-pulse__item.is-crit .mon-pulse__n{color:var(--crit)}
.mon-pulse__l{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.3;font-weight:600}

.mon-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:16px}
@media(min-width:960px){.mon-grid{grid-template-columns:1.15fr .85fr}}
.mon-card .hd{display:flex;justify-content:space-between;align-items:center;gap:8px}

.mon-compare__row{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin:8px 0 4px;color:var(--muted)}
.mon-compare__row b{color:var(--ink)}
.mon-track{height:12px;border-radius:8px;background:var(--surface-2);overflow:hidden;margin-bottom:6px}
.mon-track__fill{height:100%;border-radius:8px;transition:width .4s ease}
.mon-track__fill--demand{background:linear-gradient(90deg,var(--navy),var(--accent))}
.mon-track__fill--cap{background:var(--ok);opacity:.55}

.mon-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
@media(max-width:600px){.mon-kpi-row{grid-template-columns:1fr}}
.mon-mini{background:var(--surface-2);border-radius:10px;padding:10px 12px;border:1px solid var(--hair)}
.mon-mini__l{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.mon-mini__v{font-size:18px;font-weight:800;margin:4px 0 2px}

.mon-bar{margin-bottom:10px}
.mon-bar__top{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;margin-bottom:4px}
.mon-bar__track{height:8px;border-radius:5px;background:var(--surface-2);overflow:hidden}
.mon-bar__fill{height:100%;border-radius:5px;background:var(--navy)}
.mon-bar__fill--pend{background:linear-gradient(90deg,var(--warn),var(--crit))}
.mon-bar__fill--done{background:linear-gradient(90deg,var(--blue),var(--ok))}

.mon-params{margin-top:14px;border-top:1px solid var(--hair);padding-top:10px}
.mon-params summary{cursor:pointer;font-weight:700;font-size:13px;color:var(--muted)}

.mon-live{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto}
.mon-live__row{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;border:1px solid var(--hair);background:var(--surface-2)}
.mon-live__row.is-live{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 35%,var(--hair))}
.mon-live__row.is-wait{background:var(--crit-soft);border-color:color-mix(in srgb,var(--crit) 30%,var(--hair))}
.mon-live__dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0;background:var(--muted)}
.mon-live__row.is-live .mon-live__dot{background:var(--warn);box-shadow:0 0 0 4px color-mix(in srgb,var(--warn) 25%,transparent);animation:monPulse 1.6s ease infinite}
.mon-live__row.is-wait .mon-live__dot{background:var(--crit)}
.mon-live__body{flex:1;min-width:0}
.mon-live__title{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:2px}
.mon-live__meta{font-size:14px;font-weight:700;color:var(--warn);white-space:nowrap}
@keyframes monPulse{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 20%,transparent)}50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--warn) 8%,transparent)}}

.mon-tecs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.mon-tec{border:1px solid var(--hair);border-radius:12px;padding:14px;background:var(--surface-2)}
.mon-tec.is-busy{border-color:color-mix(in srgb,var(--warn) 40%,var(--hair));box-shadow:inset 3px 0 0 var(--warn)}
.mon-tec__head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:12px}
.mon-tec__name{font-weight:800;font-size:15px}
.mon-tec__foot{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:10px;font-size:12px;color:var(--muted)}
.mon-tec__foot b{color:var(--ink)}
.mon-empty{text-align:center;padding:28px 12px;color:var(--muted);font-size:14px}

/* ===== Calendário hospital (white-label) ===== */
.cal-brand{display:flex;gap:16px;align-items:center;margin-bottom:16px;padding:16px 18px;background:var(--surface);border:1px solid var(--hair);border-radius:14px;box-shadow:var(--shadow)}
.cal-brand__logo img{height:52px;max-width:140px;object-fit:contain;display:block}
.cal-brand__fallback{width:52px;height:52px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800;font-size:22px}
.cal-brand__eye{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.cal-brand h2{margin:2px 0 4px;font-size:20px;font-weight:800}
.cal-capa{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;padding:14px 16px;margin-bottom:16px;background:var(--surface-2);border:1px solid var(--hair);border-radius:12px}
.cal-capa__n{font-size:18px;font-weight:800;margin:4px 0}
.cal-capa__n .tnum{font-size:28px;color:var(--navy)}
.cal-wrap{display:grid;grid-template-columns:1fr;gap:16px;max-width:920px}
.cal-wrap .cal-month{order:0}
.cal-wrap .cal-day{order:1}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-grid--head{margin-bottom:6px}
.cal-cell{min-height:64px;border:1px solid var(--hair);border-radius:10px;background:var(--surface);padding:6px 8px;text-align:left;cursor:pointer;font-family:var(--f);display:flex;flex-direction:column;gap:2px}
.cal-cell--head{min-height:auto;border:0;background:transparent;font-size:11px;font-weight:800;color:var(--muted);text-align:center;padding:4px;cursor:default}
.cal-cell--empty{border:0;background:transparent;cursor:default;min-height:48px}
.cal-cell--weekend{opacity:.45;background:var(--surface-2);cursor:default}
.cal-cell.has-work{border-color:color-mix(in srgb,var(--navy) 35%,var(--hair))}
.cal-cell.is-sel{outline:2px solid var(--accent);outline-offset:-1px}
.cal-cell.is-tight{background:var(--warn-soft)}
.cal-cell.is-over{background:var(--crit-soft)}
.cal-cell__d{font-weight:800;font-size:13px}
.cal-cell__n{font-size:12px;font-weight:700;color:var(--navy)}
.cal-cell__bar{display:block;height:4px;border-radius:3px;background:var(--surface-2);margin-top:auto;overflow:hidden}
.cal-cell__bar i{display:block;height:100%;background:var(--navy)}
.cal-cell.is-over .cal-cell__bar i{background:var(--crit)}
.cal-visita{padding:12px;border:1px solid var(--hair);border-radius:10px;margin-bottom:10px;background:var(--surface-2)}
.cal-visita__top{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-bottom:2px}

/* Alertas operacionais */
.alertas{margin-bottom:16px;padding:14px 16px;border-radius:12px;border:1px solid var(--hair);background:var(--surface);box-shadow:var(--shadow)}
.alertas--ok{border-color:color-mix(in srgb,var(--ok) 35%,var(--hair))}
.alertas__hd{font-size:13px;font-weight:800;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.alertas__list{display:flex;flex-direction:column;gap:8px}
.alerta{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--hair);background:var(--surface-2);cursor:pointer;font-family:var(--f)}
.alerta:hover{border-color:var(--navy)}
.alerta--crit{border-left:3px solid var(--crit);background:var(--crit-soft)}
.alerta--warn{border-left:3px solid var(--warn);background:var(--warn-soft)}
.alerta--info{border-left:3px solid var(--navy)}
.alerta__t{font-size:13px;font-weight:800;color:var(--ink)}
.alerta__d{font-size:12px;color:var(--muted)}
.rep-sec-hd{display:flex;justify-content:space-between;align-items:center;gap:8px}
.rep-score{font-size:12px;font-weight:800;color:#1a7a4c}
.rep-check-geral{font-size:13px;font-weight:700;margin:4px 0 12px;padding:8px 10px;background:#eef2f6;border-radius:8px}
.rep-check-item{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:10px 12px;border-bottom:1px solid #e8edf2;font-size:12.5px}
.rep-check-item:last-child{border-bottom:0}
.rep-check-txt{grid-column:1}.rep-check-st{font-weight:800;white-space:nowrap}
.rep-check-st.ok{color:#1a7a4c}.rep-check-st.bad{color:#c0392b}
.rep-check-obs,.rep-check-fotos{grid-column:1/-1;color:#667}
@media print{
  @page{
    size: A4 portrait;
    margin: 18mm 16mm;
  }
  html,body{
    background:#fff!important;
    margin:0!important;
    padding:0!important;
    width:100%;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
  body *{visibility:hidden}
  #printArea,#printArea *{visibility:visible}
  #printArea{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    margin:0;
    padding:0;
    box-sizing:border-box;
    background:#fff!important;
  }
  .noprint,.app-shell .sidebar,.topbar,.sidebar-backdrop{display:none!important}
  .ov{
    position:static!important;
    display:block!important;
    background:transparent!important;
    inset:auto!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
  }
  .modal{
    position:static!important;
    background:transparent!important;
    box-shadow:none!important;
    max-height:none!important;
    overflow:visible!important;
    max-width:100%!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  .mb{padding:0!important;background:transparent!important;margin:0!important}
  .rep,.rep-oficial{
    max-width:100%!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    font-family:Calibri,Candara,Segoe UI,Arial,sans-serif!important;
  }
  .rep-foto img{
    max-height:none;
    background:#f3f5f7!important;
    page-break-inside:avoid;
  }
  .chk-sec,.rep-sec,.rep-period-grupo,.rep-sign-card{page-break-inside:avoid}
}

/* Margens A4 também no nível raiz (alguns browsers) */
@page{
  size: A4 portrait;
  margin: 18mm 16mm;
}


