/* Shared visitor-facing refinements. Scoped to the 2026 layout. */
#sw-main{--sw-ui-ink:#30372b;--sw-ui-muted:#64695f;--sw-ui-line:#e1e3da;--sw-ui-paper:#faf9f5;--sw-ui-green:#4d5b42}
#sw-main.sw-home .sw-reveal{transform:translateY(12px);filter:none}
#sw-main.sw-home .sw-reveal.is-visible{transform:none;filter:none;transition:opacity .3s ease,transform .3s ease;transition-delay:var(--sw-reveal-delay,0ms)}
#sw-main .sw-action,.sw-reservation-dialog .sw-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 18px;border:1px solid #d9ded2;border-radius:12px;background:#fff;color:#38432f;font:inherit;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;box-sizing:border-box;transition:background-color .18s,border-color .18s}
#sw-main .sw-action:hover,.sw-reservation-dialog .sw-action:hover{background:#f1f3ed;border-color:#87967b}
#sw-main .sw-action-primary{background:var(--sw-ui-green);border-color:var(--sw-ui-green);color:#fff}
#sw-main .sw-action-primary:hover{background:#394631}
#sw-main a:focus-visible,#sw-main button:focus-visible,#sw-main input:focus-visible,#sw-main select:focus-visible,.sw-reservation-dialog a:focus-visible{outline:3px solid #7c8e69;outline-offset:4px}
#sw-main .board_contents{padding:64px 0 80px}
#sw-main .board_contents>.wrap>.sub_title{margin-bottom:32px}
#sw-main .sub_title h2{font-size:36px;line-height:1.3;letter-spacing:-.025em}
#sw-main .sub_title{margin-bottom:32px}
#sw-main .sub_title .about_textbox01{margin-top:14px;font-size:17px;line-height:1.7}
#sw-main .sidebar .home,#sw-main .sidebar .depth{box-shadow:0 3px 12px #343b2610;border-radius:12px}
#sw-main .sw-explore-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
#sw-main .sw-directory-intro{display:block;padding:45px 24px;margin:0 0 30px;border:0;border-radius:10px;background:#fbf6ea;text-align:center}
#sw-main .sw-directory-intro img{display:block;width:280px;max-width:80%;height:auto;margin:0 auto 24px}
#sw-main .sw-directory-intro p{font-size:18px;line-height:1.6;margin:0;color:#28231b}
#sw-main .sw-destination-list .place_searchbox{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;height:auto;margin:0 0 28px;padding:20px;border:1px solid var(--sw-ui-line);border-radius:18px;background:var(--sw-ui-paper);box-sizing:border-box}
#sw-main .sw-destination-list .bo_sch_wrap{max-width:100%;margin:0}
#sw-main .sw-original-search select,#sw-main .sw-original-search input[type=search],#sw-main .sw-original-search button{height:46px;border:1px solid var(--sw-ui-line);border-radius:10px;background-color:#fff;font-size:14px}
#sw-main .sw-original-search button{background:var(--sw-ui-green);color:#fff;border-color:var(--sw-ui-green)}
#sw-main #bo_cate ul{display:flex;flex-wrap:wrap;gap:8px}
#sw-main #bo_cate li{width:auto;height:auto;margin:0;background:none}
#sw-main #bo_cate a{display:flex;align-items:center;justify-content:center;min-height:44px;height:auto;width:auto;padding:9px 15px;border:1px solid var(--sw-ui-line);border-radius:12px;background:#fff;color:#48543f;font-size:14px;line-height:1.4;box-sizing:border-box}
#sw-main #bo_cate #bo_cate_on{background:#4d5b42;border-color:#4d5b42;color:#fff}
#sw-main .sw-destination-list #bo_btn_top{margin:0 0 20px}
#sw-main .sw-destination-list #bo_btn_top .sub_title{text-align:left;margin-bottom:10px}
#sw-main .sw-destination-list #bo_btn_top .sub_title h2{font-size:26px}
#sw-main .sw-destination-list #bo_btn_top .about_textbox01{font-size:15px;margin-top:8px;text-align:left}
#sw-main .sw-destination-list .place_list>li{padding:22px;gap:24px;margin:0 0 20px;border:1px solid var(--sw-ui-line);border-radius:18px;background:#fff;box-sizing:border-box}
#sw-main .sw-destination-list .place_list>li>.imgbox{width:260px;flex-shrink:0;margin:0;overflow:hidden;border-radius:12px}
#sw-main .sw-destination-list .place_list>li>.imgbox img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
#sw-main .sw-destination-list .place_list>li>.infobox{flex:1;min-width:0;width:auto;padding:0;border:0;gap:14px}
#sw-main .sw-destination-list .place_list .titlebox{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;padding:0}
#sw-main .sw-destination-list .place_title{position:static;width:auto;flex:1;min-width:180px;font-size:23px;line-height:1.4;margin:0;word-break:normal}
#sw-main .sw-destination-list .place_info{width:43%;padding:0;margin:0}
#sw-main .sw-destination-list .place_textbox{flex:1;min-width:0;padding:0;margin:0}
#sw-main .sw-destination-list .place_explanation{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;height:auto;max-height:none;font-size:14px;line-height:1.75;margin-bottom:16px;color:var(--sw-ui-muted)}
#sw-main .sw-destination-list .place_info_list dl{line-height:1.65;font-size:14px}
#sw-main .place_btn,#sw-main .sw-map-tools .btn,#sw-main .sw-map-fallback .btn{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:44px;height:auto;padding:10px 16px;border:1px solid #d9ded2;border-radius:10px;background:#f5f6f0;color:#38432f;line-height:1.4;font-size:14px}
#sw-main .place_btn::after{position:static;margin-left:10px}
#sw-main .place_btnbox{justify-content:flex-start;margin-top:0}
#sw-main .sw-map-fallback .btn{margin-top:18px}
#sw-main .sw-map-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;margin:0 0 20px;padding:0;list-style:none}
#sw-main .sw-map-legend li{display:flex;align-items:center;gap:8px;font-size:14px;color:#485043}
#sw-main .sw-map-legend img{width:24px;height:32px;object-fit:contain}
#sw-main .sw-map-wrap{border-radius:18px;overflow:hidden;border:1px solid var(--sw-ui-line)}
#sw-main .signature_spot_inr>li{border:1px solid var(--sw-ui-line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 4px 20px #28321d05}
#sw-main .signature_spot_inr .imgbox img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
#sw-main .signature_spot_inr .textbox{padding:26px;text-align:left}
#sw-main .signature_spot_inr .textbox h3{font-size:23px;line-height:1.4}
#sw-main .signature_spot_inr .textbox p{font-size:15px;line-height:1.75;color:var(--sw-ui-muted)}
#sw-main .sw-original-marker,#sw-main .cate_icon,#sw-main .signature_spot_inr .maker{box-shadow:inset 0 0 0 1px #00000008}
#sw-main .sw-original-marker[data-category="쉼"],#sw-main #bo_v_title .cate_icon01,#sw-main .signature_spot_inr .maker[data-category="쉼"]{background:#e9f1e5;color:#34532c}
#sw-main .sw-original-marker[data-category="맛"],#sw-main #bo_v_title .cate_icon02,#sw-main .signature_spot_inr .maker[data-category="맛"]{background:#f9e9e3;color:#883e2b}
#sw-main .sw-original-marker[data-category="멋"],#sw-main #bo_v_title .cate_icon03,#sw-main .signature_spot_inr .maker[data-category="멋"]{background:#e5f1f2;color:#27606a}
#sw-main #gw_gl_s>li:not(.gw_gl_empty){border:1px solid var(--sw-ui-line);border-radius:18px;overflow:hidden;background:#fff}
#sw-main .sw-directory-intro + .directory_inr .directory_btn{width:370px;height:62px;min-height:62px;padding:0 24px;border:0;border-radius:3px;font-size:16px}
#sw-main .sw-directory-intro + .directory_inr .directory_btn01{background:#ffd16a;color:#28231b}
#sw-main .sw-directory-intro + .directory_inr .directory_btn02{background:#3d3931;color:#fff}
#sw-main .sw-directory-intro + .directory_inr a.directory_btn01:hover{background:#ffc34a}
#sw-main .sw-directory-intro + .directory_inr a.directory_btn02:hover{background:#222}
#sw-main .board_contents>.wrap:has(>.sw-directory-intro)>.sub_title{margin-bottom:100px}
#sw-main .board_contents>.wrap:has(>.sw-directory-intro)>.sub_title h2{font-size:48px;line-height:1.3;letter-spacing:0}
#sw-main #bo_v_title.sw-place-heading{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:0;margin:0 0 20px;border:0}
#sw-main .sw-place-heading .bo_v_tit{font-size:36px;line-height:1.3;word-break:normal;overflow-wrap:anywhere}
#sw-main .sw-place-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
#sw-main .sw-participation-detail .view_top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;margin-bottom:40px}
#sw-main .sw-participation-detail .info_left,#sw-main .sw-participation-detail .info_right{width:auto;min-width:0;padding:0}
#sw-main .sw-participation-detail #bo_v_img{border-radius:18px;overflow:hidden}
#sw-main .sw-participation-detail .map_info{width:100%;border-top:1px solid var(--sw-ui-line)}
#sw-main .sw-participation-detail .map_info dl{line-height:1.7}
#sw-main .sw-participation-detail #bo_v_con{font-size:16px;line-height:1.85;max-width:960px}
#sw-main .sw-participation-detail .bo_v_nb .nb_date{display:none}
#sw-main .sw-participation-detail .bo_v_nb .no_link{visibility:hidden}
#sw-main .sw-participation-detail .bo_v_nb .nb_list{width:90px;height:48px;border-radius:12px;background:none}
#sw-main .sw-participation-detail .bo_v_nb .nb_list a{display:flex;align-items:center;justify-content:center;width:100%;border-radius:12px;background:#4d5b42;color:#fff}
#sw-main .sw-participation-detail .bo_v_nb .nb_list .sound_only{position:static!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;font-size:14px!important;line-height:1.5!important;overflow:visible!important}
#sw-main .sw-empty-state,#sw-main .sw-program-pending{min-height:0;padding:48px 24px;background:var(--sw-ui-paper);border:1px solid var(--sw-ui-line);border-radius:18px;text-align:center;color:var(--sw-ui-ink);line-height:1.7}
#sw-main .sw-empty-state p,#sw-main .sw-program-pending p{margin:12px 0 24px;color:var(--sw-ui-muted);font-size:16px}
.sw-reservation-dialog .sw-action{width:100%;margin-bottom:12px}
.sw-reservation-dialog{border-radius:18px}
.sw-reservation-dialog .sw-reservation-close{border-radius:12px;background:#4d5b42;color:#fff}
#sw-main .sw-original-about .sub_page_inr{padding-top:64px;padding-bottom:64px}
#sw-main .sw-original-about{padding-top:0}
@media(max-width:1024px){
 #sw-main .sw-destination-list .place_info,#sw-main .sw-destination-list .place_textbox{width:100%;flex:auto}
 #sw-main .sw-participation-detail .view_top{grid-template-columns:1fr;gap:24px}
}
@media(max-width:760px){
 #sw-main .board_contents{padding:52px 0 48px}
 #sw-main .board_contents>.wrap>.sub_title{margin-bottom:24px}
 #sw-main .sub_title h2,#sw-main .sw-place-heading .bo_v_tit{font-size:28px}
 #sw-main .sw-explore-nav{gap:8px;margin-bottom:18px}
 #sw-main .sw-explore-nav .sw-action{flex:1 1 auto;font-size:13px;padding:10px 12px}
 #sw-main .sw-directory-intro{padding:32px 20px;border-radius:10px}
 #sw-main .sw-directory-intro img{width:220px;margin-bottom:22px}
 #sw-main .sw-directory-intro p{font-size:15px}
 #sw-main .board_contents>.wrap:has(>.sw-directory-intro)>.sub_title{margin-bottom:36px}
 #sw-main .board_contents>.wrap:has(>.sw-directory-intro)>.sub_title h2{font-size:28px}
 #sw-main .sw-directory-intro + .directory_inr .directory_btn{width:100%;max-width:370px;min-height:56px;height:56px;padding:0 16px;font-size:14px}
 #sw-main .sw-destination-list .place_searchbox{padding:14px;gap:14px}
 #sw-main #bo_cate{width:100%}
 #sw-main #bo_cate ul{gap:6px}
 #sw-main #bo_cate a{font-size:12px;padding:10px}
 #sw-main .sw-destination-list .place_list>li{padding:16px;gap:18px}
 #sw-main .sw-destination-list .place_list>li>.imgbox{width:100%}
 #sw-main .sw-destination-list .place_list>li>.infobox{width:100%;flex:auto}
 #sw-main .sw-destination-list .place_title{font-size:21px}
 #sw-main .sw-map-legend{gap:8px 14px;justify-content:flex-start}
 #sw-main .sw-map-legend li{font-size:13px}
 #sw-main .sw-map-stage{height:340px}
 #sw-main .sw-place-heading{gap:10px}
 #sw-main .sw-place-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:22px}
 #sw-main .sw-place-actions .sw-action{flex:1 1 auto;font-size:13px;padding:10px 13px}
 #sw-main .sw-participation-detail #bo_v_con{font-size:15px}
 #sw-main .signature_spot_inr .textbox{padding:22px}
 #sw-main .signature_spot_inr .textbox h3{justify-content:flex-start}
 #sw-main .signature_spot_inr .maker{margin:0 0 12px}
 #sw-main .sw-original-about .sub_page_inr{padding-top:52px;padding-bottom:44px}
}
@media(prefers-reduced-motion:reduce){#sw-main .sw-action{transition:none}}

/* Korean directory cards display the registered full description. */
html[lang=ko] #sw-main .sw-destination-list .place_explanation{display:block;-webkit-line-clamp:unset;max-height:none;height:auto;overflow:visible;word-break:keep-all;overflow-wrap:break-word}
