/* =================================================================
   BASE STYLES - Mimics browser defaults with controllable font size
   =================================================================
*/

:root {
  --font-size: 16px;
  --line-height: 1.4;
  --font-family: serif;
}

html {
  font-size: var(--font-size);
}

body {
  margin: 8px;
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: var(--line-height);
}

/* Headings - browser default ratios */
h1 {
  display: block;
  font-size: 2em;
  font-weight: bold;
  margin: 0.67em 0;
}

h2 {
  display: block;
  font-size: 1.5em;
  font-weight: bold;
  margin: 0.83em 0;
}

h3 {
  display: block;
  font-size: 1.17em;
  font-weight: bold;
  margin: 1em 0;
}

/* Paragraph */
p {
  display: block;
  margin: 1em 0;
}

/* Links - browser default blue/purple */
a {
  color: blue;
  text-decoration: underline;
  cursor: pointer;
}

a:visited {
  color: blue;
}

a:hover {
  color: purple;
}

/* Horizontal rule */
hr {
  border: none;
  border-top: 1px solid gray;
  margin: 0.5em 0;
}

/* Images */
img {
  max-width: 100%;
  height: auto;
}

/* Site logo */
#site-logo {
  width: 115px;
  height: auto;
}

/* Selfie - circular */
#selfie-img {
  width: 125px;
  height: auto;
}

/* Music video thumbnail */
#latest-video-thumb {
  width: 250px;
  height: auto;
}

/* Hide video link container for testing - remove to show */
#video-link-container {
  display: none;
}

/* Emphasis */
em {
  font-style: italic;
}

strong {
  font-weight: bold;
}

/* =================================================================
   SEATED WIDGET OVERRIDES - Table layout with headers
   =================================================================
*/

/* Force seated to inherit our font */
#seated-55fdf2c0,
#seated-55fdf2c0 * {
  font-family: var(--font-family) !important;
  font-size: 1rem !important;
  line-height: var(--line-height) !important;
}

/* Table structure */
.seated-events-table {
  display: table !important;
  border-collapse: collapse !important;
}

/* Header row (injected by JS) */
.seated-header-row {
  display: table-row !important;
  font-weight: bold !important;
}

.seated-header-row span {
  display: table-cell !important;
  padding: 0.2em 1.5em 0.2em 0 !important;
  border-bottom: 1px solid black !important;
}

/* Data rows */
.seated-event-row {
  display: table-row !important;
}

/* Table cells */
.seated-event-description-cells {
  display: contents !important;
}

.seated-event-date-cell {
  display: table-cell !important;
  padding: 0.2em 1.5em 0.2em 0 !important;
  white-space: nowrap !important;
}

.seated-event-venue-cell {
  display: contents !important;
}

.seated-event-venue-name {
  display: table-cell !important;
  padding: 0.2em 1.5em 0.2em 0 !important;
}

.seated-event-venue-location {
  display: table-cell !important;
  padding: 0.2em 1.5em 0.2em 0 !important;
}

.seated-event-link-cells {
  display: table-cell !important;
  padding: 0.2em 0 !important;
}

.seated-event-link-cell {
  display: inline !important;
  margin-right: 0.75em !important;
}

/* Hide "Nope" (artist/details cell) */
.seated-event-details-cell {
  display: none !important;
}

/* Links as plain underlined text */
.seated-event-link-cell a {
  all: unset !important;
  color: blue !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  font-family: var(--font-family) !important;
  font-size: 1rem !important;
}

.seated-event-link-cell a:hover {
  color: purple !important;
}

/* Sold out links in red */
#seated-55fdf2c0 .seated-event-link-cell a.seated-event-link1-sold-out,
#seated-55fdf2c0 .seated-event-link-cell a.seated-event-link2-sold-out,
#seated-55fdf2c0 .seated-event-link-cell a[class*="sold-out"],
.seated-event-link-cell a.seated-event-link1-sold-out,
.seated-event-link-cell a.seated-event-link2-sold-out,
.seated-event-link-cell a[class*="sold-out"] {
  color: red !important;
}

#seated-55fdf2c0 .seated-event-link-cell a.seated-event-link1-sold-out:hover,
#seated-55fdf2c0 .seated-event-link-cell a.seated-event-link2-sold-out:hover,
.seated-event-link-cell a[class*="sold-out"]:hover {
  color: darkred !important;
}

/* Hide powered by seated branding - entire container */
#seated-55fdf2c0 > div[style*="text-align: right"],
#seated-55fdf2c0 > div[style*="text-align:right"],
#seated-55fdf2c0 > div:not(.seated-events-table) {
  display: none !important;
}

/* Make sure the events table is visible */
#seated-55fdf2c0 > .seated-events-table {
  display: table !important;
}

/* Hide the JSON-LD script visually */
#seated-55fdf2c0 script {
  display: none !important;
}
