/* Mobile event listing (≤767px) — compact summary, apply card, swipe rows, sticky CTA */

@media (max-width: 767px) {
	body.hotel_details-nct .detail-content > .left-block > .right-content > h2,
	body .detail-content .left-block .right-content > h2,
	.hotel-detail-page .detail-content .right-content > h2 {
		display: none !important;
	}
	.detail-content .top-detail,
	.detail-content .space5.condet.icon,
	.detail-content .top-fixed-menu {
		display: none !important;
	}
	.detail-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.detail-content .left-block,
	.detail-content .right-content,
	.detail-content .left-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
		float: none !important;
		width: 100% !important;
	}
	.list-about-section.list-detail-spacer,
	.list-detail-spacer,
	.list-availability,
	.list-host-section {
		padding-left: 16px !important;
		padding-right: 16px !important;
		box-sizing: border-box;
	}
	.vnd-event-hero-wrap {
		padding: 0 16px !important;
		margin-bottom: 12px !important;
	}

	/* Back link */
	.vnd-mob-back {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 10px 16px 4px;
		color: #0d9488 !important;
		font-size: 14px;
		font-weight: 600;
		text-decoration: none !important;
	}
	.vnd-mob-back i { font-size: 13px; }

	/* Compact event summary */
	.vnd-mob-summary {
		display: block;
		padding: 8px 16px 14px;
		background: #fff;
	}
	.vnd-mob-summary__row {
		display: flex;
		align-items: flex-start;
		gap: 12px;
	}
	.vnd-mob-summary__thumb {
		display: none !important;
	}
	.vnd-mob-summary__thumb img {
		display: none !important;
	}
	.vnd-mob-summary__body { min-width: 0; flex: 1 1 auto; }
	.vnd-mob-summary__title {
		margin: 0 0 4px;
		font-size: 18px;
		line-height: 1.25;
		font-weight: 700;
		color: #111827;
		display: flex;
		align-items: flex-start;
		gap: 6px;
	}
	.vnd-mob-summary__title .vnd-verified {
		display: none !important;
	}
	.vnd-mob-summary__rating {
		display: none !important;
	}
	.vnd-mob-summary__meta {
		margin: 0 0 4px;
		font-size: 13px;
		color: #4b5563;
		display: flex;
		align-items: flex-start;
		gap: 8px;
		line-height: 1.35;
	}
	.vnd-mob-summary__meta i {
		width: 14px;
		text-align: center;
		color: #6b7280;
		margin-top: 2px;
		flex: 0 0 14px;
	}
	.vnd-mob-summary__tags {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 8px;
		margin-top: 12px;
	}
	.vnd-mob-chip {
		display: inline-block;
		padding: 6px 12px;
		border-radius: 999px;
		background: #f3f4f6;
		color: #374151;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.2;
	}
	.vnd-mob-save-btn {
		margin-left: auto;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 8px 14px;
		border: 1px solid #d1d5db;
		border-radius: 10px;
		background: #fff;
		color: #374151 !important;
		font-size: 13px;
		font-weight: 600;
		text-decoration: none !important;
		min-height: 40px;
	}
	.vnd-mob-save-btn.is-saved,
	.vnd-mob-save-btn .fa-heart.faved { color: #e11d48 !important; }

	/* Hide legacy mobile card (replaced by summary + apply card) */
	.listing-mobile-redesign-legacy { display: none !important; }

	/* In-flow apply card */
	.vnd-mob-apply-card {
		display: block;
		margin: 8px 16px 18px;
		padding: 18px 16px 16px;
		background: #fff;
		border: 1px solid #e5e7eb;
		border-radius: 14px;
		box-shadow: 0 4px 18px rgba(15, 23, 42, 0.08);
	}
	.vnd-mob-apply-card h3 {
		margin: 0 0 8px;
		font-size: 20px;
		font-weight: 700;
		color: #111827;
		line-height: 1.25;
	}
	.vnd-mob-apply-card p {
		margin: 0 0 14px;
		font-size: 14px;
		line-height: 1.45;
		color: #4b5563;
	}
	.vnd-mob-btn-apply {
		display: flex !important;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: 100%;
		min-height: 48px;
		padding: 12px 16px !important;
		border-radius: 10px !important;
		background: #e11d2e !important;
		border: 1px solid #e11d2e !important;
		color: #fff !important;
		font-size: 16px !important;
		font-weight: 700 !important;
		text-decoration: none !important;
		box-shadow: none !important;
	}
	.vnd-mob-btn-apply:hover,
	.vnd-mob-btn-apply:focus {
		background: #c41222 !important;
		border-color: #c41222 !important;
		color: #fff !important;
		text-decoration: none !important;
	}
	.vnd-mob-btn-save {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		width: 100%;
		min-height: 48px;
		margin-top: 10px;
		padding: 12px 16px;
		border-radius: 10px;
		background: #fff;
		border: 1.5px solid #0d9488;
		color: #0d9488 !important;
		font-size: 15px;
		font-weight: 700;
		text-decoration: none !important;
	}
	.vnd-mob-deadline {
		margin: 12px 0 0;
		font-size: 13px;
		color: #4b5563;
		display: flex;
		align-items: center;
		gap: 8px;
	}
	.vnd-mob-deadline i { color: #0d9488; }

	/* Section headings */
	.vnd-mob-section-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		margin: 8px 0 10px;
	}
	.vnd-mob-section-head h2,
	.vnd-mob-section-head .vnd-mob-h {
		margin: 0;
		font-size: 18px;
		font-weight: 700;
		color: #111827;
		display: flex;
		align-items: center;
		gap: 8px;
	}
	.vnd-mob-section-head .vnd-mob-h i { color: #0d9488; }
	.vnd-mob-section-head a {
		color: #0d9488 !important;
		font-size: 14px;
		font-weight: 600;
		text-decoration: none !important;
		white-space: nowrap;
	}
	.vnd-mob-show-more {
		display: inline-flex;
		align-items: center;
		gap: 4px;
		color: #0d9488 !important;
		font-size: 14px;
		font-weight: 600;
		text-decoration: none !important;
	}

	/* Overview / about polish */
	.list-about-section .row.margin-top-15 { display: none !important; }
	.list-about-section .row .left-title { display: none !important; }
	.list-about-section .row .col-md-9.content-text,
	.list-about-section .row .col-md-3 {
		width: 100% !important;
		float: none !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.vnd-mob-overview-label {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin: 4px 0 8px;
	}
	.vnd-mob-overview-label strong {
		font-size: 18px;
		color: #111827;
		display: inline-flex;
		align-items: center;
		gap: 8px;
	}
	.vnd-mob-overview-label strong i { color: #0d9488; }

	/* Organizer row polish */
	.list-host-section .left-title { display: none !important; }
	.list-host-section .list-center {
		display: flex;
		align-items: center;
		gap: 12px;
	}
	.list-host-section .host-left {
		float: none !important;
		margin: 0 !important;
	}
	.list-host-section .host-img img {
		width: 56px !important;
		height: 56px !important;
		border-radius: 50% !important;
		object-fit: cover;
	}
	.list-host-section .company_name {
		font-size: 16px !important;
		margin: 0 0 2px !important;
	}
	.list-host-section .host-right {
		display: none !important;
	}
	.vnd-mob-org-meta {
		display: block;
		font-size: 13px;
		color: #4b5563;
		margin-top: 2px;
	}
	.vnd-mob-org-link {
		display: inline-block;
		margin-top: 4px;
		color: #0d9488 !important;
		font-weight: 600;
		font-size: 14px;
		text-decoration: none !important;
	}

	/* Swipeable vending options */
	#availablitySection .row.contact-host .left-title {
		font-size: 18px !important;
	}
	#availablitySection .panel-group {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		gap: 12px;
		padding: 4px 2px 12px;
		margin: 0 -4px;
	}
	#availablitySection .panel-group::-webkit-scrollbar { display: none; }
	#availablitySection .panel {
		flex: 0 0 82% !important;
		max-width: 82% !important;
		width: 82% !important;
		float: none !important;
		margin: 0 !important;
		scroll-snap-align: start;
		border-radius: 12px !important;
		overflow: hidden;
		border: 1px solid #e5e7eb !important;
		box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
	}
	#availablitySection .panel-heading { display: none !important; }
	#availablitySection .panel-collapse {
		display: block !important;
		height: auto !important;
	}
	#availablitySection .panel-collapse.collapse { display: block !important; }
	#availablitySection .host-list-cell > div:first-child {
		flex-direction: column !important;
	}
	#availablitySection .host-list-cell > div:first-child .left-slider,
	#availablitySection .host-list-cell > div:first-child .right-listing {
		max-width: 100% !important;
		flex-basis: 100% !important;
	}
	#availablitySection .left-slider .room_slider {
		min-height: 140px;
	}
	#availablitySection .left-slider img {
		width: 100% !important;
		height: 140px !important;
		object-fit: cover;
	}

	/* Event stats grid */
	.vnd-mob-stats {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 8px;
		margin: 8px 16px 96px;
		padding: 0;
	}
	.vnd-mob-stat {
		text-align: center;
		padding: 12px 6px;
		border: 1px solid #e5e7eb;
		border-radius: 12px;
		background: #fff;
	}
	.vnd-mob-stat i {
		display: block;
		font-size: 18px;
		color: #0d9488;
		margin-bottom: 6px;
	}
	.vnd-mob-stat span {
		display: block;
		font-size: 11px;
		line-height: 1.3;
		color: #374151;
		font-weight: 600;
	}

	/* Persistent bottom Apply bar */
	.responsive_hide_show.vnd-event-mob-bar {
		display: flex !important;
		align-items: center;
		gap: 10px;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
		background: #fff;
		border-top: 1px solid #e5e7eb;
		box-shadow: 0 -6px 20px rgba(15, 23, 42, 0.1);
		box-sizing: border-box;
	}
	.vnd-event-mob-bar__fav {
		flex: 0 0 48px;
		width: 48px;
		height: 48px;
		border: 1px solid #d1d5db;
		border-radius: 10px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: #fff;
		color: #374151 !important;
		text-decoration: none !important;
		font-size: 20px;
	}
	.vnd-event-mob-bar__fav.is-saved,
	.vnd-event-mob-bar__fav .fa-heart { color: #e11d48 !important; }
	.vnd-event-mob-bar__apply {
		flex: 1 1 auto;
		display: flex !important;
		align-items: center;
		justify-content: center;
		gap: 8px;
		min-height: 48px;
		padding: 12px 14px !important;
		border-radius: 10px !important;
		background: #e11d2e !important;
		border: 1px solid #e11d2e !important;
		color: #fff !important;
		font-size: 16px !important;
		font-weight: 700 !important;
		text-decoration: none !important;
		box-shadow: none !important;
	}
	.vnd-event-mob-bar__apply:hover,
	.vnd-event-mob-bar__apply:focus {
		background: #c41222 !important;
		color: #fff !important;
		text-decoration: none !important;
	}

	/* Keep sticky booking sheet hidden unless explicitly opened elsewhere */
	.detail-content .right-block.sticky.book-show {
		display: none !important;
	}

	/* Footer clearance above sticky bar */
	.nct-common-footer,
	.footer-main {
		padding-bottom: 88px !important;
	}
}

@media (min-width: 768px) {
	.vnd-mob-back,
	.vnd-mob-apply-card,
	.vnd-mob-org-meta,
	.responsive_hide_show.vnd-event-mob-bar {
		display: none !important;
	}
	/* Header + stats stay visible via event-listing-desktop-nct.css */
}
