:root{font:var(--text-body-size)/var(--text-line-height) var(--font-sans);color:var(--text-primary);background:var(--canvas);-webkit-text-size-adjust:100%}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--canvas);overflow-wrap:anywhere}main{max-width:1200px;margin:0 auto;padding:16px;min-width:0}h1{font-size:22px;margin:8px 0 12px}h2{font-size:17px;margin:0 0 8px}h3{font-size:15px;margin:12px 0 6px}p{margin:6px 0}small,.muted{color:var(--text-secondary)}small{font-size:13px}a{color:var(--accent)}img,svg,video,iframe{max-width:100%}pre{white-space:pre-wrap;margin:0;font:inherit}nav{display:flex;flex-wrap:wrap;gap:4px 2px;margin:0 0 12px;padding:6px;background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-card);font-size:0}nav a{font-size:14px;padding:6px 10px;border-radius:var(--radius-control);text-decoration:none;color:var(--text-primary)}nav a:hover{background:var(--surface-field)}nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}section>section,form>section,[data-testid=screen-service-form]>section,.card{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-card);padding:14px;margin:0 0 var(--gap)}fieldset{border:1px solid var(--hairline);border-radius:var(--radius-control);padding:10px;margin:8px 0;min-width:0}legend{padding:0 4px;color:var(--text-secondary);font-size:13px}label{display:block;margin:8px 0}label:has(>input[type=radio]),label:has(>input[type=checkbox]){display:flex;align-items:center;gap:8px}input,select,textarea,button{font:inherit;color:inherit}input:not([type=radio]):not([type=checkbox]),select,textarea{max-width:100%;padding:7px 10px;border:1px solid var(--hairline);border-radius:var(--radius-control);background:var(--surface-card);min-height:36px}textarea{display:block;width:100%;min-height:80px;margin-top:4px;resize:vertical}input[type=number]{width:110px}input[type=time]{width:140px}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:36px;padding:6px 14px;margin:2px 4px 2px 0;border:1px solid var(--hairline);border-radius:var(--radius-control);background:var(--surface-card);color:var(--text-primary);cursor:pointer;text-decoration:none;font-size:14px}button:hover:not(:disabled){background:var(--surface-field)}button:disabled,button[aria-disabled=true]{opacity:.45;cursor:not-allowed}button.primary,.button.primary,[data-testid^=save-],[data-testid=confirm-action],[data-testid=confirm-submit],[data-testid=pay-submit],[data-testid=book]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);font-weight:600}button.primary:hover:not(:disabled),[data-testid^=save-]:hover:not(:disabled){filter:brightness(1.08);background:var(--accent)}button.primary:disabled,button[data-testid^=save-]:disabled,button[data-testid=confirm-action]:disabled,button[data-testid=confirm-submit]:disabled,button[data-testid=pay-submit]:disabled,button[data-testid=book]:disabled{background:var(--surface-field);border-color:var(--hairline);color:var(--text-secondary);opacity:1}button.link{border:0;background:none;color:var(--accent);padding:4px 0;min-height:0}button[aria-pressed=true],button[aria-pressed=true]:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}ul.list,ul.cards,[data-testid=screen-bookings] ul,[data-testid=screen-my-bookings] ul{list-style:none;padding:0;margin:0 0 var(--gap);display:grid;gap:8px}ul.list>li,ul.cards>li,[data-testid=screen-bookings] li,[data-testid=screen-my-bookings] li{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-card);padding:12px 14px}ul.list>li>a:first-child,ul.cards>li>a,a[data-testid=booking-card]{color:var(--text-primary);text-decoration:none;display:block}.description-line{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description{white-space:pre-line;color:var(--text-primary);background:var(--surface-field);padding:8px 10px;border-radius:var(--radius-control)}.filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 var(--gap)}.filters a,.filters button{padding:5px 12px;border:1px solid var(--hairline);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-primary);text-decoration:none;font-size:14px;margin:0;min-height:32px}.filters a[aria-current=page],.filters button[aria-pressed=true],.filters button[aria-pressed=true]:hover:not(:disabled){background:var(--text-primary);border-color:var(--text-primary);color:var(--canvas)}.count{font-weight:700}.badge{display:inline-block;padding:1px 8px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;line-height:20px;background:var(--surface-field);color:var(--text-secondary);white-space:nowrap;text-decoration:none}.badge.CONFIRMED,.badge.COMPLETED,.badge.PUBLISHED,.badge.send-SENT,.badge.refund-refunded,.badge.REFUNDED{background:var(--status-ok-soft);color:var(--status-ok)}.badge.REQUESTED,.badge.HELD,.badge.PAYMENT_PENDING,.badge.send-PENDING,.badge.refund-requested,.badge.OPENING_SOON{background:var(--status-wait-soft);color:var(--status-wait)}.badge.VERIFYING,.badge.REFUND_NEEDED,.badge.warning,.badge.refund-not_requested,.badge.send-FAILED{background:var(--status-warn-soft);color:var(--status-warn)}.badge.NO_SHOW,.badge.DECLINED,.badge.refund-rejected,.badge.refund-not_eligible{background:var(--status-bad-soft);color:var(--status-bad)}.badge.CANCELLED,.badge.EXPIRED,.badge.DRAFT,.badge.ARCHIVED,.badge.send-SKIPPED{background:var(--surface-field);color:var(--text-secondary)}[role=alert]{color:var(--status-bad)}.callout{padding:10px 12px;border-radius:var(--radius-control);border:1px solid transparent}.callout.warn{background:var(--status-warn-soft);color:var(--status-warn);border-color:color-mix(in srgb,var(--status-warn) 30%,transparent)}.hint{color:var(--text-secondary);font-size:14px}[role=status]:not(.callout){color:var(--status-ok)}[role=dialog]{background:var(--surface-card);border:2px solid var(--accent);border-radius:var(--radius-card);padding:14px;margin:var(--gap) 0;box-shadow:var(--elevation-floating)}.changed{color:var(--status-warn)}.bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;margin:var(--gap) 0}.month{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0 0 var(--gap);max-width:480px}.calendar button{margin:0;padding:0;min-height:40px}.calendar .cal-wd{display:block;text-align:center}.slots,.cells{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:6px;margin:0 0 var(--gap)}.slots button,.cells button{margin:0}table{border-collapse:collapse;width:100%;font-size:14px;background:var(--surface-card)}th,td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--hairline);vertical-align:top}section:has(>table),div:has(>table){overflow-x:auto}.weekly{display:grid;gap:6px;margin:8px 0 var(--gap)}.weekday{display:grid;grid-template-columns:28px 1fr;gap:6px 10px;align-items:center;background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-control);padding:8px 10px}.weekday .chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.weekday .draft{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px 8px;border:1px dashed var(--hairline);border-radius:var(--radius-control);background:var(--canvas)}.weekday .draft small{width:100%}.weekday .draft input{color:var(--text-secondary)}@media(min-width:720px){.weekday{grid-template-columns:28px 1fr auto}.weekday .draft{grid-column:3}.weekday .draft small{width:auto}}.chip{display:inline-flex;align-items:center;gap:2px;padding:2px 4px 2px 10px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-weight:600;font-size:14px}.chip button{min-height:24px;padding:0 6px;margin:0;border:0;background:none;color:inherit}.checklist ol{list-style:none;padding:0;margin:4px 0;display:grid;gap:4px}.checklist li[data-done=true]{color:var(--status-ok)}.tz-picker{margin:0 0 8px}.tz-picker ul{list-style:none;padding:0;max-height:240px;overflow:auto}@media(max-width:480px){main{padding:12px}h1{font-size:20px}}.row{display:flex;flex-wrap:wrap;gap:0 12px;align-items:flex-end}.row label{margin:6px 0}.bottom.start{justify-content:flex-start}details.list-filter>summary{cursor:pointer;font-weight:600}details.list-filter[open]>summary{margin-bottom:8px}.cal-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px}.cal-toolbar .spacer{flex:1}.cal-toolbar select{width:auto}.seg{display:inline-flex}.seg button{margin:0;border-radius:0}.seg button:first-child{border-radius:var(--radius-control) 0 0 var(--radius-control)}.seg button:last-child{border-radius:0 var(--radius-control) var(--radius-control) 0}.seg button+button{border-left:0}.legend{display:flex;flex-wrap:wrap;gap:4px 12px;list-style:none;padding:0;margin:0 0 8px;font-size:13px;color:var(--text-secondary)}.legend i{display:inline-block;width:12px;height:12px;border-radius:var(--radius-small);margin-right:4px;vertical-align:-1px;border-left:3px solid}.tone-confirmed{background:var(--tone-confirmed-bg);color:var(--tone-confirmed);border-color:var(--tone-confirmed)}.tone-waiting{background:var(--tone-waiting-bg);color:var(--tone-waiting);border-color:var(--tone-waiting)}.tone-verifying{background:var(--tone-verifying-bg);color:var(--tone-verifying);border-color:var(--tone-verifying)}.tone-cancelled{background:var(--tone-cancelled-bg);color:var(--tone-cancelled);border-color:var(--tone-cancelled);text-decoration:line-through}.tone-noshow{background:var(--tone-noshow-bg);color:var(--tone-noshow);border-color:var(--tone-noshow)}.cal-grid{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-card);overflow:auto;max-height:70vh;margin:0 0 8px}.cal-head,.cal-body{display:grid;min-width:min-content}.cal-head{position:sticky;top:0;z-index:2;background:var(--surface-card);border-bottom:1px solid var(--hairline)}.cal-head span{padding:6px;font-size:13px;font-weight:600;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-hours{position:relative}.cal-hours span{position:absolute;right:4px;transform:translateY(-50%);font-size:11px;color:var(--text-secondary)}.cal-hours span:first-child{transform:none}.cal-col{position:relative;border-left:1px solid var(--hairline);cursor:copy;background:linear-gradient(to bottom,var(--hairline) 1px,transparent 1px) 0 0 / 100% 48px}.cal-item{position:absolute;box-sizing:border-box;padding:2px 4px;border-left:3px solid;border-radius:var(--radius-small);font-size:12px;line-height:1.3;overflow:hidden;text-decoration:none;z-index:1;cursor:pointer}.cal-item small{color:inherit;opacity:.85;font-size:11px}.cal-item.compact{white-space:nowrap;text-overflow:ellipsis}.cal-item.compact small{display:none}.cal-more{min-height:0;margin:0;padding:2px;white-space:nowrap;border-color:var(--text-secondary);background:var(--surface-field);color:var(--text-primary);font-weight:600;text-align:center}@media(max-width:700px){.cal-head span{white-space:normal;word-break:keep-all;font-size:12px}}.cal-grid.week .cal-item.compact b{display:none}.cal-block{position:absolute;left:0;right:0;pointer-events:none;background:repeating-linear-gradient(45deg,var(--surface-field) 0 6px,transparent 6px 12px);border-top:1px dashed var(--text-secondary);border-bottom:1px dashed var(--text-secondary)}.cal-block small{display:block;padding:2px 4px;font-size:11px}.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0 0 var(--gap)}.cal-wd{text-align:center;font-size:12px;color:var(--text-secondary)}.cal-month button{margin:0;min-height:64px;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:4px 6px}.cal-month button.out{opacity:.45}.cal-month button.today{border-color:var(--accent)}.cal-month button b{font-size:12px;color:var(--accent)}@media(max-width:480px){.cal-month button{min-height:48px;padding:2px 4px}}table.price-lines{margin:8px 0;border:1px solid var(--hairline);border-radius:var(--radius-control);overflow:hidden}table.price-lines td:last-child,table.price-lines th:last-child{text-align:right;white-space:nowrap}table.price-lines th{font-weight:600}fieldset.methods{display:grid;gap:8px}label.method{display:flex;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;border:1px solid var(--hairline);border-radius:var(--radius-control);background:var(--surface-card);cursor:pointer}label.method.on{border-color:var(--accent);background:var(--accent-soft)}label.method input{margin-top:4px}:root{--canvas: #f6f6f6;--surface-card: #ffffff;--surface-field: #efefef;--surface-hover: #e9e9e9;--surface-selected: #dfdfdf;--text-primary: #202020;--text-secondary: #666666;--text-tertiary: #8e8e96;--text-on-ink: #ffffff;--hairline: rgb(0 0 0 / 8%);--accent: var(--text-primary);--accent-fg: var(--text-on-ink);--accent-soft: var(--surface-selected);--radius-control: 12px;--radius-button: var(--radius-control);--radius-small: 4px;--radius-pill: 999px;--radius-card: 20px;--radius-panel: 24px;--elevation-card: 0 2px 4px rgb(0 0 0 / 2%), 0 8px 24px rgb(0 0 0 / 3%);--elevation-hover: 0 4px 8px rgb(0 0 0 / 3%), 0 12px 28px rgb(0 0 0 / 7%);--elevation-floating: 0 6px 24px rgb(0 0 0 / 7%);--elevation-overlay: 0 16px 56px rgb(0 0 0 / 12%);--glass-rim: inset 0 1px 0 rgb(255 255 255 / 76%);--glass-floating-bg: rgb(255 255 255 / 72%);--blur-floating: blur(8px) saturate(1.15) contrast(1.045);--scrim-bg: rgb(30 35 40 / 12%);--font-sans: system-ui, -apple-system, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--font-strong: "Pretendard JP", var(--font-sans);--text-page-size: clamp(26px, 3.1vw, 36px);--text-display-size: 28px;--text-title-size: 20px;--text-body-size: 15px;--text-caption-size: 13px;--text-line-height: 1.45;--gap: 16px;--motion-hover-travel: -2px;--motion-press-travel: 1px;--motion-entry-travel: 6px;--motion-control-duration: .18s;--motion-entry-duration: .28s;--motion-easing: cubic-bezier(.2, .7, .2, 1);--focus-ring: 2px solid var(--text-primary);--icon-size: 22px;--icon-stroke: 1.5;--content-max-width: 1120px;--mobile-nav-inset: 16px;--safe-bottom: env(safe-area-inset-bottom, 0px);--status-ok: #1f7a3a;--status-ok-soft: #e6f4ea;--status-wait: #285ea8;--status-wait-soft: #e8f0fb;--status-warn: #9a5b00;--status-warn-soft: #fff4e0;--status-bad: #b3261e;--status-bad-soft: #fdecea;--tone-confirmed: var(--status-ok);--tone-confirmed-bg: var(--status-ok-soft);--tone-waiting: var(--status-wait);--tone-waiting-bg: var(--status-wait-soft);--tone-verifying: var(--status-warn);--tone-verifying-bg: var(--status-warn-soft);--tone-cancelled: var(--text-secondary);--tone-cancelled-bg: var(--surface-field);--tone-noshow: var(--status-bad);--tone-noshow-bg: var(--status-bad-soft);--chart-1: var(--text-primary);--chart-2: var(--status-warn);--chart-3: var(--status-bad);--chart-line: var(--status-ok);--chart-axis: var(--text-secondary);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--canvas: #141414;--surface-card: #1f1f1f;--surface-field: #2a2a2a;--surface-hover: #303030;--surface-selected: #3a3a3a;--text-primary: #eeeeee;--text-secondary: #a6a6a6;--text-tertiary: #7d7d85;--text-on-ink: #141414;--hairline: rgb(255 255 255 / 10%);--elevation-card: 0 2px 4px rgb(0 0 0 / 20%), 0 8px 24px rgb(0 0 0 / 20%);--elevation-hover: 0 4px 8px rgb(0 0 0 / 25%), 0 12px 28px rgb(0 0 0 / 30%);--elevation-floating: 0 6px 24px rgb(0 0 0 / 35%);--elevation-overlay: 0 16px 56px rgb(0 0 0 / 50%);--glass-rim: inset 0 1px 0 rgb(255 255 255 / 6%);--glass-floating-bg: rgb(40 40 40 / 72%);--scrim-bg: rgb(0 0 0 / 45%);--status-ok: #74c98d;--status-ok-soft: #17311f;--status-wait: #8ab4f8;--status-wait-soft: #172338;--status-warn: #f0b45a;--status-warn-soft: #3a2a10;--status-bad: #f28b82;--status-bad-soft: #3b1a18;color-scheme:dark}}:root{touch-action:manipulation}body{word-break:keep-all}h1{font-size:var(--text-display-size);line-height:1.25;font-weight:700;letter-spacing:-.01em;margin:16px 0 20px}h2{font-size:var(--text-title-size);line-height:1.3;font-weight:700;margin:0 0 6px}h3{font-size:16px;font-weight:600}small{font-size:var(--text-caption-size)}a{color:var(--text-primary);text-underline-offset:3px}.eyebrow{margin:-12px 0 20px;color:var(--text-secondary);font-size:14px}.price{font-weight:600}.description{background:none;padding:0;color:var(--text-secondary);border-radius:0}button,.button{min-height:44px;padding:10px 18px;margin:0;border:0;border-radius:var(--radius-button);background:var(--surface-field);color:var(--text-primary);font-size:var(--text-body-size);font-weight:500;transition:transform var(--motion-control-duration) var(--motion-easing),background var(--motion-control-duration) var(--motion-easing),box-shadow var(--motion-control-duration) var(--motion-easing)}button:hover:not(:disabled),.button:hover{background:var(--surface-hover)}button:active:not(:disabled),.button:active{transform:translateY(var(--motion-press-travel))}button.primary,.button.primary,[data-testid=confirm-submit],[data-testid=pay-submit],[data-testid=book],[data-testid=range-next],[data-testid=session-next],[data-testid=login-to-book]{background:var(--accent);color:var(--accent-fg);font-weight:600;border:0}button.primary:hover:not(:disabled),.button.primary:hover,[data-testid=confirm-submit]:hover:not(:disabled),[data-testid=pay-submit]:hover:not(:disabled),[data-testid=range-next]:hover:not(:disabled),[data-testid=session-next]:hover:not(:disabled),[data-testid=login-to-book]:hover:not(:disabled){background:var(--accent);filter:none;opacity:.86}button.primary:disabled,button[data-testid=confirm-submit]:disabled,button[data-testid=pay-submit]:disabled,button[data-testid=session-next]:disabled{background:var(--surface-field);color:var(--text-secondary);opacity:1}button[data-testid=save-ics],button[data-testid=save-ics]:hover:not(:disabled){background:var(--surface-field);color:var(--text-primary);font-weight:500;filter:none}button.quiet{min-height:36px;padding:6px 12px;background:var(--surface-field);font-size:14px}button[aria-pressed=true],button[aria-pressed=true]:hover:not(:disabled){background:var(--accent);color:var(--accent-fg);border:0}input:not([type=radio]):not([type=checkbox]),select,textarea{width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:var(--radius-control);background:var(--surface-field)}input[type=radio],input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px;flex:none}fieldset{border:0;padding:0;margin:16px 0}legend{padding:0 0 8px;color:var(--text-primary);font-size:14px;font-weight:600}:focus-visible{outline:var(--focus-ring)!important;outline-offset:2px}.badge{line-height:20px}[role=alert]:not(.site-notice){padding:10px 14px;border-radius:var(--radius-control);background:var(--status-bad-soft);color:var(--status-bad);margin:10px 0}[role=alert] p{margin:4px 0}[role=alert] button{margin:6px 6px 0 0}[role=status]:not(.callout){padding:10px 14px;border-radius:var(--radius-control);background:var(--status-ok-soft);color:var(--status-ok);margin:10px 0}[role=dialog]{border:0;border-radius:var(--radius-card);box-shadow:var(--elevation-overlay);padding:18px}.modal{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:20px;border:0;border-radius:var(--radius-card);background:var(--surface-card);color:var(--text-primary);box-shadow:var(--elevation-overlay)}.modal.wide{width:min(1320px,calc(100vw - 32px));max-width:none}.modal-title{margin:0 0 10px}.modal::backdrop{background:var(--scrim-bg)}.modal>button,.modal .bottom button{margin:8px 8px 0 0}nav,section>section,form>section,[data-testid=screen-service-form]>section,.card,ul.list>li,ul.cards>li,[data-testid=screen-bookings] li,[data-testid=screen-my-bookings] li,.cal-grid,.weekday{border:0;border-radius:var(--radius-card);box-shadow:var(--elevation-card)}h1,h2,h3,th,button.primary,.button.primary,[data-testid=confirm-submit],[data-testid=pay-submit]{font-family:var(--font-strong)}.site{min-height:100dvh;display:flex;flex-direction:column}.site>main{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:8px 32px 56px;flex:1}.site-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:16px;min-height:64px;padding:0 max(32px,calc((100% - var(--content-max-width)) / 2 + 32px));background:var(--surface-card);box-shadow:inset 0 -1px 0 var(--hairline)}.icon{width:var(--icon-size);height:var(--icon-size);flex:none}.site-brand{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary);font-weight:700;font-size:17px;text-decoration:none}.site-back{display:inline-flex;gap:4px;padding:6px 12px 6px 6px;margin:0;border:0;background:none;color:var(--text-primary);font-weight:600}.site-nav{display:flex;gap:4px;margin:0 0 0 auto;padding:0;background:none;border:0;border-radius:0;box-shadow:none;font-size:inherit}.site-nav a{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:64px;padding:0 12px;border-radius:0;color:var(--text-secondary);font-size:var(--text-body-size);text-decoration:none}.site-nav a .icon{width:20px;height:20px}.site-nav a:hover{background:none;color:var(--text-primary)}.site-nav a[aria-current=page]{background:none;color:var(--text-primary);font-weight:700;box-shadow:inset 0 -2px 0 var(--text-primary)}.site-login{margin-left:8px}.site-notice{max-width:var(--content-max-width);margin:0 auto;padding:0 32px}.count-dot{min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--status-bad);color:var(--text-on-ink);font-size:11px;font-weight:700;line-height:18px;text-align:center}.state-page{min-height:100dvh;display:grid;place-content:center;gap:12px;justify-items:center;text-align:center;padding:32px;max-width:none}.state-title{font-size:var(--text-title-size);font-weight:600;margin:0}.busy:before,.loading:before{content:"";display:inline-block;width:16px;height:16px;margin-right:10px;vertical-align:-2px;border:2px solid var(--surface-selected);border-top-color:var(--text-primary);border-radius:50%;animation:spin .9s linear infinite}.loading{color:var(--text-secondary)}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{display:grid;justify-items:center;gap:8px;padding:56px 24px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card);text-align:center}.empty-state p{margin:0}.empty-state .button,.empty-state button{margin-top:12px}.empty-mark{display:grid;place-items:center;width:56px;height:56px;margin-bottom:4px;border-radius:50%;background:var(--surface-field)}.empty-title{font-size:17px;font-weight:600}.empty-inline{padding:16px 0 0;color:var(--text-secondary)}.empty-inline button{margin-top:8px;color:var(--text-primary)}ul.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px}ul.cards>li{padding:0;border:0;background:none}ul.cards>li>a{display:flex;flex-direction:column;gap:8px;height:100%;min-height:148px;padding:22px 24px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--glass-rim),var(--elevation-card);transition:transform var(--motion-control-duration) var(--motion-easing),box-shadow var(--motion-control-duration) var(--motion-easing)}.card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:17px;line-height:1.35}.description-line{color:var(--text-secondary);font-size:14px;margin:0}.card-meta{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:12px;color:var(--text-secondary);font-size:14px}.card-meta .price{color:var(--text-primary);text-align:right}.flow{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:24px;align-items:start}.flow>.flow-main{grid-column:1;grid-row:1}.flow>.flow-aside{grid-column:2;grid-row:1}.flow>[role=alert],.flow>.loading{grid-column:1}.flow-aside{position:sticky;top:76px;padding:24px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card)}.flow-main{min-width:0;padding:24px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card)}.tz-picker{margin:14px 0 0}.month{margin:0 0 12px}.month button{min-width:44px;padding:0;background:none}.month strong{font-size:17px}.calendar{max-width:none;gap:6px;margin-bottom:20px}.calendar .cal-wd{color:var(--text-secondary);font-size:12px;padding:2px 0 6px}.calendar button{aspect-ratio:auto;min-height:48px;background:none;font-weight:600}.calendar button:disabled{color:var(--text-secondary);font-weight:400;opacity:.55}.calendar button:not(:disabled):not([aria-pressed=true]){background:var(--surface-field)}.calendar button:hover:not(:disabled):not([aria-pressed=true]){background:var(--surface-hover)}.calendar button[aria-pressed=true],.calendar button[aria-pressed=true]:hover:not(:disabled){background:var(--accent);color:var(--accent-fg)}.slots,.cells{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.slots button,.cells button{padding-inline:8px;white-space:nowrap;font-variant-numeric:tabular-nums}.allowance-notice{margin:10px 0;padding:10px 14px;border-radius:var(--radius-control);background:var(--status-wait-soft);color:var(--status-wait);font-weight:600;font-size:14px}.allowance-notice[data-refused=true]{background:var(--status-warn-soft);color:var(--status-warn)}.place-filter{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}.place-filter button{min-height:36px;padding:6px 12px;font-size:14px}.slots button:has(.slot-place){flex-direction:column;gap:0}.slots button:has([data-testid=time-sub]){white-space:normal;height:auto;min-width:0}.slots [data-testid=time-sub]{display:block;font-size:11px;font-weight:400;opacity:.8}.slot-place{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;color:inherit;opacity:.75;font-size:12px;font-weight:400}.session-place{grid-column:1 / -1;font-size:14px;opacity:.85}.place-line{margin:10px 0;padding:10px 14px;border-radius:var(--radius-control);background:var(--surface-field)}.place-line p{margin:2px 0}.flow-aside .place-line{margin-top:12px}.party{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;font-weight:600}.party button{min-width:44px;padding:0;font-size:18px}.party [data-testid=party-count]{min-width:44px;text-align:center}.counselors{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.counselors button small{color:inherit;opacity:.8}.spaces{margin:0 0 16px}.spaces button{width:100%;flex-direction:column;align-items:flex-start;gap:2px;padding-block:12px;text-align:left}.spaces .price{font-weight:500}ul.sessions{list-style:none;padding:0;margin:0;display:grid;gap:10px}ul.sessions button{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 12px;text-align:left;justify-items:start;padding:14px 16px}ul.sessions meter{grid-column:1 / -1;width:100%;height:6px}.release{padding:16px;margin:0 0 16px;border-radius:var(--radius-control);background:var(--surface-field)}.bottom{justify-content:flex-end;margin:20px 0 0}.bottom p{margin:0 auto 0 0;font-weight:600}[data-testid=screen-confirm]{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:0 24px;align-items:start}[data-testid=screen-confirm]>*{grid-column:1}[data-testid=screen-confirm]>h1{grid-column:1 / -1}[data-testid=screen-confirm]>.summary{grid-column:2;grid-row:2 / span 30;position:sticky;top:76px;padding:24px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card)}.summary p{margin:8px 0}.summary p:first-child{margin-top:0}[data-testid=confirm-service]{font-size:17px}[data-testid=confirm-span]{font-variant-numeric:tabular-nums}[data-testid=confirm-rules]{margin:12px 0;padding:12px 14px;border-radius:var(--radius-control);background:var(--surface-field);font-size:14px}[data-testid=confirm-next],[data-testid=approval-notice],[data-testid=cancel-rule]{margin:10px 0}[data-testid=cancel-rule][data-closed=true]{color:var(--status-warn)}[data-testid=confirm-total],[data-testid=confirm-amount]{font-size:var(--text-title-size)}[data-testid=confirm-refund-notice]{color:var(--text-secondary);font-size:14px}[data-testid=screen-confirm] label{font-weight:600;font-size:14px}[data-testid=screen-confirm] textarea{margin-top:6px;font-weight:400}[data-testid=screen-pay],[data-testid=screen-done],[data-testid=screen-my-booking]{max-width:640px;margin:0 auto}.pay-card,.pay-state,.done-card,.detail-card{padding:28px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card)}.pay-subject{margin:0 0 16px}.pay-subject strong{font-size:17px}table.price-lines{border:0;border-radius:var(--radius-control);background:var(--surface-field);font-size:14px}table.price-lines td,table.price-lines th{border-bottom:0;padding:10px 14px;vertical-align:middle}[data-testid=pay-amount]{font-size:var(--text-title-size)}label.method{border:0;border-radius:var(--radius-control);background:var(--surface-field);padding:14px}label.method.on{background:var(--surface-card);box-shadow:inset 0 0 0 2px var(--accent)}label.method small{color:var(--text-secondary)}.badge.CONFIRMED{margin-left:6px}[data-testid=hold-timer]{font-weight:700;font-variant-numeric:tabular-nums}.pay-card .bottom button,.pay-state button.primary{width:100%}.pay-state .button{margin-top:12px}.pay-state{display:grid;gap:12px}.pay-state>p{margin:0}.pay-state>button{width:100%}.pay-state>a:not(.button){justify-self:start}.done-card{text-align:center}.done-mark{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--status-ok-soft);color:var(--status-ok)}.done-title{font-size:var(--text-title-size);margin:12px 0}.done-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}nav.tabs{display:inline-flex;gap:2px;padding:4px;margin:0 0 16px;background:var(--surface-field);border:0;border-radius:var(--radius-control)}nav.tabs a{padding:6px 16px;color:var(--text-secondary)}nav.tabs a:hover{background:none;color:var(--text-primary)}nav.tabs a[aria-current=page]{background:var(--surface-card);color:var(--text-primary);box-shadow:var(--elevation-card)}ul.bookings,ul.inbox{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:10px}[data-testid=screen-my-bookings] ul.bookings>li{padding:0;border:0;background:none}a[data-testid=booking-card]{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card);transition:transform var(--motion-control-duration) var(--motion-easing),box-shadow var(--motion-control-duration) var(--motion-easing)}.date-tile{display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:var(--radius-control);background:var(--surface-field);line-height:1.1}.date-tile small{font-size:11px;color:var(--text-secondary)}.date-tile b{font-size:19px}.booking-copy{display:grid;gap:3px;min-width:0}.booking-badges{display:flex;flex-wrap:wrap;gap:4px}.detail-card h2{margin-top:8px}.detail-card>p{margin:10px 0}.detail-card button{margin:12px 8px 0 0}[data-testid=refund-progress],[data-testid=refund-guide]{margin:16px 0;padding:14px 16px;border-radius:var(--radius-control);background:var(--surface-field)}.list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}.list-head p{margin:0;color:var(--text-secondary)}ul.inbox button{display:block;width:100%;height:auto;padding:14px 18px;text-align:left;font-weight:400;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card)}ul.inbox button.read{color:var(--text-secondary)}ul.inbox button:hover:not(:disabled){background:var(--surface-card)}ul.inbox [aria-label="안 읽음"]{color:var(--status-bad);font-size:10px;vertical-align:1px}@media(hover:hover)and (pointer:fine){ul.cards>li>a:hover,a[data-testid=booking-card]:hover{transform:translateY(var(--motion-hover-travel));box-shadow:var(--glass-rim),var(--elevation-hover)}}@media(max-width:760px){input:not([type=radio]):not([type=checkbox]),select,textarea{font-size:16px}:root,:root:not([data-theme=light]){--text-display-size: 24px}.site>main{padding:0 16px calc(104px + var(--safe-bottom))}.site.no-tabs>main{padding-bottom:calc(32px + var(--safe-bottom))}.site-bar{min-height:52px;padding:6px 16px}.site-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;display:flex;flex-wrap:nowrap;gap:0;margin:0;padding:0 0 var(--safe-bottom);background:var(--surface-card);border-radius:0;box-shadow:inset 0 1px 0 var(--hairline)}.site-nav a{flex:1;flex-direction:column;justify-content:center;gap:2px;min-height:56px;padding:6px 4px;border-radius:0;font-size:11px}.site-nav a[aria-current=page]{box-shadow:none;color:var(--accent)}.count-dot{position:absolute;top:2px;right:14px}.no-tabs .site-nav{display:none}.site:not(.no-tabs) .bottom{bottom:calc(64px + var(--safe-bottom))}.site-login{margin-left:auto}.flow,[data-testid=screen-confirm]{display:block}.flow-aside{position:static;padding:18px;margin-bottom:12px}.flow-main{padding:18px}[data-testid=screen-confirm]>.summary{position:static;padding:18px;margin-bottom:12px}.confirm-body{padding:18px}.calendar{gap:4px}.calendar button{min-height:44px}.slots,.cells{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.pay-card,.pay-state,.done-card,.detail-card{padding:20px}ul.cards>li>a{min-height:120px;padding:18px}.bottom{position:sticky;bottom:calc(8px + var(--safe-bottom));z-index:10;padding:10px;margin:16px -6px 0;border-radius:var(--radius-card);background:var(--surface-card);box-shadow:var(--elevation-floating)}.bottom button{flex:1}.bottom a{flex:1;text-align:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition:none!important}ul.cards>li>a:hover,a[data-testid=booking-card]:hover,button:active{transform:none!important}}@media(prefers-reduced-transparency:reduce){.site-nav{background:var(--surface-card)!important;backdrop-filter:none!important}}@media(forced-colors:active){ul.cards>li>a,a[data-testid=booking-card],.flow-aside,.flow-main,.summary,.pay-card,.pay-state,.done-card,.detail-card,.empty-state,label.method,button{outline:1px solid CanvasText}button[aria-pressed=true]{outline:3px solid Highlight}}.mini-intro{white-space:pre-line;margin:0 0 20px}.step-back{margin:0 0 12px;min-height:36px;padding:6px 12px;font-size:14px}ul.choice-list{list-style:none;display:grid;gap:10px;margin:0;padding:0}ul.choice-list>li{padding:0;border:0;background:none}ul.choice-list button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;text-align:left}ul.choice-list button[aria-pressed=true]{background:var(--surface-selected)}.done-actions a.button{text-align:center}.cover{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover}.cover-plate{display:grid;place-items:center;background:var(--accent-soft);color:var(--text-secondary);font-size:40px;font-weight:700}ul.cards>li>a{padding:0;overflow:hidden;gap:0}.card-body{display:flex;flex:1;flex-direction:column;gap:6px;padding:18px 20px 20px}.card-facts{display:flex;flex-direction:column;gap:2px;margin-top:auto;padding-top:10px}.card-facts small{color:var(--text-secondary)}.card-facts .price{margin-top:6px}.mini-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;align-items:center;margin:24px 0}.mini-hero .cover{border-radius:var(--radius-card)}.mini-hero h1{margin:0 0 10px}.mini-name{display:flex;align-items:center;gap:12px}.mini-name .site-logo{height:40px;max-width:120px;margin-bottom:10px}.mini-hero.compact .mini-name .site-logo{height:32px;margin-bottom:0}.site-logo{height:28px;width:auto;max-width:96px;object-fit:contain;border-radius:var(--radius-control)}.mini-hero.compact{display:block;margin:16px 0 20px}.mini-hero.compact h1{margin:0;font-size:var(--text-title-size)}.mini-hero.compact .muted{margin:2px 0 0}.flow-steps{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0 0 20px;padding:0;list-style:none;font-size:14px;color:var(--text-tertiary)}.flow-steps li[data-state=done]{color:var(--text-secondary)}.flow-steps li[data-state=now]{color:var(--text-primary);font-weight:700}.flow-aside h2{font-size:15px;color:var(--text-secondary);font-weight:600}.zone-more{margin-top:12px;font-size:13px;color:var(--text-secondary)}.zone-more summary{cursor:pointer}.time-pick{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px;align-items:start}.time-pick-times h3{margin:6px 0 12px;font-size:16px}.time-pick .slots{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.time-pick .month strong{font-size:18px}.time-pick .month button{min-width:44px;min-height:44px;font-size:18px}.time-pick .calendar .cal-wd{font-size:13px;font-weight:600}.calendar button:disabled{background:none;color:var(--text-tertiary);opacity:1;font-weight:400}@media(max-width:720px){.mini-hero{display:block;margin:8px 0 16px}.mini-hero .cover{margin-bottom:14px}.flow{display:flex;flex-direction:column;gap:12px}.flow>.flow-aside{order:2;width:100%}.flow>.flow-main{order:1;width:100%}.time-pick{display:block}}.skeleton{display:grid;gap:12px;padding:8px 0}.skeleton span{display:block;height:72px;border-radius:var(--radius-control);background:var(--surface-field);animation:skeleton 1.4s ease-in-out infinite}.skeleton span:first-child{height:28px;width:40%}@keyframes skeleton{50%{background:var(--surface-hover)}}@media(prefers-reduced-motion:reduce){.skeleton span{animation:none}}.detail-cover{margin-bottom:16px;overflow:hidden;border-radius:var(--radius-card)}.confirm-body{padding:24px;background:var(--surface-card);border-radius:var(--radius-card);box-shadow:var(--elevation-card)}.confirm-body>*:first-child{margin-top:0}.choice-list,.choice-list>li{min-width:0;max-width:100%}.choice-list button{width:100%;min-width:0;height:auto;white-space:normal}.choice-list .description-line{white-space:normal}.flow-main>*{max-width:100%}.mini-book{display:none}@media(max-width:720px){.mini-book{display:block;position:fixed;z-index:25;left:0;right:0;bottom:calc(57px + var(--safe-bottom));padding:10px 16px;background:var(--surface-card);box-shadow:inset 0 -1px 0 var(--hairline)}.mini-book button{width:100%}.mini{padding-bottom:72px}#flow-start{scroll-margin-top:60px}}.design-notice{white-space:pre-line;margin:12px 0;padding:12px 14px;border-radius:var(--radius-control);background:var(--accent-soft)}
