:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#151515;--muted:#6e6e69;--line:#d7d7d1;--line-dark:#8a8a84;--paper:#fff;--wash:#f5f5f1;--danger:#9a281f;--focus:#0c63ce;--max:820px}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);letter-spacing:-.012em;margin:0;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,sans-serif;font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:3px}img{max-width:100%;display:block}.sr-status{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:10px 14px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-shell{min-height:100svh}.site-header{border-bottom:1px solid var(--line);padding:34px 20px 28px}.brand-link{width:min(330px,78vw);margin:0 auto;display:block}.brand-logo{width:100%;height:auto}.page-main{width:min(calc(100% - 32px), var(--max));margin:0 auto;padding:48px 0 100px}.page-intro{text-align:center;margin-bottom:44px}.eyebrow{letter-spacing:.19em;margin:0 0 10px;font-size:11px;font-weight:650}h1,h2,h3,p{overflow-wrap:anywhere}h1{letter-spacing:-.04em;margin:0 0 14px;font-size:clamp(24px,4vw,34px);font-weight:520;line-height:1.3}h2{letter-spacing:-.035em;margin:0;font-size:clamp(20px,3.3vw,27px);font-weight:560;line-height:1.35}h3{margin:0;font-size:16px;font-weight:650}.lede{max-width:600px;color:var(--muted);margin:0 auto}.muted,.helper{color:var(--muted)}.helper{margin:7px 0 0;font-size:13px}.preview-banner,.offline-banner{text-align:center;border-bottom:1px solid var(--line);padding:10px 16px;font-size:13px}.preview-banner{background:var(--wash)}.offline-banner{background:#fff4df}.steps{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 48px;padding:0;list-style:none;display:grid}.step-item{min-width:0}.step-button{border:0;border-right:1px solid var(--line);text-align:center;letter-spacing:.07em;width:100%;min-height:58px;color:var(--muted);background:#fff;padding:11px 6px;font-size:11px;display:block}.step-item:last-child .step-button{border-right:0}.step-button[aria-current=step]{background:var(--ink);color:#fff}.step-button:disabled{cursor:not-allowed;color:#aaa}.step-index{font-variant-numeric:tabular-nums;margin-bottom:2px;display:block}.section-heading{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:end;gap:18px;margin-bottom:26px;padding-bottom:17px;display:flex}.section-heading p{color:var(--muted);text-align:right;margin:0;font-size:13px}.booking-panel{min-width:0}.fieldset{border:0;margin:0 0 34px;padding:0}.fieldset>legend{width:100%;margin:0 0 14px;padding:0;font-weight:650;display:block}.choice-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.choice{cursor:pointer;background:#fff;align-items:center;gap:12px;min-height:74px;padding:14px;display:flex;position:relative}.choice input{width:20px;height:20px;accent-color:var(--ink);flex:none}.choice:has(input:checked){box-shadow:inset 0 0 0 2px var(--ink)}.choice strong,.choice small{display:block}.choice small{color:var(--muted);margin-top:1px}.calendar{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-bottom:26px}.calendar-header{border-bottom:1px solid var(--line);grid-template-columns:48px 1fr 48px;align-items:center;min-height:62px;display:grid}.calendar-header strong{text-align:center;font-size:18px;font-weight:550}.icon-button{cursor:pointer;background:#fff;border:0;width:48px;height:48px;font-size:23px}.weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekdays span{text-align:center;color:var(--muted);border-bottom:1px solid var(--line);padding:10px 2px;font-size:11px}.calendar-day,.calendar-blank{min-width:0;min-height:82px}.calendar-day{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;text-align:center;background:#fff;padding:9px 5px 7px;position:relative}.calendar-day:nth-child(7n){border-right:0}.calendar-day:disabled{cursor:not-allowed;color:#a2a29d;background:var(--wash)}.calendar-day.is-selected{color:#fff;background:var(--ink)}.calendar-day-number{font-variant-numeric:tabular-nums;margin:0 auto 5px;font-size:15px;display:block}.calendar-day-status{letter-spacing:-.02em;font-size:9px;line-height:1.25;display:block}.calendar-day.status-blocked:not(.is-selected){color:#5a5a56;background:repeating-linear-gradient(-45deg,#fff,#fff 6px,#f1f1ec 6px 12px)}.calendar-day.status-failed:not(.is-selected){color:var(--danger);background:#fff3f0}.calendar-blank{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafaf8}.availability-legend{color:var(--muted);flex-wrap:wrap;gap:10px 18px;margin:12px 0 30px;font-size:12px;display:flex}.legend-mark{border:1px solid var(--line-dark);vertical-align:-1px;width:10px;height:10px;margin-right:5px;display:inline-block}.legend-mark.available{background:#fff}.legend-mark.closed{background:var(--wash)}.legend-mark.blocked{background:repeating-linear-gradient(-45deg,#fff,#fff 2px,#aaa 2px 3px)}.legend-mark.failed{border-color:var(--danger);background:#fff3f0}.slot-list{border-top:1px solid var(--line);gap:0;display:grid}.slot-choice{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:70px;padding:12px 4px;display:grid}.slot-choice:has(input:checked){background:var(--wash);box-shadow:inset 3px 0 0 var(--ink);padding-left:12px}.slot-choice:has(input:disabled){color:#969691;cursor:not-allowed}.slot-choice input{width:20px;height:20px;accent-color:var(--ink)}.slot-time{font-variant-numeric:tabular-nums}.slot-meta{text-align:right;font-size:13px}.slot-meta small{color:var(--muted);display:block}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;display:grid}.form-field{min-width:0}.form-field.full{grid-column:1/-1}.form-field label,.field-label{margin-bottom:7px;font-weight:620;display:block}.required{color:var(--danger)}input[type=text],input[type=tel],input[type=number],input[type=email],input[type=date],input[type=datetime-local],select,textarea{border:1px solid var(--line-dark);background:#fff;border-radius:0;width:100%;min-height:48px;padding:10px 12px}textarea{resize:vertical;min-height:130px}[aria-invalid=true]{box-shadow:inset 0 0 0 1px var(--danger);border-color:var(--danger)!important}.field-error{color:var(--danger);margin:6px 0 0;font-size:13px}.char-count{color:var(--muted);text-align:right;margin:6px 0 0;font-size:12px}.checkbox-list{background:var(--line);border:1px solid var(--line);gap:1px;display:grid}.checkbox-row{cursor:pointer;background:#fff;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:11px;min-height:62px;padding:13px;display:grid}.checkbox-row input{width:20px;height:20px;accent-color:var(--ink);margin-top:2px}.checkbox-row:has(input:checked){background:var(--wash)}.checkbox-row strong,.checkbox-row small{display:block}.checkbox-row small{color:var(--muted);margin-top:2px}.checkbox-price{white-space:nowrap;font-size:13px}.notice{border:1px solid var(--line-dark);margin:22px 0;padding:14px 16px}.notice p{margin:0}.notice-error{color:var(--danger);border-color:var(--danger);background:#fff9f8}.notice-quote{background:#f7f3ea}.error-summary{border:2px solid var(--danger);color:var(--danger);margin:0 0 28px;padding:16px}.error-summary strong{margin-bottom:5px;display:block}.error-summary ul{margin:0;padding-left:20px}.terms-document{border:1px solid var(--line);background:#fff;max-height:560px;padding:28px 26px;font-size:13px;overflow:auto}.terms-document h3{margin:0 0 16px;font-size:15px;font-weight:400;line-height:1.5}.terms-intro{border-bottom:1px solid var(--line);color:#4f4d49;margin:0;padding-bottom:19px}.terms-section{border:0}.terms-section h4{margin:27px 0 10px;font-size:13px;font-weight:500}.terms-section ul{color:#4f4d49;margin:0;padding-left:18px}.terms-section li{margin:6px 0}.terms-section strong{color:var(--ink)}.consent-list{gap:10px;margin-top:28px;display:grid}.consent-label{cursor:pointer;align-items:center;gap:11px;min-height:48px;padding:7px 0;display:flex}.consent-label input{width:20px;height:20px;accent-color:var(--ink);flex:none}.summary-list{border-top:1px solid var(--ink);margin:0}.summary-row{border-bottom:1px solid var(--line);grid-template-columns:145px minmax(0,1fr);gap:20px;margin:0;padding:13px 0;display:grid}.summary-row dt{color:var(--muted)}.summary-row dd{text-align:right;margin:0}.price-total{font-size:20px;font-weight:650}.price-breakdown{margin:24px 0 0}.price-breakdown .summary-row{padding:9px 0}.actions{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:40px;padding-top:24px;display:flex}.button{border:1px solid var(--ink);cursor:pointer;background:#fff;border-radius:0;justify-content:center;align-items:center;min-height:48px;padding:11px 20px;font-weight:620;text-decoration:none;display:inline-flex}.button:hover{background:var(--wash)}.button:disabled{border-color:var(--line);color:#999;cursor:not-allowed;background:var(--wash)}.button-primary{color:#fff;background:var(--ink)}.button-primary:hover{color:#fff;background:#343434}.button-danger{color:var(--danger);border-color:var(--danger)}.full-width{width:100%}.text-button{cursor:pointer;background:0 0;border:0;min-height:44px;padding:6px 0;text-decoration:underline}.calendar-overview{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:42px}.calendar-overview summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:54px;font-weight:620;display:flex}.calendar-frame{border:1px solid var(--line);width:100%;min-height:560px}.calendar-link{align-items:center;min-height:44px;margin:8px 0 14px;display:inline-flex}.payment-preview,.toss-shell{border-top:1px solid var(--ink);margin-top:28px;padding-top:24px}.payment-preview p{margin-top:0}.receipt-shell{width:min(100% - 32px,640px);margin:0 auto;padding:52px 0 100px}.receipt-header{text-align:center;margin-bottom:44px}.receipt-header img{width:min(330px,78vw);height:auto;margin:0 auto 36px}.receipt-code{letter-spacing:.03em;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.receipt-status{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);text-align:center;padding:18px 0;font-size:18px;font-weight:650}.admin-shell{width:min(100% - 32px,1120px);margin:0 auto;padding:34px 0 90px}.admin-header{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:20px;margin-bottom:38px;padding-bottom:20px;display:flex}.admin-header img{width:min(260px,46vw);height:auto}.admin-section{margin:44px 0}.admin-table-wrap{border-top:1px solid var(--ink);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:11px 9px}.admin-table th{color:var(--muted);font-weight:600}.admin-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.admin-actions{flex-wrap:wrap;gap:9px;margin-top:18px;display:flex}.login-shell{width:min(100% - 32px,440px);margin:0 auto;padding:70px 0}.login-shell img{width:min(330px,78vw);height:auto;margin:0 auto 50px}@media (max-width:640px){body{font-size:14px}.site-header{padding:26px 18px 22px}.page-main{width:min(calc(100% - 24px), var(--max));padding-top:36px}.page-intro{margin-bottom:34px}.steps{margin-bottom:36px}.step-button{letter-spacing:.01em;min-height:60px;font-size:9px}.section-heading{display:block}.section-heading p{text-align:left;margin-top:7px}.choice-grid,.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.calendar-day,.calendar-blank{min-height:67px}.calendar-day-status{font-size:8px}.slot-choice{grid-template-columns:24px minmax(0,1fr)}.slot-meta{text-align:left;grid-column:2}.summary-row{grid-template-columns:minmax(95px,35%) minmax(0,1fr);gap:10px}.actions{z-index:5;background:#fffffff5;margin-inline:-12px;padding:12px;position:sticky;bottom:0}.actions .button{flex:1}.calendar-frame{min-height:470px}.terms-document{max-height:500px;padding:22px 19px}.admin-form{grid-template-columns:1fr}.admin-header{align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
