/* =====================================================================
   CASCA VISSMED — peças globais espelhadas do Vissmed-2 (lane espelho-casca)
   Arquivo separado do app.css de propósito: as lanes de tela mexem no app.css.
   Fontes de cada regra (vissmed2_src):
   - growl ........ js/services.js:6977 + css/app.min.1.css (.alert-*, .growl-animated)
   - breadcrumb ... css/app.min.1.css:6326 e :15184 (.breadcrumb)
   - chosen ....... css/app.min.2.css (.chosen-*) — tema Material Admin do Vissmed
   - menu ......... css/app.min.1.css (.main-menu, .sub-menu)
   - topo ......... template/header.html + css/app.min.1.css (.header-inner, .top-menu, .dropdown-menu)
   - calendário ... angular-moment-picker (CSS do vendor não está na fonte: cores = chute)
   ===================================================================== */

/* ---------- 1. Mensagens (growl) ---------- */
/* bootstrap-growl: placement top/right, offset x:20 y:85, spacing 10, z-index 1031 */
.vm-growl-pilha{position:fixed;top:85px;right:20px;z-index:1031;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none;max-width:calc(100vw - 40px)}
.vm-growl{pointer-events:auto;position:relative;display:inline-block;max-width:100%;box-sizing:border-box;
  padding:15px 44px 15px 30px;border:1px solid transparent;border-radius:2px;
  font-family:roboto,Roboto,Arial,sans-serif;font-size:13px;line-height:1.42857143;color:#fff;
  white-space:pre-line;word-wrap:break-word;animation:vm-growl-entra .75s both}
.vm-growl.saindo{animation:vm-growl-sai .75s both}
/* cores = .alert-* do app.min.1.css (fundo com 70% de opacidade) + sombra do .growl-animated */
.vm-growl-success{background-color:rgba(76,175,80,.7);box-shadow:0 0 5px rgba(76,175,80,.5)}
.vm-growl-info{background-color:rgba(33,150,243,.7);box-shadow:0 0 5px rgba(33,150,243,.5)}
.vm-growl-warning{background-color:rgba(255,193,7,.7);box-shadow:0 0 5px rgba(255,193,7,.5)}
.vm-growl-danger{background-color:rgba(244,67,54,.7);box-shadow:0 0 5px rgba(244,67,54,.5)}
.vm-growl-inverse{background-color:#333;box-shadow:0 0 5px rgba(51,51,51,.5)}
/* botão de fechar do growl (allow_dismiss): "×" do Bootstrap, cor herdada */
.vm-growl-x{position:absolute;top:11px;right:14px;padding:0;margin:0;border:0;background:transparent;cursor:pointer;
  font-size:21px;font-weight:700;line-height:1;color:inherit;text-shadow:0 1px 0 rgba(0,0,0,.15);opacity:.6}
.vm-growl-x:hover,.vm-growl-x:focus-visible{opacity:1}
/* animate.css bounceIn / bounceOut (animate enter/exit do growl) */
@keyframes vm-growl-entra{
  0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}
  0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}
  60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}
@keyframes vm-growl-sai{20%{transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;transform:scale3d(1.1,1.1,1.1)}to{opacity:0;transform:scale3d(.3,.3,.3)}}
@media (prefers-reduced-motion:reduce){.vm-growl,.vm-growl.saindo{animation:none}}

/* ---------- 5. Breadcrumb "Início / ..." ---------- */
.vm-breadcrumb{padding:5px 10px 5px;margin:0 0 18px;list-style:none;background-color:transparent;border-radius:0;font-size:13px}
.vm-breadcrumb>li{display:inline-block}
.vm-breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}
.vm-breadcrumb>li>a{color:#a9a9a9;text-decoration:none}
.vm-breadcrumb>li>a:hover{color:#7c7c7c}
@media (max-width:360px){.vm-breadcrumb{font-size:0}}

/* ---------- 2. Calendário (moment-picker) ---------- */
.vm-dp{position:fixed;z-index:1060;background:#fff;border:1px solid #e0e0e0;border-radius:3px;
  box-shadow:0 2px 10px rgba(0,0,0,.2);padding:6px;font-family:roboto,Roboto,Arial,sans-serif;font-size:13px;color:#5e5e5e;user-select:none}
.vm-dp:before{content:"";position:absolute;top:-7px;left:14px;border:7px solid transparent;border-top:0;border-bottom-color:#e0e0e0}
.vm-dp:after{content:"";position:absolute;top:-6px;left:15px;border:6px solid transparent;border-top:0;border-bottom-color:#fff}
.vm-dp.acima:before{top:auto;bottom:-7px;border-bottom:0;border-top:7px solid #e0e0e0}
.vm-dp.acima:after{top:auto;bottom:-6px;border-bottom:0;border-top:6px solid #fff}
.vm-dp table{border-collapse:separate;border-spacing:2px}
.vm-dp th,.vm-dp td{text-align:center;padding:0;height:30px;min-width:32px;border-radius:2px}
.vm-dp .vm-dp-cab th{cursor:pointer;font-weight:500;height:32px}
.vm-dp .vm-dp-cab th:hover{background:#f1f1f1}
.vm-dp .vm-dp-cab th.vm-dp-titulo.fixo{cursor:default;background:transparent}
.vm-dp .vm-dp-sem th{font-weight:400;color:#959595;font-size:11px;height:24px}
.vm-dp td{cursor:pointer}
.vm-dp td:hover{background:#f1f1f1}
.vm-dp-ano td{min-width:52px;height:40px}
.vm-dp td.vm-dp-fora{color:#c0c0c0}
.vm-dp td.vm-dp-hoje{font-weight:700;color:#2196f3}
.vm-dp td.vm-dp-foco{background:#e3f2fd}
.vm-dp td.vm-dp-sel{background:#2196f3;color:#fff}
.vm-dp td.vm-dp-off{color:#ddd;cursor:not-allowed;background:transparent}

/* ---------- 3. Select com busca (Chosen + tema Material Admin) ---------- */
.vm-chosen-oculto{display:none!important}
.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;user-select:none;box-sizing:border-box}
.chosen-container *{box-sizing:border-box}
.chosen-container .chosen-drop{position:absolute;top:100%;left:0;z-index:1010;width:100%;background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.2);margin-top:1px;border:0;transform:scale(0);opacity:0;transform-origin:top left;
  transition:transform .15s,opacity .15s}
.chosen-container.chosen-with-drop .chosen-drop{transform:scale(1);opacity:1}
.chosen-container .chosen-results{position:relative;margin:0;padding:0;max-height:300px;overflow-x:hidden;overflow-y:auto;list-style:none;color:#5e5e5e}
.chosen-container .chosen-results li{display:none;margin:0;padding:10px 17px;width:100%;line-height:15px;word-wrap:break-word;list-style:none}
.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}
.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}
.chosen-container .chosen-results li.highlighted{background:rgba(0,0,0,.075);color:#333}
.chosen-container .chosen-results li.no-results{display:list-item;color:#777;background:#f4f4f4}
.chosen-container .chosen-results li.result-selected{background:transparent;color:#5e5e5e;position:relative;cursor:default}
.chosen-container .chosen-results li.result-selected.highlighted{background:rgba(0,0,0,.075)}
.chosen-container .chosen-results li.result-selected:before{content:"\2713";position:absolute;right:15px;top:9px;font-size:15px}
.chosen-container .chosen-results li.group-result{display:list-item;color:#b2b2b2;font-weight:400;padding:16px 15px 6px;margin-top:9px;cursor:default}
.chosen-container .chosen-results li.group-result:not(:first-child){border-top:1px solid #eee}
.chosen-container .chosen-results li.group-option{padding-left:30px}
.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}
.chosen-container-single .chosen-single{position:relative;display:block;overflow:visible;height:34px;padding:6px 0;border:0;border-bottom:1px solid #e0e0e0;
  border-radius:0;background:transparent;color:#5e5e5e;text-decoration:none;white-space:nowrap;line-height:22px;cursor:pointer;text-transform:uppercase}
.chosen-container-single .chosen-single:after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:2px;background:#2196f3;transition:width .3s}
.chosen-container.chosen-with-drop .chosen-single:after{width:100%}
.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}
.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}
.chosen-container-single .chosen-default{color:#999}
.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}
.chosen-container-single .chosen-single div b{position:absolute;top:15px;right:6px;width:0;height:0;border:5px solid transparent;border-top-color:#757575;border-bottom:0}
.chosen-container-single .chosen-single abbr{position:absolute;top:9px;right:26px;display:block;width:14px;height:14px;line-height:12px;text-align:center;font-size:14px;color:#9c9c9c;cursor:pointer}
.chosen-container-single .chosen-single abbr:before{content:"\00d7"}
.chosen-container-single .chosen-single abbr:hover{color:#333}
.chosen-container-single .chosen-search{position:relative;margin:0;padding:5px 5px 5px 40px;background:#f7f7f7;white-space:nowrap}
.chosen-container-single .chosen-search .vm-chosen-lupa{position:absolute;left:0;top:0;width:40px;height:100%;display:flex;align-items:center;justify-content:center;font-size:18px;color:#5e5e5e}
.chosen-container-single .chosen-search input[type=text]{width:100%;height:35px;margin:0;padding:0 4px;border:0;outline:0;background-color:transparent;line-height:1.42857143;font-size:13px}
.chosen-container-multi .chosen-choices{position:relative;display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;min-height:34px;border:0;border-bottom:1px solid #e0e0e0;
  background:transparent;cursor:text;list-style:none}
.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:4px 4px 0 0;padding:5px 23px 5px 8px;border:1px solid #eaeaea;border-radius:2px;
  background:#eaeaea;color:#333;line-height:13px;cursor:default;max-width:100%}
.chosen-container-multi .chosen-choices li.search-choice span{word-wrap:break-word}
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:3px;right:5px;display:block;width:14px;height:14px;
  line-height:14px;text-align:center;font-size:13px;color:#9c9c9c;cursor:pointer;text-decoration:none}
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:before{content:"\00d7"}
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{color:#333}
.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4;border-color:#d4d4d4}
.chosen-container-multi .chosen-choices li.search-field{flex:1;min-width:60px;margin:0;padding:0;white-space:nowrap}
.chosen-container-multi .chosen-choices li.search-field input[type=text]{width:100%;height:31px;margin:0;padding:0;border:0;outline:0;background:transparent;box-shadow:none;font-size:13px;color:#5e5e5e}
.chosen-container-multi .chosen-choices li.search-field input[type=text]::placeholder{color:#999}
.chosen-container-multi .chosen-choices:after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:2px;background:#2196f3;transition:width .3s}
.chosen-container-multi.chosen-with-drop .chosen-choices:after,.chosen-container-multi.chosen-container-active .chosen-choices:after{width:100%}
.chosen-container.chosen-disabled{opacity:.5;cursor:default}
.chosen-container.chosen-disabled *{cursor:default}

/* ---------- 4. Menu lateral na árvore do Vissmed (.main-menu / .sub-menu) ---------- */
.vm-menu{list-style:none;padding:0;margin:8px 0 0}
.vm-menu li{list-style:none}
.vm-menu a{text-decoration:none}
.vm-menu>li>a.ditem,.vm-menu>li>a.vm-sub-a{position:relative;display:block;width:100%;margin:0;border-radius:0;padding:14px 20px 14px 52px;
  color:#333;font-weight:500;font-size:13px;background:transparent;box-shadow:none;cursor:pointer;gap:0}
.vm-menu>li>a>i{position:absolute;left:16px;top:0;width:25px;text-align:center;padding:13px 0;font-size:20px;color:inherit}
.vm-menu>li>a.ditem:hover,.vm-menu>li>a.vm-sub-a:hover{color:#162d4f;background-color:#f1ecaf}
.vm-menu>li>a.ditem.on{color:#162d4f;background-color:#c6eaf3;font-weight:500;box-shadow:none}
.vm-menu>li>a.ditem.on i{color:inherit}
.vm-menu .vm-sub>a.vm-sub-a:before{content:"+";position:absolute;right:17px;top:12px;font-size:17px;color:#575757;font-weight:400}
.vm-menu .vm-sub.toggled>a.vm-sub-a:before{content:"\2212"}
.vm-menu .vm-sub>ul{display:none;list-style:none;padding:0;margin:0}
.vm-menu .vm-sub.toggled>ul{display:block}
.vm-menu .vm-sub ul>li>a.ditem{display:block;margin:0;border-radius:0;padding:8px 20px 8px 50px;color:#7f7f7f;font-weight:500;font-size:13px;background:transparent;box-shadow:none}
.vm-menu .vm-sub ul>li:first-child>a.ditem{padding-top:14px}
.vm-menu .vm-sub ul>li:last-child>a.ditem{padding-bottom:16px}
.vm-menu .vm-sub ul>li>a.ditem i{position:static;display:inline-block;width:20px;margin-right:4px;padding:0;font-size:15px;color:inherit;text-align:center}
.vm-menu .vm-sub ul>li>a.ditem:hover,.vm-menu .vm-sub ul>li>a.ditem.on{color:#000;background:transparent;font-weight:500;box-shadow:none}
.vm-menu .vm-sub ul>li>a.ditem.on{font-weight:700}

/* ---------- 6. Barra do topo (template/header.html; .header-inner/.top-menu do app.min.1.css) ---------- */
/* o topo antigo do shell fica no DOM (handlers vivos), só escondido */
.vm-header.vm-header-vissmed{background:#5fb3c7;box-shadow:0 1px 4px rgba(0,0,0,.3);padding:0}
.vm-header.vm-header-vissmed>:not(.vm-topo-wrap){display:none!important}
.vm-topo-wrap{flex:1;min-width:0;height:100%;position:relative}
/* #header{zoom:.8} do Vissmed */
.vm-topo{zoom:.8;height:125%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px 0 0;
  font-family:roboto,Roboto,Arial,sans-serif;user-select:none}
.vm-topo-esq{display:flex;align-items:center;min-width:0}
.vm-topo-trigger{width:65px;display:flex;justify-content:center}
.vm-topo-trigger button{display:flex!important;width:35px;height:35px;border-radius:50%;border:0;background:rgba(255,255,255,.22);color:#fff;
  align-items:center;justify-content:center;font-size:22px;cursor:pointer}
.vm-topo-logo{width:95px}
.vm-topo-logo img,.vm-topo-logo .vm-logo{display:block!important;width:100%;height:auto;margin-top:2%}
.vm-topo-dir{list-style:none;margin:0;padding:0;display:flex;align-items:flex-start;flex-wrap:nowrap;min-width:0}
.vm-topo-dir>li{position:relative;display:inline-block;margin:0 1px;vertical-align:top;min-width:50px}
.vm-topo-dir>li[hidden]{display:none!important}
.vm-topo-dir>li:before{content:"";position:absolute;inset:0;background-color:rgba(0,0,0,.12);border-radius:2px;transform:scale3d(0,0,0);opacity:0;
  transition:all 250ms;z-index:0}
.vm-topo-dir>li:hover:before,.vm-topo-dir>li.open:before{transform:scale3d(1,1,1);opacity:1}
.vm-topo-dir>li>a{position:relative;z-index:1;display:block;color:#fff;text-align:center;text-decoration:none;cursor:pointer}
.vm-topo-dir>li>a>.tm-icon{display:inline-block;min-width:24px;height:36px;font-size:24px;line-height:36px;font-style:normal}
.vm-topo-dir .tm-label{display:block;line-height:35px;white-space:nowrap;padding:0 10px;font-size:14px;text-transform:uppercase;font-style:normal}
.vm-topo-dir .tm-label.tm-pequeno{font-size:11px}
.vm-topo-dir .tm-label i{display:inline-block;min-width:15px;font-size:15px;vertical-align:-2px;font-style:normal}
.vm-topo-dir a.vm-t-largo{width:145px;overflow:hidden;text-overflow:ellipsis}
.vm-topo-dir .vm-t-usuario a.vm-t-largo{width:140px}
.vm-topo-dir a.vm-t-largo .tm-label{overflow:hidden;text-overflow:ellipsis}
.vm-topo-dir .vm-t-ead{color:#166152}
.vm-topo-dir .vm-t-ead b{font-weight:700}
.vm-topo-dir .tmn-counts{position:absolute;font-style:normal;background:#f44336;padding:1px 5px;border-radius:2px;right:7px;top:-3px;font-size:10px;line-height:15px}
/* dropdowns (.dropdown-menu .pull-right, top 55px, right 14px) */
.vm-t-dd{display:none;position:absolute;top:55px;right:14px;z-index:1050;min-width:280px;max-height:79vh;overflow-y:auto;margin:0;padding:5px 0;list-style:none;
  background:#fff;border-radius:2px;box-shadow:0 6px 12px rgba(0,0,0,.175);text-align:left;font-size:13px;color:#333}
.vm-topo-dir>li.open>.vm-t-dd{display:block}
.vm-t-dd ul.main-menu{list-style:none;margin:0;padding:0}
.vm-t-dd label{display:block;padding:12px 17px 4px;font-size:11px;font-weight:700;color:#959595;text-transform:uppercase}
.vm-t-dd li{list-style:none}
.vm-t-dd li>a{display:flex;align-items:center;gap:6px;padding:8px 17px;color:#333;text-decoration:none;white-space:nowrap;cursor:pointer}
.vm-t-dd li>a:hover,.vm-t-dd li>a:focus-visible,.vm-t-dd li>a.ativo{background-color:rgba(0,0,0,.075)}
.vm-t-dd li>a>i{width:28px;font-size:18px;line-height:100%;text-align:center}
.vm-t-dd.vm-t-dd-lg{width:300px;padding:0}
.vm-t-dd .lv-header{text-align:center;padding:15px 10px 13px;line-height:100%;text-transform:uppercase;border-bottom:1px solid #f0f0f0;font-weight:500;color:#4c4c4c;margin-bottom:10px}
.vm-t-dd .lv-footer{display:block;text-align:center;padding:7px 10px 8px;line-height:100%;font-size:14px;color:#828282;border-bottom:1px solid #f0f0f0;text-decoration:none}
.vm-t-dd .lv-footer:hover{color:#050505}
.vm-t-dd .lv-body{min-height:120px}
.vm-t-indisp{padding:20px;text-align:center;color:#a9a9a9;font-size:12px}
/* parâmetro mensagemTopInadimplencia (header.html:25) */
.vm-t-inadimplencia{position:absolute;top:80px;right:10px;width:19%;z-index:30;background:rgb(248,129,129);padding:15px 10px 5px}
.vm-t-inadimplencia p{margin:0 0 10px;color:#fff;font-weight:700;font-size:14px}
