
/* RFM MedTech v38.4 — shell visual SaaS. Mantém módulos funcionais v37 sem reescrever regras de negócio. */
:root{--rfm-bg:#f4f7fb;--rfm-surface:#ffffff;--rfm-surface-raised:#f9fbfd;--rfm-border:#dce5ef;--rfm-text:#102c47;--rfm-muted:#66809a;--rfm-primary:#1976d2;--rfm-accent:#38b9db;--rfm-success:#18875b;--rfm-warning:#b66a00;--rfm-danger:#c23d4b}
html,body{background:#f4f7fb!important;color:#102c47!important}.shell{background:#f4f7fb!important;min-height:100vh}.side-nav{background:#123451!important;border-right:1px solid #274c6b!important;color:#fff!important;width:330px!important;padding:0 14px 24px!important}.shell{margin-left:330px!important}.side-brand{min-height:94px!important;padding:18px 12px!important;border-bottom:1px solid #ffffff20!important}.side-brand .mini-logo,.logo{background:linear-gradient(135deg,#43aef0,#55d2d5)!important;color:#06243c!important}.side-brand strong{color:#fff!important;font-size:22px!important}.side-brand span{color:#a9c8e2!important;font-size:14px!important}.v38-nav-section{margin:22px 12px 8px;color:#79bbe7;font-size:11px;font-weight:800;letter-spacing:1.5px}.side-item{display:flex!important;align-items:center!important;gap:11px!important;width:100%!important;min-height:58px!important;margin:4px 0!important;padding:9px 12px!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#e8f5ff!important;text-align:left!important}.side-item:hover,.side-item.active{background:#22577e!important}.v38-nav-icon{width:24px!important;flex:0 0 24px;text-align:center;font-size:18px;color:#dff4ff}.v38-nav-copy{display:block;min-width:0}.v38-nav-copy b{display:block;color:#fff;font-size:16px;line-height:1.2}.v38-nav-copy small{display:block;color:#a9c8e2;font-size:12px;margin-top:4px;line-height:1.25}.topbar{background:#fff!important;border-bottom:1px solid #dce5ef!important;box-shadow:none!important;min-height:86px!important;padding:14px 28px!important}.brand h1{color:#102c47!important}.brand .subtitle{color:#66809a!important}.status-pill{background:#f6f9fc!important;border-color:#d7e2ed!important;color:#49657f!important}.btn{border-color:#cbd9e7!important;background:#fff!important;color:#102c47!important;box-shadow:none!important}.btn:hover{border-color:#9bb7d1!important}.btn-primary,.btn-sync{background:#1976d2!important;border-color:#1976d2!important;color:#fff!important}.btn-ghost{background:#fff!important}.panel,.module-card,.card,.theme-card,.workspace-card,.plugin-card,.eq-card,.cmms-card,.analyzer-panel,.rfm-v36-perm-panel,.rfm-v36-base-plan,.rfm-revb-hub-card,.decision-box{background:#fff!important;border-color:#dce5ef!important;color:#102c47!important;box-shadow:0 1px 2px #102c4708!important}.module-workspace,.module-workspace *{--legacy-light:1}.module-workspace{background:#f4f7fb!important;padding:28px!important}.module-header h2,.module-card h3,.module-card h4,.workspace-card h3,.eq-card h4,.cmms-card h3,.rfm-v35-modal-head h3{color:#102c47!important}.module-header p,.card-note,.workspace-sub,.eq-card p,.cmms-card p,.readonly-note,.rfm-v35-modal-head p{color:#66809a!important}.module-badge,.status-badge,.eq-tag,.cmms-pill{border-color:#d7e2ed!important;background:#eef4fa!important;color:#49657f!important}.form-field label,.auth-field label{color:#49657f!important}.form-field input,.form-field select,.form-field textarea,.catalog-toolbar input,.analyzer-map input,.analyzer-map select,.rfm-cal-edit input,.rfm-cal-edit select,.global-search-card input{background:#fff!important;border-color:#cbd9e7!important;color:#102c47!important}.module-table-wrap,.table-wrap{background:#fff!important;border-color:#dce5ef!important}.module-table,.data-table{color:#102c47!important}.module-table th,.data-table th{background:#f7f9fc!important;color:#66809a!important;border-color:#e4ebf3!important}.module-table td,.data-table td{border-color:#e7edf4!important;color:#173650!important}.module-table tr:hover td,.data-table tr:hover td{background:#f8fbfe!important}.module-note,.notice,.ref-note{background:#eaf4ff!important;border-color:#cce3fb!important;color:#234f77!important}.module-success{background:#e7f6ee!important;color:#1b6f50!important;border-color:#bfe8d4!important}.module-danger{background:#fff0f1!important;color:#993340!important;border-color:#f0c1c6!important}.module-empty{color:#66809a!important}.rfm-v35-modal-backdrop{background:#08213db8!important}.rfm-v35-modal{background:#fff!important;border-color:#dce5ef!important}.rfm-v35-modal-head{border-color:#e4ebf3!important}.rfm-v35-close{background:#eef4fa!important;color:#244b6c!important}.rfm-revb-equipment-head{background:linear-gradient(135deg,#eef7ff,#f5fbff)!important;border-color:#cfe3f2!important}.rfm-revb-equipment-tag span{color:#66809a!important}.rfm-revb-equipment-tag strong{color:#1976d2!important}.workspace-number{color:#1976d2!important}.workspace-card .drag{color:#8aa4ba!important}.rfm-v36-perm-panel>summary{background:#f3f7fb!important;color:#102c47!important}.rfm-v36-perm-group{border-color:#e1e9f1!important}.rfm-v36-perm-row:nth-child(even){background:#f8fafc!important}.rfm-v36-perm-row label{color:#49657f!important}.rfm-v36-perm-row small{color:#8198ad!important}.global-search-card{background:#fff!important;border-color:#dce5ef!important}.global-search-result{color:#173650!important;border-color:#e7edf4!important}.global-search-result:hover{background:#f0f6fb!important}.auth-gate{background:linear-gradient(120deg,#123451 0 42%,#eaf1f8 42%)!important}.auth-card{background:#fff!important;border-color:#dce5ef!important;color:#102c47!important}.auth-brand span,.auth-intro,.auth-foot{color:#66809a!important}.auth-field input{background:#fff!important;border-color:#cbd9e7!important;color:#102c47!important}.auth-foot{border-color:#e4ebf3!important}.footer{color:#66809a!important}.v38-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px;margin:18px 0}.v38-kpi{background:#fff;border:1px solid #dce5ef;border-radius:15px;padding:20px}.v38-kpi span{display:block;color:#66809a;font-size:13px}.v38-kpi strong{display:block;font-size:30px;color:#102c47;margin:8px 0}.v38-kpi small{color:#7c91a6}.v38-home-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.v38-ticket-thread{display:grid;gap:10px;margin:16px 0}.v38-ticket-thread article{background:#f5f8fb;border:1px solid #e0e8f0;border-radius:12px;padding:12px}.v38-ticket-thread article small{display:block;color:#7890a6;margin-top:3px}.v38-ticket-thread article p{margin:8px 0 0;white-space:pre-wrap}.side-mini .side-nav{width:86px!important}.side-mini .shell{margin-left:86px!important}.side-mini .side-brand>div:not(.mini-logo),.side-mini .v38-nav-section,.side-mini .v38-nav-copy{display:none!important}.side-mini .side-item{justify-content:center!important}.side-mini .v38-nav-icon{font-size:20px!important}.side-mini #sideCollapseV31{right:16px!important}@media(max-width:1050px){.v38-kpi-grid{grid-template-columns:repeat(2,1fr)}.v38-home-grid{grid-template-columns:1fr}}@media(max-width:900px){.shell{margin-left:0!important}.side-nav{width:min(320px,90vw)!important}.module-workspace{padding:18px!important}}@media(max-width:600px){.v38-kpi-grid{grid-template-columns:1fr}.topbar{padding:10px 14px!important}.module-workspace{padding:14px!important}}

/* v38.4.1 — separação Plataforma RFM × Tenant e correções mobile */
.v3841-platform-hidden{display:none!important}.rfm-platform-mode #activeBaseBadge,.rfm-platform-mode #switchBaseBtn{display:none!important}.v3841-inspection-card{margin:14px 6px 20px;padding:14px;border:1px solid #5ca9da66;border-radius:14px;background:#0d2d47;color:#fff}.v3841-inspection-card small{display:block;color:#70c5f2;font-size:11px;letter-spacing:1px}.v3841-inspection-card b{display:block;font-size:16px;margin-top:6px}.v3841-inspection-card span{display:block;color:#b9d7e9;font-size:12px;margin-top:4px}.v3841-inspection-card button{margin-top:12px;width:100%;border:1px solid #6ab8e7;background:#173f60;color:#fff;border-radius:10px;padding:10px;cursor:pointer}.v3841-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:16px;margin-bottom:18px}.v3841-plan-card{padding:20px}.v3841-plan-card>span{font-size:11px;font-weight:800;letter-spacing:1.4px;color:#1976d2}.v3841-plan-card h3{margin:8px 0}.v3841-plan-card p{color:#66809a;min-height:52px}.v3841-plan-card ul{padding-left:18px;color:#49657f;line-height:1.8}.v3841-check-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px}.v3841-check{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #dce5ef;border-radius:12px;background:#f8fbfe;cursor:pointer}.v3841-check input{margin-top:4px}.v3841-check b,.v3841-check small{display:block}.v3841-check small{color:#66809a;margin-top:3px}.v3841-base-backdrop{z-index:200000!important}.v3841-base-modal{max-height:min(82vh,760px)!important;overflow:auto!important;-webkit-overflow-scrolling:touch}.v3841-modal-drag{display:none}.rfm-inspection-mode #activeBaseBadge{background:#fff7e6!important;border-color:#efbf63!important;color:#7a4c00!important}
@media(max-width:1200px){.v3841-plan-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}
@media(max-width:700px){.v3841-plan-grid,.v3841-check-grid{grid-template-columns:1fr}.v3841-base-backdrop{padding:0!important;align-items:flex-end!important}.v3841-base-modal{width:100%!important;max-width:none!important;max-height:88dvh!important;border-radius:20px 20px 0 0!important;margin:0!important;padding:18px 14px calc(22px + env(safe-area-inset-bottom))!important}.v3841-modal-drag{display:block;width:44px;height:5px;border-radius:999px;background:#b5c6d6;margin:0 auto 14px}.base-choice{min-height:64px!important;padding:14px!important}.base-choice b{font-size:16px!important}.base-choice small{font-size:13px!important}.rfm-platform-mode .topbar .import-wrap{grid-template-columns:minmax(0,1fr) auto!important}.rfm-platform-mode #sessionUser{grid-column:1/2!important}.rfm-platform-mode #logoutBtn{grid-column:2/3!important}.rfm-inspection-mode #activeBaseBadge{grid-column:1/3!important;min-height:44px!important}.rfm-inspection-mode #switchBaseBtn{grid-column:1/3!important;width:100%!important;min-width:0!important}.v3841-inspection-card{margin:12px 4px 16px}.v38-nav-copy b{font-size:15px}.v38-nav-copy small{font-size:11px}}


/* v38.4.3 — ícones vetoriais, editor compacto de tenant, auditoria unificada e mobile */
.v3842-svg-icon{width:20px;height:20px;display:block;color:inherit;stroke:currentColor!important;fill:none!important;flex:none}.v38-nav-icon{color:#dff4ff!important;-webkit-text-fill-color:#dff4ff!important}.side-item.active .v38-nav-icon,.side-item:hover .v38-nav-icon{color:#fff!important;-webkit-text-fill-color:#fff!important}.v3841-inspection-card button{display:flex;align-items:center;justify-content:center;gap:8px}.v3841-inspection-card button .v3842-svg-icon{width:17px;height:17px}.btn,.mini-link,.mobile-bottom-nav button,.mobile-bottom-nav button *{color:inherit}.btn-primary,.btn-primary *,.btn-sync,.btn-sync *{color:#fff!important;-webkit-text-fill-color:#fff!important}.v3842-base-check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.v3842-base-check{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid #dce5ef;border-radius:10px;background:#f8fbfe;cursor:pointer;min-height:58px}.v3842-base-check input{margin-top:3px;width:18px;height:18px}.v3842-base-check b{display:block;font-size:14px;line-height:1.2;color:#173650}.v3842-base-check small{display:block;font-size:11px;color:#66809a;margin-top:3px;line-height:1.2}.v3842-tabbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid #e1e9f1;padding-bottom:10px}.v3842-tab{border:1px solid #cbd9e7;background:#f7fafd;color:#49657f;border-radius:999px;padding:10px 15px;font-weight:800;cursor:pointer}.v3842-tab.active{background:#1976d2;color:#fff;border-color:#1976d2}.v3842-inspect-panel{padding:4px 0 0}.v3842-market{margin:18px 0}.v3842-market-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.v3842-market-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px}.v3842-market-card{border:1px solid #dce5ef;background:#f9fbfd;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px}.v3842-market-card>b{color:#1976d2;font-size:17px}.v3842-market-card>strong{color:#102c47;line-height:1.45}.v3842-market-card>span,.v3842-market-card>small{color:#66809a;line-height:1.4}.v3842-market-card>a{color:#1976d2;font-weight:800;text-decoration:none;margin-top:auto}.module-kpi strong{color:#43b8dc!important}.mobile-bottom-nav button strong{display:grid!important;place-items:center;color:#4cbde0!important;-webkit-text-fill-color:#4cbde0!important}.mobile-bottom-nav button strong .v3842-svg-icon{width:21px;height:21px}.mobile-bottom-nav button span{font-size:11px}.v3841-base-backdrop{touch-action:manipulation}.v3841-base-modal .base-choice{touch-action:manipulation}.v3841-base-modal .base-choice.active{outline:2px solid #1976d2;background:#eaf4ff!important}
@media(max-width:900px){.v3842-market-grid{grid-template-columns:1fr 1fr}.v3842-base-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.v3842-market-grid,.v3842-base-check-grid{grid-template-columns:1fr}.v3842-base-check{min-height:54px}.v3842-tabbar{position:sticky;top:0;background:#fff;z-index:2;padding-top:4px}.v3841-base-modal{overscroll-behavior:contain}.v3841-base-backdrop{touch-action:none}.v3841-base-modal{touch-action:pan-y}.mobile-bottom-nav{z-index:180000!important}.v3841-base-backdrop{z-index:260000!important}}

/* ==================== RFM MedTech v38.4.3 • tema claro clássico e consistência visual ==================== */
/* A v38 é clara. Componentes legados da linha 37 não podem reintroduzir fundos escuros
   em modais, KPIs, calendários, assistentes, mapas de importação e caixas de detalhe. */
:root{
  --rfm-dialog-bg:#ffffff;
  --rfm-dialog-soft:#f7f9fc;
  --rfm-dialog-soft-2:#eef4fa;
  --rfm-dialog-border:#d6e1ec;
  --rfm-dialog-text:#173650;
  --rfm-dialog-muted:#6a8198;
  --rfm-dialog-accent:#1976d2;
}
.rfm-v35-modal,
.rfm-v35-modal-body,
.rfm-v35-schedule-create,
.rfm-v35-provider-strip,
.rfm-v35-logo-preview,
.rfm-v35-check,
.rfm-v35-summary span,
.rfm-v36-base-plan,
.rfm-v36-plan-summary>div,
.rfm-v36-plan-editor,
.rfm-v36-plan-nav-sub,
.rfm-v36-perm-panel,
.rfm-import-map-v37,
.rfm-import-map-v37>div,
.rfm-revb-detail-grid>div,
.rfm-revb-widget-option,
.rfm-cal-day,
.plugin-card,
.builder-item,
.route-stop,
.global-search-card,
.module-kpi,
.decision-box,
.analyzer-panel{
  background:var(--rfm-dialog-bg)!important;
  color:var(--rfm-dialog-text)!important;
  border-color:var(--rfm-dialog-border)!important;
  box-shadow:none!important;
}
.rfm-v35-modal-head,
.rfm-v35-report-head,
.rfm-cal-item,
.rfm-revb-widget-foot{
  border-color:#e2eaf2!important;
}
.rfm-v35-modal h1,.rfm-v35-modal h2,.rfm-v35-modal h3,.rfm-v35-modal h4,
.rfm-v35-modal b,.rfm-v35-modal strong,
.rfm-revb-detail-grid b,.rfm-v36-plan-summary b,
.module-kpi strong{
  color:#102c47!important;
  -webkit-text-fill-color:#102c47!important;
}
.rfm-v35-modal p,.rfm-v35-modal small,.rfm-v35-modal span,
.rfm-revb-detail-grid span,.rfm-v36-plan-summary span,
.module-kpi span,.module-kpi small{
  color:var(--rfm-dialog-muted)!important;
  -webkit-text-fill-color:var(--rfm-dialog-muted)!important;
}
.rfm-v35-modal input,.rfm-v35-modal select,.rfm-v35-modal textarea,
.rfm-v36-plan-toolbar input,.rfm-v36-plan-toolbar select,
.rfm-import-map-v37 select,.checklist-row select,.checklist-row input,
.rfm-cal-edit input,.rfm-cal-edit select{
  background:#fff!important;
  color:#173650!important;
  -webkit-text-fill-color:#173650!important;
  border:1px solid #c7d5e3!important;
  box-shadow:none!important;
}
.rfm-v35-modal input::placeholder,.rfm-v35-modal textarea::placeholder{color:#91a4b7!important;opacity:1}
.rfm-v35-modal select option,.form-field select option{background:#fff!important;color:#173650!important}
.rfm-v35-close{background:#eef4fa!important;color:#31536f!important;border:1px solid #d6e1ec!important}
.rfm-v35-close:hover{background:#e4eef7!important}
.rfm-v35-check,.rfm-v36-plan-nav-sub,.rfm-v36-perm-row:nth-child(even),.rfm-cal-day,.builder-item,.route-stop{background:#f8fafc!important}
.rfm-cal-day:hover{background:#eef6fc!important;border-color:#7db8df!important}
.rfm-cal-day span{background:#e7f1f8!important;color:#31536f!important}
.rfm-revb-detail-grid>div{background:#f8fbfe!important}
.rfm-revb-donut{background:conic-gradient(#1976d2 calc(var(--p)*1%),#e3edf5 0)!important}
.rfm-revb-donut:before{background:#fff!important}
.rfm-revb-widget-option p{color:#66809a!important}
.rfm-v36-base-plan{color:#173650!important}
.rfm-v36-base-plan:hover{background:#f1f7fc!important;border-color:#8ebbd9!important}
.rfm-v36-plan-nav-base{color:#173650!important}
.rfm-v36-plan-nav-base:hover{background:#eaf3fa!important}
.rfm-import-map-v37 select{background:#fff!important;color:#173650!important}
.global-search-pop{background:rgba(15,36,54,.40)!important;backdrop-filter:blur(3px)}
.global-search-card input{background:#fff!important;color:#173650!important}
.module-kpi{min-width:150px;border:1px solid #dce5ef!important;border-radius:14px!important;padding:16px 18px!important}
.module-kpi strong{font-size:28px!important;color:#1976d2!important;-webkit-text-fill-color:#1976d2!important}
.module-kpi span{text-transform:uppercase;letter-spacing:.04em;font-size:12px!important;font-weight:800}
.status-badge.warn{background:#fff4df!important;border-color:#f2d39b!important;color:#8a5700!important;-webkit-text-fill-color:#8a5700!important}
.status-badge.ok{background:#e9f7ef!important;border-color:#c5e9d4!important;color:#176c4b!important;-webkit-text-fill-color:#176c4b!important}
.status-badge.neutral{background:#eef3f7!important;border-color:#d5e0e9!important;color:#50687d!important;-webkit-text-fill-color:#50687d!important}
/* Aparência clássica: símbolos monocromáticos, sem emojis/cores imprevisíveis do SO. */
.v3843-icon-chip{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#edf5fb;border:1px solid #d8e7f2;color:#2b6f9e;font:700 14px/1 system-ui,sans-serif}
/* Chamados: responsável em destaque sem caixa escura. */
.v3843-owner-card{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid #dce5ef;border-radius:12px;background:#f8fbfe;margin:12px 0}
.v3843-owner-card .v3843-owner-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e5f1fa;color:#2b6f9e;font-weight:900}
.v3843-owner-card small{display:block;color:#71889e!important}.v3843-owner-card b{display:block;color:#173650!important}
@media(max-width:700px){
  .rfm-v35-modal{width:100%!important;max-width:none!important;max-height:92dvh!important;border-radius:20px 20px 0 0!important;margin:0!important}
  .rfm-v35-modal-backdrop{padding:0!important;align-items:flex-end!important}
  .rfm-v35-modal-body{padding:14px!important}
  .rfm-revb-detail-grid{grid-template-columns:1fr!important}
  .module-kpis{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}
  .module-kpi{min-width:0!important}
}
/* ==================== fim v38.4.3 ==================== */

/* Modais simples legados usados por troca de base, confirmações e diálogos rápidos. */
.rfm-modal-backdrop{background:rgba(15,36,54,.42)!important;backdrop-filter:blur(3px)!important}
.rfm-modal{background:#fff!important;border:1px solid #d6e1ec!important;color:#173650!important;box-shadow:0 18px 55px rgba(28,55,80,.18)!important}
.rfm-modal h1,.rfm-modal h2,.rfm-modal h3,.rfm-modal h4,.rfm-modal b,.rfm-modal strong{color:#102c47!important;-webkit-text-fill-color:#102c47!important}
.rfm-modal p,.rfm-modal small,.rfm-modal span{color:#6a8198!important;-webkit-text-fill-color:#6a8198!important}
.rfm-modal textarea,.rfm-modal input,.rfm-modal select{background:#fff!important;color:#173650!important;-webkit-text-fill-color:#173650!important;border:1px solid #c7d5e3!important}
.rfm-modal select option{background:#fff!important;color:#173650!important}
.rfm-modal .base-choice{background:#f8fbfe!important;border-color:#d8e4ee!important;color:#173650!important}
.rfm-modal .base-choice:hover{background:#eef6fc!important;border-color:#86b9dc!important}
.rfm-modal .base-choice.active{background:#e8f3fc!important;border-color:#1976d2!important}
