/* 온라인 예약 화면(/<언어>/booking) — .bk 안에만 적용(사이트 디자인 보호) — 2026-10-27, 삼성비앤에스 bk.css 를 옮겨 색만 이 사이트 것(style.css --accent·--accent-dark)으로 */
.bk{--ink:#111;--brown:#5c483f;--gold:#c6a572;--gold-d:#8c6d45;--beige:#faf6f0;--line:#ece7de;--muted:#6f675f;--ok:#2f7d4f;--bad:#c0392b;--r:14px;
  max-width:1200px;margin:0 auto;padding:56px 20px 90px;color:var(--ink);font-size:15px;line-height:1.6;word-break:normal;overflow-wrap:break-word;text-align:start}
.bk:lang(ko){word-break:keep-all}
@media (max-width:767px){.bk{padding:36px 16px 120px;font-size:14px}}
.bk *,.bk *::before,.bk *::after{box-sizing:border-box}
.bk a{text-decoration:none;color:inherit}
.bk ul,.bk ol{list-style:none;margin:0;padding:0}
.bk h1,.bk h2,.bk h3,.bk h4,.bk p,.bk dl,.bk dd{margin:0}
.bk button,.bk input,.bk select,.bk textarea{font:inherit;color:inherit}
.bk img{max-width:100%;display:block}
.bk [hidden]{display:none!important}
.bk-i{width:18px;height:18px;flex:none;vertical-align:-3px}
.bk-ko::before{content:attr(data-ko)}

/* 첫 화면: 사진 + 정보 카드 */
.bk-top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:991px){.bk-top{grid-template-columns:minmax(0,1fr)}}
.bk-gal__main{position:relative;border-radius:var(--r);overflow:hidden;background:var(--beige);aspect-ratio:16/10}
.bk-gal__main img{width:100%;height:100%;object-fit:cover}
.bk-gal__main img.top{object-position:50% 12%}
.bk-gal__nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.bk-gal__nav.prev{left:12px}.bk-gal__nav.next{right:12px}
.bk-gal__thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.bk-gal__thumbs button{flex:none;width:76px;height:52px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:var(--beige);cursor:pointer;opacity:.72}
.bk-gal__thumbs button.on{border-color:var(--gold);opacity:1}
.bk-gal__thumbs img{width:100%;height:100%;object-fit:cover}

.bk-card{border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;background:#fff;box-shadow:0 6px 24px rgba(59,52,45,.06);position:sticky;top:120px}
@media (max-width:991px){.bk-card{position:static}}
.bk-eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--beige);color:var(--gold-d);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;line-height:1.2}
.bk-title{font-size:28px;line-height:1.25;font-weight:700;margin-top:14px!important;color:var(--ink)}
.bk-title--sm{font-size:22px;margin-top:0!important}
.bk-native{color:var(--muted);font-size:14px;margin-top:4px!important}
.bk-facts{margin:18px 0 0!important;border-top:1px solid var(--line);padding-top:14px!important}
.bk-facts>li{display:flex;gap:10px;align-items:flex-start;padding:7px 0;font-size:14px}
.bk-facts>li>.bk-i{margin-top:2px;color:var(--gold-d)}
.bk-facts small{display:block;color:var(--muted);font-size:12.5px}
.bk-maplink{margin-inline-start:auto;flex:none;color:var(--gold-d)!important;font-weight:600;font-size:13px;white-space:nowrap}
.bk-msgrs{display:flex;flex-wrap:wrap;gap:6px}
.bk-msgrs a{border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:12.5px;line-height:1.6}
.bk-hours{flex:1}
.bk-hours summary{cursor:pointer;list-style:none}
.bk-hours summary::-webkit-details-marker{display:none}
.bk-hours summary::after{content:"";display:inline-block;width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);margin-inline-start:8px;vertical-align:3px}
.bk-hours[open] summary::after{transform:rotate(-135deg);vertical-align:-1px}
.bk-week{border-collapse:collapse;margin-top:8px;font-size:13.5px;width:100%}
.bk-week th{font-weight:500;text-align:start;padding:3px 12px 3px 0;color:var(--muted);white-space:nowrap}
.bk-week td{padding:3px 0}
.bk-week tr.on th,.bk-week tr.on td{color:var(--ink);font-weight:700}
.bk-week .off{color:var(--bad)}
.bk-week small{display:block;color:var(--muted);font-size:12px}
.bk-week--full{max-width:420px;font-size:14.5px}
.bk-week--full th,.bk-week--full td{padding:7px 12px 7px 0;border-bottom:1px solid var(--line);vertical-align:top}
.bk-hero-note{margin-top:16px!important;font-size:13px;color:var(--muted);text-align:center;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.bk-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;margin-top:12px;border:0;border-radius:10px;background:var(--brown);color:#fff!important;font-size:16px;font-weight:700;cursor:pointer;padding:10px 18px;text-align:center;line-height:1.3;transition:background .15s}
.bk-btn:hover{background:#2a241f}
.bk-btn:disabled{opacity:.55;cursor:wait}
.bk-btn--inline{display:inline-flex;width:auto;min-width:220px}
.bk-btn--line{background:#fff;color:var(--ink)!important;border:1px solid var(--line)}
.bk-btn--line:hover{background:var(--beige)}
.bk-sublink{display:block;text-align:center;margin-top:12px;font-size:13.5px;color:var(--muted)!important;text-decoration:underline!important;text-underline-offset:3px}

/* 탭 */
.bk-tabs{display:flex;gap:4px;overflow-x:auto;margin:40px 0 0;border-bottom:1px solid var(--line);position:sticky;top:90px;background:#fff;z-index:5;scrollbar-width:none}
@media (max-width:767px){.bk-tabs{top:58px}}
.bk-tabs::-webkit-scrollbar{display:none}
.bk-tabs a{flex:none;padding:14px 18px;font-size:15px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.bk-tabs a.on{color:var(--ink);border-color:var(--ink);font-weight:600}
.bk-body{max-width:960px;margin:0 auto}
.bk-sec{padding:44px 0 8px;scroll-margin-top:150px}
.bk-h2{font-size:22px;font-weight:700;margin-bottom:18px!important}
.bk-h3{font-size:17px;font-weight:700;margin:28px 0 8px!important}
.bk-lead{font-size:22px;line-height:1.5;font-weight:700;margin-bottom:16px!important}
.bk-p{color:#4b443d;margin-bottom:14px!important}
.bk-how{margin-top:28px;background:var(--beige);border-radius:var(--r);padding:24px}
.bk-how h3{font-size:17px;font-weight:700}
.bk-how ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 6px!important}
@media (max-width:767px){.bk-how ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bk-how li{background:#fff;border-radius:10px;padding:14px;display:flex;gap:10px;align-items:center;font-size:14px;line-height:1.4}
.bk-how li b{flex:none;width:28px;height:28px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px}

.bk-cat{font-size:15px;font-weight:700;color:var(--gold-d);margin:26px 0 12px!important}
.bk-tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (max-width:767px){.bk-tr{grid-template-columns:minmax(0,1fr)}}
.bk-tr__item{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#fff;transition:box-shadow .15s,border-color .15s}
.bk-tr__item:hover{box-shadow:0 4px 14px rgba(59,52,45,.08);border-color:#d8cfc2}
.bk-tr__item img{flex:none;width:96px;height:64px;object-fit:cover;border-radius:8px;background:var(--beige)}
.bk-tr__txt{display:flex;flex-direction:column;min-width:0}
.bk-tr__name{font-weight:700;font-size:15px;line-height:1.35}
.bk-tr__desc{font-size:12.5px;color:var(--muted);line-height:1.45;margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.bk-doc{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:767px){.bk-doc{grid-template-columns:minmax(0,1fr)}}
.bk-doc img{border-radius:var(--r);width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;background:var(--beige)}
.bk-doc h3{font-size:20px;font-weight:700}
.bk-doc h4{font-size:14px;font-weight:700;color:var(--gold-d);margin:18px 0 6px!important}
.bk-doc li{position:relative;padding-inline-start:14px;font-size:14px;color:#4b443d;margin:3px 0}
.bk-doc li::before{content:"";position:absolute;inset-inline-start:0;top:.65em;width:5px;height:5px;border-radius:50%;background:var(--gold)}

.bk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:767px){.bk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bk-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:var(--beige)}

.bk-loc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:767px){.bk-loc{grid-template-columns:minmax(0,1fr)}}
.bk-addr{font-size:16px;font-weight:600}
.bk-addr small{font-weight:400;color:var(--muted);font-size:13.5px}
.bk-cap{font-size:13px;color:var(--muted);margin-top:16px!important}
.bk-copy{display:flex;gap:10px;align-items:center;background:var(--beige);border-radius:10px;padding:10px 12px;margin-top:6px}
.bk-copy .bk-ko{flex:1;font-size:15px;font-weight:600}
.bk-copy button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 10px;font-size:13px;cursor:pointer;flex:none}
.bk-map{width:100%;height:360px;border:0;border-radius:var(--r);background:var(--beige)}
.bk-small{font-size:12.5px;color:var(--muted);margin-top:10px!important}
.bk-muted{color:var(--muted);font-size:14px}
.bk-cta{text-align:center}
.bk-msgbtns{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:6px 0 8px}
.bk-msgbtns a{border:1px solid var(--line);border-radius:999px;padding:8px 18px;font-weight:600;font-size:14px;background:#fff}
.bk-msgbtns a:hover{background:var(--beige)}
.bk-cta .bk-btn--inline{margin-inline:auto}

/* 예약 화면 */
.bk-bookhead{display:flex;gap:12px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:24px}
.bk-back{width:38px;height:38px;border-radius:50%;background:var(--brown);color:#fff!important;display:flex;align-items:center;justify-content:center;flex:none}
.bk[dir=rtl] .bk-back .bk-i,.bk[dir=rtl] .bk-cal__nav .bk-i,.bk[dir=rtl] .bk-gal__nav .bk-i{transform:scaleX(-1)}
.bk-book{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:start}
@media (max-width:991px){.bk-book{grid-template-columns:minmax(0,1fr)}}
.bk-book__cal{border:1px solid var(--line);border-radius:var(--r);padding:18px;background:#fff}
.bk-label{font-size:14px;font-weight:600;color:var(--ink);margin:0 0 10px!important}
.req::before{content:"* ";color:var(--bad)}
.bk-cal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.bk-cal__head strong{font-size:16px}
.bk-cal__nav{width:34px;height:34px;border-radius:50%;border:0;background:var(--beige);display:flex;align-items:center;justify-content:center;cursor:pointer}
.bk-cal__nav:disabled{opacity:.3;cursor:default}
.bk-cal__dow,.bk-cal__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center}
.bk-cal__dow span{font-size:12px;color:var(--muted);padding:6px 0;font-weight:600}
.bk-cal__days button,.bk-cal__days span{height:42px;display:flex;align-items:center;justify-content:center;font-size:14px;border:0;background:none;padding:0}
.bk-cal__days button{cursor:pointer;border-radius:50%;width:40px;margin:2px auto;font-weight:600}
.bk-cal__days button:disabled{color:#cfc8be;cursor:default;font-weight:400}
.bk-cal__days button:not(:disabled):hover{background:var(--beige)}
.bk-cal__days button.today{box-shadow:inset 0 0 0 1px var(--gold)}
.bk-cal__days button.sel{background:var(--brown)!important;color:#fff}
.bk-cal__days.loading{opacity:.4}
.bk-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px;margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.bk-times p{grid-column:1/-1;font-size:13.5px}
.bk-times button{height:40px;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;font-size:14px;font-variant-numeric:tabular-nums}
.bk-times button:hover:not(:disabled){border-color:var(--gold)}
.bk-times button.sel{background:var(--brown);border-color:var(--brown);color:#fff}
.bk-times button:disabled{background:#f4f1ec;color:#c3bcb2;text-decoration:line-through;cursor:default}
.bk-dayinfo{background:var(--beige);border-radius:10px;padding:10px 12px;margin-top:12px;font-size:13px;line-height:1.7}
.bk-dayinfo b{display:block;font-size:13.5px}
.bk-dayinfo span{margin-inline-end:12px;white-space:nowrap}
.bk-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-top:14px}
@media (max-width:767px){.bk-fields{grid-template-columns:minmax(0,1fr)}.bk-f--empty{display:none}}
.bk-f{display:flex;flex-direction:column;gap:6px;font-size:13.5px;font-weight:500;margin:0}
.bk-f>span{color:var(--ink)}
.bk-f--full{grid-column:1/-1}
.bk-f input:not([type=checkbox]):not([type=radio]),.bk-f select,.bk-f textarea{width:100%;height:46px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:15px;background:#fff;font-weight:400}
.bk-f textarea{height:auto;padding:10px 12px;resize:vertical;min-height:96px}
.bk-f input:focus,.bk-f select:focus,.bk-f textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(163,137,91,.15)}
.bk-f .bad,.bk-f .bad input{border-color:var(--bad)!important}
.bk-f em,.bk-err{font-style:normal;color:var(--bad);font-size:12.5px;font-weight:400}
.bk-phone{display:flex;gap:6px}
.bk-phone select{width:128px!important;flex:none;padding:0 8px!important;font-size:14px!important}
.bk-pw{position:relative}
.bk-pw input{padding-inline-end:44px!important;letter-spacing:.2em}
.bk-pw button{position:absolute;inset-inline-end:6px;top:50%;transform:translateY(-50%);border:0;background:none;padding:6px;cursor:pointer;color:var(--muted)}
.bk-seg{display:flex;gap:8px}
.bk-seg label{flex:1;margin:0;cursor:pointer}
.bk-seg input{position:absolute;opacity:0;pointer-events:none}
.bk-seg span{display:flex;align-items:center;justify-content:center;height:46px;border:1px solid var(--line);border-radius:8px;font-weight:500}
.bk-seg input:checked+span{border-color:var(--brown);background:var(--brown);color:#fff}
.bk-seg input:focus-visible+span{box-shadow:0 0 0 3px rgba(163,137,91,.3)}
.bk-agree{border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-weight:400}
.bk-agree>label{display:flex;gap:8px;align-items:flex-start;cursor:pointer;margin:0;font-weight:500}
.bk-agree input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:var(--brown)}
.bk-agree details{margin-top:6px;font-size:12.5px;color:var(--muted)}
.bk-agree summary{cursor:pointer;color:var(--gold-d);text-decoration:underline;text-underline-offset:3px;width:max-content}
.bk-agree details li{margin:6px 0;padding-inline-start:12px;position:relative;line-height:1.55}
.bk-agree details li::before{content:"·";position:absolute;inset-inline-start:0}
.bk-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.bk-alert{background:#fdf0ee;border:1px solid #f2cbc5;color:var(--bad);border-radius:10px;padding:12px 14px;font-size:14px;margin-top:14px!important}
.bk-btn--submit{margin-top:18px;min-height:54px;font-size:17px}

.bk-done{max-width:620px;margin:10px auto 0;text-align:center;border:1px solid var(--line);border-radius:var(--r);padding:36px 26px;background:#fff}
.bk-done__icon{width:64px;height:64px;border-radius:50%;background:#eaf5ee;color:var(--ok);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.bk-done__icon .bk-i{width:32px;height:32px;stroke-width:2.2}
.bk-done h2{font-size:22px;font-weight:700;margin-bottom:10px!important}
.bk-done>p{color:#4b443d}
.bk-done__dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 16px;text-align:start;background:var(--beige);border-radius:10px;padding:16px 18px;margin:20px 0 0!important}
.bk-done__dl dt{color:var(--muted);font-size:13.5px}
.bk-done__dl dd{font-weight:600}
#bkDoneCode{font-size:18px;letter-spacing:.04em;color:var(--gold-d)}
.bk-done__btns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
@media (max-width:767px){.bk-done__btns{grid-template-columns:minmax(0,1fr)}}

/* 내 예약 */
.bk-my{max-width:560px;margin:0 auto}
.bk-mycard{border:1px solid var(--line);border-radius:var(--r);padding:22px;background:#fff;display:grid;gap:14px}
.bk-mylist{display:grid;gap:12px;margin-top:18px}
.bk-res{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#fff}
.bk-res__top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bk-res__code{font-weight:700;letter-spacing:.03em}
.bk-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:600;line-height:1.5}
.bk-badge.requested{background:#fff4dd;color:#9a6a00}.bk-badge.confirmed{background:#e6f4ea;color:var(--ok)}
.bk-badge.cancelled{background:#f1efec;color:var(--muted)}.bk-badge.visited{background:#e8eef9;color:#2d5aa8}.bk-badge.noshow{background:#fbeaea;color:var(--bad)}
.bk-res dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;margin-top:10px!important;font-size:14px}
.bk-res dt{color:var(--muted)}
.bk-res .bk-btn{min-height:42px;font-size:14px;background:#fff;color:var(--bad)!important;border:1px solid #f2cbc5}
.bk-ok{background:#eaf5ee;border:1px solid #c6e6d1;color:var(--ok);border-radius:10px;padding:12px 14px;font-size:14px}
.bk-my>.bk-btn--line{margin-top:18px}

/* 글꼴 — 사이트의 언어별 글꼴(i18n/fonts)은 페이지마다 쓰는 글자만 담은 부분 글꼴이라 이 화면 글자가 빠질 수 있다.
   외국어는 그 문자를 다 가진 기기 글꼴로 통일한다(한국어는 사이트 글꼴 그대로). */
.bk:not(:lang(ko)){font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif}
.bk:lang(zh-Hans){font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Noto Sans CJK SC",system-ui,sans-serif}
.bk:lang(zh-Hant){font-family:"PingFang TC","Microsoft JhengHei","Noto Sans TC","Noto Sans CJK TC",system-ui,sans-serif}
.bk:lang(ja){font-family:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic",Meiryo,"Noto Sans JP","Noto Sans CJK JP",system-ui,sans-serif}
.bk:lang(th){font-family:"Noto Sans Thai","Leelawadee UI",Thonburi,Tahoma,system-ui,sans-serif}
.bk:lang(ar){font-family:"Noto Sans Arabic","Segoe UI","Geeza Pro",Tahoma,system-ui,sans-serif}
.bk:not(:lang(ko)) .bk-ko{font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif}

/* knsy(2026-10-27): 머리 칸 안 탭·사실 줄·한국어판 국가번호 숨김·아래 문의 칸 */
.bk-bookhead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end}
.bk-bookhead .bk-title{margin-top:10px!important}
.bk-facts--row{display:flex;flex-wrap:wrap;gap:2px 18px;border-top:0;padding-top:0!important;margin-top:10px!important}
.bk-facts--row>li{padding:2px 0;font-size:13.5px}
.bk-facts--row a{color:var(--gold-d)!important;font-weight:600}
.bk-bookhead .bk-tabs{position:static;margin:0;border-bottom:0;background:none}
.bk-tabs a[aria-current]{color:var(--ink);border-color:var(--ink);font-weight:600}
.bk-phone--ko select{display:none}
.bk-contact{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);text-align:center}
/* 한국어 띄어쓰기 보정(includes/typo_ko.php)이 칸 안을 <span class="tx"> 로 감싸면 아이콘이 flex 칸에서 빠져 간격(gap)이 사라진다 — 감싸개를 상자 없이(10-27) */
.bk-facts>li>.tx{display:contents}
