/* Authored shared review design; original recovery assets remain immutable. */
body[data-site-design]{--bg:#fff;--white:#fff;--blue:#1764a5;--green:#1764a5;--line:#d8cfbb;--muted:#655d50;--light-blue:#edf4f8;background:#fff;color:#292a25;font-family:Paperlogy,Pretendard,-apple-system,BlinkMacSystemFont,'Noto Sans KR',sans-serif;font-size:16px;line-height:1.8}
body[data-site-design] :is(main,.header,.footer,.destination-menu){background-color:#fff}
body[data-site-design] :is(h1,h2,h3,h4,p,li,dd,dt,summary,button,input,select,textarea){font-family:inherit}
body[data-site-design] h1{font-size:clamp(1.85rem,3.5vw,2.85rem);line-height:1.4;font-weight:700;overflow-wrap:anywhere}
body[data-site-design] h2{font-size:1.65rem;line-height:1.45;font-weight:600;overflow-wrap:anywhere}
body[data-site-design] h3{font-size:1.13rem;line-height:1.5;font-weight:600;overflow-wrap:anywhere}
body[data-site-design] .container{width:min(100%,1160px);margin-inline:auto;padding-inline:24px}
body[data-site-design] .header-inner{min-height:76px;gap:20px}
body[data-site-design] .destination-switch{font-family:inherit;font-size:14px}
body[data-site-design] :is(.theme-grid,.ic-cards,.tokyo-grid,.th-event-grid,.discovery-cards,.stay-grid,.eu-grid,.osaka-departure-cards){align-items:start}
body[data-site-design] :is(.theme-card,.ic-card,.tokyo-note-card,.question-result,.travel-question-card,.nearby-card,.shopping-card,.th-event,.eu-card,.context-booking-card,.shop-hero-card,.osaka-departure-card){background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px;min-width:0;min-height:0;height:auto;align-self:start;overflow-wrap:anywhere}
body[data-site-design] .travel-questions .travel-question-card{padding:14px;height:auto;align-self:start}
body[data-site-design] .travel-questions .travel-question-card .official-link{min-height:0}
@media(max-width:500px){body[data-site-design] .travel-questions .travel-question-card{padding:12px}}
body[data-site-design] :is(.theme-card,.nearby-card,.shopping-card,.travel-question-card,.ic-card)>:is(.button,a):last-child{margin-top:12px;flex-grow:0}
body[data-site-design] :is(.button,.save-button){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 18px;border:1px solid var(--blue);border-radius:6px;background:#fff;color:var(--blue);font:600 14px/1.6 Paperlogy,Pretendard,sans-serif;white-space:normal}
body[data-site-design] :is(.button.primary,.primary.button){background:var(--blue);color:white;box-shadow:none}
body[data-site-design] :is(button[aria-pressed=true],.selected,.active){border-color:var(--blue)}
body[data-site-design] :is(a,button,summary,input,select):focus-visible{outline:3px solid #1764a5;outline-offset:4px}
body[data-site-design] :is(.theme-card,.ic-card,.shopping-card,.travel-question-card):hover{border-color:var(--blue)}
body[data-site-design] .site-section-nav{display:flex;flex-wrap:nowrap;gap:20px;align-items:center;overflow-x:auto;max-width:100%;scroll-snap-type:x proximity;padding-block:10px}
body[data-site-design] .site-section-nav a{flex:none;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;color:#54616c;font-size:14px;scroll-snap-align:start}
body[data-site-design] .site-section-nav a[aria-current=page]{color:var(--blue);font-weight:700;border-bottom:2px solid var(--blue)}
/* Keep every Osaka section folder in the same simple underline style. */
body[data-osaka-page-shell="selector"] .site-section-nav a{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding-inline:0!important;text-decoration:none!important}
body[data-osaka-page-shell="selector"] .site-section-nav a[aria-current=page]{color:var(--blue)!important;font-weight:700;border:0!important;border-bottom:2px solid var(--blue)!important;background:transparent!important;box-shadow:none!important}
body[data-site-design] :is(.nearby-scroll,.nearby-grid,.nearby-cards){display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;align-items:flex-start;padding-bottom:12px}
body[data-site-design] .nearby-card{flex:0 0 calc((100% - 32px)/3);scroll-snap-align:start}
body[data-site-design] .site-question-preview{margin-block:32px}
body[data-site-design] .site-question-preview>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
body[data-site-design] .site-question-preview a{display:block;padding:18px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--blue)}
body[data-site-design] .site-question-preview>a{display:inline-flex;margin-top:12px;border:none;padding:8px 0}
body[data-site-design] details.iq-map{margin-block:24px;background:white}
body[data-site-design] details.iq-map>summary{font-weight:600;color:var(--blue);min-height:44px}
@media(max-width:700px){body[data-site-design] .container{padding-inline:20px}body[data-site-design] .nearby-card{flex-basis:82%}body[data-site-design] .site-question-preview>div{grid-template-columns:1fr}body[data-site-design] .header-inner{gap:12px}}
body[data-site-design] .osaka-shopping-options>article{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px;height:auto;min-height:0;align-self:start}
body[data-site-design] .osaka-shopping-options{align-items:start}
body[data-site-design] :is(.summer-hero,.hokkaido-hero,.okinawa-hero,.detail-wrap,.selector-intro,.page-intro){background-color:#fff}
body[data-site-design] .site-home-questions-replaced .question-list{display:none}
body[data-site-design] :is(.it-city-card,.action-card,.tableware-card,.area-card,.it-shopping-card,.trip-card,.it-day-card,.shop-mini-card,.tokyo-daycard,.booking-card,.secondhand-card,.eh-compact-card,.liquor-card,.hr-ferry-card,.shop-itinerary-card,.pass-card,.coupon-card){background-color:#fff;border:1px solid var(--line);border-radius:8px;min-width:0;min-height:0;height:auto;align-self:start;overflow-wrap:anywhere}
body[data-site-design] :is(.it-grid,.action-grid,.context-booking-grid,.ic-other-cards,.it-duration-grid){align-items:start}
body[data-site-design] :is(.ic-card,.eu-card,.trip-card,.pass-card,.tableware-card,.liquor-card,.secondhand-card){flex-grow:0}

body[data-site-design] :is(.site-question-preview,.travel-questions) [hidden]{display:none!important}
body[data-site-design] .site-transport-columns{display:block;columns:2;column-gap:24px}
body[data-site-design] .site-transport-columns>article{break-inside:avoid;display:block;margin:0 0 24px;width:100%;height:auto}
@media(max-width:700px){body[data-site-design] .site-transport-columns{columns:1}}

/* Osaka top-level pages reuse the existing itinerary selector shell. */
body[data-osaka-page-shell] main.container{padding-top:24px;padding-bottom:48px}
body[data-osaka-page-shell] main.container .container{width:100%;padding-inline:0}
body[data-osaka-page-shell] :is(.page-intro,.iq-country-heading,.pass-hero){margin:0 0 32px;padding:0;background:#fff;color:#292a25;border:0}
body[data-osaka-page-shell] :is(.page-intro,.iq-country-heading,.pass-hero) h1{margin:10px 0 4px;color:#292a25}
body[data-osaka-page-shell] .question-list.theme-grid{align-items:start}
body[data-osaka-page-shell] :is(.daytrip-card,.pass-card,.pass-ticket,.iq-conclusion){height:auto;min-height:0;border-radius:8px;align-self:start}
body[data-osaka-page-shell] .daytrip-grid.theme-grid{gap:18px;align-items:start}
body[data-osaka-page-shell] .pass-hero{display:grid;grid-template-columns:minmax(0,680px) minmax(0,1fr);gap:24px}
body[data-osaka-page-shell] .pass-section{margin-block:32px}
body[data-osaka-page-shell] .pass-grid.theme-grid{align-items:start;gap:18px}
body[data-osaka-page-shell] .pass-card p{margin-block:8px}
body[data-osaka-page-shell] .pass-card-bottom{margin-top:16px}
@media(max-width:700px){body[data-osaka-page-shell] .pass-hero{grid-template-columns:1fr}body[data-osaka-page-shell] .pass-grid.theme-grid{grid-template-columns:1fr}}
body[data-osaka-page-shell] .site-section-nav{scroll-snap-type:none;scroll-padding-inline:24px}
body[data-osaka-page-shell] .site-section-nav a{scroll-margin-inline:8px}
body[data-osaka-page-shell] .site-section-nav{scroll-behavior:auto}

/* Use the itinerary intro measure on every Osaka top-level page. */
body[data-osaka-page-shell] :is(.page-intro,.iq-country-heading){max-width:680px}
body[data-osaka-page-shell] .pass-hero>div:first-child{max-width:680px}
