/* Fixed starting dates + countdown (inc/jgg-fsd.php). Square corners everywhere. */
.jgg-fsd { margin: 0 0 40px; }
.jgg-fsd__expired { margin: 0; padding: 16px 18px; border: 1px solid #ef4444; color: #b42318; font-weight: 600; }

.jgg-fsd__count { margin: 0 0 20px; padding: 18px 20px; background: #111; color: #fff; }
.jgg-fsd__count-title { margin: 0 0 10px; font-size: 14px; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; }
.jgg-fsd__count-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; text-align: center; }
.jgg-fsd__count-row > div { padding: 10px 4px; border: 1px solid rgba(255, 255, 255, .25); }
.jgg-fsd__count-row strong { display: block; font-size: 28px; line-height: 1.1; font-variant-numeric: tabular-nums; color: #ffd400; }
.jgg-fsd__count-row span { font-size: 12px; opacity: .8; }

.jgg-fsd__months { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
.jgg-fsd .jgg-fsd__months button { padding: 8px 14px; border: 1px solid #111; background: #fff; color: #111; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; transition: background .2s, color .2s; }
.jgg-fsd .jgg-fsd__months button:hover, .jgg-fsd .jgg-fsd__months button.is-on { background: #111; color: #fff; }

.jgg-fsd__list { list-style: none; margin: 0; padding: 0; border-top: 1px solid #e5e5e5; }
.jgg-fsd__row { display: grid; grid-template-columns: minmax(0, 2fr) auto auto auto; align-items: center; gap: 12px 24px; padding: 16px 0; border-bottom: 1px solid #e5e5e5; }
.jgg-fsd__row[hidden] { display: none; }
.jgg-fsd__when { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; }
.jgg-fsd__when strong { font-size: 16px; }
.jgg-fsd__to { font-size: 14px; color: #555; }
.jgg-fsd__tag { display: inline-block; min-width: 104px; text-align: center; padding: 3px 8px; font-size: 12px; font-weight: 700; color: #fff; background: var(--c, #29ad57); }
.jgg-fsd__tag--gd { min-width: 0; background: #000; color: var(--yellow, #ffd400); }
.jgg-fsd__price { font-size: 14px; white-space: nowrap; }
.jgg-fsd__price strong { font-size: 18px; }
.jgg-fsd__seats { min-width: 70px; font-size: 14px; font-weight: 600; }
.jgg-fsd__seats small { display: block; font-weight: 400; color: #666; }
.jgg-fsd .jgg-fsd__book, .jgg-fsd .jgg-fsd__more { padding: 11px 22px; border: 0; background: #000; color: var(--yellow, #ffd400); font: inherit; font-weight: 700; cursor: pointer; transition: background .2s; }
.jgg-fsd .jgg-fsd__book:hover { background: #222; }
.jgg-fsd .jgg-fsd__more { display: block; margin: 18px auto 0; background: #fff; color: #000; border: 1px solid #000; }
.jgg-fsd .jgg-fsd__more:hover { background: #000; color: #fff; }
.jgg-fsd__sold { padding: 11px 22px; font-weight: 700; color: #ef4444; text-align: center; }

@media (max-width: 640px) {
	.jgg-fsd__row { grid-template-columns: 1fr auto; gap: 10px 12px; }
	.jgg-fsd__when { grid-column: 1 / -1; }
	.jgg-fsd .jgg-fsd__book, .jgg-fsd__sold { grid-column: 1 / -1; width: 100%; }
	.jgg-fsd__count-row strong { font-size: 22px; }
}
