@import url("https://fonts.bunny.net/css?family=montserrat:100,200,300,400,500,600,700,800,900");

:root {

	--main-color-a:                    #4183C4;
	--main-color-b:                    #F1F8FE;
	--main-color-c:                    #F1F8FE;

	--greyemperor:                     #555;
	--greysilver:                      #CCC;
	--greygallery:                     #EEE;
	--white:                           #FFF;

	--body-in:                         var(--white);
	--body-out:                        var(--greygallery);

	--banner-url:                      url("https://conference.unisalento.it/event/20/attachments/853/1806/Banner.svg");
	--banner-background:               var(--main-color-a);
	--toptoolbar:                      var(--main-color-a);
	--link:                            var(--main-color-a);
	--link-hover:                      var(--main-color-a);

	--leftmenu-background:             var(--main-color-b);
	--leftmenu-border-left:            var(--main-color-c);
	--leftmenu-text:                   var(--greyemperor);

	--leftmenu-background-over:        var(--main-color-a);
	--leftmenu-border-left-hover:      var(--white);
	--leftmenu-text-over:              var(--main-color-b);

	--leftmenu-background-selected:    var(--main-color-a);
	--leftmenu-border-left-selected:   var(--white);
	--leftmenu-text-selected:          var(--main-color-b);
}

/* NOTE:

	- non posso usare un override globale tipo "body * {}" perchè andrei a sostituire anche le icone prodotte con Font Awesome 5 Free Solid
	- in alternativa potrei andare a cercare nel file https://conference.unisalento.it/dist/css/main.82dc38ee.css tutte le classi che usano Roboto e sovrascriverle
	- vedi anche indico/web/client/styles/base/_typography.scss indico/web/client/styles/partials/_fonts.scss
	- <i> (spesso usato per icone)
	- vedi https://getindico.io/indico-styleguide/css.html#icons
*/
body :not(i):not(.icon):not([class*="icon-"]):not(.fa):not([class*="fa-"]):not(svg) {
  font-family: "Montserrat", sans-serif !important;
}

body {
	max-width: 1200px;
	margin: auto;
	background-color: var(--body-out);
}

body > main.main,
body > div.footer {
	background-color: var(--body-in);
}

.confTitle,
#confSectionsBox {
	width: 100%;
	max-width: 1200px;
}

/* ----------- Top tool bar ----------- */
div.header {
	.page-header.event-page-header {

		div.main-action-bar {
			background-color: var(--toptoolbar);
		}

		.button-bar {
			.i-button:not(.label) {
				color: var(--white);
			}

			.i-button:not(.label):hover {
				background: var(--white);
				color: var(--main-color-a);
			}

			/* Customisation -> Layout -> Show navigation bar */
			/* .icon-home .icon-first .icon-prev .icon-collapse */

			/* cambia tema */
			.i-button.icon-layout,
			/* scarica materiale */
			.i-button.icon-package-download,
			span.separator {
				display: none;
			}
		}
	}
}

/* ----------- Logo header ----------- */
div.confheader {
	div.confTitleBox {

		background-color: var(--banner-background);

		div.confTitle {
			text-align: center;

			h1 a span.conference-title-link {
				padding: 0 0 5px 0;

				div.confLogoBox::before {
					content: "";
					display: block;
					width: 100%;
					max-width: 1200px;
					aspect-ratio: 1200 / 280;
					max-height: 280px;
					background-color: var(--banner-background);
					background-image: var(--banner-url);
					background-size: contain;
					background-repeat: no-repeat;
					background-position: center;
				}

				div.confLogoBox {
					background-color: var(--banner-background);
					width: 100%;
					max-width: 1200px;
					aspect-ratio: 1200 / 280;
					max-height: 280px;
					margin-bottom: 5px;
					padding-right: 0;
				}

				/* conference title */
				span {
					display: none;
				}
			}
		}
	}

	div.confSubTitleBox div.confSubTitleContent div.datePlace {
		display: none;
	}
}

/* ---------------- Left menu ---------------- */
div.conf_leftMenu {

	margin-left: 0.5em;

	ul#outer {

		background-color: var(--leftmenu-background);
		border: 1px solid var(--greysilver);

		li {
			border-bottom: 1px solid var(--greysilver);
		}

		li a {
			color: var(--leftmenu-text);
			border-left: 5px solid var(--leftmenu-border-left); /* evito che il testo slitti verso dx quando si visualizza il bordo */
			background-color: var(--leftmenu-background);
		}

		li a:not(.no-link):hover {
			color: var(--leftmenu-text-over);
			border-left: 5px solid var(--leftmenu-border-left-hover);
			background-color: var(--leftmenu-background-over);
		}

		li.menuConfSelected {
			border-top: 0;

			a {
				color: var(--leftmenu-text-selected);
				border-left: 5px solid var(--leftmenu-border-left-selected);
				background-color: var(--leftmenu-background-selected);
				/*font-weight: bold;*/
			}
		}
	}

	.support_box {
		color: var(--leftmenu-text);
		background-color: var(--leftmenu-background);

		h3 {
			color: var(--leftmenu-text-selected);
			/* border-left: 5px solid var(--leftmenu-border-left-selected); */
			background-color: var(--leftmenu-background-selected);
			border-bottom: 1px solid var(--greysilver);
		}

		ul > li .icon {
			color: var(--leftmenu-text);
		}
	}

	.support_box:hover {
		/* background-color: var(--leftmenu-background-selected); */
		ul > li .icon {
			/* color: var(--leftmenu-text-selected); */
		color: var(--leftmenu-text);
		}
		li a {
			/* color: var(--leftmenu-text-over); */
		color: var(--leftmenu-text);
		}
	}
}

/* ---------------- Page content ---------------- */
a {
	color: var(--link);
}
a:hover {
	color: var(--link-hover);
	/* text-decoration: underline !important; */
}

div.mainContent {

	div.col2 div.conference-page {

		header {

			h2 {
				color: var(--main-color-a);
			}

			div.subtitle-container {
				margin-top: 1em;
			}
		}

		div.page-content {

			h1, h2, h3, h4, h5, h6, td, dl, ol, blockquote {
				color: var(--greyemperor) !important;
			}

			color: var(--greyemperor) !important;
			font-size: 1.2em;
			padding-right: 2em;

			div.conferenceDetails div.description {
				/* attenzione: i due em si moltiplicano quindi imposto 1! */
				font-size: 1em;
			}

			p {
				/* [left|justify] */
				text-align: left;
			}

			ul li {
				padding-bottom: 0.5em;
			}

			.i-box-header .i-box-title {
				color: var(--main-color-a);
			}
		}
	}
}

/* ---------------- accordion ---------------- */
.accordion-wrap {
    display: flex;
    flex-direction: column;

    .accordion-content {
        order: 2;
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 0.35s ease;
        background: #faf9f6;
        border-left: 3px solid var(--leftmenu-background-over);
        ;
        margin: 4px 0 0;
    }

    .accordion-content:target {
        grid-template-rows: 1fr;
        margin: 4px 0 18px;
    }

    .accordion-content .accordion-inner {
        overflow: hidden;
        padding: 0 16px;
    }

    .accordion-title {
        order: 1;
        margin: 0;
    }

    .accordion-open,
    .accordion-close,
    .accordion-close-title {
        font-weight: bold;
        color: var(--leftmenu-background-over);
        ;
        text-decoration: none;
        display: inline-block;
        padding: 6px 0;
    }

    .accordion-open::before {
        content: "▸  ";
        transition: transform 0.2s ease;
    }

    .accordion-close-title::before {
        content: "▾  ";
    }

    .accordion-close-title {
        display: none;
    }

    .accordion-content:target~.accordion-title .accordion-open {
        display: none;
    }

    .accordion-content:target~.accordion-title .accordion-close-title {
        display: inline-block;
    }
}


/* ---------------- registration summary ---------------- */
div#registration-summary.regform-done table.registration-info th.regform-done-caption {
	text-align: left;
	width: unset;
}

/* nascondo i nomi degli autori dei contributi nella revisione */
div#reviewing-page.conference-page {
	div.avatar-div img.profile-picture,
	div#abstract-public div.review-summary div.review-summary-content,
	div#abstract-public div.review-item-content div.abstract-authorship-block,
	div.i-box-header:has(time),
	div.i-box-content.submission-info div.info-line label:has(+ ul.author-list),
	div.i-box-content.submission-info div.info-line ul.author-list {
		background-color: blanchedalmond;
		display: none;
	}
}
div.conference-page div.list.abstracts div.toolbar button.i-button.icon-settings.js-customize-list {
	display: none;
}

/* =====================================================================
   Programma della conferenza (generato da _4_timetable_genera_html_css_per_pagina_indico.py)
   Tutte le regole sono legate a .ap-programma: non toccano il resto del sito.
   ===================================================================== */
.ap-programma {
    --ap-font: "Lato", "Helvetica Neue", Arial, sans-serif;
    --ap-ink: #1d1d1f;
    --ap-mute: #6b6b70;
    --ap-rule: #dcdce0;
    font-family: var(--ap-font);
    font-size: 14px;
    line-height: 1.32;
    color: var(--ap-ink);
    max-width: 876.8px;
}

.ap-programma *::before,
.ap-programma *::after { box-sizing: border-box; }
.ap-programma h1,
.ap-programma h2,
.ap-programma h3 { font-family: inherit; color: inherit; }
.ap-programma table { border: 0; background: none; box-shadow: none; margin: 0; }
.ap-programma td,
.ap-programma th { color: inherit; border: 0; font-weight: inherit; }
.ap-programma [id] { scroll-margin-top: 80px; }
.ap-programma a:hover .ap-g-title { text-decoration: underline; }
.ap-programma .ap-parallel { overflow-x: auto; }
.ap-programma table.ap-grid { min-width: 640px; }

.ap-programma, .ap-programma * { box-sizing: border-box; }
.ap-programma a { color: inherit; text-decoration: none; }
.ap-programma h1, .ap-programma h2, .ap-programma h3 { margin: 0; }

/* --- programma in breve --- */
.ap-programma .ap-glance-page h2 { font-size: 21.2px; margin: 27.7px 0 13.8px; }
.ap-programma .ap-glance-cols { display: flex; gap: 27.7px; }
.ap-programma .ap-glance-day { flex: 1 1 0; min-width: 0; }
.ap-programma .ap-glance-day h3 { font-size: 16.3px; padding-bottom: 6.9px; border-bottom: 1.6px solid var(--ap-ink); }
.ap-programma table.ap-glance { width: 100%; border-collapse: collapse; }
.ap-programma table.ap-glance td { padding: 7.4px 0; border-bottom: 0.8px solid var(--ap-rule); vertical-align: top; }
.ap-programma .ap-g-time { width: 60px; font-weight: 700; font-variant-numeric: tabular-nums; }
.ap-programma .ap-g-time span { display: block; font-weight: 400; color: var(--ap-mute); font-size: 12.2px; }
.ap-programma .ap-g-title { font-weight: 700; }
.ap-programma .ap-g-break .ap-g-title { font-weight: 400; color: var(--ap-mute); font-style: italic; }
.ap-programma .ap-g-break td { padding: 4.6px 0; }
.ap-programma .ap-chips { margin-top: 4.6px; }
.ap-programma .ap-chip { display: block; padding: 3.7px 7.4px; margin-top: 3.7px; border-radius: 4.6px; font-size: 12.4px; }
.ap-programma .ap-glance-page { margin-bottom: 92.3px; }
.ap-programma .ap-g-desc { display: block; font-size: 12.4px; font-style: italic; margin-top: 1.8px; }

/* --- giornata --- */
.ap-programma .ap-day { margin-bottom: 92.3px; }
.ap-programma .ap-day-title { font-size: 24.4px; padding: 0 0 9.2px; margin-bottom: 13.8px; border-bottom: 3.3px solid var(--ap-ink); }

/* --- righe singole --- */
.ap-programma table.ap-row { width: 100%; border-collapse: collapse; margin: 0 0 9.2px; break-inside: avoid; }
.ap-programma table.ap-row td { vertical-align: top; padding: 9.2px 11.5px; }
.ap-programma td.ap-t { width: 69.2px; font-weight: 700; font-variant-numeric: tabular-nums; padding-left: 0 !important; }
.ap-programma td.ap-t span { display: block; font-weight: 400; color: var(--ap-mute); font-size: 12.2px; }
.ap-programma .ap-ttl { font-weight: 700; font-size: 16.3px; }
.ap-programma .ap-desc { display: block; font-weight: 600; font-size: 14.7px; font-style: italic; margin-top: 2.3px; }
.ap-programma .ap-loc { display: block; color: var(--ap-mute); font-size: 12.4px; margin-top: 1.8px; }
.ap-programma table.ap-plenary td + td { border-left: 4.9px solid transparent; background: transparent; color: inherit; }
.ap-programma table.ap-break td { padding-top: 4.6px; padding-bottom: 4.6px; }
.ap-programma table.ap-break td + td { border-left: 4.9px solid var(--ap-rule); color: inherit; }
.ap-programma table.ap-break .ap-ttl { font-weight: 400; font-style: italic; font-size: 14px; }
.ap-programma table.ap-break .ap-loc { display: inline; margin-left: 9.2px; }
.ap-programma .ap-count { float: right; font-size: 12.4px; color: var(--ap-mute); }

/* --- sessioni parallele --- */
.ap-programma .ap-parallel { margin: 11.5px 0 13.8px; }
.ap-programma .ap-par-label { font-size: 13px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--ap-mute); margin-bottom: 4.6px; }
.ap-programma .ap-par-label strong { color: var(--ap-ink); }
.ap-programma table.ap-grid { border-collapse: separate; border-spacing: 5.5px 0; table-layout: fixed; margin-left: -5.5px; width: calc(100% + 11.1px); }
.ap-programma table.ap-grid col.ap-c-time { width: 69.2px; }
.ap-programma table.ap-grid thead th { text-align: left; vertical-align: top; padding: 9.2px 10.2px; background: transparent; color: inherit; border-radius: 5.5px 5.5px 0 0; }
.ap-programma table.ap-grid thead th.ap-t { background: none; }
.ap-programma .ap-room { font-size: 17.1px; font-weight: 800; }
.ap-programma .ap-sess { font-size: 12.7px; font-weight: 600; margin-top: 2.3px; line-height: 1.25; }
.ap-programma table.ap-grid tbody tr { break-inside: avoid; }
.ap-programma table.ap-grid tbody td { vertical-align: top; padding: 6.5px 9.2px; border-top: 0.8px solid rgba(0,0,0,.12); }
.ap-programma table.ap-grid tbody tr:last-child td:not(.ap-t) { border-radius: 0 0 5.5px 5.5px; }
.ap-programma table.ap-grid tbody td.ap-t { background: none; border-top: 0.8px solid var(--ap-rule); width: 69.2px; }
.ap-programma table.ap-grid .ap-ct { font-weight: 600; }
.ap-programma table.ap-grid.ap-cols-2 .ap-ct { font-size: 14.7px; }
.ap-programma .ap-aut { color: var(--ap-mute); font-size: 12.4px; margin-top: 2.8px; font-style: italic; }
.ap-programma .ap-aff { font-style: normal; font-size: 11.4px; }

/* --- poster --- */
.ap-programma .ap-poster { margin: 13.8px 0 18.5px; }
.ap-programma .ap-poster > table.ap-row { margin-bottom: 6.9px; }
.ap-programma .ap-poster-track { margin: 11.5px 0 4.6px 69.2px; padding-bottom: 3.7px; font-size: 14px; border-bottom: 1.6px solid var(--ap-ink); }
.ap-programma .ap-poster-track span { float: right; font-weight: 400; font-size: 12.4px; color: var(--ap-mute); }
.ap-programma .ap-poster-list { list-style: none; padding: 0 0 0 69.2px; margin: 0; columns: 2; column-gap: 27.7px; }
.ap-programma .ap-poster-list li { display: block; position: relative; padding: 4.2px 0 4.2px 41.5px; break-inside: avoid; border-bottom: 0.8px solid var(--ap-rule); }
.ap-programma .ap-pn { position: absolute; left: 0; top: 4.2px; width: 32.3px; font-weight: 800; color: var(--ap-mute); font-variant-numeric: tabular-nums; }
.ap-programma .ap-poster-list .ap-ct { font-size: 12.7px; line-height: 1.25; }

.ap-programma span.ap-chips,
.ap-programma span.ap-g-title { display: block; }

/* --- schermi stretti --- */
@media (max-width: 700px) {
    .ap-programma .ap-glance-cols { flex-wrap: wrap; }
    .ap-programma .ap-glance-day { flex-basis: 100%; }
    .ap-programma ol.ap-poster-list { columns: 1; padding-left: 0; }
}