/* ===== flatpickr 모양(공통) ===== */
.flatpickr-calendar{
	width:688px!important;border:1px solid #e6e7ea;border-radius:10px;
	box-shadow:0 4px 22px rgba(0,0,0,.06);overflow:hidden;padding:12px;z-index:1100!important;
}
.flatpickr-months{background:#fff;border-bottom:1px solid #f0f1f3;margin:0 8px 8px;padding-bottom:6px;}
.flatpickr-months .flatpickr-current-month{font-size:15px;}
.flatpickr-prev-month,.flatpickr-next-month{
	position:static!important;width:15px;height:15px!important;line-height:20px!important;text-align:center;
	border-radius:50px;border:1px solid #ddd;font-size:25px;padding:0 5px 10px!important;margin-top:5px;color:#222!important;transition:background .15s ease;
}
.flatpickr-prev-month:hover,.flatpickr-next-month:hover{background:#e9ebef;color:#6e7680;}
.flatpickr-days{display:flex;gap:32px;width:100%;padding:8px 12px 12px;}
.flatpickr-days .dayContainer{flex:1;padding:0 8px!important;box-sizing:border-box;}
.flatpickr-weekdays{background:#fff;display:flex;gap:32px;padding:0 12px 6px!important;}
.flatpickr-weekday{color:#9aa1aa;font-weight:500;}
.flatpickr-day{border-radius:8px;max-width:unset;}
.flatpickr-day.disabled,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color:#c8cdd4;}
.flatpickr-day.today{border-color:transparent;}
.flatpickr-day.inRange{background:#f2f8e9;color:#2b2f33;border-color:transparent;}
.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:#7ac142;color:#fff;border-color:transparent;}
.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange,
.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:10px;}
.flatpickr-day.startRange:not(.endRange){border-top-right-radius:0;border-bottom-right-radius:0;}
.flatpickr-day.endRange:not(.startRange){border-top-left-radius:0;border-bottom-left-radius:0;}
.flatpickr-day:hover{background:#e9f3d7;}
.flatpickr-calendar .flatpickr-days .dayContainer + .dayContainer{border-left:0!important;box-shadow:none!important;}

/* ===== 바텀시트/모바일 UI ===== */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.no-scroll{overflow:hidden;}
.mobile-only{display:none !important;}

/* 기본(PC)에서는 모바일 UI 감추기 */
.mobile-only{ display:none !important; }
.bottom-sheet{ display:none !important; }

@media (max-width:768px){
	#desktopPill{display:none !important;}
	.mobile-only{display:block !important;}

	.mobile-searchbar{
	width:min(680px,92vw);height:48px;margin:20px auto 0;
	padding:0 16px 0 14px;display:flex;align-items:center;justify-content:space-between;
	border-radius:9999px;border:1px solid #e6e7ea;background:#fff;
	box-shadow:0 6px 20px rgba(0,0,0,.06);font-size:14px;color:#9aa1aa;
	}
	.mobile-searchbar i{font-size:18px;color:#8cc11d;}

	.bottom-sheet{display:block !important;position:fixed;inset:0;z-index:1000;pointer-events:none;}
	.bottom-sheet[aria-hidden="true"] .sheet-backdrop{opacity:0;}
	.bottom-sheet[aria-hidden="true"] .sheet-panel{transform:translateY(100%);}
	.bottom-sheet[aria-hidden="false"]{pointer-events:auto;}

	.sheet-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);transition:opacity .25s ease;}
	.sheet-panel{
	position:absolute;left:0;right:0;bottom:0;max-height:82vh;overflow:auto;
	border-top-left-radius:16px;border-top-right-radius:16px;background:#fff;
	padding:14px 16px 16px;box-shadow:0 -6px 24px rgba(0,0,0,.16);transition:transform .28s ease;
	-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
	}
	.sheet-grabber{width:44px;height:4px;border-radius:999px;background:#e5e7eb;margin:4px auto 12px;}
	.sheet-close{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;border:1px solid #eee;background:#fff;font-size:20px;}
	.sheet-section{padding:6px 2px 10px;}
	.sheet-section h4{font-size:14px;margin:6px 2px;color:#6b7280;}
	.sheet-list{list-style:none;margin:0;padding:0;border:1px solid #f1f2f5;border-radius:12px;overflow:hidden;}
	.sheet-list li{padding:14px 12px;border-bottom:1px solid #f1f2f5;cursor:pointer;}
	.sheet-list li:last-child{border-bottom:0;}
	.sheet-list li:active{background:#f7f7f9;}
	.sheet-list li.selected{color:#8cc11d;font-weight:600;}
	.sheet-actions{padding-top:12px;}
	.apply-btn{width:100%;height:44px;border-radius:10px;background:#8cc11d;color:#fff;border:0;font-weight:600;}
	#m_date,#m_start_time,#m_end_time{width:100%;height:44px;border:1px solid #e5e7eb;border-radius:10px;padding:0 12px;font-size:14px;box-sizing:border-box;max-width:100%;}

	/* 모바일에서 달력 크기 자동 */
	.flatpickr-wrapper {width:100%;}
	.flatpickr-calendar{width:100%!important;max-width:none!important;}
}

/* ===== 아코디언 ===== */
@media (max-width:768px){
	.acc-header{
	width:100%;display:flex;align-items:center;justify-content:space-between;
	background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;font-weight:600;
	}
	
	/* 닫힘 상태: 아래(V) / 열림: 위(^) */
	.acc-caret{
	width:8px; height:8px;
	border-right:2px solid #9aa1aa; 
	border-bottom:2px solid #9aa1aa;
	transform: rotate(45deg);        /* ▼ */
	transition: transform .2s ease;
	margin-left:10px;
	}
	.acc-header[aria-expanded="true"] .acc-caret{
	transform: rotate(-135deg);      /* ▲ */
	}

	.acc-panel{overflow:hidden;transition:max-height .25s ease, padding .2s ease;max-height:0;padding:0 2px;}
	.acc-panel.open{padding:8px 2px 4px;max-height: fit-content;}
}