/* Night storefront tones and geometric packaging stripes. */
:root{--paper:#101b18;--ink:#152b23}
html,body{background:#101b18}
.site-header{height:90px;background:#fffef8;border:0;border-bottom:6px solid #007d51;box-shadow:0 3px #fff4dc,0 7px #f58220;z-index:610}
.site-header:before{display:none}
.preview-badge{background:#ff8525;color:#11291e;border:1px solid #183729;transform:rotate(-5deg);box-shadow:2px 2px 0 #193729}
.workspace{height:calc(100dvh - 90px);padding:25px 23px 23px;gap:18px;grid-template-columns:350px minmax(0,1fr);background:#101b18;position:relative;isolation:isolate}
.workspace:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(135deg,transparent 68%,#007b50 68% 76%,#f6f4e9 76% 77.2%,#ff8525 77.2% 84%,#f6f4e9 84% 85.2%,#006f48 85.2% 93%,transparent 93%),radial-gradient(ellipse at 8% 2%,#28544155,transparent 55%)}
.sidebar{border-radius:18px;background:#fffef8;overflow:hidden;border:1px solid #e4e8da;box-shadow:0 8px 24px #0002}
.finder-header{padding:24px 24px 20px;position:relative;overflow:hidden;background:#fffef8}
.finder-header:before{content:"";position:absolute;right:-65px;top:-45px;width:100px;height:100px;border:15px solid #f58220;box-shadow:0 0 0 7px #fffef8,0 0 0 20px #007d51;transform:rotate(45deg);pointer-events:none;opacity:.95}
.eyebrow{position:relative;max-width:230px;font-size:9px;letter-spacing:1px}
.finder-header h1{font-size:42px;margin:21px 0 13px;line-height:1.15;letter-spacing:-2px}
.finder-header h1 .title-smoothie{color:#007d51}
.finder-header h1 .title-smoothie:after{background:#ffb56b;height:10px;bottom:1px}
.finder-header h1 .title-finder{color:#142820}
.intro{font-size:12px;color:#586b5e;margin-bottom:21px}
.search-form{border-color:#28543d;box-shadow:3px 3px 0 #f6a44e;border-radius:9px}
.search-form:focus-within{box-shadow:3px 3px 0 #007d51}
.regions button{background:#fffef8}.regions button[aria-pressed=true]{background:#007d51;border-color:#007d51}.regions button:hover{background:#fff0dc}
.results-panel{background:#f7f7ef;border-top:1px solid #dce3d3}
.results-header{padding:17px 23px 13px}.results-header h2{font-size:13px}
.store-list{padding:0 13px 16px}.store-item{border-radius:10px;border-color:#dfe4d8;background:#fffefa;padding:15px}
.store-item:hover{background:#fff4e6;border-color:#e2b072}.store-item.selected{background:#edf6e9;border-color:#007d51}
.result-number{background:#172f22}.store-tag{background:#e5f0de;color:#315c3d}
.map-panel{margin:0;border:3px solid #fffef5;border-radius:18px;box-shadow:0 8px 30px #0003}
.map-panel,#map{background:#e7ede3}
.map-location-label{border-radius:8px;border:1px solid #bdcdb9;background:#fffef8f5}
.fit-map{border-radius:8px;box-shadow:2px 2px 0 #f0a253;background:#fffefa}
.spot-cluster{border-color:#fffef4;box-shadow:0 2px 0 #092c3440}
.map-legend{background:#fffefaeb;border-radius:7px}
.promo-carousel{box-shadow:3px 3px 0 #ff8626;border:1px solid #0b6340}
.promo-carousel .matcha-caption strong{background:#ffac55;color:#152f20;box-shadow:none}
#promo-show{background:#ff902f;border-color:#25472e;box-shadow:2px 2px 0 #fff6df;color:#163523}
.mobile-view-switch{background:#fffef8}
@media(min-width:1700px){.workspace{grid-template-columns:390px minmax(0,1fr);padding:28px;gap:22px}.finder-header{padding:30px}.finder-header h1{font-size:48px}}
@media(max-width:1120px) and (min-width:761px){.workspace{grid-template-columns:310px minmax(0,1fr);padding:20px 16px 16px;gap:14px}.finder-header{padding:22px 20px 18px}.finder-header h1{font-size:38px}.eyebrow{font-size:8px}}
@media(max-width:760px){
 .site-header{height:74px;padding:0 18px;border-bottom-width:4px;box-shadow:0 2px #fff4dc,0 5px #f58220}
 .workspace{height:auto;min-height:calc(100dvh - 74px);padding:19px 12px 18px;gap:0}.workspace:before{background:linear-gradient(135deg,transparent 67%,#007b50 67% 77%,#fff8e9 77% 78.2%,#ff8525 78.2% 87%,#fff8e9 87% 88.2%,#007b50 88.2% 96%,transparent 96%)}
 .sidebar{display:contents}.finder-header{padding:22px 20px 18px;border-radius:16px 16px 0 0}.finder-header:before{width:85px;height:85px;top:-51px;right:-38px;border-width:12px;box-shadow:0 0 0 5px #fffef8,0 0 0 15px #007d51}
 .finder-header h1{font-size:31px;margin:15px 0 8px;line-height:1.3}.eyebrow{font-size:8px;letter-spacing:.8px}.intro{margin-bottom:18px;font-size:12px}
 .regions{margin-top:17px}.mobile-view-switch{border-radius:0 0 16px 16px;border-bottom:0}.mobile-view-switch button{font-size:12px}
 .map-panel{margin:12px 0 0;border:2px solid #fffef5;border-radius:16px;height:max(460px,calc(100dvh - 380px))}
 .results-panel{margin-top:12px;border-radius:16px;overflow:hidden}.store-list{padding:0 13px 15px}
}
@media(max-width:360px){.finder-header{padding-left:16px;padding-right:16px}.finder-header h1{font-size:28px}.site-header{padding:0 14px}}
