/* SPO 2026 — custom CSS for the Indico conference pages of event 19016 (Layout → Use custom CSS).
   Indico loads this file only on the pages of event 19016, so nothing here reaches other events.
   Brand: ink #14131A, greys #6B7280 / #9AA3B2, paper #FAFAFB; yellow lives only in the logo's wave packet.
   v2 (27.10.2026, task 27d): header/menu as in v1 (indico/spo2026-indico.css) + calmer timetable. */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600&display=swap');

/* ---------- Header: ink band with the white lockup ---------- */
.confheader,
.confTitleBox { background: #14131A !important; border: 0 !important; }
.confTitleBox { padding: 26px 32px 22px !important; display: flex; align-items: center; gap: 28px; }
/* Logo is hosted on the conference website and drawn by CSS (no Indico logo upload needed) */
.confTitleBox::before {
  content: ""; flex: 0 0 auto; width: 268px; height: 56px;
  background: url("https://www.spo.optics.org.ua/wp-content/uploads/2026/10/spo2026-indico-logo.png") left center / contain no-repeat;
}
/* Indico pages are not responsive: on a phone the page is wider than the screen; let the ink header follow the page width */
@media (max-width: 1000px) { body { min-width: min-content; } }
@media (max-width: 640px) {
  .confTitleBox { flex-direction: column; align-items: flex-start; gap: 14px; }
  .confTitleBox::before { width: 172px; height: 36px; }
}
.confTitle, .confTitle a, .conference-title-link {
  color: #FFFFFF !important;
  font-family: 'Oswald', 'Liberation Sans', sans-serif !important;
  font-weight: 500 !important;
  font-size: 30px !important;
  line-height: 1.15 !important;
  letter-spacing: .01em;
}

/* Dates / venue strip */
.confSubTitleBox { background: #1E1D26 !important; border: 0 !important; }
.confSubTitleBox, .confSubTitleBox * { color: #D9DAE0 !important; }
.confSubTitle .datePlace, .confSubTitle .date { font-family: 'Oswald', sans-serif; font-size: 18px; letter-spacing: .02em; color: #FFFFFF !important; }

/* Left menu */
.conf_leftMenu ul { border: 1px solid #E3E4E8; background: #FFFFFF; }
.conf_leftMenu li.menuConfTitle { background: transparent !important; border-bottom: 1px solid #EEEFF2; }
.conf_leftMenu li.menuConfTitle > a { color: #14131A !important; font-family: 'Liberation Sans', sans-serif; padding: 9px 14px !important; }
.conf_leftMenu li.menuConfTitle > a:hover { background: #F2F2F5; }
.conf_leftMenu li.menuConfSelected { background: #14131A !important; }
.conf_leftMenu li.menuConfSelected > a { color: #FFFFFF !important; font-weight: 600; }

/* Support/contact box */
.support_box h3, .support_box .title { background: #14131A !important; color: #FFFFFF !important; font-family: 'Oswald', sans-serif; letter-spacing: .03em; }

/* Content */
.conference-page h2, .conference-page h3, .conferenceDetails strong { color: #14131A; }
.conference-page a, .conferenceDetails a { color: #14131A; text-decoration: underline; text-underline-offset: 2px; }
.i-button.highlight, .i-button.accept { background: #14131A !important; border-color: #14131A !important; color: #FFFFFF !important; }

/* Page titles ("Timetable", "Contribution List" …) */
.conference-page > header h2, .conference-page .page-title, h2.page-title {
  font-family: 'Oswald', 'Liberation Sans', sans-serif !important; font-weight: 500; color: #14131A !important; letter-spacing: .01em;
}

/* ---------- Timetable (27d) ---------- */
/* Day tabs */
#timetable .ui-tabs-nav .ui-tabs-anchor, .ui-tabs .ui-tabs-nav .ui-tabs-anchor { font-family: 'Oswald', 'Liberation Sans', sans-serif; font-size: 14px; letter-spacing: .02em; color: #6B7280; }
.ui-tabs .ui-tabs-nav li.ui-tabs-active { background: #14131A !important; border-color: #14131A !important; }
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor { color: #FFFFFF !important; }

/* Print / PDF / Full screen / Detailed view / Filter */
.tabExtraButtons { background-color: #14131A !important; box-shadow: none !important; border-radius: 2px !important; }
.tabExtraButtons button { border-left-color: #3A3944 !important; }
.tabExtraButtons button:hover, .tabExtraButtons button:focus-visible { background: #3A3944 !important; }

/* Hour grid: quieter lines, larger hours */
.hourLine { border-top: 1px solid #ECEDF0 !important; color: #6B7280; font-family: 'Oswald', 'Liberation Sans', sans-serif; font-size: 14px !important; letter-spacing: .02em; }

/* Blocks: flat, square-ish, separated by a hairline of paper */
.timetableBlock {
  border: 1px solid #FFFFFF !important; border-radius: 2px !important; box-shadow: none !important;
  font-family: 'Liberation Sans', Arial, sans-serif;
}
/* Sessions and talks: ink with white text (whatever palette colour the session has) */
.timetableBlock.timetableSession, .timetableBlock.timetableContribution { background-color: #14131A !important; color: #FFFFFF !important; }
/* Rapid poster sessions Fr4–Fr6 (session "Rapid Poster Sessions", palette light grey #dfdfdf or the earlier #b9cbca): light grey */
.timetableBlock.timetableSession[style*="rgb(223, 223, 223)"], .timetableBlock.timetableContribution[style*="rgb(223, 223, 223)"],
.timetableBlock.timetableSession[style*="rgb(185, 203, 202)"], .timetableBlock.timetableContribution[style*="rgb(185, 203, 202)"] {
  background-color: #E9EAEE !important; color: #14131A !important; border-color: #FFFFFF !important;
}
/* Breaks, openings and closings: paper with a quiet dashed frame */
.timetableBlock.timetableBreak {
  background-color: #FAFAFB !important; color: #6B7280 !important; border: 1px dashed #C9CDD5 !important;
}
.timetableBlock.timetableBreak .timetableBlockTitle { color: #14131A; font-weight: 600; }

/* Text inside blocks */
div.timetableBlockTitle { font-size: 12px; line-height: 1.25; font-weight: 700; }
div.timetableBlockPresenters, div.timetableBlockConvener { font-size: 11.5px; line-height: 1.25; font-style: normal; opacity: .85; }
div.timetableBlockTime { font-family: 'Oswald', 'Liberation Sans', sans-serif; font-size: 14px; font-weight: 500; letter-spacing: .03em; padding-top: 2px; }
/* The venue line is the same for every block (and is in the header): hide it to calm the grid */
div.timetableBlockLocation { display: none !important; }

/* Session legend */
#legendMainToggle { background: #FFFFFF !important; color: #6B7280 !important; border: 1px solid #E3E4E8 !important; box-shadow: none !important; }
.timeTableLegend { background: #FAFAFB !important; border-color: #E3E4E8 !important; }
.timeTableLegend .legendItem { background: #FFFFFF !important; color: #14131A !important; border: 1px solid #E3E4E8; }
.timeTableLegend .timeTableItemColour { background: #14131A !important; }
.timeTableLegend .timeTableItemColour[style*="rgb(223, 223, 223)"], .timeTableLegend .timeTableItemColour[style*="rgb(185, 203, 202)"] { background: #E9EAEE !important; border-color: #9AA3B2 !important; }

/* Contribution list: program codes a little more visible */
.contribution-list .contrib-id, .contribution-row .contrib-id { font-family: 'Oswald', 'Liberation Sans', sans-serif; color: #6B7280; }