/*
	Estilos del sistema SUDI V4
	Elaborado por: Hector Hugo Acosta Garza
	Fecha: Julio 2019

	Menú

	A) FONTS.- Tipografías del sistema
	B) GENERAL.- html & body
	C) LOGIN
	D) INFO CONTAINER
	E) MAIN MENU
	F) LIST
	G) SUB CONTROLS
	H) CURTAIN
	I) MANAGE
	J) R-PANEL / COMMENTS
	K) REPORTS
*/

/* A) FONTS */

@font-face {
    font-family: 'sf_pro_textbold';
    src: url('../_fonts/sf-pro-text-bold-webfont.woff2') format('woff2'),
url('../_fonts/sf-pro-text-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'sf_pro_textmedium';
    src: url('../_fonts/sf-pro-text-medium-webfont.woff2') format('woff2'),
url('../_fonts/sf-pro-text-medium-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'sf_pro_textregular';
    src: url('../_fonts/sf-pro-text-regular-webfont.woff2') format('woff2'),
url('../_fonts/sf-pro-text-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'sf_pro_textsemibold';
    src: url('../_fonts/sf-pro-text-semibold-webfont.woff2') format('woff2'),
url('../_fonts/sf-pro-text-semibold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'sf_pro_textthin';
    src: url('../_fonts/sf-pro-text-thin-webfont.woff2') format('woff2'),
url('../_fonts/sf-pro-text-thin-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/* SUDI_ICONS */
.icon { display:inline-flex; font-size: .9em; align-items: center; }

.icon-sudi-2x { font-size:1.8em !important; }

/* B) GENERAL */

.radius_circle { border-radius: 50%; }
.radius_round { border-radius: 10%; }

/* COLORES Y TAMAÑOS DE LETRA */
.bg_red { background-color: var(--color-red) !important; } .bg_green { background-color: var(--color-green)  !important; } .bg_blue { background-color: var(--color-blue)  !important; } .bg_white { background-color: var(--color-white)  !important; } .bg_yellow { background-color: var(--color-yellow)  !important; } .bg_purple { background-color: var(--color-purple)  !important; }
.font_red { color: var(--color-red) !important; } .font_green { color: var(--color-green) !important; } .font_blue { color: var(--color-blue) !important; } .font_yellow { color: var(--color-yellow) !important; } .font_purple { color: var(--color-purple) !important; } .font_white { color: #FFF !important; } .font_black { color: #000 !important; }
.font_70 { font-size: 0.7em !important; } .font_80 { font-size: 0.8em !important; } .font_90 { font-size: 0.9em !important; } .font_100 { font-size: 1em !important; } .font_110 { font-size: 1.1em !important; } .font_120 { font-size: 1.2em !important; } .font_130 { font-size: 1.3em !important; } .font_140 { font-size: 1.4em !important; } .font_150 { font-size: 1.5em !important; } .font_160 { font-size: 1.6em !important; } .font_170 { font-size: 1.7em !important; } .font_180 { font-size: 1.8em !important; } .font_190 { font-size: 1.9em !important; } .font_200 { font-size: 2em !important; }
/* Loading */

		.loader_wrapper {
			margin: auto;
			text-align: center;
			display: block;
			width: 100%;
			}

		.sudi_loading {
		  	display: inline-block;
			/* padding: 30px 0px; */

		}

		.sudi_loading:before {
			content: " ";
			display: block;
			width: 30px;
			height: 30px;
			margin: 8px;
			border-radius: 50%;
			border: 6px solid #30b297;
			border-color: #cacaca transparent #cacaca transparent;
			animation: sudi_loading_a 1.5s linear infinite;

		}

		@keyframes sudi_loading_a {
		  0% {
			transform: rotate(0deg);
		  }
		  100% {
			transform: rotate(360deg);
		  }
		}

/* SUDI BTN */

.align-left { justify-content: start; }
.align-center { justify-content: center; }
.align-right { justify-content: end;}

.sudi_btn_container{ display: flex; justify-content: center; margin: 10px auto; flex-direction: column ; }
.sudi_std_btn {
	display: flex;
	height: 50px;
    border-radius: 5px;
    padding: 0px 10px;
    background-color: var(--bg-main-low);
    color: var(--text-main-high);
    cursor: pointer;
    align-content: center;
    margin: 5px auto;
	align-items: center;
	width: 90%;
}
	.sudi_std_btn i {
		display: inline-flex;
		opacity: .5;
	font-size: 1.5em !important;
	flex: 0 0 20px;
	margin: 0px 10px 0px 0px;
	}

	.sudi_std_btn:hover{
		background-color: var(--bg-main-medium);
	 color: var(--text-light-alpha);
	}

*:not(ul):not(ol):not(li) { margin:0px; padding:0px; -webkit-tap-highlight-color:transparent; }
/*ul, li { list-style:none; }*/
#silence_ajax { display:none !important; } /*<-- Solo para cargar contenido de forma oculta*/
#msg_sudi {
	z-index: 3000;
    position: fixed;
	font-size: 1.15em;
    bottom: 15px;
    left: 6%;
    width: 88%;
    height: auto;
    padding: 15px 0px;
    background-color: var(--color-blue);
    color: var(--text-light-alpha);
    transition: bottom .5s ease;
    border-radius: 25px;
}

	#msg_sudi.hidden { bottom:-100px; }
	#msg_sudi.none { display:none; }
	#msg_sudi p{
		font-size:1.5;
		margin:0px 30px;
		text-align: center;
	}

	#msg_sudi span {
		position: absolute;
		left: 20px;
		top: 15%;
		font-size: 1.3em;
	}

html, body { height:100%; min-height:100% !important; max-width: 100%; overflow-x: hidden; }
body { font-family: var(--font-regular); background-color: var(--bg-body); overflow-y: scroll; /* has to be scroll, not auto */ -webkit-overflow-scrolling: touch; }
strong { font-family: var(--font-bold); }
#state_bar { display:none; position:fixed; }

#main_blur_container {
	height: inherit;
	/*padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);*/
	/*box-sizing: border-box;*/
}

	/* JQUERY-UI */

	.ui-widget,
	.ui-widget input,
	.ui-widget select,
	.ui-widget textarea,
	.ui-widget button {
		font-family: var(--font-regular);
	}

	.ui-widget-content {
		color: var(--text-main-high);
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
	}

	.ui-widget-header {
		color: var(--text-main-low);
		background-color: var(--bg-main-high);
		border: var(--border-main-high) solid thin;
	}

	.ui-state-default,
	.ui-widget-content .ui-state-default,
	.ui-widget-header .ui-state-default {
		color: var(--text-main-high);
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
		box-sizing: border-box;
		transition: all .18s ease;
	}
		.ui-state-default:hover,
		.ui-state-default:focus {
			color: var(--text-main-high);
			background-color: var(--bg-main-low);
			border-color: var(--border-main-low);
		}

	.ui-state-active,
	.ui-widget-content .ui-state-active,
	.ui-widget-header .ui-state-active {
		color: var(--text-main-low);
		background-color: var(--bg-main-high);
		border: var(--border-main-high) solid thin;
		background-image: none;
	}

	.ui-state-highlight,
	.ui-widget-content .ui-state-highlight,
	.ui-widget-header .ui-state-highlight {
		color: var(--text-main-high);
		background-color: var(--bg-main-low);
		border: var(--border-main-low) solid thin;
		background-image: none;
	}

	.ui-state-error,
	.ui-widget-content .ui-state-error,
	.ui-widget-header .ui-state-error,
	.ui-state-error-text,
	.ui-widget-content .ui-state-error-text,
	.ui-widget-header .ui-state-error-text {
		color: var(--color-red);
		background-color: var(--bg-light);
		border-color: var(--color-red);
		background-image: none;
	}

	.ui-widget-overlay {
		background-color: var(--bg-main-high);
		opacity: .45;
	}

	.ui-dialog {
		padding: 0;
		border: var(--border-gray-low) solid thin;
		border-radius: 14px;
		background-color: var(--bg-light);
		box-shadow: none;
		overflow: hidden;
	}
		.ui-dialog .ui-dialog-titlebar {
			padding: 14px 18px;
			border: none;
			border-bottom: var(--border-main-low) solid thin;
			background-color: var(--bg-main-low);
			color: var(--text-main-high);
		}
		.ui-dialog .ui-dialog-title {
			margin: 0;
			font-family: var(--font-medium);
			font-size: 1.05em;
		}
		.ui-dialog .ui-dialog-content {
			padding: 18px;
			background-color: var(--bg-light);
		}
		.ui-dialog .ui-dialog-buttonpane {
			margin-top: 0;
			padding: 14px 18px 18px;
			border: none;
			border-top: var(--border-gray-low) solid thin;
			background-color: var(--bg-light);
		}
		.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
			display: flex;
			flex-wrap: wrap;
			justify-content: flex-end;
			gap: 10px;
		}
		.ui-dialog .ui-dialog-buttonpane button {
			height: 42px;
			padding: 0 14px;
			margin: 0;
			border-radius: 10px;
			background-color: var(--bg-light);
			color: var(--text-main-high);
			border: var(--border-main-low) solid thin;
			border-bottom-color: var(--border-main-medium);
			font-family: var(--font-medium);
			transition: all .18s ease;
		}
			.ui-dialog .ui-dialog-buttonpane button:hover {
				background-color: var(--bg-main-high);
				color: var(--text-main-low);
				border-color: var(--border-main-high);
			}

	.ui-dialog-titlebar-close { display:none !important; }
	.deleteClassBtn { background-color: var(--color-red); color: var(--text-main-low);}

	.ui-autocomplete,
	.ui-menu {
		z-index: 3000 !important;
		overflow: auto;
		max-height: 260px;
		padding: 8px;
		border: var(--border-gray-low) solid thin;
		border-radius: 12px;
		background-color: var(--bg-light);
	}
		.ui-menu .ui-menu-item {
			margin: 0;
			padding: 0;
			border-radius: 8px;
			overflow: hidden;
		}
		.ui-menu .ui-menu-item-wrapper,
		.ui-menu .ui-menu-item > div,
		.ui-menu .ui-menu-item > a {
			display: block;
			padding: 10px 12px;
			color: var(--text-main-high);
		}
		.ui-menu .ui-state-focus,
		.ui-menu .ui-state-active {
			margin: 0;
			color: var(--text-main-low) !important;
			border: none;
			border-left: var(--border-main-high) solid 2px;
		}

	.ui-tooltip {
		padding: 10px 12px;
		max-width: 320px;
		border: var(--border-main-high) solid thin;
		border-radius: 10px;
		background-color: var(--bg-main-high);
		color: var(--text-main-low);
		box-shadow: none;
	}
		.ui-tooltip .ui-tooltip-content {
			font-family: var(--font-regular);
			line-height: 1.45;
		}

	.ui-datepicker {
		width: 18.5em;
		padding: 10px;
		border: var(--border-gray-low) solid thin;
		border-radius: 14px;
		background-color: var(--bg-light);
	}
		.ui-datepicker .ui-datepicker-header {
			padding: 0 0 10px;
			border: none;
			border-bottom: var(--border-gray-low) solid thin;
			background: none;
		}
		.ui-datepicker .ui-datepicker-prev,
		.ui-datepicker .ui-datepicker-next {
			top: 1px;
			width: 32px;
			height: 32px;
			border-radius: 8px;
			z-index: 1;
		}
			.ui-datepicker .ui-datepicker-prev-hover,
			.ui-datepicker .ui-datepicker-next-hover {
				top: 1px;
				border: none;
				background-color: var(--bg-main-low);
			}
		.ui-datepicker .ui-datepicker-title {
			margin: 0 38px;
			min-height: 32px;
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 6px;
			position: relative;
			z-index: 2;
			font-family: var(--font-medium);
			color: var(--text-main-high);
		}
			.ui-datepicker .ui-datepicker-title select {
				width: auto;
				max-width: calc(50% - 3px);
				height: 32px;
				padding: 0 8px;
				border-radius: 8px;
				background-color: var(--bg-light);
				border: var(--border-gray-low) solid thin;
				color: var(--text-main-high);
				position: relative;
				z-index: 3;
				pointer-events: auto;
			}
		.ui-datepicker table {
			margin: 10px 0 0;
		}
		.ui-datepicker th {
			padding: 8px 2px;
			color: var(--text-main-medium);
			font-family: var(--font-medium);
			font-size: .9em;
			text-transform: uppercase;
		}
		.ui-datepicker td {
			padding: 2px;
		}
			.ui-datepicker td span,
			.ui-datepicker td a {
				padding: 8px 6px;
				border-radius: 8px;
				text-align: center;
			}
			.ui-datepicker td a:hover {
				color: var(--text-main-high);
				background-color: var(--bg-main-low);
				border-color: var(--border-main-low);
			}
			.ui-datepicker td.ui-datepicker-today a {
				border: var(--border-main-low) solid thin;
				background-color: var(--bg-main-low);
				color: var(--text-main-high);
			}
			.ui-datepicker td.ui-datepicker-current-day a {
				color: var(--text-main-low);
				background-color: var(--bg-main-high);
				border-color: var(--border-main-high);
			}
		.ui-datepicker .ui-datepicker-buttonpane {
			margin-top: 10px;
			padding: 10px 0 0;
			border-top: var(--border-gray-low) solid thin;
			background: none;
		}
			.ui-datepicker .ui-datepicker-buttonpane button {
				height: 38px;
				padding: 0 12px;
				margin: 0 0 0 8px;
				border-radius: 9px;
				background-color: var(--bg-light);
				color: var(--text-main-high);
				border: var(--border-main-low) solid thin;
				border-bottom-color: var(--border-main-medium);
				font-family: var(--font-medium);
				transition: all .18s ease;
			}
				.ui-datepicker .ui-datepicker-buttonpane button:hover {
					background-color: var(--bg-main-high);
					color: var(--text-main-low);
					border-color: var(--border-main-high);
				}

		.pointer { cursor: pointer; }
		.ccopy { cursor: copy; }
		.help { cursor: help; }

	.anchor { text-decoration: underline; color: var(--color-blue) !important; }
		.tleft { text-align: left !important; }
		.tright { text-align: right !important; }
		.tcenter { text-align: center !important; }
		.tjustify { text-align: justify !important; }
		.tupper { text-transform: uppercase !important; }
		.tlower { text-transform: lowercase !important; }
		.tcapitalize { text-transform: capitalize !important; }
	.elipsis {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

/* INPUTS */
	input:focus,
	select:focus,
	textarea:focus,
	button:focus {
		outline: none;
	}

	input, select, textarea, button {
		/*box-sizing:border-box;
		-moz-appearance: none;
		-webkit-appearance: none;
		appearance: none;*/
	}

	/* CKEDITOR / TEXTAREA ENRIQUECIDO
	   Ajustamos proporciones de lectura para un look más limpio:
	   menos separación entre títulos, listas menos abiertas y tablas más compactas. */
	.ck.ck-editor {
		border: var(--border-gray-low) solid thin;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0px 10px 10px 0px;
		background-color: var(--bg-light);
		overflow: hidden;
		transition: all .2s ease;
	}

	.ck.ck-editor:focus-within {
		border-color: var(--border-main-low);
		border-left-color: var(--border-main-high);
		background-color: var(--bg-light);
	}

	.ck.ck-editor .ck.ck-toolbar {
		padding: 8px 10px;
		border: none;
		border-bottom: var(--border-main-low) solid thin;
		background-color: var(--bg-main-low);
		gap: 4px;
	}

	.ck.ck-editor .ck.ck-toolbar__separator {
		margin: 2px 4px;
		background-color: var(--border-gray-low);
	}

	.ck.ck-editor .ck.ck-button,
	.ck.ck-editor .ck.ck-list__item .ck-button,
	.ck.ck-balloon-panel .ck.ck-button,
	.ck.ck-dropdown .ck.ck-button {
		min-height: 34px;
		border-radius: 8px;
		border: var(--border-gray-low) solid thin;
		background-color: var(--bg-light);
		color: var(--text-main-high);
		box-shadow: none;
		transition: all .18s ease;
	}

	.ck.ck-editor .ck.ck-button:hover,
	.ck.ck-editor .ck.ck-button.ck-on,
	.ck.ck-editor .ck.ck-button:active,
	.ck.ck-editor .ck.ck-dropdown .ck-button:hover,
	.ck.ck-balloon-panel .ck.ck-button:hover,
	.ck.ck-balloon-panel .ck.ck-list__item .ck-button:hover {
		border-color: var(--border-main-low);
		background-color: var(--bg-main-low);
		color: var(--text-main-high);
		box-shadow: none;
	}

	.ck.ck-editor .ck.ck-button.ck-on,
	.ck.ck-editor .ck.ck-dropdown.ck-on .ck.ck-button,
	.ck.ck-balloon-panel .ck.ck-button.ck-on {
		border-color: var(--border-main-high);
		background-color: var(--bg-main-high);
		color: var(--text-main-low);
	}

	.ck.ck-editor .ck.ck-button.ck-disabled,
	.ck.ck-editor .ck.ck-button:disabled,
	.ck.ck-balloon-panel .ck.ck-button.ck-disabled {
		opacity: .55;
		background-color: var(--bg-light);
	}

	.ck.ck-editor .ck.ck-button .ck-icon,
	.ck.ck-balloon-panel .ck.ck-button .ck-icon,
	.ck.ck-dropdown .ck.ck-button .ck-icon {
		color: inherit;
	}

	.ck.ck-editor .ck.ck-dropdown__panel,
	.ck.ck-balloon-panel,
	.ck.ck-reset_all.ck-powered-by-balloon,
	.ck.ck-list,
	.ck.ck-input,
	.ck.ck-labeled-field-view,
	.ck.ck-form {
		border-color: var(--border-gray-low) !important;
		border-radius: 10px;
		background-color: var(--bg-light);
		box-shadow: none !important;
		color: var(--text-main-high);
	}

	.ck.ck-dropdown__panel,
	.ck.ck-balloon-panel {
		overflow: hidden;
	}

	/* Los paneles contextuales de CKEditor se montan fuera del manage.
	   Deben quedar sobre la cortina de SUDI (1002), sin alcanzar modales criticos. */
	.ck.ck-balloon-panel,
	.ck.ck-dropdown__panel,
	.ck.ck-list {
		z-index: 1100 !important;
	}

	.ck.ck-editor .ck.ck-dropdown .ck-button.ck-dropdown__button,
	.ck.ck-balloon-panel .ck.ck-dropdown .ck-button.ck-dropdown__button {
		padding-right: 10px;
	}

	.ck.ck-input,
	.ck.ck-input-text,
	.ck.ck-labeled-field-view .ck.ck-input {
		min-height: 38px;
		padding: 0 12px;
		border: var(--border-gray-low) solid thin !important;
		border-radius: 8px;
		background-color: var(--bg-light) !important;
		color: var(--text-main-high) !important;
	}

	.ck.ck-input:focus,
	.ck.ck-input-text:focus,
	.ck.ck-labeled-field-view .ck.ck-input:focus {
		border-color: var(--border-main-low) !important;
		box-shadow: none !important;
		background-color: var(--bg-main-low) !important;
	}

	.ck.ck-label,
	.ck.ck-labeled-field-view .ck.ck-label {
		color: var(--text-main-medium) !important;
		font-family: var(--font-medium);
	}

	.ck.ck-editor .ck.ck-toolbar .ck.ck-toolbar__items {
		flex-wrap: wrap;
	}

	.ck.ck-editor__main > .ck-editor__editable,
	.ck.ck-content,
	.sudi_rich_text_view {
		color: var(--text-main-high);
		font-family: var(--font-regular);
		font-size: 1.02em;
		line-height: 1.58;
	}

	.ck.ck-editor__main > .ck-editor__editable {
		padding: 14px 22px;
		border: var(--border-gray-low) solid thin !important;
		border-radius: 8px;
		background-color: var(--bg-light);
	}

	.ck.ck-editor__main > .ck-editor__editable.ck-focused {
		border-color: var(--border-main-low) !important;
		box-shadow: none !important;
		background-color: var(--bg-light);
	}

	.ck.ck-sticky-panel .ck-sticky-panel__content {
		border: none !important;
		box-shadow: none !important;
	}

	.ck.ck-list {
		padding: 6px;
	}

	.ck.ck-list .ck.ck-list__item .ck-button {
		min-height: 32px;
		padding: 6px 10px;
		border: none;
		background-color: transparent;
		border-radius: 8px;
	}

	.ck.ck-balloon-panel .ck.ck-toolbar,
	.ck.ck-form .ck.ck-toolbar {
		border: none;
		border-bottom: var(--border-gray-low) solid thin;
		background-color: var(--bg-light);
	}

	.ck.ck-balloon-panel .ck.ck-toolbar + .ck.ck-toolbar,
	.ck.ck-form .ck.ck-toolbar + .ck.ck-toolbar {
		border-top: var(--border-gray-low) solid thin;
	}

	.ck.ck-editor__top .ck.ck-toolbar,
	.ck.ck-balloon-panel .ck.ck-toolbar,
	.ck.ck-form {
		color: var(--text-main-high);
	}

	.ck.ck-editor__main {
		background-color: var(--bg-light);
		border-top: var(--border-gray-low) solid thin;
		padding: 1px;
	}

	.ck.ck-word-count {
		display: flex;
		justify-content: flex-end;
		gap: 12px;
		padding: 8px 2px 0;
		color: var(--text-main-medium);
		font-size: .82em;
		font-family: var(--font-medium);
	}

	.ck-content > *:first-child,
	.sudi_rich_text_view > *:first-child {
		margin-top: 0;
	}

	.ck-content > *:last-child,
	.sudi_rich_text_view > *:last-child {
		margin-bottom: 0;
	}

	.ck-content h1,
	.ck-content h2,
	.ck-content h3,
	.ck-content h4,
	.sudi_rich_text_view h1,
	.sudi_rich_text_view h2,
	.sudi_rich_text_view h3,
	.sudi_rich_text_view h4 {
		color: var(--text-main-high);
		font-family: var(--font-medium);
		letter-spacing: -0.02em;
		line-height: 1.18;
		margin: 1.2em 0 0.38em;
	}

	.ck-content h1,
	.sudi_rich_text_view h1 {
		font-size: 2.05em;
	}

	.ck-content h2,
	.sudi_rich_text_view h2 {
		font-size: 1.5em;
	}

	.ck-content h3,
	.sudi_rich_text_view h3 {
		font-size: 1.18em;
	}

	.ck-content h4,
	.sudi_rich_text_view h4 {
		font-size: 1.05em;
	}

	.ck-content p,
	.sudi_rich_text_view p {
		margin: 0 0 0.72em;
	}

	.ck-content p + h1,
	.ck-content p + h2,
	.ck-content p + h3,
	.ck-content p + h4,
	.ck-content ul + h1,
	.ck-content ul + h2,
	.ck-content ul + h3,
	.ck-content ul + h4,
	.ck-content ol + h1,
	.ck-content ol + h2,
	.ck-content ol + h3,
	.ck-content ol + h4,
	.ck-content figure + h1,
	.ck-content figure + h2,
	.ck-content figure + h3,
	.ck-content figure + h4,
	.ck-content blockquote + h1,
	.ck-content blockquote + h2,
	.ck-content blockquote + h3,
	.ck-content blockquote + h4,
	.sudi_rich_text_view p + h1,
	.sudi_rich_text_view p + h2,
	.sudi_rich_text_view p + h3,
	.sudi_rich_text_view p + h4,
	.sudi_rich_text_view ul + h1,
	.sudi_rich_text_view ul + h2,
	.sudi_rich_text_view ul + h3,
	.sudi_rich_text_view ul + h4,
	.sudi_rich_text_view ol + h1,
	.sudi_rich_text_view ol + h2,
	.sudi_rich_text_view ol + h3,
	.sudi_rich_text_view ol + h4,
	.sudi_rich_text_view figure + h1,
	.sudi_rich_text_view figure + h2,
	.sudi_rich_text_view figure + h3,
	.sudi_rich_text_view figure + h4,
	.sudi_rich_text_view blockquote + h1,
	.sudi_rich_text_view blockquote + h2,
	.sudi_rich_text_view blockquote + h3,
	.sudi_rich_text_view blockquote + h4 {
		margin-top: 1.05em;
	}

	.ck-content ul,
	.ck-content ol,
	.sudi_rich_text_view ul,
	.sudi_rich_text_view ol {
		margin: 0.45em 0 0.85em;
		padding-left: 1.35em;
	}

	.ck-content li,
	.sudi_rich_text_view li {
		margin: 0.14em 0;
		padding-left: 0.08em;
	}

	.ck-content li > ul,
	.ck-content li > ol,
	.sudi_rich_text_view li > ul,
	.sudi_rich_text_view li > ol {
		margin-top: 0.22em;
		margin-bottom: 0.22em;
		padding-left: 1.15em;
	}

	.ck-content blockquote,
	.sudi_rich_text_view blockquote {
		margin: 0.95em 0;
		padding: 0.25em 0 0.25em 1em;
		border-left: 3px solid var(--bg-main-medium);
		color: var(--text-gray-high);
		font-style: italic;
	}

	.ck-content a,
	.sudi_rich_text_view a {
		text-decoration: underline;
		text-underline-offset: 0.12em;
	}

	.ck-content figure.table,
	.sudi_rich_text_view figure.table {
		margin: 1em 0 1.15em;
	}

	.ck-content figure.table table,
	.sudi_rich_text_view figure.table table,
	.sudi_rich_text_view table {
		width: 100%;
		border-collapse: collapse;
		font-size: 0.95em;
	}

	.ck-content figure.table th,
	.ck-content figure.table td,
	.sudi_rich_text_view figure.table th,
	.sudi_rich_text_view figure.table td,
	.sudi_rich_text_view table th,
	.sudi_rich_text_view table td {
		padding: 9px 11px;
		border: 1px solid var(--border-gray-medium);
		vertical-align: top;
	}

	.ck-content figure.table th,
	.sudi_rich_text_view figure.table th,
	.sudi_rich_text_view table th {
		background: var(--bg-gray-low);
		font-family: var(--font-medium);
	}

	/* CHECKBOX y RADIO */

	/* CheckBox and Radio Buttom */
	.aCheckbox {
		width: 100%;
		padding: 10px 12px 12px;
		border: var(--border-gray-low) solid thin;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0px 10px 10px 0px;
		background-color: var(--bg-light);
		box-sizing: border-box;
	}
		.aCheckbox .check_label {
			display:inline-flex;
			align-items: center;
			margin:5px 10px 5px 0px;
			color: var(--text-gray-high);
			font-family: var(--font-regular);
			cursor: pointer;
		}

	input[type="checkbox"], input[type="radio"] { display:none !important;  }

	/* Checklists de CKEditor y Paper no usan los controles personalizados de SUDI. */
	.ck-content .todo-list .todo-list__label > input[type="checkbox"] {
		display: inline-block !important;
	}
	.aCheckbox .errorMessage {
		position: static;
		margin-top: 8px;
		padding-right: 6px;
		text-align: left;
		line-height: 1.3;
	}

	.checkboxRequiredState .aCheckbox .checkboxRequiredMsg,
	.checkboxMinSelectionsState .aCheckbox .checkboxMinSelectionsMsg,
	.checkboxMaxSelectionsState .aCheckbox .checkboxMaxSelectionsMsg,
	.radioRequiredState .aCheckbox .radioRequiredMsg,
	.radioInvalidState .aCheckbox .radioInvalidMsg {
		display: block;
	}

		input[type="checkbox"] + label span, input[type="radio"] + label span {
			transition:all .2s ease;
			box-sizing:border-box;
			vertical-align:middle;
			display:inline-block;
			margin:-2px 5px 0 0;
			cursor:pointer;
			height:18px;
			width:18px;
			background-color: var(--bg-light);
			border: var(--border-main-low) solid thin;
		}

		input[type="checkbox"] + label span{ border-radius:5px; }
		input[type="radio"] + label span { border-radius:50%; }

	.input_required { border:var(--color-red) solid 1px !important; }

	input[type="checkbox"] + label, input[type="radio"] + label { font-size:.9em; }

		input[type="checkbox"]:checked + label span, input[type="radio"]:checked + label span {
		  background-color: var(--bg-main-high);
		  border: var(--border-main-high) solid thin !important;
		}

		input[type=color] {
			background-color: transparent;
			border: none;
		}

/* C) LOGIN */

	#sudi_main_login {
		position: relative;
		display: flex;
		height: inherit;
		min-height: 100%;
		align-items: center;
	}
		#login_form_container {
			display: block;
			width: 350px;
			height: auto;
			margin: 0px auto 0px auto;
			box-sizing: border-box;
		}

			#login_main_logo{
				display: block;
				width: 320px;
				height: 160px;
				background-color: var(--logo-bg);
				margin: 0px auto 15px auto;
				border-radius: 20px;
				background-image: var(--logo-main);
					background-position: center;
					background-repeat: no-repeat;
					background-size: contain;
			}

			#login_main_welcome{
				color:var(--text-main-low);
				text-align: center;
				display: block;
				font-size: 1em;
				margin: 15px 0px 15px 0px;
			}
			#login_main_sign {
				font-size: 1.5em;
				color: var(--text-light);
				text-align: center;
				margin: 15px 0px 7px 0px;
			}

			.input_password_box input:-webkit-autofill,
			.input_password_box input:-webkit-autofill:hover,
			.input_password_box input:-webkit-autofill:focus,
			.input_password_box input:-webkit-autofill:active {
				-webkit-appearance: none !important;
			}

			#login_password.closed {
				max-height: 0px;
				transition: max-height .5s ease-out;
			}
			.input_password_box{
				display: block;
				position: relative;
				border-radius: 5px;
				margin: 7px 0px 13px 0px;
				overflow: hidden;
				font-size: 1.1em;
			}

				.log_i_con {
					position: absolute;
					left: 0px;
					top: 0px;
					background-color: var(--bg-main-medium);
					width: 60px;
					height: 100%;
					display: flex;
					justify-content: center;
					align-items: center;
				}

					.log_i_con i {
						color: var(--text-light);
						font-size: 1.5em;
					}
				#sudi_login_user, #login_password {
					display: block;
					position: relative;
					width: 100%;
					background-color: var(--bg-light) !important;
					color: var(--text-gray-high) !important;
					height: 60px;
					padding-left: 75px;
					box-sizing: border-box;
					border: none !important;
					font-size: 1em;
				}
					#sudi_login_user::placeholder, #login_password::placeholder { color:var(--bg-main-medium); }
					#sudi_login_user:focus, #login_password:focus { outline: none; }

		.login_buttons { text-align: center; color:var(--text-main-low); }
			.login_buttons section { display: inline-block; vertical-align: middle; width: 48%; }
		.login_buttons a
		{
			display:block;
			margin: 15px 0px 20px 0px;
			width:100%;
			padding: 19px 0px 19px 0px;
			background-color:var(--bg-main-medium);
			font-size: 1em;
			border-radius: 5px;
			text-decoration:none;
			color:#FFF;
			text-align:center;
		}

		#saveSession_cont.closed{ display: none; }

		label[for="saveSession"] > span { border:var(--text-main-low) solid thin !important; }

/* D) INFO CONTAINER */

		#info_container {
			display: inline-block;
			vertical-align: top;
			margin-top: 0px;
			box-sizing: border-box;
			margin-left: 325px;
			width: calc(100% - 325px);
			height: 100vh;
			z-index:99;

			padding-top: 75px;

		}
			#info_container.info_show {
				width: calc(100% - 663px);
			}
			#sub_controls.info_show {
				width: calc(100% - 360px);
				padding-right: 20px;
			}
			#info_container.closed {
				margin-left: 80px;
				width: calc(100% - 80px);
			}
			#info_container.hidden {
				margin-left:0px;
				width:100%;
				margin-top: 0px;
				padding: 0px;
				height: 100%;
				background-color: var(--bg-main-high);
			}

			.info_content_wrapper table {
			width: 100%;
			border-collapse: collapse;
			border-spacing: 0;
			font-size: 0.95rem;
			color: #444;
			margin: 1rem 0;
			}

			.info_content_wrapper th,
			.info_content_wrapper td {
			padding: 0.75rem;
			border-bottom: 1px solid #e0e0e0;
			text-align: left;
			vertical-align: top;
			}

			.info_content_wrapper tr:nth-child(even) {
			background-color: #fafafa;
			}

			.info_content_wrapper tr:hover {
			background-color: #f0f8ff;
			}

			.info_content_wrapper th {
			background-color: #f5f5f5;
			font-weight: bold;
			}

		/* === TEXTO ESTRUCTURADO PARA INFO_CONTAINER === */

			.info_content_wrapper {
				padding: 15px 40px 15px;
				line-height: 1.7;
				font-size: 15px;
				color: var(--text-gray-high);
				font-family: var(--font-regular);
				max-width: 960px;
				margin: 0 auto;
			}

			/* ENCABEZADOS */
			.info_content_wrapper h1,
			.info_content_wrapper h2,
			.info_content_wrapper h3,
			.info_content_wrapper h4 {
				font-family: var(--font-semibold);
				color: var(--text-gray-medium);
				margin: 30px 0 15px;
			}

			.info_content_wrapper h1 {
				font-size: 26px;
				color: var(--text-main-high);
			}

			.info_content_wrapper h2 {
				font-size: 22px;
				color: var(--text-main-medium);
			}

			.info_content_wrapper h3 {
				font-size: 18px;
				color: var(--text-gray-high);
			}

			.info_content_wrapper p {
				font-family: var(--font-regular);
				font-size: 15px;
				margin: 10px 0 20px;
				color: var(--text-gray-high);
			}

			.info_content_wrapper ul,
			.info_content_wrapper ol {
				margin: 15px 0 25px 25px;
				padding-left: 15px;
			}

			.info_content_wrapper li {
				margin-bottom: 8px;
				font-family: var(--font-regular);
				color: var(--text-gray-high);
			}

			/* CÓDIGO INLINE */
			.info_content_wrapper code {
				background: #f0f4f8;
				border: 1px solid var(--border-gray-medium);
				border-radius: 5px;
				padding: 2px 6px;
				font-size: 13px;
				font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
				color: #003366;
			}

			/* BLOQUE DE CÓDIGO */
			.info_content_wrapper pre {
				background-color: #f8fafc;
				border: 1px solid var(--border-gray-low);
				border-radius: 6px;
				padding: 14px 18px;
				overflow-x: auto;
				font-size: 14px;
				line-height: 1.6;
				margin: 20px 0;
				color: var(--text-dark-alpha);
				font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
				text-align: left;
			}

			.info_content_wrapper pre code {
				background: none;
				border: none;
				padding: 0;
				color: inherit;
				font-size: inherit;
			}

/* E) MAIN MENU */

	#main_menu {
		position:fixed;
		top:0px;
		left:0;
		display:inline-block;
		box-sizing:border-box;
		width:325px;
		z-index:102;
		white-space: nowrap;
		height: 100%;

		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;

		transition:left .5s ease;
	}

	/* Menu .Closed */
		#main_menu.closed { width: 80px; }


		#main_menu.hidden {
			left:-330px;
		}

		#bar_logo{
			display: block;
			width: 65px;
			height: 65px;
				min-height: 65px;
			background-color: var(--logo-bg);
			border-radius: 8px;
			margin-bottom: auto;
			background-size: contain;
			background-position: center center;
			background-repeat: no-repeat;

			/*temp*/
			background-image: var(--logo-sq);

		}

		/* E.1 - BAR_MENU */
		#main_menu #bar_menu{
			display: inline-flex;
			flex-direction: column;
			width: 80px;
			box-sizing: border-box;
			vertical-align: top;
			margin: 0px;
			height: 100vh;
			max-height: 100vh;
			background-color: var(--bg-main-high);
		align-items: center;
		justify-content: flex-end;
		padding: 20px 0px 25px;
			position: relative;
			z-index: 2;
			overflow: hidden;

		}
		#bar_elements_container{
			display: flex;
			position: relative;
			flex: 1 1 auto;
			min-height: 0;
			flex-direction: column;
			justify-content: flex-start;
			align-items: center;
			width: 100%;
			box-sizing: border-box;
			padding: 10px 0px 8px;
			overflow-x: hidden;
			overflow-y: auto;
			scrollbar-width: thin;
			scrollbar-color: var(--border-main-medium) transparent;
		}
		#bar_elements_container::-webkit-scrollbar { width: 4px; }
		#bar_elements_container::-webkit-scrollbar-thumb { background-color: var(--border-main-medium); border-radius: 8px; }
			.sudi_elements_menu{
				position: static;
				display: block;
				flex: 0 0 auto;
				width: 100%;
				padding-top: 0px;
			}
			#bar_elements_container .bar_element { flex: 0 0 auto; }
				.sudi_element_btn{
					border: 1px solid color-mix(in srgb, var(--text-main-low) 22%, transparent);
					cursor: pointer;
				}
				.sudi_element_btn i{ color: var(--text-main-high); }
				.sudi_element_btn:hover,
				.sudi_element_btn.selected{
					background-color: var(--bg-main-low);
					border-color: var(--text-main-low);
				}
			.sudi_elements_divider{
				width: 42px;
				border: 0;
				border-top: 1px solid color-mix(in srgb, var(--text-main-low) 30%, transparent);
				margin: 12px auto 14px;
			}
			.bar_element {
				display: flex;
				margin: 5px auto;
				width: 50px;
				height: 50px;
				border-radius: 8px;
				cursor: default;
				justify-content: center;
				align-items: center;
			}
				.bar_element i { color: var(--text-main-low); font-size: 1.5em; }

				.bar_element:hover, .bar_element.selected  { background-color: rgba(255,255,255, .1); }
			#user_photo, .user_photo {
				display: flex;
				width: 60px;
				height: 60px;
					min-height: 60px;
				background-color: var(--bg-main-low);
					color:var(--text-main-high);
				border-radius: 50%;
				background-position: center center;
				background-size: cover;
				border: var(--bg-main-low) solid 2px;
					box-sizing: border-box;
				margin: 20px 0px;
				align-items: center;
			justify-content: center;

				overflow: hidden;
			}
				.user_photo {width: 120px; height:120px; margin: auto; border-width: 4px; }

			#user_photo i { display: block; margin-top: 10px; font-size: 3em;}
			.user_photo i { display: block; margin-top: 40px; font-size: 5.5em;}

		/* E.2 - main_nav */
		#main_nav {
			display: inline-block;
			vertical-align: top;
			text-align:left;
			width:245px;
			flex-direction: column;
			position: relative;
			background-color: var(--bg-gray-low);
			height: 100vh;
			overflow: auto;

			transition: all .5s;
			z-index: 1;
		}
			#main_menu.closed #main_nav { margin-left: -245px; }

				.nav_group {
						width: calc(100% - 20px);
						max-height: 58px;
						margin: 2px 10px 2px 10px;
						position: relative;
						overflow:hidden;
						background-color: transparent;
						border: transparent solid thin;
						border-radius: 0px 6px 6px 0px;
						box-sizing: border-box;
						transition: max-height .35s ease, background-color .35s ease, border-color .35s ease;
					}

					.nav_groups_divider {
						display: block;
						width: calc(100% - 28px);
						height: 1px;
						margin: 10px 14px 12px;
						border: none;
						background-color: var(--border-main-low);
						opacity: .9;
					}

							.nav_group.opened {
								max-height: 1000px;
								border-color: var(--border-gray-low);
								border-left-color: var(--border-main-medium);
								transition: max-height .35s ease, background-color .35s ease, border-color .35s ease;
							}

						.group_title {
							color: var(--text-gray-medium);
							border-bottom: transparent solid thin;
						}

						.nav_group.opened .group_title {
							color:var(--text-gray-high);
							border-bottom-color: var(--border-gray-low);
						}

						.nav_group.opened .group_title .nav_title_icon {color:var(--text-main-high);}

							.nav_alone:not(.nav_title):hover span {color:var(--text-main-high);} .nav_alone.btn_active span {color: var(--text-main-high);}
								.nav_alone.btn_active{
									background-color: var(--bg-main-low);
									border-left: var(--border-main-high) solid 4px;
									box-sizing: border-box;
									font-family: var(--font-medium);
								}
								.nav_alone:not(.nav_title):hover .nav_title_icon{color:var(--text-main-low); background-color: var(--bg-main-high);}
								.nav_alone.btn_active .nav_title_icon {color: var(--text-main-low); background-color: var(--bg-main-high); border-color: var(--border-main-high);}
							.group_title:hover .nav_title_icon {color:var(--text-main-high); background-color: var(--bg-main-low); border-color: var(--border-main-low);}

				.module_title{
					height: 70px;
					font-size: 1em;
					display: flex;
					align-items: center;
					text-transform: uppercase;
					color: var(--text-main-high);
					cursor: pointer;
					padding: 0px 12px;
					box-sizing: border-box;
					transition: background-color .35s ease, color .35s ease;
				}
					.module_title:hover,
					.module_title.btn_active {
						background-color: var(--bg-main-low);
					}
						.module_title_label {
							display: block;
							white-space: nowrap;
							overflow: hidden;
							text-overflow: ellipsis;
						}

				.group_title, .nav_alone {
					height:50px;
					cursor:pointer;
					position: relative;
					list-style: none;
					transition: padding-left .35s ease, background-color .35s ease;
				}

					.nav_title_icon {
						width: 32px;
						height: 32px;
						display: inline-flex;
						align-items: center;
						justify-content: center;
						color: var(--text-main-high);
						background-color: var(--bg-main-low);
						border: var(--border-main-low) solid thin;
						border-radius: 8px;
						font-size:1em;
						margin-right: 10px;
						box-sizing: border-box;
					}
						.module_title .nav_title_icon {
							width: 40px;
							height: 40px;
							min-width: 40px;
							color: var(--text-main-low);
							background-color: var(--bg-main-high);
							border-color: var(--border-main-high);
							font-size: .95em;
							margin: 0px 12px 0px 0px;
							padding: 0px 8px;
							border-radius: 12px;
						}
							.module_title:hover .nav_title_icon,
							.module_title.btn_active .nav_title_icon {
								color: var(--text-main-low);
								background-color: var(--bg-main-high);
								border-color: var(--border-main-high);
							}

				.nav_icon { float:left; }



						.group_title .nav_title_icon, .nav_alone .nav_title_icon {
							margin: 0px 0px 0px 10px;
							position: absolute;
							left: 0px;
							top: 50%;
							-webkit-transform: translateY(-47%);
							transform: translateY(-47%);
						}

						.nav_item .nav_icon {
							width: 28px;
							height: 28px;
							display: flex;
							align-items: center;
							justify-content: center;
							border-radius: 8px;
							color: var(--text-main-high);
							background-color: var(--bg-main-low);
							left: -18px;
							top: 50%;
							font-size: 1em;
							-webkit-transform: translate(-50%, -50%);
							transform: translate(-50%, -50%);
							position: absolute;
							transition: all .25s ease;
						 }
							.nav_icon_arrow{
								position: absolute;
								right: 5px;
								top: 50%;
								transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease;
								font-size: .8em;
								width: 26px;
								height: 26px;
								display: flex;
								align-items: center;
								justify-content: center;
								border-radius: 50%;
								color: var(--text-gray-medium);
								background-color: var(--bg-light);
								border: var(--border-gray-low) solid thin;
								transform: translateY(-50%);
							}
								.group_title:hover .nav_icon_arrow,
								.nav_group.opened .group_title i.nav_icon_arrow {
									color: var(--text-main-high);
									background-color: var(--bg-main-low);
									border-color: var(--border-main-low);
								 }
								.group_title:hover .nav_icon_arrow {
									transform: translateY(-50%) scale(1.08);
								 }

					.nav_item {
						list-style: none;;
						position: relative;
						font-size:.9em;
						height:45px;
						transition: background-color .5s ease;
						cursor:pointer;
						width: calc(100% - 54px);
						margin-left: 54px;
					padding-left: 4px;
						padding-right: 16px;
						color: var(--text-gray-medium);
						border-left: transparent solid 4px;
						box-sizing: border-box;
						transition: all .25s ease;
					}
						.menu_custom_icon {
							width: 18px;
							height:18px;
						background-repeat: no-repeat;
						background-size: cover;
						background-position: center center;
							background-color: var(--text-gray-medium);
						-webkit-mask-image: url(http://localhost:8888/sudi-v4/public_html/app/_files/_img/_icons/icon_upgrade.svg);
							mask-image: url(http://localhost:8888/sudi-v4/public_html/app/_files/_img/_icons/icon_upgrade.svg);
						}
							.nav_item .menu_custom_icon.nav_icon {
								width: 18px;
								height: 18px;
								background-color: var(--text-gray-medium);
								border-radius: 0px;
							}
					.nav_item:last-child {
					margin-bottom: 14px;
					}
				.nav_group .group_title + .nav_item { margin-top:8px; }

						.nav_item:hover {
							color: var(--text-main-high);
						}
						.nav_item.btn_active {
							color:var(--text-main-high);
							background-color: var(--bg-main-low);
							border-left-color: var(--border-main-high);
							padding-left: 9px;
							font-family: var(--font-medium);
						}
							.nav_item:hover .nav_icon {
								color:var(--text-main-low);
								background-color: var(--bg-main-high);
							}
							.nav_item.btn_active .nav_icon {
								color:var(--text-main-low);
								background-color: var(--bg-main-high);
								left: -39px;
								margin-left: 0px;
								-webkit-transform: translate(0%, -50%) scale(1.05);
								transform: translate(0%, -50%) scale(1.05);
							}
							.nav_item:hover .nav_icon.menu_custom_icon {background-color: var(--text-main-high);}
							.nav_item.btn_active .nav_icon.menu_custom_icon {background-color: var(--text-main-low);}

					.nav_item span, .group_title span, .nav_alone span {
						display:block;
						position: relative;
						top: 50%;
						-webkit-transform: translateY(-50%);
						transform: translateY(-50%);

					}

							.group_title span.nav_group_label {
								margin-left: 48px;
								margin-right: 45px;
								font-size: .82em;
								line-height: 1.15em;
								white-space: normal;
								max-height: 2.3em;
								overflow: hidden;
								text-overflow: clip;
							}

							.nav_alone span {
								margin-left:52px;
								margin-right: 15px;
								color:var(--text-gray-medium);
								font-size: .9em;
								line-height: 1.15em;
								white-space: normal;
								max-height: 2.3em;
								overflow: hidden;
								text-overflow: clip;
							}
							.nav_item span {
								white-space: nowrap;
								overflow: hidden;
								text-overflow: ellipsis;
							}
							.nav_alone span i { color:var(--text-main-medium); }
				.nav_title {
					height: 70px;
					cursor: default;
					color:var(--text-gray-high);
					margin: 10px 0px 30px 0px;
				}
					.nav_title  span { color:var(--text-gray-high); }
				.nav_title i{ color: var(--select-color); font-size:1.2em; }


/* F) LIST */

	.sudi_lpath, .sudi_cpath {display: inline-block; width: auto; color:#33496F; font-size: 1.1em; padding-left: 30px; margin: 30px 0px; font-family: var(--font-bold); opacity: .8; }
		.sudi_cpath{ padding-left: 0px; font-size: 1.2em; opacity: 1; }

	.list_input_container { padding: 0px 30px; }

	/* NEW SUDI TB */
	.sudi_tb_container {
		display: block;
		position: relative;
		width: 100%;
		box-sizing: border-box;
		height: auto;
		overflow: auto;
		font-size: 1em;
		margin: auto;

	}

		/* Variantes SUDI V4 */
		.sudi_tb_container.tb_height_auto{ max-height: calc(100vh - 75px); }
			.sudi_tb_container.tb_height_auto .sudi_tb_item_container { height: calc(100vh - 75px); overflow: auto; padding-top: var(--suditb-sthead-h); padding-bottom: 120px; }

			.sudi_tb_container.tb_header_fixed .st_head { position: absolute; top: 0; left: 0; width: 100%; background-color: rgba(255,255,255, .5); backdrop-filter: blur(10px); z-index: 1;}

			.st_notxt i { margin: 0px !important; }

	.sudi_tb_item_container {
		display: block;
		padding-bottom: 120px;
		box-sizing: border-box;
	}
	.sudi_tb_container .st_row {
		display: flex;
		flex-direction: row;
		/*justify-content: center;*/
		min-height: 70px;
		align-items:stretch;
	}

		.st_row.order_active {
			cursor: move;
		}
		.st_row.order_active.dragging {
			opacity: 0.7;
			background-color: var(--bg-main-low);
		}


	.sudi_tb_container .st_head .st_item, .sudi_tb_container .st_row .st_item {
		position: relative;
		flex: 1 1 20%;
		display: inline-flex;
		align-items: center;
		font-size: .9em;
		text-align: center;
		box-sizing: border-box;
		margin: 2px;
		justify-content: center;
	}

	.sudi_tb_container .st_row .st_item {
		color: var(--text-gray-medium);
		border: var(--border-gray-low) solid thin;
		box-sizing: border-box;
		margin: 2px;
		border-radius: 5px;
	}

		.sudi_tb_container .st_head {
			width: 100%;
			display: inline-flex;
			flex-direction: row;
			justify-content: left;
			height: var(--suditb-sthead-h);
			align-items: stretch;
			background-color: #FFF;
			color: var(--btn-color-light);
			box-sizing: border-box;
		}


		.st_head .st_item{
			font-size: 1em;
			color: var(--text-main-high);
		}

		.st_head .st_item i {
			/*color: var(--btn-confirm);*/
		font-size: 1.1em;
			margin: 0px 5px 0px 0px;
		}

		/* @SUDI V4 - TB - Reportes */
			.sudi_tb_container.sudi_report_tb {
				width: 90%;
				margin: 25px auto;
			}
			.sudi_tb_container.sudi_report_tb .st_head { background-color: var(--bg-main-high); }
			.sudi_tb_container.sudi_report_tb .st_head .st_item { color: var(--text-main-low); }

		/* @2021 Clases y elementos para celdas especiales*/

		.st_item:not(.st_special) { min-width: 120px !important; }
		.st_item.stcolumn { flex-direction: column; }
			.st_item.st10 { flex: 0 0 10px !important; min-width: auto !important; }
			.st_item.st20 { flex: 0 0 20px !important; min-width: auto !important; }
			.st_item.st50 { flex: 0 0 50px  !important; min-width: auto !important; }
			.st_item.st75 { flex: 0 0 75px  !important; min-width: auto !important; }
			.st_item.st100 { flex: 0 0 100px  !important; min-width: auto !important; }
			.st_item.st150 { flex: 0 0 150px  !important; min-width: auto !important; }
			.st_item.st200 { flex: 0 0 200px  !important; min-width: auto !important;}


			.st_item_img{ background-repeat: no-repeat; background-size: cover; background-position: center center; }
			.st_item img {width:auto; height: auto; max-height: 70px; max-width: 90%;}
		.st_row:nth-child(odd) .st_item {
			background-color: var(--bg-gray-low);
		}

		.sudi_tb_container .st_row .st_item i:not(.icon_visible) {
			display: none;
			color: var(--btn-confirm);
			font-size: .9em;
			margin: 0px 5px 5px 0px;
		}

		.icon_visible {
			font-size: 1.15em;
			color: var(--text-main-high);
		}

		/* LIST - PROGRESS BARR */
		.mini_progress_bar{
			display: flex;
			width: 90%;
			height: 20px;
			border: #CACACA solid thin;
			margin: 5px auto;
			overflow: hidden;
			position: relative;
			font-size: .8em;
			justify-content: center;
			align-items: center;
			color: rgba(0,0,0,.7);
			z-index: 0;
		}
		.mini_progress_bar span {
			display: block;
			position: absolute;
			width: 0;
			background-color: #d5b8e4;
			height: inherit;
			top: 0; left: 0;
			z-index: -1;
		}


	/* btn de opciones */
	.st_row_option span { font-size: .8em; }
	.st_row_option_btn i {
			color:rgba(255,255,255,.8) !important;
			display: block !important;
			font-size: 1.5em;
		}

	/* List row Options */

				#list_row_options {
					position:absolute;
					display:none;
					width: auto;
					top:0px;
					height:auto;
					padding:0px;
					background-color: rgba(255,255,255,.6);
					backdrop-filter: blur(10px);
					border-radius:4px;
					border: var(--border-gray-high) solid thin;

					transition:opacity .5s ease;

					-webkit-user-select: none;
					-moz-user-select: none;
					-ms-user-select: none;
					user-select: none;

					z-index:102;

				}


				#list_row_options.opened
				{ display:inline-block; opacity:1; }


					#list_row_options li {
						display:block;
						width: auto;
						height:auto;
						padding:10px;
						text-align:left;
						min-width:150px;
						position:relative;
						padding-right:35px;
						max-width:100%;
						cursor:pointer;
					}

						#list_row_options li:hover { background-color:var(--bg-main-high); color:#FFF; }

						#list_row_options li i {
							position:absolute;
							top: 50%;
							-webkit-transform: translateY(-50%);
							transform: translateY(-50%);
							right:10px;
							color: var(--text-main-high);
						}

		/* Paginación LIST */

				.no_results {
					text-align: center;
					font-size: 2em;
					color: #747474;
				}

				#nav_list {
					position:fixed;
					bottom:18px;
					right:100px;
					width:auto;
					display:flex;
					align-items:center;
					gap:10px;
					background-color: var(--bg-light);
					border-radius: 14px;
					border: var(--border-gray-low) solid thin;
					border-bottom-color: var(--border-main-low);
					color: var(--text-main-high);
					padding: 10px 14px;
					z-index:1;
					font-size: 1.05em;
					-webkit-user-select: none;
					-moz-user-select: none;
					-ms-user-select: none;
					user-select: none;
				 }

					.info_show #nav_list { right:380px; }

					#page_num {
						display:inline-block;
						vertical-align:middle;
						width:auto;
						padding:0px 5px;
					}

					#nav_list_actions {
						display:flex;
						align-items:center;
						flex: 1 1 auto;
						gap:8px;
						padding-right:6px;
						border-right: var(--border-gray-low) solid thin;
						margin-right:2px;
					}

					#nav_list_paging {
						display:flex;
						align-items:center;
						gap:10px;
						margin-left:auto;
						flex: 0 0 auto;
					}

					#nav_list_paging #page_info {
						order: 1;
					}

					#nav_list_page_btns {
						display:flex;
						align-items:center;
						gap:7px;
						order: 2;
						padding: 4px;
						background-color: var(--bg-gray-low);
						border: var(--border-gray-low) solid thin;
						border-radius: 12px;
					}

					.nav_list_btn {
						display:flex;
						align-items:center;
						justify-content:center;
						width:36px;
						height:36px;
						border-radius:9px;
						background-color: var(--bg-light);
						border: var(--border-main-low) solid thin;
						color: var(--text-main-high);
						cursor:pointer;
						transition: .2s ease all;
					}
						.nav_list_btn:hover {
							color: var(--text-main-low);
							background-color: var(--bg-main-high);
							border-color: var(--border-main-high);
						}

						.nav_list_btn.disabled {
							color: var(--text-gray-low);
							background-color: var(--bg-gray-medium);
							border-color: var(--border-gray-low);
							cursor:default;
							transform:none;
							opacity: .65;
						}
						.nav_list_btn.disabled:hover {
							color: var(--text-gray-low);
							background-color: var(--bg-gray-medium);
							border-color: var(--border-gray-low);
						}

						#page_info {
							font-size:.8em;
							display:flex;
							align-items:center;
							flex-wrap:wrap;
							gap:8px;
							padding:0px 4px 0px 2px;
							line-height: 1.25;
						}

						.nav_list_action {
							cursor: pointer;
							padding: 0px 14px;
							background-color: var(--bg-light);
							color: var(--text-main-high);
							border: var(--border-main-low) solid thin;
							border-bottom-color: var(--border-main-medium);
							border-radius: 10px;
							display: inline-flex;
							align-items: center;
							justify-content: center;
							min-height: 40px;
							gap: 8px;
							box-sizing: border-box;
							font-family: var(--font-medium);
							transition: all .2s ease;
						}

						.nav_list_action:hover {
							background: var(--bg-main-high);
							border-color: var(--border-main-high);
							color: var(--text-main-low);
							transform: translateY(-1px);
						}

						.nav_list_action.nav_list_action_icon {
							width: 40px;
							height: 40px;
							padding: 0;
							min-width: 40px;
							justify-content: center;
							flex: 0 0 40px;
							border-radius: 10px;
						}

						.nav_list_action.nav_list_trash_action {
							margin-left: 6px;
							padding-left: 14px;
						}

						#page_info > span {
							display:inline-flex;
							align-items:center;
							flex-wrap:wrap;
							gap:6px;
							font-family: var(--font-medium);
							color: var(--text-main-high);
						}

						#page_info .list_period_jump_label {
							color: var(--text-gray-medium);
							font-family: var(--font-medium);
							font-size: .9em;
						}

						#page_info .list_period_jump {
							background: var(--bg-light);
							border: var(--border-gray-low) solid thin;
							border-radius: 8px;
							box-sizing: border-box;
							color: var(--text-gray-high);
							font-family: var(--font-medium);
							font-size: 1em;
							height: 32px;
							max-width: 132px;
							padding: 0 12px 0 8px;
						}

						#page_info .list_period_month_group {
							display: inline-flex;
							gap: 6px;
						}

						#page_info .list_period_jump_month {
							max-width: 78px;
							padding-right: 24px;
						}

						#page_info .list_period_jump_year {
							max-width: 96px;
						}

						#page_info .list_period_jump:focus {
							border-color: var(--border-main-medium);
							box-shadow: 0 0 0 2px var(--bg-main-low);
							outline: none;
						}

						.nav_list_btn i {
							font-size: .95em;
						}

						.list_generator_current_page {
							position:absolute;
							z-index:-1;
							color:rgba(240,240,240,.2);
							font-size:3em;
							top:10px;
							right:10px;
						}

/* G) HEADER y SUB CONTROLS */


header {
	display: flex; height: 75px;
	left: 325px;
	width: calc(100vw - 325px);
	position: relative;
	position: fixed;
	top: 0;

	z-index: 4;
	background-color: rgb(255 255 255 / 50%);
	-webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}
	header.closed {
		left: 80px;
		width: calc(100vw - 80px);
	}
#small_main {
	width: 75px;
	height: 75px;
	font-size: 1.5em;
	justify-content: center;
	align-items: center;
	display: none;
}

#small_sub_c {
	width: 75px;
	height: 75px;
	font-size: 1.5em;
	justify-content: center;
	align-items: center;
	display: none;
}

#sub_controls_resume {
	display: none;
}


#sub_controls {

		padding:0px 30px 0px 0px;
	   	display: inline-flex;
	align-items: center;
		justify-content: right;
		height: 75px;
		box-sizing: border-box;
		width: inherit;
	}
	#sub_controls.compact {
		padding-right: 10px;
	}

header.hidden { display: none; }
		#welcome_txt { font-size: 1.5em; margin-right: auto; }
			#sub_controls h2 { margin-left: 30px; color:var(--text-main-high); display: inline-flex; align-items: center; text-transform: uppercase; font-size: 1.4em;  }
				#sub_controls h2 i { margin-right: 10px; color: var(--text-main-high); }
			#sub_controls.compact h2 { margin-left: 15px; font-size: 1.1em; }
				.push-left{ margin-left: auto; }
				#sub_controls span.loadContent, #sub_controls .opt_btn, #sub_controls .loadRContent {
					height: 44px;
					border-radius: 10px;
					padding: 0px 14px;
					background-color: var(--bg-light);
					color: var(--text-main-high);
					border: var(--border-main-low) solid thin;
					border-bottom-color: var(--border-main-medium);
					cursor: pointer;
					display: inline-flex;
					align-items: center;
					justify-content: center;
					flex-wrap: nowrap;
					gap: 8px;
					margin: 0px 5px;
					box-sizing: border-box;
					font-family: var(--font-medium);
					transition: all .2s ease;
				}
			#sub_controls.compact span.loadContent,
			#sub_controls.compact .opt_btn,
			#sub_controls.compact .loadRContent {
					padding: 0px 10px;
					margin: 0px 3px;
					min-width: 44px;
					justify-content: center;
				}
				#sub_controls.compact span.loadContent p,
				#sub_controls.compact .opt_btn p,
				#sub_controls.compact .loadRContent p {
					display: none;
				}

				/* Tabs reutilizables para controles que representan vistas mutuamente excluyentes. */
				#sub_controls .sudi_tab_group {
					display: inline-flex;
					align-items: stretch;
					margin: 0 5px;
				}
				#sub_controls .sudi_tab_group > .sudi_tab {
					border-radius: 0;
					margin: 0;
					min-width: 0;
				}
				#sub_controls .sudi_tab_group > .sudi_tab + .sudi_tab {
					border-left-color: transparent;
				}
				#sub_controls .sudi_tab_group > .sudi_tab:first-child {
					border-bottom-left-radius: 10px;
					border-top-left-radius: 10px;
				}
				#sub_controls .sudi_tab_group > .sudi_tab:last-child {
					border-bottom-right-radius: 10px;
					border-top-right-radius: 10px;
				}
				#sub_controls .sudi_tab_group > .sudi_tab.btn_active {
					box-shadow: inset 0 0 0 1px var(--border-main-high);
					transform: none;
				}
				#sub_controls.compact .sudi_tab_group { margin: 0 3px; }
				#sub_controls.compact .sudi_tab_group > .sudi_tab { margin: 0; }

					#sub_controls span.loadContent:hover,
					#sub_controls span.opt_btn:hover,
					#sub_controls .loadRContent:hover,
					#sub_controls span.loadContent.btn_active,
					#sub_controls span.opt_btn.btn_active,
					#sub_controls .loadRContent.btn_active {
						background-color: var(--bg-main-high);
						border-color: var(--border-main-high);
						color: var(--text-main-low);
						transform: translateY(-1px);
					}

				#sub_controls span i {
					opacity: 1;
					font-size: 1em !important;
					margin: 0px;
					color: inherit;
				}
				#sub_controls.compact span i {
					margin: 0;
					font-size: 1em !important;
					opacity: 1;
				}

			#sub_controls span.uplabel {
				height: 50px; border-radius: 5px; padding: 0px 10px; background-color: var(--color-white); color: var(--text-main-high); display: flex; align-content: center; flex-wrap: wrap; margin: 0px 5px;
			}

			/* B Ú S Q U E D A */
			.list_search_options_container{
				display: flex;
				height: 100%;
				justify-content: center;
				align-items: center;
				width: 0px;
				overflow: hidden;
				transition: .5s ease all;
			}
				.list_search_options_container.on { width: 250px;}
				#sub_controls.compact .list_search_options_container.on { width: 190px; }
				.list_search_options_container .list_filter select, .list_search_options_container .upbar_filter input{
					height: 50px; box-sizing: border-box; border: #EFEFEF solid thin; width: 90px; margin: 0px 5px 0px 0px; color: var(--btn-color-light);
				}
					.list_search_options_container .upbar_filter input{ width: 150px;     padding-left: 5px; }
					#sub_controls.compact .list_search_options_container .list_filter select{ width: 70px; }
					#sub_controls.compact .list_search_options_container .upbar_filter input{ width: 110px; }


/* H) CURTAIN*/

.blur_effect.on {
		/*-webkit-filter: blur(7px);
		-moz-filter: blur(7px);
		-o-filter: blur(7px);
		-ms-filter: blur(7px);
		filter: blur(7px);*/
	}

	#curtain_container {
		display:block;
		position:absolute;
		min-height:100%;
		height:auto;
		width:100%;
		margin:0px auto;
		top:0;
		left:0;
		z-index:1002;


	}
		#curtain_container.hidden { display:none !important; }
		.curtain{
		    background-color: rgba(0,0,0,.5);
			padding-top:1px;
			position:fixed;
			height:100%;
			min-height:100%;
			top:0;
			width:100%;
			overflow:auto;

			display: flex;
			justify-content: center;
			align-items: center;

			/* B L U R */
			-webkit-filter: blur(7px);
			-moz-filter: blur(7px);
			-o-filter: blur(7px);
			-ms-filter: blur(7px);
			filter: blur(7px);
		}
		.curtain:first-child{ backdrop-filter: blur(10px); }

		.curtain:last-child {
			-webkit-filter: none;
			-moz-filter: none;
			-o-filter: none;
			-ms-filter: none;
			filter: none;

			transition: width .5s ease;
		}

			#curtain_container.r_panel_show .curtain { width: calc(100% - 350px); }

				.close_curtain {
					    position: absolute;
						top: 10px;
						right: 10px;
						color: var(--text-gray-high);
						background-color: var(--color-white);
						border-radius: 50%;
						cursor: pointer;
				}

					.close_curtain:hover { color: var(--color-red); }

			/* IFRAME CURTAIN */

			.load_new_page {
				display: block;
				width: 90%;
				max-width: 1000px;
				height: 99%;
				margin: 0px auto;
				text-align: center;
				border: none;
			}

/* I) M A N A G E */

	.form_manage, .curtain_content {
		background-color: var(--bg-light);
		display: block;
		width: 95%;
		max-width: 1400px;
		height: auto;
		overflow: auto;
		border: var(--border-gray-low) solid thin;
	    border-radius: 12px;
		max-height: 95vh;
		box-sizing: border-box;

	}
			.curtain_content_container { padding: 30px; }

			/* PAPER: vista interna reutilizable dentro de curtain. */
			.sudi_paper_view { box-sizing: border-box; margin: 0 auto; max-width: 940px; padding: 18px 14px 46px; }
			.sudi_paper_view_meta { align-items: center; border-bottom: 1px solid var(--border-gray-low); display: flex; gap: 18px; justify-content: space-between; margin-bottom: 22px; padding-bottom: 16px; }
			.sudi_paper_view .rp_tag_container { gap: 14px; margin: 0; }
			.sudi_paper_view_actions { align-items: center; display: flex; flex: 0 0 auto; gap: 8px; }
			.sudi_paper_view_link { align-items: center; background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 6px; color: var(--text-gray-high); display: inline-flex; font-family: var(--font-medium, Arial, Helvetica, sans-serif); font-size: 13px; gap: 7px; line-height: 1; padding: 9px 11px; text-decoration: none; transition: background-color .16s ease, border-color .16s ease; }
			.sudi_paper_view_link:hover { background: var(--bg-gray-medium); border-color: var(--border-gray-medium); }
			.sudi_paper_view_content { background: var(--bg-light, #fff); border: 1px solid var(--border-gray-low); border-radius: 7px; box-shadow: 0 3px 10px rgba(21, 35, 51, .06); box-sizing: border-box; color: var(--text-gray-high); font-size: 16px; line-height: 1.72; padding: 38px 46px 48px; }
			.sudi_paper_view_content > :first-child { margin-top: 0; }
			.sudi_paper_view_content h1, .sudi_paper_view_content h2, .sudi_paper_view_content h3 { line-height: 1.25; margin: 1.4em 0 .55em; }
			.sudi_paper_view_content p, .sudi_paper_view_content ul, .sudi_paper_view_content ol, .sudi_paper_view_content blockquote { margin: 0 0 1em; }
			.sudi_paper_view_content ul, .sudi_paper_view_content ol { padding-left: 1.45em; }
			.sudi_paper_view_content ul { list-style: disc outside; }
			.sudi_paper_view_content ol { list-style: decimal outside; }
			.sudi_paper_view_content li { margin: .18em 0; }
			.sudi_paper_view_content li > ul { list-style-type: circle; margin: .3em 0; }
			.sudi_paper_view_content ul.todo-list { list-style: none; padding-left: 0; }
			.sudi_paper_view_content ul.todo-list li { list-style: none; }
			.sudi_paper_view_content .todo-list__label { align-items: flex-start; display: flex; gap: .55em; }
			.sudi_paper_view_content .todo-list__label input { accent-color: var(--bg-main-medium); flex: 0 0 auto; margin: .38em 0 0; pointer-events: none; }
			.sudi_paper_view_content .todo-list .todo-list__label > input[type="checkbox"] { -webkit-appearance: checkbox; appearance: auto; display: inline-block !important; height: 16px; width: 16px; }
			.sudi_paper_view_content figure { margin: 1.5em 0; max-width: 100%; overflow-x: auto; }
			.sudi_paper_view_content figure.image { display: table; margin: 1.5em auto; max-width: 100%; overflow: visible; }
			.sudi_paper_view_content figure.image-style-align-center { margin-left: auto; margin-right: auto; }
			.sudi_paper_view_content img { display: block; height: auto; margin: 0 auto; max-width: 100%; }
			.sudi_paper_view_content figcaption { color: var(--text-gray-low); font-size: 13px; margin-top: 8px; text-align: center; }
			.sudi_paper_view_content table { border-collapse: collapse; min-width: 520px; width: 100%; }
			.sudi_paper_view_content td, .sudi_paper_view_content th { border: 1px solid var(--border-gray-low); padding: 9px 11px; text-align: left; vertical-align: top; }
			.sudi_paper_view_content th { background: var(--bg-gray-low); font-weight: 600; }
			.sudi_paper_view_content blockquote { border-left: 3px solid var(--border-gray-medium); color: var(--text-gray-medium); margin-left: 0; padding-left: 16px; }
			.sudi_paper_view_content hr { border: 0; border-top: 1px solid var(--border-gray-low); margin: 2em 0; }
			.sudi_paper_view_content pre { background-color: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 6px; box-sizing: border-box; color: var(--text-gray-high); font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 14px; line-height: 1.6; margin: 1.5em 0; overflow-x: auto; padding: 16px 18px; text-align: left; white-space: pre; }
			.sudi_paper_view_content pre code { background: none; border: 0; color: inherit; display: block; font: inherit; padding: 0; white-space: inherit; }
			.sudi_paper_view .rp_tag { border-bottom-color: var(--border-gray-low); }
			.sudi_paper_view .rp_tag i { background-color: var(--bg-gray-low); border-color: var(--border-gray-low); color: var(--text-gray-medium); }
			@media (max-width: 680px) { .sudi_paper_view { padding: 12px 6px 30px; } .sudi_paper_view_meta { align-items: flex-start; flex-direction: column; gap: 12px; } .sudi_paper_view_actions { width: 100%; } .sudi_paper_view_content { padding: 28px 22px 34px; } }
			.form_title {
			display: block;
			padding: 5px 30px;
			background-color: var(--bg-gray-low);
			font-family: 'sf_pro_textthin';
			position: sticky;  /* Cambiado a sticky */
			top: 0;  /* Fijado en la parte superior del contenedor */
			z-index: 10;  /* Asegura que quede encima de otros elementos al hacer scroll */
			border-bottom: var(--border-gray-medium) solid thin;
			color: var(--text-main-high);
		}
			.form_title h1 i { margin-right: 10px; color:var(--text-gray-medium); }
			.form_title h1{
			    width: 95%;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
				font-size: 1.6em;
			}
			.form_title .close_curtain{
				position: absolute;
				right: 30px;
				top: 7px;
				width: 50px;
				height: 50px;
				text-align: center;
				display: flex;
				align-items: center;
				justify-content: center;
				background: none;
				font-size: 1.6em;
			}
			.form_title.form_title_with_actions h1 { width: calc(100% - 170px); }
			.form_title_actions { align-items: center; display: inline-flex; gap: 8px; position: absolute; right: 20px; top: 7px; }
			.form_title_actions .close_curtain { position: static; }
			.form_title_action { align-items: center; background: var(--bg-light); border: 1px solid var(--border-main-low); border-bottom-color: var(--border-main-medium); border-radius: 8px; color: var(--text-main-high); cursor: pointer; display: inline-flex; font-family: var(--font-medium); font-size: 13px; gap: 7px; height: 38px; padding: 0 11px; }
			.form_title_action:hover { background: var(--bg-main-high); border-color: var(--border-main-high); color: var(--text-main-low); }

		.form_subtitle{
			font-size: 1.1em;
			margin: -10px 0px 30px 0px;
			display:block;
			width: 100%;
			text-align:center;
			border-bottom: var(--border-gray-low) solid thin;
			color: var(--text-main-high);
			white-space: nowrap;
			text-overflow: ellipsis;
			overflow: hidden;
			padding: 5px 0px;
		}

.form_submit {
    opacity: 0; height: 1px; width: 1px; display: none;
}

.span_form_btns{
    display: flex;
    position: sticky;
    bottom: 0px;
    justify-content: end;
    border-top: var(--border-gray-medium) solid thin;
	background-color: var(--bg-light);
    padding: 8px 0px;
}

.span_form_btn {
	border: var(--border-main-low) solid thin;
	border-bottom-color: var(--border-main-medium);
    border-radius: 10px !important;
    font-size: 1em;
    margin: 5px 15px;
    cursor: pointer;
    width: auto;
    opacity: .8;
    height: 40px;
    display: flex;
    align-items: center;
    padding: 0px 20px;
	font-family: var(--font-medium);
	transition: all .2s ease;
}
	.span_form_btn.icon_span{ padding-left: 0px; }

	.span_form_btn i {
		opacity: .5;
		margin: 0px 10px;
	}
.span_form_btn:hover{
	opacity: 1;
	transform: translateY(-1px);
}
	.span_submit {
		background-color: var(--bg-main-high);
		color: var(--text-main-low);
		border-color: var(--border-main-high);
		justify-content: center;
	}

	.span_manage_cancel{
		background-color: var(--bg-light);
		color: var(--text-main-high);
		border-color: var(--border-main-low);
	}

.main_input_container{
	padding: 10px 20px;
	max-height: calc(95vh - 123px);
	overflow: auto;
	box-sizing: border-box;
}

	#r_panel_content .form_manage .main_input_container{
		min-height: calc(100vh - 88px);
		padding: 10px;
	}

	#r_panel #r_panel_content .form_manage{
		display: flex;
		flex-direction: column;
		height: 100%;
		min-height: 0;
	}

	#r_panel #r_panel_content .form_manage .main_input_container{
		min-height: 0;
		max-height: none;
		flex: 1 1 auto;
		overflow: auto;
		padding: 10px 14px 6px;
	}

	#r_panel #r_panel_content .form_manage .span_form_btns{
		position: relative;
		bottom: auto;
		flex: 0 0 auto;
		padding: 8px 6px 10px;
		background-color: var(--bg-light);
		z-index: 2;
	}


	/* M U L T I P L E  T A B L E S */

	.multiple_tb_container {
		border: var(--border-gray-low) solid 2px;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0px 10px 10px 0px;
		box-sizing: border-box;
		padding: 14px;
		background-color: var(--bg-gray-low);
	}

	.mt_btn_container{
		display: flex;
		align-items: center;
	}
	.multiple_tb_btn {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: auto;
		text-align: center;
		background-color: var(--bg-main-high);
		color: var(--text-main-low);
		text-decoration: none;
		min-height: 40px;
		line-height: 1.2;
		margin: 10px;
		padding: 0px 22px;
		border: var(--border-main-high) solid thin;
		border-radius: 10px;
		opacity: .8;
		box-sizing: border-box;
	}
	.multiple_tb_btn:hover{ background-color: var(--bg-main-high); color: var(--text-light-alpha); }

		.multiple_tb_btn i {
			display: inline-block;
			opacity: .5;
			font-size: 1em !important;
			flex: 0 0 auto;
			margin: 0px;
		}

		.recordb {
			position:relative;
			padding: 18px 14px 8px;
			margin-bottom: 14px;
			border-radius: 0px 8px 8px 0px;
			background-color: var(--bg-light);
			box-sizing: border-box;
		}
			.multiple_tb_container .recordb { border: var(--border-gray-low) solid thin; border-left: var(--border-main-low) solid 2px; }

		.recordb:last-child { margin-bottom: 0px; }

			.recordb_delete {
				display: flex;
				align-items: center;
				justify-content: center;
				gap: 6px;
				width: fit-content;
				color:var(--color-red);
				background-color: var(--bg-light);
				border: var(--color-red) solid thin;
				border-radius: 8px;
				padding: 7px 10px;
				transition: all .2s ease;
				font-size: .75em;
				font-family: var(--font-medium);
				line-height: 1;
				cursor:pointer;
				margin: 6px 0px 4px auto;
				z-index:2;
				position:relative;
				right:auto;
				top:auto;
				opacity:1;

			}

				.recordb_delete:hover {
					background-color: var(--color-red);
					color: var(--text-light);
				}

				.recordb > section {
					padding-top: 5px;
				}

				.recordb_new {
					position: absolute;
					cursor: pointer;
					color: var(--text-gray-high);
					right: 0px;
					top: 0px;
				}
				recordb_new:hover {
					color: var(--text-main-high);
				}

	/* I N P U T S */

/* Tooltip */
	#tooltip_container {
		position: absolute;
		display: none;
		padding: 8px 10px;
		width: max-content;
		max-width: min(260px, calc(100vw - 24px));
		z-index: 3001;
		border: 1px solid #e5c959;
		border-bottom-color: #cbaa32;
		border-radius: 3px;
		box-shadow: 0 5px 12px rgba(90, 73, 20, .18);
		font-size: .8em;
		line-height: 1.4;
		text-align: left;
		background-color: #fff3a7;
		max-height: 300px;
		overflow: auto;
		font-family: var(--font-medium);
		color: #4c3e0a;
	}

	#tooltip_container a {
		color: var(--text-main-high);
	}

.tooltip-source-html { display: none; }

	.tooltipQuestion {
		font-size:1em;
		float:right;
		margin: -3px 5px 0px 0px;
		color:var(--text-gray-medium);
		width:16px;
		height:16px;
		cursor:pointer;
		text-align:center;
	}
		.tooltipQuestion:hover {
			color:var(--text-main-high);
		}



	.inputError { font-size:.7em; color:var(--text-gray-medium); }
		.inputError i { color:var(--color-red); }

	.input_section {
		position:relative;
		display:inline-block;
		height:auto;
		margin:14px 0px;
		vertical-align:top;
		box-sizing:border-box;
	}

		.input_1x { width:99%; margin-left:.5%; margin-right:.5%; }
		.input_2x { width:48%; margin-left:.5%; margin-right:.5%; }
		.input_3x { width:31.8%; margin-left:.5%; margin-right:.5%; }
		.input_4x { width:24%; margin-left:.4%; margin-right:.4%; }
		.input_5x { width:19%; margin-left:.35%; margin-right:.35%; }
		.input_6x { width:15.8%; margin-left:.3%; margin-right:.3%; }


			/* Para Manage en r_panel*/

	.errorMessage {
		position:absolute;
		right:0px;
		font-size:.7em;
		text-align:right;
	}

	label.label_spry {
		font-family: var(--font-medium);
		font-size: .9em !important;
		color: var(--text-main-high) !important;
		/*text-transform: uppercase;*/
		display: block;
		letter-spacing: .03em;
		margin-bottom: 6px;
	}

		label.label_spry .label_icon {
			position: static;
			font-size: .7em;
			margin-left: 0;
			margin-right: 8px;
			color: var(--text-main-high);
			vertical-align: middle;
			background-color: var(--bg-main-low);
			border: var(--border-main-low) solid thin;
			border-radius: 999px;
			padding: 5px;
			margin-bottom: 3px;
		}

		label.label_spry .date_calendar {
			cursor: pointer;
		}

		label.label_spry .date_calendar:hover,
		label.label_spry .label_icon:hover {
			color: var(--text-main-low);
			background-color: var(--bg-main-high);
			border-color: var(--border-main-high);
		}

	/* INPUT - TEXTFIELD */
	.aTextField {
		font-family: var(--font-regular);
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin !important;
		border-left: var(--border-main-low) solid 3px !important;
		border-radius: 0px 10px 10px 0px;
		cursor: pointer;
		-webkit-appearance: none;
		box-sizing: border-box;
		padding: 0px 16px;
		font-size: 1em;
		color: var(--text-gray-high);
		height:40px;
		width:100%;
		transition: all .2s ease;
	}
		.aTextField:focus {
			border-color: var(--border-main-low) !important;
			border-left-color: var(--border-main-high) !important;
			background-color: var(--bg-main-low);
			color: var(--text-main-high);
		}
		.aTextField:disabled {
			background-color: var(--bg-gray-low);
			color: var(--text-gray-medium);
			cursor: default;
		}

	/* INPUT - AUTOCOMPLETE MULTIPLE */
	.auto_multiple_container {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 6px;
		min-height: 40px;
		padding: 5px 10px;
		box-sizing: border-box;
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0 10px 10px 0;
		transition: all .2s ease;
	}
		.auto_multiple_container:focus-within {
			border-color: var(--border-main-low);
			border-left-color: var(--border-main-high);
			background-color: var(--bg-main-low);
		}
		.auto_multiple_tags {
			display: contents;
		}
		.auto_multiple_tag {
			display: inline-flex;
			align-items: center;
			max-width: 100%;
			border: var(--border-main-low) solid thin;
			background-color: var(--bg-main-low);
			color: var(--text-main-high);
			font-size: .82em;
			line-height: 1;
		}
		.auto_multiple_tag_label {
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
			padding: 7px 3px 7px 9px;
		}
		.auto_multiple_remove {
			width: 28px;
			height: 28px;
			border: 0;
			background: transparent;
			color: var(--text-main-high);
			cursor: pointer;
		}
		.auto_multiple_remove:hover {
			background-color: var(--bg-main-high);
			color: var(--text-main-low);
		}
		.auto_multiple_search {
			flex: 1 1 150px;
			min-width: 120px;
			height: 28px;
			padding: 0 5px;
			border: 0;
			outline: 0;
			background: transparent;
			font-family: var(--font-regular);
			font-size: .92em;
			color: var(--text-gray-high);
		}
		.auto_multiple_required_msg,
		.auto_multiple_max_msg {
			display: none;
		}
		.auto_multiple_required_msg.active,
		.auto_multiple_max_msg.active {
			display: block;
		}
		.auto_multiple_container.auto_multiple_invalid {
			border-color: var(--color-red);
			border-left-color: var(--color-red);
		}

	/* INPUT - TEXTAREA */
	.aTextArea {
		font-family: var(--font-regular);
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin !important;
		border-left: var(--border-main-low) solid 3px !important;
		border-radius: 0px 10px 10px 0px;
		-webkit-appearance: none;
		box-sizing: border-box;
		padding: 12px 16px;
		font-size: 1em;
		color: var(--text-gray-high);
		resize: none;
		height: 80px;
		width: 100%;
		transition: all .2s ease;
	}
		.aTextArea:focus {
			border-color: var(--border-main-low) !important;
			border-left-color: var(--border-main-high) !important;
			background-color: var(--bg-main-low);
			color: var(--text-main-high);
		}

	/* Markers */

	.marker-green { background-color: var(--ck-highlight-marker-green);}
	.marker-yellow {background-color: var(--ck-highlight-marker-yellow);}
	.marker-blue { background-color: var(--ck-highlight-marker-blue);}
	.marker-pink { background-color: var(--ck-highlight-marker-pink);}
	.pen-green { color:var(--color-green); font-family: var(--font-bold); background: none; }
	.pen-red{ color:var(--color-red); font-family: var(--font-bold); background: none; }


	/* INPUT - DATEPICKER */

	.date_calendar {
			position: absolute;
			font-size: 1em;
			color: var(--text-main-high);
			right: 36px;
			top: 30px;
			cursor: pointer;
		}

	.date_clear {
			position: absolute;
			font-size: .9em;
			color: var(--color-red);
			right: 14px;
			top: auto;
			bottom: 12px;
			cursor: pointer;
			opacity: .45;
			transition: opacity .2s ease, color .2s ease;
		}

	.date_clear.active,
	.date_clear:hover {
		opacity: 1;
		color: var(--color-red);
	}

	.date_required_msg {
		position: static;
		display: block;
		margin-top: 4px;
		color: var(--color-red);
		text-align: left;
		font-size: .75em;
		text-align: right;
	}

	/* S W I T C H */

	.switch_cont {
			display:block;
			margin: 5px;
		}
			.switch_cont p {
				font-size:.6em;
				text-align:center;
				font-family: var(--font-medium);
			}

	.switch {
			display:block;
			width:40px;
			height:20px;
			background-color:var(--bg-gray-low);
			border: var(--border-gray-low) solid thin;
			border-radius:10px;
			margin:0px auto;
			cursor:pointer;
			overflow:auto;

			-webkit-user-select: none;
			-moz-user-select: none;
			-ms-user-select: none;
			user-select: none;
		}

			.switch span {
				display:block;
				width:18px;
				height:18px;
				margin-top:1px;
				border-radius:50%;
				background-color:var(--bg-light);
				border: var(--border-main-low) solid thin;
				transition:all .5s ease;
			}


				.switch.on span {
				margin-left:21px;
				background-color:var(--bg-main-high);
				border-color: var(--border-main-high);

			}

			.switch.canceled { opacity:.8; }

				.switch.canceled span { display:none; }

	/* INPUT - SELECT  */

	.aSelect_container {
		position: relative;
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.aSelect_container::after {
		content: "\f0d7";
		font-family: "Font Awesome 6 Free";
		font-weight: 900;
		position: absolute;
		right: 14px;
		bottom: 12px;
		font-size: 1em;
		color: var(--bg-main-high);
		pointer-events: none;
	}

	.aSelect {

		position: relative;
		font-family: var(--font-regular);
		background-position: right;
		background-image: none;
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin !important;
		border-left: var(--border-main-low) solid 3px !important;
		border-radius: 0px 10px 10px 0px;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		box-sizing: border-box;
		padding: 10px 46px 10px 16px;
		margin: 0px auto;
		font-size: 1em;
		color: var(--text-gray-high);
		display:block;
		overflow: hidden;
		height: 40px;
		width: 100%;
		transition: all .2s ease;
	}
		.aSelect:focus {
			border-color: var(--border-main-low) !important;
			border-left-color: var(--border-main-high) !important;
			background-color: var(--bg-main-low);
			color: var(--text-main-high);
		}

	/* UPLOAD FILES */

		div.upload {
			display: flex;
			max-width: 250px;
			background-color: var(--bg-light);
			border: var(--border-main-low) solid thin;
			border-bottom-color: var(--border-main-medium);
			overflow: hidden;
			cursor: pointer;
			position: relative;
			margin: 10px auto;
			border-radius: 10px;
			align-items: center;
			padding: 10px 5px;
			font-size: 1.2em;
			color: var(--text-main-high);
			opacity: .8;
			transition: all .2s ease;
		}

		.upload_text {
			width: 100%;
		text-align: center;

		}
			div.upload i { margin: 0px 10px; }

			div.upload:hover {
				opacity: 1;
				background-color: var(--bg-main-high);
				border-color: var(--border-main-high);
				color: var(--text-main-low);
				transform: translateY(-1px);
			}

	div.upload input {
		position:absolute;
		cursor:pointer;
		margin:0px;
		display: block !important;
		width: 100%!important;
		height: 100% !important;
		opacity: 0 !important;
		overflow: hidden !important;
	}

	.upload_container {
		margin: 5px 0px;
		box-sizing: border-box;
	border: var(--border-gray-low) dashed thin;
	border-radius: 15px;
		display: inline-block;
		background-color: var(--bg-gray-low);
	}

		.csv_instruction {
			font-family: var(--font-regular);
			font-size: 13px;
			color: var(--text-gray-medium);
			margin: 20px 0 0 0;
			text-align: center;
		}

	.upload_container .fileName {
	position:relative;
	text-align:center;
	height:auto;

	/*min-height:100px;*/
	margin: 10px auto;
	overflow:hidden;

		-webkit-transition:all.5s ease-in-out;
		-moz-transition:all.5s ease-in-out;
		-o-transition:all.5s ease-in-out;
		transition:all.5s ease-in-out;
	}


	/* FILE LIST */

	.files_container{
		height:auto;
		max-height:500px;
		overflow:auto;
	}

		.file_loading {
			display:none;
			width:227px;
			margin:0px auto;
		}
			.file_loading.on {
				display:block;
			}


			/* FILE LOADED LIST ROW */

			.loaded_item_row {
				display:flex;
				width:100%;
				align-items: center;
				justify-content: center;
			}

	.loaded_item_row:nth-child(even) {
			background-color:var(--bg-gray-low);
	}

.loaded_item_row div { display:inline-flex; }


	.loaded_img {
		width:100px;
		height:auto;
		background-size:cover;
		background-position:center;
		justify-content: center;
	}
			.loaded_img img {
				    max-width: 100%;
					margin: 5px auto;
					width: auto;
					height: auto;
					max-height: 150px;
			}

			.loaded_img i {
				font-size:2em;
				color:var(--text-gray-medium);
			}

	.loaded_file_name {
		width: 250px;
	}

		.loaded_file_name p { font-size:.9em; text-align:left;
			width:100%;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
			padding:0px;

		 }
	.loaded_file_options {
		cursor:pointer;
		padding: 0px 10px;
	}
		.loaded_file_options i {
			    color:var(--text-light-alpha);
				padding: 10px;
				border-radius: 5px;
				font-size: .8em;
				background-color:var(--bg-main-high);
				opacity: .8;
		}
				.loaded_file_crop:hover i, .loaded_file_delete:hover i { opacity: 1; }

	/*.upload_container */
	.fileName p, .fileName a {
		display:inline-block;
		font-weight:lighter;
		margin:15px 5px;
		height:30px;
		text-align:left;
		font-size:.85em;
		background-position:left top;
		background-repeat:no-repeat;
		background-size:contain;
		text-decoration:none;
		color:var(--text-gray-high);
		line-height:2;
		box-sizing:border-box;

	}
	.upload_container .fileName span.Spry { border-top:var(--border-gray-low) dotted thin; width:50%; display:block; margin:0px auto; padding:3px 0px;}

		.upload_container .fileName span.Spry label { color:var(--text-gray-high); }

	/* MODERN INPUT FILE */

	.upload_container.input_file_drop {
		position: relative;
		-webkit-transition: all .25s ease-in-out;
		-moz-transition: all .25s ease-in-out;
		-o-transition: all .25s ease-in-out;
		transition: all .25s ease-in-out;
	}

	.upload_container.input_file_drop.file_dragover {
		border-color: var(--bg-main-high);
		background-color: var(--bg-main-low);
	}

	.upload_container.input_file_drop.file_dragover .upload {
		opacity: 1;
	}

	.upload_container.input_file_modern {
		padding: 18px;
		border: var(--border-gray-low) dashed 1px;
		border-radius: 12px;
		background-color: var(--bg-gray-low);
	}

	.input_file_modern .fileName {
		max-width: 1040px;
		margin: 0px auto;
		overflow: visible;
		text-align: left;
	}

	.input_file_modern .files_container {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
		gap: 12px;
		max-height: 360px;
		margin-bottom: 14px;
		padding: 0px;
		overflow: auto;
	}

	.input_file_modern .files_container:empty {
		display: none;
		margin-bottom: 0px;
	}

	.input_file_modern .file_loading {
		margin: 0px auto 14px auto;
	}

	.input_file_modern .loaded_item_row {
		display: flex;
		width: auto;
		min-width: 0px;
		align-items: center;
		justify-content: flex-start;
		gap: 12px;
		padding: 10px;
		border: var(--border-gray-low) solid 1px;
		border-radius: 10px;
		background-color: var(--bg-light);
		box-sizing: border-box;
	}

	.input_file_modern .loaded_item_row:nth-child(even) {
		background-color: var(--bg-light);
	}

	.input_file_modern .loaded_item_row div {
		display: flex;
	}

	.input_file_modern .loaded_img {
		width: 68px;
		height: 68px;
		flex: 0 0 68px;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		border-radius: 10px;
		background-color: var(--bg-main-low);
	}

	.input_file_modern .loaded_img a {
		display: flex;
		width: 100%;
		height: 100%;
		align-items: center;
		justify-content: center;
		margin: 0px;
		line-height: 1;
	}

	.input_file_modern .loaded_img img {
		width: 100%;
		height: 100%;
		max-width: none;
		max-height: none;
		margin: 0px;
		object-fit: cover;
	}

	.input_file_modern .loaded_img i {
		font-size: 1.5em;
		color: var(--text-gray-medium);
	}

	.input_file_modern .loaded_file_name {
		width: auto;
		min-width: 0px;
		flex: 1 1 auto;
	}

	.input_file_modern .loaded_file_name p {
		display: block;
		width: 100%;
		height: auto;
		margin: 0px;
		padding: 0px;
		overflow: hidden;
		color: var(--text-gray-high);
		font-family: var(--font-regular);
		font-size: .82em;
		line-height: 1.35;
		text-align: left;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.input_file_modern .loaded_file_options {
		flex: 0 0 auto;
		padding: 0px;
	}

	.input_file_modern .loaded_file_options i {
		display: flex;
		width: 34px;
		height: 34px;
		align-items: center;
		justify-content: center;
		padding: 0px;
		border-radius: 9px;
		background-color: var(--bg-main-high);
		color: var(--text-main-low);
		font-size: .82em;
		opacity: .92;
		-webkit-transition: all .2s ease-in-out;
		-moz-transition: all .2s ease-in-out;
		-o-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
	}

	.input_file_modern .loaded_file_options:hover i {
		opacity: 1;
		background-color: var(--bg-main-medium);
	}

	.input_file_modern .loaded_file_crop_status {
		display: inline-flex;
		width: fit-content;
		align-items: center;
		margin-top: 6px;
		padding: 4px 8px;
		border-radius: 999px;
		font-family: var(--font-regular);
		font-size: .68em;
		line-height: 1;
	}

	.input_file_modern .loaded_file_crop_status.pending {
		background-color: var(--bg-gray-low);
		color: var(--color-red);
		border: var(--color-red) solid thin;
	}

	.input_file_modern .loaded_file_crop_status.done {
		background-color: var(--bg-gray-low);
		color: var(--color-green);
		border: var(--color-green) solid thin;
	}

	.input_file_modern .sudi_crop_error.errorMessage {
		position: static;
		display: block;
		margin-top: 6px;
		color: var(--color-red);
		font-family: var(--font-regular);
		font-size: .68em;
		line-height: 1.25;
		text-align: left;
	}

	.input_file_modern .sudi_pending_crop_btn {
		display: inline-flex;
		min-height: 34px;
		align-items: center;
		justify-content: center;
		gap: 7px;
		padding: 0px 10px;
		border-radius: 9px;
		background-color: var(--bg-main-high);
		color: var(--text-main-low);
		cursor: pointer;
		font-family: var(--font-regular);
		font-size: .78em;
		opacity: .92;
		-webkit-transition: all .2s ease-in-out;
		-moz-transition: all .2s ease-in-out;
		-o-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
	}

	.input_file_modern .sudi_pending_crop_btn i {
		width: auto;
		height: auto;
		padding: 0px;
		border-radius: 0px;
		background-color: transparent;
		font-size: .9em;
		opacity: 1;
	}

	.input_file_modern .sudi_pending_crop_btn:hover {
		opacity: 1;
		background-color: var(--bg-main-medium);
	}

	.input_file_modern .sudi_pending_crop_btn:hover i {
		background-color: transparent;
	}

	.input_file_modern .sudi_crop_done {
		border-color: var(--color-green);
	}

	.input_file_modern .sudi_crop_uploading {
		opacity: .65;
		pointer-events: none;
	}

	.input_file_modern .upload {
		width: 100%;
		max-width: 1040px;
		min-height: 76px;
		gap: 13px;
		justify-content: center;
		margin: 0px auto;
		padding: 14px 16px;
		border: var(--border-main-low) dashed 1px;
		border-radius: 12px;
		background-color: var(--bg-light);
		color: var(--text-main-high);
		box-sizing: border-box;
		opacity: 1;
	}

	.input_file_modern .upload:hover {
		border-color: var(--border-main-high);
		background-color: var(--bg-main-low);
	}

	.input_file_modern .upload_icon {
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 44px;
		border-radius: 50%;
		background-color: var(--bg-main-low);
		color: var(--text-main-high);
	}

	.input_file_modern .upload_icon i {
		margin: 0px;
		font-size: 1em;
	}

	.input_file_modern .upload_copy {
		width: auto;
		max-width: calc(100% - 57px);
		text-align: left;
		line-height: 1.2;
	}

	.input_file_modern .upload_title,
	.input_file_modern .upload_hint {
		width: auto;
		margin: 0px;
		padding: 0px;
		text-align: left;
		line-height: 1.25;
	}

	.input_file_modern .upload_title {
		font-family: var(--font-regular);
		font-size: .95em;
		color: var(--text-main-high);
	}

	.input_file_modern .upload_hint {
		margin-top: 4px;
		font-size: .72em;
		color: var(--text-gray-medium);
	}

	.input_file_modern.file_dragover .upload {
		border-color: var(--bg-main-high);
		background-color: var(--bg-main-low);
	}

	.sudi_input_crop_modal {
		position: fixed;
		top: 0px;
		right: 0px;
		bottom: 0px;
		left: 0px;
		z-index: 99999;
		display: none;
		align-items: center;
		justify-content: center;
		padding: 22px;
		background-color: var(--text-dark-alpha);
		box-sizing: border-box;
	}

	.sudi_input_crop_modal.on {
		display: flex;
	}

	.sudi_input_crop_box {
		width: min(920px, 100%);
		max-height: min(760px, calc(100vh - 44px));
		display: flex;
		flex-direction: column;
		overflow: hidden;
		border-radius: 16px;
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
	}

	.sudi_input_crop_header,
	.sudi_input_crop_footer {
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 16px 18px;
	}

	.sudi_input_crop_header {
		justify-content: space-between;
		border-bottom: var(--border-gray-low) solid 1px;
	}

	.sudi_input_crop_header p {
		margin: 0px;
		color: var(--text-main-high);
		font-family: var(--font-regular);
		font-size: 1.05em;
	}

	.sudi_input_crop_close {
		width: 38px;
		height: 38px;
		display: flex;
		align-items: center;
		justify-content: center;
		border: none;
		border-radius: 10px;
		background-color: transparent;
		color: var(--text-gray-high);
		cursor: pointer;
		font-size: 1em;
	}

	.sudi_input_crop_close:hover {
		background-color: var(--bg-main-low);
	}

	.sudi_input_crop_body {
		min-height: 380px;
		padding: 18px;
		background-color: var(--bg-gray-low);
		box-sizing: border-box;
	}

	.sudi_input_crop_body img {
		display: block;
		max-width: 100%;
		max-height: 520px;
		margin: 0px auto;
	}

	.sudi_input_crop_footer {
		justify-content: flex-end;
		border-top: var(--border-gray-low) solid 1px;
		background-color: var(--bg-light);
	}

	.sudi_input_crop_cancel,
	.sudi_input_crop_confirm {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		min-height: 42px;
		padding: 0px 16px;
		border: var(--border-main-low) solid thin;
		border-radius: 8px;
		color: var(--text-main-low);
		cursor: pointer;
		font-family: var(--font-regular);
		font-size: .92em;
	}

	.sudi_input_crop_cancel {
		background-color: var(--color-red);
		border-color: var(--color-red);
	}

	.sudi_input_crop_confirm {
		background-color: var(--bg-main-high);
		border-color: var(--border-main-high);
	}

	.sudi_input_crop_cancel:hover,
	.sudi_input_crop_confirm:hover {
		opacity: .92;
	}

	@media (max-width: 620px) {
		.upload_container.input_file_modern {
			padding: 12px;
		}

		.input_file_modern .files_container {
			grid-template-columns: 1fr;
		}

		.input_file_modern .upload {
			justify-content: flex-start;
		}

		.sudi_input_crop_modal {
			padding: 12px;
		}

		.sudi_input_crop_body {
			min-height: 280px;
			padding: 12px;
		}
	}

		.thumbnailImage {display: inline-block; margin:5px; width:90px; height:90px; border:#BABABA solid thin; background-position:center; background-repeat:no-repeat; background-size:cover;

		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
		}

		.imageElement { height:90px; width:inherit; border:#BABABA solid thin;  margin:5px 0px 5px 5px;}


/* J) R-PANEL / COMMENTS */

		.transition {
			-webkit-transition: all .3s ease-out;
			-moz-transition: all .3s ease-out;
			-o-transition: all .3s ease-out;
			transition: all .3s ease-out;
		}

	#r_panel{
			position: fixed;
			right: 0px;
			top: 10px;
			display: flex;
			flex-direction: column;
			background-color: var(--bg-light);
			width: 340px;
			height: calc(100% - 20px);
			margin-right: -350px;
			z-index: 1999;
			box-sizing: border-box;
			overflow: hidden;
			border: var(--border-gray-low) solid thin;
			border-radius: 12px;
			box-shadow: rgba(0, 0, 0, .3) 5px 5px 10px;
		}
		.r_panel_show{
				margin-right: 10px !important;
			}

	#r_panel_content{
		height: auto;
		flex: 1 1 auto;
		min-height: 0;
		overflow: auto;
	}
		#r_panel_content div .curtain_content_container { padding: 30px 10px; }

		/* A) Títulos de segmento. Conserva los h1 sin clase de tracing antiguos
		 * y admite .rp_section_title en bloques nuevos. Mismo lenguaje que Seguimiento. */
		#r_panel_content > div > .curtain_content_container > h1:not([id]):not([class]),
		#r_panel_content > .form_manage > .main_input_container > h1:not([id]):not([class]),
		#r_panel_content .rp_section_title {
			align-items: center;
			background-color: var(--bg-main-high);
			border: 0;
			border-radius: 2px;
			box-sizing: border-box;
			color: var(--text-main-low);
			display: flex;
			font-family: var(--font-medium);
			font-size: 1.12em;
			font-weight: normal;
			gap: 10px;
			line-height: 1.35;
			margin: 0 0 16px;
			padding: 12px 14px;
			text-align: left;
			width: 100%;
		}
		#r_panel_content .rp_section_title > i { color: inherit; font-size: .9em; }

		/* Estilos generales para h2 dentro de #r_panel_content en cualquier nivel */
		#r_panel_content > div > .curtain_content_container > h2:not([id]):not([class]),
		#r_panel_content > .form_manage > .main_input_container > h2:not([id]):not([class]) {
			color: var(--text-main-high) !important;
			text-align: left;
			font-size: 1.02em;
			font-family: var(--font-medium);
			margin: 18px 0 8px 0;
			padding-bottom: 6px;
			border-bottom: solid thin var(--border-main-low);
		}

		/* Estilos generales para p dentro de #r_panel_content en cualquier nivel */
		#r_panel_content > div > .curtain_content_container > p:not([id]):not([class]),
		#r_panel_content > .form_manage > .main_input_container > p:not([id]):not([class]) {
			color: var(--text-gray-high) !important;
			text-align: left;
			font-size: .94em;
			margin: 0 0 14px 0;
			line-height: 1.58;
		}

		#r_panel_content > div > .curtain_content_container > ul:not([id]):not([class]),
		#r_panel_content > div > .curtain_content_container > ol:not([id]):not([class]),
		#r_panel_content > .form_manage > .main_input_container > ul:not([id]):not([class]),
		#r_panel_content > .form_manage > .main_input_container > ol:not([id]):not([class]) {
			margin: 8px 0 18px 0;
			padding-left: 22px;
			color: var(--text-gray-high);
			line-height: 1.55;
		}

		#r_panel_content > div > .curtain_content_container > ul:not([id]):not([class]) li,
		#r_panel_content > div > .curtain_content_container > ol:not([id]):not([class]) li,
		#r_panel_content > .form_manage > .main_input_container > ul:not([id]):not([class]) li,
		#r_panel_content > .form_manage > .main_input_container > ol:not([id]):not([class]) li {
			margin-bottom: 7px;
		}

		#r_panel_content > div > .curtain_content_container > table:not([id]):not([class]),
		#r_panel_content > .form_manage > .main_input_container > table:not([id]):not([class]),
		#r_panel_content .r_panel_mini_table {
			width: 100%;
			border-collapse: collapse;
			margin: 10px 0 18px 0;
			font-size: .95em;
			border-radius: 10px;
			overflow: hidden;
			border: 1px solid var(--border-gray-medium);
			background: var(--bg-gray-low);
		}

		#r_panel_content > div > .curtain_content_container > table:not([id]):not([class]) th,
		#r_panel_content > div > .curtain_content_container > table:not([id]):not([class]) td,
		#r_panel_content > .form_manage > .main_input_container > table:not([id]):not([class]) th,
		#r_panel_content > .form_manage > .main_input_container > table:not([id]):not([class]) td,
		#r_panel_content .r_panel_mini_table th,
		#r_panel_content .r_panel_mini_table td {
			padding: 9px 10px;
			text-align: left;
			border-bottom: 1px solid var(--border-gray-low);
		}

		#r_panel_content > div > .curtain_content_container > table:not([id]):not([class]) th,
		#r_panel_content > .form_manage > .main_input_container > table:not([id]):not([class]) th,
		#r_panel_content .r_panel_mini_table th {
			font-family: var(--font-medium);
			color: var(--text-main-high);
			background: var(--bg-light);
		}

		#r_panel_content > div > .curtain_content_container > table:not([id]):not([class]) tr:last-child td,
		#r_panel_content > .form_manage > .main_input_container > table:not([id]):not([class]) tr:last-child td,
		#r_panel_content .r_panel_mini_table tr:last-child td {
			border-bottom: none;
		}


			.r_panel_img {
				display: block;
				width:150px;
				height: 150px;
				margin: 10px auto;
				background-repeat: no-repeat;
				background-position: center;
				background-size: cover;
			}

			.sudi_user_panel {
				width: 100%;
				min-height: calc(100vh - 105px);
				display: flex;
				flex-direction: column;
				gap: 14px;
				padding: 16px;
				box-sizing: border-box;
			}

			.sudi_user_header {
				display: flex;
				align-items: center;
				gap: 14px;
				padding: 16px;
				border: var(--border-gray-low) solid thin;
				border-radius: 16px;
				background-color: var(--bg-light);
			}

			.sudi_user_avatar {
				width: 72px;
				height: 72px;
				flex: 0 0 72px;
				border-radius: 18px;
				background-repeat: no-repeat;
				background-position: center;
				background-size: cover;
				border: var(--border-gray-low) solid thin;
			}

			.sudi_user_avatar_empty {
				display: flex;
				align-items: center;
				justify-content: center;
				background-color: var(--bg-main-low);
				color: var(--text-main-high);
				font-size: 1.45em;
			}

			.sudi_user_identity {
				min-width: 0px;
				flex: 1 1 auto;
			}

			.sudi_user_identity .sudi_user_label {
				margin: 0px 0px 5px 0px;
				color: var(--text-gray-medium);
				font-family: var(--font-regular);
				font-size: .72em;
				text-transform: uppercase;
			}

			.sudi_user_identity h2 {
				margin: 0px;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: 1.15em;
				line-height: 1.2;
			}

			.sudi_user_identity span {
				display: block;
				margin-top: 6px;
				color: var(--text-gray-high);
				font-family: var(--font-regular);
				font-size: .86em;
				line-height: 1.25;
			}

			.sudi_user_resume {
				display: grid;
				grid-template-columns: 1fr;
				gap: 8px;
			}

			.sudi_user_resume_item {
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 12px;
				padding: 12px 14px;
				border: var(--border-gray-low) solid thin;
				border-radius: 12px;
				background-color: var(--bg-light);
			}

			.sudi_user_resume_item span {
				color: var(--text-gray-medium);
				font-family: var(--font-regular);
				font-size: .75em;
				text-transform: uppercase;
			}

			.sudi_user_resume_item p {
				min-width: 0px;
				max-width: 58%;
				overflow: hidden;
				color: var(--text-main-high);
				font-family: var(--font-regular);
				font-size: .88em;
				line-height: 1.25;
				text-align: right;
				text-overflow: ellipsis;
				white-space: nowrap;
			}

			.sudi_user_actions {
				display: grid;
				grid-template-columns: 1fr;
				gap: 9px;
			}

			.sudi_user_action {
				min-height: 48px;
				display: flex;
				align-items: center;
				gap: 12px;
				padding: 0px 13px;
				border: var(--border-gray-low) solid thin;
				border-radius: 12px;
				background-color: var(--bg-light);
				color: var(--text-main-high);
				box-sizing: border-box;
				font-family: var(--font-regular);
				font-size: .9em;
				-webkit-transition: all .2s ease-in-out;
				-moz-transition: all .2s ease-in-out;
				-o-transition: all .2s ease-in-out;
				transition: all .2s ease-in-out;
			}

			.sudi_user_action i {
				width: 34px;
				height: 34px;
				display: flex;
				align-items: center;
				justify-content: center;
				flex: 0 0 34px;
				border-radius: 10px;
				background-color: var(--bg-main-low);
				color: var(--text-main-high);
				font-size: .95em;
			}

			.sudi_user_action.pointer:hover {
				border-color: var(--border-main-low);
				background-color: var(--bg-main-low);
				transform: translateY(-1px);
			}

			.sudi_user_action_disabled {
				color: var(--text-gray-medium);
				cursor: default;
				opacity: .72;
			}

			.sudi_user_action_disabled i {
				color: var(--text-gray-medium);
			}

			.sudi_user_action_logout {
				border-color: var(--border-main-low);
				color: var(--text-main-high);
			}

			.sudi_user_action_logout i {
				background-color: var(--bg-main-low);
				color: var(--text-main-high);
			}

			.sudi_user_brand {
				display: flex;
				align-items: center;
				gap: 11px;
				margin-top: auto;
				padding: 13px;
				border: var(--border-gray-low) solid thin;
				border-radius: 14px;
				background-color: var(--bg-light);
			}

			.sudi_user_brand img {
				width: 42px;
				height: 42px;
				flex: 0 0 42px;
				border-radius: 12px;
			}

			.sudi_user_brand p {
				margin: 0px;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: .86em;
				line-height: 1.25;
			}

			.sudi_user_brand span {
				display: block;
				margin-top: 3px;
				color: var(--text-gray-medium);
				font-family: var(--font-regular);
				font-size: .72em;
				line-height: 1.25;
			}

	#r_panel .form_manage {
			margin: 0px;
			width: 100%;
			height: auto;
			background-color: var(--color-white);
			display: block;
			border: none;
		}

			#r_panel .input_section { margin: 10px auto 12px auto; }
				/*#r_panel .textfieldHintState input { color: var(--text-gray-high) !important; font-size: .9em !important;}*/

	/* Estilos generales para el contenedor de comentarios */
	#history_comment {
		display: flex;
		flex-direction: column;
		gap: 10px;
		width: 100%;
		padding: 0px 10px;
		box-sizing: border-box;
	}

	/* Segmentos relacionados: SUDI Workspace y Comentarios dentro del panel derecho. */
	#r_panel_content .sudi_comments_segment {
		border-bottom: 1px solid var(--border-gray-low);
		margin: 0;
		padding: 18px 0;
	}
	#r_panel_content .sudi_comments_segment:first-of-type {
		border-top: 1px solid var(--border-gray-low);
	}
	#r_panel_content .sudi_comments_segment_heading {
		align-items: center;
		display: flex;
		gap: 10px;
		justify-content: space-between;
	}
	#r_panel_content h2.sudi_comments_segment_title {
		align-items: center;
		background-color: var(--bg-main-high);
		border: 0;
		border-radius: 2px;
		box-sizing: border-box;
		color: var(--text-main-low);
		display: flex;
		font-family: var(--font-medium);
		font-size: 1.12em;
		font-weight: normal;
		gap: 10px;
		line-height: 1.35;
		margin: 0;
		padding: 12px 14px;
		width: 100%;
	}
	#r_panel_content h2.sudi_comments_segment_title i {
		color: inherit;
		font-size: .92em;
	}
	#r_panel_content .sudi_workspace_actions {
		display: inline-flex;
		flex: 0 0 auto;
		gap: 6px;
	}
	#r_panel_content .sudi_workspace_action {
		align-items: center;
		background-color: var(--bg-light);
		border: 1px solid var(--border-main-low);
		border-bottom-color: var(--border-main-medium);
		border-radius: 6px;
		box-sizing: border-box;
		color: var(--text-main-high);
		cursor: pointer;
		display: inline-flex;
		flex: 0 0 40px;
		height: 40px;
		justify-content: center;
		transition: all .2s ease;
		width: 40px;
		position: relative;
	}
	#r_panel_content .sudi_workspace_action:hover {
		background-color: var(--bg-main-high);
		border-color: var(--border-main-high);
		color: var(--text-main-low);
		transform: translateY(-1px);
	}
	#r_panel_content .sudi_workspace_action i {
		color: inherit;
		font-size: 1em;
	}
	#r_panel_content .sudi_workspace_action_count {
		align-items: center;
		background-color: var(--bg-main-high);
		border: 2px solid var(--bg-light);
		border-radius: 999px;
		color: var(--text-main-low);
		display: inline-flex;
		font-family: var(--font-medium);
		font-size: 10px;
		height: 18px;
		justify-content: center;
		line-height: 1;
		min-width: 18px;
		padding: 0 4px;
		position: absolute;
		right: -7px;
		top: -7px;
	}
	#r_panel_content .sudi_workspace_groups {
		display: grid;
		gap: 14px;
		margin-top: 12px;
	}
	#r_panel_content .sudi_workspace_group {
		min-width: 0;
	}
	#r_panel_content .sudi_workspace_group .retract_resume {
		margin-top: 0;
	}
	#r_panel_content .sudi_workspace_group_content {
		margin: 0;
	}
	#r_panel_content .sudi_workspace_group_tools {
		display: flex;
		justify-content: flex-end;
	}
	#r_panel_content .sudi_comments_segment_comments {
		margin-top: 12px;
		padding-top: 22px;
	}
	#r_panel_content .sudi_workspace_items {
		border-top: 1px solid var(--border-gray-low);
		margin-top: 10px;
	}
	#r_panel_content .sudi_workspace_item {
		align-items: center;
		border-bottom: 1px solid var(--border-gray-low);
		display: flex;
		gap: 10px;
		min-height: 46px;
		padding: 7px 0;
	}
	#r_panel_content .sudi_workspace_item_icon {
		color: var(--text-main-medium);
		width: 16px;
	}
	#r_panel_content .sudi_workspace_item_info {
		flex: 1;
		min-width: 0;
	}
	#r_panel_content .sudi_workspace_item_title {
		color: var(--text-gray-high);
		display: block;
		font-family: var(--font-medium);
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	#r_panel_content .sudi_workspace_item_date {
		color: var(--text-gray-low);
		display: block;
		font-size: 12px;
		white-space: nowrap;
	}
	#r_panel_content .sudi_workspace_item_action {
		color: var(--text-gray-medium);
		cursor: pointer;
		padding: 7px;
	}
	#r_panel_content .sudi_workspace_item_action:hover {
		color: var(--text-main-high);
	}
	#r_panel_content .sudi_workspace_empty,
	#r_panel_content .sudi_comments_segment_description {
		color: var(--text-gray-medium);
		font-size: .93em;
		margin: 8px 0 0;
	}

	/* Estilos para los comentarios */
	.comment {
		position: relative;
		max-width: 80%;
		padding: 5px 10px;
		border-radius: 15px;
		font-size: 0.8em;
		line-height: 1.5;
		border: var(--border-gray-low) solid thin;
	}

		.comment ul {
			text-align: left;
		}

		.comment a img {
			max-width: 80%;
			max-height: 250px;
			border: var(--border-gray-medium) solid thin;
		}

	/* Mensaje del usuario actual alineado a la derecha */
	.comment.comm_current_user {
		align-self: flex-end;
		background-color: var(--bg-gray-low);
		color: var(--text-gray-medium);
		text-align: right;
	}

	/* Mensajes de otros usuarios alineados a la izquierda */
	.comment:not(.comm_current_user) {
		align-self: flex-start;
		background-color: var(--bg-gray-medium);
		color: var(--text-gray-high);
		text-align: left;
	}

	/* Nombre del usuario, manteniendo estilos originales */
	.comment_name {
		display: flex;
		align-items: center;
		font-size: 1em;
		margin-bottom: 2px;
	}
		.comment_name span {
			background-color: var(--bg-gray-medium);
			border: var(--bg-gray-medium) solid 2px;
			box-sizing: border-box;
			color: var(--bg-gray-low);
			width: 25px;
			height: 25px;
			display: inline-block;
			text-align: center;
			overflow: hidden;
			border-radius: 50%;
			vertical-align: middle;
			margin-right: 5px;
			font-size: 1.2em;
		}

			.comment_name span i {
				display: block;
				margin-top: 3px;
				color: var(--text-main-high);
			}
		.comment_name img {
			width: 22px;
			height: 22px;
			border-radius: 50%;
			margin-right: 5px;
		}

	/* Etiquetas de tipo de comentario, con padding y borde redondeado */
	.comm_type {
		display: inline-block;
		padding: 2px 6px;
		font-size: 0.8em;
		border-radius: 5px;
		background-color: var(--bg-gray-high);
		color: var(--text-gray-high);
		margin-top: 5px;
		margin-right: 3px;
	}

	/* Hora del comentario */
	#r_panel .comment sup {
		font-size: 0.7em;
		color: var(--text-gray-low);
		margin-top: 5px;
		display: block;
	}

	/* Día del comentario, centrado y con estilo sutil */
	.day_comment {
		text-align: center;
		font-size: 0.8em;
		color: var(--text-gray-low);
		margin-top: 20px;
		border-bottom: var(--border-gray-low) dotted thin;
	}

	/* Seguimiento: comentarios y cambios de estatus en una sola experiencia. */
	#r_panel_content .sudi_comments_segment_comments {
		box-sizing: border-box;
		margin: 18px 0 24px;
		padding: 0;
	}
	#r_panel_content .sudi_followup_title_row {
		background: var(--bg-light);
		border-bottom: 1px solid var(--border-gray-low);
	}
	#r_panel_content .sudi_followup_title_row h2.sudi_comments_segment_title {
		border-radius: 2px;
		flex: 1 1 auto;
		width: auto;
	}
	#r_panel_content .sudi_followup_title_actions {
		padding: 0 14px 0 4px;
	}
	#r_panel_content .sudi_followup_info.tooltipQuestion {
		align-items: center;
		background: transparent;
		border: 0;
		box-shadow: none;
		color: var(--text-main-high);
		cursor: pointer;
		display: inline-flex;
		font-size: 1.15em;
		height: 34px;
		justify-content: center;
		margin: 0;
		padding: 0;
		width: 34px;
	}
	#r_panel_content .sudi_followup_info.tooltipQuestion:hover { color: var(--text-main-medium); }
	#r_panel_content .sudi_followup_composer {
		background: var(--bg-light);
		border: 1px solid var(--border-main-low);
		border-radius: 10px;
		box-shadow: 0 4px 14px rgba(0,0,0,.04);
		margin: 16px 18px 18px;
		overflow: hidden;
		padding: 14px;
	}
	#r_panel_content .sudi_followup_composer_title {
		align-items: center;
		background: var(--bg-main-low);
		border-bottom: 1px solid var(--border-main-low);
		color: var(--text-main-high);
		display: flex;
		font-family: var(--font-medium);
		gap: 7px;
		margin: -14px -14px 14px;
		padding: 10px 12px;
	}
	#r_panel_content .sudi_followup_composer #comment_inputs {
		display: grid;
		gap: 10px;
	}
	#r_panel_content .sudi_followup_composer #comment_inputs > * {
		margin-bottom: 0;
	}
	#r_panel_content .sudi_followup_composer .upload_container.input_file_modern {
		box-sizing: border-box;
		margin: 0;
		padding: 7px;
		width: 100%;
	}
	#r_panel_content .sudi_followup_composer .input_file_modern .upload {
		justify-content: flex-start;
		min-height: 46px;
		padding: 7px 10px;
	}
	#r_panel_content .sudi_followup_composer .input_file_modern .upload_icon {
		flex: 0 0 26px;
		height: 26px;
		width: 26px;
	}
	#r_panel_content .sudi_followup_composer .input_file_modern .upload_copy {
		align-items: baseline;
		display: flex;
		flex-wrap: nowrap;
		gap: 0 5px;
		max-width: calc(100% - 34px);
		text-align: left;
		white-space: nowrap;
	}
	#r_panel_content .sudi_followup_composer .input_file_modern .upload_copy p {
		margin: 0;
	}
	#r_panel_content .sudi_followup_composer .input_file_modern .upload_title { font-size: .82em; }
	#r_panel_content .sudi_followup_composer .input_file_modern .upload_hint { display: none; }
	#r_panel_content .sudi_followup_composer .comment_save {
		box-sizing: border-box;
		display: flex;
		font-size: .88em;
		justify-content: center;
		margin: 10px 0 0;
		padding: 0 12px;
		white-space: nowrap;
		width: 100%;
	}
	#r_panel_content .sudi_followup_stream_header {
		align-items: center;
		display: flex;
		justify-content: space-between;
		padding: 15px 18px 8px;
	}
	#r_panel_content .sudi_followup_stream_header > div {
		align-items: center;
		color: var(--text-gray-high);
		display: flex;
		font-family: var(--font-semibold);
		gap: 7px;
	}
	#r_panel_content .sudi_followup_stream_tools {
		align-items: flex-end;
		flex-direction: column;
	}
	#r_panel_content .sudi_followup_status_toggle {
		align-items: center;
		background: var(--bg-light);
		border: 1px solid var(--border-gray-low);
		border-radius: 999px;
		color: var(--text-gray-medium);
		cursor: pointer;
		display: inline-flex;
		font-family: var(--font-regular);
		font-size: .78em;
		gap: 6px;
		padding: 5px 9px;
	}
	#r_panel_content .sudi_followup_status_toggle.active {
		background: var(--bg-main-low);
		border-color: var(--border-main-low);
		color: var(--text-main-high);
	}
	#r_panel_content .sudi_followup_status_toggle i { font-size: 1.15em; }
	#r_panel_content #reload_time {
		color: var(--text-gray-low);
		font-size: .76em;
		margin: 0;
	}
	#history_comment.sudi_followup_timeline {
		display: block;
		padding: 4px 18px 22px 46px;
		position: relative;
	}
	#history_comment.sudi_followup_timeline::before {
		background: var(--border-gray-low);
		bottom: 28px;
		content: '';
		left: 29px;
		position: absolute;
		top: 38px;
		width: 2px;
	}
	#r_panel_content .sudi_followup_day {
		margin: 16px 0 12px -28px;
		position: relative;
		text-align: center;
		z-index: 1;
	}
	#r_panel_content .sudi_followup_day span {
		background: var(--bg-gray-low);
		border: 1px solid var(--border-gray-low);
		border-radius: 999px;
		color: var(--text-gray-medium);
		display: inline-block;
		font-size: .76em;
		padding: 4px 10px;
	}
	#r_panel_content .sudi_followup_item {
		display: grid;
		gap: 10px;
		grid-template-columns: 34px minmax(0, 1fr);
		margin-left: -34px;
		padding: 0 0 12px;
		position: relative;
		z-index: 1;
	}
	#r_panel_content .sudi_followup_marker {
		align-items: center;
		background: var(--bg-light);
		border: 2px solid var(--border-gray-low);
		border-radius: 50%;
		color: var(--text-gray-medium);
		display: flex;
		height: 30px;
		justify-content: center;
		overflow: hidden;
		width: 30px;
	}
	#r_panel_content .sudi_followup_marker img {
		height: 100%;
		object-fit: cover;
		width: 100%;
	}
	#r_panel_content .sudi_followup_status .sudi_followup_marker {
		background: var(--bg-main-low);
		border-color: var(--border-main-low);
		color: var(--text-main-high);
	}
	#r_panel_content .sudi_followup_card {
		background: var(--bg-light);
		border: 1px solid var(--border-gray-low);
		border-radius: 10px;
		box-shadow: 0 2px 8px rgba(0,0,0,.035);
		box-sizing: border-box;
		min-width: 0;
		padding: 12px 13px;
	}
	#r_panel_content .sudi_followup_comment .sudi_followup_card {
		border-radius: 15px 15px 15px 5px;
		max-width: 92%;
		position: relative;
	}
	#r_panel_content .sudi_followup_comment .sudi_followup_card::before {
		background: var(--bg-light);
		border-bottom: 1px solid var(--border-gray-low);
		border-left: 1px solid var(--border-gray-low);
		bottom: -5px;
		content: '';
		height: 9px;
		left: 8px;
		position: absolute;
		transform: rotate(-35deg);
		width: 9px;
	}
	#r_panel_content .sudi_followup_comment.sudi_followup_current_user .sudi_followup_card {
		background: var(--bg-main-low);
		border-color: var(--border-main-low);
		border-radius: 15px 15px 5px 15px;
		margin-left: auto;
	}
	#r_panel_content .sudi_followup_comment.sudi_followup_current_user .sudi_followup_card::before {
		background: var(--bg-main-low);
		border-color: var(--border-main-low);
		left: auto;
		right: 8px;
		transform: rotate(-55deg);
	}
	#history_comment.sudi_followup_hide_status .sudi_followup_status { display: none; }
	#r_panel_content .sudi_followup_status .sudi_followup_card {
		border-left: 3px solid var(--border-main-medium);
	}
	#r_panel_content .sudi_followup_card_header {
		align-items: flex-start;
		display: flex;
		gap: 8px;
		justify-content: space-between;
	}
	#r_panel_content .sudi_followup_card_header > div {
		display: grid;
		gap: 1px;
	}
	#r_panel_content .sudi_followup_card_header strong {
		color: var(--text-gray-high);
		font-family: var(--font-semibold);
		font-weight: normal;
	}
	#r_panel_content .sudi_followup_card_header span,
	#r_panel_content .sudi_followup_card_header time,
	#r_panel_content .sudi_followup_meta {
		color: var(--text-gray-low);
		font-size: .76em;
	}
	#r_panel_content .sudi_followup_transition {
		align-items: center;
		background: var(--bg-gray-low);
		border-radius: 7px;
		display: flex;
		flex-wrap: wrap;
		gap: 7px;
		margin-top: 10px;
		padding: 9px 10px;
	}
	#r_panel_content .sudi_followup_transition span { color: var(--text-gray-medium); }
	#r_panel_content .sudi_followup_transition i { color: var(--text-main-medium); font-size: .8em; }
	#r_panel_content .sudi_followup_transition strong { color: var(--text-main-high); font-family: var(--font-semibold); font-weight: normal; }
	#r_panel_content .sudi_followup_observations {
		border-left: 2px solid var(--border-gray-medium);
		color: var(--text-gray-medium);
		line-height: 1.45;
		margin: 10px 0 0;
		padding-left: 9px;
	}
	#r_panel_content .sudi_followup_observations i { margin-right: 6px; }
	#r_panel_content .sudi_followup_meta { margin-top: 9px; }
	#r_panel_content .sudi_followup_meta i { margin-right: 5px; }
	#r_panel_content .sudi_followup_note {
		color: var(--text-gray-high);
		line-height: 1.5;
		margin-top: 9px;
		overflow-wrap: anywhere;
	}
	#r_panel_content .sudi_followup_note > :first-child { margin-top: 0; }
	#r_panel_content .sudi_followup_note > :last-child { margin-bottom: 0; }
	#r_panel_content .sudi_followup_attachment {
		align-items: center;
		background: var(--bg-gray-low);
		border: 1px solid var(--border-gray-low);
		border-radius: 7px;
		color: var(--text-main-high);
		display: flex;
		gap: 8px;
		margin-top: 10px;
		max-width: 100%;
		padding: 8px 10px;
	}
	#r_panel_content .sudi_followup_attachment_image { display: inline-flex; padding: 5px; }
	#r_panel_content .sudi_followup_attachment_image img { border-radius: 5px; max-height: 220px; max-width: 100%; }
	#r_panel_content .sudi_followup_empty {
		color: var(--text-gray-medium);
		padding: 34px 12px 22px;
		position: relative;
		text-align: center;
		z-index: 1;
	}
	#r_panel_content .sudi_followup_empty > span {
		align-items: center;
		background: var(--bg-light);
		border: 1px solid var(--border-gray-low);
		border-radius: 50%;
		display: inline-flex;
		height: 42px;
		justify-content: center;
		width: 42px;
	}
	#r_panel_content .sudi_followup_empty h3 { color: var(--text-gray-high); font-family: var(--font-medium); margin: 10px 0 3px; }
	#r_panel_content .sudi_followup_empty p { margin: 0; }

/* "RETRACT" Section: accion generica para mostrar u ocultar un contenido  */

	.retract_resume:not(.sudi_cc_subtitle) {
			display: flex;
			text-align: left;
			padding: 11px 12px 11px 14px;
			margin-top: 14px;
			background-color: var(--bg-light);
			color: var(--text-main-high);
			border: var(--border-gray-low) solid thin;
			border-left: var(--border-main-medium) solid 3px;
			font-family: var(--font-medium);
			border-radius: 0px 8px 8px 0px;
			justify-content: space-between;
			align-items: center;
			box-sizing: border-box;
			transition: all .25s ease;
		}
			.retract_resume:not(.sudi_cc_subtitle):hover {
				background-color: var(--bg-main-low);
				border-color: var(--border-main-low);
				border-left-color: var(--border-main-high);
			}

		.retract_resume.opened{
			background-color: var(--bg-main-low);
			border-color: var(--border-main-low);
			border-left-color: var(--border-main-high);
			border-bottom-right-radius: 0px;
		}

			.retract_resume span {
				display: inline-flex;
				width: 26px;
				height: 26px;
				align-items: center;
				justify-content: center;
				color: var(--text-main-high);
				background-color: var(--bg-main-low);
				border: var(--border-main-low) solid thin;
				border-radius: 50%;
				font-size: .95em;
				transition: all .25s ease;
			}
				.retract_resume:hover span,
				.retract_resume.opened span {
					color: var(--text-main-low);
					background-color: var(--bg-main-high);
					border-color: var(--border-main-high);
				}

		.retract_options {
			display:block;
			width:100%;
			height:0px;
			overflow:hidden;
			margin-bottom: 16px;
			box-sizing: border-box;
		}
		.retract_options.opened{
			background-color: var(--bg-light);
			border: var(--border-main-low) solid thin;
			border-top: none;
			border-left: var(--border-main-high) solid 3px;
			border-radius: 0px 0px 8px 0px;
			padding: 8px;
			box-sizing: border-box;
		}

		.comm_target_img {
			    display: block;
				max-width: 150px;
				margin: 15px auto;
				max-height: 150px;
				width: auto;
				height: auto;
		}

		#close_comments {
			position: absolute;
			float: right;
			right: 20px;
			color: var(--text-main-high);
			cursor: pointer;
			top: 11px;
			font-size: 1.5em;
			opacity: .7;
		}
		/* El título comparte cabecera con enlace directo y cierre. Reservamos
		 * ese espacio para que el ellipsis no se empalme con sus iconos. */
		#r_panel .form_title h1 {
			box-sizing: border-box;
			margin: 0;
			max-width: calc(100% - 104px);
			width: calc(100% - 104px);
		}
		#r_panel_copy_link {
			position: absolute;
			right: 58px;
			top: 12px;
			color: var(--text-main-high);
			cursor: pointer;
			font-size: 1.2em;
			opacity: .7;
		}
		#r_panel_copy_link.hidden { display: none; }
		#r_panel_copy_link:hover { opacity: 1; }
			#close_comments:hover {
				opacity: 1;
			}
		#reload_time {
				text-align: center;
				font-size: .6em;
				color: var(--text-gray-medium);
			}

	/* R-panel resume CC */

	.sudi_cc_title {
			display: block;
			box-sizing: border-box;
			border-bottom: var(--border-gray-low) solid thin;
			height: 50px;
			color: var(--text-main-high);
		}
			.sudi_cc_title .cc_title_icon {
				display: inline-flex;
				vertical-align: top;
				width:50px;
				height: inherit;
				align-items: center;
				justify-content:center;
				color:var(--text-main-high);
				font-size: 1.4em;
			}
			.sudi_cc_title .title_txt {
				display: inline-flex;
				vertical-align: top;
				width: calc(100% - 110px);
				height: inherit;
				align-items: center;
			}
			.sudi_cc_close{
				cursor: pointer;
				display: inline-flex;
				vertical-align: top;
				width:50px;
				height: inherit;
				align-items: center;
				justify-content:center;
				box-sizing: border-box;
			}
				.sudi_cc_close:hover { color:var(--text-main-high); background-color: var(--bg-main-low); }

	.sudi_cc_container {
		display: block;
		height: auto;
		padding: 4px;
	}
		.sudi_cc_container p,
		.sudi_cc_container h1,
		.sudi_cc_container h2,
		.sudi_cc_container ul,
		.sudi_cc_container ol
		{ font-size: .9em; color: var(--text-gray-high); margin: 5px; }

		.sudi_cc_container h1 { font-size: 1.1em; }
		.sudi_cc_container h2 { font-size: 1em; }

		.sudi_cc_container ul,
		.sudi_cc_container ol
		{ padding-left: 30px; }

	.sudi_cc_hr {
		border: var(--border-gray-low) solid thin;
		box-shadow: none;
		border-top: none;
		width: 80%;
		margin: 10px auto 30px auto;

	}
		.sudi_cc_hr.hr_100 { width: 100%; display: block; margin: 15px 0px; box-sizing: border-box; }
	.st_item_photo { display: inline-block; width: 30px; height: 30px; border-radius: 50%; }

	.sudi_cc_subtitle { color:var(--text-main-high); width: 90%;  margin: auto; text-align: center; border-bottom:var(--border-gray-low) solid thin;}
	.sudi_cc_resume {
		column-count: 1;
		width: 100%;
		max-width: 850px;
		margin: 12px auto;
		padding: 0px;
		box-sizing: border-box;
	}
	.sudi_cc_resume p {
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0px 8px 8px 0px;
		text-align: left;
		padding: 10px 12px;
		margin: 6px 0px;
		color: var(--text-gray-high);
		font-family: var(--font-medium);
		line-height: 1.35;
		box-sizing: border-box;
	}
		.sudi_cc_resume p a { text-decoration: underline; }

	.sudi_cc_resume p span {
		display: block;
		color: var(--text-main-high);
		font-family: var(--font-medium);
		font-size: .72em;
		letter-spacing: .03em;
		line-height: 1.2;
		margin-bottom: 4px;
		text-transform: uppercase;
	}

	/* RP TAGS */
	.rp_tag_container {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: space-between;
		margin: 16px 0px;
	}

	.rp_tag {
		background-color: var(--bg-light);
		padding: 12px;
		box-sizing: border-box;
		flex: 1 0 calc(50% - 10px);
		border-radius: 10px;
		display: flex;
		align-items: center;
		border: var(--border-gray-low) solid thin;
		border-bottom-color: var(--border-main-low);
		gap: 10px;
		transition: all .25s ease;
	}
	.rp_tag i {
		width: 36px;
		height: 36px;
		min-width: 36px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background-color: var(--bg-main-low);
		color: var(--text-main-high);
		border: var(--border-main-low) solid thin;
		border-radius: 9px;
		font-size: 1.1em;
		box-sizing: border-box;
	}

	.rp_tag_text {
		display: flex;
		flex-direction: column;
		line-height: 1.3;
	}

	.rp_tag h3 {
		margin: 0;
		font-size: .72em;
		color: var(--text-gray-medium);
		font-family: var(--font-medium);
		letter-spacing: .03em;
		text-transform: uppercase;
	}

	.rp_tag p {
		margin: 0;
		font-size: .9em;
		color: var(--text-gray-high);
		font-family: var(--font-medium);
	}

	/* PRE */
	.sudi_cc_resume pre {
			padding: 1em;
			color: var(--text-gray-high);
			background: var(--bg-gray-low);
			border: var(--border-gray-low) solid thin;
			border-left: var(--border-main-low) solid 3px;
			border-radius: 0px 8px 8px 0px;
			text-align: left;
			direction: ltr;
			tab-size: 4;
			white-space: pre-wrap;
			font-style: normal;
			min-width: 200px;
			font-family: var(--font-regular);
	}

	.sudi_cc_resume .table table tbody tr td { border: var(--border-gray-low) solid thin; padding: 0px 5px; }

	.sudi_cc_options {display: block; width: 100%; margin: 20px auto; text-align: center; }

		.sudi_cc_options span:not(.switch) {
			cursor: pointer;
			margin: 5px;
			font-size: .9em;
			text-align: center !important;
			width: 20%;
			display: inline-block;
			vertical-align: middle;
			color: var(--text-main-high);
		}
			.sudi_cc_options span i { display: block; font-size: 1.5em; color: var(--text-main-high); }
		.sudi_cc_options span:hover { opacity: .7; }
		.sudi_cc_options span a { text-decoration: none; color: var(--text-gray-high); }


	/* R-panel Btns (2024) */
	.rp_button_container {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: center;
		margin: 22px 0px;
	}

	.rp_btn {
		background-color: var(--bg-light);
		color: var(--text-main-high);
		box-sizing: border-box;
		text-align: center;
		border-radius: 10px;
		display: flex;
		align-items: center;
		justify-content: center;
		text-decoration: none;
		font-size: .9em;
		cursor: pointer;
		border: var(--border-main-low) solid thin;
		border-bottom-color: var(--border-main-medium);
		flex-direction: column;
		font-family: var(--font-medium);
		transition: all .2s ease;
	}
		.rp_btn:hover,
		.rp_btn:focus-visible {
			background-color: var(--bg-main-high);
			color: var(--text-main-low);
			border-color: var(--border-main-high);
			transform: translateY(-1px);
			outline: none;
		}
		.rp_btn:active {
			background-color: var(--bg-main-medium);
			border-color: var(--border-main-high);
			transform: translateY(0px);
		}

	 .rp_btn_sq {
		width: 62px;
		height: 62px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
		.rp_btn_sq:hover,
		.rp_btn_sq:focus-visible {
			transform: translateY(-2px);
		}

	.rp_btn_sq i {
		font-size: 1.35em;
	}

	.rp_btn_sq_text {
		text-align: center;
		font-size: .75em;
		margin-top: 5px;
		color: var(--text-gray-medium);
		word-break: break-word;
		overflow-wrap: break-word;
		white-space: normal;
		width: 100%;
		transition: all .2s ease;
	}
		.rp_button_container > div:hover .rp_btn_sq_text {
			color: var(--text-main-high);
			font-family: var(--font-medium);
		}

	.rp_btn_fw {
		width: 100%;
		margin: auto;
		flex-direction: row;
		justify-content: flex-start;
		padding: 12px 14px;
		color: var(--text-main-high);
		font-size: .98em;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0px 10px 10px 0px;
	}
		.rp_btn_fw:hover,
		.rp_btn_fw:focus-visible {
			border-left-color: var(--border-main-high);
			transform: translateX(2px);
		}

	.rp_btn_fw i {
		width: 30px;
		height: 30px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		margin-right: 10px;
		color: var(--text-main-high);
		background-color: var(--bg-main-low);
		border: var(--border-main-low) solid thin;
		border-radius: 8px;
		box-sizing: border-box;
		transition: all .2s ease;
	}
		.rp_btn_fw:hover i,
		.rp_btn_fw:focus-visible i {
			color: var(--text-main-low);
			background-color: var(--bg-main-high);
			border-color: var(--border-main-high);
		}

	.rp_btn_fw span {
		flex: 1;
		text-align: left;
		padding-left: 5px;
		transition: all .2s ease;
	}
		.rp_btn_fw:hover span,
		.rp_btn_fw:focus-visible span {
			padding-left: 9px;
		}

	/* R-panel utility blocks */
	.rp_alert {
		display: flex;
		align-items: flex-start;
		gap: 11px;
		width: 100%;
		margin: 14px 0px;
		padding: 12px 14px;
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
		border-left: var(--border-main-medium) solid 3px;
		border-radius: 0px 10px 10px 0px;
		box-sizing: border-box;
		color: var(--text-gray-high);
	}
		.rp_alert i {
			width: 32px;
			height: 32px;
			min-width: 32px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			color: var(--text-main-high);
			background-color: var(--bg-main-low);
			border: var(--border-main-low) solid thin;
			border-radius: 8px;
			box-sizing: border-box;
		}
		.rp_alert div {
			flex: 1;
			min-width: 0px;
		}
		.rp_alert h3 {
			margin: 0px 0px 4px 0px;
			color: var(--text-main-high);
			font-family: var(--font-medium);
			font-size: .92em;
			line-height: 1.25;
		}
		.rp_alert p {
			margin: 0px;
			color: var(--text-gray-high);
			font-size: .84em;
			line-height: 1.45;
		}
		.rp_alert_main {
			background-color: var(--bg-main-low);
			border-color: var(--border-main-low);
			border-left-color: var(--border-main-high);
		}
			.rp_alert_main i {
				color: var(--text-main-low);
				background-color: var(--bg-main-high);
				border-color: var(--border-main-high);
			}
		.rp_alert_soft {
			background-color: var(--bg-gray-low);
			border-left-color: var(--border-gray-medium);
		}
		.rp_alert_yellow {
			border-left-color: var(--color-yellow);
		}
			.rp_alert_yellow i {
				color: var(--text-dark);
				background-color: var(--color-yellow);
				border-color: var(--color-yellow);
			}
		.rp_alert_red {
			border-left-color: var(--color-red);
		}
			.rp_alert_red i {
				color: var(--text-light);
				background-color: var(--color-red);
				border-color: var(--color-red);
			}
		.rp_alert_green {
			border-left-color: var(--color-green);
		}
			.rp_alert_green i {
				color: var(--text-dark);
				background-color: var(--color-green);
				border-color: var(--color-green);
			}
		.rp_alert_blue {
			border-left-color: var(--color-blue);
		}
			.rp_alert_blue i {
				color: var(--text-light);
				background-color: var(--color-blue);
				border-color: var(--color-blue);
			}

	.rp_status_container {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		margin: 14px 0px;
	}
		.rp_status {
			display: inline-flex;
			align-items: center;
			gap: 7px;
			padding: 7px 10px;
			background-color: var(--bg-light);
			border: var(--border-gray-low) solid thin;
			border-radius: 30px;
			color: var(--text-gray-high);
			font-family: var(--font-medium);
			font-size: .78em;
			box-sizing: border-box;
		}
			.rp_status i {
				width: 8px;
				height: 8px;
				border-radius: 50%;
				background-color: var(--bg-main-medium);
			}
			.rp_status_active {
				color: var(--text-main-high);
				border-color: var(--border-main-low);
				background-color: var(--bg-main-low);
			}
			.rp_status_muted {
				color: var(--text-gray-medium);
				background-color: var(--bg-gray-low);
			}
				.rp_status_muted i {
					background-color: var(--bg-gray-medium);
				}

	.rp_metric_container {
		display: grid;
		grid-template-columns: repeat(2, minmax(0px, 1fr));
		gap: 10px;
		margin: 16px 0px;
	}
		.rp_metric {
			padding: 14px 12px;
			background-color: var(--bg-light);
			border: var(--border-gray-low) solid thin;
			border-bottom: var(--border-main-low) solid 2px;
			border-radius: 10px;
			box-sizing: border-box;
		}
			.rp_metric h3 {
				margin: 0px 0px 5px 0px;
				color: var(--text-gray-medium);
				font-family: var(--font-medium);
				font-size: .72em;
				letter-spacing: .03em;
				text-transform: uppercase;
			}
			.rp_metric p {
				margin: 0px;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: 1.45em;
				line-height: 1.1;
			}
			.rp_metric span {
				display: block;
				margin-top: 5px;
				color: var(--text-gray-medium);
				font-size: .78em;
				line-height: 1.3;
			}

	.rp_timeline {
		position: relative;
		margin: 16px 0px;
		padding-left: 16px;
		box-sizing: border-box;
	}
		.rp_timeline:before {
			content: '';
			position: absolute;
			left: 4px;
			top: 6px;
			bottom: 6px;
			width: 1px;
			background-color: var(--border-main-low);
		}
		.rp_timeline_item {
			position: relative;
			margin-bottom: 12px;
			padding: 10px 12px;
			background-color: var(--bg-light);
			border: var(--border-gray-low) solid thin;
			border-radius: 10px;
			box-sizing: border-box;
		}
			.rp_timeline_item:before {
				content: '';
				position: absolute;
				left: -17px;
				top: 16px;
				width: 9px;
				height: 9px;
				background-color: var(--bg-main-high);
				border: var(--border-main-low) solid 2px;
				border-radius: 50%;
				box-sizing: border-box;
			}
			.rp_timeline_item h3 {
				margin: 0px 0px 4px 0px;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: .88em;
			}
			.rp_timeline_item p {
				margin: 0px;
				color: var(--text-gray-medium);
				font-size: .8em;
				line-height: 1.45;
			}

	.rp_file {
		display: flex;
		align-items: center;
		gap: 11px;
		margin: 10px 0px;
		padding: 11px 12px;
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
		border-radius: 10px;
		box-sizing: border-box;
		color: var(--text-gray-high);
	}
		.rp_file i {
			width: 34px;
			height: 34px;
			min-width: 34px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			color: var(--text-main-high);
			background-color: var(--bg-main-low);
			border: var(--border-main-low) solid thin;
			border-radius: 9px;
			box-sizing: border-box;
		}
		.rp_file div {
			flex: 1;
			min-width: 0px;
		}
		.rp_file h3 {
			margin: 0px 0px 3px 0px;
			color: var(--text-main-high);
			font-family: var(--font-medium);
			font-size: .86em;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
		}
		.rp_file p {
			margin: 0px;
			color: var(--text-gray-medium);
			font-size: .76em;
		}


	/* B) Separación y lectura del RPanel (4.4.43).
	 * .rp_section es opcional: las clases históricas siguen funcionando solas.
	 * Un <hr> directo, .sudi_cc_hr o .rp_separator marca el cambio de segmento.
	 * Sólo cambia el panel; las mismas clases en Manage/curtain conservan su diseño. */
	#r_panel_content .rp_section { min-width: 0; }
	#r_panel_content .rp_section > :last-child { margin-bottom: 0; }
	#r_panel_content .rp_section_intro {
		color: var(--text-gray-medium);
		font-size: .88em;
		line-height: 1.6;
		margin: 0 0 16px;
		text-align: left;
	}
	#r_panel_content .rp_section > h2:not([class]),
	#r_panel_content .rp_section_subtitle {
		background: none;
		border: 0;
		color: var(--text-main-high);
		font-family: var(--font-medium);
		font-size: .96em;
		line-height: 1.4;
		margin: 20px 0 10px;
		padding: 0;
	}
	#r_panel_content hr.rp_separator,
	#r_panel_content .sudi_cc_hr,
	#r_panel_content > .form_manage > .main_input_container > hr,
	#r_panel_content > div > .curtain_content_container > hr,
	#r_panel_content .sudi_comments_segment::before {
		background: repeating-linear-gradient(135deg, transparent 0, transparent 5px, var(--border-gray-low) 5px, var(--border-gray-low) 6px);
		border: 0;
		border-block: 1px solid var(--border-gray-low);
		box-sizing: border-box;
		clear: both;
		display: block;
		height: 9px;
		margin: 26px 0;
		width: 100%;
	}
	#r_panel_content .sudi_comments_segment { border: 0; }
	#r_panel_content .sudi_comments_segment:first-of-type { border-top: 0; }
	#r_panel_content .sudi_comments_segment::before { content: ''; margin: 0 0 20px; }

	/* C) Datos: superficies neutras y etiquetas pequeñas; sin la franja de las acciones. */
	#r_panel_content .sudi_cc_resume p {
		background: var(--bg-gray-low);
		border: 0;
		border-radius: 6px;
		padding: 12px 14px;
		line-height: 1.5;
		overflow-wrap: anywhere;
	}
	#r_panel_content .sudi_cc_resume p span { color: var(--text-gray-medium); font-size: .7em; letter-spacing: .055em; }
	#r_panel_content .rp_tag { border-color: var(--border-gray-low); border-radius: 8px; gap: 8px; padding: 11px 10px; min-width: 0; }
	#r_panel_content .rp_tag > i { background: transparent; border: 0; height: 26px; min-width: 24px; width: 24px; border-radius: 0; font-size: 1em; }
	#r_panel_content .rp_tag_text { min-width: 0; overflow-wrap: anywhere; }
	#r_panel_content .rp_tag h3 { font-size: .66em; margin-bottom: 3px; }
	#r_panel_content .rp_metric { background: var(--bg-gray-low); border: 0; border-radius: 8px; padding: 16px 14px; }
	#r_panel_content .rp_metric p { font-size: 1.85em; letter-spacing: -.04em; line-height: 1.2; }
	#r_panel_content .rp_metric h3 { font-size: .67em; letter-spacing: .05em; }
	#r_panel_content .rp_metric span { font-size: .75em; }

	/* D) Acciones: contorno completo, foco visible y etiquetas estables al pasar el mouse. */
	#r_panel_content .rp_btn { border: 1px solid var(--border-main-low); border-radius: 8px; transition: background-color .18s ease, color .18s ease, border-color .18s ease; }
	#r_panel_content .rp_btn_fw { border-left-width: 1px; padding: 11px 12px; font-size: .9em; min-height: 46px; }
	#r_panel_content .rp_btn_fw > i { background: transparent; border: 0; margin-right: 8px; height: 24px; width: 24px; flex: 0 0 24px; }
	#r_panel_content .rp_btn:hover,
	#r_panel_content .rp_btn:focus-visible { transform: none; border-color: var(--border-main-high); }
	#r_panel_content .rp_btn_fw span,
	#r_panel_content .rp_btn_fw:hover span,
	#r_panel_content .rp_btn_fw:focus-visible span { padding-left: 0; }
	#r_panel_content .rp_btn:focus-visible,
	#r_panel_content .retract_resume:focus-visible { outline: 2px solid var(--border-main-high); outline-offset: 3px; }
	#r_panel_content .rp_button_container { gap: 8px; margin: 16px 0; }
	#r_panel_content .rp_btn_sq { width: 48px; height: 46px; }
	#r_panel_content .rp_btn_sq_text { font-size: .72em; margin-top: 6px; }

	/* E) Grupos desplegables: se distinguen de títulos y botones de acción. */
	#r_panel_content .retract_resume:not(.sudi_cc_subtitle) {
		background: var(--bg-gray-low);
		border: 1px solid var(--border-gray-low);
		border-radius: 8px;
		color: var(--text-gray-high);
		font-size: .9em;
		gap: 10px;
		margin-top: 14px;
		padding: 10px 12px;
		width: 100%;
		cursor: pointer;
	}
	#r_panel_content .retract_resume:not(.sudi_cc_subtitle):hover { border-color: var(--border-main-medium); }
	#r_panel_content .retract_resume:not(.sudi_cc_subtitle).opened { border-radius: 8px 8px 0 0; border-bottom-color: transparent; }
	#r_panel_content .retract_resume > span { background: transparent; border: 0; flex: 0 0 24px; height: 24px; width: 24px; }
	#r_panel_content .retract_resume:hover > span,
	#r_panel_content .retract_resume.opened > span { background: var(--bg-main-high); color: var(--text-main-low); }
	#r_panel_content .retract_options.opened { border: 1px solid var(--border-gray-low); border-top: 0; border-radius: 0 0 8px 8px; }

	/* F) Mensajes y actividad: el color semántico se conserva en las alertas existentes. */
	#r_panel_content .rp_alert { border-left-width: 3px; border-radius: 6px; gap: 10px; padding: 13px 12px; margin: 12px 0; }
	#r_panel_content .rp_alert > i { height: 26px; width: 26px; min-width: 26px; font-size: .9em; border-radius: 50%; }
	#r_panel_content .rp_alert h3 { font-size: .9em; line-height: 1.4; }
	#r_panel_content .rp_alert p { line-height: 1.6; }
	#r_panel_content .rp_timeline { padding-left: 20px; }
	#r_panel_content .rp_timeline::before { background: var(--border-gray-low); }
	#r_panel_content .rp_timeline_item { background: transparent; border: 0; border-radius: 0; margin-bottom: 0; padding: 8px 0 18px 10px; }
	#r_panel_content .rp_timeline_item::before { left: -20px; top: 13px; }
	#r_panel_content .rp_file { border-radius: 8px; padding: 12px; }
	#r_panel_content .rp_file > i { background: var(--bg-gray-low); border: 0; }

/* K) DASHBOARD WIDGETS */

	.dw_demo {
		display: block;
		width: 94%;
		max-width: 1440px;
		margin: 28px auto 45px auto;
		padding-bottom: 20px;
		box-sizing: border-box;
	}
	.dw_home {
		display: block;
		width: 94%;
		max-width: 1320px;
		margin: 28px auto 45px auto;
		padding-bottom: 20px;
		box-sizing: border-box;
	}
		.dw_demo_intro { margin-bottom: 20px; }
		.dw_demo_intro h1,
		#info_container .dw_demo_intro h1 {
			margin: 0px;
			color: var(--text-main-high);
			font-family: var(--font-medium);
			font-size: 1.8em;
			line-height: 1.15;
		}
		.dw_demo_intro p {
			margin: 5px 0px 0px 0px;
			color: var(--text-gray-medium);
			font-size: .86em;
		}

	.dw_grid {
		display: grid;
		grid-template-columns: repeat(12, minmax(0px, 1fr));
		gap: 16px;
		width: 100%;
		box-sizing: border-box;
	}
	.dw_region { min-width: 0px; align-self: start; }
		.dw_region_head { margin: 0px 0px 12px 0px; }
		.dw_region_title,
		#info_container .dw_region_title { margin: 0px; color: var(--text-main-high); font-family: var(--font-medium); font-size: 1.12em; line-height: 1.25; }
		.dw_region_subtitle,
		#info_container .dw_region_subtitle { margin: 4px 0px 0px 0px; color: var(--text-gray-medium); font-size: .78em; line-height: 1.35; }

	.dw_widget {
		min-width: 0px;
		padding: 18px;
		background-color: var(--bg-light);
		border: var(--border-gray-low) solid thin;
		border-left: var(--border-main-low) solid 3px;
		border-radius: 0px 12px 12px 0px;
		box-sizing: border-box;
		color: var(--text-gray-high);
	}
		.dw_clickable {
			cursor: pointer;
			transition: all .2s ease;
		}
		.dw_widget.dw_clickable:hover {
			background-color: var(--bg-main-low);
			border-left-color: var(--border-main-high);
		}
		.dw_span_1 { grid-column: span 1; }
		.dw_span_2 { grid-column: span 2; }
		.dw_span_3 { grid-column: span 3; }
		.dw_span_4 { grid-column: span 4; }
		.dw_span_5 { grid-column: span 5; }
		.dw_span_6 { grid-column: span 6; }
		.dw_span_7 { grid-column: span 7; }
		.dw_span_8 { grid-column: span 8; }
		.dw_span_9 { grid-column: span 9; }
		.dw_span_10 { grid-column: span 10; }
		.dw_span_11 { grid-column: span 11; }
		.dw_span_12 { grid-column: span 12; }

	.dw_head {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 10px;
		margin-bottom: 14px;
	}
		.dw_heading { min-width: 0px; }
		.dw_title,
		#info_container .dw_title {
			margin: 0px;
			color: var(--text-main-high);
			font-family: var(--font-medium);
			font-size: .98em;
			line-height: 1.25;
		}
		.dw_subtitle,
		#info_container .dw_subtitle {
			margin: 4px 0px 0px 0px;
			color: var(--text-gray-medium);
			font-size: .78em;
			line-height: 1.35;
		}
		.dw_action,
		.dw_item_action {
			width: 28px;
			height: 28px;
			min-width: 28px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background-color: var(--bg-main-low);
			border: var(--border-main-low) solid thin;
			border-radius: 50%;
			box-sizing: border-box;
			color: var(--text-main-high);
			text-decoration: none;
			font-size: .78em;
			transition: all .2s ease;
		}
			.dw_action:hover,
			.dw_action:focus-visible,
			.dw_item_action:hover,
			.dw_item_action:focus-visible {
				background-color: var(--bg-main-high);
				border-color: var(--border-main-high);
				color: var(--text-main-low);
				outline: none;
			}

	.dw_metric {
		display: flex;
		align-items: center;
		gap: 13px;
		min-height: 108px;
	}
		.dw_metric.dw_clickable {
			position: relative;
			border-left-color: var(--border-main-medium);
			padding-right: 34px;
		}
		.dw_metric.dw_clickable:after {
			content: '\f061';
			position: absolute;
			top: 12px;
			right: 12px;
			color: var(--text-main-medium);
			font-family: 'Font Awesome 6 Free';
			font-size: .68em;
			font-weight: 900;
			transition: all .2s ease;
		}
		.dw_metric.dw_clickable:hover:after {
			color: var(--text-main-high);
			transform: translateX(2px);
		}
		.dw_metric_icon,
		.dw_list_icon {
			width: 48px;
			height: 48px;
			min-width: 48px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background-color: var(--bg-main-low);
			border: var(--border-main-low) solid thin;
			border-radius: 50%;
			box-sizing: border-box;
			color: var(--text-main-high);
			font-size: 1.3em;
		}
		.dw_metric_content { min-width: 0px; flex: 1; }
		.dw_metric .dw_head { margin-bottom: 5px; }
		.dw_metric .dw_title { color: var(--text-gray-medium); font-family: var(--font-regular); }
		.dw_value {
			margin: 0px;
			color: var(--text-main-high);
			font-family: var(--font-semibold);
			font-size: 1.55em;
			line-height: 1.1;
			letter-spacing: -.02em;
		}
		.dw_meta {
			margin: 5px 0px 0px 0px;
			color: var(--text-gray-medium);
			font-size: .76em;
			line-height: 1.35;
		}

	.dw_metric_chart .dw_head { margin-bottom: 7px; }
	.dw_metric_chart_summary { display: flex; align-items: baseline; gap: 10px; }
	.dw_metric_chart_summary .dw_meta { margin: 0px; }
	.dw_chart_canvas { height: 168px; margin-top: 14px; }
		.dw_chart_canvas canvas,
		.dw_chart_canvas svg { display: block; width: 100% !important; height: 100% !important; max-width: 100%; }

	.dw_list { display: flex; flex-direction: column; gap: 8px; }
		.dw_list_item {
			display: flex;
			align-items: center;
			gap: 10px;
			min-width: 0px;
			padding: 10px;
			background-color: var(--bg-gray-low);
			border: var(--border-gray-low) solid thin;
			border-radius: 10px;
			box-sizing: border-box;
		}
			.dw_list_item.dw_clickable:hover {
				background-color: var(--bg-main-low);
				border-color: var(--border-main-low);
			}
			.dw_list_icon { width: 38px; height: 38px; min-width: 38px; font-size: 1em; border-radius: 10px; }
			.dw_list_content { flex: 1; min-width: 0px; }
			.dw_list_content h4 {
				margin: 0px;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: .84em;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
			}
			.dw_list_content p,
			.dw_list_meta {
				margin: 3px 0px 0px 0px;
				color: var(--text-gray-medium);
				font-size: .72em;
				line-height: 1.3;
			}
			.dw_list_meta { margin: 0px; white-space: nowrap; }

	.dw_table_panel { padding: 0px; overflow: hidden; }
		.dw_table_panel .dw_head { padding: 18px 18px 0px 18px; }
		.dw_table_panel_actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; padding: 12px 18px; }
		.dw_table_action { min-height: 30px; padding: 0px 10px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; background-color: var(--bg-light); border: var(--border-main-low) solid thin; border-radius: 7px; box-sizing: border-box; color: var(--text-main-high); cursor: pointer; font-family: var(--font-medium); font-size: .72em; text-decoration: none; transition: all .2s ease; }
		.dw_table_action:hover { background-color: var(--bg-main-low); border-color: var(--border-main-medium); color: var(--text-main-high); }
			.dw_table_action i { color: var(--text-main-medium); font-size: 1.1em; }
		.dw_table_scroll { width: 100%; overflow-x: auto; }
		.dw_table { width: 100%; border-collapse: collapse; }
			.dw_table th,
			.dw_table td {
				padding: 11px 18px;
				border-top: var(--border-gray-low) solid thin;
				text-align: left;
				white-space: nowrap;
			}
			.dw_table th {
				background-color: var(--bg-gray-low);
				color: var(--text-gray-medium);
				font-family: var(--font-medium);
				font-size: .72em;
				font-weight: normal;
			}
			.dw_table td { color: var(--text-main-high); font-size: .78em; }
			.dw_table tbody tr:hover td { background-color: var(--bg-main-low); }
			.dw_table tr.dw_clickable { cursor: pointer; }
			.dw_table_actions_head,
			.dw_table_cell_actions { width: 1%; text-align: right !important; }
			.dw_table_row_actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
			.dw_table_row_action { width: 30px; min-width: 30px; padding: 0px; border-radius: 6px; }
			.dw_table_row_action span { display: none; }

	.dw_calendar { min-height: 336px; }
		.dw_calendar .fc {
			--fc-page-bg-color: var(--bg-light);
			--fc-neutral-bg-color: var(--bg-gray-low);
			--fc-neutral-text-color: var(--text-gray-medium);
			--fc-border-color: var(--border-gray-low);
			--fc-button-text-color: var(--text-main-high);
			--fc-button-bg-color: var(--bg-main-low);
			--fc-button-border-color: var(--border-main-low);
			--fc-button-hover-bg-color: var(--bg-main-high);
			--fc-button-hover-border-color: var(--border-main-high);
			--fc-button-active-bg-color: var(--bg-main-high);
			--fc-button-active-border-color: var(--border-main-high);
			--fc-event-bg-color: var(--bg-main-high);
			--fc-event-border-color: var(--border-main-high);
			--fc-event-text-color: var(--text-main-low);
			font-family: var(--font-regular);
		}
		.dw_calendar .fc .fc-toolbar { margin-bottom: 12px; }
		.dw_calendar .fc .fc-toolbar-title { color: var(--text-main-high); font-family: var(--font-medium); font-size: .9em; text-transform: capitalize; }
		.dw_calendar .fc .fc-button { padding: 5px 8px; box-shadow: none; font-family: var(--font-medium); font-size: .7em; text-transform: none; }
		.dw_calendar .fc .fc-button:focus { box-shadow: none; }
		.dw_calendar .fc .fc-col-header-cell-cushion { padding: 6px 2px; color: var(--text-gray-medium); font-size: .68em; text-decoration: none; }
		.dw_calendar .fc .fc-daygrid-day-number { padding: 5px; color: var(--text-gray-high); font-size: .72em; text-decoration: none; }
		.dw_calendar .fc .fc-daygrid-day.fc-day-today { background-color: var(--bg-main-low); }
		.dw_calendar .fc .fc-event { padding: 2px 4px; border-radius: 4px; font-size: .66em; }
		.dw_calendar .fc .dw_fc_tone_success { --fc-event-bg-color: var(--color-green); --fc-event-border-color: var(--color-green); --fc-event-text-color: var(--text-dark); }
		.dw_calendar .fc .dw_fc_tone_warning { --fc-event-bg-color: var(--color-yellow); --fc-event-border-color: var(--color-yellow); --fc-event-text-color: var(--text-dark); }
		.dw_calendar .fc .dw_fc_tone_danger { --fc-event-bg-color: var(--color-red); --fc-event-border-color: var(--color-red); --fc-event-text-color: var(--text-light); }
		.dw_calendar .fc .dw_fc_tone_info { --fc-event-bg-color: var(--color-blue); --fc-event-border-color: var(--color-blue); --fc-event-text-color: var(--text-light); }

	.dw_finance_strip { padding: 0px; overflow: hidden; }
		.dw_finance_strip .dw_head { padding: 16px 18px 0px 18px; margin-bottom: 12px; }
		.dw_finance_items {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
			gap: 1px;
			background-color: var(--border-gray-low);
		}
		.dw_finance_item {
			min-width: 0px;
			padding: 13px 16px;
			background-color: var(--bg-light);
			box-sizing: border-box;
			border-bottom: transparent solid 2px;
		}
			.dw_finance_item.dw_clickable { position: relative; padding-right: 35px; }
			.dw_finance_item.dw_clickable:after {
				content: '\f061';
				position: absolute;
				top: 14px;
				right: 14px;
				color: var(--text-main-medium);
				font-family: 'Font Awesome 6 Free';
				font-size: .65em;
				font-weight: 900;
				transition: all .2s ease;
			}
			.dw_finance_item.dw_clickable:hover { background-color: var(--bg-main-low); }
			.dw_finance_item.dw_clickable:hover:after { color: var(--text-main-high); transform: translateX(2px); }
			.dw_finance_label,
			.dw_finance_value,
			.dw_finance_meta { margin: 0px; }
			.dw_finance_label { color: var(--text-gray-medium); font-size: .72em; }
			.dw_finance_value { margin-top: 5px; color: var(--text-main-high); font-family: var(--font-semibold); font-size: 1em; }
			.dw_finance_meta { margin-top: 4px; color: var(--text-gray-medium); font-size: .7em; }
			.dw_finance_tone_success { border-bottom-color: var(--color-green); }
			.dw_finance_tone_warning { border-bottom-color: var(--color-yellow); }
			.dw_finance_tone_danger { border-bottom-color: var(--color-red); }
			.dw_finance_tone_info { border-bottom-color: var(--color-blue); }

	.dw_chart_panel_canvas { width: 100%; }
		.dw_chart_panel_canvas canvas { display: block; width: 100% !important; height: 100% !important; }

	.dw_people { display: flex; flex-direction: column; gap: 8px; }
		.dw_person {
			display: flex;
			align-items: center;
			gap: 10px;
			min-width: 0px;
			padding: 10px;
			background-color: var(--bg-gray-low);
			border: var(--border-gray-low) solid thin;
			border-radius: 10px;
			box-sizing: border-box;
		}
			.dw_person.dw_clickable:hover { background-color: var(--bg-main-low); border-color: var(--border-main-low); }
			.dw_person_avatar {
				width: 38px;
				height: 38px;
				min-width: 38px;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				overflow: hidden;
				background-color: var(--bg-main-low);
				border: var(--border-main-low) solid thin;
				border-radius: 50%;
				box-sizing: border-box;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: .8em;
			}
				.dw_person_avatar img { width: 100%; height: 100%; object-fit: cover; }
			.dw_person_content { flex: 1; min-width: 0px; }
			.dw_person_content h4 {
				margin: 0px;
				color: var(--text-main-high);
				font-family: var(--font-medium);
				font-size: .84em;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
			}
			.dw_person_content p,
			.dw_person_meta { margin: 3px 0px 0px 0px; color: var(--text-gray-medium); font-size: .72em; }
			.dw_person_meta { margin: 0px; white-space: nowrap; }

	.dw_message {
		display: flex;
		align-items: flex-start;
		gap: 18px;
		padding: 26px;
		background-color: var(--bg-main-low);
		border-color: var(--border-main-low);
		border-left-color: var(--border-main-high);
	}
		.dw_message_icon {
			width: 58px;
			height: 58px;
			min-width: 58px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background-color: var(--bg-main-high);
			border: var(--border-main-high) solid thin;
			border-radius: 16px;
			box-sizing: border-box;
			color: var(--text-main-low);
			font-size: 1.5em;
		}
		.dw_message_content { flex: 1; min-width: 0px; }
		.dw_message .dw_head { margin: 0px 0px 7px 0px; }
		.dw_message .dw_title { color: var(--text-main-high); font-size: 1.45em; }
		.dw_message_eyebrow { margin: 0px 0px 5px 0px; color: var(--text-main-medium); font-family: var(--font-medium); font-size: .74em; letter-spacing: .05em; text-transform: uppercase; }
		.dw_message_text { max-width: 72ch; margin: 0px; color: var(--text-gray-high); font-size: .9em; line-height: 1.5; }
		.dw_message_meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
			.dw_message_meta span {
				display: inline-flex;
				align-items: center;
				gap: 6px;
				padding: 6px 9px;
				background-color: var(--bg-light);
				border: var(--border-main-low) solid thin;
				border-radius: 7px;
				color: var(--text-gray-high);
				font-size: .74em;
			}
			.dw_message_meta i { color: var(--text-main-medium); }
		.dw_message .dw_action { width: auto; min-width: 34px; height: 34px; padding: 0px 10px; border-radius: 8px; }

	.dw_shortcut_grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
		.dw_shortcut {
			display: flex;
			align-items: center;
			gap: 11px;
			min-width: 0px;
			padding: 13px;
			background-color: var(--bg-gray-low);
			border: var(--border-gray-low) solid thin;
			border-radius: 10px;
			box-sizing: border-box;
		}
			.dw_shortcut.dw_clickable { position: relative; padding-right: 32px; }
			.dw_shortcut.dw_clickable:after {
				content: '\f061';
				position: absolute;
				top: 16px;
				right: 13px;
				color: var(--text-main-medium);
				font-family: 'Font Awesome 6 Free';
				font-size: .65em;
				font-weight: 900;
				transition: all .2s ease;
			}
			.dw_shortcut.dw_clickable:hover { background-color: var(--bg-main-low); border-color: var(--border-main-low); }
			.dw_shortcut.dw_clickable:hover:after { color: var(--text-main-high); transform: translateX(2px); }
			.dw_shortcut_icon {
				width: 38px;
				height: 38px;
				min-width: 38px;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				background-color: var(--bg-main-low);
				border: var(--border-main-low) solid thin;
				border-radius: 10px;
				box-sizing: border-box;
				color: var(--text-main-high);
			}
			.dw_shortcut_content { min-width: 0px; }
			.dw_shortcut_content h4 { margin: 0px; color: var(--text-main-high); font-family: var(--font-medium); font-size: .84em; }
			.dw_shortcut_content p { margin: 3px 0px 0px 0px; color: var(--text-gray-medium); font-size: .72em; line-height: 1.35; }

	.dw_blog_list { display: flex; flex-direction: column; gap: 12px; }
	.dw_blog_slider { min-width: 0px; }
		.dw_blog_slide { display: none; }
		.dw_blog_slide.dw_active { display: block; }
		.dw_blog_slider_controls { display: flex; align-items: center; justify-content: center; gap: 10px; padding-top: 12px; }
		.dw_blog_dots { display: flex; justify-content: center; gap: 7px; }
			.dw_blog_dot { width: 8px; height: 8px; padding: 0px; background-color: var(--bg-gray-medium); border: none; border-radius: 50%; cursor: pointer; transition: all .2s ease; }
			.dw_blog_dot:hover { background-color: var(--bg-main-medium); }
			.dw_blog_dot.dw_active { width: 22px; background-color: var(--bg-main-high); border-radius: 8px; }
		.dw_blog_arrow { width: 28px; height: 28px; padding: 0px; display: inline-flex; align-items: center; justify-content: center; background-color: var(--bg-light); border: var(--border-main-low) solid thin; border-radius: 50%; box-sizing: border-box; color: var(--text-main-high); cursor: pointer; transition: all .2s ease; }
		.dw_blog_arrow:hover { background-color: var(--bg-main-low); border-color: var(--border-main-medium); color: var(--text-main-high); }
			.dw_blog_arrow i { font-size: .72em; }
		.dw_blog_item {
			display: flex;
			min-width: 0px;
			overflow: hidden;
			background-color: var(--bg-light);
			border: var(--border-gray-low) solid thin;
			border-radius: 10px;
			box-sizing: border-box;
		}
			.dw_blog_item.dw_clickable { position: relative; }
			.dw_blog_item.dw_clickable:hover { border-color: var(--border-main-low); background-color: var(--bg-gray-low); }
			.dw_blog_media { display: flex; align-items: center; justify-content: center; overflow: hidden; background-color: var(--bg-main-low); color: var(--text-main-high); font-size: 2em; }
				.dw_blog_media img { width: 100%; height: 100%; object-fit: cover; }
			.dw_blog_content { min-width: 0px; flex: 1; padding: 16px; box-sizing: border-box; }
			.dw_blog_meta { display: flex; flex-wrap: wrap; gap: 7px; margin: 0px 0px 7px 0px; color: var(--text-gray-medium); font-size: .7em; }
				.dw_blog_meta span { color: var(--text-main-medium); font-family: var(--font-medium); }
			.dw_blog_content h4 { margin: 0px; color: var(--text-main-high); font-family: var(--font-medium); font-size: 1em; line-height: 1.25; }
			.dw_blog_subtitle { margin: 5px 0px 0px 0px; color: var(--text-gray-medium); font-size: .8em; }
			.dw_blog_text { margin: 10px 0px 0px 0px; color: var(--text-gray-high); font-size: .8em; line-height: 1.5; }
			.dw_blog_read { display: inline-flex; align-items: center; gap: 7px; margin-top: 12px; color: var(--text-main-medium); font-family: var(--font-medium); font-size: .75em; }
			.dw_blog_read i { transition: all .2s ease; }
			.dw_blog_item.dw_clickable:hover .dw_blog_read i { transform: translateX(2px); }
			.dw_blog_image_top { flex-direction: column; }
				.dw_blog_image_top .dw_blog_media { width: 100%; max-height: 500px; aspect-ratio: 16 / 10; align-self: center; }
				.dw_blog_image_top.dw_blog_size_small .dw_blog_media { max-width: 420px; aspect-ratio: 16 / 9; }
			.dw_blog_image_left,
			.dw_blog_image_right { align-items: stretch; }
				.dw_blog_image_left .dw_blog_media,
				.dw_blog_image_right .dw_blog_media { width: 35%; min-width: 170px; }
				.dw_blog_image_left.dw_blog_size_small .dw_blog_media,
				.dw_blog_image_right.dw_blog_size_small .dw_blog_media { width: 25%; min-width: 112px; max-width: 250px; }
				.dw_blog_image_right .dw_blog_media { order: 2; }
				.dw_blog_image_right .dw_blog_content { order: 1; }

	@media only screen and (max-width: 620px) {
		.dw_blog_image_left,
		.dw_blog_image_right { flex-direction: column; }
		.dw_blog_image_left .dw_blog_media,
		.dw_blog_image_right .dw_blog_media,
		.dw_blog_image_left.dw_blog_size_small .dw_blog_media,
		.dw_blog_image_right.dw_blog_size_small .dw_blog_media { width: 100%; min-width: 0px; height: 130px; order: 0; }
		.dw_blog_image_right .dw_blog_content { order: 1; }
	}

	.dw_tone_primary { border-left-color: var(--border-main-high); }
	.dw_tone_info { border-left-color: var(--color-blue); }
	.dw_tone_success { border-left-color: var(--color-green); }
	.dw_tone_warning { border-left-color: var(--color-yellow); }
	.dw_tone_danger { border-left-color: var(--color-red); }

	@media only screen and (max-width: 900px) {
		.dw_span_1,
		.dw_span_2,
		.dw_span_3,
		.dw_span_4 { grid-column: span 6; }
	}

	@media only screen and (max-width: 620px) {
		.dw_grid { gap: 12px; }
		.dw_widget { padding: 15px; }
		.dw_span_1,
		.dw_span_2,
		.dw_span_3,
		.dw_span_4,
		.dw_span_5,
		.dw_span_6,
		.dw_span_7,
		.dw_span_8,
		.dw_span_9,
		.dw_span_10,
		.dw_span_11,
		.dw_span_12 { grid-column: span 12; }
		.dw_table_panel .dw_head { padding: 15px 15px 0px 15px; }
		.dw_table th,
		.dw_table td { padding: 10px 15px; }
	}

/* L) REPORTS */

	/* REPORT LIST */

	#report_items_container {
			display:block;
			width:90%;
			margin:20px auto;
			text-align:center;
		}
			.report_item {
				display:inline-block;
				vertical-align:top;
				margin:30px 2px;
				width:250px;
				min-height:50px;
				box-sizing:border-box;
				background-color:#FFF;
				border-radius:5px;
				overflow:hidden;
				border:#E2E2E2 solid 1px;
			}

				.report_item_info {
					display:block;
					height:120px;
					box-sizing:border-box;
					width:100%;
					padding-top: 1px;
					margin-top: -1px;
					cursor:pointer;

				}

					.report_item_info h3 {
						display:block;
						color:var(--color-red);
						text-align:center;
						margin:0px 10px 10px 10px;
					}

					.report_item_info .icon {
						font-size:3em;
						margin:20px 0px 0px 0px;
						display:block;
						text-align:center;
						background: -webkit-linear-gradient(rgba(202, 76, 59, 1) 0%, rgba(106, 81, 142, 1) 35%, rgba(137, 182, 85, 1) 65%, rgba(104, 181, 199, 1));
						-webkit-background-clip: text;
						-webkit-text-fill-color: transparent;
					}

						.report_item_info:hover { background-color:#FAFAFA; }
						.report_item_info:hover h3{ color:#CACACA;}

				.report_item_resume {
					display:block;
					height:180px;
					box-sizing:border-box;
					width:100%;
					background-color:#FAFAFA;
					padding-top:1px;
					margin-top:-1px;
				}

					.report_item_resume .icon {

						display:block;
						text-align:center;
						margin:60px 0px 0px 0px;
						font-size:4.5em;
						color:#EAEAEA;
					}

							.report_item_resume:hover .icon {
								color:#FAFAFA;
							}

/* REPORT DETAIL */

#report_list_container {
	padding:30px;
}

	#report_list_container .option_btn {
		float:right;
		cursor:pointer;
		margin-right:20px;
		font-size:1.5em;
	}
		#report_list_container .option_btn i {
			background: -webkit-linear-gradient(rgba(202, 76, 59, 1) 0%, rgba(106, 81, 142, 1) 35%, rgba(137, 182, 85, 1) 65%, rgba(104, 181, 199, 1));
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
		}

	#report_list_container h1 {
		color:var(--text-gray-high);
		font-size:1.6em;
	}

	#report_list_container h2 {
		display:block;
		position:relative;
		color:var(--text-gray-medium);
		font-size:1.2em;
		margin: 35px auto 15px auto;
		padding-left:20px;
		text-align:left;
		width:100%;
	}

		 #report_list_container h2:after {
			content: " ";
			display: block;
			border-bottom: var(--border-gray-medium) solid thin;
			height: 1px;
			width: 100%;
			margin:0px auto 20px auto;
		 }


	.chart_container {
		width:100%;
		max-width:1000px;
		margin:10px auto;
	}
	.chart_container canvas {
		width:100%;
	}

	.chart_2x { display: flex; align-items: center; max-width: 1100px; margin: auto; }
		.chart_2x .sudi_tb_container { width: 70%; overflow:unset;}
		.chart_2x .chart_container { display: inline-flex; width: 30%;}

.report_table_container {
	display:block;
	width:95%;
	max-width:1200px;
	margin:30px auto;
}
	.report_table_container .table_title {
		display:block;
		text-align:center;
		font-size:.8em;
		margin:2px 0px;
	}
	.report_table_title_row {
		height:auto;
		background-color:#ca4b3b;
		display: flex; /* Igualamos el alto de lo 'children'*/
	}

		.report_table_title_row div {
			display:block;
			height:auto;
			text-align:center;
			padding:8px 0px 8px 0px;
			color:#FFF;
			font-size:.9em;
		}

	.report_table_rows_container {
		border:#b3b3b3 solid thin;
		border-top:none;
		max-height:500px;
		overflow:auto;
		background-color:#FFF;
	}

		/* ALT */

		.report_table_rows_container.table_alt {
			background-color:rgba(255,255,255,.4);
			border:none;
			border-radius:none;
		}

		/* 1000px HEIGHT*/

		.report_table_rows_container.table_2x {
			max-height:1000px;
		}

		/* NO OVERFLOW */

		.report_table_rows_container.no_wrap{
			max-height:none;
			overflow:visible;
		}

	.report_table_row {
		display: flex; /* Igualamos el alto de lo 'children'*/
	}

		.report_table_row div {
			position:relative;
			display:inline-block;
			text-align:center;
			padding:18px 0px 18px 0px;
			color:#3c3c3b;
			font-size:.8em;
			box-sizing:border-box;

			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
		}

			.line_report_table_row {
				display:block;
				width:85%;
				margin:5px auto;
				height:2px;
				border-bottom:#eaeaea solid thin;

			}

			.report_table_row_result div {
				padding-top:8px;
				font-size:1.1em;
			}

			/* HEADER CONTROLS */

			.header_content .input_section {
				margin-top:0px;
				max-width:140px;
			}

				.header_content .tooltipQuestion {
					font-size:.6em;
				}

				.header_content .Spry {
					width:100% !important;
				}
					.header_content .Spry label {
						margin:2px 0px 0px 0px;
						text-align:center;
						font-size:.7em;

						color:rgba(255,255,255, .85);
					    font-family: 'montserratregular';
					}

					.header_content .aTextField { height:30px; border-radius:14px; background-color:rgba(255,255,255,.7); }
					.header_content .date_calendar { top:29px; }

			.header_content .report_upbar_btn {
				display:inline-block;
				height:36px;
				width:auto;
				padding:10px 10px;
				border:rgba(255,255,255,.8) solid 2px;
				box-sizing:border-box;
				margin:7px 25px;
				border-radius:6px;
				color:rgba(255,255,255,.8);
				font-size:.8em;
				cursor:pointer;
				transition:all .5s ease;
			}

				.header_content .report_upbar_btn:hover {
					background-color:rgba(255,255,255,.9);
					border:rgba(255,255,255,.9) solid 2px;
					color:#6cc04a;
				}

			.report_btn_container {
				display:flex;
				width:80%;
				max-width:600px;
				margin:20px auto;
			}

				.report_detail_btn {
					display:inline-block;
					width:40%;
					margin:5px auto;
					color:#FFF;
					padding:10px 5px;
					text-align:center;
					border-radius:6px;
					cursor:pointer;
					transition:all .5s ease;
					box-sizing:border-box;
					opacity:.8;

				}

					.report_detail_btn.red {
						background-color:rgba(232,75,55, .8);
						border-color:var(--color-red);
					}

					.report_detail_btn.green {
						background-color:rgba(108,192,74, .8);
						border-color:#6cc04a;
					}

						.report_detail_btn:hover {
							opacity:1;
						}

			/* DETALLE - CURTAIN*/

			.reporte_detail_container {
				display:block;
				width:90%;
				margin:20px auto;
				padding:10px;

			}



	/* REPORT LIST */

	#report_items_container {
			display:block;
			width:90%;
			margin:20px auto;
			text-align:center;
		}
			.report_item {
				display:inline-block;
				vertical-align:top;
				margin:30px 2px;
				width:250px;
				min-height:50px;
				box-sizing:border-box;
				background-color:#FFF;
				border-radius:5px;
				overflow:hidden;
				border:#E2E2E2 solid 1px;
			}

				.report_item_info {
					display:block;
					height:120px;
					box-sizing:border-box;
					width:100%;
					padding-top: 1px;
					margin-top: -1px;
					cursor:pointer;

				}

					.report_item_info h3 {
						display:block;
						color:var(--color-red);
						text-align:center;
						margin:0px 10px 10px 10px;
					}

					.report_item_info .icon {
						font-size:3em;
						margin:20px 0px 0px 0px;
						display:block;
						text-align:center;
						background: -webkit-linear-gradient(rgba(202, 76, 59, 1) 0%, rgba(106, 81, 142, 1) 35%, rgba(137, 182, 85, 1) 65%, rgba(104, 181, 199, 1));
						-webkit-background-clip: text;
						-webkit-text-fill-color: transparent;
					}

						.report_item_info:hover { background-color:#FAFAFA; }
						.report_item_info:hover h3{ color:#CACACA;}

				.report_item_resume {
					display:block;
					height:180px;
					box-sizing:border-box;
					width:100%;
					background-color:#FAFAFA;
					padding-top:1px;
					margin-top:-1px;
				}

					.report_item_resume .icon {

						display:block;
						text-align:center;
						margin:60px 0px 0px 0px;
						font-size:4.5em;
						color:#EAEAEA;
					}

							.report_item_resume:hover .icon {
								color:#FAFAFA;
							}

/* ==================== [SUDI CALENDAR FOLDERS] ==================== */
.sudi_calendar_folders_panel { display: grid; gap: 14px; }
.sudi_calendar_folders_panel h2 { color: var(--text-gray-high); font-size: 1.35em; margin: 8px 0 0; }
.sudi_calendar_folder_feature,
.sudi_calendar_folder_item { align-items: center; background: var(--bg-light); border: 1px solid var(--border-gray-low); border-radius: 10px; display: flex; gap: 12px; justify-content: space-between; padding: 13px 14px; }
.sudi_calendar_folder_feature { background: var(--bg-gray-low); }
.sudi_calendar_folder_feature h3 { align-items: center; color: var(--text-gray-high); display: flex; font-size: 1em; gap: 8px; line-height: 1.2; margin: 0; }
.sudi_calendar_folder_feature p { color: var(--text-gray-medium); font-size: .86em; line-height: 1.45; margin: 5px 0 0; }
.sudi_calendar_folder_list { display: grid; gap: 8px; }
.sudi_calendar_folder_info { min-width: 0; }
.sudi_calendar_folder_info strong { color: var(--text-gray-high); display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sudi_calendar_folder_info span { color: var(--text-gray-medium); display: block; font-size: .82em; margin-top: 3px; }
.sudi_calendar_folder_actions { display: inline-flex; flex: 0 0 auto; gap: 8px; }
.sudi_calendar_folder_action { align-items: center; background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 50%; color: var(--text-gray-high); cursor: pointer; display: inline-flex; height: 32px; justify-content: center; transition: background .2s ease, color .2s ease, border-color .2s ease; width: 32px; }
.sudi_calendar_folder_action:hover { background: var(--bg-main-low); border-color: var(--border-main-low); color: var(--text-main-high); }
.sudi_calendar_folder_empty { color: var(--text-gray-medium); line-height: 1.5; margin: 0; }
.sudi_calendar_subscription_note { color: var(--text-gray-medium); font-size: .9em; line-height: 1.5; margin: 16px 0 0; }
.sudi_calendar_subscription_note i { color: var(--text-main-medium); margin-right: 5px; }

/* Calendar Events: FullCalendar se lee dentro de una superficie acotada. */
.sudi_calendar_module { box-sizing: border-box; display: grid; gap: 18px; margin: 0 auto; max-width: 1480px; min-height: max(520px, calc(100dvh - 160px)); padding: 24px clamp(18px, 3vw, 48px) 42px; width: 100%; }
.sudi_calendar_module_calendar { grid-template-rows: minmax(0, 1fr); }
.sudi_calendar_board { background: var(--bg-light); border: 1px solid var(--border-gray-low); border-radius: 16px; display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
.sudi_calendar_board_head { align-items: center; border-bottom: 1px solid var(--border-gray-low); display: flex; gap: 12px; justify-content: space-between; padding: 16px 18px; }
.sudi_calendar_board_head h3 { color: var(--text-gray-high); font-size: 18px; line-height: 1.2; margin: 0; text-transform: capitalize; }
.sudi_calendar_board_head p { color: var(--text-gray-medium); font-size: 13px; line-height: 1.5; margin: 4px 0 0; }
.sudi_calendar_legend { display: flex; flex-wrap: wrap; gap: 10px; }
.sudi_calendar_legend span { align-items: center; color: var(--text-gray-medium); display: inline-flex; font-size: 12px; gap: 6px; }
.sudi_calendar_legend i { font-size: 10px; }
.sudi_calendar_canvas { display: flex; flex: 1 1 auto; min-height: 0; padding: 18px; }
.sudi_calendar_canvas > #sudi_calendar_events_main { flex: 1 1 auto; min-height: 0; }
.sudi_calendar_board .fc { --fc-border-color: var(--border-gray-low); --fc-event-border-color: transparent; --fc-event-bg-color: var(--bg-main-medium); --fc-page-bg-color: var(--bg-light); --fc-neutral-bg-color: var(--bg-gray-low); color: var(--text-gray-high); }
.sudi_calendar_board .fc .fc-daygrid-event { border-radius: 8px; padding: 2px 4px; }
.sudi_calendar_board .fc-theme-standard td, .sudi_calendar_board .fc-theme-standard th { border-color: var(--border-gray-low); }
.sudi_calendar_board .fc .fc-list { border-color: var(--border-gray-low); }
.sudi_calendar_board .fc .fc-list-event:hover td { background: var(--bg-gray-low); }
.sudi_calendar_board .fc .fc-multimonth { border-color: var(--border-gray-low); }
.sudi_calendar_board .fc .fc-multimonth-title { color: var(--text-gray-high); font-weight: 600; text-transform: capitalize; }
@media (max-width: 900px) {
	.sudi_calendar_module { padding: 18px 14px 30px; }
	.sudi_calendar_canvas { padding: 10px; }
	.sudi_calendar_board_head { align-items: flex-start; flex-direction: column; }
}

/* Menú contraído para escritorio y tablet: conserva el acceso directo a cada
   grupo y sección mediante un riel de iconos. El estado .hidden sigue siendo
   independiente: se reserva para ocultar el shell completo durante el login. */
@media (min-width: 751px) {
	#main_menu.closed { width: 136px; }
	#main_menu.closed #main_nav {
		width: 56px;
		margin-left: 0px;
		overflow-x: hidden;
		overflow-y: auto;
	}
	#info_container.closed { margin-left: 136px; width: calc(100% - 136px); }
	header.closed { left: 136px; width: calc(100vw - 136px); }

	/* El icono del módulo conserva la misma coordenada al expandir o contraer. */
	#main_menu:not(.closed) .module_title { padding-left: 8px; }
	#main_menu.closed .module_title {
		justify-content: flex-start;
		padding-left: 8px;
	}
	#main_menu.closed .module_title_label,
	#main_menu.closed .nav_groups_divider,
	#main_menu.closed .group_title span,
	#main_menu.closed .nav_alone span,
	#main_menu.closed .nav_item span { display: none; }
	#main_menu.closed .module_title .nav_title_icon {
		margin: 0px;
	}

	#main_menu.closed .nav_group {
		width: 100%;
		max-height: 46px;
		margin: 0px;
		overflow: hidden;
		background-color: transparent;
		border: 1px solid transparent;
		border-radius: 0px;
		transition: max-height .35s ease, background-color .35s ease, border-color .35s ease;
	}
	#main_menu.closed .nav_group.opened {
		max-height: 1000px;
		background-color: var(--bg-light);
		border-color: var(--border-gray-low);
		border-left-color: var(--border-main-medium);
	}
	#main_menu.closed .group_title,
	#main_menu.closed .nav_alone,
	#main_menu.closed .nav_item {
		width: 56px;
		height: 46px;
		margin: 0px;
		padding: 0px;
		border-left: 0px;
		box-sizing: border-box;
	}
	#main_menu.closed .nav_group .group_title + .nav_item,
	#main_menu.closed .nav_item:last-child { margin: 0px; }
	/* Un grupo es un contenedor: su icono tenue y caret visible lo distinguen
	   de una sección navegable aun cuando el texto esté oculto. */
	#main_menu.closed .group_title {
		background-color: color-mix(in srgb, var(--bg-main-low) 56%, transparent);
		border-bottom: 1px dashed color-mix(in srgb, var(--border-main-medium) 45%, transparent);
	}
	#main_menu.closed .group_title .nav_title_icon {
		background-color: transparent;
		border-style: dashed;
		color: var(--text-gray-medium);
	}
	#main_menu.closed .nav_group.opened .group_title {
		background-color: var(--bg-main-low);
		border-bottom-color: var(--border-main-low);
	}
	#main_menu.closed .nav_group.opened .group_title .nav_title_icon {
		background-color: var(--bg-main-low);
		border-style: solid;
		color: var(--text-main-high);
	}
	#main_menu.closed .nav_icon_arrow {
		display: flex;
		width: 12px;
		height: 12px;
		right: 2px;
		top: auto;
		bottom: 2px;
		background: transparent;
		border: 0px;
		color: var(--text-gray-medium);
		font-size: .48em;
		transform: rotate(0deg);
	}
	#main_menu.closed .group_title:hover .nav_icon_arrow { transform: rotate(0deg) scale(1.12); }
	#main_menu.closed .nav_group.opened .nav_icon_arrow {
		color: var(--text-main-high);
		transform: rotate(0deg);
	}
	#main_menu.closed .group_title .nav_title_icon,
	#main_menu.closed .nav_alone .nav_title_icon {
		left: 50%;
		margin: 0px;
		transform: translate(-50%, -47%);
	}
	#main_menu.closed .nav_item .nav_icon,
	#main_menu.closed .nav_item.btn_active .nav_icon {
		left: 50%;
		margin: 0px;
		transform: translate(-50%, -50%);
	}
	#main_menu.closed .nav_item.btn_active,
	#main_menu.closed .nav_alone.btn_active {
		padding: 0px;
		background-color: var(--bg-main-low);
		border-left: 0px;
	}
}

/* Laptop: proporción más eficiente sin sacrificar la jerarquía visual.
   Esta banda cubre la resolución de trabajo de MacBook Pro (1,512 px). */
@media (min-width: 1024px) and (max-width: 1600px) {
	#main_menu { width: 292px; }
	#main_menu.closed { width: 120px; }
	#main_menu.hidden { left: -298px; }

	#main_menu #bar_menu { width: 64px; padding: 12px 0px 14px; }
	#bar_logo { width: 52px; height: 52px; min-height: 52px; border-radius: 7px; }
	#bar_elements_container { padding: 6px 0px; }
	.sudi_elements_divider { width: 34px; margin: 8px auto 10px; }
	.bar_element { width: 42px; height: 42px; margin: 3px auto; border-radius: 8px; }
	.bar_element i { font-size: 1.25em; }
	#user_photo { width: 48px; height: 48px; min-height: 48px; margin: 10px 0px; }
	#user_photo i { margin-top: 0px; font-size: 2em; }

	#main_nav { width: 228px; }
	#main_menu.closed #main_nav { width: 56px; margin-left: 0px; }
	.module_title { height: 58px; }
	#main_menu:not(.closed) .module_title,
	#main_menu.closed .module_title { padding-left: 10px; }
	.module_title .nav_title_icon { width: 36px; height: 36px; min-width: 36px; margin-right: 9px; border-radius: 10px; }
	.group_title, .nav_alone { height: 46px; }
	.nav_group { max-height: 54px; margin-top: 1px; margin-bottom: 1px; }
	.nav_item { height: 41px; }
	.nav_group .group_title + .nav_item { margin-top: 5px; }
	.nav_item:last-child { margin-bottom: 10px; }

	#info_container { margin-left: 292px; width: calc(100% - 292px); padding-top: 64px; }
	#info_container.closed { margin-left: 120px; width: calc(100% - 120px); }
	header { left: 292px; width: calc(100vw - 292px); height: 64px; }
	header.closed { left: 120px; width: calc(100vw - 120px); }
	#sub_controls { height: 64px; padding-right: 18px; }
	#sub_controls h2 { margin-left: 20px; font-size: 1.2em; }
	#sub_controls.compact h2 { margin-left: 12px; font-size: 1.04em; }
	#sub_controls span.loadContent,
	#sub_controls .opt_btn,
	#sub_controls .loadRContent { height: 40px; padding-left: 11px; padding-right: 11px; margin-left: 3px; margin-right: 3px; }
	#sub_controls.compact span.loadContent,
	#sub_controls.compact .opt_btn,
	#sub_controls.compact .loadRContent { min-width: 40px; padding-left: 8px; padding-right: 8px; }
	#sub_controls span.uplabel { height: 44px; }
	.list_search_options_container .list_filter select,
	.list_search_options_container .upbar_filter input { height: 44px; }

	.sudi_lpath, .sudi_cpath { padding-left: 22px; margin-top: 20px; margin-bottom: 20px; }
	.list_input_container { padding-left: 22px; padding-right: 22px; }
	.sudi_tb_container.tb_height_auto { max-height: calc(100vh - 64px); }
	.sudi_tb_container.tb_height_auto .sudi_tb_item_container { height: calc(100vh - 64px); padding-bottom: 88px; }
	.sudi_tb_item_container { padding-bottom: 88px; }
	.sudi_tb_container .st_row { min-height: 62px; }
	.sudi_tb_container .st_head .st_item,
	.sudi_tb_container .st_row .st_item { font-size: .86em; }
}

/* Laptop compacto: el RPanel se superpone al contenido para no comprimir la lista. */
@media (min-width: 1200px) and (max-width: 1600px) {
	#info_container.info_show { width: calc(100% - 292px); }
	#sub_controls.info_show { padding-right: 10px; width: calc(100% - 292px); }
	#sub_controls.info_show h2 { font-size: 1.08em; margin-left: 14px; }
	#sub_controls.info_show span.loadContent,
	#sub_controls.info_show .opt_btn,
	#sub_controls.info_show .loadRContent { margin: 0 2px; padding-left: 9px; padding-right: 9px; }
	#nav_list { max-width: calc(100vw - 326px); transition: right .2s ease; }
	.info_show #nav_list { right: 345px; }
	.form_manage,
	.curtain_content { width: calc(100% - 48px); }
	.form_title { padding-left: 22px; padding-right: 22px; }
	.form_title_actions { right: 12px; }
}

/* Tablet horizontal y laptops pequeñas: evita volver al tamaño de escritorio
   antes de que entre el diseño móvil (< 751 px). */
@media (min-width: 751px) and (max-width: 1023px) {
	#main_menu { width: 260px; }
	#main_menu.hidden { left: -266px; }
	#main_menu #bar_menu { width: 56px; padding: 10px 0px 12px; }
	#bar_logo { width: 46px; height: 46px; min-height: 46px; border-radius: 7px; }
	#bar_elements_container { padding: 5px 0px; }
	.sudi_elements_divider { width: 30px; margin: 7px auto 9px; }
	.bar_element { width: 38px; height: 38px; margin: 3px auto; border-radius: 7px; }
	.bar_element i { font-size: 1.14em; }
	#user_photo { width: 44px; height: 44px; min-height: 44px; margin: 8px 0px; }
	#user_photo i { margin-top: 0px; font-size: 1.8em; }

	#main_nav { width: 204px; }
	.module_title { height: 54px; }
	#main_menu:not(.closed) .module_title,
	#main_menu.closed .module_title { padding-left: 9px; }
	.module_title .nav_title_icon { width: 34px; height: 34px; min-width: 34px; margin-right: 8px; border-radius: 9px; }
	.group_title, .nav_alone { height: 44px; }
	.nav_group { max-height: 52px; margin-top: 1px; margin-bottom: 1px; }
	.nav_item { height: 39px; }
	.nav_group .group_title + .nav_item { margin-top: 4px; }
	.nav_item:last-child { margin-bottom: 8px; }

	#main_menu.closed { width: 108px; }
	#main_menu.closed #main_nav { width: 52px; }
	#main_menu.closed .nav_group { max-height: 44px; }
	#main_menu.closed .group_title,
	#main_menu.closed .nav_alone,
	#main_menu.closed .nav_item { width: 52px; height: 44px; }
	#info_container { margin-left: 260px; width: calc(100% - 260px); padding-top: 60px; }
	#info_container.closed { margin-left: 108px; width: calc(100% - 108px); }
	header { left: 260px; width: calc(100vw - 260px); height: 60px; }
	header.closed { left: 108px; width: calc(100vw - 108px); }
	#sub_controls { height: 60px; padding-right: 14px; }
	#sub_controls h2 { margin-left: 14px; font-size: 1.05em; }
	#sub_controls.compact h2 { margin-left: 9px; font-size: .96em; }
	#sub_controls span.loadContent,
	#sub_controls .opt_btn,
	#sub_controls .loadRContent { height: 38px; margin-left: 2px; margin-right: 2px; padding-left: 8px; padding-right: 8px; }
	#sub_controls.compact span.loadContent,
	#sub_controls.compact .opt_btn,
	#sub_controls.compact .loadRContent { min-width: 38px; padding-left: 7px; padding-right: 7px; }
	#sub_controls span.uplabel,
	.list_search_options_container .list_filter select,
	.list_search_options_container .upbar_filter input { height: 40px; }
	#info_container.info_show { width: calc(100% - 260px); }
	#sub_controls.info_show { width: calc(100% - 260px); padding-right: 8px; }
	#nav_list { max-width: calc(100vw - 294px); transition: right .2s ease; }
	.info_show #nav_list { right: 345px; }
	.sudi_lpath, .sudi_cpath { padding-left: 16px; margin-top: 16px; margin-bottom: 16px; }
	.list_input_container { padding-left: 16px; padding-right: 16px; }
	.sudi_tb_container.tb_height_auto { max-height: calc(100vh - 60px); }
	.sudi_tb_container.tb_height_auto .sudi_tb_item_container { height: calc(100vh - 60px); padding-bottom: 76px; }
	.sudi_tb_item_container { padding-bottom: 76px; }
	.sudi_tb_container .st_row { min-height: 58px; }
	.sudi_tb_container .st_head .st_item,
	.sudi_tb_container .st_row .st_item { font-size: .82em; }
}

/* Tareas 4.4.43: tarjetas compactas, etiquetas y zona explícita de arrastre. */
.sudi_linked_task_view_switch { align-items: center; background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 9px; display: flex; gap: 12px; justify-content: space-between; margin: 0 0 14px; padding: 8px 10px 8px 12px; }
.sudi_linked_task_view_label { align-items: center; color: var(--text-gray-medium); display: inline-flex; font-family: var(--font-semibold); font-size: 12px; gap: 7px; }
.sudi_linked_task_view_label i { color: var(--text-main-high); }
.sudi_linked_task_view_tabs { display: inline-flex; }
.sudi_linked_task_view_tab { align-items: center; background: var(--bg-light); border: 1px solid var(--border-main-low); color: var(--text-main-high); cursor: pointer; display: inline-flex; font-family: var(--font-medium); font-size: 12px; gap: 6px; min-height: 34px; padding: 0 10px; }
.sudi_linked_task_view_tab:first-child { border-radius: 7px 0 0 7px; }
.sudi_linked_task_view_tab + .sudi_linked_task_view_tab { border-left-color: transparent; }
.sudi_linked_task_view_tab:last-child { border-radius: 0 7px 7px 0; }
.sudi_linked_task_view_tab:hover, .sudi_linked_task_view_tab.btn_active { background: var(--bg-main-high); border-color: var(--border-main-high); color: var(--text-main-low); }
.sudi_tasks_board_toolbar { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-start; margin: 0 2px 10px; }
.sudi_task_backlog_toggle, .sudi_task_cards_toggle { align-items: center; background: var(--bg-light); border: 1px solid var(--border-main-low); border-radius: 7px; color: var(--text-main-high); cursor: pointer; display: inline-flex; font-family: var(--font-medium); font-size: 12px; gap: 7px; min-height: 34px; padding: 6px 10px; }
.sudi_task_backlog_toggle:hover, .sudi_task_backlog_toggle:focus-visible, .sudi_task_cards_toggle:hover, .sudi_task_cards_toggle:focus-visible { background: var(--bg-main-low); border-color: var(--border-main-medium); outline: none; }
.sudi_tasks_board { display: grid; gap: 14px; grid-template-columns: repeat(var(--task-columns, 3), minmax(260px, 1fr)); overflow-x: auto; padding: 2px 2px 18px; }
.sudi_tasks_column { background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 8px; min-width: 260px; padding: 12px; }
.sudi_tasks_column_head { align-items: center; display: flex; justify-content: space-between; margin-bottom: 12px; }
.sudi_tasks_column_head h3 { align-items: center; display: flex; font-size: 14px; gap: 8px; margin: 0; }
.sudi_tasks_column_count { background: var(--bg-light); border: 1px solid var(--border-gray-low); border-radius: 8px; font-size: 11px; min-width: 26px; padding: 3px 7px; text-align: center; }
.sudi_tasks_cards { display: grid; gap: 9px; min-height: 42px; }
.sudi_task_card { background: var(--bg-light); border: 1px solid var(--border-gray-low); border-left: 4px solid var(--color-gray); border-radius: 8px; cursor: pointer; padding: 12px; transition: box-shadow .15s ease, opacity .15s ease; }
.sudi_task_card[data-priority="urgent"] { border-left-color: var(--color-red); }
.sudi_task_card[data-priority="high"] { border-left-color: var(--color-yellow); }
.sudi_task_card[data-priority="normal"] { border-left-color: var(--color-blue); }
.sudi_task_card.sudi_task_dragging { cursor: grabbing; opacity: .65; box-shadow: 0 8px 24px rgba(0, 0, 0, .16); }
.sudi_task_card.sudi_task_status_updating { opacity: .55; pointer-events: none; }
.sudi_task_card_head, .sudi_task_card_heading, .sudi_task_card_summary, .sudi_task_card_details, .sudi_task_tags, .sudi_task_assignee { align-items: center; display: flex; }
.sudi_task_card_head { align-items: start; display: grid; gap: 10px; grid-template-columns: minmax(0, 1fr) 26px; }
.sudi_task_card_heading { flex-wrap: nowrap; gap: 5px 8px; min-width: 0; overflow: hidden; }
.sudi_task_card_title { color: var(--text-gray-high); flex: 1 1 auto; font-family: var(--font-semibold); font-size: 13px; line-height: 1.4; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sudi_task_card_title.sudi_task_card_title_scrolling { text-overflow: clip; }
.sudi_task_card_id { color: var(--text-gray-medium); flex: 0 0 auto; font-family: var(--font-medium); font-size: 10px; white-space: nowrap; }
.sudi_task_card_expanded .sudi_task_card_heading { flex-wrap: wrap; overflow: visible; }
.sudi_task_card_expanded .sudi_task_card_title { flex-basis: 100%; overflow: visible; overflow-wrap: anywhere; text-overflow: clip; white-space: normal; }
.sudi_task_drag_handle { color: var(--text-gray-medium); cursor: grab; flex: 0 0 auto; padding: 2px 4px; user-select: none; -webkit-user-select: none; }
.sudi_task_card_toggle { background: transparent; border: 0; color: var(--text-gray-medium); cursor: pointer; font-size: 13px; height: 26px; padding: 0; position: relative; width: 26px; z-index: 1; }
.sudi_task_card_summary { flex-wrap: wrap; gap: 6px 9px; margin-top: 10px; }
.sudi_task_card_due { align-items: center; color: var(--text-gray-medium); display: inline-flex; font-size: 10px; gap: 4px; margin-left: auto; white-space: nowrap; }
.sudi_task_card_details { color: var(--text-gray-medium); display: none; flex-wrap: wrap; font-size: 11px; gap: 8px 12px; margin-top: 12px; }
.sudi_task_card_expanded .sudi_task_card_details { display: flex; }
.sudi_task_card_details > span { align-items: center; display: inline-flex; gap: 6px; }
.sudi_task_card_details_action { align-items: center; background: var(--bg-light); border: 1px solid var(--border-main-low); border-radius: 6px; color: var(--text-main-high); cursor: pointer; display: inline-flex; font-family: var(--font-medium); font-size: 11px; gap: 5px; margin-left: auto; padding: 5px 8px; }
.sudi_task_card_details_action:hover, .sudi_task_card_details_action:focus-visible { background: var(--bg-main-low); border-color: var(--border-main-medium); outline: none; }
.sudi_task_drop_zones { display: grid; gap: 7px; margin-top: 10px; }
.sudi_task_drop_zone { align-items: center; border: 1px dashed var(--border-gray-medium); border-radius: 7px; color: var(--text-gray-medium); display: flex; font-size: 11px; gap: 7px; justify-content: center; margin-top: 0; min-height: 39px; padding: 7px; transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
.sudi_task_board_dragging .sudi_task_drop_zone { border-color: var(--color-blue); color: var(--text-main-medium); }
.sudi_task_drop_zone.sudi_task_drop_target { background: var(--bg-main-low); border-color: var(--color-blue); color: var(--text-main-high); }
.sudi_task_empty { color: var(--text-gray-medium); font-size: 12px; margin: 8px 2px; text-align: center; }
.sudi_task_badge { align-items: center; display: inline-flex; font-size: 12px; gap: 6px; }
.sudi_task_card_summary .sudi_status_badge { background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 999px; font-size: 10px; gap: 4px; line-height: 1.15; padding: 4px 7px; }
.sudi_task_card_summary .sudi_status_badge i { font-size: 10px; }
.sudi_task_card_priority { font-size: 11px; gap: 5px; }
.sudi_task_card_priority[data-priority="low"] .sudi_task_priority_marks { color: var(--color-gray); }
.sudi_task_card_priority[data-priority="normal"] .sudi_task_priority_marks { color: var(--color-blue); }
.sudi_task_card_priority[data-priority="high"] .sudi_task_priority_marks { color: var(--color-yellow); }
.sudi_task_card_priority[data-priority="urgent"] .sudi_task_priority_marks { color: var(--color-red); }
.sudi_tasks_calendar { background: var(--bg-light); border: 1px solid var(--border-gray-low); border-radius: 12px; padding: 18px; }
.sudi_tasks_calendar_intro { margin-bottom: 16px; }
.sudi_tasks_calendar_intro h3 { align-items: center; color: var(--text-gray-high); display: flex; font-size: 16px; gap: 8px; margin: 0; }
.sudi_tasks_calendar_intro h3 i { color: var(--text-main-high); }
.sudi_tasks_calendar_intro p { color: var(--text-gray-medium); font-size: 12px; margin: 5px 0 0; }
.sudi_tasks_calendar .fc { --fc-border-color: var(--border-gray-low); --fc-page-bg-color: var(--bg-light); --fc-neutral-bg-color: var(--bg-gray-low); color: var(--text-gray-high); }
.sudi_tasks_calendar .fc .fc-toolbar { flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.sudi_tasks_calendar .fc .fc-toolbar-title { color: var(--text-main-high); font-family: var(--font-semibold); font-size: 17px; text-transform: capitalize; }
.sudi_tasks_calendar .fc .fc-button-primary { background: var(--bg-main-high); border-color: var(--border-main-high); color: var(--text-light); font-family: var(--font-medium); font-size: 12px; }
.sudi_tasks_calendar .fc .fc-button-primary:hover, .sudi_tasks_calendar .fc .fc-button-primary:focus { background: var(--bg-main-medium); border-color: var(--border-main-medium); box-shadow: none; }
.sudi_tasks_calendar .fc .fc-daygrid-day-frame { min-height: 100px; }
.sudi_tasks_calendar .fc .fc-daygrid-event { background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-left: 3px solid var(--color-blue); border-radius: 5px; color: var(--text-gray-high); cursor: pointer; margin: 2px 3px; padding: 2px 5px; }
.sudi_tasks_calendar .fc .sudi_task_calendar_priority_low { border-left-color: var(--color-gray); }
.sudi_tasks_calendar .fc .sudi_task_calendar_priority_high { border-left-color: var(--color-yellow); }
.sudi_tasks_calendar .fc .sudi_task_calendar_priority_urgent { border-left-color: var(--color-red); }
.sudi_tasks_calendar_event_content { align-items: baseline; display: flex; gap: 5px; min-width: 0; overflow: hidden; }
.sudi_tasks_calendar_event_time { color: var(--text-gray-medium); flex: 0 0 auto; font-size: 10px; }
.sudi_tasks_calendar_event_title { font-family: var(--font-medium); font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 650px) { .sudi_tasks_calendar { padding: 10px; } .sudi_tasks_calendar .fc .fc-daygrid-day-frame { min-height: 72px; } .sudi_tasks_calendar .fc .fc-toolbar-title { font-size: 14px; } }
.sudi_task_overdue, .sudi_task_trace_overdue { color: var(--color-red) !important; font-family: var(--font-semibold); }
.sudi_task_avatar, .sudi_task_trace_avatar { background-position: center; background-repeat: no-repeat; background-size: cover; border-radius: 50%; display: inline-block; flex: 0 0 auto; height: 24px; width: 24px; }
.sudi_task_trace_avatar { height: 32px; width: 32px; }
.sudi_task_trace_avatar_fallback { align-items: center; background: var(--bg-light); border: 1px solid var(--border-gray-low); box-sizing: border-box; color: var(--text-gray-medium); display: inline-flex; font-size: 13px; justify-content: center; }
.sudi_task_title { font-family: var(--font-semibold); }
.sudi_task_subline { color: var(--text-gray-medium); display: block; font-size: 11px; line-height: 1.4; margin-top: 3px; }
.sudi_task_tags { flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.sudi_task_tag { align-items: center; background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 999px; color: var(--text-gray-medium); display: inline-flex; font-size: 10px; gap: 4px; line-height: 1; padding: 4px 6px; white-space: nowrap; }
.sudi_task_tag i { font-size: 8px; }
.sudi_task_time_tag { background: var(--bg-main-low); border-color: var(--border-main-low); color: var(--text-main-high); }
.sudi_task_time_tag i { font-size: 10px; }
.sudi_task_row_action { cursor: pointer; text-align: center; }
.sudi_task_trace_assignee { align-items: center; display: flex; gap: 10px; }
/* RPanel de tareas: el resumen precede a sus acciones y al Seguimiento. */
#r_panel_content .sudi_task_trace_overview > .rp_section_title,
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_title_row h2.sudi_comments_segment_title { background-color: var(--bg-main-low); background-image: repeating-linear-gradient(135deg, transparent 0, transparent 7px, var(--border-main-low) 7px, var(--border-main-low) 8px); border-left: 3px solid var(--border-main-high); color: var(--text-main-high); }
#r_panel_content .sudi_task_trace_overview > .rp_section_title > i,
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_title_row h2.sudi_comments_segment_title i { color: var(--text-main-high); }
#r_panel_content .sudi_task_trace_summary { background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 8px; padding: 13px 14px; }
#r_panel_content .sudi_task_trace_title { color: var(--text-gray-high); font-family: var(--font-semibold); font-size: 1em; line-height: 1.45; margin: 0; overflow-wrap: anywhere; }
#r_panel_content .sudi_task_trace_metadata { align-items: center; display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
#r_panel_content .sudi_task_trace_meta { align-items: center; background: var(--bg-light); border: 1px solid var(--border-gray-low); border-radius: 999px; color: var(--text-gray-medium); display: inline-flex; font-size: .76em; gap: 6px; line-height: 1.2; padding: 6px 9px; }
#r_panel_content .sudi_task_trace_meta > i { color: var(--text-main-high); }
#r_panel_content .sudi_task_trace_meta b { color: var(--text-gray-high); font-family: var(--font-medium); font-weight: normal; }
.sudi_task_priority_marks { align-items: center; display: inline-flex; flex: 0 0 auto; gap: 2px; }
.sudi_task_priority_marks i { font-size: 11px; }
.sudi_task_trace_priority[data-priority="low"] .sudi_task_priority_marks, .sudi_task_info_priority[data-priority="low"] .sudi_task_priority_marks { color: var(--color-gray); }
.sudi_task_trace_priority[data-priority="normal"] .sudi_task_priority_marks, .sudi_task_info_priority[data-priority="normal"] .sudi_task_priority_marks { color: var(--color-blue); }
.sudi_task_trace_priority[data-priority="high"] .sudi_task_priority_marks, .sudi_task_info_priority[data-priority="high"] .sudi_task_priority_marks { color: var(--color-yellow); }
.sudi_task_trace_priority[data-priority="urgent"] .sudi_task_priority_marks, .sudi_task_info_priority[data-priority="urgent"] .sudi_task_priority_marks { color: var(--color-red); }
#r_panel_content .sudi_task_trace_priority .sudi_task_priority_marks i { color: inherit; }
#r_panel_content .sudi_task_trace_tags { align-items: flex-start; display: flex; flex-wrap: wrap; gap: 7px 9px; margin-top: 11px; }
#r_panel_content .sudi_task_trace_tags .sudi_task_tags { margin: 0; }
#r_panel_content .sudi_task_trace_view_action { margin: 14px 0 0; }
#r_panel_content .sudi_task_trace_view_action .rp_btn { background: var(--bg-main-high); border-color: var(--border-main-high); color: var(--text-light); font-family: var(--font-semibold); }
#r_panel_content .sudi_task_trace_view_action .rp_btn > i,
#r_panel_content .sudi_task_trace_view_action .rp_btn:hover > i,
#r_panel_content .sudi_task_trace_view_action .rp_btn:focus-visible > i { color: var(--text-light); }
#r_panel_content .sudi_task_trace_view_action .rp_btn:hover, #r_panel_content .sudi_task_trace_view_action .rp_btn:focus-visible { background: var(--bg-main-medium); }
#r_panel_content .sudi_task_trace_actions_section { margin-top: 20px; }
#r_panel_content .sudi_task_trace_actions { justify-content: center; margin: 0; }
#r_panel_content .sudi_task_trace_actions > div { align-items: center; display: flex; flex-direction: column; min-width: 48px; }
#r_panel_content .sudi_task_trace_actions .rp_btn { cursor: pointer; }
#r_panel_content .sudi_task_trace_label { align-items: center; color: var(--text-gray-medium); display: inline-flex; font-family: var(--font-semibold); font-size: .7em; gap: 6px; letter-spacing: .055em; line-height: 1.2; text-transform: uppercase; }
#r_panel_content .sudi_task_trace_label > i { color: var(--text-main-high); font-size: 1.1em; }
#r_panel_content .sudi_task_trace_people { margin: 10px 0 0; }
#r_panel_content .sudi_task_trace_people p { margin: 6px 0; }
#r_panel_content .sudi_task_trace_assignee { align-items: flex-start; flex-direction: column; gap: 5px; }
#r_panel_content .sudi_task_trace_assignee b { align-items: center; color: var(--text-gray-high); display: flex; font-family: var(--font-medium); font-size: .9em; font-weight: normal; gap: 9px; }
#r_panel_content .sudi_task_trace_people_meta { color: var(--text-gray-medium); display: flex; flex-wrap: wrap; font-size: .76em; gap: 6px 13px; margin: 10px 0 0; }
#r_panel_content .sudi_task_trace_people_meta > span { align-items: center; display: inline-flex; gap: 5px; overflow-wrap: anywhere; }
#r_panel_content .sudi_task_trace_people_meta i { color: var(--text-main-high); font-size: .9em; }
.sudi_task_info { color: var(--text-gray-high); max-width: 900px; }
.sudi_task_info h2, .sudi_task_info h3 { color: var(--text-main-high); font-family: var(--font-medium); }
.sudi_task_info_summary > h2 { font-size: 1.2em; line-height: 1.45; margin: 0; overflow-wrap: anywhere; }
.sudi_task_info .rp_tag_container { margin: 16px 0 0; }
.sudi_task_info .rp_tag p .sudi_status_value { vertical-align: middle; }
.sudi_task_info_tags { align-items: flex-start; display: flex; flex-wrap: wrap; gap: 7px 10px; margin-top: 14px; }
.sudi_task_info_tags > span { color: var(--text-gray-medium); font-family: var(--font-semibold); font-size: .72em; letter-spacing: .055em; padding-top: 5px; text-transform: uppercase; }
.sudi_task_info_tags .sudi_task_tags { margin: 0; }
.sudi_task_info_people, .sudi_task_info_detail { border-top: 1px solid var(--border-gray-low); margin-top: 24px; padding-top: 20px; }
.sudi_task_info_people > h3, .sudi_task_info_detail > h3 { align-items: center; display: flex; font-size: 1em; gap: 8px; margin: 0 0 10px; }
.sudi_task_info_detail > h3 i { color: var(--text-main-high); }
.sudi_task_info_detail .sudi_rich_text_view { background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 8px; padding: 15px; }
.sudi_task_info_empty { background: var(--bg-gray-low); border-radius: 8px; color: var(--text-gray-medium); margin: 0; padding: 14px; }
@media (max-width: 420px) {
	#r_panel_content .sudi_task_trace_meta { width: 100%; }
}

/* El cambio de estatus vive junto al seguimiento para todos los workflows activos.
 * El nombre del workflow puede variar; la lectura visual siempre parte de "Estatus". */
#r_panel_content .sudi_followup_workflows { background: var(--bg-gray-low); border-bottom: 1px solid var(--border-gray-low); display: grid; gap: 8px; padding: 12px 18px; }
#r_panel_content .sudi_followup_workflow { background: var(--bg-light); border: 1px solid var(--border-gray-low); border-radius: 8px; display: grid; gap: 10px; padding: 11px 12px; }
#r_panel_content .sudi_followup_workflow_current { align-items: flex-start; display: flex; flex-direction: column; gap: 5px; min-width: 0; }
#r_panel_content .sudi_followup_workflow_label { align-items: center; color: var(--text-gray-medium); display: inline-flex; font-family: var(--font-semibold); font-size: .7em; gap: 6px; letter-spacing: .055em; line-height: 1.2; text-transform: uppercase; }
#r_panel_content .sudi_followup_workflow_label > i { color: var(--text-main-high); font-size: 1.1em; }
#r_panel_content .sudi_followup_workflow_value { align-items: center; color: var(--text-gray-high); display: inline-flex; font-family: var(--font-medium); min-width: 0; }
#r_panel_content .sudi_followup_workflow_actions { display: grid; gap: 7px; width: 100%; }
#r_panel_content .sudi_followup_workflow_actions .rp_btn { margin: 0; min-height: 40px; width: 100%; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_workflow_actions .rp_btn { background: var(--bg-main-high); border-color: var(--border-main-high); color: var(--text-light); font-family: var(--font-semibold); }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_workflow_actions .rp_btn:hover, #r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_workflow_actions .rp_btn:focus-visible { background: var(--bg-main-medium); }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_timeline .sudi_followup_item { gap: 7px; grid-template-columns: 28px minmax(0, 1fr); margin-left: -28px; padding-bottom: 8px; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_timeline .sudi_followup_marker { height: 25px; width: 25px; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_comment .sudi_followup_card { max-width: 100%; padding: 8px 10px; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_card_header { gap: 5px; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_card_header strong { font-size: .86em; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_card_header span, #r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_card_header time, #r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_meta { font-size: .68em; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_note { font-size: .84em; line-height: 1.35; margin-top: 6px; }
#r_panel_content:has(.sudi_task_trace_overview) .sudi_followup_card .comm_type { font-size: .68em; margin-top: 6px; }
@media (max-width: 900px) { .sudi_tasks_board { grid-auto-columns: minmax(280px, 82vw); grid-auto-flow: column; grid-template-columns: none; } }

/* Google Maps Picker: el mapa forma parte del campo y mantiene los colores del tema. */
.sudi_map_picker .gllpLatlonPicker { border: 0; margin: 0; min-width: 0; padding: 0; }
.sudi_map_picker_search { align-items: center; display: flex; gap: 8px; margin-bottom: 10px; }
.sudi_map_picker_search .gllpSearchField { flex: 1 1 auto; min-width: 0; }
.sudi_map_picker_search .rp_btn { flex: 0 0 auto; margin: 0; }
.sudi_map_picker_canvas { align-items: center; background: var(--bg-gray-low); border: 1px solid var(--border-gray-low); border-radius: 8px; color: var(--text-gray-medium); display: flex; height: 300px; justify-content: center; overflow: hidden; width: 100%; }
.sudi_map_picker_canvas > span { font-size: .8em; }
@media (max-width: 480px) { .sudi_map_picker_search { align-items: stretch; flex-direction: column; } .sudi_map_picker_search .rp_btn { justify-content: center; } .sudi_map_picker_canvas { height: 240px; } }

/* Integraciones API 4.4.432: listado estándar y aviso temporal de emisión. */
.sudi_api_integrations { display:grid; gap:14px; }
.sudi_api_integrations_intro { margin:0; }
.sudi_api_list_meta { color:var(--text-gray-medium); display:block; font-size:11px; line-height:1.35; margin-top:3px; }
.sudi_api_scope_text { overflow-wrap:anywhere; }
.sudi_api_status { align-items:center; display:inline-flex; font-family:var(--font-semibold); font-size:12px; gap:6px; }
.sudi_api_status_pending { color:var(--color-yellow); }.sudi_api_status_approved { color:var(--color-green); }.sudi_api_status_rejected,.sudi_api_status_revoked { color:var(--color-red); }
.sudi_api_list_actions { display:flex; flex-wrap:wrap; gap:6px; }.sudi_api_list_actions .rp_btn { margin:0; }
.sudi_api_list_actions .sudi_api_action { align-items:center; background:var(--bg-main-low); border:1px solid var(--border-main-low); border-radius:7px; color:var(--text-main-high); cursor:pointer; display:inline-flex; font-family:var(--font-semibold); font-size:12px; gap:5px; justify-content:center; min-height:34px; padding:6px 9px; white-space:nowrap; }
.sudi_api_list_actions .sudi_api_action:hover { background:var(--bg-main-high); color:var(--text-main-low); }
.sudi_api_list_actions .sudi_api_action_danger { background:color-mix(in srgb, var(--color-red) 9%, var(--bg-light)); border-color:color-mix(in srgb, var(--color-red) 28%, var(--border-gray-low)); color:var(--color-red); }
.sudi_api_list_actions .sudi_api_action_danger:hover { background:var(--color-red); color:var(--text-light); }
.sudi_api_secret_notice code { background:var(--bg-light); border:1px dashed var(--border-main-medium); border-radius:6px; color:var(--text-gray-high); display:block; margin:8px 0; max-width:100%; overflow-wrap:anywhere; padding:8px; }
