/* Estilo sección 'Resultados' */
/* Listado de modelos de informe */
.results-list table tr:first-child td {
	border-top: none;
}
.results-list table tr:last-child td {
	border-bottom: none;
}

/* Construir modelo de informe */
.model .report-section .report-section {
	padding-left: 2.5rem;
}

.model .header {
	display: flex;
	align-items: center;
	padding: 0.8rem 0 0.8rem 0.3rem;
	border-bottom: 0.05rem solid #bbb;
	background-color: #fff;
	transition: background-color 0.1s ease-in-out;
	cursor: pointer;
}
.model .header:hover {
	background-color: #f5f7ff;
}

.model .header.drag-over--top {
	-webkit-box-shadow: inset 0px 20px 16px -8px var(--color-lightblue-light);
	-moz-box-shadow: inset 0px 20px 16px -8px var(--color-lightblue-light);
	box-shadow: inset 0px 20px 16px -8px var(--color-lightblue-light);
}
.model .header.drag-over--bottom {
	-webkit-box-shadow: inset 0px -20px 16px -8px var(--color-lightblue-light);
	-moz-box-shadow: inset 0px -20px 16px -8px var(--color-lightblue-light);
	box-shadow: inset 0px -20px 16px -8px var(--color-lightblue-light);
}

.model .header .arrow {
	width: 1.1rem;
	min-width: 1.1rem;
	height: 1.3rem;
	margin-right: 1rem;
	background: url("../images/icon--arrow-triangle--right.svg") no-repeat center;
	background-size: 1.7rem;
	transition: transform 0.2s ease-in;
}
.model .header.open .arrow {
	transform: rotate(90deg);
}

.model .header .drag-n-drop {
	width: 0.8rem;
	height: 0.8rem;
	background: url("../images/icon--three-lines--black.svg") no-repeat center;
	background-size: 1.3rem;
	margin-right: 1rem;
	opacity: 0.5;
	cursor: pointer;
}
.model .header .drag-n-drop:hover {
	opacity: 1;
}

.model .header .name {
	margin-right: 0.7rem;
}

.model .header .button-basic {
	padding-left: 1.1rem;
}

.model .header .menu {
	width: 2rem;
	height: 1.5rem;
	background: url("../images/icon--three-dots--black.svg") no-repeat center;
	background-size: 1.2rem;
	cursor: pointer;
}

.model ul {
	padding-left: 2.5rem;
}

.model li {
	display: flex;
	align-items: center;
	padding: 0.8rem 0 0.8rem 0.7rem;
	border-bottom: 0.05rem solid #bbb;
	background-color: #fff;
	transition: background-color 0.1s ease-in-out;
	cursor: pointer;
}
.model li:last-child {
	border-bottom: none;
}
.model li:hover {
	background-color: var(--color-lightblue-lightest);
}

.model li.drag-over--top {
	-webkit-box-shadow: inset 0px 20px 16px -8px var(--color-lightblue-light);
	-moz-box-shadow: inset 0px 20px 16px -8px var(--color-lightblue-light);
	box-shadow: inset 0px 20px 16px -8px var(--color-lightblue-light);
}
.model li.drag-over--bottom {
	-webkit-box-shadow: inset 0px -20px 16px -8px var(--color-lightblue-light);
	-moz-box-shadow: inset 0px -20px 16px -8px var(--color-lightblue-light);
	box-shadow: inset 0px -20px 16px -8px var(--color-lightblue-light);
}

.model li .drag-n-drop {
	width: 0.8rem;
	height: 0.8rem;
	background: url("../images/icon--three-lines--black.svg") no-repeat center;
	background-size: 1.3rem;
	margin-right: 1rem;
	opacity: 0.5;
	cursor: pointer;
}
.model li .drag-n-drop:hover {
	opacity: 1;
}

.model li .icon {
	height: 4.5rem;
	width: 6rem;
	margin-right: 1rem;
	background-size: 6rem;
	background-repeat: no-repeat;
	background-position: center;
	filter: drop-shadow(2px 2px 3px rgb(178, 183, 208));
}
.model.portrait-design li .icon {
	height: 5.6rem;
	width: 4.1rem;
	background-position: top;
	background-size: 4rem;
}

.model li .name {
	margin-right: 0.5rem;
}

.model li .delete {
	display: block;
	width: 1rem;
	height: 1rem;
	background: url("../images/icon--cross--black.svg") no-repeat center;
	background-size: 1.5rem;
	margin-right: 0.5rem;
	opacity: 0.2;
	cursor: pointer;
}
.model li .delete:hover {
	opacity: 1;
}

/* Diseños de páginas */
.landscape-design .page-title-01 {
	background-image: url(../images/page-title-01.png);
}
.landscape-design .page-title-02 {
	background-image: url(../images/page-title-02.png);
}
.landscape-design .page-title-03 {
	background-image: url(../images/page-title-03.png);
}
.landscape-design .page-intro-01 {
	background-image: url(../images/page-intro-01.png);
}
.landscape-design .page-intro-02 {
	background-image: url(../images/page-intro-02.png);
}
.landscape-design .page-stats-01 {
	background-image: url(../images/page-stats-01.png);
}
.landscape-design .page-stats-02 {
	background-image: url(../images/page-stats-02.png);
}
.landscape-design .page-stats-03 {
	background-image: url(../images/page-stats-03.png);
}
.landscape-design .page-stats-04 {
	background-image: url(../images/page-stats-04.png);
}
.landscape-design .page-stats-05 {
	background-image: url(../images/page-stats-05.png);
}
.landscape-design .page-stats-06 {
	background-image: url(../images/page-stats-06.png);
}
.landscape-design .page-concl-01 {
	background-image: url(../images/page-concl-01.png);
}
.landscape-design .page-concl-02 {
	background-image: url(../images/page-concl-02.png);
}
.landscape-design .page-concl-03 {
	background-image: url(../images/page-concl-03.png);
}

.portrait-design .page-title-01 {
	background-image: url(../images/page-p-title-01.png);
}
.portrait-design .page-title-02 {
	background-image: url(../images/page-p-title-02.png);
}
.portrait-design .page-title-03 {
	background-image: url(../images/page-p-title-03.png);
}
.portrait-design .page-intro-01 {
	background-image: url(../images/page-p-intro-01.png);
}
.portrait-design .page-intro-02 {
	background-image: url(../images/page-p-intro-02.png);
}
.portrait-design .page-intro-03 {
	background-image: url(../images/page-p-intro-03.png);
}
.portrait-design .page-intro-04 {
	background-image: url(../images/page-p-intro-04.png);
}
.portrait-design .page-stats-01 {
	background-image: url(../images/page-p-stats-01.png);
}
.portrait-design .page-stats-02 {
	background-image: url(../images/page-p-stats-02.png);
}
.portrait-design .page-stats-03 {
	background-image: url(../images/page-p-stats-03.png);
}
.portrait-design .page-stats-04 {
	background-image: url(../images/page-p-stats-04.png);
}
.portrait-design .page-stats-05 {
	background-image: url(../images/page-p-stats-05.png);
}
.portrait-design .page-stats-06 {
	background-image: url(../images/page-p-stats-06.png);
}
.portrait-design .page-concl-01 {
	background-image: url(../images/page-p-concl-01.png);
}
.portrait-design .page-concl-02 {
	background-image: url(../images/page-p-concl-02.png);
}
.portrait-design .page-concl-03 {
	background-image: url(../images/page-p-concl-03.png);
}
.portrait-design .page-other-01 {
	background-image: url(../images/page-p-other-01.png);
}

/* Construir modelo de informe - Modo VER */
.model.detail .menu,
.model.detail .drag-n-drop,
.model.detail .delete {
	display: none;
}
.model.detail li {
	cursor: text;
}

/* Configurar nuevo informe */
.config--new-report .body--form {
	margin-bottom: 2rem;
}

.config--new-report .body--h2 {
	margin-bottom: 1rem !important;
	display: inline-flex;
	vertical-align: middle;
	width: calc(100% - 7.8rem);
}

.config--new-report .body--table {
	margin-top: 0;
}

.config--new-report .select-all {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.3rem 0.8rem;
	font-size: 11px;
	color: #444;
	margin-right: 1rem;
}

.config--new-report .select-all span {
	border-bottom: 0.2rem solid var(--color-lightblue-darker);
	transition: border 0.1s ease-in-out;
}

.config--new-report .select-all:hover span {
	color: #000;
	border-color: var(--color-lightblue-darkest);
}

.config--new-report .section--content-dropdown.sub .select-all span {
	border-color: var(--color-lightblue-light);
}
.config--new-report .section--content-dropdown.sub .select-all:hover span {
	border-color: var(--color-lightblue);
}

.config--new-report .body--h2 + .select-all {
	display: inline-flex;
	vertical-align: middle;
	border-color: var(--color-lightblue-light);
	cursor: pointer;
}

.config--new-report .body--h2 + .select-all span {
	border-color: var(--color-lightblue-light);
}

/* Editar nuevo informe */
.report-editor {
	display: flex;
	align-items: flex-start;
}

.report-editor--main {
	height: calc(100vh - 14rem);
	width: calc(100% - 14rem);
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

.report-editor--main .viewport {
	height: calc(100% - 5rem);
	width: 100%;
	background-color: #ecebf9;
	border: 1px solid var(--color-lightblue-light);
	position: relative;
	overflow: hidden;
}

.report-editor--main .canvas {
	position: relative;
	width: fit-content;
	padding: 5rem 2rem;
}

/* Toolbar */
.report-editor--main .toolbar {
	height: 5rem;
	width: 100%;
}

.report-editor--main .nav-controls {
	height: 2rem;
	width: 100%;
	background-color: var(--color-lightblue-lighter);
	border-top: none;
	display: flex;
	align-items: center;
	justify-content: center;
}

.report-editor--main .nav-controls button {
	width: 1.5rem;
	height: 1.5rem;
	margin: 0 1rem;
	opacity: 0.5;
	transition: opacity 0.1s ease-in-out;
	cursor: pointer;
}
.report-editor--main .nav-controls button:hover {
	opacity: 1;
}

.report-editor--main .nav-controls .zoom-in {
	background: url(../images/icon--plus--black.svg) no-repeat center;
	background-size: 1.5rem;
}
.report-editor--main .nav-controls .zoom-out {
	background: url(../images/icon--minus--black.svg) no-repeat center;
	background-size: 1.5rem;
}
.report-editor--main .nav-controls .center-page {
	background: url(../images/icon--square-corners--black.svg) no-repeat center;
	background-size: 1.9rem;
}

.report-editor--main .nav-controls .zoom-scroll {
	display: flex;
}

.report-editor--main .nav-controls .zoom-scroll .fill {
	width: 10rem;
	height: 0.2rem;
	background-color: var(--color-lightblue-light);
	-webkit-appearance: none;
	appearance: none;
	outline: none;
}

.report-editor--main .nav-controls .zoom-scroll .fill::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 0.2rem;
	min-width: 0.2rem;
	height: 0.9rem;
	min-height: 0.9rem;
	background-color: var(--color-lightblue-darkest);
	cursor: pointer;
}

.report-editor--main .nav-controls .zoom-scroll .fill::-moz-range-thumb {
	width: 0.2rem;
	min-width: 0.2rem;
	height: 0.9rem;
	min-height: 0.9rem;
	background-color: var(--color-lightblue-darkest);
	cursor: pointer;
}

.report-editor--main .toolbar .form--row{
	width: 100%;
}

/* Path */
.report-editor--main .path {
	position: absolute;
	top: -1.2rem;
	right: 0;
	font-family: "Roboto Mono";
	font-size: 0.7rem;
	text-align: right;
	white-space: nowrap;
}

.report-editor--main .path span {
	display: inline-block;
	max-width: 300px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-right: .2rem;
	opacity: .3;
}

.report-editor--main .path span:last-child {
	margin-right: 0;
	opacity: 1;
}

/* Page */
.report-editor--page {
	height: 595px;
	min-height: 595px;
	width: 842px;
	min-width: 842px;
	background-color: #fff;
	font-family: "Roboto Mono", Roboto, sans-serif;
	font-size: 14px;
	line-height: 14px;
	margin-bottom: 5.5rem;
	filter: drop-shadow(3px 3px 6px rgb(178, 183, 208));
	position: relative;
}
.report-editor--page:last-child {
	margin-bottom: 0;
}


/* SVG */
.report-editor--page .graph {
	position: relative;
}

.report-editor--page .svg-container {
	position: absolute;
	top: -30px;
	left: -30px;
	width: calc(100% + 60px);
	height: calc(100% + 60px);
	pointer-events: none;
	z-index: 100;
}

/* Aside */
.report-editor--aside {
	height: calc(100vh - 14rem);
	width: 12rem;
	margin-left: 2rem;
	position: sticky;
	top: 6rem;
	overflow-y: auto;
}

.report-editor--page-list {
	overflow-y: auto;
}

.report-editor--aside .title {
	font-family: "Roboto Mono", Roboto, sans-serif;
	font-weight: 500;
	padding-left: 0.3rem;
}

.report-editor--aside .subtitle {
	font-weight: 500;
	color: #999;
	padding-left: 6px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.report-editor--thumbnails {
	font-size: 0.75rem;
	margin-top: 0.5rem;
}

.report-editor--thumbnails .item {
	width: 11.8rem;
	display: flex;
	align-items: center;
	margin-top: 0.1rem;
	margin-bottom: 0.4rem;
	margin: 0.1rem auto 0.4rem auto;
	border-radius: 0.3rem;
	padding: 0.4rem;
	transition: background-color 0.1s ease-in-out;
	cursor: pointer;
}

.report-editor--thumbnails .item:hover {
	background-color: var(--color-lightblue-lightest);
}

.report-editor--thumbnails .item.warning {
	background-color: #fff2ce;
}

.report-editor--thumbnails .item.active {
	outline: 0.1rem solid var(--color-lightblue-dark);
}

.report-editor--thumbnails .item + .subtitle {
	margin-top: 1rem;
}

.report-editor--thumbnails .item .icon {
	height: 4.5rem;
	width: 6rem;
	min-width: 6rem;
	margin-right: 0.5rem;
	background-size: 6rem;
	background-repeat: no-repeat;
	background-position: center;
	filter: drop-shadow(2px 2px 3px rgb(178, 183, 208));
}

.report-editor--thumbnails .item.warning .name {
	display: flex;
	flex-direction: column;
}

.report-editor--thumbnails .item.warning .name::after {
	content: "";
	display: block;
	width: 1.3rem;
	min-width: 1.3rem;
	height: 1.2rem;
	background: url("../images/icon--triangle-exclamation--red.svg") no-repeat center;
	background-size: 1.7rem;
	margin-top: 0.1rem;
}

/* Estilo común para todos los diseños Editor PDF */
.report-editor--page .header {
	position: absolute;
	top: 20px;
	left: 50px;
	right: 50px;
	display: flex;
	color: #ccc;
}

.report-editor--page .header .breadcrumbs {
	font-size: 10px;
	display: flex;
	max-width: 65%;
}

.report-editor--page .header .breadcrumbs .h2{
	max-width: 90px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.report-editor--page .header .breadcrumbs > div {
	margin-right: 3px;
}

.report-editor--page .header .breadcrumbs div:last-child {
	margin-right: 0;
	color: #000;
}

.report-editor--page .header .breadcrumbs .arrow {
	font-size: 9px;
}

.report-editor--page .header .divider {
	margin: 0 3px;
	font-size: 9px;
	text-align: center;
	flex-grow: 1;
}

.report-editor--page .header .pagination {
	font-size: 10px;
	display: flex;
	align-items: center;
	text-align: right;
}

.report-editor--page .header .pagination > div {
	margin-left: 3px;
}

.report-editor--page .header .pagination div:first-child {
	margin-left: 0;
}

.report-editor--page .header .pagination .app-name {
	text-transform: uppercase;
	max-width: 100px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Mini toolbar */
.report-editor--page .mini-toolbar {
	position: absolute;
	top: -25px;
	left: 0;
	height: 25px;
	max-height: 25px;
	display: flex;
	align-items: center;
	font-size: 11px;
	border-radius: 5px 5px 0 0;
	overflow: hidden;
}

.report-editor--page .mini-toolbar > * {
	height: 25px;
	max-height: 25px;
	transition: background 0.1s ease-in-out;
}

.report-editor--page .mini-toolbar button {
	background-color: var(--color-lightblue);
	padding: 0 10px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.report-editor--page .mini-toolbar button.square {
	width: 25px;
	height: 25px;
}

.report-editor--page .mini-toolbar button.bold {
	font-size: 13px;
	font-weight: 500;
}

.report-editor--page .mini-toolbar button.italic {
	font-size: 13px;
	font-style: italic;
	padding: 0 11px 0 9px;
}

.report-editor--page .mini-toolbar button.underline {
	font-size: 13px;
	text-decoration: underline;
}

.report-editor--page .mini-toolbar button.bullet-list {
	background: var(--color-lightblue) url("../images/icon--bullet-list--black.svg") no-repeat center;
	background-size: 12px;
}

.report-editor--page .mini-toolbar button.number-list {
	background: var(--color-lightblue) url("../images/icon--number-list--black.svg") no-repeat center;
	background-size: 12px;
}

.report-editor--page .mini-toolbar button:hover {
	background-color: var(--color-lightblue-darker);
}

.report-editor--page .mini-toolbar select {
	padding: 0 25px 0 10px;
	background: var(--color-lightblue)
		url('data:image/svg+xml, <svg fill="%23000" viewBox="0 0 100 50" xmlns="http://www.w3.org/2000/svg"><path d="M 0 0 L 50 50 L 100 0 z"/></svg>')
		no-repeat calc(100% - 9px);
	background-size: 9px;
	border: none;
	border-radius: 0;
	max-width: 200px;
}
.report-editor--page .mini-toolbar select:hover {
	background-color: var(--color-lightblue-darker);
}

.report-editor--page .mini-toolbar .divider {
	width: 20px;
	background-color: var(--color-lightblue);
	display: flex;
	align-items: center;
	justify-content: center;
}

.report-editor--page .mini-toolbar .divider::before {
	content: "";
	display: block;
	height: 14px;
	width: 1px;
	background-color: var(--color-lightblue-darkest);
}

.report-editor--page .empty {
	background-color: rgb(255 216 67 / 40%);
}

/* Placeholder message */
.report-editor--page .placeholder p {
	color: #ccc;
	font-style: italic;
	font-family: Roboto, sans-serif;
	grid-column: 1 / 4;
	line-height: 17px;
}

/* Estilo texto editable */
.report-editor--page *[contenteditable="true"] .bold {
	font-weight: 500;
}
.report-editor--page *[contenteditable="true"] .underline {
	text-decoration: underline;
}
.report-editor--page *[contenteditable="true"] ul {
	list-style-type: symbols(cyclic ">");
	padding-left: 15px;
}
.report-editor--page *[contenteditable="true"] ul li:first-child {
	margin-top: 5px;
}
.report-editor--page *[contenteditable="true"] ul li:last-child {
	margin-bottom: 5px;
}

.report-editor .contenteditable.info {
	height: unset;
}

/* Alerta de sección vacía - warning */
.report-editor--page .warning {
	background-color: #fff2ce;
}

/* Ajustes para informe completo */
.portrait-design .report-editor--page {
	width: 595px;
	min-width: 595px;
	height: 842px;
	min-height: 842px;
}

.portrait-design .report-editor--thumbnails .item .icon {
	width: 4.5rem;
	min-width: 4.5rem;
	height: 6.2rem;
	background-size: 4.5rem;
}

/* Solo para construcción de diseño */
.modo-prueba-diseno .report-editor--main .viewport {
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 2rem 0;
}

.modo-prueba-diseno .landscape-design .design-concl-02 .content {
	column-count: 2;
	-moz-column-count: 2;
	column-gap: 40px;
	column-fill: auto;
}

.modo-prueba-diseno .design-stats-02 .survey--question-text .answer {
	height: auto !important;
}

/* Vista para impresión */
.print-ready .report-editor--page {
	margin-bottom: 0;
	filter: none;
}

.print-ready .report-editor--page .mini-toolbar,
.print-ready .delete,
.print-ready .photo .actions,
.print-ready .no-photo .photo,
.print-ready .section.placeholder,
.print-ready .section.warning {
	display: none !important;
}

.print-ready .design-stats-02 .survey--question-text .answer {
	height: auto !important;
	min-height: 27px;
	width: calc(100% - 26px);
}

.print-ready .design-stats-02 .survey--question-text .icon{
	position: absolute;
	top: 4px;
	right: 8px;
}


/* Sobreescribir Quill */
.ql-container {
	font-family: inherit !important;
	font-size: inherit !important;
}
.ql-editor {
	padding: 0 !important;
	font-family: Roboto, sans-serif;
}

.ql-editor.ql-blank::before {
	left: 2px !important;
}

.ql-editor ul > li::before {
	content: "\003E" !important;
}

.ql-toolbar.buttons-toolbar {
	display: flex;
}

.ql-color option::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin-right: 5px;
	background-color: #fff;
}
