/* Altador Cup - Press Tour CSS
Author: Dinah C.
Date: 2022.05.05
*/

/* Press Tour */
.ac-press-tour .h5-altadorcup-nav ul.ac-nav {
	grid-column-start: 2;
}

.ac-press-tour .h5-altadorcup-scrolls {
	display: none;
}

.ac-press-tour .h5-altadorcup-banner {
	height: auto;
	max-height: max-content;
	padding: 2em 0;
}

.ac-press-tour .h5-altadorcup-banner .ac-banner-fg {
	width: 100%;
	height: max-content;
	padding: 1em;
	display: grid;
	grid-template: auto / 30% calc(60% - 1em);
	gap: 1em;
	justify-content: center;
	box-sizing: border-box;
}

.ac-press-tour .h5-altadorcup-banner .ac-banner-fg .ac-fg-capn {
	display: initial;
	width: auto;
	background: transparent center center / contain no-repeat;
}

.ac-press-tour .h5-altadorcup-banner .ac-banner-fg .ac-fg-blurb {
	position: relative;
	width: auto;
	height: max-content;
	padding: 1em;
	padding-top: 3.5em;
	margin: auto;
	background: rgba(255, 255, 255, 0.85) center / contain no-repeat;
	border-radius: 13px;
	border-width: 2px;
	border-style: solid;
	border-color: #912b00;
	box-shadow: 0 0 20px rgba(0,0,0,0.5);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	gap: .5em;
	box-sizing: border-box;
	overflow: hidden;
}

.ac-press-tour .ac-fg-blurb>* {
	text-align: center;
}

.ac-press-tour .ac-fg-blurb p.ac-team-slogan {
	margin: auto 0 0;
	font-size: 14pt;
	font-weight: bold;
}

.ac-press-tour .ac-fg-blurb .ac-read-more {
	position: relative;
	width: 80%;
	padding: 0 .5em;
	display: grid;
	grid-template: auto / auto auto;
	align-items: center;
	justify-content: space-between;
}

.ac-press-tour .ac-fg-blurb .ac-read-more {
	display: none;
}

.ac-press-tour .ac-fg-blurb .ac-read-more p {
	margin: 0;
	font-family: "Cafeteria", Arial, sans-serif;
	font-size: 18pt;
	color: white;
}

.ac-press-tour .ac-fg-blurb .ac-team-info {
	max-height: 300px;
	/* 2025 Mini Event */
	padding: .5em;
	/* 2025 Mini Event */
	margin: 0;
	transition: 0.2s ease-out;
	text-align: left;
	/* 2025 Mini Event */
	text-indent: 2em;
	/* 2025 Mini Event */
	overflow: auto;
	/* 2025 Mini Event */
}

/* Bio wrapper — flex column so button stays centred (mirrors .ac-fg-blurb align-items:center) */
.ac-press-tour .ac-fg-blurb .ac-bio-wrapper {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.ac-press-tour .ac-fg-blurb .ac-bio-wrapper #acPressInfo {
	width: 100%;
}

/* Bio toggle — desktop: hidden; mobile overrides below */
.ac-press-tour .ac-fg-blurb .ac-bio-fade   { display: none; }
.ac-press-tour .ac-fg-blurb .ac-bio-toggle { display: none; }

@media screen and (max-width: 650px) {

	/* ENTERING MOBILE MODE */
	.ac-press-tour .h5-altadorcup-banner {
		height: auto;
		max-height: max-content;
		padding: 0;
	}

	.ac-press-tour .h5-altadorcup-banner .ac-banner-fg {
		grid-template: auto auto / 80%;
		justify-content: center;
		height: auto;
	}

	.ac-press-tour .h5-altadorcup-banner .ac-banner-fg .ac-fg-capn {
		padding-top: 50%;
	}

	.ac-press-tour .h5-altadorcup-banner .ac-banner-fg .ac-fg-blurb {
		grid-row: 1;
		height: max-content;
	}

	.ac-press-tour .ac-fg-blurb .ac-read-more {
		display: grid;
	}

	/* Bio expand/collapse */
	.ac-press-tour .ac-fg-blurb .ac-team-info {
		width: 100%;
		max-height: 80px;
		overflow: hidden;
		transition: max-height 0.3s ease;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-fade {
		display: block;
		height: 88px;
		margin-top: -88px;
		background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0.85));
		pointer-events: none;
		position: relative;
		z-index: 1;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-toggle {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: calc(100% + 2em);
		padding: 6px 1em;
		margin: 4px -1em -1em;
		background: #531900;
		cursor: pointer;
		border-radius: 0 0 11px 11px;
		user-select: none;
		box-sizing: border-box;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-toggle .ac-bio-toggle-label {
		font-family: "SportsWorld", Arial, sans-serif;
		font-size: 11pt;
		color: #fff;
		letter-spacing: 1px;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-toggle .ac-bio-toggle-icon {
		color: #fff;
		font-size: 20px;
		font-weight: bold;
		line-height: 1;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-wrapper.ac-bio-expanded .ac-team-info {
		max-height: 3000px;
		overflow-y: auto;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-wrapper.ac-bio-expanded .ac-bio-fade {
		display: none;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-wrapper.ac-bio-expanded .ac-bio-toggle {
		display: none;
	}

	/* Roster button hidden until bio is expanded */
	.ac-press-tour .ac-fg-blurb .ac-bio-wrapper .ac-roster-btn {
		display: none;
	}
	.ac-press-tour .ac-fg-blurb .ac-bio-wrapper.ac-bio-expanded .ac-roster-btn {
		display: block;
		margin: 0 auto;
		width: 50%;
	}

	/* Signup phase: collapsible wrapper includes text + button + roster */
	.ac-press-tour .ac-signup-blurb .ac-bio-collapsible {
		max-height: 160px;
		overflow: hidden;
		width: 100%;
		transition: max-height 0.3s ease;
	}
	.ac-press-tour .ac-signup-blurb .ac-bio-wrapper.ac-bio-expanded .ac-bio-collapsible {
		max-height: 3000px;
	}
	/* Reset the individual text constraint inside collapsible — wrapper handles it */
	.ac-press-tour .ac-signup-blurb .ac-team-info {
		max-height: none;
		overflow: visible;
	}

	/* Signup phase: toggle is a separator bar, not the bottom cap of the blurb box */
	.ac-press-tour .ac-signup-blurb .ac-bio-toggle {
		border-radius: 0;
		margin-bottom: 0;
	}

	/* Match desktop specificity to override overflow:hidden */
	.ac-press-tour .h5-altadorcup-banner .ac-banner-fg .ac-signup-blurb {
		padding-bottom: 1em;
		overflow: visible;
	}

}

@media screen and (max-width: 450px) {
	.h5-altadorcup-banner {
		height: 30vw;
		max-height: 30vh;
	}

	.ac-press-tour .h5-altadorcup-banner .ac-banner-fg {
		grid-template: auto auto / 90%;
	}

	.ac-press-tour .h5-altadorcup-banner .ac-banner-fg .ac-fg-capn {
		padding-top: 60%;
	}
}

/* ---- 2026: Tournament Timeline ---- */
.ac-tournament-timeline {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	width: 100%;
	padding: 1.5em 1em 2em;
	box-sizing: border-box;
	gap: 0;
}

.ac-timeline-milestone {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	flex: 1 0 110px;
	position: relative;
}

.ac-timeline-milestone .ac-milestone-label {
	flex: 1;
	border-radius: 12px;
	border: 1px solid #87877F;
	background: #B7B6A9;
	padding: 10px;
	font-size: 10pt;
	font-family: "SportsWorld", Arial, sans-serif;
	color: #fff;
	text-shadow: 1.5px 1.5px 0 #000, -1.5px 1.5px 0 #000, 1.5px -1.5px 0 #000, -1.5px -1.5px 0 #000, 0 0 2px #000;
	text-transform: uppercase;
	text-align: center;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}

.ac-timeline-milestone.active .ac-milestone-label {
	border: 1px solid #A09F7E;
	background: #EAE894;
}

.ac-milestone-date {
	position: absolute;
	bottom: -18px;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
	background: #A09F7E;
	padding: 5px 10px;
	border-radius: 5px;
	color: #413101;
	text-align: center;
	font-size: 9pt;
	font-weight: bold;
	text-shadow: none;
	font-family: "MuseoSansRounded500", "Arial Bold", sans-serif;
}

.ac-timeline-divider {
	flex: 0 0 20px;
	display: flex;
	align-items: center;
}

.ac-timeline-divider::before {
	content: '';
	width: 100%;
	border-top: 2px dashed #A09F7E;
}

@media screen and (max-width: 650px) {
	.ac-tournament-timeline {
		padding: .75em 1em 2em;
	}
}

/* ---- 2026: Press Tour Blurb additions ---- */
.ac-press-tour .ac-fg-blurb .ac-blurb-countdown {
	position: absolute;
	top: 0;
	left: 0;
	padding: 4px 20px;
	font-size: 10pt;
	color: #531900;
	text-align: center;
	white-space: nowrap;
}

.ac-press-tour .ac-fg-blurb .ac-blurb-countdown p {
	margin: 0;
	line-height: 1.3;
}


.ac-roster-btn,
.ac-join-btn {
	width: 30%;
	box-sizing: border-box;
	text-align: center;
}

.ac-join-btn {
	margin: 10px auto 0;
}


/* Blurb countdown timer: strip clock-backing style, inherit dark text */
.ac-press-tour .ac-fg-blurb .ac-blurb-countdown .ac-count-timer {
	background: none;
	color: #531900;
	text-shadow: none;
	padding: 2px 0;
}

.ac-press-tour .ac-fg-blurb .ac-prev-placement {
	position: absolute;
	top: 0;
	right: 0;
	padding: 4px 20px;
	background: #f60;
	border: 1px solid #f35f20;
	border-radius: 0 0 0 15px;
	font-size: 13px;
	color: #531900;
	text-align: center;
	margin: 0;
	white-space: nowrap;
}

.ac-press-tour .ac-fg-blurb .ac-prev-placement p {
	margin: 0;
	line-height: 1.3;
	font-size: 10pt;
}

.ac-press-tour .ac-fg-blurb .ac-prev-placement span {
	font-weight: bold;
	font-size: 14pt;
}

/* ---- 2026: Trivia Module ---- */
.ac-trivia {
	width: 100%;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: .75em;
}

.ac-trivia-question {
	font-size: 12pt;
	font-weight: bold;
	text-align: center;
	margin: 0 0 .25em;
}

.ac-trivia-options {
	display: flex;
	flex-direction: column;
	gap: .3em;
	width: 100%;
}

.ac-trivia-answer {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 1em;
	border-radius: 8px;
	background: rgba(0, 0, 0, 0.05);
	border: 1px solid rgba(0, 0, 0, 0.12);
	cursor: pointer;
	gap: .75em;
	box-sizing: border-box;
	transition: background 0.15s;
	font-size: 11pt;
}

.ac-trivia-answer:hover {
	background: rgba(0, 0, 0, 0.1);
}

.ac-trivia-answer input[type="radio"] {
	flex-shrink: 0;
	cursor: pointer;
}

.ac-trivia-answer.ac-trivia-correct {
	background: rgba(56, 176, 80, 0.25);
	border-color: #38b050;
	font-weight: bold;
}

.ac-trivia-answer.ac-trivia-wrong {
	background: rgba(210, 56, 56, 0.2);
	border-color: #d23838;
}

.ac-trivia-notice {
	text-align: center;
	font-size: 11pt;
	margin: .5em 0;
	color: #555;
}

.ac-trivia #acTriviaSubmit {
	align-self: center;
	margin-top: .25em;
}

.ac-trivia #acTriviaSubmit:disabled {
	opacity: 0.2;
	pointer-events: none;
}

/* ---- Trivia result state ---- */
.ac-trivia-result {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	width: 100%;
}

.ac-trivia .ac-fg-capn {
	display: block;
	width: 160px;
	height: 160px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	flex-shrink: 0;
}

.ac-trivia-result-msg {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	margin: 0;
	letter-spacing: .5px;
}

.ac-trivia-result-answer {
	font-size: 16px;
	text-align: center;
	margin: 0;
	letter-spacing: .5px;
}

.ac-trivia-prizes {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	width: 100%;
}

.ac-trivia-prize-section {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.ac-trivia-prize-label {
	color: #9c6541;
	font-size: 14px;
	text-align: center;
	margin: 0;
	width: 100px;
}

.ac-trivia-prize-items {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	width: 100%;
	padding: 0 8px;
	box-sizing: border-box;
}

.ac-trivia-prize-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
}

.ac-trivia-prize-item img {
	width: 50px;
	height: 50px;
	object-fit: contain;
}

.ac-trivia-prize-item span {
	font-size: 14px;
	text-align: center;
	line-height: 1.3;
}

.ac-trivia-prize-plus {
	font-size: 20px;
	font-weight: bold;
	color: #9c6541;
	flex-shrink: 0;
	padding: 0 4px;
}

@media screen and (max-width: 811px) {
	.ac-trivia-prizes {
		flex-direction: column;
		gap: 4px;
	}

	.ac-trivia-prize-section {
		width: 100%;
	}
}