/* LONGDAY-R3: Tour booking UI copied from Tour; loaded only for Longday. */

	.tour-nav-menu { background: #fff; border-bottom: 1px solid #eee; position: sticky; top: 0; z-index: 99;}
	.nav-menu-list { display: flex; flex-wrap: nowrap; overflow-x: auto; list-style: none; margin: 0; padding: 0; gap: 8px;}
	.nav-menu-list li a { display: block; padding: 10px; font-size: 15px; font-weight: 600; color: #333; white-space: nowrap; text-decoration: none; border-bottom: 3px solid transparent; transition: all 0.25s;}
	.nav-menu-list li a:hover, .nav-menu-list li a.active { color: #ff6700; border-bottom-color: #ff6700;}
	@media(min-width:768px){#lichkh{margin-top:10px;}}
	.nav-menu-list::-webkit-scrollbar { display: none;}
	.lttomtat {font-size: 16px; padding: 5px 0px 0px; color:#797979; font-style:italic;}
	.bgblue {margin-top: 10px; border-radius: 10px; padding: 10px; background: #0064ad10;}
    .bk-wrap{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#1f2937}
    .bk-wrap *{box-sizing:border-box;}
    .bk-step{display:none}.bk-step.active{display:block;}
    .bk-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
    .bk-header h3{font-size:20px;font-weight:700;margin:0;}
    .bk-badge{font-size:13px;color:#6b7280;background:#f3f4f6;padding:4px 10px;border-radius:999px;}
    .bk-sub{font-size:13px !important ;color:#6b7280;margin-bottom:10px !important;}
    .bk-months{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:12px;scrollbar-width:none;}
    .bk-months::-webkit-scrollbar{display:none;}
    .bk-month{flex-shrink:0;padding:8px 16px;border-radius:999px;border:1px solid #e5e7eb;background:#fff;font-size:14px;font-weight:500;cursor:pointer;color:#1f2937;transition:all .15s;white-space:nowrap;}
    .bk-month:hover{border-color:#f97316;color:#f97316;}
    .bk-month.active{background:#f97316;border-color:#f97316;color:#fff;}
    .bk-list{display:flex;flex-direction:column;gap:12px;}
    .bk-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;transition:border-color .15s;}
    .bk-item:hover{border-color:#f97316;}
    .bk-datebox{min-width:64px;text-align:center;}
    .bk-datebox .wd{font-size:13px;color:#6b7280;font-weight:500;}
    .bk-datebox .dy{font-size:18px;font-weight:700;line-height:1.25;white-space:nowrap;}
    .bk-info{flex:1;min-width:0;}
    .bk-info .range{font-size:15px;font-weight:600;}
    .bk-info .stt{font-size:13px;color:#ef4444;margin-top:2px;}
    .bk-pricebox{text-align:right;margin-right:6px;}
    .bk-pricebox .pr{font-size:16px;font-weight:700;color:#f97316;}
    .bk-pricebox .un{font-size:12px;color:#6b7280;}
    .bk-btn-req{padding:8px 14px;border-radius:8px;border:1px solid #f97316;background:#fff;color:#f97316;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s;}
    .bk-btn-req:hover{background:#f97316;color:#fff;}
    .bk-more{text-align:center;margin-top:18px;}
    .bk-more a{color:#f97316;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;}
    .bk-more a:hover{text-decoration:underline;}
    .bk-selected{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:14px;color:#6b7280;}
    .bk-selected .change{color:#f97316;font-weight:500;cursor:pointer;text-decoration:none;padding:5px;border-radius:25%;background-color:#f3f4f6;text-align:center;}
    .bk-selected .change:hover{text-decoration:underline;}
    .bk-guest{display:flex;align-items:center;justify-content:space-between;padding:6px;border-bottom:1px solid #e5e7eb;}
    .bk-guest:last-of-type{border-bottom:none;}
    .bk-guest .name{font-size:15px;font-weight:600;}
	.bk-guest .name .age{color:#828282;font-size:12px;}
	.bk-guest .gprice{font-size:15px;color:#f97316;margin-top:2px;}
	.bk-tour-price{padding:10px;border-radius:10px;border:1px solid #e5e7eb;}
	.bk-counter{display:flex;align-items:center;gap:12px;}
	.bk-counter button{width:36px;height:36px;border-radius:50%;border:1px solid #e5e7eb;background:#fff;font-size:18px;color:#1f2937;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;}
	.bk-counter button:hover:not(:disabled){border-color:#f97316;color:#f97316;}
	.bk-counter button:disabled{opacity:.4;cursor:not-allowed;}
	.bk-counter .val{font-size:16px;font-weight:600;min-width:24px;text-align:center;}
	.bk-total{margin-top:10px;padding-top:18px;border-top:1px solid #e5e7eb;}
	.bk-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;}
	.bk-total-row .label{font-size:15px;font-weight:500;}
	.bk-total-row .amount{font-size:18px;font-weight:700;color:#f97316;}
	.bk-meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#6b7280;margin-bottom:18px;}
	.bk-meta .detail{color:#f97316;cursor:pointer;margin-left:10px;}
	.bk-meta .stt{color:#ef4444;display:flex;align-items:center;gap:4px;}
	.bk-meta .stt::before{content:"";width:6px;height:6px;background:#ef4444;border-radius:50%;}
	.bk-btn-primary{width:100%;padding:14px;border:none;border-radius:10px;background:#f97316;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:background .15s;}
	.bk-btn-primary:hover{background:#ea580c;}
	.bk-btn-primary:disabled{opacity:.6;cursor:not-allowed;}
	.bk-form-group{margin-bottom:10px;}
	.bk-form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:6px;}
	.bk-form-group label .req{color:#ef4444;}
	.bk-form-group input,.bk-form-group textarea{width:100%;padding:12px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:15px;outline:none;transition:border-color .15s;}
	.bk-form-group input:focus,.bk-form-group textarea:focus{border-color:#f97316;}
	.bk-form-group input::placeholder,.bk-form-group textarea::placeholder{color:#9ca3af;}
	.bk-form-group textarea{resize:vertical;min-height:80px;}
	.bk-alert{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:12px 14px;border-radius:8px;font-size:13px;margin:18px 0;line-height:1.5;}
	.bk-alert strong{display:block;margin-bottom:2px;}
	.bk-note{font-size:13px;color:#6b7280;text-align:center;margin-top:12px;}

	/* Eholiday 08/09/2026 - popup thông tin liên hệ dùng chung desktop/mobile */
	.bk-contact-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:24px;}
	.bk-contact-modal.is-open{display:flex;}
	.bk-contact-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(2px);}
	.bk-contact-modal-dialog{position:relative;z-index:1;width:min(920px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(15,23,42,.28);}
	.bk-contact-modal-head{position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 22px 14px;background:#fff;border-bottom:1px solid #e5e7eb;}
	.bk-contact-modal-head h3{font-size:20px;font-weight:700;margin:0;color:#111827;}
	.bk-contact-modal-head p{font-size:13px;color:#6b7280;margin:4px 0 0;}
	.bk-contact-modal-close{width:36px;height:36px;border:0;border-radius:50%;background:#f3f4f6;color:#374151;font-size:26px;line-height:1;cursor:pointer;flex-shrink:0;}
	.bk-contact-modal-close:hover{background:#e5e7eb;}
	.bk-contact-modal #bkStep3.active{display:block;}
	.bk-contact-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:0;}
	.bk-contact-form-col{padding:22px;}
	.bk-contact-summary-col{padding:22px;background:#f8fafc;border-left:1px solid #e5e7eb;}
	.bk-contact-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
	.bk-contact-summary-head h4{font-size:17px;margin:0;font-weight:700;color:#111827;}
	.bk-contact-summary-head .change{color:#f97316;font-size:13px;font-weight:600;cursor:pointer;}
	.bk-contact-tour-title{font-size:15px;font-weight:700;line-height:1.45;color:#1f2937;margin-bottom:18px;}
	.bk-contact-summary-item{padding:12px 0;border-top:1px solid #e5e7eb;}
	.bk-contact-summary-item span{display:block;font-size:12px;color:#6b7280;margin-bottom:4px;}
	.bk-contact-summary-item strong{display:block;font-size:14px;line-height:1.5;color:#1f2937;font-weight:600;}
	.bk-contact-summary-total{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:16px;margin-top:6px;border-top:1px solid #d1d5db;}
	.bk-contact-summary-total span{font-size:14px;color:#374151;font-weight:600;}
	.bk-contact-summary-total strong{font-size:22px;color:#f97316;white-space:nowrap;}
	body.bk-modal-open{overflow:hidden;}
	@media(min-width:768px){
		#bkDaily #bkStep1{display:block;}
	}
	@media(max-width:767px){
		.bk-contact-modal{padding:0;align-items:stretch;justify-content:stretch;}
		.bk-contact-modal-dialog{width:100%;height:100dvh;max-height:none;border-radius:0;overflow:auto;}
		.bk-contact-modal-head{padding:14px 16px 12px;}
		.bk-contact-modal-head h3{font-size:18px;}
		.bk-contact-modal-head p{font-size:12px;line-height:1.4;}
		.bk-contact-grid{display:block;}
		.bk-contact-form-col{padding:16px;}
		.bk-contact-summary-col{padding:16px;border-left:0;border-top:1px solid #e5e7eb;}
		.bk-contact-summary-total strong{font-size:20px;}
	}

	/* Eholiday 08/09/2026 R6 - lịch đổi ngày ngay trong booking sidebar desktop */
	.bk-desktop-calendar-view{display:none;}
	@media(min-width:768px){
		#bkDesktopBookingHost .bk-desktop-calendar-view{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;}
		#bkDesktopBookingHost .bk-calendar-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
		#bkDesktopBookingHost .bk-calendar-back{border:0;background:transparent;color:#2563eb;padding:0;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;}
		#bkDesktopBookingHost .bk-calendar-back:hover{text-decoration:underline;}
		#bkDesktopBookingHost .bk-calendar-title{font-size:16px;font-weight:700;color:#0f2742;margin:0;}
		#bkDesktopBookingHost .bk-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:10px;border-bottom:1px solid #e5e7eb;}
		#bkDesktopBookingHost .bk-calendar-month-label{font-size:15px;font-weight:700;color:#0f2742;}
		#bkDesktopBookingHost .bk-calendar-arrows{display:flex;gap:6px;}
		#bkDesktopBookingHost .bk-calendar-arrow{width:30px;height:30px;border:1px solid #dbe3ec;border-radius:7px;background:#fff;color:#64748b;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;}
		#bkDesktopBookingHost .bk-calendar-arrow:hover:not(:disabled){border-color:#f97316;color:#f97316;background:#fff7ed;}
		#bkDesktopBookingHost .bk-calendar-arrow:disabled{opacity:.35;cursor:not-allowed;}
		#bkDesktopBookingHost .bk-calendar-weekdays,#bkDesktopBookingHost .bk-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;}
		#bkDesktopBookingHost .bk-calendar-weekdays{padding:9px 0 6px;}
		#bkDesktopBookingHost .bk-calendar-weekdays span{text-align:center;font-size:11px;font-weight:700;color:#64748b;}
		#bkDesktopBookingHost .bk-calendar-grid{align-items:stretch;}
		#bkDesktopBookingHost .bk-calendar-cell{position:relative;min-width:0;min-height:48px;border-radius:8px;display:flex;align-items:flex-start;justify-content:center;}
		#bkDesktopBookingHost .bk-calendar-cell.is-outside{opacity:.42;}
		#bkDesktopBookingHost .bk-calendar-day-empty{width:100%;min-height:48px;padding:6px 2px;text-align:center;color:#cbd5e1;font-size:12px;font-weight:600;}
		#bkDesktopBookingHost .bk-calendar-day{position:relative;width:100%;min-height:48px;padding:5px 2px 4px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;text-align:center;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;overflow:hidden;}
		#bkDesktopBookingHost .bk-calendar-day:hover{border-color:#f97316;background:#fff7ed;}
		#bkDesktopBookingHost .bk-calendar-day.is-selected{border-color:#f97316;background:#fff7ed;box-shadow:0 0 0 1px rgba(249,115,22,.16);}
		#bkDesktopBookingHost .bk-calendar-day-number{display:block;font-size:12px;line-height:1.2;font-weight:800;color:#0f2742;}
		#bkDesktopBookingHost .bk-calendar-day-price{display:block;margin-top:3px;font-size:9px;line-height:1.1;font-weight:700;color:#f97316;white-space:nowrap;}
		#bkDesktopBookingHost .bk-calendar-dot{position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:#ef4444;}
		#bkDesktopBookingHost .bk-calendar-legend{display:flex;align-items:center;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid #eef2f7;font-size:11px;color:#64748b;}
		#bkDesktopBookingHost .bk-calendar-legend:before{content:"";width:6px;height:6px;border-radius:50%;background:#ef4444;flex:0 0 6px;}
	}
	/* Eholiday 08/09/2026 R5 - lịch khởi hành mobile dạng compact theo mẫu */
	.bk-range-mobile{display:none;}
	@media(max-width:767px){
		#lichkh{margin-top:0;}
		#bkStep1 .bk-sub{margin-bottom:10px !important;}
		#bkStep1 .bk-months{margin-bottom:10px;padding-bottom:4px;}
		#bkStep1 .bk-list{gap:0;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#fff;}
		#bkStep1 .bk-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto 36px;align-items:center;gap:8px;min-height:62px;padding:7px 8px;border:0;border-bottom:1px solid #e5e7eb;border-radius:0;background:#fff;}
		#bkStep1 .bk-item:last-child{border-bottom:0;}
		#bkStep1 .bk-item:hover{border-color:#e5e7eb;}
		#bkStep1 .bk-datebox{min-width:0;width:54px;padding:4px 3px;border-radius:8px;background:#f8fafc;text-align:center;}
		#bkStep1 .bk-datebox .wd{font-size:12px;line-height:1.2;color:#6b7280;}
		#bkStep1 .bk-datebox .dy{font-size:16px;line-height:1.2;font-weight:700;color:#0f2742;}
		#bkStep1 .bk-info{min-width:0;}
		#bkStep1 .bk-info .range{font-size:13px;line-height:1.25;font-weight:700;color:#111827;white-space:nowrap;}
		#bkStep1 .bk-info .stt{display:flex;align-items:center;gap:5px;margin-top:4px;font-size:12px;line-height:1.2;color:#ef4444;white-space:nowrap;}
		#bkStep1 .bk-info .stt:before{content:"";width:5px;height:5px;border-radius:50%;background:#ef4444;flex:0 0 5px;}
		#bkStep1 .bk-range-desktop{display:none;}
		#bkStep1 .bk-range-mobile{display:inline;}
		#bkStep1 .bk-pricebox{margin:0;text-align:right;white-space:nowrap;}
		#bkStep1 .bk-pricebox .pr{font-size:13px;line-height:1.25;font-weight:700;}
		#bkStep1 .bk-pricebox .un{font-size:11px;line-height:1.25;}
		#bkStep1 .bk-btn-req{position:relative;width:34px;height:34px;padding:0;border-radius:50%;border:1px solid #06b6d4;background:#fff;color:transparent;font-size:0;line-height:1;overflow:hidden;}
		#bkStep1 .bk-btn-req:before{content:"›";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#06b6d4;font-size:25px;font-weight:300;line-height:1;transform:translateY(-1px);}
		#bkStep1 .bk-btn-req:hover,#bkStep1 .bk-btn-req:focus{background:#ecfeff;border-color:#06b6d4;color:transparent;}
		#bkStep1 .bk-more{margin-top:12px;}
		#bkSingleRoomRow .mbright{width:50%;}
	}


	/* Eholiday 08/09/2026 R13 - đổi kiểu hiển thị Lịch khởi hành trên mobile */
	.bk-mobile-view-toggle,.bk-mobile-calendar-view{display:none;}
	@media(max-width:767px){
		#bkStep1 .bk-header{align-items:center;margin-bottom:6px;}
		#bkStep1 .bk-header h3{min-width:0;}
		.bk-mobile-view-toggle{display:flex;align-items:center;gap:4px;padding:3px;background:#f1f5f9;border-radius:9px;flex:0 0 auto;}
		.bk-mobile-view-btn{width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:7px;background:transparent;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:15px;cursor:pointer;transition:all .15s;}
		.bk-mobile-view-btn.is-active{background:#fff;border-color:#dbe3ec;color:#06b6d4;box-shadow:0 1px 3px rgba(15,23,42,.06);}
		.bk-mobile-view-btn:focus{outline:2px solid rgba(6,182,212,.25);outline-offset:1px;}
		#bkStep1.is-calendar-view .bk-mobile-list-view{display:none;}
		#bkStep1.is-calendar-view .bk-mobile-calendar-view{display:block;}
		.bk-mobile-calendar-card{border:1px solid #dbe3ec;border-radius:14px;background:#fff;overflow:hidden;}
		.bk-mobile-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px 10px;border-bottom:1px solid #dbe3ec;}
		.bk-mobile-calendar-month{font-size:16px;font-weight:700;color:#0f4773;line-height:1.25;}
		.bk-mobile-calendar-arrows{display:flex;gap:6px;}
		.bk-mobile-calendar-arrow{width:30px;height:30px;padding:0;border:1px solid #dbe3ec;border-radius:7px;background:#fff;color:#64748b;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;}
		.bk-mobile-calendar-arrow:disabled{opacity:.35;cursor:not-allowed;}
		.bk-mobile-calendar-weekdays,.bk-mobile-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));}
		.bk-mobile-calendar-weekdays{padding:8px 7px;border-bottom:1px solid #dbe3ec;background:#fbfdff;}
		.bk-mobile-calendar-weekdays span{text-align:center;font-size:12px;font-weight:700;color:#64748b;}
		.bk-mobile-calendar-grid{gap:4px;padding:10px 7px 5px;align-items:stretch;}
		.bk-mobile-calendar-cell{position:relative;min-width:0;min-height:47px;display:flex;align-items:stretch;justify-content:stretch;}
		.bk-mobile-calendar-cell.is-outside{opacity:.42;}
		.bk-mobile-calendar-empty{width:100%;min-height:47px;padding:8px 1px 4px;text-align:center;color:#cbd5e1;font-size:13px;font-weight:600;}
		.bk-mobile-calendar-day{position:relative;width:100%;min-width:0;min-height:47px;padding:5px 1px 4px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;text-align:center;cursor:pointer;overflow:hidden;transition:border-color .15s,background .15s,box-shadow .15s;}
		.bk-mobile-calendar-day.is-selected{border-color:#06b6d4;background:#ecfeff;box-shadow:0 0 0 1px rgba(6,182,212,.12);}
		.bk-mobile-calendar-day-number{display:block;font-size:13px;line-height:1.15;font-weight:800;color:#0f2742;}
		.bk-mobile-calendar-day-price{display:block;margin-top:3px;font-size:10px;line-height:1.1;font-weight:700;color:#f97316;white-space:nowrap;overflow:hidden;text-overflow:clip;}
		.bk-mobile-calendar-dot{position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:#ef4444;}
		.bk-mobile-calendar-note{padding:4px 12px 12px;font-size:11px;color:#6b7280;}
	}

	/* Eholiday 08/09/2026 R11 - CTA mobile: ẩn khi khách bấm Chọn số khách, hiện lại khi cuộn tới #lichtrinh */
	.bk-mobile-fixed-cta{display:none;}
	@media(max-width:767px){
		.bk-mobile-fixed-cta.is-visible{
			position:fixed;left:0;right:0;bottom:0;z-index:9990;
			display:flex;align-items:center;justify-content:space-between;gap:12px;
			padding:10px 14px calc(10px + env(safe-area-inset-bottom));
			background:#fff;border-top:1px solid #dbe3ec;
			box-shadow:0 -4px 16px rgba(15,39,66,.10);
		}
		.bk-mobile-fixed-info{min-width:0;display:flex;flex-direction:column;justify-content:center;}
		.bk-mobile-fixed-status{font-size:12px;line-height:1.2;color:#8a8f98;margin-bottom:3px;}
		.bk-mobile-fixed-price{font-size:18px;line-height:1.15;font-weight:800;color:#f97316;white-space:nowrap; font-family: auto;}
		.bk-mobile-fixed-btn{
			flex:0 0 auto;min-width:142px;height:46px;padding:0 20px;
			border:0;border-radius:10px;background:#f97316;color:#fff;
			font-size:16px;font-weight:700;cursor:pointer;
		}
		.bk-mobile-fixed-btn:active{background:#ea580c;}
		body.bk-mobile-cta-visible{padding-bottom:82px;}
	}

	@media(max-width:374px){
		#bkStep1 .bk-item{grid-template-columns:50px minmax(0,1fr) auto 32px;gap:6px;padding-left:6px;padding-right:6px;}
		#bkStep1 .bk-datebox{width:50px;}
		#bkStep1 .bk-pricebox .pr{font-size:12px;}
		#bkStep1 .bk-btn-req{width:32px;height:32px;}
	}
.ac-wrap { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; }
.ac-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.ac-header h3 { font-size: 20px; font-weight: 700; margin: 0; }
.ac-sub { font-size: 13px; color: #6b7280; margin-bottom: 16px; }
.ac-toggle-all {font-size: 14px; color: #2563eb; font-weight: 500; cursor: pointer; background: none; border: none; padding: 0;}
.ac-toggle-all:hover { text-decoration: underline; }
.ac-list { display: flex; flex-direction: column; gap: 10px; }
.ac-item {border: 1px solid #e5e7eb; border-radius: 12px; background: #fff;overflow: hidden; transition: border-color .15s;}
.ac-item.open { border-color: #93c5fd; }
.ac-item-head { display: flex; align-items: center; gap: 12px; padding: 10px;cursor: pointer; user-select: none;}
.ac-item-head:hover { background: #f8fafc; }
.ac-item-head.no-thumb { justify-content: space-between; }
.ac-thumb { width: 56px; height: 56px; border-radius: 10px; object-fit: cover; background: #e5e7eb; flex-shrink: 0;display: flex; align-items: center; justify-content: center;font-size: 18px; color: #9ca3af;}
.ac-info { flex: 1; min-width: 0; }
.ac-label { font-size: 12px; color: #3b82f6; font-weight: 600; margin-bottom: 2px; }
.ac-title { font-size: 15px; font-weight: 700; color: #1f2937; line-height: 1.3; }
.ac-title.policy { color: #1e40af; font-weight: 600; }
.ac-meta { font-size: 13px; color: #6b7280; margin-top: 2px; }
.ac-btn {width: 32px; height: 32px; border-radius: 50%; border: 1px solid #e5e7eb;background: #fff; color: #6b7280; font-size: 20px; line-height: 1;display: flex; align-items: center; justify-content: center;cursor: pointer; flex-shrink: 0; transition: all .15s;}
.ac-item.open .ac-btn { background: #eff6ff; border-color: #93c5fd; color: #2563eb; }
.ac-body { display: none; padding: 0 16px 16px;border-top: 1px solid #f3f4f6; font-size: 14px; line-height: 1.7; color: #374151;}
.ac-item.open .ac-body { display: block; padding-top: 14px; }
.ac-body img { max-width: 100%; height: auto; border-radius: 8px; margin: 10px 0; }
.ac-body p { margin-bottom: 10px; }
.ac-empty { color: #6b7280; padding: 12px 0; }


/* Eholiday 09/09/2026 R15 - CSS MỚI cho tour chưa có lịch khởi hành.
 * Block này là CSS bổ sung; không sửa/ghi đè các rule CSS baseline của người dùng.
 */
.bk-no-departure{padding:18px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;}
.bk-no-departure-title{font-size:16px;font-weight:700;color:#1f2937;margin-bottom:6px;}
.bk-no-departure-text{font-size:13px;line-height:1.55;color:#6b7280;margin:0 0 14px;}
.bk-no-departure-btn{width:100%;max-width:320px;padding:13px 18px;border:0;border-radius:10px;background:#f97316;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s;}
.bk-no-departure-btn:hover{background:#ea580c;}
.bk-inquiry-status{padding:12px 14px;border:1px solid #fed7aa;border-radius:10px;background:#fff7ed;color:#9a3412;font-size:13px;font-weight:600;line-height:1.45;}
.bk-inquiry-summary-row{padding:12px 0;border-top:1px solid #e5e7eb;}
.bk-inquiry-summary-row span{display:block;font-size:12px;color:#6b7280;margin-bottom:3px;}
.bk-inquiry-summary-row strong{display:block;font-size:14px;color:#1f2937;line-height:1.45;}
.bk-inquiry-error{display:none;margin:0 0 14px;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:13px;line-height:1.45;}
.bk-inquiry-error.is-visible{display:block;}


.tour-sidebar-price {padding:20px 20px 0 20px; display:flex;flex-direction:column;align-items:flex-start;margin:0;}
.tour-sidebar-detail {padding: 0 30px; font-size: 0.86em; color: #454545;}
.tour-booking-box {margin: 0 auto; width: 100%; max-width: 89%; font-family: Arial, Helvetica, sans-serif;}
.tour-gift-list {margin: 0;padding: 8px 0 8px 17px; color: #666; font-size: 13px;line-height: 1.55; border-top: 1px solid #ccc;}
.tour-gift-list li {padding-left: 1px;}
.tour-booking-divider {height: 1px;background: #ccc; margin: 4px 0 15px;}
.tour-booking-btn { width: 100%; min-height: 59px;box-sizing: border-box; display: flex;flex-direction: column; align-items: center;justify-content: center; background: #00365dde; color: #fff; text-decoration: none; border-radius: 12px;padding: 9px 10px; transition: all 0.2s ease;}
.tour-booking-title {display: flex;align-items: center; justify-content: center;font-size: 16px;font-weight: 500;line-height: 1.2;color:#fff;}
.tour-arrow {font-size: 17px;font-weight: bold; margin-left: 4px;}
.tour-booking-note {display: block;margin-top: 3px;font-size: 12px;font-weight: 600;line-height: 1.2;color:#fff;}
.tour-booking-btn:hover {background: #70a936;color: #fff;text-decoration: none;}
.tour-contact-box { width: 100%; max-width: 380px; margin: 0 auto; padding: 0 16px 12px 16px; box-sizing: border-box; } 
.tour-hotline { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom:15px; } 
.tour-phone-icon { width: 46px; height: 46px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } 
.tour-phone-icon img { display: block; width: 100%; height: 100%; object-fit: contain; } .tour-hotline-info { text-align: left; } 
.tour-hotline-label { color: #344b77; font-size: 16px; line-height: 20px;} 
.tour-hotline-number { display: block; color: #ff5a00 !important; font-size: 24px; line-height: 27px; font-weight: 700; text-decoration: none !important; } 
.tour-hotline-number:hover { color: #e64f00 !important; }
.wpcf7 form.sent .wpcf7-response-output,.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {display: none; }
.tvtour .tv-sdt, .tvtour .tv-sent-btn {margin-top:5px !important;}


.tvtour { } .tvtour:focus-within { border-color: #ff5a00; box-shadow: 0 4px 18px rgba(127, 186, 62, 0.14); } 
.tv-sdt { padding: 0 6px 0 0 !important; } 
.tvttel { width: 100% !important; height: 44px !important; padding: 0 14px !important; background: #f8f9fa !important; border: 1px solid #ff5a00 !important; border-radius: 7px !important; font-size: 15px !important; color: #333 !important; outline: none !important; box-shadow: none !important; transition: all 0.25s ease !important; } 
.tvttel::placeholder { color: #999; opacity: 1; } .tvttel:focus { background: #fff !important; border-color: #ff5a00 !important; box-shadow: 0 0 0 3px rgba(127, 186, 62, 0.10) !important; } 
 .tv-sent-btn { padding: 0 !important; } 
 .tvtour .tvtsubmit { border-radius: 8px !important; }
 .tvtsubmit { width: 100% !important; height: 44px !important; padding: 0 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; border: 0 !important; border-radius: 7px !important; background: #ff5a00 !important; color: #fff !important; font-size: 15px !important; font-weight: 600 !important; cursor: pointer; box-shadow: none !important; transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important; } 
 .tvtsubmit:hover { background: #70a936 !important; transform: translateY(-1px); box-shadow: 0 5px 12px rgba(112, 169, 54, 0.22) !important; } 
 .tvtsubmit:active { transform: translateY(0); box-shadow: none !important; } 
 .tvtour p { margin: 0 !important; } 
 .tvtour .wpcf7-spinner { position: absolute; margin: 0; } 
 .tvtour .wpcf7-not-valid-tip { position: absolute; top: 48px; left: 6px; font-size: 12px; } 
 @media (max-width: 767px) { .tvtour { padding: 5px; border-radius: 8px; } .tvttel, .tvtsubmit { height: 42px !important; } .tvttel { padding: 0 11px !important; font-size: 14px !important; } 
 .tvtsubmit { padding: 0 10px !important; font-size: 14px !important; } 
 }
.tvtsubmit:disabled {
    cursor: not-allowed !important;
    opacity: 0.7;
    pointer-events: none;
}

.tvtsubmit.is-sending {
    opacity: 0.75;
}

.tvtsubmit.is-sent {
    opacity: 1;
    background: #6f9f37 !important;
}
@media (min-width: 768px) {
    .sing-detail {
        display: flex;
        align-items: stretch;
        overflow: visible !important;
    }
    .sing-detail > #main-detail,
    .sing-detail > .tour-sidebar-column {
        float: none;
    }
    .tour-sidebar-column {
        align-self: stretch;
        position: relative;
        overflow: visible !important;
    }
}
.bk-desktop-booking-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 74px;
    z-index: 20;
    margin-top: 14px;
    margin-left: -10px;
    margin-right: -10px;
    width: auto;
    box-sizing: border-box;
}
.bk-desktop-booking-empty,
.bk-desktop-booking-host {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(0, 54, 93, 0.08);
    padding: 18px;
}
.bk-desktop-booking-label {
    color: #6b7280;
    font-size: 13px;
    margin-bottom: 2px;
}
.bk-desktop-booking-price {
    color: #f97316;
    font-size: 25px;
    line-height: 1.2;
    font-weight: 700;
}
.bk-desktop-booking-price span {
    font-size: 16px;
    font-weight: 600;
}
.bk-desktop-booking-unit {
    color: #6b7280;
    font-size: 12px;
    margin-top: 2px;
}
.bk-desktop-booking-message {
    margin-top: 15px;
    padding: 13px 14px;
    border-radius: 10px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.bk-desktop-booking-message strong {
    color: #9a3412;
    font-size: 14px;
}
.bk-desktop-booking-message span {
    color: #6b7280;
    font-size: 13px;
    line-height: 1.45;
}
.bk-desktop-select-date-btn {
    width: 100%;
    margin-top: 12px;
    padding: 11px 14px;
    border: 1px solid #f97316;
    border-radius: 9px;
    background: #fff;
    color: #f97316;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.bk-desktop-select-date-btn:hover {
    background: #f97316;
    border-color: #f97316;
    color: #fff;
}
#bkDesktopBookingHost #bkStep2 {
    margin: 0;
}
#bkDesktopBookingHost .bk-header {
    margin-bottom: 10px;
}
#bkDesktopBookingHost .bk-header h3 {
    font-size: 18px;
}
#bkDesktopBookingHost .bk-badge {
    font-size: 11px;
}
#bkDesktopBookingHost .bk-selected {
    align-items: flex-start;
}
#bkDesktopBookingHost .bk-tour-price {
    padding: 6px 10px;
}
#bkDesktopBookingHost .bk-guest {
    padding: 8px 2px;
}
#bkDesktopBookingHost .bk-counter {
    gap: 8px;
}
#bkDesktopBookingHost .bk-counter button {
    width: 32px;
    height: 32px;
}
#bkDesktopBookingHost .bk-total-row .amount {
    font-size: 20px;
}
#bkDesktopBookingHost .bk-btn-primary {
    padding: 12px;
}

/* Du thuyen Longday: hien thi gia tu tren mot hang. */
#bkDesktopBookingEmpty .bk-desktop-booking-price-row{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
#bkDesktopBookingEmpty .bk-desktop-booking-price-row .bk-desktop-booking-label,#bkDesktopBookingEmpty .bk-desktop-booking-price-row .bk-desktop-booking-unit{margin:0}
#bkDesktopBookingEmpty .bk-desktop-booking-price-row .bk-desktop-booking-price{font-size:clamp(18px,2vw,25px)}
