@charset "UTF-8";

#main {
    margin-top: 15px;
    margin-bottom: 10px;
}
a {
	color: var(--nb-text-link);
}

div.area > a {
	font-size: var(--nb-font-body-size-bigger);
}

/* Logo DaRa */
#application {
	min-width: 270px;	/* body min-width - 2 *logo width */
}

/*
	Búsqueda simple
*/
.formHead em {
	font-weight: bold;
	font-size: var(--nb-font-body-size-bigger);
	font-style: normal;
}

.formHead .headLink {
	float:left;
	margin-left: 5px;
}

.linkColumnRight{
	text-align: right;
	margin-bottom: 5px;
}

.linkColumnRight a{
	margin-left:10px;
}

.linkColumn{
	font-weight: bold;
	margin-bottom: 10px;
}

.boldText{
	font-weight: bold;
}

.linkColumnRight .selectAllAndAnyArchivesLink{
	margin-left: 5px;
	margin-right: 5px;
	margin-bottom: 15px;
}

.longSelectedArchivesString{
	float:left;
	margin-left: 5px;
	margin-bottom: 15px;
	display: inline-block;
}

.formHead .headExternalLink{
	float:left;
	margin-left: 5px;
}

.searchFeedback {
	margin-top: 15px;
}

.searchForm {
	margin-top: 15px;
	margin-left: 0;
	margin-right: 0;
}

.searchLabel {
	color: var(--nb-text-secondary);
	font-weight: bold;
}

.searchFields {
	margin-top: 15px;
}


.searchFields .attachments div {
	display: inline;
}

.searchBoxArchives {
	margin: 20px 0 0 0;
}

.searchBoxArchives .formTitle {
	clear: left;
}

.rightColumn .archive {
    float: left;
    clear: left;
}

.searchBoxArchives .archive {
	float: left;
	width: 33%;
}

.rightColumn .archive input,
.searchBoxArchives .archive input {
	float:left;
 }

.searchBoxArchives .archiveString {
	vertical-align: middle;
	margin-top: 10px;
}

.archiveString{
	display:inline-block;
	width: 60%;
}

.searchBoxArchives  .archiveInputIcon {
	float: left;
	width: 33%;
	margin-bottom: 10px;
}

.searchBoxArchives .archiveInputIcon INPUT {
	margin-top: 15px;
	float: left;
}

.searchBoxArchives .archiveIcon {
	width: 40px;
	height: 40px;
    margin: 5px 10px;
}

.ultimacarga {
    font-size: var(--nb-font-body-size-small);
    margin: 5px 0;
}

.ultimacarga .fecha{
	font-style: italic;
}

.fullSearch {
	float:right;
	clear:right;
	text-align:right;
	margin: 5px 0;
}
.djvuLink{
    overflow:hidden;
 	clear: right;
}

.djvuLink .roundedBorderContent {
	height: auto;
}

.imgDjvuLink{
	text-decoration:none;
	float:left;
	width:120px;
}

.photoFooter
{
text-align: center;
}

/*
	Búsqueda avanzada
*/
.advanced .leftColumn {
	float: left;
	width: 192px;
}

.advanced .leftColumn img{
	margin: 0 auto 5px auto;
	display: block;
}

/* Quitamos margin y width ya que no "encaja" en la columna de bootstrap */
.advanced .djvuLink{
	margin-top:15px;
	overflow:hidden;
}

.advanced .rightColumn {
	float: right;
	width: 239px;
}
.advanced fieldset {
	margin-bottom: 5px;
}


.advanced .searchForm {
	margin-top: 15px;
	margin-left: 0;
	margin-right: 0;
}

.advanced .searchFeedback {
	margin-top: 15px;
}

.advanced .formTitle {
	color: var(--nb-legend-fg, var(--nb-text-primary));
}

.advanced .searchFields {
	margin-left: -40px;
	overflow: hidden;
}

.advanced .formRow {
	padding-bottom: 30px;
}

.advanced .formLabel {
	color: var(--nb-label-fg);
	font-weight:bold;
}

.advanced .formLabel2 {
	color: var(--nb-label-fg);
	font-weight:bold;
	margin-top: 4px;
}

.advanced .formField {
	float: left;
}

#attachments {
	height: 6em;
}

.advanced .formButtons {
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: 225px;
}

.advanced img {
	margin-left: 5px;
}

/*
 * Classification table
 */
@media only screen and (max-width: 639px) {
    #formHead a.classificationTableLink {
	    display: none;
    }
}

/* Autocompletado */
div.wicket-aa-container {
	z-index: var(--nb-z-dropdown);
}
div.wicket-aa {
	font-size: var(--nb-font-body-size-small);
	background-color: var(--nb-bg-body);
	border-width: 1px;
	border-color: var(--nb-border-default);
	border-style: solid;
	padding: 2px;
	margin: 1px 0 0 0;
	text-align:left;
    height: auto;
	overflow:auto;
}

div.wicket-aa ul {
	 list-style:none;
	 padding: 2px;
	 margin:0;
}

div.wicket-aa ul li.selected {
	background-color: var(--nb-bg-surface);
	padding: 2px;
	margin:0;
	font-weight:bold;
}

.advanced .dataTable {
	border: 0;
}

/* Filtros ventanas modales de selección */
tr.filters-tr {
	background-color: var(--nb-bg-body);
	height: 3em;
}

tr.filters-tr td.filter-td input[type="text"] {
	width: 95%;
	margin-top:5px;
}
tr.filters-tr td.filter-td input[type=submit].btn {
    margin-top:5px;
    margin-right: 5px;
}

.go, .clear
{
	border-width: 1px;
	border-style: solid;
	border-color: #1e3f71;
	border-right-width: 0;
	border-left-width: 0;
	background-color: var(--nb-btn-default-bg);
	font-weight: bold;
	text-align: center;
	color: var(--nb-text-primary);
}

/*
	Página de lista de resultados
 */
.resultsPage .leftColumn {
	float: left;
	width: 200px;
	margin-right: 10px;
	margin-bottom: 20px;
	font-size: var(--nb-font-body-size-small);
}

.facets {
	padding-left: 0;
	margin: 0;
}

.facets ul {
	margin: 0;
}

.facets li {
	list-style: none;
	margin-bottom: 5px;
}

.facetCategory {
	color: var(--nb-text-secondary);
	font-weight: bold;
}

.facetTerms {
	padding-top: 5px;
	padding-left: 5px;
}


.facetTerms li {
	list-style: none;
	margin-bottom: 0;
	overflow: hidden;
}

.facet .moreTerms {
	text-align:  right;
	font-size: var(--nb-font-body-size-small);
	margin-top: 5px;
}

.facet .showMoreTerms {
	font-size: var(--nb-font-body-size-small);
}

.facet .hideTerms {
	font-size: var(--nb-font-body-size-small);
}

.facetLink {
	text-align: left;
	margin-top: 5px;
	margin-bottom: 5px;
	margin-left: 5px;
}

/*
	Refinar resultados
*/
.refineResults {
	margin-bottom: 10px;
	font-size: var(--nb-font-body-size-small);
}

.refineResults .roundedBorderContent,
.refineResults .roundedBorderMargin1,
.refineResults .roundedBorderMargin2,
.refineResults .roundedBorderMargin3,
.refineResults .roundedBorderMargin4 {
    background-color: inherit;
}

.refineResults .current {
	margin-bottom: 5px;
}

.refineResults .add {
	background-color: inherit;
	margin-left: 15px;
}

.refineResults .orderBy  {
	margin-top: 15px;
}

.refineResults .label  {
	color: var(--nb-text-secondary);
	font-weight: bold;
	display:inline;
}

.refineResults .show  {
	display:inline;
}

.refineResults .list {
	margin-top: 3px;
	margin-left: 15px;
}

.refineResults .list .term {
	display: inline;
}

.refineResults .list .term .condition {
    display: inline-block;
    margin-bottom: 6px;
}

.refineResults .join {
	font-weight: bold;
}

.refineResults .field {
	font-style: italic;
}

.refineResults .formField {
	display: inline;
}
.refineResults .buttonTerms{
	padding-top:6px;
}

.selectedSearchTermLabel,
.selectedOrderByTermLabel {
    background-color: var(--nb-chip-bg);
    color: var(--nb-chip-fg);
    padding: 2px 3px;
}

.selectedSearchTermLabel span.remove,
.selectedOrderByTermLabel span.remove {
	padding-left: 4px;
	padding-right: 4px;
}

.selectedSearchTermLabel a,
.selectedOrderByTermLabel a {
	text-decoration: none;
    color: var(--nb-chip-action-fg);
}

.selectedSearchTermLabel a:hover,
.selectedOrderByTermLabel a:hover {
	color: var(--nb-chip-hover-fg);
    background-color: var(--nb-chip-hover-bg);
}

/*
	Imprimir resultados
*/
.refineResults .description {
	margin: 10px 0 10px 10px;
}

.refineResults .buttons  {
	margin-left: 50px;
	margin-top:10px;
}

.refineResults .tooMany  {
	margin: 20px;
	font-size: var(--nb-font-body-size-bigger);
	color: var(--nb-status-error);
}

.refineResults .availableReports  {
	margin-bottom: 10px;
}


/*
	Resultados
*/
/* Cabecera de la tabla de Results */
.resultsPage .headActions {
    background: var(--nb-table-header-bg);
	margin-top: 0.5em;
	padding-top: 0.4em;
	padding-bottom: 0.5em;
}

.resultsPage .headActions .navbar {
    min-height: 0;
    margin-bottom: 0;
}

.resultsPage .headActions .navbar-default {
    background: var(--nb-table-header-bg);
    color: var(--nb-table-header-fg);
}

.resultsPage .headActions .navbar-default .navbar-nav > .open > a,
.resultsPage .headActions .navbar-default .navbar-nav > .open > a:hover,
.resultsPage .headActions .navbar-default .navbar-nav > .open > a:focus {
    background: var(--nb-table-header-bg);
}

.resultsPage .headActions .navbar-default .navbar-nav > li > a {
    color: var(--nb-table-header-fg);
    text-transform: none;
}

.resultsPage .headActions .navbar-nav>li>a {
     padding-top: 10px;
     padding-bottom: 5px;
}

.resultsPage .headActions .dropdown-menu>li>a {
	font-size: var(--nb-font-body-size-small);
}

.sortIndicator {
    font-size: 0.7em;
    color: var(--nb-primary);
}
.headActions .viewLink {
    margin-left: 5px;
	margin-right: 5px;
}
@media (max-width: 767px) {
	.headActions {
		background-color: inherit;
	}
}
.dropdown-menu-option {
	padding: 0 6px;
	font-size: var(--nb-font-body-size-small);
	clear: both;
}
@media (min-width: 768px) {
	.headActions .navbar-nav.navbar-right:last-child {
		margin-right: 0;
	}
}
@media (max-width: 767px) {
	.navbar-default .navbar-nav .open .dropdown-menu .dropdown-menu-option {
		color: var(--nb-text-muted)
	}

	.navbar-default .navbar-nav .open .dropdown-menu .dropdown-menu-option:hover,
	.navbar-default .navbar-nav .open .dropdown-menu .dropdown-menu-option:focus {
		color: var(--nb-text-primary);
		background-color: transparent
	}

	.navbar-nav .open .dropdown-menu .dropdown-menu-option {
		padding: 5px 15px 5px 25px;
		line-height: 20px
	}

	.navbar-nav .open .dropdown-menu .dropdown-menu-option:hover,
	.navbar-nav .open .dropdown-menu .dropdown-menu-option:focus {
		background-image: none
	}
}

.results {
	margin-bottom: 10px;
}

.results .dataTable {
	border-collapse: separate;
}

.result .highlight-odd {
	background-color: var(--nb-highlight-odd-bg) !important;
}

.result .highlight-even {
	background-color: var(--nb-highlight-even-bg) !important;
}

.resultRow .highlight-odd {
	background-color: var(--nb-highlight-odd-bg) !important;
}

.resultRow .highlight-even {
	background-color: var(--nb-highlight-even-bg) !important;
}


.results .dataTable tfoot {
	background-color: var(--nb-results-footer-bg);
}

.results .result {
	padding-top: 4px;
	padding-bottom: 6px;
	clear: left;
}

.results tr:hover td {
	background-color: var(--nb-highlight-even-bg) !important;
}

.results .colViewDetail {
	float: left;
	margin-left: 5px;
	width: 20px;
}

.results .colViewDetail a {
	text-decoration: none;
}

.results .colItem {
	margin: 0 0 0 0;
}

.results .colDates {
	float: right;
	margin: 0 -20px;
	width: 100px;
	overflow: hidden;
	text-align: center;
}

.results .colThumb {
	margin: 0 2px 0 20px;
	width: 70px;
	text-align: center;
}

.results .colThumb img {
	width: 66px;
}

.results .colThumb a{
	text-decoration: none;
}

.results .colItem .line1 {
	font-size: var(--nb-font-body-size-small);
}

.results .colItem .line2 {
	text-align: justify;
}

.results .colItem .line3,
.results .colItem .line4 {
	font-size: var(--nb-font-body-size-small);
}

.results .colItem .productor {
	font-style: italic;
}

.results .invalidSearch {
	margin: 20px;
	font-size: var(--nb-font-body-size-bigger);
	color: var(--nb-status-error);
}

.result .hover {
	display: none;
}

.result:hover .hover {
    display: inline;
}
.result .actions a {
    text-decoration: none;
    opacity: 0.5;
}
.result .actions a:hover {
    opacity: 1;
}

div.resultRow :hover{
	background-color: var(--nb-highlight-even-bg) !important;
}


/*
	Página detalle de registro
 */
.itemDetails .navigationBar {
    background-color: transparent;
}

.itemDetails .navigationBar .previous {
	float:left;
}

.itemDetails .navigationBar .selectItem {
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.itemDetails .navigationBar .next {
	float:right;
}

.itemDetails .navigationBar .nav {
  display: inline-block;
  padding: 5px 14px;
  background-color: var(--nb-bg-body);
  border: 1px solid var(--nb-border-default);
  border-radius: 15px;
  margin-top: 5px;
}

.itemDetails .navigationBar .nav:hover {
  background-color: var(--nb-bg-surface);
}

.itemDetails .navigationBar .nav a {
  text-decoration: none;
}

.itemDetails .isad-like .detailNote {
    margin-left: 0px;
}

.itemDetails .area {
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.itemDetails .isad-like .area {
	margin-top: 0;
	margin-bottom: 0;
}

/* A partir de la segunda ocurrencia de esta clase se añade un padding */
.itemDetails section:not(:first-of-type) {
    padding: 10px 0;
}

/* Light gray divider */
/* A partir de la segunda ocurrencia de esta clase se pinta un borde gris */
.itemDetails .isad-like section:not(:first-of-type) {
    border-top: 1px solid var(--nb-border-default);
}

/* En la visualización de adjuntos, no queremos borde gris en la segunda sección */
.itemDetails .attachments section:nth-child(2) {
    border-top:none;
}

.itemDetails .detailLink{
	margin-right: 5px;
}

.itemDetails .exportLinks {
	display: block;
	color: var(--nb-text-secondary);
	font-weight: bold;
	font-size: var(--nb-font-body-size-bigger);
	margin-bottom: 5px;
	margin-top: 5px;
}


.itemDetails .isad-like .group {
    padding-top: 5px;
}

.itemDetails h2 {
	color: var(--nb-text-secondary);
	font-weight: bold;
	font-size: var(--nb-h2-size);
	margin-bottom: 5px;
}

.itemDetails h2 small {
    font-size: var(--nb-font-body-size-small);
}

.itemDetails h3 {
	color: var(--nb-text-secondary);
	font-size: var(--nb-h3-size);
	font-weight: bold;
	margin-top: 10px;
	margin-bottom: 0;
	margin-left: 20px;
}

.itemDetails .detailNote {
	margin-left: 50px;
	text-align: justify;
	line-height:15px;
}

.itemDetails .detail {
	margin-left: 50px;
	text-align: justify;
}

.itemDetails .isad-like .detail {
    margin-left: 0px;
}

.itemDetails .area#classification .detail {
    margin-left: 0;
}

.itemDetails .detail br {
	font-size: 20px;
}

.itemDetails .exportFormats {
    margin-left: 20px;
}

.itemDetails .leftImages{
	float:left;
	text-align: center;
	width: 180px;
}

.itemDetails .archiveWebSite {
	padding-top: 15px;
}

.itemDetails .archiveWebSite .archiveImage img {
	max-height: 250px;
}

.itemDetails .classificationTableLink {
	margin-top: 10px;
}

@media only screen and (max-width: 639px) {
    .itemDetails .classificationTableLink {
	    display: none;
    }
}

.itemDetails .attachments .title {
	font-weight: bold;
}

.itemDetails .attachments .dates {
	font-weight: bold;
}

.itemDetails .socialNetworks {
	text-align:left;
	padding-left:25px;
}

.itemDetails .socialNetworks div {
	padding-top: 1px;
}

.itemDetails .thumbnails {
	padding-top:10px;
	padding-left:0;
	padding-bottom: 10px;
}

.itemDetails .thumbnails img {
    max-width: 100%;
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.flex-btn-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.flex-btn-toolbar .flex-center-btn-group {
    display: flex;
    flex: 1;
    justify-content: center;
}

/* Adjunto a tamaño real */
.attachment {
	height:auto;
	margin-top:20px;
	margin-bottom:20px;
}

/* History */
.history .dataTable {
	border: 0;
}
.history .viewSearch {
	text-decoration: none;
}
.history .historyResults{
	text-align:right;
	width:60px;
}
.humanQuery .line1 {
	font-size: var(--nb-font-body-size-small);
}

.humanQuery .line2 {
    font-size: var(--nb-font-body-size-small);
}


.humanQuery .join {
	font-weight: bold;
}


#descriptionLevel {
	height: 10.5em;
}

.allNoneSelector {
	margin-top: 0;
	margin-bottom: 0;
}

.descriptionLevels {
	margin-left:10px;
}


/*CSS de los distintas niveles de archivo*/
.descriptionLevelBase {
	display:inline-block;
	width: 30px;
	margin-right: 3px;
	font-weight: bold;
	text-align:center;
}

/* Grupo de fondos */
.descriptionLevelGF {
    background-color: color-mix(in srgb, var(--nb-primary) 74%, #000 26%);
    color: color-mix(in srgb, #fff 100%, var(--nb-text-primary) 0%);
}

/* Fondo */
.descriptionLevelFO {
    background-color: color-mix(in srgb, var(--nb-primary) 85%, #000 15%);
    color: color-mix(in srgb, #fff 99%, var(--nb-text-primary) 1%);
}

/* Sección */
.descriptionLevelSC {
    background-color: color-mix(in srgb, var(--nb-primary) 82%, #fff 18%);
    color: color-mix(in srgb, #fff 91%, var(--nb-text-primary) 9%);
}

/* Serie */
.descriptionLevelSR {
    background-color: color-mix(in srgb, var(--nb-primary) 59%, #fff 41%);
    color: color-mix(in srgb, #fff 78%, var(--nb-text-primary) 22%);
}

/* Caja */
.descriptionLevelCA {
    background-color: color-mix(in srgb, var(--nb-primary) 35%, #fff 65%);
    color: color-mix(in srgb, #fff 31%, var(--nb-text-primary) 69%);
}

/* Expediente */
.descriptionLevelEX {
    background-color: color-mix(in srgb, var(--nb-primary) 20%, #fff 80%);
    color: color-mix(in srgb, #fff 10%, var(--nb-text-primary) 90%);
}

/* Documento */
.descriptionLevelDO {
    background-color: color-mix(in srgb, var(--nb-primary) 18%, #fff 82%);
    color: color-mix(in srgb, var(--nb-text-primary) 17%, #000 83%);
}

.navigationHelp {
	margin-left: 16pt;
}

/* for SchemaTableNavBrowsePanel: */
.schemaTableNavBrowsePanelBreadCrumbBarLabel {
    font-weight: bold;
    float: left;
    margin-right: 0.5em;
}
.schemaTableNavBrowsePanelTable {
	margin-top: 1em;
}

.schemaTableNavBrowsePanelTable .levelDescription{
	float:left;
}

.schemaTableNavBrowsePanelTable .link{
	margin-left: 2.4em;
	overflow: hidden;
}

.maintenance {
	margin-top: 2.0em;
	text-align: center;
    font-size: var(--nb-font-body-size-bigger);
}

.resultsPage .leftColumn .roundedBorderContent,
.resultsPage .leftColumn .roundedBorderMargin1,
.resultsPage .leftColumn .roundedBorderMargin2,
.resultsPage .leftColumn .roundedBorderMargin3,
.resultsPage .leftColumn .roundedBorderMargin4 {
    background-color: inherit;
}

/*Panel con la información de autoridades (relaciones)*/
.authorityModalPanel{
	margin-top: 1.0em;
	text-align: center
}

.authoritiesPage .filterRow {
	clear: left;
}
.authoritiesPage .filterForm {
	margin: 0 10px 10px 10px;
}
.authoritiesPage .filterForm .leftColumn {
	float: left;
}
.authoritiesPage .filterForm .rightColumn {
	width: 50%;
	margin-left: 50%;
}
.authoritiesPage label {
	color: var(--nb-label-fg);
	font-weight: bold;
}
.authoritiesPage .filterButtons {
	margin: 10px 0 0 0;
}


.authorityEditPage h2 label {
    color: inherit;
    font-weight: inherit;
}

.authorityEditPage .editForm {
	width: auto;
}

.authorityPanel .formField {
	float: none;
}

.authorityPanel .formLabels {
	width: 80px;
}

.authorityPanel .labels {
	text-align: left;
}

.deleteSearchTermButton{
    font-size: var(--nb-font-body-size-small);
	border-width: 1px;
	border-style: dotted;
	margin-top: 0.05em;
	padding-top: 0.05em;
	background: none;
}

.refineResultsContainer {
	margin-bottom: 15px;
}

.refineResultsRemoveButton{
	float: left;
}
.refineResultsLabel{
	text-align: left;
	margin-top: 5px;
	margin-right: -45px;
	padding-left: 9px;
}

.refineResultsField{
	display: inline-block;
}

.refineResultsFieldSet{
	border: 1px solid var(--nb-border-default);
	padding: .5em;
	margin: 1em 0;
}

.toggle-expand {
	background: url(expand.png) 0 50% no-repeat;
	border: none;
	padding-left: 16px;
}
.toggle-collapse {
	background: url(collapse.png) 0 50% no-repeat;
	border: none;
	padding-left: 16px;
}

.refineResultsField .formField {
	float: left;
}

.refineResultsField .formField .browseableInput {
	margin-right: 5px;
}

.refineFormField{
	margin-left: 20px;
	margin-top: 10px;
	width:100%
}

.availableSearchTerms{
	margin-bottom: 10px;
}

.addAvailableSearchTermsLabel{
	margin-right: 5px;
	width: 50px;
	float: left;
	margin-top: 5px;
}

/*Enlace añadir autoridad en formulario de autoridades*/
.linkAddRemovePanel{
	margin-top: 10px;
	margin-bottom: 40px;
}

.browseLinkAdd{
	float: left;
	margin-right: 10px;
}

.browseLinkLabel{
	float: left;
	margin-right: 10px;
}

.removeLink{
	float: left;
	margin-right: 10px;
}

.removeLinkLabel{
	float: left;
	margin-right: 10px;
}

.removeButton{
	margin-top: 15px;
}

/*Listado de autoridades paralelas*/
.formField select{
	width: 335px;
}


/* Estilos del range slider situado en los criterios adicionales de busqueda */
#slider {
	position: relative;
    width: 70%;
    height: 15px;
    background-attachment: scroll;
	background-clip: border-box;
	background-color: var(--nb-bg-surface);
	background-origin: padding-box;
	border: 1px solid var(--nb-border-default);
    border-radius: 8px;
	display: none;
}
.status {
    width: 300px;
    text-align: center;
    font-size: var(--nb-font-body-size-small);
}
.handle {
    cursor: move;
    display: block;
    position: absolute;
    top: 0;
    width:18px;
}

.sliderDiv {
	margin-top:5px;
	float: left;
}

.sliderDateFrom {
	margin-right: 10px;
	margin-top: 5px;
	width: 9%;
	float:left;
	text-align:right;
}

.sliderDateTo {
	margin-left: 10px;
	margin-top: 5px;
	width: 9%;
	float:left;
	text-align:left;
}

.hidden {
	display: none;
}

.stopFloating{
	clear:both;
}

/*Enlaces todos y ninguno de los checkbox*/
.checkBoxSelectAllLinks {
	float: right;
    margin: 2px;
}

.checkBoxSelectAllLinksTrue {
	float: left;
	margin-right: 5px;
}

.checkBoxSelectAllLinksFalse {
	float: left;
}

.progressInfoPanel {
	display: inline-block;
}

a.nuba-rawlink{
  background: url('download.png') right center no-repeat;
  padding-right: 16px;
  border-bottom: none;
}

.wicket-modal .wikipediaTextArea {
	width:99%; /* IE6 Hack */
}

.nb-row-clickable {
    cursor: pointer;
}

/* Adicionales por meter bootstrap */
input[type="checkbox"], input[type="radio"]{
    margin: 3px 0.5ex;
    background-color:inherit !important;
    border:none !important;
    accent-color: var(--nb-primary);
}

.rowHeightFixArchives{
    height: 62px;
}

/* Volvemos a poner los label como texto normal (solo si no son control-label de form-horizontal) en lugar de bold como pone boostrap */
label{
    font-weight: normal;
}

.form-horizontal .control-label{
    font-weight: bold;
    color: var(--nb-label-fg);
    text-align: left;
    margin-top:0;
    padding-top:0;
}




.divWithFormControl{
padding-left:0;
}



/* Corrección para input-group-btn con ajax-indicator de Wicket:
   Bootstrap 3 quita el border-radius derecho cuando .btn no es :last-child.
   Wicket genera un span.wicket-ajax-indicator después del .btn, causando este problema. */
.input-group-btn:last-child > .btn:first-child:not(:last-child) {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

/* Igualar altura del botón al input dentro de input-group.
   Necesario porque los skins pueden tener line-height diferente que afecta la altura calculada del .btn */
.input-group-btn .btn {
    height: 34px;
    line-height: 20px;
}

/* En algunos casos el label se queda mas bajo que su control porque bootstrap le pone un padding-top de 7px. Ademas con el right conseguimos que el control este mas cerca del label */
.form-horizontal .noPaddingTopRight{
    padding-top: 0;
    padding-right: 0;
}

/* Para que con bootstrap se conserve el estilo del fieldset en DARA sobre todo */
fieldset{
	display: block;
    margin-inline-start: 2px;
    margin-inline-end: 2px;
    padding-block-start: 0.35em;
    padding-inline-start: 0.75em;
    padding-inline-end: 0.75em;
    padding-block-end: 0.625em;
    border: 2px groove threedface;
    border-image-source: initial;
    border-image-slice: initial;
    border-image-repeat: initial;
    min-width: min-content;
}

legend{
	display: block;
    padding-inline-start: 2px;
    padding-inline-end: 2px;
    border: none;
    border-image-source: initial;
    border-image-slice: initial;
    border-image-repeat: initial;
    margin-bottom: 0;
    font-size: var(--nb-font-body-size);
    width:auto;

}

/********************************************/
/* Para que no lo ponga inline-block porque desmonta ciertas estructuras como la de selector de archivos */
label{
		display:inline;
	}



/* Bajamos un poco el texto del usuario logueado */
#username{
    padding-top: 2px;
}

.columnWithoutLateralPadding{
    padding-left: 0;
    padding-right: 0;
}

/* Labels del refinamiento del filtro de busqueda */
.label{
    font-size: var(--nb-font-body-size);
    color: var(--nb-text-primary);
}

/* Para que los input ocupen todo lo ancho de su columna definida */
input[type="text"] {
    width: 100%;
}

/* Bajamos un poco el botón para que quede a la altura del control al que acompaña */
.botonAlLadoControl{
    margin-top: 10px;
}


/*Vista mosaico*/
div.mosaic .item{
    width: 100% !important;
}

.simpleSearch .form-group{
    margin-bottom: 10px;

}

/* son 5 elementos por fila pero como tenemos que poner col-lg-2 lo ajustamos */
.mosaic .col-lg-2{
	width:20%;
}

/* En la busqueda avanzada se muestra 1 check por cada fila, no como en simple. Por eso lo ajustamos para ese caso especial de avanzada */
.advanced #columnRightArchives div.col-sm-4{
	width: 100%
}

.accordion-heading{
    height:30px !important;
}
.form-horizontal .form-group{
    margin-top:10px;
}

.form-group .row-fluid label
{ margin-top:0; }

.transparent-navbar{
    background-color: transparent;
    border:0;
}
.schemaTableFieldBrowseLink{
    margin-top:5px;
}

.history .viewSearch span{
    font-size:24px;
    margin-top:10px;
    margin-left:10px;
}

.close{
margin-top:-5px;
}


/* Customized card item mosaic view */

/* Contenedor: compensar padding para alinear bordes externos */
.mosaic-grid {
	margin-top: var(--mosaic-gap);
	margin-left: calc(var(--mosaic-gap) / -2);
	margin-right: calc(var(--mosaic-gap) / -2);
}

/* Ocultar hasta que Masonry complete el layout inicial */
.mosaic-grid,
.js-masonry {
	visibility: hidden;
}

.mosaic-grid.masonry-ready,
.js-masonry.masonry-ready {
	visibility: visible;
}

/* Items recién insertados por scroll continuo: ocultos hasta que Masonry los posicione.
   La clase la añade el servidor a los items recibidos por AJAX y la retira el JS tras layoutComplete. */
.mosaic-grid .col-item--pending {
	visibility: hidden;
}

/* Items: espaciado uniforme horizontal y vertical */
.mosaic-grid .col-item {
	padding-left: calc(var(--mosaic-gap) / 2);
	padding-right: calc(var(--mosaic-gap) / 2);
	padding-top: 0;
	padding-bottom: var(--mosaic-gap);
}

.col-item .item {
	border-radius: var(--mosaic-item-radius);
	position: relative;
}

/* Viñeteado interior: difumina los bordes de la imagen */
.col-item .photo {
	position: relative;
}

.col-item .photo::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: var(--mosaic-item-radius);
	box-shadow: inset 0 0 var(--mosaic-vignette-blur) var(--mosaic-vignette-spread) var(--mosaic-vignette-color);
	pointer-events: none;
}

.col-item input[type="checkbox"] {
	transform: scale(var(--mosaic-checkbox-scale));
	position: absolute;
	display: none;
}

.col-item input[type="checkbox"]:checked,
.col-item:hover input[type="checkbox"] {
	display: initial;
}

.col-item:hover .title,
.col-item input[type="checkbox"]:checked + a > .title {
	margin-left: var(--mosaic-title-indent);
}

.col-item .photo img {
	width: 100%;
	/* Reservar espacio antes de cargar: respeta la proporción natural si está disponible,
	   con fallback 1:1 (la mayoría de thumbnails de Fototeca son cuadradas).
	   Evita el reflow grande del grid al llegar cada imagen y reduce los cómputos de Masonry. */
	aspect-ratio: auto 1 / 1;
}

.col-item .btn-group {
	float: right;
	display: none;
}

.col-item:hover .btn-group {
	display: initial;
}

.col-item .caption {
	padding-top: var(--mosaic-default-caption-padding);
}

.col-item .title {
	overflow: hidden;
	display: -webkit-box;
	line-clamp: var(--mosaic-default-line-clamp);
	/* Fallback para Safari < 18.2 y navegadores antiguos */
	-webkit-line-clamp: var(--mosaic-default-line-clamp);
	-webkit-box-orient: vertical;
	/* Fin fallback line-clamp */
	font-weight: bold;
}

.col-item .referenceCode {
	display: inline-block;
}

.mosaic-grid ~ .foot-stepwise {
	margin-top: var(--mosaic-gap);
	text-align: center;
}

/*-----------------------------------------------------------------------------------------------*/
/* Vista Mosaico: Caption visible solo en hover (NUBA-8133)                                      */
/* Activado mediante clase .nb-mosaic-caption-hover controlada por property                      */
/*                                                                                               */
/* Arquitectura de 3 capas:                                                                      */
/* - Capa 1: Tokens globales --nb-* (tokens.css)                                                 */
/* - Capa 2: Tokens semánticos --mosaic-* (este archivo, sección :root)                          */
/* - Capa 3: Estilos BEM usando solo Capa 2 (este archivo)                                       */
/*                                                                                               */
/* Ver: ks-nuba/docs/06_design/web/css-component-tokens.md                                       */
/*-----------------------------------------------------------------------------------------------*/

/* ========================================
 * CAPA 2: Tokens Semánticos del Mosaico
 * ======================================== */

:root {
    /* --- Layout --- */
    --mosaic-gap: var(--nb-space-2);  /* espaciado uniforme horizontal y vertical */
    --mosaic-item-radius: var(--nb-radius-sm);

    /* --- Checkbox --- */
    --mosaic-checkbox-scale: 1.5;
    --mosaic-title-indent: 1.6em;

    /* --- Caption (modo normal) --- */
    --mosaic-default-caption-padding: var(--nb-space-1);
    --mosaic-default-line-clamp: 3;

    /* --- Caption (modo hover) --- */
    --mosaic-caption-padding: var(--nb-space-3);
    --mosaic-caption-radius: var(--nb-radius-sm);
    --mosaic-caption-bg: var(--nb-bg-overlay);
    --mosaic-caption-color: var(--nb-text-inverse);
    --mosaic-caption-font-size: var(--nb-font-body-size);
    --mosaic-caption-line-clamp: 2;

    /* --- Reference Code --- */
    --mosaic-reference-font-size: var(--nb-font-body-size-small);
    --mosaic-reference-opacity: 0.85;

    /* --- Transiciones --- */
    --mosaic-transition-duration: var(--nb-duration-normal);
    --mosaic-transition-ease: var(--nb-ease-out);

    /* --- Controles (checkbox, btn-group) --- */
    --mosaic-control-offset: var(--nb-space-2);
    --mosaic-btn-bg: var(--nb-bg-overlay);
    --mosaic-btn-radius: var(--nb-radius-sm);
    --mosaic-btn-padding: var(--nb-space-1);
    --mosaic-btn-color: var(--nb-text-primary);

    /* --- Viñeteado de imagen --- */
    --mosaic-vignette-blur: 5px;
    --mosaic-vignette-spread: 5px;
    --mosaic-vignette-color: rgba(255, 255, 255, 0.5);
}

/* ========================================
 * CAPA 3: Estilos del Componente (BEM)
 * ======================================== */

/* Contenedor del item: posición relativa para el caption superpuesto */
.nb-mosaic-caption-hover .item {
    position: relative;
    overflow: hidden;
}

/* Caption: overlay superpuesto sobre la imagen */
.nb-mosaic-caption-hover .caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: var(--mosaic-caption-padding);
    border-radius: 0 0 var(--mosaic-caption-radius) var(--mosaic-caption-radius);
    background: var(--mosaic-caption-bg);
    color: var(--mosaic-caption-color);

    /* Oculto por defecto con transición suave */
    opacity: 0;
    transform: translateY(100%);
    transition:
        opacity var(--mosaic-transition-duration) var(--mosaic-transition-ease),
        transform var(--mosaic-transition-duration) var(--mosaic-transition-ease);
}

/* Caption visible en hover */
.nb-mosaic-caption-hover .item:hover .caption,
.nb-mosaic-caption-hover .item:focus-within .caption {
    opacity: 1;
    transform: translateY(0);
}

/* Ajustes de tipografía del caption */
.nb-mosaic-caption-hover .caption .title {
    color: var(--mosaic-caption-color);
    font-size: var(--mosaic-caption-font-size);
    font-weight: normal;
    margin-left: 0;

    /* Limitar líneas para evitar desbordamiento en imágenes cortas */
    line-clamp: var(--mosaic-caption-line-clamp);
    /* Fallback para Safari < 18.2 y navegadores antiguos */
    display: -webkit-box;
    -webkit-line-clamp: var(--mosaic-caption-line-clamp);
    -webkit-box-orient: vertical;
    /* Fin fallback line-clamp */
    overflow: hidden;
}

.nb-mosaic-caption-hover .caption a {
    color: var(--mosaic-caption-color);
    text-decoration: none;
}

.nb-mosaic-caption-hover .caption a:hover {
    text-decoration: underline;
}

/* Código de referencia */
.nb-mosaic-caption-hover .caption .referenceCode {
    color: var(--mosaic-caption-color);
    opacity: var(--mosaic-reference-opacity);
    font-size: var(--mosaic-reference-font-size);
}

/* Checkbox de selección: esquina inferior derecha del caption */
.nb-mosaic-caption-hover input[type="checkbox"] {
    position: absolute;
    bottom: var(--mosaic-control-offset);
    right: var(--mosaic-control-offset);
    top: auto;
    left: auto;
    z-index: 10;
}

/* Botones de edición: posicionar encima del caption, sobre la imagen */
.nb-mosaic-caption-hover .btn-group {
    position: absolute;
    bottom: 100%;
    right: var(--mosaic-control-offset);
    margin-bottom: var(--mosaic-control-offset);
    z-index: 10;
    float: none;
    background: var(--mosaic-btn-bg);
    border-radius: var(--mosaic-btn-radius);
    padding: var(--mosaic-btn-padding);
}

/* Restaurar color de los iconos en botones (evita herencia del color blanco del caption) */
.nb-mosaic-caption-hover .btn-group .btn-default {
    color: var(--mosaic-btn-color);
}

/* En hover del título no desplazar (ya no hay checkbox al lado) */
.nb-mosaic-caption-hover:hover .title,
.nb-mosaic-caption-hover input[type="checkbox"]:checked + a > .title {
    margin-left: 0;
}

/* Elemento seleccionado sin hover: mostrar solo el checkbox difuminado.
   El caption normalmente está oculto (opacity:0, translateY:100%), pero cuando
   contiene un checkbox marcado lo hacemos visible con fondo transparente,
   ocultando el resto de contenido (título, referenceCode, btn-group). */
.nb-mosaic-caption-hover .item:not(:hover) .caption:has(input:checked) {
    opacity: 1;
    transform: translateY(0);
    background: transparent;
    pointer-events: none;
}

.nb-mosaic-caption-hover .item:not(:hover) .caption:has(input:checked) > :not(input[type="checkbox"]) {
    visibility: hidden;
}

.nb-mosaic-caption-hover .item:not(:hover) .caption:has(input:checked) input[type="checkbox"] {
    opacity: 0.5;
    pointer-events: auto;
}

.clear-left
{
    clear: left;
}

.colThumb img {
    width:95%;
    max-height: 200px;
}

#overlay {
    z-index: var(--nb-z-modal) !important;
}

#lightbox {
    z-index: calc(var(--nb-z-modal) + 1) !important;
}

#additionalHeaderContents a {
    font-size: var(--nb-font-body-size-small);
 }

.btn-group-wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    margin-top: 5px;
    margin-bottom: 20px;
    padding: 0;
    text-align: center;
}

.custom-page-header {
	margin-top: 0;
	margin-bottom: 10px;
	border-bottom: 0 solid;
}

.externalLinkEuropeana{
    float:right;
}
.no-margin-top{
    margin:10px 0 20px;
}
.addbutton{
    margin-top:15px;
    margin-bottom:10px;
    margin-left:0;
}
.margin-right-custom{
    margin-right:10px;
}

.itemStateTypeFlag{
    font-size: 75%;
    background: var(--nb-badge-bg);
    color: var(--nb-badge-fg);
    padding: .2em .6em .3em;
    display: inline;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25em;
}

.form-inline .form-group > .filterDate{
    display:inline-block !important;
}

 @media screen and (max-width:1399px) and (min-width:768px){
  .filterLabelsLarger {
   width: 100% !important;
      color: var(--nb-label-fg);
   float: left;
   font-weight:700;
  }

 }


 @media screen and (min-width:1400px){
  .filterLabelsLarger {
   width: 30% !important;
   font-weight: bold;
   color: var(--nb-label-fg);
   float: left;
  }

 .specialLong {
     width: 38% !important;
     font-weight: bold;
     color: var(--nb-label-fg);
     float: left;
    }

 }


.data-picker-date {
    width:75px !important;
}

.archiveOverflow{
  max-height: 110px;
  overflow: auto;
  left: 15px;
}

select{
    margin:0 !important;
    padding:0 !important;
}

.form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
}


/* Edición de descripciones */
.entityEditForm .input-group {
    padding-bottom: 0;
}

.entityEditForm h2 label {
    color: inherit;
    font-weight: inherit;
}

.no-bullet {
    list-style-type: none;
}

/* Creative Commons license */
.cc-license-icons {
    padding: 0.2em
}

.cc-license-icons .icon img {
	height: 2em;
    filter: contrast(90%);
}

.cc-license-icons a {
	text-decoration: none;
}

/* Cuadro de clasificación */
.itemDetails div.wicket-tree-table,
.classificationTable div.wicket-tree-table {
    span.descriptionLevelBase {
        margin-left: inherit;
        width: auto;
        padding-left: 4px;
        padding-right: 4px;
        opacity: 0.75;
    }

    span.descriptionLevelBase {
        opacity: 1.0;
    }

    .detalles {
        display: flex;
        width: 100%;
        justify-content: space-between;
        padding-right: 10px;
    }

    .links {
        display: flex;
        width: 100%;
    }

    .datesRange {
        white-space: nowrap;
    }
}

/* Instituciones */
.institutionsTablePanel .filterRow {
	clear: left;
}
.institutionsTablePanel .filterButtons {
	margin: 10px 0 10px 0;
}

input[type="file"] {
    width: 100%;
}

.submissionFields input[type="file"] {
    width: auto;
    display: inline;
}

hr {
    clear: both;
    border-bottom: 1px dashed var(--nb-border-strong);
}

.auditLog .eventTitle {
	font-weight: bold;
	padding-bottom: 1em;
}

tfoot.foot-stepwise {
	text-align: center;
}

tfoot.foot-stepwise .showMore {
	margin-top: 1em;
}

tfoot.foot-stepwise .loading {
	display: inline-block;
	margin-top: 1em;
}

/* Set of mt-* classes to mimic Bootstrap 4's margin functionality in Bootstrap 3 */
.mt-0 {
    margin-top: 0 !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-5 {
    margin-top: 3rem !important;
}

/* Chips styling */

.chip-container {
    display: flex;
    flex-wrap: wrap; /* Chips wrap to the next line responsively */
    gap: 12px; /* Consistent spacing between items */
}

.chip-container > .chip {
    display: inline-block;
    padding: 6px 12px; /* Space inside chips */
    font-size: var(--nb-font-body-size); /* Smaller font for lightweight content */
    color: var(--nb-chip-fg);
    background-color: var(--nb-chip-bg);
    border-radius: 16px; /* Rounded edges for modern chips */
    transition: background-color 0.3s ease; /* Smooth hover effect */
}

.chip-container > .chip:hover {
    background-color: var(--nb-chip-hover-bg);
}

/* Admin blocks */
.adminBlock {
    padding-bottom: var(--nb-space-4);
}

.adminBlock h3 {
    margin-bottom: var(--nb-space-1);
}

/*-----------------------------------------------------------------------------------------------*/
/*                                                                                               */
/* Búsqueda experta - Botón eliminar campo (estilo discreto)                                     */
/*                                                                                               */
/*-----------------------------------------------------------------------------------------------*/

/* Botón eliminar: discreto por defecto, visible en hover del form-group */
.term .form-group .btn-danger {
    background: transparent;
    border: 1px solid var(--nb-gray-300);
    color: var(--nb-gray-400);
    transition: opacity 0.15s ease-out, background 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
}

/* Hover en el botón: mostrar intención de eliminar */
.term .form-group .btn-danger:hover,
.term .form-group .btn-danger:focus {
    background: var(--nb-status-error);
    border-color: var(--nb-status-error);
    color: white;
}

/* Reducir espacio entre el último campo y el separador */
.searchForm .searchTerms {
    margin-bottom: 12px;
}

.searchForm .searchTerms .term .form-horizontal:last-child .form-group:last-child {
    margin-bottom: 0;
}

/* Separador sólido entre campos y botones de acción */
.searchForm > hr {
    border-top: 1px solid var(--nb-border-default);
    border-bottom: none;
    margin-top: 0;
    margin-bottom: 12px;
}

/* Alinear botones con el borde derecho de las cajas de texto.
   Los inputs están dentro de .searchTerms (col-12, padding-right: 15px) → contenido en form.right - 15px.
   Los botones están en .row > .col-xs-12 (padding-right: 15px) → contenido en form.right.
   Compensamos con 15px extra de padding-right. */
.searchForm > .form-group.row > .col-xs-12.text-right {
    padding-right: 30px;
}

/*-----------------------------------------------------------------------------------------------*/
/*                                                                                               */
/* Vista de Detalle - Layout Imagen/Metadatos                                                    */
/*                                                                                               */
/* Sistema de tokens para personalizar el layout imagen/metadatos.                               */
/* Por defecto: sin estilos adicionales (Bootstrap 3 controla el layout).                        */
/*                                                                                               */
/* Los clientes pueden activar layout flex en su skin CSS redefiniendo tokens.                   */
/* Ver nubaext_foto.css para ejemplo de imagen prominente (arriba, centrada).                    */
/*                                                                                               */
/*-----------------------------------------------------------------------------------------------*/

/* Imagen principal: responsive por defecto */
.nb-item-viewer-layout .thumbnails img {
    max-width: 100%;
    height: auto;
}

/*-----------------------------------------------------------------------------------------------*/
/*                                                                                               */
/* Attachments Layout - Sistema de tokens configurable                                           */
/*                                                                                               */
/* Sistema unificado de visualización de adjuntos con navegación CSS.                           */
/* Soporta layout vertical (default) y horizontal (filmstrip).                                  */
/*                                                                                               */
/* DEFAULTS (layout vertical):                                                                  */
/*   - max-height: 800px (limita altura, activa scroll y navegador si hay más adjuntos)         */
/*   - Navegación: flechas arriba/abajo aparecen automáticamente si hay overflow                */
/*                                                                                               */
/* PERSONALIZACIÓN POR CLIENTE:                                                                 */
/* Los clientes pueden redefinir tokens en su CSS (skin).                                       */
/*                                                                                               */
/* Ejemplo 1 - Layout horizontal (filmstrip):                                                   */
/*   :root {                                                                                    */
/*       --nb-attachments-direction: row;                                                       */
/*       --nb-attachments-wrap: nowrap;                                                         */
/*       --nb-attachments-height: 200px;                                                        */
/*       --nb-attachments-max-height: none;                                                     */
/*       --nb-attachments-overflow-x: auto;                                                     */
/*       --nb-attachments-overflow-y: visible;                                                  */
/*       --nb-attachments-scroll-snap: x mandatory;                                             */
/*       --nb-attachments-item-flex-shrink: 0;                                                  */
/*       --nb-attachments-item-height: 100%;                                                    */
/*       --nb-attachments-img-height: 100%;                                                     */
/*       --nb-attachments-img-width: auto;                                                      */
/*   }                                                                                          */
/*                                                                                               */
/* Ejemplo 2 - Sin límite de altura (mostrar todos los adjuntos):                               */
/*   :root {                                                                                    */
/*       --nb-attachments-max-height: none;                                                     */
/*   }                                                                                          */
/*                                                                                               */
/* Ejemplo 3 - Ocultar navegación CSS:                                                          */
/*   :root {                                                                                    */
/*       --nb-attachments-nav-display: none;                                                    */
/*   }                                                                                          */
/*                                                                                               */
/*-----------------------------------------------------------------------------------------------*/

/* Capa 2: Tokens semánticos - DEFAULTS (vertical) */
:root {
    /* Layout */
    --nb-attachments-direction: column;
    --nb-attachments-wrap: nowrap;
    --nb-attachments-gap: var(--nb-space-3, 1rem);

    /* Dimensiones container */
    --nb-attachments-height: auto;
    --nb-attachments-max-height: 800px;

    /* Scroll */
    --nb-attachments-overflow-x: visible;
    --nb-attachments-overflow-y: auto;
    --nb-attachments-scroll-snap: none;

    /* Items (flex-shrink: 0 para que no se compriman y causen overlap) */
    --nb-attachments-item-flex-shrink: 0;
    --nb-attachments-item-width: auto;
    --nb-attachments-item-height: auto;

    /* Imagen */
    --nb-attachments-img-height: auto;
    --nb-attachments-img-width: 100%;
    --nb-attachments-img-max-width: 100%;
    --nb-attachments-img-object-fit: contain;

    /* Navegación CSS (visible por defecto, aparece al hover si hay overflow) */
    --nb-attachments-nav-display: flex;
    --nb-attachments-nav-size: 40px;
    --nb-attachments-nav-bg: rgba(0, 0, 0, 0.5);
    --nb-attachments-nav-bg-hover: rgba(0, 0, 0, 0.7);
    --nb-attachments-nav-color: #fff;
    --nb-attachments-nav-font-size: 24px;
}

/* Capa 3: Estilos BEM */

.thumbnails .nb-attachments {
    display: flex !important;
    flex-direction: var(--nb-attachments-direction);
    flex-wrap: var(--nb-attachments-wrap);
    gap: var(--nb-attachments-gap);
    height: var(--nb-attachments-height);
    max-height: var(--nb-attachments-max-height);
    overflow-x: var(--nb-attachments-overflow-x);
    overflow-y: var(--nb-attachments-overflow-y);
    scroll-snap-type: var(--nb-attachments-scroll-snap);
    -webkit-overflow-scrolling: touch;
}

.thumbnails .nb-attachments__list {
    flex-shrink: var(--nb-attachments-item-flex-shrink);
    width: var(--nb-attachments-item-width);
    height: var(--nb-attachments-item-height);
}

/* Item interno */
.thumbnails .nb-attachments__item {
    height: var(--nb-attachments-item-height);
}

/* Propagar altura a elementos internos */
.thumbnails .nb-attachments__item > *,
.thumbnails .nb-attachments__item > * > *,
.thumbnails .nb-attachments__item a {
    display: block;
    height: 100%;
}

/* Imagen */
.thumbnails .nb-attachments__item img {
    height: var(--nb-attachments-img-height);
    width: var(--nb-attachments-img-width);
    max-width: var(--nb-attachments-img-max-width);
    max-height: 100%;
    object-fit: var(--nb-attachments-img-object-fit);
    display: block;
}

/* Ocultar scrollbar (estético) */
.thumbnails .nb-attachments::-webkit-scrollbar {
    display: none;
}

.thumbnails .nb-attachments {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

/* Wrapper para posicionar botones de navegación */
.nb-attachments-wrapper {
    position: relative;
    width: 100%;
}

/* Botones de navegación (aparecen al hover si hay overflow) */
.nb-attachments-nav {
    display: var(--nb-attachments-nav-display);
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: var(--nb-attachments-nav-size);
    height: var(--nb-attachments-nav-size);
    padding: 0;
    border: none;
    border-radius: 50%;
    background: var(--nb-attachments-nav-bg);
    color: var(--nb-attachments-nav-color);
    font-size: var(--nb-attachments-nav-font-size);
    line-height: 1;
    cursor: pointer;
    transition: background-color 0.2s ease, opacity 0.2s ease;
    opacity: 0;
}

.nb-attachments-wrapper:hover .nb-attachments-nav {
    opacity: 1;
}

.nb-attachments-nav:hover {
    background: var(--nb-attachments-nav-bg-hover);
}

.nb-attachments-nav:focus {
    outline: 2px solid var(--nb-attachments-nav-color);
    outline-offset: 2px;
}

.nb-attachments-nav--prev {
    left: 10px;
    /* Ajuste vertical del símbolo ‹ */
    padding-bottom: 4px;
}

.nb-attachments-nav--next {
    right: 10px;
    /* Ajuste vertical del símbolo › */
    padding-bottom: 4px;
}

/* Ocultar botón cuando no hay scroll en esa dirección */
.nb-attachments-nav--prev.is-hidden,
.nb-attachments-nav--next.is-hidden {
    display: none !important;
}

/* Layout vertical: reposicionar botones arriba/abajo */
.nb-attachments-wrapper--vertical .nb-attachments-nav {
    left: 50%;
    transform: translateX(-50%);
}

.nb-attachments-wrapper--vertical .nb-attachments-nav--prev {
    top: 10px;
    bottom: auto;
}

.nb-attachments-wrapper--vertical .nb-attachments-nav--next {
    top: auto;
    bottom: 10px;
    right: auto;
}

/* Rotar iconos para vertical */
.nb-attachments-wrapper--vertical .nb-attachments-nav--prev::after {
    content: '\2303'; /* ⌃ chevron up */
}

.nb-attachments-wrapper--vertical .nb-attachments-nav--next::after {
    content: '\2304'; /* ⌄ chevron down */
}

/* Ocultar texto original en vertical y mostrar pseudo-elemento */
.nb-attachments-wrapper--vertical .nb-attachments-nav {
    font-size: 0;
}

.nb-attachments-wrapper--vertical .nb-attachments-nav::after {
    font-size: var(--nb-attachments-nav-font-size);
    line-height: 1;
}

.nb-attachments-wrapper--vertical .nb-attachments-nav--prev::after {
    transform: translateY(4px);
}

.nb-attachments-wrapper--vertical .nb-attachments-nav--next::after {
    transform: translateY(-4px);
}

