/* Background gradient — custom built by Certain, July 2026 */
/* Gradient applies to WEBSITE pages only. Excluded:                          */
/*  - All form-flow pages (open, closed, login, confirmation): tagged         */
/*    html.du-form-page by DU2026js.js based on the /profile/form/ URL        */
/*  - Any page containing #formProfileForm (fallback if JS is blocked)        */
/*  - Pop-up windows (speaker bios, agenda sessions — any page with the       */
/*    "Close Window" link), which stay plain white                            */
html:not(.du-form-page):not(:has(#formProfileForm)):not(:has(a[href^="javascript:window.close"])),
html:not(.du-form-page) body:not(:has(#formProfileForm)):not(:has(a[href^="javascript:window.close"])) {
  background-color: #eef1ec !important;
  background-image:
    radial-gradient(900px 700px at 12% 18%, rgba(205, 224, 192, 0.85) 0%, rgba(205, 224, 192, 0) 60%),
    radial-gradient(1000px 800px at 78% 22%, rgba(208, 225, 239, 0.85) 0%, rgba(208, 225, 239, 0) 60%),
    radial-gradient(1100px 900px at 88% 88%, rgba(243, 236, 214, 0.90) 0%, rgba(243, 236, 214, 0) 62%),
    radial-gradient(900px 800px at 8% 92%, rgba(214, 228, 205, 0.80) 0%, rgba(214, 228, 205, 0) 60%),
    radial-gradient(1200px 1000px at 50% 50%, rgba(255, 255, 255, 0.60) 0%, rgba(255, 255, 255, 0) 70%) !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}
/* Pop-up windows: plain white background */
html:has(a[href^="javascript:window.close"]),
body:has(a[href^="javascript:window.close"]) {
  background: #ffffff !important;
}
/* Default: center everything (keeps arrow cards' arrows on the text line) */
.shadow-table > tbody > tr > td {
  vertical-align: middle !important;
}
/* Content cards only (rows WITHOUT a 5th/arrow cell): pin content to the top */
.shadow-table:not(:has(> tbody > tr > td:nth-child(5))) > tbody > tr > td {
  vertical-align: top !important;
}
/* ── System navigation bar (top bar with "Speakers and agenda") ── */
/* 1. Smaller labels */
#navigation-menu td.nav-cell a { font-size: 14px !important; }
/* 2. No color change on hover — it was turning white and vanishing on the white bar */
#navigation-menu td.nav-cell:hover a { color: #000000 !important; }
/* 3. Stretch labels full width and space them evenly, to match the content-block nav */
#navigation-menu table {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  table-layout: fixed !important;
}
#navigation-menu td.nav-cell {
  padding-left: 12px !important;
  padding-right: 12px !important;
}
/* On hover: keep text black, make it bold */
#navigation-menu td.nav-cell:hover a {
  color: #000000 !important;
  font-weight: bold !important;
}
/* ── Mobile: stack side-by-side content-block columns ── */
/* du-cols on the layout table; du-col on content cells; du-gap on spacer   */
/* cells (hidden on mobile); du-first jumps a cell to the top on mobile;    */
/* du-desk-space hides desktop-only filler divs on mobile.                  */
/* du-agenda on agenda day tables: times stack above event text on mobile.  */
@media (max-width: 767px) {
	table.du-cols, table.du-cols > tbody { display: block !important; width: 100% !important; height: auto !important; }
	table.du-cols > tbody > tr { display: flex !important; flex-direction: column; height: auto !important; }
	table.du-cols > tbody > tr > td { display: block !important; width: 100% !important; height: auto !important; }
	table.du-cols td.du-gap { display: none !important; }
	table.du-cols td.du-col { margin-bottom: 16px; box-sizing: border-box; }
	table.du-cols td.du-first { order: -1; }
	table.du-cols td.du-col img { position: static !important; }
	.du-desk-space { display: none !important; }
	table.du-agenda, table.du-agenda > tbody { display: block !important; width: 100% !important; }
	table.du-agenda > tbody > tr { display: block !important; width: 100% !important; box-sizing: border-box; padding: 0 16px; }
	table.du-agenda > tbody > tr > td, table.du-agenda > tbody > tr > th { display: block !important; width: 100% !important; box-sizing: border-box; }
	table.du-agenda td[style*="width:2%"], table.du-agenda th:not([colspan]) { display: none !important; }
	table.du-agenda td[style*="width:24%"] { margin-bottom: 4px; }
}