@charset "utf-8";
/**
 * Dermaking Reservation Form CSS
 */

/* ============================================
   Variables
   ============================================ */
:root {
	--dm-primary:#B08D57;
	--dm-primary-hover:#9a7847;
	--dm-primary-light:#F3EDE4;
	--dm-primary-border:#D8C3A5;
	--dm-accent:#2a2419;
	--dm-accent-light:#F3EDE4;
	--dm-text:#2a2419;
	--dm-text-sub:#5a5344;
	--dm-text-muted:#9a9384;
	--dm-text-light:#c2b9a8;
	--dm-bg:#fbf8f4;
	--dm-border:#e6ded1;
	--dm-border-light:#efe9df;
	--dm-font:-apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Segoe UI", Roboto, "Noto Sans KR", "Helvetica Neue", Arial, sans-serif;
}

/* ============================================
   메인 래퍼
   ============================================ */
.dm-reservation-wrap {font-family:var(--dm-font); width:100%; max-width:880px; margin:0 auto; padding:80px 20px 100px; box-sizing:border-box; color:var(--dm-text); line-height:1.6; letter-spacing:-0.2px;}
.dm-reservation-wrap *, .dm-reservation-wrap *::before, .dm-reservation-wrap *::after {box-sizing:border-box;}
.dm-reservation-wrap a {text-decoration:none; color:inherit; transition:color 0.2s;}

/* ============================================
   상단 스텝 인디케이터
   ============================================ */
.dm-step-indicator {display:flex; align-items:center; justify-content:center; gap:0; margin-bottom:50px; padding:0; flex-wrap:wrap;}
.dm-step {position:relative; display:inline-flex; align-items:center; gap:10px; padding:14px 28px; font-size:14px; font-weight:600; color:var(--dm-text-muted); background:#fff; border:1px solid var(--dm-border); border-radius:50px; letter-spacing:-0.2px; transition:all 0.3s; cursor:default;}
.dm-step::before {content:''; display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; background:var(--dm-bg); color:var(--dm-text-muted); border-radius:50%; font-size:12px; font-weight:700; flex-shrink:0; transition:all 0.3s;}
.dm-step[data-step="1"]::before {content:'1';}
.dm-step[data-step="2"]::before {content:'2';}
.dm-step[data-step="3"]::before {content:'3';}
.dm-step + .dm-step {margin-left:8px;}
.dm-step + .dm-step::after {content:''; position:absolute; right:calc(100% + 4px); top:50%; transform:translateY(-50%); width:8px; height:1px; background:var(--dm-border); transition:background 0.3s;}

.dm-step.active {background:var(--dm-primary); color:#fff; border-color:var(--dm-primary); box-shadow:0 6px 16px rgba(176, 141, 87, 0.25);}
.dm-step.active::before {background:#fff; color:var(--dm-primary);}
.dm-step.completed {background:var(--dm-primary-light); color:var(--dm-primary); border-color:var(--dm-primary-border);}
.dm-step.completed::before {background:var(--dm-primary); color:#fff;}
.dm-step.completed + .dm-step::after {background:var(--dm-primary);}

/* ============================================
   스텝 패널
   ============================================ */
.dm-step-panel {display:none; background:#fff; border:1px solid var(--dm-border); border-radius:20px; padding:48px 56px; box-shadow:0 2px 8px rgba(42, 36, 25, 0.04); animation:dmFadeIn 0.4s cubic-bezier(0.22, 1, 0.36, 1);}
.dm-step-panel.active {display:block;}

@keyframes dmFadeIn {
	from {opacity:0; transform:translateY(20px);}
	to {opacity:1; transform:translateY(0);}
}

.dm-step-panel h2 {margin:0 0 32px 0; padding:0 0 20px 0; font-size:24px; font-weight:700; color:var(--dm-text); letter-spacing:-0.5px; border-bottom:1px solid var(--dm-border-light); position:relative;}
.dm-step-panel h2::before {content:''; position:absolute; left:0; bottom:-1px; width:60px; height:3px; background:var(--dm-primary); border-radius:2px;}
.dm-step-panel h3 {margin:0 0 16px 0; font-size:16px; font-weight:700; color:var(--dm-text); letter-spacing:-0.3px; display:flex; align-items:baseline; gap:8px;}
.dm-step-panel h3 small {font-size:12px; font-weight:500; color:var(--dm-text-muted); letter-spacing:-0.1px;}

/* ============================================
   STEP 1 - 관심 시술
   ============================================ */
.dm-service-list {display:flex; flex-direction:column; gap:10px; margin-bottom:20px;}
.dm-service-item {display:flex; align-items:center; gap:14px; padding:18px 22px; background:var(--dm-primary-light); border:2px solid var(--dm-primary); border-radius:14px; cursor:pointer; transition:all 0.2s;}
.dm-service-item input[type="checkbox"] {flex-shrink:0; width:20px; height:20px; margin:0; accent-color:var(--dm-primary); cursor:not-allowed;}
.dm-service-label {flex:1; font-size:16px; font-weight:700; color:var(--dm-text); letter-spacing:-0.3px;}
.dm-service-item.dm-checked::after {content:'✓'; flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; background:var(--dm-primary); color:#fff; font-size:14px; font-weight:700; border-radius:50%; box-shadow:0 4px 10px rgba(176, 141, 87, 0.25);}
.dm-service-item.dm-checked input {display:none;}

.dm-info-text {margin:0; padding:16px 20px; background:var(--dm-bg); border-left:3px solid var(--dm-primary); border-radius:0 10px 10px 0; font-size:13px; font-weight:400; color:var(--dm-text-sub); line-height:1.7; letter-spacing:-0.2px;}

/* ============================================
   STEP 2 - 캘린더
   ============================================ */
.dm-calendar-wrap {margin-bottom:40px; padding:24px; background:#fff; border:1px solid var(--dm-border); border-radius:14px;}
.dm-calendar-header {display:flex; align-items:center; justify-content:space-between; margin-bottom:20px;}
.dm-cal-title {font-size:18px; font-weight:700; color:var(--dm-text); letter-spacing:-0.4px; font-variant-numeric:tabular-nums;}

/* 캘린더 네비 버튼 - 전역 호버 오버라이드 */
.dm-reservation-wrap .dm-cal-prev,
.dm-reservation-wrap .dm-cal-next {display:inline-flex !important; align-items:center; justify-content:center; width:40px; height:40px; padding:0 !important; background:#fff !important; color:var(--dm-text-sub) !important; border:1px solid var(--dm-border) !important; border-radius:50% !important; font-size:22px; font-weight:600; cursor:pointer; transition:all 0.2s; line-height:1;}
.dm-reservation-wrap .dm-cal-prev:hover,
.dm-reservation-wrap .dm-cal-next:hover {background:var(--dm-primary) !important; border-color:var(--dm-primary) !important; color:#fff !important; transform:scale(1.05);}

.dm-cal-weekdays {display:grid; grid-template-columns:repeat(7, 1fr); gap:6px; margin-bottom:10px; padding-bottom:12px; border-bottom:1px solid var(--dm-border-light);}
.dm-cal-weekdays span {text-align:center; font-size:12px; font-weight:700; color:var(--dm-text-muted); letter-spacing:-0.1px; padding:6px 0;}
.dm-cal-weekdays .sun {color:#e24b4a;}

.dm-cal-days {display:grid; grid-template-columns:repeat(7, 1fr); gap:6px;}
.dm-cal-days .dm-cal-day {display:inline-flex; align-items:center; justify-content:center; aspect-ratio:1/1; font-size:14px; font-weight:500; color:var(--dm-text); background:transparent; border:1px solid transparent; border-radius:10px; cursor:pointer; transition:all 0.2s; font-variant-numeric:tabular-nums; position:relative;}
.dm-cal-days .dm-cal-day:hover:not(.disabled):not(.empty) {background:var(--dm-primary-light); color:var(--dm-primary); border-color:var(--dm-primary-border);}
.dm-cal-days .dm-cal-day.empty {cursor:default; opacity:0;}
.dm-cal-days .dm-cal-day.disabled {color:var(--dm-text-light); cursor:not-allowed; text-decoration:line-through; opacity:0.5;}
.dm-cal-days .dm-cal-day.today {color:var(--dm-primary); font-weight:700;}
.dm-cal-days .dm-cal-day.today::after {content:''; position:absolute; bottom:4px; left:50%; transform:translateX(-50%); width:4px; height:4px; background:var(--dm-primary); border-radius:50%;}
.dm-cal-days .dm-cal-day.selected {background:var(--dm-primary) !important; color:#fff !important; border-color:var(--dm-primary) !important; box-shadow:0 4px 12px rgba(176, 141, 87, 0.3); font-weight:700;}
.dm-cal-days .dm-cal-day.selected::after {background:#fff;}
.dm-cal-days .dm-cal-day.sun:not(.disabled) {color:#e24b4a;}

/* ============================================
   STEP 2 - 시간 선택
   ============================================ */
.dm-time-wrap {padding:24px; background:var(--dm-bg); border-radius:14px; margin-bottom:24px;}
.dm-selected-info {margin-bottom:16px; padding:14px 18px; background:#fff; border:1px solid var(--dm-border); border-radius:10px;}
.dm-selected-date {display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:var(--dm-text); letter-spacing:-0.2px;}
.dm-selected-date::before {content:''; display:inline-block; width:16px; height:16px; background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23B08D57' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") no-repeat center;}

.dm-time-slots {display:grid; grid-template-columns:repeat(auto-fill, minmax(110px, 1fr)); gap:8px;}
.dm-reservation-wrap .dm-time-slot {padding:12px 8px !important; background:#fff !important; color:var(--dm-text) !important; border:1px solid var(--dm-border) !important; border-radius:10px !important; font-size:14px; font-weight:600; cursor:pointer; transition:all 0.2s; text-align:center; font-variant-numeric:tabular-nums; letter-spacing:-0.1px;}
.dm-reservation-wrap .dm-time-slot:hover:not(.disabled):not(.dm-time-empty) {background:var(--dm-primary-light) !important; color:var(--dm-primary) !important; border-color:var(--dm-primary) !important;}
.dm-reservation-wrap .dm-time-slot.selected {background:var(--dm-primary) !important; color:#fff !important; border-color:var(--dm-primary) !important; box-shadow:0 4px 12px rgba(176, 141, 87, 0.3); transform:translateY(-1px);}
.dm-reservation-wrap .dm-time-slot.disabled {color:var(--dm-text-light) !important; background:#f6f3ee !important; cursor:not-allowed; text-decoration:line-through; opacity:0.6;}
.dm-time-empty {grid-column:1 / -1; padding:30px 20px; text-align:center; font-size:13px; color:var(--dm-text-muted); background:transparent !important; border:none !important; cursor:default;}

/* ============================================
   STEP 3 - 고객 정보
   ============================================ */
.dm-summary {display:flex; flex-direction:column; gap:14px; padding:24px; margin-bottom:30px; background:linear-gradient(135deg, var(--dm-primary-light) 0%, #fff 100%); border:1px solid var(--dm-primary-border); border-radius:14px;}
.dm-summary > div {display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:14px; letter-spacing:-0.2px;}
.dm-summary > div + div {padding-top:14px; border-top:1px dashed rgba(176, 141, 87, 0.2);}
.dm-summary strong {color:var(--dm-text-sub); font-weight:600; font-size:13px;}
.dm-summary span {color:var(--dm-text); font-weight:700; font-size:15px; letter-spacing:-0.3px; font-variant-numeric:tabular-nums;}

.dm-form-row {margin-bottom:14px;}
.dm-form-row input[type="text"],
.dm-form-row input[type="tel"],
.dm-form-row textarea {width:100%; padding:14px 18px; font-size:14px; font-weight:500; color:var(--dm-text); background:#fff; border:1px solid var(--dm-border); border-radius:10px; outline:none; transition:all 0.2s; font-family:inherit; letter-spacing:-0.2px; line-height:1.5;}
.dm-form-row input:hover, .dm-form-row textarea:hover {border-color:#d4c8b5;}
.dm-form-row input:focus, .dm-form-row textarea:focus {border-color:var(--dm-primary); box-shadow:0 0 0 3px rgba(176, 141, 87, 0.08);}
.dm-form-row input::placeholder, .dm-form-row textarea::placeholder {color:var(--dm-text-light); font-weight:400;}
.dm-form-row textarea {resize:vertical; min-height:100px; line-height:1.7;}

.dm-amount-row {display:flex; justify-content:space-between; align-items:center; padding:20px 24px; margin:24px 0 12px; background:var(--dm-accent); color:#fff; border-radius:12px;}
.dm-amount-row span {font-size:14px; font-weight:600; letter-spacing:-0.2px; opacity:0.9;}
.dm-amount-row strong {font-size:22px; font-weight:700; color:var(--dm-primary); letter-spacing:-0.3px; font-variant-numeric:tabular-nums;}

.dm-notice {margin:0 0 24px; padding:14px 18px; background:var(--dm-bg); border-radius:10px; font-size:12px; font-weight:400; color:var(--dm-text-muted); line-height:1.7; letter-spacing:-0.2px;}

.dm-agree {display:flex; align-items:center; justify-content:space-between; padding:14px 18px; margin-bottom:10px; background:#fff; border:1px solid var(--dm-border); border-radius:10px; gap:10px; flex-wrap:wrap; transition:all 0.2s;}
.dm-agree:hover {border-color:var(--dm-primary-border);}
.dm-agree label {display:inline-flex; align-items:center; gap:10px; cursor:pointer; font-size:13px; font-weight:500; color:var(--dm-text-sub); letter-spacing:-0.2px; flex:1; min-width:0;}
.dm-agree input[type="checkbox"] {flex-shrink:0; width:18px; height:18px; margin:0; accent-color:var(--dm-primary); cursor:pointer;}
.dm-agree em {color:var(--dm-primary); font-style:normal; font-weight:700; margin-left:2px;}
.dm-show-terms {font-size:12px; font-weight:500; color:var(--dm-text-muted); text-decoration:underline; flex-shrink:0;}
.dm-show-terms:hover {color:var(--dm-primary);}

.dm-confirm-notice {margin:20px 0; padding:16px 20px; background:var(--dm-accent-light); border-radius:10px; font-size:13px; font-weight:500; color:var(--dm-accent); line-height:1.6; letter-spacing:-0.2px; text-align:center;}

/* ============================================
   하단 액션 버튼 (핵심!)
   ============================================ */
.dm-step-actions {display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:36px; padding-top:24px; border-top:1px solid var(--dm-border-light);}
.dm-step-actions:not(:has(.dm-btn-prev)) {justify-content:flex-end;}

.dm-reservation-wrap .dm-btn {display:inline-flex !important; align-items:center; justify-content:center; gap:6px; min-width:140px; height:50px; padding:0 32px !important; border:1px solid transparent !important; border-radius:50px !important; font-size:14px; font-weight:700; letter-spacing:-0.2px; cursor:pointer; transition:all 0.25s; font-family:inherit; line-height:1; text-decoration:none !important;}

/* 이전 버튼 */
.dm-reservation-wrap .dm-btn-prev {background:#fff !important; color:var(--dm-text-sub) !important; border-color:var(--dm-border) !important;}
.dm-reservation-wrap .dm-btn-prev:hover {background:var(--dm-bg) !important; color:var(--dm-text) !important; border-color:var(--dm-accent) !important;}

/* 다음 버튼 */
.dm-reservation-wrap .dm-btn-next {background:var(--dm-primary) !important; color:#fff !important; border-color:var(--dm-primary) !important; box-shadow:0 4px 12px rgba(176, 141, 87, 0.2); margin-left:auto;}
.dm-reservation-wrap .dm-btn-next:hover {background:var(--dm-primary-hover) !important; border-color:var(--dm-primary-hover) !important; color:#fff !important; transform:translateY(-2px); box-shadow:0 6px 16px rgba(176, 141, 87, 0.3);}

/* 제출 버튼 */
.dm-reservation-wrap .dm-btn-submit {background:var(--dm-primary) !important; color:#fff !important; border-color:var(--dm-primary) !important; min-width:200px; box-shadow:0 6px 16px rgba(176, 141, 87, 0.25);}
.dm-reservation-wrap .dm-btn-submit:hover {background:var(--dm-primary-hover) !important; border-color:var(--dm-primary-hover) !important; color:#fff !important; transform:translateY(-2px); box-shadow:0 8px 20px rgba(176, 141, 87, 0.35);}

/* ============================================
   완료 메시지
   ============================================ */
.dm-success-message {padding:80px 40px; text-align:center; background:#fff; border:1px solid var(--dm-border); border-radius:20px; box-shadow:0 4px 16px rgba(42, 36, 25, 0.06); animation:dmFadeIn 0.5s cubic-bezier(0.22, 1, 0.36, 1);}
.dm-success-icon {display:inline-flex; align-items:center; justify-content:center; width:80px; height:80px; margin:0 auto 24px; background:linear-gradient(135deg, var(--dm-primary) 0%, #c9a877 100%); color:#fff; font-size:38px; font-weight:700; border-radius:50%; box-shadow:0 12px 32px rgba(176, 141, 87, 0.3); animation:dmBounce 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);}
.dm-success-message h2 {margin:0 0 16px 0; padding:0; font-size:24px; font-weight:700; color:var(--dm-text); letter-spacing:-0.5px; border:none;}
.dm-success-message h2::before {display:none;}
.dm-success-message p {margin:0; font-size:15px; font-weight:400; color:var(--dm-text-sub); line-height:1.7; letter-spacing:-0.2px;}

@keyframes dmBounce {
	0% {transform:scale(0); opacity:0;}
	60% {transform:scale(1.15); opacity:1;}
	100% {transform:scale(1);}
}

/* ============================================
   약관 모달
   ============================================ */
.dm-terms-modal {position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(42, 36, 25, 0.5); z-index:9999; display:flex; align-items:center; justify-content:center; padding:20px; backdrop-filter:blur(4px); animation:dmFadeIn 0.25s ease;}
.dm-terms-inner {width:100%; max-width:480px; padding:36px 32px; background:#fff; border-radius:20px; box-shadow:0 20px 60px rgba(42, 36, 25, 0.2); max-height:80vh; overflow-y:auto;}
.dm-terms-title {margin:0 0 20px 0; padding:0 0 16px 0; font-size:18px; font-weight:700; color:var(--dm-text); letter-spacing:-0.4px; border-bottom:1px solid var(--dm-border-light);}
.dm-terms-body {margin-bottom:24px; font-size:13px; color:var(--dm-text-sub); line-height:1.8; letter-spacing:-0.2px;}
.dm-terms-body p {margin:0 0 12px;}
.dm-terms-body strong {color:var(--dm-text); font-weight:700;}

/* 모달 닫기 버튼 */
.dm-reservation-wrap .dm-terms-close,
.dm-terms-modal .dm-terms-close {display:block !important; width:100%; height:48px; min-width:0 !important; padding:0 !important; background:var(--dm-primary) !important; color:#fff !important; border:none !important; border-radius:50px !important; font-size:14px; font-weight:700; cursor:pointer; transition:all 0.2s; letter-spacing:-0.2px;}
.dm-reservation-wrap .dm-terms-close:hover,
.dm-terms-modal .dm-terms-close:hover {background:var(--dm-primary-hover) !important; color:#fff !important; border-color:var(--dm-primary-hover) !important; transform:translateY(-1px); box-shadow:0 4px 12px rgba(176, 141, 87, 0.25);}
.dm-step + .dm-step::after{display:none}

/* ============================================
   반응형 - 태블릿
   ============================================ */
@media screen and (max-width: 1024px) {
	.dm-reservation-wrap {padding:60px 30px 80px;}
	.dm-step-panel {padding:36px 40px;}
	.dm-step-panel h2 {font-size:22px;}
}

/* ============================================
   반응형 - 모바일
   ============================================ */
@media screen and (max-width: 768px) {
	/* 메인 래퍼 - 풀폭 확장 */
	.dm-reservation-wrap {padding:30px 8px 60px; max-width:100%;}
	
	/* 스텝 인디케이터 */
	.dm-step-indicator {gap:4px; margin-bottom:20px; padding:0 4px;}
	.dm-step {padding:8px 12px; font-size:11px; gap:4px;}
	.dm-step::before {width:18px; height:18px; font-size:10px;}
	.dm-step + .dm-step {margin-left:2px;}
	.dm-step + .dm-step::after {width:3px;}
	
	/* 스텝 패널 박스 - 여백 최소화 */
	.dm-step-panel {padding:20px 14px; border-radius:12px;}
	.dm-step-panel h2 {font-size:17px; margin-bottom:18px; padding-bottom:14px;}
	.dm-step-panel h2::before {width:50px; height:2px;}
	.dm-step-panel h3 {font-size:14px; margin-bottom:12px;}
	
	/* STEP 1 */
	.dm-service-list {gap:8px; margin-bottom:14px;}
	.dm-service-item {padding:12px 14px; gap:10px; border-radius:10px;}
	.dm-service-item input[type="checkbox"] {width:18px; height:18px;}
	.dm-service-label {font-size:14px;}
	.dm-service-item.dm-checked::after {width:24px; height:24px; font-size:12px;}
	.dm-info-text {padding:12px 14px; font-size:12px;}
	
	/* STEP 2 - 캘린더 */
	.dm-calendar-wrap {padding:14px 12px; margin-bottom:20px; border-radius:10px;}
	.dm-calendar-header {margin-bottom:14px;}
	.dm-cal-title {font-size:15px;}
	.dm-reservation-wrap .dm-cal-prev,
	.dm-reservation-wrap .dm-cal-next {width:32px !important; height:32px !important; font-size:16px;}
	.dm-cal-weekdays {gap:4px; padding-bottom:8px; margin-bottom:6px;}
	.dm-cal-weekdays span {font-size:11px; padding:3px 0;}
	.dm-cal-days {gap:4px;}
	.dm-cal-days .dm-cal-day {font-size:13px; border-radius:7px;}
	
	/* STEP 2 - 시간 */
	.dm-time-wrap {padding:14px 12px; margin-bottom:16px; border-radius:10px;}
	.dm-selected-info {padding:10px 12px; margin-bottom:12px;}
	.dm-selected-date {font-size:13px;}
	.dm-time-slots {grid-template-columns:repeat(3, 1fr); gap:5px;}
	.dm-reservation-wrap .dm-time-slot {padding:9px 4px !important; font-size:12px;}
	
	/* STEP 3 */
	.dm-summary {padding:14px 16px; margin-bottom:20px; gap:10px;}
	.dm-summary > div {flex-direction:column; align-items:flex-start; gap:3px;}
	.dm-summary > div + div {padding-top:10px;}
	.dm-summary strong {font-size:12px;}
	.dm-summary span {font-size:14px;}
	.dm-form-row {margin-bottom:10px;}
	.dm-form-row input, .dm-form-row textarea {padding:11px 14px; font-size:13px; border-radius:8px;}
	.dm-form-row textarea {min-height:80px;}
	.dm-amount-row {padding:14px 16px; margin:18px 0 10px; flex-direction:column; gap:4px; align-items:flex-start;}
	.dm-amount-row span {font-size:13px;}
	.dm-amount-row strong {font-size:19px;}
	.dm-notice {padding:12px 14px; margin-bottom:16px; font-size:11px;}
	.dm-agree {padding:10px 12px; gap:8px;}
	.dm-agree label {font-size:12px;}
	.dm-agree input[type="checkbox"] {width:16px; height:16px;}
	.dm-show-terms {font-size:11px;}
	.dm-confirm-notice {padding:12px 14px; margin:14px 0; font-size:12px;}
	/* 액션 버튼 */
	.dm-step-actions {flex-direction:column-reverse; gap:6px; margin-top:20px; padding-top:16px;}
	.dm-reservation-wrap .dm-btn {width:100%; min-width:0; height:44px; font-size:13px; padding:0 18px !important;}
	.dm-reservation-wrap .dm-btn-submit {min-width:0;}
	.dm-reservation-wrap .dm-btn-next {margin-left:0;}
	
	/* 성공 메시지 */
	.dm-success-message {padding:40px 20px; border-radius:12px;}
	.dm-success-icon {width:56px; height:56px; font-size:26px; margin-bottom:16px;}
	.dm-success-message h2 {font-size:17px;}
	.dm-success-message p {font-size:13px;}
	
	/* 모달 */
	.dm-terms-inner {padding:22px 18px; border-radius:12px;}
	.dm-terms-title {font-size:15px;}
	.dm-terms-body {font-size:12px;}
	.dm-reservation-wrap .dm-terms-close,
	.dm-terms-modal .dm-terms-close {height:42px !important; font-size:13px;}
}