:root{--bg:#101214;--surface:#181b1e;--surface2:#21252a;--line:#2d3238;--text:#f5f6f6;--muted:#9ba3aa;--accent:#4b82f0;--soft:#4b82f020;--radius:18px;}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 0,var(--soft),transparent 36%);}
button,input,select{font:inherit;}
.shell{max-width:1180px;margin:auto;padding:20px 20px 100px;}
.top{display:flex;justify-content:space-between;align-items:center;}
.brand{font-size:24px;font-weight:900;letter-spacing:-.04em;}
.avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:var(--soft);border:1px solid var(--accent);font-size:21px;}
.switch{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);padding:4px;border:1px solid var(--line);border-radius:14px;margin:24px 0;max-width:420px;}
.switch button,.chip,.toggle,.ghost{border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:10px 13px;border-radius:12px;font-weight:750;}
.switch button{border:0;}
.switch .on,.chip.on,.toggle.on{background:var(--soft);color:var(--text);border-color:var(--accent);}
h1{font-size:clamp(32px,6vw,56px);letter-spacing:-.055em;line-height:1;margin:26px 0 8px;}
.sub,.meta{color:var(--muted);}
.filters,.toggles,.row{display:flex;gap:8px;align-items:center;overflow:auto;}
.filters{padding:18px 0;}
.chip{white-space:nowrap;border-radius:999px;}
.grid{display:grid;grid-template-columns:1fr .8fr;gap:14px;}
.cards{display:grid;gap:9px;}
.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:15px;}
.cardtop{display:flex;justify-content:space-between;}
.provider{font-weight:850;}
.benefit{font-size:21px;font-weight:900;margin:9px 0;}
.badges{display:flex;gap:6px;flex-wrap:wrap;}
.badge{font-size:12px;font-weight:800;background:var(--surface2);color:var(--muted);padding:5px 8px;border-radius:999px;}
.validated{color:#62cf94;}
.new{color:#f0b84b;}
.map{height:610px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);filter:grayscale(1) brightness(.66) contrast(.92);position:sticky;top:16px;}
.nav{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);display:flex;background:#181b1ef2;border:1px solid var(--line);border-radius:18px;padding:5px;z-index:1000;}
.nav button{border:0;background:transparent;color:var(--muted);padding:10px 14px;border-radius:13px;font-weight:750;}
.nav .on{background:var(--surface2);color:var(--text);}
.form{display:grid;gap:13px;max-width:720px;}
.input{width:100%;padding:13px 14px;background:var(--surface2);border:1px solid var(--line);border-radius:13px;color:var(--text);}
.primary{border:0;background:var(--accent);color:#fff;padding:13px 16px;border-radius:13px;font-weight:850;}
.login{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;}
.loginform,.community{display:grid;place-items:center;padding:32px;}
.loginbox{width:min(420px,100%);}
.community{background:var(--surface);font-size:clamp(70px,12vw,170px);letter-spacing:-.22em;overflow:hidden;}
.adminrow{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;margin:8px 0;}
@media (max-width:800px){.shell{padding:16px 13px 94px;}
  .grid{grid-template-columns:1fr;}
  .map{height:300px;position:relative;order:-1;}
  .nav{width:calc(100% - 18px);}
  .nav button{flex:1;padding:10px 6px;font-size:12px;}
  .login{grid-template-columns:1fr;}
  .community{display:none;}
  .switch{max-width:none;}
  .benefit{font-size:19px;}}
.admin-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:16px;}
.admin-tabs button{white-space:nowrap;}
.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:16px;}
.stat b{display:block;font-size:26px;}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px;}
.tablelist{display:grid;gap:8px;}
.listrow{display:grid;grid-template-columns:minmax(180px,1.4fr) 1fr .7fr auto;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;}
.split{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.preview-image{width:100%;max-height:220px;object-fit:cover;border-radius:14px;border:1px solid var(--line);background:var(--surface2);}
.small{font-size:12px;}
.danger{background:rgba(240,82,82,.12);color:#ff8d8d;border-color:rgba(240,82,82,.35);}
.success{color:var(--good);}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.68);display:grid;place-items:center;padding:18px;z-index:3000;}
.modalbox{width:min(820px,100%);max-height:92dvh;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:18px;}
.textarea{min-height:100px;resize:vertical;}
.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media (max-width:800px){.statgrid{grid-template-columns:1fr 1fr;}
  .listrow{grid-template-columns:1fr auto;}
  .listrow>*:nth-child(2),.listrow>*:nth-child(3){display:none;}
  .split,.content-grid{grid-template-columns:1fr;}
  .modal{padding:8px;}
  .modalbox{border-radius:16px;}}
.bottomnav button{appearance:none;-webkit-appearance:none;background:transparent;border:0;color:var(--muted);font:inherit;}
.color-row{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;}
.color-input{width:56px;height:48px;padding:3px;border-radius:12px;border:1px solid var(--line);background:var(--surface2);}
.required-note{font-size:12px;color:var(--muted);}
body{min-height:100vh;}
.appframe{min-height:100vh;display:flex;flex-direction:column;}
.appnav{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:18px;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:14px 0;background:rgba(15,18,20,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);}
.navbrand{appearance:none;border:0;background:none;color:var(--text);font:inherit;font-weight:900;font-size:22px;cursor:pointer;padding:0;}
.navmode{display:flex;padding:3px;background:var(--panel);border:1px solid var(--line);border-radius:999px;}
.navmode button{border:0;background:transparent;color:var(--muted);padding:8px 12px;border-radius:999px;font-weight:800;cursor:pointer;}
.navmode button.active{background:var(--accent);color:white;}
.mainnav{display:flex;align-items:center;gap:4px;margin-left:auto;}
.mainnav button,.usernav{border:0;background:transparent;color:var(--muted);padding:9px 12px;border-radius:12px;font-weight:800;cursor:pointer;}
.mainnav button:hover,.mainnav button.active,.usernav:hover{background:var(--panel);color:var(--text);}
.usernav{display:flex;align-items:center;gap:9px;border-left:1px solid var(--line);border-radius:0;padding-left:18px;}
.usernav .avatar{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--accent);border-radius:11px;background:var(--accent-soft);}
.shell{flex:1;width:min(1180px,calc(100% - 32px));margin:0 auto;padding-top:34px;}
.bottomnav{display:none !important;}
.appfooter{width:min(1180px,calc(100% - 32px));margin:70px auto 0;padding:24px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:28px;color:var(--muted);font-size:13px;}
.appfooter>div:first-child{display:flex;gap:14px;flex-wrap:wrap;}
.appfooter b{color:var(--text);}
.footer-disclaimer{text-align:right;}
@media (max-width:760px){.appnav{gap:8px;flex-wrap:wrap;}
  .navbrand{font-size:19px;}
  .mainnav{order:3;width:100%;overflow:auto;margin-left:0;}
  .mainnav button{white-space:nowrap;}
  .usernav span:first-child{display:none;}
  .usernav{margin-left:auto;border-left:0;padding-left:8px;}
  .appfooter{flex-direction:column;}
  .footer-disclaimer{text-align:left;}
  .shell{padding-top:24px;}}
body .appnav{box-sizing:border-box;display:grid !important;grid-template-columns:auto auto 1fr auto;align-items:center;gap:14px;}
body .appnav button{font-family:inherit !important;font-size:14px !important;line-height:1 !important;appearance:none !important;-webkit-appearance:none !important;}
body .navbrand{border:0 !important;background:transparent !important;color:var(--text) !important;font-size:22px !important;padding:8px 0 !important;}
body .navmode{display:inline-flex !important;align-items:center;padding:3px !important;border:1px solid var(--line) !important;border-radius:999px !important;background:var(--panel) !important;}
body .navmode button{border:0 !important;background:transparent !important;color:var(--muted) !important;padding:8px 11px !important;border-radius:999px !important;}
body .navmode button.active{background:var(--accent) !important;color:#fff !important;}
body .mainnav{display:flex !important;justify-content:center;align-items:center;gap:4px;margin:0 !important;}
body .mainnav button,body .usernav{border:0 !important;background:transparent !important;color:var(--muted) !important;padding:10px 12px !important;border-radius:12px !important;}
body .mainnav button:hover,body .mainnav button.active,body .usernav:hover{background:var(--panel) !important;color:var(--text) !important;}
body .usernav{display:flex !important;align-items:center;justify-content:flex-end;gap:9px !important;border-left:1px solid var(--line) !important;padding-left:16px !important;cursor:pointer;}
body .appfooter{justify-content:center !important;align-items:center !important;text-align:center !important;}
body .appfooter>div:first-child{justify-content:center !important;}
body .footer-disclaimer{text-align:center !important;}
.toast{position:fixed;left:50%;bottom:32px;z-index:9999;transform:translate(-50%,16px);opacity:0;background:var(--text);color:var(--bg);padding:11px 16px;border-radius:999px;font-weight:900;box-shadow:0 12px 40px rgba(0,0,0,.35);transition:.18s ease;}
.toast.show{transform:translate(-50%,0);opacity:1;}
@media (max-width:760px){body .appnav{display:flex !important;flex-wrap:wrap;}
  .mainnav{order:3;width:100%;justify-content:flex-start !important;overflow:auto;}
  .usernav{margin-left:auto !important;border-left:0 !important;}
  .appfooter{flex-direction:column !important;}}
:root{--accent:#2f9cff !important;}
.navbrand{cursor:pointer !important;}
.mode button.active,.deal-mode button.active{background:#2f9cff !important;color:#fff !important;}
#localFields,#onlineFields{display:grid;gap:14px;}
#localFields[hidden],#onlineFields[hidden]{display:none !important;}
.disabled-actions{opacity:.38;pointer-events:none;}
.own-deal-note{margin-top:18px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:var(--panel);}
.statgrid .statlink{font:inherit;text-align:left;color:inherit;width:100%;cursor:pointer;position:relative;}
.statgrid .statlink:hover{border-color:#2f9cff;transform:translateY(-1px);}
.statgrid .statlink:disabled{cursor:default;}
.stat-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#2f9cff;font-weight:900;}
:root{--accent:#2F9CFF !important;--bluesave-blue:#2F9CFF;}
.navbrand{color:var(--bluesave-blue) !important;cursor:pointer !important;}
#map{filter:none !important;}
#map .leaflet-tile-pane{filter:grayscale(1);}
#map .leaflet-overlay-pane,#map .leaflet-marker-pane,#map .leaflet-popup-pane{filter:none !important;}
.offer-card .save,.offer-card .bookmark,.offer-card [data-save],.detail .save,.detail [data-save]{background:transparent !important;border:0 !important;box-shadow:none !important;padding:6px !important;}
.usernav{position:relative;}
.user-main{display:flex;align-items:center;gap:9px;background:transparent;border:0;color:inherit;font:inherit;cursor:pointer;}
.user-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);min-width:170px;padding:7px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 45px rgba(0,0,0,.3);z-index:1200;}
.usernav:hover .user-menu,.usernav:focus-within .user-menu{display:grid;}
.user-menu button{width:100%;text-align:left;border:0;background:transparent;color:var(--text);padding:10px;border-radius:9px;cursor:pointer;}
.user-menu button:hover{background:var(--bg);}
.stat-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--accent);}
.toast{position:fixed;left:50%;bottom:32px;z-index:9999;transform:translate(-50%,16px);opacity:0;background:var(--text);color:var(--bg);padding:11px 16px;border-radius:999px;font-weight:900;transition:.18s;}
:root{--accent:#2F9CFF !important;--bluesave-blue:#2F9CFF !important;}
body .navbrand{color:#2F9CFF !important;}
.explore-search{margin:0 0 16px;}
.explore-search .input{width:100%;}
.deal-type-switch{display:inline-flex;gap:3px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:999px;width:max-content;}
.deal-type-switch button{appearance:none;border:0;background:transparent;color:var(--muted);padding:10px 16px;border-radius:999px;font:inherit;font-weight:800;cursor:pointer;}
.deal-type-switch button.active{background:#2F9CFF !important;color:#fff !important;}
.benefit-value-row{display:grid;grid-template-columns:1fr auto;gap:8px;}
.metricSelect{min-width:76px;}
#map .leaflet-tile-pane{filter:grayscale(1) !important;}
button.save,button.bookmark,.saveBtn,.bookmarkBtn,[data-save],[data-favorite]{background:transparent !important;background-color:transparent !important;border:0 !important;box-shadow:none !important;}
.offer-card button.save,.offer-card button.bookmark,.offer-card [data-save],.offer-card [data-favorite]{background:transparent !important;border:0 !important;box-shadow:none !important;padding:6px !important;}
.toast{position:fixed;left:50%;bottom:32px;z-index:9999;transform:translate(-50%,16px);opacity:0;background:var(--text);color:var(--bg);padding:11px 16px;border-radius:999px;font-weight:900;box-shadow:0 12px 40px rgba(0,0,0,.35);transition:.18s;}
button:disabled{opacity:.5;cursor:not-allowed;}
:root{--bluesave-blue:#2F9CFF !important;--accent:var(--bluesave-blue) !important;}
.appnav{display:grid !important;grid-template-columns:auto auto 1fr auto !important;}
.navbrand{display:flex !important;gap:0 !important;font-weight:900 !important;font-size:22px !important;background:transparent !important;border:0 !important;}
.brand-blue{color:var(--bluesave-blue) !important;}
.brand-white{color:var(--text) !important;}
.navspacer{min-width:1px;}
.user-main{display:flex;align-items:center;gap:10px;background:transparent;border:0;color:inherit;font:inherit;cursor:pointer;}
.user-meta{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;}
.user-meta small{font-size:11px;color:var(--muted);font-weight:600;}
.explore-hero{margin-bottom:18px;}
.title-row{display:flex;align-items:center;gap:12px;}
.title-row h1{margin:0;}
.add-circle{width:36px;height:36px;border-radius:50%;border:1px solid var(--accent);background:transparent;color:var(--accent);display:grid;place-items:center;font-size:22px;cursor:pointer;}
.add-circle:hover{background:var(--accent);color:#fff;}
.explore-tools{display:grid;gap:10px;margin-bottom:16px;}
.filters-inline{display:flex;gap:8px;flex-wrap:wrap;}
.filters-inline .chip.active{background:var(--accent) !important;color:#fff !important;border-color:var(--accent) !important;}
.iconbtn.fav,.fav,[data-fav]{background:transparent !important;border:0 !important;box-shadow:none !important;color:#fff !important;font-size:22px !important;padding:4px !important;}
.toggle.selected,.rate.selected,#yes.selected,#no.selected{background:var(--accent) !important;color:#fff !important;border-color:var(--accent) !important;}
@media (max-width:760px){.appnav{display:flex !important;flex-wrap:wrap !important;}
  .navmode{order:3;width:100%;justify-content:center;}}
.rating-summary{display:inline-flex;align-items:center;gap:5px;}
.user-menu{display:none !important;}
.user-menu.open{display:grid !important;}
.usernav:hover .user-menu{display:none !important;}
.centered-form,.form.panel,#submit{width:min(720px,100%);margin-left:auto !important;margin-right:auto !important;}
.hero,.explore-hero{min-height:0 !important;padding:6px 0 !important;}
.compact-card{padding:14px !important;min-height:0 !important;}
.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px;width:100%;}
.category-tile,.category-filter{min-height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);padding:10px;cursor:pointer;}
.category-tile span,.category-filter span{font-size:24px;line-height:1;}
.category-tile small,.category-filter small{font-size:12px;line-height:1.15;}
.category-tile.on,.category-filter.active{border-color:var(--accent);background:var(--accent-soft);}
.filters-inline{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;width:100%;}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.benefit-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:78px;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:10px;}
.benefit-option:has(input:checked){border-color:var(--accent);background:var(--accent-soft);}
.benefit-option input{position:absolute;opacity:0;}
.category-mini-row{display:flex;gap:6px;flex-wrap:wrap;}
.category-mini{display:flex;flex-direction:column;align-items:center;min-width:48px;}
.category-mini small{font-size:10px;}
.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.detail-map{min-height:420px;}
.iconbtn.fav{background:transparent !important;border:0 !important;box-shadow:none !important;color:#fff !important;}
.toggle.selected,.rate.selected{background:var(--accent) !important;color:#fff !important;}
#map .leaflet-overlay-pane{filter:none !important;}
@media (max-width:800px){body{font-size:14px;}
  
  
  
  
  .benefit-option small{font-size:10px;}
  .detail-layout{grid-template-columns:1fr;}
  .detail-map{min-height:280px;}}
.explore-heading,.centered-title{text-align:center;}
.explore-heading .title-row{justify-content:center;}
.explore-heading .sub{margin-left:auto;margin-right:auto;}
.mode-filter{display:inline-flex;margin-top:14px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--panel);}
.mode-filter button{border:0;background:transparent;color:var(--muted);padding:9px 16px;border-radius:999px;}
.mode-filter button.active{background:var(--accent);color:#fff;}
.filters-inline{display:flex !important;flex-wrap:wrap;gap:12px !important;}
.category-filter{min-height:auto !important;display:inline-flex !important;flex-direction:row !important;padding:9px 13px !important;border-radius:999px !important;}
.explore-tools{gap:16px !important;}
.filter-row{gap:16px !important;}
.grid{align-items:start;}
.cards{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 260px);overflow-y:auto;padding-right:4px;}

.provider-block{min-width:0}
.provider-line{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.online-category-row{margin-top:8px}
.online-card .provider-line{display:block}
.online-card .provider{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.category-inline{font-size:12px;color:var(--muted);}
.compact-card{height:auto !important;min-height:0 !important;}
.deal-expand:empty{display:none;}
.expanded-content{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);}
.badges:empty{display:none;}
.badge:empty{display:none;}
.title-counter-wrap{position:relative;}
.title-counter-wrap input{padding-right:62px;}
.title-counter-wrap span{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted);}
.loading-progress{display:grid;gap:8px;}
.loading-progress{position:relative;}
.loading-progress:before{content:"";height:8px;border-radius:999px;background:var(--panel);display:block;}
.loading-bar{position:absolute;left:0;top:0;height:8px;width:0;background:var(--accent);border-radius:999px;transition:.15s;}
.field-config{display:flex;gap:8px;flex-wrap:wrap;}
@media (max-width:800px){.appnav{grid-template-columns:auto 1fr auto !important;}
  .cards{max-height:none;overflow:visible;}
  
  
  
  .explore-heading h1{font-size:34px;}
  .form,.panel{font-size:14px;}}
.search-mode-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;}
.mode-filter{margin:0 !important;white-space:nowrap;}
.filter-row{display:grid !important;grid-template-columns:minmax(0,1fr) auto;gap:24px !important;align-items:start;}
.sort-wrap{display:flex;align-items:center;gap:8px;justify-self:end;white-space:nowrap}
.sort-direction{display:inline-grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--glass-border);border-radius:12px;background:var(--glass-bg);color:var(--text);cursor:pointer;backdrop-filter:blur(14px) saturate(120%);-webkit-backdrop-filter:blur(14px) saturate(120%)}
.sort-direction:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--glass-border))}
.sort-icon{font-size:20px;line-height:1;color:var(--text)}
.sort-select{width:auto;min-width:150px}
.category-tags{display:inline-flex;gap:6px;flex-wrap:wrap;}
.category-tag{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--line);border-radius:999px;font-size:11px;color:var(--muted);background:var(--panel);}
.badges{align-items:center;}
.badge{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:26px;line-height:1 !important;}
.feedback-block{display:grid;gap:22px;margin-top:22px;}
.detail-actions{gap:12px !important;}
.rating-block{display:grid;gap:10px;}
.rating-title{font-size:14px;font-weight:700;}
.deal-meta-expanded{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:12px 0;}
.user-main{outline:none !important;border:0 !important;box-shadow:none !important;background:transparent !important;}
.usernav{border:0 !important;}
.user-menu{transition:none !important;}
.footer-address{display:inline-block;margin-top:4px;}
.siren-blue{animation:sirenPulse 2.4s ease-in-out infinite;}
@keyframes sirenPulse{0%,72%,100%{text-shadow:none;filter:brightness(1);}
  78%{text-shadow:0 0 8px rgba(47,156,255,.75);filter:brightness(1.2);}
  84%{text-shadow:none;filter:brightness(1);}
  90%{text-shadow:0 0 12px rgba(47,156,255,.9);filter:brightness(1.35);}}
@media (max-width:800px){.search-mode-row{grid-template-columns:1fr;}
  
  .filter-row{grid-template-columns:1fr;gap:16px !important;}}
.login{grid-template-columns:minmax(360px,0.9fr) minmax(0,1.1fr) !important;align-items:stretch !important;}
.community{display:flex !important;align-items:center !important;justify-content:center !important;min-height:100vh !important;height:auto !important;overflow:hidden !important;padding:24px !important;}
.login-community-image{display:block;width:100%;height:auto;max-height:calc(100vh - 48px);object-fit:contain;object-position:center;}
.login-brand .siren-blue{animation:sirenPulse 2.4s ease-in-out infinite;}
.navbrand{font-size:25px !important;justify-self:center !important;}
.usernav{border:0 !important;padding:8px 12px !important;margin:-8px -12px !important;}
.user-menu{z-index:5000 !important;}


.compact-card,.compact-card.expanded{height:auto !important;max-height:none !important;overflow:visible !important;}
.deal-expand{width:100%;height:auto;overflow:visible;}
.deal-expand[data-open="1"]{display:block;margin-top:16px;}
.expanded-content{width:100%;height:auto;overflow:visible;padding-bottom:10px;}
.feedback-block{display:grid;gap:24px;margin-top:24px;}
.detail-actions{gap:14px !important;}
.rating-block{display:grid;gap:12px;}
.benefit-field-group{display:grid;gap:9px;margin-top:18px;}
.benefit-field-group+ .benefit-field-group{margin-top:22px;}
.appfooter{min-height:0 !important;}
.footer-address{width:100%;text-align:center;margin-top:10px;}
@media (max-width:800px){.login{grid-template-columns:1fr !important;}
  .community{min-height:0 !important;padding:16px !important;}
  .login-community-image{max-height:none;width:100%;height:auto;}
  
  
  
  .cards{order:1 !important;max-height:none !important;overflow:visible !important;}
  .appfooter{margin-top:28px !important;padding:18px 0 !important;gap:10px !important;}
  .footer-main,.footer-disclaimer,.footer-address{margin:0 !important;}
  .usernav{padding:10px !important;margin:-10px !important;}}
:root{--org-accent:#2F9CFF;}
body{background:radial-gradient(circle at 85% 0%,color-mix(in srgb,var(--org-accent) 24%,transparent),transparent 42%),
 var(--bg) !important;}
.login .community{display:block;}
.ux-message{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;font-weight:750;font-size:13px;}
.ux-message.error{background:rgba(255,70,70,.14);border:1px solid rgba(255,70,70,.45);color:#ff8f8f;}
.ux-message.success{background:rgba(50,200,120,.14);border:1px solid rgba(50,200,120,.45);color:#75dfa5;}
.navbrand{font-size:27px !important;justify-self:center !important;}
.user-profile-link{border:0 !important;outline:0 !important;box-shadow:none !important;background:transparent !important;}
.appfooter{display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;gap:5px !important;}
.appfooter small{opacity:.72;font-size:11px;}
.mobile-control-row{display:flex;justify-content:space-between;gap:18px;align-items:center;}


.deal-emoji-marker{background:transparent !important;border:0 !important;}
.deal-emoji-marker span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;border:2px solid rgba(0,0,0,.2);font-size:19px;box-shadow:0 5px 16px rgba(0,0,0,.28);}
.compact-card,.compact-card.expanded{height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;}
.deal-expand,.deal-expand[data-open="1"],.expanded-content{height:auto !important;max-height:none !important;overflow:visible !important;}
.expanded-content{padding-bottom:18px;}
.creator-tag{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--creator);color:var(--creator);border-radius:999px;font-size:11px;}
.creator-tag.station{--creator:var(--line);}
.code-row{display:flex;align-items:center;gap:8px;margin:10px 0;}
.code-row code{padding:8px 11px;border:1px dashed var(--accent);border-radius:9px;}
.copy-code{border:0;border-radius:9px;padding:8px 10px;background:var(--accent);color:#fff;}
.terms{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:12px;}
.benefit-field-group{display:grid;gap:9px;margin-top:20px;}
.benefit-field-group+.benefit-field-group{margin-top:24px;}
.profile-actions{width:min(720px,100%);margin:18px auto 0;display:flex;justify-content:flex-end;gap:10px;}
.level-row{align-items:center;}
@media (max-width:800px){.community{display:none !important;}
  .login{display:grid !important;grid-template-columns:1fr !important;min-height:100dvh !important;}
  .loginform{min-height:100dvh !important;display:flex !important;align-items:center !important;}
  .loginbox{width:100% !important;}
  
  
  
  
  
  
  
  
  
  .user-profile-link{margin-left:auto !important;text-align:right !important;}
  .appfooter{margin-top:24px !important;padding:16px 0 !important;min-height:0 !important;}}
.section-title{font-size:13px;font-weight:800;margin-top:18px;margin-bottom:8px;}
.full-choice-row,.eligibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.choice-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:74px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);}
.choice-box span{font-size:22px;}
.choice-box small{font-size:11px;}
.choice-box.active,.choice-box.on,.choice-box:has(input:checked){border-color:var(--accent);background:var(--accent-soft);}
.choice-box input{position:absolute;opacity:0;}
.login-referral{margin-top:20px;display:grid;gap:9px;}
.referral-title{font-size:12px;font-weight:800;color:var(--muted);}
.referral-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.referral-button{display:flex;align-items:center;justify-content:center;padding:9px 8px;border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none;font-size:12px;}
@media (max-width:520px){.referral-buttons{grid-template-columns:1fr;}
  .full-choice-row,.eligibility-grid{grid-template-columns:1fr 1fr;}}
.appnav{width:100% !important;max-width:none !important;margin:0 !important;padding-left:max(18px,env(safe-area-inset-left)) !important;padding-right:max(18px,env(safe-area-inset-right)) !important;box-sizing:border-box;}
.navbrand{position:absolute !important;left:50% !important;transform:translateX(-50%) !important;}
.user-main{margin-left:auto !important;justify-self:end !important;}
.compact-card.expanded,.compact-card.expanded .deal-expand,.compact-card.expanded .expanded-content{height:auto !important;min-height:max-content !important;max-height:none !important;overflow:visible !important;}
.form-mode-filter{width:100%;display:grid !important;grid-template-columns:1fr 1fr;}
.form-mode-filter button{width:100%;}
.admin-select-row{cursor:pointer;}
.deal-description{white-space:pre-wrap;}
@media (max-width:800px){.appnav{width:100vw !important;max-width:100vw !important;margin:0 !important;border-radius:0 !important;}
  
  
  .login{height:100dvh !important;min-height:100dvh !important;overflow:hidden !important;}
  .loginform{height:100dvh !important;min-height:100dvh !important;padding:14px !important;overflow:hidden !important;}
  .loginbox{gap:8px !important;}
  .login-referral{margin-top:8px !important;gap:5px !important;}
  .referral-buttons{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important;}
  .referral-button{padding:7px 3px !important;font-size:10px !important;white-space:nowrap !important;}}
.appnav .user-main{margin-left:auto !important;position:relative !important;right:0 !important;justify-self:end !important;}
.navbrand{font-size:clamp(26px,2.6vw,36px) !important;font-weight:900 !important;}
.deal-meta-expanded{display:flex !important;align-items:center !important;gap:8px !important;flex-wrap:wrap !important;}
.deal-meta-expanded>*{display:inline-flex !important;align-items:center !important;min-height:28px !important;}
.creator-combined-tag{border:1px solid color-mix(in srgb,var(--org-accent) 55%,transparent);background:color-mix(in srgb,var(--org-accent) 12%,white);border-radius:999px;padding:5px 9px;font-size:12px;}
.profile-station-field{display:block !important;visibility:visible !important;opacity:1 !important;}
.code-row{display:flex !important;align-items:center !important;gap:8px !important;padding:10px !important;border:1px solid var(--line) !important;border-radius:12px !important;}
.code-row code{flex:1 !important;font-size:15px !important;font-weight:800 !important;}
.loading-progress{max-width:520px;margin:40px auto;}
.progress-track{height:8px;background:var(--line);border-radius:999px;overflow:hidden;margin-top:10px;}
.progress-track span{display:block;height:100%;background:var(--accent);transition:width .25s ease;}
@media (max-width:800px){.appnav .user-meta{display:none !important;}
  .appnav .user-main{width:42px !important;min-width:42px !important;padding:0 !important;justify-content:center !important;}
  .navbrand{font-size:30px !important;}}
.appnav{display:grid !important;grid-template-columns:minmax(52px,1fr) auto minmax(52px,1fr) !important;align-items:center !important;}
.appnav .navbrand{grid-column:2 !important;position:static !important;left:auto !important;transform:none !important;justify-self:center !important;font-size:clamp(31px,3vw,42px) !important;line-height:1 !important;}
.appnav .user-main{grid-column:3 !important;justify-self:end !important;margin-left:0 !important;right:auto !important;}
.profile-station-field{display:block !important;visibility:visible !important;opacity:1 !important;position:static !important;height:auto !important;overflow:visible !important;}
.online-discount-code{display:grid;gap:7px;margin:12px 0;}
.online-discount-code>span{font-size:12px;font-weight:800;color:var(--muted);}
body::before{content:"";position:fixed;inset:-35%;z-index:-2;pointer-events:none;background:radial-gradient(circle at 20% 25%,color-mix(in srgb,var(--org-accent,var(--accent)) 28%,transparent) 0 16%,transparent 42%),radial-gradient(circle at 78% 32%,color-mix(in srgb,var(--org-accent,var(--accent)) 20%,transparent) 0 14%,transparent 40%),radial-gradient(circle at 52% 82%,color-mix(in srgb,var(--org-accent,var(--accent)) 18%,transparent) 0 16%,transparent 44%);filter:blur(55px);animation:blueSaveAmbient 24s ease-in-out infinite alternate;will-change:transform;}
@keyframes blueSaveAmbient{0%{transform:translate3d(-3%,-2%,0) scale(1);}
  35%{transform:translate3d(4%,-1%,0) scale(1.06);}
  70%{transform:translate3d(-1%,5%,0) scale(1.03);}
  100%{transform:translate3d(5%,3%,0) scale(1.08);}}
@media (prefers-reduced-motion:reduce){body::before{animation:none;}}
@media (max-width:800px){.appnav{grid-template-columns:44px minmax(0,1fr) 44px !important;}
  .appnav .navbrand{font-size:32px !important;}
  .appnav .user-main{grid-column:3 !important;}
  .explore-tools{display:block !important;}}
.appnav{display:grid !important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;align-items:center !important;min-height:68px !important;}
.appnav .navbrand{grid-column:2 !important;grid-row:1 !important;justify-self:center !important;align-self:center !important;position:static !important;transform:none !important;font-size:clamp(34px,3vw,44px) !important;}
.appnav .user-main{grid-column:3 !important;grid-row:1 !important;justify-self:end !important;align-self:center !important;margin:0 !important;}
.profile-station-field{display:block !important;visibility:visible !important;opacity:1 !important;height:auto !important;position:relative !important;z-index:1 !important;}
.online-discount-code{display:grid !important;gap:7px !important;margin:14px 0 !important;}
.online-discount-code .code-row{display:flex !important;}
body::before{inset:-12% !important;opacity:.45 !important;filter:blur(90px) !important;background:radial-gradient(circle at 18% 22%,color-mix(in srgb,var(--org-accent,var(--accent)) 14%,transparent) 0 10%,transparent 38%),
    radial-gradient(circle at 78% 34%,color-mix(in srgb,var(--org-accent,var(--accent)) 10%,transparent) 0 9%,transparent 36%),
    radial-gradient(circle at 55% 86%,color-mix(in srgb,var(--org-accent,var(--accent)) 8%,transparent) 0 11%,transparent 40%) !important;}
@media (max-width:800px){.appnav{grid-template-columns:44px minmax(0,1fr) 44px !important;}
  .appnav .navbrand{grid-column:2 !important;justify-self:center !important;font-size:32px !important;}
  .appnav .user-main{grid-column:3 !important;justify-self:end !important;}}
:root{--glass-bg:rgba(22,28,34,.56);--glass-bg-strong:rgba(25,31,38,.72);--glass-border:rgba(255,255,255,.11);--glass-highlight:rgba(255,255,255,.055);--glass-shadow:0 12px 34px rgba(0,0,0,.22);}
.appnav{padding:0 !important;}
.appnav-inner{width:min(1120px,calc(100% - 32px));margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;}
.appnav-inner .navbrand{grid-column:2;justify-self:center;font-size:clamp(35px,3vw,45px) !important;}
.appnav-inner .user-main{grid-column:3;justify-self:end;margin:0 !important;}
.liquid-panel,.panel,.card,.input,.toggle,.chip,.mode-filter,.mode-filter button,.sort-wrap,.sort-select,.category-tile,.benefit-option,.choice-box,.category-tag,.badge,.user-main,.appfooter,.map,.terms,.code-row{background:linear-gradient(145deg,var(--glass-highlight),transparent 45%),var(--glass-bg) !important;border:1px solid var(--glass-border) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045),var(--glass-shadow) !important;backdrop-filter:blur(18px) saturate(135%) !important;-webkit-backdrop-filter:blur(18px) saturate(135%) !important;}
.input,select.input,textarea.input{background-color:rgba(18,23,29,.62) !important;}
.mode-filter{padding:4px !important;border-radius:999px !important;}
.mode-filter button{box-shadow:none !important;border-color:transparent !important;background:transparent !important;}
.mode-filter button.active,.chip.active,.toggle.selected,.category-tile.on,.benefit-option:has(input:checked),.choice-box.on{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035)),color-mix(in srgb,var(--accent) 75%,transparent) !important;border-color:color-mix(in srgb,var(--accent) 65%,white 10%) !important;}
.category-tag,.badge{box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;backdrop-filter:blur(12px) saturate(130%) !important;}
.profile-station-field{display:block !important;visibility:visible !important;opacity:1 !important;height:auto !important;position:relative !important;}
.online-discount-code{display:grid !important;gap:8px !important;margin:14px 0 !important;}
.compact-card.expanded,.deal-expand[data-open="1"],.expanded-content{height:auto !important;max-height:none !important;overflow:visible !important;}
@media (max-width:800px){.appnav-inner{width:100%;padding:0 14px;box-sizing:border-box;grid-template-columns:44px 1fr 44px;}
  .appnav-inner .navbrand{grid-column:2;justify-self:center;font-size:32px !important;}
  .appnav-inner .user-main{grid-column:3;justify-self:end;width:42px !important;min-width:42px !important;}
  .explore-tools{display:block !important;}}
.appnav{padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;}
.appfooter{background:transparent !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
.panel,.card,.map{background:rgba(23,28,34,.62) !important;border:1px solid rgba(255,255,255,.10) !important;box-shadow:0 12px 32px rgba(0,0,0,.18) !important;backdrop-filter:blur(18px) saturate(125%) !important;-webkit-backdrop-filter:blur(18px) saturate(125%) !important;}
.input,.toggle,.chip,.mode-filter,.sort-select,.category-tile,.benefit-option,.choice-box,.category-tag,.badge{background:rgba(24,29,35,.58) !important;border:1px solid rgba(255,255,255,.10) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;backdrop-filter:blur(14px) saturate(120%) !important;-webkit-backdrop-filter:blur(14px) saturate(120%) !important;}
.sort-wrap{background:transparent !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
.mode-filter{padding:4px !important;}
.mode-filter button{background:transparent !important;border:0 !important;box-shadow:none !important;}
.profile-actions{background:transparent !important;border:0 !important;box-shadow:none !important;}
.profile-station-field{display:block !important;visibility:visible !important;opacity:1 !important;height:auto !important;}
.form-close{position:absolute;top:18px;right:18px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(24,29,35,.68);color:#fff;font-size:24px;line-height:1;cursor:pointer;}
.submit-form{position:relative;}
.compact-card,.compact-card.expanded,.deal-expand,.deal-expand[data-open="1"],.expanded-content{height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;}
.cards{overflow-y:auto !important;overflow-x:visible !important;padding-bottom:28px !important;}
@media (max-width:800px){.appnav-inner{width:100%;padding:0 14px;box-sizing:border-box;grid-template-columns:44px 1fr 44px;}
  .appnav-inner .navbrand{grid-column:2;justify-self:center;font-size:32px !important;}
  .appnav-inner .user-main{grid-column:3;justify-self:end;width:42px !important;min-width:42px !important;}}
:root{--glass-bg:rgba(22,27,33,.58);--glass-border:rgba(255,255,255,.10);--glass-shadow:0 10px 28px rgba(0,0,0,.18);}
.appnav{background:transparent !important;border:0 !important;box-shadow:none !important;}
.appnav-inner{width:min(1120px,calc(100% - 32px));margin:0 auto;min-height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;}
.appnav-inner .navbrand{grid-column:2;justify-self:center;position:static !important;transform:none !important;}
.appnav-inner .user-main{grid-column:3;justify-self:end;margin:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;}
.mode-filter,.sort-select,#offerSearch,.chip,.category-tag,.card{background:linear-gradient(145deg,rgba(255,255,255,.045),transparent 45%),var(--glass-bg) !important;border:1px solid var(--glass-border) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),var(--glass-shadow) !important;backdrop-filter:blur(16px) saturate(125%) !important;-webkit-backdrop-filter:blur(16px) saturate(125%) !important;}
.sort-wrap{background:transparent !important;border:0 !important;box-shadow:none !important;backdrop-filter:none !important;}
.mode-filter button.active,.chip.active{background:color-mix(in srgb,var(--accent) 76%,rgba(255,255,255,.05)) !important;}
.card{position:relative;overflow:visible !important;}
.card.expanded{z-index:30;}
.cards{overflow-y:auto !important;overflow-x:visible !important;padding-bottom:36px !important;}
.deal-expand,.deal-expand[data-open="1"],.expanded-content{position:relative !important;z-index:31 !important;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;}
.compact-card.expanded{height:auto !important;max-height:none !important;overflow:visible !important;padding-bottom:18px !important;}
.badge.new{color:var(--accent) !important;border-color:color-mix(in srgb,var(--accent) 60%,transparent) !important;}
.badge.verified{color:#77dda6 !important;border-color:rgba(70,210,135,.45) !important;}
.station-emoji-marker,.deal-emoji-marker{background:transparent !important;border:0 !important;}
.station-emoji-marker span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(20,25,31,.92);border:2px solid var(--org-accent,var(--accent));box-shadow:0 6px 20px rgba(0,0,0,.35);font-size:22px;}

.appfooter{background:transparent !important;border:0 !important;box-shadow:none !important;}
@media (max-width:800px){.appnav-inner{width:100%;padding:0 14px;box-sizing:border-box;grid-template-columns:44px 1fr 44px;}
  .appnav-inner .navbrand{grid-column:2;justify-self:center;}
  .appnav-inner .user-main{grid-column:3;justify-self:end;}}
.appnav{width:100% !important;padding:0 !important;}
.appnav-inner{position:relative !important;width:min(1120px,calc(100% - 32px)) !important;min-height:76px !important;margin:0 auto !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;}
.appnav-inner .navbrand{position:absolute !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;margin:0 !important;z-index:2 !important;font-size:clamp(36px,3vw,46px) !important;white-space:nowrap !important;}
.appnav-inner .user-main{position:relative !important;margin-left:auto !important;margin-right:0 !important;justify-self:auto !important;z-index:3 !important;border:0 !important;outline:0 !important;box-shadow:none !important;background:transparent !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}


@media (max-width:800px){.appnav-inner{width:100% !important;min-height:68px !important;padding:0 14px !important;box-sizing:border-box !important;}
  .appnav-inner .navbrand{font-size:32px !important;}
  .appnav-inner .user-main{width:42px !important;min-width:42px !important;margin-left:auto !important;}}
header.appnav{width:100% !important;margin:0 !important;padding:0 !important;}
header.appnav > .appnav-inner{position:relative !important;width:min(1120px,calc(100% - 32px)) !important;max-width:1120px !important;min-height:76px !important;margin:0 auto !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;box-sizing:border-box !important;}
header.appnav > .appnav-inner > .navbrand{position:absolute !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;margin:0 !important;z-index:2 !important;font-size:clamp(36px,3vw,46px) !important;white-space:nowrap !important;}
header.appnav > .appnav-inner > .user-main{position:relative !important;margin:0 0 0 auto !important;z-index:3 !important;background:transparent !important;border:0 !important;outline:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}


.cards{display:flex !important;flex-direction:column !important;gap:12px !important;overflow-y:auto !important;overflow-x:visible !important;align-items:stretch !important;}
.card.compact-card{position:relative !important;display:flex !important;flex-direction:column !important;height:auto !important;min-height:max-content !important;max-height:none !important;overflow:visible !important;flex:0 0 auto !important;}
.card.compact-card .benefit-stack{display:flex !important;flex-direction:column !important;gap:8px !important;width:100% !important;height:auto !important;min-height:0 !important;overflow:visible !important;margin:10px 0 !important;}
.card.compact-card .benefit{display:block !important;position:relative !important;width:100% !important;height:auto !important;min-height:0 !important;line-height:1.25 !important;overflow:visible !important;}
.cards.has-expanded-card{overflow:visible !important;}
.card.compact-card.expanded{z-index:1 !important;height:auto !important;min-height:max-content !important;max-height:none !important;overflow:visible !important;padding-bottom:18px !important;}
.card.compact-card .deal-expand{position:static !important;display:block !important;width:100% !important;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;margin:0 !important;transform:none !important;}
.card.compact-card .deal-expand[data-open="1"]{margin-top:16px !important;}
.card.compact-card .expanded-content{position:static !important;display:block !important;width:100% !important;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;transform:none !important;}
.card.compact-card .feedback-block,
.card.compact-card .detail-actions,
.card.compact-card .rating-block,
.card.compact-card .toggles{position:static !important;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;}
.card.compact-card .toggles{display:flex !important;flex-wrap:wrap !important;gap:10px !important;}
.card.compact-card .rate{flex:0 0 auto !important;}
@media (max-width:800px){header.appnav > .appnav-inner{width:100% !important;min-height:68px !important;padding:0 14px !important;}
  header.appnav > .appnav-inner > .navbrand{font-size:32px !important;}
  header.appnav > .appnav-inner > .user-main{width:42px !important;min-width:42px !important;}}


header.appnav > .appnav-inner{position:relative !important;width:min(1120px,calc(100% - 32px)) !important;max-width:1120px !important;min-height:76px !important;margin:0 auto !important;padding:0 !important;display:grid !important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;align-items:center !important;box-sizing:border-box !important;}
header.appnav > .appnav-inner > .navbrand{position:static !important;grid-column:2 !important;grid-row:1 !important;justify-self:center !important;align-self:center !important;left:auto !important;top:auto !important;transform:none !important;margin:0 !important;white-space:nowrap !important;}
header.appnav > .appnav-inner > .user-main{position:static !important;grid-column:3 !important;grid-row:1 !important;justify-self:end !important;align-self:center !important;margin:0 !important;}
html,body{min-height:100% !important;overflow-x:hidden !important;}
body{overflow-y:auto !important;}

.cards{padding-bottom:36px !important;}


.deal-emoji-marker,.station-emoji-marker{background:transparent !important;border:0 !important;}
.deal-emoji-marker span,.station-emoji-marker span{display:grid !important;place-items:center !important;width:38px !important;height:38px !important;border-radius:50% !important;background:rgba(13,17,22,.96) !important;border:2px solid var(--accent,#2F9CFF) !important;box-shadow:0 6px 18px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.06) !important;font-size:20px !important;}
.category-tag,.category-tags .category-tag,.chip.category-filter{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:34px !important;height:34px !important;padding:0 12px !important;line-height:1 !important;box-sizing:border-box !important;white-space:nowrap !important;}
@media (max-width:800px){header.appnav > .appnav-inner{width:100% !important;min-height:68px !important;padding:0 14px !important;grid-template-columns:44px minmax(0,1fr) 44px !important;}
  header.appnav > .appnav-inner > .navbrand{grid-column:2 !important;justify-self:center !important;}
  header.appnav > .appnav-inner > .user-main{grid-column:3 !important;justify-self:end !important;}}
@media (min-width:801px){header.appnav{position:relative !important;}
  header.appnav > .appnav-inner{position:relative !important;width:min(1120px,calc(100% - 32px)) !important;max-width:1120px !important;min-height:76px !important;margin:0 auto !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner > .user-main{position:relative !important;margin-left:auto !important;margin-right:0 !important;z-index:21 !important;}}
.station-emoji-marker span{border-color:var(--station-ring,var(--org-accent,#2F9CFF)) !important;}
.deal-emoji-marker span{border-color:var(--accent,#2F9CFF) !important;}

@media (min-width:801px){header.appnav{position:relative !important;width:100% !important;padding:0 !important;margin:0 !important;}
  header.appnav > .appnav-inner{position:relative !important;width:min(1120px,calc(100% - 32px)) !important;max-width:1120px !important;min-height:76px !important;margin:0 auto !important;padding:0 !important;display:grid !important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;align-items:center !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner > .navbrand{position:static !important;grid-column:2 !important;grid-row:1 !important;justify-self:center !important;align-self:center !important;inset:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;margin:0 !important;white-space:nowrap !important;z-index:1 !important;}
  header.appnav > .appnav-inner > .user-main{position:static !important;grid-column:3 !important;grid-row:1 !important;justify-self:end !important;align-self:center !important;inset:auto !important;transform:none !important;margin:0 !important;z-index:1 !important;}}
.filters-inline{align-items:center !important;}
.filters-inline > button,
.filters-inline > .chip,
.filters-inline > .category-filter,
button.chip,
button.chip.category-filter{display:inline-flex !important;align-items:center !important;justify-content:center !important;height:44px !important;min-height:44px !important;max-height:44px !important;padding:0 16px !important;margin:0 !important;border-radius:999px !important;line-height:1 !important;font-size:14px !important;font-weight:750 !important;box-sizing:border-box !important;white-space:nowrap !important;}
.filters-inline > button.active,
.filters-inline > .chip.active{height:44px !important;min-height:44px !important;max-height:44px !important;padding-top:0 !important;padding-bottom:0 !important;}
@media (max-width:800px){header.appnav > .appnav-inner{position:relative !important;width:100% !important;min-height:68px !important;padding:0 14px !important;margin:0 !important;display:grid !important;grid-template-columns:44px minmax(0,1fr) 44px !important;align-items:center !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner > .navbrand{position:static !important;grid-column:2 !important;justify-self:center !important;transform:none !important;inset:auto !important;}
  header.appnav > .appnav-inner > .user-main{position:static !important;grid-column:3 !important;justify-self:end !important;transform:none !important;inset:auto !important;margin:0 !important;}}
.admin-eligibility{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
.admin-eligibility .admin-bool{cursor:pointer !important;user-select:none !important;}
.admin-eligibility .admin-bool.on{background:color-mix(in srgb,var(--accent) 72%,rgba(255,255,255,.05)) !important;border-color:color-mix(in srgb,var(--accent) 62%,white 8%) !important;}
.choice-box > span{display:block !important;}
.choice-box > small{display:block !important;}
@media (min-width:801px){header.appnav{position:relative !important;left:50% !important;width:100vw !important;max-width:none !important;margin-left:-50vw !important;margin-right:0 !important;padding:0 !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner{position:relative !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 !important;display:block !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner > .navbrand{position:absolute !important;left:50% !important;top:50% !important;right:auto !important;bottom:auto !important;transform:translate(-50%,-50%) !important;margin:0 !important;z-index:2 !important;white-space:nowrap !important;}
  header.appnav > .appnav-inner > .user-main{position:absolute !important;top:50% !important;right:max(16px,calc((100vw - 1120px)/2)) !important;left:auto !important;bottom:auto !important;transform:translateY(-50%) !important;margin:0 !important;z-index:3 !important;}}

.appframe{display:flex !important;flex-direction:column !important;width:100% !important;min-height:100vh !important;grid-template-columns:none !important;grid-template-rows:none !important;}
header.appnav{position:relative !important;grid-column:1 / -1 !important;grid-row:auto !important;width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;align-self:stretch !important;justify-self:stretch !important;}
header.appnav > .appnav-inner > .navbrand{position:static !important;grid-column:2 !important;grid-row:1 !important;justify-self:center !important;align-self:center !important;inset:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;margin:0 !important;white-space:nowrap !important;z-index:1 !important;}
header.appnav > .appnav-inner > .user-main{position:static !important;grid-column:3 !important;grid-row:1 !important;justify-self:end !important;align-self:center !important;inset:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;margin:0 !important;z-index:1 !important;}
main.shell,
footer.appfooter{width:100% !important;grid-column:1 / -1 !important;}
@media (max-width:800px){header.appnav > .appnav-inner{width:100% !important;min-height:68px !important;padding:0 14px !important;grid-template-columns:44px minmax(0,1fr) 44px !important;}
  header.appnav > .appnav-inner > .navbrand{grid-column:2 !important;justify-self:center !important;}
  header.appnav > .appnav-inner > .user-main{grid-column:3 !important;justify-self:end !important;}}
.appframe{width:100% !important;max-width:none !important;}
header.appnav{position:relative !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 !important;display:block !important;box-sizing:border-box !important;}
header.appnav > .appnav-inner{position:relative !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 32px !important;display:block !important;box-sizing:border-box !important;}
header.appnav > .appnav-inner > .navbrand{position:absolute !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;margin:0 !important;inset:auto !important;z-index:2 !important;white-space:nowrap !important;}
header.appnav > .appnav-inner > .user-main{position:absolute !important;right:32px !important;top:50% !important;transform:translateY(-50%) !important;margin:0 !important;inset:auto !important;z-index:3 !important;}
@media (max-width:800px){header.appnav,
  header.appnav > .appnav-inner{min-height:68px !important;}
  header.appnav > .appnav-inner{padding:0 14px !important;}
  header.appnav > .appnav-inner > .navbrand{left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;}
  header.appnav > .appnav-inner > .user-main{right:14px !important;top:50% !important;transform:translateY(-50%) !important;}}


@media (min-width:801px){header.appnav{display:block !important;position:relative !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 !important;}
  header.appnav > .appnav-inner{display:flex !important;align-items:center !important;justify-content:space-between !important;position:relative !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 32px !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner > .navbrand{position:static !important;display:inline-flex !important;align-items:center !important;justify-content:flex-start !important;flex:0 0 auto !important;inset:auto !important;transform:none !important;margin:0 !important;}
  header.appnav > .appnav-inner > .user-main{position:static !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;flex:0 0 auto !important;inset:auto !important;transform:none !important;margin:0 !important;}}
@media (max-width:800px){header.appnav > .appnav-inner{display:grid !important;grid-template-columns:44px minmax(0,1fr) 44px !important;align-items:center !important;width:100% !important;min-height:68px !important;padding:0 14px !important;box-sizing:border-box !important;}
  header.appnav > .appnav-inner > .navbrand{position:static !important;grid-column:2 !important;justify-self:center !important;transform:none !important;inset:auto !important;margin:0 !important;}
  header.appnav > .appnav-inner > .user-main{position:static !important;grid-column:3 !important;justify-self:end !important;transform:none !important;inset:auto !important;margin:0 !important;}}


body .appframe > header.appnav{position:relative !important;display:block !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 !important;grid-template-columns:none !important;gap:0 !important;box-sizing:border-box !important;}
@media (min-width:801px){body .appframe > header.appnav > .appnav-inner{position:relative !important;display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;width:100% !important;max-width:none !important;min-height:76px !important;margin:0 !important;padding:0 32px !important;gap:24px !important;box-sizing:border-box !important;}
  body .appframe > header.appnav > .appnav-inner > button.navbrand{position:static !important;display:inline-flex !important;flex:0 0 auto !important;align-items:center !important;justify-content:flex-start !important;order:1 !important;inset:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;margin:0 !important;padding:0 !important;}
  body .appframe > header.appnav > .appnav-inner > button.user-main{position:static !important;display:inline-flex !important;flex:0 0 auto !important;align-items:center !important;justify-content:flex-end !important;order:2 !important;inset:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;margin:0 !important;}}
@media (max-width:800px){body .appframe > header.appnav > .appnav-inner{position:relative !important;display:grid !important;grid-template-columns:44px minmax(0,1fr) 44px !important;align-items:center !important;width:100% !important;min-height:68px !important;margin:0 !important;padding:0 14px !important;box-sizing:border-box !important;}
  body .appframe > header.appnav > .appnav-inner > button.navbrand{position:static !important;grid-column:2 !important;justify-self:center !important;inset:auto !important;transform:none !important;margin:0 !important;}
  body .appframe > header.appnav > .appnav-inner > button.user-main{position:static !important;grid-column:3 !important;justify-self:end !important;inset:auto !important;transform:none !important;margin:0 !important;}}


.bs-header{position:relative;width:100%;min-height:76px;margin:0;padding:0;background:rgba(15,18,20,.78);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-sizing:border-box;z-index:1000;}
.bs-header-inner{width:100%;min-height:76px;padding:0 32px;margin:0;display:flex;align-items:center;justify-content:space-between;gap:24px;box-sizing:border-box;}
.bs-logo{display:inline-flex;align-items:center;justify-content:flex-start;flex:0 0 auto;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:clamp(34px,3vw,44px);font-weight:900;line-height:1;letter-spacing:-.04em;cursor:pointer;white-space:nowrap;}
.bs-profile{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;cursor:pointer;}
.bs-profile-meta{display:flex;flex-direction:column;align-items:flex-end;line-height:1.05;}
.bs-profile-meta strong{font-size:14px;font-weight:800;}
.bs-profile-meta small{margin-top:3px;font-size:11px;color:var(--muted);}
@media (max-width:800px){.bs-header{min-height:68px;}
  .bs-header-inner{position:relative;min-height:68px;padding:0 14px;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;}
  .bs-logo{grid-column:2;justify-self:center;font-size:32px;}
  .bs-profile{grid-column:3;justify-self:end;width:42px;min-width:42px;justify-content:center;}
  .bs-profile-meta{display:none;}}
.bs-header{position:relative;width:100%;min-height:76px;margin:0;padding:0;background:rgba(15,18,20,.78);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-sizing:border-box;z-index:1000}
.bs-header-inner{width:100%;min-height:76px;padding:0 32px;margin:0;display:flex;align-items:center;justify-content:space-between;gap:24px;box-sizing:border-box}
.bs-logo{display:inline-flex;align-items:center;justify-content:flex-start;flex:0 0 auto;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:clamp(34px,3vw,44px);font-weight:900;line-height:1;letter-spacing:-.04em;cursor:pointer;white-space:nowrap}
.bs-profile{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;cursor:pointer}
.bs-profile-meta{display:flex;flex-direction:column;align-items:flex-end;line-height:1.05}
.bs-profile-meta strong{font-size:14px;font-weight:800}.bs-profile-meta small{margin-top:3px;font-size:11px;color:var(--muted)}
.avatar-with-notice{position:relative}.admin-notice-bubble{position:absolute;top:-7px;right:-8px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#ff4d5f;color:#fff;border:2px solid var(--bg);font-size:10px;font-weight:900;line-height:1;box-sizing:border-box;box-shadow:0 4px 12px rgba(0,0,0,.28)}
@media (max-width:800px){.bs-header{min-height:68px}.bs-header-inner{position:relative;min-height:68px;padding:0 14px;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center}.bs-logo{grid-column:2;justify-self:center;font-size:32px}.bs-profile{grid-column:3;justify-self:end;width:42px;min-width:42px;justify-content:center}.bs-profile-meta{display:none}}


.bp-mobile-tabbar{
  display:none;
}


.bp-deals-icon svg{
  width:23px;
  height:23px;
  display:block;
}
.bp-deals-icon path{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linejoin:round;
}
.bp-tab.active .bp-deals-icon path{
  fill:currentColor;
  stroke:currentColor;
}

@media (max-width:800px){body:has(.bp-mobile-tabbar) .shell{
    padding-bottom:calc(118px + env(safe-area-inset-bottom));
  }

  body:has(.bp-mobile-tabbar) .appfooter{
    padding-bottom:calc(104px + env(safe-area-inset-bottom));
  }

  .bp-mobile-tabbar{
    position:fixed;
    left:13px;
    right:13px;
    bottom:calc(10px + env(safe-area-inset-bottom));
    z-index:1500;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    align-items:end;
    min-height:66px;
    padding:7px 8px 8px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:22px;
    background:rgba(17,22,27,.78);
    box-shadow:0 18px 48px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.05);
    backdrop-filter:blur(22px) saturate(145%);
    -webkit-backdrop-filter:blur(22px) saturate(145%);
  }

  .bp-tab{
    position:relative;
    display:flex;
    min-width:0;
    height:52px;
    padding:4px 2px 2px;
    border:0;
    border-radius:15px;
    background:transparent;
    color:var(--muted);
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    cursor:pointer;
  }

  .bp-tab.active{
    color:var(--accent);
    background:color-mix(in srgb,var(--accent) 12%,transparent);
  }

  .bp-tab-icon{
    display:grid;
    place-items:center;
    height:23px;
    font-size:23px;
    line-height:1;
    font-weight:800;
  }

  .bp-tab small{
    overflow:hidden;
    max-width:100%;
    font-size:10px;
    line-height:1;
    font-weight:750;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .bp-tab-add{
    overflow:visible;
    justify-content:flex-end;
  }

  .bp-add-icon{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    margin-top:-22px;
    border:1px solid color-mix(in srgb,var(--accent) 75%,white 12%);
    border-radius:50%;
    background:var(--accent);
    color:#071015;
    box-shadow:0 10px 25px color-mix(in srgb,var(--accent) 30%,transparent);
    font-size:30px;
    font-weight:500;
    line-height:1;
  }

  .bp-tab-add small{
    margin-top:1px;
  }

  .explore-hero .add-circle{
    display:none;
  }}


.deal-marker-shell{
  position:relative;
  width:44px;
  height:48px;
}

.deal-marker-main{
  position:absolute;
  left:3px;
  top:7px;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:2px solid var(--accent,#2f9cff);
  border-radius:50%;
  background:rgba(13,17,22,.96);
  box-shadow:
    0 6px 18px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.06);
  font-size:20px;
  line-height:1;
  box-sizing:border-box;
}

.deal-marker-benefit{
  position:absolute;
  left:50%;
  top:0;
  z-index:2;
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border:2px solid var(--accent,#2f9cff);
  border-radius:50%;
  background:rgba(13,17,22,.98);
  box-shadow:0 3px 9px rgba(0,0,0,.35);
  font-size:10px;
  line-height:1;
  transform:translateX(-50%);
  box-sizing:border-box;
}


.bs-logo{
  position:relative;
  z-index:5;
  pointer-events:auto;
  cursor:pointer;
}

.bp-loading{
  display:flex;
  min-height:180px;
  width:100%;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:900;
  letter-spacing:-.035em;
}

.bp-loading-blue{
  color:var(--accent,#2f9cff);
  animation:bp-blue-flash 1.15s ease-in-out infinite;
}

.bp-loading-text{
  color:var(--text);
}

@keyframes bp-blue-flash{0%,100%{
    opacity:.55;
    text-shadow:0 0 0 rgba(47,156,255,0);
  }
  50%{
    opacity:1;
    text-shadow:0 0 14px rgba(47,156,255,.8);
  }}

.deal-marker-main{
  background:
    radial-gradient(circle at 50% 0, transparent 0 10px, rgba(13,17,22,.96) 10.5px),
    rgba(13,17,22,.96);
  border-color:var(--accent,#2f9cff);
}

.deal-marker-main::before{
  content:"";
  position:absolute;
  left:50%;
  top:-3px;
  width:24px;
  height:10px;
  background:rgba(13,17,22,.96);
  transform:translateX(-50%);
}

.deal-marker-benefit{
  top:-2px;
  width:auto;
  height:auto;
  min-width:0;
  border:0;
  background:transparent;
  box-shadow:none;
  font-size:15px;
  line-height:1;
  text-shadow:0 2px 5px rgba(0,0,0,.75);
}

.deal-marker-main,
.deal-marker-benefit{
  pointer-events:none;
}


/* BluePerks Design System v0.8.0 */
:root{
  --bp-font-sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --bp-font-size-xs:.75rem;
  --bp-font-size-sm:.875rem;
  --bp-font-size-md:1rem;
  --bp-font-size-lg:1.125rem;
  --bp-font-size-xl:1.5rem;
  --bp-font-size-2xl:2rem;
  --bp-font-size-3xl:clamp(2rem,5vw,3.25rem);
  --bp-line-tight:1.1;
  --bp-line-normal:1.5;
  --bp-weight-regular:500;
  --bp-weight-semibold:700;
  --bp-weight-bold:850;
  --bp-space-1:.25rem;
  --bp-space-2:.5rem;
  --bp-space-3:.75rem;
  --bp-space-4:1rem;
  --bp-space-5:1.5rem;
  --bp-space-6:2rem;
  --bp-radius-sm:10px;
  --bp-radius-md:14px;
  --bp-radius-lg:18px;
  --bp-radius-pill:999px;
  --bp-color-text:var(--text);
  --bp-color-muted:var(--muted);
  --bp-color-accent:var(--accent,#2f9cff);
  --bp-color-surface:rgba(22,27,33,.58);
  --bp-color-border:rgba(255,255,255,.10);
}

html,body{
  font-family:var(--bp-font-sans);
  font-size:var(--bp-font-size-md);
  line-height:var(--bp-line-normal);
}

h1,.bp-h1{font-size:var(--bp-font-size-3xl);line-height:var(--bp-line-tight);font-weight:var(--bp-weight-bold);margin:0 0 var(--bp-space-3)}
h2,.bp-h2{font-size:var(--bp-font-size-2xl);line-height:1.15;font-weight:var(--bp-weight-bold);margin:0 0 var(--bp-space-3)}
h3,.bp-h3{font-size:var(--bp-font-size-xl);line-height:1.2;font-weight:var(--bp-weight-bold);margin:0 0 var(--bp-space-2)}
h4,.bp-h4{font-size:var(--bp-font-size-lg);line-height:1.25;font-weight:var(--bp-weight-semibold);margin:0 0 var(--bp-space-2)}
h5,.bp-h5{font-size:var(--bp-font-size-md);line-height:1.3;font-weight:var(--bp-weight-semibold);margin:0 0 var(--bp-space-2)}
h6,.bp-h6{font-size:var(--bp-font-size-sm);line-height:1.3;font-weight:var(--bp-weight-semibold);margin:0 0 var(--bp-space-2)}
p,.bp-body{font-size:var(--bp-font-size-md);line-height:var(--bp-line-normal);margin:0 0 var(--bp-space-4)}
.bp-small{font-size:var(--bp-font-size-sm);line-height:1.4}
.bp-muted{color:var(--bp-color-muted)}
.bp-stack-sm{display:grid;gap:var(--bp-space-2)}
.bp-stack-md{display:grid;gap:var(--bp-space-4)}
.bp-cluster{display:flex;align-items:center;flex-wrap:wrap;gap:var(--bp-space-2)}

.bp-loading{
  min-height:180px;
  display:grid;
  place-items:center;
  font-family:var(--bp-font-sans);
  font-size:var(--bp-font-size-lg);
  font-weight:var(--bp-weight-bold);
  color:var(--bp-color-accent);
  animation:bp-blue-flash 1.15s ease-in-out infinite;
}


.map-loading-overlay{
  position:absolute;
  inset:0;
  z-index:600;
  display:grid;
  place-items:center;
  border-radius:var(--bp-radius-lg);
  background:rgba(13,17,22,.58);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.map-loading-overlay[hidden]{
  display:none;
}

.map-loading-overlay .bp-loading{
  min-height:0;
}

.deal-marker-main{
  position:absolute;
  left:3px;
  top:7px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:rgba(13,17,22,.96);
  box-shadow:0 6px 18px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06);
  font-size:20px;
  line-height:1;
}

.deal-marker-main::after{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:50%;
  background:conic-gradient(from -24deg,transparent 0 48deg,var(--bp-color-accent) 48deg 360deg);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 0);
  mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 0);
  pointer-events:none;
}

.deal-marker-main::before{
  content:none;
}

.deal-marker-benefit{
  position:absolute;
  left:50%;
  top:-1px;
  z-index:3;
  width:auto;
  height:auto;
  min-width:0;
  border:0;
  background:transparent;
  box-shadow:none;
  font-size:13.5px;
  line-height:1;
  text-shadow:0 2px 5px rgba(0,0,0,.75);
  transform:translateX(-50%);
}

.benefit-summary-grid{
  display:grid;
  grid-template-columns:repeat(var(--benefit-columns,1),minmax(0,1fr));
  gap:var(--bp-space-2);
  margin:var(--bp-space-3) 0;
}
.benefit-summary-grid.count-1{--benefit-columns:1}
.benefit-summary-grid.count-2{--benefit-columns:2}
.benefit-summary-grid.count-3{--benefit-columns:3}
.benefit-summary-item{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--bp-space-2);
  min-width:0;
  padding:.65rem .75rem;
  border:1px solid var(--bp-color-border);
  border-radius:var(--bp-radius-md);
  background:var(--bp-color-surface);
}
.benefit-summary-emoji{font-size:1.05rem;line-height:1}
.benefit-summary-value{
  overflow:hidden;
  font-size:var(--bp-font-size-sm);
  font-weight:var(--bp-weight-semibold);
  text-overflow:ellipsis;
  white-space:nowrap;
}

.deal-location-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--bp-space-2);
  margin-top:var(--bp-space-2);
}
.deal-distance{
  color:var(--bp-color-muted);
  font-size:var(--bp-font-size-xs);
}
.deal-navigation-button{
  display:inline-flex;
  align-items:center;
  gap:.25rem;
  padding:.45rem .65rem;
  border:1px solid var(--bp-color-border);
  border-radius:var(--bp-radius-pill);
  color:var(--bp-color-accent);
  background:var(--bp-color-surface);
  font-size:var(--bp-font-size-xs);
  font-weight:var(--bp-weight-semibold);
  text-decoration:none;
}

@media (min-width:801px){.deal-feedback-row{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:var(--bp-space-3);
  }
  .detail-actions{
    flex:1 1 auto;
    display:flex;
    flex-wrap:nowrap;
  }
  .detail-actions .toggle,
  .rating-block .rate{
    min-height:34px;
    padding:.45rem .65rem;
    font-size:var(--bp-font-size-xs);
  }
  .rating-block{
    flex:0 0 auto;
  }
  .rating-block .toggles{
    flex-wrap:nowrap;
    gap:.35rem;
  }
  .rating-title{
    margin-bottom:.35rem;
    font-size:var(--bp-font-size-xs);
  }}

@media (max-width:800px){.explore-tools{
    display:grid;
    gap:var(--bp-space-3);
  }
  
  
  
  
  .sort-direction{
    width:36px;
    height:36px;
    flex:0 0 36px;
  }
  
  
  
  
  .benefit-summary-grid{
    grid-template-columns:repeat(auto-fit,minmax(95px,1fr));
  }}


.startup-error{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:var(--bp-space-4,1rem);
}
.startup-error .panel{
  width:min(100%,520px);
  text-align:center;
}


:root{
  --bp-control-font-size:.8125rem;
  --bp-control-padding-y:.55rem;
  --bp-control-padding-x:.72rem;
  --bp-control-radius:12px;
}

.deal-address-line{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--bp-space-2,.5rem);
}

.deal-address-line .deal-location-actions{
  display:inline-flex;
  align-items:center;
  gap:var(--bp-space-2,.5rem);
  margin:0;
}

.feedback-title,
.rating-title{
  margin-bottom:.45rem;
  font-size:var(--bp-font-size-xs,.75rem);
  font-weight:var(--bp-weight-semibold,700);
  color:var(--bp-color-muted,var(--muted));
}

.feedback-section{
  display:grid;
  gap:var(--bp-space-3,.75rem);
}

@media (max-width:800px){.sort-direction{
    width:36px;
    height:36px;
    min-width:36px;
    border-radius:var(--bp-control-radius);
  }

  

  

  .deal-feedback-row{
    display:block;
  }

  

  

  

  

  .feedback-title,
  .rating-title{
    margin-bottom:.4rem;
  }}


:root{--bp-control-font-size:.875rem;--bp-control-line-height:1.2;--bp-control-padding-y:.6rem;--bp-control-padding-x:.78rem;--bp-control-radius:13px;--bp-control-gap:.55rem}
.food-subcategory-field{display:grid;gap:.75rem;margin-top:.75rem}.food-subcategory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--bp-control-gap)}
.food-subcategory-option{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.7rem;border:1px solid var(--bp-color-border);border-radius:var(--bp-control-radius);background:var(--bp-color-surface);color:var(--bp-color-text);font:inherit;cursor:pointer}
.food-subcategory-option.on{border-color:var(--bp-color-accent);background:color-mix(in srgb,var(--bp-color-accent) 15%,transparent)}.food-subcategory-option span{font-size:1.15rem}.food-subcategory-option small{font-size:var(--bp-control-font-size)}
.deal-feedback-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start;gap:1rem}.feedback-column{display:grid;grid-template-rows:auto auto;align-content:start}
.feedback-title,.rating-title{min-height:1.2rem;margin:0 0 .45rem;font-size:.75rem;font-weight:700;line-height:1.2;color:var(--bp-color-muted)}
.detail-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem}.rating-block .toggles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem}
.detail-actions .toggle,.rating-block .rate{min-width:0;width:100%;min-height:34px;padding:.48rem .35rem;font-size:.75rem;line-height:1.15;white-space:nowrap}
@media (max-width:800px){.explore-tools{display:grid;gap:var(--bp-control-gap)}.mobile-control-row{display:flex;align-items:center;justify-content:space-between;gap:var(--bp-control-gap);width:100%;min-width:0;margin:0}
.mode-filter{display:inline-flex;width:auto;min-width:0;margin:0;padding:.2rem;border-radius:calc(var(--bp-control-radius) + 2px)}
.mode-filter button,.sort-select,#offerSearch,.filters-inline .chip{width:auto;min-width:0;min-height:0;height:auto;margin:0;padding:var(--bp-control-padding-y) var(--bp-control-padding-x);border-radius:var(--bp-control-radius);font-size:var(--bp-control-font-size);line-height:var(--bp-control-line-height)}
.sort-wrap{display:inline-flex;align-items:center;justify-content:flex-end;gap:.4rem;width:auto;min-width:0;max-width:62%;margin-left:auto}.sort-direction{flex:0 0 38px;width:38px;height:38px;min-width:38px;border-radius:var(--bp-control-radius)}
.sort-select{max-width:calc(100vw - 230px);padding-right:1.8rem;text-overflow:ellipsis}#offerSearch{display:block;width:100%}
.filters-inline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--bp-control-gap);margin:0}.filters-inline .chip{max-width:100%;white-space:nowrap}
.deal-feedback-row{grid-template-columns:1fr;gap:.8rem}.detail-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.rating-block .toggles{grid-template-columns:repeat(5,minmax(0,1fr))}
.detail-actions .toggle,.rating-block .rate{padding:.5rem .2rem;font-size:.72rem}.food-subcategory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


.deal-feedback-row{
  align-items:start;
}
.feedback-column{
  min-width:0;
}
.feedback-title,
.rating-title{
  display:flex;
  align-items:flex-end;
  min-height:1.25rem;
}

@media (max-width:800px){.detail-actions,
  .rating-block .toggles{
    display:grid;
    width:100%;
  }

  .detail-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rating-block .toggles{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }

  .detail-actions .toggle,
  .rating-block .rate{
    min-width:0;
    width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
  }}


.card.map-focused{
  outline:2px solid var(--accent,#2f9cff);
  outline-offset:2px;
  box-shadow:0 0 0 5px rgba(47,156,255,.12);
}

/* Feedback and rating stay in rows */
.deal-feedback-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);
  align-items:start;
  gap:1rem;
}
.feedback-column{
  min-width:0;
  display:grid;
  grid-template-rows:auto auto;
}
.feedback-title,
.rating-title{
  min-height:1.25rem;
  margin:0 0 .45rem;
  display:flex;
  align-items:flex-end;
}
.detail-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.4rem;
}
.rating-block .toggles{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:.35rem;
}
.detail-actions .toggle,
.rating-block .rate{
  min-width:0;
  width:100%;
  white-space:nowrap;
}

/* Restore the cleaner v0.7.2 mobile control proportions */
@media (max-width:800px){.explore-tools{display:block}
  .mobile-control-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    width:100%;
    margin:0 0 16px;
  }
  .mobile-control-row .mode-filter{
    display:inline-flex;
    flex:0 0 auto;
    width:auto;
    max-width:max-content;
    min-width:0;
    padding:4px;
    border-radius:18px;
  }
  .mobile-control-row .mode-filter button{
    flex:0 0 auto;
    width:auto;
    min-width:0;
    min-height:40px;
    padding:0 12px;
    border-radius:15px;
    font-size:.875rem;
    line-height:1;
    white-space:nowrap;
  }
  .mobile-control-row .sort-wrap{
    display:inline-flex;
    flex:0 1 auto;
    width:auto;
    min-width:0;
    max-width:calc(100% - 112px);
    margin-left:auto;
    justify-content:flex-end;
    overflow:hidden;
    gap:8px;
  }
  .mobile-control-row .sort-direction{
    width:40px;
    height:40px;
    flex:0 0 40px;
    border-radius:14px;
  }
  .mobile-control-row .sort-select{
    flex:0 1 auto;
    width:auto;
    min-width:0;
    max-width:calc(100% - 48px);
    min-height:40px;
    padding:0 30px 0 12px;
    border-radius:14px;
    font-size:.875rem;
    text-align:right;
    text-overflow:ellipsis;
  }
  #offerSearch{
    width:100%;
    min-height:44px;
    margin:0 0 16px;
    padding:0 14px;
    border-radius:14px;
    font-size:.875rem;
  }
  .filters-inline{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    margin:0;
  }
  .filters-inline > button,
  .filters-inline > .chip,
  .filters-inline > .category-filter,
  button.chip,
  button.chip.category-filter{
    flex:0 0 auto;
    width:auto;
    min-width:0;
    max-width:none;
    min-height:40px;
    height:40px;
    padding:0 12px;
    border-radius:14px;
    font-size:.875rem;
    line-height:1;
    white-space:nowrap;
    text-align:center;
  }
  .deal-feedback-row{
    grid-template-columns:1fr;
    gap:.8rem;
  }
  .detail-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .rating-block .toggles{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }}


/* Address validation */
.input.input-error{
  border-color:#ff6b6b;
}
.address-validation-message{
  margin:.35rem 0 0;
  font-size:.75rem;
}
.address-validation-message.success{
  color:#77dda6;
}
.address-validation-message.error{
  color:#ff8a8a;
}

/* Feedback and rating controls */
.feedback-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.45rem;
}

.feedback-icon-button{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:.45rem;
  min-width:0;
  min-height:40px;
  padding:.45rem .65rem;
  border:1px solid var(--bp-color-border,rgba(255,255,255,.1));
  border-radius:12px;
  background:var(--bp-color-surface,rgba(22,27,33,.58));
  color:var(--bp-color-muted,var(--muted));
  font:inherit;
  font-size:.75rem;
  cursor:pointer;
}

.feedback-icon-button svg{
  width:22px;
  height:22px;
}

.feedback-icon-button.selected{
  border-color:var(--accent,#2f9cff);
  color:var(--accent,#2f9cff);
  background:color-mix(in srgb,var(--accent,#2f9cff) 14%,transparent);
}

.feedback-icon-button span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:left;
  font-weight:700;
}

.feedback-icon-button small{
  font-size:.7rem;
}

.rating-stars{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:center;
  gap:.3rem;
}

.rating-star{
  display:grid;
  place-items:center;
  width:100%;
  min-width:0;
  min-height:40px;
  padding:.35rem;
  border:1px solid var(--bp-color-border,rgba(255,255,255,.1));
  border-radius:12px;
  background:var(--bp-color-surface,rgba(22,27,33,.58));
  color:var(--bp-color-muted,var(--muted));
  cursor:pointer;
}

.rating-star svg{
  width:22px;
  height:22px;
}

.rating-star.filled,
.rating-star:hover,
.rating-star:focus-visible{
  color:#ffd85a;
  border-color:rgba(255,216,90,.55);
}

@media (min-width:801px){.deal-feedback-row{
    grid-template-columns:minmax(280px,.85fr) minmax(320px,1.15fr);
  }}

@media (max-width:800px){.deal-feedback-row{
    grid-template-columns:1fr;
  }

  .feedback-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .rating-stars{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }

  .feedback-icon-button{
    grid-template-columns:22px minmax(0,1fr) auto;
    padding:.42rem .5rem;
    font-size:.7rem;
  }

  .rating-star{
    min-height:38px;
    padding:.28rem;
  }

  .rating-star svg{
    width:20px;
    height:20px;
  }}


html,
body{
  min-height:100%;
}

body.deal-overview-page{
  height:100dvh;
  min-height:100dvh;
  overflow:hidden;
}

body.deal-overview-page > .app-shell,
body.deal-overview-page > main,
body.deal-overview-page .page-shell{
  min-height:0;
}


/* Rating mirrors Feedback exactly */
.feedback-column.rating-block{
  gap:0;
  row-gap:0;
}

.feedback-column.rating-block .rating-stars{
  margin:0;
}

.feedback-column.rating-block .rating-title{
  margin-bottom:.45rem;
}


body.deal-overview-page{
  height:100dvh;
  min-height:100dvh;
  overflow:hidden;
}

body.deal-overview-page .appframe{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  width:100%;
  height:100dvh;
  min-height:0;
  overflow:hidden;
}

body.deal-overview-page .bs-header{
  grid-row:1;
}

body.deal-overview-page .shell{
  grid-row:2;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  width:100%;
  height:100%;
  min-height:0;
  overflow:hidden;
}

body.deal-overview-page .appfooter{
  display:none;
}

body.deal-overview-page .explore-hero{
  grid-row:1;
  min-height:0;
}

body.deal-overview-page .explore-tools{
  grid-row:2;
  min-height:0;
}


body.deal-overview-page .bp-mobile-tabbar{
  grid-row:4;
}


@media (max-width:800px){body.deal-overview-page .shell{
    grid-template-rows:auto auto minmax(0,1fr);
    padding-bottom:0;
  }

  

  

  

  body.deal-overview-page .bp-mobile-tabbar{
    position:fixed;
  }}

/* Admin failures remain local to the active tab */
.admin-inline-error{
  display:grid;
  justify-items:start;
  gap:.75rem;
}

.admin-inline-error p{
  margin:0;
}


body.deal-overview-page{
  height:auto;
  min-height:100%;
  overflow-x:hidden;
  overflow-y:auto;
}

body.deal-overview-page .appframe{
  display:block;
  width:100%;
  height:auto;
  min-height:100vh;
  overflow:visible;
}

body.deal-overview-page .shell{
  display:block;
  width:100%;
  height:auto;
  min-height:0;
  overflow:visible;
}

body.deal-overview-page .appfooter{
  display:flex;
}

/*
 * The page scrolls normally until this section.
 * Inside this section only the cards column scrolls.
 */


/* The station button belongs to the map and cannot overlap filters anymore. */


@media (max-width:800px){body.deal-overview-page{
    overflow-y:auto;
  }

  body.deal-overview-page .shell{
    padding-bottom:calc(104px + env(safe-area-inset-bottom));
  }

  

  

  

  

  

  

  body.deal-overview-page .bp-mobile-tabbar{
    position:fixed;
  }}


@media (max-width:800px){.deal-address-line > span,
  .deal-distance{
    font-size:var(--bp-font-size-xs,.75rem);
    line-height:1.35;
  }}


/* ==========================================================================
   BluePerks v1.0.0 — Deals + Map
   Native page scrolling. No JS scroll interception. No nested scroll areas.
   ========================================================================== */


/* Mobile: sticky map above the normal deal flow */


/* ==========================================================================
   BluePerks v1.0.1 — Map and deal scrolling based on v0.3.2
   ========================================================================== */

.deals-layout{
  --deals-sticky-top:88px;
  --deals-viewport-height:calc(100dvh - 120px);
  display:grid;
  width:100%;
  align-items:start;
  gap:16px;
  overflow:visible;
}

.deals-layout--local{
  grid-template-columns:minmax(320px,42%) minmax(0,1fr);
}

.deals-layout--online{
  grid-template-columns:minmax(0,1fr);
}

.deals-map{
  min-width:0;
  height:var(--deals-viewport-height);
  align-self:start;
  overflow:visible;
}

.deals-map__sticky{
  position:sticky;
  top:var(--deals-sticky-top);
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:12px;
  width:100%;
  height:var(--deals-viewport-height);
  min-height:480px;
}

.deals-map__canvas{
  position:relative;
  width:100%;
  height:100%;
  min-height:0;
  overflow:hidden;
  border-radius:18px;
}

.deals-map__canvas #map{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0;
  border-radius:inherit;
}

.deals-map__actions{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
}


.deals-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  width:100%;
  height:var(--deals-viewport-height);
  min-height:480px;
  max-height:var(--deals-viewport-height);
  min-width:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
  padding-right:4px;
  padding-bottom:28px;
}

/* Online has no map but retains the same controlled result height. */
.deals-layout--online .deals-list{
  width:min(100%,900px);
  margin-inline:auto;
}

/* Mobile: one fixed-height component, map above, deals below. */
@media (max-width:800px){.deals-layout{
    --deals-sticky-top:0px;
    --deals-mobile-map-height:240px;
    --deals-mobile-total-height:calc(100dvh - 92px);
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:var(--deals-mobile-map-height) minmax(0,1fr);
    gap:12px;
    width:100%;
    height:var(--deals-mobile-total-height);
    min-height:560px;
    max-height:760px;
    overflow:hidden;
  }

  .deals-map{
    grid-row:1;
    position:relative;
    z-index:20;
    width:100%;
    height:var(--deals-mobile-map-height);
    min-height:var(--deals-mobile-map-height);
    overflow:hidden;
  }

  .deals-map__sticky{
    position:sticky;
    top:var(--deals-sticky-top);
    display:block;
    width:100%;
    height:var(--deals-mobile-map-height);
    min-height:var(--deals-mobile-map-height);
  }

  .deals-map__canvas{
    width:100%;
    height:var(--deals-mobile-map-height);
    min-height:var(--deals-mobile-map-height);
    border-radius:16px;
  }

  .deals-map__canvas #map{
    width:100%;
    height:var(--deals-mobile-map-height);
    min-height:var(--deals-mobile-map-height);
  }

  .deals-map__actions{
    position:absolute;
    inset:0;
    z-index:700;
    display:block;
    width:100%;
    height:var(--deals-mobile-map-height);
    pointer-events:none;
  }

  

  

  .deals-list{
    grid-row:2;
    width:100%;
    height:100%;
    min-height:0;
    max-height:none;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:2px;
    padding-bottom:96px;
  }

  .deals-layout--online{
    display:block;
    height:calc(100dvh - 92px);
    min-height:480px;
  }

  .deals-layout--online .deals-list{
    height:100%;
    max-height:100%;
  }}


/* ==========================================================================
   BluePerks v1.0.2 — Station center control
   ========================================================================== */

.deals-map__actions{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
}

.deals-map__actions .station-center-toggle{
  position:static;
  inset:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  width:auto;
  max-width:100%;
  min-height:40px;
  margin:0;
  padding:.6rem .85rem;
  border:1px solid var(--glass-border);
  border-radius:14px;
  background:var(--glass-bg);
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(12px) saturate(120%);
  -webkit-backdrop-filter:blur(12px) saturate(120%);
  font:inherit;
  line-height:1;
  cursor:pointer;
  white-space:nowrap;
}

.deals-map__actions .station-center-toggle:hover,
.deals-map__actions .station-center-toggle:focus-visible{
  border-color:color-mix(in srgb,var(--accent) 55%,var(--glass-border));
}

.station-center-icon{
  display:grid;
  flex:0 0 20px;
  place-items:center;
  width:20px;
  height:20px;
}

.station-center-icon svg{
  display:block;
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.station-center-label{
  display:inline;
  min-width:0;
  font-size:.875rem;
  font-weight:700;
  line-height:1;
}

@media (max-width:800px){.deals-map__actions{
    position:absolute;
    inset:0;
    z-index:700;
    display:block;
    width:100%;
    height:240px;
    pointer-events:none;
  }

  .deals-map__actions .station-center-toggle{
    position:absolute;
    left:12px;
    bottom:12px;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    min-height:42px;
    max-width:none;
    margin:0;
    padding:0;
    border-radius:50%;
    pointer-events:auto;
  }

  .station-center-icon,
  .station-center-icon svg{
    width:22px;
    height:22px;
  }

  .station-center-label{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }}


/* BluePerks v1.0.3 — header avatar organization color */





/* BluePerks v1.0.4 — organization avatar */




/* Soft ending for the bounded deal list */
.deals-layout{
  position:relative;
  margin-bottom:0;
}

.deals-list{
  position:relative;
  padding-bottom:38px;
  -webkit-mask-image:linear-gradient(
    to bottom,
    #000 0,
    #000 calc(100% - 42px),
    rgba(0,0,0,.88) calc(100% - 24px),
    transparent 100%
  );
  mask-image:linear-gradient(
    to bottom,
    #000 0,
    #000 calc(100% - 42px),
    rgba(0,0,0,.88) calc(100% - 24px),
    transparent 100%
  );
}

body.deal-overview-page .appfooter{
  margin-top:0;
  padding-top:16px;
}

body.deal-overview-page .shell{
  padding-bottom:0;
}

@media (max-width:800px){.deals-list{
    padding-bottom:110px;
    -webkit-mask-image:linear-gradient(
      to bottom,
      #000 0,
      #000 calc(100% - 54px),
      rgba(0,0,0,.86) calc(100% - 28px),
      transparent 100%
    );
    mask-image:linear-gradient(
      to bottom,
      #000 0,
      #000 calc(100% - 54px),
      rgba(0,0,0,.86) calc(100% - 28px),
      transparent 100%
    );
  }

  body.deal-overview-page .appfooter{
    margin-top:0;
    padding-top:12px;
  }}


/* ==========================================================================
   BluePerks v1.0.5 — Header organization avatar
   Uses the same --org-accent variable as the page background theme.
   ========================================================================== */

header.appnav .bs-profile{
  background:transparent;
  border:0;
  outline:0;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

header.appnav .bs-profile:hover,
header.appnav .bs-profile:focus,
header.appnav .bs-profile:focus-visible{
  background:transparent;
  border:0;
  outline:0;
  box-shadow:none;
}

header.appnav .bs-profile .header-org-avatar{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border:0;
  outline:0;
  border-radius:14px;
  background:var(--org-accent);
  box-shadow:none;
  color:#fff;
}

header.appnav .bs-profile:hover .header-org-avatar,
header.appnav .bs-profile:focus .header-org-avatar,
header.appnav .bs-profile:focus-visible .header-org-avatar{
  border:0;
  outline:0;
  background:var(--org-accent);
  box-shadow:none;
}

@media(max-width:800px){
  header.appnav .bs-profile .header-org-avatar{
    width:42px;
    height:42px;
    flex-basis:42px;
  }
}


/* BluePerks v1.0.6 — definitive avatar background */
.avatar,
header.appnav .avatar,
header.appnav .bs-profile .avatar,
header.appnav .bs-profile .header-org-avatar{
  background:var(--station-ring,var(--org-accent,#2F9CFF)) !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

.avatar:hover,
.avatar:focus,
.avatar:focus-visible,
header.appnav .bs-profile:hover .avatar,
header.appnav .bs-profile:focus .avatar,
header.appnav .bs-profile:focus-visible .avatar{
  background:var(--station-ring,var(--org-accent,#2F9CFF)) !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}


/* BluePerks v1.0.7 — avatar emoji separation */
header.appnav .bs-profile .avatar{
  box-shadow:none !important;
}


/* BluePerks v1.0.8 — desktop online deals grid */
@media(min-width:801px){
  .deals-layout--online{
    display:block;
  }

  .deals-layout--online .deals-list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-content:start;
    gap:16px;
    width:100%;
    max-width:none;
    margin:0;
  }

  .deals-layout--online .deals-list > .card{
    min-width:0;
    width:100%;
  }
}

@media(min-width:801px) and (max-width:1050px){
  .deals-layout--online .deals-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* BluePerks v1.0.9 — stable online deal grid */
@media(min-width:1051px){
  .deals-layout--online .deals-list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-auto-rows:auto;
    align-items:start;
    align-content:start;
    gap:16px;
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
    overflow:visible;
    padding:0;
    mask-image:none;
    -webkit-mask-image:none;
  }

  .deals-layout--online .deals-list > .card{
    position:relative;
    inset:auto;
    display:block;
    width:100%;
    min-width:0;
    height:auto;
    min-height:0;
    max-height:none;
    margin:0;
    transform:none;
    align-self:start;
    overflow:visible;
  }
}

@media(min-width:801px) and (max-width:1050px){
  .deals-layout--online .deals-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:auto;
    align-items:start;
    align-content:start;
    gap:16px;
    width:100%;
    height:auto;
    min-height:0;
    max-height:none;
    overflow:visible;
    padding:0;
    mask-image:none;
    -webkit-mask-image:none;
  }

  .deals-layout--online .deals-list > .card{
    position:relative;
    inset:auto;
    display:block;
    width:100%;
    min-width:0;
    height:auto;
    min-height:0;
    max-height:none;
    margin:0;
    transform:none;
    align-self:start;
    overflow:visible;
  }
}


/* BluePerks v1.0.10 — full organization color + shape-following emoji outline */
header.appnav .bs-profile .header-org-avatar{
  background:var(--station-ring,var(--org-accent,#2F9CFF)) !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/*
 * drop-shadow follows the rendered emoji alpha shape.
 * Multiple 1 px shadows create a thin black contour without a rectangular box.
 */

header.appnav .bs-profile:hover .header-org-avatar,
header.appnav .bs-profile:focus .header-org-avatar,
header.appnav .bs-profile:focus-visible .header-org-avatar{
  background:var(--station-ring,var(--org-accent,#2F9CFF)) !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}




/* BluePerks v1.0.11 — visible shape-following emoji contour */
header.appnav .bs-profile .header-org-avatar__emoji{
  display:inline-block;
  font-size:21px;
  line-height:1;
  transform:translateZ(0);
  filter:
    drop-shadow(1.25px 0 0 #000)
    drop-shadow(-1.25px 0 0 #000)
    drop-shadow(0 1.25px 0 #000)
    drop-shadow(0 -1.25px 0 #000)
    drop-shadow(1px 1px 0 #000)
    drop-shadow(-1px 1px 0 #000)
    drop-shadow(1px -1px 0 #000)
    drop-shadow(-1px -1px 0 #000);
  -webkit-filter:
    drop-shadow(1.25px 0 0 #000)
    drop-shadow(-1.25px 0 0 #000)
    drop-shadow(0 1.25px 0 #000)
    drop-shadow(0 -1.25px 0 #000)
    drop-shadow(1px 1px 0 #000)
    drop-shadow(-1px 1px 0 #000)
    drop-shadow(1px -1px 0 #000)
    drop-shadow(-1px -1px 0 #000);
}


/* BluePerks v1.0.13 — online deal feedback layout */
@media(min-width:801px){
  .deals-layout--online .deal-feedback-row{
    grid-template-columns:minmax(0,1fr);
    gap:.85rem;
  }

  .deals-layout--online .feedback-column.rating-block{
    width:100%;
  }
}


/* BluePerks v1.0.14 — online partner visit button */
.partner-visit-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.4rem;
  width:100%;
  min-height:42px;
  margin-top:.75rem;
  padding:.7rem .9rem;
  border:1px solid color-mix(in srgb,var(--accent) 55%,var(--glass-border));
  border-radius:13px;
  background:color-mix(in srgb,var(--accent) 14%,var(--glass-bg));
  color:var(--accent);
  font-size:.875rem;
  font-weight:800;
  line-height:1;
  text-decoration:none;
}

.partner-visit-button:hover,
.partner-visit-button:focus-visible{
  background:color-mix(in srgb,var(--accent) 22%,var(--glass-bg));
  border-color:var(--accent);
  outline:none;
}
