/* Based on the current Naver Booking type scale and neutral available-time buttons.
   Kept separate from the store identity artwork and the site editor. */
body:not(.editor-page){font-family:-apple-system,system-ui,Helvetica,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;font-size:15px;line-height:1.6;letter-spacing:-.3px;color:#1c1c1c}
body:not(.editor-page) button,body:not(.editor-page) input,body:not(.editor-page) textarea{letter-spacing:inherit}
body:not(.editor-page) button{font-weight:500}
.detail-intro h1{font-size:28px;line-height:36px;letter-spacing:-.5px;font-weight:600;margin:10px 0}
.detail-tagline{font-size:15px;line-height:24px;color:#424242}
.detail-subtitle{font-size:14px;line-height:22px;color:#60656b}
.detail-meta{font-size:13px;line-height:20px;color:#767a80}
.detail-nav a{font-size:15px;font-weight:500;letter-spacing:-.3px}
.detail-content .site-section h2,.rail-title h2{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.3px}
.detail-content .story-copy p,.detail-content .section-heading p,.section-policies>p,.detail-policies p{font-size:15px;line-height:24px;color:#60656b}
.menu-entry strong,.detail-content .gift-product-info strong{font-size:17px;line-height:24px;font-weight:600}
.menu-entry small,.detail-content .gift-product-info small{font-size:14px;line-height:22px;font-weight:400;color:#60656b}
.menu-entry-price,.detail-content .gift-product-info b{font-size:16px;line-height:24px;font-weight:500;letter-spacing:0;font-variant-numeric:tabular-nums}
.detail-price{font-size:13px;line-height:20px}.detail-price strong{font-size:14px;font-weight:500}
.review-heading>p,.review-heading p{font-size:13px;line-height:21px;color:#60656b}
.guest-review p{font-size:15px;line-height:25px;color:#424242}
.review-list-heading strong{font-size:14px;font-weight:600}.review-score strong{font-weight:600;letter-spacing:-1px}.review-teaser strong,.guest-review-rating{font-weight:600}
.review-powered{letter-spacing:0}.review-teaser-count{font-size:12px}
.rail-date{font-size:14px;line-height:20px;padding-inline:10px;gap:6px}
.rail-date span,.rail-guests>span{white-space:nowrap}
.rail-guests>span{flex-shrink:0;font-size:12px}.rail-guests .stepper{flex-shrink:0}
.quick-dates button{font-weight:400}.quick-dates b{font-weight:500;font-size:17px;line-height:24px}
.rail-instruction{font-size:14px;line-height:21px;color:#424242}
.slot-group h3{font-size:13px;line-height:20px;font-weight:400;color:#60656b}
.slot-group+.slot-group{margin-top:16px}
body:not(.editor-page) .time-grid button{background:#fff;border:1px solid #d9dde1;border-radius:12px;color:#1c1c1c;min-height:44px;padding:10px 6px;font-size:14px;line-height:20px;font-weight:400;letter-spacing:0;font-variant-numeric:tabular-nums;filter:none;box-shadow:none}
body:not(.editor-page) .time-grid button:disabled{background:#f0f2f4;border-color:#f0f2f4;color:#a3a3a3;opacity:1}
body:not(.editor-page) .time-grid button.active:not(:disabled),body:not(.editor-page) .time-grid button[aria-pressed=true]:not(:disabled){background:var(--accent);border-color:var(--accent);color:#123521;font-weight:600}
@media(hover:hover){body:not(.editor-page) .time-grid button:not(.active):not([aria-pressed=true]):hover:not(:disabled){background:#f7f8f9;border-color:#aeb5bc;filter:none}}
body:not(.editor-page) .dialog-head h2{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.3px}
body:not(.editor-page) .dialog-body h3{font-size:17px;line-height:24px;font-weight:600}
body:not(.editor-page) .calendar-head strong{font-size:18px;line-height:26px;font-weight:600}
body:not(.editor-page) .dialog-body .day{font-size:15px;font-weight:400}
body:not(.editor-page) .primary{font-weight:600;font-size:15px}
@media(min-width:761px) and (max-width:1100px){.detail-layout{grid-template-columns:minmax(0,1fr) 320px;column-gap:28px}.booking-rail{padding:18px}.rail-controls{grid-template-columns:minmax(0,1fr) 134px;gap:8px}.rail-date{font-size:13px;padding-inline:8px;gap:4px}.rail-date svg{width:14px}.rail-guests>span{font-size:11px}}
@media(max-width:760px){.detail-intro h1{font-size:26px;line-height:34px}.detail-content .site-section h2,.rail-title h2{font-size:20px;line-height:28px}.detail-nav{gap:22px}.detail-nav a{font-size:14px}.review-heading>p{font-size:12px;line-height:20px}.review-teaser{gap:5px}.review-teaser-count{font-size:11px}.review-teaser .review-verified{margin-left:0}.rail-date{font-size:13px}.guest-review p{font-size:15px;line-height:25px}.slot-group .time-grid{gap:8px}.rail-controls{gap:8px}}
/* A single restaurant footer with a quieter service signature below. */
.restaurant-detail+.brand-footer.store-footer{display:block;background:#f7f8fa;border-top:1px solid #e4e7eb;margin-top:32px;padding:32px max(32px,calc((100% - 1160px)/2)) 22px;color:#353a40}
.store-footer-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;padding-bottom:28px}
.store-footer-identity{display:inline-flex;align-items:center;gap:18px;min-height:52px;margin-bottom:16px}
.store-footer-identity:hover{text-decoration:none}
.store-footer-mark{display:flex;align-items:center;font-size:22px;font-weight:600;letter-spacing:0;color:#1c1c1c}
.store-footer-mark img{display:block;width:100px;height:52px;object-fit:contain}
.store-footer-branch{border-left:1px solid #d8dce1;padding-left:18px;font-size:14px;font-weight:500;line-height:20px;color:#4d535a}
.store-footer-address{font-size:14px;line-height:23px;font-style:normal;word-break:keep-all;overflow-wrap:anywhere}
.brand-footer .store-footer-hours{font-size:12px;line-height:21px;color:#737980;margin:7px 0 0;word-break:keep-all}
.store-footer-contact{align-self:center;min-width:190px;display:flex;flex-direction:column;align-items:flex-start;gap:1px}
.store-footer-label{font-size:12px;line-height:20px;color:#737980}
.store-footer-phone{display:inline-flex;align-items:center;gap:9px;font-size:19px;line-height:26px;font-weight:600;letter-spacing:-.3px;min-height:44px;font-variant-numeric:tabular-nums}
.store-footer-phone svg{width:17px;height:17px;stroke-width:1.6;color:#656b72}
.store-footer-map{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:13px;color:#60666e}
.store-footer-map svg{width:16px;height:16px}.store-footer-map svg:last-child{width:13px;height:13px;margin-left:3px}
.store-footer-bottom{border-top:1px solid #e1e5ea;padding-top:18px;display:flex;align-items:center;gap:24px}
.store-footer-provider{display:grid;gap:6px;min-width:0}
.store-footer-provider>a{display:inline-flex;align-items:center;gap:8px;min-height:32px;width:fit-content;max-width:100%}
.store-footer-provider>a>span{font-size:10px;color:#737980;letter-spacing:0;white-space:nowrap}
.store-footer-provider img{display:block;width:124px;height:21px;object-fit:contain;max-width:100%}
.store-footer-service{font-size:11px;line-height:18px;color:#737980}
.store-footer-currency{font-size:11px;line-height:18px;color:#81878f;margin-left:auto;word-break:keep-all}
.store-footer-top{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:12px;line-height:20px;min-height:44px;flex-shrink:0;color:#60666e}
.store-footer-top svg{width:16px;height:16px}
@media(max-width:760px){
 .restaurant-detail+.brand-footer.store-footer{margin-top:16px;padding:26px 20px calc(104px + env(safe-area-inset-bottom))}
 .store-footer-main{grid-template-columns:1fr;gap:20px;padding-bottom:20px}
 .store-footer-identity{gap:14px;margin-bottom:13px}.store-footer-branch{padding-left:14px;font-size:13px}
 .store-footer-mark img{width:94px;height:49px}.store-footer-address{font-size:13px;line-height:22px}.brand-footer .store-footer-hours{font-size:12px;line-height:21px;margin-top:6px}
 .store-footer-contact{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;row-gap:0;align-items:center;width:100%}
 .store-footer-label{grid-column:1;grid-row:1}.store-footer-phone{grid-column:1;grid-row:2;font-size:17px;line-height:24px;gap:7px}.store-footer-map{grid-column:2;grid-row:1/span 2}
 .store-footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 14px;padding-top:16px}
 .store-footer-provider{grid-column:1;grid-row:1;gap:3px}.store-footer-provider>a{gap:7px}.store-footer-provider img{width:112px;height:19px}
 .store-footer-top{grid-column:2;grid-row:1}.store-footer-currency{grid-column:1/-1;margin:0;font-size:10px}
}
/* Let translated content use its own width, while keeping all touch targets. */
.detail-intro>div:first-child{min-width:0;flex:1}
.detail-share{flex-shrink:0}
.detail-intro h1,.detail-content h2,.detail-content h3{overflow-wrap:anywhere}
.rail-controls{grid-template-columns:minmax(0,1fr) max-content}
.rail-date{min-width:0;text-align:left}
.rail-date span{white-space:normal;overflow-wrap:anywhere;line-height:20px}
.rail-guests{padding-inline:4px;gap:2px;min-height:48px}
.rail-guests .stepper button{width:44px;height:44px;min-height:44px}
.rail-title{flex-wrap:wrap}
.rail-title h2{min-width:0}
.detail-content .menu-entry-price{flex-shrink:0}
body:not(.editor-page) .dialog-head{gap:12px}
body:not(.editor-page) .dialog-head h2{min-width:0;overflow-wrap:anywhere}
body:not(.editor-page) .dialog-foot{flex-wrap:wrap}
body:not(.editor-page) .dialog-foot>button,body:not(.editor-page) .dialog-foot>a{white-space:normal;text-align:center}
body:not(.editor-page) .dialog-foot>.primary{flex:1 1 180px}
.cart-line>div:nth-child(2){min-width:0;overflow-wrap:anywhere}
.cart-thumb{flex-shrink:0}
@media(max-width:760px){
 .mobile-book{gap:12px}
 .mobile-book>div{min-width:0;flex:1}
 .mobile-book>button{min-width:0;flex:0 1 50%;white-space:normal;line-height:22px}
}

/* Citation guidance stays secondary to the restaurant and booking information. */
.store-footer-citation{margin:18px 0 0;color:#656b72;font-size:12px;line-height:1.7;word-break:keep-all;overflow-wrap:anywhere}
.store-footer-citation strong{display:block;color:#4d535a;font-size:12px;font-weight:600;margin-bottom:3px}
.store-footer-citation a{color:inherit;text-decoration:underline;text-underline-offset:3px;display:inline-block;min-height:24px}
#app>.store-footer-citation{max-width:1160px;margin:24px auto;padding:0 20px}
