/* DF 모바일 하단바 v1.1.0 */
.dfmb, .dfmb-sheet { display: none; }

@media (max-width: 768px) {
	/* 기존 빠른메뉴 모바일 바 대체 */
	.dfd-qm-mobar { display: none !important; }
	body { padding-bottom: calc(58px + env(safe-area-inset-bottom)) !important; }

	.dfmb {
		--dfmb-point: #2563eb;
		--dfmb-ink: #111827;
		--dfmb-sub: #6b7280;
		--dfmb-line: #e5e7eb;
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 2147483600;
		display: grid; grid-template-columns: repeat(4, 1fr);
		height: calc(58px + env(safe-area-inset-bottom));
		padding-bottom: env(safe-area-inset-bottom);
		background: #fff; border-top: 1px solid var(--dfmb-line);
		font-family: Pretendard, 'Pretendard Variable', -apple-system, sans-serif;
	}
	.dfmb__it {
		display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px;
		margin: 0; padding: 0; border: 0; border-radius: 0; background: none; cursor: pointer;
		color: var(--dfmb-ink); text-decoration: none; font: inherit;
		font-size: 11px; font-weight: 500; letter-spacing: -0.2px; line-height: 1;
		-webkit-tap-highlight-color: transparent;
	}
	.dfmb__it + .dfmb__it { border-left: 1px solid var(--dfmb-line); }
	.dfmb__it svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
	.dfmb__it:active { background: #f3f4f6; }
	.dfmb__it.is-accent { background: var(--dfmb-point); color: #fff; border-left-color: var(--dfmb-point); }
	.dfmb__it.is-accent + .dfmb__it { border-left-color: var(--dfmb-point); }
	.dfmb__it.is-accent:active { filter: brightness(.92); }

	/* 시트 */
	.dfmb-sheet:not([hidden]) {
		display: flex; align-items: flex-end;
		position: fixed; inset: 0; z-index: 2147483610;
		background: rgba(17, 24, 39, .45);
	}
	.dfmb-sheet__panel {
		width: 100%; background: #fff; border-radius: 0;
		padding: 0 20px calc(24px + env(safe-area-inset-bottom));
		font-family: Pretendard, 'Pretendard Variable', -apple-system, sans-serif;
		color: #111827; animation: dfmbUp .2s ease-out;
	}
	@keyframes dfmbUp { from { transform: translateY(24px); opacity: 0; } to { transform: none; opacity: 1; } }
	.dfmb-sheet__head { display: flex; align-items: center; justify-content: space-between; height: 54px; border-bottom: 1px solid #e5e7eb; }
	.dfmb-sheet__head strong { font-size: 15px; font-weight: 700; letter-spacing: -0.3px; }
	.dfmb-sheet__x { width: 36px; height: 36px; margin-right: -8px; border: 0; background: none; font-size: 24px; line-height: 1; color: #6b7280; cursor: pointer; }
	.dfmb-sheet__body { padding-top: 18px; }
	.dfmb-sheet__body p { margin: 0 0 6px; font-size: 13px; line-height: 1.6; color: #4b5563; }
	.dfmb-sheet__body .dfmb-lead { font-size: 14px; font-weight: 600; color: #111827; margin-bottom: 4px; }
	.dfmb-steps { margin: 14px 0 0; padding: 0; list-style: none; counter-reset: s; border-top: 1px solid #e5e7eb; }
	.dfmb-steps li { counter-increment: s; display: flex; gap: 10px; align-items: baseline; padding: 11px 0; border-bottom: 1px solid #e5e7eb; font-size: 13px; color: #111827; }
	.dfmb-steps li::before { content: counter(s); flex: 0 0 20px; height: 20px; line-height: 20px; text-align: center; background: #111827; color: #fff; font-size: 11px; font-weight: 700; }
	.dfmb-btn {
		display: block; width: 100%; height: 48px; margin-top: 18px; border: 0; border-radius: 0;
		background: #2563eb; color: #fff; font: inherit; font-size: 14px; font-weight: 600;
		text-align: center; line-height: 48px; text-decoration: none; cursor: pointer;
	}
	.dfmb-btn--line { background: #fff; color: #111827; border: 1px solid #d1d5db; margin-top: 8px; line-height: 46px; }
	.dfmb-empty { padding: 26px 0 8px; text-align: center; }
	.dfmb-empty svg { width: 34px; height: 34px; fill: none; stroke: #9ca3af; stroke-width: 1.4; }
	.dfmb-empty p { margin-top: 10px; }
}
@media (max-width: 768px) {
	.dfmb-sheet__body .dfmb-note { margin: 14px 0 0; padding: 10px 12px; background: #f3f4f6; font-size: 12px; line-height: 1.6; color: #4b5563; }
	.dfmb-sheet__body .dfmb-note b { color: #111827; font-weight: 600; }
}
