@font-face{font-family:Pretendard;src:url('assets/fonts/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--blue:#164bfa;--ink:#16243e;--muted:#606c7f;--line:#dfe5ef;--soft:#f5f7fb;--blue-soft:#edf2ff;--radius:7px;color-scheme:light;font-family:Pretendard,'Malgun Gothic',sans-serif;color:var(--ink);background:white}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button,a,select,input,summary{outline-offset:4px} :focus-visible{outline:3px solid var(--blue)}[hidden]{display:none!important}button{color:inherit}svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.shell,.header-inner{max-width:1120px;margin:auto;padding-inline:40px}.preview-note{background:#f0f3fa;color:#47556d;text-align:center;font-size:12px;padding:9px 16px;line-height:1.5}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:68px;height:76px}.brand{font-size:24px;font-weight:850;letter-spacing:-1px;color:var(--blue);white-space:nowrap}.header nav{display:flex;align-self:stretch;gap:32px}.header nav a{display:flex;align-items:center;font-size:15px;font-weight:650;border-bottom:3px solid transparent;padding-top:3px}.header nav a[aria-current=page]{border-color:var(--blue);color:var(--blue)}.intro{padding:55px 0 30px}.eyebrow{font-size:12px;letter-spacing:.06em;color:var(--blue);font-weight:650;margin:0 0 13px}h1{font-size:44px;letter-spacing:-.055em;line-height:1.2;margin:0 0 17px;font-weight:780}h1 span{color:var(--blue)}.intro>p:last-child{font-size:17px;color:var(--muted);line-height:1.6;margin:0}h2,h3,p{word-break:keep-all}.search{display:flex;align-items:center;border:1px solid #aab8d0;border-radius:var(--radius);height:58px;padding-left:20px;overflow:hidden}.search>span{color:#68778e}.search input{border:0;min-width:0;flex:1;padding:15px;font-size:16px;background:transparent}.search input:focus{outline:none}.search:focus-within{outline:3px solid #164bfa44;outline-offset:2px}.search button{height:100%;padding:0 29px;border:0;background:var(--blue);color:white;font-weight:650}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:24px 0}.tile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;position:relative;min-height:168px;padding:23px 20px;background:white;border:1px solid var(--line);border-radius:var(--radius);transition:border-color .15s,background .15s}.tile:hover,.tile[aria-pressed=true]{background:var(--blue-soft);border-color:#a5bbff}.tile svg{width:30px;height:30px;color:var(--blue);margin-bottom:19px}.tile strong{font-size:21px;letter-spacing:-.035em;margin-bottom:8px}.tile small{font-size:13px;color:var(--muted);line-height:1.5}.tile .arrow{position:absolute;right:18px;top:24px;color:var(--blue);font-size:20px}.nearby-banner{display:flex;align-items:center;gap:18px;padding:22px 26px;background:var(--blue-soft);border-radius:var(--radius);margin:7px 0 48px}.nearby-banner>span:first-child{color:var(--blue)}.nearby-banner>span:first-child svg{width:30px;height:30px}.nearby-banner strong{font-size:19px;letter-spacing:-.02em}.nearby-banner p{margin:6px 0 0;font-size:14px;color:var(--muted);line-height:1.5}.banner-action{margin-left:auto;color:var(--blue);font-size:14px;font-weight:600;white-space:nowrap}.section-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.section-top h2{font-size:25px;letter-spacing:-.035em;margin:0}.section-top .eyebrow{margin-bottom:9px}.section-top h2 span{color:var(--blue);font-size:18px;margin-left:6px}.text-button{border:0;background:transparent;font-size:13px;color:var(--blue);padding:12px 0}.filter-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--ink)}.filter-group{display:flex;gap:6px;flex-wrap:wrap}.filter-group button{border:1px solid transparent;border-radius:5px;background:transparent;min-height:42px;padding:9px 13px;font-size:14px;color:var(--muted);font-weight:550}.filter-group button[aria-pressed=true]{color:var(--blue);background:var(--blue-soft)}.filter-group button:hover{border-color:var(--line)}.secondary-filters{display:flex;gap:15px;align-items:center}.secondary-filters label{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:5px}.secondary-filters select{border:1px solid var(--line);border-radius:4px;padding:9px 7px;background:white;color:var(--ink);font-size:13px;min-height:40px}.benefit{border-bottom:1px solid var(--line);scroll-margin-top:110px}.benefit summary{list-style:none;display:grid;grid-template-columns:88px 1fr 138px 20px;align-items:center;gap:20px;padding:27px 0;cursor:pointer}.benefit summary::-webkit-details-marker{display:none}.category-label{color:var(--blue);font-size:13px;font-weight:600}.benefit h3{font-size:19px;line-height:1.4;letter-spacing:-.03em;margin:0 0 7px;font-weight:680}.benefit .summary-copy{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.benefit .value{text-align:right;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.value strong{font-size:17px;color:var(--blue);white-space:nowrap}.value small{font-size:12px;color:var(--muted)}.chevron{font-size:20px;transition:transform .15s}.benefit[open] .chevron{transform:rotate(180deg)}.benefit summary:hover h3{color:var(--blue)}.detail-body{background:var(--soft);padding:25px 28px;margin-bottom:25px;border-radius:var(--radius);margin-left:108px}.detail-body dl{margin:0}.detail-body dl>div{display:grid;grid-template-columns:76px 1fr;gap:16px;padding:11px 0;border-bottom:1px solid var(--line);line-height:1.7;font-size:14px}.detail-body dt{font-weight:650}.detail-body dd{margin:0;color:#44516a}.detail-body .caution{margin:17px 0;font-size:13px;line-height:1.8;color:#5c4930}.source-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:13px;color:var(--blue);text-decoration:underline;text-underline-offset:3px}.review-label{font-size:11px;color:#755a26;padding:3px 6px;background:#faf3df;border-radius:3px;display:inline-block;margin-left:7px;vertical-align:middle}.date-status{font-size:11px;display:inline-block;margin-right:6px;padding:3px 6px;background:var(--blue-soft);color:var(--blue);border-radius:3px}.date-status.ended{color:#717171;background:#ececec}.source-note{display:flex;gap:15px;margin:40px 0 65px;padding:25px 0;border-top:1px solid var(--line)}.source-note>span{color:var(--blue)}.source-note strong{font-size:15px}.source-note p{font-size:13px;color:var(--muted);line-height:1.8;margin:8px 0 0}.source-note p:last-child{font-size:12px}.footer{border-top:1px solid var(--line);padding-top:28px;padding-bottom:32px;display:flex;justify-content:space-between;gap:20px}.footer .brand{font-size:18px}.footer p{font-size:12px;color:var(--muted);line-height:1.8;margin:8px 0 0}.footer>p{text-align:right}.empty{padding:55px 20px;text-align:center;border-bottom:1px solid var(--line)}.empty h3{font-size:20px;margin-top:0}.empty p{color:var(--muted);font-size:14px}.empty button,.primary-link{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:5px;background:var(--blue);color:white;padding:12px 18px;min-height:44px;font-size:14px}.loading{padding:35px;text-align:center;color:var(--muted)}.compact{padding-bottom:28px}.map-toolbar{display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:18px}.label-toggle{font-size:13px;display:flex;gap:8px;align-items:center;min-height:44px}.label-toggle input{accent-color:var(--blue);width:17px;height:17px}.map-layout{display:grid;grid-template-columns:1.6fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:470px;margin-bottom:65px}.map-panel{display:grid;place-items:center;background:var(--soft);padding:35px}.map-empty{text-align:center}.map-empty>span{display:inline-flex;color:#92a3bf;margin-bottom:16px}.map-empty svg{width:46px;height:46px}.map-empty h2{font-size:21px;letter-spacing:-.03em}.map-empty p{font-size:14px;color:var(--muted);line-height:1.8;margin-bottom:23px}.place-panel{padding:26px;border-left:1px solid var(--line)}.place-panel h2{font-size:20px;margin:0}.muted{color:var(--muted);font-size:13px}.place-empty{padding:30px 0;margin-top:26px;border-top:1px solid var(--line)}.place-empty strong{font-size:15px}.place-empty p,.small-note{font-size:13px;color:var(--muted);line-height:1.8}.mobile-only{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-100px;background:var(--blue);color:white;padding:14px;z-index:100}.skip-link:focus{top:12px}
@media(max-width:800px){.shell,.header-inner{padding-inline:24px}.header-inner{height:66px;justify-content:space-between;gap:20px}.brand{font-size:22px}.header nav{gap:22px}.header nav a{font-size:14px}.tiles{grid-template-columns:repeat(2,1fr)}.tile{min-height:158px}.benefit summary{grid-template-columns:1fr 104px 15px;gap:12px}.benefit .category-label{grid-column:1/-1;margin-bottom:-5px}.detail-body{margin-left:0}.map-layout{grid-template-columns:1fr}.map-panel{min-height:350px}.place-panel{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:480px){.shell,.header-inner{padding-inline:20px}.preview-note{font-size:10px}.preview-note span{display:none}.intro{padding:35px 0 24px}h1{font-size:34px}.intro>p:last-child{font-size:15px}.eyebrow{font-size:11px}.mobile-only{display:block}.search{height:54px;padding-left:14px}.search input{padding:12px;font-size:14px}.search button{padding:0 20px;font-size:14px}.tiles{gap:10px;padding:18px 0}.tile{padding:20px 17px;min-height:153px}.tile strong{font-size:19px}.tile small{font-size:12px}.tile svg{width:26px;height:26px;margin-bottom:16px}.nearby-banner{padding:19px 17px;gap:12px;margin-bottom:34px}.nearby-banner strong{font-size:17px}.nearby-banner p{font-size:12px}.banner-action{font-size:0}.banner-action>span{font-size:20px}.section-top h2{font-size:23px}.filter-group{gap:2px}.filter-group button{padding:9px 10px;font-size:13px}.secondary-filters{width:100%;justify-content:flex-end}.benefit summary{padding:22px 0}.benefit h3{font-size:17px}.benefit .summary-copy{font-size:13px}.value strong{font-size:14px}.value small{font-size:11px}.detail-body{padding:16px}.detail-body dl>div{grid-template-columns:52px 1fr;gap:10px;font-size:13px}.review-label{display:none}.source-note{margin:30px 0 35px}.footer{flex-direction:column;gap:5px}.footer>p{text-align:left}.map-panel{padding:25px 15px}.map-empty h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.results-section,#selected-detail{scroll-margin-top:95px}.menu-intro{padding:22px 0 16px}.menu-intro>p{line-height:1.7;margin:0 0 12px;color:var(--muted)}.benefit-browser{display:grid;grid-template-columns:290px minmax(0,1fr);gap:32px;padding-top:24px}.benefit-options{border-right:1px solid var(--line);padding-right:22px}.benefit-choice{display:flex;flex-direction:column;text-align:left;gap:10px;width:100%;padding:18px 16px;border:1px solid transparent;border-bottom-color:var(--line);background:white;border-radius:5px;margin-bottom:8px;min-height:112px}.benefit-choice[aria-pressed=true]{border-color:var(--blue);background:var(--blue-soft)}.benefit-choice:hover{background:var(--soft)}.benefit-choice span{font-size:16px;font-weight:700;line-height:1.45}.benefit-choice small{font-size:12px;color:var(--muted);line-height:1.6}.benefit-choice strong{color:var(--blue);font-size:14px}.benefit-detail h3{font-size:27px;line-height:1.35;letter-spacing:-.04em;margin:0 0 14px}.detail-lead{font-size:15px;color:var(--muted);line-height:1.7}.benefit-highlight{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;background:var(--blue-soft);padding:18px 20px;margin:24px 0}.benefit-highlight strong{font-size:23px;color:var(--blue)}.benefit-highlight span{font-size:13px;color:var(--muted)}.facts{margin:0}.facts>div{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.7}.facts dt{font-weight:650}.facts dd{margin:0}.benefit-detail section{padding:22px 0 0}.benefit-detail h4{font-size:18px;margin:0 0 12px}.benefit-detail section>p{font-size:14px;line-height:1.8}.verification-note{color:var(--muted);font-size:13px!important}.steps{padding-left:24px;margin:0}.steps li{padding:7px 0 7px 5px;font-size:14px;line-height:1.8}.steps li::marker{color:var(--blue);font-weight:700}.benefit-detail .caution{padding:18px 20px;background:#faf6ed;color:#69512e;font-size:13px;line-height:1.85}.detail-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.detail-actions svg{width:18px;height:18px;margin-right:8px}.search-guidance,.match-note{font-size:13px;line-height:1.7;padding:14px 0;color:var(--muted)}.match-note{padding:14px;background:var(--blue-soft)}.match-heading{font-size:13px;color:var(--muted);margin:10px 0 16px}.benefit-detail{padding-bottom:24px;min-width:0}
@media(max-width:800px){.benefit-browser{grid-template-columns:1fr;gap:24px}.benefit-options{display:flex;overflow-x:auto;gap:10px;border:0;padding:0 0 12px}.benefit-choice{flex:0 0 220px;margin:0;border-color:var(--line)}.match-heading{flex:0 0 85px;align-self:center}.benefit-detail{border-top:1px solid var(--line);padding-top:24px}.benefit-detail h3{font-size:24px}.benefit-highlight{padding:16px}.menu-intro>p{font-size:14px}.detail-actions .primary-link{width:100%}}

.map-panel{display:block;position:relative;padding:0;min-width:0;min-height:470px}#kakao-map{width:100%;height:470px}#map-status{position:absolute;left:12px;bottom:36px;right:12px;z-index:3;padding:12px;background:#fffffff2;border:1px solid var(--line);font-size:12px;line-height:1.7}#map-status a{color:var(--blue);text-decoration:underline}#map-retry{position:absolute;left:20px;top:20px;z-index:4;padding:12px;background:white;border:1px solid var(--line)}.map-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}.map-controls span{font-size:13px;color:var(--muted)}@media(max-width:800px){#kakao-map{height:350px}.map-panel{min-height:350px}}
.place-marker{background:var(--blue);color:white;border:2px solid white;border-radius:5px;padding:7px 10px;font:600 13px Pretendard;box-shadow:0 2px 6px #0002;min-width:24px;min-height:30px}.place-item{padding:16px 0;border-bottom:1px solid var(--line)}.place-item.selected{background:var(--blue-soft)}.place-item button{border:0;background:transparent;font-size:16px;font-weight:650;text-align:left;padding:7px 0}.place-item p{margin:5px 0;font-size:12px;line-height:1.6}.place-item a{display:inline-block;color:var(--blue);font-size:12px;padding:10px 0}.place-panel{max-height:650px;overflow:auto}

.provider-list{display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;padding:0;margin:14px 0;font-size:14px;line-height:1.8}.provider-list li{display:flex;align-items:baseline}.provider-list li:not(:last-child)::after{content:"·";padding:0 10px;color:var(--muted)}
.online-links{margin:18px 0}.online-links h5{font-size:14px;margin:0 0 8px}.online-links ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:4px 20px;margin:0}.online-links a{display:inline-block;padding:9px 0;font-size:14px;line-height:1.6;color:var(--blue);text-decoration:underline;text-underline-offset:4px}.online-links p{font-size:12px;color:var(--muted);line-height:1.7}

/* Benefit facts: consistent labels, spacious rules and adjacent source action. */
.benefit-highlight{display:block}.highlight-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.discount-note{margin:12px 0 0;font-size:13px;line-height:1.8;color:#465777;max-width:58ch}
.facts>div{padding:22px 0}.facts dd{min-width:0}.venue-description{margin:0;line-height:1.8}.provider-box{margin:16px 0;padding:18px 20px;background:var(--soft);border:1px solid var(--line);border-radius:6px}.provider-box .provider-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 20px;list-style:disc;margin:0;padding-left:17px;font-size:14px}.provider-box .provider-list li{display:list-item;overflow-wrap:anywhere}.provider-box .provider-list li::marker{color:#8595ad}.provider-box .provider-list li::after{content:none}.venue-row .verification-note{margin:12px 0 0;line-height:1.8}.benefit-detail .how-to{padding-top:30px}.how-to>.verification-note{margin:18px 0 10px}.official-button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:48px;padding:13px 18px;border:1px solid var(--blue);border-radius:6px;background:var(--blue);color:white;font-size:14px;font-weight:650;text-decoration:none;line-height:1.5}.official-button:hover{background:#103bd0;border-color:#103bd0}.official-button>span[aria-hidden]{font-size:20px;font-weight:400}.benefit-detail .caution{margin-top:24px}
@media(max-width:480px){.facts>div{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:20px 0}.provider-box{padding:14px 12px}.provider-box .provider-list{grid-template-columns:1fr;gap:6px;font-size:13px}.official-button{width:100%}.discount-note{font-size:12px}}
#map-search-form{margin-bottom:10px}.map-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:290px;overflow:auto;margin-bottom:20px}.map-result{text-align:left;border:1px solid var(--line);border-radius:5px;padding:14px;background:white;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.map-result[aria-pressed=true]{border-color:var(--blue);background:var(--blue-soft)}.map-result strong{font-size:14px}.map-result span{font-size:11px;color:var(--muted)}.map-result span.verified{color:var(--blue)}.map-result small{width:100%;color:var(--muted);line-height:1.6}.outline-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #a8b8d3;border-radius:5px;min-height:44px;padding:10px 14px;background:white;color:var(--blue);font:600 13px Pretendard;line-height:1.6}.search-place-marker{padding:8px 12px;background:white;color:var(--ink);border:2px solid #536782;border-radius:5px;font:600 13px Pretendard;white-space:nowrap}.route-controls{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0}.route-controls label{display:flex;flex-direction:column;gap:8px;font-size:13px;flex:1;min-width:140px}.route-controls input,.route-controls select{padding:11px;border:1px solid var(--line);border-radius:4px;background:white;min-width:0;width:100%}#fuel-browser{scroll-margin-top:100px}.fuel-stations{list-style:none;padding:0;margin:0 0 20px;max-height:470px;overflow:auto;border-block:1px solid var(--line)}.fuel-stations>li{padding:18px 0;border-bottom:1px solid var(--line)}.fuel-stations>li>div{display:flex;gap:12px;align-items:center}.fuel-stations span,.fuel-stations p{font-size:12px;color:var(--muted)}.fuel-stations details summary{font-size:13px;color:var(--blue);cursor:pointer;padding:10px 0}.fuel-stations details .outline-button{margin:8px 0}.map-toolbar{gap:12px}@media(max-width:480px){.map-search-results{grid-template-columns:1fr}.map-controls{gap:10px}.map-controls .outline-button{width:100%}}
.station-map-canvas{height:240px;width:100%;margin:12px 0}.station-location-choice{display:block;background:white;border:1px solid var(--line);border-radius:4px;min-height:44px;padding:10px;margin:8px 0;width:100%;text-align:left;color:var(--blue)}
@media(max-width:600px){#nearby-view .intro{padding:22px 0 18px}#nearby-view h1{font-size:28px;margin-bottom:10px}#nearby-view .intro>p:last-child{font-size:13px}#nearby-view .eyebrow{margin-bottom:8px}.map-toolbar{gap:4px 12px;margin-bottom:10px}.map-toolbar>.filter-group{width:100%}.map-toolbar .label-toggle{min-height:36px;font-size:12px}.map-controls{margin-bottom:12px}.map-controls span{font-size:11px}.map-search-results{max-height:220px}#map-search-status{margin:8px 0;font-size:12px}}

/* Cultural venue links share the map link spacing and hierarchy. */
.place-item a{margin-right:14px}.place-item .place-visit-note{color:var(--navy);font-size:12px}#map-benefit-context a{color:var(--blue)}
