@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0c1217;--surface:#131e26;--line:#26333d;--muted:#98a7b3;--blue:#247cff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#f5f7fa;font:16px 'Noto Sans KR',sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #74b2ff;outline-offset:3px}a{color:inherit;text-decoration:none}button{border:0;background:none}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px;font-weight:800}h2{font-size:24px;letter-spacing:-.6px}h3{font-size:18px}small{display:block;color:var(--muted);font-size:13px;margin-top:5px}.rail{width:228px;position:fixed;inset:0 auto 0 0;background:#101920;border-right:1px solid var(--line);padding:35px 25px;display:flex;flex-direction:column}.brand{font-size:29px;font-weight:800;letter-spacing:1px}.brand span{display:block;font-size:9px;letter-spacing:1.3px;color:var(--muted);margin-top:7px}.rail nav{display:grid;gap:10px;margin-top:66px}.nav-item{display:flex;align-items:center;gap:14px;padding:16px;border-radius:12px;color:var(--muted);font-size:14px;font-weight:600}.nav-item.active{background:#17335b;color:#6baaff}.nav-symbol{font-size:23px}.rail-bottom{margin-top:auto;display:flex;align-items:center;gap:12px;font-size:14px}.avatar{display:grid;place-items:center;border:1px solid #517293;background:#253849;width:42px;height:42px;border-radius:50%;font-weight:700}main{margin-left:228px;padding:30px 42px;max-width:1800px}header{display:flex;gap:18px;align-items:center;margin-bottom:20px}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:2px;display:block;margin-bottom:5px}.demo{margin-left:auto;color:#9eabb7;font-size:12px;border:1px solid var(--line);padding:7px 10px;border-radius:30px}.icon-btn{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:24px;background:#15212a}.demo-note{font-size:12px;color:#8c9baa;margin-bottom:20px}.toolbar{display:flex;gap:14px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.search{flex:1;min-width:190px;position:relative}.search input{width:100%;background:#17232d;border:1px solid var(--line);padding:14px 17px;border-radius:12px;color:white}.chips{display:flex;gap:8px;overflow:auto;scrollbar-width:none}.chip{background:#1b2832;border:1px solid transparent;white-space:nowrap;padding:10px 17px;border-radius:30px;font-size:14px}.chip.active{background:var(--blue);color:#fff}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:22px}.map{min-height:580px;position:relative;border-radius:20px;overflow:hidden;background:#172631}.map iframe{width:100%;height:100%;min-height:580px;border:0;filter:invert(.9) hue-rotate(170deg) saturate(.5) brightness(.65)}.map-overlay{position:absolute;bottom:20px;left:20px;right:20px;padding:21px;background:#0d1722ee;border:1px solid #34475c;border-radius:14px;display:flex;align-items:center;justify-content:space-between}.map-overlay p{font-size:13px;color:var(--muted);margin-top:7px}.pin{position:absolute;left:var(--x);top:var(--y);background:#1f78ff;border:3px solid #a6caff;border-radius:50%;width:48px;height:48px;box-shadow:0 0 0 8px #297cff25;font-size:22px}.pin.cafe{background:#90495e;border-color:#efb1bc}.pin.photo{background:#263d49;border-color:#b4d2dc}.results-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 16px}.results-title span{font-size:13px;color:var(--muted)}.place-card{display:block;width:100%;text-align:left;background:#14202a;border:1px solid var(--line);border-radius:15px;overflow:hidden;margin-bottom:14px;padding:0}.place-card img{width:100%;height:132px;object-fit:cover}.card-info{padding:15px}.card-top{display:flex;justify-content:space-between;gap:10px}.tag{font-size:12px;color:#81b6ff}.card-info p{color:var(--muted);font-size:13px;margin-top:7px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.tags span{background:#24323e;border-radius:6px;padding:4px 8px;font-size:12px;color:#c5d0da}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0}.section-head p,.muted{color:var(--muted);font-size:14px;margin-top:8px}.primary{background:var(--blue);border-radius:10px;padding:14px 20px;font-weight:600;color:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid .place-card img{height:210px}.meet-card{background:#131f28;border:1px solid var(--line);border-radius:16px;padding:17px;text-align:left;display:flex;gap:20px;width:100%;margin-bottom:14px;align-items:center}.meet-card img{width:160px;height:125px;object-fit:cover;border-radius:10px}.meet-card p{font-size:14px;color:var(--muted);margin-top:8px}.meet-card .arrow{margin-left:auto;color:#6d8497;font-size:24px}.empty{padding:50px 20px;color:var(--muted);text-align:center}.garage{max-width:820px;margin:auto}.car-hero{position:relative;overflow:hidden;border-radius:20px;background:#18242c;margin-top:25px}.car-hero img{width:100%;height:320px;object-fit:cover}.car-hero .card-info{padding:24px}.stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin:24px 0}.stats strong{font-size:24px}.stats span{display:block;color:var(--muted);font-size:14px;margin-top:8px}.menu-row{width:100%;display:flex;padding:21px 4px;border-bottom:1px solid var(--line);justify-content:space-between;text-align:left}.post{max-width:700px;margin:20px auto;background:#142029;border:1px solid var(--line);border-radius:17px;overflow:hidden}.post-head{display:flex;align-items:center;gap:12px;padding:18px}.post>p{padding:0 20px 18px;line-height:1.8}.post>img{width:100%;height:340px;object-fit:cover}.post-actions{display:flex;gap:20px;padding:16px 20px}.post-actions button{font-size:15px}.bottom-nav{display:none}dialog{background:#111d26;color:white;border:1px solid #344450;border-radius:20px;padding:0;width:min(560px,calc(100% - 24px));max-height:90dvh}dialog::backdrop{background:#02080dcc;backdrop-filter:blur(5px)}.detail-image{height:270px;width:100%;object-fit:cover}.detail-body{padding:25px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.detail-body p{color:#a6b5c2;line-height:1.8;margin:15px 0}.detail-actions{display:flex;gap:12px;margin-top:24px}.detail-actions .primary{flex:1}.secondary{border:1px solid #415368;border-radius:10px;padding:13px 18px}.close-detail{position:absolute;top:14px;right:14px;background:#0b1521cc}form{padding:25px}label{display:block;font-size:14px;margin:20px 0}input,textarea{display:block;width:100%;background:#1a2732;border:1px solid #354550;border-radius:9px;padding:12px;color:white;margin-top:8px;min-width:0}textarea{min-height:85px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}form>.primary{width:100%}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#e3edfa;color:#14202a;padding:13px 22px;border-radius:12px;box-shadow:0 10px 40px #0008;z-index:100;display:none;font-size:14px}.source-note{font-size:12px;color:var(--muted);margin:22px 0}.source-note a{text-decoration:underline}
@media(min-width:1450px){.map-layout{grid-template-columns:minmax(0,1fr) 390px}.place-card img{height:145px}.map,.map iframe{min-height:650px}}@media(max-width:1100px){.rail{width:180px;padding:30px 18px}main{margin-left:180px;padding:25px}.map-layout{grid-template-columns:minmax(0,1fr) 285px}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.rail{display:none}main{margin:0;padding:22px 17px 105px}header{margin-bottom:15px}h1{font-size:28px}.eyebrow{font-size:9px}.demo-note{font-size:12px;line-height:1.6}.demo{font-size:11px;padding:6px 8px}header .icon-btn{width:35px;height:35px}.toolbar{gap:13px}.search{flex-basis:100%}.chips{width:100%;padding-bottom:3px}.chip{padding:9px 16px}.map-layout{display:flex;flex-direction:column;gap:24px}.map,.map iframe{min-height:420px;height:420px;border-radius:16px}.map-overlay{padding:15px;left:12px;right:12px;bottom:12px}.map-overlay h3{font-size:16px}.map-overlay p{font-size:12px}.places-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.place-card{margin:0}.place-card img{height:130px}.card-info{padding:12px}.card-info h3{font-size:15px}.card-top{display:block}.tag{display:block;margin-top:6px}.card-info p{font-size:12px}.tags span{font-size:11px}.bottom-nav{display:flex;align-items:center;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;background:#101b24f5;border-top:1px solid #293946;padding:9px 4px calc(10px + env(safe-area-inset-bottom));z-index:20;backdrop-filter:blur(18px)}.bottom-nav .nav-item{display:flex;flex-direction:column;gap:2px;padding:3px 10px;background:none;font-size:10px;border-radius:0}.bottom-nav .nav-symbol{font-size:22px}.bottom-nav .add-nav{width:48px;height:48px;border-radius:50%;background:#263641;font-size:29px;color:#fff}.grid{grid-template-columns:1fr 1fr;gap:12px}.grid .place-card img{height:130px}.meet-card{padding:12px;gap:13px}.meet-card img{width:100px;height:108px}.meet-card h3{font-size:16px}.meet-card p{font-size:12px}.meet-card .arrow{display:none}.section-head h2{font-size:22px}.section-head .primary{padding:11px 13px;font-size:13px}.car-hero img{height:230px}.car-hero .card-info{padding:20px}.post>img{height:260px}.detail-image{height:230px}#toast{bottom:100px;width:max-content;max-width:90%;text-align:center}.detail-body{padding:20px}}
#mapCanvas{height:100%;min-height:580px;background:#152630}.map-overlay{z-index:500;pointer-events:none}.leaflet-control-attribution{font-size:10px!important;max-width:100%}.map-overlay{bottom:30px}.map-pin{display:grid;place-items:center;width:44px;height:44px;background:#237eff;border:2px solid #a8cdff;border-radius:50%;box-shadow:0 0 0 6px #297cff25;color:white;font-size:23px}.map-pin.pink{background:#995667;border-color:#ebb3c3}.leaflet-control-zoom a{background:#192b38!important;color:#d4e6f5!important;border-color:#40576a!important}.leaflet-container{font-family:inherit}.leaflet-control-attribution a{color:#143b63}.map .leaflet-top{z-index:600}@media(min-width:1450px){#mapCanvas{min-height:650px}}@media(max-width:760px){#mapCanvas{min-height:420px}}

.locate-button{position:absolute;right:10px;bottom:10px;z-index:650;display:flex;align-items:center;gap:5px;padding:7px 9px;background:#152532;color:#fff;border:1px solid #52677b;border-radius:9px;box-shadow:0 3px 14px #0004;font-size:12px;min-height:32px}.locate-button:disabled{opacity:.65;cursor:wait}.location-dot{display:block;width:20px;height:20px;background:#247cff;border:3px solid white;border-radius:50%;box-shadow:0 0 0 5px #247cff30}

/* Theme changes preserve the map, viewport and current-position overlays. */
header .icon-btn{flex-shrink:0}.theme-toggle{font-size:23px}
:root[data-theme="light"]{color-scheme:light;--bg:#f4f7fb;--surface:#fff;--line:#d6e0e9;--muted:#526577}
[data-theme="light"] body{color:#172635}
[data-theme="light"] .rail,[data-theme="light"] .place-card,[data-theme="light"] .meet-card,[data-theme="light"] .post,[data-theme="light"] dialog,[data-theme="light"] .car-hero{background:#fff;color:#172635}
[data-theme="light"] .icon-btn,[data-theme="light"] .chip,[data-theme="light"] input,[data-theme="light"] textarea,[data-theme="light"] .search input{background:#e8eef5;color:#172635;border-color:var(--line)}
[data-theme="light"] .chip.active{background:#1769dc;color:white}
[data-theme="light"] .nav-item.active{background:#dfebff;color:#135fc4}
[data-theme="light"] .tags span,[data-theme="light"] .avatar{background:#e6edf5;color:#374d63}
[data-theme="light"] .tag{color:#165fb8}
[data-theme="light"] .demo,[data-theme="light"] .demo-note,[data-theme="light"] .detail-body p{color:var(--muted)}
[data-theme="light"] .map-overlay{background:#fffffff0;border-color:#c7d5e3}
[data-theme="light"] .locate-button{background:#fff;color:#172635;border-color:#b2c3d4}
[data-theme="light"] .bottom-nav{background:#fffffff5;border-color:var(--line)}
[data-theme="light"] .bottom-nav .nav-item{background:none}
[data-theme="light"] .bottom-nav .add-nav{background:#1769dc}
[data-theme="light"] .close-detail{background:#fffffff0}
[data-theme="light"] .leaflet-control-zoom a{background:#fff!important;color:#172635!important;border-color:#c7d5e3!important}
/* Only Kakao road-map tile images are color-adjusted; pins and attribution stay unchanged. */
[data-theme="dark"] #mapCanvas[data-provider="kakao"] img[src*="/map_k"],
[data-theme="dark"] #mapCanvas[data-provider="kakao"] img[src*="/map_2d"],
[data-theme="dark"] #mapCanvas[data-provider="kakao"] img[src*="mts.daumcdn.net/api/v1/tile/PNGSD02/"],
[data-theme="dark"] #mapCanvas[data-provider="kakao"] img[src*="mts.daumcdn.net/api/v1/tile/PNG02/"]{filter:invert(1) hue-rotate(180deg) brightness(.8) saturate(.7)}
@media(max-width:760px){header{gap:10px}header>div:first-child{margin-right:auto}header .demo{margin-left:0}header .icon-btn{width:36px;height:36px}}
@media(max-width:400px){header .demo{display:none}}

.map-overlay[hidden]{display:none}.map-intro-close{pointer-events:auto;flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;margin-left:8px;border-radius:50%;font-size:28px;line-height:1;color:inherit;touch-action:manipulation}.map-intro-close:hover{background:#8099b326}

/* Keep location within thumb reach and reserve space above it for the intro. */
.map-overlay{bottom:94px}

.visit-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.visit-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.visit-heading h3 span{color:var(--muted);font-size:14px}.visit-heading .primary{font-size:14px;padding:11px 15px}.visit-review{padding:20px 0;border-bottom:1px solid var(--line)}.review-message{white-space:pre-wrap;overflow-wrap:anywhere}.visit-photos{display:flex;gap:8px;overflow-x:auto}.visit-photos img{width:120px;height:100px;object-fit:cover;border-radius:10px}.review-place{font-weight:700;margin-bottom:10px}.review-demo{font-size:13px;line-height:1.6;color:var(--muted);padding:12px;background:var(--bg);border-radius:10px}.review-group{margin:24px 0;padding:0;border:0}.review-group legend{font-weight:600;font-size:16px;margin-bottom:12px}.review-group legend>span{font-weight:400;font-size:13px;color:var(--muted);margin-left:6px}.review-options{display:flex;flex-wrap:wrap;gap:8px}.review-options label{margin:0;position:relative;cursor:pointer}.review-options input{position:absolute;width:1px;height:1px;opacity:0;padding:0;margin:0}.review-options label>span{display:block;padding:11px 14px;border:1px solid var(--line);border-radius:24px;font-size:14px}.review-options input:checked+span{background:#247cff;color:white;border-color:#247cff}.review-options input:focus-visible+span{outline:3px solid #74b2ff;outline-offset:3px}.photo-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.photo-heading .muted{font-size:12px;margin:0}.photo-picker{border:1px dashed #6685a3;padding:18px;border-radius:12px;color:#74b2ff;cursor:pointer;position:relative}.photo-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;width:100%;height:100%}.photo-picker:focus-within{outline:3px solid #74b2ff}.review-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.review-photo-grid>div{position:relative}.review-photo-grid img{width:100%;height:95px;object-fit:cover;border-radius:10px}.review-photo-grid button{position:absolute;right:0;top:0;width:36px;height:36px;background:#101920e8;color:white;border-radius:50%;font-size:24px}.review-error{color:#f79898;font-size:14px;margin:12px 0}.review-submit{margin-top:20px;min-height:48px}[data-theme="light"] .photo-picker{color:#165fb8}[data-theme="light"] .review-error{color:#b32e36}

.place-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.place-detail-heading>div{flex:1;min-width:120px;overflow-wrap:anywhere}.kakao-navi-button{background:#fee500;color:#191919;border-radius:7px;padding:5px 8px;min-height:28px;font-size:12px;font-weight:700;white-space:nowrap;flex-shrink:0}.kakao-navi-button:hover{background:#f4da00}

.place-detail-heading .place-share-actions{flex:0 0 auto;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:5px}.place-share-actions .kakao-navi-button{font-size:11px;padding:3px 6px;min-height:24px;border-radius:6px}.place-share-button{font-size:12px;min-height:28px;padding:4px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:inherit}

.compact-map-zoom{position:absolute;top:12px;right:12px;z-index:600;display:flex;flex-direction:column;border:1px solid #ffffff30;border-radius:10px;overflow:hidden;background:#14212cb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 10px #0002}.compact-map-zoom button{width:34px;height:34px;display:grid;place-items:center;padding:0;color:#f5f7fa;font-size:24px;line-height:1;touch-action:manipulation}.compact-map-zoom button+button{border-top:1px solid #ffffff25}.compact-map-zoom button:hover{background:#ffffff18}.compact-map-zoom button:focus-visible{outline-offset:-3px}[data-theme="light"] .compact-map-zoom{background:#ffffffb3;border-color:#26333d30}[data-theme="light"] .compact-map-zoom button{color:#172635}[data-theme="light"] .compact-map-zoom button+button{border-color:#26333d25}

.locate-button svg{width:16px;height:16px}

.map .map-overlay{bottom:52px}

/* Compact category pins; retain a 44px tap target around the 32px marker. */
.map-pin-hit{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;box-shadow:none;cursor:pointer;border-radius:50%}.custom-pin{display:grid;place-items:center}.map-pin{position:relative;box-sizing:border-box;width:32px;height:32px;padding:0;display:grid;place-items:center;background:var(--pin-color,#277aec);border:1px solid color-mix(in srgb,var(--pin-color,#277aec),white 35%);border-radius:50%;box-shadow:0 2px 4px #0005;color:#fff;pointer-events:none}.map-pin svg{width:21px;height:21px;stroke-width:1.9}.map-pin .pin-car{width:20px;height:20px;transform:translateY(3px)}.map-pin .pin-water{position:absolute;top:2px;width:14px;height:7px;stroke-width:2.5}.map-pin-hit:focus-visible{outline:2px solid #fff;outline-offset:1px}

.pin-name-label{display:block;position:relative;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:8px 12px;margin:0 0 23px;background:var(--surface);color:inherit;border:1px solid var(--line);border-radius:9px;box-shadow:0 3px 12px #0004;font:600 13px/1.4 'Noto Sans KR',sans-serif;cursor:pointer}.pin-name-anchor .pin-name-label{position:absolute;bottom:0;left:0;transform:translateX(-50%)}

.site-footer{margin-top:36px;padding:22px 0 18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.7}.site-footer a{display:inline-block;padding:8px 0;font-size:13px;overflow-wrap:anywhere}.site-footer a:hover{text-decoration:underline}.site-footer p{margin-top:4px}

/* PITMAP visit log: car-first editorial sections. */
#reviewDialog .drive-log-section{padding:22px 0;border-bottom:1px solid var(--line)}#reviewDialog .drive-log-heading{display:flex;align-items:center;gap:10px;font-size:17px;margin:0 0 18px}#reviewDialog .drive-log-heading>span{font-size:12px;letter-spacing:1px;color:#70acff;font-weight:500}#reviewDialog .review-group{margin:18px 0}#reviewDialog .review-group:last-child{margin-bottom:0}#reviewDialog .review-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#reviewDialog .review-options label>span{height:100%;border-radius:8px;padding:12px 10px;font-size:14px;line-height:1.5;background:var(--bg)}#reviewDialog .review-options input:checked+span{background:#17365e;border-color:#5096fa;color:#eff6ff}#reviewDialog .photo-picker{border-style:solid;background:var(--bg);text-align:center;border-color:var(--line)}#reviewDialog .review-submit{width:100%}[data-theme="light"] #reviewDialog .drive-log-heading>span{color:#1767c4}[data-theme="light"] #reviewDialog .review-options input:checked+span{background:#e8f1ff;border-color:#247cff;color:#154f9b}


/* Live premium-fuel results from Opinet. */
.fuel-card{display:flex;align-items:center;padding:16px;gap:13px}.fuel-card .card-info{padding:0;min-width:0;flex:1}.fuel-card-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:13px;background:#b9741c20}.fuel-card-icon .map-pin{width:34px;height:34px}.fuel-card .card-top{align-items:flex-start}.fuel-card .card-top h3{overflow-wrap:anywhere}.fuel-price{color:#ffbd64;font-weight:800;font-size:17px;white-space:nowrap}.fuel-detail-hero{height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:radial-gradient(circle at 50% 35%,#b9741c45,transparent 55%),#111b23;color:#d5dee6;font-size:11px;letter-spacing:2px}.fuel-detail-hero .map-pin{width:48px;height:48px}.fuel-detail-hero .map-pin svg{width:28px;height:28px}.fuel-detail-price{display:flex;align-items:baseline;gap:8px;margin:22px 0 8px}.fuel-detail-price strong{font-size:31px;color:#ffbd64}.fuel-detail-price span{font-size:13px;color:var(--muted)}.opinet-source{display:block;margin-top:18px;color:var(--muted);font-size:12px;line-height:1.6;text-decoration:underline}
@media(max-width:760px){.places-list .fuel-card{grid-column:1/-1}.fuel-detail-hero{height:125px}}

.fuel-controls{margin:14px 0 18px}.fuel-controls[hidden]{display:none}.fuel-sort-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px}.fuel-sort-row label{display:flex;align-items:center;gap:8px}.fuel-sort-row select{width:auto;min-width:130px;padding:10px 12px;border-radius:12px;background:var(--panel);color:inherit;border:1px solid #64748b;font:inherit}.fuel-quality-note{font-size:13px;line-height:1.6;opacity:.75;margin:10px 0 0}
