/* ==========================================================================
   MysticQest – responsive rules (media queries only)
   Loaded after style.css; breakpoints: 1279 / 991 / 767 / 480.
   ========================================================================== */

/* --------------------------------------------------------------------------
   ≤ 1279px – two columns: main + right sidebar, left sidebar under main
   -------------------------------------------------------------------------- */
@media (max-width: 1279px) {
	.mq-topbar__login {
		display: none;
	}
	.container_web.mq-grid {
		grid-template-columns: minmax(0, 1fr) 290px;
		gap: 24px;
	}
	main.content {
		grid-column: 1;
		grid-row: 1;
	}
	.mq-sidebar--right {
		grid-column: 2;
		grid-row: 1;
	}
	.mq-sidebar--left {
		grid-column: 1 / -1;
		grid-row: 2;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
		align-items: start;
	}
	.mq-sidebar--left .mq-download {
		grid-column: 1 / -1;
	}
	.mq-nav .menu li a {
		padding: 0 10px;
		font-size: 12px;
		letter-spacing: .08em;
	}
	.mq-topbar__inner {
		gap: 16px;
	}
}

/* --------------------------------------------------------------------------
   ≤ 991px – single column, off-canvas drawer navigation
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
	.container_web.mq-grid {
		grid-template-columns: minmax(0, 1fr);
		padding: 24px;
		gap: 24px;
	}
	main.content {
		grid-column: 1;
		grid-row: 1;
	}
	.mq-sidebar--right {
		grid-column: 1;
		grid-row: 2;
	}
	.mq-sidebar--left {
		grid-column: 1;
		grid-row: 3;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* top bar */
	.mq-topbar__inner {
		padding: 0 20px;
		gap: 12px;
	}
	.mq-burger {
		display: block;
		order: 3;
		margin-left: 0;
	}
	.mq-topbar__actions {
		order: 2;
		margin-left: auto;
	}
	.mq-topbar__login,
	.mq-topbar__cta {
		display: none;
	}

	/* drawer */
	.mq-nav {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		z-index: 70;
		width: min(320px, 85vw);
		height: 100vh;
		height: 100dvh;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		padding: 88px 20px 24px;
		overflow-y: auto;
		background: linear-gradient(180deg, #101a33 0%, #0a0f1f 60%, #05070d 100%);
		border-right: 1px solid var(--mq-line-strong);
		box-shadow: 0 0 60px rgba(0, 0, 0, .7);
		transform: translateX(-100%);
		visibility: hidden;
		transition: transform .28s ease, visibility .28s ease;
	}
	.mq-nav::before {
		content: "";
		position: absolute;
		left: 20px;
		right: 20px;
		top: 72px;
		height: 1px;
		background: linear-gradient(90deg, transparent, var(--mq-gold), transparent);
	}
	.mq-nav.active {
		transform: translateX(0);
		visibility: visible;
	}
	/* backdrop */
	.mq-nav::after {
		content: "";
		position: fixed;
		top: 0;
		bottom: 0;
		left: min(320px, 85vw);
		width: 100vw;
		background: rgba(3, 5, 12, .7);
		-webkit-backdrop-filter: blur(3px);
		backdrop-filter: blur(3px);
		opacity: 0;
		pointer-events: none;
		transition: opacity .28s ease;
	}
	.mq-nav.active::after {
		opacity: 1;
		pointer-events: auto;
	}
	.mq-nav ul.menu,
	.topMenu ul.menu {
		flex-direction: column;
		align-items: stretch;
		gap: 2px;
	}
	.mq-nav .menu li a {
		display: flex;
		height: auto;
		padding: 13px 12px;
		font-size: 16px;
		letter-spacing: .1em;
		white-space: normal;
		border-radius: var(--mq-radius-sm);
	}
	.mq-nav .menu li a::after {
		left: 12px;
		right: auto;
		width: 24px;
		bottom: 8px;
	}
	.mq-nav .menu li.active a {
		background: var(--mq-gold-soft);
	}
	.mq-nav__mobile-actions {
		display: flex;
		flex-direction: column;
		gap: 10px;
		margin-top: 24px;
		padding-top: 20px;
		border-top: 1px solid var(--mq-line);
	}
	.mq-nav__mobile-actions .button {
		width: 100%;
	}
	body.mq-nav-open {
		overflow: hidden;
	}
	body.mq-nav-open .mq-burger {
		position: relative;
		z-index: 80;
	}

	/* hero */
	.mq-hero__inner {
		padding: 0 24px;
	}
	.mq-hero--full {
		min-height: clamp(520px, 72vh, 680px);
	}
	.mq-hero__features {
		max-width: none;
	}
	.mq-countdown {
		position: static;
		transform: none;
		margin: 24px 0 0;
		display: inline-block;
	}
	.mq-hero--compact .mq-countdown {
		display: none;
	}

	/* footer */
	.mq-footer {
		padding: 48px 24px 24px;
	}
	.mq-footer__inner {
		grid-template-columns: 1fr 1fr;
	}
	.mq-footer__brand {
		grid-column: 1 / -1;
	}
}

/* --------------------------------------------------------------------------
   ≤ 767px – phone
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
	.container_web.mq-grid {
		padding: 16px;
		gap: 16px;
	}
	.mq-sidebar--left {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}
	.mq-sidebar {
		gap: 16px;
	}
	.mq-topbar__inner {
		padding: 0 16px;
	}

	/* hero */
	.mq-hero__bg {
		background-image: url("../images/hero-bg-mobile.jpg");
		background-position: center top;
	}
	.mq-hero__bg::after {
		background:
			linear-gradient(180deg, rgba(10, 15, 31, .85) 0%, rgba(10, 15, 31, .25) 25%, rgba(5, 7, 13, .6) 70%, var(--mq-bg-0) 100%);
	}
	.mq-hero__inner {
		padding: 0 16px;
	}
	.mq-hero--full {
		min-height: 0;
	}
	.mq-hero--full .mq-hero__inner {
		padding-top: 28px;
		padding-bottom: 36px;
	}
	.mq-hero__content {
		max-width: none;
		text-align: center;
	}
	.mq-hero__logo {
		margin: 0 auto 14px;
	}
	.mq-hero__logo img {
		max-width: 280px;
	}
	.mq-hero__eyebrow {
		justify-content: center;
		font-size: 11px;
		letter-spacing: .14em;
	}
	.mq-hero__title {
		font-size: 28px;
	}
	.mq-hero__lead {
		margin-left: auto;
		margin-right: auto;
		font-size: 15px;
	}
	.mq-hero__status {
		justify-content: center;
	}
	.mq-status {
		font-size: 12px;
	}
	.mq-hero__cta {
		flex-direction: column;
		align-items: stretch;
	}
	.mq-hero__cta .button {
		width: 100%;
	}
	.mq-hero__features {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		text-align: left;
	}
	.mq-hero--compact {
		height: 140px;
	}
	.mq-band {
		gap: 16px;
	}
	.mq-band__logo img {
		height: 44px;
	}
	.mq-band__text {
		padding-left: 16px;
	}
	.mq-band__title {
		font-size: 22px;
	}
	.mq-band__eyebrow {
		font-size: 10px;
	}

	/* section heads */
	.mq-section-head__title,
	.content .h1,
	span.h1 {
		font-size: 20px;
	}
	#box1 .title1 h1,
	.dmn-page-title h1 {
		font-size: 22px;
	}
	.entry,
	.dmn-page-content,
	.block,
	.mq-card {
		padding: 16px;
	}
	.dmn-page-content h2.title {
		margin: -16px -16px 16px;
	}
	h2.title {
		padding: 12px 16px;
	}

	/* news: date becomes an inline chip */
	.mq-news-card {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
		padding: 16px;
	}
	.mq-news-card__date {
		flex-direction: row;
		align-items: baseline;
		justify-content: flex-start;
		gap: 6px;
		align-self: flex-start;
		width: auto;
		padding: 5px 12px;
		border-radius: 999px;
		line-height: 1.2;
	}
	.mq-news-card__date .icon {
		font-size: 15px;
	}
	.mq-news-card__date .icon::after {
		content: ".";
	}
	.mq-news-card__month,
	.mq-news-card__year {
		margin-top: 0;
	}
	.mq-news-card__title {
		font-size: 17px;
	}
	.mq-news-card__img img {
		max-height: 200px;
	}
	.mq-news-card__foot .button {
		flex: 1 1 auto;
	}

	/* tables */
	table.ranking-table,
	table.table,
	table.add_to_card,
	table.ticket,
	table.sidebar_rank,
	.tableBlock-td {
		font-size: 13px;
	}
	table.ranking-table th,
	table.ranking-table td,
	table.table th,
	table.table td {
		padding: 8px 8px;
	}
	.mq-tabulka-posun > table.ranking-table,
	.mq-table-scroll > table {
		min-width: 540px;
	}
	.form table tr td:first-child {
		width: 120px;
	}

	/* downloads */
	.mq-dl-card {
		flex-wrap: wrap;
		padding: 16px;
		gap: 14px;
	}
	.mq-dl-card__action {
		flex: 1 1 100%;
	}
	.mq-dl-card__action .button {
		width: 100%;
	}
	.mq-dl-card--primary {
		padding: 18px 16px;
	}
	.mq-steps li {
		padding-left: 58px;
	}

	/* about */
	.mq-about__intro {
		padding: 18px 16px;
	}
	.mq-about__cta {
		flex-direction: column;
		align-items: stretch;
		padding: 20px 18px;
		text-align: center;
	}
	.mq-about__cta-buttons {
		flex-direction: column;
	}
	.mq-about__cta-buttons .button {
		width: 100%;
	}
	.mq-about__actions .button {
		flex: 1 1 100%;
	}

	/* showcase */
	.mq-showcase__slider .swiper-button-prev,
	.mq-showcase__slider .swiper-button-next {
		display: none;
	}

	/* buttons / forms */
	.button-large {
		padding: 14px 22px;
		font-size: 14px;
	}
	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="number"],
	select,
	textarea,
	.form-control {
		font-size: 16px;
		min-height: 44px;
	}
	.form table,
	.form table tbody,
	.form table tr,
	.form table td {
		display: block;
		width: 100%;
	}
	.form table tr td:first-child {
		width: 100%;
		padding-bottom: 2px;
	}
	.form table tr + tr {
		margin-top: 8px;
	}
	.form-inline .form-control,
	.form-inline input,
	.form-inline select {
		flex-basis: 100%;
	}
	h2.title div[style*="float"] {
		width: 100%;
	}

	/* footer */
	.mq-footer {
		padding: 40px 16px 20px;
	}
	.mq-footer__inner {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	.mq-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}
	.mq-totop {
		right: 16px;
		bottom: 16px;
		width: 40px;
		height: 40px;
	}
	#loading {
		left: 12px;
		bottom: 12px;
	}
	#item_filter_overlay {
		right: 16px;
		left: 16px;
		width: auto;
	}
	#pagination a,
	.mq-pagination a {
		min-width: 32px;
		height: 32px;
	}
}

/* --------------------------------------------------------------------------
   ≤ 480px – small phones
   -------------------------------------------------------------------------- */
@media (max-width: 480px) {
	.mq-topbar {
		height: 64px;
	}
	.mq-topbar__brand img {
		height: 34px;
	}
	.mq-topbar__actions {
		gap: 6px;
	}
	.mq-account-chip {
		width: 36px;
		padding: 0;
		justify-content: center;
		max-width: none;
	}
	.mq-account-chip span {
		display: none;
	}
	.mq-burger {
		width: 38px;
		height: 38px;
	}
	.mq-burger span:nth-child(1) { top: 11px; }
	.mq-burger span:nth-child(2) { top: 18px; }
	.mq-burger span:nth-child(3) { top: 25px; }
	.mq-burger.active span:nth-child(1),
	.mq-burger.active span:nth-child(3) { top: 18px; }
	.mq-nav {
		padding-top: 80px;
	}
	.mq-nav::before {
		top: 64px;
	}

	.mq-hero__features {
		grid-template-columns: minmax(0, 1fr);
	}
	.mq-hero__logo img {
		max-width: 240px;
	}
	.mq-hero__title {
		font-size: 26px;
	}
	.mq-band__logo {
		display: none;
	}
	.mq-band__text {
		padding-left: 0;
		border-left: 0;
	}
	.mq-account__balances {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.mq-social,
	.socBlock {
		flex-direction: column;
	}
	ul.tabrow li,
	.nav-tabs li {
		flex: 1 1 auto;
	}
	ul.tabrow li a,
	.nav-tabs .nav-link {
		display: block;
		text-align: center;
	}
	#timer_div_time {
		flex-wrap: wrap;
	}
	.timmer_inner_block {
		min-width: 48px;
	}
	.mq-steps li::before {
		left: 12px;
		width: 28px;
		height: 28px;
		font-size: 12px;
	}
	.mq-steps li {
		padding-left: 52px;
	}
}
