@charset "utf-8";
/* ------------Principal----------- */
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  src: url(fonts/MaterialIcons-Regular.eot);
  src: local('Material Icons'),
    local('MaterialIcons-Regular'),
    url(fonts/MaterialIcons-Regular.woff2) format('woff2'),
    url(fonts/MaterialIcons-Regular.woff) format('woff'),
    url(fonts/MaterialIcons-Regular.ttf) format('truetype');
}
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;

  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

.button_icon {
	cursor: pointer;
}

.icon {
	font-size:30px;
	cursor:pointer;
}

.midleicon {
	font-size:14px;
}

.iconred {
	color:#FF0000;
	font-size:30px;
	cursor:pointer;
}
.iconred:hover {
	color:#CC0000;
}

html {
	margin: 0 15px;
}

body{
	color: #6F6E6E;
	margin-top:0px;
	background-color:#FFF;
	font-family:Arial, Helvetica, sans-serif;
	font-size:11px;
	overflow-y:scroll;
}

/* Pantallas internas nuevas: base visual comun */
.dc-page{
	margin:0 10px 20px 10px;
	padding:22px 24px 34px 24px;
	background:#fff;
	min-height:calc(100vh - 190px);
	color:#333;
	box-sizing:border-box;
	border:1px solid #eee;
	box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.dc-page.dc-auto-height{
	min-height:0;
}
.dc-page.dc-legacy-list{
	min-height:0;
	padding:14px 24px 24px 24px;
}
.tabla_pacientes.consentimientos-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
	box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.dc-page.consentimientos-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.dc-page.citas-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.citas-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.tabla_pacientes.evolutivo-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.evolutivo-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.seguimiento-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.seguimiento-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.periodontogramas-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.periodontogramas-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.datos-clinicos-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.datos-clinicos-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.tratamientos-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.tratamientos-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.notas-laboratorio-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.notas-laboratorio-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.recetas-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.recetas-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.libro-caja-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.libro-caja-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.tabla_pacientes.recalls-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.recalls-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.informes-layout .tabla_pacientes.informes-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.informes-layout .informes-content-panel{
	padding:0;
	background:transparent;
}
.dc-page.informes-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.informes-layout .informes-list-panel .dc-panel{
	/*border-top:0;*/
	margin:0 0 16px 0;
	width:100%;
}
.informes-layout .informes-content-panel table.dataTable,
.informes-layout .informes-content-panel .conceptos,
.informes-layout .informes-content-panel .dc-table{
	border:0 !important;
}
.tabla_pacientes.recepcion-header-panel:not([id]){
	margin-bottom:0 !important;
	border-bottom:0;
}
.dc-page.recepcion-list-panel{
	margin-top:0;
	padding-top:14px;
	border-top:0;
	box-shadow:0 2px 3px rgba(0,0,0,.03);
}
.dc-page-header{
	margin-bottom:18px;
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:14px;
	border-bottom:2px solid #95d8db;
	padding-bottom:12px;
}
.dc-page-header h2{
	margin:0;
	color:#333;
	font-size:22px;
	font-weight:bold;
	font-style:italic;
}
.dc-page-header h2 i{
	color:#95d8db;
	margin-right:8px;
	font-size:20px;
}
.dc-header-actions{
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	align-items:center;
	justify-content:flex-end;
}
.dc-panel{
	background:#fff;
	border:1px solid #d7d7d7;
	border-radius:3px;
	margin:0 0 16px 0;
	padding:14px;
	box-sizing:border-box;
}
.dc-panel h3{
	margin:0 0 12px 0;
	color:#333;
	font-size:16px;
}
.dc-row{
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	align-items:center;
	margin-bottom:10px;
}
.dc-grid-2{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:16px;
	align-items:start;
}
.dc-meta{
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	margin:8px 0 12px 0;
}
.dc-meta span{
	background:#f1f1f1;
	border:1px solid #ddd;
	padding:5px 8px;
	border-radius:3px;
	color:#555;
}

/* ---- Designer relacional de import_csv.php ---- */
.designer-picker{
	padding:5px 6px;
	border:1px solid #ccc;
	border-radius:3px;
	background:#fff;
	min-width:180px;
}
.designer-picker-hidden{
	display:none;
}
.designer-csv-combo,
.designer-table-combo{
	position:relative;
	min-width:180px;
}
.designer-csv-combo-button,
.designer-table-combo-button{
	width:100%;
	min-width:180px;
	box-sizing:border-box;
	padding:5px 24px 5px 6px;
	border:1px solid #ccc;
	border-radius:3px;
	background:#fff;
	color:#333;
	font-size:12px;
	line-height:16px;
	text-align:left;
	cursor:pointer;
	position:relative;
}
.designer-csv-combo-button:after,
.designer-table-combo-button:after{
	content:"";
	position:absolute;
	right:8px;
	top:50%;
	margin-top:-2px;
	border-left:4px solid transparent;
	border-right:4px solid transparent;
	border-top:5px solid #555;
}
.designer-csv-combo-menu,
.designer-table-combo-menu{
	position:absolute;
	top:100%;
	left:0;
	margin-top:4px;
	min-width:260px;
	max-height:280px;
	overflow:auto;
	background:#fff;
	border:1px solid #bcbcbc;
	border-radius:4px;
	box-shadow:0 4px 14px rgba(0,0,0,.18);
	z-index:10010;
	padding:4px 0;
}
.designer-csv-combo-item,
.designer-table-combo-item{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:8px;
	width:100%;
	box-sizing:border-box;
	border:0;
	background:#fff;
	color:#333;
	text-align:left;
	font-size:12px;
	line-height:16px;
	padding:5px 9px;
	cursor:pointer;
}
.designer-csv-combo-label,
.designer-table-combo-label{
	flex:1;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.designer-csv-combo-view{
	color:#2f8f9d;
	opacity:.7;
	cursor:pointer;
	padding:2px 4px;
}
.designer-csv-combo-view:hover{
	opacity:1;
}
.designer-csv-combo-item:hover,
.designer-csv-combo-item:focus,
.designer-table-combo-item:hover,
.designer-table-combo-item:focus{
	background:#e5f7f8;
	outline:none;
}
.designer-csv-combo-item.is-selected,
.designer-table-combo-item.is-selected{
	font-weight:bold;
	background:#f1fbfb;
}
.designer-csv-combo-item.is-placeholder,
.designer-table-combo-item.is-placeholder{
	color:#777;
}
.designer-csv-picker-tooltip{
	position:absolute;
	z-index:10020;
	background:#263234;
	color:#fff;
	border-radius:4px;
	box-shadow:0 4px 14px rgba(0,0,0,.22);
	font-size:12px;
	line-height:1.45;
	padding:8px 10px;
	white-space:pre-line;
	pointer-events:none;
}
.designer-csv-tooltip-content{
	white-space:normal;
}
.designer-csv-tooltip-title{
	font-weight:bold;
	margin-bottom:5px;
}
.designer-csv-tooltip-row{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:4px 7px;
	align-items:start;
	margin-top:3px;
}
.designer-csv-tooltip-row.has-image{
	grid-template-columns:auto 1fr auto;
	align-items:center;
}
.designer-csv-tooltip-col{
	font-weight:bold;
	color:#d7f6f7;
}
.designer-csv-tooltip-value{
	overflow-wrap:anywhere;
}
.designer-csv-tooltip-image{
	display:block;
	max-width:92px;
	max-height:58px;
	object-fit:contain;
	background:#fff;
	border:1px solid rgba(255,255,255,.45);
	border-radius:3px;
	padding:2px;
}
.designer-canvas{
	position:relative;
	min-height:560px;
	overflow:visible;
	border:1px dashed #ccc;
	background:#fafdfd repeating-linear-gradient(0deg,transparent,transparent 23px,#f0f6f6 24px),repeating-linear-gradient(90deg,transparent,transparent 23px,#f0f6f6 24px);
}
.designer-svg{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	pointer-events:none;
	overflow:visible;
}
.designer-edge-line{
	fill:none;
	stroke-width:2.5;
	cursor:pointer;
	pointer-events:stroke;
}
.designer-edge-line.selected{
	stroke-width:4.5;
}
.designer-drag-preview{
	fill:none;
	stroke:#999;
	stroke-width:2;
	stroke-dasharray:4,3;
	pointer-events:none;
}
.designer-box{
	position:absolute;
	min-width:190px;
	background:#fff;
	border:1px solid #bcbcbc;
	border-radius:4px;
	box-shadow:0 1px 4px rgba(0,0,0,.12);
	font-size:12px;
	z-index:2;
}
.designer-box-header{
	background:#95d8db;
	color:#1a3c3e;
	font-weight:bold;
	padding:6px 8px;
	border-radius:4px 4px 0 0;
	cursor:move;
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:6px;
}
.designer-box-header .designer-box-close,
.designer-box-header .designer-box-edit,
.designer-box-header .designer-box-view{
	cursor:pointer;
	color:#1a3c3e;
	font-weight:bold;
	opacity:.7;
}
.designer-box-header .designer-box-close:hover,
.designer-box-header .designer-box-edit:hover,
.designer-box-header .designer-box-view:hover{
	opacity:1;
}
.designer-box-header .designer-box-title{
	flex:1;
}
.designer-box-csv .designer-box-title[title]{
	cursor:help;
	text-decoration:underline dotted rgba(26,60,62,.55);
	text-underline-offset:2px;
}
.designer-box-body{
	overflow:visible;
}
.designer-col{
	position:relative;
	padding:4px 18px;
	border-bottom:1px solid #eee;
	white-space:nowrap;
}
.designer-col:last-child{
	border-bottom:none;
}
.designer-col small{
	color:#888;
	margin-left:4px;
}
.designer-box-csv .designer-col{
	padding-right:18px;
}
.designer-box-csv .designer-col-name[title]{
	cursor:help;
	text-decoration:underline dotted #6f9fa2;
	text-underline-offset:2px;
}
.designer-box-table .designer-col{
	padding-left:18px;
}
.designer-box-intermediate .designer-col{
	padding-right:18px;
}
.designer-anchor{
	position:absolute;
	top:50%;
	width:10px;
	height:10px;
	margin-top:-5px;
	border-radius:50%;
	background:#fff;
	border:2px solid #2f8f9d;
	cursor:crosshair;
	z-index:3;
}
.designer-anchor-out{
	right:-6px;
}
.designer-anchor-in{
	left:-6px;
}
.designer-anchor:hover{
	background:#2f8f9d;
}
.intermediate-data-table{
	width:100%;
	border-collapse:collapse;
	font-size:12px;
}
.intermediate-data-table th,
.intermediate-data-table td{
	border:1px solid #ddd;
	padding:4px;
	white-space:nowrap;
}
.intermediate-data-table th{
	background:#f5f5f5;
	font-weight:600;
}
.intermediate-data-table input[type="text"]{
	width:120px;
	padding:3px 5px;
	border:1px solid #ccc;
	font-size:12px;
}
.designer-edge-panel-floating{
	position:fixed;
	z-index:100;
}
.designer-edge-legend-chip{
	display:inline-flex;
	align-items:center;
	gap:4px;
}
.designer-edge-legend-dot{
	display:inline-block;
	width:10px;
	height:10px;
	border-radius:50%;
}
.designer-dropzone{
	border:2px dashed #95d8db;
	border-radius:4px;
	padding:22px;
	text-align:center;
	color:#555;
	background:#f8fefe;
}
.designer-dropzone.dragover{
	background:#e5f7f8;
	border-color:#2f8f9d;
}
.designer-dropzone-browse{
	color:#1a6b73;
	text-decoration:underline;
	cursor:pointer;
	margin-left:4px;
}
.designer-edge-form label{
	display:block;
	margin:6px 0 2px 0;
	font-size:12px;
	color:#555;
}
.designer-edge-form input,.designer-edge-form select,.designer-edge-form textarea{
	width:100%;
	box-sizing:border-box;
	padding:5px 6px;
	border:1px solid #ccc;
	border-radius:3px;
	font-size:12px;
}
.designer-edge-source-row{
	display:flex;
	gap:6px;
	margin-bottom:4px;
	align-items:center;
}
.designer-edge-source-row select{
	flex:1;
}
.designer-edge-panel-floating{
	position:fixed;
	top:110px;
	right:24px;
	width:340px;
	max-height:80vh;
	overflow:auto;
	background:#fff;
	border:1px solid #bcbcbc;
	border-radius:4px;
	box-shadow:0 4px 18px rgba(0,0,0,.28);
	z-index:9999;
}
.designer-edge-panel-header{
	border-radius:4px 4px 0 0;
}
.designer-edge-panel-body{
	padding:12px;
	font-size:12px;
}
#designer-csv-viewer-panel{
	width:auto;
	min-width:340px;
	max-width:calc(100vw - 48px);
}
#designer-csv-viewer-panel .designer-edge-panel-body{
	overflow-x:auto;
}
#designer-csv-viewer-panel .intermediate-data-table{
	width:auto;
}
.designer-intermediate-col-row{
	display:flex;
	gap:6px;
	align-items:center;
	margin-bottom:6px;
}
.designer-intermediate-col-row input[type="text"],
.designer-intermediate-col-row select{
	padding:4px 5px;
	border:1px solid #ccc;
	border-radius:3px;
	font-size:12px;
}
.designer-intermediate-col-row input[type="text"]{
	flex:1;
	min-width:80px;
}
.designer-intermediate-col-row select{
	min-width:80px;
}
.designer-intermediate-col-row input[type="checkbox"]{
	margin:0;
}
.designer-intermediate-col-row button{
	background:#fdeaea;
	border:1px solid #d18d8d;
	color:#a33;
	border-radius:3px;
	cursor:pointer;
	padding:2px 6px;
}
#intermediate-form-status.dc-ok{
	color:#2e7d32;
}
#intermediate-form-status.dc-error{
	color:#c62828;
}

.dc-table{
	width:100%;
	border-collapse:collapse;
	background:#fff;
}
.dc-table th,.dc-table td{
	border:1px solid #ddd;
	padding:7px;
	font-size:12px;
	text-align:left;
	vertical-align:top;
}
.dc-table th{
	background:#ececec;
	color:#333;
	font-weight:bold;
}
.dc-scroll{
	overflow:auto;
	max-width:100%;
}
.dc-ok{
	background:#e8f7e8;
	border:1px solid #9ac69a;
	padding:9px;
	margin-bottom:10px;
	color:#235423;
}
.dc-error{
	background:#fdeaea;
	border:1px solid #d18d8d;
	padding:9px;
	margin-bottom:10px;
	color:#7a2020;
}
.dc-actions a{
	display:inline-block;
	margin:0 5px;
	color:#333;
	font-size:16px;
	text-decoration:none;
}
.dc-actions a:hover{color:#007bff;}
.dc-actions a.dc-delete:hover{color:#dc3545;}
.dc-input,.dc-select,.dc-textarea{
	box-sizing:border-box;
	border:1px solid #ccc;
	border-radius:4px;
	padding:7px;
	width:100%;
	background:#fff;
}

/* Compatibilidad visual para pantallas antiguas */
.tabla_pacientes:not([id]){
	width:calc(100% - 20px) !important;
	margin:0 10px 16px 10px !important;
	background:#fff !important;
	border:1px solid #eee;
	box-shadow:0 1px 3px rgba(0,0,0,.04);
	box-sizing:border-box;
	border-collapse:separate;
	border-spacing:0;
}
.tabla_pacientes:not([id]) tr,
.tabla_pacientes:not([id]) tbody,
.tabla_pacientes:not([id]) td{
	background:none !important;
}
.tabla_pacientes:not([id]) .tituloIndex{
	color:#333;
	font-size:22px;
	font-weight:bold;
	font-style:italic;
	padding:20px 22px 12px 22px;
	margin:0;
	border-bottom:2px solid #95d8db;
	box-sizing:border-box;
}
.tabla_pacientes:not([id]) .tituloIndex:before{
	content:"\f15c";
	font-family:"Font Awesome 5 Free";
	font-weight:900;
	color:#95d8db;
	font-style:normal;
	font-size:20px;
	margin-right:10px;
}
.tabla_pacientes:not([id]) .tituloIndex + td{
	padding:12px 22px;
}
.tabla_pacientes:not([id]) td[colspan]{
	padding:10px 22px;
}
.conceptos{
	background:#fff;
	border-collapse:collapse;
}
.conceptos_header {
	background:#ececec !important;
	border:1px solid #d7d7d7 !important;
	color:#333 !important;
	font-weight:bold;
	padding:8px 10px !important;
}
.conceptos tbody tr:nth-child(odd),
.conceptos_row_gray{
	background:#f7f7f7 !important;
	border-right:1px solid #ddd !important;
}
.conceptos tbody tr:nth-child(even),
.conceptos_row_white{
	background:#fff !important;
	border-right:1px solid #ddd !important;
}
.conceptos td{
	border-color:#ddd;
}
.dc-panel .dt-container,
.dc-panel .dt-layout-row,
.dc-panel .dt-layout-cell,
.dc-panel .dataTables_wrapper{
	background:#fff;
}
.dc-panel .dt-container{
	width:100%;
	color:#333;
}
.dc-panel .dt-layout-row{
	margin:8px 0;
}
.dc-panel .dt-layout-table{
	margin:8px 0;
}
.dc-panel .dt-search input,
.dc-panel .dt-length select,
.dc-panel .dt-input{
	background:#fff;
	border:1px solid #ccc;
	border-radius:3px;
	color:#333;
}
.dc-panel table.dataTable,
.dc-panel .conceptos,
.dc-panel .dc-table{
	background:#fff !important;
	border:1px solid #d7d7d7;
}
.dc-panel table.dataTable tbody tr,
.dc-panel .conceptos tbody tr,
.dc-panel .dc-table tbody tr{
	background:#fff !important;
}
.dc-panel table.dataTable tbody tr:hover,
.dc-panel .conceptos tbody tr:hover,
.dc-panel .dc-table tbody tr:hover{
	background:#f8fbfb !important;
}
div.dt-container{
	background:#fff;
	color:#333;
	box-sizing:border-box;
}
body > div.dt-container,
td > div.dt-container{
	width:calc(100% - 20px);
	margin:0 10px 16px 10px;
	padding:14px 18px 18px 18px;
	border:1px solid #d7d7d7;
	border-radius:3px;
	box-shadow:0 1px 3px rgba(0,0,0,.03);
}
.dc-panel div.dt-container,
.informes-content-panel div.dt-container,
.consentimientos-list-panel div.dt-container{
	width:100%;
	margin:0;
	padding:0;
	border:0;
	box-shadow:none;
}
div.dt-container div.dt-layout-row{
	background:#fff;
	margin:8px 0;
}
div.dt-container .dt-search input,
div.dt-container .dt-length select,
div.dt-container .dt-input{
	background:#fff;
	border:1px solid #bbb;
	border-radius:2px;
	color:#333;
}
div.dt-buttons > .dt-button,
div.dt-buttons > div.dt-button-split .dt-button{
	background:#f5f5f5 !important;
	border:1px solid #bdbdbd !important;
	border-radius:2px !important;
	color:#333 !important;
	box-shadow:none !important;
	font-weight:bold;
	font-size:10px !important;
}
div.dt-buttons > .dt-button:hover,
div.dt-buttons > div.dt-button-split .dt-button:hover{
	background:#ececec !important;
	border-color:#999 !important;
}
div.dt-buttons.dc-dt-extra-buttons{
	display:none !important;
}
.dc-excel-filter-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:30px;
	margin-left:6px;
	padding:0 !important;
	vertical-align:top;
	position:relative;
	top:-1px;
	background:transparent !important;
	border:0 !important;
	box-shadow:none !important;
	color:#1f8f3a !important;
}
.dc-excel-filter-button i{
	color:#1f8f3a !important;
	font-size:26px !important;
	margin:0 !important;
}
.dc-excel-filter-button:hover i{
	color:#14652a !important;
}
table.dataTable{
	width:100% !important;
	background:#fff !important;
	border-collapse:collapse !important;
}
table.dataTable thead th,
table.dataTable thead td{
	background:#ececec !important;
	border:1px solid #d7d7d7 !important;
	color:#333 !important;
	font-weight:bold;
}
table.dataTable tbody th,
table.dataTable tbody td{
	border:1px solid #ddd !important;
	background:#fff !important;
}
table.dataTable tbody tr:hover th,
table.dataTable tbody tr:hover td{
	background:#f8fbfb !important;
}

@media (max-width: 900px){
	.dc-page-header{align-items:flex-start;flex-direction:column;}
	.dc-grid-2{grid-template-columns:1fr;}
}

@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) {
	body{
		width:768px;
	}
	input {
		font-size-adjust: 1.1;
		min-width:115px !important;
	}
}

@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : landscape) {
	body{
		width:1024px;
	}
}

.item_selected {
	background-color: #f00 !important;
	color:#fff !important;
}
.item_selected * {
	color:#fff !important;
}

.tachado {
	text-decoration:line-through;
}

.item_disabled,
.content_disabled {
	background-color:#EEE;
	cursor:default !important;
	position:absolute;
	/*border:solid 1px #FF0000;*/
	opacity:0.2;
	filter:alpha(opacity=20);
}

.item_disabled {
	position:relative;
}

.cursor_disabled {
	cursor:default !important;
}

button[disabled]:hover,
button {
	cursor:pointer;
	background-color:#999;
	color:#FFF;
	border:solid 1px #ccc;
	padding:2px 5px;
}
button[disabled]:hover,
button[disabled] {
	cursor: default !important;
	opacity: 0.6;
	filter:alpha(opacity=60);
}
button:hover {
	color:#333;
	background-color:#CCC;
}
.dt-like-button{
	background:#f5f5f5 !important;
	border:1px solid #bdbdbd !important;
	border-radius:2px !important;
	color:#333 !important;
	box-shadow:none !important;
	font-weight:bold;
	font-size:10px;
	padding:5px 10px !important;
	margin-right:4px;
	text-shadow:none !important;
	line-height:16px;
}
.dt-like-button:hover{
	background:#ececec !important;
	border-color:#999 !important;
	color:#333 !important;
}
.dt-like-button i{
	color:#333 !important;
	font-size:10px;
	margin-right:4px;
}
.dt-like-button i.pdf-action-icon,
.pdf-action-icon{
	color:#d6362f !important;
	font-size:17px !important;
}

#limpiar.dt-like-button,
#limpiar_2.dt-like-button {
	margin-left:20px;
}

.green {
	color:#3ebf10;
}

.textalert {
	color:#FF0000;
}

.red {
	background-color:#FF0000;
}

.red:hover {
	background-color:#CC0000;
}

input[type=button] {
	cursor:pointer;
}

.gray {
	color:#CCCCCC;
}

#logo{
	padding-left: 30px;
    padding-right: 32px;
    padding-top: 30px;
	margin:0;
	
	width:239px;
	min-height:71px;
	float:left;
}
.header {
	margin:0;
	padding-top:0px;
	width: 100%;
	/*height:48px;*/
}
.tablaIndex {
	margin:0 auto;
	width: 100%;
	/*background-image:url(../assets/fondo.png);
	background-repeat:no-repeat;*/
}
.tabla {
	margin:0 auto;
	width: 100%;
	background-color:#F5F5F5;
}
.tablaFooter {
	margin:0 auto;
	width: 100%;
}
.sideBox {
	border-right: 1px dashed #6F6E6E;
	width:280px;
}
/* ----------Contenido-------------*/

#servcont{
	text-decoration:none;
	color:#39C;	
	font-size:12px;
}

.logos{
	margin-bottom: 30px;
}

/*.logo {
	font-family: Impact, Arial;
	font-size: 2.4em;
	width: 570px;
	margin: 0;
	padding: 10px 0 0 0;
}*/
.logo img {
	padding:10px;
}
.logo .capital {
	color: #990000;
}
.logo .p_capital {
	font-size: 20px;
	border-top: thin solid #999999;
	height: 28px;
	width: 22px;
	/*float: left;*/
}

.contenido{
	padding-top: 10px;
	margin:0 auto;
	/*style="min-width: 700px;*/
}
.contenidoIndex{
	padding: 10px;
	margin:0;
	width:550px;
	/*max-width: 690px;*/
}
 
.pizarra {
	width: 330px;
	height: 330px;
	background-color: #fff;
}

.cuerpo {
	display: inline-flex;
	margin-bottom:20px;
}

.zonaCentro{
	float:left;
	border-right: 1px solid #6F6E6E;	
	padding-right: 5px;
    width: 205px;	
	overflow:hidden;	
}

.zonaDerecha {
	float:right;
	font-size:12px;
	width:250px;	
	margin-right:80px;
}
.zonaDerecha th {
	text-align:left;
	font-size:14px;
}

.zonaDerecha img{
	/*width:250px;*/
	height:auto;
}

.titulo2{
	font-size:13px;
	color:#7D99A9;
	margin-bottom: 10px;
}



.contenidoIndex p{
	margin-top: 5px;
	text-align:justify;
	font-size:12px;
}
.tituloIndex{
	font-size:24px;
	color:#7D99A9;
	margin-bottom: 15px;
	padding-right: 30px;	
	
}
.titulo{
	font-size:24px;
	color:#7D99A9;
	margin-bottom: 30px;
	padding-right: 30px;	
	padding-left: 10px;
	width: 100%;
}

/*----------Contacto-------------*/

#envCont {
	text-align:center;
	border-bottom: 1px solid #6F6E6E;
	border-top: 1px solid #6F6E6E;
	margin:0;
	overflow:visible;
	width: 430px;
	padding: 5px 0;
}


#envCont a{
	font-size:40px;
	color: #36C;
	text-decoration:none;	
}

#envCont img{
	border:none;
}

.contactForm td{
	font-size:13px;
	color:#7D99A9;
	font-weight:300;
	/*margin-bottom: 10px;*/
}

.contactForm {
	margin:0 auto;
}

.contactForm input{
	width: 250px;	
}

.contactForm textarea{
	width: 245px;	
}

.titulo2Cont{
	font-size:13px;
	color:#555;
	margin-bottom: 10px;
	padding-left: 10px;
}

#footCont{
	font-size:10px;
	color:#369;
	margin-bottom: 30px;
	padding-left: 10px;
	text-align: justify;
}

.contBajo{
	font-size:11px;	
	padding-left: 15px;
	padding-top: 15px;
	border-right: 1px solid #6F6E6E;
	margin:0 auto;
}

.contBajo p{
	 margin: 0 0 6px;
}

/*--------------Tarifas------------*/

.zonaCentroT {	
	float:left;	
	padding-right: 15px;
    width: 400px;
	/*margin-bottom: 40px;*/
}

.zonaDerechaT {
	border-left: 1px solid #6F6E6E;
	float:right;
	padding: 0 10px 30px;
	margin-top:20px;
}

.zonaDerechaT img {
	width:250px;
	height:100% auto;
}

.titulo2Tarifa{
	background-color:#FFF;
	font-size:15px;
	color:#7D99A9;
	padding-left: 10px;
	width: 399px;
}

.tarifa {
	background-color:#7D99A9;
	font-size:11px;
	color:#FFF;
	padding: 1px 10px 10px;
	width: 389px;
	margin-bottom: 10px;
}

.tarifa span, a, a:visited {
	text-decoration:none;
	/*color:#A93E44;*/
	color:#6f6e6e;
	font-size:11px;
}

.tarifa a:hover {

}
/*--------- items----------*/



#itemEncabezado{
	font-size:50px;
	text-align:center;
	color:#AAA;	
	margin: 0;
	padding-left: 0px;
}

.tdItems{
	max-width: 280px;
	padding-right:13px;
	border-right: 1px dashed #6F6E6E;
}

.news{
	width:260px;
}

.fecha{
	font-size:12px;
	color: #39C;
	width:260px;
	height:100%;
	margin: 0;
	
	/*width:310px;
	height:30px;*/
}

.item{
	
	font-size: 12px;
	padding-right: 10px;
	text-align:justify;
}
.itemHeader{
	clear:both;
	width:270px;
	height:99px;
	border-bottom: 1px solid #6F6E6E;
	padding-right:10px;
}
.item_item {
	border:1px #CCC solid;
}
.item_item_des {
	border:1px #FF0000 solid;
}
/*--------- noticias----------*/



#noticaEncabezado{
	font-size:50px;
	text-align:center;
	color:#AAA;	
	margin: 0;
	padding-left: 0px;
}

.tdNoticias{
	max-width: 280px;
	padding-right:13px;
	border-right: 1px dashed #6F6E6E;
}

.desPdf a:visited {
	text-decoration:none;	
	font-size:12px;
	color:#A93E44;
}

.desPdf a {
	text-decoration:none;	
	font-size:12px;
	color:#A93E44;
}

.noticia{
	
	font-size: 12px;
	padding-right: 10px;
	text-align:justify;
}
.noticiaHeader{
	clear:both;
	width:270px;
	height:99px;
	border-bottom: 1px solid #6F6E6E;
	padding-right:10px;
}

.news div{
	width:255px;
	/*width:260px;*/
	border-bottom: 1px solid #6F6E6E;	
	height:100%;
	padding-left: 20px;
	padding-right: 5px;
	/*padding-right:0px;*/
	/*padding-bottom:10px;*/
	padding-top: 10px;
	
}

.boton-doctor ,
.boton-doctor:visited,
.boton-doctor:hover {
	color:#08c;
    border-radius: 5px;
    line-height: 14px;
    display: block;
    margin: 2px 0px 3px 0px;
    padding: 8px 12px;
	cursor:pointer;
}

.recursos .active ,
.recursos .active:hover {
	background-color: #0088CC;
    color: #FFFFFF;
}


/*-------------- menu --------------*/


.menu_selected {
	cursor:default;
	color:#6F6E6E;
	padding-left:10px;
	padding-right:10px;
}

.submenu,
.menu {
	/*border-bottom: 1px solid #6F6E6E;*/
	font-size:12px;
	text-align:center;
	font-weight:bold;
	margin-top:10px;
	height:30px;
}
.submenu ul,
.menu ul {
	/*color:#B0B0AF;*/
}
.submenu li,
.menu li{
	list-style: none;
	display:inline;
}

.submenu a,
.submenu a:hover,
.submenu a:visited,
.menu_unselected, 
.menu a, 
.menu a:hover, 
.menu a:visited {
	padding-left:10px;
	padding-right:10px;
	color:#B0B0AF;
	text-decoration:none;
	cursor:pointer;
}

/*-------------- menu2 --------------*/


.menu2_selected{
	cursor:default;
	color:#344068;
	padding-left:10px;
	padding-right:10px;
}

.menu2{
	/*border-bottom: 1px solid #6F6E6E;*/
	font-size:12px;
	text-align:center;
	font-weight:bold;
	margin-top:10px;
	height:25px;
}
.menu2 ul {
	color:#666;
}
.menu2 li{
	list-style: none;
	display:inline;	
}

.menu2 a{
	padding-right:10px;
	padding-top:10px;
	/*color:#B0B0AF;*/
	text-decoration:none;
}

.menu2 a:hover, a:visited {
	padding-right:10px;
	padding-top:10px;
	/*color:#B0B0AF;*/
	text-decoration:none;
}



/*---------Footer----------*/

.footer{
	text-align:center;
	font-size:11px;	
	padding-bottom: 15px;
	border-bottom: 1px solid #6F6E6E;
	width:1000px;
	margin: 15px auto;
}

.footer a{
	text-decoration:none;
	color:#3399CC;	
}

/*--------Cobertura-----------*/

#datosMapa{	
	margin: 320px 40px 60px 0;
    position: relative;
    width: 205px;
	text-align:left;	
	float:right;	
}
#oferta{
	font-size: 12px;
	padding-bottom: 15px;
	padding-left:0px;
}

.zona{
	font-size: 12px;
	padding-left: 15px;
	margin: 5px 0 0 0;	
}

.mapa img{
	position: absolute;
	float:right;
	z-index: 0;
	width: 690px;
	height:533px;
}
/*******CALENDARIO********/
input.calendar, select.calendar {
width: 99px;
float:left;
}

button.calendar {
background: url(img/calendar-icon.gif);
border: 0;
cursor: pointer;
float: left;
height: 20px;
margin-right: 6px;
width: 20px;
margin-left:6px;
}

button.calendar:hover, button.calendar.active {
background-position: 0 20px;
}

div.calendar {
background: url(img/calendar.png);
height: 195px;
padding: 0 6px;
text-align: center;
width: 147px;
}	

div.calendar div {
background: none !important;
height: 185px;
overflow: hidden;
padding-top: 10px;
position: relative;
width: 147px;
}	

div.calendar caption {
color: #333;
font: normal 12px/16px Arial, Helvetica, sans-serif;
padding-top: 6px;
/*text-align: center;*/
width: 100%;
}

div.calendar caption a {
cursor: pointer;
display: block;
height: 12px;
overflow: hidden;
position: absolute;
text-indent: -100px;
margin-top: 2px;
width: 11px;
}

div.calendar caption a.prev {
background-image: url(img/calendar-prev.gif);
left: 0;
top:0px;
}

div.calendar caption a.next {
background-image: url(img/calendar-next.gif);
right: 0;
top:0px;
}

div.calendar caption a:hover {
background-position: 0 12px;
}

div.calendar caption span {
height: 25px;
position: relative;
text-align: center;
padding-left: 8px;
padding-right: 8px;
}

div.calendar caption span.month {
padding-right: 8px;
min-width:80px;
}

div.calendar caption span.month:after {
content: ',';
}

div.calendar table {
background: #FFF;
border: 0;
border-collapse: collapse;
border-spacing: 0;
cursor: default;
margin: 0 auto;
overflow: hidden;
width: 147px;
}

div.calendar td, div.calendar th {
border: 0;
color: #0597DB;
font: normal 12px Arial, Helvetica, sans-serif;
height: 21px;
text-align: center;
width: 21px;
}

div.calendar td {
background: url(calendar-td.gif);
color: #FFF;
font-size: 11px;
}

div.calendar td.invalid {
color: #999;
}

div.calendar td.valid {
background: url(img/calendar-valid.gif);
color: #0597DB;
cursor: pointer;
}

div.calendar td.hilite {
background: url(img/calendar-hilite.gif);
}

div.calendar td.inactive {
background: url(img/calendar-td.gif) 0 100%;
color: #FFF;
}

div.calendar td.active, div.calendar td.hover {
background: url(img/calendar-valid.gif) 0 100%;
color: #FFF;
cursor: pointer;
}
.labelinput{
width:250px;
margin:9px 10px;
float:left;
text-align:right;
}
label {
	white-space:nowrap;
	text-align:left;
	margin-top:3px;
	font-size:12px;
	font-weight:bold;
}
.item_noticia {
	border:1px #CCC solid;
}
.item_noticia_des {
	border:1px #FF0000 solid;
}

/* CSS Document */

.periodontograma {
	width:40px;
	/*height:227px;*/
	height:100px;
	background: url(img/periodontograma.png);
}

.check_piezas {
	margin:0px;
	width:15px;
	height:15px;
}

.suma_valor,
.input_piezas {
	width:7px;
	height:7px;
	margin:0px;
	font-size:7px !important;
	text-align:right;
}

.input_movilidad_piezas {
	width:29px;
	height:7px;
	margin:0px 3px;
	font-size:7px !important;
	text-align:right;
}

.button_periodontograma {
	position:absolute;
	cursor:pointer;
	margin-top:-290px;
	margin-left:17px;
}

.column_pieza {
	border:solid 1px #CCC;
}

.column_pieza.estado-ausente { opacity: 0.5; background: #f5f5f5; }
.column_pieza.estado-implante { border-color: #4CAF50; background: #E8F5E9; }
.column_pieza.estado-puente { border-color: #9C27B0; background: #F3E5F5; }
.column_pieza.estado-corona { border-color: #d4ac0d; background: #FFFDE7; }
.column_pieza.estado-endodoncia { border-color: #FF5722; background: #FBE9E7; }
.column_pieza.estado-ortodoncia { border-color: #2196F3; background: #E3F2FD; }
.column_pieza.estado-fractura { border-color: #795548; background: #EFEBE9; }
.column_pieza.estado-caries { border-color: #c0392b; background: #FDEDEC; }

.contenedor {
	width:595px;
	min-height:540px;
	margin:0 auto;
	background-color:#FFF;
	padding:10px 10px;
}

.superior {
	height:210px;
	border-bottom:1px dotted #999;
}

.col2 {
	width:310px;
	min-height:200px;
	float:right;
}

.datos {
	margin-top:30px;
	width:310px;
	height:137px;
}

.medio {
	min-height:300px;
}

.sup_medio {
	height:30px;
}

select {
	margin-top:3px;
	font-size:10px;
	height:18px;
	line-height:18px;
}
@page {
	margin:10mm;
}
#hoja_presupuesto {
	background-color:#FFF;
	border:solid 1px #000;
	color:#000;
	/*width:595px;
	height:842px;
	max-height:842px;*/
	width:695px;
	height:1022px;
	max-height:1022px;
}
#hoja_presupuesto th {
	padding-top:30px;
	padding-left:30px;
	color:#000;
	font-weight:normal;
	font-size:12px;
}
.piezas {
	display:none;
}
.cliente tr {
	height:25px;
}

.table_layout {
	table-layout: fixed;
}
.concepto td {
	border-right:solid 1px #000;
	overflow-wrap: break-word;
	word-wrap: break-word;
}
.conceptos {
	border:solid 1px #000;
	border-right:none;
	margin-bottom: 10px;
	white-space: normal !important;
}
.conceptos a,
.conceptos a:visited {
	text-decoration:none;
	color:#6F6E6E;
	padding:0px;
}

.conceptos img {
	padding:0 10px;
}
.conceptos tr {
	height:18px;
}
.conceptos_big tr {
	height:28px;
}

.conceptos_header {
	background-color:#CCC;
	border-bottom: 1px solid rgba(0, 0, 0, 0.3);
	border-right:solid 1px #000;
	color:#000;
	font-weight:bold;
	padding:10px;
}
.conceptos .noprint tbody tr{
	background-color:transparent !important;
}
.conceptos .noprint tbody tr td{
	border:none !important;
}
.conceptos tbody tr:nth-child(odd),
.conceptos_row_gray {
	background-color:#EEEFEF;
	/*border-bottom:solid 1px #000;*/
	border-right:solid 1px #000;
	min-height:25px;
}
.conceptos tbody tr:nth-child(even),
.conceptos_row_white {
	background-color:#FFF;
	/*border-bottom:solid 1px #000;*/
	border-right:solid 1px #000;
	min-height:25px;
}

.conceptos_row_gray_des,
.conceptos_row_white_des {
	background-color:#7B7A7A;
	color:#E6E6E6;
	/*border-bottom:solid 1px #000;*/
	border-right:solid 1px #000;
	min-height:25px;
}
.conceptos_total {
	border:solid 1px #000;
	/*border-top:none;*/
}
.btn_delete {
	width:15px;
	height:15px;
	cursor:pointer;
}
.tabla_facturas,
.tabla_presupuestos,
.tabla_periodontogramas {
	width:205px;
	background-color:#FFF;
	border:solid 1px #000;
}

.tabla_consentimientos {
	background-color:#FFF;
	border:solid 1px #000;
}

.tabla_imagenes {
	background-color:#FFF;
	border:solid 1px #000;
}


.item_list_select {
	background-color:#FFFF00;
	color:#0000FF;
	cursor:default;
}

.tabla_facturas td,
.tabla_consentimientos tc,
.tabla_imagenes td,
.tabla_presupuestos td,
.tabla_periodontogramas td {
	cursor:pointer;
	border-bottom:solid 1px #000;
	padding:10px;
}

.tabla {
	background-color:#FFF;
	border:solid 1px #000;
	position:absolute;
	left:20px;
	width:900px;
}

.hora_activa {
	width:10px;
	background-color:#CCC;
	border:solid 1px #999;
	font-size:9px;
	cursor:pointer;
}

.hora_desactiva {
	width:10px;
	background-color:#000;
	border:solid 1px #999;
}

.hora_select {
	background-color:#000;
}

#loading {
	position: absolute;
	top: 22px;
	right: 5px;
	background: url(img/loading.gif) no-repeat;
	width:25px;
	height:25px;
	cursor:default;
}

#graficas {
	font-family:Arial, Helvetica, sans-serif;
}

/*DESDE AQUI LO DE LAS PIEZAS DE LOS PRESUPUESTOS*/
.price_old {
	padding:0px 5px;
	text-decoration:line-through;
}

.tabla_list {
	background-color:#FFF;
	border:solid 1px #000;
	height:502px;
	overflow:hidden;
	overflow-y:auto;
}
.tabla_list img {
	border:solid 1px #000;
}

.tabla_list td {
	cursor:pointer;
	/*border-bottom:solid 1px #000;*/
	padding:1px 10px;
}

#contenedor_piezas {
	width:367px;
	height:502px;
}

.odontograma_adulto {
	background:url(../imagenes/odontograma_adulto.jpg) no-repeat;
}

.odontograma_infantil {
	background:url(../imagenes/odontograma_infantil.jpg) no-repeat;
}
.conceptos input {
	border:none;
	font-size:10px;
	color:#666;
	background:none;
}

.totales {
	border:solid 1px #999;
	min-width:120px;
	height:20px;
	margin-left:10px;
	margin-bottom:5px;
	background-color:#FFF;
	text-align:right;
	padding-right:5px;
}

.chk_descuento,
.chk_total {
	padding-left:10px;
}

.pieza {
	position:absolute;
	cursor:crosshair;
	opacity:0.0;
	filter:alpha(opacity=0); /* For IE8 and earlier */
}

.other_pieza,
.pieza:hover {
	opacity:0.4;
	filter:alpha(opacity=40); /* For IE8 and earlier */
}

.other_pieza {
	cursor:default;
}

.pieza_select {
	opacity:0.7;
	filter:alpha(opacity=70); /* For IE8 and earlier */
}

.pieza_deactive:hover,
.pieza_deactive {
	cursor:default;
	opacity:0.7;
	filter:alpha(opacity=70); /* For IE8 and earlier */
}

.pieza_sup {
	width:367px;
	height:250px;
	background-color:#FF0000;
}

.pieza_inf {
	margin-top:251px;
	width:367px;
	height:250px;
	background-color:#FF0000;
}

.pieza_c1 {
	width:178px;
	height:250px;
	background-color:#FF0000;
}

.pieza_c2 {
	margin-left:178px;
	width:188px;
	height:250px;
	background-color:#FF0000;
}

.pieza_c3 {
	margin-left:178px;
	margin-top:251px;
	width:188px;
	height:250px;
	background-color:#FF0000;
}

.pieza_c4 {
	margin-top:251px;
	width:178px;
	height:250px;
	background-color:#FF0000;
}

.pieza_11 {
	background:url(../imagenes/piezas/11.png) no-repeat;
	width:31px;
	height:30px;
	margin-top:20px;
	margin-left:145px;
}

.pieza_12 {
	background:url(../imagenes/piezas/12.png) no-repeat;
	width:29px;
	height:29px;
	margin-top:22px;
	margin-left:116px;
}

.pieza_13 {
	background:url(../imagenes/piezas/13.png) no-repeat;
	width:28px;
	height:30px;
	margin-top:35px;
	margin-left:94px;
}

.pieza_14 {
	background:url(../imagenes/piezas/14.png) no-repeat;
	width:30px;
	height:28px;
	margin-top:58px;
	margin-left:82px;
}

.pieza_15 {
	background:url(../imagenes/piezas/15.png) no-repeat;
	width:30px;
	height:28px;
	margin-top:86px;
	margin-left:75px;
}

.pieza_16 {
	background:url(../imagenes/piezas/16.png) no-repeat;
	width:37px;
	height:38px;
	margin-top:116px;
	margin-left:66px;
}

.pieza_17 {
	background:url(../imagenes/piezas/17.png) no-repeat;
	width:37px;
	height:38px;
	margin-top:153px;
	margin-left:59px;
}

.pieza_18 {
	background:url(../imagenes/piezas/18.png) no-repeat;
	width:37px;
	height:38px;
	margin-top:191px;
	margin-left:54px;
}

.pieza_21 {
	background:url(../imagenes/piezas/21.png) no-repeat;
	width:32px;
	height:29px;
	margin-top:20px;
	margin-left:179px;
}

.pieza_22 {
	background:url(../imagenes/piezas/22.png) no-repeat;
	width:28px;
	height:29px;
	margin-top:24px;
	margin-left:210px;
}

.pieza_23 {
	background:url(../imagenes/piezas/23.png) no-repeat;
	width:28px;
	height:29px;
	margin-top:33px;
	margin-left:235px;
}

.pieza_24 {
	background:url(../imagenes/piezas/24.png) no-repeat;
	width:29px;
	height:29px;
	margin-top:58px;
	margin-left:244px;
}

.pieza_25 {
	background:url(../imagenes/piezas/25.png) no-repeat;
	width:30px;
	height:28px;
	margin-top:86px;
	margin-left:254px;
}

.pieza_26 {
	background:url(../imagenes/piezas/26.png) no-repeat;
	width:37px;
	height:38px;
	margin-top:114px;
	margin-left:257px;
}

.pieza_27 {
	background:url(../imagenes/piezas/27.png) no-repeat;
	width:36px;
	height:38px;
	margin-top:152px;
	margin-left:266px;
}

.pieza_28 {
	background:url(../imagenes/piezas/28.png) no-repeat;
	width:37px;
	height:38px;
	margin-top:190px;
	margin-left:274px;
}

.pieza_31 {
	background:url(../imagenes/piezas/31.png) no-repeat;
	width:22px;
	height:28px;
	margin-top:450px;
	margin-left:178px;
}

.pieza_32 {
	background:url(../imagenes/piezas/32.png) no-repeat;
	width:23px;
	height:28px;
	margin-top:446px;
	margin-left:201px;
}

.pieza_33 {
	background:url(../imagenes/piezas/33.png) no-repeat;
	width:31px;
	height:34px;
	margin-top:436px;
	margin-left:220px;
}

.pieza_34 {
	background:url(../imagenes/piezas/34.png) no-repeat;
	width:27px;
	height:29px;
	margin-top:413px;
	margin-left:238px;
}

.pieza_35 {
	background:url(../imagenes/piezas/35.png) no-repeat;
	width:28px;
	height:29px;
	margin-top:384px;
	margin-left:247px;
}

.pieza_36 {
	background:url(../imagenes/piezas/36.png) no-repeat;
	width:36px;
	height:36px;
	margin-top:348px;
	margin-left:252px;
}

.pieza_37 {
	background:url(../imagenes/piezas/37.png) no-repeat;
	width:36px;
	height:36px;
	margin-top:311px;
	margin-left:258px;
}

.pieza_38 {
	background:url(../imagenes/piezas/38.png) no-repeat;
	width:36px;
	height:35px;
	margin-top:275px;
	margin-left:265px;
}

.pieza_41 {
	background:url(../imagenes/piezas/41.png) no-repeat;
	width:22px;
	height:28px;
	margin-top:449px;
	margin-left:155px;
}

.pieza_42 {
	background:url(../imagenes/piezas/42.png) no-repeat;
	width:22px;
	height:28px;
	margin-top:446px;
	margin-left:131px;
}

.pieza_43 {
	background:url(../imagenes/piezas/43.png) no-repeat;
	width:32px;
	height:32px;
	margin-top:439px;
	margin-left:103px;
}

.pieza_44 {
	background:url(../imagenes/piezas/44.png) no-repeat;
	width:26px;
	height:29px;
	margin-top:414px;
	margin-left:90px;
}

.pieza_45 {
	background:url(../imagenes/piezas/45.png) no-repeat;
	width:28px;
	height:29px;
	margin-top:387px;
	margin-left:77px;
}

.pieza_46 {
	background:url(../imagenes/piezas/46.png) no-repeat;
	width:35px;
	height:36px;
	margin-top:350px;
	margin-left:64px;
}

.pieza_47 {
	background:url(../imagenes/piezas/47.png) no-repeat;
	width:36px;
	height:37px;
	margin-top:314px;
	margin-left:56px;
}

.pieza_48 {
	background:url(../imagenes/piezas/48.png) no-repeat;
	width:36px;
	height:36px;
	margin-top:277px;
	margin-left:47px;
}


.pieza_51 {
	background:url(../imagenes/piezas/infantil/51.png) no-repeat;
	width:21px;
	height:16px;
	margin-top:92px;
	margin-left:156px;
}
.pieza_52 {
	background:url(../imagenes/piezas/infantil/52.png) no-repeat;
	width:16px;
	height:14px;
	margin-top:100px;
	margin-left:140px;
}
.pieza_53 {
	background:url(../imagenes/piezas/infantil/53.png) no-repeat;
	width:19px;
	height:19px;
	margin-top:111px;
	margin-left:121px;
}
.pieza_54 {
	background:url(../imagenes/piezas/infantil/54.png) no-repeat;
	width:27px;
	height:26px;
	margin-top:129px;
	margin-left:109px;
}
.pieza_55 {
	background:url(../imagenes/piezas/infantil/55.png) no-repeat;
	width:30px;
	height:27px;
	margin-top:153px;
	margin-left:103px;
}
.pieza_61 {
	background:url(../imagenes/piezas/infantil/61.png) no-repeat;
	width:22px;
	height:16px;
	margin-top:93px;
	margin-left:178px;
}
.pieza_62 {
	background:url(../imagenes/piezas/infantil/62.png) no-repeat;
	width:16px;
	height:15px;
	margin-top:97px;
	margin-left:200px;
}
.pieza_63 {
	background:url(../imagenes/piezas/infantil/63.png) no-repeat;
	width:21px;
	height:19px;
	margin-top:109px;
	margin-left:215px;
}
.pieza_64 {
	background:url(../imagenes/piezas/infantil/64.png) no-repeat;
	width:27px;
	height:26px;
	margin-top:127px;
	margin-left:221px;
}
.pieza_65 {
	background:url(../imagenes/piezas/infantil/65.png) no-repeat;
	width:31px;
	height:29px;
	margin-top:150px;
	margin-left:222px;
}
.pieza_71 {
	background:url(../imagenes/piezas/infantil/71.png) no-repeat;
	width:17px;
	height:14px;
	margin-top:399px;
	margin-left:177px;
}
.pieza_72 {
	background:url(../imagenes/piezas/infantil/72.png) no-repeat;
	width:16px;
	height:14px;
	margin-top:395px;
	margin-left:194px;
}
.pieza_73 {
	background:url(../imagenes/piezas/infantil/73.png) no-repeat;
	width:18px;
	height:18px;
	margin-top:383px;
	margin-left:210px;
}
.pieza_74 {
	background:url(../imagenes/piezas/infantil/74.png) no-repeat;
	width:22px;
	height:31px;
	margin-top:355px;
	margin-left:216px;
}
.pieza_75 {
	background:url(../imagenes/piezas/infantil/75.png) no-repeat;
	width:33px;
	height:35px;
	margin-top:325px;
	margin-left:222px;
}
.pieza_81 {
	background:url(../imagenes/piezas/infantil/81.png) no-repeat;
	width:16px;
	height:13px;
	margin-top:401px;
	margin-left:161px;
}
.pieza_82 {
	background:url(../imagenes/piezas/infantil/82.png) no-repeat;
	width:17px;
	height:14px;
	margin-top:397px;
	margin-left:144px;
}
.pieza_83 {
	background:url(../imagenes/piezas/infantil/83.png) no-repeat;
	width:18px;
	height:19px;
	margin-top:384px;
	margin-left:128px;
}
.pieza_84 {
	background:url(../imagenes/piezas/infantil/84.png) no-repeat;
	width:25px;
	height:31px;
	margin-top:355px;
	margin-left:115px;
}
.pieza_85 {
	background:url(../imagenes/piezas/infantil/85.png) no-repeat;
	width:33px;
	height:34px;
	margin-top:327px;
	margin-left:100px;
}

#overlay_ventana {
	background-color:#000;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	opacity:0.3;
	filter:alpha(opacity=30);
}

.select2-container--open,
.select2-dropdown {
	z-index: 9999999 !important;
}

.ventana,
#ventana {
	display:none;
	position:absolute;
	z-index:10000;
	font-family: Arial, sans-serif;
	font-size: 12px;
	min-width: 350px; /* Dialog will be no smaller than this */
	/*max-width: 650px;*/ /* Dialog will wrap after this width */
	background: #FFF;
	border: none;
	color: #000;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.2);
	overflow:hidden;
	overflow-y: auto;
}

.ventana>table,
#ventana>table {
	padding:20px;
}

.ventana h1,
#ventana_title {
	position: relative;
	text-align:center;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 1.75em;
	color: #333;
	/*background: #CCC url(../images/title.gif) top repeat-x;*/
	background: #FFF;/*url(../imgs/background_tire_small.gif) center no-repeat;*/
	height:auto;
	border: none;
	border-bottom: 2px solid #95d8db;
	cursor: default;
	padding: 10px 0;
	margin: 0em;
}
.ventana_close {
	float: right;
	color: #333;
	font-size: 20px;
	position: absolute;
	top: 5px;
	right: 10px;
	cursor: pointer;
}
.ventana_close:hover {
	color: #CCC;
}

.calendario {
	max-width: 940px;
}
.calendario .ui-datepicker {
	float:left;
	min-height:210px;
}

.calendario .ui-datepicker-header a.ui-datepicker-prev,
.calendario .ui-datepicker-header a.ui-datepicker-next {
	display:none;
}

.month {
	min-width:220px;
	min-height:200px;
	border:solid 1px #CCC;
	float:left;
}

.month_title {
	text-align:center;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 1.75em;
	color: #FFF;
	/*background: #CCC url(../images/title.gif) top repeat-x;*/
	background: #233E6B;/*url(../imgs/background_tire_small.gif) center no-repeat;*/
	height:28px;
	border: solid 1px #FFF;
	border-bottom: solid 1px #233E6B;
	cursor: default;
	padding: 0em;
	margin: 0em
}

.month_day {
	border:solid 1px #CCC;
	padding:3px;
	text-align:right;
	background:#FFF url(img/bgday.png) no-repeat;
	background-position:0px;
	color:#000;
	cursor:default;
	width:23px;
	height:15px;
}
.month_day_enabled {
	cursor:pointer;
}

.day_type_vacaciones {
	background-image: none !important;
	background-color:#e800f4 !important;
}

.month_today {
	background-color:#FFFF00;
}

.month_select_day {
	background-color:#663300;
	color:#FFF;
}

.month_select_midday {
	background-color:#3333CC;
	color:#FFF;
}

.tooltip_date {
	display:none;
	position:absolute;
	min-width:50px;
	min-height:20px;
	background-color:#666666;
	color:#FFFFFF;
	border:solid 1px #000;
	font-size:16px;
}

.contenedor_tratamientos {
	width:250px;
	height:250px;
	border:solid 1px #999;
	overflow-x:hidden;
	overflow-y:auto;
	padding:0px;
	float:left;
	margin-right:10px;
}
.contenedor_tratamientos li {
	list-style:none;
	cursor:pointer;
}

.contenedor_conceptos {
	width:350px;
	height:250px;
	border:solid 1px #999;
	overflow-x:hidden;
	overflow-y:auto;
	padding:0px;
	float:left;
	margin-right:10px;
}
.contenedor_conceptos li {
	list-style:none;
	cursor:pointer;
	min-height:20px;
}

.textarea_concepto {
	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-size:10px;
	border:none;
	width: 99% !important;
	min-height: 60px;
	display: block;
	resize: vertical;
}

.up_down {
	background:url(img/flechas.png) no-repeat;
	background-position: center 0;
	width:40px;
	height:20px;
	border:none;
}

.up_down:hover {
	background-color: transparent;
	border:none;
	/*background-position: center -20px;*/
}

.row_select,
.row_select td {
	background-color:#FFFF00;
}

#user,
#pass {
	background:url(img/text_input.png) no-repeat;
	background-position: center 0;
	border:none;
	width:182px;
	height:39px;
	padding:0px 10px;
}

#btn_entrar {
	background:url(img/btn_entrar.png) no-repeat 0 -50px;
	width:86px;
	height:39px;
	border:none;
}

#btn_entrar button {
	background:none;
	border:none;
	width:86px;
	height:39px;
}

.control {
	clear: both;
}
.inline-agenda{
	display: inline-block;
}
.form-actions-agenda {
	float:right;
	margin:10px auto;
}

textarea{
    width: auto !important;
}

input.upc { 
	text-transform: uppercase; 
}

.select2 {
	width:100% !important;
}

.tabla_login {
	width: 300px;
}
.tabla_login img {
	max-width: 100%;
	height: auto;
}
.tabla_home {
    width: 981px;
}
#controles_disponibilidad {
    display:inline-flex;
}
#controles_disponibilidad div {
	margin-left:20px;
}

#marktime {
	width: 100%;
	height: 1px;
	background-color: red;
	position: absolute;
	z-index: 9999;
	top:0px;
	left:0px;
}

fc table{
    table-layout: auto;
}
.fc-view > table{  
    min-width: 0;
    width: auto;
}
.fc-axis{
    min-width:100px; /*the width of times column*/
    width:100px; /*the width of times column*/
}
.fc-day,.fc-resource-cell,.fc-content-col{
    min-width:300px;
    width:300px;
}
.black {
	color:#000 !important;
}

#paginacion {
	width:320px;
}
.paginacion {
	float:right;
}
.numero_factura_sugerido {
	display: none;
}
.numero_factura_sugerido input {
	width:100px;
}
.rectificando {
	background: yellow !important;
}
.tox-tinymce-aux {
    z-index: 99999999 !important;
}

#paginas .variables{
	border: solid 1px #000;
	min-width: 20px;
	min-height: 20px;
	display: flex;
}

#paginas .item{
	border: solid 1px gray;
	padding: 5px 1px;
	width: fit-content;
	margin:0px 5px 5px 0px;
	cursor:move;
}
#paginas .item .delete{
	cursor:pointer;
	padding-left:10px;
}
#paginas .pagina .item{
position:absolute;
}

#paginas .pagina{
	border: solid 1px #000;
}

.header-export {
	vertical-align: top;
	margin-top: 30px;
	margin-left: 10px;
	border: none !important;
}
.header-export th {
	vertical-align: top;
	border: none !important;
	background-color: #fff;
}
.header-export td {
	vertical-align: top;
	border: none !important;
}

.compact {
	width: 100%;
	border: #000 1px solid;
}
.compact th {
	padding: 2px 5px;
	background-color: #ccc;
	border: #000 1px solid;
}
.compact td {
	padding: 2px 5px;
	border: #000 1px solid;
}

#botonera {
	position: fixed;
	right: 0;
	top: 50%;
	transform: translateY(-50%) translateX(100%);
	background: #fff;
	border: 1px solid #ccc;
	border-right: none;
	padding: 10px;
	z-index: 1000;
	transition: transform 0.5s;
	border-radius: 10px 0 0 10px;
	box-shadow: -2px 0 5px rgba(0,0,0,0.2);
}
#botonera.open {
	transform: translateY(-50%) translateX(0);
}
#botonera_tab {
	position: absolute;
	left: -30px;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	height: 60px;
	background: #fff;
	border: 1px solid #ccc;
	border-right: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px 0 0 10px;
	box-shadow: -2px 0 5px rgba(0,0,0,0.2);
}
#botonera table tr td {
	display: block;
	margin-bottom: 5px;
	text-align: center;
}
#botonera_bottom {
	clear: both;
	margin: 18px 0 8px;
	padding: 10px;
	text-align: right;
	border-top: 1px solid #ddd;
}
#botonera_bottom table {
	display: inline-table;
}
#botonera_bottom table tr td {
	padding-left: 8px;
	text-align: center;
}
@keyframes pulse {
	0% { transform: scale(1); color: inherit; }
	50% { transform: scale(2.5); color: #FF0000; }
	100% { transform: scale(1); color: inherit; }
}
.pulse-animation {
	animation: pulse 3s ease-in-out;
}

#formapago_filtro {
	width: 200px;
}

/* Panel de Notificaciones Flotante */
#notificaciones_panel {
    position: fixed;
    right: 0;
    top: 2px;
    transform: translateX(100%);
    background: #fff;
    border: 1px solid #233E6B;
    border-right: none;
    width: 300px;
    padding: 15px;
    z-index: 10001;
    transition: transform 0.5s ease;
    border-radius: 10px 0 0 10px;
    box-shadow: -2px 2px 10px rgba(0,0,0,0.3);
}

#notificaciones_panel.open {
    transform: translateX(0);
}

#notificaciones_tab {
    position: absolute;
    left: -41px;
    top: 10px;
    width: 40px;
    height: 40px;
    background: #233E6B;
    border: 1px solid #233E6B;
    border-right: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px 0 0 10px;
    color: #fff;
}

#notif_badge {
    position: absolute;
    top: -5px;
    right: 30px;
    background-color: #FF0000;
    color: #FFFFFF;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

#notificaciones_panel h3 {
    margin-top: 0;
    font-size: 14px;
    color: #233E6B;
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}

.notif_toggle_container {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
}

#notificaciones_form {
    display: none;
}

#notificaciones_form.active {
    display: block;
}

.select2-user-result {
    display: flex;
    align-items: center;
}

.user-status-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 8px;
    display: inline-block;
}

.status-online {
    background-color: #3ebf10;
}

.status-offline {
    background-color: #ccc;
}

.user-type-label {
    font-size: 10px;
    color: #999;
    margin-left: 5px;
}

#notif_mensaje {
    width: 93% !important;
    margin-top: 10px;
    min-height: 80px;
}

#btn_enviar_notif {
    margin-top: 10px;
    width: 100%;
    background-color: #233E6B;
}

#btn_enviar_notif:hover {
    background-color: #1a2f52;
}

#notificaciones_lista {
    margin-top: 15px;
    max-height: 250px;
    overflow-y: auto;
    border-top: 1px solid #eee;
    padding-top: 10px;
}

.notif_item {
    padding: 8px;
    border-bottom: 1px solid #f5f5f5;
    cursor: pointer;
    transition: background 0.2s;
}

.notif_item:hover {
    background-color: #f9f9f9;
}

.notif_item .notif_remitente {
    font-weight: bold;
    color: #233E6B;
    display: block;
    font-size: 11px;
}

.notif_item .notif_texto {
    display: block;
    color: #666;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 10px;
}

.notif_item .notif_fecha {
    font-size: 9px;
    color: #999;
}

/* Modern Gallery and Image Management Styles */
.imagenes-main-container {
    display: flex;
    gap: 20px;
    padding: 20px;
    align-items: flex-start;
}

.gallery-section {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px;
}

.image-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    position: relative;
    border: 1px solid #eee;
}

.image-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px rgba(0,0,0,0.15);
}

.image-card-thumb {
    width: 100%;
    height: 150px;
    background-size: cover;
    background-position: center;
    background-color: #f8f9fa;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.image-card-thumb i {
    font-size: 50px;
    color: #dee2e6;
}

.image-card-info {
    padding: 12px;
}

.image-card-date {
    font-weight: bold;
    color: #233E6B;
    font-size: 12px;
    margin-bottom: 5px;
    display: block;
}

.image-card-desc {
    color: #666;
    font-size: 11px;
    line-height: 1.4;
    max-height: 4.2em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.image-card-actions {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 5px;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.image-card:hover .image-card-actions {
    opacity: 1;
}

.image-action-btn {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255,255,255,0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #333;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.image-action-btn:hover {
    background: #fff;
    color: #233E6B;
}

.image-action-btn.delete:hover {
    color: #dc3545;
}

.form-section {
    width: 335px;
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    position: sticky;
    top: 20px;
}

.form-section h2 {
    font-size: 18px;
    color: #233E6B;
    margin-top: 0;
    margin-bottom: 20px;
    border-bottom: 2px solid #95d8db;
    padding-bottom: 10px;
}

.modern-form-group {
    margin-bottom: 15px;
}

.modern-form-group label {
    display: block;
    margin-bottom: 5px;
    color: #444;
}

.modern-form-group input[type="text"],
.modern-form-group textarea {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    box-sizing: border-box;
    font-family: inherit;
    font-size: 13px;
}

.modern-form-group textarea {
    min-height: 100px;
}

.modern-btn-container {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.btn-modern {
    flex: 1;
    padding: 10px;
    border: none;
    border-radius: 5px;
    font-weight: bold;
    transition: background 0.3s ease;
    text-transform: uppercase;
    font-size: 11px;
}

.btn-primary-modern {
    background: #233E6B;
    color: #fff;
}

.btn-primary-modern:hover {
    background: #1a2f52;
}

.btn-secondary-modern {
    background: #6c757d;
    color: #fff;
}

.btn-secondary-modern:hover {
    background: #5a6268;
}

#preview_container {
    border: 2px dashed #ddd;
    border-radius: 8px;
    padding: 10px;
    text-align: center;
    background: #f8f9fa;
    margin-top: 10px;
}

#image_preview {
    max-width: 100%;
    max-height: 200px;
    border-radius: 4px;
}

.empty-gallery {
    grid-column: 1 / -1;
    text-align: center;
    padding: 50px;
    background: #fff;
    border-radius: 10px;
    color: #999;
}

.empty-gallery i {
    font-size: 60px;
    margin-bottom: 20px;
    display: block;
}

/* ===== GESTOR DE ARCHIVOS ===== */

.archivos-list-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.archivo-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.08);
    border: 1px solid #eee;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 14px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    position: relative;
}

.archivo-card:hover {
    box-shadow: 0 6px 14px rgba(0,0,0,0.13);
    transform: translateY(-2px);
}

.archivo-card-icon {
    width: 54px;
    height: 54px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    cursor: pointer;
    gap: 2px;
}

.archivo-card-icon i {
    font-size: 24px;
    color: #fff;
}

.archivo-ext {
    font-size: 9px;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.5px;
    opacity: 0.9;
}

/* Colores por tipo */
.archivo-icon-pdf     { background: #e74c3c; }
.archivo-icon-excel   { background: #27ae60; }
.archivo-icon-csv     { background: #16a085; }
.archivo-icon-word    { background: #2980b9; }
.archivo-icon-txt     { background: #7f8c8d; }
.archivo-icon-zip     { background: #e67e22; }
.archivo-icon-img     { background: #8e44ad; }
.archivo-icon-generic { background: #95a5a6; }

.archivo-card-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.archivo-card-name {
    font-weight: bold;
    font-size: 13px;
    color: #333;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.archivo-card-actions {
    display: flex;
    gap: 6px;
    opacity: 0;
    transition: opacity 0.2s ease;
    flex-shrink: 0;
}

.archivo-card:hover .archivo-card-actions {
    opacity: 1;
}

.archivo-card-actions a.image-action-btn {
    text-decoration: none;
    color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255,255,255,0.9);
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.archivo-card-actions a.image-action-btn:hover {
    color: #233E6B;
    background: #fff;
}
.nowrap{
    white-space: nowrap;
}

#paciente_filtro,
#paciente_filtro_j,
#paciente_filtro_recall,
#paciente_filtro_notas_laboratorio,
#paciente_aditamento_filtro,
#paciente_laboratorio_filtro,
#paciente_libro_caja,
#paciente_recibo,
#paciente_justificante_nombre,
#paciente_search_text {
    min-width: 240px;
    height: 34px;
    padding: 8px 10px;
    border: 1px solid #bbb;
    border-radius: 7px;
    box-sizing: border-box;
}
