html {
	position: relative;
	min-height: 100%;
}
body{
	background-image: url(../../img/1.jpg);
	background-size: 100% 100%;
	padding-top: 0px;
	margin-bottom: 250px;
}
/*
//------Cambiar color del navbar------//
nav.navbar {
    background-color: #CC1414;
    color: white;
}
.navbar-default .navbar-nav > .active > a, 
 .navbar-default .navbar-nav > .active > a:hover, 
 .navbar-default .navbar-nav > .active > a:focus {
      color: white;
      background: #d65c14;
 }*/

.content-section{
	width: 100%;
	padding-top: 10%;
	padding-bottom: 10%;
}
.navbar-nav{
	margin: 0px;
}
.navbar-right{
	margin-right: 2pt;
	margin-left: 2pt;
}
#c1{
	background-image: url(../../img/1.jpg);
	background-size: 100% 100%;
	border: 0;
	box-shadow: 1pt 2pt #888888;
}
.navbar-toggle{
	box-shadow: 1pt 2pt #888888;
}
img{
	width: 100%;
}
h2{
	color: black;
}
p{
	color: black;
	font-size: 100%;
	font-family: Eras Medium ITC, sans-serif, arial;
	text-align: justify;
	line-height: 1.5;
	word-spacing: 1pt;
	z-index: -1;
}
.p{
	color: black;
	font-size: 100%;
	font-family: Eras Medium ITC, sans-serif, arial;
	text-align: justify;
	line-height: 1.5;
	word-spacing: 1pt;
	z-index: -1;
}
.h3-cap{
	background-color: #000080;
	color: white;
}
.list-group-item{
	color: black;
	text-align: left;
}
.cap-img{
	background-color: purple;
	opacity: 0.5;
	text-shadow: -1px -1px 5px black;
	opacity: 1.9;
	color: white;
}
.panel-heading{
	font-size: 150%;
}
.footer{
	position: absolute;
	/*bottom: 0;*/
	width: 100%;
	height: 260pt;
	background-image: url(../../img/footer.jpg);
	background-size: 100% 100%;
	clear: both;
}
.foot{
	padding-top: 10pt;
	padding-bottom: 10pt;
}
.tith4{
	font-size: auto;
	color: white;
	text-align: center;
	font-family: sans-serif;
}
.text-muted{
	font-size: auto;
	color: white;
	text-align: center;
	font-family: sans-serif;
	font-size: 100%;
}
#select{
	opacity: 0.6;
}
.panel-fondo{
	background-color: #EFFBFB;
}
.secon{
	background-color: rgba(255,255,255,08);
    background: rgba(255, 255, 255, 0.8);
    color: rgba(255, 255, 255, 0.8);
	opacity: 0.8;
}
.scroll{
	color: white;
	text-shadow: -1px 0 white, 0 1px white, 1px 0 white, 0 -1px white;
}
.nav-stacked{
	float: left;
}
.tab-l{
    overflow-y: auto;
}
.colorfilas tr{
	color: #000000;
	background-color: #EC7063;
}
tr > td{
	vertical-align: middle !important;
}
.circulo {
    width: 30px;
    height: 30px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #7da6f9;
}
.a{
	color: white;
}
.checkbox{
	margin-top: 0px;
	margin-bottom: 0px;
}
.scrollspy-example{
    position: relative;
    height: 150px;
    margin-top: 10px;
    overflow: auto;
}
.scrollspy-example1{
    position: relative;
    height: 575px;
    /*margin-top: 10px;*/
    overflow: auto;
}
.scrollspy-example3{
    position: relative;
    height: 275pt;
    margin-top: 10px;
    overflow: auto;
}
.scrollspy-example4{
    position: relative;
    height: 300pt;
    margin-top: 10px;
    overflow: auto;
}
.lineatransparente{
	color: white;
	opacity: 0;
}
#titulo{
	text-align: center;
	color: black;
    text-shadow: 1px 1px 1px black;
    font-size: 14pt;
}
#btnvolver{
	background-color: #58D3F7;
	color: white;
	font-size: 10pt;
}
.mds{
	padding-left: 60pt;
}

.affix {
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 9999 !important;
	/*background-color: #A9CCE3;*/
}

.frt{
	font-size: 14pt;
}

.conft{
	/*height: 25pt;*/
}
#rojo{
	background-color: #fa7c7c !important;
}
#verde{
	background-color: #5cb85c !important;
}
#cv{
	width: 25px;
    height: 25px;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #5cb85c;
    border-style: solid;
    border-color: black;
    border-width: 2px;
}
#calendare th{
	box-shadow: 2pt 4pt #888888;
	background-color: #46b8da !important;
	color: white !important;
	border-radius: 7pt !important;
}
.calendare tbody > tr > td{
	box-shadow: 2pt 4pt #888888;
	background-color: #D3D3D3 !important;
	border-radius: 7pt !important;
}
.calendare tbody > tr > td:nth-child(1){
	box-shadow: 2pt 4pt #888888;
	background-color: #46b8da !important;
	color: white !important;
}
.btn_odd{
	background-color: #f2f2f2;
	/*background-color: #f3a251 !important;*/
}
.btn_even{
	background-color:#fbfbfb;
	/*background-color: #62a2d7 !important;*/
}

.nav-tabs > li.active.acvm > a, .nav-tabs > li.active.acvm > a:focus{
	background-color: #000080 !important;
	border-color: #000080 !important;
}
.nav-tabs > select.acvm, .nav-tabs > select.acvm:focus{
	border-radius: 10pt;
	border-width: 1pt;
	border-color: purple;
	background-color: white;
	color: #000080;
}
/*.nav-tabs > li.active > a > select.acvm, .nav-tabs > li.active > a > select.acvm:focus{
	border-radius: 10pt;
	border-width: 1pt;
	border-color: purple;
	background-color: white;
	color: #000080;
}*/
#udln{
	color: purple;
}

.rotate90 {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}
.rotate180 {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.rotate270 {
    -webkit-transform: rotate(270deg);
    -moz-transform: rotate(270deg);
    -o-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
}

.t_def > .table > thead > tr > td, 
.t_def > .table > thead > tr > th{
	white-space: wrap;
}

.t_def > .table > tbody > tr > td, 
.t_def > .table > tbody > tr > th{
	white-space: normal;
}

.nav-tabs.nav-justified > li > a, .nav-tabs.nav-justified > li > a:focus, .nav-tabs.nav-justified > li > a:hover{
	background-image: url("../../img/fnav.jpg");
	background-size: 100% 100% !important;
	border: 0;
	box-shadow: 1pt 3pt #888888;
	border-radius: 10pt;
	font-weight: bold;
}
.nav-tabs.nav-justified > .active > a, .nav-tabs.nav-justified > .active > a:focus, .nav-tabs.nav-justified > .active > a:hover{
	background-image: url("../../img/fnav.jpg");
	background-size: 150% !important;
	font-weight: bold;
}

select{
	cursor: pointer !important;
}

input{
	cursor: pointer !important;
}

textarea{
	cursor: pointer;
}

#imgpacrot{
	cursor: pointer;
}

.picker__button--clear{
	display: none !important;
}
.picker__list{
	padding: 0 !important;
}
/*.btn_stilo {
  -webkit-border-radius: 40;
  -moz-border-radius: 40;
  border-radius: 40px;
  -webkit-box-shadow: 0px 8px 13px #218a21;
  -moz-box-shadow: 0px 8px 13px #218a21;
  box-shadow: 0px 8px 13px #218a21;
  font-family: Arial;
  color: #ffffff;
  font-size: 14px;
  background: #12ba1b;
  padding: 10px 20px 10px 20px;
  border: solid #12ba1b 1px;
  text-decoration: none;
}
.btn_stilo:hover {
  background: #12ba1b;
  text-decoration: none;
}

.btn_stilo:active{
	background-color: #3e8e41;
	box-shadow: 0 5px #666;
	transform: translateY(4px);
}*/

#placeholder .button {
	position: absolute;
	cursor: pointer;
}

#placeholder div.button {
	font-size: smaller;
	color: #999;
	background-color: #eee;
	padding: 2px;
}

/* =====================================================================
   SICEC — capa visual moderna (pediatría)
   Todo lo de arriba es el estilo original y se conserva.
   Este bloque va al final y solo cambia el aspecto.
   Para volver atrás: borrar desde esta línea hasta el final.
   ===================================================================== */

:root {
	--mp-verde:        #147a72;
	--mp-verde-hondo:  #0e5b55;
	--mp-verde-suave:  #e6f4f2;
	--mp-verde-borde:  #bfe0dc;
	--mp-durazno:      #c2661d;
	--mp-durazno-suave:#fdf0e6;
	--mp-texto:        #1b2b2a;
	--mp-tenue:        #5c6f6d;
	--mp-borde:        #dde5e4;
	--mp-fondo:        #f3f7f6;
	--mp-blanco:       #ffffff;
	--mp-exito:        #16794f;
	--mp-exito-suave:  #e7f5ee;
	--mp-alerta:       #b23b17;
	--mp-alerta-suave: #fdeee7;
	--mp-alerta-hondo: #7a2710;
	--mp-radio:        10px;
}

/* --------------------------------------------- fondo y tipografía -- */

body {
	background-image: none !important;
	background-color: var(--mp-fondo) !important;
	color: var(--mp-texto);
	font-family: -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 15px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

p, .p {
	color: var(--mp-texto);
	font-family: -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 15px;
	text-align: left;
	word-spacing: normal;
}

h1, h2, h3, h4, h5 {
	color: var(--mp-texto);
	font-weight: 600;
	letter-spacing: -0.01em;
}
h1 { font-size: 25px; } h2 { font-size: 21px; color: var(--mp-texto); }
h3 { font-size: 18px; } h4 { font-size: 16px; }

a { color: var(--mp-verde); }
a:hover, a:focus { color: var(--mp-verde-hondo); text-decoration: none; }
hr { border-top: 1px solid var(--mp-borde); }

/* ------------------------------------------------- barra superior -- */

.navbar, nav.navbar, #c1 {
	background-image: none !important;
	background-color: var(--mp-blanco) !important;
	border: none;
	border-bottom: 1px solid var(--mp-borde);
	border-radius: 0;
	box-shadow: none !important;
	margin-bottom: 20px;
	min-height: 56px;
}

.navbar-default .navbar-brand { color: var(--mp-texto); font-weight: 600; font-size: 17px; }

.navbar-default .navbar-nav > li > a {
	color: var(--mp-tenue);
	font-size: 14px;
	padding: 18px 15px;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
	background-color: var(--mp-verde-suave);
	color: var(--mp-verde);
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus,
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
	background-color: var(--mp-verde-suave) !important;
	color: var(--mp-verde) !important;
	box-shadow: inset 0 -2px 0 var(--mp-verde);
}
.navbar-toggle { box-shadow: none !important; border-color: var(--mp-borde); }

.dropdown-menu {
	border: 1px solid var(--mp-borde);
	border-radius: var(--mp-radio);
	box-shadow: 0 6px 20px rgba(20,45,42,.10);
	padding: 6px;
}
.dropdown-menu > li > a { border-radius: 6px; color: var(--mp-texto); padding: 8px 12px; }
.dropdown-menu > li > a:hover { background: var(--mp-verde-suave); color: var(--mp-verde); }

/* --------------------------------------------------- pestañas ------ */

.nav-tabs { border-bottom: 1px solid var(--mp-borde); }

.nav-tabs.nav-justified > li > a,
.nav-tabs.nav-justified > li > a:focus,
.nav-tabs.nav-justified > li > a:hover {
	background-image: none !important;
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--mp-tenue);
	font-size: 15px;
	font-weight: 500 !important;
	padding: 13px 10px;
}

.nav-tabs.nav-justified > li > a:hover {
	background-color: var(--mp-verde-suave) !important;
	color: var(--mp-verde);
}

.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:focus,
.nav-tabs.nav-justified > .active > a:hover {
	background-image: none !important;
	background-color: transparent !important;
	box-shadow: inset 0 -3px 0 var(--mp-verde) !important;
	color: var(--mp-verde) !important;
	font-weight: 600 !important;
}

.nav-tabs > li > a {
	border: none; border-radius: 0;
	color: var(--mp-tenue); font-weight: 500; padding: 11px 16px;
}
.nav-tabs > li > a:hover { background: var(--mp-verde-suave); border: none; color: var(--mp-verde); }
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
	background: transparent; border: none;
	box-shadow: inset 0 -2px 0 var(--mp-verde); color: var(--mp-verde);
}
.nav-tabs > li.active.acvm > a, .nav-tabs > li.active.acvm > a:focus {
	background-color: var(--mp-verde) !important;
	border-color: var(--mp-verde) !important;
	color: #fff !important;
}
.nav-tabs > select.acvm, .nav-tabs > select.acvm:focus {
	border-color: var(--mp-verde-borde); border-radius: 8px; color: var(--mp-verde-hondo);
}
#udln { color: var(--mp-verde); }

/* Botón "Mis consultas" dentro de la barra de pestañas fija: siempre visible, incluso con scroll */
.tab-volver{ float: none !important; }
.nav-tabs.nav-justified > .tab-volver{ max-width: 150px; flex: 0 0 auto; }
.nav-tabs.nav-justified > .tab-volver > a{
	background: var(--mp-verde) !important;
	color: #fff !important;
	font-weight: 600 !important;
	border-radius: var(--mp-radio) 0 0 0 !important;
	box-shadow: none !important;
}
.nav-tabs.nav-justified > .tab-volver > a:hover,
.nav-tabs.nav-justified > .tab-volver > a:focus{
	background: var(--mp-verde-hondo) !important;
	color: #fff !important;
}
@media (max-width: 640px){
	.tab-volver-txt{ display: none; }
	.nav-tabs.nav-justified > .tab-volver{ max-width: 46px; }
}

/* ------------------------------------- sub-pestañas de la consulta, estilo carpeta ------ */

.nav-tabs.nav-horizontal{
	display: flex;
	flex-wrap: wrap;
	float: none;
	border-bottom: 2px solid var(--mp-verde-borde);
	gap: 4px;
	margin-bottom: 0;
}
.nav-tabs.nav-horizontal > li{ float: none; margin-bottom: -2px; }
.nav-tabs.nav-horizontal > li > a{
	background: var(--mp-fondo);
	border: 1px solid var(--mp-borde) !important;
	border-bottom: none !important;
	border-radius: 8px 8px 0 0 !important;
	color: var(--mp-tenue) !important;
	font-size: 13px;
	font-weight: 500 !important;
	line-height: 1.25;
	padding: 10px 16px !important;
	text-align: center;
	white-space: normal;
	position: relative;
	box-shadow: none !important;
	transition: background-color .15s ease, color .15s ease;
}
.nav-tabs.nav-horizontal > li > a:hover,
.nav-tabs.nav-horizontal > li > a:focus{
	background: var(--mp-verde-suave) !important;
	color: var(--mp-verde) !important;
	border-color: var(--mp-verde-borde) !important;
}
.nav-tabs.nav-horizontal > li.active > a,
.nav-tabs.nav-horizontal > li.active > a:hover,
.nav-tabs.nav-horizontal > li.active > a:focus{
	background: var(--mp-blanco) !important;
	border-color: var(--mp-verde-borde) !important;
	color: var(--mp-verde-hondo) !important;
	font-weight: 600 !important;
	box-shadow: inset 0 2px 0 var(--mp-verde) !important;
}
/* punto que marca los apartados obligatorios (mismo dato que ya traía el tooltip) */
.nav-tabs.nav-horizontal > li[title="Este apartado es obligatorio"] > a::after{
	content: "";
	position: absolute;
	top: 7px; right: 8px;
	width: 6px; height: 6px;
	border-radius: 50%;
	background: var(--mp-durazno);
}
.nav-tabs.nav-horizontal + .tab-content{
	border: 1px solid var(--mp-verde-borde);
	border-top: none;
	border-radius: 0 0 var(--mp-radio) var(--mp-radio);
	padding: 18px 16px;
	background: var(--mp-blanco);
}
@media (max-width: 700px){
	.nav-tabs.nav-horizontal > li > a{ font-size: 12px; padding: 8px 10px !important; }
}

/* --------------------------------------------------- contenedores -- */

.panel {
	background: var(--mp-blanco);
	border: 1px solid var(--mp-borde);
	border-radius: 12px;
	box-shadow: none;
	margin-bottom: 18px;
}
.panel-heading {
	background-color: var(--mp-blanco) !important;
	background-image: none !important;
	border-bottom: 1px solid var(--mp-borde);
	color: var(--mp-texto) !important;
	font-size: 15px !important;
	font-weight: 600;
	padding: 13px 18px;
}
.panel-body { padding: 16px 18px; }
.panel-default, .panel-primary, .panel-info, .panel-success, .panel-warning { border-color: var(--mp-borde); }
.panel-fondo { background-color: var(--mp-verde-suave); }

/* franja de color a la izquierda para distinguir el tipo de panel */
.panel-success > .panel-heading { box-shadow: inset 3px 0 0 var(--mp-exito); }
.panel-info    > .panel-heading { box-shadow: inset 3px 0 0 var(--mp-verde); }
.panel-warning > .panel-heading { box-shadow: inset 3px 0 0 var(--mp-durazno); }
.panel-danger  > .panel-heading { box-shadow: inset 3px 0 0 var(--mp-alerta); }

.well {
	background: var(--mp-blanco); border: 1px solid var(--mp-borde);
	border-radius: 12px; box-shadow: none; padding: 16px;
}
.thumbnail, .img-thumbnail { border: 1px solid var(--mp-borde); border-radius: var(--mp-radio); box-shadow: none; }

/* -------------------------------- bloque de somatometría y paciente */
/* Estaba montado sobre alert-danger, que en Bootstrap significa error.
   Se convierte en tarjeta neutra y la franja del paciente en verde. */

.alert {
	border: 1px solid transparent; border-radius: 12px;
	font-size: 14.5px; padding: 14px 16px;
}
.alert-danger {
	background-color: var(--mp-blanco);
	border-color: var(--mp-borde);
	color: var(--mp-texto);
}
.alert-danger h3, .alert-danger h4 { color: var(--mp-texto); margin-top: 4px; }
.alert-danger .bg-warning,
.alert-danger .bg-danger,
.alert-danger .bg-info {
	background-color: var(--mp-verde-suave) !important;
	border-radius: 8px;
	color: var(--mp-verde-hondo) !important;
	padding: 9px 14px;
}
.alert-danger .bg-warning a,
.alert-danger .bg-warning u,
.alert-danger .bg-warning b { color: var(--mp-verde-hondo) !important; }

.alert-success { background: var(--mp-exito-suave); border-color: #c3e5d3; color: var(--mp-exito); }
.alert-warning { background: var(--mp-durazno-suave); border-color: #f2d9c3; color: var(--mp-durazno); }
.alert-info    { background: var(--mp-verde-suave); border-color: var(--mp-verde-borde); color: var(--mp-verde-hondo); }

/* fotografía del paciente: la columna ya no existe en la base */
img[alt="Foto Paciente"], img[alt="Foto"] {
	background: var(--mp-verde-suave);
	border: 1px dashed var(--mp-verde-borde);
	border-radius: 12px;
	color: var(--mp-verde-hondo);
	font-size: 12px;
	min-height: 90px;
	object-fit: cover;
	padding: 8px;
	text-align: center;
}

/* ------------------------------------------------------- botones --- */

.btn {
	border-radius: var(--mp-radio); border-width: 1px;
	font-size: 14px; font-weight: 500; padding: 9px 16px;
	transition: background .15s, border-color .15s, color .15s;
}
.btn:active, .btn.active { box-shadow: none; transform: translateY(1px); }
.btn:focus, .btn:active:focus { outline: none; box-shadow: 0 0 0 3px rgba(20,122,114,.22); }

.btn-primary, .btn-success {
	background-color: var(--mp-verde); border-color: var(--mp-verde); color: #fff;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.btn-success:hover, .btn-success:focus, .btn-success:active {
	background-color: var(--mp-verde-hondo); border-color: var(--mp-verde-hondo);
}

.btn-default {
	background-color: var(--mp-blanco); border-color: #c6d3d1; color: var(--mp-texto);
}
.btn-default:hover, .btn-default:focus { background-color: var(--mp-fondo); border-color: #a9bab8; }

.btn-info { background-color: #2f7f96; border-color: #2f7f96; }
.btn-info:hover, .btn-info:focus { background-color: #256677; border-color: #256677; }

.btn-warning { background-color: var(--mp-durazno); border-color: var(--mp-durazno); }
.btn-warning:hover, .btn-warning:focus { background-color: #a55416; border-color: #a55416; }

.btn-danger { background-color: var(--mp-alerta); border-color: var(--mp-alerta); }
.btn-danger:hover, .btn-danger:focus { background-color: #922f12; border-color: #922f12; }

.btn-xs { padding: 5px 10px; font-size: 12.5px; }
.btn-sm { padding: 7px 12px; font-size: 13.5px; }
.btn-lg { padding: 12px 24px; font-size: 16px; }

#btnvolver {
	background-color: var(--mp-blanco) !important;
	border: 1px solid var(--mp-verde-borde);
	color: var(--mp-verde) !important;
	font-size: 13.5px !important;
}
#btnvolver:hover { background-color: var(--mp-verde-suave) !important; }

/* ---------------------------------------------------- formularios -- */

label { color: var(--mp-tenue); font-size: 13.5px; font-weight: 500; margin-bottom: 5px; }

.form-control {
	background-color: var(--mp-blanco);
	border: 1px solid #c6d3d1;
	border-radius: var(--mp-radio);
	box-shadow: none;
	color: var(--mp-texto);
	font-size: 14.5px;
	height: 40px;
	padding: 8px 12px;
}
textarea.form-control { height: auto; line-height: 1.6; }
.form-control:focus {
	border-color: var(--mp-verde);
	box-shadow: 0 0 0 3px rgba(20,122,114,.15);
	outline: none;
}
.form-control::placeholder { color: #93a5a3; }
.form-control[disabled], .form-control[readonly] { background-color: #eef3f2; color: var(--mp-tenue); }
.input-group-addon { background-color: var(--mp-fondo); border-color: #c6d3d1; color: var(--mp-tenue); }
.form-group { margin-bottom: 15px; }

input, select, textarea { cursor: auto !important; }
select, input[type="checkbox"], input[type="radio"] { cursor: pointer !important; }

/* --------------------------------------------------------- tablas -- */

.table { background-color: var(--mp-blanco); font-size: 14px; margin-bottom: 0; }

.table > thead > tr > th {
	background-color: #eaf1f0;
	border-bottom: 1px solid var(--mp-borde) !important;
	color: var(--mp-tenue);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .03em;
	padding: 11px 14px;
	text-transform: uppercase;
	vertical-align: middle;
}
.table > tbody > tr > td { border-top: 1px solid #edf2f1; padding: 11px 14px; }
.table-striped > tbody > tr:nth-of-type(odd) { background-color: #fafcfb; }
.table-hover > tbody > tr:hover { background-color: var(--mp-verde-suave); }
.table-bordered, .table-bordered > tbody > tr > td, .table-bordered > thead > tr > th { border-color: #edf2f1; }

.table-responsive {
	background-color: var(--mp-blanco);
	border: 1px solid var(--mp-borde);
	border-radius: 12px;
	overflow-x: auto;
}
.table td center { display: block; }

.colorfilas tr { background-color: var(--mp-alerta-suave); color: var(--mp-alerta); }
#rojo { background-color: var(--mp-alerta-suave) !important; color: var(--mp-alerta) !important; }
#verde { background-color: var(--mp-exito-suave) !important; color: var(--mp-exito) !important; }
#cv { background: var(--mp-exito); border-color: var(--mp-exito); border-width: 1px; }
.circulo { background: var(--mp-verde-suave); }

#calendare th {
	background-color: var(--mp-verde) !important;
	border-radius: 8px !important;
	box-shadow: none !important;
}
.calendare tbody > tr > td {
	background-color: #eef3f2 !important;
	border-radius: 8px !important;
	box-shadow: none !important;
}
.calendare tbody > tr > td:nth-child(1) {
	background-color: var(--mp-verde) !important;
	box-shadow: none !important;
}

.btn_odd  { background-color: #f4f8f7; }
.btn_even { background-color: var(--mp-blanco); }

.celda-paciente { align-items: center; display: flex; gap: 10px; text-align: left; }

/* fila de "Mis Consultas" cuando ya se inició/registró la consulta del día */
.fila-iniciada > td{ background-color: var(--mp-exito-suave) !important; box-shadow: inset 3px 0 0 var(--mp-exito); }

.avatar-ini {
	align-items: center; background: var(--mp-verde-suave); border-radius: 50%;
	color: var(--mp-verde-hondo); display: inline-flex; flex: 0 0 34px;
	font-size: 12.5px; font-weight: 600; height: 34px; justify-content: center; width: 34px;
}

/* ---------------------------------------------- etiquetas y avisos - */

.label, .badge { border-radius: 6px; font-size: 12px; font-weight: 500; padding: 4px 9px; }
.label-success { background-color: var(--mp-exito-suave); color: var(--mp-exito); }
.label-danger  { background-color: var(--mp-alerta-suave); color: var(--mp-alerta); }
.label-warning { background-color: var(--mp-durazno-suave); color: var(--mp-durazno); }
.label-info, .label-primary { background-color: var(--mp-verde-suave); color: var(--mp-verde-hondo); }
.badge { background-color: var(--mp-verde); }

.h3-cap { background-color: var(--mp-verde); color: #fff; }
#titulo { color: var(--mp-texto); text-shadow: none; font-size: 16px; font-weight: 600; }
.list-group-item { border-color: var(--mp-borde); color: var(--mp-texto); }
.list-group-item.active, .list-group-item.active:hover {
	background-color: var(--mp-verde); border-color: var(--mp-verde);
}

/* -------------------------------------------------------- ventanas - */

.modal-content { border: none; border-radius: 12px; box-shadow: 0 12px 40px rgba(20,45,42,.18); }
.modal-header { border-bottom: 1px solid var(--mp-borde); padding: 16px 20px; }
.modal-header .modal-title { font-size: 17px; font-weight: 600; }
.modal-body { padding: 20px; }
.modal-footer { background-color: #f7faf9; border-top: 1px solid var(--mp-borde); padding: 14px 20px; }

.pagination > li > a { border-color: var(--mp-borde); color: var(--mp-verde); }
.pagination > .active > a, .pagination > .active > a:hover {
	background-color: var(--mp-verde); border-color: var(--mp-verde);
}

/* -------------------------------------------------------- celular -- */

@media (max-width: 767px) {
	.container, .container-fluid { padding-left: 12px; padding-right: 12px; }
	.panel { border-radius: 10px; }
	.panel-body { padding: 14px; }
	.btn { padding: 12px 18px; font-size: 15px; }
	.btn-xs { padding: 8px 14px; font-size: 13.5px; }
	.form-control { font-size: 16px; height: 44px; }
	.table > thead > tr > th, .table > tbody > tr > td { padding: 9px 10px; }
	.table-responsive { -webkit-overflow-scrolling: touch; border-radius: 10px; }
	.nav-tabs.nav-justified > li > a { font-size: 13.5px; padding: 11px 6px; }
	.footer { display: none; }
	body { margin-bottom: 30px; }
}

/* ------------------------------------------------------ impresión -- */

@media print {
	.navbar, .btn, .footer, .no-imprimir { display: none !important; }
	body { background: #fff !important; font-size: 12pt; margin-bottom: 0; }
	.panel, .table-responsive, .alert { border: none; }
}

/* franja del paciente: el color naranja viene en un style= dentro del HTML,
   por eso hace falta apuntarle directo */
.alert .row[style*="ec971f"] {
	background-color: var(--mp-verde-suave) !important;
	border-radius: 8px;
	color: var(--mp-verde-hondo) !important;
	margin-left: 0; margin-right: 0;
	padding: 9px 4px;
}
.alert .row[style*="ec971f"] u { text-decoration: none; }
.alert .row[style*="ec971f"] strong { color: var(--mp-verde-hondo); }

/* la columna de la foto ya no existe: la fila del expediente se reacomoda */
.col-sm-4 > .row > .col-sm-12:empty { display: none; }

/* iniciales del médico donde antes iba su fotografía */
.avatar-med {
	align-items: center; background: var(--mp-verde-suave); border-radius: 50%;
	color: var(--mp-verde-hondo); display: inline-flex; font-size: 22px;
	font-weight: 600; height: 62px; justify-content: center; width: 62px;
}
.nombre-med { color: var(--mp-tenue); font-size: 13px; margin-top: 6px; }
.acvm .avatar-med { height: 46px; width: 46px; font-size: 17px; }

/* ------------------------------------------------------- alergias -- */

.alergia-si {
	background: var(--mp-alerta-suave);
	border-radius: 6px;
	color: var(--mp-alerta);
	font-weight: 600;
	padding: 3px 10px;
}
.alergia-no { color: var(--mp-tenue); }
.alergia-nd { color: #9aa8a6; font-style: italic; }

.punto-alergia {
	color: var(--mp-alerta);
	font-size: 15px;
	line-height: 1;
	margin-left: 6px;
}

.aviso-alergia {
	background: var(--mp-alerta-suave);
	border: 1px solid #f0c4bb;
	border-left: 4px solid var(--mp-alerta);
	border-radius: 8px;
	color: var(--mp-alerta);
	font-size: 13.5px;
	margin-top: 8px;
	padding: 9px 12px;
}

/* ------------------------------------------- tarjeta de crecimiento */

.tarjeta-crecimiento {
	background: var(--mp-blanco); border: 1px solid var(--mp-borde);
	border-radius: 12px; margin-bottom: 14px; padding: 14px 16px; text-align: left;
}
.tc-cabeza { color: var(--mp-texto); font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.tc-sep { border-top: 1px solid var(--mp-borde); margin-top: 14px; padding-top: 12px; }
.tc-fecha { color: var(--mp-tenue); font-size: 12.5px; margin-bottom: 10px; }
.tc-imc { align-items: baseline; display: flex; gap: 7px; margin-bottom: 10px; }
.tc-imc-num { color: var(--mp-verde-hondo); font-size: 27px; font-weight: 600; line-height: 1; }
.tc-imc-lbl { color: var(--mp-tenue); font-size: 12px; }
.tc-fila {
	align-items: baseline; border-top: 1px solid #eef3f2; display: flex;
	flex-wrap: wrap; gap: 6px; font-size: 13px; padding: 7px 0;
}
.tc-ind { color: var(--mp-tenue); flex: 1 1 88px; }
.tc-pc { font-weight: 600; }
.tc-z { color: var(--mp-tenue); font-size: 12px; }
.tc-clas { flex: 1 1 100%; font-size: 12px; }
.tc-fila.nivel-normal .tc-clas { color: var(--mp-exito); }
.tc-fila.nivel-alto  .tc-pc, .tc-fila.nivel-alto  .tc-clas { color: var(--mp-durazno); }
.tc-fila.nivel-bajo  .tc-pc, .tc-fila.nivel-bajo  .tc-clas { color: var(--mp-durazno); }
.tc-fila.nivel-grave .tc-pc, .tc-fila.nivel-grave .tc-clas { color: var(--mp-alerta); font-weight: 600; }
.tc-pie { color: #9aa8a6; font-size: 11.5px; margin-top: 10px; }
.tc-vacio, .tc-nd { color: var(--mp-tenue); font-size: 13px; margin: 0; }
.tc-nd { color: #9aa8a6; font-style: italic; }
.tc-aviso { background: var(--mp-durazno-suave); border-radius: 6px; color: var(--mp-durazno);
            font-size: 12.5px; margin: 0; padding: 7px 10px; }
.tc-alergia {
	background: var(--mp-alerta-suave); border-radius: 6px; color: var(--mp-alerta);
	font-size: 13px; font-weight: 600; margin-bottom: 5px; padding: 6px 10px;
}
.tc-alergia small { font-weight: 400; opacity: .8; }

/* ------------------------------------ alertas: crecimiento y alergias fuera de rango ------ */

.tarjeta-crecimiento--alerta{
	background: var(--mp-alerta) !important;
	border-color: var(--mp-alerta) !important;
}
.tarjeta-crecimiento--alerta .tc-cabeza,
.tarjeta-crecimiento--alerta .tc-fecha,
.tarjeta-crecimiento--alerta .tc-imc-num,
.tarjeta-crecimiento--alerta .tc-imc-lbl,
.tarjeta-crecimiento--alerta .tc-ind,
.tarjeta-crecimiento--alerta .tc-pc,
.tarjeta-crecimiento--alerta .tc-z,
.tarjeta-crecimiento--alerta .tc-clas,
.tarjeta-crecimiento--alerta .tc-pie{
	color: #fff !important;
}
.tarjeta-crecimiento--alerta .tc-sep{ border-top-color: rgba(255,255,255,.35); }
.tarjeta-crecimiento--alerta .tc-fila.nivel-normal .tc-clas{ color: #fff !important; }
.tarjeta-crecimiento--alerta .tc-fila:not(.nivel-normal){ background: rgba(255,255,255,.14); border-radius: 6px; padding: 4px 6px; margin: 2px -6px; }

.tc-alergia-caja{
	background: var(--mp-alerta);
	border-radius: 8px;
	padding: 8px 10px;
}
.tc-alergia-caja .tc-alergia{
	background: transparent !important;
	color: #fff !important;
	font-weight: 600;
}
.tc-alergia-caja .tc-alergia small{ color: rgba(255,255,255,.85); }

/* cuando la tarjeta ya está en alerta (roja), la caja de alergias usa un rojo más oscuro y un borde claro para distinguirse, sin perder el blanco sobre rojo */
.tarjeta-crecimiento--alerta .tc-alergia-caja{
	background: var(--mp-alerta-hondo);
	border: 1px solid rgba(255,255,255,.4);
}

/* ------------------------------------------------------ tarjeta de somatometría ------ */

.tarjeta-somato{
	background: var(--mp-blanco); border: 1px solid var(--mp-borde);
	border-radius: 12px; padding: 16px 18px; text-align: left;
}
.tc-cabeza-somato{ font-size: 17px; text-align: center; margin-bottom: 12px; }
.somato-resumen{
	background: var(--mp-durazno-suave);
	border-radius: 8px;
	color: var(--mp-durazno);
	display: flex;
	flex-wrap: wrap;
	font-size: 13.5px;
	padding: 10px 14px;
	margin: 0 0 4px;
}
.somato-resumen .col-sm-5, .somato-resumen .col-sm-4, .somato-resumen .col-sm-3{ padding: 2px 0; }
.alergia-si{ color: var(--mp-alerta); font-weight: 700; }
.alergia-no{ color: var(--mp-exito); }
.alergia-nd{ color: var(--mp-tenue); font-style: italic; }

/* --------------------------------------- buscador de diagnósticos -- */

.cie-caja { margin-bottom: 10px; position: relative; }

.cie-lista {
	background: var(--mp-blanco);
	border: 1px solid var(--mp-borde);
	border-radius: 10px;
	box-shadow: 0 6px 20px rgba(20,45,42,.12);
	display: none;
	left: 0; right: 0;
	max-height: 300px;
	overflow-y: auto;
	position: absolute;
	top: 44px;
	z-index: 40;
}
.cie-op { border-bottom: 1px solid #eef3f2; cursor: pointer; font-size: 13.5px; padding: 9px 12px; }
.cie-op:last-child { border-bottom: none; }
.cie-op:hover { background: var(--mp-verde-suave); }
.cie-nada { color: var(--mp-tenue); font-size: 13px; padding: 10px 12px; }

.cie-clave {
	background: var(--mp-verde-suave); border-radius: 4px; color: var(--mp-verde-hondo);
	display: inline-block; font-family: monospace; font-size: 12.5px;
	font-weight: 600; margin-right: 6px; padding: 1px 6px;
}
.cie-elegido:not(:empty) {
	background: #f4f8f7; border: 1px solid var(--mp-verde-borde); border-radius: 8px;
	font-size: 13.5px; margin-top: 8px; padding: 8px 12px;
}
.cie-elegido a { color: var(--mp-tenue); font-size: 12px; margin-left: 8px; }

/* --------------------------------------- buscador de pacientes ----- */

.busca-caja { position: relative; }

.busca-lista {
	background: var(--mp-blanco); border: 1px solid var(--mp-borde); border-radius: 10px;
	box-shadow: 0 6px 20px rgba(20,45,42,.14); display: none;
	left: 0; right: 0; max-height: 320px; overflow-y: auto;
	position: absolute; top: 44px; z-index: 1060;
}
.busca-op { border-bottom: 1px solid #eef3f2; cursor: pointer; font-size: 14px; padding: 9px 12px; }
.busca-op:last-child { border-bottom: none; }
.busca-op:hover { background: var(--mp-verde-suave); }
.busca-dato { color: var(--mp-tenue); display: block; font-size: 12px; margin-top: 2px; }
.busca-nada { color: var(--mp-tenue); font-size: 13px; padding: 10px 12px; }
.busca-elegido:not(:empty) {
	background: #f4f8f7; border: 1px solid var(--mp-verde-borde); border-radius: 8px;
	font-size: 14px; margin-top: 8px; padding: 8px 12px;
}
.busca-elegido a { color: var(--mp-tenue); font-size: 12px; margin-left: 8px; }

/* ===== Semáforo de citas (recepción) ===== */
.semaforo{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap}
.semaforo i{width:10px;height:10px;border-radius:50%;display:inline-block}
.semaforo-pendiente{background:#eceff1;color:#455a64}
.semaforo-pendiente i{background:#90a4ae}
.semaforo-en-consulta{background:#e3f2fd;color:#0d47a1}
.semaforo-en-consulta i{background:#1e88e5;animation:semaforo-pulso 1.4s infinite}
.semaforo-consultado{background:#fff3b0;color:#6b5500}
.semaforo-consultado i{background:#f2b705}
.table-striped > tbody > tr.fila-consultado > td,
.table > tbody > tr.fila-consultado > td{background-color:#fff8cc !important}
.table-striped > tbody > tr.fila-en-consulta > td{background-color:#eef6fd !important}
@keyframes semaforo-pulso{0%,100%{opacity:1}50%{opacity:.35}}

/* ===== Versión compacta: Crecimiento y Somatometría ===== */
.tarjeta-crecimiento{ padding: 9px 12px; margin-bottom: 8px; border-radius: 10px; }
.tc-cabeza{ font-size: 13px; margin-bottom: 4px; }
.tc-sep{ margin-top: 8px; padding-top: 7px; }
.tc-fecha{ font-size: 11.5px; margin-bottom: 4px; }
.tc-imc{ margin-bottom: 4px; gap: 5px; }
.tc-imc-num{ font-size: 20px; }
.tc-imc-lbl{ font-size: 11px; }
.tc-fila{ flex-wrap: nowrap; gap: 8px; font-size: 12.5px; padding: 3px 0; align-items: baseline; }
.tc-ind{ flex: 1 1 auto; white-space: nowrap; }
.tc-clas{ flex: 0 0 auto; font-size: 11.5px; text-align: right; min-width: 52px; }
.tc-z{ font-size: 11px; }
.tc-pie{ font-size: 10.5px; margin-top: 4px; }
.tc-vacio, .tc-nd{ font-size: 12px; }
.tc-aviso{ font-size: 11.5px; padding: 4px 8px; }
.tc-alergia{ font-size: 12px; padding: 3px 8px; margin-bottom: 3px; }
.tc-alergia-caja{ padding: 5px 8px; }
.tarjeta-crecimiento--alerta .tc-fila:not(.nivel-normal){ padding: 2px 6px; }

.tarjeta-somato{ padding: 9px 14px; border-radius: 10px; }
.tc-cabeza-somato{ font-size: 15px; margin-bottom: 6px; }
.somato-resumen{ font-size: 12.5px; padding: 5px 10px; margin: 0 0 6px; }
.somato-resumen .col-sm-5, .somato-resumen .col-sm-4, .somato-resumen .col-sm-3{ padding: 0 8px 0 0; }
.tarjeta-somato > br{ display: none; }
.tarjeta-somato .table-responsive{ margin-bottom: 6px; border: 0; }
.tarjeta-somato .table{ margin-bottom: 0; }
.tarjeta-somato .table > thead > tr > th{ font-size: 10.5px; padding: 4px 6px; line-height: 1.2; }
.tarjeta-somato .table > tbody > tr > td{ padding: 4px 5px; }
.tarjeta-somato .form-control{ height: 30px; padding: 2px 8px; font-size: 13px; }
.tarjeta-somato .btn-sm{ padding: 3px 10px; font-size: 12px; }
.tarjeta-somato .btn-success#btn_somat{ padding: 4px 12px; font-size: 12.5px; }
.tarjeta-somato .row{ margin-top: 0; }
