@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--navy:#173b68;--navy-dark:#102947;--amber:#ffd166;--paper:#f4f7fb;--ink:#101c2d;--muted:#43536a;--line:#d1dbe7;--white:#fff;--green:#205c3b;--green-pale:#e0f1e5}
*{box-sizing:border-box}
html{scroll-behavior:smooth;touch-action:manipulation}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 'DM Sans',sans-serif}
button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:10px;padding:11px 15px;min-height:44px;font-weight:700;font-size:14px;background:#fff;color:var(--navy)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e5a900;outline-offset:2px}
header{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(16px,calc((100vw - 1100px)/2));gap:12px}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--navy);font:800 22px Manrope}.brand b{display:grid;place-items:center;width:38px;height:38px;background:var(--navy);color:var(--amber);border-radius:10px;font-size:27px}.brand small{display:block;font:700 9px 'DM Sans',sans-serif;letter-spacing:1.2px;color:var(--muted)}
.lime{color:#a65d00}.quiet{background:#fff;color:var(--navy);border-color:var(--line)}
main{max-width:1100px;margin:auto;padding:0 22px}
.hero{margin-top:22px;background:var(--navy);color:#fff;border-radius:20px;padding:clamp(25px,4.5vw,48px)}
small{font-size:12px;letter-spacing:1.1px;font-weight:700;color:var(--muted)}.hero>small{color:var(--amber)}
.hero h1{font:800 clamp(38px,5.5vw,60px)/1.04 Manrope;letter-spacing:-1.8px;margin:15px 0 12px}.hero em{font-style:normal;color:var(--amber)}
.hero p{font-size:17px;line-height:1.5;color:#f2f6fc;max-width:520px;margin:0 0 14px}.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.limebg{background:var(--amber);color:#17243a;border-color:var(--amber);margin:6px 8px 0 0}.outline{background:transparent;color:#fff;border-color:#d8e4f3;margin-top:6px}.hero-foot{font-size:13px;color:#f0f4fb;margin-top:18px}
.filters{position:relative;margin:-14px 18px 0;background:#fff;padding:14px;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 24px #10223b0d}.filters input,.filters select,.formgrid input,.formgrid select,dialog input{border:1px solid #b8c6d7;border-radius:9px;padding:12px 13px;width:100%;min-width:0;background:#fff;color:var(--ink);font-size:16px;min-height:46px}.filters input::placeholder,dialog input::placeholder{color:#58677b;opacity:1}.filterrow{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.chips button{border-radius:999px;background:#fff;padding:9px 13px;min-height:40px}.chips .active{background:var(--navy);color:#fff;border-color:var(--navy)}
.heading{display:flex;align-items:end;justify-content:space-between;margin:34px 0 14px;gap:10px}.heading h2,h2{font:800 26px/1.2 Manrope;letter-spacing:-.5px;margin:5px 0;color:var(--ink)}.heading>span{font-size:12px;color:var(--navy);background:#e3ebf5;padding:7px 10px;border-radius:999px;white-space:nowrap}#notice{font-size:14px;color:#264c35;line-height:1.5;margin-bottom:10px}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.art{height:124px;background:#e8eef6;display:grid;place-items:center;font-size:48px;position:relative}.tag{position:absolute;top:9px;left:9px;background:var(--green-pale);color:#17452b;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}.tag.red{background:#ffedc2;color:#713b00}.fresh{position:absolute;right:8px;top:8px;background:#fff;color:#26364b;padding:5px 7px;border-radius:999px;font-size:10px}.cardbody{padding:13px;display:flex;flex-direction:column;flex:1}.storeline,.meta,.time{font-size:12px;color:#43536a;line-height:1.4}.card h3{font:700 16px/1.35 Manrope;margin:8px 0 3px;color:var(--ink);overflow-wrap:anywhere}.price{font:800 27px/1.2 Manrope;color:var(--navy);margin-top:9px}.old{font:12px 'DM Sans',sans-serif;color:#536176;text-decoration:line-through;margin-left:4px}.saving{font-size:11px;color:#17452b;background:#d9f0df;border-radius:5px;padding:4px 5px;display:inline-block;margin:5px 0 0}.notes{font-size:12px;color:#43536a;line-height:1.45;margin-top:6px}.cardfoot{border-top:1px solid #e5eaf1;padding-top:9px;margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:6px}.confirm{background:#e4eefb;color:var(--navy);border-color:#b9cce6;padding:8px 10px;font-size:12px;min-height:40px}#empty{text-align:center;padding:40px 16px}
.how{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:22px;background:#e8eef6;border:1px solid #c9d5e5;border-radius:20px;padding:26px;margin:48px 0}.how h2{font-size:clamp(26px,3vw,34px);line-height:1.16;margin-top:9px}.how em{font-style:normal;color:var(--navy)}.how-intro>small{color:#344e70}.how-steps{display:grid;gap:9px}.how-step{display:grid;gap:2px;padding:11px 13px;border-radius:11px;background:#fff;border:1px solid #c9d5e5}.how-step b{color:var(--navy);font-size:15px}.how-step span{color:#34445a;font-size:14px;line-height:1.4}
.floating{display:none;position:fixed;right:16px;bottom:16px;border:0;border-radius:16px;background:var(--amber);color:#17243a;font-size:28px;width:56px;height:56px;box-shadow:0 5px 22px #10223b33}dialog{width:min(630px,calc(100% - 22px));max-height:90vh;border:0;border-radius:18px;padding:0;box-shadow:0 20px 90px #0005}dialog::backdrop{background:#0c1b2aaa;backdrop-filter:blur(3px)}dialog form{padding:22px}.modalhead{display:flex;justify-content:space-between;align-items:center;gap:12px}.modalhead h2{margin-top:5px}.x{border:0;border-radius:50%;font-size:23px;width:38px;height:38px;padding:0}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formgrid label,dialog label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:#26364b;min-width:0}.wide{grid-column:span 2}.inline{display:flex;gap:6px}.inline button{padding:8px}.modalactions{display:flex;justify-content:flex-end;gap:8px;margin:16px 0}.error{color:#a33c2f;font-size:13px}.muted{color:#536176;font-size:12px;letter-spacing:0}#reader{max-width:100%;overflow:hidden}footer{display:flex;justify-content:space-between;gap:12px;background:#fff;border-top:1px solid var(--line);padding:20px max(16px,calc((100vw - 1100px)/2));font-size:13px;color:#43536a}footer b{font:800 18px Manrope;color:var(--navy)}
@media(max-width:760px){header{height:62px;padding:0 14px}.brand{font-size:20px}.brand b{width:34px;height:34px;font-size:24px}.brand small{font-size:8px}main{padding:0 12px}.hero{margin-top:12px;padding:23px 18px;border-radius:17px}.hero h1{font-size:clamp(36px,9vw,44px);letter-spacing:-1.3px;margin:12px 0 9px}.hero p{font-size:16px;line-height:1.45}.hero-foot{font-size:12px;margin-top:14px}.filters{margin:0;padding:12px;border-radius:13px}.filterrow{grid-template-columns:1fr;gap:8px}.chips{gap:6px}.chips button{flex:1 1 auto;padding:8px 10px;font-size:12px}.heading{margin:27px 0 12px;align-items:center}.heading h2,h2{font-size:23px}.heading>span{font-size:11px;padding:6px 8px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.art{height:96px;font-size:38px}.tag,.fresh{font-size:9px;padding:4px 6px;max-width:calc(100% - 12px)}.cardbody{padding:9px}.storeline,.meta,.time{font-size:10px}.card h3{font-size:14px;line-height:1.3;margin:6px 0 2px}.price{font-size:22px;margin-top:7px}.old{font-size:10px;margin-left:2px}.saving{font-size:10px}.notes{font-size:11px;line-height:1.35}.cardfoot{flex-direction:column;align-items:stretch;gap:6px;padding-top:8px;margin-top:8px}.confirm{width:100%;font-size:11px;min-height:40px;padding:8px 5px}.how{grid-template-columns:1fr;gap:12px;padding:18px;margin:32px 0}.how h2{font-size:27px}.how-steps{gap:7px}.how-step{padding:10px 12px}.how-step b{font-size:14px}.how-step span{font-size:13px}.floating{display:block}.formgrid{grid-template-columns:1fr}.wide{grid-column:auto}dialog form{padding:17px}footer{flex-wrap:wrap;padding:18px 13px;gap:8px}}
@media(max-width:360px){.grid{gap:7px}.cardbody{padding:8px}.card h3{font-size:13px}.price{font-size:20px}.chips button{font-size:11px;padding:8px 7px}}
@media(min-width:761px) and (max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* GoodFinds readability pass: larger type and touch targets, preserving the two-column phone grid. */
body{font-size:17px;line-height:1.55}
button{font-size:15px;min-height:48px}
small{font-size:13px}
.storeline,.meta,.time{font-size:13px;line-height:1.45}
.card h3{font-size:18px;line-height:1.35}
.price{font-size:30px}
.old{font-size:13px}
.saving{font-size:12px}
.notes{font-size:14px;line-height:1.5}
.confirm{font-size:14px;min-height:46px}
.tag,.fresh{font-size:11px}
.how-step b{font-size:17px}
.how-step span{font-size:16px;line-height:1.5}
@media(max-width:760px){
  body{font-size:17px;line-height:1.5}
  .hero p{font-size:18px;line-height:1.5}
  .hero-foot{font-size:14px;line-height:1.45}
  .filters input,.filters select{font-size:17px;min-height:50px;padding:13px}
  .chips button{font-size:14px;min-height:46px;padding:10px 11px}
  .heading h2,h2{font-size:25px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .art{height:100px;font-size:40px}
  .tag,.fresh{font-size:10px;padding:5px 6px}
  .cardbody{padding:11px}
  .storeline,.meta,.time{font-size:12px;line-height:1.45}
  .card h3{font-size:16px;line-height:1.35;margin:7px 0 3px}
  .price{font-size:27px;line-height:1.2;margin-top:8px}
  .old{font-size:12px}
  .saving{font-size:11px;line-height:1.3}
  .notes{font-size:13px;line-height:1.45}
  .cardfoot{gap:7px}
  .confirm{font-size:13px;min-height:44px;padding:9px 5px}
  .how{padding:20px;margin:30px 0}
  .how h2{font-size:29px}
  .how-step{padding:12px 13px}
  .how-step b{font-size:16px}
  .how-step span{font-size:15px;line-height:1.5}
  footer{font-size:14px;line-height:1.5}
}
@media(max-width:360px){
  .cardbody{padding:9px}
  .card h3{font-size:15px}
  .price{font-size:25px}
  .storeline,.meta,.time{font-size:11px}
  .notes{font-size:12px}
  .chips button{font-size:13px}
}


/* Plain-language, low-clutter accessibility pass */
:root{--ink:#101c2d;--muted:#34445a;--line:#c7d1df}
body{color:#101c2d;font-size:18px;line-height:1.5;background:#f4f6f9}
header{background:#fff}
.hero{padding:28px;background:#173b68}
.hero>small{font-size:14px;letter-spacing:.5px;color:#ffd166}
.hero h1{font-size:clamp(36px,8vw,52px);letter-spacing:-1px}
.hero p{font-size:19px;color:#fff;max-width:34ch}
.hero .outline{background:#fff;color:#173b68;border-color:#fff}
.hero .limebg{font-size:17px;min-height:52px}
.filters{box-shadow:none;border-color:#c7d1df}
.filters input,.filters select{font-size:18px;min-height:54px;color:#101c2d}
.chips button{font-size:15px;min-height:48px;color:#173b68}
.heading{margin-top:24px}
.heading h2,h2{font-size:28px;color:#101c2d}
.heading>div>small{display:none}
.grid{gap:12px}
.card{border:1px solid #c7d1df;box-shadow:0 2px 5px #10223b0a}
.art{height:88px;background:#e8eef6}
.tag{background:#173b68;color:#fff;font-size:12px;letter-spacing:0}
.tag.red{background:#ffd166;color:#17243a}
.fresh{font-size:11px;color:#101c2d}
.cardbody{padding:12px}
.storeline{font-size:13px;color:#34445a}
.card h3{font-size:18px;line-height:1.3;color:#101c2d}
.meta{font-size:13px;color:#34445a}
.price{font-size:30px;color:#173b68}
.old{font-size:13px;color:#34445a}
.saving{font-size:12px;background:#ffedb8;color:#503800}
.cardfoot{border-top:1px solid #d7dee8}
.time{font-size:13px;color:#34445a}
.confirm{font-size:15px;min-height:48px;background:#173b68;color:#fff;border-color:#173b68}
.how{display:block;background:#e8eef6;border-color:#c7d1df;padding:20px;margin:28px 0}
.how h2{font-size:24px;margin-bottom:12px}
.how-steps{grid-template-columns:1fr;gap:8px}
.how-step{padding:12px 14px}
.how-step b{font-size:17px;color:#173b68}
.how-step span{font-size:16px;color:#34445a}
footer{color:#34445a}
@media(max-width:760px){
  .hero{padding:22px 17px}
  .hero h1{font-size:39px;line-height:1.08}
  .hero p{font-size:18px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .art{height:82px;font-size:36px}
  .tag{top:6px;left:6px;font-size:11px;padding:5px 6px}
  .fresh{top:auto;bottom:6px;right:6px;font-size:10px;padding:4px 5px}
  .cardbody{padding:10px}
  .storeline{font-size:12px;line-height:1.35}
  .card h3{font-size:17px;line-height:1.3;margin:7px 0 2px}
  .price{font-size:27px}
  .time{font-size:12px;line-height:1.3}
  .confirm{font-size:14px;min-height:46px}
  .how{padding:16px}
}
@media(max-width:360px){.card h3{font-size:15px}.price{font-size:24px}.storeline{font-size:11px}}

.account-email{font-weight:700;overflow-wrap:anywhere;background:#f1f5f9;padding:12px;border-radius:9px;font-size:16px}


/* Compact sign-in status: account actions stay in the header button. */
.account-strip{display:flex;align-items:center;gap:9px;margin:0 0 18px;padding:9px 12px;background:#fff;border:1px solid #d1dbe7;border-radius:12px;min-height:42px}
.account-indicator{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#718096}
#accountStatus{font-size:14px;line-height:1.35;color:#43536a;overflow-wrap:anywhere}
#accountStatus.is-signed-in{color:#205c3b;font-weight:700}
#accountStatus.is-signed-in~.account-indicator{background:#25834b}
.account-strip:has(#accountStatus.is-signed-in) .account-indicator{background:#25834b}
#account:focus-visible{outline:3px solid #f0b92e;outline-offset:3px}
/* Barcode scanner gets its own centred viewport-sized modal, not a block at the bottom of the deal form. */
.scanner-dialog{width:min(560px,calc(100% - 20px));max-height:calc(100dvh - 24px);overflow:auto;margin:auto;border-radius:18px}
.scanner-panel{padding:clamp(14px,4vw,24px)}
.scanner-panel .modalhead h2{margin:5px 0 0}
#scanMsg{font-size:15px;color:#34445a;margin:12px 0}
#scanner{display:block;width:100%}
#reader{width:100%;max-width:100%;overflow:hidden;border-radius:12px;background:#101c2d;min-height:180px}
#reader video{width:100%!important;max-height:min(46dvh,390px);object-fit:cover;border-radius:12px}
.scanner-panel .modalactions{margin-bottom:0}
@media(max-width:760px){.account-strip{padding:8px 10px;margin-bottom:14px}#accountStatus{font-size:13px}.scanner-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.scanner-panel{padding:14px}.scanner-panel .modalhead h2{font-size:22px}#reader video{max-height:42dvh}}

/* Nearby discovery and product lookup additions */
.hero .primary:not(.limebg){margin:6px 8px 0 0;background:#fff;color:#173b68;border-color:#fff}
.hero .limebg{margin:6px 8px 0 0}
.field-help{display:block;font-size:12px;letter-spacing:0;font-weight:500;line-height:1.4;margin-top:5px;color:#43536a}
.nearby-results{margin:18px 0;padding:18px;background:#fff;border:1px solid #c7d1df;border-radius:14px}
.nearby-results h2{font-size:23px;margin:0 0 6px}
.nearby-results p{margin:4px 0 12px;color:#34445a;font-size:15px}
.nearby-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 13px;padding-bottom:10px;border-bottom:1px solid #e3e8ed;color:#718075;font-size:10px;font-weight:850;letter-spacing:.12em}
.nearby-results-toolbar>div{display:flex;align-items:center;gap:7px}
.nearby-tool-button{min-height:34px;padding:6px 10px;border:1px solid #d9e2da;border-radius:9px;background:#f7faf6;color:#355340;font-size:12px;font-weight:800}
.nearby-tool-button:active,.nearby-deal-button:active,.nearby-branch-heading:active{background:#edf3eb}
.nearby-clear-button{color:#657166;background:#fff}
.nearby-branch-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit}
.nearby-branch-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.nearby-branch-title{font-size:23px;font-weight:850;line-height:1.2;color:#17243a}
.nearby-branch-summary{margin:0 0 12px;color:#34445a;font-size:15px;line-height:1.5}
.nearby-open-indicator{flex:0 0 auto;font-size:28px;color:#8a9b8c}
.nearby-deal{padding:12px 0;border-top:1px solid #d7dee8}
.nearby-deal strong{display:block;color:#173b68}
.nearby-deal .nearby-price{font-weight:800;font-size:20px}
.nearby-deal-button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;border:0;border-radius:0;background:transparent;text-align:left;color:inherit;cursor:pointer}
.nearby-deal-button .nearby-product-name{font-size:16px;color:#303830}
.nearby-deal-button .nearby-price{display:block}
.nearby-deal-button:focus-visible,.nearby-branch-heading:focus-visible,.nearby-tool-button:focus-visible{outline:3px solid #8eb5a0;outline-offset:2px;border-radius:8px}
.nearby-distance{font-size:13px;color:#43536a}
.attribution{flex-basis:100%;font-size:12px}
.attribution a{color:#173b68}
@media(max-width:760px){.nearby-results{padding:14px;margin:12px 0}.nearby-results h2{font-size:21px}.hero .primary,.hero .limebg{width:100%;margin:6px 0 0}.attribution{line-height:1.5}}

/* Mobile-first branch picker: replaces the browser's oversized prompt dialog. */
.branch-picker-dialog{width:min(540px,calc(100% - 20px));max-height:min(82dvh,760px);overflow:hidden;border-radius:20px}
.branch-picker-panel{padding:20px;display:flex;flex-direction:column;max-height:min(82dvh,760px)}
.branch-picker-intro{font-size:14px;line-height:1.4;color:#536176;margin:7px 0 0}
.branch-picker-list{display:flex;flex:1 1 auto;flex-direction:column;align-items:stretch;gap:9px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:12px 2px 4px}
.branch-picker-dialog .branch-choice{display:flex;flex:0 0 auto;flex-direction:column;align-items:stretch;justify-content:flex-start;align-self:stretch;box-sizing:border-box;width:100%;height:auto;min-height:0;max-height:none;overflow:visible;white-space:normal;text-align:left;line-height:1.35;gap:5px;padding:13px 14px;border:1px solid #d8e1ec;border-radius:13px;background:#fff;color:#17243a}
.branch-choice:active{background:#eef4fb}
.branch-choice-top{display:flex;flex:0 0 auto;justify-content:space-between;align-items:center;gap:10px;min-width:0}
.branch-choice-top strong{font-size:15px;line-height:1.3}
.branch-distance{flex-shrink:0;color:#17452b;background:#e2f4e8;border-radius:999px;padding:4px 8px;font-size:13px;font-weight:800}
.branch-choice-name{display:block;flex:0 0 auto;font-size:15px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.branch-choice-address{display:block;flex:0 0 auto;font-size:13px;line-height:1.4;color:#536176;overflow-wrap:anywhere}
.branch-choice-action{display:block;flex:0 0 auto;font-size:12px;font-weight:800;color:#174b83;margin-top:3px}
.branch-picker-dialog .modalactions{margin-bottom:0}
@media(max-width:760px){.branch-picker-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 24px);margin:auto}.branch-picker-panel{padding:16px;max-height:calc(100dvh - 24px)}.branch-picker-dialog h2{font-size:22px}.branch-choice{padding:12px}.branch-choice-top strong,.branch-choice-name{font-size:14px}}

.admin-delete{display:block;width:100%;margin-top:6px;background:#fff1ef;color:#9e2f25;border:1px solid #e7b8b3;font-size:12px;min-height:40px}


/* Email consent and cross-platform install prompt */
.consent-row{display:flex;align-items:flex-start;gap:10px;margin:12px 0;padding:12px;background:#f4f7fb;border:1px solid #d6e0eb;border-radius:10px;font-size:14px;line-height:1.45;color:#26384d}
.consent-row input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:#176b45}
.account-consent{margin-top:16px}
#saveMailingPreference{margin:0 0 10px}
.install-dialog{width:min(440px,calc(100% - 24px));border:0;border-radius:18px;padding:24px;max-height:calc(100dvh - 24px);overflow:auto}
.install-dialog form{position:relative}
.install-dialog h2{margin:8px 0}
.install-instructions{padding:14px 16px;background:#f3f6fa;border-radius:12px;line-height:1.55}
.install-instructions ol{padding-left:22px;margin:8px 0}
.install-dialog .modalactions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}

/* Fix 15: visible refresh control for browser and Home Screen installs. */
.heading-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.refresh-button{background:#fff;border:1px solid var(--line);padding:7px 11px;min-height:38px;font-size:13px;white-space:nowrap}.refresh-button:disabled{opacity:.65;cursor:wait}@media(max-width:420px){.heading-actions{gap:5px}.refresh-button{padding:6px 8px;font-size:12px}.heading>span{font-size:10px}}

.places-attribution{font-size:12px;color:#536176;text-align:center;margin:10px 0 0;letter-spacing:0}.places-attribution span{font-weight:700;color:#173b68}
#branchSearchQuery{flex:1;min-width:0}

/* Accessible custom area dialog; avoid the browser-native prompt on mobile. */
.area-dialog{width:min(440px,calc(100% - 24px));border:0;border-radius:18px;padding:0;max-height:calc(100dvh - 28px)}
.area-dialog form{padding:22px}.area-dialog h2{margin:6px 0}.area-dialog p{color:#43536a;line-height:1.5}.area-dialog label{display:block;font-weight:700;margin:12px 0 6px}.area-dialog input{box-sizing:border-box;width:100%;min-height:54px;padding:13px 14px;border:1px solid #b8c6d7;border-radius:11px;font:inherit;font-size:17px;color:#17243a}.area-help{display:block;margin-top:10px;color:#536176;line-height:1.5}.area-dialog .modalactions{margin-bottom:0}
@media(max-width:760px){.area-dialog{width:calc(100% - 24px)}.area-dialog form{padding:18px}.area-dialog h2{font-size:24px}}


/* Price rollers use native select pickers (wheel-style on iOS). */
.price-field{min-width:0}.price-field .optional{font-weight:400;color:#536176;font-size:13px}
.price-roller{display:flex;align-items:center;gap:5px;margin-top:6px;min-height:54px;padding:5px 9px;border:1px solid #b8c6d7;border-radius:11px;background:#fff}
.price-roller select{min-width:0;flex:1;height:44px;border:0;border-radius:7px;background:#f1f5f9;color:#17243a;font:inherit;font-size:19px;font-weight:700;text-align:center;padding:4px 7px}
.price-roller .currency,.price-roller .decimal{font-size:20px;font-weight:800;color:#173b68}
.area-locate{width:100%;min-height:52px;margin:8px 0 2px;font-size:16px}
#areaLocationMsg{display:block;min-height:20px}


/* Clearer, simpler share-deal form hierarchy. */
#dealDialog{width:min(600px,calc(100% - 18px));max-height:calc(100dvh - 18px);overflow:auto}
#dealDialog form{padding:clamp(16px,4vw,24px)}
#dealDialog .formgrid label,#dealDialog form>label{font-size:15px;font-weight:800;color:#172b43;gap:8px}
#dealDialog .formgrid input,#dealDialog .formgrid select{font-size:16px;font-weight:500;min-height:52px}
#dealDialog .field-help{font-size:13px;font-weight:500}
.scan-hero{display:flex;align-items:center;gap:14px;width:100%;min-height:88px;margin:14px 0 8px;padding:14px 16px;border:2px solid #173b68;border-radius:16px;background:#173b68;color:#fff;text-align:left;box-shadow:0 3px 8px #10223b18}
.scan-hero svg{width:42px;height:42px;flex:0 0 42px}
.scan-hero span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px}
.scan-hero strong{font-size:18px;font-weight:800;line-height:1.2}
.scan-hero small{font-size:13px;font-weight:500;color:#e7eff9}
.scan-hero .scan-arrow{font-size:32px;font-weight:400;line-height:1}
.scan-hero:active{transform:scale(.99);background:#102e54}
.scan-status{margin:0 0 12px;font-size:13px}
@media(max-width:760px){
  #dealDialog{width:calc(100% - 12px);max-height:calc(100dvh - 12px)}
  #dealDialog form{padding:16px}
  #dealDialog .formgrid{grid-template-columns:1fr;gap:13px}
  #dealDialog .formgrid .wide{grid-column:auto}
  #dealDialog .formgrid label,#dealDialog form>label{font-size:16px}
  .scan-hero{min-height:82px;padding:12px 14px}
  .scan-hero strong{font-size:17px}
}


/* Brief confirmation when the feed area is saved */
.app-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:10000;max-width:min( calc(100vw - 32px), 520px );width:max-content;padding:13px 20px;border-radius:14px;background:#1d3f6b;color:#fff;font-size:15px;font-weight:650;line-height:1.4;text-align:center;box-shadow:0 8px 28px rgba(15,30,50,.24);opacity:0;visibility:hidden;transform:translate(-50%,12px);pointer-events:none}
.app-toast.show{visibility:visible;animation:appToastFade 3.4s ease forwards}
@keyframes appToastFade{0%{opacity:0;transform:translate(-50%,12px)}12%,78%{opacity:1;transform:translate(-50%,0)}100%{opacity:0;transform:translate(-50%,-4px);visibility:hidden}}
@media(prefers-reduced-motion:reduce){.app-toast.show{animation:appToastFade 3.4s linear forwards}}


/* Share-a-deal: visual deal-type selection and shelf-ticket guidance */
.shelf-ticket-tip-dialog{width:min( calc(100% - 36px), 420px);max-width:420px;padding:0;border:0;border-radius:22px;background:transparent;overflow:visible;color:#59451c}
.shelf-ticket-tip-dialog::backdrop{background:rgba(13,25,31,.68);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.shelf-ticket-tip-panel{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:30px 25px 24px;border:2px solid #e5b43a;border-radius:22px;background:#fffaf0;box-shadow:0 22px 65px #0005;text-align:center}
.shelf-ticket-tip-panel>.x{position:absolute;top:12px;right:12px}
.shelf-ticket-tip-panel .shelf-ticket-tip-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#f2c34f;color:#49350c;font-size:36px;font-weight:900}
.shelf-ticket-tip-panel>small{color:#946a12;font-size:10px;font-weight:850;letter-spacing:1.5px}
.shelf-ticket-tip-panel h2{margin:0;color:#493719;font-size:22px;line-height:1.2}
.shelf-ticket-tip-panel p{margin:0 0 6px;color:#59451c;font-size:16px;line-height:1.55}
.shelf-ticket-tip-actions{display:flex;flex-direction:column;gap:9px;width:100%;margin-top:4px}.shelf-ticket-tip-actions .primary{width:100%;min-height:48px}.shelf-ticket-tip-actions .quiet{width:100%;min-height:42px;border:1px solid #dfd2b7;border-radius:12px;background:#fffdf8;color:#66502b;font-weight:750}
@media(max-width:420px){.shelf-ticket-tip-panel{padding:28px 20px 20px}.shelf-ticket-tip-panel h2{font-size:20px}.shelf-ticket-tip-panel p{font-size:15px}}
.deal-type-picker{display:flex;flex-direction:column;gap:9px;min-width:0}
.deal-type-label{font-size:15px;font-weight:750;color:#243247}
.deal-type-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.deal-type-choice{display:flex;min-width:0;min-height:144px;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:12px 8px;border:2px solid #d7dee8;border-radius:14px;background:#fff;color:#23344c;text-align:center;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}
.deal-type-choice svg{width:66px;height:52px;flex:0 0 auto}
.deal-type-choice strong{font-size:14px;line-height:1.2;font-weight:800}
.deal-type-choice small{font-size:11px;line-height:1.3;color:#596779}
.deal-type-choice.selected{border-color:#1d416f;background:#edf4fc;box-shadow:inset 0 0 0 1px #1d416f,0 2px 8px #173b6818}
.deal-type-choice:focus-visible{outline:3px solid #80aee6;outline-offset:2px}
#type[aria-hidden="true"]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:760px){.deal-type-choices{gap:8px}.deal-type-choice{min-height:136px;padding:10px 5px}.deal-type-choice strong{font-size:12px}.deal-type-choice small{font-size:10px}}


/* Simple current-supermarket selection replaces manual store/address fields */
.current-store-picker{display:flex;flex-direction:column;gap:10px;padding:4px 0 2px}
.current-store-heading{display:flex;flex-direction:column;gap:3px;color:#26364b}
.current-store-heading strong{font-size:16px;font-weight:800}
.current-store-heading span{font-size:13px;color:#647187}
.find-current-store{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;padding:13px 15px;border:0;border-radius:14px;background:#1d416f;color:#fff;text-align:left;cursor:pointer}
.find-store-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border:1.5px solid #ffffff9c;border-radius:50%;font-size:27px;line-height:1}
.find-current-store>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}
.find-current-store strong{font-size:15px;font-weight:850;letter-spacing:.25px}
.find-current-store small{font-size:12px;font-weight:500;color:#e3edf9}
.find-store-arrow{font-size:28px;line-height:1}
.find-current-store:disabled{opacity:.65}
.selected-branch-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1.5px solid #b7c9dc;border-radius:13px;background:#f1f6fc;color:#24364e}
.selected-branch-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.selected-branch-copy small{font-size:10px;font-weight:850;letter-spacing:1px;color:#45658c}
.selected-branch-copy strong{font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.selected-branch-copy span{font-size:12px;color:#596a80;overflow-wrap:anywhere}
.change-store-button{flex:0 0 auto;border:1px solid #b7c9dc;border-radius:9px;background:#fff;color:#1d416f;padding:9px 12px;font-weight:750}
.branch-picker-message{margin:0;font-size:12px}
.form-hidden-fields{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;clip-path:inset(50%)!important}
.modalactions{align-items:center;gap:10px}
#dealDialog .modalactions #cancel{flex:0 0 auto;min-width:96px;padding:11px 16px;font-size:14px}
#dealDialog .modalactions #submit{flex:1 1 auto;min-height:56px;padding:15px 22px;font-size:19px;font-weight:850;letter-spacing:.2px}


/* Product identity card shown after barcode scanning */
.scanned-product-card{display:flex;min-height:104px;align-items:center;gap:15px;margin:0 0 16px;padding:13px;border:1.5px solid #d9e3ee;border-radius:15px;background:linear-gradient(110deg,#f3f7fc,#fff);color:#24364e}
.scanned-product-placeholder,.scanned-product-loading{display:flex;width:100%;align-items:center;gap:13px}
.product-placeholder-icon,.product-loading-icon{display:grid;place-items:center;width:64px;height:64px;flex:0 0 64px;border-radius:13px;background:#e6edf6;color:#45658c;font-size:30px;font-weight:800}
.scanned-product-placeholder>span:last-child,.scanned-product-loading>span:last-child{display:flex;min-width:0;flex-direction:column;gap:4px}
.scanned-product-placeholder strong,.scanned-product-loading strong{font-size:14px;font-weight:800}
.scanned-product-placeholder small,.scanned-product-loading small{font-size:12px;color:#647187;line-height:1.35}
.scanned-product-visual{display:grid;place-items:center;width:78px;height:78px;flex:0 0 78px;border-radius:14px;background:#eaf2e9}
.scanned-product-emoji{font-size:44px;line-height:1}
.scanned-product-details{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px}
.scanned-product-details>small{font-size:9px;font-weight:850;letter-spacing:1.1px;color:#3f7650}
.scanned-product-details>strong{font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.scanned-product-details>span{font-size:12px;color:#65748a}
.edit-product-button{margin-top:3px;padding:5px 9px;border:1px solid #c8d5e4;border-radius:7px;background:#fff;color:#1d416f;font-size:11px;font-weight:750}
.manual-product-fallback{margin-top:7px;width:min(100%,300px);padding:9px 10px;border:1px solid #bdc9d7;border-radius:8px;background:#fff;color:#24364e;font-size:14px}
@media(max-width:760px){.scanned-product-card{min-height:96px;padding:11px}.scanned-product-visual{width:68px;height:68px;flex-basis:68px}.scanned-product-emoji{font-size:39px}.scanned-product-details>strong{font-size:15px}}

.nearby-branch-action{width:100%;margin:8px 0 10px;min-height:44px}
.branch-filter-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:10px 0 16px;padding:12px 14px;background:#fff8e7;border:1px solid #f0d48c;border-radius:12px;color:#26364b;font-size:14px}
.branch-filter-notice[hidden]{display:none}
.branch-filter-notice button{min-height:36px;padding:6px 12px;white-space:nowrap}

/* Cleaner, more legible deal cards */
.card{border-radius:18px;box-shadow:0 3px 12px rgba(24,48,78,.045)}
.cardbody{padding:16px}
.storeline{font-size:13px;font-weight:700;line-height:1.35;color:#253b58}
.store-dot{font-size:10px;color:#607b9e;vertical-align:2px}
.store-separator{color:#9aa8b9;padding:0 2px}
.branch-address{font-size:12px;line-height:1.4;color:#64748b;margin-top:4px}
.card h3{margin:12px 0 2px;line-height:1.24;letter-spacing:-.02em}
.price{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:6px;row-gap:2px;margin-top:12px}
.old{margin-left:0}
.saving{margin:0 0 0 2px}
.cardfoot{margin-top:14px;padding-top:12px}

.branch-map-link{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:#9aa8b9;text-underline-offset:3px}
.branch-map-link:active{color:var(--navy)}

/* Compact deal cards: prioritise the product and price over decorative space */
.card{border-radius:14px}
.art{height:66px;font-size:32px}
.cardbody{padding:10px}
.storeline{font-size:11px;line-height:1.25}
.branch-map-link{text-decoration-thickness:1px;text-underline-offset:2px}
.card h3{font-size:15px;line-height:1.22;margin:6px 0 0;letter-spacing:-.015em}
.price{font-size:23px;line-height:1.1;margin-top:7px;column-gap:5px}
.old{font-size:11px}
.saving{font-size:10px;padding:3px 5px}
.cardfoot{margin-top:9px;padding-top:8px;gap:6px}
.time{font-size:10px;line-height:1.2}
.confirm{min-height:36px;padding:6px 8px;font-size:12px}
.admin-delete{min-height:32px;padding:5px 7px;font-size:11px}
@media(max-width:760px){
  .art{height:58px;font-size:29px}
  .tag,.fresh{font-size:9px;padding:3px 5px}
  .cardbody{padding:8px}
  .storeline{font-size:10px;line-height:1.2}
  .card h3{font-size:14px;line-height:1.2;margin-top:5px}
  .price{font-size:21px;margin-top:6px}
  .old{font-size:10px}
  .saving{font-size:9px;padding:3px 4px}
  .cardfoot{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6px;margin-top:8px;padding-top:7px}
  .cardfoot .time{grid-column:1/-1}
  .cardfoot .confirm{grid-column:1/-1;width:100%;min-height:34px;font-size:11px}
  .cardfoot .admin-delete{grid-column:1/-1;width:100%;min-height:30px;font-size:10px}
}
@media(max-width:360px){
  .art{height:52px}
  .cardbody{padding:7px}
  .card h3{font-size:13px}
  .price{font-size:19px}
}

/* Tappable deal detail view */
.card{cursor:pointer}
.card:focus-within{outline:2px solid #8ca9cc;outline-offset:2px}
.deal-detail-dialog{width:min(520px,calc(100% - 24px));max-height:88vh;padding:0;border:0;border-radius:20px;box-shadow:0 20px 70px rgba(13,31,55,.28);color:#172b45}
.deal-detail-dialog::backdrop{background:rgba(13,27,46,.58);backdrop-filter:blur(3px)}
.deal-detail-panel{padding:20px}
.deal-detail-head{display:flex;align-items:center;justify-content:space-between}
.deal-detail-kicker,.deal-detail-type{font-size:10px;font-weight:850;letter-spacing:1.1px;color:#5a718d}
.deal-detail-product{display:flex;align-items:center;gap:14px;margin:14px 0}
.deal-detail-emoji{display:grid;place-items:center;width:76px;height:76px;flex:0 0 76px;border-radius:16px;background:#edf2f8;font-size:42px}
.deal-detail-product h2{font-size:21px;line-height:1.25;margin:5px 0 0}
.deal-detail-price{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;font-size:34px;font-weight:850;color:#173b68;margin:12px 0 18px}
.deal-detail-price .saving{font-size:12px}
.deal-detail-branch{display:flex;flex-direction:column;gap:4px;padding:13px 14px;border:1px solid #dbe3ed;border-radius:12px;color:#243a57;text-decoration:none;background:#f7f9fc}
.deal-detail-branch span{font-size:13px;color:#5d7089}
.deal-detail-notes{margin:16px 0;padding:0 2px}
.deal-detail-notes p{margin:5px 0 0;color:#53657b;line-height:1.45}
.deal-detail-stats{display:flex;justify-content:space-between;gap:10px;margin:16px 0;padding-top:12px;border-top:1px solid #e3e9f0;color:#65758a;font-size:12px}
.deal-detail-confirm{width:100%;min-height:48px}
.deal-detail-hint{font-size:12px;color:#718096;text-align:center;margin:9px 0 0}
@media(max-width:760px){.deal-detail-panel{padding:17px}.deal-detail-product h2{font-size:19px}}


/* Deal card hierarchy: product, price/saving, branch, then actions */
.card .cardbody{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:11px}
.card .cardbody>h3{order:1;margin:0 0 5px;font-size:15px;line-height:1.22;font-weight:800;color:#172b45}
.card .cardbody>.price{order:2;display:flex;align-items:baseline;gap:8px;margin:0 0 8px;font-size:25px;line-height:1.1;color:#173b68}
.card .price .current-price{font-size:inherit;font-weight:900;letter-spacing:-.6px}
.card .price .old{font-size:12px;font-weight:500;color:#8793a3;text-decoration:line-through}
.card .price .saving{margin:0;padding:0;background:none;color:#167044;font-size:13px;font-weight:850}
.card .cardbody>.storeline{order:3;margin:0;font-size:11px;line-height:1.35;font-weight:700;color:#435873}
.card .cardbody>.branch-address{order:4;margin:3px 0 0;font-size:11px}
.card .cardbody>.cardfoot{order:5;display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:9px 0 0;padding:8px 0 0;border-top:1px solid #e7edf4}
.card .cardfoot .time{flex:1 1 100%;font-size:10px}
.card .cardfoot .confirm{flex:1 1 100%;width:100%;min-height:35px;font-size:12px;font-weight:750}
.card .cardfoot .admin-delete{flex:1 1 100%;width:100%;margin:0}
@media(max-width:760px){
  .card .cardbody{padding:9px}
  .card .cardbody>h3{font-size:14px;margin-bottom:4px}
  .card .cardbody>.price{font-size:23px;margin-bottom:7px}
  .card .price .saving{font-size:12px}
  .card .cardbody>.storeline{font-size:10px}
  .card .cardbody>.branch-address{font-size:10px}
  .card .cardbody>.cardfoot{margin-top:8px;padding-top:7px;gap:6px}
  .card .cardfoot .confirm{min-height:33px;font-size:11px}
}


/* Share action on the expanded deal card */
.deal-detail-share-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:2px}
.deal-detail-share{width:100%;min-height:46px;margin:0 0 9px;border:1.5px solid #1d416f;border-radius:11px;background:#fff;color:#1d416f;font-size:15px;font-weight:800}
.deal-detail-share:active{background:#edf4fc}


/* Mobile feed correction: one full-width deal per row; prevent action buttons stretching or overflowing. */
@media(max-width:760px){
  .grid{grid-template-columns:minmax(0,1fr)!important;gap:12px}
  .grid>.card{width:100%;min-width:0;box-sizing:border-box}
  .card,.cardbody,.cardfoot{min-width:0;box-sizing:border-box}
  .card .cardbody>.cardfoot{display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0}
  .card .cardfoot .time{flex:0 0 auto;width:100%;min-width:0}
  .card .cardfoot .confirm,
  .card .cardfoot .admin-delete{display:block;flex:0 0 auto;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
  .card .cardbody>.storeline,.card .cardbody>.branch-address{overflow-wrap:anywhere}
}


/* Product photographs from Open Food Facts */
.product-heading{display:flex;align-items:center;gap:9px;min-width:0}
.product-heading h3{min-width:0;flex:1}
.deal-product-image{width:48px;height:48px;flex:0 0 48px;object-fit:contain;border-radius:8px;background:#f5f7fa}
.scanned-product-photo{width:100%;height:100%;object-fit:contain;border-radius:12px}
.deal-detail-image{display:block;width:76px;height:76px;flex:0 0 76px;object-fit:contain;border-radius:14px;background:#f5f7fa}


/* Community availability verification */
.deal-verification{display:flex;flex-direction:column;gap:3px;margin:12px 0;padding:10px 12px;border-radius:10px;background:#f3f4f6;color:#374151}
.deal-verification strong{font-size:14px}
.deal-verification span{font-size:12px;color:#6b7280}
.deal-verification.good{background:#ecfdf3;color:#166534}
.deal-verification.good span{color:#39734b}
.deal-verification.warn{background:#fff7ed;color:#9a3412}
.deal-verification.warn span{color:#9a5b2d}
.deal-verification.bad{background:#fef2f2;color:#991b1b}
.deal-verification.bad span{color:#a34b4b}
.deal-detail-vote{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.deal-detail-vote button{min-width:0;width:100%;white-space:normal}
@media(max-width:420px){.deal-detail-vote{grid-template-columns:1fr}}


/* Community verification status on compact feed cards */
.deal-card-status{display:inline-flex;align-self:flex-start;max-width:100%;margin:5px 0 7px;padding:3px 7px;border-radius:6px;background:#f3f4f6;color:#596579;font-size:10px;font-weight:800;line-height:1.25;letter-spacing:.15px}
.deal-card-status.good{background:#eaf7ee;color:#17633a}
.deal-card-status.warn{background:#fff3e6;color:#995019}
.deal-card-status.bad{background:#fdecec;color:#9b2929}
.deal-card-status.muted{background:#f0f2f5;color:#5d6878}


/* Lightweight in-app tester feedback */
.feedback-trigger{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.feedback-dialog{width:min(460px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:18px;padding:0;color:#172b45;box-shadow:0 18px 60px #0d1f3730}
.feedback-dialog form{padding:22px}
.feedback-dialog h2{margin:6px 0}
.feedback-dialog label{display:block;margin:14px 0 6px;font-size:14px;font-weight:750;color:#26384d}
.feedback-dialog select,.feedback-dialog textarea{box-sizing:border-box;width:100%;min-height:48px;padding:12px;border:1px solid #bdc9d7;border-radius:10px;background:#fff;color:#172b45;font:inherit;font-size:16px}
.feedback-dialog textarea{min-height:130px;resize:vertical;line-height:1.45}
.feedback-privacy{display:block;margin-top:8px;color:#64748b;font-size:12px;line-height:1.4}
@media(max-width:760px){.feedback-dialog{width:calc(100% - 20px)}.feedback-dialog form{padding:17px}}

/* Private administrator feedback inbox */
.admin-feedback-trigger{font-size:13px;font-weight:800}
.admin-feedback-dialog{width:min(680px,calc(100% - 20px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:18px;padding:0;color:#172b45;box-shadow:0 18px 60px #0d1f3730}
.admin-feedback-panel{padding:22px}
.admin-feedback-summary{margin:5px 0 0;color:#64748b;font-size:13px}
.admin-feedback-toolbar,.admin-feedback-top,.admin-feedback-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}
.admin-feedback-toolbar{padding:12px 0;border-bottom:1px solid #e5eaf0;color:#64748b;font-size:12px}
.admin-feedback-list{display:grid;gap:10px;padding-top:12px}
.admin-feedback-item{padding:14px;border:1px solid #e1e7ee;border-radius:12px;background:#fff}
.admin-feedback-category{font-size:12px;font-weight:850;color:#1d416f}
.admin-feedback-date,.admin-feedback-sender{font-size:11px;color:#718096}
.admin-feedback-message{margin:10px 0 14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;font-size:14px;color:#26384d}
.admin-feedback-status{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:750;color:#526176}
.admin-feedback-status select{max-width:125px;padding:7px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#172b45;font:inherit;font-size:12px}
.admin-feedback-empty{padding:22px 10px;text-align:center;color:#64748b;font-size:14px}
@media(max-width:520px){.admin-feedback-panel{padding:15px}.admin-feedback-top,.admin-feedback-bottom{align-items:flex-start}.admin-feedback-bottom{flex-direction:column}.admin-feedback-status{width:100%;justify-content:space-between}.admin-feedback-status select{max-width:none}}


/* Scanned product favourite action */
.scanned-product-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:9px}
.scanned-product-actions .edit-product-button{margin:0}
.favourite-product-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 11px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#42536a;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.favourite-product-button>span:first-child{font-size:19px;line-height:1}
.favourite-product-button.is-favourite{border-color:#d6a52b;background:#fff8df;color:#8a5b00}
.favourite-product-button:disabled{opacity:.6;cursor:wait}


/* Product lookup image sizing: keep remote product photos inside their thumbnail. */
.scanned-product-card{align-items:flex-start}
.scanned-product-visual{overflow:hidden;flex:0 0 78px;width:78px;height:78px;min-width:78px;min-height:78px}
.scanned-product-photo{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
@media(max-width:760px){
  .scanned-product-visual{flex-basis:68px;width:68px;height:68px;min-width:68px;min-height:68px}
}


/* Mobile share-deal polish: keep the scanned product compact and make the
   entire form reliably scrollable inside the iOS dialog viewport. */
@media(max-width:760px){
  #dealDialog{
    height:calc(100dvh - 12px);
    max-height:calc(100dvh - 12px);
    overflow:hidden;
  }
  #dealDialog form{
    height:100%;
    max-height:100%;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding:16px;
  }
  .scanned-product-card{
    display:grid;
    grid-template-columns:60px minmax(0,1fr);
    grid-template-areas:"visual details";
    align-items:start;
    gap:8px 12px;
    min-height:0;
    padding:10px;
    margin-bottom:14px;
  }
  .scanned-product-visual{
    grid-area:visual;
    width:60px;
    height:60px;
    min-width:60px;
    min-height:60px;
    flex-basis:60px;
    border-radius:11px;
  }
  .scanned-product-details{
    grid-area:details;
    min-width:0;
    gap:3px;
  }
  .scanned-product-details>small{
    font-size:10px;
    line-height:1.25;
  }
  .scanned-product-details>strong{
    font-size:15px;
    line-height:1.25;
  }
  .scanned-product-details>span{
    font-size:12px;
    line-height:1.25;
  }
  .scanned-product-actions{
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    gap:7px;
    margin-top:7px;
  }
  .scanned-product-actions .edit-product-button,
  .scanned-product-actions .favourite-product-button{
    min-height:36px;
    padding:6px 9px;
    font-size:12px;
    line-height:1.2;
  }
  .deal-type-choice{
    min-height:124px;
  }
}


/* Scanned product photo uses the same square contain treatment as deal thumbnails.
   This keeps the complete bottle visible instead of filling a tall portrait crop. */
.scanned-product-card{
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  align-items:center;
  gap:14px;
  min-width:0;
}
.scanned-product-visual{
  display:flex;
  align-items:center;
  justify-content:center;
  width:112px;
  height:112px;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border-radius:12px;
  background:#f5f7fa;
}
.scanned-product-photo{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain !important;
  object-position:center;
  border-radius:10px;
}
.scanned-product-details{min-width:0}
@media(max-width:760px){
  .scanned-product-card{
    grid-template-columns:104px minmax(0,1fr);
    gap:12px;
    padding:12px;
  }
  .scanned-product-visual{
    width:104px;
    height:104px;
  }
  .scanned-product-details>strong{
    font-size:16px;
    line-height:1.3;
    overflow-wrap:anywhere;
  }
  .scanned-product-actions{gap:7px}
  .scanned-product-actions .edit-product-button,
  .scanned-product-actions .favourite-product-button{
    max-width:100%;
    white-space:normal;
  }
}
@media(max-width:360px){
  .scanned-product-card{grid-template-columns:92px minmax(0,1fr);gap:10px}
  .scanned-product-visual{width:92px;height:92px}
}


/* Empty/loading product states must span both columns of the product card grid. */
.scanned-product-placeholder,
.scanned-product-loading{
  grid-column:1 / -1;
  width:100%;
  min-width:0;
}
.scanned-product-placeholder>span:last-child,
.scanned-product-loading>span:last-child{
  flex:1 1 auto;
  min-width:0;
}


/* Saved products and community purchase signals */
.header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.header-favourites{min-height:38px;padding:7px 11px;border:1px solid #cbd7e5;border-radius:10px;background:#fff;color:#1d416f;font-size:13px;font-weight:800;white-space:nowrap}
.header-favourites:active{background:#edf4fc}
.favourites-dialog{width:min(560px,calc(100% - 22px));max-height:min(86dvh,760px);overflow:auto;border:0;border-radius:19px;padding:0;color:#172b45;box-shadow:0 20px 70px #0d1f3730}
.favourites-panel{padding:20px}
.favourites-panel h2{margin:4px 0 0}
.favourites-intro{margin:10px 0 15px;color:#61728a;font-size:14px;line-height:1.45}
.favourites-list{display:grid;gap:10px}
.favourites-empty{padding:22px 14px;border:1px dashed #cbd7e5;border-radius:12px;color:#65748a;text-align:center;font-size:14px}
.favourite-item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;border:1px solid #dbe4ef;border-radius:13px;background:#f8fafd}
.favourite-item img,.favourite-item-placeholder{display:grid;place-items:center;width:64px;height:64px;object-fit:contain;border-radius:10px;background:#edf2f7;color:#59708d;font-size:28px}
.favourite-item-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.favourite-item-copy strong{font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.favourite-item-copy small{color:#697a91;font-size:12px}
.favourite-remove{min-height:34px;padding:6px 9px;border:1px solid #cbd7e5;border-radius:8px;background:#fff;color:#52647c;font-size:12px;font-weight:750}
.bought-signal{margin:7px 0 2px;padding:7px 9px;border-radius:9px;font-size:11px;font-weight:750;line-height:1.35}
.bought-signal.reduction{background:#fff4d8;color:#77500b}
.bought-signal.offer{background:#edf4fc;color:#365477}
.deal-purchase-panel{margin:14px 0;padding:13px;border:1px solid #d8e3ef;border-radius:13px;background:#f6f9fd}
.deal-purchase-panel strong{display:block;color:#213d62;font-size:15px}
.deal-purchase-panel p{margin:5px 0 10px;color:#60728a;font-size:13px;line-height:1.45}
.bought-it-button{width:100%;min-height:46px;border:1.5px solid #1d416f;border-radius:11px;background:#fff;color:#1d416f;font-size:15px;font-weight:850}
.bought-it-button:active{background:#edf4fc}
@media(max-width:760px){
  header{gap:7px}
  .header-actions{gap:5px}
  .header-favourites{min-height:35px;padding:6px 8px;font-size:12px}
  .favourites-panel{padding:16px}
  .favourite-item{grid-template-columns:54px minmax(0,1fr);gap:9px}
  .favourite-item img,.favourite-item-placeholder{width:54px;height:54px}
  .favourite-remove{grid-column:2;justify-self:start;min-height:30px}
}


/* Personal savings dashboard */
.account-dialog{box-sizing:border-box;width:min(620px,calc(100% - 20px));max-width:620px;max-height:calc(var(--gf-visual-viewport-height,100dvh) - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:hidden;border:0;border-radius:22px;padding:0;color:#172b45;box-shadow:0 22px 80px #0d1f3740;overscroll-behavior:contain}
.account-dialog::backdrop{background:#0b1728a8;backdrop-filter:blur(3px)}
.account-dialog form{position:relative;box-sizing:border-box;width:100%;max-height:calc(var(--gf-visual-viewport-height,100dvh) - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.account-heading{padding-right:38px;margin-bottom:16px}
.account-heading>small,.username-panel small,.savings-history small{font-size:10px;font-weight:900;letter-spacing:1.25px;color:#718096}
.account-heading h2{margin:4px 0 2px;font-size:27px;letter-spacing:-.7px}
.account-email{margin:0;color:#718096;font-size:12px;overflow-wrap:anywhere}
.savings-hero{position:relative;isolation:isolate;overflow:hidden;min-height:205px;padding:24px;border-radius:20px;background:radial-gradient(circle at 88% 18%,#9be5a62c 0 13%,transparent 14%),linear-gradient(135deg,#123d2c 0%,#17613d 58%,#1e7950 100%);color:#fff;box-shadow:0 12px 30px #14553630}
.savings-hero-orbit{position:absolute;z-index:-1;width:220px;height:220px;right:-70px;bottom:-120px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 22px #ffffff0c,0 0 0 48px #ffffff08}
.savings-eyebrow{display:block;color:#c8f1d3;font-size:11px;font-weight:900;letter-spacing:1.8px}
.savings-hero>strong{display:block;margin:8px 0 0;font-size:clamp(48px,12vw,72px);line-height:1;font-weight:900;letter-spacing:-3px;font-variant-numeric:tabular-nums;text-shadow:0 3px 18px #001d1230}
.savings-caption{display:block;margin-top:8px;color:#d7f2df;font-size:13px}
.savings-foot{display:flex;align-items:end;justify-content:space-between;margin-top:22px;padding-top:13px;border-top:1px solid #ffffff2b}
.savings-foot>span:first-child{display:flex;align-items:baseline;gap:7px}
.savings-foot>span:first-child strong{font-size:21px;font-weight:900}
.savings-foot small{color:#d1ecda;font-size:11px}
.savings-foot-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff55;border-radius:50%;color:#d8f4df;font-size:19px;font-weight:850}
.savings-method{margin:10px 2px 18px;color:#728096;font-size:11px;line-height:1.45}
.username-panel{padding:17px;border:1px solid #dce6df;border-radius:16px;background:#f5faf6}
.username-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.username-panel-head h3,.savings-history h3{margin:3px 0 0;font-size:17px;letter-spacing:-.2px}
.username-star{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#e2f3e6;color:#287747;font-size:19px}
.username-panel label{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:#34465a}
.username-entry{display:flex;align-items:center;gap:5px;min-height:46px;padding:0 12px;border:1px solid #cbd9cf;border-radius:10px;background:#fff;color:#66806d}
.username-entry span{font-weight:850}
.username-entry input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#172b45;font:inherit;font-size:15px;font-weight:700}
.username-panel .primary{width:100%;min-height:43px;margin-top:10px;background:#17613d}
.username-status{margin:8px 0 0;color:#6c7d72;font-size:11px;line-height:1.4}
.savings-history{margin-top:20px}
.savings-history-heading{margin-bottom:10px}
.savings-history-heading h3{font-size:19px}
.savings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 2px;border-bottom:1px solid #e8edf1}
.savings-row-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.savings-row-copy strong{font-size:13px;overflow-wrap:anywhere}
.savings-row-copy small,.savings-row-value small{color:#8793a2;font-size:10px}
.savings-row-value{flex:0 0 auto;text-align:right;color:#207347;font-size:14px;font-weight:900;font-variant-numeric:tabular-nums}
.savings-row-value small{display:block;font-weight:600}
.savings-empty{padding:17px;border:1px dashed #d6e0e7;border-radius:12px;color:#718096;text-align:center;font-size:12px;line-height:1.5}
.account-preferences{margin-top:18px;padding-top:14px;border-top:1px solid #e8edf1}
.account-preferences .quiet{margin-top:8px}
#accountMsg{margin-top:10px}
@media(max-width:520px){.account-dialog{width:calc(100% - 14px);max-height:calc(var(--gf-visual-viewport-height,100dvh) - 14px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:18px}.account-dialog form{max-height:calc(var(--gf-visual-viewport-height,100dvh) - 14px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:17px}.savings-hero{min-height:190px;padding:20px}.savings-hero>strong{font-size:54px}.username-panel{padding:14px}}

/* Compact, genuinely circular favourite star anchored to each deal card. */
.product-heading{position:relative;padding-right:48px;min-width:0}
.card-favourite{position:absolute;top:-2px;right:0;display:grid;place-items:center;box-sizing:border-box;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border:1px solid #dce3ea;border-radius:50%;background:#fff;color:#65758a;font-size:22px;line-height:1;cursor:pointer;box-shadow:0 2px 8px #15263a10}
.card-favourite span{transform:translateY(-1px)}
.card-favourite.is-favourite{border-color:#e4c36c;background:#fff8df;color:#a16a00}
.card-favourite:disabled{opacity:.55;cursor:wait}

/* iOS Safari: prevent focus zoom and horizontal overflow in the account username field. */
.username-entry{width:100%;max-width:100%;min-width:0}
.username-entry input{box-sizing:border-box;width:100%;max-width:100%;min-width:0;font-size:16px;line-height:1.4;-webkit-appearance:none;appearance:none}
.account-dialog{overflow-x:hidden}

/* Bought it: keep progress and errors visible inside the deal detail modal. */
.bought-it-status{min-height:0;margin:8px 0 0;color:#256342;font-size:13px;line-height:1.4}
.bought-it-status:empty{display:none}
.bought-it-button:disabled{opacity:.72;cursor:default}

/* Make the deal's actual type unmistakable on the main feed. */
.deal-kind-badge{
  display:inline-flex;align-items:center;align-self:flex-start;
  width:fit-content;max-width:100%;margin:8px 0 4px;padding:7px 11px;
  border:1px solid transparent;border-radius:8px;
  font-size:11px;font-weight:900;letter-spacing:.055em;line-height:1.15;
}
.deal-kind-reduced{background:#fff0c7;border-color:#f0c45b;color:#805000}
.deal-kind-offer{background:#e3f4e8;border-color:#9bcdaa;color:#17633a}
@media(max-width:760px){
  .deal-kind-badge{margin:6px 0 3px;padding:6px 9px;font-size:10px}
}


/* Responsive tap feedback across GoodFinds controls. */
button{
  transition:transform .12s ease,filter .12s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease;
  -webkit-tap-highlight-color:transparent;
}
button:active:not(:disabled){
  transform:scale(.975);
  filter:brightness(.96);
}
.card-favourite:active:not(:disabled){
  box-shadow:0 0 0 5px #f2c95d55,0 3px 12px #c58a1838;
}
.card-favourite.favourite-feedback,
.deal-detail-share.favourite-feedback,
.deal-detail-favourite-star.favourite-feedback{
  animation:favourite-tap-feedback .42s ease-out;
}
@keyframes favourite-tap-feedback{
  0%{transform:scale(1);box-shadow:0 0 0 0 #e9b93b00}
  38%{transform:scale(1.13);box-shadow:0 0 0 7px #e9b93b55,0 3px 16px #d69a2b55}
  100%{transform:scale(1);box-shadow:0 2px 8px #15263a10}
}
@media(prefers-reduced-motion:reduce){
  button{transition:none}
  button:active:not(:disabled){transform:none}
  .card-favourite.favourite-feedback,
  .deal-detail-share.favourite-feedback,
  .deal-detail-favourite-star.favourite-feedback{animation:none}
}


/* Keep compact dialog close controls perfectly circular despite global button sizing. */
button.x{
  box-sizing:border-box;
  display:grid;
  place-items:center;
  flex:0 0 40px;
  width:40px;
  min-width:40px;
  height:40px;
  min-height:40px;
  max-height:40px;
  padding:0;
  border-radius:50%;
  line-height:1;
}


/* Share GoodFinds: QR-first sharing panel with native share and copy fallback. */
.header-share{
  min-height:38px;
  padding:7px 11px;
  border:1px solid #cbd7e5;
  border-radius:10px;
  background:#edf4fc;
  color:#1d416f;
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
}
.share-app-dialog{
  width:min(440px,calc(100% - 22px));
  max-height:calc(100dvh - 24px);
  overflow:auto;
  border:0;
  border-radius:20px;
  padding:0;
  color:#172b45;
  box-shadow:0 20px 70px #0d1f3730;
}
.share-app-panel{padding:22px;text-align:center}
.share-app-panel .modalhead{text-align:left}
.share-app-panel h2{margin:4px 0 0}
.share-app-intro{margin:12px 0 18px;color:#61728a;font-size:14px;line-height:1.5;text-align:left}
.share-app-qr-wrap{
  display:grid;
  justify-items:center;
  gap:9px;
  width:fit-content;
  max-width:100%;
  margin:0 auto 18px;
  padding:15px;
  border:1px solid #dce5ef;
  border-radius:17px;
  background:#fff;
  box-shadow:0 5px 18px #172b450c;
}
.share-app-qr{display:block;width:220px;height:220px;max-width:100%;object-fit:contain}
.share-app-qr-wrap span{color:#52647c;font-size:12px;font-weight:800}
.share-app-link-label{display:block;margin:0 0 6px;text-align:left;color:#34465a;font-size:12px;font-weight:850}
.share-app-link-row{display:flex;gap:7px;align-items:stretch}
.share-app-link-row input{
  box-sizing:border-box;
  flex:1;
  min-width:0;
  min-height:44px;
  padding:9px 11px;
  border:1px solid #cbd5e1;
  border-radius:9px;
  background:#f7f9fc;
  color:#43536a;
  font-size:13px;
}
.share-app-link-row button{flex:0 0 auto;min-height:44px;padding:8px 12px}
.share-app-native{width:100%;min-height:48px;margin-top:12px}
.share-app-status{min-height:0;margin:9px 0 0;color:#23633f;font-size:12px;line-height:1.4}
.share-app-status:empty{display:none}
@media(max-width:760px){
  .header-actions{gap:4px}
  .header-favourites,.header-share,#account{min-height:35px;padding:6px 7px;font-size:11px}
  .share-app-panel{padding:17px}
}
@media(max-width:380px){
  .header-favourites{font-size:0}
  .header-favourites::after{content:"☆";font-size:17px}
  .header-share{font-size:11px}
  #account{font-size:11px}
  .share-app-qr{width:200px;height:200px}
}


/* Header refinement: compact, balanced navigation on phones. */
@media(max-width:760px){
  header{
    box-sizing:border-box;
    height:auto;
    min-height:68px;
    padding:9px 12px;
    gap:8px;
    flex-wrap:nowrap;
    box-shadow:0 2px 10px #172b4508;
  }
  .brand{
    flex:0 1 auto;
    min-width:0;
    gap:7px;
    font-size:18px;
    line-height:1.1;
    white-space:nowrap;
  }
  .brand b{
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:9px;
    font-size:23px;
  }
  .brand>span{min-width:0;white-space:nowrap}
  .brand small{
    margin-top:3px;
    font-size:7px;
    line-height:1.2;
    letter-spacing:.75px;
    white-space:nowrap;
  }
  .header-actions{
    flex:0 0 auto;
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px;
    margin-left:auto;
  }
  .header-actions button{
    box-sizing:border-box;
    flex:0 0 auto;
    height:38px;
    min-height:38px;
    padding:6px 8px;
    border-radius:10px;
    font-size:11px;
    line-height:1;
    white-space:nowrap;
  }
  .header-favourites,.header-share{
    display:grid;
    place-items:center;
    width:38px;
    min-width:38px;
    padding:0!important;
    font-size:0!important;
  }
  .header-favourites::before{
    content:"☆";
    font-size:22px;
    line-height:1;
  }
  .header-share::before{
    content:"↗";
    font-size:22px;
    line-height:1;
  }
  #account{
    min-width:0;
    max-width:94px;
    overflow:hidden;
    text-overflow:ellipsis;
    padding-inline:9px;
    background:#f7f9fc;
  }
}
@media(max-width:380px){
  header{padding-inline:9px;gap:6px}
  .brand{font-size:16px;gap:6px}
  .brand b{flex-basis:31px;width:31px;height:31px;font-size:21px}
  .brand small{display:none}
  .header-actions{gap:4px}
  .header-actions button{height:36px;min-height:36px}
  .header-favourites,.header-share{width:36px;min-width:36px}
  #account{max-width:76px;padding-inline:7px;font-size:10px}
}


/* Mobile header: keep the full action labels, arranged on a clean second row. */
@media(max-width:760px){
  header{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    row-gap:9px;
    padding:10px 12px 11px;
  }
  .brand{
    flex:1 1 100%;
    width:100%;
  }
  .brand small{display:block}
  .header-actions{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    flex:1 1 100%;
    width:100%;
    gap:7px;
    margin:0;
  }
  .header-actions button,
  .header-favourites,
  .header-share,
  #account{
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    width:100%;
    min-width:0;
    max-width:none;
    height:40px;
    min-height:40px;
    padding:6px 5px!important;
    border-radius:10px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:12px!important;
    line-height:1.1;
  }
  .header-favourites::before,
  .header-share::before{content:none}
}
@media(max-width:380px){
  header{padding:9px 9px 10px;row-gap:8px}
  .header-actions{gap:5px}
  .header-actions button,
  .header-favourites,
  .header-share,
  #account{
    height:38px;
    min-height:38px;
    padding-inline:3px!important;
    font-size:11px!important;
  }
}

/* First-visit welcome */
.welcome-dialog{width:min(560px,calc(100% - 28px));max-width:560px;max-height:min(92dvh,820px);overflow-y:auto;overscroll-behavior:contain;padding:0;border:0;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 24px 80px #071a3380}
.welcome-dialog::backdrop{background:#08182dcc;backdrop-filter:blur(3px)}
.welcome-panel{padding:clamp(22px,5vw,36px)}
.welcome-brand{display:flex;align-items:center;gap:9px;color:var(--navy);font:800 21px Manrope;margin-bottom:20px}
.welcome-brand b{display:grid;place-items:center;width:36px;height:36px;background:var(--navy);color:var(--amber);border-radius:10px;font-size:25px}
.welcome-panel>small{color:#8a5b00}
.welcome-panel h2{font-size:clamp(27px,6vw,36px);line-height:1.12;margin:10px 0}
.welcome-lead{font-size:16px;color:var(--muted);margin:0 0 20px}
.welcome-steps{display:grid;gap:10px}
.welcome-steps article{display:flex;gap:14px;padding:13px;background:#f3f6fa;border:1px solid #e1e8f0;border-radius:13px}
.welcome-step-art{flex:0 0 52px;width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:#fff;border:1px solid #e1e8f0}
.welcome-step-art svg{width:42px;height:42px;display:block}
@media(max-width:380px){.welcome-step-art{flex-basis:44px;width:44px;height:44px}.welcome-step-art svg{width:36px;height:36px}}
.welcome-steps article>span{font:800 14px Manrope;color:#946000;padding-top:2px}
.welcome-steps strong{display:block;color:var(--navy);font:800 15px Manrope}
.welcome-steps p{margin:3px 0 0;color:var(--muted);font-size:14px;line-height:1.4}
.welcome-note{font-size:13px;color:var(--muted);margin:17px 0}
.welcome-start{width:100%;min-height:50px;font-size:16px}

.welcome-scroll-cue{display:flex;align-items:center;justify-content:center;gap:9px;margin:-7px 0 16px;color:#76500a;font-size:10px;font-weight:800;letter-spacing:1.15px}
.welcome-scroll-arrow{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#fff1c9;border:1px solid #f0d58c;font-size:17px;line-height:1;animation:welcome-nudge 1.5s ease-in-out infinite}
@keyframes welcome-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
@media(prefers-reduced-motion:reduce){.welcome-scroll-arrow{animation:none}}


/* Deal issue reporting */
.deal-issue-report{margin:15px 0;padding:13px;border:1px solid #e1e8f0;border-radius:13px;background:#f8fafc}
.deal-issue-toggle{width:100%;min-height:42px;text-align:left;color:#405674;font-weight:800}
.deal-issue-form{display:grid;gap:9px;padding-top:9px}
.deal-issue-form[hidden]{display:none}
.deal-issue-form>strong{color:#173b68;font:800 15px Manrope}
.deal-issue-form>p{margin:0;color:#61728a;font-size:13px;line-height:1.45}
.deal-issue-form label{margin-top:4px;color:#34465a;font-size:12px;font-weight:800}
.deal-issue-form label span{color:#8190a2;font-weight:500}
.deal-issue-form select,.deal-issue-form textarea{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#20334b;font:inherit}
.deal-issue-form textarea{min-height:76px;resize:vertical}
.issue-report-status{min-height:0;margin:0;color:#23633f;font-size:13px;line-height:1.4}
.issue-report-status:empty{display:none}
.issue-report-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center}
.issue-report-actions button{min-height:42px}
@media(max-width:420px){.issue-report-actions{display:grid;grid-template-columns:1fr 1fr}.issue-report-actions button{width:100%}}


/* Administrator deal reports inbox */
.admin-deal-report-product{margin:10px 0 3px;color:#1d3554;font-size:16px;line-height:1.3}
.admin-deal-report-location{margin:0;color:#64748b;font-size:12px;line-height:1.45}
.admin-deal-report-no-details{margin:10px 0 14px;color:#8995a5;font-size:12px;font-style:italic}
.admin-deal-report-item .admin-feedback-message{margin:10px 0 14px;padding:10px;border-radius:9px;background:#f6f8fb}


/* Compact favourite star in the deal detail product header */
.deal-detail-product{position:relative;align-items:flex-start;padding-right:42px}
.deal-detail-favourite-star{position:absolute;top:0;right:0;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:#f4f7fb;color:#254b78;font:inherit;font-size:29px;line-height:1;cursor:pointer}
.deal-detail-favourite-star.is-favourite{background:#fff3cf;color:#b17a00}
.deal-detail-favourite-star:focus-visible{outline:3px solid #8bb7e8;outline-offset:2px}
.deal-purchase-panel .bought-it-button{margin-bottom:12px;min-height:54px;font-size:16px;letter-spacing:.35px}
.deal-purchase-panel>strong{font-size:15px}
.deal-purchase-panel>p:last-child{margin-bottom:0}


/* Keep the deal detail modal within the phone viewport and the favourite as a true icon */
.deal-detail-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 24px));max-width:calc(100vw - 24px);overflow-x:hidden}
.deal-detail-panel{box-sizing:border-box;width:100%;min-width:0;overflow-x:hidden}
.deal-detail-product{position:relative;display:flex;align-items:flex-start;width:100%;min-width:0;box-sizing:border-box;padding-right:44px;overflow:visible}
.deal-detail-product>.deal-detail-image,.deal-detail-product>.deal-detail-emoji{flex:0 0 76px;min-width:0}
.deal-detail-product>div{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
.deal-detail-product h2{overflow-wrap:anywhere}
.deal-detail-product>.deal-detail-favourite-star{position:absolute!important;top:0!important;right:0!important;z-index:2;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;display:grid!important;place-items:center!important;overflow:hidden!important;font-size:0!important;line-height:1!important}
.deal-detail-favourite-star>span{display:block;font-size:29px!important;line-height:1!important}
.deal-detail-favourite-star>span:nth-child(n+2){display:none!important}
.deal-detail-price,.deal-detail-branch,.deal-detail-stats,.deal-verification,.deal-purchase-panel,.deal-detail-vote,.deal-issue-report,.deal-detail-share-actions{max-width:100%;min-width:0;box-sizing:border-box}
.deal-purchase-panel .bought-it-button{white-space:normal}
@media(max-width:560px){.deal-detail-panel{padding:17px}.deal-detail-product{gap:11px}.deal-detail-product h2{font-size:19px}}


/* True circular deal-detail favourite control, matching feed star feedback */
button.deal-detail-favourite-star{
  box-sizing:border-box!important;display:grid!important;place-items:center!important;
  width:38px!important;min-width:38px!important;max-width:38px!important;
  height:38px!important;min-height:38px!important;max-height:38px!important;
  aspect-ratio:1/1!important;padding:0!important;border:1px solid #dce5ef!important;
  border-radius:50%!important;background:#f4f7fb!important;color:#254b78!important;
  line-height:1!important;flex:0 0 38px!important;overflow:hidden!important;
}
button.deal-detail-favourite-star.is-favourite{
  border-color:#e3b93f!important;background:#fff3cf!important;color:#a87300!important;
  box-shadow:0 2px 8px #d69a2b30;
}
button.deal-detail-favourite-star:active:not(:disabled){box-shadow:0 0 0 5px #f2c95d55,0 3px 12px #c58a1838!important}

/* First GoodFinds saving celebration */
.first-saving-dialog{width:min(420px,calc(100% - 32px));max-width:420px;border:0;border-radius:24px;padding:0;color:#172b45;box-shadow:0 22px 80px #0d1f3740;overflow:visible}
.first-saving-dialog::backdrop{background:#0b1728ad;backdrop-filter:blur(4px)}
.first-saving-panel{position:relative;padding:30px 25px 25px;text-align:center}
.first-saving-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:0;border-radius:50%;background:#f0f3f7;color:#50627a;font-size:23px;line-height:1}
.first-saving-art{display:grid;place-items:center;width:76px;height:76px;margin:5px auto 16px;border-radius:24px;background:linear-gradient(145deg,#fff0bd,#ffda72);color:#174a32;font-size:42px;font-weight:900;box-shadow:0 8px 20px #d69a2b30}
.first-saving-panel>small{font-size:10px;font-weight:900;letter-spacing:1.2px;color:#68809c}
.first-saving-panel h2{margin:8px 0;font-size:26px;line-height:1.15;letter-spacing:-.5px}
.first-saving-panel p{margin:0 0 22px;color:#64758b;font-size:15px;line-height:1.5}
.first-saving-account{width:100%;min-height:50px}

/* First-run profile setup */
.setup-dialog{width:min(540px,calc(100% - 28px));max-width:540px;max-height:min(92dvh,820px);overflow-y:auto;padding:0;border:0;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 24px 80px #071a3380}.setup-dialog::backdrop{background:#08182dcc;backdrop-filter:blur(3px)}.setup-panel{padding:clamp(22px,5vw,34px)}.setup-brand{display:flex;align-items:center;gap:9px;color:var(--navy);font:800 21px Manrope;margin-bottom:18px}.setup-brand b{display:grid;place-items:center;width:36px;height:36px;background:var(--navy);color:var(--amber);border-radius:10px;font-size:25px}.setup-panel>small{color:#8a5b00;font-weight:800;letter-spacing:.08em}.setup-panel h2{font-size:clamp(26px,6vw,34px);line-height:1.12;margin:9px 0}.setup-intro{color:var(--muted);margin:0 0 20px}.setup-section{padding:16px 0;border-top:1px solid #e4eaf1}.setup-section>label{display:block;font-weight:800;margin-bottom:9px}.setup-area-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.setup-area-row input,.setup-username-row input{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:10px;padding:12px;font:inherit}.setup-area-row button{white-space:nowrap}.setup-section>small{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin-top:8px}.setup-username-row{display:flex;align-items:center;gap:8px;background:#f3f6fa;border:1px solid #dbe3ed;border-radius:12px;padding:6px 10px}.setup-username-row>span{font-weight:800;color:#718096}.setup-username-row input{border:0;background:transparent;padding:8px 2px;outline:none}.setup-regenerate{margin-top:7px;padding-left:0!important}.setup-continue{width:100%;margin-top:8px}.setup-skip{width:100%;margin-top:7px}.setup-panel .error{min-height:0;margin:6px 0}
@media(max-width:420px){.setup-area-row{grid-template-columns:1fr}.setup-area-row button{width:100%}}

/* Product price alerts */
.header-price-alerts{position:relative;white-space:nowrap}
.price-alert-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;border-radius:99px;background:#e1f56a;color:#173b68;font-size:11px;font-weight:900}
.price-alerts-dialog{width:min(560px,calc(100% - 28px));max-height:min(82vh,760px);padding:0;border:0;border-radius:24px;overflow:hidden;color:#173b68}
.price-alerts-dialog::backdrop{background:rgba(8,22,42,.62);backdrop-filter:blur(4px)}
.price-alerts-panel{position:relative;padding:26px;max-height:82vh;overflow:auto;background:#fff}
.price-alerts-heading small{font-size:10px;font-weight:900;letter-spacing:.14em;color:#6b829b}
.price-alerts-heading h2{margin:6px 0;font-size:30px;color:#173b68}
.price-alerts-heading p{margin:0 0 18px;color:#64748b;font-size:14px}
.price-alerts-list{display:grid;gap:10px}
.price-alert-item{display:flex;align-items:center;gap:11px;width:100%;padding:13px;border:1px solid #e3eaf1;border-radius:15px;background:#fff;text-align:left;color:#173b68;cursor:pointer}
.price-alert-item.unread{border-color:#b6d45b;background:#f8fce9}
.price-alert-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;background:#eaf5bd;color:#315d18;font-size:23px;font-weight:900}
.price-alert-copy{display:grid;gap:4px;min-width:0;flex:1}
.price-alert-copy strong{font-size:13px}
.price-alert-copy>span{font-size:12px;line-height:1.35;color:#52647a}
.price-alert-copy small{font-size:10px;color:#8090a2}
.price-alert-prices{display:grid;gap:3px;text-align:right;white-space:nowrap}
.price-alert-prices s{font-size:11px;color:#8b98a7}
.price-alert-prices b{font-size:16px;color:#2f741f}
.price-alert-empty{padding:28px 16px;text-align:center;color:#64748b;font-size:13px}
.price-alert-empty strong{display:block;margin-bottom:7px;color:#173b68;font-size:16px}
.price-alert-empty p{margin:0;line-height:1.5}
@media(max-width:520px){.price-alerts-panel{padding:22px 16px}.header-price-alerts{font-size:12px;padding-inline:8px}.price-alert-item{gap:8px;padding:10px}.price-alert-copy>span{font-size:11px}.price-alert-prices b{font-size:14px}}

.price-alert-item{position:relative;cursor:pointer}
.price-alert-item:focus-visible{outline:3px solid #8ab6e8;outline-offset:2px}
.price-alert-dismiss{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;padding:0;border:0;border-radius:50%;background:#edf1f5;color:#53657a;font-size:21px;line-height:1;cursor:pointer}
.price-alert-dismiss:hover{background:#fce4e1;color:#a83226}
.price-alert-dismiss:disabled{opacity:.5;cursor:wait}

/* Compact, visual price-drop notifications */
.price-alert-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto 28px;align-items:center;gap:12px;padding:14px}
.price-alert-product-image{display:grid;place-items:center;width:76px;height:76px;overflow:hidden;border-radius:13px;background:#f1f5f9}
.price-alert-product-image img{width:100%;height:100%;object-fit:contain}
.price-alert-product-image>span{font-size:30px}
.price-alert-copy{gap:5px}
.price-alert-copy strong{font-size:13px;font-weight:900;letter-spacing:.045em;color:#2f741f}
.price-alert-copy .price-alert-product-name{font-size:13px;line-height:1.3;color:#173b68;font-weight:700}
.price-alert-copy small{font-size:10px;line-height:1.3}
.price-alert-prices{gap:1px}
.price-alert-prices s{font-size:12px}
.price-alert-prices b{font-size:23px;font-weight:900;letter-spacing:-.03em}
.price-alert-dismiss{align-self:start}
@media(max-width:520px){
 .price-alert-item{grid-template-columns:64px minmax(0,1fr) auto 25px;gap:8px;padding:10px}
 .price-alert-product-image{width:64px;height:64px;border-radius:11px}
 .price-alert-copy strong{font-size:12px}
 .price-alert-copy .price-alert-product-name{font-size:12px}
 .price-alert-copy small{font-size:9px}
 .price-alert-prices s{font-size:10px}
 .price-alert-prices b{font-size:19px}
 .price-alert-dismiss{width:24px;height:24px;flex-basis:24px}
}

/* Keep the clear-alert control perfectly circular across global button styles. */
.price-alert-item .price-alert-dismiss{
  display:grid;
  place-items:center;
  box-sizing:border-box;
  flex:0 0 28px;
  width:28px;
  min-width:28px;
  max-width:28px;
  height:28px;
  min-height:28px;
  max-height:28px;
  aspect-ratio:1 / 1;
  padding:0;
  border:0;
  border-radius:50%;
  line-height:1;
}
@media(max-width:520px){
  .price-alert-item .price-alert-dismiss{
    flex:0 0 25px;
    width:25px;
    min-width:25px;
    max-width:25px;
    height:25px;
    min-height:25px;
    max-height:25px;
  }
}


/* Footer layout: keep admin actions and attribution tidy on small screens. */
footer{
  align-items:center;
  flex-wrap:wrap;
  row-gap:12px;
}
footer .attribution{
  flex:1 1 100%;
  min-width:0;
  line-height:1.55;
}
@media(max-width:760px){
  footer{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    gap:9px;
    padding:16px 14px calc(24px + env(safe-area-inset-bottom));
    font-size:12px;
  }
  footer>b,
  footer>span:not(.attribution){
    grid-column:1 / -1;
  }
  footer>b{font-size:17px}
  footer>span:not(.attribution){margin-top:-7px}
  footer>button{
    width:100%;
    min-width:0;
    min-height:42px;
    padding:8px 9px;
    font-size:12px;
    line-height:1.25;
    white-space:normal;
  }
  footer .attribution{
    grid-column:1 / -1;
    margin-top:3px;
    padding-top:10px;
    border-top:1px solid #e7edf3;
    font-size:11px;
    overflow-wrap:anywhere;
  }
  #floatPost{bottom:calc(18px + env(safe-area-inset-bottom))}
}

/* Subtle scrollbars for scrollable panels and lists. On iOS the system
   scrollbar remains transient and appears while the user is scrolling. */
*{
  scrollbar-width:thin;
  scrollbar-color:#b8c4d2 transparent;
}
*::-webkit-scrollbar{width:6px;height:6px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{
  background:rgba(116,133,154,.38);
  border-radius:99px;
  border:1px solid transparent;
  background-clip:padding-box;
}
*::-webkit-scrollbar-thumb:hover{background:rgba(91,111,137,.58);background-clip:padding-box}




/* Minimal blinking down-arrow hint: no label or scrollbar decoration. */
.gf-scroll-arrow-hint{
  position:fixed;
  z-index:100000;
  left:50%;
  bottom:calc(18px + env(safe-area-inset-bottom));
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(255,209,102,.94);
  color:#173b68;
  font-size:25px;
  font-weight:900;
  line-height:1;
  box-shadow:0 3px 14px rgba(23,59,104,.16);
  pointer-events:none;
  opacity:0;
  transform:translate(-50%,5px);
  transition:opacity .18s ease,transform .18s ease;
}
.gf-scroll-arrow-hint.is-visible{
  opacity:1;
  transform:translate(-50%,0);
  animation:gf-scroll-blink 1.15s ease-in-out infinite;
}
@keyframes gf-scroll-blink{0%,100%{opacity:1}50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.gf-scroll-arrow-hint.is-visible{animation:none}}



/* Lock the document behind native foreground dialogs; dialog content remains scrollable. */
body.gf-modal-background-locked{
  overflow:hidden!important;
  overscroll-behavior:none;
  touch-action:pan-y;
}
dialog[open]{
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
#dealDialog,#dealDetailDialog,#shareAppDialog{
  box-sizing:border-box;
  max-height:calc(100dvh - 24px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
#dealDialog form{min-height:min-content}
#dealDetailDialog .deal-detail-panel,
#shareAppDialog .share-app-panel{min-width:0}

/* Put the scroll cue inside the active native dialog's top layer so it is visible above its backdrop. */
dialog[open] .gf-scroll-arrow-hint{
  position:fixed;
  z-index:2147483647;
  left:50%;
  bottom:calc(14px + env(safe-area-inset-bottom));
}
html.gf-modal-scroll-locked{overflow:hidden!important}


/* GoodFinds achievement collection and unlock celebrations. */
.achievements-section{margin:22px 0 8px;padding:17px;border:1px solid #dce5ef;border-radius:18px;background:linear-gradient(160deg,#f0f5fc,#fff)}
.achievements-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.achievements-heading small{font-size:10px;font-weight:900;letter-spacing:1.2px;color:#718096}
.achievements-heading h3{margin:3px 0;font-size:20px;color:#173b68}
.achievements-heading p{margin:3px 0 0;color:#718096;font-size:12px}
.achievement-points{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border-radius:50%;background:#173b68;color:#fff;box-shadow:inset 0 0 0 4px #ffffff20}
.achievement-points strong{font-size:21px;line-height:1}
.achievement-points small{font-size:8px;letter-spacing:1px;color:#dce8f5}
.achievement-list{display:grid;gap:9px}
.achievement-card{display:flex;align-items:center;gap:10px;min-width:0;padding:11px;border:1px solid #e3e9f0;border-radius:13px;background:#fff}
.achievement-card.is-unlocked{border-color:#e6ca78;background:#fffdf5}
.achievement-card-icon{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border-radius:12px;background:#edf2f8;font-size:24px}
.achievement-card.is-unlocked .achievement-card-icon{background:#fff0c4}
.achievement-card-main{flex:1;min-width:0}
.achievement-card-title{display:flex;align-items:center;justify-content:space-between;gap:8px}
.achievement-card-title strong{font-size:12px;color:#203650;line-height:1.25}
.achievement-card-title span{flex:0 0 auto;font-size:8px;font-weight:900;letter-spacing:.7px;color:#8793a2}
.achievement-card.is-unlocked .achievement-card-title span{color:#98700c}
.achievement-card-main p{margin:3px 0 7px;color:#718096;font-size:10px;line-height:1.35}
.achievement-progress{height:6px;overflow:hidden;border-radius:99px;background:#e9eef4}
.achievement-progress span{display:block;height:100%;border-radius:inherit;background:#b9c6d5}
.achievement-card.is-unlocked .achievement-progress span{background:#e5bd4d}
.achievement-card-main>small{display:block;margin-top:4px;color:#8793a2;font-size:9px}
.achievement-share{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;min-height:36px;padding:0;border:1px solid #d9e3ed;border-radius:50%;background:#edf4fc;color:#173b68;font-size:20px;font-weight:900}
.achievement-dialog{width:min(430px,calc(100% - 24px));padding:0;border:0;border-radius:24px;background:transparent;overflow:visible}
.achievement-dialog::backdrop{background:rgba(7,19,36,.72);backdrop-filter:blur(5px)}
.achievement-celebration{position:relative;display:flex;flex-direction:column;align-items:center;gap:13px;padding:30px 23px 24px;border:1px solid #ffffff40;border-radius:24px;background:radial-gradient(circle at 50% 22%,#345f8b 0,#173b68 48%,#102b4c 100%);color:#fff;text-align:center;box-shadow:0 22px 80px #06152b66}
.achievement-celebration .x{position:absolute;top:12px;right:12px;width:36px;min-width:36px;height:36px;min-height:36px;background:#ffffff20;color:#fff;border-color:#ffffff30}
.achievement-confetti{color:#ffd166;font-size:26px;letter-spacing:8px}
.achievement-unlock-icon{display:grid;place-items:center;width:124px;height:124px;border:3px solid #ffd166;border-radius:50%;background:linear-gradient(145deg,#fff3ca,#e8b947);box-shadow:0 0 0 10px #ffd16620,0 12px 35px #0004;font-size:66px}
.achievement-celebration>small{font-size:10px;font-weight:900;letter-spacing:1.4px;color:#dce8f5}
.achievement-celebration h2{margin:0;color:#ffd166;font-size:27px;line-height:1.15}
.achievement-celebration p{margin:0;color:#e4edf7;font-size:14px;line-height:1.45}
.achievement-celebration>strong{color:#ffd166;font-size:14px;letter-spacing:1px}
.achievement-celebration .primary{width:100%;min-height:49px;background:#ffd166;color:#173b68;font-weight:900}
.achievement-celebration .quiet{color:#e5edf7}
@media(max-width:520px){.achievements-section{padding:14px}.achievement-card{gap:8px;padding:9px}.achievement-card-icon{flex-basis:38px;width:38px;height:38px;font-size:21px}}

/* Aldi 30% shelf-sticker reduction preview */
.aldi-30-preview{padding:12px 14px;border:1px solid #e3b84f;border-radius:13px;background:#fff9e8;color:#765000;font-size:13px;font-weight:800;line-height:1.45}
.aldi-30-preview[hidden]{display:none}

.aldi-30-tag{display:inline-flex;align-items:center;justify-content:center;padding:8px 15px;border-radius:10px;background:#d9f2df;color:#126b36;font-size:22px;font-weight:900;letter-spacing:.02em}.aldi-sticker-price{min-height:44px}.savings-store-breakdown{margin:14px 0;padding:14px;border:1px solid var(--line,#e4e9ef);border-radius:16px}.savings-store-breakdown h3{margin:0 0 10px;font-size:16px}

/* GoodFinds app-shell navigation and focused deal discovery */
.app-topbar{position:sticky;top:0;z-index:30;height:68px;padding:0 max(16px,calc((100vw - 1100px)/2))}
.topbar-actions{display:flex;align-items:center;gap:9px}
.location-pill{display:flex;align-items:center;gap:8px;min-height:42px;padding:5px 10px;border:1px solid var(--line);border-radius:13px;background:#f5f8fc;text-align:left}
.location-pill>span:first-child{font-size:22px;color:var(--navy)}.location-pill>span:nth-child(2){display:grid;gap:0}.location-pill small{font-size:8px;letter-spacing:1px;color:#728198}.location-pill strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.profile-button{display:grid;place-items:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;border:0;border-radius:50%;background:#e9eef5;color:#173b68;font-size:25px}
.share-callout{margin:16px 0 12px;padding:12px 16px;border:1px solid #edc65e;border-radius:17px;background:linear-gradient(110deg,#fff4ce,#fff9e9)}
.share-callout-main{display:flex;align-items:center;gap:13px;width:100%;padding:0;border:0;background:transparent;text-align:left;color:#173b68}
.share-callout-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:#ffd166;color:#173b68;font-size:32px;font-weight:600}
.share-callout-main>span:nth-child(2){display:grid;gap:2px;flex:1}.share-callout-main strong{font:800 19px Manrope}.share-callout-main small{font-size:11px;letter-spacing:0;line-height:1.35;color:#58677b}.share-callout-arrow{font-size:28px}
.share-callout>p{margin:7px 0 0 59px;font-size:10px;color:#68778a}
.compact-filters{margin:0 0 12px;padding:0;border:0;background:transparent;box-shadow:none}
.compact-filters .chips{display:flex;gap:7px;margin:0 0 10px;flex-wrap:nowrap}
.compact-filters .chips button{flex:1;display:flex;justify-content:center;align-items:center;gap:5px;min-height:35px;padding:6px 7px;border:1px solid #d5deea;border-radius:10px;font-size:10px;white-space:nowrap}
.compact-filters .chips button span{font-size:14px}.compact-filters .chips button.active{background:#173b68;border-color:#173b68;color:#fff}
.advanced-filter-row{display:flex;align-items:center;justify-content:space-between;gap:9px}
.sort-control{display:flex;align-items:center;gap:8px;color:#53657b;font-size:12px;font-weight:700}
.sort-control select{min-height:37px;padding:6px 28px 6px 10px;border:1px solid #d5deea;border-radius:10px;background:#fff;color:#173b68;font-size:12px;font-weight:700}
.extra-filters{position:relative}.extra-filters summary{list-style:none;padding:8px 12px;border:1px solid #d5deea;border-radius:10px;background:#fff;color:#173b68;font-size:12px;font-weight:800;cursor:pointer}.extra-filters summary::-webkit-details-marker{display:none}
.extra-filter-panel{position:absolute;right:0;top:calc(100% + 7px);z-index:20;display:grid;gap:8px;width:min(280px,calc(100vw - 32px));padding:12px;border:1px solid #d5deea;border-radius:13px;background:#fff;box-shadow:0 12px 32px #10223b25}
.extra-filter-panel input,.extra-filter-panel select{width:100%;min-width:0;min-height:40px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#173b68;font-size:13px}
.heading{margin:15px 0 10px}
.bottom-nav{display:none}
@media(max-width:760px){
 html,body{height:100%;overflow:hidden}body{display:flex;flex-direction:column;min-height:0}
 .app-topbar{position:relative;flex:0 0 58px;height:58px;padding:0 11px;gap:8px}
 .brand{font-size:18px;gap:7px}.brand b{width:31px;height:31px;font-size:22px}.brand small{font-size:7px}
 .topbar-actions{gap:6px}.location-pill{min-height:38px;padding:4px 8px;gap:5px}.location-pill strong{max-width:115px;font-size:10px}.location-pill>span:first-child{font-size:18px}.location-pill small{font-size:7px}
 .profile-button{width:37px;min-width:37px;height:37px;min-height:37px;font-size:22px}
 main{flex:1;min-height:0;width:100%;max-width:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 12px calc(20px + env(safe-area-inset-bottom))}
 .share-callout{margin:10px 0 9px;padding:10px 12px;border-radius:14px}.share-callout-icon{flex-basis:40px;width:40px;height:40px;border-radius:12px;font-size:28px}
 .share-callout-main strong{font-size:16px}.share-callout-main small{font-size:10px}.share-callout>p{margin-left:51px;font-size:9px}
 .compact-filters .chips{gap:5px;margin-bottom:8px}.compact-filters .chips button{font-size:9px;min-height:32px;padding:5px 3px;gap:3px}.compact-filters .chips button span{font-size:12px}
 .advanced-filter-row{margin-bottom:4px}.sort-control{font-size:11px}.sort-control select{min-height:34px;font-size:11px;padding:5px 23px 5px 8px}
 .heading{margin:11px 0 8px}.heading h2{font-size:20px}.heading-actions{gap:5px}.refresh-button{min-height:34px;padding:6px 9px;font-size:11px}
 .account-strip{margin:6px 0;padding:7px 10px;font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .bottom-nav{position:relative;z-index:40;display:flex;flex:0 0 calc(62px + env(safe-area-inset-bottom));height:calc(62px + env(safe-area-inset-bottom));align-items:center;justify-content:space-around;padding:4px 7px calc(4px + env(safe-area-inset-bottom));border-top:1px solid #dbe3ed;background:#fff;box-shadow:0 -5px 20px #10223b0c}
 .bottom-nav-item{display:grid;place-items:center;align-content:center;gap:1px;flex:1;min-width:0;min-height:48px;padding:2px;border:0;background:transparent;color:#77869a}
 .bottom-nav-item>span{font-size:22px;line-height:1.2;font-weight:800}.bottom-nav-item small{font-size:8px;letter-spacing:0;color:inherit}.bottom-nav-item.is-active{color:#173b68}
 .bottom-nav-share{display:grid;place-items:center;flex:0 0 51px;width:51px;height:51px;min-height:51px;margin:0 7px 8px;border:0;border-radius:17px;background:#ffd166;color:#173b68;font-size:34px;font-weight:500;box-shadow:0 5px 14px #d69a2b38}
 #floatPost{display:none!important}footer{display:none}
}
/* Header correction: prevent legacy mobile header rules from wrapping the app bar. */
@media(max-width:760px){
  body>header.app-topbar{
    box-sizing:border-box!important;
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    width:100%!important;
    height:64px!important;
    min-height:64px!important;
    max-height:64px!important;
    flex:0 0 64px!important;
    padding:0 14px!important;
    overflow:hidden!important;
    border-bottom:1px solid #e2e8f0!important;
    box-shadow:0 2px 8px #172b4508!important;
  }
  body>header.app-topbar .brand{
    display:flex!important;
    flex:0 1 auto!important;
    min-width:0!important;
    width:auto!important;
    gap:8px!important;
    white-space:nowrap!important;
    font-size:18px!important;
  }
  body>header.app-topbar .brand b{
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    font-size:23px!important;
  }
  body>header.app-topbar .brand>span{min-width:0!important}
  body>header.app-topbar .brand small{font-size:7px!important;letter-spacing:1px!important}
  body>header.app-topbar .topbar-actions{
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    margin:0 0 0 auto!important;
    gap:7px!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-flow:row nowrap!important;
  }
  body>header.app-topbar .location-pill{
    display:flex!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:138px!important;
    height:40px!important;
    min-height:40px!important;
    padding:4px 8px!important;
    gap:5px!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }
  body>header.app-topbar .location-pill>span:nth-child(2){min-width:0!important}
  body>header.app-topbar .location-pill strong{display:block!important;max-width:82px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:10px!important}
  body>header.app-topbar .profile-button{
    display:grid!important;
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    border-radius:50%!important;
  }
  body>header.app-topbar .header-share,
  body>header.app-topbar .header-price-alerts{display:none!important}
  body>header.app-topbar [hidden]{display:none!important}
}
@media(max-width:380px){
  body>header.app-topbar{padding-inline:9px!important;gap:5px!important}
  body>header.app-topbar .brand{font-size:16px!important;gap:6px!important}
  body>header.app-topbar .brand b{flex-basis:31px!important;width:31px!important;height:31px!important}
  body>header.app-topbar .topbar-actions{gap:5px!important}
  body>header.app-topbar .location-pill{max-width:125px!important}
}

/* Reference-led GoodFinds redesign: blue store header and compact deal rows */
@media(max-width:760px){
 body>header.app-topbar{height:auto!important;min-height:0!important;max-height:none!important;flex:0 0 auto!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;padding:10px 14px 12px!important;background:#1452a0!important;border:0!important;box-shadow:none!important;overflow:visible!important}
 body>header.app-topbar .brand-row{display:flex;align-items:center;gap:10px;min-height:42px}
 body>header.app-topbar .brand{display:flex!important;flex:1 1 auto!important;min-width:0!important;width:auto!important;color:#fff!important;font-size:23px!important;gap:9px!important}
 body>header.app-topbar .brand b{width:39px!important;height:39px!important;flex:0 0 39px!important;border-radius:50%!important;background:#fff!important;color:#1452a0!important;font-size:27px!important}
 body>header.app-topbar .brand>span{font-weight:850!important;line-height:1.05!important}
 body>header.app-topbar .brand-accent{color:#ffd34f!important}
 body>header.app-topbar .brand small{margin-top:4px!important;color:#e0ebff!important;font-size:9px!important;letter-spacing:.15px!important;font-weight:500!important}
 body>header.app-topbar .topbar-actions{display:none!important}
 body>header.app-topbar .profile-button{display:grid!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border:2px solid #d8e7ff!important;border-radius:50%!important;background:#fff!important;color:#173b68!important;font-size:22px!important}
 body>header.app-topbar .location-strip{display:flex!important;align-items:center!important;gap:11px!important;width:100%!important;min-height:54px!important;padding:7px 12px!important;border:1px solid #4e83c7!important;border-radius:14px!important;background:#2767b5!important;color:#fff!important;text-align:left!important}
 body>header.app-topbar .location-pin{font-size:24px!important;color:#fff!important}
 body>header.app-topbar .location-copy{display:grid!important;gap:2px!important;flex:1!important;min-width:0!important}
 body>header.app-topbar .location-copy small{font-size:8px!important;letter-spacing:1px!important;color:#d7e6ff!important}
 body>header.app-topbar .location-copy strong{max-width:none!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#fff!important;font-size:13px!important}
 body>header.app-topbar .location-change{padding:7px 12px!important;border:1px solid #dceaff!important;border-radius:9px!important;color:#fff!important;font-size:12px!important;font-weight:800!important}
 main{padding:0 12px calc(36px + env(safe-area-inset-bottom))!important}
 .share-callout{margin:13px 0 12px!important;padding:12px 13px!important;border-radius:16px!important;background:#fff2bd!important;border:1px solid #f3d66c!important}
 .share-callout-main{gap:12px!important}
 .share-callout-icon{position:relative!important;isolation:isolate;display:flex!important;align-items:center!important;justify-content:center!important;width:58px!important;height:58px!important;flex:0 0 58px!important;border-radius:50%!important;background:#173b68!important;color:#fff!important;font-size:0!important;overflow:hidden!important}
 .share-callout-icon:before{content:"";width:27px;height:22px;border:3px solid white;border-radius:6px;display:block;box-sizing:content-box}
 .share-callout-icon:after{content:"";position:absolute;left:7px;top:50%;width:10px;height:10px;border:2px solid white;border-radius:50%;background:#173b68;transform:translateY(-50%)}
 .share-callout-main strong{font-size:19px!important}
 .share-callout-main small{font-size:11px!important;line-height:1.35!important}
 .share-callout>p{margin:8px 0 0 70px!important;font-size:10px!important}
 .compact-filters{margin:0 0 12px!important}
 .category-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 13px}
 .category-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:82px;padding:8px 3px;border:1px solid #dbe3ee;border-radius:15px;background:#fff;color:#29476e}
 .category-tile>span{font-size:22px;line-height:1.1;color:#2670bd}
 .category-tile:nth-child(2)>span{color:#2e9b64}.category-tile:nth-child(3)>span{color:#d49a18}
 .category-tile strong{font-size:10px;line-height:1.15;text-align:center}
 .category-tile.active{border-color:#2d76c5;background:#edf5ff;box-shadow:inset 0 0 0 1px #2d76c5}
 .advanced-filter-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto!important;gap:7px!important;margin:0 0 12px!important}
 .sort-control,.store-control{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:5px;row-gap:2px;min-width:0;padding:7px 9px;border:1px solid #dbe3ed;border-radius:12px;background:#fff;color:#526780}
 .sort-control>span:first-child,.store-control>span:first-child{grid-row:1/3;font-size:18px}
 .control-caption{font-size:8px;text-transform:uppercase;letter-spacing:.6px;color:#718198}
 .sort-control select,.store-control select{grid-column:2;min-width:0;width:100%;min-height:23px;padding:0 14px 0 0;border:0;background:transparent;color:#173b68;font-size:11px;font-weight:800}
 .extra-filters summary{padding:11px 10px!important;border-radius:12px!important;font-size:11px!important}
 .heading{margin:10px 0 9px!important}
 .heading h2{font-size:21px!important}
 .account-strip{margin:6px 0 9px!important;padding:7px 10px!important;font-size:10px!important}
 #feed.grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
 #feed .deal-row{display:grid!important;grid-template-columns:84px minmax(0,1fr)!important;gap:10px!important;align-items:start!important;padding:10px!important;border:1px solid #e0e7f0!important;border-radius:15px!important;background:#fff!important;box-shadow:0 2px 7px #19385d08!important}
 #feed .deal-row-image{width:84px;height:88px;display:grid;place-items:center;overflow:hidden;border-radius:12px;background:#f2f5f8}
 #feed .deal-row-image .deal-product-image{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;border-radius:10px!important;background:transparent!important}
 #feed .deal-image-placeholder{font-size:31px}
 #feed .deal-row-content{min-width:0;display:flex;flex-direction:column;gap:4px}
 #feed .deal-row-topline{display:flex;align-items:center;gap:6px;min-width:0}
 #feed .store-pill{padding:3px 7px;border-radius:7px;background:#2165ad;color:#fff;font-size:9px;font-weight:800}
 #feed .deal-distance{font-size:9px;color:#687a90}
 #feed .card-favourite{margin-left:auto;width:29px;min-width:29px;height:29px;min-height:29px;padding:0;border:0;background:transparent;box-shadow:none;font-size:22px}
 #feed .deal-row h3{margin:0!important;font-size:13px!important;line-height:1.25!important;font-weight:800!important}
 #feed .deal-row-meta{display:flex;align-items:center;gap:6px;min-width:0}
 #feed .compact-deal-badge{display:inline-block;padding:3px 6px;border-radius:999px;font-size:8px;font-weight:850;white-space:nowrap}
 #feed .compact-deal-badge.reduced{background:#fff0c7;color:#8b5b00}
 #feed .compact-deal-badge.offer{background:#e2f3e8;color:#17653b}
 #feed .compact-time{font-size:8px;color:#7b8797}
 #feed .deal-row-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;min-height:22px}
 #feed .compact-price{font-size:17px;line-height:1.1;color:#173b68;font-weight:900}
 #feed .compact-discount{font-size:12px!important;padding:4px 8px!important;border-radius:7px!important}
 #feed .deal-row-price .old{font-size:10px;margin:0}
 #feed .compact-saving{font-size:10px;color:#176b3c;font-weight:800}
 #feed .compact-branch{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#526780;font-size:9px;text-decoration:none}
 #feed .compact-bought{font-size:9px;color:#69788c}
 #feed .deal-row-actions{display:flex;gap:6px;margin-top:3px}
 #feed .deal-row-actions .confirm{min-height:29px;width:auto;padding:4px 9px;border-radius:8px;font-size:9px}
 #feed .deal-row-actions .admin-delete{min-height:29px;width:auto;padding:4px 8px;font-size:9px}
}
@media(min-width:761px){
 body>header.app-topbar{height:auto;display:flex;flex-direction:column;align-items:stretch;padding:12px max(22px,calc((100vw - 1100px)/2));background:#1452a0}
 body>header.app-topbar .brand-row{display:flex;align-items:center}
 body>header.app-topbar .brand{color:#fff}
 body>header.app-topbar .brand-accent{color:#ffd34f}
 body>header.app-topbar .brand small{color:#e0ebff}
 body>header.app-topbar .location-strip{display:flex;align-items:center;gap:12px;width:100%;padding:9px 14px;border:1px solid #4e83c7;border-radius:12px;background:#2767b5;color:#fff;text-align:left}
 body>header.app-topbar .location-copy{display:grid;flex:1}
 body>header.app-topbar .location-copy small{font-size:9px;color:#d7e6ff}
 body>header.app-topbar .location-copy strong{color:#fff}
 body>header.app-topbar .location-change{padding:7px 12px;border:1px solid #dceaff;border-radius:9px}
 #feed.grid{grid-template-columns:1fr;gap:10px}
 #feed .deal-row{display:grid;grid-template-columns:100px minmax(0,1fr);gap:14px;padding:12px}
 #feed .deal-row-image{width:100px;height:100px;display:grid;place-items:center}
 #feed .deal-row-image img{width:100%;height:100%;object-fit:contain}
 #feed .deal-row-content{min-width:0}
}

/* Final compact-feed polish: balanced controls and product thumbnails */
@media(max-width:760px){
 body>header.app-topbar .location-pin{display:grid!important;place-items:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;font-size:0!important}
 body>header.app-topbar .location-pin:before{content:"";width:20px;height:20px;border:1.8px solid #fff;border-radius:50%;background:linear-gradient(90deg,transparent 46%,#fff 47%,#fff 53%,transparent 54%),linear-gradient(0deg,transparent 46%,#fff 47%,#fff 53%,transparent 54%);box-shadow:0 0 0 3px #ffffff22}
 .advanced-filter-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 58px!important;gap:6px!important;align-items:stretch!important}
 .sort-control,.store-control{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;min-height:46px!important;padding:5px 7px!important;white-space:nowrap!important}
 .sort-control>span:first-child,.store-control>span:first-child{display:block!important;flex:0 0 auto!important;font-size:15px!important;grid-row:auto!important}
 .sort-control .control-caption,.store-control .control-caption{display:none!important}
 .sort-control select,.store-control select{display:block!important;flex:1 1 auto!important;min-width:0!important;width:1%!important;max-width:100%!important;min-height:30px!important;padding:0 13px 0 0!important;font-size:11px!important;text-overflow:ellipsis!important}
 .extra-filters summary{display:flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;box-sizing:border-box!important;padding:6px!important}
 #feed .deal-row{grid-template-columns:72px minmax(0,1fr)!important;gap:9px!important;padding:9px!important}
 #feed .deal-row-image{width:72px!important;height:76px!important;border-radius:10px!important}
 #feed .deal-row-image .deal-product-image{width:100%!important;height:100%!important;object-fit:contain!important}
 #feed .deal-row-content{gap:3px!important}
 #feed .deal-row h3{font-size:13px!important;line-height:1.2!important}
 #feed .deal-row-meta{min-height:15px!important}
 #feed .deal-row-price{min-height:19px!important;margin-top:1px!important}
 #feed .compact-price{font-size:16px!important}
 #feed .compact-saving{font-size:9px!important}
 #feed .compact-discount{font-size:11px!important;padding:3px 7px!important}
 #feed .compact-branch{font-size:8px!important}
 #feed .deal-row-actions .confirm{min-height:27px!important}
}

/* GoodFinds home-screen fidelity pass — compact, reference-led mobile layout */
@media (max-width:760px){
  body>header.app-topbar{
    gap:7px!important;
    padding:8px 14px 9px!important;
  }
  body>header.app-topbar .brand-row{min-height:40px!important}
  body>header.app-topbar .brand{font-size:22px!important}
  body>header.app-topbar .brand b{
    width:40px!important;height:40px!important;flex-basis:40px!important;
  }
  body>header.app-topbar .brand small{font-size:9px!important}
  body>header.app-topbar .profile-button{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  }
  body>header.app-topbar .location-strip{
    min-height:46px!important;padding:5px 10px!important;border-radius:12px!important;
  }
  body>header.app-topbar .location-pin{flex-basis:32px!important;width:32px!important;height:32px!important}
  body>header.app-topbar .location-copy small{font-size:8px!important}
  body>header.app-topbar .location-copy strong{font-size:13px!important}
  body>header.app-topbar .location-change{padding:6px 11px!important;font-size:12px!important}

  main{padding-left:13px!important;padding-right:13px!important}
  .share-callout{
    margin:10px 0 10px!important;padding:9px 11px!important;border-radius:16px!important;
  }
  .share-callout-main{gap:11px!important}
  .share-callout-icon{
    width:49px!important;height:49px!important;flex-basis:49px!important;
  }
  .share-callout-icon:before{width:23px!important;height:19px!important;border-width:2.5px!important}
  .share-callout-icon:after{left:6px!important;width:9px!important;height:9px!important}
  .share-callout-main strong{font-size:18px!important;line-height:1.2!important}
  .share-callout-main small{font-size:11px!important;line-height:1.3!important}
  .share-callout-arrow{font-size:26px!important}
  .share-callout>p{margin:5px 0 0 60px!important;font-size:10px!important;line-height:1.25!important}

  .category-tiles{gap:7px!important;margin:0 0 10px!important}
  .category-tile{
    min-height:56px!important;padding:6px 4px!important;gap:4px!important;border-radius:14px!important;
  }
  .category-tile>span{font-size:19px!important}
  .category-tile strong{font-size:10px!important;line-height:1.1!important}

  .advanced-filter-row{margin:0 0 8px!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 56px!important}
  .sort-control,.store-control{min-height:40px!important;padding:4px 7px!important;border-radius:11px!important}
  .sort-control select,.store-control select{font-size:11px!important;min-height:28px!important}
  .extra-filters summary{min-height:40px!important;border-radius:11px!important}

  .heading{margin:8px 0 8px!important;align-items:center!important}
  .heading h2{font-size:21px!important;letter-spacing:-.45px!important}
  .heading-actions{gap:5px!important}
  #count{font-size:13px!important;white-space:nowrap!important}
  .refresh-button{
    min-height:34px!important;padding:5px 8px!important;border-radius:10px!important;font-size:11px!important;
  }

  /* Account identity belongs in the profile screen, not in the public deal feed. */
  .account-strip{display:none!important}

  #feed.grid{gap:8px!important}
  #feed .deal-row{
    grid-template-columns:58px minmax(0,1fr)!important;gap:10px!important;
    padding:9px!important;border-radius:14px!important;
  }
  #feed .deal-row-image{width:58px!important;height:60px!important;border-radius:10px!important}
  #feed .deal-row-content{gap:3px!important}
  #feed .store-pill{font-size:10px!important;padding:3px 7px!important}
  #feed .deal-distance{font-size:10px!important}
  #feed .deal-row h3{font-size:14px!important;line-height:1.25!important}
  #feed .compact-deal-badge{font-size:9px!important}
  #feed .compact-time{font-size:9px!important}
  #feed .compact-price{font-size:17px!important}
  #feed .compact-branch{font-size:9px!important}
}
@media(max-width:380px){
  body>header.app-topbar .brand{font-size:20px!important}
  .category-tile strong{font-size:9px!important}
  #feed .deal-row{grid-template-columns:54px minmax(0,1fr)!important}
  #feed .deal-row-image{width:54px!important;height:56px!important}
}


/* Product cards — larger, image-led and simplified to match the approved reference */
@media(max-width:760px){
  #feed.grid{gap:11px!important}
  #feed .deal-row{
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:12px!important;
    align-items:center!important;
    padding:11px!important;
    border:1px solid #e1e6ee!important;
    border-radius:19px!important;
    background:#fff!important;
    box-shadow:0 3px 12px rgba(20,45,78,.055)!important;
  }
  #feed .deal-row-image{
    width:92px!important;height:92px!important;
    border-radius:13px!important;background:#f5f6f8!important;
    overflow:hidden!important;
  }
  #feed .deal-row-image .deal-product-image{
    width:100%!important;height:100%!important;
    object-fit:contain!important;padding:3px!important;
  }
  #feed .deal-image-placeholder{font-size:43px!important}
  #feed .deal-row-content{gap:5px!important;min-width:0!important}
  #feed .deal-row-topline{gap:7px!important;min-height:25px!important}
  #feed .store-pill{
    flex:0 0 auto!important;padding:4px 9px!important;
    border-radius:8px!important;font-size:12px!important;
  }
  #feed .deal-distance{font-size:11px!important;color:#69788c!important}
  #feed .card-favourite{
    width:31px!important;min-width:31px!important;height:31px!important;min-height:31px!important;
    margin-left:auto!important;font-size:25px!important;color:#697481!important;
  }
  #feed .card-favourite.is-favourite{color:#f2b91e!important}
  #feed .deal-row h3{
    margin:0!important;font-size:16px!important;line-height:1.28!important;
    font-weight:800!important;letter-spacing:-.2px!important;color:#142238!important;
  }
  #feed .deal-row-price{
    display:flex!important;align-items:baseline!important;gap:7px!important;
    min-height:23px!important;margin:0!important;flex-wrap:wrap!important;
  }
  #feed .compact-price{font-size:21px!important;line-height:1.1!important;color:#172f50!important}
  #feed .compact-discount{
    font-size:14px!important;line-height:1.1!important;padding:6px 10px!important;
    border-radius:9px!important;background:#ffcf37!important;color:#26344a!important;
  }
  #feed .deal-row-price .old{font-size:12px!important;color:#778294!important}
  #feed .compact-saving{font-size:11px!important}
  #feed .deal-row-meta{display:block!important;min-height:17px!important;margin:0!important}
  #feed .compact-time{font-size:11px!important;line-height:1.3!important;color:#718096!important}
  #feed .deal-row-actions{display:flex!important;gap:7px!important;margin-top:2px!important}
  #feed .deal-row-actions .confirm{
    width:auto!important;min-height:30px!important;padding:5px 10px!important;
    border-radius:9px!important;font-size:11px!important;
  }
  #feed .deal-row-actions .admin-delete{
    width:auto!important;min-height:30px!important;padding:5px 9px!important;
    border-radius:9px!important;font-size:10px!important;
  }
}
@media(max-width:380px){
  #feed .deal-row{grid-template-columns:82px minmax(0,1fr)!important;gap:10px!important}
  #feed .deal-row-image{width:82px!important;height:82px!important}
  #feed .deal-row h3{font-size:15px!important}
  #feed .compact-price{font-size:19px!important}
}


/* Keep the supermarket, live distance and favourite together on one reliable row. */
@media(max-width:760px){
  #feed .deal-row-content .deal-row-topline{
    display:flex!important;align-items:center!important;gap:7px!important;
    width:100%!important;min-width:0!important;min-height:30px!important;
  }
  #feed .deal-row-content .deal-row-topline .store-pill{flex:0 0 auto!important}
  #feed .deal-row-content .deal-row-topline .deal-distance{
    display:inline-block!important;flex:0 1 auto!important;
    min-width:0!important;font-size:12px!important;color:#68788e!important;
    white-space:nowrap!important;
  }
  #feed .deal-row-content .deal-row-topline .card-favourite{
    position:static!important;display:grid!important;place-items:center!important;
    flex:0 0 32px!important;width:32px!important;height:32px!important;
    min-width:32px!important;min-height:32px!important;margin:0 0 0 auto!important;
    padding:0!important;border:0!important;border-radius:50%!important;
    background:transparent!important;box-shadow:none!important;
    color:#697789!important;font-size:25px!important;line-height:1!important;
    visibility:visible!important;opacity:1!important;
  }
  #feed .deal-row-content .deal-row-topline .card-favourite.is-favourite{color:#f2b91e!important}
}


/* Favourite control: draw the star with CSS so inherited button/text rules cannot hide it. */
@media(max-width:760px){
  #feed .deal-row-topline{position:relative!important;display:flex!important;align-items:center!important}
  #feed .deal-row-topline button.card-favourite{
    position:static!important;display:grid!important;visibility:visible!important;opacity:1!important;
    flex:0 0 34px!important;width:34px!important;height:34px!important;
    min-width:34px!important;min-height:34px!important;margin-left:auto!important;
    padding:0!important;border:0!important;border-radius:50%!important;
    background:transparent!important;box-shadow:none!important;
    font-size:0!important;line-height:1!important;overflow:visible!important;
    color:#65758a!important;z-index:2!important;
  }
  #feed .deal-row-topline button.card-favourite::before{
    content:"☆"!important;display:block!important;
    font-family:Arial,sans-serif!important;font-size:32px!important;font-weight:400!important;
    line-height:1!important;color:#65758a!important;
  }
  #feed .deal-row-topline button.card-favourite.is-favourite::before{
    content:"★"!important;color:#f2b91e!important;
  }
  #feed .deal-row-topline button.card-favourite span{display:none!important}
}


/* Toast lives outside the scrolling feed and sits visibly above the fixed mobile navigation. */
.app-toast{
  z-index:100000!important;
}
@media(max-width:760px){
  .app-toast{
    position:fixed!important;
    left:50%!important;
    bottom:calc(76px + env(safe-area-inset-bottom))!important;
    max-width:calc(100vw - 28px)!important;
    width:max-content!important;
    z-index:100000!important;
  }
}


/* Compact mockup-led deal cards: image, name and offer details share a tighter rhythm. */
@media(max-width:760px){
  #feed.grid{gap:9px!important}
  #feed .deal-row{
    grid-template-columns:88px minmax(0,1fr)!important;
    gap:11px!important;padding:10px!important;
    min-height:0!important;border-radius:17px!important;
    box-shadow:0 2px 9px rgba(20,45,78,.045)!important;
    cursor:pointer;
  }
  #feed .deal-row-image{
    width:88px!important;height:88px!important;
    align-self:center!important;border-radius:12px!important;
  }
  #feed .deal-row-image .deal-product-image{
    width:100%!important;height:100%!important;object-fit:contain!important;padding:2px!important;
  }
  #feed .deal-row-content{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:4px!important;min-width:0!important}
  #feed .deal-row-topline{display:flex!important;align-items:center!important;gap:7px!important;min-height:25px!important}
  #feed .store-pill{font-size:11px!important;padding:4px 9px!important;border-radius:8px!important}
  #feed .deal-distance{font-size:11px!important;white-space:nowrap!important;color:#69788c!important}
  #feed .deal-row h3{font-size:14px!important;line-height:1.2!important;letter-spacing:-.15px!important;margin:0!important;font-weight:800!important}
  #feed .deal-row-bottomline{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;min-width:0!important}
  #feed .deal-row-price{display:flex!important;align-items:baseline!important;gap:5px!important;min-height:0!important;margin:0!important;flex:0 0 auto!important}
  #feed .compact-discount{font-size:13px!important;padding:5px 9px!important;border-radius:999px!important;line-height:1.1!important}
  #feed .compact-price{font-size:19px!important;line-height:1.1!important}
  #feed .deal-row-price .old{font-size:11px!important}
  #feed .compact-saving{font-size:10px!important}
  #feed .compact-time{font-size:10px!important;line-height:1.2!important;color:#758397!important;white-space:nowrap!important}
  #feed .deal-row-actions{display:none!important}
  #feed .deal-row-topline button.card-favourite{flex:0 0 30px!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important}
  #feed .deal-row-topline button.card-favourite::before{font-size:29px!important}
}
@media(max-width:380px){
  #feed .deal-row{grid-template-columns:78px minmax(0,1fr)!important;gap:9px!important;padding:9px!important}
  #feed .deal-row-image{width:78px!important;height:78px!important}
  #feed .deal-row h3{font-size:13px!important}
  #feed .compact-time{font-size:9px!important}
}


/* Supermarket identity colours — consistent brand pills at every viewport size. */
#feed .store-pill{display:inline-flex;align-items:center;border:1px solid transparent!important;border-radius:7px;padding:3px 7px;font-weight:800!important;white-space:nowrap}
#feed .store-pill.brand-aldi{background:#0755a4!important;color:#fff!important;border-color:#0755a4!important}
#feed .store-pill.brand-tesco{background:#0756a5!important;color:#fff!important;border-color:#e32636!important}
#feed .store-pill.brand-sainsburys{background:#f36b16!important;color:#fff!important;border-color:#d85b0c!important}
#feed .store-pill.brand-asda{background:#78be20!important;color:#fff!important;border-color:#65a51b!important}
#feed .store-pill.brand-lidl{background:#ffdf00!important;color:#0050a4!important;border-color:#0050a4!important}
#feed .store-pill.brand-morrisons{background:#007a3d!important;color:#fff!important;border-color:#007a3d!important}
#feed .store-pill.brand-iceland{background:#fff!important;color:#d71920!important;border-color:#d71920!important}
#feed .store-pill.brand-coop{background:#0067a5!important;color:#fff!important;border-color:#0067a5!important}
#feed .store-pill.brand-waitrose{background:#174b36!important;color:#fff!important;border-color:#174b36!important}
#feed .store-pill.brand-marks-spencer{background:#07513f!important;color:#fff!important;border-color:#07513f!important}
#feed .store-pill.brand-ocado{background:#f6a800!important;color:#17243a!important;border-color:#e29500!important}
#feed .store-pill.brand-spar{background:#fff!important;color:#d71920!important;border-color:#d71920!important}
#feed .store-pill.brand-farmfoods{background:#0755a4!important;color:#fff!important;border-color:#0755a4!important}
#feed .store-pill.brand-heron{background:#0876bd!important;color:#fff!important;border-color:#0876bd!important}
#feed .store-pill.brand-default{background:#52657d!important;color:#fff!important;border-color:#52657d!important}

/* Share-a-deal banner: use a clear camera symbol and separate the helper hint. */
@media(max-width:760px){
  .share-callout{
    margin:10px 0 0!important;padding:10px 12px!important;
    border:1px solid #f0d36f!important;border-radius:15px!important;
    background:#fff2bd!important;
  }
  .share-callout-main{display:flex!important;align-items:center!important;gap:11px!important}
  .share-callout-icon{
    display:grid!important;place-items:center!important;
    width:50px!important;height:50px!important;flex:0 0 50px!important;
    border-radius:50%!important;background:#173b68!important;
    color:#fff!important;font-size:0!important;overflow:hidden!important;
  }
  .share-callout-icon::before,.share-callout-icon::after{content:none!important;display:none!important}
  .share-callout-icon svg{
    display:block!important;width:32px!important;height:32px!important;
    fill:none!important;stroke:#fff!important;stroke-width:3.2!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
  }
  .share-callout-main>span:nth-child(2){gap:2px!important}
  .share-callout-main strong{font-size:17px!important;line-height:1.2!important}
  .share-callout-main small{font-size:10px!important;line-height:1.3!important;color:#53647b!important}
  .share-callout-arrow{font-size:25px!important;line-height:1!important}
  .share-callout-hint{
    margin:5px 0 9px!important;padding:0 4px!important;
    text-align:center!important;font-size:10px!important;line-height:1.3!important;
    color:#64748b!important;
  }
}


/* Give the share prompt a little more presence without making it shout. */
@media(max-width:760px){
  .share-callout{
    border:1.5px solid #efca55!important;
    box-shadow:
      0 2px 0 rgba(218,169,39,.12),
      0 5px 16px rgba(23,59,104,.09),
      0 0 0 2px rgba(255,209,102,.16)!important;
    background:linear-gradient(115deg,#fff5c9 0%,#fff1b8 100%)!important;
  }
  .share-callout:focus-within{
    box-shadow:0 0 0 3px rgba(39,112,189,.16),0 5px 16px rgba(23,59,104,.09)!important;
  }
  .share-callout-icon{
    box-shadow:0 2px 7px rgba(13,43,79,.18)!important;
  }
}


/* Small environment marker: identifies the test deployment without changing branding. */
body>header.app-topbar .alpha-badge{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;align-self:center!important;
  padding:4px 7px!important;border-radius:999px!important;
  background:#fff0b8!important;color:#173b68!important;
  border:1px solid rgba(255,211,79,.9)!important;
  font-size:8px!important;font-weight:900!important;letter-spacing:1px!important;
  line-height:1!important;white-space:nowrap!important;
  box-shadow:0 1px 4px rgba(8,35,75,.12)!important;
}
@media(max-width:380px){
  body>header.app-topbar .alpha-badge{font-size:7px!important;padding:4px 5px!important;letter-spacing:.7px!important}
}


/* Bottom navigation: true five-column alignment and a deliberate raised share control. */
@media(max-width:760px){
  .bottom-nav{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:center!important;justify-items:stretch!important;
    gap:0!important;padding:5px 8px calc(5px + env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
  }
  .bottom-nav-item{
    display:grid!important;place-items:center!important;align-content:center!important;
    justify-self:stretch!important;align-self:center!important;
    width:100%!important;min-width:0!important;margin:0!important;
  }
  .bottom-nav-share{
    display:grid!important;place-items:center!important;
    justify-self:center!important;align-self:center!important;
    flex:none!important;width:54px!important;height:54px!important;
    min-width:54px!important;min-height:54px!important;
    margin:-13px 0 0!important;padding:0!important;
    border:2px solid rgba(255,255,255,.9)!important;
    border-radius:19px!important;
    background:linear-gradient(145deg,#ffdc78 0%,#ffc43e 100%)!important;
    color:#173b68!important;font-size:38px!important;font-weight:500!important;
    line-height:1!important;
    box-shadow:0 7px 18px rgba(193,135,24,.28),0 2px 0 rgba(255,255,255,.75) inset!important;
    position:relative!important;z-index:2!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .bottom-nav-share:active{
    transform:translateY(2px) scale(.97)!important;
    box-shadow:0 3px 9px rgba(193,135,24,.24),0 2px 0 rgba(255,255,255,.7) inset!important;
  }
}


/* Make the primary share action unmistakable: larger raised camera button, not another plus. */
@media(max-width:760px){
  .bottom-nav-share{
    width:64px!important;height:64px!important;
    min-width:64px!important;min-height:64px!important;
    margin:-17px 0 0!important;
    border-radius:22px!important;
    background:linear-gradient(145deg,#ffe18a 0%,#ffc43e 100%)!important;
    border:2px solid #fff!important;
    box-shadow:0 9px 21px rgba(193,135,24,.32),0 2px 0 rgba(255,255,255,.8) inset!important;
  }
  .bottom-nav-share svg{
    display:block!important;width:35px!important;height:35px!important;
    fill:none!important;stroke:#173b68!important;stroke-width:3.2!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
    filter:drop-shadow(0 1px 0 rgba(255,255,255,.35))!important;
  }
  .bottom-nav-share:active{transform:translateY(2px) scale(.96)!important}
}


/* Soft loading veil: hide image swaps and feed repaint during database refresh. */
.deal-loading-overlay{
  position:fixed;inset:0;z-index:99990;
  display:flex;align-items:center;justify-content:center;
  padding:24px;
  background:rgba(245,247,250,.62);
  -webkit-backdrop-filter:blur(11px) saturate(.8);
  backdrop-filter:blur(11px) saturate(.8);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .16s ease,visibility .16s ease;
}
.deal-loading-overlay.is-visible{
  opacity:1;visibility:visible;pointer-events:auto;
}
.deal-loading-panel{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  min-width:190px;padding:23px 27px;
}
/* Reusable SpotWorth mascot treatment for friendly in-app moments. */
.spotworth-mascot{display:block;object-fit:contain;flex:none}
.deal-loading-mascot{width:88px;height:88px;margin:0 0 2px;filter:drop-shadow(0 4px 5px rgba(5,65,48,.12));
  border:1px solid rgba(255,255,255,.9);border-radius:22px;
  background:rgba(255,255,255,.91);
  box-shadow:0 12px 36px rgba(20,48,82,.16);
  color:#173b68;text-align:center;
}
.deal-loading-panel strong{font-size:17px;font-weight:800;letter-spacing:-.2px}
.deal-loading-panel small{font-size:11px;color:#718096}
.deal-loading-spinner{
  width:34px;height:34px;border-radius:50%;
  border:3px solid #dce7f4;border-top-color:#2165ad;
  animation:goodfinds-loading-spin .75s linear infinite;
}
@keyframes goodfinds-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  .deal-loading-spinner{animation:none}
  .deal-loading-overlay{transition:none}
}


/* Data-source credits: discreet, readable and easy to find at the foot of the app. */
footer .attribution{
  display:flex!important;flex-direction:column!important;gap:4px!important;
  flex-basis:100%!important;margin-top:12px!important;padding-top:10px!important;
  border-top:1px solid #e3e9f0!important;
  color:#738196!important;font-size:10px!important;line-height:1.55!important;
  font-weight:400!important;
}
footer .attribution a{
  color:#365b86!important;text-decoration:underline!important;
  text-underline-offset:2px!important;
}
@media(max-width:760px){
  footer .attribution{font-size:9px!important;line-height:1.5!important;margin-top:10px!important}
}

/* Ensure source credits are actually visible on the mobile app, where an older
   compact-app rule previously hid the entire footer. */
@media(max-width:760px){
  body>footer{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    padding:18px 14px calc(82px + env(safe-area-inset-bottom))!important;
    margin:0!important;
  }
  body>footer .attribution{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    width:100%!important;
    margin-top:8px!important;
    padding-top:12px!important;
    border-top:1px solid #dbe3ed!important;
    color:#536176!important;
    font-size:11px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere!important;
  }
  body>footer .attribution a{
    color:#173b68!important;
    font-weight:700!important;
    text-decoration:underline!important;
  }
}

/* Keep source credits inside the scrollable mobile feed, not below the fixed nav. */
@media(max-width:760px){
  body>footer{display:none!important}
  main .mobile-attribution{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    margin:18px 0 12px!important;
    padding:12px 2px 18px!important;
    border-top:1px solid #dbe3ed!important;
    color:#536176!important;
    font-size:11px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere!important;
  }
  main .mobile-attribution>span{
    display:block!important;
    width:100%!important;
    margin:0 0 7px!important;
  }
  main .mobile-attribution a{
    color:#173b68!important;
    font-weight:700!important;
    text-decoration:underline!important;
  }
}
@media(min-width:761px){
  .mobile-attribution{display:none!important}
}

/* Dedicated account settings and bottom-navigation destinations. */
.profile-avatar-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.profile-avatar-choice{display:grid;place-items:center;width:100%;aspect-ratio:1;min-height:0;padding:4px;border:2px solid #dbe3ed;border-radius:15px;background:#fff;font-size:29px;line-height:1}
.profile-avatar-choice.is-selected{border-color:#e4b52e;background:#fff5cf;box-shadow:0 0 0 2px #f8e7ad}
.profile-avatar-choice:focus-visible{outline:3px solid #2d76c5;outline-offset:2px}
@media(max-width:760px){.profile-avatar-options{gap:7px}.profile-avatar-choice{font-size:26px;border-radius:13px}}

/* Achievement collection: bold collectible medal badges. */
.achievement-list{display:grid;grid-template-columns:1fr;gap:14px}
.achievement-card{position:relative;display:flex;align-items:center;gap:15px;min-width:0;padding:17px 15px;border:1px solid #dce5ef;border-radius:22px;background:linear-gradient(145deg,#fff 0%,#f0f5fc 100%);box-shadow:0 5px 14px rgba(15,39,68,.07);overflow:hidden}
.achievement-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#c8d2df}
.achievement-card.is-unlocked{border:1.5px solid #e6bd50;background:linear-gradient(135deg,#fff9e7 0%,#fff 58%,#fff4d4 100%);box-shadow:0 7px 18px rgba(157,115,22,.12)}
.achievement-card.is-unlocked:before{background:linear-gradient(180deg,#f4d77b,#c18a16)}
.achievement-card.is-locked{background:linear-gradient(145deg,#f9fbfe,#f1f5f9)}
.achievement-medal{position:relative;display:grid;place-items:center;flex:0 0 76px;width:76px;height:82px;isolation:isolate}
.achievement-medal:before{content:"";position:absolute;z-index:-1;inset:4px 3px 10px;border-radius:50%;background:linear-gradient(145deg,#e2e9f1,#c4d0df);box-shadow:inset 0 0 0 4px rgba(255,255,255,.8),inset 0 0 0 7px #aab9ca,0 4px 8px rgba(30,55,80,.13)}
.achievement-medal:after{content:"";position:absolute;z-index:-2;bottom:0;left:23px;width:30px;height:28px;background:linear-gradient(90deg,#9eafc2,#d4deea);clip-path:polygon(0 0,100% 0,83% 100%,50% 78%,17% 100%)}
.achievement-medal span{display:grid;place-items:center;width:49px;height:49px;border-radius:50%;background:linear-gradient(145deg,#fff,#e8eef5);font-size:29px;line-height:1;filter:drop-shadow(0 2px 1px rgba(0,0,0,.12))}
.achievement-card.is-unlocked .achievement-medal:before{background:linear-gradient(145deg,#ffe99b,#d59d21);box-shadow:inset 0 0 0 4px #fff8df,inset 0 0 0 7px #d5a32e,0 5px 10px rgba(142,99,13,.2)}
.achievement-card.is-unlocked .achievement-medal:after{background:linear-gradient(90deg,#bd7e10,#f3cf68)}
.achievement-card.is-unlocked .achievement-medal span{background:linear-gradient(145deg,#fffdf5,#ffe8a2)}
.achievement-card.is-locked .achievement-medal{filter:saturate(.45);opacity:.76}
.achievement-card-main{flex:1;min-width:0}
.achievement-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.achievement-card-title strong{font-size:16px;line-height:1.2;color:#173653;font-weight:850;letter-spacing:-.2px}
.achievement-card-title span{flex:0 0 auto;padding:5px 8px;border-radius:99px;background:#e8eef5;color:#65758a;font-size:9px;font-weight:900;letter-spacing:.7px}
.achievement-card.is-unlocked .achievement-card-title span{background:#ffedb9;color:#8b610b}
.achievement-card-main p{margin:7px 0 10px;color:#667b94;font-size:13px;line-height:1.35}
.achievement-progress{height:7px;overflow:hidden;border-radius:99px;background:#e4eaf1}
.achievement-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9aadc2,#c0cedd);transition:width .25s ease}
.achievement-card.is-unlocked .achievement-progress{background:#f0dfb4}
.achievement-card.is-unlocked .achievement-progress span{background:linear-gradient(90deg,#d49b1f,#f0c54d)}
.achievement-card-main>small{display:block;margin-top:7px;color:#8795a7;font-size:10px;font-weight:750;letter-spacing:.6px}
.achievement-card.is-unlocked .achievement-card-main>small{color:#9a741f}
.achievement-locked-mark{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border:1px solid #dbe3ec;border-radius:50%;background:#edf2f7;color:#a6b3c2;font-size:13px}
.achievement-share{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;min-height:38px;padding:0;border:1px solid #e4c66e;border-radius:50%;background:linear-gradient(145deg,#fff9e6,#ffe7a2);color:#79590e;font-size:21px;font-weight:900;box-shadow:0 3px 8px rgba(133,99,24,.12)}
@media(max-width:520px){
 .achievements-section{padding:13px}
 .achievement-list{gap:12px}
 .achievement-card{gap:10px;padding:14px 11px;border-radius:19px}
 .achievement-medal{flex-basis:64px;width:64px;height:72px}
 .achievement-medal span{width:43px;height:43px;font-size:25px}
 .achievement-medal:after{left:19px;width:26px}
 .achievement-card-title{flex-wrap:wrap}
 .achievement-card-title strong{font-size:14px}
 .achievement-card-title span{font-size:8px;padding:4px 7px}
 .achievement-card-main p{font-size:12px}
 .achievement-share{flex-basis:33px;width:33px;height:33px;min-height:33px;font-size:18px}
}

/* Community availability signal — GoodFinds hot/cold accuracy meter. */
#feed .feed-accuracy{display:flex;align-items:center;gap:5px;min-width:0;margin-top:7px;color:#64748b;font-size:10px;line-height:1.2}
#feed .feed-accuracy-icon{font-size:12px;line-height:1}
#feed .feed-accuracy strong{font-size:9px;font-weight:900;letter-spacing:.65px}
#feed .feed-accuracy small{margin-left:auto;color:#8794a5;font-size:9px;white-space:nowrap}
#feed .feed-accuracy.good{color:#167343}#feed .feed-accuracy.bad{color:#356b9b}#feed .feed-accuracy.warn{color:#9a6a13}#feed .feed-accuracy.early{color:#63758d}
.availability-meter{margin:16px 0 18px;padding:17px;border:1px solid #d9e3ef;border-radius:17px;background:#f5f8fc}
.availability-meter-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.availability-meter-head>div{display:grid;gap:4px;min-width:0}
.availability-meter-head small{color:#647b98;font-size:10px;font-weight:900;letter-spacing:1.1px}
.availability-meter-head strong{color:#173b68;font-size:23px;font-weight:900;line-height:1.15}
.availability-meter-status{flex:0 0 auto;padding:7px 10px;border-radius:99px;background:#e7edf4;color:#62748a;font-size:10px;font-weight:900;letter-spacing:.7px}
.availability-meter-track{height:11px;margin:13px 0 10px;overflow:hidden;border-radius:99px;background:#dce5ef}
.availability-meter-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d7a42b,#29945b);transition:width .25s ease}
.availability-meter.good{border-color:#b8e3c9;background:linear-gradient(135deg,#f0fbf4,#f8fcf9)}
.availability-meter.good .availability-meter-status{background:#d9f3e2;color:#176b3c}
.availability-meter.good .availability-meter-track span{background:linear-gradient(90deg,#8ccf9f,#16824a)}
.availability-meter.bad{border-color:#c9dced;background:linear-gradient(135deg,#f0f6fc,#f9fbfe)}
.availability-meter.bad .availability-meter-status{background:#dceafa;color:#285d91}
.availability-meter.bad .availability-meter-track span{background:linear-gradient(90deg,#8db9e3,#356fad)}
.availability-meter.warn .availability-meter-status{background:#fff0cf;color:#8a6112}
.availability-meter.early .availability-meter-status,.availability-meter.muted .availability-meter-status{background:#e9eef4;color:#63758b}
.availability-meter p{margin:0;color:#61748e;font-size:13px;line-height:1.45}
.availability-meter-counts{display:block;margin-top:9px;color:#78899e;font-size:11px;font-weight:700}
@media(max-width:560px){#feed .feed-accuracy{margin-top:6px}.availability-meter{padding:14px;margin:13px 0 15px}.availability-meter-head strong{font-size:20px}.availability-meter-status{font-size:9px;padding:6px 8px}}

/* Community availability: deliberate spacing and a compact mobile-first badge. */
#feed .feed-accuracy{
 display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
 flex-wrap:nowrap!important;gap:6px!important;width:max-content!important;max-width:100%!important;
 min-height:23px!important;margin:7px 0 0!important;padding:4px 9px!important;
 border:1px solid #dce5ef!important;border-radius:99px!important;background:#f3f6fa!important;
 box-sizing:border-box!important;white-space:nowrap!important;line-height:1!important;
}
#feed .feed-accuracy .feed-accuracy-icon{display:inline-block!important;flex:0 0 auto!important;font-size:11px!important;line-height:1!important}
#feed .feed-accuracy strong{display:inline-block!important;flex:0 0 auto!important;margin:0!important;font-size:9px!important;line-height:1!important;letter-spacing:.55px!important}
#feed .feed-accuracy small{display:inline-block!important;flex:0 0 auto!important;margin:0 0 0 2px!important;padding-left:6px!important;border-left:1px solid currentColor!important;font-size:9px!important;line-height:1!important;white-space:nowrap!important}
#feed .feed-accuracy.good{border-color:#b8e3c9!important;background:#effaf3!important;color:#176b3c!important}
#feed .feed-accuracy.bad{border-color:#c7dced!important;background:#f0f6fc!important;color:#285d91!important}
#feed .feed-accuracy.warn{border-color:#f0d9a5!important;background:#fff8e8!important;color:#8a6112!important}
#feed .feed-accuracy.early,#feed .feed-accuracy.muted{border-color:#dce4ed!important;background:#f3f6fa!important;color:#65758b!important}
.deal-detail-reported{margin:12px 0 0;color:#8795a7;font-size:12px;font-weight:650}
.availability-meter{margin:12px 0 16px!important;padding:15px!important;border-radius:17px!important}
.availability-meter-head{align-items:center!important}
.availability-meter-head>div{gap:5px!important}
.availability-meter-head small{font-size:9px!important;letter-spacing:.9px!important;line-height:1.3!important}
.availability-meter-head strong{font-size:28px!important;font-weight:900!important}
.availability-meter-status{font-size:10px!important}
.availability-meter-track{height:9px!important;margin:11px 0!important}
.availability-meter p{font-size:12px!important;line-height:1.4!important}
.availability-meter-counts{display:flex!important;flex-wrap:wrap!important;gap:7px 13px!important;margin-top:11px!important;padding-top:10px!important;border-top:1px solid #dfe7ef!important;font-size:10px!important}
.availability-meter-counts span{white-space:nowrap}
.deal-purchase-panel.compact-purchase-panel{margin:12px 0!important;padding:13px!important;border-radius:15px!important}
.compact-purchase-panel .bought-it-button{min-height:46px!important;margin-bottom:8px!important;font-size:14px!important}
.compact-purchase-panel>strong{display:block;font-size:13px!important;line-height:1.3!important}
.compact-purchase-panel>p{margin:5px 0 0!important;font-size:11px!important;line-height:1.4!important}
.deal-detail-vote{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:12px 0 14px!important}
.deal-detail-vote button{min-width:0!important;min-height:50px!important;padding:10px 8px!important;border-radius:12px!important;font-size:14px!important;font-weight:850!important;white-space:normal!important}
.deal-detail-vote [data-detail-confirm]{background:#1b7547!important;border-color:#1b7547!important;color:#fff!important}
.deal-detail-vote [data-detail-unavailable]{background:#fff!important;border:1.5px solid #b9c9dc!important;color:#294d76!important}
.deal-issue-report{margin:10px 0!important;padding:10px!important}
.deal-issue-toggle{min-height:40px!important;font-size:13px!important}
.deal-detail-share-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin:12px 0!important}
.deal-detail-share-actions button{min-height:46px!important;padding:9px 8px!important;font-size:12px!important;font-weight:800!important}
.deal-detail-hint{margin:10px 0 0!important;font-size:11px!important;line-height:1.4!important}
@media(max-width:560px){
 #feed .feed-accuracy{margin-top:6px!important}
 .availability-meter-head strong{font-size:25px!important}
 .deal-detail-vote button{font-size:13px!important}
 .deal-detail-share-actions{grid-template-columns:1fr!important}
}

/* Feed accuracy colour key and consistent timestamp alignment. */
@media(max-width:760px){
 #feed .deal-row-bottomline{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:4px!important;
  width:100%!important;
 }
 #feed .deal-row-price{
  min-width:0!important;
  width:100%!important;
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:5px!important;
 }
 #feed .compact-time{
  justify-self:end!important;
  align-self:center!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  text-align:right!important;
  font-size:11px!important;
  line-height:1.2!important;
  color:#718096!important;
 }
 #feed .feed-accuracy.good{
  border-color:#a8dfbd!important;
  background:#e8f7ed!important;
  color:#176b3c!important;
 }
 #feed .feed-accuracy.bad{
  border-color:#efb9b9!important;
  background:#fff0f0!important;
  color:#a52f36!important;
 }
 #feed .feed-accuracy.warn{
  border-color:#f0d18a!important;
  background:#fff7e3!important;
  color:#8a6112!important;
 }
 #feed .feed-accuracy.early,#feed .feed-accuracy.muted{
  border-color:#dce4ed!important;
  background:#f1f4f8!important;
  color:#65758b!important;
 }
}

/* Conventional temperature colours: hot = red, cold = blue. */
#feed .feed-accuracy.good{
 border-color:#efb0b0!important;
 background:#fff0f0!important;
 color:#a52f36!important;
}
#feed .feed-accuracy.bad{
 border-color:#b8d3ef!important;
 background:#edf5ff!important;
 color:#245b96!important;
}
.availability-meter.good{
 border-color:#efbaba!important;
 background:linear-gradient(135deg,#fff0f0,#fcf0f0)!important;
}
.availability-meter.good .availability-meter-status{
 background:#fbdada!important;
 color:#a52f36!important;
}
.availability-meter.good .availability-meter-track span{
 background:linear-gradient(90deg,#f3a1a1,#c62828)!important;
}
.availability-meter.bad{
 border-color:#bfd5ef!important;
 background:linear-gradient(135deg,#edf5ff,#f9fbff)!important;
}
.availability-meter.bad .availability-meter-status{
 background:#dcecff!important;
 color:#245b96!important;
}
.availability-meter.bad .availability-meter-track span{
 background:linear-gradient(90deg,#8bb8eb,#2864a8)!important;
}

/* Deal cards: timestamp at top-left, soft lift and temperature-tinted edge glow. */
@media(max-width:760px){
 #feed .deal-row{
  position:relative!important;
  border:1px solid #dce4ee!important;
  box-shadow:0 5px 16px rgba(27,55,89,.075),0 1px 3px rgba(27,55,89,.045)!important;
  transition:box-shadow .18s ease,border-color .18s ease!important;
 }
 #feed .deal-row-topline{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
 }
 #feed .deal-row-topline .compact-time{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  order:0!important;
  margin:0 2px 0 0!important;
  padding:4px 7px!important;
  border-radius:99px!important;
  background:#eef2f7!important;
  color:#64748b!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:750!important;
  white-space:nowrap!important;
 }
 #feed .deal-row-topline .store-pill{order:1!important}
 #feed .deal-row-topline .deal-distance{order:2!important}
 #feed .deal-row-topline .card-favourite{order:3!important}
 #feed .deal-row-bottomline{display:flex!important;align-items:center!important;min-width:0!important}
 #feed .deal-row.deal-signal-good{
  border-color:#efc0c0!important;
  box-shadow:0 5px 17px rgba(173,48,48,.10),0 0 0 1px rgba(201,55,55,.035)!important;
 }
 #feed .deal-row.deal-signal-bad{
  border-color:#bfd4ec!important;
  box-shadow:0 5px 17px rgba(43,99,157,.11),0 0 0 1px rgba(43,99,157,.035)!important;
 }
 #feed .deal-row.deal-signal-warn{
  border-color:#efd9a7!important;
  box-shadow:0 5px 17px rgba(174,126,31,.10),0 0 0 1px rgba(174,126,31,.035)!important;
 }
 #feed .deal-row.deal-signal-early{
  border-color:#d8e0ea!important;
  box-shadow:0 5px 16px rgba(27,55,89,.075)!important;
 }
 #feed .deal-row.deal-signal-muted{
  border-color:#dce4ed!important;
  box-shadow:0 5px 16px rgba(27,55,89,.065)!important;
 }
}

/* Make early evidence visibly distinct from no evidence, and lift cards from the page. */
#feed .feed-accuracy.early{
 border-color:#f0cf83!important;
 background:#fff5dc!important;
 color:#94620b!important;
}
#feed .deal-row.deal-signal-early .feed-accuracy{
 border-color:#f0cf83!important;
 background:#fff5dc!important;
 color:#94620b!important;
}
@media(max-width:760px){
 #feed .deal-row{
  background:#fff!important;
  border-width:1.5px!important;
  box-shadow:0 8px 22px rgba(29,53,82,.12),0 2px 5px rgba(29,53,82,.06)!important;
 }
 #feed .deal-row.deal-signal-good{
  background:linear-gradient(110deg,#fff 72%,#fff7f7 100%)!important;
  border-color:#e9aaaa!important;
  box-shadow:0 8px 23px rgba(178,43,43,.16),0 2px 5px rgba(178,43,43,.07)!important;
 }
 #feed .deal-row.deal-signal-bad{
  background:linear-gradient(110deg,#fff 72%,#f4f8ff 100%)!important;
  border-color:#a9c7e9!important;
  box-shadow:0 8px 23px rgba(40,97,158,.16),0 2px 5px rgba(40,97,158,.07)!important;
 }
 #feed .deal-row.deal-signal-warn{
  background:linear-gradient(110deg,#fff 72%,#fffaf0 100%)!important;
  border-color:#e9cf97!important;
  box-shadow:0 8px 22px rgba(166,119,27,.14),0 2px 5px rgba(166,119,27,.06)!important;
 }
 #feed .deal-row.deal-signal-early{
  background:linear-gradient(110deg,#fff 72%,#fffaf0 100%)!important;
  border-color:#edcf91!important;
  box-shadow:0 8px 22px rgba(171,123,32,.13),0 2px 5px rgba(171,123,32,.06)!important;
 }
 #feed .deal-row.deal-signal-muted{
  background:#fff!important;
  border-color:#dce4ed!important;
  box-shadow:0 7px 19px rgba(29,53,82,.09),0 2px 4px rgba(29,53,82,.045)!important;
 }
}

/* High-visibility availability treatment: selectors intentionally do not depend on feed wrapper ID. */
.deal-row.deal-signal-good,
#feed .deal-row.deal-signal-good{
 border:2px solid #e58b8b!important;
 background:linear-gradient(115deg,#ffffff 0%,#ffffff 72%,#fff0f0 100%)!important;
 box-shadow:0 10px 26px rgba(180,35,45,.19),0 3px 8px rgba(180,35,45,.10)!important;
}
.deal-row.deal-signal-bad,
#feed .deal-row.deal-signal-bad{
 border:2px solid #83addb!important;
 background:linear-gradient(115deg,#ffffff 0%,#ffffff 72%,#edf5ff 100%)!important;
 box-shadow:0 10px 26px rgba(35,91,155,.19),0 3px 8px rgba(35,91,155,.10)!important;
}
.deal-row.deal-signal-warn,
#feed .deal-row.deal-signal-warn{
 border:2px solid #e5c06c!important;
 background:linear-gradient(115deg,#ffffff 0%,#ffffff 72%,#fff8e8 100%)!important;
 box-shadow:0 10px 24px rgba(166,119,27,.17),0 3px 8px rgba(166,119,27,.09)!important;
}
.deal-row.deal-signal-early,
#feed .deal-row.deal-signal-early{
 border:2px solid #e4bd62!important;
 background:linear-gradient(115deg,#ffffff 0%,#ffffff 72%,#fff6df 100%)!important;
 box-shadow:0 10px 24px rgba(166,119,27,.16),0 3px 8px rgba(166,119,27,.09)!important;
}
.deal-row.deal-signal-muted,
#feed .deal-row.deal-signal-muted{
 border:1.5px solid #cbd5e1!important;
 background:#fff!important;
 box-shadow:0 8px 21px rgba(31,53,79,.12),0 2px 6px rgba(31,53,79,.07)!important;
}
.feed-accuracy.early,#feed .feed-accuracy.early{
 border:1px solid #e6c16b!important;
 background:#fff2d1!important;
 color:#8c5d08!important;
}
.feed-accuracy.muted,#feed .feed-accuracy.muted{
 border:1px solid #d5dee9!important;
 background:#edf1f6!important;
 color:#596b82!important;
}

/* Deal detail: compact, cohesive community panel and shorter action stack. */
.availability-meter{margin:10px 0 12px!important;padding:13px 14px!important;border-radius:15px!important}
.availability-meter-head{align-items:center!important;gap:8px!important}
.availability-meter-head>div{gap:2px!important}
.availability-meter-head small{font-size:8px!important;letter-spacing:.85px!important}
.availability-meter-head strong{font-size:21px!important;line-height:1.05!important}
.availability-meter-status{padding:6px 9px!important;font-size:9px!important}
.availability-meter-track{height:7px!important;margin:9px 0 7px!important}
.availability-meter p{font-size:11px!important;line-height:1.3!important}
.availability-meter-counts{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:5px 12px!important;margin-top:8px!important;padding-top:8px!important;font-size:10px!important}
.availability-meter-counts span{white-space:nowrap}
.deal-purchase-panel.compact-purchase-panel{margin:9px 0!important;padding:10px 11px!important;border-radius:13px!important}
.compact-purchase-panel .bought-it-button{min-height:42px!important;margin-bottom:7px!important;padding:8px 12px!important;font-size:13px!important}
.compact-purchase-panel>strong{font-size:12px!important;line-height:1.25!important}
.compact-purchase-panel>p{margin:3px 0 0!important;font-size:10px!important;line-height:1.3!important}
.deal-detail-vote{gap:8px!important;margin:9px 0 10px!important}
.deal-detail-vote button{min-height:43px!important;padding:8px 10px!important;font-size:13px!important}
.deal-issue-report{margin:8px 0!important;padding:8px!important;border-radius:13px!important}
.deal-issue-toggle{min-height:37px!important;padding:7px 10px!important;font-size:12px!important}
.deal-detail-share-actions{grid-template-columns:1fr 1fr!important;gap:8px!important;margin:9px 0!important}
.deal-detail-share-actions button{min-height:41px!important;padding:7px 8px!important;font-size:11px!important}
.deal-detail-hint{margin:7px 0 0!important;font-size:10px!important;line-height:1.3!important}
@media(max-width:560px){
 .availability-meter{padding:12px!important;margin:9px 0 10px!important}
 .availability-meter-head strong{font-size:20px!important}
 .availability-meter-counts{gap:5px 9px!important}
 .deal-detail-share-actions{grid-template-columns:1fr 1fr!important}
 .deal-detail-share-actions button{font-size:10px!important}
}

/* High-specificity feed card treatment: ensure signal colours survive generic card rules. */
@media(max-width:760px){
 body #feed.grid > article.card.deal-row.deal-signal-good{
  border:2px solid #e58c8c!important;
  background:linear-gradient(115deg,#ffffff 0%,#fcf0f0 72%,#fff0f0 100%)!important;
  box-shadow:0 9px 24px rgba(174,42,42,.19),0 0 0 3px rgba(214,67,67,.075),inset 0 0 0 1px rgba(255,255,255,.9)!important;
 }
 body #feed.grid > article.card.deal-row.deal-signal-bad{
  border:2px solid #86b1df!important;
  background:linear-gradient(115deg,#ffffff 0%,#fafcff 72%,#eaf3ff 100%)!important;
  box-shadow:0 9px 24px rgba(39,98,163,.19),0 0 0 3px rgba(54,121,191,.075),inset 0 0 0 1px rgba(255,255,255,.9)!important;
 }
 body #feed.grid > article.card.deal-row.deal-signal-warn,
 body #feed.grid > article.card.deal-row.deal-signal-early{
  border:2px solid #e7c16c!important;
  background:linear-gradient(115deg,#ffffff 0%,#fffdf8 72%,#fff5df 100%)!important;
  box-shadow:0 8px 22px rgba(164,119,30,.16),0 0 0 3px rgba(214,166,65,.07)!important;
 }
 body #feed.grid > article.card.deal-row.deal-signal-muted{
  border:1.5px solid #d5dee9!important;
  background:#fff!important;
  box-shadow:0 7px 19px rgba(29,53,82,.11),0 0 0 2px rgba(95,120,150,.035)!important;
 }
 body #feed.grid > article.card.deal-row .feed-accuracy.early{
  border:1.5px solid #e7c16c!important;
  background:#fff2d2!important;
  color:#875b08!important;
  box-shadow:0 2px 7px rgba(164,119,30,.12)!important;
 }
 body #feed.grid > article.card.deal-row .feed-accuracy.muted{
  border:1px solid #d8e0e9!important;
  background:#f0f3f7!important;
  color:#65758b!important;
 }
 body #feed.grid > article.card.deal-row .feed-accuracy.good{
  border:1.5px solid #e58c8c!important;
  background:#ffeded!important;
  color:#a52f36!important;
 }
 body #feed.grid > article.card.deal-row .feed-accuracy.bad{
  border:1.5px solid #86b1df!important;
  background:#eaf3ff!important;
  color:#245b96!important;
 }
 body #feed.grid > article.card.deal-row .feed-accuracy.warn{
  border:1.5px solid #e7c16c!important;
  background:#fff4dc!important;
  color:#875b08!important;
 }
}


/* Deal detail refresh: clear hierarchy, availability first, secondary actions tucked away. */
#dealDetailContent .deal-detail-product{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:13px;margin-bottom:9px}
#dealDetailContent .deal-detail-image,#dealDetailContent .deal-detail-emoji{width:76px;height:76px;object-fit:contain;border-radius:13px;background:#f5f7fa}
#dealDetailContent .deal-detail-product h2{margin:4px 0 0;font-size:19px;line-height:1.2}
#dealDetailContent .deal-detail-type{font-size:9px;font-weight:850;letter-spacing:.8px;color:#738197}
#dealDetailContent .deal-detail-price{display:flex;align-items:baseline;gap:9px;margin:4px 0 12px;font-size:25px;font-weight:900}
#dealDetailContent .deal-detail-price .old{font-size:14px;color:#8b98a8;text-decoration:line-through}
#dealDetailContent .deal-detail-price .saving{font-size:12px;color:#16804b;font-weight:800}
#dealDetailContent .deal-detail-branch{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border:1px solid #e1e8f0;border-radius:13px;background:#f8fafc;text-decoration:none;color:inherit}
#dealDetailContent .deal-detail-branch strong{font-size:13px}
#dealDetailContent .deal-detail-branch span{font-size:11px;color:#64748b;text-align:right}
#dealDetailContent .deal-detail-notes{margin:9px 2px 0;color:#64748b;font-size:12px;line-height:1.4}
#dealDetailContent .deal-detail-reported{margin:8px 2px 0;color:#8795a7;font-size:10px}
#dealDetailContent .availability-meter{margin:13px 0 10px!important}
#dealDetailContent .deal-detail-vote{margin:10px 0 13px!important}
#dealDetailContent .deal-detail-more{border-top:1px solid #e7edf3;padding-top:10px}
#dealDetailContent .deal-detail-more summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:40px;color:#52647a;font-size:12px;font-weight:800}
#dealDetailContent .deal-detail-more summary::-webkit-details-marker{display:none}
#dealDetailContent .deal-detail-more summary:after{content:"+";font-size:19px;color:#8291a4}
#dealDetailContent .deal-detail-more[open] summary:after{content:"−"}
#dealDetailContent .deal-detail-more-content{padding-top:7px}
#dealDetailContent .deal-detail-more-content .deal-purchase-panel{margin:8px 0!important}
#dealDetailContent .deal-detail-more-content .deal-issue-report{margin:8px 0!important}
@media(max-width:560px){#dealDetailContent .deal-detail-product{grid-template-columns:66px minmax(0,1fr) auto;gap:10px}#dealDetailContent .deal-detail-image,#dealDetailContent .deal-detail-emoji{width:66px;height:66px}#dealDetailContent .deal-detail-product h2{font-size:17px}}


/* Deal detail spacing pass: use the mobile modal's width and height more efficiently. */
#dealDetailContent .deal-detail-product{
  grid-template-columns:62px minmax(0,1fr) 38px!important;
  gap:10px!important;
  align-items:center!important;
  margin:0 0 7px!important;
}
#dealDetailContent .deal-detail-image,
#dealDetailContent .deal-detail-emoji{
  width:62px!important;height:62px!important;flex-basis:62px!important;
  border-radius:11px!important;
}
#dealDetailContent .deal-detail-type{font-size:8px!important;letter-spacing:.65px!important}
#dealDetailContent .deal-detail-product h2{font-size:17px!important;line-height:1.15!important}
#dealDetailContent .deal-detail-price{
  margin:3px 0 9px!important;
  min-height:0!important;
  font-size:19px!important;
}
#dealDetailContent .deal-detail-price .aldi-30-tag{
  display:inline-flex!important;align-items:center!important;
  min-height:0!important;padding:7px 13px!important;
  border-radius:10px!important;font-size:17px!important;line-height:1!important;
}
#dealDetailContent .deal-detail-branch{
  flex-direction:row!important;align-items:center!important;
  justify-content:space-between!important;text-align:left!important;
  gap:12px!important;padding:10px 12px!important;
  min-height:0!important;border-radius:11px!important;
}
#dealDetailContent .deal-detail-branch strong{
  flex:0 0 auto!important;font-size:13px!important;text-align:left!important;
}
#dealDetailContent .deal-detail-branch span{
  flex:1 1 auto!important;min-width:0!important;
  font-size:10px!important;line-height:1.25!important;text-align:right!important;
}
#dealDetailContent .deal-detail-reported{margin:6px 2px 0!important;font-size:10px!important}
#dealDetailContent .availability-meter{
  margin:9px 0 8px!important;padding:11px 12px!important;border-radius:13px!important;
}
#dealDetailContent .availability-meter-head strong{font-size:19px!important}
#dealDetailContent .availability-meter-track{margin:7px 0 6px!important;height:6px!important}
#dealDetailContent .availability-meter p{font-size:10px!important;line-height:1.25!important}
#dealDetailContent .availability-meter-counts{margin-top:6px!important;padding-top:6px!important;font-size:9px!important}
#dealDetailContent .deal-detail-vote{gap:8px!important;margin:8px 0 9px!important}
#dealDetailContent .deal-detail-vote button{min-height:45px!important;padding:8px!important;font-size:13px!important}
#dealDetailContent .deal-detail-more{padding-top:6px!important}
#dealDetailContent .deal-detail-more summary{min-height:34px!important}
@media(max-width:560px){
  #dealDetailContent .deal-detail-product{grid-template-columns:56px minmax(0,1fr) 36px!important;gap:9px!important}
  #dealDetailContent .deal-detail-image,#dealDetailContent .deal-detail-emoji{width:56px!important;height:56px!important;flex-basis:56px!important}
  #dealDetailContent .deal-detail-product h2{font-size:16px!important}
  #dealDetailContent .deal-detail-branch{gap:8px!important;padding:9px 10px!important}
  #dealDetailContent .deal-detail-branch span{font-size:9px!important}
}


/* Deal detail hero rebuilt around the compact feed-card composition. */
#dealDetailContent .deal-detail-hero{
 display:grid;grid-template-columns:112px minmax(0,1fr);gap:15px;align-items:center;
 padding:13px;border:1.5px solid #e4c36f;border-radius:17px;
 background:linear-gradient(120deg,#fff 0%,#fffdf6 100%);
 box-shadow:0 5px 16px rgba(155,119,39,.10);
}
#dealDetailContent .deal-detail-hero-image{width:112px;height:112px;overflow:hidden;border-radius:13px;background:#f1f4f8}
#dealDetailContent .deal-detail-hero-image .deal-detail-image,
#dealDetailContent .deal-detail-hero-image .deal-detail-emoji{display:block;width:100%;height:100%;object-fit:contain}
#dealDetailContent .deal-detail-hero-info{min-width:0}
#dealDetailContent .deal-detail-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}
#dealDetailContent .deal-detail-time{padding:5px 8px;border-radius:99px;background:#eef2f7;color:#66758b;font-size:10px;font-weight:800;white-space:nowrap}
#dealDetailContent .deal-detail-distance{font-size:10px;color:#718096;white-space:nowrap}
#dealDetailContent .deal-detail-hero-meta .deal-detail-favourite-star{position:static!important;grid-column:auto!important;margin-left:auto;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important}
#dealDetailContent .deal-detail-hero h2{margin:9px 0 7px;font-size:19px;line-height:1.15;overflow-wrap:anywhere}
#dealDetailContent .deal-detail-price{display:flex;align-items:center;gap:8px;margin:0 0 8px!important;font-size:20px!important}
#dealDetailContent .deal-detail-price .aldi-30-tag{padding:6px 11px!important;border-radius:9px!important;font-size:17px!important;line-height:1.1!important}
#dealDetailContent .deal-detail-price .old{font-size:11px;color:#8995a5;text-decoration:line-through}
#dealDetailContent .deal-detail-price .saving{font-size:10px;color:#16804b;font-weight:850}
#dealDetailContent .deal-detail-signal{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:7px 9px;border:1px solid #e6c16b;border-radius:99px;background:#fff5dc;color:#875b08;font-size:10px;letter-spacing:.5px;white-space:nowrap}
#dealDetailContent .deal-detail-signal .signal-dot{width:8px;height:8px;border:1px solid currentColor;border-radius:50%}
#dealDetailContent .deal-detail-signal .signal-divider{height:14px;border-left:1px solid currentColor;opacity:.45}
#dealDetailContent .deal-detail-signal.good{border-color:#e58c8c;background:#fff0f0;color:#a52f36}
#dealDetailContent .deal-detail-signal.bad{border-color:#86b1df;background:#edf5ff;color:#245b96}
#dealDetailContent .deal-detail-signal.warn{border-color:#e7c16c;background:#fff5df;color:#875b08}
#dealDetailContent .deal-detail-signal.muted{border-color:#d5dee9;background:#f0f3f7;color:#65758b}
#dealDetailContent .deal-detail-branch{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-top:9px;padding:8px 11px!important;border-radius:10px!important}
#dealDetailContent .deal-detail-branch strong{font-size:11px!important;font-weight:750}
#dealDetailContent .deal-detail-branch span{font-size:10px!important;white-space:nowrap}
#dealDetailContent .availability-meter{margin:10px 0 8px!important;padding:11px 12px!important}
#dealDetailContent .availability-meter-head strong{font-size:19px!important}
#dealDetailContent .availability-meter-track{height:6px!important;margin:7px 0!important}
#dealDetailContent .availability-meter p{font-size:10px!important;line-height:1.3!important}
#dealDetailContent .availability-meter-counts{display:flex!important;gap:12px!important;margin-top:6px!important;padding-top:6px!important;font-size:9px!important}
#dealDetailContent .deal-detail-vote{margin:8px 0 9px!important;gap:8px!important}
#dealDetailContent .deal-detail-vote button{min-height:44px!important;font-size:13px!important}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero{grid-template-columns:88px minmax(0,1fr);gap:10px;padding:10px;border-radius:14px}
 #dealDetailContent .deal-detail-hero-image{width:88px;height:100px}
 #dealDetailContent .deal-detail-hero h2{font-size:16px;margin:7px 0 6px}
 #dealDetailContent .deal-detail-time{font-size:9px;padding:4px 6px}
 #dealDetailContent .deal-detail-distance{font-size:9px}
 #dealDetailContent .deal-detail-hero-meta .deal-detail-favourite-star{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important}
 #dealDetailContent .deal-detail-price{font-size:17px!important}
 #dealDetailContent .deal-detail-price .aldi-30-tag{font-size:15px!important}
 #dealDetailContent .deal-detail-signal{padding:6px 7px;font-size:9px;gap:5px}
}


/* Final alignment correction: make the detail hero mirror the feed card. */
#dealDetailDialog .deal-detail-panel{position:relative;padding:22px!important}
#dealDetailDialog .deal-detail-head{position:relative;z-index:4;min-height:28px;margin-bottom:12px;padding-right:48px}
#dealDetailDialog #dealDetailClose.x{
 position:absolute!important;top:16px!important;right:16px!important;
 width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
 padding:0!important;border:0!important;border-radius:50%!important;
 background:#f3f6fa!important;color:#24466f!important;
 box-shadow:none!important;font-size:25px!important;line-height:1!important;
 display:grid!important;place-items:center!important;
}
#dealDetailContent .deal-detail-hero{
 position:relative!important;display:grid!important;
 grid-template-columns:112px minmax(0,1fr)!important;
 align-items:center!important;gap:14px!important;
 min-height:132px!important;padding:12px!important;
}
#dealDetailContent .deal-detail-hero-image{
 width:112px!important;height:112px!important;min-width:112px!important;
 border-radius:13px!important;overflow:hidden!important;background:#f1f4f8!important;
}
#dealDetailContent .deal-detail-hero-image .deal-detail-image,
#dealDetailContent .deal-detail-hero-image img.deal-detail-image{
 display:block!important;width:100%!important;height:100%!important;
 max-width:none!important;min-width:0!important;flex:none!important;
 object-fit:contain!important;border-radius:13px!important;
}
#dealDetailContent .deal-detail-hero-info{position:relative!important;min-width:0!important;padding-right:39px!important}
#dealDetailContent .deal-detail-hero-meta{
 display:flex!important;align-items:center!important;flex-wrap:wrap!important;
 gap:7px!important;min-height:31px!important;margin:0 0 7px!important;
}
#dealDetailContent .deal-detail-time{display:inline-flex!important;align-items:center!important;white-space:nowrap!important}
#dealDetailContent .deal-detail-retailer{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-height:30px!important;padding:4px 10px!important;border-radius:8px!important;
 background:#0755a4!important;color:#fff!important;font-size:12px!important;font-weight:850!important;
 white-space:nowrap!important;
}
#dealDetailContent .deal-detail-retailer.brand-tesco{background:#0756a5!important}
#dealDetailContent .deal-detail-retailer.brand-sainsburys{background:#f36b16!important}
#dealDetailContent .deal-detail-retailer.brand-asda{background:#78be20!important}
#dealDetailContent .deal-detail-retailer.brand-lidl{background:#ffdf00!important;color:#0050a4!important}
#dealDetailContent .deal-detail-retailer.brand-morrisons{background:#007a3d!important}
#dealDetailContent .deal-detail-retailer.brand-iceland{background:#fff!important;color:#d71920!important;border:1px solid #d71920}
#dealDetailContent .deal-detail-retailer.brand-coop{background:#0067a5!important}
#dealDetailContent .deal-detail-retailer.brand-waitrose{background:#174b36!important}
#dealDetailContent .deal-detail-distance{display:inline-flex!important;white-space:nowrap!important;font-size:11px!important}
#dealDetailContent .deal-detail-hero-info>.deal-detail-favourite-star{
 position:absolute!important;top:0!important;right:0!important;left:auto!important;
 width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
 max-width:34px!important;padding:0!important;border-radius:50%!important;
 display:grid!important;place-items:center!important;background:#f3f6fa!important;
}
#dealDetailContent .deal-detail-hero-copy{min-width:0!important}
#dealDetailContent .deal-detail-hero-copy h2{margin:5px 0 7px!important;font-size:19px!important;line-height:1.15!important}
#dealDetailContent .deal-detail-hero-copy .deal-detail-price{margin:0 0 7px!important}
#dealDetailContent .deal-detail-signal{margin-top:0!important}
@media(max-width:560px){
 #dealDetailDialog .deal-detail-panel{padding:17px!important}
 #dealDetailDialog .deal-detail-head{margin-bottom:9px}
 #dealDetailDialog #dealDetailClose.x{top:12px!important;right:12px!important}
 #dealDetailContent .deal-detail-hero{grid-template-columns:88px minmax(0,1fr)!important;gap:10px!important;min-height:108px!important;padding:9px!important}
 #dealDetailContent .deal-detail-hero-image{width:88px!important;height:100px!important;min-width:88px!important}
 #dealDetailContent .deal-detail-hero-info{padding-right:32px!important}
 #dealDetailContent .deal-detail-hero-meta{gap:5px!important;margin-bottom:5px!important}
 #dealDetailContent .deal-detail-retailer{min-height:26px!important;padding:3px 8px!important;font-size:10px!important}
 #dealDetailContent .deal-detail-distance{font-size:9px!important}
 #dealDetailContent .deal-detail-hero-info>.deal-detail-favourite-star{width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;max-width:29px!important}
 #dealDetailContent .deal-detail-hero-copy h2{font-size:16px!important;margin:4px 0 6px!important}
}


/* Shared retailer identity palette: use the same supermarket colours everywhere. */
.store-pill.brand-aldi,.deal-detail-retailer.brand-aldi{background:#0755a4!important;color:#fff!important;border:1px solid #0755a4!important}
.store-pill.brand-tesco,.deal-detail-retailer.brand-tesco{background:#0756a5!important;color:#fff!important;border:1px solid #e32636!important}
.store-pill.brand-sainsburys,.deal-detail-retailer.brand-sainsburys{background:#f36b16!important;color:#fff!important;border:1px solid #d85b0c!important}
.store-pill.brand-asda,.deal-detail-retailer.brand-asda{background:#78be20!important;color:#fff!important;border:1px solid #65a51b!important}
.store-pill.brand-lidl,.deal-detail-retailer.brand-lidl{background:#ffdf00!important;color:#0050a4!important;border:1px solid #0050a4!important}
.store-pill.brand-morrisons,.deal-detail-retailer.brand-morrisons{background:#007a3d!important;color:#fff!important;border:1px solid #007a3d!important}
.store-pill.brand-iceland,.deal-detail-retailer.brand-iceland{background:#fff!important;color:#d71920!important;border:1px solid #d71920!important}
.store-pill.brand-coop,.deal-detail-retailer.brand-coop{background:#0067a5!important;color:#fff!important;border:1px solid #0067a5!important}
.store-pill.brand-waitrose,.deal-detail-retailer.brand-waitrose{background:#174b36!important;color:#fff!important;border:1px solid #174b36!important}
.store-pill.brand-marks-spencer,.deal-detail-retailer.brand-marks-spencer{background:#07513f!important;color:#fff!important;border:1px solid #07513f!important}
.store-pill.brand-ocado,.deal-detail-retailer.brand-ocado{background:#f6a800!important;color:#17243a!important;border:1px solid #e29500!important}
.store-pill.brand-spar,.deal-detail-retailer.brand-spar{background:#fff!important;color:#d71920!important;border:1px solid #d71920!important}
.store-pill.brand-farmfoods,.deal-detail-retailer.brand-farmfoods{background:#0755a4!important;color:#fff!important;border:1px solid #0755a4!important}
.store-pill.brand-heron,.deal-detail-retailer.brand-heron{background:#0876bd!important;color:#fff!important;border:1px solid #0876bd!important}
.store-pill.brand-default,.deal-detail-retailer.brand-default{background:#52657d!important;color:#fff!important;border:1px solid #52657d!important}


/* Keep the favourite control well clear of the modal close button. */
#dealDetailContent .deal-detail-hero{position:relative!important;padding-bottom:52px!important}
#dealDetailContent .deal-detail-hero>.deal-detail-favourite-star{
 position:absolute!important;top:auto!important;right:14px!important;bottom:11px!important;left:auto!important;
 z-index:2;width:34px!important;height:34px!important;min-width:34px!important;
 min-height:34px!important;max-width:34px!important;padding:0!important;
 display:grid!important;place-items:center!important;border-radius:50%!important;
 background:#f3f6fa!important;color:#24466f!important;
}
#dealDetailContent .deal-detail-hero>.deal-detail-favourite-star>span{font-size:27px!important;line-height:1!important}
#dealDetailContent .deal-detail-hero-info{padding-right:0!important}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero{padding-bottom:47px!important}
 #dealDetailContent .deal-detail-hero>.deal-detail-favourite-star{
  right:10px!important;bottom:8px!important;width:30px!important;height:30px!important;
  min-width:30px!important;min-height:30px!important;max-width:30px!important
 }
}


/* Correct hero geometry: star sits in the existing card space, not an added footer. */
#dealDetailContent .deal-detail-hero{
 min-height:0!important;height:auto!important;padding:10px!important;
 grid-template-columns:88px minmax(0,1fr)!important;
 gap:10px!important;align-items:center!important;
}
#dealDetailContent .deal-detail-hero-image{
 width:88px!important;height:100px!important;min-width:88px!important;
 max-width:88px!important;flex:none!important;overflow:hidden!important;
}
#dealDetailContent .deal-detail-hero-image img.deal-detail-image,
#dealDetailContent .deal-detail-hero-image .deal-detail-image{
 display:block!important;width:88px!important;height:100px!important;
 min-width:88px!important;max-width:88px!important;min-height:100px!important;
 max-height:100px!important;object-fit:contain!important;
}
#dealDetailContent .deal-detail-hero-info{padding-right:0!important}
#dealDetailContent .deal-detail-hero>.deal-detail-favourite-star{
 position:absolute!important;top:auto!important;right:12px!important;
 bottom:10px!important;left:auto!important;z-index:2;
 width:30px!important;height:30px!important;min-width:30px!important;
 min-height:30px!important;max-width:30px!important;padding:0!important;
}
#dealDetailContent .deal-detail-hero>.deal-detail-favourite-star>span{
 font-size:25px!important;line-height:1!important
}


/* Purchase action belongs in the main deal flow, directly below availability voting. */
#dealDetailContent .main-purchase-panel{
 margin:8px 0 10px!important;padding:10px 12px!important;
 border:1px solid #d8e3ef!important;border-radius:13px!important;
 background:#f6f9fd!important;
}
#dealDetailContent .main-purchase-panel .bought-it-button{
 min-height:44px!important;margin:0 0 7px!important;
 border-radius:10px!important;font-size:14px!important;
}
#dealDetailContent .main-purchase-panel>strong{font-size:12px!important}
#dealDetailContent .main-purchase-panel>p{font-size:10px!important;margin:3px 0 0!important}
#dealDetailContent .main-purchase-panel .bought-it-status{font-weight:700}


/* Keep administrator controls together and distinct from shopper feedback. */
footer .footer-brand{display:flex;flex-direction:column;gap:4px;min-width:190px}
footer .footer-brand>span{font-size:13px;color:#536176}
footer .footer-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:1;min-width:0}
footer .admin-tools-panel{width:100%;box-sizing:border-box;padding:13px 15px;border:1px solid #d8e2ee;border-radius:14px;background:#f5f8fc}
footer .admin-tools-heading{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}
footer .admin-tools-heading strong{font-size:11px;letter-spacing:1.2px;color:#23456e}
footer .admin-tools-heading span{font-size:12px;color:#65758b}
footer .admin-tools-buttons{display:flex;flex-wrap:wrap;gap:8px}
footer .admin-tools-buttons button{min-height:40px;padding:8px 13px;border:1px solid #c8d4e2;border-radius:9px;background:#fff;color:#23456e;font-weight:750}
footer #giveFeedback{min-height:40px;padding:8px 13px;border:1px solid #c8d4e2;border-radius:9px;background:#fff;color:#23456e;font-weight:750}
@media(max-width:760px){
 footer{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important}
 footer .footer-brand{gap:2px}
 footer .footer-actions{gap:12px}
 footer .admin-tools-panel{padding:12px}
 footer .admin-tools-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 footer .admin-tools-buttons button{width:100%;min-height:44px;white-space:normal}
 footer #giveFeedback{width:100%}
}


/* Admin tools live in the scrollable app content, not the desktop-only footer. */
main .main-admin-tools-panel{
 display:block;width:100%;box-sizing:border-box;margin:22px 0 14px;
 padding:16px;border:1px solid #d8e2ee;border-radius:15px;background:#f5f8fc;
}
main .main-admin-tools-panel[hidden]{display:none!important}
main .main-admin-tools-panel .admin-tools-heading{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
main .main-admin-tools-panel .admin-tools-heading strong{font-size:12px;letter-spacing:1.2px;color:#23456e}
main .main-admin-tools-panel .admin-tools-heading span{font-size:13px;color:#65758b}
main .main-admin-tools-panel .admin-tools-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
main .main-admin-tools-panel .admin-tools-buttons button{
 width:100%;min-height:46px;padding:9px 12px;border:1px solid #c8d4e2;
 border-radius:10px;background:#fff;color:#23456e;font-weight:750;white-space:normal
}
@media(max-width:760px){
 main .main-admin-tools-panel{margin:18px 0 14px;padding:13px}
 main .main-admin-tools-panel .admin-tools-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* GOODFINDS — Fresh & Friendly visual identity */
:root{
 --navy:#244b3c;--navy-dark:#17382d;--amber:#e98570;
 --paper:#f7f3eb;--ink:#202b27;--muted:#66736b;--line:#dedbd1;
 --white:#fffdf9;--green:#285b43;--green-pale:#e5efe5;
 --gf-forest:#244b3c;--gf-forest-deep:#17382d;--gf-sage:#dfe9dc;
 --gf-cream:#f7f3eb;--gf-coral:#e98570;--gf-coral-dark:#bd5f50;
 --gf-earth:#d9cbb8;--gf-text:#202b27;--gf-muted:#66736b;
}
body{background:var(--gf-cream)!important;color:var(--gf-text)!important}
button{color:var(--gf-forest)}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e98570!important;outline-offset:2px}
body>header.app-topbar{background:var(--gf-forest)!important;border-color:var(--gf-forest)!important}
body>header.app-topbar .brand{color:#fff!important}
body>header.app-topbar .brand b{background:#fff!important;color:var(--gf-forest)!important}
body>header.app-topbar .brand-accent{color:#f3a18d!important}
body>header.app-topbar .brand small{color:#e5eee7!important}
body>header.app-topbar .alpha-badge{background:#f4d9cd!important;color:#754638!important;border-color:#f4d9cd!important}
body>header.app-topbar .profile-button{border-color:#e2eadd!important;background:#fffdf9!important;color:var(--gf-forest)!important}
body>header.app-topbar .location-strip{background:#356b51!important;border-color:#72927b!important;color:#fff!important}
body>header.app-topbar .location-copy small{color:#e1eee3!important}
body>header.app-topbar .location-change{border-color:#dce8dd!important;color:#fff!important;background:transparent!important}
main{background:transparent}
.hero{background:var(--gf-forest)!important;color:#fff!important}
.hero>small{color:#f3b19e!important}
.hero em{color:#f3b19e!important}
.hero .primary:not(.limebg),.hero .outline{background:#fffdf9!important;color:var(--gf-forest)!important;border-color:#fffdf9!important}
.hero .limebg,.floating{background:var(--gf-coral)!important;color:#fff!important;border-color:var(--gf-coral)!important}
.filters,.card,.how-step{background:#fffdf9!important;border-color:var(--line)!important}
.filters{box-shadow:0 7px 22px rgba(54,65,53,.06)!important}
.chips button{color:var(--gf-forest)!important;border-color:var(--line)!important}
.chips .active{background:var(--gf-forest)!important;color:#fff!important;border-color:var(--gf-forest)!important}
.heading>span{background:#e8e5da!important;color:var(--gf-forest)!important}
.price{color:var(--gf-forest)!important}
.saving{background:#e5efe5!important;color:#285b43!important}
.how{background:#e9eee5!important;border-color:#d4dfd1!important}
.how em,.how-step b{color:var(--gf-forest)!important}
.how-step{border-color:#d9e1d5!important}
.confirm,.primary{background:var(--gf-forest)!important;color:#fff!important;border-color:var(--gf-forest)!important}
.app-toast{background:var(--gf-forest)!important}
.bottom-nav{background:#fffdf9!important;border-color:#e2ded4!important}
.bottom-nav-item.is-active{color:var(--gf-forest)!important}
.bottom-nav-share{background:var(--gf-coral)!important;color:#fff!important;box-shadow:0 5px 14px rgba(189,95,80,.25)!important}
#notice{color:#285b43!important}
footer{background:#fffdf9!important;border-color:var(--line)!important;color:var(--gf-muted)!important}
footer b{color:var(--gf-forest)!important}
.attribution a{color:var(--gf-forest)!important}
.deal-detail-price,.deal-detail-hero-copy h2{color:var(--gf-text)!important}
.deal-detail-share{border-color:var(--gf-forest)!important;color:var(--gf-forest)!important}
.bought-it-button{border-color:var(--gf-forest)!important;color:var(--gf-forest)!important}
.scan-hero,.find-current-store{background:var(--gf-forest)!important;border-color:var(--gf-forest)!important}
.selected-branch-card{background:#f0f3ec!important;border-color:#cbd8c9!important}
.change-store-button{color:var(--gf-forest)!important;border-color:#cbd8c9!important}
.account-dialog,.deal-detail-dialog,.feedback-dialog,.admin-feedback-dialog,.favourites-dialog{background:#fffdf9!important;color:var(--gf-text)!important}
.account-dialog h2,.deal-detail-dialog h2{color:var(--gf-forest)!important}
.account-dialog .primary,.account-dialog .username-panel .primary{background:var(--gf-forest)!important}
.admin-tools-panel{background:linear-gradient(145deg,#fffdf9,#f0f3ec)!important;border-color:#d5dfd2!important}
.admin-tools-panel .admin-tools-heading strong{color:var(--gf-forest)!important}
.admin-tools-panel .admin-tools-buttons button{color:var(--gf-forest)!important;border-color:#d2ddd0!important;background:#fffdf9!important}
@media(max-width:760px){
 .bottom-nav{background:#fffdf9!important}
 .bottom-nav-share{background:var(--gf-coral)!important}
}


/* GOODFINDS — Modern Market palette (direction 1) */
:root{
 --navy:#293943;--navy-dark:#1c2b32;--amber:#c8d66a;
 --paper:#f5f1e8;--ink:#253139;--muted:#69756f;--line:#deded3;
 --white:#fffdf8;--green:#426b55;--green-pale:#e5ede3;
 --gf-forest:#344d43;--gf-forest-deep:#263a33;--gf-sage:#dfe7dc;
 --gf-cream:#f5f1e8;--gf-citrus:#c8d66a;--gf-text:#253139;
 --gf-muted:#69756f;--gf-ivory:#fffdf8;--gf-line:#deded3;
}
body{background:var(--gf-cream)!important;color:var(--gf-text)!important}
button{color:var(--gf-forest-deep)}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a7b85a!important;outline-offset:2px}
body>header.app-topbar{background:var(--gf-forest-deep)!important;border-color:var(--gf-forest-deep)!important}
body>header.app-topbar .brand{color:#fff!important}
body>header.app-topbar .brand b{background:var(--gf-sage)!important;color:var(--gf-forest-deep)!important}
body>header.app-topbar .brand-accent{color:var(--gf-citrus)!important}
body>header.app-topbar .brand small{color:#dce5df!important}
body>header.app-topbar .alpha-badge{background:var(--gf-citrus)!important;color:#34402c!important;border-color:var(--gf-citrus)!important}
body>header.app-topbar .profile-button{border-color:#dfe7dc!important;background:var(--gf-ivory)!important;color:var(--gf-forest-deep)!important}
body>header.app-topbar .location-strip{background:#496457!important;border-color:#718779!important;color:#fff!important}
body>header.app-topbar .location-copy small{color:#e1e9e1!important}
body>header.app-topbar .location-change{border-color:#dce6dc!important;color:#fff!important;background:transparent!important}
main{background:transparent}
.hero{background:var(--gf-forest-deep)!important;color:#fff!important}
.hero>small{color:var(--gf-citrus)!important}
.hero em{color:var(--gf-citrus)!important}
.hero .primary:not(.limebg),.hero .outline{background:var(--gf-ivory)!important;color:var(--gf-forest-deep)!important;border-color:var(--gf-ivory)!important}
.hero .limebg,.floating{background:var(--gf-citrus)!important;color:#303b2b!important;border-color:var(--gf-citrus)!important}
.filters,.card,.how-step{background:var(--gf-ivory)!important;border-color:var(--gf-line)!important}
.filters{box-shadow:0 7px 22px rgba(42,55,47,.055)!important}
.chips button{color:var(--gf-forest-deep)!important;border-color:var(--gf-line)!important}
.chips .active{background:var(--gf-forest)!important;color:#fff!important;border-color:var(--gf-forest)!important}
.heading>span{background:#e6e8dc!important;color:var(--gf-forest-deep)!important}
.price{color:var(--gf-forest)!important}
.saving{background:#e5ede3!important;color:#315b43!important}
.how{background:#e8ede4!important;border-color:#d4ded1!important}
.how em,.how-step b{color:var(--gf-forest-deep)!important}
.how-step{border-color:#d9e1d6!important}
.confirm,.primary{background:var(--gf-forest)!important;color:#fff!important;border-color:var(--gf-forest)!important}
.app-toast{background:var(--gf-forest-deep)!important}
.bottom-nav{background:var(--gf-ivory)!important;border-color:var(--gf-line)!important}
.bottom-nav-item.is-active{color:var(--gf-forest)!important}
.bottom-nav-share{background:var(--gf-citrus)!important;color:var(--gf-forest-deep)!important;box-shadow:0 5px 14px rgba(95,109,58,.2)!important}
#notice{color:#315b43!important}
footer{background:var(--gf-ivory)!important;border-color:var(--gf-line)!important;color:var(--gf-muted)!important}
footer b{color:var(--gf-forest-deep)!important}
.attribution a{color:var(--gf-forest)!important}
.deal-detail-price,.deal-detail-hero-copy h2{color:var(--gf-text)!important}
.deal-detail-share{border-color:var(--gf-forest)!important;color:var(--gf-forest)!important}
.bought-it-button{border-color:var(--gf-forest)!important;color:var(--gf-forest)!important}
.scan-hero,.find-current-store{background:var(--gf-forest)!important;border-color:var(--gf-forest)!important}
.selected-branch-card{background:#edf1e9!important;border-color:#cbd7c9!important}
.change-store-button{color:var(--gf-forest-deep)!important;border-color:#cbd7c9!important}
.account-dialog,.deal-detail-dialog,.feedback-dialog,.admin-feedback-dialog,.favourites-dialog{background:var(--gf-ivory)!important;color:var(--gf-text)!important}
.account-dialog h2,.deal-detail-dialog h2{color:var(--gf-forest-deep)!important}
.account-dialog .primary,.account-dialog .username-panel .primary{background:var(--gf-forest)!important}
.admin-tools-panel{background:linear-gradient(145deg,var(--gf-ivory),#edf1e9)!important;border-color:#d5dfd2!important}
.admin-tools-panel .admin-tools-heading strong{color:var(--gf-forest-deep)!important}
.admin-tools-panel .admin-tools-buttons button{color:var(--gf-forest-deep)!important;border-color:#d2ddd0!important;background:var(--gf-ivory)!important}
@media(max-width:760px){
 .bottom-nav{background:var(--gf-ivory)!important}
 .bottom-nav-share{background:var(--gf-citrus)!important}
}


/* GOODFINDS — Autumn Fresh & Friendly palette */
:root{
 --navy:#344b3c;--navy-dark:#26382d;--amber:#c8794d;
 --paper:#f5efe5;--ink:#292f29;--muted:#746f63;--line:#e1d7c8;
 --white:#fffaf2;--green:#3d6247;--green-pale:#e6ecdf;
 --gf-forest:#354d3c;--gf-forest-deep:#26382d;--gf-sage:#dfe5d5;
 --gf-cream:#f5efe5;--gf-coral:#c8794d;--gf-coral-dark:#a85e3b;
 --gf-earth:#d7c3a8;--gf-text:#292f29;--gf-muted:#746f63;
}
body{background:var(--gf-cream)!important;color:var(--gf-text)!important}
button{color:var(--gf-forest)}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c8794d!important;outline-offset:2px}
body>header.app-topbar{background:var(--gf-forest-deep)!important;border-color:var(--gf-forest-deep)!important}
body>header.app-topbar .brand{color:#fff!important}
body>header.app-topbar .brand b{background:#fff8ed!important;color:var(--gf-forest-deep)!important}
body>header.app-topbar .brand-accent{color:#e6a36f!important}
body>header.app-topbar .brand small{color:#e9e5d9!important}
body>header.app-topbar .alpha-badge{background:#ead8b9!important;color:#59452e!important;border-color:#ead8b9!important}
body>header.app-topbar .profile-button{border-color:#e2d8c7!important;background:#fffaf2!important;color:var(--gf-forest-deep)!important}
body>header.app-topbar .location-strip{background:#49624a!important;border-color:#788a6c!important;color:#fff!important}
body>header.app-topbar .location-copy small{color:#e5eadc!important}
body>header.app-topbar .location-change{border-color:#e2e8da!important;color:#fff!important;background:transparent!important}
main{background:transparent}
.hero{background:var(--gf-forest-deep)!important;color:#fff!important}
.hero>small{color:#e6a36f!important}
.hero em{color:#e6a36f!important}
.hero .primary:not(.limebg),.hero .outline{background:#fffaf2!important;color:var(--gf-forest-deep)!important;border-color:#fffaf2!important}
.hero .limebg,.floating{background:var(--gf-coral)!important;color:#fff!important;border-color:var(--gf-coral)!important}
.filters,.card,.how-step{background:#fffaf2!important;border-color:var(--line)!important}
.filters{box-shadow:0 7px 22px rgba(65,53,39,.07)!important}
.chips button{color:var(--gf-forest)!important;border-color:var(--line)!important}
.chips .active{background:var(--gf-forest)!important;color:#fff!important;border-color:var(--gf-forest)!important}
.heading>span{background:#eee5d6!important;color:var(--gf-forest-deep)!important}
.price{color:var(--gf-forest)!important}
.saving{background:#e6ecdf!important;color:#315b43!important}
.how{background:#e9ecdf!important;border-color:#d8dfcf!important}
.how em,.how-step b{color:var(--gf-forest-deep)!important}
.how-step{border-color:#d9dfd2!important}
.confirm,.primary{background:var(--gf-forest)!important;color:#fff!important;border-color:var(--gf-forest)!important}
.app-toast{background:var(--gf-forest-deep)!important}
.bottom-nav{background:#fffaf2!important;border-color:var(--line)!important}
.bottom-nav-item.is-active{color:var(--gf-forest)!important}
.bottom-nav-share{background:var(--gf-coral)!important;color:#fff!important;box-shadow:0 5px 14px rgba(168,94,59,.24)!important}
#notice{color:#315b43!important}
footer{background:#fffaf2!important;border-color:var(--line)!important;color:var(--gf-muted)!important}
footer b{color:var(--gf-forest-deep)!important}
.attribution a{color:var(--gf-forest)!important}
.deal-detail-price,.deal-detail-hero-copy h2{color:var(--gf-text)!important}
.deal-detail-share{border-color:var(--gf-forest)!important;color:var(--gf-forest)!important}
.bought-it-button{border-color:var(--gf-forest)!important;color:var(--gf-forest)!important}
.scan-hero,.find-current-store{background:var(--gf-forest)!important;border-color:var(--gf-forest)!important}
.selected-branch-card{background:#f0eee4!important;border-color:#d6d7c6!important}
.change-store-button{color:var(--gf-forest)!important;border-color:#d6d7c6!important}
.account-dialog,.deal-detail-dialog,.feedback-dialog,.admin-feedback-dialog,.favourites-dialog{background:#fffaf2!important;color:var(--gf-text)!important}
.account-dialog h2,.deal-detail-dialog h2{color:var(--gf-forest-deep)!important}
.account-dialog .primary,.account-dialog .username-panel .primary{background:var(--gf-forest)!important}
.admin-tools-panel{background:linear-gradient(145deg,#fffaf2,#eef0e5)!important;border-color:#ded8c9!important}
.admin-tools-panel .admin-tools-heading strong{color:var(--gf-forest-deep)!important}
.admin-tools-panel .admin-tools-buttons button{color:var(--gf-forest-deep)!important;border-color:#ded8c9!important;background:#fffaf2!important}
@media(max-width:760px){
 .bottom-nav{background:#fffaf2!important}
 .bottom-nav-share{background:var(--gf-coral)!important}
}

/* Signed-out community access gate */
.community-locked .deal-quick-actions,
.community-locked .bottom-nav-share,
.community-locked .home-share-cta,
.community-locked .share-callout,
.community-locked .share-callout-hint,
.community-locked .filters,
.community-locked .heading,
.community-locked .branch-filter-notice,
.community-locked .account-strip,
.community-locked #empty{display:none!important}
.community-gate[hidden]{display:none!important}
.community-gate{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(18px,4vw,42px);align-items:center;margin:24px 0 34px;padding:clamp(18px,4vw,30px);border:1px solid #e4d1bd;border-radius:24px;background:linear-gradient(135deg,#f8f0e5 0%,#f2e3d3 55%,#ead4bf 100%);box-shadow:0 12px 32px rgba(67,48,31,.09)}
.community-gate-preview{position:relative;display:grid;gap:12px;filter:blur(5px);opacity:.76;transform:scale(.98);pointer-events:none;user-select:none}
.community-preview-card{position:relative;display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;align-items:center;min-height:112px;padding:12px;border:1px solid #d8c7b6;border-radius:16px;background:rgba(255,255,255,.9);box-shadow:0 5px 15px rgba(55,43,30,.08)}
.community-preview-card.secondary{margin-left:24px;opacity:.85}
.community-preview-image{display:grid;place-items:center;height:78px;border-radius:12px;background:#e7e2d6;font-size:36px}
.community-preview-copy{display:grid;gap:4px;min-width:0;color:#354d3c}
.community-preview-store,.community-preview-signal{font-size:9px;font-weight:850;letter-spacing:.8px}
.community-preview-copy strong{font-size:14px}
.community-preview-copy b{font-size:20px}
.community-preview-star{position:absolute;right:12px;top:9px;font-size:20px;color:#c8794d}
.community-gate-content{position:relative;z-index:1;max-width:440px}
.community-gate-kicker{font-size:10px;font-weight:850;letter-spacing:1.5px;color:#a75e39}
.community-gate-content h2{margin:8px 0 10px;color:#26382d;font-size:clamp(25px,4vw,34px);line-height:1.12;letter-spacing:-.8px}
.community-gate-content p{margin:0 0 18px;color:#526052;font-size:15px;line-height:1.55}
.community-join-button{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;max-width:300px;min-height:52px;padding:13px 17px;border:0;border-radius:13px;background:#354d3c;color:#fff;font-weight:850;box-shadow:0 5px 13px rgba(38,56,45,.18)}
.community-join-button span{font-size:21px}
.community-gate-content>small{display:block;margin-top:10px;color:#6d7569;font-size:11px}
@media(max-width:680px){
 .community-gate{grid-template-columns:1fr;gap:16px;margin:16px 0 28px;padding:17px;border-radius:19px}
 .community-gate-preview{grid-template-columns:1fr 1fr;gap:8px;filter:blur(4px);transform:none}
 .community-preview-card{grid-template-columns:1fr;gap:5px;min-height:112px;padding:8px}
 .community-preview-card.secondary{margin-left:0}
 .community-preview-image{height:48px;font-size:26px}
 .community-preview-copy{gap:2px}
 .community-preview-store,.community-preview-signal{font-size:7px}
 .community-preview-copy strong{font-size:10px}
 .community-preview-copy b{font-size:15px}
 .community-preview-star{font-size:16px}
 .community-gate-content h2{font-size:25px}
 .community-gate-content p{font-size:13px;margin-bottom:14px}
 .community-join-button{max-width:none}
}

/* Community contribution and impact panel */
.community-activity-panel{margin:18px 0;padding:18px;border:1px solid #dce7df;border-radius:20px;background:linear-gradient(145deg,#f7fbf7,#f2f7f3);color:#173b2a}
.community-activity-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.community-activity-heading small{display:block;color:#688172;font-size:10px;font-weight:850;letter-spacing:.12em}
.community-activity-heading h3{margin:4px 0 0;font-size:19px}
.community-status{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#e5edf0;color:#52636a;font-size:11px;font-weight:850}
.community-status.active{background:#dcf4e3;color:#176b38}
.community-status.at-risk{background:#fff0ce;color:#875300}
.community-status.inactive{background:#ffe1df;color:#a02d28}
.community-impact-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:20px 12px;border-radius:16px;background:#173b2a;color:#fff;text-align:center}
.community-impact-hero>strong{font-size:clamp(34px,9vw,48px);line-height:1;font-weight:900;letter-spacing:-.04em}
.community-impact-hero>span{max-width:250px;font-size:13px;font-weight:700}
.community-impact-hero>small{margin-top:4px;color:#d3e8d8;font-size:11px}
.community-impact-hero>small b{color:#fff}
.community-contribution-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}
.community-contribution-stats article{display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid #e0e9e2;border-radius:13px;background:#fff}
.community-contribution-stats strong{font-size:22px;line-height:1.1;font-weight:900}
.community-contribution-stats span{color:#65786a;font-size:11px;font-weight:700}
.community-membership-message{margin:10px 0;padding:12px;border-radius:12px;background:#fff;font-size:12px;line-height:1.5;color:#415a49}
.community-activity-subhead{display:flex;flex-direction:column;gap:3px;margin:16px 0 8px}
.community-activity-subhead strong{font-size:13px}
.community-activity-subhead span{color:#718176;font-size:10px}
.community-activity-list{display:flex;flex-direction:column;gap:7px}
.community-activity-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:11px;background:#fff}
.community-activity-mark{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:#e9f4eb;color:#216b3b;font-weight:900}
.community-activity-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.community-activity-copy strong{overflow:hidden;color:#274332;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.community-activity-copy small,.community-activity-empty{color:#7b8c80;font-size:10px}
.community-activity-empty{margin:0;padding:10px;text-align:center}

.my-community-panel{margin:18px 0;padding:18px;border:1px solid #dce5dc;border-radius:22px;background:#fff;color:#14251b}.my-community-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.my-community-title small,.community-weekly-head small{display:block;color:#688172;font-size:10px;font-weight:850;letter-spacing:.13em}.my-community-title h3{margin:4px 0;font-size:23px;letter-spacing:-.03em}.my-community-title p{margin:0;color:#6d796f;font-size:12px;line-height:1.4}
.community-profile-identity{display:flex;align-items:center;gap:13px;padding:15px 0;border-bottom:1px solid #e9eee9}.community-avatar{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:50%;background:#e7ebdf;font-size:27px}.community-profile-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.community-profile-copy strong{font-size:19px;overflow-wrap:anywhere}.community-profile-copy span{color:#68736b;font-size:13px}
.community-username-editor{padding:14px 0;border-bottom:1px solid #e9eee9}.community-username-editor label{display:block;margin-bottom:6px;font-size:12px;font-weight:750}.community-username-editor .username-entry{max-width:100%}.community-username-editor .username-status{margin:6px 0;font-size:11px}.community-username-editor button{min-height:34px;padding:6px 10px;font-size:11px}
.community-impact-hero{display:flex;flex-direction:column;align-items:center;gap:5px;margin:15px 0;padding:21px 14px;border-radius:17px;background:linear-gradient(145deg,#173b2a,#245b3d);color:#fff;text-align:center}.community-impact-hero>small{font-size:9px;font-weight:850;letter-spacing:.12em;color:#d1e7d7}.community-impact-hero>strong{font-size:clamp(36px,10vw,48px);line-height:1;font-weight:900;letter-spacing:-.045em}.community-impact-hero>span{max-width:270px;font-size:11px;line-height:1.4;color:#e0eee3}.community-impact-hero>span b{color:#fff}
.community-contribution-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.community-contribution-stats article{display:flex;flex-direction:column;gap:5px;min-height:94px;padding:13px;border-radius:14px;background:#f3f5f3}.community-contribution-stats strong{font-size:29px;line-height:1.1;font-weight:900;letter-spacing:-.03em}.community-contribution-stats span{font-size:11px;line-height:1.3;color:#657168}
.community-weekly-progress{margin:18px 0;padding:15px;border:1px solid #e5ebe5;border-radius:15px;background:#fbfcfb}.community-weekly-head,.community-weekly-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.community-weekly-head h4,.community-section-heading h4{margin:3px 0 0;font-size:16px}.community-weekly-head>strong{font-size:21px}.community-weekly-meta{margin:12px 0 7px;color:#69756c;font-size:11px}.community-progress-track{height:9px;overflow:hidden;border-radius:99px;background:#e9ece9}.community-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:#c97b51;transition:width .25s ease}.community-weekly-progress>p{margin:9px 0 0;color:#58665c;font-size:11px;line-height:1.45}
.community-recent-section,.community-badges-section,.community-leaderboard-section{margin-top:20px;padding-top:17px;border-top:1px solid #e8ede8}.community-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.community-section-heading span{color:#7b867d;font-size:10px}.community-activity-list{display:flex;flex-direction:column;gap:7px}.community-activity-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f2f0}.community-activity-mark{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:#eaf3ec;color:#236b3e;font-size:17px;font-weight:900}.community-activity-copy{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.community-activity-copy strong{font-size:12px}.community-activity-copy small{overflow:hidden;color:#78837a;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.community-activity-row time{flex:0 0 auto;color:#79837b;font-size:10px}.community-activity-empty{margin:0;padding:13px 6px;text-align:center;color:#778279;font-size:11px;line-height:1.45}
.community-badges{display:flex;flex-wrap:wrap;gap:9px;min-height:42px}.community-earned-badge{display:grid;place-items:center;width:42px;height:42px;border:1px solid #e2e9df;border-radius:13px;background:#f6f8f3;font-size:21px}#communityAllBadges{margin-top:8px;font-size:11px}.community-leaderboard-tabs{display:flex;gap:7px;margin:10px 0}.community-leaderboard-tabs button{min-height:34px;padding:6px 14px;border:1px solid #dfe7df;border-radius:99px;background:#fff;color:#516054;font-size:11px;font-weight:750}.community-leaderboard-tabs button.is-active{border-color:#235d3a;background:#235d3a;color:#fff}.community-leaderboard{display:flex;flex-direction:column;gap:6px}.community-leader-row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:#f5f7f5}.community-leader-row.is-you{outline:1px solid #80b28e;background:#edf6ef}.community-rank{width:26px;color:#68766b;font-size:13px}.community-leader-copy{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.community-leader-copy b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.community-leader-copy small{color:#78837a;font-size:10px}.community-leader-points{font-size:11px;white-space:nowrap}


/* Dedicated community destination */
.community-dialog-shell{position:relative;box-sizing:border-box;width:100%;max-height:calc(100dvh - 20px);padding:24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.community-dialog-shell>.x{position:absolute;top:20px;right:20px;z-index:3}
.community-dialog .account-heading{padding-right:48px;margin-bottom:14px}
.community-dialog .my-community-panel{margin:0}
@media(max-width:520px){.community-dialog-shell{padding:17px}.community-dialog-shell>.x{top:15px;right:15px}}


.community-county-editor{padding:12px 0 4px;border-bottom:1px solid #e9eee9}.community-county-editor label{display:block;margin-bottom:6px;color:#435448;font-size:11px;font-weight:800}.community-county-editor>div{display:flex;gap:8px}.community-county-editor input{flex:1;min-width:0;min-height:38px;padding:8px 10px;border:1px solid #dce5dc;border-radius:10px;background:#fbfcfa;color:#26382d;font:inherit;font-size:13px}.community-county-editor button{min-width:66px;padding:7px 12px;border:1px solid #d5e1d5;border-radius:10px;background:#f4f7f1;font-size:11px;font-weight:800}.community-county-editor small{display:block;margin-top:6px;color:#778379;font-size:10px}
.community-leaderboard-feature{display:grid;grid-template-columns:48px minmax(0,1fr) auto 14px;align-items:center;gap:12px;width:100%;margin:14px 0 18px;padding:14px;border:1px solid #d8e4d8;border-radius:17px;background:linear-gradient(110deg,#f3f7ed,#fff8e9);color:#26382d;text-align:left;box-shadow:0 5px 16px rgba(35,65,43,.06)}.community-leaderboard-feature-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e4ecd9;font-size:25px}.community-leaderboard-feature-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.community-leaderboard-feature-copy small{color:#a4673e;font-size:9px;font-weight:900;letter-spacing:.12em}.community-leaderboard-feature-copy strong{font-size:15px;font-weight:900}.community-leaderboard-feature-copy>span{color:#68776a;font-size:11px}.community-leaderboard-feature-score{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:44px}.community-leaderboard-feature-score b{font-size:20px;font-weight:950}.community-leaderboard-feature-score small{font-size:8px;font-weight:900;letter-spacing:.1em;color:#778477}.community-leaderboard-feature-arrow{font-size:25px;color:#8b9a8a}.leaderboard-dialog-shell{min-height:min(640px,calc(100dvh - 24px))}.leaderboard-scope-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:4px 0 10px}.leaderboard-scope-tabs button{min-height:42px;font-size:12px}.leaderboard-scope-caption{margin:0 0 13px;color:#718076;font-size:12px}.leaderboard-full-list{gap:8px}.leaderboard-full-list .community-leader-row{min-height:58px;padding:11px 12px;border:1px solid #edf0eb;background:#f8f9f6}.leaderboard-full-list .community-leader-row.is-top-three{border-color:#e8d8ad;background:linear-gradient(110deg,#fff8e6,#fbf7ee)}.leaderboard-full-list .community-leader-row.is-you{outline:2px solid #80b28e;background:#edf6ef}.leaderboard-full-list .community-rank{width:32px;font-size:16px;font-weight:900}.leaderboard-full-list .community-leader-copy b{font-size:13px}.leaderboard-full-list .community-leader-points{font-size:12px;font-weight:850}.leaderboard-own-rank{margin-top:16px;padding:13px;border-radius:13px;background:#eaf3e9;color:#285238;font-size:13px;font-weight:850;text-align:center}@media(max-width:520px){.community-leaderboard-feature{grid-template-columns:42px minmax(0,1fr) auto 10px;gap:9px;padding:12px}.community-leaderboard-feature-icon{width:40px;height:40px;font-size:22px}.community-leaderboard-feature-copy strong{font-size:13px}.community-leaderboard-feature-copy>span{font-size:10px}}


/* Premium, high-visibility community leaderboard */
.community-leaderboard-feature{
 position:relative;isolation:isolate;display:grid;grid-template-columns:58px minmax(0,1fr) auto 16px;align-items:center;gap:13px;
 width:100%;min-height:104px;margin:0 0 20px;padding:17px 16px;overflow:hidden;
 border:1px solid rgba(129,177,137,.65);border-radius:20px;
 background:radial-gradient(ellipse at 8% 0%,rgba(255,255,255,.98),transparent 42%),linear-gradient(112deg,#e8f3e8 0%,#f4f8e9 48%,#fff1d7 100%);
 color:#203d2b;text-align:left;box-shadow:0 0 0 1px rgba(255,255,255,.8) inset,0 8px 22px rgba(35,91,55,.13),0 0 24px rgba(121,181,116,.19);
 transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease
}
.community-leaderboard-feature::before{
 content:"";position:absolute;z-index:-1;inset:-40% auto -40% -55%;width:42%;
 background:linear-gradient(100deg,transparent,rgba(255,255,255,.68),transparent);
 transform:skewX(-18deg);animation:communityLeaderboardShimmer 5.5s ease-in-out infinite;pointer-events:none
}
.community-leaderboard-feature::after{
 content:"";position:absolute;z-index:-1;width:145px;height:145px;right:5%;top:-90px;border-radius:50%;
 background:rgba(255,255,255,.48);filter:blur(2px);pointer-events:none
}
.community-leaderboard-feature:active{transform:scale(.985)}
.community-leaderboard-feature:focus-visible{outline:3px solid #6b9d73;outline-offset:3px}
.community-leaderboard-feature-icon{
 display:grid;place-items:center;width:56px;height:56px;border-radius:18px;
 background:linear-gradient(145deg,#f9f5d9,#dcebd5);border:1px solid rgba(183,174,103,.28);
 box-shadow:0 4px 14px rgba(105,126,66,.16),inset 0 1px 0 rgba(255,255,255,.9);font-size:32px
}
.community-leaderboard-feature-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.community-leaderboard-feature-copy small{color:#9a6337;font-size:9px;font-weight:950;letter-spacing:.15em}
.community-leaderboard-feature-copy strong{font-size:17px;font-weight:950;letter-spacing:-.025em}
.community-leaderboard-feature-copy>span{color:#536e5a;font-size:11px;font-weight:700}
.community-leaderboard-feature-score{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:48px;padding:7px 8px;border:1px solid rgba(117,157,115,.22);border-radius:12px;background:rgba(255,255,255,.55)}
.community-leaderboard-feature-score b{font-size:23px;line-height:1;font-weight:950;letter-spacing:-.04em}
.community-leaderboard-feature-score small{font-size:8px;font-weight:950;letter-spacing:.13em;color:#718574}
.community-leaderboard-feature-arrow{font-size:28px;font-weight:400;color:#7d9a7d}
@keyframes communityLeaderboardShimmer{0%,58%{left:-55%;opacity:0}68%{opacity:.85}88%,100%{left:125%;opacity:0}}
@media(hover:hover){.community-leaderboard-feature:hover{transform:translateY(-2px);border-color:#91b993;box-shadow:0 0 0 1px rgba(255,255,255,.9) inset,0 11px 27px rgba(35,91,55,.17),0 0 30px rgba(121,181,116,.26)}}
@media(max-width:520px){.community-leaderboard-feature{grid-template-columns:52px minmax(0,1fr) auto 10px;gap:10px;min-height:100px;padding:14px 12px}.community-leaderboard-feature-icon{width:50px;height:50px;font-size:29px}.community-leaderboard-feature-copy strong{font-size:15px}.community-leaderboard-feature-copy>span{font-size:10px}.community-leaderboard-feature-score{min-width:42px;padding:7px 5px}.community-leaderboard-feature-score b{font-size:21px}}
@media(prefers-reduced-motion:reduce){.community-leaderboard-feature::before{animation:none;display:none}.community-leaderboard-feature{transition:none}}


/* Refined GoodFinds bottom navigation */
/* Alpha v1.0.39 — stronger, roomier bottom navigation controls. */
@media(max-width:760px){
 .bottom-nav{
  min-height:calc(88px + env(safe-area-inset-bottom))!important;
  height:auto!important;
  flex-basis:calc(88px + env(safe-area-inset-bottom))!important;
  padding:9px 7px calc(9px + env(safe-area-inset-bottom))!important;
  gap:3px!important;
 }
 .bottom-nav-item{
  min-height:68px!important;
  padding:5px 2px!important;
  gap:5px!important;
  border-radius:17px!important;
  font-weight:850!important;
 }
 .bottom-nav-item .nav-icon{
  width:46px!important;height:46px!important;
  border-radius:15px!important;
 }
 .bottom-nav-item .nav-icon svg{
  width:33px!important;height:33px!important;
  stroke-width:2.35!important;
 }
 .bottom-nav-item small{
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:850!important;
  letter-spacing:0!important;
 }
 .bottom-nav-share{
  flex-basis:68px!important;width:68px!important;height:68px!important;min-height:68px!important;
  margin:-21px 5px 0!important;border-radius:23px!important;
 }
 .bottom-nav-share svg{width:39px!important;height:39px!important}
}
@media(max-width:380px){
 .bottom-nav{padding-right:4px!important;padding-left:4px!important;gap:1px!important}
 .bottom-nav-item small{font-size:10px!important}
 .bottom-nav-item .nav-icon{width:42px!important;height:42px!important}
 .bottom-nav-item .nav-icon svg{width:30px!important;height:30px!important}
 .bottom-nav-share{flex-basis:62px!important;width:62px!important;height:62px!important;min-height:62px!important;margin-right:3px!important;margin-left:3px!important}
}

.bottom-nav{
 position:relative!important;z-index:40!important;
 display:flex!important;align-items:center!important;justify-content:space-around!important;
 gap:2px!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;
 min-height:calc(76px + env(safe-area-inset-bottom))!important;height:auto!important;flex-basis:calc(76px + env(safe-area-inset-bottom))!important;
 border-top:1px solid rgba(93,112,91,.18)!important;
 background:linear-gradient(180deg,#fffdf8 0%,#f8f4eb 100%)!important;
 box-shadow:0 -7px 24px rgba(44,58,44,.09),0 1px 0 rgba(255,255,255,.9) inset!important;
}
.bottom-nav-item{
 position:relative!important;display:flex!important;flex:1 1 0!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 gap:4px!important;min-width:0!important;min-height:58px!important;padding:5px 2px!important;
 border:0!important;border-radius:15px!important;background:transparent!important;color:#818a83!important;
 transition:color .18s ease,background .18s ease,transform .18s ease!important
}
.bottom-nav-item .nav-icon{display:grid;place-items:center;width:29px;height:29px;transition:transform .18s ease,filter .18s ease}
.bottom-nav-item .nav-icon svg{display:block;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bottom-nav-item small{font-size:10px!important;line-height:1.1!important;font-weight:750!important;letter-spacing:.005em!important;white-space:nowrap}
.bottom-nav-item.is-active{color:#315b43!important;background:rgba(224,235,216,.62)!important}
.bottom-nav-item.is-active .nav-icon{transform:translateY(-1px) scale(1.07);filter:drop-shadow(0 2px 3px rgba(59,100,66,.16))}
.bottom-nav-item:active{transform:scale(.94)!important}
.bottom-nav-share{
 position:relative!important;display:grid!important;place-items:center!important;flex:0 0 62px!important;width:62px!important;height:62px!important;min-height:62px!important;
 margin:-19px 5px 0!important;padding:0!important;border:3px solid #fffdf8!important;border-radius:21px!important;
 background:linear-gradient(145deg,#d58b62,#bd704d)!important;color:#fff!important;
 box-shadow:0 8px 20px rgba(160,91,58,.28),0 0 0 1px rgba(177,110,74,.12)!important;
 transition:transform .18s ease,box-shadow .18s ease!important
}
.bottom-nav-share svg{width:35px!important;height:35px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.bottom-nav-share:active{transform:translateY(2px) scale(.95)!important;box-shadow:0 4px 11px rgba(160,91,58,.22)!important}
@media(hover:hover){.bottom-nav-item:hover{color:#315b43!important;background:rgba(224,235,216,.48)!important}.bottom-nav-share:hover{transform:translateY(-2px)!important;box-shadow:0 11px 23px rgba(160,91,58,.32)!important}}
@media(prefers-reduced-motion:reduce){.bottom-nav-item,.bottom-nav-item .nav-icon,.bottom-nav-share{transition:none!important}}
@media(max-width:380px){.bottom-nav{padding-right:5px!important;padding-left:5px!important;gap:0!important}.bottom-nav-item small{font-size:9px!important}.bottom-nav-share{flex-basis:56px!important;width:56px!important;height:56px!important;min-height:56px!important;margin-right:3px!important;margin-left:3px!important}}


/* More vivid, softly coloured navigation icon treatment */
.bottom-nav-item{color:#707b74!important}
.bottom-nav-item .nav-icon{
 width:38px!important;height:36px!important;border-radius:12px;
 background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(238,241,233,.8));
 box-shadow:0 2px 7px rgba(42,57,44,.08),inset 0 1px 0 rgba(255,255,255,.95);
}
.bottom-nav-item .nav-icon svg{width:27px!important;height:27px!important;stroke-width:2.15!important;filter:drop-shadow(0 1px 1px rgba(20,40,25,.08))}
.bottom-nav-item[data-nav="community"] .nav-icon{color:#397b64;background:linear-gradient(145deg,#e5f4ec,#cfe8dc);box-shadow:0 3px 9px rgba(52,125,94,.15),inset 0 1px 0 rgba(255,255,255,.9)}
.bottom-nav-item[data-nav="savings"] .nav-icon{color:#b47736;background:linear-gradient(145deg,#fff1d9,#f5dfb8);box-shadow:0 3px 9px rgba(176,126,53,.14),inset 0 1px 0 rgba(255,255,255,.9)}
.bottom-nav-item[data-nav="rewards"] .nav-icon{color:#9a6cbb;background:linear-gradient(145deg,#f3eaff,#e5d5f4);box-shadow:0 3px 9px rgba(142,97,178,.16),inset 0 1px 0 rgba(255,255,255,.9)}
.bottom-nav-item[data-nav="favourites"] .nav-icon{color:#d17b79;background:linear-gradient(145deg,#ffeded,#f7dada);box-shadow:0 3px 9px rgba(197,105,105,.14),inset 0 1px 0 rgba(255,255,255,.9)}
.bottom-nav-item.is-active{background:rgba(224,235,216,.42)!important;color:#315b43!important}
.bottom-nav-item.is-active .nav-icon{transform:translateY(-2px) scale(1.09)!important;box-shadow:0 5px 12px rgba(47,93,61,.17),inset 0 1px 0 rgba(255,255,255,.95)!important}
.bottom-nav-item small{color:inherit!important;font-weight:800!important;letter-spacing:.01em!important}
.bottom-nav-item:active .nav-icon{transform:scale(.94)!important}
@media(hover:hover){.bottom-nav-item:hover .nav-icon{transform:translateY(-2px) scale(1.06);box-shadow:0 5px 12px rgba(47,93,61,.14),inset 0 1px 0 rgba(255,255,255,.95)}}
@media(prefers-reduced-motion:reduce){.bottom-nav-item .nav-icon{transition:none!important}}


/* Circular SHARE A DEAL callout around the central camera action */
.bottom-nav-share{position:relative!important;overflow:visible!important;z-index:3!important}
.bottom-nav-share .share-deal-ring{
 position:absolute!important;z-index:2!important;left:50%!important;top:50%!important;
 width:104px!important;height:104px!important;max-width:none!important;
 transform:translate(-50%,-50%)!important;overflow:visible!important;
 fill:none!important;stroke:none!important;pointer-events:none!important
}
.bottom-nav-share .share-deal-ring text{
 fill:#244b3a!important;stroke:none!important;font-family:inherit!important;
 font-size:8.1px!important;font-weight:950!important;letter-spacing:1.25px!important;
 paint-order:stroke!important;stroke:#fff8e9!important;stroke-width:2.4px!important;stroke-linejoin:round!important
}
.bottom-nav-share .share-deal-camera{
 position:relative!important;z-index:3!important;width:35px!important;height:35px!important;
 fill:none!important;stroke:#fff!important;stroke-width:2.7!important;
 stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important
}
.bottom-nav-share{isolation:isolate}
@media(max-width:380px){.bottom-nav-share .share-deal-ring{width:96px!important;height:96px!important}}


/* Fix SHARE A DEAL badge: keep the camera centred and the circular label outside the button face. */
@media(max-width:760px){
 .bottom-nav-share{
  box-sizing:border-box!important;position:relative!important;isolation:isolate!important;overflow:visible!important;
  display:block!important;flex:0 0 64px!important;width:64px!important;height:64px!important;
  min-width:64px!important;min-height:64px!important;max-width:64px!important;max-height:64px!important;
  padding:0!important;margin:-17px 5px 0!important;border-radius:22px!important;
 }
 .bottom-nav-share .share-deal-ring{
  display:block!important;position:absolute!important;left:50%!important;top:50%!important;
  width:116px!important;height:116px!important;max-width:none!important;max-height:none!important;
  transform:translate(-50%,-50%)!important;overflow:visible!important;z-index:4!important;
  pointer-events:none!important;
 }
 .bottom-nav-share .share-deal-ring text{
  fill:#244b3a!important;stroke:#fffaf2!important;stroke-width:2.8px!important;
  font-size:8.5px!important;font-weight:950!important;letter-spacing:1.2px!important;
  paint-order:stroke fill!important;
 }
 .bottom-nav-share .share-deal-camera{
  display:block!important;position:absolute!important;left:50%!important;top:50%!important;
  width:35px!important;height:35px!important;max-width:35px!important;max-height:35px!important;
  transform:translate(-50%,-50%)!important;z-index:5!important;
  fill:none!important;stroke:#fff!important;stroke-width:2.7!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important;
 }
}
@media(max-width:380px){
 .bottom-nav-share .share-deal-ring{width:108px!important;height:108px!important}
}


/* Give the raised share action a clearer separation from the navigation background. */
@media(max-width:760px){
 .bottom-nav-share{
  box-shadow:
   0 12px 24px rgba(91,55,37,.30),
   0 4px 8px rgba(91,55,37,.18),
   0 0 0 3px rgba(255,250,242,.98),
   0 0 0 5px rgba(200,121,77,.16),
   inset 0 1px 0 rgba(255,255,255,.55)!important;
 }
 .bottom-nav-share .share-deal-ring{
  filter:drop-shadow(0 3px 3px rgba(60,48,37,.28))!important;
 }
 .bottom-nav-share .share-deal-ring text{
  paint-order:stroke fill!important;
  stroke-width:3.2px!important;
 }
 .bottom-nav-share .share-deal-camera{
  filter:drop-shadow(0 2px 2px rgba(83,48,31,.24))!important;
 }
 .bottom-nav-share:active{
  box-shadow:
   0 5px 11px rgba(91,55,37,.23),
   0 0 0 3px rgba(255,250,242,.98),
   0 0 0 5px rgba(200,121,77,.13)!important;
 }
}


/* Header location + feedback inbox shortcut */
.header-location-row{
 display:flex!important;align-items:stretch!important;justify-content:flex-start!important;
 gap:10px!important;width:100%!important;min-width:0!important;margin-top:0!important
}
body>header.app-topbar .header-location-row .location-strip{
 flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:calc(100% - 72px)!important
}
.header-feedback-button{
 position:relative!important;display:flex!important;flex:0 0 64px!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;gap:3px!important;
 width:64px!important;min-width:64px!important;min-height:54px!important;padding:5px 4px!important;
 border:1px solid rgba(226,216,199,.95)!important;border-radius:14px!important;
 background:linear-gradient(145deg,#fffaf1,#f0e6d6)!important;color:#405c49!important;
 box-shadow:0 4px 11px rgba(42,54,43,.13),inset 0 1px 0 rgba(255,255,255,.95)!important;
 transition:transform .16s ease,box-shadow .16s ease!important
}
.header-feedback-button svg{
 display:block!important;width:25px!important;height:25px!important;fill:none!important;
 stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important
}
.header-feedback-button span{font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.015em!important}
.header-feedback-button::after{
 content:"";position:absolute;right:8px;top:7px;width:6px;height:6px;border-radius:50%;
 background:#d58a63;box-shadow:0 0 0 2px #fffaf1
}
.header-feedback-button:active{transform:scale(.96)!important;box-shadow:0 2px 6px rgba(42,54,43,.13)!important}
@media(hover:hover){.header-feedback-button:hover{transform:translateY(-1px)!important;box-shadow:0 6px 14px rgba(42,54,43,.17),inset 0 1px 0 rgba(255,255,255,.95)!important}}
@media(max-width:380px){
 .header-location-row{gap:7px!important}
 .header-feedback-button{flex-basis:58px!important;width:58px!important;min-width:58px!important}
 body>header.app-topbar .header-location-row .location-strip{max-width:calc(100% - 65px)!important;padding-right:8px!important;padding-left:8px!important}
 body>header.app-topbar .location-change{padding:6px 8px!important}
}


/* Hard override for the compact header mailbox layout on mobile. */
body>header.app-topbar .header-location-row{
 display:flex!important;flex-flow:row nowrap!important;align-items:stretch!important;gap:9px!important;
 width:100%!important;min-width:0!important
}
body>header.app-topbar .header-location-row>#setArea{
 display:flex!important;flex:1 1 0!important;width:calc(100% - 73px)!important;
 min-width:0!important;max-width:none!important;height:58px!important;min-height:58px!important;
 box-sizing:border-box!important
}
body>header.app-topbar .header-location-row>#headerFeedbackOpen{
 display:flex!important;flex:0 0 64px!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;gap:4px!important;
 width:64px!important;min-width:64px!important;max-width:64px!important;
 height:58px!important;min-height:58px!important;max-height:58px!important;
 box-sizing:border-box!important;overflow:hidden!important;padding:5px!important;
 border:1px solid #e2d8c7!important;border-radius:14px!important;
 background:linear-gradient(145deg,#fffaf1,#f0e6d6)!important;color:#405c49!important;
 box-shadow:0 4px 11px rgba(42,54,43,.16),inset 0 1px 0 #fff!important
}
body>header.app-topbar .header-location-row>#headerFeedbackOpen svg{
 display:block!important;flex:0 0 25px!important;width:25px!important;height:25px!important;
 max-width:25px!important;max-height:25px!important;fill:none!important;
 stroke:#405c49!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important
}
body>header.app-topbar .header-location-row>#headerFeedbackOpen span{
 display:block!important;position:static!important;font-size:9px!important;line-height:1!important;
 font-weight:850!important;color:#405c49!important
}
body>header.app-topbar .header-location-row>#headerFeedbackOpen::after{
 content:""!important;position:absolute!important;right:7px!important;top:6px!important;
 width:6px!important;height:6px!important;border-radius:50%!important;background:#d58a63!important;
 box-shadow:0 0 0 2px #fffaf1!important
}
@media(max-width:380px){
 body>header.app-topbar .header-location-row{gap:7px!important}
 body>header.app-topbar .header-location-row>#headerFeedbackOpen{flex-basis:58px!important;width:58px!important;min-width:58px!important;max-width:58px!important}
 body>header.app-topbar .header-location-row>#setArea{width:calc(100% - 65px)!important}
}


/* GoodFinds profile identity page */
.header-settings-button{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;margin-left:2px;border:1px solid rgba(220,226,216,.9);border-radius:11px;background:#f7f8f3;color:#607365;box-shadow:0 2px 7px rgba(35,50,38,.08)}
.header-settings-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.profile-dialog{padding:0!important;max-width:540px!important}
.profile-page-shell{position:relative;padding:14px 16px 24px;max-height:min(90dvh,900px);overflow-y:auto}
.profile-page-shell>.x{z-index:8}
.profile-banner{position:relative;display:flex;align-items:flex-end;min-height:150px;margin:34px 0 0;padding:14px 16px;border-radius:19px;overflow:hidden;background:linear-gradient(130deg,#315d47,#8baa77 55%,#d4c58b)}
.profile-banner::before,.profile-banner::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.12);filter:blur(1px)}
.profile-banner::before{width:210px;height:210px;right:-35px;top:-120px}
.profile-banner::after{width:150px;height:150px;left:35%;bottom:-115px}
.profile-banner-label{position:relative;z-index:1;color:#fff;font-size:9px;font-weight:900;letter-spacing:.16em;text-shadow:0 1px 4px rgba(0,0,0,.2)}
.profile-banner.banner-sunset{background:linear-gradient(130deg,#864d3d,#d28b66 55%,#efc68d)}
.profile-banner.banner-berry{background:linear-gradient(130deg,#563a67,#9b668f 55%,#e4a6a7)}
.profile-banner.banner-midnight{background:linear-gradient(130deg,#182f49,#315b7c 55%,#7d9bb2)}
.profile-identity-card{position:relative;display:flex;align-items:center;gap:12px;margin:-29px 10px 16px;padding:10px 12px 10px 0}
.profile-avatar-edit-wrap{position:relative;flex:0 0 68px;width:68px;height:68px}
.profile-large-avatar{display:grid;place-items:center;width:68px;height:68px;border:4px solid #fff;border-radius:50%;background:#fff8e9;box-shadow:0 4px 14px rgba(34,48,38,.18);font-size:34px;box-sizing:border-box}
.profile-avatar-edit-button{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;box-sizing:border-box;flex:0 0 34px;width:34px!important;min-width:34px!important;max-width:34px;height:34px!important;min-height:34px!important;max-height:34px;padding:0!important;border:2px solid #fff;border-radius:50%!important;aspect-ratio:1;background:#355640;color:#fff;box-shadow:0 2px 7px rgba(20,40,28,.22);cursor:pointer;line-height:1}
.profile-avatar-edit-button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.profile-avatar-edit-button:focus-visible{outline:3px solid #d5aa38;outline-offset:2px}
.profile-customise-panel{margin:0 8px 18px;padding:16px;border:1px solid #dce5dc;border-radius:17px;background:linear-gradient(145deg,#fbfdf9,#f3f7f0);box-shadow:0 5px 16px rgba(38,65,44,.07)}
.profile-customise-panel[hidden]{display:none!important}
.profile-customise-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:15px}
.profile-customise-panel-heading small{font-size:9px;font-weight:950;letter-spacing:.14em;color:#82917c}
.profile-customise-panel-heading h3{margin:3px 0;font-size:18px;color:#294333}
.profile-customise-panel-heading p{margin:0;color:#718071;font-size:12px}
.profile-customise-close{box-sizing:border-box;display:grid;place-items:center;flex:0 0 38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;aspect-ratio:1;padding:0!important;margin:0;border:1px solid #dbe4d9;border-radius:50%!important;background:#fff;color:#49634d;font-size:21px;line-height:1;align-self:flex-start;flex-shrink:0}
.profile-customise-group{display:grid;gap:9px;margin-top:15px}
.profile-customise-group>strong{font-size:13px;color:#344d3a}
.profile-customise-panel .profile-avatar-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.profile-customise-panel .profile-avatar-choice{aspect-ratio:1;min-height:58px;font-size:27px}
.profile-customise-panel .profile-banner-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.profile-customise-panel .profile-banner-choices button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:82px;padding:10px 7px;border:1px solid #d9e3d7;border-radius:13px;background:#fff;color:#38513d;font-weight:800;text-align:center}
.profile-customise-panel .profile-banner-choices button.is-selected{border:2px solid #39734f;background:#fff5d6;box-shadow:inset 0 0 0 2px #f8e7ad}
.profile-customise-panel .banner-name{font-size:14px;font-weight:850;line-height:1.2}
.profile-customise-panel .banner-lock{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:3px 8px;border-radius:999px;background:#354a3d;color:#fff;font-size:10px;font-weight:950;letter-spacing:.06em;line-height:1.2}
.profile-customise-panel .banner-requirement{font-size:10px;font-weight:750;line-height:1.3;color:#657568}
.profile-customise-panel .profile-banner-choices button.is-locked{background:linear-gradient(145deg,#f0f1ed,#e3e8e2);border-color:#cbd4ca;color:#657268;opacity:1;filter:none}
.profile-customise-panel .profile-banner-choices button.is-locked .banner-name{color:#5c695f}
.profile-customise-panel .profile-banner-choices button.is-locked .banner-requirement{color:#53685a}
.profile-customise-save{width:100%;margin-top:17px}
.profile-save-status{min-height:0;margin:8px 0 0;font-size:12px;color:#526b56}
.profile-save-status:empty{display:none}
.profile-identity-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}
.profile-identity-copy strong{font-size:17px;font-weight:950;color:#253b2c}
.profile-identity-copy span{font-size:12px;color:#9a7041;font-weight:800}
.profile-level-pill{padding:7px 9px;border-radius:10px;background:#e9f0e3;color:#426747;font-size:9px;font-weight:950;letter-spacing:.08em}
.profile-xp-panel{padding:15px;border:1px solid #e5eade;border-radius:16px;background:linear-gradient(140deg,#fbfcf8,#f2f6ec)}
.profile-xp-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}
.profile-xp-heading small{font-size:9px;letter-spacing:.14em;color:#8a9b87;font-weight:900}
.profile-xp-heading h3{margin:4px 0 0;font-size:16px;color:#2d4735}
.profile-xp-heading>strong{font-size:18px;color:#b47b3d;font-weight:950;white-space:nowrap}
.profile-xp-track{height:9px;border-radius:20px;background:#dfe8da;overflow:hidden}
.profile-xp-track span{display:block;width:0;height:100%;border-radius:20px;background:linear-gradient(90deg,#77a779,#d2ae62);transition:width .3s ease}
.profile-xp-panel>small{display:block;margin-top:7px;color:#788678;font-size:10px}
.profile-impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.profile-impact-grid article{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 5px;border:1px solid #edf0e9;border-radius:13px;background:#fff}
.profile-impact-grid strong{font-size:19px;color:#315c43;font-weight:950}
.profile-impact-grid span{font-size:9px;color:#778278;text-align:center}
.profile-privacy{margin:14px 0;padding:13px;border:1px solid #e6ebe2;border-radius:14px;background:#fafbf8}
.profile-privacy label{display:flex;align-items:center;justify-content:space-between;gap:12px}
.profile-privacy label span{display:flex;flex-direction:column;gap:4px}
.profile-privacy label strong{font-size:12px;color:#344a38}
.profile-privacy label small,.profile-privacy>small{font-size:10px;line-height:1.4;color:#7a887c}
.profile-privacy input{width:20px;height:20px;accent-color:#477c53;flex:0 0 auto}
.profile-privacy>small{display:block;margin-top:8px}
.profile-section-heading{display:flex;align-items:center;justify-content:space-between;margin:18px 0 10px}
.profile-section-heading h3{margin:0;font-size:15px;color:#2e4535}
.profile-section-heading small{font-size:10px;color:#849087}
.profile-banner-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:12px}
.profile-banner-choices button{min-height:42px;border:2px solid transparent;border-radius:10px;color:#fff;font-size:10px;font-weight:850}
.profile-banner-choices button[data-banner="meadow"]{background:linear-gradient(120deg,#315d47,#a6bd87)}
.profile-banner-choices button[data-banner="sunset"]{background:linear-gradient(120deg,#864d3d,#e4ae7b)}
.profile-banner-choices button[data-banner="berry"]{background:linear-gradient(120deg,#563a67,#d18caa)}
.profile-banner-choices button[data-banner="midnight"]{background:linear-gradient(120deg,#182f49,#7398b8)}
.profile-banner-choices button.is-selected{outline:2px solid #3e7850;outline-offset:2px}
.profile-customise .profile-avatar-options{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;margin:10px 0}
.profile-customise .profile-avatar-choice{min-width:0;min-height:39px;border:1px solid #e7ece3;border-radius:10px;background:#f8faf5;font-size:20px}
.profile-customise .profile-avatar-choice.is-selected{border:2px solid #6d9b70;background:#eaf3e8}
.profile-achievement-list{display:flex;flex-wrap:wrap;gap:7px}
.profile-achievement-chip{padding:7px 9px;border-radius:9px;background:#f0f4eb;color:#536e55;font-size:10px;font-weight:800;text-transform:capitalize}
@media(max-width:420px){.profile-page-shell{padding:12px}.profile-banner{min-height:130px}.profile-large-avatar{width:62px;height:62px;flex-basis:62px}.profile-impact-grid span{font-size:8px}}


/* Profile mobile layout refinement */
.profile-dialog{width:min(540px,calc(100% - 20px));max-height:calc(100dvh - 24px);overflow:hidden}
.profile-page-shell{box-sizing:border-box;width:100%;max-height:calc(100dvh - 24px);padding:14px 16px 26px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.profile-page-shell>.x{position:absolute;top:12px;right:14px;z-index:10;display:grid;place-items:center;box-sizing:border-box;flex:0 0 42px;width:42px!important;min-width:42px!important;max-width:42px;height:42px!important;min-height:42px!important;max-height:42px;border:2px solid #d58a58;border-radius:50%!important;aspect-ratio:1;padding:0!important;background:#fffdf8;color:#36513d;box-shadow:0 2px 8px #233b2c18;line-height:1}
.profile-banner{min-height:112px;margin:54px 0 0;padding:14px 16px}
.profile-identity-card{margin:-24px 4px 14px;padding:8px 4px 8px 0;gap:10px}
.profile-large-avatar{width:64px;height:64px;flex-basis:64px}
.profile-identity-copy strong{font-size:clamp(15px,4.2vw,19px);overflow-wrap:anywhere}
.profile-level-pill{flex:0 0 auto}
.profile-xp-panel{padding:13px}
.profile-impact-grid{gap:7px;margin:10px 0}
.profile-impact-grid article{min-width:0;padding:11px 4px}
.profile-impact-grid strong{font-size:clamp(17px,5vw,21px)}
.profile-impact-grid span{font-size:clamp(9px,2.6vw,11px);line-height:1.25}
.profile-privacy{margin:12px 0;padding:12px}
.profile-section-heading{margin:16px 0 9px}
.profile-banner-choices{gap:6px}
.profile-banner-choices button{min-width:0;padding:6px 2px;font-size:clamp(9px,2.8vw,11px)}
.profile-customise .profile-avatar-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.profile-customise .profile-avatar-choice{min-height:44px;font-size:22px}
.profile-customise #saveProfileAppearance{width:100%;margin-top:2px}
.profile-achievements{padding-bottom:8px}
.profile-achievement-list{min-height:42px}
@media(max-width:420px){
 .profile-page-shell{padding:12px 12px 22px}
 .profile-banner{min-height:104px;margin-top:52px}
 .profile-identity-card{margin-top:-22px}
 .profile-large-avatar{width:58px;height:58px;flex-basis:58px;font-size:30px}
 .profile-xp-heading h3{font-size:14px}
}

.auth-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:14px 0;padding:5px;border-radius:13px;background:#edf1e9}
.auth-mode-switch button{border:0;border-radius:9px;background:transparent;color:#536653;font-weight:800;min-height:44px}
.auth-mode-switch button.is-active{background:#fff;color:#244a32;box-shadow:0 2px 8px #1b3a2418}
#mailingOptInRow[hidden]{display:none}

/* Ensure the profile save control remains an actual touch target above decorative layers. */
#saveProfileAppearance{position:relative;z-index:5;display:block;pointer-events:auto;touch-action:manipulation;cursor:pointer}
#saveProfileAppearance:disabled{opacity:.72;cursor:wait}

.profile-save-status{display:none;margin:8px 0 0;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:700;line-height:1.4}
.profile-save-status:not(:empty){display:block}
.profile-save-status[data-state="pending"]{background:#f1f4e9;color:#536653}
.profile-save-status[data-state="success"]{background:#e5f2e8;color:#285f3a}
.profile-save-status[data-state="error"]{background:#fff0e9;color:#9b482b}

/* Refined profile identity header */
.profile-banner{
 min-height:116px;
 margin:26px 0 0;
 padding:18px 20px;
 border-radius:20px;
 align-items:flex-start;
}
.profile-banner-label{
 margin-top:2px;
 font-size:10px;
 letter-spacing:.19em;
 line-height:1.2;
}
.profile-identity-card{
 align-items:center;
 gap:12px;
 margin:-24px 12px 18px;
 padding:0 0 0 0;
 min-height:76px;
}
.profile-large-avatar{
 flex-basis:72px;
 width:72px;
 height:72px;
 font-size:34px;
 border-width:4px;
}
.profile-identity-copy{
 gap:3px;
 padding-top:17px;
}
.profile-identity-copy strong{
 font-size:clamp(16px,4.5vw,19px);
 line-height:1.15;
 letter-spacing:-.025em;
 overflow-wrap:anywhere;
}
.profile-identity-copy span{
 font-size:12px;
 line-height:1.25;
}
.profile-level-pill{
 flex:0 0 auto;
 align-self:center;
 margin-top:13px;
 padding:8px 10px;
 font-size:9px;
 white-space:nowrap;
}
@media(max-width:600px){
 .profile-page-shell{padding:12px 14px 22px}
 .profile-banner{min-height:108px;margin-top:24px;padding:16px 17px}
 .profile-identity-card{gap:10px;margin:-22px 8px 16px;min-height:70px}
 .profile-large-avatar{flex-basis:66px;width:66px;height:66px;font-size:31px}
 .profile-identity-copy{padding-top:14px}
 .profile-level-pill{margin-top:10px;padding:7px 8px;font-size:8px;letter-spacing:.06em}
}
@media(max-width:380px){
 .profile-identity-card{gap:8px;margin-left:4px;margin-right:4px}
 .profile-large-avatar{flex-basis:58px;width:58px;height:58px;font-size:28px}
 .profile-identity-copy strong{font-size:15px}
 .profile-level-pill{padding:6px 7px;font-size:7px}
}

/* Achievement collection: earned milestone cards */
.profile-achievements{margin-top:20px;padding:17px 15px 15px;border:1px solid #e9e8dc;border-radius:18px;background:linear-gradient(145deg,#fbf6e8,#f6f5e9)}
.profile-achievements .profile-section-heading{align-items:center;margin:0 0 13px}
.profile-achievement-subtitle{display:block;margin-top:3px;color:#849184;font-size:10px;font-weight:700;letter-spacing:.04em}
.profile-achievement-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;min-height:0}
.profile-achievement-card{display:flex;min-width:0;min-height:112px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:7px;padding:12px;border:1px solid #e4e9dd;border-radius:14px;background:#fff;box-shadow:0 3px 10px rgba(37,59,44,.05)}
.profile-achievement-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#f2f4e9;font-size:21px}
.profile-achievement-card strong{font-size:12px;line-height:1.25;color:#314c39}
.profile-achievement-card small{font-size:9px;color:#8a9588;font-weight:750}
.profile-achievement-more{grid-column:1/-1;min-height:40px;border:1px dashed #cbd8c8;border-radius:12px;background:#f9fbf5;color:#45694d;font-size:11px;font-weight:850}
.profile-achievement-empty{grid-column:1/-1;display:flex;align-items:center;gap:11px;padding:14px;border:1px dashed #d5dfd0;border-radius:13px;background:#fff}
.profile-achievement-empty>span{font-size:27px}
.profile-achievement-empty strong{display:block;color:#38543f;font-size:12px}
.profile-achievement-empty small{display:block;margin-top:3px;color:#849184;font-size:10px;line-height:1.4}
@media(max-width:380px){.profile-achievement-card{min-height:104px;padding:10px}.profile-achievement-card strong{font-size:11px}}

/* Header settings control: fixed compact companion to the profile avatar */
body>header.app-topbar .brand-row>#accountSettingsOpen{
 display:grid!important;
 place-items:center!important;
 flex:0 0 44px!important;
 width:44px!important;
 min-width:44px!important;
 max-width:44px!important;
 height:44px!important;
 min-height:44px!important;
 max-height:44px!important;
 padding:0!important;
 margin:0 0 0 2px!important;
 align-self:center!important;
 box-sizing:border-box!important;
 border:2px solid #e2eadd!important;
 border-radius:14px!important;
 background:#fffdf9!important;
 color:#49624a!important;
 box-shadow:0 2px 7px rgba(35,50,38,.09)!important;
 line-height:1!important;
}
body>header.app-topbar .brand-row>#accountSettingsOpen svg{
 display:block!important;
 width:22px!important;
 height:22px!important;
 flex:none!important;
 fill:none!important;
 stroke:currentColor!important;
 stroke-width:1.8!important;
 stroke-linecap:round!important;
 stroke-linejoin:round!important;
}
body>header.app-topbar .brand-row>#accountSettingsOpen:active{transform:scale(.96);background:#f1f4eb!important}
@media(max-width:380px){
 body>header.app-topbar .brand-row>#accountSettingsOpen{flex-basis:40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;border-radius:13px!important}
}

/* Header settings: final compact square control, isolated from flex stretching */
#accountSettingsOpen.header-settings-button{
 box-sizing:border-box!important;display:inline-grid!important;place-items:center!important;
 flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;
 height:46px!important;min-height:46px!important;max-height:46px!important;align-self:center!important;
 padding:0!important;margin:0 0 0 2px!important;border:2px solid #e2eadd!important;
 border-radius:14px!important;background:#fffdf9!important;color:#49624a!important;
 line-height:1!important;overflow:hidden!important
}
#accountSettingsOpen.header-settings-button svg{width:23px!important;height:23px!important;max-width:23px!important;max-height:23px!important;display:block!important;flex:0 0 23px!important}
@media(max-width:380px){#accountSettingsOpen.header-settings-button{flex-basis:42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important}}

/* GoodFinds progression panel */
.level-progress-panel{margin:0 0 18px;padding:16px;border:1px solid #dce5ef;border-radius:17px;background:linear-gradient(135deg,#f4f8fc,#fff)}
.level-progress-top{display:flex;align-items:center;gap:13px;margin-bottom:13px}
.level-medal{display:grid;place-items:center;align-content:center;flex:0 0 58px;width:58px;height:58px;border:3px solid #e8bd54;border-radius:50%;background:linear-gradient(145deg,#fff2c9,#f1c45b);color:#173b68;box-shadow:0 3px 12px #173b6818}
.level-medal span{font-size:8px;font-weight:900;letter-spacing:1px}
.level-medal strong{font-size:22px;line-height:1.1}
.level-progress-copy{display:grid;gap:3px;min-width:0}
.level-progress-copy small{font-size:9px;font-weight:900;letter-spacing:1px;color:#7b8ba0}
.level-progress-copy strong{font-size:19px;color:#173b68}
.level-progress-copy span{font-size:11px;color:#728197}
.level-progress-track{height:10px;overflow:hidden;border-radius:99px;background:#e3eaf2}
.level-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e4b94f,#f2d783);transition:width .35s ease}
.level-progress-panel>p{margin:6px 0 0;text-align:right;font-size:10px;color:#718096}

/* Earnable level rewards */
.profile-level-rewards{margin:16px 0;padding:15px;border:1px solid #e5e9df;border-radius:17px;background:linear-gradient(145deg,#fbfcf8,#f1f5ed)}
.profile-level-rewards>.profile-section-heading{margin:0 0 11px;gap:8px}
.profile-level-rewards>.profile-section-heading>small{white-space:nowrap;font-size:9px;color:#819080;font-weight:800}
.profile-level-reward-grid{display:grid;gap:8px}
.profile-level-reward{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid #e6ebdf;border-radius:12px;background:#fff}
.profile-level-reward.is-locked{opacity:.68;background:#f7f8f5}
.profile-level-reward-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#f1f4e9;font-size:21px}
.profile-level-reward-copy{display:grid;gap:3px;flex:1;min-width:0}
.profile-level-reward-copy strong{font-size:11px;color:#344b38}
.profile-level-reward-copy small{font-size:9px;line-height:1.35;color:#7c897d}
.profile-level-reward-copy span{font-size:9px;font-weight:900;color:#8a7546}
.profile-level-reward.is-unlocked .profile-level-reward-copy span{color:#3d794b}
.profile-level-reward-state{font-size:15px;color:#477d4d}
.profile-reward-empty{margin:0;padding:12px;color:#849184;font-size:11px}
.profile-banner-choices button:disabled{opacity:.5;filter:saturate(.55);cursor:not-allowed;position:relative}
.profile-banner-choices button .banner-lock{font-size:9px;margin-left:2px}
.profile-identity-card.profile-elite-glow .profile-large-avatar{box-shadow:0 0 0 4px #e8d38b,0 0 20px 5px #e3c46c88}
.profile-identity-card.profile-elite-glow .profile-level-pill{background:linear-gradient(120deg,#e8d38b,#fff0c3);color:#72551d}

/* Level-up celebration and collectible trophy shelf */
.level-up-dialog{width:min(92vw,470px);max-width:470px;padding:0;border:0;border-radius:24px;background:transparent;overflow:visible}
.level-up-dialog::backdrop{background:rgba(13,28,20,.72);backdrop-filter:blur(5px)}
.level-up-panel{position:relative;padding:28px 22px 22px;border-radius:24px;text-align:center;background:linear-gradient(155deg,#fffdf6,#f0f6e9);box-shadow:0 22px 70px #071b1c55;overflow:hidden}
.level-up-panel>.x{position:absolute;top:10px;right:12px;z-index:3}
.level-up-sparkle{color:#d7a94f;font-size:22px;letter-spacing:12px;margin:4px 0 0}
.level-up-medal{display:grid;place-items:center;width:88px;height:88px;margin:4px auto 12px;border-radius:50%;background:linear-gradient(145deg,#fff1bd,#e7c66d);font-size:48px;box-shadow:0 8px 24px #c29a3e44}
.level-up-panel>small{font-size:9px;font-weight:950;letter-spacing:.17em;color:#9a804b}
.level-up-panel h2{margin:8px 0;font-size:25px;color:#2d4935}
.level-up-panel>p{margin:0 auto 16px;max-width:330px;font-size:12px;line-height:1.5;color:#718071}
.level-up-level-change{display:flex;align-items:center;justify-content:center;gap:16px;margin:15px auto 20px}
.level-up-level-change span{font-size:11px;font-weight:900;color:#8c998c}
.level-up-level-change b{font-size:20px;color:#c5a24f}
.level-up-level-change strong{padding:9px 14px;border-radius:12px;background:#e5f0dd;color:#3f7046;font-size:14px;font-weight:950}
.level-up-panel h3{margin:0 0 10px;text-align:left;color:#344b38;font-size:13px}
.level-up-reward-list{display:grid;gap:8px;margin-bottom:18px;text-align:left}
.level-up-reward{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:#fff;border:1px solid #e6eadf}
.level-up-reward>span{font-size:25px}
.level-up-reward>div{display:grid;gap:3px;flex:1;min-width:0}
.level-up-reward strong{font-size:11px;color:#344b38}
.level-up-reward small{font-size:9px;line-height:1.35;color:#849084}
.level-up-reward>b{font-size:8px;letter-spacing:.06em;color:#3e794b}
.level-up-no-rewards{font-size:11px;color:#788578;text-align:center;padding:10px}
.level-up-panel>button.primary,.level-up-panel>button.quiet{width:100%;margin-top:7px}
.profile-collection{margin:16px 0;padding:15px;border:1px solid #e5e9df;border-radius:17px;background:#fff}
.profile-collection>.profile-section-heading{margin:0 0 12px;gap:8px}
.profile-collection>.profile-section-heading>small{white-space:nowrap;font-size:9px;color:#819080;font-weight:800}
.profile-badge-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.profile-collectible{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:112px;padding:10px 6px;border:1px solid #e6ebdf;border-radius:14px;background:#f8faf5;text-align:center}
.profile-collectible.is-locked{opacity:.52;filter:grayscale(.8)}
.profile-collectible-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#fff,#eaf0e2);font-size:27px;box-shadow:0 3px 9px #314d2912}
.profile-collectible strong{font-size:9px;line-height:1.25;color:#3b503e}
.profile-collectible small{font-size:8px;color:#829082}
@media(max-width:380px){.profile-badge-collection{grid-template-columns:repeat(2,minmax(0,1fr))}.level-up-panel{padding:24px 16px 18px}}


/* Final mobile readability pass: profile, progression and reward typography. */
.profile-page-shell {
  font-size: 16px;
  line-height: 1.5;
}
.profile-page-shell .profile-banner-label {
  font-size: 12px;
  letter-spacing: .14em;
}
.profile-page-shell .profile-identity-copy strong {
  font-size: clamp(18px, 4.8vw, 21px);
}
.profile-page-shell .profile-identity-copy span {
  font-size: 14px;
}
.profile-page-shell .profile-level-pill {
  font-size: 11px;
}
.profile-page-shell .profile-xp-heading small,
.profile-page-shell .profile-section-heading > small,
.profile-page-shell .profile-xp-panel > small {
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: .08em;
}
.profile-page-shell .profile-xp-heading h3 {
  font-size: 19px;
  line-height: 1.3;
}
.profile-page-shell .profile-xp-heading > strong {
  font-size: 22px;
}
.profile-page-shell .profile-impact-grid strong {
  font-size: 22px;
}
.profile-page-shell .profile-impact-grid span {
  font-size: 12px;
  line-height: 1.35;
}
.profile-page-shell .profile-section-heading h3 {
  font-size: 19px;
  line-height: 1.3;
}
.profile-page-shell .profile-collectible {
  gap: 8px;
  padding: 12px 7px;
}
.profile-page-shell .profile-collectible strong {
  font-size: 13px;
  line-height: 1.3;
}
.profile-page-shell .profile-collectible small {
  font-size: 12px;
  line-height: 1.35;
}
.profile-page-shell .profile-level-reward-copy strong {
  font-size: 14px;
  line-height: 1.3;
}
.profile-page-shell .profile-level-reward-copy small,
.profile-page-shell .profile-level-reward-copy span {
  font-size: 12px;
  line-height: 1.4;
}
.profile-page-shell .profile-reward-empty {
  font-size: 13px;
  line-height: 1.45;
}
.profile-page-shell .profile-achievement-subtitle {
  font-size: 12px;
  line-height: 1.4;
}
.profile-page-shell .profile-achievement-card strong,
.profile-page-shell .profile-achievement-empty strong {
  font-size: 14px;
  line-height: 1.3;
}
.profile-page-shell .profile-achievement-card small,
.profile-page-shell .profile-achievement-empty small {
  font-size: 12px;
  line-height: 1.4;
}
.profile-page-shell .profile-privacy label strong {
  font-size: 14px;
}
.profile-page-shell .profile-privacy label small,
.profile-page-shell .profile-privacy > small {
  font-size: 12px;
  line-height: 1.45;
}
.level-up-panel > small {
  font-size: 12px;
}
.level-up-panel > p {
  font-size: 15px;
  line-height: 1.55;
}
.level-up-panel h3 {
  font-size: 16px;
}
.level-up-reward strong {
  font-size: 14px;
}
.level-up-reward small,
.level-up-no-rewards {
  font-size: 12px;
  line-height: 1.45;
}
@media (max-width: 600px) {
  .profile-page-shell .profile-section-heading h3 {
    font-size: 20px;
  }
  .profile-page-shell .profile-collectible strong {
    font-size: 13px;
  }
  .profile-page-shell .profile-collectible small {
    font-size: 12px;
  }
  .profile-page-shell .profile-level-reward-copy strong {
    font-size: 14px;
  }
}


/* Stronger mobile readability for locked rewards and trophy cards. */
.profile-page-shell .profile-level-rewards > .profile-section-heading > small,
.profile-page-shell .profile-collection > .profile-section-heading > small {
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: .035em;
  color: #536653;
}
.profile-page-shell .profile-level-reward.is-locked {
  opacity: 1;
  background: #f7f8f3;
}
.profile-page-shell .profile-level-reward-copy strong {
  font-size: 17px;
  line-height: 1.3;
  color: #2e4936;
}
.profile-page-shell .profile-level-reward-copy small {
  font-size: 15px;
  line-height: 1.45;
  color: #526653;
}
.profile-page-shell .profile-level-reward-copy span {
  font-size: 14px;
  line-height: 1.4;
  color: #806b3d;
}
.profile-page-shell .profile-collectible.is-locked {
  opacity: 1;
  filter: none;
  background: #f7f8f3;
}
.profile-page-shell .profile-collectible.is-locked .profile-collectible-icon {
  opacity: .72;
}
.profile-page-shell .profile-collectible strong {
  font-size: 15px;
  line-height: 1.35;
  color: #344b38;
}
.profile-page-shell .profile-collectible small {
  font-size: 14px;
  line-height: 1.4;
  color: #596b59;
}
@media (max-width: 600px) {
  .profile-page-shell .profile-level-reward {
    gap: 11px;
    padding: 12px;
  }
  .profile-page-shell .profile-level-reward-icon {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
    font-size: 23px;
  }
  .profile-page-shell .profile-level-reward-copy strong {
    font-size: 17px;
  }
  .profile-page-shell .profile-level-reward-copy small {
    font-size: 15px;
  }
  .profile-page-shell .profile-level-reward-copy span {
    font-size: 14px;
  }
  .profile-page-shell .profile-collectible strong {
    font-size: 15px;
  }
  .profile-page-shell .profile-collectible small {
    font-size: 14px;
  }
}


/* Positive, two-line XP feedback after a successful community contribution. */
.app-toast.xp-toast {
  white-space: pre-line;
  padding: 15px 20px;
  min-width: min(290px, calc(100vw - 36px));
  border: 1px solid #d6e5cf;
  border-radius: 16px;
  background: #254b35 !important;
  color: #fffdf5 !important;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.45;
  box-shadow: 0 10px 28px rgba(28, 59, 39, .28);
}


/* Compact community impact panel: clear two-column stats, styled to match GoodFinds cards. */
.community-stats{display:block!important;width:100%;box-sizing:border-box;margin:12px 0 14px;padding:12px 13px;border:1px solid #dce5d7;border-radius:17px;background:linear-gradient(135deg,#f5f8ef 0%,#fbf6e8 100%);box-shadow:0 3px 12px rgba(35,59,42,.06)}
.community-stats[hidden]{display:none!important}
.community-stats-heading{margin:0 0 9px;padding:0 2px;color:#536b55;font-size:11px;line-height:1.25;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.community-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.community-stat{display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:8px;min-width:0;min-height:58px;padding:9px 10px;border:1px solid #e2e9dc;border-radius:12px;background:#fff}
.community-stat-icon{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#edf3e8;color:#527453;font-size:19px;font-weight:800}
.community-stat strong{grid-column:2;grid-row:1;min-width:0;color:#244d36;font:850 20px/1.12 Manrope,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.community-stat>span:last-child{grid-column:2;grid-row:2;min-width:0;color:#718071;font-size:11px;line-height:1.25;font-weight:700}
@media(max-width:380px){.community-stats{padding:10px}.community-stats-grid{gap:7px}.community-stat{grid-template-columns:25px minmax(0,1fr);column-gap:6px;padding:8px}.community-stat-icon{width:25px;height:25px;font-size:16px}.community-stat strong{font-size:18px}.community-stat>span:last-child{font-size:10px}}

/* Alpha information panel */
.header-info-button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;margin-left:7px;border:1px solid #cbd8e6;border-radius:50%;background:#fff;color:#173b68;font:800 19px/1 Georgia,serif;cursor:pointer;box-shadow:0 1px 3px #173b6812}
.header-info-button span{display:grid;place-items:center;width:19px;height:19px;border:1.7px solid currentColor;border-radius:50%;font:800 13px/1 Arial,sans-serif}
.header-info-button:focus-visible{outline:3px solid #f2bd43;outline-offset:2px}
.info-dialog{width:min(540px,calc(100% - 20px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:20px;padding:0;background:#fff;color:#172b45;box-shadow:0 22px 70px #0d1f3740}
.info-dialog::backdrop{background:#0b1728a8;backdrop-filter:blur(3px)}
.info-panel{padding:22px}
.info-panel .modalhead{align-items:flex-start}
.info-panel .modalhead h2{margin:5px 0 4px;font-size:25px}
.info-panel .modalhead p{margin:0;color:#64748b;font-size:13px;line-height:1.45}
.info-panel .modalhead small{color:#8a5b00;font-weight:850;letter-spacing:.09em}
.info-section{margin-top:22px}
.info-section-heading{display:flex;align-items:center;gap:11px;margin-bottom:11px}
.info-section-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:#fff3d7;color:#8a5b00;font-weight:900;font-size:19px}
.info-note-icon{background:#e8f0fa;color:#173b68}
.info-section-heading h3{margin:0;font-size:17px;color:#173b68}
.info-section-heading p{margin:2px 0 0;color:#718096;font-size:12px}
.info-item{margin:9px 0;padding:13px;border:1px solid #e3eaf1;border-radius:13px;background:#fbfcfe}
.info-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.info-item-top strong{font-size:14px;color:#203650}
.info-status,.info-version{padding:4px 7px;border-radius:20px;background:#fff1d3;color:#825500;font-size:10px;font-weight:800;white-space:nowrap}
.info-status-progress{background:#e8f0fa;color:#28517f}
.info-item p{margin:8px 0 0;color:#596a7e;font-size:12px;line-height:1.55}
.info-item ul{margin:9px 0 0;padding-left:19px;color:#596a7e;font-size:12px;line-height:1.7}
.info-feedback-prompt{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding:14px;border-radius:14px;background:#f0f5fa}
.info-feedback-prompt strong{font-size:14px;color:#173b68}
.info-feedback-prompt p{margin:4px 0 0;color:#64748b;font-size:12px;line-height:1.45}
.info-feedback-prompt button{flex:0 0 auto;white-space:nowrap}
.info-footnote{margin:15px 0 0;color:#8793a2;font-size:11px;line-height:1.4;text-align:center}
@media(max-width:520px){.info-panel{padding:17px}.info-feedback-prompt{align-items:flex-start;flex-direction:column}.info-feedback-prompt button{width:100%}}


/* Final compact header layout: area + feedback + round information control */
body>header.app-topbar .header-location-row{
 display:flex!important;flex-flow:row nowrap!important;align-items:stretch!important;gap:9px!important;
 width:100%!important;min-width:0!important
}
body>header.app-topbar .header-location-row>#setArea{
 flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:none!important;
 box-sizing:border-box!important
}
body>header.app-topbar .header-location-row>#headerFeedbackOpen{
 flex:0 0 64px!important;width:64px!important;min-width:64px!important;max-width:64px!important;
 height:58px!important;min-height:58px!important;max-height:58px!important;box-sizing:border-box!important
}
body>header.app-topbar .header-location-row>#headerInfoOpen{
 display:grid!important;place-items:center!important;align-self:stretch!important;
 flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;
 height:58px!important;min-height:58px!important;max-height:58px!important;
 box-sizing:border-box!important;padding:0!important;margin:0!important;
 border:1.5px solid #dce5ef!important;border-radius:50%!important;
 background:#fff!important;color:#173b68!important;box-shadow:0 2px 7px rgba(23,59,104,.10)!important;
 line-height:1!important;aspect-ratio:1/1!important;cursor:pointer!important
}
body>header.app-topbar .header-location-row>#headerInfoOpen span{
 display:grid!important;place-items:center!important;width:22px!important;height:22px!important;
 border:2px solid currentColor!important;border-radius:50%!important;
 font:800 14px/1 Arial,sans-serif!important
}
body>header.app-topbar .header-location-row>#headerInfoOpen:active{transform:scale(.96)}
#accountSettingsOpen.header-settings-button{
 border:1.5px solid #dce5d9!important;border-radius:14px!important;
 background:#fffdf8!important;color:#49624a!important;
 box-shadow:0 2px 5px rgba(35,50,38,.07)!important
}
#accountSettingsOpen.header-settings-button svg{
 width:25px!important;height:25px!important;stroke-width:1.8!important
}
@media(max-width:520px){
 body>header.app-topbar .header-location-row{gap:7px!important}
 body>header.app-topbar .header-location-row>#headerFeedbackOpen{flex-basis:62px!important;width:62px!important;min-width:62px!important;max-width:62px!important}
 body>header.app-topbar .header-location-row>#headerInfoOpen{flex-basis:42px!important;width:42px!important;min-width:42px!important;max-width:42px!important}
}


/* Header control geometry override: keep the info control truly circular */
body>header.app-topbar .header-location-row>#headerInfoOpen{
 box-sizing:border-box!important;display:grid!important;place-items:center!important;
 flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;
 height:44px!important;min-height:44px!important;max-height:44px!important;
 align-self:center!important;aspect-ratio:1/1!important;
 padding:0!important;margin:0!important;border-radius:50%!important;overflow:hidden!important;
}
body>header.app-topbar .header-location-row>#headerInfoOpen span{
 box-sizing:border-box!important;display:grid!important;place-items:center!important;
 width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;
 border:2px solid currentColor!important;border-radius:50%!important;
 font-family:Arial,sans-serif!important;font-size:14px!important;font-weight:800!important;line-height:1!important;
}
#accountSettingsOpen.header-settings-button{
 box-sizing:border-box!important;display:grid!important;place-items:center!important;
 flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;
 height:46px!important;min-height:46px!important;max-height:46px!important;
 padding:0!important;border:1.5px solid #dce5d9!important;border-radius:13px!important;
 background:#fffdf8!important;color:#49624a!important;box-shadow:0 2px 5px rgba(35,50,38,.07)!important;
}
#accountSettingsOpen.header-settings-button svg{
 display:block!important;flex:0 0 23px!important;width:23px!important;height:23px!important;
 max-width:23px!important;max-height:23px!important;fill:none!important;
 stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
@media(max-width:520px){
 body>header.app-topbar .header-location-row>#headerInfoOpen{
  flex-basis:40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;
  height:40px!important;min-height:40px!important;max-height:40px!important;
 }
 #accountSettingsOpen.header-settings-button{
  flex-basis:44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px!important;min-height:44px!important;max-height:44px!important;
 }
}


/* Definitive mobile header geometry: grid prevents flex stretching the info button */
@media(max-width:760px){
 body>header.app-topbar .header-location-row{
  display:grid!important;grid-template-columns:minmax(0,1fr) 62px 42px!important;
  align-items:center!important;column-gap:7px!important;width:100%!important;
 }
 body>header.app-topbar .header-location-row>#setArea{
  grid-column:1!important;display:flex!important;min-width:0!important;width:100%!important;
  max-width:none!important;align-self:stretch!important
 }
 body>header.app-topbar .header-location-row>#headerFeedbackOpen{
  grid-column:2!important;justify-self:stretch!important;align-self:stretch!important;
  box-sizing:border-box!important;width:62px!important;min-width:62px!important;max-width:62px!important;
  height:58px!important;min-height:58px!important;max-height:58px!important
 }
 body>header.app-topbar .header-location-row>#headerInfoOpen{
  grid-column:3!important;justify-self:center!important;align-self:center!important;
  display:grid!important;place-items:center!important;box-sizing:border-box!important;
  width:42px!important;min-width:42px!important;max-width:42px!important;
  height:42px!important;min-height:42px!important;max-height:42px!important;
  padding:0!important;margin:0!important;border:1px solid #dce5ef!important;
  border-radius:50%!important;aspect-ratio:1/1!important;overflow:hidden!important;
  background:#fff!important;color:#173b68!important;line-height:1!important
 }
}
#accountSettingsOpen.header-settings-button{
 display:grid!important;place-items:center!important;box-sizing:border-box!important;
 flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;
 height:46px!important;min-height:46px!important;max-height:46px!important;
 padding:0!important;margin:0!important;border:0!important;border-radius:0!important;
 background:transparent!important;color:#f4e8cf!important;box-shadow:none!important;
}
#accountSettingsOpen.header-settings-button svg{
 display:block!important;flex:0 0 26px!important;width:26px!important;height:26px!important;
 max-width:26px!important;max-height:26px!important;fill:none!important;
 stroke:#f4e8cf!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
@media(max-width:520px){
 #accountSettingsOpen.header-settings-button{
  flex-basis:44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px!important;min-height:44px!important;max-height:44px!important
 }
}


/* Final header icon treatment: cream glyphs directly on the forest-green header */
body>header.app-topbar .brand-row>#accountSettingsOpen,
body>header.app-topbar .brand-row>#accountSettingsOpen.header-settings-button{
 box-sizing:border-box!important;display:grid!important;place-items:center!important;
 flex:0 0 46px!important;width:46px!important;min-width:46px!important;max-width:46px!important;
 height:46px!important;min-height:46px!important;max-height:46px!important;
 padding:0!important;margin:0 0 0 2px!important;
 border:0!important;border-radius:0!important;
 background:transparent!important;background-color:transparent!important;
 color:#f4e8cf!important;box-shadow:none!important;outline:0!important;
}
body>header.app-topbar .brand-row>#accountSettingsOpen svg{
 display:block!important;flex:0 0 26px!important;width:26px!important;height:26px!important;
 max-width:26px!important;max-height:26px!important;
 fill:none!important;stroke:#f4e8cf!important;stroke-width:1.8!important;
 stroke-linecap:round!important;stroke-linejoin:round!important;
}
body>header.app-topbar .header-location-row>#headerInfoOpen,
body>header.app-topbar .header-location-row>button#headerInfoOpen{
 box-sizing:border-box!important;display:grid!important;place-items:center!important;
 flex:0 0 42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;
 height:42px!important;min-height:42px!important;max-height:42px!important;
 padding:0!important;margin:0!important;
 border:0!important;border-radius:0!important;
 background:transparent!important;background-color:transparent!important;
 color:#f4e8cf!important;box-shadow:none!important;outline:0!important;
}
body>header.app-topbar .header-location-row>#headerInfoOpen span{
 display:grid!important;place-items:center!important;
 width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;
 border:2px solid #f4e8cf!important;border-radius:50%!important;
 color:#f4e8cf!important;background:transparent!important;
 font-family:Arial,sans-serif!important;font-size:14px!important;font-weight:800!important;line-height:1!important;
}
@media(max-width:760px){
 body>header.app-topbar .header-location-row>#headerInfoOpen{
  width:42px!important;min-width:42px!important;max-width:42px!important;
  height:42px!important;min-height:42px!important;max-height:42px!important;
 }
}


/* Settings gear is a real transparent PNG asset */
body>header.app-topbar .brand-row>#accountSettingsOpen img.settings-cog-png{
 display:block!important;flex:0 0 28px!important;width:28px!important;height:28px!important;
 max-width:28px!important;max-height:28px!important;object-fit:contain!important;
 background:transparent!important;border:0!important;box-shadow:none!important;
}



/* Admin-only QR shortcut for sharing the Alpha test build. */
main .main-admin-tools-panel .admin-resolve-button{align-self:center}
main .main-admin-tools-panel .admin-qr-card{
 display:flex;align-items:center;gap:9px;min-width:0;box-sizing:border-box;
 padding:8px;border:1px solid #c8d4e2;border-radius:10px;background:#fff;
 color:#244b3c;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease;
}
main .main-admin-tools-panel .admin-qr-card:hover{border-color:#8ca99a;box-shadow:0 3px 10px rgba(36,75,60,.09)}
main .main-admin-tools-panel .admin-qr-card img{
 display:block;flex:0 0 82px;width:82px;height:82px;object-fit:contain;
 border-radius:7px;background:#fffdf9
}
main .main-admin-tools-panel .admin-qr-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
main .main-admin-tools-panel .admin-qr-copy strong{font-size:12px;line-height:1.25;color:#244b3c}
main .main-admin-tools-panel .admin-qr-copy small{font-size:11px;line-height:1.35;color:#64736a}
main .main-admin-tools-panel .admin-qr-copy>span{font-size:11px;font-weight:750;color:#b95f4e}
@media(max-width:760px){
 main .main-admin-tools-panel .admin-qr-card{gap:6px;padding:6px}
 main .main-admin-tools-panel .admin-qr-card img{flex-basis:66px;width:66px;height:66px}
 main .main-admin-tools-panel .admin-qr-copy strong{font-size:11px}
 main .main-admin-tools-panel .admin-qr-copy small,
 main .main-admin-tools-panel .admin-qr-copy>span{font-size:10px}
}


/* Keep onboarding cards usable above the iPhone keyboard. */
.setup-dialog,
.welcome-dialog,
#authDialog{
  box-sizing:border-box;
  max-height:calc(var(--gf-visual-viewport-height, 100dvh) - 24px - env(safe-area-inset-top));
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}


/* Clear post-signup email verification prompt. */
.email-sent-dialog{width:min(460px,calc(100% - 28px));max-width:460px;max-height:calc(var(--gf-visual-viewport-height, 100dvh) - 24px - env(safe-area-inset-top));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0;border:0;border-radius:24px;background:#fff;color:var(--ink);box-shadow:0 24px 80px #071a3380}
.email-sent-dialog::backdrop{background:#08182dcc;backdrop-filter:blur(3px)}
.email-sent-panel{position:relative;padding:clamp(24px,6vw,34px);text-align:center}
.email-sent-icon{display:grid;place-items:center;width:76px;height:76px;margin:4px auto 18px;border-radius:24px;background:#eaf2fb;color:#173b68;font-size:40px}
.email-sent-panel>small{font-size:10px;font-weight:900;letter-spacing:.14em;color:#8a5b00}
.email-sent-panel h2{margin:8px 0;font-size:clamp(27px,6vw,34px);line-height:1.12;color:var(--navy)}
.email-sent-panel>p{margin:0 auto 14px;max-width:350px;color:var(--muted);line-height:1.5}
.email-sent-address{overflow-wrap:anywhere;padding:12px 14px;border:1px solid #dce5ef;border-radius:12px;background:#f5f8fc;color:var(--navy);font-weight:800}
.email-sent-tip{margin:16px 0 18px;padding:15px;text-align:left;border-radius:14px;background:#f3f6fa;color:#40536b;font-size:13px;line-height:1.45}
.email-sent-tip strong{color:var(--navy)}
.email-sent-tip ol{margin:8px 0;padding-left:20px}
.email-sent-tip li{padding:2px 0}
.email-sent-tip p{margin:8px 0 0}
.email-sent-done{width:100%;min-height:50px}

/* Duplicate deal warning */
.duplicate-deal-dialog{box-sizing:border-box;width:min(440px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;padding:0;border:0;border-radius:22px;background:var(--gf-ivory,#fffaf2);color:var(--gf-text,#292f29);box-shadow:0 22px 70px rgba(20,35,25,.28)}
.duplicate-deal-dialog::backdrop{background:rgba(18,31,24,.62);backdrop-filter:blur(3px)}
.duplicate-deal-panel{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:26px 22px 22px;text-align:center}
.duplicate-deal-panel>.x{position:absolute;right:12px;top:12px}
.duplicate-deal-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#e7efdf;color:#426b42;font-size:30px;font-weight:900}
.duplicate-deal-panel>small{font-size:10px;font-weight:850;letter-spacing:1px;color:var(--gf-muted,#746f63)}
.duplicate-deal-panel h2{margin:0;font-size:23px;line-height:1.2;color:var(--gf-forest-deep,#26382d)}
.duplicate-deal-panel>p{margin:0;color:var(--gf-muted,#746f63);font-size:14px;line-height:1.5}
.duplicate-deal-match{display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;box-sizing:border-box;margin:6px 0;padding:15px;border:1px solid var(--gf-line,#deded3);border-radius:14px;background:rgba(223,231,220,.42)}
.duplicate-deal-match strong{font-size:16px;color:var(--gf-forest-deep,#26382d)}
.duplicate-deal-match span,.duplicate-deal-match small{font-size:12px;color:var(--gf-muted,#746f63)}
.duplicate-deal-match b{font-size:22px;color:var(--gf-forest,#354d3c)}
.duplicate-own-note{font-size:12px!important}
.duplicate-deal-actions{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:5px}
.duplicate-deal-actions button{width:100%;min-height:46px}
.duplicate-deal-actions [hidden]{display:none!important}


/* Yellow-sticker favourite notifications use the existing alert card layout. */
.price-alert-item.yellow-sticker-alert{border-color:#e7c65b;background:#fffaf0}
.price-alert-item.yellow-sticker-alert.unread{border-color:#d6a82c;background:#fff5d9}
.price-alert-item.yellow-sticker-alert .price-alert-copy strong{color:#9a6800}
.price-alert-item.yellow-sticker-alert .price-alert-prices b{color:#9a6800}
.price-alert-prices{display:flex;flex-direction:column;align-items:flex-end;gap:2px}


/* Keep the notification bell visible in the compact mobile header beside settings. */
body>header.app-topbar .brand-row>#priceAlertsOpen{
  position:relative!important;display:grid!important;place-items:center!important;
  flex:0 0 42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;
  height:42px!important;min-height:42px!important;max-height:42px!important;
  box-sizing:border-box!important;padding:0!important;margin:0 0 0 1px!important;
  border:0!important;border-radius:12px!important;background:transparent!important;
  color:#f4e8cf!important;box-shadow:none!important;line-height:1!important;
}
body>header.app-topbar .brand-row>#priceAlertsOpen svg{
  display:block!important;width:25px!important;height:25px!important;flex:none!important;
  fill:none!important;stroke:#f4e8cf!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
body>header.app-topbar .brand-row>#priceAlertsOpen .price-alert-count{
  position:absolute!important;top:0!important;right:-1px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:17px!important;height:17px!important;margin:0!important;padding:0 4px!important;
  border:2px solid var(--gf-forest-deep,#173b68)!important;border-radius:99px!important;
  background:#f4d35e!important;color:#263b2d!important;font-size:10px!important;font-weight:900!important;
}
body>header.app-topbar .brand-row>#priceAlertsOpen[hidden],
body>header.app-topbar .brand-row>#priceAlertsOpen .price-alert-count[hidden]{display:none!important}
@media(max-width:380px){
 body>header.app-topbar .brand-row>#priceAlertsOpen{flex-basis:38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:40px!important;min-height:40px!important}
}


/* Paired quick actions: nearest deals + the existing share-deal workflow. */
.deal-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0 12px}
.deal-quick-action{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-width:0;min-height:58px;padding:10px 12px;border-radius:15px;font:inherit;font-size:clamp(13px,3.5vw,16px);font-weight:850;line-height:1.2;text-align:center;box-shadow:0 2px 7px rgba(30,48,35,.08);cursor:pointer}
.nearest-deals-button{border:1px solid #d6c7a8;background:#fff8ed;color:#284333}
.nearest-deals-button .material-symbols-rounded{font-size:23px;line-height:1;flex:0 0 auto}
.nearest-deals-button:disabled{opacity:.65;cursor:wait}
.quick-share-button{border:1px solid #244b3a;background:#244b3a;color:#fffaf2}
.quick-share-camera{width:25px;height:25px;flex:0 0 25px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.deal-quick-action:active{transform:translateY(1px)}
.nearby-results[hidden]{display:none!important}
@media(max-width:380px){.deal-quick-actions{gap:8px}.deal-quick-action{gap:6px;padding:9px 7px;font-size:12px;min-height:54px}}


/* Place the favourite star in the bottom-right of each deal card, clear of distance. */
@media(max-width:760px){
 #feed .deal-row-content .deal-row-topline .deal-distance{margin-left:auto!important}
 #feed .deal-row-content .deal-row-bottomline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;min-width:0!important}
 #feed .deal-row-content .deal-row-bottomline .deal-row-price{min-width:0!important;flex:1 1 auto!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{position:static!important;display:grid!important;place-items:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;margin:0 0 0 auto!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;font-size:0!important;line-height:1!important;color:#65758a!important;visibility:visible!important;opacity:1!important;z-index:2!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{content:"☆"!important;display:block!important;font-family:Arial,sans-serif!important;font-size:32px!important;font-weight:400!important;line-height:1!important;color:#65758a!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite.is-favourite::before{content:"★"!important;color:#f2b91e!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite span{display:none!important}
}


/* Persistent red update indicator on the information button until opened. */
.header-info-button{position:relative!important}
.header-info-button.has-update::after{content:"";position:absolute;top:-2px;right:-2px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:#e53935;box-shadow:0 1px 4px #0003;z-index:3}


/* Alpha update notice: persistent, actionable and clear on mobile. */
.header-info-button.has-update::after{
 content:""!important;position:absolute!important;top:5px!important;right:5px!important;
 width:9px!important;height:9px!important;border:2px solid #263b30!important;
 border-radius:50%!important;background:#e34b43!important;box-shadow:0 1px 3px #0003!important;
 z-index:4!important;pointer-events:none!important;
}
.app-update-notice{
 position:fixed;inset:0;z-index:2147483000;
 display:none;place-items:center;
 box-sizing:border-box;width:100%;height:100%;max-width:none;max-height:none;
 margin:0;border:0;
 padding:22px max(18px,env(safe-area-inset-left)) 22px max(18px,env(safe-area-inset-right));
 overflow:auto;background:rgba(13,28,22,.48);color:inherit;
 -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
}
.app-update-notice[open]{display:grid}
.app-update-notice[hidden]{display:none!important}
.app-update-notice::backdrop{background:transparent}
.app-update-card{
 display:flex;align-items:center;justify-content:space-between;gap:20px;
 width:min(620px,100%);max-height:min(80vh,560px);overflow:auto;
 box-sizing:border-box;padding:24px 25px;
 border:1px solid #d9e3d9;border-radius:24px;
 background:#fffdf6;color:#263b30;
 box-shadow:0 24px 80px rgba(5,20,13,.32);
 animation:updateNoticeIn .24s ease-out both;
}
.app-update-copy{min-width:0}
.app-update-eyebrow{display:block;margin-bottom:8px;color:#8b6b2c;font-size:11px;font-weight:850;letter-spacing:.13em}
.app-update-copy>strong{display:block;font-size:clamp(20px,4vw,27px);line-height:1.2}
.app-update-copy p{margin:8px 0 0;color:#657367;font-size:16px;line-height:1.5}
.app-update-actions{display:flex;flex:0 0 150px;flex-direction:column;gap:10px}
.app-update-actions button{min-height:52px;padding:12px 14px;border-radius:13px;font-size:15px;font-weight:800;cursor:pointer}
.app-update-view{border:0;background:#294536;color:#fff}
.app-update-dismiss{border:1px solid #d4ddd4;background:transparent;color:#526254}
@keyframes updateNoticeIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:560px){
 .app-update-notice{padding:18px max(14px,env(safe-area-inset-left)) 18px max(14px,env(safe-area-inset-right))}
 .app-update-card{flex-direction:column;align-items:stretch;gap:18px;width:min(440px,100%);max-height:calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:22px 20px;border-radius:22px}
 .app-update-copy>strong{font-size:22px}
 .app-update-copy p{font-size:15px}
 .app-update-actions{flex:0 0 auto;display:grid;grid-template-columns:1fr 1fr;gap:9px}
 .app-update-actions button{min-height:48px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){.app-update-card{animation:none}}

/* Manual app update control in the Info panel. */
.info-update-check{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0 4px;padding:14px;border:1px solid #dce6dc;border-radius:14px;background:#f5f8f3}
.info-update-check>div{min-width:0}
.info-update-check strong{display:block;color:#294536;font-size:14px}
.info-update-check p{margin:4px 0 0;color:#667568;font-size:12px;line-height:1.45}
.info-update-check-button{flex:0 0 auto;min-height:40px;padding:9px 13px;border:0;border-radius:10px;background:#294536;color:#fff;font-size:12px;font-weight:800;cursor:pointer}
.info-update-check-button:disabled{opacity:.6;cursor:wait}
@media(max-width:520px){.info-update-check{align-items:stretch;flex-direction:column}.info-update-check-button{width:100%}}


/* Scroll hint is intentionally suppressed inside native dialogs so it cannot cover actions. */
dialog[open] .gf-scroll-arrow-hint{display:none!important}

/* Profile action controls: hard-lock equal dimensions so global touch-target rules cannot stretch circles into pills. */
.profile-avatar-edit-button,.profile-page-shell>.x{border-radius:50%!important;aspect-ratio:1;}
.profile-avatar-edit-button{min-height:34px!important;height:34px!important;max-height:34px!important;min-width:34px!important;width:34px!important;max-width:34px!important;}
.profile-page-shell>.x{min-height:42px!important;height:42px!important;max-height:42px!important;min-width:42px!important;width:42px!important;max-width:42px!important;}

/* Keep the profile editor close affordance circular despite inherited/global button rules. */
.profile-customise-panel .profile-customise-panel-heading>.profile-customise-close{box-sizing:border-box!important;display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;padding:0!important;border-radius:50%!important;aspect-ratio:1!important;}
.profile-customise-panel .profile-banner-choices button.is-locked{opacity:.62;cursor:not-allowed;filter:saturate(.55)}
.profile-customise-panel .profile-banner-choices button:focus-visible{outline:3px solid #d5aa38;outline-offset:2px}


/* Hidden attribute must win over component display rules. */
.reduction-evidence-upload[hidden],.reduction-extra-fields[hidden],.reduction-evidence-preview[hidden]{display:none!important}

/* Reduced-to-clear evidence and shelf quantity reporting */
.reduction-evidence-upload,.reduction-extra-fields{display:flex;flex-direction:column;gap:10px;min-width:0}
.reduction-evidence-heading{display:flex;flex-direction:column;gap:4px;color:#25364d}
.reduction-evidence-heading strong{font-size:15px;font-weight:850}
.reduction-evidence-heading span{font-size:12px;line-height:1.4;color:#68788e}
.reduction-photo-picker{display:flex;align-items:center;gap:12px;min-height:72px;padding:12px;border:1.5px dashed #c5a34e;border-radius:13px;background:#fff9e9;color:#634b19;cursor:pointer}
.reduction-photo-picker>span:first-child{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#f8edcc;font-size:22px}
.reduction-photo-picker>span:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}
.reduction-photo-picker strong{font-size:14px;font-weight:800}
.reduction-photo-picker small{font-size:11px;line-height:1.35;color:#806b3f}
.reduction-photo-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.reduction-photo-picker:focus-within{outline:3px solid #d7b95e;outline-offset:2px}
.reduction-evidence-preview{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #e4d6ad;border-radius:11px;background:#fffdf6}
.reduction-evidence-preview img{width:66px;height:66px;object-fit:cover;border-radius:8px}
.reduction-evidence-preview span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:12px;color:#5e4b24}
.reduction-evidence-preview button{font-size:12px;padding:7px 9px}
.reduction-extra-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.reduction-extra-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:750;color:#35465c}
.reduction-extra-fields input{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#25364d;font-size:16px}
.deal-stock-check{margin:14px 0;padding:15px;border:1px solid #dbe4ee;border-radius:15px;background:#f7f9fc}
.deal-stock-check>strong{display:block;font-size:15px;color:#24364e}
.deal-stock-check>p{margin:4px 0 10px;font-size:12px;color:#65748a}
.deal-stock-check .deal-detail-vote{grid-template-columns:repeat(3,minmax(0,1fr))}
.deal-stock-check .deal-detail-vote button{padding:10px 6px;font-size:12px;min-height:46px}
.deal-stock-summary{display:block;margin-top:8px;color:#68788e;font-size:11px;text-align:center}
.reduction-evidence-detail{margin:14px 0;padding:10px;border:1px solid #e6d8ad;border-radius:14px;background:#fffaf0}
.reduction-evidence-detail img{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:9px;background:#fff}
.reduction-evidence-detail figcaption{padding-top:7px;color:#806b3f;font-size:11px;text-align:center}
.reduction-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.reduction-meta span{padding:7px 9px;border-radius:8px;background:#fff7e5;color:#745820;font-size:11px}
@media(max-width:520px){.reduction-extra-fields{grid-template-columns:1fr}.deal-stock-check .deal-detail-vote{grid-template-columns:1fr}.reduction-evidence-preview{align-items:flex-start;flex-wrap:wrap}}

/* Three distinct deal categories, chosen before the rest of the report form. */
.deal-type-picker-first{margin:12px 0 18px;padding:14px;border:1px solid #dce4ec;border-radius:16px;background:#f8fafc}
.deal-type-picker-first .deal-type-label{display:block;margin-bottom:11px;font-size:16px;font-weight:850;color:#263b30}
.deal-type-picker-first .deal-type-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.deal-type-picker-first .deal-type-choice{min-width:0;min-height:142px;padding:11px 7px;gap:7px}
.deal-type-picker-first .deal-type-choice svg{width:48px;height:42px}
.deal-type-picker-first .deal-type-choice strong{font-size:13px;line-height:1.2;text-align:center}
.deal-type-picker-first .deal-type-choice small{font-size:10px;line-height:1.3;text-align:center}
.deal-type-picker-first .deal-type-choice[data-deal-type="clearance"].selected{border-color:#315b91;background:#edf3ff;box-shadow:0 0 0 2px #315b91 inset}
.category-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
.category-tile:nth-child(4)>span{color:#315b91}
#useByField[hidden]{display:none!important}
@media(max-width:420px){.deal-type-picker-first{padding:10px}.deal-type-picker-first .deal-type-choices{gap:6px}.deal-type-picker-first .deal-type-choice{min-height:132px;padding:9px 5px}.deal-type-picker-first .deal-type-choice strong{font-size:12px}.deal-type-picker-first .deal-type-choice small{font-size:9px}}

.shelf-ticket-tip[hidden]{display:none!important}

/* Favourite supermarket preferences — shared between onboarding and account settings. */
.supermarket-preferences-heading strong{display:block;font-size:15px;color:var(--navy)}
.supermarket-preferences-heading p,.supermarket-setup-copy{margin:5px 0 12px;color:var(--muted);font-size:12px;line-height:1.45}
.supermarket-favourites-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.supermarket-favourite-option{display:flex;align-items:center;gap:9px;min-width:0;min-height:42px;padding:8px 10px;border:1px solid #dce5ef;border-radius:11px;background:#f8fafc;color:#29415e;font-size:13px;font-weight:700;cursor:pointer}
.supermarket-favourite-option:has(input:checked){border-color:#2d76c5;background:#edf5ff;color:#173b68;box-shadow:inset 0 0 0 1px #2d76c5}
.supermarket-favourite-option input{width:17px;height:17px;flex:0 0 17px;margin:0;accent-color:#176b45}
.supermarket-preferences .supermarket-favourites-grid{margin:12px 0}
.supermarket-preferences-status{display:block;min-height:17px;margin-top:7px;color:var(--muted);font-size:12px}
.setup-supermarket-section .supermarket-favourites-grid{margin-top:12px}
@media(max-width:360px){.supermarket-favourites-grid{grid-template-columns:1fr}}

/* Four distinct deal-category markers and responsive filters. */
.deal-type-badge{display:inline-flex;align-items:center;gap:4px;width:max-content;max-width:100%;padding:3px 7px;border-radius:7px;font-size:10px;font-weight:850;line-height:1.2;white-space:nowrap}
.deal-type-offer{background:#edf3ed;color:#356343}.deal-type-reduced{background:#fff3c8;color:#8a6100}.deal-type-clearance{background:#eaf0ff;color:#315b91}.deal-type-price-hold{background:#e5f4e8;color:#21663a}
#feed .deal-row-topline{flex-wrap:wrap}.deal-row-topline .deal-type-badge{flex:0 0 auto}
.deal-type-picker-first .deal-type-choices{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:760px){.category-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.deal-type-picker-first .deal-type-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.deal-type-picker-first .deal-type-choice{min-height:118px}}




/* Alpha v1.0.16 — compact five-across category selector. */
@media(max-width:760px){
  .community-stats{
    width:100%!important;margin:7px 0 10px!important;padding:10px 13px!important;
    border:1px solid #dce5d7!important;border-radius:14px!important;
    background:#f6f8f1!important;box-shadow:none!important;
  }
  .community-stats-heading{margin:0 0 7px!important;padding:0!important;font-size:10px!important;line-height:1.2!important;letter-spacing:.09em!important}
  .community-stats-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .community-stat{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;min-height:30px!important;padding:0!important;gap:7px!important;border:0!important;background:transparent!important}
  .community-stat-icon{display:none!important}
  .community-stat strong{flex:0 0 auto!important;min-width:0!important;color:#244d36!important;font:850 19px/1 Manrope,sans-serif!important}
  .community-stat>span:last-child{min-width:0!important;color:#667765!important;font-size:10px!important;line-height:1.15!important;font-weight:700!important}

  .category-tiles{
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;margin:0 0 9px!important;
  }
  .category-tile{
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
    min-width:0!important;min-height:68px!important;aspect-ratio:1/1!important;
    padding:6px 3px!important;gap:5px!important;
    border:1px solid #dbe3ee!important;border-radius:11px!important;
    background:#fff!important;color:#29476e!important;box-shadow:none!important;
  }
  .category-tile:nth-child(4),.category-tile:nth-child(5){grid-column:auto!important}
  .category-tile .category-icon{
    display:grid!important;place-items:center!important;flex:0 0 22px!important;
    width:22px!important;height:22px!important;background:transparent!important;color:#3478bd!important;
  }
  .category-tile .category-icon svg{
    display:block!important;width:22px!important;height:22px!important;
    stroke:currentColor!important;stroke-width:2.1!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  }
  .category-tile:nth-child(2) .category-icon{color:#299365!important}
  .category-tile:nth-child(3) .category-icon{color:#c38b12!important}
  .category-tile:nth-child(4) .category-icon{color:#315b91!important}
  .category-tile:nth-child(5) .category-icon{color:#287344!important}
  .category-tile strong{
    display:block!important;min-width:0!important;max-width:100%!important;
    font-size:8px!important;line-height:1.08!important;font-weight:800!important;
    text-align:center!important;overflow-wrap:anywhere!important;
  }
  .category-tile.active{
    border-color:#347bc2!important;background:#edf4fd!important;
    box-shadow:inset 0 0 0 1px #347bc2!important;
  }
}
@media(max-width:380px){
  .community-stats{padding:9px 10px!important}
  .community-stats-grid{gap:7px!important}
  .community-stat{gap:5px!important}
  .community-stat strong{font-size:17px!important}
  .community-stat>span:last-child{font-size:9px!important}
  .category-tiles{gap:4px!important}
  .category-tile{min-height:62px!important;padding:5px 2px!important;gap:4px!important;border-radius:9px!important}
  .category-tile .category-icon,.category-tile .category-icon svg{width:20px!important;height:20px!important;flex-basis:20px!important}
  .category-tile strong{font-size:7.5px!important}
}


/* Alpha v1.0.18 — visual polish for the deal feed heading and filter controls. */
@media(max-width:760px){
  .feed-heading{
    display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
    gap:8px!important;margin:15px 0 11px!important;padding:0 2px!important;
  }
  .feed-heading-title{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important}
  .feed-heading-eyebrow{
    display:block!important;color:#71836f!important;font-size:8px!important;
    line-height:1.2!important;font-weight:850!important;letter-spacing:.13em!important;
  }
  .feed-heading h2{
    margin:0!important;color:#203b2d!important;font-size:25px!important;
    line-height:1.08!important;letter-spacing:-.8px!important;
  }
  .feed-heading .heading-actions{display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important}
  .feed-heading #count{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    min-height:29px!important;padding:0 9px!important;border:1px solid #dce7d8!important;
    border-radius:999px!important;background:#f4f8f0!important;color:#506b50!important;
    font-size:10px!important;font-weight:800!important;white-space:nowrap!important;
  }
  .feed-heading .refresh-button{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;
    min-height:34px!important;padding:0 10px!important;border:1px solid #d9e3d5!important;
    border-radius:11px!important;background:linear-gradient(180deg,#fff 0%,#f5f8f1 100%)!important;
    color:#31563e!important;font-size:10px!important;font-weight:800!important;
    box-shadow:0 2px 5px rgba(35,59,42,.06)!important;
  }
  .feed-heading .refresh-button span{font-size:15px!important;line-height:1!important}
  .compact-filters{padding:9px!important;border:1px solid #e7e5d9!important;border-radius:17px!important;background:linear-gradient(180deg,#fffdf8 0%,#faf7ef 100%)!important;box-shadow:0 5px 16px rgba(65,69,52,.055)!important}
  .category-tiles{gap:6px!important;margin:0 0 9px!important}
  .category-tile{
    position:relative!important;min-height:69px!important;aspect-ratio:1/1!important;
    padding:7px 3px!important;gap:6px!important;border:1px solid #e0e6e9!important;
    border-radius:13px!important;background:linear-gradient(160deg,#fff 0%,#f8fafb 100%)!important;
    color:#29476e!important;box-shadow:0 2px 5px rgba(35,55,75,.045)!important;
    transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease!important;
  }
  .category-tile .category-icon{
    display:grid!important;place-items:center!important;width:29px!important;height:29px!important;
    flex:0 0 29px!important;border-radius:10px!important;background:#edf3fa!important;color:#3478bd!important;
  }
  .category-tile .category-icon svg{
    width:19px!important;height:19px!important;stroke:currentColor!important;
    stroke-width:2.15!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  }
  .category-tile:nth-child(2) .category-icon{background:#eaf5ef!important;color:#299365!important}
  .category-tile:nth-child(3) .category-icon{background:#fff5df!important;color:#b9820d!important}
  .category-tile:nth-child(4) .category-icon{background:#edf2f9!important;color:#315b91!important}
  .category-tile:nth-child(5) .category-icon{background:#eaf4ed!important;color:#287344!important}
  .category-tile strong{font-size:8px!important;line-height:1.1!important;font-weight:850!important;letter-spacing:.005em!important}
  .category-tile.active{
    border:1.5px solid #4385c6!important;
    background:linear-gradient(160deg,#f3f8ff 0%,#e8f1fc 100%)!important;
    box-shadow:0 3px 9px rgba(52,123,194,.13),inset 0 0 0 1px rgba(52,123,194,.16)!important;
  }
  .category-tile.active .category-icon{background:#dceafb!important;color:#246bb0!important}
  .advanced-filter-row{gap:6px!important;margin:0!important}
  .sort-control,.store-control{
    padding:7px 8px!important;border:1px solid #e1e6e8!important;border-radius:12px!important;
    background:linear-gradient(180deg,#fff 0%,#f7f9f8 100%)!important;
    box-shadow:0 2px 5px rgba(35,55,75,.035)!important;
  }
  .sort-control>span:first-child,.store-control>span:first-child{color:#64806b!important}
  .sort-control select,.store-control select{color:#294b37!important}
  .extra-filters summary{
    border:1px solid #e1e6e8!important;border-radius:12px!important;
    background:linear-gradient(180deg,#fff 0%,#f7f9f8 100%)!important;
    color:#294b37!important;box-shadow:0 2px 5px rgba(35,55,75,.035)!important;
  }
}
@media(max-width:380px){
  .feed-heading h2{font-size:23px!important}
  .feed-heading-eyebrow{font-size:7px!important}
  .category-tile{min-height:64px!important;border-radius:11px!important}
  .category-tile .category-icon{width:26px!important;height:26px!important;flex-basis:26px!important;border-radius:9px!important}
  .category-tile strong{font-size:7.5px!important}
}

/* Alpha v1.0.19 — Ko-fi support card */


/* Alpha v1.0.22 — position the permanent support shortcut clear of Share a Deal. */
.floating-support{position:fixed;z-index:80;right:6px;bottom:calc(78px + env(safe-area-inset-bottom) + 10px);display:inline-flex;align-items:center;gap:8px;min-height:39px;padding:0 14px 0 11px;border:1px solid #e5c49d;border-radius:999px;background:rgba(255,249,240,.97);color:#75451e;text-decoration:none;font-size:11px;font-weight:850;letter-spacing:.01em;box-shadow:0 4px 14px rgba(34,48,39,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .16s ease,box-shadow .16s ease}
.floating-support:hover,.floating-support:focus-visible{transform:translateY(-2px);box-shadow:0 7px 18px rgba(34,48,39,.19);outline:2px solid #bd8852;outline-offset:2px}
.floating-support-heart{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#f7e4ce;color:#a65b2b;font-size:13px}
.floating-support[hidden]{display:none!important}
body:has(dialog[open]) .floating-support{display:none!important}
@media(min-width:761px){.floating-support{right:16px;bottom:calc(24px + env(safe-area-inset-bottom));}}
@media(max-width:380px){.floating-support{right:3px;min-height:36px;padding:0 11px 0 9px;font-size:10px}}
body.support-keyboard-open .floating-support{display:none!important}


/* Alpha v1.0.23 — clean heart icon with a gentle heartbeat. */
.floating-support-heart{width:24px;height:24px;flex:0 0 24px;border-radius:0;background:transparent;color:#a65b2b;font-size:24px;line-height:1;transform-origin:center;animation:goodfinds-heartbeat 2.4s ease-in-out infinite}
@keyframes goodfinds-heartbeat{0%,12%,28%,100%{transform:scale(1)}6%,20%{transform:scale(1.16)}34%{transform:scale(1.04)}}
@media(prefers-reduced-motion:reduce){.floating-support-heart{animation:none}}


/* Alpha v1.0.24 — illustrated category placeholders for products without photos. */
.product-category-placeholder{display:grid;place-items:center;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;border-radius:inherit;background:linear-gradient(145deg,#f8f8f2,#eef2e8)}
.product-category-icon{display:grid;place-items:center;width:100%;height:100%;font-size:clamp(34px,7vw,54px);line-height:1;filter:drop-shadow(0 3px 2px rgba(45,55,40,.10))}
.product-category-placeholder.category-fruit{background:linear-gradient(145deg,#fff5e8,#fce8d7)}
.product-category-placeholder.category-vegetables{background:linear-gradient(145deg,#f2f8e9,#e5f0dc)}
.product-category-placeholder.category-drinks{background:linear-gradient(145deg,#eaf5fb,#dceef6)}
.product-category-placeholder.category-dairy{background:linear-gradient(145deg,#f4f5fb,#e8ebf5)}
.product-category-placeholder.category-meat{background:linear-gradient(145deg,#fff0ed,#f8e1dc)}
.product-category-placeholder.category-bakery{background:linear-gradient(145deg,#fff6e8,#f5e8d1)}
.product-category-placeholder.category-snacks{background:linear-gradient(145deg,#fff3e8,#f7e5d7)}
.product-category-placeholder.category-frozen{background:linear-gradient(145deg,#edf6fb,#dfedf5)}
.product-category-placeholder.category-household{background:linear-gradient(145deg,#eef4f8,#e1ebf0)}
.deal-row-image .product-category-placeholder{border-radius:inherit}
.deal-detail-hero-image .product-category-placeholder{border-radius:13px}


/* Alpha v1.0.25 — reduce excess vertical space in mobile deal cards. */
@media(max-width:760px){
 #feed.grid{gap:8px!important}
 #feed .deal-row{
  grid-template-columns:76px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  padding:9px!important;
  border-radius:15px!important;
 }
 #feed .deal-row-image{width:76px!important;height:76px!important;border-radius:11px!important}
 #feed .deal-row-content{gap:3px!important;justify-content:center!important}
 #feed .deal-row-topline{gap:5px!important;min-height:0!important;flex-wrap:wrap!important;row-gap:4px!important}
 #feed .deal-row-topline .compact-time{padding:3px 6px!important;font-size:9px!important}
 #feed .deal-type-badge{padding:3px 7px!important;font-size:9px!important;line-height:1.15!important}
 #feed .deal-row-topline .store-pill{padding:3px 7px!important;font-size:10px!important;line-height:1.15!important}
 #feed .deal-distance{font-size:10px!important;line-height:1.2!important}
 #feed .deal-row h3{font-size:14px!important;line-height:1.18!important}
 #feed .deal-row-bottomline{gap:5px!important}
 #feed .deal-row-price{gap:5px!important;min-height:0!important}
 #feed .compact-price{font-size:18px!important;line-height:1.05!important}
 #feed .deal-row-price .old{font-size:10px!important}
 #feed .compact-saving{font-size:10px!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{flex-basis:30px!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{font-size:27px!important}
 #feed .feed-accuracy{min-height:20px!important;margin:2px 0 0!important;padding:3px 7px!important;gap:5px!important}
 #feed .feed-accuracy .feed-accuracy-icon{font-size:10px!important}
 #feed .feed-accuracy strong,#feed .feed-accuracy small{font-size:8px!important}
}
@media(max-width:380px){
 #feed .deal-row{grid-template-columns:68px minmax(0,1fr)!important;gap:8px!important}
 #feed .deal-row-image{width:68px!important;height:68px!important}
 #feed .deal-row h3{font-size:13px!important}
 #feed .compact-price{font-size:17px!important}
}


/* Alpha v1.0.26 — compact, price-led deal cards on mobile. */
@media(max-width:760px){
 #feed.grid{gap:7px!important}
 #feed .deal-row{
  grid-template-columns:66px minmax(0,1fr)!important;
  align-items:center!important;
  gap:9px!important;
  padding:8px!important;
  border-radius:14px!important;
 }
 #feed .deal-row-image{width:66px!important;height:66px!important;border-radius:10px!important}
 #feed .deal-row-content{gap:2px!important;justify-content:center!important}
 #feed .deal-row-topline{gap:4px!important;row-gap:3px!important;min-height:0!important;flex-wrap:wrap!important}
 #feed .deal-row-topline .compact-time{padding:3px 5px!important;font-size:8px!important}
 #feed .deal-type-badge{padding:3px 6px!important;font-size:8px!important;line-height:1.1!important}
 #feed .deal-row-topline .store-pill{padding:3px 6px!important;font-size:9px!important;line-height:1.1!important;border-radius:6px!important}
 #feed .deal-distance{font-size:9px!important;line-height:1.1!important}
 #feed .deal-row h3{font-size:13px!important;line-height:1.15!important;letter-spacing:-.12px!important}
 #feed .deal-row-bottomline{gap:4px!important}
 #feed .deal-row-price{gap:5px!important;min-height:0!important;align-items:center!important}
 #feed .compact-price{
  display:inline-flex!important;align-items:center!important;
  min-height:29px!important;padding:4px 9px!important;
  border:1px solid #b9dfc7!important;border-radius:9px!important;
  background:linear-gradient(135deg,#f0fbf4,#e1f4e8)!important;
  color:#145b36!important;font-size:19px!important;font-weight:950!important;
  line-height:1!important;letter-spacing:-.45px!important;
  box-shadow:0 2px 7px rgba(28,128,70,.10)!important;
  animation:goodfinds-price-glow 3.6s ease-in-out infinite!important;
 }
 #feed .deal-row-price .old{font-size:9px!important}
 #feed .compact-saving{font-size:9px!important;font-weight:850!important;color:#197344!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{flex-basis:28px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{font-size:25px!important}
 #feed .feed-accuracy{min-height:18px!important;margin:1px 0 0!important;padding:2px 6px!important;gap:4px!important}
 #feed .feed-accuracy .feed-accuracy-icon{font-size:9px!important}
 #feed .feed-accuracy strong,#feed .feed-accuracy small{font-size:7px!important}
 #feed .deal-row.deal-signal-good,#feed .deal-row.deal-signal-bad,#feed .deal-row.deal-signal-warn,#feed .deal-row.deal-signal-early,#feed .deal-row.deal-signal-muted{box-shadow:0 4px 12px rgba(29,53,82,.075)!important}
}
@keyframes goodfinds-price-glow{
 0%,100%{box-shadow:0 2px 7px rgba(28,128,70,.09);border-color:#b9dfc7}
 50%{box-shadow:0 3px 11px rgba(28,128,70,.19);border-color:#91cba7}
}
@media(prefers-reduced-motion:reduce){#feed .compact-price{animation:none!important}}
@media(max-width:380px){
 #feed .deal-row{grid-template-columns:60px minmax(0,1fr)!important;gap:7px!important;padding:7px!important}
 #feed .deal-row-image{width:60px!important;height:60px!important}
 #feed .deal-row h3{font-size:12px!important}
 #feed .compact-price{font-size:18px!important;padding:4px 7px!important}
}


/* Alpha v1.0.27 — align mobile deal details and remove wasted card height. */
@media(max-width:760px){
 #feed.grid{gap:6px!important}
 #feed .deal-row{grid-template-columns:58px minmax(0,1fr)!important;align-items:center!important;gap:8px!important;padding:7px 8px!important;border-radius:13px!important}
 #feed .deal-row-image{width:58px!important;height:58px!important;border-radius:9px!important;align-self:center!important}
 #feed .deal-row-content{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;min-width:0!important}
 #feed .deal-row-topline{display:flex!important;align-items:center!important;gap:4px!important;min-height:0!important;flex-wrap:nowrap!important;overflow:hidden!important}
 #feed .deal-row-topline .compact-time{font-size:8px!important;padding:3px 5px!important;flex:0 0 auto!important}
 #feed .deal-row-topline .deal-type-badge{font-size:8px!important;padding:3px 5px!important;white-space:nowrap!important;flex:0 1 auto!important;min-width:0!important}
 #feed .deal-row-topline .store-pill{font-size:9px!important;padding:3px 6px!important;white-space:nowrap!important;flex:0 1 auto!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
 #feed .deal-row h3{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:5px!important;min-width:0!important;margin:0!important;font-size:13px!important;line-height:1.14!important;letter-spacing:-.12px!important}
 #feed .deal-product-title{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
 #feed .deal-distance{display:inline-block!important;flex:0 0 auto!important;margin:0!important;font-size:8px!important;line-height:1.1!important;white-space:nowrap!important;color:#718096!important}
 #feed .deal-row-bottomline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important;width:100%!important;min-width:0!important}
 #feed .deal-row-price{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important;gap:4px!important;flex-wrap:wrap!important}
 #feed .compact-price{min-height:25px!important;padding:3px 7px!important;font-size:17px!important;border-radius:8px!important}
 #feed .deal-row-price .old{font-size:9px!important}
 #feed .compact-saving{font-size:9px!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{position:static!important;flex:0 0 25px!important;width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;margin:0 1px 0 0!important;padding:0!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{font-size:23px!important;line-height:1!important}
 #feed .feed-accuracy{align-self:flex-end!important;min-height:16px!important;margin:0!important;padding:2px 5px!important;gap:3px!important}
 #feed .feed-accuracy .feed-accuracy-icon{font-size:8px!important}
 #feed .feed-accuracy strong,#feed .feed-accuracy small{font-size:7px!important;line-height:1!important}
}
@media(max-width:380px){
 #feed .deal-row{grid-template-columns:54px minmax(0,1fr)!important;gap:7px!important;padding:6px!important}
 #feed .deal-row-image{width:54px!important;height:54px!important}
 #feed .deal-row h3{font-size:12px!important}
 #feed .deal-row-topline .store-pill{max-width:104px!important}
 #feed .compact-price{font-size:16px!important}
}

/* Alpha v1.0.28 — cohesive compact deal cards and shared rounded favourite star. */
.favourite-star-svg{display:block;width:100%;height:100%;overflow:visible}
.card-favourite .favourite-star-svg{width:25px;height:25px}
.deal-detail-favourite-star .favourite-star-svg{width:22px;height:22px}
.favourite-product-button .favourite-star-svg{width:19px;height:19px;flex:0 0 19px}
@media(max-width:760px){
 #feed.grid{gap:7px!important}
 #feed .deal-row{grid-template-columns:62px minmax(0,1fr)!important;gap:9px!important;padding:8px!important;border-radius:15px!important;align-items:center!important}
 #feed .deal-row-image{width:62px!important;height:62px!important;border-radius:11px!important;align-self:center!important}
 #feed .deal-row-content{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto auto!important;gap:4px!important;min-width:0!important;align-content:center!important}
 #feed .deal-row-topline{display:flex!important;align-items:center!important;gap:5px!important;min-height:0!important;flex-wrap:nowrap!important;overflow:hidden!important}
 #feed .deal-row-topline .compact-time{font-size:8px!important;padding:3px 5px!important;flex:0 0 auto!important}
 #feed .deal-row-topline .deal-type-badge{font-size:8px!important;padding:3px 6px!important;white-space:nowrap!important;flex:0 1 auto!important;min-width:0!important}
 #feed .deal-row-topline .store-pill{font-size:9px!important;padding:3px 6px!important;white-space:nowrap!important;flex:0 1 auto!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
 #feed .deal-row h3{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:6px!important;min-width:0!important;margin:0!important;font-size:13px!important;line-height:1.16!important;letter-spacing:-.12px!important}
 #feed .deal-product-title{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
 #feed .deal-distance{display:inline-block!important;flex:0 0 auto!important;margin:0!important;font-size:8px!important;line-height:1.1!important;white-space:nowrap!important;color:#718096!important}
 #feed .deal-row-bottomline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:6px!important;width:100%!important;min-width:0!important;min-height:28px!important}
 #feed .deal-row-price{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important;gap:5px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
 #feed .compact-price{display:inline-flex!important;align-items:center!important;min-height:27px!important;padding:3px 8px!important;font-size:18px!important;border-radius:9px!important;flex:0 0 auto!important}
 #feed .deal-row-price .old{font-size:9px!important}
 #feed .compact-saving{font-size:9px!important;white-space:nowrap!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{position:static!important;display:grid!important;place-items:center!important;flex:0 0 29px!important;width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;margin:0 0 0 auto!important;padding:2px!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;color:#65758a!important;visibility:visible!important;opacity:1!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{content:none!important;display:none!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite .favourite-star-svg{width:25px!important;height:25px!important}
 #feed .feed-accuracy{display:flex!important;align-items:center!important;justify-self:end!important;align-self:center!important;width:max-content!important;max-width:100%!important;min-height:17px!important;margin:0!important;padding:2px 6px!important;gap:4px!important;border-radius:999px!important}
 #feed .feed-accuracy .feed-accuracy-icon{font-size:8px!important}
 #feed .feed-accuracy strong,#feed .feed-accuracy small{font-size:7px!important;line-height:1!important}
}
@media(max-width:380px){
 #feed .deal-row{grid-template-columns:56px minmax(0,1fr)!important;gap:7px!important;padding:7px!important}
 #feed .deal-row-image{width:56px!important;height:56px!important}
 #feed .deal-row h3{font-size:12px!important}
 #feed .deal-row-topline .store-pill{max-width:104px!important}
 #feed .compact-price{font-size:17px!important}
 #feed .deal-row-price{gap:4px!important}
}

/* Alpha v1.0.29 — final mobile card geometry; supersedes conflicting legacy rules. */
@media(max-width:760px){
 #feed.grid{gap:7px!important}
 #feed .deal-row{grid-template-columns:62px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;padding:9px 10px!important;min-height:0!important;height:auto!important;border-radius:16px!important}
 #feed .deal-row-image{width:62px!important;height:62px!important;min-height:62px!important;border-radius:11px!important;align-self:center!important}
 #feed .deal-row-content{display:flex!important;flex-direction:column!important;justify-content:center!important;align-self:center!important;gap:5px!important;min-width:0!important;height:auto!important}
 #feed .deal-row-topline{display:flex!important;align-items:center!important;gap:5px!important;min-height:0!important;flex-wrap:nowrap!important;overflow:hidden!important}
 #feed .deal-row-topline .compact-time{font-size:8px!important;padding:3px 5px!important;flex:0 0 auto!important}
 #feed .deal-row-topline .deal-type-badge{font-size:8px!important;padding:3px 6px!important;white-space:nowrap!important;flex:0 1 auto!important;min-width:0!important}
 #feed .deal-row-topline .store-pill{font-size:9px!important;padding:3px 6px!important;white-space:nowrap!important;flex:0 1 auto!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
 #feed .deal-row h3{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:6px!important;min-width:0!important;margin:0!important;font-size:13px!important;line-height:1.16!important}
 #feed .deal-product-title{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
 #feed .deal-distance{display:inline-block!important;flex:0 0 auto!important;margin:0!important;font-size:8px!important;line-height:1.1!important;white-space:nowrap!important;color:#718096!important}
 #feed .deal-row-bottomline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:6px!important;width:100%!important;min-width:0!important;min-height:0!important}
 #feed .deal-row-price{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important;gap:5px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
 #feed .compact-price{display:inline-flex!important;align-items:center!important;min-height:27px!important;padding:3px 8px!important;font-size:18px!important;border-radius:9px!important;flex:0 0 auto!important}
 #feed .deal-row-price .old{font-size:9px!important}
 #feed .compact-saving{font-size:9px!important;white-space:nowrap!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{position:static!important;display:grid!important;place-items:center!important;flex:0 0 29px!important;width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;margin:0 0 0 auto!important;padding:2px!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;color:#65758a!important;visibility:visible!important;opacity:1!important;overflow:visible!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{content:none!important;display:none!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite .favourite-star-svg{display:block!important;width:25px!important;height:25px!important}
 #feed .feed-accuracy{display:flex!important;align-items:center!important;align-self:flex-end!important;justify-self:auto!important;width:max-content!important;max-width:100%!important;min-height:17px!important;margin:0!important;padding:2px 6px!important;gap:4px!important;border-radius:999px!important}
 #feed .feed-accuracy .feed-accuracy-icon{font-size:8px!important}
 #feed .feed-accuracy strong,#feed .feed-accuracy small{font-size:7px!important;line-height:1!important}
}
@media(max-width:380px){#feed .deal-row{grid-template-columns:56px minmax(0,1fr)!important;gap:7px!important;padding:8px!important}#feed .deal-row-image{width:56px!important;height:56px!important;min-height:56px!important}#feed .deal-row h3{font-size:12px!important}#feed .deal-row-topline .store-pill{max-width:104px!important}#feed .compact-price{font-size:17px!important}#feed .deal-row-price{gap:4px!important}}

/* Alpha v1.0.30 — feed cards follow the approved horizontal reference layout. */
@media(max-width:760px){
 #feed.grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
 #feed .deal-row{
  display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;
  align-items:center!important;gap:12px!important;padding:10px 11px!important;
  min-height:0!important;height:auto!important;border-radius:17px!important;
  background:#fff!important;border:1px solid #dce5ef!important;
  box-shadow:0 4px 13px rgba(27,55,89,.07)!important;
 }
 #feed .deal-row-image{display:grid!important;place-items:center!important;width:76px!important;height:76px!important;min-height:76px!important;overflow:hidden!important;border-radius:14px!important;align-self:center!important;background:#f1f5f0!important}
 #feed .deal-row-image .deal-product-image{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:14px!important}
 #feed .deal-row-content{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;min-width:0!important;align-self:center!important}
 #feed .deal-row-topline{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;min-height:0!important;flex-wrap:nowrap!important;overflow:hidden!important}
 #feed .deal-row-topline .compact-time{flex:0 0 auto!important;padding:4px 8px!important;border-radius:99px!important;background:#eef0f2!important;color:#454b52!important;font-size:9px!important;font-weight:700!important;line-height:1.2!important}
 #feed .deal-row-topline .deal-type-badge{flex:0 1 auto!important;min-width:0!important;padding:4px 9px!important;border:0!important;border-radius:99px!important;background:#fce9e2!important;color:#934b31!important;font-size:9px!important;font-weight:750!important;line-height:1.2!important;white-space:nowrap!important}
 #feed .deal-row-topline .store-pill{flex:0 1 auto!important;min-width:0!important;max-width:90px!important;padding:4px 9px!important;border:0!important;border-radius:99px!important;background:#def3e8!important;color:#23784b!important;font-size:9px!important;font-weight:800!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 #feed .deal-row h3{display:block!important;margin:0!important;min-width:0!important;color:#15191f!important;font-size:15px!important;font-weight:800!important;line-height:1.18!important;letter-spacing:-.2px!important}
 #feed .deal-product-title{display:-webkit-box!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
 #feed .deal-row-bottomline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;min-width:0!important;min-height:0!important}
 #feed .deal-row-price{display:flex!important;align-items:baseline!important;flex:1 1 auto!important;min-width:0!important;gap:7px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
 #feed .compact-price{display:inline!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;color:#17633f!important;font-size:23px!important;font-weight:900!important;line-height:1.05!important;letter-spacing:-.6px!important;box-shadow:none!important;animation:none!important}
 #feed .deal-row-price .old{font-size:12px!important;color:#73777e!important;text-decoration:line-through!important}
 #feed .compact-saving{font-size:12px!important;font-weight:800!important;color:#176b43!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{display:grid!important;place-items:center!important;position:static!important;flex:0 0 31px!important;width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important;margin:0 0 0 auto!important;padding:2px!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;color:#62666b!important;visibility:visible!important;opacity:1!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{content:none!important;display:none!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite .favourite-star-svg{display:block!important;width:29px!important;height:29px!important}
 #feed .deal-row-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;min-width:0!important}
 #feed .deal-row-footer .feed-accuracy{display:flex!important;align-items:center!important;justify-self:auto!important;align-self:center!important;width:auto!important;max-width:70%!important;min-height:0!important;margin:0!important;padding:0!important;gap:4px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#62666b!important}
 #feed .deal-row-footer .feed-accuracy-icon{display:none!important}
 #feed .deal-row-footer .feed-accuracy strong,#feed .deal-row-footer .feed-accuracy small{font-size:10px!important;line-height:1.2!important;font-weight:500!important;letter-spacing:0!important;color:#62666b!important}
 #feed .deal-row-footer .feed-accuracy small:before{content:"·";padding:0 3px}
 #feed .deal-row-footer .deal-distance{display:block!important;flex:0 0 auto!important;margin:0!important;font-size:11px!important;line-height:1.2!important;font-weight:500!important;color:#62666b!important;white-space:nowrap!important}
}
@media(max-width:380px){
 #feed .deal-row{grid-template-columns:68px minmax(0,1fr)!important;gap:9px!important;padding:9px!important}
 #feed .deal-row-image{width:68px!important;height:68px!important;min-height:68px!important}
 #feed .deal-row h3{font-size:14px!important}
 #feed .compact-price{font-size:21px!important}
 #feed .deal-row-price{gap:5px!important}
 #feed .compact-saving{font-size:10px!important}
 #feed .deal-row-topline .store-pill{max-width:70px!important}
}

/* Alpha v1.0.31 — restore retailer brand colour and tighten vertical rhythm. */
@media(max-width:760px){
 #feed .deal-row-topline .store-pill{background:#00543f!important;color:#fff!important;border:0!important;box-shadow:none!important}
 #feed .deal-row-image{align-self:start!important;transform:translateY(-13px)!important}
 #feed .deal-row-content{gap:3px!important}
 #feed .deal-row-bottomline{display:grid!important;grid-template-columns:minmax(0,1fr) 31px!important;align-items:center!important;justify-content:stretch!important;gap:5px!important;min-height:0!important}
 #feed .deal-row-price{grid-column:1!important;grid-row:1!important;align-self:center!important;min-height:0!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{grid-column:2!important;grid-row:1!important;align-self:center!important;justify-self:end!important;position:static!important;transform:translateY(-2px)!important;margin:0!important}
 #feed .deal-row-footer{margin-top:-7px!important;transform:translateY(-5px)!important}
 #feed .deal-row-footer .feed-accuracy,#feed .deal-row-footer .deal-distance{line-height:1.1!important}
 #feed .deal-row{padding-bottom:5px!important}
}
@media(max-width:380px){#feed .deal-row-image{transform:translateY(-11px)!important}#feed .deal-row-footer{margin-top:-6px!important}}

/* Alpha v1.0.32 — stable card structure; no positional nudges or overlapping rows. */
@media(max-width:760px){
 #feed .deal-row{
  display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;
  align-items:start!important;gap:12px!important;
  height:auto!important;min-height:0!important;
  padding:11px!important;
 }
 #feed .deal-row-image{
  width:76px!important;height:76px!important;min-height:76px!important;
  align-self:start!important;transform:none!important;margin:0!important;
  overflow:hidden!important;
 }
 #feed .deal-row-content{
  display:flex!important;flex-direction:column!important;
  justify-content:flex-start!important;align-self:start!important;
  min-width:0!important;height:auto!important;gap:6px!important;
  position:relative!important;
 }
 #feed .deal-row-topline{min-height:0!important;margin:0!important}
 #feed .deal-row h3{margin:0!important;line-height:1.18!important}
 #feed .deal-row-bottomline{
  display:block!important;position:relative!important;
  width:100%!important;min-width:0!important;min-height:30px!important;
  padding:0 38px 0 0!important;margin:0!important;
  box-sizing:border-box!important;
 }
 #feed .deal-row-price{
  display:flex!important;align-items:baseline!important;
  width:100%!important;min-width:0!important;min-height:30px!important;
  gap:7px!important;white-space:nowrap!important;flex-wrap:nowrap!important;
 }
 #feed .deal-row-content .deal-row-bottomline button.card-favourite{
  display:grid!important;place-items:center!important;
  position:absolute!important;right:0!important;top:50%!important;
  transform:translateY(-50%)!important;
  width:31px!important;height:31px!important;min-width:31px!important;
  min-height:31px!important;margin:0!important;padding:1px!important;
  border:0!important;border-radius:50%!important;background:transparent!important;
  box-shadow:none!important;color:#62666b!important;
  visibility:visible!important;opacity:1!important;
 }
 #feed .deal-row-content .deal-row-bottomline button.card-favourite::before{content:none!important;display:none!important}
 #feed .deal-row-content .deal-row-bottomline button.card-favourite .favourite-star-svg{display:block!important;width:29px!important;height:29px!important}
 #feed .deal-row-footer{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  width:100%!important;min-width:0!important;gap:8px!important;
  margin:0!important;padding:0!important;transform:none!important;
 }
 #feed .deal-row-footer .feed-accuracy{margin:0!important;max-width:70%!important}
 #feed .deal-row-footer .deal-distance{margin:0!important;white-space:nowrap!important}
 #feed .deal-row{padding-bottom:11px!important}
}
@media(max-width:380px){
 #feed .deal-row{grid-template-columns:68px minmax(0,1fr)!important;gap:9px!important;padding:9px!important}
 #feed .deal-row-image{width:68px!important;height:68px!important;min-height:68px!important}
 #feed .deal-row-content{gap:5px!important}
 #feed .deal-row-bottomline{padding-right:34px!important}
 #feed .compact-price{font-size:21px!important}
}


/* Alpha v1.0.34 — fine-tune deal-card product image vertical alignment. */
@media(max-width:760px){
 #feed .deal-row-image{transform:translateY(6px)!important}
}


/* Alpha v1.0.35 — restore yellow-sticker colour and the green deal-price highlight. */
@media(max-width:760px){
 #feed .deal-row-topline .deal-type-badge.deal-type-reduced{
  background:#ffe36a!important;
  color:#725000!important;
  border:1px solid #f0ca35!important;
 }
 #feed .deal-row-price .compact-price{
  display:inline-flex!important;align-items:center!important;
  min-height:29px!important;padding:4px 9px!important;
  border:1px solid #b9dfc7!important;border-radius:9px!important;
  background:linear-gradient(135deg,#f0fbf4,#e1f4e8)!important;
  color:#145b36!important;font-weight:950!important;
  box-shadow:0 2px 7px rgba(28,128,70,.10)!important;
  animation:goodfinds-price-glow 3.6s ease-in-out infinite!important;
 }
}
@media(prefers-reduced-motion:reduce){#feed .deal-row-price .compact-price{animation:none!important}}


/* Alpha v1.0.42 — strengthen navigation icon definition and Share a Deal lettering. */
@media(max-width:760px){
 .bottom-nav-item .nav-icon svg{
  stroke-width:2.65!important;
  filter:drop-shadow(0 1.4px 1px rgba(32,54,40,.22))!important;
 }
 .bottom-nav-item[data-nav="community"] .nav-icon{box-shadow:0 4px 11px rgba(35,105,78,.22),inset 0 1px 0 rgba(255,255,255,.95)!important}
 .bottom-nav-item[data-nav="savings"] .nav-icon{box-shadow:0 4px 11px rgba(155,99,35,.22),inset 0 1px 0 rgba(255,255,255,.95)!important}
 .bottom-nav-item[data-nav="rewards"] .nav-icon{box-shadow:0 4px 11px rgba(123,76,164,.22),inset 0 1px 0 rgba(255,255,255,.95)!important}
 .bottom-nav-item[data-nav="favourites"] .nav-icon{box-shadow:0 4px 11px rgba(175,83,87,.22),inset 0 1px 0 rgba(255,255,255,.95)!important}
 .bottom-nav-share .share-deal-ring{filter:drop-shadow(0 3px 3px rgba(38,48,39,.34))!important}
 .bottom-nav-share .share-deal-ring text{
  fill:#244b3a!important;
  stroke:#fffaf2!important;
  stroke-width:3px!important;
  paint-order:stroke fill!important;
  filter:drop-shadow(0 2px 2px rgba(60,48,37,.25))!important;
 }
}


/* Alpha v1.0.44 — fuller Material Symbols navigation icons. */
@media(max-width:760px){
 .bottom-nav-item .nav-icon .material-symbols-rounded{
  display:block!important;font-family:"Material Symbols Rounded"!important;
  font-weight:600!important;font-style:normal!important;font-size:31px!important;
  line-height:1!important;letter-spacing:normal!important;text-transform:none!important;
  white-space:nowrap!important;word-wrap:normal!important;direction:ltr!important;
  font-feature-settings:"liga"!important;-webkit-font-feature-settings:"liga"!important;
  -webkit-font-smoothing:antialiased!important;
 }
 .bottom-nav-item[data-nav="community"] .nav-icon .material-symbols-rounded{font-size:34px!important}
 .bottom-nav-item[data-nav="savings"] .nav-icon .material-symbols-rounded{font-size:32px!important}
 .bottom-nav-item[data-nav="rewards"] .nav-icon .material-symbols-rounded{font-size:34px!important}
 .bottom-nav-item[data-nav="favourites"] .nav-icon .material-symbols-rounded{font-size:34px!important}
}


/* Alpha v1.0.47 — compact header retains the GoodFinds identity and area. */
@media(max-width:760px){
 body>header.app-topbar{
  box-sizing:border-box!important;display:flex!important;flex-direction:column!important;
  align-items:stretch!important;justify-content:flex-start!important;
  height:auto!important;min-height:0!important;max-height:180px!important;
  flex:0 0 auto!important;gap:9px!important;padding:10px 14px 12px!important;
  overflow:hidden!important;
  transition:max-height .46s cubic-bezier(.22,.75,.22,1),padding .46s cubic-bezier(.22,.75,.22,1),gap .46s cubic-bezier(.22,.75,.22,1),box-shadow .46s ease!important;
  will-change:max-height,padding;
 }
 body>header.app-topbar .brand-row{
  display:flex!important;align-items:center!important;gap:8px!important;
  width:100%!important;min-height:44px!important;max-height:60px!important;
  opacity:1!important;overflow:hidden!important;
  transition:min-height .42s cubic-bezier(.22,.75,.22,1),max-height .42s cubic-bezier(.22,.75,.22,1),opacity .3s ease!important;
 }
 body>header.app-topbar .brand{
  flex:1 1 auto!important;min-width:0!important;font-size:21px!important;gap:8px!important;
  transition:font-size .42s ease,gap .42s ease!important;
 }
 body>header.app-topbar .brand b{
  flex:0 0 36px!important;width:36px!important;height:36px!important;font-size:25px!important;
  transition:width .42s ease,height .42s ease,flex-basis .42s ease,font-size .42s ease!important;
 }
 body>header.app-topbar .brand small{
  transition:opacity .22s ease,max-height .3s ease!important;max-height:20px!important;overflow:hidden!important;
 }
 body>header.app-topbar .header-location-row{
  display:grid!important;grid-template-columns:minmax(0,1fr) 62px 42px!important;
  align-items:center!important;column-gap:7px!important;width:100%!important;
  transition:transform .42s cubic-bezier(.22,.75,.22,1),gap .42s ease!important;
 }
 body>header.app-topbar.header-compact{
  max-height:112px!important;padding:6px 12px 8px!important;gap:3px!important;
  box-shadow:0 4px 14px rgba(12,34,23,.2)!important;
 }
 body>header.app-topbar.header-compact .brand-row{
  min-height:34px!important;max-height:36px!important;opacity:1!important;margin:0!important;padding:0!important;
 }
 body>header.app-topbar.header-compact .brand{font-size:17px!important;gap:6px!important}
 body>header.app-topbar.header-compact .brand b{
  flex-basis:28px!important;width:28px!important;height:28px!important;font-size:20px!important;
 }
 body>header.app-topbar.header-compact .brand small{max-height:0!important;opacity:0!important;margin:0!important}
 body>header.app-topbar.header-compact .brand-row>#accountSettingsOpen,
 body>header.app-topbar.header-compact .brand-row>#priceAlertsOpen{transform:scale(.86)!important}
 body>header.app-topbar.header-compact .header-location-row{
  grid-template-columns:minmax(0,1fr)!important;column-gap:0!important;
 }
 body>header.app-topbar.header-compact .header-location-row>#headerFeedbackOpen,
 body>header.app-topbar.header-compact .header-location-row>#headerInfoOpen{display:none!important}
 body>header.app-topbar.header-compact .header-location-row>#setArea{
  grid-column:1!important;min-height:42px!important;height:42px!important;
  padding:3px 10px!important;border-radius:11px!important;
 }
 body>header.app-topbar.header-compact .location-pin{font-size:20px!important}
 body>header.app-topbar.header-compact .location-copy small{font-size:6px!important}
 body>header.app-topbar.header-compact .location-copy strong{font-size:12px!important}
 body>header.app-topbar.header-compact .location-change{padding:4px 9px!important;font-size:11px!important}
}
@media(prefers-reduced-motion:reduce){
 body>header.app-topbar,body>header.app-topbar .brand-row,body>header.app-topbar .brand,
 body>header.app-topbar .brand b,body>header.app-topbar .brand small,body>header.app-topbar .header-location-row{transition:none!important}
}


/* Scroll-resizing header styles removed: the streamlined navigation stays fixed-height. */

/* Admin-only visual preview of the regular user interface. */
.admin-user-preview-banner{
 position:sticky;top:0;z-index:1200;display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:10px 14px;background:#fff7dc;border-bottom:1px solid #e5c66d;box-shadow:0 3px 12px rgba(30,40,20,.12);
 color:#3f3517;
}
.admin-user-preview-banner[hidden]{display:none!important}
.admin-user-preview-banner span{display:flex;flex-direction:column;gap:3px;min-width:0}
.admin-user-preview-banner strong{font-size:11px;letter-spacing:1px}
.admin-user-preview-banner small{font-size:11px;line-height:1.3}
.admin-user-preview-banner button{flex:0 0 auto;border:1px solid #8a7130;border-radius:9px;background:#fff;color:#453812;font-weight:750;padding:9px 12px;min-height:40px}
@media(max-width:480px){.admin-user-preview-banner{padding:9px 10px;gap:8px}.admin-user-preview-banner small{max-width:230px}.admin-user-preview-banner button{padding:8px 10px;font-size:12px}}

/* Compact, conditional optional-details disclosure in the share flow. */
.optional-info-panel{display:block;margin:12px 0 16px;padding:0;border:1px solid #d8e1eb;border-radius:12px;background:#f8fafc;min-width:0;overflow:hidden}
.optional-info-panel[hidden],.optional-info-content[hidden]{display:none!important}
.optional-info-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:58px;padding:10px 13px;border:0;border-radius:11px;background:transparent;color:#203b5a;text-align:left}
.optional-info-toggle-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.optional-info-toggle-copy strong{font-size:13px;font-weight:800;letter-spacing:.1px;color:#24466e}
.optional-info-toggle-copy small{font-size:11px;letter-spacing:0;font-weight:500;color:#63748a}
.optional-info-chevron{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#e8eef5;color:#24466e;font-size:20px;line-height:1;transition:transform .15s}
.optional-info-toggle[aria-expanded="true"] .optional-info-chevron{transform:rotate(45deg)}
.optional-info-content{display:flex;flex-direction:column;gap:12px;padding:0 12px 12px}
.optional-info-panel .reduction-evidence-upload,.optional-info-panel .reduction-extra-fields{margin:0}
@media(max-width:520px){.optional-info-toggle{min-height:54px;padding:9px 11px}.optional-info-content{padding:0 10px 10px}}

/* Respect hidden state for conditional result panels even when their component styles use display. */
#scannedProductCard[hidden],#selectedBranchCard[hidden]{display:none!important}

/* Visible location-search activity while the share-deal dialog is open. */
.branch-search-activity-dialog{width:min(calc(100% - 40px),330px);max-width:330px;padding:0;border:0;border-radius:22px;background:transparent;overflow:visible}
.branch-search-activity-dialog::backdrop{background:rgba(18,31,35,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.branch-search-activity-dialog .deal-loading-panel{min-height:150px;justify-content:center}

/* Fast, phone-friendly price entry: one decimal keypad field per amount. */
.price-entry{display:flex;align-items:center;gap:9px;margin-top:7px;min-height:58px;padding:6px 13px;border:1.5px solid #b8c6d7;border-radius:13px;background:#fff;transition:border-color .15s,box-shadow .15s}
.price-entry:focus-within{border-color:#365f49;box-shadow:0 0 0 3px rgba(54,95,73,.12)}
.price-entry .currency{font-size:22px;font-weight:850;color:#36513f}
.price-entry input{flex:1;min-width:0;width:100%;height:44px;padding:4px 2px;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#1c2d43;font-size:24px!important;font-weight:800!important;font-variant-numeric:tabular-nums;text-align:left}
.price-entry input::placeholder{color:#a0acba;font-weight:500}
#dealDialog .price-entry input{min-height:44px}

/* Dedicated price-entry modal with its own keypad and clear confirmation. */
.deal-pricing-panel{display:flex;flex-direction:column;gap:12px}
.pricing-heading{font-size:14px;letter-spacing:.05em;font-weight:850}
.price-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.price-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.price-tile{width:100%;min-height:88px;border:1.5px solid #b8c6d7;border-radius:13px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;padding:12px;color:#173b68;text-align:left}
.price-tile strong{font-size:22px;font-weight:850}.price-tile span{font-size:12px;color:#64748b}
.price-saving-preview{padding:14px;border-radius:12px;background:#f1f5f9;color:#536176;font-weight:750}
.price-saving-preview.is-valid{background:#e3f5e8;color:#21653b}
.price-picker-dialog{width:min(390px,calc(100% - 24px));max-width:390px;border:0;border-radius:20px;padding:0;box-shadow:0 18px 60px #0005}
.price-picker-dialog::backdrop{background:#10203099;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.price-picker-content{padding:20px;display:flex;flex-direction:column;gap:15px}
.price-picker-top{display:flex;align-items:center;justify-content:space-between;font-size:19px}
.price-picker-value{display:flex;align-items:center;gap:9px;padding:12px 16px;border:2px solid #aac3b0;border-radius:12px;font-size:30px;font-weight:800}
.price-picker-value input{width:100%;min-width:0;border:0!important;background:transparent!important;font-size:30px!important;font-weight:800!important;color:#173b68;box-shadow:none!important;outline:0!important}
.price-picker-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.price-picker-keys button{min-height:56px;border:1px solid #d5dfe8;border-radius:11px;background:#f6f8fa;font-size:23px;font-weight:750;color:#173b68}
.price-picker-keys button:active{background:#dcebe1}
.price-picker-confirm{width:100%;min-height:56px;border:0;border-radius:13px;background:#24834b;color:#fff;font-size:18px;font-weight:850}
.price-picker-content .error{margin:0}
.deal-pricing-panel[hidden],.deal-pricing-panel .price-field[hidden]{display:none!important}
@media(max-width:380px){.price-tiles{gap:7px}.price-tile{padding:9px}.price-tile strong{font-size:19px}}


/* Persistent preference for automatic release announcements. */
.release-alert-preferences{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 18px;padding:15px 16px;border:1px solid #dce6dc;border-radius:14px;background:#fbfcf8}
.release-alert-preferences>div{min-width:0}
.release-alert-preferences strong{display:block;color:#294536;font-size:14px;font-weight:800}
.release-alert-preferences p{margin:4px 0 0;color:#667568;font-size:12px;line-height:1.45}
.release-alert-toggle{display:flex;align-items:center;gap:8px;flex:0 0 auto;color:#294536;font-size:12px;font-weight:800;cursor:pointer}
.release-alert-toggle input{width:20px;height:20px;accent-color:#294536}
@media(max-width:520px){.release-alert-preferences{align-items:flex-start;flex-direction:column}.release-alert-toggle{min-height:36px}}


/* The supermarket selector uses display:flex, so explicitly honour its hidden state. */
#detectBranch[hidden]{display:none!important}


/* Deal submission: honour hidden states for the scanner and its status copy. */
#scan[hidden],#productLookupMsg[hidden]{display:none!important}
.wrong-product-button{grid-column:1/-1;justify-self:start;min-height:42px;padding:8px 13px;border:1px solid #c8d5e4;border-radius:10px;background:#fff;color:#315b91;font-weight:800}

/* Alpha 1.0.79 — Deal Hunt branch actions */
.selected-branch-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}
.start-deal-hunt-button,.end-deal-hunt-button{border:1px solid #b9d6c4;border-radius:9px;background:#e9f6ed;color:#24633e;padding:9px 11px;font-weight:800;font-size:12px}
.end-deal-hunt-button{background:#fff;color:#65758b;border-color:#cbd8e8}
.selected-branch-copy small{display:block;font-size:10px;letter-spacing:1.1px;font-weight:850;color:#477a58;margin-bottom:4px}
@media(max-width:520px){.selected-branch-card{align-items:flex-start;flex-wrap:wrap}.selected-branch-actions{width:100%;justify-content:flex-start}.start-deal-hunt-button{flex:1}}

#branchMsg:empty{display:none}


/* Alpha v1.0.83 — distinct colour coding for each deal type. */
#feed .deal-row-topline .deal-type-badge.deal-type-offer{
 background:#fce9e2!important;color:#934b31!important;
}
#feed .deal-row-topline .deal-type-badge.deal-type-reduced{
 background:#ffe36b!important;color:#775400!important;
}
#feed .deal-row-topline .deal-type-badge.deal-type-price-hold{
 background:#dff3e7!important;color:#17633f!important;
}
#feed .deal-row-topline .deal-type-badge.deal-type-clearance{
 background:#e5edff!important;color:#315b91!important;
}

/* Alpha v1.0.84 — explicit category colour fallback for feed badges. */
#feed .deal-type-badge.deal-type-offer{background:#fce9e2!important;color:#934b31!important}
#feed .deal-type-badge.deal-type-reduced{background:#ffe36b!important;color:#775400!important}
#feed .deal-type-badge.deal-type-price-hold{background:#dff3e7!important;color:#17633f!important}
#feed .deal-type-badge.deal-type-clearance{background:#e5edff!important;color:#315b91!important}

/* Alpha v1.0.86: deal submission progress dialog. */
.posting-deal-dialog{width:min(390px,calc(100% - 36px));max-width:390px;border-radius:22px;text-align:center}
.posting-deal-dialog[open]{margin:auto}
.posting-deal-panel{padding:30px 26px 28px;display:flex;flex-direction:column;align-items:center;gap:12px}
.posting-deal-panel h2{margin:4px 0 0;color:var(--navy);font-size:22px}
.posting-deal-panel p{margin:0;color:#536176;font-size:14px;line-height:1.5}
.posting-deal-panel small{color:#78869a;font-size:12px}
.posting-deal-spinner{width:42px;height:42px;border:4px solid #dce6ef;border-top-color:var(--blue);border-radius:50%;animation:postingDealSpin .8s linear infinite}
@keyframes postingDealSpin{to{transform:rotate(360deg)}}

/* Alpha v1.0.88 — final retailer colour override after legacy feed styles. */
#feed .deal-row-topline .store-pill.brand-aldi{background:#0755a4!important;color:#fff!important;border:1px solid #0755a4!important}
#feed .deal-row-topline .store-pill.brand-tesco{background:#0756a5!important;color:#fff!important;border:1px solid #e32636!important}
#feed .deal-row-topline .store-pill.brand-sainsburys{background:#f36b16!important;color:#fff!important;border:1px solid #d85b0c!important}
#feed .deal-row-topline .store-pill.brand-asda{background:#78be20!important;color:#fff!important;border:1px solid #65a51b!important}
#feed .deal-row-topline .store-pill.brand-lidl{background:#ffdf00!important;color:#0050a4!important;border:1px solid #0050a4!important}
#feed .deal-row-topline .store-pill.brand-morrisons{background:#007a3d!important;color:#fff!important;border:1px solid #007a3d!important}
#feed .deal-row-topline .store-pill.brand-iceland{background:#fff!important;color:#d71920!important;border:1px solid #d71920!important}
#feed .deal-row-topline .store-pill.brand-coop{background:#0067a5!important;color:#fff!important;border:1px solid #0067a5!important}
#feed .deal-row-topline .store-pill.brand-waitrose{background:#174b36!important;color:#fff!important;border:1px solid #174b36!important}
#feed .deal-row-topline .store-pill.brand-marks-spencer{background:#07513f!important;color:#fff!important;border:1px solid #07513f!important}
#feed .deal-row-topline .store-pill.brand-ocado{background:#f6a800!important;color:#17243a!important;border:1px solid #e29500!important}
#feed .deal-row-topline .store-pill.brand-spar{background:#fff!important;color:#d71920!important;border:1px solid #d71920!important}
#feed .deal-row-topline .store-pill.brand-farmfoods{background:#0755a4!important;color:#fff!important;border:1px solid #0755a4!important}
#feed .deal-row-topline .store-pill.brand-heron{background:#0876bd!important;color:#fff!important;border:1px solid #0876bd!important}
#feed .deal-row-topline .store-pill.brand-default{background:#52657d!important;color:#fff!important;border:1px solid #52657d!important}


/* Alpha v1.0.94: retailer identity is background-only and supplied inline.
   Deal-status selectors elsewhere remain responsible for every card border. */

/* Retailer identity owns the card surface; availability owns only the border.
   This deliberately outranks legacy signal background rules without touching
   their border colours or shadows. */
body #feed.grid > article.card.deal-row{
  background:var(--retailer-card-bg,#f5f7fa)!important;
}


/* Alpha v1.0.104 — isolated Hunters Board screen shell. */
.hunter-board-dialog .hunter-board-shell{position:relative;max-height:calc(var(--gf-visual-viewport-height,100dvh) - 20px);overflow-y:auto;padding:24px}
.hunter-board-dialog .x{position:absolute;right:16px;top:14px;z-index:2}
.hunter-board-coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:240px;margin-top:22px;padding:28px 22px;border:1px dashed #cbd8e4;border-radius:18px;background:#f8faf9;text-align:center}
.hunter-board-camera{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#e5f1e8;font-size:30px}
.hunter-board-coming-soon h3{margin:4px 0 0;color:#203b54;font-size:18px}
.hunter-board-coming-soon p{max-width:290px;margin:0;color:#64748b;font-size:13px;line-height:1.55}


/* Alpha 1.0.105 — Hunters Board photo bulletin feed. */
.hunter-board-dialog .hunter-board-shell{width:min(100%,760px);padding:24px 20px 28px}
.hunter-board-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 18px;padding:11px 13px;border-radius:12px;background:#f5f0e5;border:1px solid #e7dcc6}
.hunter-board-toolbar p{margin:0;color:#53616a;font-size:12px;line-height:1.4}
.hunter-board-live-label{flex-shrink:0;color:#786548;font-size:9px;font-weight:800;letter-spacing:.11em}
.hunter-board-feed{min-height:230px;padding:15px;border-radius:16px;background-color:#d9bd91;background-image:radial-gradient(rgba(105,70,34,.12) .7px,transparent .7px);background-size:7px 7px;border:1px solid #c6a77a}
.hunter-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;align-items:start}
.hunter-pin-card{position:relative;min-width:0;padding:9px 9px 11px;background:#fffdf7;border-radius:3px;box-shadow:0 3px 8px rgba(58,43,25,.22);transform:rotate(-1deg)}
.hunter-pin-card:before{content:"";position:absolute;z-index:2;top:-7px;left:calc(50% - 6px);width:12px;height:12px;border-radius:50%;background:#e8a34b;border:2px solid #fff4dc;box-shadow:0 1px 3px #76552c}
.hunter-pin-1{transform:rotate(1.2deg)}.hunter-pin-1:before{background:#6c9a88}.hunter-pin-2{transform:rotate(-.4deg)}.hunter-pin-2:before{background:#8c83b8}.hunter-pin-3{transform:rotate(.7deg)}.hunter-pin-3:before{background:#d67f75}
.hunter-photo-open{display:block;width:100%;padding:0;border:0;background:#eee;cursor:pointer;aspect-ratio:1/1;overflow:hidden}
.hunter-photo-open img{display:block;width:100%;height:100%;object-fit:cover}
.hunter-photo-unavailable{display:grid;place-items:center;aspect-ratio:1/1;background:#f0ece4;color:#766d60;font-size:12px}
.hunter-pin-details{padding:9px 2px 0}
.hunter-pin-author{display:flex;align-items:center;gap:5px;min-width:0;color:#3b4650;font-size:10px}
.hunter-pin-author strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.hunter-pin-author time{margin-left:auto;flex-shrink:0;color:#8b8377;font-size:9px}
.hunter-pin-avatar{display:grid;place-items:center;flex-shrink:0;width:20px;height:20px;border-radius:50%;background:#f0e8d8;font-size:12px}
.hunter-pin-caption{margin:7px 0 0;color:#283744;font-size:12px;font-weight:650;line-height:1.35;overflow-wrap:anywhere}
.hunter-pin-location{display:flex;gap:4px;align-items:flex-start;margin-top:7px;padding-top:6px;border-top:1px solid #eee7d9;color:#70695f;font-size:9px;line-height:1.35;overflow-wrap:anywhere}
.hunter-board-state{display:flex;min-height:200px;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:22px 12px;text-align:center;color:#334155}
.hunter-board-state-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f5ead4;color:#8b6d42;font-size:23px;font-weight:700}
.hunter-board-state h3{margin:0;color:#273b4a;font-size:16px}
.hunter-board-state p{max-width:340px;margin:0;color:#5d6871;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.hunter-board-retry{margin-top:5px;padding:9px 16px;border:0;border-radius:20px;background:#244b3d;color:white;font-weight:700;font-size:12px}
.hunter-board-loading{display:flex;min-height:190px;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#62533e;font-size:12px}
.hunter-board-loading p{margin:0}
.hunter-board-spinner{width:24px;height:24px;border:3px solid #c4ad89;border-top-color:#4c725d;border-radius:50%;animation:hunter-spin .8s linear infinite}
@keyframes hunter-spin{to{transform:rotate(360deg)}}
.hunter-photo-lightbox{width:min(94vw,680px);max-width:680px;padding:18px;background:#fffdf8;border:0;border-radius:16px;box-shadow:0 15px 60px #0005}
.hunter-photo-lightbox::backdrop{background:#111b}
.hunter-photo-lightbox .x{position:absolute;right:8px;top:8px;z-index:3}
.hunter-photo-lightbox img{display:block;width:100%;max-height:75vh;object-fit:contain;border-radius:9px;background:#eee}
.hunter-photo-lightbox p{margin:10px 2px 0;color:#42515b;font-size:13px;line-height:1.45}
@media(max-width:420px){.hunter-board-dialog .hunter-board-shell{padding:22px 12px}.hunter-board-feed{padding:10px}.hunter-board-grid{gap:14px 10px}.hunter-pin-card{padding:7px 7px 9px}.hunter-pin-author strong{font-size:9px}.hunter-pin-author time{font-size:8px}.hunter-pin-caption{font-size:11px}}

/* Alpha 1.0.106 — isolated camera-first Hunters posting UI. */
.hunter-take-photo{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;margin:0 0 16px;padding:13px 18px;border:0;border-radius:13px;background:#294b3d;color:#fff;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 2px 5px #18362922}
.hunter-take-photo span{font-size:22px;line-height:1}
.hunter-post-dialog[hidden]{display:none!important}
.hunter-post-dialog.is-open{
  position:fixed;
  z-index:12000;
  inset:0;
  box-sizing:border-box;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  width:100%;
  height:100%;
  max-height:none;
  margin:0;
  padding:calc(env(safe-area-inset-top) + 10px) 3vw calc(env(safe-area-inset-bottom) + 12px);
  border:0;
  border-radius:0;
  background:#101b20b8;
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.hunter-post-dialog.is-open .hunter-post-shell{
  box-sizing:border-box;
  position:relative;
  flex:0 0 auto;
  width:min(94vw,480px);
  max-width:480px;
  max-height:none;
  margin:0 auto;
  border-radius:22px;
  background:#fffaf2;
  color:#273b30;
  box-shadow:0 18px 60px #0004;
  overflow:visible;
}
body.hunter-composer-open{
  overflow:hidden!important;
  overscroll-behavior:none;
}
.hunter-post-shell{position:relative;padding:26px 22px 20px}
.hunter-post-shell>.x{position:absolute;right:14px;top:12px}
.hunter-post-shell h2{margin:0 48px 16px 0;font-size:25px}
.hunter-post-start p{color:#5c6870;font-size:14px}
.hunter-post-start .hunter-take-photo{margin:18px 0 4px}
.hunter-camera-preview{display:block;width:100%;max-height:48vh;aspect-ratio:4/3;object-fit:cover;border-radius:14px;background:#101820;margin:12px 0}
.hunter-capture-button{width:100%;background:#294b3d;color:#fff;border-color:#294b3d}
.hunter-post-start [hidden]{display:none!important}
.hunter-post-loading{display:flex;min-height:210px;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;color:#53616a}
.hunter-post-loading p{margin:0;font-weight:700}
.hunter-post-preview{display:block;width:100%;max-height:34vh;aspect-ratio:4/3;object-fit:cover;border-radius:14px;background:#eee}
.hunter-post-branch{display:flex;flex-direction:column;gap:6px;margin:15px 0;padding:15px;border:1px solid #e4d7bd;border-radius:14px;background:#f5f0e5}
.hunter-post-branch small{color:#826c49;font-size:10px;font-weight:900;letter-spacing:.1em}
.hunter-post-branch strong{font-size:16px}
.hunter-post-branch span{color:#5e6b72;font-size:12px;line-height:1.4}
.hunter-post-change{align-self:flex-start;padding:5px 0;border:0;background:none;color:#285b45;font-weight:800;font-size:12px;text-decoration:underline}
.hunter-post-branch-choices{display:flex;flex-direction:column;gap:7px;max-height:190px;overflow:auto;margin-bottom:12px}
.hunter-post-branch-choice{display:flex;flex-direction:column;gap:3px;padding:10px;border:1px solid #e1d5c1;border-radius:10px;background:#fff;text-align:left}
.hunter-post-branch-choice span,.hunter-post-branch-choice small{color:#64717a;font-size:11px}
.hunter-post-caption-label{display:flex;justify-content:space-between;margin:12px 0 6px;font-size:13px;font-weight:800}
.hunter-post-caption-label span{color:#7a858a;font-weight:500}
.hunter-post-form textarea{box-sizing:border-box;width:100%;min-height:66px;padding:11px;border:1px solid #d8d4ca;border-radius:10px;background:white;color:#263a31;font:inherit;font-size:14px;resize:vertical}
.hunter-post-confirm{width:100%;margin-top:13px;padding:13px;border:0;border-radius:12px;background:#294b3d;color:white;font-size:14px;font-weight:850}
.hunter-post-confirm:disabled{opacity:.55}
.hunter-post-error{margin:10px 0 0;color:#a13e32;font-size:12px;line-height:1.4}
.hunter-post-cancel{display:block;margin:12px auto 0;padding:7px 12px;border:0;background:none;color:#68747a;font-weight:700}

/* Keep native hidden states authoritative inside the Hunters post dialog. */
.hunter-post-dialog [hidden]{display:none!important}

/* Alpha 1.0.107 — contained, dismissible Hunters branch picker. */
.hunter-post-dialog .hunter-post-branch-choices{display:flex;box-sizing:border-box;width:100%;max-height:240px;min-height:0;flex-direction:column;gap:6px;overflow-y:auto;overflow-x:hidden;margin:10px 0 14px;padding:9px;border:1px solid #e1d5c1;border-radius:13px;background:#f5f0e5}
.hunter-post-dialog .hunter-post-branch-choices[hidden]{display:none!important}
.hunter-post-branch-list-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 2px 8px;background:#f5f0e5;color:#35483e}
.hunter-post-branch-list-heading strong{font-size:13px}
.hunter-post-branch-list-heading button{flex:0 0 32px;width:32px;height:32px;min-height:32px;padding:0;border:1px solid #d9cbb5;border-radius:50%;background:#fff;color:#35483e;font-size:21px;line-height:1}
.hunter-post-dialog .hunter-post-branch-choice{display:flex;box-sizing:border-box;flex:0 0 auto;width:100%;min-width:0;min-height:0;height:auto;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;overflow:visible;padding:10px 11px;border:1px solid #e1d5c1;border-radius:10px;background:#fff;color:#35483e;text-align:left;white-space:normal;line-height:1.35}
.hunter-post-dialog .hunter-post-branch-choice strong{display:block;width:100%;font-size:13px;line-height:1.35;overflow-wrap:anywhere}
.hunter-post-dialog .hunter-post-branch-choice span,.hunter-post-dialog .hunter-post-branch-choice small{display:block;width:100%;font-size:11px;line-height:1.35;overflow-wrap:anywhere;white-space:normal}
.hunter-post-dialog .hunter-post-change{min-height:36px}

/* Alpha 1.0.116 — keep the Hunters composer anchored to the visible screen.
   No keyboard detection or content-hiding: the panel stays at the top and scrolls naturally. */
dialog.hunter-post-dialog[open]{
  position:fixed;
  inset-block-start:calc(var(--gf-visual-viewport-offset-top,0px) + env(safe-area-inset-top) + 8px);
  inset-inline-start:50%;
  inset-block-end:auto;
  margin:0;
  transform:translateX(-50%);
  box-sizing:border-box;
  width:min(94vw,480px);
  max-width:480px;
  max-height:calc(var(--gf-visual-viewport-height,100dvh) - var(--gf-visual-viewport-offset-top,0px) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scroll-padding-block:18px;
}
dialog.hunter-post-dialog[open] .hunter-post-shell{
  padding:26px 22px max(20px,env(safe-area-inset-bottom));
}
dialog.hunter-post-dialog[open] .hunter-post-form textarea{
  scroll-margin-block:22px;
}

/* Alpha 1.0.118 — Hunters composer is a regular fixed overlay, not a native dialog.
   The overlay owns scrolling; the browser no longer has a native dialog to reposition. */
@media(max-width:760px){
  .hunter-post-dialog.is-open{padding-top:calc(env(safe-area-inset-top) + 8px)}
  .hunter-post-dialog.is-open .hunter-post-shell{width:100%;max-width:480px}
  .hunter-post-form textarea{font-size:16px;min-height:72px}
}

/* Alpha 1.0.121 — persistent app shell and embedded primary pages */
.home-dashboard{padding:18px 0 30px}
.home-welcome{position:relative;overflow:hidden;padding:clamp(24px,5vw,42px);border-radius:24px;background:linear-gradient(130deg,#123f2e,#17613f 62%,#287b50);color:#fff;box-shadow:0 14px 34px #174b321f}
.home-welcome:after{content:"";position:absolute;width:230px;height:230px;right:-92px;top:-105px;border:1px solid #ffffff25;border-radius:50%;box-shadow:0 0 0 24px #ffffff0c,0 0 0 50px #ffffff08}
.home-eyebrow{font-size:10px;font-weight:900;letter-spacing:1.8px;color:#c8efd5}
.home-welcome h1{position:relative;z-index:1;margin:10px 0;font:800 clamp(32px,6vw,48px)/1.05 Manrope;letter-spacing:-1.4px}
.home-welcome h1 em{font-style:normal;color:#c5ed9b}
.home-welcome p{position:relative;z-index:1;max-width:460px;margin:0 0 18px;color:#e5f3e9;font-size:15px}
.home-primary-action{position:relative;z-index:1;min-height:48px;padding:12px 19px;border:0;border-radius:13px;background:#d4ef9b;color:#173f2c;font-weight:900}
.home-section-heading{margin:25px 2px 12px}.home-section-heading small{font-size:10px;letter-spacing:1.4px}.home-section-heading h2{margin:3px 0;font:800 22px Manrope;letter-spacing:-.5px}
.home-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.home-action-card{position:relative;display:flex;min-height:128px;flex-direction:column;align-items:flex-start;gap:5px;padding:16px;border:1px solid #e3e9e2;border-radius:17px;background:#fff;text-align:left;color:#183a2b;box-shadow:0 4px 16px #163d2a08}
.home-action-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:4px;border-radius:11px;background:#e9f4e8;color:#236442;font-size:23px}
.home-action-card strong{font-size:15px}.home-action-card small{max-width:90%;font-size:11px;line-height:1.35;letter-spacing:0;color:#718074;font-weight:600}
.home-action-arrow{position:absolute;right:14px;top:17px;color:#76927d;font-size:22px}
.home-community-note{display:flex;flex-direction:column;gap:3px;margin-top:18px;padding:15px 17px;border-radius:15px;background:#edf5ec;color:#28553a}
.home-community-note strong{font-size:13px}.home-community-note span{font-size:12px;color:#667b6b}
.main-page-view[hidden],#homeDashboard[hidden]{display:none!important}
main>.main-page-view{box-sizing:border-box;display:block;width:100%;max-width:1000px;min-height:calc(100% - 20px);max-height:none;margin:10px auto 24px;padding:20px;border:1px solid #e5ebe4;border-radius:22px;background:#fff;color:#183126;box-shadow:0 6px 24px #163d2a0a;overflow:visible}
main>.main-page-view.account-dialog,main>.main-page-view.favourites-dialog{width:100%;max-width:1000px;max-height:none;border:1px solid #e5ebe4;border-radius:22px;padding:20px;overflow:visible;box-shadow:0 6px 24px #163d2a0a}
main>.main-page-view::backdrop{display:none}
main>.main-page-view .profile-page-shell{max-height:none;overflow:visible;padding:0}
main>.main-page-view .account-heading{margin-top:4px}
main>.main-page-view .hunter-board-shell{max-height:none;overflow:visible;padding:0}
main[data-active-page="home"]> :not(#adminUserPreviewBanner):not(#homeDashboard):not(.main-page-view){display:none!important}
main[data-active-page="home"]>#homeDashboard{display:block}
main[data-active-page="deals"]>.main-page-view,main[data-active-page="deals"]>#homeDashboard{display:none!important}
main[data-active-page="deals"]> :not(#adminUserPreviewBanner):not(.main-page-view):not(#homeDashboard):not([hidden]){display:revert}
main[data-active-page="profileDialog"]> :not(#adminUserPreviewBanner):not(#profileDialog){display:none!important}
main[data-active-page="accountDialog"]> :not(#adminUserPreviewBanner):not(#accountDialog){display:none!important}
main[data-active-page="communityDialog"]> :not(#adminUserPreviewBanner):not(#communityDialog){display:none!important}
main[data-active-page="savingsDialog"]> :not(#adminUserPreviewBanner):not(#savingsDialog){display:none!important}
main[data-active-page="rewardsDialog"]> :not(#adminUserPreviewBanner):not(#rewardsDialog){display:none!important}
main[data-active-page="favouritesDialog"]> :not(#adminUserPreviewBanner):not(#favouritesDialog){display:none!important}
main[data-active-page="hunterBoardDialog"]> :not(#adminUserPreviewBanner):not(#hunterBoardDialog){display:none!important}
.bottom-nav{display:none}
@media(max-width:760px){
 .home-dashboard{padding:12px 0 22px}
 .home-welcome{padding:25px 20px;border-radius:19px}
 .home-welcome p{font-size:13px;max-width:300px}
 .home-section-heading{margin-top:20px}
 .home-action-grid{gap:9px}
 .home-action-card{min-height:120px;padding:13px;border-radius:14px}
 main>.main-page-view,main>.main-page-view.account-dialog,main>.main-page-view.favourites-dialog{width:100%;max-width:none;min-height:100%;margin:0;padding:14px 12px 24px;border:0;border-radius:0;box-shadow:none}
 main>.main-page-view .profile-page-shell{padding:0 2px 20px}
 main>.main-page-view .hunter-board-shell{padding:0 2px 20px}
 .bottom-nav{position:relative;z-index:120;display:flex;flex:0 0 auto;align-items:center;justify-content:space-around;gap:0;width:100%;min-height:67px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #e3eae3;background:#fff;box-shadow:0 -5px 18px #163d2a0b}
 .bottom-nav-item{display:grid;place-items:center;align-content:center;gap:1px;flex:1 1 0;min-width:0;min-height:49px;padding:2px 0;border:0;background:transparent;color:#849087}
 .bottom-nav-item .nav-icon{display:grid;place-items:center;font-size:22px;line-height:1.1}
 .bottom-nav-item .material-symbols-rounded{font-size:23px}
 .bottom-nav-item small{font-size:8px;letter-spacing:0;color:inherit}
 .bottom-nav-item.is-active{color:#1b6943}
 .bottom-nav-share{display:grid;place-items:center;align-content:center;flex:0 0 55px;width:55px;height:55px;min-height:55px;margin:0 3px 7px;padding:3px;border:0;border-radius:18px;background:#d4ef9b;color:#17432e;box-shadow:0 5px 14px #174b3225}
 .bottom-nav-share .share-deal-camera{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.2}
 .bottom-nav-share small{font-size:8px;letter-spacing:0;color:inherit}
}


/* Alpha 1.0.122 — embedded pages are navigated through the persistent bottom bar. */
.main-page-view .x{display:none!important}

/* Alpha 1.0.123 — Home dashboard redesign */
.home-dashboard{padding:0 0 28px;color:#183b2c}
.home-hero{margin:0 -12px;padding:24px 20px 22px;background:linear-gradient(145deg,#073b2b 0%,#0b4b35 58%,#176444 100%);color:#fff;border-radius:0 0 26px 26px;box-shadow:0 12px 28px #123f2c20}
.home-brandline{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.home-brand-mark{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:50%;background:#fff8e9;color:#174c35;font:900 35px Georgia}
.home-brandline>span:nth-child(2){display:flex;flex-direction:column;line-height:1.05}
.home-brandline>span:nth-child(2)>strong{font:800 25px Manrope,system-ui;letter-spacing:-1px;color:#fff}
.home-brandline>span:nth-child(2)>strong span{color:#e9a56b}
.home-brandline>span:nth-child(2)>small{margin-top:4px;color:#d6e9dc;font-size:11px}
.home-profile-shortcut{display:grid;place-items:center;width:42px;height:42px;margin-left:auto;border:1px solid #ffffff50;border-radius:50%;background:#ffffff18;color:#fff}
.home-profile-shortcut .material-symbols-rounded{font-size:25px}
.home-eyebrow{display:block;margin:0 0 8px;color:#c6e8d0;font-size:9px;font-weight:900;letter-spacing:1.35px}
.home-hero h1{margin:0 0 5px;font:850 clamp(29px,6vw,42px)/1.05 Manrope,system-ui;letter-spacing:-1.3px;color:#fff}
.home-hero>p{margin:0 0 17px;color:#e2f0e6;font-size:13px}
.home-search{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 7px 0 14px;border:1px solid #e4e9e2;border-radius:15px;background:#fff;color:#243b31;box-shadow:0 4px 14px #001d1220}
.home-search>.material-symbols-rounded{font-size:22px;color:#718178}
.home-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#243b31;font:inherit;font-size:14px;font-weight:500}
.home-search input::placeholder{color:#77847d}
.home-search button{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:0;border-radius:11px;background:#eaf3e9;color:#18563a}
.home-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:17px}
.home-stat-card{display:flex;min-width:0;min-height:104px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 5px;border:1px solid #ffffffa8;border-radius:16px;background:#fff9f0;color:#1a3e2c;box-shadow:0 5px 12px #001d1220}
.home-stat-card .material-symbols-rounded{font-size:22px;color:#1e7650}
.home-stat-card strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font:850 clamp(17px,4vw,23px)/1 Manrope,system-ui;white-space:nowrap}
.home-stat-card small{font-size:9px;font-weight:800;letter-spacing:.1px;color:#64776a}
.home-stat-new{background:#fff1e9}.home-stat-new .material-symbols-rounded{color:#b56d35}
.home-stat-hunters{background:#e8f4e9}.home-stat-saved{background:#fff5df}.home-stat-saved .material-symbols-rounded{color:#bb8129}
.home-content-section{margin:10px 0 0}
.home-content-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:0 1px 11px}
.home-content-heading>div{min-width:0}
.home-content-heading small{display:block;margin-bottom:3px;color:#7c8b7e;font-size:9px;font-weight:900;letter-spacing:1.2px}
.home-content-heading h2{display:flex;align-items:center;gap:6px;margin:0;color:#1a3528;font:800 19px/1.15 Manrope,system-ui;letter-spacing:-.5px}
.home-content-heading h2 .material-symbols-rounded{font-size:20px;color:#24734d}
.home-text-link{flex:0 0 auto;padding:5px 0;border:0;background:transparent;color:#176c43;font-size:12px;font-weight:850}
.home-text-link span{font-size:18px;vertical-align:-1px}
.home-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.home-highlight-card{display:flex;min-width:0;min-height:118px;gap:9px;align-items:center;padding:9px;border:1px solid #e9e7de;border-radius:17px;background:#fff;box-shadow:0 4px 13px #183c2b0b;text-align:left;color:#20372b}
.home-highlight-image{display:grid;place-items:center;width:76px;height:86px;flex:0 0 76px;overflow:hidden;border-radius:12px;background:#f2f1e9}
.home-highlight-image img{width:100%;height:100%;object-fit:contain}
.home-highlight-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px}
.home-highlight-copy>small{max-width:100%;overflow:hidden;color:#467154;font-size:9px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}
.home-highlight-copy>strong{display:-webkit-box;overflow:hidden;font-size:12px;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.home-highlight-price{padding:3px 7px;border-radius:8px;background:#e4f4e6;color:#155b36;font-size:16px;font-weight:900}
.home-highlight-saving{color:#237648;font-size:10px;font-weight:850}
.home-hunters-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.home-hunter-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;padding:0;border:1px solid #e8e7df;border-radius:15px;background:#fff;text-align:left;color:#253a2d;box-shadow:0 3px 12px #183c2b0b}
.home-hunter-image{display:block;aspect-ratio:1/1.08;overflow:hidden;background:#e8e8dd}
.home-hunter-image img{width:100%;height:100%;object-fit:cover}
.home-hunter-no-image{display:grid;width:100%;height:100%;place-items:center;color:#718076;font-size:10px}
.home-hunter-location{display:flex;align-items:center;gap:3px;padding:7px 6px 2px;font-size:9px;font-weight:800;line-height:1.2}
.home-hunter-location .material-symbols-rounded{flex:0 0 auto;font-size:13px;color:#24734d}
.home-hunter-caption{display:-webkit-box;overflow:hidden;padding:2px 6px 7px;color:#758077;font-size:9px;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.home-community-progress{display:flex;align-items:center;gap:12px;margin:20px 0 13px;padding:14px;border-radius:17px;background:#e7f3e6;color:#1c4e32}
.home-progress-icon{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#fff0c8;color:#b27a19;font-size:27px;line-height:1;text-align:center}
.home-progress-copy{flex:1;min-width:0}
.home-progress-copy>small{font-size:9px;font-weight:900;letter-spacing:1px;color:#55755e}
.home-progress-copy>strong{display:block;margin-top:2px;font-size:13px}
.home-progress-copy>p{margin:3px 0 8px;color:#627568;font-size:10px;line-height:1.3}
.home-progress-track{height:7px;overflow:hidden;border-radius:99px;background:#cbdcc9}
.home-progress-track span{display:block;width:0;height:100%;border-radius:99px;background:#178449;transition:width .25s ease}
.home-progress-count{flex:0 0 auto;font-size:12px}
.home-share-cta{display:flex;align-items:center;justify-content:center;gap:10px;width:calc(100% - 28px);min-height:58px;margin:0 auto;padding:12px 16px;border:0;border-radius:999px;background:linear-gradient(100deg,#08734a,#0b593b);color:#fff;font-size:16px;font-weight:900;box-shadow:0 7px 18px #0a553326}
.home-share-cta>.material-symbols-rounded{font-size:25px}
.home-share-spark{color:#f4d36e;font-size:19px}
.home-empty-state{grid-column:1/-1;padding:17px;border:1px dashed #d8e2d7;border-radius:14px;background:#fafbf7;color:#718075;font-size:12px;text-align:center}
.home-empty-state button{border:0;background:transparent;color:#176c43;font-weight:800;text-decoration:underline}
@media(max-width:420px){.home-hero{padding:20px 15px 18px}.home-stat-grid{gap:6px}.home-stat-card{min-height:96px;border-radius:13px}.home-stat-card small{font-size:8px}.home-highlight-card{gap:7px;padding:7px}.home-highlight-image{width:64px;height:78px;flex-basis:64px}.home-highlight-copy>strong{font-size:11px}.home-content-heading h2{font-size:17px}.home-hunters-preview{gap:7px}}


/* Alpha 1.0.124 — align and refine the Home search and barcode controls. */
.home-search{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 42px 42px;
  align-items:center;
  gap:7px;
  box-sizing:border-box;
  width:100%;
  min-height:60px;
  padding:7px;
  border:1px solid #e1e9e1;
  border-radius:17px;
  background:#fff;
  color:#243b31;
  box-shadow:0 5px 16px #001d121c;
}
.home-search>.material-symbols-rounded{
  display:grid;
  place-items:center;
  width:28px;
  height:44px;
  font-size:23px;
  line-height:1;
  color:#738078;
}
.home-search input{
  display:block;
  box-sizing:border-box;
  width:100%;
  min-width:0;
  height:44px;
  margin:0;
  padding:0 2px;
  border:0;
  outline:0;
  background:transparent;
  color:#243b31;
  font:500 14px/1.2 Manrope,system-ui,sans-serif;
  appearance:none;
  -webkit-appearance:none;
}
.home-search input::placeholder{color:#78847d;opacity:1}
.home-search button{
  display:grid;
  place-items:center;
  box-sizing:border-box;
  width:42px;
  height:44px;
  min-height:44px;
  margin:0;
  padding:0;
  border:0;
  border-radius:12px;
  line-height:1;
  box-shadow:none;
}
.home-search button .material-symbols-rounded{
  display:block;
  font-size:23px;
  line-height:1;
}
.home-search button[type="submit"]{
  background:#e8f2e9;
  color:#18563a;
}
.home-search #homeBarcodeScan{
  background:#f1f5ef;
  color:#18563a;
}
.home-search button:active{transform:scale(.96)}
.home-search button:focus-visible,
.home-search input:focus-visible{outline:2px solid #80b99a;outline-offset:2px}
@media(max-width:420px){
  .home-search{
    grid-template-columns:25px minmax(0,1fr) 40px 40px;
    gap:5px;
    min-height:56px;
    padding:6px;
    border-radius:15px;
  }
  .home-search>.material-symbols-rounded{width:25px;font-size:21px}
  .home-search input{height:42px;font-size:13px}
  .home-search button{width:40px;height:42px;min-height:42px;border-radius:11px}
}


/* Alpha 1.0.125 — crop Home hero to the approved headline-to-stats composition. */
.home-hero{padding:22px 20px 22px}
.home-hero h1{margin-top:0}
@media(max-width:760px){.home-hero{padding:21px 18px 20px}}
@media(max-width:420px){.home-hero{padding:19px 15px 18px}}


/* Alpha 1.0.126 — compact square Home statistic tiles, matching the reference. */
.home-stat-grid{gap:8px}
.home-stat-card{
  min-height:0;
  aspect-ratio:1 / 1;
  justify-content:center;
  gap:5px;
  padding:7px 4px;
  border-radius:15px;
}
.home-stat-card .material-symbols-rounded{
  order:0;
  font-size:clamp(18px,5vw,23px);
  line-height:1;
}
.home-stat-card small{
  order:1;
  font-size:clamp(7px,2.1vw,10px);
  line-height:1.15;
  text-align:center;
  white-space:normal;
}
.home-stat-card strong{
  order:2;
  font-size:clamp(16px,4.5vw,23px);
  line-height:1;
}
@media(max-width:420px){
  .home-stat-grid{gap:6px}
  .home-stat-card{aspect-ratio:1 / 1;min-height:0;padding:6px 3px;border-radius:13px;gap:4px}
  .home-stat-card .material-symbols-rounded{font-size:19px}
  .home-stat-card small{font-size:8px;letter-spacing:0;line-height:1.1}
  .home-stat-card strong{font-size:clamp(15px,4.2vw,19px)}
}


/* Alpha 1.0.127 — Home now opens directly on the compact stat tiles. */
.home-hero{padding:12px 20px 18px}
@media(max-width:760px){.home-hero{padding:10px 18px 17px}}
@media(max-width:420px){.home-hero{padding:8px 15px 15px}}


/* Alpha 1.0.130 — don't render an empty nearby results panel before search. */
#nearbyResults[hidden]{display:none!important}


/* Alpha 1.0.132 — compact single-row GoodFinds header. */
body>header.app-topbar{
  box-sizing:border-box!important;display:block!important;width:100%!important;
  min-height:0!important;height:auto!important;max-height:none!important;
  padding:9px clamp(12px,3.5vw,30px)!important;margin:0!important;
  background:#24392f!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;overflow:visible!important;
}
body>header.app-topbar .brand-row{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:clamp(8px,2vw,22px)!important;width:100%!important;min-height:42px!important;
}
body>header.app-topbar .brand{
  display:flex!important;align-items:center!important;flex:1 1 auto!important;
  min-width:0!important;width:auto!important;gap:10px!important;
  color:#fff8ed!important;font-size:clamp(19px,4.8vw,29px)!important;
  line-height:1!important;text-decoration:none!important;
}
body>header.app-topbar .brand b{
  display:grid!important;place-items:center!important;flex:0 0 clamp(34px,8vw,46px)!important;
  width:clamp(34px,8vw,46px)!important;height:clamp(34px,8vw,46px)!important;
  border-radius:50%!important;background:#fff8ed!important;color:#24392f!important;
  font-size:clamp(25px,5.8vw,34px)!important;line-height:1!important;
}
body>header.app-topbar .brand>span{white-space:nowrap!important;font-weight:850!important;line-height:1!important}
body>header.app-topbar .brand-accent{color:#e6a071!important}
body>header.app-topbar .brand small{display:none!important}
body>header.app-topbar .header-icon-row{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  flex:0 0 auto!important;gap:clamp(3px,1.4vw,12px)!important;min-width:0!important;
}
body>header.app-topbar .header-icon-row>button{
  box-sizing:border-box!important;display:grid!important;place-items:center!important;
  position:relative!important;flex:0 0 clamp(29px,7.8vw,42px)!important;
  width:clamp(29px,7.8vw,42px)!important;height:clamp(32px,8.2vw,44px)!important;
  min-width:0!important;min-height:0!important;max-width:none!important;
  margin:0!important;padding:3px!important;border:0!important;border-radius:50%!important;
  background:transparent!important;color:#fff4df!important;box-shadow:none!important;
}
body>header.app-topbar .header-info-button span{
  display:grid!important;place-items:center!important;width:clamp(20px,5.3vw,29px)!important;
  height:clamp(20px,5.3vw,29px)!important;border:2px solid currentColor!important;
  border-radius:50%!important;font-family:Georgia,serif!important;font-size:clamp(14px,3.8vw,19px)!important;
  font-weight:700!important;line-height:1!important;
}
body>header.app-topbar .header-settings-button .settings-cog-png{
  display:block!important;width:clamp(25px,6vw,34px)!important;height:clamp(25px,6vw,34px)!important;
  object-fit:contain!important;filter:brightness(0) saturate(100%) invert(94%) sepia(13%) saturate(410%) hue-rotate(329deg) brightness(105%) contrast(94%)!important;
}
body>header.app-topbar .header-feedback-button svg,
body>header.app-topbar .header-price-alerts svg{
  display:block!important;width:clamp(23px,5.8vw,32px)!important;height:clamp(23px,5.8vw,32px)!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
body>header.app-topbar .header-price-alerts[hidden]{display:none!important}
body>header.app-topbar .profile-button{
  display:grid!important;place-items:center!important;flex:0 0 clamp(36px,9vw,48px)!important;
  width:clamp(36px,9vw,48px)!important;height:clamp(36px,9vw,48px)!important;
  min-width:0!important;min-height:0!important;border:2px solid #e7d9bd!important;
  border-radius:50%!important;background:#fff8ed!important;color:#24392f!important;
  font-size:clamp(19px,4.5vw,26px)!important;overflow:hidden!important;
}
body>header.app-topbar .header-icon-row .price-alert-count{
  position:absolute!important;top:0!important;right:0!important;min-width:14px!important;
  height:14px!important;padding:0 3px!important;border-radius:9px!important;
  background:#e6a071!important;color:#24392f!important;font-size:9px!important;
}
.account-area-setting{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin:0 0 18px;padding:13px 15px;border:1px solid #d8cdb5;border-radius:14px;
  background:#f8f4e9;color:#263b30;
}
.account-area-setting>div{display:grid;gap:4px;min-width:0}
.account-area-setting small{font-size:10px;font-weight:850;letter-spacing:1.3px;color:#778477}
.account-area-setting strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-area-setting>button{flex:0 0 auto;min-width:84px}
@media(max-width:360px){
 body>header.app-topbar{padding-left:9px!important;padding-right:9px!important}
 body>header.app-topbar .brand{gap:6px!important;font-size:18px!important}
 body>header.app-topbar .header-icon-row{gap:1px!important}
 body>header.app-topbar .header-icon-row>button{flex-basis:27px!important;width:27px!important}
 body>header.app-topbar .profile-button{flex-basis:33px!important;width:33px!important;height:33px!important}
}

/* Alpha 1.0.138 — consistent native Material Symbols header controls. */
body>header.app-topbar .header-settings-button .material-symbols-rounded{
 display:block!important;font-family:"Material Symbols Rounded"!important;
 font-size:29px!important;font-weight:normal!important;font-style:normal!important;
 line-height:1!important;letter-spacing:normal!important;text-transform:none!important;
 white-space:nowrap!important;word-wrap:normal!important;direction:ltr!important;
 -webkit-font-feature-settings:"liga"!important;font-feature-settings:"liga"!important;
 -webkit-font-smoothing:antialiased!important;
 color:#f4e8cf!important
}
body>header.app-topbar .header-price-alerts[hidden]{display:grid!important}
body>header.app-topbar .header-price-alerts{display:grid!important;place-items:center!important}

/* Alpha 1.0.142 — embedded account settings use the page scroll only. */
main>.main-page-view.account-dialog>form{
 max-height:none!important;
 height:auto!important;
 min-height:0!important;
 overflow:visible!important;
 overflow-y:visible!important;
 overflow-x:visible!important;
 -webkit-overflow-scrolling:auto!important;
 overscroll-behavior: auto!important;
}



/* Alpha 1.0.146 — profile-only sizing; header row dimensions remain unchanged. */
body>header.app-topbar .header-icon-row>#account.profile-button{
 display:flex!important;flex:0 0 36px!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;gap:1px!important;
 width:36px!important;min-width:36px!important;max-width:36px!important;
 height:44px!important;min-height:44px!important;max-height:44px!important;
 padding:0!important;overflow:visible!important;
}
body>header.app-topbar #account .header-profile-ring{
 display:grid!important;place-items:center!important;flex:0 0 31px!important;
 width:31px!important;height:31px!important;box-sizing:border-box!important;
 border:1.5px solid #f3dfb8!important;border-radius:50%!important;
 background:#fff8ed!important;overflow:hidden!important;
}
body>header.app-topbar #account #headerProfileAvatar{
 display:grid!important;place-items:center!important;width:100%!important;height:100%!important;
 font-size:21px!important;line-height:1!important;
}
body>header.app-topbar #account #headerProfileLevel{
 display:block!important;margin:0!important;padding:0!important;
 color:#f8e8c9!important;font-size:7px!important;line-height:10px!important;
 font-weight:800!important;letter-spacing:.1px!important;white-space:nowrap!important;
}
@media(max-width:360px){
 body>header.app-topbar .header-icon-row>#account.profile-button{
  flex-basis:36px!important;width:36px!important;min-width:36px!important;
  height:44px!important;min-height:44px!important;max-height:44px!important;
 }
 body>header.app-topbar #account .header-profile-ring{
  flex-basis:29px!important;width:29px!important;height:29px!important;
 }
 body>header.app-topbar #account #headerProfileAvatar{font-size:19px!important}
}


/* Alpha 1.0.149 — admin moderation action on Hunters Board cards. */
.hunter-admin-delete{display:inline-flex;align-items:center;justify-content:center;min-height:34px;margin-top:10px;padding:7px 12px;border:1px solid #e4b8b8;border-radius:9px;background:#fff7f7;color:#a33232;font-size:12px;font-weight:800;cursor:pointer}
.hunter-admin-delete:disabled{opacity:.55;cursor:wait}


/* Alpha 1.0.150 — keep the admin tools exclusively on the Home page. */
main[data-active-page="deals"] #adminToolsPanel{display:none!important}
main[data-active-page="home"] #adminToolsPanel{display:block}

#dealDetailContent .deal-detail-primary-actions{display:grid;gap:8px;margin:10px 0 12px}
#dealDetailContent .deal-detail-primary-actions .deal-stock-check,#dealDetailContent .deal-detail-primary-actions .deal-purchase-panel{margin:0!important}
#dealDetailContent .deal-detail-primary-actions .deal-stock-check{padding:11px!important}
#dealDetailContent .deal-detail-primary-actions .deal-stock-check>p{margin:3px 0 8px!important}
#dealDetailContent .deal-detail-primary-actions .deal-detail-vote{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin:7px 0 5px!important}
#dealDetailContent .deal-detail-primary-actions .deal-detail-vote button{min-height:42px!important;padding:7px 5px!important;font-size:12px!important}
#dealDetailContent .deal-detail-primary-actions .deal-detail-vote button.is-selected{border:2px solid #355b45!important;background:#e7f1e9!important;color:#294a37!important}
#dealDetailContent .deal-detail-primary-actions .deal-purchase-panel{padding:10px 11px!important}
.contribution-confirmation-dialog{width:min(360px,calc(100vw - 36px));padding:0;border:0;border-radius:20px;box-shadow:0 18px 60px rgba(13,31,55,.28);color:#24364e}
.contribution-confirmation-dialog::backdrop{background:rgba(13,27,46,.58);backdrop-filter:blur(3px)}
.contribution-confirmation-panel{padding:25px 22px 20px;text-align:center;background:#fffdf7;border-radius:20px}
.contribution-confirmation-mark{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#e5f1e7;color:#315b42;font-size:27px;font-weight:850}
.contribution-confirmation-panel h2{margin:0 0 8px;color:#294a37;font-size:21px}
.contribution-confirmation-panel p{margin:0 0 18px;color:#627188;font-size:14px;line-height:1.5}
.contribution-confirmation-panel button{width:100%;min-height:46px}
@media(max-width:520px){#dealDetailContent .deal-detail-primary-actions .deal-detail-vote button{font-size:11px!important;padding:7px 3px!important}}

/* Match Home highlight card borders to the availability signal used in the Deals feed. */
.home-highlight-card.deal-signal-good{border:2px solid #e58b8b!important}
.home-highlight-card.deal-signal-bad{border:2px solid #83addb!important}
.home-highlight-card.deal-signal-warn,.home-highlight-card.deal-signal-early{border:2px solid #e5c06c!important}
.home-highlight-card.deal-signal-muted{border:1.5px solid #cbd5e1!important}


/* Community product-catalogue photo fallback */
.product-photo-upload{width:100%;margin-top:8px}
.product-photo-upload label{display:flex;align-items:center;gap:10px;padding:10px;border:1px dashed #aebfd2;border-radius:11px;background:#f8fbff;color:#29415f;cursor:pointer}
.product-photo-upload label>span:first-child{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:10px;background:#e6eef8;font-size:20px}
.product-photo-upload label>span:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:3px}
.product-photo-upload label strong{font-size:12px;font-weight:800}
.product-photo-upload label small{font-size:10px;line-height:1.35;color:#65758a}
.product-photo-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.product-photo-preview{display:flex;align-items:center;gap:9px;margin-top:8px;padding:8px;border:1px solid #d6e1ed;border-radius:10px;background:#fff}
.product-photo-preview img{width:52px;height:52px;object-fit:cover;border-radius:8px}
.product-photo-preview span{min-width:0;flex:1;overflow-wrap:anywhere;font-size:11px;color:#52647a}
.product-photo-preview button{padding:6px 8px;font-size:11px}
.scanned-product-details .product-photo-upload{max-width:100%}
.scanned-product-placeholder .product-photo-upload{min-width:0}

/* Alpha 1.0.163 — distinct You hub, profile remains a separate destination */
.you-hub-page{box-sizing:border-box;width:100%;max-width:760px;margin:0 auto;padding:clamp(18px,3vw,30px);color:#21372a}
.you-hub-heading{margin-bottom:20px}
.you-hub-heading small,.you-hub-section-heading small{font-size:10px;font-weight:900;letter-spacing:.13em;color:#63816c}
.you-hub-heading h2{margin:5px 0;font-size:clamp(25px,5vw,32px);letter-spacing:-.035em}
.you-hub-heading p{margin:0;color:#718074;font-size:13px}
.you-hub-profile-card{display:flex;align-items:center;gap:13px;width:100%;padding:16px;border:1px solid #dfe8df;border-radius:18px;background:linear-gradient(110deg,#f1f7ed,#fff);color:#20382a;text-align:left;box-shadow:0 4px 16px rgba(36,70,42,.05)}
.you-hub-avatar{display:grid;place-items:center;width:54px;height:54px;flex:0 0 54px;border:3px solid white;border-radius:50%;background:#fff5df;box-shadow:0 2px 8px #253c2520;font-size:27px}
.you-hub-profile-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.you-hub-profile-copy small{font-size:9px;font-weight:900;letter-spacing:.12em;color:#6d8a70}
.you-hub-profile-copy strong{font-size:17px;overflow-wrap:anywhere}
.you-hub-profile-copy>span{font-size:12px;color:#778579}
.you-hub-section{margin-top:24px}
.you-hub-section-heading{margin:0 0 10px}
.you-hub-section-heading h3{margin:3px 0 0;font-size:17px}
.you-hub-feature,.you-hub-row{display:flex;align-items:center;gap:12px;width:100%;margin:8px 0;padding:13px 14px;border:1px solid #e3eae3;border-radius:14px;background:#fff;color:#26392c;text-align:left}
.you-hub-leaderboard{background:linear-gradient(110deg,#f3f7ed,#fff8e9);border-color:#d9e5d6}
.you-hub-feature-icon,.you-hub-row-icon{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#e9f0e4;font-size:22px;line-height:1;text-align:center}
.you-hub-feature>span:nth-child(2),.you-hub-row>span:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.you-hub-feature small{font-size:9px;font-weight:900;letter-spacing:.1em;color:#a16c3e}
.you-hub-feature strong,.you-hub-row strong{font-size:14px;font-weight:850}
.you-hub-feature em,.you-hub-row small{font-size:11px;font-style:normal;color:#758276}
.you-hub-feature>b{white-space:nowrap;font-size:15px}
.you-hub-arrow{font-size:25px;line-height:1;color:#8b9b8a}
.you-hub-signout{display:block;margin:24px 0 6px;padding:11px 15px;border:1px solid #ead7d4;border-radius:12px;background:#fff;color:#98554b;font-weight:750}
@media(max-width:760px){.you-hub-page{padding:16px 13px 28px}.you-hub-heading{margin-bottom:17px}.you-hub-section{margin-top:20px}}

/* Alpha 1.0.164 — allow the You hub to occupy the main app view */
main[data-active-page="youHubPage"]> :not(#adminUserPreviewBanner):not(#youHubPage){display:none!important}
main[data-active-page="youHubPage"]>#youHubPage{display:block!important}


/* Alpha 1.0.165 — Community page uses the main app scroller and returns to You hub. */
main[data-active-page="communityDialog"] .community-dialog-shell{
  max-height:none!important;
  overflow:visible!important;
  overflow-y:visible!important;
  -webkit-overflow-scrolling:auto!important;
  overscroll-behavior:auto!important;
}
main[data-active-page="communityDialog"] #communityClose{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
}


/* Alpha 1.0.167 — optically centre the You hub trophy glyph in its icon tile. */
.you-hub-leaderboard .you-hub-feature-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  text-align:center;
}


/* Alpha 1.0.168 — centre the Home weekly-contribution trophy only. */
.home-community-progress .home-progress-icon{display:flex;align-items:center;justify-content:center;line-height:1;text-align:center;}


/* Alpha v1.0.170 — show the Rewards page close control and anchor it above the heading. */
#rewardsDialog.main-page-view #rewardsClose.x{display:grid!important;place-items:center;position:absolute;top:16px;right:16px;z-index:5;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:1px solid #d9e2d8;border-radius:50%;background:#fffdf8;color:#344d43;font-size:25px;line-height:1;box-shadow:0 2px 8px rgba(35,59,44,.12)}
#rewardsDialog.main-page-view .account-heading{padding-right:46px}


/* Alpha v1.0.171 — show My savings close control, matching Rewards. */
#savingsDialog.main-page-view #savingsClose.x{display:grid!important;place-items:center;position:absolute;top:16px;right:16px;z-index:5;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:1px solid #d9e2d8;border-radius:50%;background:#fffdf8;color:#344d43;font-size:25px;line-height:1;box-shadow:0 2px 8px rgba(35,59,44,.12)}
#savingsDialog.main-page-view .account-heading{padding-right:46px}


/* Alpha v1.0.172 — keep the central Share action icon-only; no text may overlay the camera. */
@media(max-width:760px){.bottom-nav-share{font-size:0!important}.bottom-nav-share>small{display:none!important}.bottom-nav-share .share-deal-camera{display:block!important}}


/* Alpha v1.0.173 — Share is the first, slightly larger navigation action. */
@media(max-width:760px){
 .bottom-nav{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:2px!important;padding-left:7px!important;padding-right:7px!important;}
 .bottom-nav-share{order:-1!important;flex:0 0 68px!important;width:68px!important;height:68px!important;min-width:68px!important;min-height:68px!important;max-width:68px!important;max-height:68px!important;margin:0 5px 0 0!important;align-self:center!important;}
 .bottom-nav-share .share-deal-camera{width:40px!important;height:40px!important;}
 .bottom-nav-item{flex:1 1 0!important;min-width:0!important;}
}
@media(max-width:380px){.bottom-nav-share{flex-basis:60px!important;width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;max-width:60px!important;max-height:60px!important;margin-right:3px!important}.bottom-nav-share .share-deal-camera{width:35px!important;height:35px!important}.bottom-nav-item small{font-size:9px!important}}


/* Alpha v1.0.174 — make the left Share action a larger floating control. */
@media(max-width:760px){
 .bottom-nav{position:relative!important;overflow:visible!important;}
 .bottom-nav-share{position:relative!important;z-index:125!important;flex:0 0 76px!important;width:76px!important;height:76px!important;min-width:76px!important;min-height:76px!important;max-width:76px!important;max-height:76px!important;transform:translateY(-9px)!important;margin:0 6px 0 0!important;}
 .bottom-nav-share .share-deal-camera{width:45px!important;height:45px!important;}
}
@media(max-width:380px){.bottom-nav-share{flex-basis:66px!important;width:66px!important;height:66px!important;min-width:66px!important;min-height:66px!important;max-width:66px!important;max-height:66px!important;transform:translateY(-8px)!important;margin-right:3px!important}.bottom-nav-share .share-deal-camera{width:39px!important;height:39px!important}}


/* Alpha v1.0.175 — keep the Hunters feed visible sooner on mobile. */
.hunter-board-heading{margin:0 0 12px;padding-right:42px}
.hunter-board-heading h2{margin:0 0 3px;font-size:25px;letter-spacing:-.55px;line-height:1.15}
.hunter-board-heading p{margin:0;color:#64748b;font-size:12px;line-height:1.35}
.hunter-board-dialog .hunter-take-photo{margin:0 0 12px;padding:11px 16px;font-size:14px}
.hunter-board-feed{margin-top:0}

/* Alpha 1.0.176 — place confirmation before Hunters camera. */
.hunter-place-dialog{width:min(560px,calc(100% - 24px));max-height:min(82dvh,760px);padding:0;border:0;border-radius:20px;box-shadow:0 22px 70px #10243b55;color:#24342e}
.hunter-place-dialog::backdrop{background:#101b20b8;backdrop-filter:blur(4px)}
.hunter-place-shell{position:relative;box-sizing:border-box;padding:25px 20px 20px;overflow:auto}
.hunter-place-shell>.x{position:absolute;top:13px;right:13px}
.hunter-place-kicker{font-size:10px;font-weight:900;letter-spacing:.14em;color:#52715d}
.hunter-place-shell h2{margin:7px 40px 5px 0;font-size:25px}
.hunter-place-intro,.hunter-place-status{font-size:13px;line-height:1.45;color:#66746d}
.hunter-place-status{min-height:20px;margin:16px 0 9px;font-weight:700}
.hunter-place-results{display:flex;flex-direction:column;gap:8px;max-height:36dvh;overflow:auto}
.hunter-place-choice{display:flex;flex-direction:column;gap:4px;width:100%;padding:12px;border:1px solid #dce5dd;border-radius:12px;background:#fff;text-align:left;color:#24342e}
.hunter-place-choice strong{font-size:14px}.hunter-place-choice span,.hunter-place-choice small{font-size:12px;line-height:1.35;color:#69776f}
.hunter-place-empty{font-size:12px;color:#68756e;padding:8px 2px}
.hunter-place-loading{display:flex;align-items:center;gap:10px;font-size:13px;color:#68756e;padding:12px}
.hunter-place-search{margin-top:18px;padding-top:15px;border-top:1px solid #e5eae6}
.hunter-place-search label{display:block;margin-bottom:8px;font-size:12px;font-weight:850}
.hunter-place-search>div{display:flex;gap:7px}
.hunter-place-search input{min-width:0;flex:1;padding:11px;border:1px solid #cfd9d1;border-radius:10px;font:inherit;font-size:13px}
.hunter-place-search button{padding:0 15px;border:0;border-radius:10px;background:#294b3d;color:white;font-weight:800}

/* Alpha 1.0.177 — keep Hunters place cards and search neatly inside the mobile dialog. */
.hunter-place-dialog{box-sizing:border-box;width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:hidden}
.hunter-place-shell{display:flex;flex-direction:column;box-sizing:border-box;width:100%;max-height:calc(100dvh - 24px);min-height:0;padding:24px 18px 16px;overflow:hidden}
.hunter-place-shell h2,.hunter-place-intro,.hunter-place-status{flex:0 0 auto;max-width:100%;overflow-wrap:anywhere}
.hunter-place-results{flex:1 1 auto;min-height:0;max-height:none;width:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:2px 3px 8px 0}
.hunter-place-choice{box-sizing:border-box;min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal}
.hunter-place-choice strong,.hunter-place-choice span,.hunter-place-choice small{display:block;max-width:100%;overflow-wrap:anywhere;word-break:normal}
.hunter-place-search{flex:0 0 auto;box-sizing:border-box;width:100%;margin-top:10px;padding-top:12px}
.hunter-place-search>div{align-items:stretch;min-width:0}
.hunter-place-search input{box-sizing:border-box;width:0;min-width:0;height:46px}
.hunter-place-search button{flex:0 0 auto;min-height:46px;white-space:nowrap}
@media(max-width:480px){
 .hunter-place-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:16px}
 .hunter-place-shell{max-height:calc(100dvh - 20px);padding:22px 14px 13px}
 .hunter-place-shell h2{font-size:23px}
 .hunter-place-status{margin:10px 0 7px}
 .hunter-place-results{gap:7px}
 .hunter-place-choice{padding:11px 10px;border-radius:10px}
 .hunter-place-choice strong{font-size:13px}
 .hunter-place-choice span,.hunter-place-choice small{font-size:11px;line-height:1.35}
 .hunter-place-search label{font-size:11px}
 .hunter-place-search input{font-size:12px;padding:10px}
 .hunter-place-search button{padding:0 12px;font-size:13px}
}

/* Alpha 1.0.178 — prevent venue result cards from flex-shrinking and overlapping on mobile. */
.hunter-place-results{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.hunter-place-choice{display:flex;flex:0 0 auto;flex-shrink:0;align-self:stretch;min-height:max-content;height:auto;line-height:1.4}
.hunter-place-choice strong,.hunter-place-choice span,.hunter-place-choice small{flex:0 0 auto;line-height:1.4}
@media(max-width:480px){
 .hunter-place-results{gap:8px}
 .hunter-place-choice{padding:12px 10px}
 .hunter-place-choice strong{font-size:13px;line-height:1.35}
 .hunter-place-choice span,.hunter-place-choice small{font-size:11px;line-height:1.4}
}


/* Alpha 1.0.184 — Hunters Board single-choice community reactions. */
.hunter-reaction-area{margin-top:9px;padding-top:7px;border-top:1px solid #eee7d9}
.hunter-reaction-row{display:flex;align-items:center;justify-content:space-between;gap:4px}
.hunter-reaction{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:0;flex:1;padding:5px 3px;border:1px solid #e8e2d7;border-radius:999px;background:#fff;color:#475569;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.hunter-reaction span{font-size:14px;line-height:1}
.hunter-reaction small{font-size:9px;font-weight:800;line-height:1}
.hunter-reaction.is-selected{border-color:#e7a0a9;background:#fff0f2;color:#9e3447}
.hunter-reaction:disabled{opacity:.55;cursor:wait}
.hunter-reaction-people{margin-top:5px;color:#82796d;font-size:9px;line-height:1.35;overflow-wrap:anywhere}
.hunter-reaction-people span{color:#d45c72}
@media(max-width:420px){.hunter-reaction{padding:5px 2px}.hunter-reaction span{font-size:13px}.hunter-reaction small{font-size:8px}}


/* Alpha 1.0.185 — full-width Hunters corkboard and cleaner reaction controls. */
@media(max-width:760px){
  .hunter-board-dialog{width:100vw!important;max-width:none!important;margin:0!important;padding:0!important;border-radius:0!important}
  .hunter-board-dialog .hunter-board-shell{box-sizing:border-box;width:100%!important;max-width:none!important;padding:20px 9px 26px!important}
  .hunter-board-dialog .hunter-board-feed{width:100%;box-sizing:border-box;padding:10px!important;border-radius:14px}
  .hunter-board-dialog .hunter-board-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 9px}
  .hunter-board-dialog .hunter-pin-card{min-width:0;padding:7px 7px 10px}
  .hunter-board-dialog .hunter-photo-open,.hunter-board-dialog .hunter-photo-unavailable{width:100%;aspect-ratio:1/1}
}
.hunter-reaction-area{margin-top:9px;padding-top:8px;border-top:1px solid #eee7d9}
.hunter-reaction-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;align-items:center}
.hunter-reaction{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:38px;padding:5px 3px;border:1px solid transparent;border-radius:11px;background:#f6f2e9;color:#475569;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.hunter-reaction span{font-size:19px;line-height:1}
.hunter-reaction small{position:absolute;right:-3px;bottom:-4px;display:grid;place-items:center;min-width:15px;height:15px;padding:0 3px;border:1px solid #fffdf7;border-radius:9px;background:#ded8cc;color:#5d5549;font-size:9px;font-weight:800;line-height:1}
.hunter-reaction small:empty{display:none}
.hunter-reaction.is-selected{border-color:#e8a5ad;background:#fff0f2;box-shadow:0 0 0 1px #e8a5ad33}
.hunter-reaction.is-selected small{background:#d96b7b;color:white}
.hunter-reaction:disabled{opacity:.55;cursor:wait}
.hunter-reaction-people{margin-top:7px;color:#82796d;font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.hunter-reaction-people span{color:#d45c72}
@media(max-width:420px){
 .hunter-board-dialog .hunter-board-shell{padding-left:7px!important;padding-right:7px!important}
 .hunter-board-dialog .hunter-board-feed{padding:8px!important}
 .hunter-board-dialog .hunter-board-grid{gap:12px 7px}
 .hunter-board-dialog .hunter-pin-card{padding:6px 6px 9px}
 .hunter-reaction-row{gap:4px}
 .hunter-reaction{min-height:35px;border-radius:10px}
 .hunter-reaction span{font-size:18px}
}


/* Alpha 1.0.186 — lock Hunters Board to viewport width and update reactions in place. */
.hunter-board-dialog{box-sizing:border-box;max-width:100%;overflow-x:hidden}
@media(max-width:760px){
 .hunter-board-dialog{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;overflow-x:hidden!important}
 .hunter-board-dialog .hunter-board-shell{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
 .hunter-board-dialog .hunter-board-feed{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden}
 .hunter-board-dialog .hunter-board-grid{width:100%;max-width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}
 .hunter-board-dialog .hunter-pin-card{width:auto;max-width:100%;min-width:0;box-sizing:border-box}
 .hunter-board-dialog .hunter-photo-open,.hunter-board-dialog .hunter-photo-open img{max-width:100%;min-width:0}
}
.hunter-reaction{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.hunter-reaction.is-saving{opacity:.65}
.hunter-reaction.is-selected span{animation:hunter-reaction-pop .24s ease-out}
@keyframes hunter-reaction-pop{0%{transform:scale(1)}45%{transform:scale(1.24)}100%{transform:scale(1)}}


/* Alpha 1.0.187 — photo-first Hunters cards and post detail view. */
.hunter-pin-author{display:flex;justify-content:flex-end;gap:5px;margin:0;color:#8b8377;font-size:9px}
.hunter-pin-author strong{display:none}
.hunter-pin-shop{display:block;width:100%;margin:7px 0 0;padding:0;border:0;background:none;color:#263d32;text-align:left;font-size:clamp(13px,3.6vw,16px);font-weight:850;line-height:1.15;cursor:pointer;overflow-wrap:anywhere}
.hunter-pin-caption{margin:5px 0 0;font-size:11px;line-height:1.25}
.hunter-reaction-area{margin-top:7px;padding-top:6px}
.hunter-reaction-row{gap:3px}
.hunter-reaction{min-height:30px;padding:3px 1px;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important}
.hunter-reaction.is-selected{background:transparent!important}
.hunter-reaction span{font-size:17px}
.hunter-reaction small{right:0;bottom:-2px;min-width:12px;height:12px;padding:0 2px;border:0;background:#e4ded4;color:#514a40;font-size:8px}
.hunter-reaction.is-selected small{background:#d96b7b;color:#fff}
.hunter-reaction-people{display:none!important}
.hunter-post-detail-dialog{position:fixed;width:min(94vw,560px);max-width:560px;max-height:88dvh;overflow:auto;padding:0;border:0;border-radius:18px;background:#fffdf7;color:#263d32;box-shadow:0 20px 70px #0005}
.hunter-post-detail-dialog::backdrop{background:#101b20b8;backdrop-filter:blur(3px)}
.hunter-post-detail-dialog>.x{position:sticky;float:right;top:9px;right:9px;z-index:3;margin:9px 9px -42px 0;background:#fffdf0}
.hunter-post-detail-image{display:block;width:100%;max-height:55dvh;object-fit:cover;background:#eee}
.hunter-post-detail-content{padding:17px 18px 22px}
.hunter-post-detail-content h2{margin:0;color:#294b3d;font-size:22px;font-weight:900;line-height:1.15}
.hunter-post-detail-address{margin:6px 0 13px;color:#6c756e;font-size:13px;line-height:1.4}
.hunter-post-detail-meta{display:flex;justify-content:space-between;color:#68746d;font-size:11px}
.hunter-post-detail-caption{margin:12px 0;color:#263d32;font-size:14px;line-height:1.45}
.hunter-post-detail-reactions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:12px 0;padding:8px 0;border-top:1px solid #eee7d9;border-bottom:1px solid #eee7d9}
.hunter-comments-placeholder{padding:14px 0 0}
.hunter-comments-placeholder h3{margin:0 0 6px;font-size:16px}
.hunter-comments-placeholder p{margin:0;color:#778078;font-size:12px;line-height:1.45}


/* Alpha 1.0.188 — restore Hunter username and tighten card information hierarchy. */
.hunter-pin-details{padding:5px 2px 0}
.hunter-pin-author{display:flex;justify-content:space-between;align-items:center;min-height:13px;margin:0;color:#68746d;font-size:10px}
.hunter-pin-author strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#637168;font-size:10px;font-weight:700}
.hunter-pin-author time{margin-left:auto;flex-shrink:0;color:#928879;font-size:9px}
.hunter-pin-shop{margin:2px 0 0;font-size:clamp(13px,3.6vw,16px);line-height:1.12}
.hunter-pin-caption{margin:7px 0 0;padding:7px 8px;border-left:3px solid #d7a66c;border-radius:0 7px 7px 0;background:#f4ecdc;color:#62513e;font-size:11px;font-style:italic;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.hunter-reaction-area{margin-top:6px;padding-top:5px}

/* Alpha 1.0.189 — remove inherited button sizing and compact Hunters card rhythm. */
.hunter-board-dialog .hunter-pin-details{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:3px 2px 0!important}
.hunter-board-dialog .hunter-pin-author{flex:0 0 auto;min-height:12px;height:auto;margin:0!important;padding:0!important;line-height:1.15}
.hunter-board-dialog .hunter-pin-shop{display:block;flex:0 0 auto;width:100%;height:auto!important;min-height:0!important;margin:2px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;line-height:1.15!important}
.hunter-board-dialog .hunter-pin-caption{display:block;flex:0 0 auto;min-height:0;height:auto;margin:5px 0 0!important;padding:6px 8px!important;line-height:1.25!important}
.hunter-board-dialog .hunter-reaction-area{flex:0 0 auto;margin:4px 0 0!important;padding:4px 0 0!important}
.hunter-board-dialog .hunter-reaction-row{min-height:0;height:auto;align-items:center}
.hunter-board-dialog .hunter-reaction{height:29px!important;min-height:29px!important;margin:0!important;padding:2px 1px!important}
.hunter-board-dialog .hunter-admin-delete{align-self:flex-start;min-height:30px;margin-top:6px!important;padding:5px 10px}

/* Alpha 1.0.190 — carry the corkboard treatment into the Hunters post detail view. */
.hunter-post-detail-dialog{
 box-sizing:border-box;
 padding:0!important;
 border:0!important;
 outline:0!important;
 background-color:#d9bd91!important;
 background-image:radial-gradient(rgba(105,70,34,.15) .8px,transparent .8px)!important;
 background-size:8px 8px!important;
 overflow-x:hidden!important;
 scrollbar-width:thin;
 scrollbar-color:#b99a6d #d9bd91;
}
.hunter-post-detail-dialog::-webkit-scrollbar{width:5px}
.hunter-post-detail-dialog::-webkit-scrollbar-track{background:#d9bd91}
.hunter-post-detail-dialog::-webkit-scrollbar-thumb{background:#b99a6d;border-radius:8px}
.hunter-post-detail-image{
 display:block!important;
 box-sizing:border-box!important;
 width:100%!important;
 max-width:none!important;
 height:auto!important;
 max-height:52dvh!important;
 margin:0!important;
 padding:0!important;
 border:0!important;
 outline:0!important;
 border-radius:0!important;
 object-fit:cover;
 background:transparent!important;
}
.hunter-post-detail-content{
 margin:0 10px 10px!important;
 padding:15px 15px 18px!important;
 border:0!important;
 border-radius:0 0 12px 12px;
 background:#fffdf7;
}
.hunter-post-detail-reactions{
 display:flex!important;
 flex-wrap:nowrap!important;
 align-items:center;
 justify-content:flex-start!important;
 gap:7px!important;
 margin:10px 0 0!important;
 padding:8px 0!important;
 border-top:1px solid #eee7d9;
 border-bottom:1px solid #eee7d9;
}
.hunter-post-detail-reactions .hunter-reaction{
 position:relative;
 display:inline-flex!important;
 flex:0 0 auto!important;
 flex-direction:row!important;
 align-items:center!important;
 justify-content:center!important;
 gap:3px!important;
 width:auto!important;
 min-width:48px!important;
 height:34px!important;
 min-height:34px!important;
 margin:0!important;
 padding:3px 7px!important;
 border:1px solid #e8dfd0!important;
 border-radius:18px!important;
 background:#f7f1e7!important;
 box-shadow:none!important;
}
.hunter-post-detail-reactions .hunter-reaction span{font-size:17px!important;line-height:1}
.hunter-post-detail-reactions .hunter-reaction small{
 position:static!important;
 display:inline-grid!important;
 place-items:center;
 min-width:13px!important;
 height:13px!important;
 padding:0 3px!important;
 border:0!important;
 border-radius:9px!important;
 background:#e3ddd2!important;
 color:#5d5549!important;
 font-size:9px!important;
 line-height:1!important;
}
.hunter-post-detail-reactions .hunter-reaction.is-selected{
 border-color:#d8b6a1!important;
 background:#f4e7dc!important;
}
.hunter-post-detail-reactions .hunter-reaction.is-selected small{background:#d96b7b!important;color:#fff!important}
.hunter-post-detail-reactions .hunter-reaction-people{display:none!important}
@media(max-width:420px){
 .hunter-post-detail-content{margin-left:7px!important;margin-right:7px!important;padding:13px 12px 16px!important}
 .hunter-post-detail-reactions{gap:5px!important}
 .hunter-post-detail-reactions .hunter-reaction{min-width:43px!important;padding:3px 5px!important}
}

/* Alpha 1.0.191 — Hunters Board conversation and threaded replies. */
.hunter-comments-section{padding:14px 0 2px;border-top:1px solid #e9e0d0}
.hunter-comments-heading h3{display:flex;align-items:center;gap:8px;margin:0;color:#294b3d;font-size:17px}
.hunter-comments-heading h3 span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:20px;background:#e9e0d0;color:#665843;font-size:11px}
.hunter-comments-heading>p{margin:3px 0 12px;color:#788078;font-size:11px}
.hunter-comments-list{display:grid;gap:11px}
.hunter-comments-empty,.hunter-comments-loading,.hunter-comments-error{margin:0;padding:10px 0;color:#7b817a;font-size:12px}
.hunter-comments-error{color:#a33d32}
.hunter-comment-thread{display:grid;gap:8px}
.hunter-comment{display:flex;align-items:flex-start;gap:8px;min-width:0}
.hunter-comment-avatar{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#e8eee5;color:#48614f;font-size:13px}
.hunter-comment-main{flex:1;min-width:0;padding:1px 0}
.hunter-comment-byline{display:flex;align-items:center;gap:8px;min-width:0}
.hunter-comment-byline strong{overflow:hidden;color:#42564a;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.hunter-comment-byline time{flex-shrink:0;margin-left:auto;color:#9a9589;font-size:9px}
.hunter-comment-text{margin:3px 0 0;color:#38483e;font-size:12px;line-height:1.4;overflow-wrap:anywhere;white-space:pre-wrap}
.hunter-comment.is-deleted .hunter-comment-text{color:#96948d;font-style:italic}
.hunter-comment-actions{display:flex;gap:12px;margin-top:3px}
.hunter-comment-actions button{min-height:24px;padding:1px 0;border:0;background:none;color:#71816f;font-size:10px;font-weight:700}
.hunter-comment-actions .hunter-comment-delete{color:#a66c61}
.hunter-comment.is-reply{margin-left:35px;padding-left:9px;border-left:2px solid #e6dccb}
.hunter-comment-form{display:grid;gap:7px;margin-top:13px;padding:10px;border:1px solid #e5dac7;border-radius:12px;background:#f7f0e3}
.hunter-comment-form textarea{width:100%;min-height:56px;resize:vertical;padding:8px 9px;border:1px solid #ded3c0;border-radius:8px;background:#fffdf8;color:#34463b;font:12px/1.4 'DM Sans',sans-serif}
.hunter-comment-form-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}
.hunter-comment-form-footer small{color:#858174;font-size:9px}
.hunter-comment-submit{min-height:32px;padding:5px 14px;border:0;border-radius:8px;background:#315d48;color:#fff;font-size:11px}
.hunter-comment-submit:disabled{opacity:.55}
.hunter-comment-replying{color:#6a765e;font-size:10px;font-weight:700}
.hunter-comment-cancel-reply{justify-self:start;min-height:22px;padding:0;border:0;background:none;color:#98745b;font-size:10px}
.hunter-comment-status{margin:0;color:#a33d32;font-size:10px}


/* Alpha 1.0.192 — improve readability across the Hunters conversation UI. */
.hunter-comments-heading>p{font-size:13px;line-height:1.45}
.hunter-comments-empty,.hunter-comments-loading,.hunter-comments-error{font-size:14px;line-height:1.5}
.hunter-comment-avatar{flex-basis:34px;width:34px;height:34px;font-size:15px}
.hunter-comment-byline strong{font-size:13px}
.hunter-comment-byline time{font-size:11px}
.hunter-comment-text{font-size:15px;line-height:1.5}
.hunter-comment-actions{gap:16px;margin-top:5px}
.hunter-comment-actions button{font-size:12px;min-height:28px}
.hunter-comment.is-reply{margin-left:40px;padding-left:11px}
.hunter-comment-form{gap:9px;padding:12px}
.hunter-comment-form textarea{min-height:76px;padding:10px 11px;font-size:15px;line-height:1.45}
.hunter-comment-form-footer small{font-size:11px}
.hunter-comment-submit{min-height:36px;font-size:13px}
.hunter-comment-replying{font-size:12px}
.hunter-comment-cancel-reply{font-size:12px;min-height:26px}
.hunter-comment-status{font-size:12px;line-height:1.4}


/* Alpha 1.0.193 — keep the new-comment composer prominent above the thread. */
.hunter-comment-form{margin-top:12px;margin-bottom:16px}
.hunter-comments-list{margin-top:4px}


/* Alpha 1.0.194 — moderated comments are removed from the visible thread. */
.hunter-comment.is-moderator-removed{display:none!important}


/* Alpha 1.0.196 — content reporting controls. */
.hunter-content-report,.hunter-comment-report{font-size:12px;min-height:28px;color:#9a5d50}
.hunter-content-report{margin-left:auto;align-self:center}
.hunter-comment-report{margin-left:4px}
#contentReportForm{gap:10px}
#contentReportForm>label{font-weight:750;color:#53675c;font-size:13px}
#contentReportReason,#contentReportDetails{width:100%;box-sizing:border-box;border:1px solid #d8d0c0;border-radius:12px;background:#fff;padding:12px;font:inherit}
#contentReportDetails{resize:vertical}
#contentReportForm .modalhead p{font-size:13px;line-height:1.45;color:#778078}


/* Alpha 1.0.198 — direct access to the reported item from the moderation inbox. */
.admin-report-view-item{flex:0 0 auto;min-height:32px;padding:6px 11px;border:1px solid #d8dfd5;border-radius:9px;background:#f4f7f1;color:#315d48;font-size:12px;font-weight:800;white-space:nowrap}
.admin-feedback-bottom{flex-wrap:wrap;gap:8px}
.hunter-comment.is-report-focus{margin:-4px;padding:8px;border:2px solid #d59b4d;border-radius:12px;background:#fff5df;box-shadow:0 0 0 4px #d59b4d22}


/* Alpha 1.0.199 — compact Hunters reporting and cleaner post-detail reactions. */
.hunter-post-detail-reactions .hunter-reaction{
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.hunter-post-detail-reactions .hunter-reaction.is-selected{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.hunter-post-detail-reactions .hunter-reaction:focus-visible{
  outline:2px solid #b78b62!important;
  outline-offset:2px;
}
.hunter-post-detail-reactions .hunter-content-report{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:36px!important;
  min-height:36px!important;
  margin:0 0 0 auto!important;
  padding:0 11px!important;
  border:1px solid #e5d7c5!important;
  border-radius:10px!important;
  background:#fffaf1!important;
  color:#986052!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.hunter-post-detail-reactions .hunter-content-report span:first-child{font-size:16px;line-height:1}
.hunter-comment-actions .hunter-comment-report{
  display:inline-grid;
  place-items:center;
  width:28px;
  min-width:28px;
  height:28px;
  min-height:28px;
  margin:0 0 0 auto;
  padding:0;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#9a7568;
  font-size:16px;
  line-height:1;
}
.hunter-comment-actions .hunter-comment-report:active{background:#f2e9dd}
.hunter-comment-actions .hunter-comment-report:focus-visible{outline:2px solid #b78b62;outline-offset:2px}


/* Alpha 1.0.200 — tighter post-detail reactions with one combined total. */
.hunter-post-detail-reactions{
  justify-content:flex-start!important;
  gap:7px!important;
}
.hunter-post-detail-reactions .hunter-reaction-set{
  display:inline-flex;
  flex:0 1 auto;
  min-width:0;
  align-items:center;
  gap:3px;
}
.hunter-post-detail-reactions .hunter-reaction{
  min-width:34px!important;
  width:34px!important;
  height:31px!important;
  min-height:31px!important;
  padding:2px 3px!important;
}
.hunter-post-detail-reactions .hunter-reaction span{font-size:17px!important}
.hunter-post-detail-reactions .hunter-reaction small{font-size:8px!important}
.hunter-post-detail-reactions .hunter-reaction-total{
  flex:0 0 auto;
  margin-left:2px;
  color:#81796d;
  font-size:10px;
  font-weight:750;
  white-space:nowrap;
}
.hunter-post-detail-reactions .hunter-content-report{margin-left:auto!important}
@media(max-width:420px){
  .hunter-post-detail-reactions{gap:4px!important}
  .hunter-post-detail-reactions .hunter-reaction-set{gap:1px}
  .hunter-post-detail-reactions .hunter-reaction{min-width:30px!important;width:30px!important}
  .hunter-post-detail-reactions .hunter-reaction-total{font-size:9px;margin-left:1px}
  .hunter-post-detail-reactions .hunter-content-report{padding:0 8px!important;font-size:11px!important}
}


/* Alpha 1.0.201 — Facebook-style action row directly beneath the Hunters photo. */
.hunter-post-detail-dialog>.hunter-post-detail-image{margin:0}
.hunter-post-detail-dialog>.hunter-post-detail-reactions{
  box-sizing:border-box;
  display:flex!important;
  width:auto!important;
  margin:0 10px!important;
  padding:7px 9px!important;
  border-top:0!important;
  border-bottom:1px solid #eee7d9!important;
  background:#fffdf7;
}
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-reaction-set{gap:3px}
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-content-report{margin-left:auto!important}
@media(max-width:420px){
  .hunter-post-detail-dialog>.hunter-post-detail-reactions{margin:0 7px!important;padding:6px 5px!important}
}


/* Alpha 1.0.202 — show only the combined reaction total, not per-emoji counts. */
.hunter-post-detail-reactions .hunter-reaction-set>.hunter-reaction small{
  display:none!important;
}


/* Alpha 1.0.203 — tighter reactions, clear selected state, stable report action. */
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-reaction-set{gap:0!important}
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-reaction{
  width:32px!important;
  min-width:32px!important;
  padding:2px 1px!important;
  border-radius:10px!important;
  transition:background .15s ease,box-shadow .15s ease,transform .15s ease;
}
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-reaction.is-selected{
  background:#edf4ec!important;
  box-shadow:inset 0 0 0 1px #b9cfbb,0 2px 5px #294b3d26!important;
}
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-reaction.is-selected span{
  transform:scale(1.08);
}
.hunter-post-detail-dialog>.hunter-post-detail-reactions .hunter-content-report{
  visibility:visible!important;
  opacity:1!important;
}


/* SpotWorth geometric beagle brand mark */
.brand{gap:9px}
.brand-mark-icon{display:block;flex:0 0 38px;width:38px;height:38px;object-fit:contain;border-radius:50%}
@media(max-width:760px){.brand-mark-icon{flex-basis:34px;width:34px;height:34px}}

/* Alpha 1.0.208 — warm cream SpotWorth header with a more prominent beagle mark. */
body>header.app-topbar{
 background:#f8f4e9!important;
 border-bottom:1px solid #e6ddca!important;
}
body>header.app-topbar .brand{
 color:#24392f!important;
}
body>header.app-topbar .brand-mark-icon{
 flex:0 0 56px!important;
 width:56px!important;
 height:56px!important;
}
body>header.app-topbar .header-icon-row>button{
 color:#24392f!important;
}
body>header.app-topbar .header-info-button span{
 border-color:currentColor!important;
 color:#24392f!important;
}
body>header.app-topbar .header-settings-button .settings-cog-png{
 filter:brightness(0) saturate(100%) invert(19%) sepia(13%) saturate(1038%) hue-rotate(98deg) brightness(92%) contrast(91%)!important;
}
body>header.app-topbar .header-settings-button .material-symbols-rounded{
 color:#24392f!important;
}
body>header.app-topbar .header-feedback-button svg,
body>header.app-topbar .header-price-alerts svg{
 stroke:#24392f!important;
}
body>header.app-topbar #account #headerProfileLevel{
 color:#24392f!important;
}
@media(max-width:760px){
 body>header.app-topbar .brand-mark-icon{
  flex-basis:50px!important;width:50px!important;height:50px!important;
 }
}
@media(max-width:360px){
 body>header.app-topbar .brand-mark-icon{
  flex-basis:46px!important;width:46px!important;height:46px!important;
 }
}


/* Alpha 1.0.209 — branded SpotWorth wordmark, underline swipe and compact tagline. */
body>header.app-topbar .brand{
 align-items:center!important;
 gap:clamp(8px,1.4vw,12px)!important;
}
body>header.app-topbar .brand-wordmark{
 display:flex!important;
 flex-direction:column!important;
 align-items:flex-start!important;
 justify-content:center!important;
 min-width:0!important;
 gap:2px!important;
}
body>header.app-topbar .brand-wordmark-text{
 display:block!important;
 color:#123f30!important;
 font-family:Manrope,"DM Sans",sans-serif!important;
 font-size:clamp(22px,5.2vw,32px)!important;
 font-weight:900!important;
 letter-spacing:-1.35px!important;
 line-height:.98!important;
 white-space:nowrap!important;
}
body>header.app-topbar .brand-wordmark-underline{
 display:block!important;
 width:72%!important;
 height:5px!important;
 margin:1px 0 0 2px!important;
 border-radius:100% 65% 100% 65%!important;
 background:#4b9e35!important;
 transform:rotate(-1.8deg)!important;
}
body>header.app-topbar .brand-tagline{
 display:block!important;
 margin:2px 0 0 1px!important;
 color:#234b3a!important;
 font-family:"DM Sans",sans-serif!important;
 font-size:clamp(6px,1.45vw,9px)!important;
 font-weight:800!important;
 letter-spacing:clamp(.65px,.18vw,1.15px)!important;
 line-height:1.1!important;
 white-space:nowrap!important;
}
@media(max-width:390px){
 body>header.app-topbar .brand-wordmark-text{font-size:clamp(20px,5.1vw,25px)!important;letter-spacing:-1px!important}
 body>header.app-topbar .brand-wordmark-underline{height:4px!important}
 body>header.app-topbar .brand-tagline{font-size:6px!important;letter-spacing:.55px!important}
}
@media(max-width:350px){
 body>header.app-topbar .brand-tagline{display:none!important}
}


/* Alpha 1.0.210 — larger SpotWorth identity and version/info row beneath it. */
body>header.app-topbar .brand{gap:clamp(9px,1.5vw,14px)!important}
body>header.app-topbar .brand-mark-icon{
 flex-basis:64px!important;width:64px!important;height:64px!important;
}
body>header.app-topbar .brand-wordmark{gap:3px!important}
body>header.app-topbar .brand-wordmark-text{
 font-size:clamp(25px,5.8vw,36px)!important;
 letter-spacing:-1.6px!important;
}
body>header.app-topbar .brand-wordmark-underline{
 width:76%!important;height:6px!important;margin-top:2px!important;
}
body>header.app-topbar .brand-tagline{
 margin-top:3px!important;
 font-size:clamp(7px,1.65vw,10px)!important;
 letter-spacing:clamp(.75px,.2vw,1.25px)!important;
}
body>header.app-topbar .brand-meta{
 display:flex!important;align-items:center!important;gap:7px!important;
 margin:2px 0 0 1px!important;min-height:19px!important;
}
body>header.app-topbar .brand-version{
 color:#6c7d70!important;
 font:800 9px/1 "DM Sans",sans-serif!important;
 letter-spacing:1.15px!important;
 white-space:nowrap!important;
}
body>header.app-topbar .brand-meta .header-info-button{
 display:grid!important;place-items:center!important;
 flex:0 0 17px!important;width:17px!important;height:17px!important;
 margin:0!important;padding:0!important;border:1px solid #315743!important;
 border-radius:50%!important;background:transparent!important;color:#174b38!important;
 box-shadow:none!important;
}
body>header.app-topbar .brand-meta .header-info-button span{
 display:grid!important;place-items:center!important;width:11px!important;height:11px!important;
 border:1px solid currentColor!important;border-radius:50%!important;
 font:700 8px/1 Georgia,serif!important;
}
body>header.app-topbar .header-icon-row{align-self:center!important}
@media(max-width:760px){
 body>header.app-topbar .brand-mark-icon{flex-basis:58px!important;width:58px!important;height:58px!important}
 body>header.app-topbar .brand-wordmark-text{font-size:clamp(23px,6vw,31px)!important;letter-spacing:-1.3px!important}
 body>header.app-topbar .brand-tagline{font-size:clamp(6px,1.65vw,8px)!important;letter-spacing:.65px!important}
 body>header.app-topbar .brand-version{font-size:8px!important}
}
@media(max-width:390px){
 body>header.app-topbar .brand-mark-icon{flex-basis:52px!important;width:52px!important;height:52px!important}
 body>header.app-topbar .brand-wordmark-text{font-size:22px!important}
 body>header.app-topbar .brand-tagline{font-size:6px!important;letter-spacing:.45px!important}
}


/* Alpha 1.0.211 — rebuild header identity as a clean two-row grid. */
body>header.app-topbar{height:auto!important;min-height:0!important;max-height:none!important;padding:12px clamp(12px,3vw,28px)!important;overflow:visible!important}
body>header.app-topbar .brand-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:clamp(10px,2vw,22px)!important;min-height:0!important;width:100%!important}
body>header.app-topbar .brand-identity{display:grid!important;grid-template-columns:58px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:3px;flex:1 1 auto!important;min-width:0!important;align-items:center!important}
body>header.app-topbar .brand-identity>.brand{display:grid!important;grid-column:1/-1!important;grid-row:1!important;grid-template-columns:58px minmax(0,1fr)!important;column-gap:12px!important;align-items:center!important;min-width:0!important;width:100%!important;flex:none!important;gap:0!important;overflow:visible!important}
body>header.app-topbar .brand-identity .brand-mark-icon{grid-column:1!important;grid-row:1!important;width:58px!important;height:58px!important;flex:none!important}
body>header.app-topbar .brand-identity .brand-wordmark{grid-column:2!important;grid-row:1!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important;gap:3px!important;overflow:visible!important}
body>header.app-topbar .brand-wordmark-text{font-size:clamp(25px,5.4vw,35px)!important;letter-spacing:-1.5px!important;line-height:1.05!important}
body>header.app-topbar .brand-wordmark-underline{width:72%!important;height:5px!important;margin:0 0 0 2px!important}
body>header.app-topbar .brand-tagline{display:block!important;margin:2px 0 0 1px!important;font-size:clamp(7px,1.45vw,9px)!important;letter-spacing:clamp(.6px,.15vw,1px)!important;line-height:1.2!important;white-space:nowrap!important}
body>header.app-topbar .brand-identity>.brand-meta{grid-column:2!important;grid-row:2!important;display:flex!important;align-items:center!important;gap:7px!important;margin:0!important;min-height:18px!important}
body>header.app-topbar .brand-version{color:#6c7d70!important;font:800 9px/1.2 "DM Sans",sans-serif!important;letter-spacing:1.1px!important;white-space:nowrap!important}
body>header.app-topbar .brand-meta .header-info-button{display:grid!important;place-items:center!important;position:static!important;flex:none!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;border:1px solid #315743!important;border-radius:50%!important;background:transparent!important;color:#174b38!important;box-shadow:none!important}
body>header.app-topbar .brand-meta .header-info-button span{display:grid!important;place-items:center!important;width:11px!important;height:11px!important;min-width:11px!important;min-height:11px!important;border:1px solid currentColor!important;border-radius:50%!important;font:700 8px/1 Georgia,serif!important}
body>header.app-topbar .header-icon-row{align-self:center!important;flex:none!important}
@media(max-width:760px){body>header.app-topbar{padding:10px 12px!important}body>header.app-topbar .brand-identity{grid-template-columns:54px minmax(0,1fr);column-gap:9px}body>header.app-topbar .brand-identity>.brand{grid-template-columns:54px minmax(0,1fr)!important;column-gap:9px!important}body>header.app-topbar .brand-identity .brand-mark-icon{width:54px!important;height:54px!important}body>header.app-topbar .brand-wordmark-text{font-size:clamp(22px,5.7vw,30px)!important;letter-spacing:-1.2px!important}body>header.app-topbar .brand-tagline{font-size:clamp(6px,1.55vw,8px)!important;letter-spacing:.55px!important}body>header.app-topbar .brand-version{font-size:8px!important}}
@media(max-width:390px){body>header.app-topbar .brand-identity{grid-template-columns:48px minmax(0,1fr);column-gap:8px}body>header.app-topbar .brand-identity>.brand{grid-template-columns:48px minmax(0,1fr)!important;column-gap:8px!important}body>header.app-topbar .brand-identity .brand-mark-icon{width:48px!important;height:48px!important}body>header.app-topbar .brand-wordmark-text{font-size:21px!important}body>header.app-topbar .brand-tagline{font-size:5.8px!important;letter-spacing:.35px!important}}


/* Alpha 1.0.212 — stable flex-based header; no clipped brand or metadata. */
body>header.app-topbar{
 box-sizing:border-box!important;
 display:block!important;
 height:auto!important;min-height:0!important;max-height:none!important;
 padding:10px 12px 12px!important;
 overflow:visible!important;
}
body>header.app-topbar .brand-row{
 display:flex!important;align-items:flex-start!important;justify-content:space-between!important;
 width:100%!important;min-height:0!important;height:auto!important;
 gap:10px!important;overflow:visible!important;
}
body>header.app-topbar .brand-identity{
 display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
 align-items:stretch!important;justify-content:flex-start!important;
 min-width:0!important;width:auto!important;height:auto!important;
 gap:5px!important;overflow:visible!important;
}
body>header.app-topbar .brand-identity>.brand{
 display:flex!important;flex:0 1 auto!important;flex-direction:row!important;
 align-items:center!important;justify-content:flex-start!important;
 width:auto!important;min-width:0!important;height:auto!important;
 gap:9px!important;overflow:visible!important;
}
body>header.app-topbar .brand-identity .brand-mark-icon{
 display:block!important;flex:0 0 54px!important;
 width:54px!important;height:54px!important;max-width:54px!important;
 object-fit:contain!important;overflow:visible!important;
}
body>header.app-topbar .brand-identity .brand-wordmark{
 display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
 align-items:flex-start!important;justify-content:center!important;
 min-width:0!important;width:auto!important;height:auto!important;
 gap:3px!important;overflow:visible!important;
}
body>header.app-topbar .brand-wordmark-text{
 display:block!important;position:static!important;
 font-size:clamp(25px,5.5vw,34px)!important;
 line-height:1.12!important;letter-spacing:-1.45px!important;
 white-space:nowrap!important;overflow:visible!important;
}
body>header.app-topbar .brand-wordmark-underline{
 display:block!important;flex:none!important;width:72%!important;height:5px!important;
 margin:0 0 0 2px!important;overflow:visible!important;
}
body>header.app-topbar .brand-tagline{
 display:block!important;position:static!important;
 margin:2px 0 0 1px!important;
 font-size:clamp(6px,1.5vw,8px)!important;
 line-height:1.35!important;letter-spacing:.55px!important;
 white-space:nowrap!important;overflow:visible!important;
}
body>header.app-topbar .brand-identity>.brand-meta{
 display:flex!important;position:static!important;
 flex:0 0 auto!important;align-items:center!important;justify-content:flex-start!important;
 gap:7px!important;margin:0 0 0 63px!important;padding:0!important;
 width:auto!important;height:auto!important;min-height:19px!important;
 overflow:visible!important;
}
body>header.app-topbar .brand-version{
 display:inline-block!important;position:static!important;
 color:#6c7d70!important;font:800 9px/1.35 "DM Sans",sans-serif!important;
 letter-spacing:1.1px!important;white-space:nowrap!important;
}
body>header.app-topbar .brand-meta .header-info-button{
 display:grid!important;position:static!important;place-items:center!important;
 flex:0 0 18px!important;width:18px!important;height:18px!important;
 min-width:18px!important;min-height:18px!important;
 margin:0!important;padding:0!important;border:1px solid #315743!important;
 border-radius:50%!important;background:transparent!important;
 color:#174b38!important;box-shadow:none!important;overflow:visible!important;
}
body>header.app-topbar .brand-meta .header-info-button span{
 display:grid!important;place-items:center!important;
 width:11px!important;height:11px!important;min-width:11px!important;min-height:11px!important;
 border:1px solid currentColor!important;border-radius:50%!important;
 font:700 8px/1 Georgia,serif!important;
}
body>header.app-topbar .header-icon-row{
 display:flex!important;flex:0 0 auto!important;
 align-self:flex-start!important;align-items:center!important;
 margin-top:7px!important;overflow:visible!important;
}
@media(max-width:760px){
 body>header.app-topbar{padding:9px 10px 12px!important}
 body>header.app-topbar .brand-identity>.brand{gap:8px!important}
 body>header.app-topbar .brand-identity .brand-mark-icon{
  flex-basis:50px!important;width:50px!important;height:50px!important;max-width:50px!important
 }
 body>header.app-topbar .brand-wordmark-text{font-size:clamp(22px,5.8vw,30px)!important;letter-spacing:-1.2px!important}
 body>header.app-topbar .brand-tagline{font-size:clamp(5.8px,1.55vw,8px)!important;letter-spacing:.45px!important}
 body>header.app-topbar .brand-identity>.brand-meta{margin-left:58px!important}
 body>header.app-topbar .header-icon-row{margin-top:6px!important;gap:clamp(2px,1vw,8px)!important}
}
@media(max-width:390px){
 body>header.app-topbar .brand-identity .brand-mark-icon{
  flex-basis:46px!important;width:46px!important;height:46px!important;max-width:46px!important
 }
 body>header.app-topbar .brand-wordmark-text{font-size:21px!important}
 body>header.app-topbar .brand-tagline{font-size:5.5px!important;letter-spacing:.3px!important}
 body>header.app-topbar .brand-identity>.brand-meta{margin-left:54px!important}
}


/* Alpha 1.0.213 — final compact header geometry; release the legacy 60px row clip. */
body>header.app-topbar,
body>header.app-topbar.header-compact{
 box-sizing:border-box!important;display:block!important;
 height:auto!important;min-height:0!important;max-height:none!important;
 flex:0 0 auto!important;gap:0!important;
 padding:9px 12px 10px!important;overflow:visible!important;
 transition:none!important;will-change:auto!important;
}
body>header.app-topbar .brand-row,
body>header.app-topbar.header-compact .brand-row{
 display:flex!important;align-items:flex-start!important;justify-content:space-between!important;
 width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
 margin:0!important;padding:0!important;gap:10px!important;
 opacity:1!important;overflow:visible!important;transition:none!important;
}
body>header.app-topbar .brand-identity{
 display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
 align-items:stretch!important;justify-content:flex-start!important;
 min-width:0!important;width:auto!important;height:auto!important;gap:4px!important;
 overflow:visible!important;
}
body>header.app-topbar .brand-identity>.brand,
body>header.app-topbar.header-compact .brand-identity>.brand{
 display:flex!important;flex:0 1 auto!important;flex-direction:row!important;
 align-items:center!important;justify-content:flex-start!important;
 min-width:0!important;width:auto!important;height:auto!important;
 gap:9px!important;font-size:inherit!important;overflow:visible!important;
}
body>header.app-topbar .brand-identity .brand-mark-icon{
 display:block!important;flex:0 0 54px!important;
 width:54px!important;height:54px!important;max-width:54px!important;
 object-fit:contain!important;
}
body>header.app-topbar .brand-identity .brand-wordmark{
 display:flex!important;flex:1 1 auto!important;flex-direction:column!important;
 align-items:flex-start!important;justify-content:center!important;
 min-width:0!important;width:auto!important;height:auto!important;
 gap:2px!important;overflow:visible!important;
}
body>header.app-topbar .brand-wordmark-text{
 display:block!important;position:static!important;
 font-size:clamp(25px,5.5vw,34px)!important;
 font-weight:900!important;line-height:1.08!important;
 letter-spacing:-1.45px!important;white-space:nowrap!important;
 overflow:visible!important;
}
body>header.app-topbar .brand-wordmark-underline{
 display:block!important;flex:none!important;width:70%!important;height:4px!important;
 margin:0 0 0 2px!important;overflow:visible!important;
}
body>header.app-topbar .brand-tagline{
 display:block!important;position:static!important;
 margin:2px 0 0 1px!important;
 font-size:clamp(6px,1.45vw,8px)!important;
 font-weight:800!important;line-height:1.3!important;
 letter-spacing:.4px!important;white-space:nowrap!important;
 overflow:visible!important;
}
body>header.app-topbar .brand-identity>.brand-meta,
body>header.app-topbar.header-compact .brand-identity>.brand-meta{
 display:flex!important;position:static!important;
 flex:0 0 auto!important;align-items:center!important;justify-content:flex-start!important;
 gap:6px!important;margin:0 0 0 63px!important;padding:0!important;
 width:auto!important;height:auto!important;min-height:15px!important;
 opacity:1!important;overflow:visible!important;
}
body>header.app-topbar .brand-version{
 display:inline-block!important;position:static!important;
 color:#879187!important;font:700 8px/1.3 "DM Sans",sans-serif!important;
 letter-spacing:1px!important;white-space:nowrap!important;
}
body>header.app-topbar .brand-meta .header-info-button{
 display:grid!important;position:static!important;place-items:center!important;
 flex:0 0 15px!important;width:15px!important;height:15px!important;
 min-width:15px!important;min-height:15px!important;
 margin:0!important;padding:0!important;border:1px solid #315743!important;
 border-radius:50%!important;background:transparent!important;
 color:#174b38!important;box-shadow:none!important;overflow:visible!important;
}
body>header.app-topbar .brand-meta .header-info-button span{
 display:grid!important;place-items:center!important;
 width:9px!important;height:9px!important;min-width:9px!important;min-height:9px!important;
 border:1px solid currentColor!important;border-radius:50%!important;
 font:700 7px/1 Georgia,serif!important;
}
body>header.app-topbar .header-icon-row{
 display:flex!important;flex:0 0 auto!important;
 align-self:flex-start!important;align-items:center!important;
 margin-top:6px!important;overflow:visible!important;
}
body>header.app-topbar.header-compact .brand-identity,
body>header.app-topbar.header-compact .brand-wordmark,
body>header.app-topbar.header-compact .brand-tagline,
body>header.app-topbar.header-compact .brand-meta{opacity:1!important;max-height:none!important}
body>header.app-topbar.header-compact .brand-identity .brand-mark-icon{
 flex-basis:54px!important;width:54px!important;height:54px!important
}
body>header.app-topbar.header-compact .brand-wordmark-text{font-size:clamp(25px,5.5vw,34px)!important}
body>header.app-topbar.header-compact .brand-row>#accountSettingsOpen,
body>header.app-topbar.header-compact .brand-row>#priceAlertsOpen{transform:none!important}
@media(max-width:760px){
 body>header.app-topbar,body>header.app-topbar.header-compact{padding:8px 10px 9px!important}
 body>header.app-topbar .brand-identity>.brand,
 body>header.app-topbar.header-compact .brand-identity>.brand{gap:8px!important}
 body>header.app-topbar .brand-identity .brand-mark-icon{
  flex-basis:50px!important;width:50px!important;height:50px!important;max-width:50px!important
 }
 body>header.app-topbar .brand-wordmark-text{font-size:clamp(22px,5.8vw,30px)!important;letter-spacing:-1.2px!important}
 body>header.app-topbar .brand-tagline{font-size:clamp(5.8px,1.5vw,7.5px)!important;letter-spacing:.35px!important}
 body>header.app-topbar .brand-identity>.brand-meta,
 body>header.app-topbar.header-compact .brand-identity>.brand-meta{margin-left:58px!important}
 body>header.app-topbar .header-icon-row{margin-top:5px!important;gap:clamp(2px,1vw,8px)!important}
}
@media(max-width:390px){
 body>header.app-topbar .brand-identity .brand-mark-icon{flex-basis:46px!important;width:46px!important;height:46px!important;max-width:46px!important}
 body>header.app-topbar .brand-wordmark-text{font-size:21px!important}
 body>header.app-topbar .brand-tagline{font-size:5.5px!important;letter-spacing:.25px!important}
 body>header.app-topbar .brand-identity>.brand-meta,
 body>header.app-topbar.header-compact .brand-identity>.brand-meta{margin-left:54px!important}
}


/* SpotWorth username setup and editing */
.account-username-setting,.profile-username-editor{display:grid;gap:10px;padding:16px 0;border-bottom:1px solid var(--line,#e6e8e5);}
.account-username-setting>div,.profile-username-editor>div{display:grid;gap:4px;}
.account-username-setting>div>small,.profile-username-editor>div>small{font-size:.68rem;font-weight:800;letter-spacing:.09em;color:var(--muted,#68736b);}
.account-username-setting>div>strong,.profile-username-editor>div>strong{font-size:1rem;}
.account-username-setting p{margin:0;color:var(--muted,#68736b);font-size:.85rem;}
.username-edit-field{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 12px;border:1px solid var(--line,#dfe5df);border-radius:12px;background:var(--surface,#fff);}
.username-edit-field>span{font-weight:800;color:var(--muted,#68736b);}
.username-edit-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:inherit;font:inherit;}
.username-edit-status{min-height:1.1em;font-size:.8rem;color:var(--muted,#68736b);}
.username-edit-status[data-state="error"]{color:#b42318;}
.username-edit-status[data-state="success"]{color:#167044;}
.profile-username-editor{margin:0 16px 16px;padding:14px;border:1px solid var(--line,#e6e8e5);border-radius:14px;background:var(--surface,#fff);}
.username-reminder-dialog{width:min(420px,calc(100% - 32px));padding:0;border:0;border-radius:22px;box-shadow:0 24px 80px #10251d33;}
.username-reminder-dialog::backdrop{background:#10251d88;backdrop-filter:blur(3px);}
.username-reminder-panel{display:grid;gap:12px;padding:26px;text-align:center;}
.username-reminder-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto;border-radius:17px;background:#eaf3e9;color:#245b3d;font-size:1.8rem;font-weight:900;}
.username-reminder-panel>small{font-size:.68rem;font-weight:800;letter-spacing:.1em;color:var(--muted,#68736b);}
.username-reminder-panel h2{margin:0;font-size:1.45rem;}
.username-reminder-panel p{margin:0 0 8px;color:var(--muted,#68736b);line-height:1.5;}
.username-reminder-panel .quiet{justify-self:center;}

/* Alpha v1.0.215 — private Spotter warning notification. */
.spotter-warning-dialog{box-sizing:border-box;width:min(440px,calc(100% - 28px));max-width:440px;max-height:calc(var(--gf-visual-viewport-height,100dvh) - 28px - env(safe-area-inset-top));overflow-y:auto;padding:0;border:0;border-radius:24px;background:#fffdf7;color:#26382d;box-shadow:0 24px 80px rgba(12,35,23,.3);}
.spotter-warning-dialog::backdrop{background:rgba(12,28,20,.72);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);}
.spotter-warning-panel{display:grid;gap:13px;padding:28px 25px 25px;text-align:center;}
.spotter-warning-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto;border-radius:19px;background:#fff0d7;color:#9a5a08;font-size:2rem;font-weight:900;}
.spotter-warning-panel>small{color:#98703a;font-size:.68rem;font-weight:850;letter-spacing:.12em;}
.spotter-warning-panel h2{margin:0;color:#26382d;font-size:1.45rem;line-height:1.2;}
.spotter-warning-panel>p{margin:0;color:#647168;font-size:.94rem;line-height:1.5;}
.spotter-warning-panel blockquote{margin:0;padding:15px 16px;border-left:4px solid #d99b36;border-radius:0 12px 12px 0;background:#fff5e4;color:#473b2b;text-align:left;font-size:.96rem;line-height:1.5;overflow-wrap:anywhere;}
.spotter-warning-panel .spotter-warning-guidance{font-size:.84rem;}
.spotter-warning-status{min-height:1em;color:#a52c24;font-size:.82rem;}
@media(max-width:420px){.spotter-warning-panel{padding:24px 19px 20px;}}


/* Alpha v1.0.216 — immediate contribution restriction feedback. */
.spotter-restriction-dialog .spotter-warning-icon{background:#e8eee9;color:#315a45;}
.spotter-restriction-dialog .spotter-warning-panel blockquote{border-left-color:#6d8b78;background:#eef4ef;color:#33463a;}

/* Alpha v1.0.233 — branded username change confirmation and cooldown dialogs. */
.username-change-dialog{background:#fffdf7;}
.username-change-panel{gap:13px;padding:28px 25px 25px;}
.username-change-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto;border-radius:19px;background:#eaf3e9;color:#245b3d;font-size:2rem;font-weight:900;}
.username-change-panel>small{color:#64806c;}
.username-change-panel h2{color:#26382d;}
.username-change-panel>p{margin:0;color:#647168;font-size:.96rem;line-height:1.55;}
.username-change-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;width:100%;margin-top:5px;}
.username-change-actions button{min-height:46px;padding:11px 17px;border:1px solid #d6e1d7;border-radius:12px;font:inherit;font-size:.9rem;font-weight:750;line-height:1.2;cursor:pointer;}
.username-change-primary{background:#245b3d;color:#fff;border-color:#245b3d!important;}
.username-change-secondary{background:#f2f5f0;color:#385344;}
.username-change-actions button:focus-visible{outline:3px solid #d99b36;outline-offset:3px;}
@media(max-width:420px){.username-change-panel{padding:24px 19px 20px;}.username-change-actions{flex-direction:column-reverse;}.username-change-actions button{width:100%;}}


/* Alpha v1.0.237 — keep the mobile Home feed clear of floating shortcuts. */
@media(max-width:760px){
  .floating-support{display:none!important;}
  .home-dashboard{padding-bottom:calc(44px + env(safe-area-inset-bottom))!important;}
}


/* Alpha v1.0.238 — reusable horizontal, progressively loaded Home feeds. */
.home-highlights,.home-hunters-preview{
 display:flex!important;flex-flow:row nowrap!important;align-items:stretch!important;gap:12px!important;
 width:100%;max-width:100%;overflow-x:auto!important;overflow-y:hidden!important;
 padding:2px 2px 12px!important;box-sizing:border-box!important;
 scroll-snap-type:x mandatory;scroll-padding-inline:2px;
 overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
 scrollbar-width:none;
}
.home-highlights::-webkit-scrollbar,.home-hunters-preview::-webkit-scrollbar{display:none}
.home-highlight-card,.home-hunter-card{
 flex:0 0 min(82%,300px)!important;width:min(82%,300px)!important;min-width:0!important;
 scroll-snap-align:start;box-sizing:border-box;
}
.home-hunters-preview .home-hunter-card{flex-basis:min(72%,250px)!important;width:min(72%,250px)!important}
@media(min-width:761px){
 .home-highlight-card{flex-basis:280px!important;width:280px!important}
 .home-hunters-preview .home-hunter-card{flex-basis:240px!important;width:240px!important}
}
@media(max-width:760px){
 .home-highlights,.home-hunters-preview{gap:10px!important;margin-right:-12px;width:calc(100% + 12px);padding-right:14px!important}
 .home-highlight-card{flex-basis:min(82vw,340px)!important;width:min(82vw,340px)!important}
 .home-hunters-preview .home-hunter-card{flex-basis:min(66vw,270px)!important;width:min(66vw,270px)!important}
}


/* Alpha v1.0.239 — richer Home deal cards for the horizontal layout. */
.home-highlights .home-highlight-card{
 flex:0 0 min(86vw,390px)!important;width:min(86vw,390px)!important;min-height:166px!important;
 align-items:stretch!important;gap:13px!important;padding:12px!important;
 border:1px solid #e7dfca!important;border-radius:20px!important;
 background:linear-gradient(145deg,#fffefa 0%,#fff 72%)!important;
 box-shadow:0 7px 20px rgba(32,55,43,.08)!important;
}
.home-highlights .home-highlight-image{
 width:112px!important;min-width:112px!important;height:auto!important;min-height:140px!important;
 flex:0 0 112px!important;align-self:stretch!important;border-radius:14px!important;
 background:#f4f1e8!important;overflow:hidden!important;
}
.home-highlights .home-highlight-image img{width:100%;height:100%;object-fit:contain!important}
.home-highlights .home-highlight-copy{flex:1 1 auto!important;justify-content:center!important;align-items:flex-start!important;gap:6px!important;min-width:0!important}
.home-highlight-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;max-width:100%;min-width:0}
.home-highlight-meta .store-pill{display:inline-flex;align-items:center;max-width:100%;padding:4px 9px;border:1px solid transparent;border-radius:999px;font-size:10px;font-weight:850;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-highlight-meta .brand-aldi{background:#0755a4;color:#fff;border-color:#0755a4}
.home-highlight-meta .brand-tesco{background:#0756a5;color:#fff;border-color:#e32636}
.home-highlight-meta .brand-sainsburys{background:#f36b16;color:#fff;border-color:#d85b0c}
.home-highlight-meta .brand-asda{background:#78be20;color:#fff;border-color:#65a51b}
.home-highlight-meta .brand-lidl{background:#ffdf00;color:#0050a4;border-color:#0050a4}
.home-highlight-meta .brand-morrisons{background:#007a3d;color:#fff;border-color:#007a3d}
.home-highlight-meta .brand-iceland{background:#fff;color:#d71920;border-color:#d71920}
.home-highlight-meta .brand-coop{background:#60469b;color:#fff;border-color:#60469b}
.home-highlight-meta .brand-waitrose{background:#315b43;color:#fff;border-color:#315b43}
.home-highlight-meta .brand-marks-spencer{background:#176b4b;color:#fff;border-color:#176b4b}
.home-highlight-meta .brand-ocado{background:#7b287d;color:#fff;border-color:#7b287d}
.home-highlight-meta .brand-spar{background:#fff;color:#16834a;border-color:#16834a}
.home-highlight-meta .brand-farmfoods,.home-highlight-meta .brand-heron{background:#e9f1e9;color:#245b3d;border-color:#cbdccc}
.home-highlight-meta .brand-default{background:#edf2ed;color:#405b49;border-color:#dce6dc}
.home-highlight-distance{display:inline-flex;align-items:center;gap:3px;color:#718075;font-size:10px;font-weight:750;white-space:nowrap}
.home-highlight-distance .material-symbols-rounded{font-size:13px;color:#27764d}
.home-highlights .home-highlight-copy>strong{display:-webkit-box;overflow:hidden;font-size:15px;line-height:1.22;font-weight:850;letter-spacing:-.25px;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.home-highlight-type{color:#7a877c;font-size:10px;font-weight:750}
.home-highlight-price-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.home-highlights .home-highlight-price{padding:5px 10px;border-radius:10px;background:#e5f3e7;color:#155b36;font-size:21px;line-height:1.1;font-weight:900}
.home-highlights .home-highlight-saving{padding:4px 7px;border-radius:999px;background:#f0f7ed;color:#287345;font-size:10px;font-weight:850}
.home-highlight-signal{display:inline-flex;align-items:center;gap:5px;color:#758078;font-size:9px;font-weight:800;line-height:1.2}
.home-highlight-signal .signal-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#9aa69c}
.home-highlight-signal.signal-good .signal-dot{background:#27965b}
.home-highlight-signal.signal-bad .signal-dot{background:#4d8dc5}
.home-highlight-signal.signal-warn .signal-dot,.home-highlight-signal.signal-early .signal-dot{background:#d49a32}
@media(max-width:760px){.home-highlights .home-highlight-card{flex-basis:min(86vw,390px)!important;width:min(86vw,390px)!important}}
@media(max-width:380px){.home-highlights .home-highlight-card{gap:9px!important;padding:9px!important}.home-highlights .home-highlight-image{width:96px!important;min-width:96px!important;flex-basis:96px!important}.home-highlights .home-highlight-copy>strong{font-size:14px!important}}


/* Alpha v1.0.242 — account suspension appeal contact action. */
.account-disabled-actions{display:grid;gap:9px;width:100%;margin-top:2px;}
.account-disabled-contact{display:flex;align-items:center;justify-content:center;min-height:46px;padding:11px 16px;border:1px solid #cbd8ce;border-radius:12px;background:#f0f5f0;color:#28543b;font-size:.94rem;font-weight:800;text-decoration:none;}
.account-disabled-contact:hover{background:#e6efe7;border-color:#9eb7a4;}
.account-disabled-contact:focus-visible{outline:3px solid #78a98a;outline-offset:3px;}


/* Alpha v1.0.243 — keep sign-in usable above mobile keyboards in all browsers. */
#authDialog{
  box-sizing:border-box;
  width:min(460px,calc(100% - 24px));
  max-width:460px;
  max-height:calc(var(--gf-visual-viewport-height,100dvh) - 24px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scroll-padding-block:16px;
}
#authDialog form{min-width:0;padding:clamp(16px,4vw,24px)}
#authDialog input[type="email"]{font-size:16px}
#authDialog .modalactions{flex-wrap:wrap;margin-bottom:4px}
#authDialog button{touch-action:manipulation}


/* Alpha v1.0.303 — keep the auth sheet inside the live keyboard viewport. */
#authDialog{
  box-sizing:border-box;
  margin:0;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scroll-padding-block:18px;
  touch-action:pan-y;
}

/* Alpha v1.0.244 — give focused sign-in fields breathing room while scrolling. */
#authDialog input{scroll-margin-block:18px}


/* Alpha v1.0.246 — reliable onboarding scrolling on mobile browsers. */
.setup-dialog{
  box-sizing:border-box;
  width:min(540px,calc(100% - 24px));
  max-height:calc(var(--gf-visual-viewport-height,100dvh) - 24px - env(safe-area-inset-top));
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  scroll-padding-block:18px;
}
.setup-panel{min-height:min-content}
#setupDialog input,#setupDialog select,#setupDialog button{scroll-margin-block:18px}

/* Alpha 1.0.251 — integrated pull-to-refresh and horizontal tab navigation */
.pull-refresh-indicator{
  position:fixed;left:50%;top:calc(env(safe-area-inset-top, 0px) + 72px);z-index:2147483000;
  display:flex;align-items:center;justify-content:center;gap:10px;
  min-height:46px;max-width:calc(100vw - 28px);padding:0 19px;
  border:1px solid #b7d2bd;border-radius:999px;background:#fffdf7;
  color:#17452b;font-size:14px;font-weight:850;letter-spacing:.01em;white-space:nowrap;
  box-shadow:0 8px 26px rgba(15,45,27,.24);pointer-events:none;
  opacity:0;transform:translate(-50%,0);transition:opacity .08s linear,background .12s ease;
}
.pull-refresh-indicator.is-ready{background:#e5f4e8;border-color:#398452;color:#0b5b2d}
.pull-refresh-indicator.is-refreshing .pull-refresh-mark{animation:spotworth-pull-spin .75s linear infinite}
.pull-refresh-mark{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:#e4efe4;color:#245638;font-size:20px;line-height:1}
main.spotworth-pull-enabled>:not(.pull-refresh-spacer){
  translate:0 var(--spotworth-pull-offset,0px);
  transition:translate .16s cubic-bezier(.2,.75,.25,1);
}
main.spotworth-pull-enabled>:not(.pull-refresh-spacer){will-change:translate}
main.spotworth-pull-enabled.spotworth-pull-dragging>:not(.pull-refresh-spacer){transition:none!important}
@keyframes spotworth-pull-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  .pull-refresh-indicator{transition:none}
  main.spotworth-pull-enabled>:not(.pull-refresh-spacer){transition:none!important}
  .pull-refresh-indicator.is-refreshing .pull-refresh-mark{animation-duration:1.8s}
}

/* Alpha v1.0.263 — friendly supermarket geofence feedback. */
.branch-location-notice-dialog{box-sizing:border-box;width:min(440px,calc(100% - 28px));max-width:440px;padding:0;border:0;border-radius:24px;background:transparent;overflow:visible;color:#26382d;box-shadow:0 24px 80px rgba(12,35,23,.3)}
.branch-location-notice-dialog::backdrop{background:rgba(12,28,20,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.branch-location-notice-panel{display:grid;gap:13px;padding:30px 26px 25px;border:1px solid #d9e3d5;border-radius:24px;background:#fffdf7;text-align:center}
.branch-location-notice-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto;border-radius:50%;background:#edf3e9;color:#315b43;font-size:36px;font-weight:800}
.branch-location-notice-panel>small{color:#68806c;font-size:10px;font-weight:850;letter-spacing:1.4px}
.branch-location-notice-panel h2{margin:0;color:#26382d;font-size:23px;line-height:1.2}
.branch-location-notice-panel p{margin:0;color:#58685d;font-size:15px;line-height:1.5}
.branch-location-notice-panel .branch-location-notice-guidance{padding:12px 14px;border-radius:14px;background:#f0f4ec;color:#49604e;font-size:13px}
.branch-location-notice-panel .primary{width:100%;min-height:48px;margin-top:3px}
@media(max-width:420px){.branch-location-notice-panel{padding:26px 20px 21px}.branch-location-notice-panel h2{font-size:21px}}


/* Alpha v1.0.265 — refine the raised mobile share action after the 1.0.264 layout recovery. */
@media(max-width:760px){
  .bottom-nav-share{
    flex:0 0 64px!important;
    width:64px!important;height:64px!important;
    min-width:64px!important;min-height:64px!important;
    max-width:64px!important;max-height:64px!important;
    transform:translateY(-6px)!important;
    margin:0 5px 0 0!important;
  }
  .bottom-nav-share .share-deal-camera{width:38px!important;height:38px!important}
}
@media(max-width:380px){
  .bottom-nav-share{
    flex-basis:58px!important;width:58px!important;height:58px!important;
    min-width:58px!important;min-height:58px!important;
    max-width:58px!important;max-height:58px!important;
    transform:translateY(-5px)!important;
    margin-right:3px!important;
  }
  .bottom-nav-share .share-deal-camera{width:34px!important;height:34px!important}
}


/* Mobile branch address: allow long supermarket locations to wrap cleanly. */
#dealDetailContent .deal-detail-branch{
  min-width:0!important;
  box-sizing:border-box!important;
}
#dealDetailContent .deal-detail-branch strong{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.35!important;
}
#dealDetailContent .deal-detail-branch span{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
@media(max-width:560px){
  #dealDetailContent .deal-detail-branch{gap:8px!important;padding:9px 10px!important}
  #dealDetailContent .deal-detail-branch strong{font-size:11px!important}
  #dealDetailContent .deal-detail-branch span{font-size:9px!important}
}


/* Put the two key deal actions directly beneath the deal summary. */
#dealDetailContent .deal-detail-top-actions{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;
  gap:9px;margin:10px 0 12px;min-width:0;
}
#dealDetailContent .deal-detail-share-main{
  display:flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:10px 16px;border:0;border-radius:12px;
  background:#176b50;color:#fff;font-size:14px;font-weight:850;
  box-shadow:0 3px 9px rgba(23,107,80,.16);
}
#dealDetailContent .deal-detail-share-main .deal-share-icon{
  display:grid;place-items:center;width:23px;height:23px;
  border:1.5px solid currentColor;border-radius:50%;font-size:16px;line-height:1;
}
#dealDetailContent .deal-detail-report-main{
  display:flex;align-items:center;justify-content:center;gap:6px;
  min-width:94px;padding:8px 12px;border:1px solid #e3c6bf;
  border-radius:12px;background:#fff8f6;color:#9c493b;
  font-size:11px;font-weight:800;
}
#dealDetailContent .deal-detail-report-main>span:first-child{
  display:grid;place-items:center;width:19px;height:19px;
  border:1.5px solid currentColor;border-radius:50%;font-size:13px;font-weight:900;
}
#dealDetailContent .deal-detail-top-report-form{
  grid-column:1/-1;min-width:0;margin-top:2px;
}
@media(max-width:380px){
  #dealDetailContent .deal-detail-top-actions{grid-template-columns:minmax(0,1fr) auto;gap:7px}
  #dealDetailContent .deal-detail-share-main{padding:9px 10px;font-size:12px}
  #dealDetailContent .deal-detail-report-main{min-width:84px;padding:7px 8px}
}


/* Alpha v1.0.277 — reduce Home deal carousel height for a more compact dashboard. */
.home-highlights .home-highlight-card{
 min-height:132px!important;
 gap:10px!important;
 padding:9px!important;
}
.home-highlights .home-highlight-image{
 width:92px!important;min-width:92px!important;flex-basis:92px!important;
 min-height:112px!important;border-radius:12px!important;
}
.home-highlights .home-highlight-copy{gap:4px!important}
.home-highlights .home-highlight-copy>strong{font-size:14px!important;line-height:1.18!important}
.home-highlights .home-highlight-price{font-size:19px!important;padding:4px 9px!important}
.home-highlights .home-highlight-saving{font-size:9px!important;padding:3px 6px!important}
.home-highlight-type{font-size:9px!important}
.home-highlight-signal{font-size:8px!important}
@media(max-width:380px){
 .home-highlights .home-highlight-card{gap:8px!important;padding:8px!important}
 .home-highlights .home-highlight-image{width:84px!important;min-width:84px!important;flex-basis:84px!important;min-height:104px!important}
 .home-highlights .home-highlight-copy>strong{font-size:13px!important}
}


/* Alpha v1.0.283 — consistent image loading and graceful feed fallbacks. */
.home-highlight-image,.home-hunter-image{background:#f4f1e8;}
.home-highlight-image img,.home-hunter-image img{display:block;max-width:100%;}
.home-highlight-image img:not(.is-loaded),.home-hunter-image img:not(.is-loaded){background:#f4f1e8;}
.home-highlight-image .product-category-placeholder{display:grid;width:100%;height:100%;min-height:104px;place-items:center;}


/* Alpha v1.0.285 — fixed Home carousel image frames to prevent photo aspect ratios changing card height. */
.home-highlights .home-highlight-card{align-items:center!important;min-height:166px!important;height:166px!important;}
.home-highlights .home-highlight-image{
  box-sizing:border-box!important;
  width:112px!important;min-width:112px!important;max-width:112px!important;
  height:140px!important;min-height:140px!important;max-height:140px!important;
  flex:0 0 112px!important;align-self:center!important;overflow:hidden!important;
}
.home-highlights .home-highlight-image img{
  display:block!important;width:100%!important;height:100%!important;
  max-width:none!important;max-height:none!important;object-fit:cover!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-card{height:166px!important;min-height:166px!important;}
  .home-highlights .home-highlight-image{width:96px!important;min-width:96px!important;max-width:96px!important;flex-basis:96px!important;height:140px!important;min-height:140px!important;max-height:140px!important;}
}


/* Alpha 1.0.287 — compact community-first Home statistics. */
.home-stat-strip{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:17px;
}
.home-stat-strip .home-stat-card{
  min-height:64px;
  aspect-ratio:auto;
  flex-direction:row;
  justify-content:flex-start;
  gap:12px;
  padding:10px 15px;
  border:1px solid #eadfc9;
  border-radius:14px;
  text-align:left;
  box-shadow:0 3px 9px #001d1212;
}
.home-stat-strip .home-stat-card>.material-symbols-rounded{
  flex:0 0 30px;
  width:30px;
  font-size:29px;
  line-height:1;
}
.home-stat-community-savings{background:#fff5df;color:#4c3718}
.home-stat-community-savings>.material-symbols-rounded{color:#bd842a}
.home-stat-spotters{background:#edf5eb;color:#1a3e2c}
.home-stat-spotters>.home-stat-paw{color:#37764c}
.home-stat-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:4px}
.home-stat-strip .home-stat-copy small{
  color:#66766a;
  font-size:9px;
  font-weight:850;
  letter-spacing:.75px;
  line-height:1.1;
  white-space:nowrap;
}
.home-stat-strip .home-stat-copy strong{
  max-width:100%;
  color:#1a3e2c;
  font-size:clamp(19px,5vw,24px);
  line-height:1;
}
@media(max-width:420px){
  .home-stat-strip{gap:8px}
  .home-stat-strip .home-stat-card{min-height:62px;padding:9px 10px;gap:8px;border-radius:12px}
  .home-stat-strip .home-stat-card>.material-symbols-rounded{flex-basis:25px;width:25px;font-size:25px}
  .home-stat-strip .home-stat-copy small{font-size:8px;letter-spacing:.45px}
  .home-stat-strip .home-stat-copy strong{font-size:clamp(18px,5vw,22px)}
}


/* Alpha 1.0.288 — compact daily stock-check choices. */
#dealDetailContent .deal-stock-check .deal-detail-vote button{display:flex;align-items:center;justify-content:center;gap:6px;font-weight:800;}
#dealDetailContent .deal-stock-check .deal-detail-vote button span[aria-hidden="true"]{font-size:17px;line-height:1;}

/* Alpha 1.0.290 — responsive feedback for daily stock confirmations. */
#dealDetailContent .deal-stock-check .deal-detail-vote button{transition:transform .16s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease;transform:translateY(0);-webkit-tap-highlight-color:transparent;}
#dealDetailContent .deal-stock-check .deal-detail-vote button:active{transform:scale(.96);}
#dealDetailContent .deal-stock-check .deal-detail-vote button.is-selected{animation:stockChoiceSelected .24s ease-out;box-shadow:0 2px 8px rgba(45,78,57,.13);}
#dealDetailContent .deal-stock-check.is-submitting .deal-detail-vote button{cursor:wait;}
#dealDetailContent .deal-stock-check .deal-detail-vote button.is-pending{transform:scale(.97);opacity:.78;}
#dealDetailContent .deal-stock-check .deal-detail-vote button:disabled{opacity:.72;}
@keyframes stockChoiceSelected{0%{transform:scale(.96)}65%{transform:scale(1.025)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){#dealDetailContent .deal-stock-check .deal-detail-vote button{transition:none!important;animation:none!important}}

/* Alpha 1.0.291 — make the optimistic shelf-check response feel snappier. */
#dealDetailContent .deal-stock-check .deal-detail-vote button{transition:transform .12s ease-out,background-color .14s ease-out,border-color .14s ease-out,box-shadow .14s ease-out,opacity .14s ease-out;}
#dealDetailContent .deal-stock-check .deal-detail-vote button.is-selected{animation:stockChoiceSelected .16s ease-out;}


/* Alpha 1.0.297 — signed-out Home deal access cards. */
.home-join-card{
 display:flex;align-items:center;gap:13px;width:100%;min-height:126px;box-sizing:border-box;padding:17px;
 border:1px solid #d9e5d9;border-radius:18px;background:linear-gradient(135deg,#fffdf6 0%,#f1f7ef 100%);
 color:#203b2c;text-align:left;box-shadow:0 5px 16px rgba(24,60,43,.07);cursor:pointer;
}
.home-join-icon{
 display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;
 background:#e2f0e3;color:#27734b;font-size:25px;
}
.home-join-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:5px}
.home-join-copy>small{color:#758879;font-size:9px;font-weight:900;letter-spacing:1.1px}
.home-join-copy>strong{color:#1d3829;font-size:15px;line-height:1.25}
.home-join-copy>span{color:#69796d;font-size:12px;line-height:1.45}
.home-join-copy>b{display:flex;align-items:center;gap:8px;margin-top:3px;color:#176c43;font-size:12px;font-weight:900}
.home-join-copy>b span{font-size:17px}
@media(max-width:420px){.home-join-card{min-height:118px;gap:10px;padding:13px}.home-join-icon{flex-basis:42px;width:42px;height:42px}.home-join-copy>strong{font-size:13px}.home-join-copy>span{font-size:11px}}


/* Alpha v1.0.300 — friendlier guest sign-in invitation. */
#authDialog .auth-beagle{display:flex;justify-content:center;align-items:center;width:76px;height:76px;margin:0 auto 12px;border-radius:50%;background:#f2f6ee}
#authDialog .auth-beagle img{display:block;width:64px;height:64px;object-fit:contain}
#authDialog #authIntro{color:#536176;line-height:1.5}
#authDialog #authMsg:empty{display:none}
@media(max-width:420px){#authDialog .auth-beagle{width:66px;height:66px;margin-bottom:9px}#authDialog .auth-beagle img{width:56px;height:56px}}


/* Alpha v1.0.304 — one-tap mobile email entry confirmation. */
#authDialog .auth-email-label{display:block;margin:10px 0 6px;font-weight:800}
#authDialog .auth-email-entry{display:flex;align-items:stretch;gap:9px;min-width:0}
#authDialog .auth-email-entry input{flex:1 1 auto;min-width:0;width:100%}
#authDialog .auth-email-confirm{box-sizing:border-box;flex:0 0 46px;width:46px;height:46px;align-self:center;display:grid;place-items:center;padding:0;border:1px solid #9fc7f2;border-radius:12px;background:#2878d0;color:#fff;box-shadow:0 3px 8px #1f68b52b;font-size:23px;line-height:1;cursor:pointer;touch-action:manipulation;transition:background .15s ease,box-shadow .15s ease,transform .15s ease}
#authDialog .auth-email-confirm .material-symbols-rounded{display:block;font-size:25px;font-weight:700;line-height:1}#authDialog .auth-email-confirm:active{background:#1e65b2;box-shadow:0 1px 3px #1f68b52b;transform:translateY(1px)}#authDialog .auth-email-confirm:focus-visible{outline:3px solid #9fc7f2;outline-offset:2px}
#authDialog .auth-email-confirm[hidden]{display:none}
#authDialog .auth-email-entry.is-confirmed input{border-color:#b8d6c3;background:#f6faf7}
#authDialog .auth-email-entry.is-confirmed input:read-only{color:#344b3c}
#authDialog .auth-mailing-optin{display:flex;flex-direction:row;align-items:center;gap:8px;min-height:0;margin:8px 0 10px;padding:7px 9px;border-radius:9px;font-size:12px;line-height:1.25}#authDialog .auth-mailing-optin input{flex:0 0 18px;width:18px;height:18px;margin:0}#authDialog .auth-mailing-optin span{display:block;min-width:0}#authDialog .auth-email-confirm[hidden]{display:none}@media(max-width:420px){#authDialog .auth-email-confirm{flex-basis:46px;width:46px;height:46px}}

/* Alpha 1.0.307 — username reservation styling */
.signup-username-field{margin:0 0 12px}.signup-username-field[hidden]{display:none}.signup-username-field>label{display:block;margin:0 0 6px;font-size:13px;font-weight:750;color:#29445f}.signup-username-entry{display:flex;align-items:center;gap:7px;padding:4px 5px 4px 12px;border:1px solid #cbd8e5;border-radius:12px;background:#fff}.signup-username-entry>span{font-weight:800;color:#6b7d91}.signup-username-entry input{min-width:0;flex:1;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:9px 2px!important}.signup-username-entry button{flex:0 0 42px;width:42px;height:42px;border:1px solid #a9c8e8;border-radius:11px;background:#eaf3ff;color:#2465a8;box-shadow:0 2px 5px #1f68b51c;display:grid;place-items:center}.signup-username-entry button .material-symbols-rounded{font-size:23px}.signup-username-entry button.is-available{background:#e9f7ef;color:#197447;border-color:#a9d8bd}.signup-username-entry button.is-taken{background:#fff0ef;color:#b42318;border-color:#efb4ae}.signup-username-field small{display:block;margin:6px 2px 0;color:#6b7d91;font-size:11px;line-height:1.4}.signup-username-field small[data-state=error]{color:#b42318}.signup-username-field small[data-state=success]{color:#197447}.signup-username-field small[data-state=pending]{color:#456b91}
/* Alpha 1.0.309 — clear email-format confirmation state */
#authDialog .auth-email-confirm.is-available{border-color:#a9d8bd;background:#e9f7ef;color:#197447;box-shadow:0 2px 6px #1974471c}



/* Alpha v1.0.315 — stable iPhone app shell on the visible viewport. */
@media(max-width:760px){
  html{height:100%;}
  body{
    display:flex!important;
    flex-direction:column!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body>header.app-topbar{
    display:block!important;
    position:relative!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    width:100%!important;
  }
  body>main{
    display:block!important;
    flex:1 1 0!important;
    min-height:0!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body>.bottom-nav{
    display:flex!important;
    position:relative!important;
    flex:0 0 auto!important;
    flex-shrink:0!important;
    width:100%!important;
    margin-top:0!important;
  }
}

/* Welcome actions: clear secondary opt-out and primary continue action. */
.welcome-actions{display:flex;gap:10px;align-items:center;margin-top:18px;flex-wrap:wrap}.welcome-actions .welcome-start{flex:1;min-width:130px}.welcome-never{min-height:46px;padding:10px 14px;border:1px solid #d7e0eb;border-radius:12px;background:#fff;color:var(--navy);font-weight:700}@media(max-width:420px){.welcome-actions{flex-direction:column-reverse;align-items:stretch}.welcome-actions button{width:100%}}


/* Alpha v1.0.317 — concise post-verification member welcome. */
.welcome-member-panel{width:min(100%,520px);gap:13px;padding:27px 25px 23px}.welcome-member-panel>small{margin-top:2px}.welcome-member-panel .welcome-lead{margin:0;line-height:1.5}.welcome-member-steps{gap:9px;margin-top:2px}.welcome-member-steps article{min-height:66px;padding:9px 12px;border-radius:13px;background:#f7f8f3}.welcome-member-steps article p{margin-top:3px}.welcome-member-panel .welcome-actions{margin-top:5px}@media(max-width:420px){.welcome-member-panel{padding:23px 17px 18px;gap:11px}.welcome-member-steps article{min-height:60px;padding:8px 10px}}


/* Alpha 1.0.318 — make the supermarket location activity dialog an opaque,
   accessible SpotWorth panel. The native dialog itself stays transparent so
   only the inner panel forms the visible surface. */
.branch-search-activity-dialog,
.branch-search-activity-dialog:focus {
  outline: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.branch-search-activity-dialog .deal-loading-panel {
  box-sizing: border-box;
  width: 100%;
  min-height: 190px;
  padding: 28px 24px;
  border: 1px solid #e5e1d7;
  border-radius: 22px;
  background: #fffdf7 !important;
  color: #263b30 !important;
  box-shadow: 0 22px 65px rgba(12, 30, 22, .28);
  text-align: center;
}
.branch-search-activity-dialog .deal-loading-panel strong {
  color: #263b30 !important;
  font-size: 17px;
  line-height: 1.35;
}
.branch-search-activity-dialog .deal-loading-panel small {
  color: #68766d !important;
  font-size: 13px;
  line-height: 1.45;
}
.branch-search-activity-dialog .deal-loading-spinner {
  border-color: #dce8dc;
  border-top-color: #365f49;
}

/* Alpha v1.0.323 — bookmark sits above the product image. */
.home-highlights .home-highlight-card{position:relative!important}
.home-highlights .home-highlight-media{
  display:flex!important;flex:0 0 112px!important;width:112px!important;
  min-width:112px!important;max-width:112px!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;gap:5px!important;min-height:0!important;
}
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  position:relative!important;inset:auto!important;z-index:1!important;display:flex!important;
  align-items:center!important;justify-content:center!important;box-sizing:border-box!important;
  width:100%!important;min-height:30px!important;padding:4px 5px 8px!important;
  border:0!important;border-radius:0 0 2px 2px!important;background:#ffdf38!important;color:#342900!important;
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);
  filter:drop-shadow(0 1px 1px #25402f) drop-shadow(0 2px 3px #0004)!important;
  font-size:9px!important;font-weight:950!important;line-height:1.05!important;
  letter-spacing:.35px!important;text-align:center!important;white-space:normal!important;
}
.home-highlights .home-highlight-media .home-highlight-image{
  box-sizing:border-box!important;width:112px!important;min-width:112px!important;max-width:112px!important;
  height:105px!important;min-height:105px!important;max-height:105px!important;flex:0 0 105px!important;
  align-self:center!important;overflow:hidden!important;border-radius:12px!important;
}
.home-highlights .home-highlight-media .home-highlight-image img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-media{width:96px!important;min-width:96px!important;max-width:96px!important;flex-basis:96px!important}
 .home-highlights .home-highlight-media .home-highlight-sticker-tag{min-height:28px!important;font-size:8px!important}
 .home-highlights .home-highlight-media .home-highlight-image{width:96px!important;min-width:96px!important;max-width:96px!important;height:107px!important;min-height:107px!important;max-height:107px!important}
}
.deal-detail-yellow-sticker{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #d4a900;border-radius:7px;background:#ffdf38;color:#342900;font-size:10px;font-weight:950;line-height:1.1;letter-spacing:.35px;white-space:nowrap}


/* Alpha v1.0.324 — compact bookmark overlapping the image top edge. */
.home-highlights .home-highlight-media{
  position:relative!important;display:block!important;flex:0 0 112px!important;
  width:112px!important;min-width:112px!important;max-width:112px!important;
  height:140px!important;min-height:140px!important;max-height:140px!important;
  overflow:visible!important;
}
.home-highlights .home-highlight-media .home-highlight-image{
  display:block!important;position:relative!important;
  width:112px!important;min-width:112px!important;max-width:112px!important;
  height:140px!important;min-height:140px!important;max-height:140px!important;
  flex:none!important;overflow:hidden!important;border-radius:12px!important;
}
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  position:absolute!important;top:-7px!important;left:50%!important;right:auto!important;
  transform:translateX(-50%)!important;z-index:4!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;width:78px!important;min-width:78px!important;max-width:78px!important;
  min-height:31px!important;padding:4px 4px 8px!important;
  border:1px solid #725f12!important;border-radius:0 0 2px 2px!important;
  background:#ffdf38!important;color:#342900!important;
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);
  filter:drop-shadow(0 1px 1px #20372b) drop-shadow(0 2px 3px #0005)!important;
  font-size:8px!important;font-weight:950!important;line-height:1.05!important;
  letter-spacing:.3px!important;text-align:center!important;white-space:normal!important;
}
.home-highlights .home-highlight-media .home-highlight-image img{
  display:block!important;width:100%!important;height:100%!important;
  max-width:none!important;max-height:none!important;object-fit:cover!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-media,.home-highlights .home-highlight-media .home-highlight-image{
  width:96px!important;min-width:96px!important;max-width:96px!important;
  height:140px!important;min-height:140px!important;max-height:140px!important;
 }
 .home-highlights .home-highlight-media{flex-basis:96px!important}
 .home-highlights .home-highlight-media .home-highlight-sticker-tag{
  width:70px!important;min-width:70px!important;max-width:70px!important;
  min-height:28px!important;font-size:7px!important;
 }
}


/* Alpha v1.0.325 — make carousel savings unmistakable without changing card geometry. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  border:2px solid #4a3900!important;
  filter:drop-shadow(0 0 1.25px #352800) drop-shadow(0 2px 3px #0006)!important;
}
.home-highlights .home-highlight-media .home-highlight-saving-badge{
  position:absolute!important;left:50%!important;bottom:7px!important;z-index:5!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;max-width:calc(100% - 8px)!important;
  padding:5px 8px!important;border:2px solid #fff!important;border-radius:8px!important;
  background:#c62828!important;color:#fff!important;
  box-shadow:0 2px 6px rgba(20,20,20,.38)!important;
  transform:translateX(-50%)!important;
  font-size:12px!important;font-weight:950!important;line-height:1!important;
  letter-spacing:.1px!important;white-space:nowrap!important;text-align:center!important;
  pointer-events:none!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-media .home-highlight-saving-badge{
  bottom:7px!important;padding:4px 6px!important;font-size:10px!important;
 }
}


/* Alpha v1.0.326 — continuous dark outline follows the full yellow-sticker bookmark silhouette, including its pointed lower edge. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  border:0!important;
  filter:drop-shadow(1px 0 0 #342900) drop-shadow(-1px 0 0 #342900) drop-shadow(0 1px 0 #342900) drop-shadow(0 -1px 0 #342900) drop-shadow(0 2px 3px #0006)!important;
}





/* Alpha v1.0.329 — true two-layer yellow bookmark with visible dark perimeter. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{position:absolute!important;top:-7px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;z-index:4!important;display:block!important;box-sizing:border-box!important;width:78px!important;min-width:78px!important;max-width:78px!important;height:31px!important;min-height:31px!important;padding:0!important;border:0!important;border-radius:0!important;background:#342900!important;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;filter:drop-shadow(0 2px 3px #0006)!important;color:#342900!important;font-size:8px!important;font-weight:950!important;line-height:1.05!important;letter-spacing:.3px!important;text-align:center!important;white-space:normal!important}
.home-highlights .home-highlight-media .home-highlight-sticker-face{position:absolute!important;inset:2px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;background:#ffdf38!important;color:#342900!important;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;z-index:1!important;padding-bottom:4px!important}
@media(max-width:380px){.home-highlights .home-highlight-media .home-highlight-sticker-tag{width:70px!important;min-width:70px!important;max-width:70px!important;height:28px!important;min-height:28px!important}.home-highlights .home-highlight-media .home-highlight-sticker-face{inset:2px!important}.home-highlights .home-highlight-media .home-highlight-sticker-tag{font-size:7px!important}}


/* Alpha v1.0.331 — typography pass 1: clearer Home highlights and Deals feed, fixed component geometry. */
.home-highlight-meta .store-pill{font-size:12px!important;font-weight:900!important;line-height:1.15!important}
.home-highlight-distance{font-size:12px!important;font-weight:850!important;color:#405b49!important}
.home-highlight-distance .material-symbols-rounded{font-size:15px!important}
.home-highlights .home-highlight-copy>strong{font-size:17px!important;line-height:1.2!important;font-weight:900!important;letter-spacing:-.2px!important}
.home-highlight-type{font-size:12px!important;font-weight:800!important;color:#526456!important;line-height:1.2!important}
.home-highlight-signal{font-size:11px!important;font-weight:850!important;color:#405247!important;line-height:1.25!important}
.home-highlight-signal .signal-dot{width:8px!important;height:8px!important;flex-basis:8px!important}
.deal-row-topline .compact-time,.deal-row-topline .store-pill,.deal-row-topline .deal-type-badge{font-size:12px!important;font-weight:850!important}
.deal-row .deal-product-title{font-size:17px!important;font-weight:850!important;line-height:1.25!important}
.deal-row .deal-distance{display:inline-flex!important;align-items:center!important;font-size:12px!important;font-weight:850!important;line-height:1.25!important;color:#405b49!important;min-height:18px}
.deal-row .feed-accuracy strong{font-size:12px!important;font-weight:900!important}
.deal-row .feed-accuracy small{font-size:11px!important;font-weight:750!important;letter-spacing:0!important}
@media(max-width:380px){
 .home-highlights .home-highlight-copy>strong{font-size:15px!important}
 .home-highlight-meta .store-pill,.home-highlight-distance,.home-highlight-type{font-size:11px!important}
 .home-highlight-signal{font-size:10px!important}
 .deal-row .deal-product-title{font-size:15px!important}
 .deal-row .deal-distance{font-size:11px!important}
}


/* Alpha v1.0.332 — warmer, more tactile Home carousel cards; geometry remains locked. */
.home-highlights .home-highlight-card{
  background:linear-gradient(145deg,#fffdf7 0%,#fbf8ef 100%)!important;
  border:1px solid #ded3b8!important;
  box-shadow:0 5px 14px rgba(45,58,43,.075),inset 0 1px 0 rgba(255,255,255,.95)!important;
  outline:1px solid rgba(255,255,255,.7)!important;
  outline-offset:-3px!important;
}
.home-highlights .home-highlight-card.deal-signal-good{
  border-color:#b9d4bf!important;
  box-shadow:0 5px 14px rgba(45,58,43,.075),inset 0 0 0 1px rgba(67,133,88,.08)!important;
}
.home-highlights .home-highlight-card.deal-signal-warn,
.home-highlights .home-highlight-card.deal-signal-early{
  border-color:#e4d3a9!important;
}
.home-highlights .home-highlight-card.deal-signal-bad{
  border-color:#c6d7e4!important;
}
.home-highlights .home-highlight-price-row{
  gap:8px!important;
  padding:2px 0!important;
}
.home-highlights .home-highlight-saving-badge{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:28px!important;padding:5px 10px!important;
  border:1px solid #d5e5d3!important;border-radius:9px!important;
  background:linear-gradient(180deg,#f3f8ed 0%,#eaf3e6 100%)!important;
  color:#246b40!important;font-size:12px!important;font-weight:900!important;
  line-height:1!important;letter-spacing:.1px!important;white-space:nowrap!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.home-highlights .home-highlight-media .home-highlight-image{
  box-shadow:0 1px 3px rgba(35,48,38,.12)!important;
}


/* Alpha v1.0.333 — make Home carousel card surfaces visibly warmer and more defined. */
.home-highlights .home-highlight-card{
  background:linear-gradient(135deg,#f8f2e5 0%,#f3ecdc 100%)!important;
  border:1.5px solid #cfc1a3!important;
  box-shadow:0 8px 18px rgba(42,54,39,.13),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.home-highlights .home-highlight-card.deal-signal-good{border-color:#a8c7ae!important}
.home-highlights .home-highlight-card.deal-signal-warn,
.home-highlights .home-highlight-card.deal-signal-early{border-color:#d8c18c!important}
.home-highlights .home-highlight-card.deal-signal-bad{border-color:#aec6d7!important}
.home-highlights .home-highlight-media .home-highlight-image{
  background:#eee7d8!important;
  box-shadow:0 2px 5px rgba(42,54,39,.16)!important;
}
.home-highlights .home-highlight-saving-badge{
  background:#e2efdc!important;border-color:#bfd4b8!important;
  color:#1d6039!important;box-shadow:0 1px 3px rgba(42,54,39,.09)!important;
}


/* Alpha v1.0.334 — unified category bookmarks and sharper Home carousel hierarchy. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{border:0!important;filter:drop-shadow(1px 0 0 #342900) drop-shadow(-1px 0 0 #342900) drop-shadow(0 1px 0 #342900) drop-shadow(0 -1px 0 #342900) drop-shadow(0 2px 3px #0006)!important}
.home-highlights .home-highlight-media .home-highlight-sticker-face{display:block!important}
.home-highlights .home-highlight-media .home-bookmark-offer{background:#f07b55!important;color:#351b13!important}
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{background:#ffdf38!important;color:#342900!important}
.home-highlights .home-highlight-media .home-bookmark-clearance{background:#c62828!important;color:#fff!important}
.home-highlights .home-highlight-media .home-bookmark-price-hold{background:#2b8876!important;color:#fff!important}
.home-highlights .home-highlight-media .home-bookmark-member-price{background:#285b9a!important;color:#fff!important}
.home-highlights .home-highlight-media .home-highlight-image{box-shadow:inset 0 0 0 1px #342f27,0 2px 5px rgba(42,54,39,.16)!important;outline:1px solid #342f27!important;outline-offset:-1px!important}
.home-highlights .home-highlight-price{border:1px solid #24364a!important;box-shadow:0 1px 2px rgba(24,35,48,.12),inset 0 1px 0 rgba(255,255,255,.35)!important}
.home-highlights .home-highlight-copy>strong{font-size:15px!important;font-weight:850!important;line-height:1.2!important}


/* Alpha v1.0.335 — category colour fills the whole bookmark; face stays transparent. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{border:0!important;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;filter:drop-shadow(1px 0 0 #171717) drop-shadow(-1px 0 0 #171717) drop-shadow(0 1px 0 #171717) drop-shadow(0 -1px 0 #171717) drop-shadow(0 2px 3px #0006)!important}
.home-highlights .home-highlight-media .home-highlight-sticker-face{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;min-height:inherit!important;padding:0 3px 4px!important;box-sizing:border-box!important;background:transparent!important;clip-path:none!important;z-index:auto!important}
.home-highlights .home-highlight-media .home-bookmark-offer{background:#f07b55!important;color:#24130e!important}
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{background:#ffdf38!important;color:#342900!important}
.home-highlights .home-highlight-media .home-bookmark-clearance{background:#c62828!important;color:#fff!important}
.home-highlights .home-highlight-media .home-bookmark-price-hold{background:#2b8876!important;color:#fff!important}
.home-highlights .home-highlight-media .home-bookmark-member-price{background:#285b9a!important;color:#fff!important}


/* Alpha v1.0.336 — distinct silhouettes for each deal category. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  border:0!important;
  filter:drop-shadow(1px 0 0 #171717) drop-shadow(-1px 0 0 #171717)
    drop-shadow(0 1px 0 #171717) drop-shadow(0 -1px 0 #171717)
    drop-shadow(0 2px 3px #0006)!important;
  overflow:visible!important;
}
/* Yellow sticker retains the established bookmark silhouette. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
}
/* Clearance: urgent, serrated ticket edge. */
.home-highlights .home-highlight-media .home-bookmark-clearance{
  clip-path:polygon(0 0,12% 5%,20% 0,30% 5%,40% 0,50% 5%,60% 0,70% 5%,80% 0,88% 5%,100% 0,95% 18%,100% 30%,95% 42%,100% 54%,95% 66%,100% 78%,94% 100%,6% 100%,0 78%,5% 66%,0 54%,5% 42%,0 30%,5% 18%)!important;
}
/* General offer: unmistakable promotional burst. */
.home-highlights .home-highlight-media .home-bookmark-offer{
  clip-path:polygon(50% 0,61% 13%,78% 4%,81% 22%,100% 25%,90% 43%,100% 58%,82% 68%,88% 91%,65% 88%,50% 100%,36% 88%,12% 94%,17% 72%,0 60%,10% 43%,1% 25%,23% 21%,25% 4%,41% 13%)!important;
}
/* Price hold: stable shield with a pointed base. */
.home-highlights .home-highlight-media .home-bookmark-price-hold{
  clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%)!important;
}
/* Member price: ticket silhouette with clipped side notches. */
.home-highlights .home-highlight-media .home-bookmark-member-price{
  clip-path:polygon(0 0,100% 0,100% 35%,91% 50%,100% 65%,100% 100%,0 100%,0 65%,9% 50%,0 35%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face,
.home-highlights .home-highlight-media .home-bookmark-clearance .home-highlight-sticker-face,
.home-highlights .home-highlight-media .home-bookmark-price-hold .home-highlight-sticker-face,
.home-highlights .home-highlight-media .home-bookmark-member-price .home-highlight-sticker-face{
  background:transparent!important;clip-path:none!important;color:#fff!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{color:#24130e!important}


/* Alpha v1.0.337 — refine offer, shield width, badge type and visible outlines. */
/* Replace the starburst with a balanced, clean promotional ticket. */
.home-highlights .home-highlight-media .home-bookmark-offer{
  clip-path:polygon(7% 0,93% 0,100% 12%,100% 88%,93% 100%,7% 100%,0 88%,0 12%)!important;
}
/* Slightly narrower shield; typography and card geometry remain unchanged. */
.home-highlights .home-highlight-media .home-bookmark-price-hold{
  width:68px!important;min-width:68px!important;max-width:68px!important;
}
/* Give every badge a clearly visible black perimeter around its actual silhouette. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  border:0!important;
  filter:drop-shadow(2px 0 0 #111) drop-shadow(-2px 0 0 #111)
    drop-shadow(0 2px 0 #111) drop-shadow(0 -2px 0 #111)
    drop-shadow(0 2px 3px #0005)!important;
}
/* Increase badge lettering by one pixel while retaining existing line breaks. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag,
.home-highlights .home-highlight-media .home-highlight-sticker-face{
  font-size:10px!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-media .home-highlight-sticker-tag,
 .home-highlights .home-highlight-media .home-highlight-sticker-face{font-size:8px!important}
 .home-highlights .home-highlight-media .home-bookmark-price-hold{
  width:62px!important;min-width:62px!important;max-width:62px!important;
 }
}


/* Alpha v1.0.338 — reliable two-layer badge outlines and white OFFER lettering. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  border:0!important;
  background:#111!important;
  filter:drop-shadow(0 2px 3px #0006)!important;
  clip-path:none!important;
  overflow:visible!important;
}
.home-highlights .home-highlight-media .home-highlight-sticker-face{
  position:absolute!important;
  inset:2px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  padding:0 3px 2px!important;
  background:transparent!important;
  clip-path:inherit!important;
  color:#fff!important;
  font-size:inherit!important;
  line-height:1.05!important;
  text-align:center!important;
}
/* Match each inset face to its outer silhouette, leaving a continuous 2px black rim. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  background:#ffdf38!important;
  color:#342900!important;
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-clearance .home-highlight-sticker-face{
  background:#c62828!important;
  color:#fff!important;
  clip-path:polygon(0 0,12% 5%,20% 0,30% 5%,40% 0,50% 5%,60% 0,70% 5%,80% 0,88% 5%,100% 0,95% 18%,100% 30%,95% 42%,100% 54%,95% 66%,100% 78%,94% 100%,6% 100%,0 78%,5% 66%,0 54%,5% 42%,0 30%,5% 18%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{
  background:#f07b55!important;
  color:#fff!important;
  clip-path:polygon(7% 0,93% 0,100% 12%,100% 88%,93% 100%,7% 100%,0 88%,0 12%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-price-hold .home-highlight-sticker-face{
  background:#2b8876!important;
  color:#fff!important;
  clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-member-price .home-highlight-sticker-face{
  background:#285b9a!important;
  color:#fff!important;
  clip-path:polygon(0 0,100% 0,100% 35%,91% 50%,100% 65%,100% 100%,0 100%,0 65%,9% 50%,0 35%)!important;
}


/* Alpha v1.0.339 — clip the black backing to each badge silhouette. */
.home-highlights .home-highlight-media .home-highlight-sticker-tag{
  background:#111!important;
  border:0!important;
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
  filter:none!important;
  overflow:visible!important;
}
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-clearance{
  clip-path:polygon(0 0,12% 5%,20% 0,30% 5%,40% 0,50% 5%,60% 0,70% 5%,80% 0,88% 5%,100% 0,95% 18%,100% 30%,95% 42%,100% 54%,95% 66%,100% 78%,94% 100%,6% 100%,0 78%,5% 66%,0 54%,5% 42%,0 30%,5% 18%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer{
  clip-path:polygon(7% 0,93% 0,100% 12%,100% 88%,93% 100%,7% 100%,0 88%,0 12%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-price-hold{
  clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%)!important;
}
.home-highlights .home-highlight-media .home-bookmark-member-price{
  clip-path:polygon(0 0,100% 0,100% 35%,91% 50%,100% 65%,100% 100%,0 100%,0 65%,9% 50%,0 35%)!important;
}
.home-highlights .home-highlight-media .home-highlight-sticker-face{
  position:absolute!important;
  inset:2px!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 3px 2px!important;
  line-height:1.05!important;
  text-align:center!important;
}


/* Alpha v1.0.340 — reduce badge outline thickness by 1px. */
.home-highlights .home-highlight-media .home-highlight-sticker-face{
  inset:1px!important;
}

/* Alpha v1.0.341 — yellow sticker label refinement. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  font-size:calc(1em + 1px)!important;
  transform:translateY(-1px)!important;
}

/* Alpha v1.0.342 — restore the full yellow-sticker outline and original label size. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  inset:1px!important;
  font-size:1em!important;
  transform:none!important;
}


/* Alpha v1.0.343 — refine bookmark widths, offer colour and yellow-sticker label position. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
  width:68px!important;min-width:68px!important;max-width:68px!important;
}
.home-highlights .home-highlight-media .home-bookmark-price-hold{
  width:58px!important;min-width:58px!important;max-width:58px!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer{
  width:70px!important;min-width:70px!important;max-width:70px!important;
  height:28px!important;min-height:28px!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{
  background:#c65336!important;color:#fff!important;
}
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  font-size:1em!important;transform:translateY(-1px)!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
    width:60px!important;min-width:60px!important;max-width:60px!important;
  }
  .home-highlights .home-highlight-media .home-bookmark-price-hold{
    width:52px!important;min-width:52px!important;max-width:52px!important;
  }
  .home-highlights .home-highlight-media .home-bookmark-offer{
    width:63px!important;min-width:63px!important;max-width:63px!important;
    height:25px!important;min-height:25px!important;
  }
}


/* Alpha v1.0.344 — yellow-sticker outline edge correction. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
  box-sizing:border-box!important;
}
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  inset:1px 1px 2px!important;
  transform:none!important;
  clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
}


/* Alpha v1.0.345 — extend yellow-sticker bookmark downwards slightly. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
  height:34px!important;min-height:34px!important;max-height:34px!important;
}
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  inset:1px 1px 2px!important;
  transform:translateY(0)!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-media .home-bookmark-yellow-sticker{
    height:31px!important;min-height:31px!important;max-height:31px!important;
  }
}


/* Alpha v1.0.346 — add breathing room around yellow-sticker lettering. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  padding:1px 5px 3px!important;
}


/* Alpha v1.0.347 — align yellow face with the bookmark outline. */


/* Alpha v1.0.348 — simplify the offer badge with a square silhouette and deep purple. */
.home-highlights .home-highlight-media .home-bookmark-offer{clip-path:inset(0)!important;background:#49336f!important;color:#fff!important;border-radius:0!important;}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{clip-path:none!important;inset:1px!important;background:#49336f!important;color:#fff!important;border-radius:0!important;}


/* Alpha v1.0.349 — enlarge OFFER lettering and give TO CLEAR the matching rectangular badge. */
.home-highlights .home-highlight-media .home-bookmark-offer,
.home-highlights .home-highlight-media .home-bookmark-clearance{
  clip-path:inset(0)!important;
  border-radius:0!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face,
.home-highlights .home-highlight-media .home-bookmark-clearance .home-highlight-sticker-face{
  clip-path:none!important;
  inset:1px!important;
  border-radius:0!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer{
  background:#49336f!important;
  color:#fff!important;
  font-size:11px!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{
  background:#49336f!important;
  color:#fff!important;
  font-size:inherit!important;
}
.home-highlights .home-highlight-media .home-bookmark-clearance{
  background:#c62828!important;
  color:#fff!important;
}
.home-highlights .home-highlight-media .home-bookmark-clearance .home-highlight-sticker-face{
  background:#c62828!important;
  color:#fff!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-media .home-bookmark-offer,
  .home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{
    font-size:9px!important;
  }
}


/* Alpha v1.0.350 — move the discount callout to the top-right as a larger deal sticker. */
.home-highlights .home-highlight-media .home-highlight-saving-badge{
  position:absolute!important;
  top:-9px!important;right:-9px!important;bottom:auto!important;left:auto!important;
  z-index:7!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;max-width:calc(100% - 2px)!important;
  min-height:34px!important;padding:8px 11px!important;
  border:2px solid #fff!important;border-radius:4px!important;
  background:#c62828!important;color:#fff!important;
  box-shadow:0 2px 7px rgba(20,20,20,.4)!important;
  transform:none!important;
  font-size:14px!important;font-weight:950!important;line-height:1!important;
  letter-spacing:.1px!important;white-space:nowrap!important;text-align:center!important;
  pointer-events:none!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-media .home-highlight-saving-badge{
  top:-7px!important;right:-7px!important;min-height:30px!important;
  padding:7px 9px!important;font-size:12px!important;
 }
}


/* Alpha v1.0.351 — anchor the discount sticker to the full carousel card, not the product image. */
.home-highlights .home-highlight-card{
  position:relative!important;
  overflow:visible!important;
}
.home-highlights .home-highlight-card .home-highlight-media{
  position:static!important;
}
.home-highlights .home-highlight-card .home-highlight-saving-badge{
  position:absolute!important;
  top:-10px!important;right:-9px!important;bottom:auto!important;left:auto!important;
  z-index:8!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;max-width:calc(100% - 12px)!important;
  min-height:34px!important;padding:8px 11px!important;
  border:2px solid #fff!important;border-radius:4px!important;
  background:#c62828!important;color:#fff!important;
  box-shadow:0 2px 7px rgba(20,20,20,.4)!important;
  transform:none!important;
  font-size:14px!important;font-weight:950!important;line-height:1!important;
  letter-spacing:.1px!important;white-space:nowrap!important;text-align:center!important;
  pointer-events:none!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-card .home-highlight-saving-badge{
  top:-8px!important;right:-7px!important;min-height:30px!important;
  padding:7px 9px!important;font-size:12px!important;
 }
}


/* Alpha v1.0.352 — keep category bookmarks anchored to the image; discount sticker belongs to the full card. */
.home-highlights .home-highlight-card .home-highlight-media{position:relative!important;}
.home-highlights .home-highlight-card>.home-highlight-saving-badge{
  position:absolute!important;top:-10px!important;right:-9px!important;bottom:auto!important;left:auto!important;
  z-index:8!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;max-width:calc(100% - 12px)!important;min-height:34px!important;padding:8px 11px!important;
  border:2px solid #fff!important;border-radius:4px!important;background:#c62828!important;color:#fff!important;
  box-shadow:0 2px 7px rgba(20,20,20,.4)!important;transform:none!important;
  font-size:14px!important;font-weight:950!important;line-height:1!important;letter-spacing:.1px!important;
  white-space:nowrap!important;text-align:center!important;pointer-events:none!important;
}
@media(max-width:380px){.home-highlights .home-highlight-card>.home-highlight-saving-badge{top:-8px!important;right:-7px!important;min-height:30px!important;padding:7px 9px!important;font-size:12px!important}}


/* Alpha v1.0.353 — show the percentage saving directly beside the green price. */
.home-highlights .home-highlight-card>.home-highlight-saving-badge,
.home-highlights .home-highlight-card .home-highlight-media .home-highlight-saving-badge{
  position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  transform:none!important;margin:0!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;min-height:30px!important;padding:5px 9px!important;
  border:1px solid #d5e5d3!important;border-radius:9px!important;
  background:linear-gradient(180deg,#f3f8ed 0%,#eaf3e6 100%)!important;
  color:#246b40!important;font-size:12px!important;font-weight:900!important;
  line-height:1!important;letter-spacing:.1px!important;white-space:nowrap!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.home-highlights .home-highlight-price-row{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;
}
@media(max-width:380px){
 .home-highlights .home-highlight-card .home-highlight-saving-badge{
  min-height:27px!important;padding:4px 7px!important;font-size:11px!important;
 }
}


/* Alpha v1.0.354 — position the saving badge beside the price in the Home carousel. */
.home-highlights .home-highlight-card .home-highlight-price-row{
  display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:8px!important;
}
.home-highlights .home-highlight-card .home-highlight-price-row .home-highlight-saving-badge{
  position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  transform:none!important;margin:0!important;z-index:auto!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;box-sizing:border-box!important;
  min-height:30px!important;padding:5px 8px!important;
  border:2px solid #fff!important;border-radius:7px!important;
  background:#c62828!important;color:#fff!important;
  box-shadow:0 2px 5px rgba(20,20,20,.24)!important;
  font-size:12px!important;font-weight:950!important;line-height:1!important;
  letter-spacing:.1px!important;white-space:nowrap!important;text-align:center!important;
  pointer-events:none!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-card .home-highlight-price-row{gap:6px!important}
  .home-highlights .home-highlight-card .home-highlight-price-row .home-highlight-saving-badge{
    min-height:27px!important;padding:4px 6px!important;font-size:11px!important;
  }
}


/* Alpha v1.0.355 — add clean dark perimeters to the rectangular badges and even the yellow bookmark edge. */
/* The outer badge is the dark backing; the inset face supplies the coloured centre. */
.home-highlights .home-highlight-media .home-bookmark-offer,
.home-highlights .home-highlight-media .home-bookmark-clearance{
  background:#171717!important;
  border:0!important;
  box-sizing:border-box!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face,
.home-highlights .home-highlight-media .home-bookmark-clearance .home-highlight-sticker-face{
  position:absolute!important;
  inset:1px!important;
  width:auto!important;height:auto!important;min-height:0!important;
  box-sizing:border-box!important;
  clip-path:none!important;border:0!important;border-radius:0!important;
}
.home-highlights .home-highlight-media .home-bookmark-offer .home-highlight-sticker-face{
  background:#49336f!important;color:#fff!important;
}
.home-highlights .home-highlight-media .home-bookmark-clearance{
  transform:translateX(-50%) scaleX(.95)!important;
}
.home-highlights .home-highlight-media .home-bookmark-clearance .home-highlight-sticker-face{
  background:#c62828!important;color:#fff!important;
}
/* Keep a consistent 1px dark rim around the pointed bottom as well as the top and sides. */
.home-highlights .home-highlight-media .home-bookmark-yellow-sticker .home-highlight-sticker-face{
  inset:1px!important;
  transform:none!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-media .home-bookmark-clearance{
    transform:translateX(-50%) scaleX(.95)!important;
  }
}

/* Alpha v1.0.356 — narrow TO CLEAR box without scaling its lettering. */
.home-highlights .home-highlight-media .home-bookmark-clearance{
  width:70px!important;min-width:70px!important;max-width:70px!important;
  transform:translateX(-50%)!important;
}
@media(max-width:380px){
  .home-highlights .home-highlight-media .home-bookmark-clearance{
    width:63px!important;min-width:63px!important;max-width:63px!important;
    transform:translateX(-50%)!important;
  }
}

/* Alpha v1.0.357 — make the product name the lead information on carousel cards. */
.home-highlights .home-highlight-copy{gap:6px!important}
.home-highlights .home-highlight-copy>.home-highlight-product-name{
  display:-webkit-box!important;max-width:100%!important;overflow:hidden!important;
  color:#20372b!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:15px!important;font-weight:900!important;line-height:1.18!important;
  letter-spacing:-.3px!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
}
.home-highlights .home-highlight-copy>.home-highlight-meta{order:1!important}
.home-highlights .home-highlight-copy>.home-highlight-price-row{order:2!important}
.home-highlights .home-highlight-copy>.home-highlight-signal{order:3!important}
.home-highlights .home-highlight-copy .home-highlight-price{font-size:23px!important;padding:5px 10px!important}
.home-highlights .home-highlight-copy .home-highlight-saving-badge{font-size:13px!important;min-height:31px!important}
@media(max-width:420px){
  .home-highlights .home-highlight-copy>.home-highlight-product-name{font-size:14px!important}
  .home-highlights .home-highlight-copy .home-highlight-price{font-size:22px!important}
  .home-highlights .home-highlight-copy .home-highlight-saving-badge{font-size:12px!important;min-height:29px!important}
}

/* Alpha v1.0.358 — compact community header stats and relative carousel timestamps. */
body>header.app-topbar{height:auto!important;min-height:0!important;max-height:none!important;padding:8px clamp(10px,2.5vw,24px)!important}
body>header.app-topbar .brand-row{align-items:center!important;gap:10px!important}
body>header.app-topbar .brand-identity>.brand-meta{grid-column:1!important;grid-row:2!important;justify-self:start!important;align-self:start!important;margin:0!important;gap:5px!important}
body>header.app-topbar .header-icon-row{display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;gap:4px!important;min-width:0!important;flex:0 0 auto!important}
body>header.app-topbar .header-icon-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:clamp(3px,1vw,9px)!important}
body>header.app-topbar .header-community-stats{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;width:100%!important}
body>header.app-topbar .header-community-stat{display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;flex:1 1 0!important;min-width:0!important;min-height:24px!important;height:24px!important;padding:2px 6px!important;border:1px solid #dce7df!important;border-radius:5px!important;background:#f4f8f4!important;color:#24583a!important;box-shadow:none!important;line-height:1!important}
body>header.app-topbar .header-community-stat>.material-symbols-rounded{font-size:13px!important;line-height:1!important}
body>header.app-topbar .header-community-stat>span:last-child{display:flex!important;align-items:baseline!important;gap:3px!important;min-width:0!important;white-space:nowrap!important}
body>header.app-topbar .header-community-stat small{font-size:7px!important;font-weight:850!important;letter-spacing:.25px!important;line-height:1!important}
body>header.app-topbar .header-community-stat strong{font-size:10px!important;font-weight:950!important;line-height:1!important}
.home-highlights .home-highlight-time{display:block!important;order:4!important;margin-top:0!important;color:#778579!important;font-size:10px!important;font-weight:650!important;line-height:1.1!important}
@media(max-width:420px){body>header.app-topbar{padding:7px 9px!important}body>header.app-topbar .brand-identity{grid-template-columns:46px minmax(0,1fr)!important;column-gap:7px!important}body>header.app-topbar .brand-identity>.brand{grid-template-columns:46px minmax(0,1fr)!important;column-gap:7px!important}body>header.app-topbar .brand-mark-icon{width:46px!important;height:46px!important}body>header.app-topbar .brand-wordmark-text{font-size:clamp(20px,5.6vw,25px)!important}body>header.app-topbar .brand-tagline{font-size:6px!important;letter-spacing:.35px!important}body>header.app-topbar .header-icon-actions{gap:2px!important}body>header.app-topbar .header-community-stat{gap:2px!important;padding:2px 3px!important}body>header.app-topbar .header-community-stat small{font-size:6px!important;letter-spacing:0!important}body>header.app-topbar .header-community-stat strong{font-size:9px!important}}


/* Alpha v1.0.359 — balanced header: raised brand and icon row, larger community stats. */
body>header.app-topbar,
body>header.app-topbar.header-compact{
  padding:6px clamp(10px,2.5vw,24px) 9px!important;
}
body>header.app-topbar .brand-row{
  align-items:flex-start!important;
  gap:12px!important;
}
body>header.app-topbar .brand-identity{
  align-self:flex-start!important;
  padding-top:0!important;
  gap:2px!important;
}
body>header.app-topbar .brand-identity>.brand{
  align-items:flex-start!important;
  transform:translateY(-2px)!important;
}
body>header.app-topbar .brand-identity .brand-mark-icon{
  align-self:flex-start!important;
}
body>header.app-topbar .brand-wordmark{
  justify-content:flex-start!important;
  padding-top:0!important;
}
body>header.app-topbar .brand-wordmark-text{
  font-size:clamp(29px,6vw,39px)!important;
  line-height:1!important;
  letter-spacing:-1.6px!important;
}
body>header.app-topbar .header-icon-row{
  align-self:flex-start!important;
  margin-top:0!important;
  padding-top:0!important;
  gap:7px!important;
}
body>header.app-topbar .header-icon-actions{
  align-items:flex-start!important;
  gap:clamp(5px,1.1vw,12px)!important;
}
body>header.app-topbar .header-icon-actions>button{
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 54px!important;
  width:54px!important;
  min-width:54px!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0!important;
  transform:translateY(-2px)!important;
}
body>header.app-topbar .header-icon-actions .header-settings-button{
  border-radius:50%!important;
}
body>header.app-topbar .header-icon-actions .header-feedback-button,
body>header.app-topbar .header-icon-actions .header-price-alerts{
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#174b38!important;
}
body>header.app-topbar .header-icon-actions .header-feedback-button svg,
body>header.app-topbar .header-icon-actions .header-price-alerts svg{
  display:block!important;
  width:34px!important;
  height:34px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body>header.app-topbar .header-icon-actions .profile-button{
  overflow:visible!important;
  border:0!important;
  border-radius:50%!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:translateY(-3px)!important;
}
body>header.app-topbar .header-icon-actions .profile-button .header-profile-ring{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
}
body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  font-size:39px!important;
  line-height:1!important;
}
body>header.app-topbar .header-icon-actions .profile-button small{
  position:absolute!important;
  bottom:-9px!important;
  font-size:8px!important;
}
body>header.app-topbar .header-community-stats{
  gap:8px!important;
  align-items:stretch!important;
}
body>header.app-topbar .header-community-stat{
  min-height:48px!important;
  height:48px!important;
  padding:6px 12px!important;
  gap:8px!important;
  border-radius:9px!important;
}
body>header.app-topbar .header-community-stat>.material-symbols-rounded{
  font-size:21px!important;
}
body>header.app-topbar .header-community-stat>span:last-child{
  gap:5px!important;
}
body>header.app-topbar .header-community-stat small{
  font-size:10px!important;
  letter-spacing:.35px!important;
}
body>header.app-topbar .header-community-stat strong{
  font-size:16px!important;
}
@media(max-width:760px){
  body>header.app-topbar,
  body>header.app-topbar.header-compact{padding:6px 10px 8px!important}
  body>header.app-topbar .brand-row{gap:7px!important}
  body>header.app-topbar .brand-wordmark-text{font-size:clamp(22px,6.1vw,31px)!important}
  body>header.app-topbar .header-icon-actions{gap:clamp(2px,.8vw,7px)!important}
  body>header.app-topbar .header-icon-actions>button{
    flex-basis:42px!important;width:42px!important;min-width:42px!important;
    height:42px!important;min-height:42px!important;max-height:42px!important;
  }
  body>header.app-topbar .header-icon-actions .header-feedback-button svg,
  body>header.app-topbar .header-icon-actions .header-price-alerts svg{width:29px!important;height:29px!important}
  body>header.app-topbar .header-icon-actions .profile-button .header-profile-ring,
  body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{width:46px!important;height:46px!important}
  body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{font-size:34px!important}
  body>header.app-topbar .header-community-stat{min-height:44px!important;height:44px!important;padding:5px 7px!important;gap:5px!important}
  body>header.app-topbar .header-community-stat small{font-size:clamp(6px,1.7vw,9px)!important}
  body>header.app-topbar .header-community-stat strong{font-size:clamp(11px,2.8vw,15px)!important}
  body>header.app-topbar .header-community-stat>.material-symbols-rounded{font-size:17px!important}
}
@media(max-width:420px){
  body>header.app-topbar .brand-row{gap:4px!important}
  body>header.app-topbar .header-icon-actions{gap:1px!important}
  body>header.app-topbar .header-icon-actions>button{flex-basis:36px!important;width:36px!important;min-width:36px!important;height:38px!important;min-height:38px!important;max-height:38px!important}
  body>header.app-topbar .header-icon-actions .profile-button .header-profile-ring,
  body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{width:40px!important;height:40px!important}
  body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{font-size:30px!important}
  body>header.app-topbar .header-community-stat{padding:4px 4px!important;gap:3px!important}
}


/* Alpha v1.0.360 — settings cog: 8px right and 5px further up. */
body>header.app-topbar .header-icon-actions>#accountSettingsOpen{transform:translate(9px,-6px)!important}


/* Alpha v1.0.361 — nudge envelope right and remove its decorative dot. */
body>header.app-topbar .header-icon-actions>#headerFeedbackOpen{transform:translate(3px,-2px)!important}
body>header.app-topbar .header-icon-actions>#headerFeedbackOpen::after{display:none!important;content:none!important}


/* Alpha v1.0.363 — move the cog, envelope and bell group 5px left. */
body>header.app-topbar .header-icon-actions>#accountSettingsOpen{transform:translate(4px,-6px)!important}
body>header.app-topbar .header-icon-actions>#headerFeedbackOpen{transform:translate(-2px,-2px)!important}
body>header.app-topbar .header-icon-actions>#priceAlertsOpen{transform:translateX(-5px)!important}


/* Alpha v1.0.364 — raise only the alert bell by 2px. */
body>header.app-topbar .header-icon-actions>#priceAlertsOpen{transform:translate(-5px,-2px)!important}


/* Alpha v1.0.365 — enlarge profile avatar and level label together by 5%. */
body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{transform:scale(1.10)!important;transform-origin:center!important}
body>header.app-topbar .header-icon-actions .profile-button small{font-size:8.8px!important;transform:scale(1.10)!important;transform-origin:center top!important}


/* Alpha v1.0.369 — enlarge the complete profile circle and level label. */
body>header.app-topbar .header-icon-actions .profile-button{
  flex:0 0 60px!important;
  width:60px!important;
  min-width:60px!important;
  height:66px!important;
  min-height:66px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}
body>header.app-topbar .header-icon-actions .profile-button .header-profile-ring{
  flex:0 0 60px!important;
  width:60px!important;
  height:60px!important;
  min-width:60px!important;
  min-height:60px!important;
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{
  width:100%!important;
  height:100%!important;
  font-size:43px!important;
  transform:none!important;
}
body>header.app-topbar .header-icon-actions .profile-button small{
  position:static!important;
  display:block!important;
  margin-top:2px!important;
  font-size:10.7px!important;
  line-height:12px!important;
  transform:none!important;
}
@media(max-width:760px){
 body>header.app-topbar .header-icon-actions .profile-button{flex-basis:54px!important;width:54px!important;min-width:54px!important;height:59px!important;min-height:59px!important}
 body>header.app-topbar .header-icon-actions .profile-button .header-profile-ring{flex-basis:54px!important;width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important}
 body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{font-size:39px!important}
}
@media(max-width:420px){
 body>header.app-topbar .header-icon-actions .profile-button{flex-basis:48px!important;width:48px!important;min-width:48px!important;height:53px!important;min-height:53px!important}
 body>header.app-topbar .header-icon-actions .profile-button .header-profile-ring{flex-basis:48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}
 body>header.app-topbar .header-icon-actions .profile-button #headerProfileAvatar{font-size:35px!important}
}


/* Alpha v1.0.370 — raise the settings cog by a further 5px. */
body>header.app-topbar .header-icon-actions>#accountSettingsOpen{
  transform:translate(4px,-11px)!important;
}


/* Alpha v1.0.371 — refine wordmark alignment and temporarily remove community stats. */
body>header.app-topbar .brand-identity .brand-wordmark{
  transform:translateY(10px)!important;
}
body>header.app-topbar .brand-identity>.brand-meta .brand-version{
  transform:translateX(8px)!important;
}
body>header.app-topbar .header-community-stats{
  display:none!important;
}


/* Alpha v1.0.372 — enlarge SpotWorth wordmark by 3px, preserving its visual centre. */
body>header.app-topbar .brand-wordmark-text{
  font-size:calc(clamp(29px,6vw,39px) + 3px)!important;
  position:relative!important;
  top:-1.5px!important;
}
@media(max-width:760px){
 body>header.app-topbar .brand-wordmark-text{
  font-size:calc(clamp(22px,6.1vw,31px) + 3px)!important;
 }
}
@media(max-width:390px){
 body>header.app-topbar .brand-wordmark-text{font-size:24px!important}
}


/* Alpha v1.0.373 — move the settings cog, envelope and alert bell together 4px left and 2px down. */
body>header.app-topbar .header-icon-actions>#accountSettingsOpen{transform:translate(0,-9px)!important}
body>header.app-topbar .header-icon-actions>#headerFeedbackOpen{transform:translate(-6px,0)!important}
body>header.app-topbar .header-icon-actions>#priceAlertsOpen{transform:translate(-9px,0)!important}


/* Alpha v1.0.374 — use the existing ALPHA label as a compact changelog pill. */
body>header.app-topbar .brand-identity>.brand-meta{gap:0!important}
body>header.app-topbar .brand-identity>.brand-meta #headerInfoOpen.header-info-button{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;
 width:auto!important;min-width:0!important;height:18px!important;min-height:18px!important;padding:0 8px!important;margin:0!important;
 border:1px solid #315743!important;border-radius:999px!important;background:rgba(49,87,67,.08)!important;color:#174b38!important;
 font:800 9px/1.2 "DM Sans",sans-serif!important;letter-spacing:1.1px!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:none!important
}
body>header.app-topbar .brand-identity>.brand-meta #headerInfoOpen.header-info-button::after{content:none!important;display:none!important}
body>header.app-topbar .brand-identity>.brand-meta #headerInfoOpen.header-info-button:focus-visible{outline:2px solid #e6a071!important;outline-offset:2px!important}


/* Alpha v1.0.375 — isolate the changelog pill from legacy circular info-button styling. */
body>header.app-topbar .brand-identity>.brand-meta .header-changelog-pill{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;
 flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;
 height:18px!important;min-height:18px!important;padding:0 8px!important;margin:0!important;
 transform:translateX(8px)!important;border:1px solid #315743!important;border-radius:999px!important;
 background:rgba(49,87,67,.08)!important;color:#174b38!important;
 font:800 9px/1.2 "DM Sans",sans-serif!important;letter-spacing:1.1px!important;white-space:nowrap!important;
 text-align:center!important;overflow:visible!important;cursor:pointer!important;box-shadow:none!important
}
body>header.app-topbar .brand-identity>.brand-meta .header-changelog-pill::before,
body>header.app-topbar .brand-identity>.brand-meta .header-changelog-pill::after{content:none!important;display:none!important}
body>header.app-topbar .brand-identity>.brand-meta .header-changelog-pill:focus-visible{outline:2px solid #e6a071!important;outline-offset:2px!important}
@media(max-width:760px){body>header.app-topbar .brand-identity>.brand-meta .header-changelog-pill{font-size:8px!important;height:17px!important;min-height:17px!important;padding:0 7px!important}}


/* Alpha v1.0.377 — compact Deals controls and a stronger always-available share action. */
@media(max-width:760px){
  .deal-quick-actions{display:none!important}
  .feed-heading{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:8px!important;margin:13px 0 11px!important;padding:0 2px!important
  }
  .feed-heading-title{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important}
  .feed-heading-eyebrow{font-size:8px!important;letter-spacing:.13em!important;line-height:1.2!important}
  .feed-heading h2{margin:0!important;font-size:25px!important;line-height:1.08!important;letter-spacing:-.8px!important}
  .feed-heading .deal-count{display:block!important;margin-top:2px!important;color:#68796d!important;font-size:10px!important;font-weight:750!important;line-height:1.2!important}
  .feed-heading .heading-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex:0 0 auto!important}
  .nearby-compact-button{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
    min-height:34px!important;padding:5px 9px!important;border:1px solid #d6e4d6!important;border-radius:999px!important;
    background:#f4f8f0!important;color:#28563f!important;font-size:11px!important;font-weight:800!important;
    white-space:nowrap!important;box-shadow:0 2px 6px rgba(32,75,51,.05)!important
  }
  .nearby-compact-button .material-symbols-rounded{font-size:15px!important}
  .feed-heading .refresh-button{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
    min-height:34px!important;padding:5px 9px!important;border:1px solid #d6e4d6!important;border-radius:999px!important;
    background:#fffdf8!important;color:#28563f!important;font-size:11px!important;font-weight:800!important;
    white-space:nowrap!important
  }
  .compact-filters{margin:0 0 12px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .category-tiles{
    display:flex!important;flex-wrap:nowrap!important;gap:7px!important;margin:0 -12px 9px!important;
    padding:1px 12px 5px!important;overflow-x:auto!important;overflow-y:hidden!important;
    scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important
  }
  .category-tiles::-webkit-scrollbar{display:none!important}
  .category-tile{
    display:inline-flex!important;flex:0 0 auto!important;flex-direction:row!important;align-items:center!important;
    justify-content:center!important;gap:6px!important;min-width:0!important;min-height:37px!important;
    padding:7px 11px!important;border:1px solid #dedfce!important;border-radius:999px!important;
    background:#fffdf8!important;color:#496052!important;box-shadow:0 1px 4px rgba(44,61,47,.04)!important
  }
  .category-tile .category-icon,.category-tile>span{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    width:17px!important;height:17px!important;flex:0 0 17px!important;font-size:17px!important;line-height:1!important
  }
  .category-tile .category-icon svg{width:17px!important;height:17px!important;stroke:currentColor!important;stroke-width:1.8!important}
  .category-tile strong{font-size:10px!important;line-height:1!important;white-space:nowrap!important;font-weight:800!important}
  .category-tile.active{border-color:#2e7252!important;background:#e8f2e7!important;color:#205b40!important;box-shadow:inset 0 0 0 1px #2e7252!important}
  .advanced-filter-row{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 58px!important;
    align-items:stretch!important;gap:7px!important;margin:0 0 9px!important
  }
  .sort-control,.store-control{
    display:flex!important;align-items:center!important;gap:6px!important;min-width:0!important;min-height:39px!important;
    padding:5px 9px!important;border:1px solid #e0e3d8!important;border-radius:12px!important;
    background:#fffdf8!important;color:#345a43!important
  }
  .sort-control>span:first-child,.store-control>span:first-child{font-size:15px!important;line-height:1!important}
  .control-caption{display:none!important}
  .sort-control select,.store-control select{
    flex:1 1 auto!important;min-width:0!important;width:100%!important;min-height:27px!important;
    padding:3px 17px 3px 0!important;border:0!important;background:transparent!important;
    color:#315640!important;font-size:11px!important;font-weight:750!important
  }
  .extra-filters summary{
    display:flex!important;align-items:center!important;justify-content:center!important;min-height:39px!important;
    padding:5px 8px!important;border:1px solid #e0e3d8!important;border-radius:12px!important;
    background:#fffdf8!important;color:#315640!important;font-size:11px!important;font-weight:800!important
  }
  .extra-filter-panel{right:0!important;left:auto!important;z-index:30!important}
  .heading-actions #count{display:none!important}
  .bottom-nav{overflow:visible!important;position:relative!important;isolation:isolate!important}
  .bottom-nav-share{
    flex:0 0 74px!important;width:74px!important;height:74px!important;
    min-width:74px!important;min-height:74px!important;max-width:74px!important;max-height:74px!important;
    margin:0 6px 0 0!important;padding:0!important;transform:translateY(-13px)!important;
    border:3px solid #fffdf8!important;border-radius:24px!important;
    background:linear-gradient(145deg,#d58b62 0%,#bd704d 100%)!important;color:#fff!important;
    box-shadow:0 10px 23px rgba(160,91,58,.31),0 0 0 5px rgba(213,139,98,.14)!important;
    position:relative!important;z-index:5!important
  }
  .bottom-nav-share .share-deal-camera,.bottom-nav-share svg{
    display:block!important;width:42px!important;height:42px!important;fill:none!important;
    stroke:currentColor!important;stroke-width:2.7!important;stroke-linecap:round!important;stroke-linejoin:round!important
  }
}
@media(max-width:390px){
  .feed-heading h2{font-size:23px!important}
  .feed-heading .heading-actions{gap:4px!important}
  .nearby-compact-button,.feed-heading .refresh-button{padding:5px 7px!important;font-size:10px!important}
  .bottom-nav-share{flex-basis:70px!important;width:70px!important;height:70px!important;min-width:70px!important;min-height:70px!important;max-width:70px!important;max-height:70px!important}
}
@media(prefers-reduced-motion:reduce){
  .bottom-nav-share{transition:none!important}
}


/* Alpha v1.0.378 — correct mobile filter chip sizing and preserve the original nav footprint. */
@media(max-width:760px){
  .bottom-nav{
    box-sizing:border-box!important;
    height:calc(138px + env(safe-area-inset-bottom))!important;
    min-height:calc(138px + env(safe-area-inset-bottom))!important;
    max-height:calc(138px + env(safe-area-inset-bottom))!important;
    flex:0 0 calc(138px + env(safe-area-inset-bottom))!important;
    padding:6px 8px 6px!important;
    align-items:center!important;
    overflow:visible!important
  }
  .bottom-nav-item{align-self:center!important;min-height:58px!important}
  .bottom-nav-share{
    align-self:center!important;
    flex:0 0 74px!important;width:74px!important;height:74px!important;
    min-width:74px!important;min-height:74px!important;max-width:74px!important;max-height:74px!important;
    margin:0 6px 0 0!important;transform:translateY(-14px)!important;
    position:relative!important;z-index:125!important
  }
  .category-tiles{
    display:flex!important;flex-wrap:nowrap!important;align-items:center!important;
    gap:7px!important;margin:0 -12px 7px!important;padding:1px 12px 4px!important;
    overflow-x:auto!important;overflow-y:hidden!important;
    scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important
  }
  .category-tile{
    display:inline-flex!important;flex:0 0 auto!important;
    flex-direction:row!important;align-items:center!important;justify-content:center!important;
    box-sizing:border-box!important;width:auto!important;min-width:0!important;max-width:none!important;
    height:40px!important;min-height:40px!important;max-height:40px!important;
    aspect-ratio:auto!important;align-self:center!important;
    padding:0 11px!important;gap:6px!important;
    border:1px solid #dedfce!important;border-radius:12px!important;
    background:#fffdf8!important;color:#496052!important;
    box-shadow:0 1px 4px rgba(44,61,47,.04)!important
  }
  .category-tile .category-icon{
    display:inline-flex!important;flex:0 0 17px!important;
    align-items:center!important;justify-content:center!important;
    width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;
    border-radius:5px!important;background:transparent!important
  }
  .category-tile .category-icon svg{display:block!important;width:17px!important;height:17px!important}
  .category-tile strong{
    display:block!important;flex:0 0 auto!important;width:auto!important;
    font-size:10px!important;line-height:1!important;white-space:nowrap!important;font-weight:800!important
  }
  .category-tile.active{
    border-color:#2e7252!important;background:#e8f2e7!important;color:#205b40!important;
    box-shadow:inset 0 0 0 1px #2e7252!important
  }
  .compact-filters{margin:0 0 7px!important}
  .advanced-filter-row{margin-bottom:5px!important}
}
@media(max-width:390px){
  .bottom-nav{
    height:calc(138px + env(safe-area-inset-bottom))!important;
    min-height:calc(138px + env(safe-area-inset-bottom))!important;
    max-height:calc(138px + env(safe-area-inset-bottom))!important;
    flex-basis:calc(138px + env(safe-area-inset-bottom))!important
  }
  .category-tile{height:38px!important;min-height:38px!important;max-height:38px!important;padding:0 9px!important}
  .category-tile strong{font-size:9px!important}
}


/* Alpha v1.0.379 — restore original nav footprint; compact all category filters into one row. */
@media(max-width:760px){
  .bottom-nav{
    box-sizing:content-box!important;
    height:auto!important;
    min-height:calc(76px + env(safe-area-inset-bottom))!important;
    max-height:none!important;
    flex:0 0 auto!important;
    padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;
    align-items:center!important;
    overflow:visible!important
  }
  .bottom-nav-item{align-self:center!important;min-height:58px!important}
  .bottom-nav-share{
    align-self:center!important;
    flex:0 0 74px!important;width:74px!important;height:74px!important;
    min-width:74px!important;min-height:74px!important;max-width:74px!important;max-height:74px!important;
    margin:-19px 6px 0 0!important;transform:none!important;
    position:relative!important;z-index:125!important
  }
  .bottom-nav-share .share-deal-camera{width:42px!important;height:42px!important}
  .category-tiles{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch!important;gap:5px!important;
    width:100%!important;margin:0 0 8px!important;padding:0!important;
    overflow:visible!important
  }
  .category-tile{
    display:flex!important;flex:initial!important;
    flex-direction:column!important;align-items:center!important;justify-content:center!important;
    box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:none!important;
    height:58px!important;min-height:58px!important;max-height:58px!important;
    aspect-ratio:auto!important;align-self:stretch!important;
    padding:5px 2px!important;gap:4px!important;
    border:1px solid #dedfce!important;border-radius:11px!important;
    background:#fffdf8!important;color:#496052!important;
    box-shadow:0 1px 4px rgba(44,61,47,.04)!important
  }
  .category-tile .category-icon{
    display:flex!important;flex:0 0 18px!important;
    align-items:center!important;justify-content:center!important;
    width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
    border-radius:5px!important;background:transparent!important
  }
  .category-tile .category-icon svg{display:block!important;width:17px!important;height:17px!important}
  .category-tile strong{
    display:block!important;flex:0 1 auto!important;width:100%!important;min-width:0!important;
    font-size:8px!important;line-height:1.05!important;white-space:normal!important;
    text-align:center!important;overflow-wrap:anywhere!important;font-weight:800!important
  }
  .category-tile.active{
    border-color:#2e7252!important;background:#e8f2e7!important;color:#205b40!important;
    box-shadow:inset 0 0 0 1px #2e7252!important
  }
  .compact-filters{margin:0 0 7px!important}
  .advanced-filter-row{margin-bottom:5px!important}
}
@media(max-width:390px){
  .category-tiles{gap:4px!important}
  .category-tile{height:54px!important;min-height:54px!important;max-height:54px!important;padding:4px 1px!important}
  .category-tile strong{font-size:7.5px!important}
}


/* Alpha v1.0.380 — tighten vertical navigation spacing without shrinking the floating Share camera. */
@media(max-width:760px){
  .bottom-nav{
    box-sizing:border-box!important;
    height:auto!important;
    min-height:calc(58px + env(safe-area-inset-bottom))!important;
    max-height:none!important;
    flex:0 0 auto!important;
    align-items:center!important;
    gap:0!important;
    padding:3px 7px calc(3px + env(safe-area-inset-bottom))!important;
    overflow:visible!important
  }
  .bottom-nav::before{
    content:""!important;
    display:block!important;
    flex:0 0 76px!important;
    width:76px!important;
    height:1px!important
  }
  .bottom-nav-item{
    align-self:center!important;
    min-height:47px!important;
    height:47px!important;
    padding:1px 1px!important;
    gap:1px!important;
    border-radius:13px!important
  }
  .bottom-nav-item .nav-icon{
    width:26px!important;height:26px!important
  }
  .bottom-nav-item .nav-icon .material-symbols-rounded{
    font-size:23px!important
  }
  .bottom-nav-item small{
    font-size:9px!important;line-height:1!important
  }
  .bottom-nav-share{
    position:absolute!important;
    left:8px!important;
    top:-17px!important;
    z-index:130!important;
    display:grid!important;place-items:center!important;
    flex:none!important;
    width:74px!important;height:74px!important;
    min-width:74px!important;min-height:74px!important;
    max-width:74px!important;max-height:74px!important;
    margin:0!important;padding:0!important;
    transform:none!important
  }
  .bottom-nav-share .share-deal-camera{
    width:42px!important;height:42px!important
  }
}
@media(max-width:390px){
  .bottom-nav::before{flex-basis:72px!important;width:72px!important}
  .bottom-nav-share{left:6px!important}
  .bottom-nav-item small{font-size:8px!important}
}


/* Alpha v1.0.381 — lift the floating Share camera slightly to preserve its full lower edge. */
@media(max-width:760px){
  .bottom-nav-share{top:-23px!important}
}


/* Alpha v1.0.382 — show Home carousel distance beneath the community signal. */
.home-highlights .home-highlight-copy>.home-highlight-distance{
  order:4!important;display:inline-flex!important;align-items:center!important;
  gap:4px!important;margin-top:0!important;color:#526456!important;
  font-size:11px!important;font-weight:800!important;line-height:1.2!important;
  white-space:nowrap!important
}
.home-highlights .home-highlight-copy>.home-highlight-distance .material-symbols-rounded{
  font-size:14px!important;color:#28764e!important
}
@media(max-width:420px){
  .home-highlights .home-highlight-copy>.home-highlight-distance{font-size:10px!important}
}


/* Alpha v1.0.383 — match Home posted-time pills to the main Deals cards. */
.home-highlight-meta .home-highlight-time{
  display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;
  margin:0!important;padding:4px 7px!important;border:0!important;border-radius:99px!important;
  background:#eef2f7!important;color:#64748b!important;font-size:10px!important;
  font-weight:750!important;line-height:1!important;white-space:nowrap!important
}
/* Tighten the vertical rhythm between Home carousel sections by 5px. */
.home-content-section{margin-top:5px!important}


/* Alpha v1.0.384 — compact treasure chest glyph for the Hunters navigation item. */
.bottom-nav-item[data-nav="hunters"] .hunters-chest-icon{
 display:block!important;width:100%!important;height:100%!important;
 overflow:visible!important;fill:none
}


/* Alpha v1.0.385 — SpotWorth's compact two-menu Deals control system. */
@media(max-width:760px){
  .feed-heading{
    display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;
    margin:10px 0 12px!important;padding:0 2px!important
  }
  .feed-heading-title{display:flex!important;flex-direction:column!important;gap:2px!important}
  .feed-heading h2{margin:0!important;font-size:25px!important;line-height:1.08!important}
  .feed-heading .deal-count{
    display:inline-flex!important;align-items:center!important;align-self:flex-start!important;
    margin-top:5px!important;padding:4px 10px!important;border:1px solid #dce8d9!important;
    border-radius:999px!important;background:#f4f8ef!important;color:#496b50!important;
    font-size:10px!important;font-weight:800!important
  }
  .compact-filters{margin:0 0 13px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .deal-menu-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;align-items:start!important}
  .deal-menu{position:relative!important;min-width:0!important}
  .deal-menu>summary{
    display:flex!important;align-items:center!important;gap:9px!important;box-sizing:border-box!important;
    min-height:56px!important;padding:8px 12px!important;border:1px solid #d8e2d4!important;
    border-radius:15px!important;background:linear-gradient(180deg,#fffdf8 0%,#f8f8ef 100%)!important;
    color:#254b37!important;box-shadow:0 3px 10px rgba(38,66,45,.055)!important;
    list-style:none!important;cursor:pointer!important
  }
  .deal-menu>summary::-webkit-details-marker{display:none!important}
  .deal-menu[open]>summary{border-color:#5b9270!important;background:#edf5eb!important;box-shadow:0 0 0 2px rgba(65,125,82,.09)!important}
  .deal-menu-icon{
    display:grid!important;place-items:center!important;flex:0 0 31px!important;width:31px!important;height:31px!important;
    border-radius:10px!important;background:#e8f0e5!important;color:#286044!important;font-size:22px!important;font-weight:800!important
  }
  .deal-menu-copy{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;gap:2px!important;min-width:0!important}
  .deal-menu-copy small{font-size:8px!important;letter-spacing:.13em!important;font-weight:850!important;color:#7b8d7d!important;line-height:1!important}
  .deal-menu-copy strong{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:12px!important;line-height:1.15!important;font-weight:850!important;color:#254b37!important}
  .deal-menu-chevron{flex:0 0 auto!important;color:#66816c!important;font-size:19px!important;line-height:1!important}
  .deal-menu-panel{
    position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;z-index:80!important;
    display:grid!important;gap:4px!important;min-width:0!important;padding:8px!important;
    border:1px solid #dce5d8!important;border-radius:15px!important;background:#fffdf8!important;
    box-shadow:0 14px 34px rgba(28,54,37,.18)!important
  }
  .deal-menu-option{
    display:flex!important;align-items:center!important;gap:9px!important;width:100%!important;min-height:40px!important;
    padding:7px 9px!important;border:0!important;border-radius:10px!important;background:transparent!important;
    color:#3b5544!important;text-align:left!important;font-size:12px!important;font-weight:750!important
  }
  .deal-menu-option.active{background:#eaf3e8!important;color:#205c3d!important}
  .deal-menu-option-mark{
    display:grid!important;place-items:center!important;flex:0 0 19px!important;width:19px!important;height:19px!important;
    border:1px solid #d6e0d3!important;border-radius:6px!important;color:#28704a!important;font-size:12px!important;font-weight:900!important
  }
  .deal-menu-option.active .deal-menu-option-mark{border-color:#39815a!important;background:#39815a!important;color:white!important}
  .deal-sort-panel{gap:7px!important;padding:12px!important}
  .deal-sort-panel label{font-size:10px!important;color:#758579!important;font-weight:700!important}
  .deal-sort-panel select{
    width:100%!important;min-height:42px!important;padding:8px 30px 8px 10px!important;
    border:1px solid #dce5d8!important;border-radius:10px!important;background:#f8faf5!important;
    color:#28523b!important;font-size:12px!important;font-weight:800!important
  }
  .deal-menu-row details[open]{z-index:81!important}
}
@media(max-width:390px){
  .deal-menu-row{gap:7px!important}
  .deal-menu>summary{min-height:52px!important;padding:7px 9px!important;gap:7px!important}
  .deal-menu-icon{flex-basis:28px!important;width:28px!important;height:28px!important}
  .deal-menu-copy strong{font-size:11px!important}
}

/* Alpha v1.0.386 — keep the sort menu visually consistent with the custom filter menu. */
@media(max-width:760px){
 .deal-sort-panel{gap:4px!important;padding:8px!important}
 .deal-sort-panel .deal-menu-option{min-height:40px!important}
}


/* Alpha v1.0.387 — ensure Deals popup panels sit above the scrolling deal feed. */
@media(max-width:760px){
  .compact-filters{
    position:relative!important;
    z-index:120!important;
    overflow:visible!important;
    isolation:isolate!important;
  }
  .deal-menu-row{
    position:relative!important;
    z-index:121!important;
    overflow:visible!important;
  }
  .deal-menu{
    position:relative!important;
    z-index:122!important;
  }
  .deal-menu[open]{
    z-index:1000!important;
  }
  .deal-menu-panel{
    z-index:1001!important;
    isolation:isolate!important;
  }
  #feed{
    position:relative!important;
    z-index:1!important;
  }
  #feed .deal-row{
    position:relative!important;
    z-index:auto!important;
  }
}


/* Alpha v1.0.388 — remove the visual deal-count pill while retaining its live data element. */
@media(max-width:760px){
  .feed-heading .deal-count{display:none!important}
}


/* Alpha v1.0.389 — globally suppress the Deals counter despite older responsive rules. */
#count{display:none!important;visibility:hidden!important;width:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important}


/* Alpha v1.0.390 — override the older, more-specific responsive counter styling and collapse its space. */
@media(max-width:760px){
  .feed-heading #count{display:none!important;width:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;visibility:hidden!important}
  .feed-heading-title{gap:2px!important}
  .feed-heading{margin-bottom:8px!important}
  .compact-filters{margin-top:0!important}
}


/* Alpha v1.0.391 — shared SpotWorth deal-card visual foundation.
   Carousel and list layouts keep their own geometry while sharing the same visual language. */
.spotworth-deal-card{
  --sw-card-surface:linear-gradient(135deg,#f8f2e5 0%,#f3ecdc 100%);
  --sw-card-border:#d9c89e;
  --sw-card-radius:26px;
  --sw-card-shadow:0 7px 18px rgba(42,54,39,.10),inset 0 1px 0 rgba(255,255,255,.72);
  --sw-card-title:#20372b;
  --sw-card-price-bg:linear-gradient(135deg,#eaf6ec,#dff0e4);
  --sw-card-price-border:#b9d9c2;
  --sw-card-price-text:#155b36;
  box-sizing:border-box;
}
.spotworth-deal-card .store-pill,
.spotworth-deal-card .compact-time,
.spotworth-deal-card .deal-type-badge{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-weight:800!important;
}
.spotworth-deal-card .compact-time{
  background:#eef2f7!important;color:#64748b!important;border:0!important;border-radius:99px!important;
}
.spotworth-deal-card .store-pill{border-radius:99px!important}
.spotworth-deal-card .home-highlight-product-name,
.spotworth-deal-card .deal-product-title{
  display:block!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:var(--sw-card-title)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-weight:850!important;letter-spacing:-.35px!important;
}
.spotworth-deal-card .home-highlight-price,
.spotworth-deal-card .compact-price{
  color:var(--sw-card-price-text)!important;
  background:var(--sw-card-price-bg)!important;
  border:1px solid var(--sw-card-price-border)!important;
  border-radius:11px!important;
  box-shadow:0 2px 7px rgba(28,74,48,.09),inset 0 1px 0 rgba(255,255,255,.65)!important;
  font-weight:950!important;
}
.spotworth-deal-card .home-highlight-saving-badge,
.spotworth-deal-card .compact-saving{
  color:#176b43!important;font-weight:850!important;
}
.spotworth-deal-card--carousel{
  background:var(--sw-card-surface)!important;
  border:2px solid var(--sw-card-border)!important;
  border-radius:var(--sw-card-radius)!important;
  box-shadow:var(--sw-card-shadow)!important;
}
@media(max-width:760px){
  #feed .spotworth-deal-card--list{
    background:var(--sw-card-surface)!important;
    border:2px solid var(--sw-card-border)!important;
    border-radius:24px!important;
    box-shadow:var(--sw-card-shadow)!important;
    overflow:hidden!important;
  }
  #feed .spotworth-deal-card--list .deal-row-content{min-width:0!important}
  #feed .spotworth-deal-card--list .deal-row h3{color:var(--sw-card-title)!important}
  #feed .spotworth-deal-card--list .deal-row-image{
    background:#eee7d8!important;
    border:1px solid rgba(52,47,39,.18)!important;
    border-radius:16px!important;
    box-shadow:0 2px 5px rgba(42,54,39,.12)!important;
  }
  #feed .spotworth-deal-card--list .deal-row-image img{border-radius:15px!important}
  #feed .spotworth-deal-card--list .deal-type-badge{border-radius:99px!important}
  #feed .spotworth-deal-card--list .feed-accuracy{
    border:0!important;background:transparent!important;border-radius:0!important;
    box-shadow:none!important;padding:0!important;color:#526456!important;
  }
  #feed .spotworth-deal-card--list .deal-distance{color:#526456!important;font-weight:750!important}
}
@media(prefers-reduced-motion:no-preference){
  .spotworth-deal-card{transition:box-shadow .18s ease,border-color .18s ease}
}


/* Alpha v1.0.392 — Deals cards now use the same warm SpotWorth surface as Home.
   Remove inline white backgrounds from the renderer so the shared treatment applies. */
#feed.grid{gap:13px!important}
body #feed.grid > article.card.spotworth-deal-card--list.deal-row{
  box-sizing:border-box!important;padding:13px!important;border-radius:24px!important;
  border-width:2px!important;background:linear-gradient(135deg,#f8f2e5 0%,#f3ecdc 100%)!important;
  box-shadow:0 7px 18px rgba(42,54,39,.10),inset 0 1px 0 rgba(255,255,255,.72)!important;
  overflow:hidden!important;
}
body #feed.grid > article.card.spotworth-deal-card--list.deal-row.deal-signal-good,
body #feed.grid > article.card.spotworth-deal-card--list.deal-row.deal-signal-bad,
body #feed.grid > article.card.spotworth-deal-card--list.deal-row.deal-signal-warn,
body #feed.grid > article.card.spotworth-deal-card--list.deal-row.deal-signal-early,
body #feed.grid > article.card.spotworth-deal-card--list.deal-row.deal-signal-muted{
  background:linear-gradient(135deg,#f8f2e5 0%,#f3ecdc 100%)!important;
  box-shadow:0 7px 18px rgba(42,54,39,.10),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{
  display:grid!important;place-items:center!important;box-sizing:border-box!important;
  background:#eee7d8!important;border:1px solid rgba(90,76,48,.18)!important;
  border-radius:17px!important;box-shadow:0 2px 7px rgba(42,54,39,.10)!important;overflow:hidden!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .deal-product-image{
  border-radius:15px!important;background:transparent!important;object-fit:contain!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-content{min-width:0!important;gap:6px!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-topline{gap:7px!important}
body #feed.grid > article.card.spotworth-deal-card--list .compact-time{
  border:0!important;border-radius:99px!important;background:#e9e6dc!important;color:#647064!important;
  padding:4px 8px!important;font-size:9px!important;font-weight:800!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .store-pill{
  border-radius:99px!important;font-weight:850!important;letter-spacing:.1px!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row h3,
body #feed.grid > article.card.spotworth-deal-card--list .deal-product-title{
  color:#20372b!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:15px!important;font-weight:850!important;line-height:1.25!important;letter-spacing:-.3px!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-bottomline{align-items:center!important;gap:8px!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-price{align-items:center!important;gap:7px!important;min-width:0!important}
body #feed.grid > article.card.spotworth-deal-card--list .compact-price{
  display:inline-flex!important;align-items:center!important;min-height:30px!important;box-sizing:border-box!important;
  padding:4px 10px!important;border:1px solid #b9d9c2!important;border-radius:11px!important;
  background:linear-gradient(135deg,#eaf6ec,#dff0e4)!important;color:#155b36!important;
  box-shadow:0 2px 7px rgba(28,74,48,.09),inset 0 1px 0 rgba(255,255,255,.65)!important;
  font-size:18px!important;font-weight:950!important;line-height:1!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .compact-saving{color:#176b43!important;font-size:10px!important;font-weight:850!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-price .old{color:#7b8178!important;font-size:11px!important}
body #feed.grid > article.card.spotworth-deal-card--list .card-favourite{
  box-sizing:border-box!important;width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;
  border:1px solid #d7d9ca!important;border-radius:50%!important;background:#fffdf7!important;color:#68796b!important;
  box-shadow:0 2px 7px rgba(42,54,39,.09)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .card-favourite.is-favourite{
  border-color:#e4c36c!important;background:#fff4cf!important;color:#a16a00!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .feed-accuracy{color:#526456!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-distance{color:#526456!important;font-weight:750!important}
@media(max-width:380px){
  body #feed.grid > article.card.spotworth-deal-card--list.deal-row{padding:10px!important}
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row h3,
  body #feed.grid > article.card.spotworth-deal-card--list .deal-product-title{font-size:14px!important}
  body #feed.grid > article.card.spotworth-deal-card--list .compact-price{font-size:17px!important}
}

/* Alpha v1.0.393 — Deals image overlays and savings badges mirror Home carousel cards. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{position:relative!important;border:1px solid #202820!important;border-radius:16px!important;overflow:hidden!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .deal-type-badge{
 position:absolute!important;top:6px!important;left:6px!important;right:6px!important;z-index:3!important;
 display:inline-flex!important;width:auto!important;max-width:calc(100% - 12px)!important;min-height:0!important;
 box-sizing:border-box!important;justify-content:center!important;padding:4px 6px!important;
 border:1px solid rgba(32,40,32,.8)!important;border-radius:7px!important;
 box-shadow:0 1px 4px rgba(0,0,0,.25)!important;font-size:9px!important;line-height:1.1!important;
 white-space:normal!important;text-align:center!important
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-saving-badge{
 position:absolute!important;left:50%!important;bottom:6px!important;z-index:4!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;max-width:calc(100% - 8px)!important;padding:4px 7px!important;
 border:2px solid #fff!important;border-radius:8px!important;background:#c62828!important;color:#fff!important;
 box-shadow:0 2px 6px rgba(20,20,20,.38)!important;transform:translateX(-50%)!important;
 font-size:10px!important;font-weight:950!important;line-height:1!important;letter-spacing:.1px!important;
 white-space:nowrap!important;text-align:center!important;pointer-events:none!important
}
body #feed.grid > article.card.spotworth-deal-card--list .compact-saving{display:none!important}
@media(max-width:380px){
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .deal-type-badge{top:5px!important;left:5px!important;right:5px!important;padding:3px 4px!important;font-size:8px!important}
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-saving-badge{bottom:5px!important;padding:3px 5px!important;font-size:9px!important}
}


/* Alpha v1.0.394 — exact Home carousel category bookmarks in Deals.
   Product photo remains clear; savings badge sits beside the price. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{
 position:relative!important;overflow:visible!important;border:0!important;box-shadow:none!important;background:transparent!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image > img,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image > .deal-image-placeholder{
 box-sizing:border-box!important;border:1px solid #342f27!important;outline:1px solid #342f27!important;
 outline-offset:-1px!important;border-radius:13px!important;overflow:hidden!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-sticker-tag{
 position:absolute!important;top:-7px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;
 z-index:5!important;display:block!important;box-sizing:border-box!important;width:78px!important;min-width:78px!important;max-width:78px!important;
 height:31px!important;min-height:31px!important;padding:0!important;border:0!important;border-radius:0!important;
 background:#111!important;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;filter:none!important;
 overflow:visible!important;color:#342900!important;font-size:10px!important;font-weight:950!important;line-height:1.05!important;
 letter-spacing:.3px!important;text-align:center!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-sticker-face{
 position:absolute!important;inset:1px!important;box-sizing:border-box!important;display:flex!important;
 align-items:center!important;justify-content:center!important;padding:0 3px 2px!important;line-height:1.05!important;text-align:center!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-yellow-sticker{
 width:68px!important;min-width:68px!important;max-width:68px!important;height:34px!important;min-height:34px!important;
 clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-yellow-sticker .home-highlight-sticker-face{
 inset:1px 1px 2px!important;padding:1px 5px 3px!important;background:#ffdf38!important;color:#342900!important;
 clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance{
 clip-path:polygon(0 0,12% 5%,20% 0,30% 5%,40% 0,50% 5%,60% 0,70% 5%,80% 0,88% 5%,100% 0,95% 18%,100% 30%,95% 42%,100% 54%,95% 66%,100% 78%,94% 100%,6% 100%,0 78%,5% 66%,0 54%,5% 42%,0 30%,5% 18%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance .home-highlight-sticker-face{
 background:#c62828!important;color:#fff!important;clip-path:polygon(0 0,12% 5%,20% 0,30% 5%,40% 0,50% 5%,60% 0,70% 5%,80% 0,88% 5%,100% 0,95% 18%,100% 30%,95% 42%,100% 54%,95% 66%,100% 78%,94% 100%,6% 100%,0 78%,5% 66%,0 54%,5% 42%,0 30%,5% 18%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer{
 width:70px!important;min-width:70px!important;max-width:70px!important;height:28px!important;min-height:28px!important;
 clip-path:inset(0)!important;background:#111!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer .home-highlight-sticker-face{
 inset:1px!important;clip-path:none!important;background:#c65336!important;color:#fff!important;border-radius:0!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-price-hold{
 width:58px!important;min-width:58px!important;max-width:58px!important;clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-price-hold .home-highlight-sticker-face{
 background:#2b8876!important;color:#fff!important;clip-path:polygon(0 0,100% 0,100% 68%,50% 100%,0 68%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-member-price{
 clip-path:polygon(0 0,100% 0,100% 35%,91% 50%,100% 65%,100% 100%,0 100%,0 65%,9% 50%,0 35%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-member-price .home-highlight-sticker-face{
 background:#285b9a!important;color:#fff!important;clip-path:polygon(0 0,100% 0,100% 35%,91% 50%,100% 65%,100% 100%,0 100%,0 65%,9% 50%,0 35%)!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-price .home-highlight-saving-badge{
 position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;transform:none!important;margin:0!important;
 z-index:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;
 box-sizing:border-box!important;min-height:30px!important;padding:5px 8px!important;border:2px solid #fff!important;border-radius:7px!important;
 background:#c62828!important;color:#fff!important;box-shadow:0 2px 5px rgba(20,20,20,.24)!important;
 font-size:12px!important;font-weight:950!important;line-height:1!important;letter-spacing:.1px!important;
 white-space:nowrap!important;text-align:center!important;pointer-events:none!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-price{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:7px!important}
body #feed.grid > article.card.spotworth-deal-card--list .compact-saving{display:none!important}
@media(max-width:380px){
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-sticker-tag{font-size:8px!important}
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-yellow-sticker{width:60px!important;min-width:60px!important;max-width:60px!important;height:31px!important;min-height:31px!important}
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-price-hold{width:52px!important;min-width:52px!important;max-width:52px!important}
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer{width:63px!important;min-width:63px!important;max-width:63px!important;height:25px!important;min-height:25px!important}
 body #feed.grid > article.card.spotworth-deal-card--list .deal-row-price .home-highlight-saving-badge{min-height:27px!important;padding:4px 6px!important;font-size:11px!important}
}


/* Alpha v1.0.395 — clear Hunters-specific geofence feedback, matching the supermarket notice. */
.hunter-location-notice-dialog{box-sizing:border-box;width:min(440px,calc(100% - 28px));max-width:440px;padding:0;border:0;border-radius:24px;background:transparent;overflow:visible;color:#26382d;box-shadow:0 24px 80px rgba(12,35,23,.3)}
.hunter-location-notice-dialog::backdrop{background:rgba(12,28,20,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hunter-location-notice-panel{display:grid;gap:13px;padding:30px 26px 25px;border:1px solid #d9e3d5;border-radius:24px;background:#fffdf7;text-align:center}
.hunter-location-notice-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto;border-radius:50%;background:#edf3e9;color:#315b43;font-size:36px;font-weight:800}
.hunter-location-notice-panel>small{color:#68806c;font-size:10px;font-weight:850;letter-spacing:1.4px}
.hunter-location-notice-panel h2{margin:0;color:#26382d;font-size:23px;line-height:1.2}
.hunter-location-notice-panel p{margin:0;color:#58685d;font-size:15px;line-height:1.5}
.hunter-location-notice-panel .hunter-location-notice-guidance{padding:12px 14px;border-radius:14px;background:#f0f4ec;color:#49604e;font-size:13px}
.hunter-location-notice-panel .primary{width:100%;min-height:48px;margin-top:3px}
@media(max-width:420px){.hunter-location-notice-panel{padding:26px 20px 21px}.hunter-location-notice-panel h2{font-size:21px}}


/* Alpha v1.0.396 — match Deals Offer and To Clear badges to the Home carousel. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance{
  width:70px!important;min-width:70px!important;max-width:70px!important;
  height:28px!important;min-height:28px!important;
  box-sizing:border-box!important;padding:0!important;
  clip-path:none!important;
  border:0!important;border-radius:0!important;
  background:#171717!important;
  transform:translateX(-50%)!important;
  overflow:hidden!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer .home-highlight-sticker-face,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance .home-highlight-sticker-face{
  position:absolute!important;inset:1px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:auto!important;height:auto!important;min-height:0!important;
  box-sizing:border-box!important;padding:0 4px!important;
  clip-path:none!important;border:0!important;border-radius:0!important;
  color:#fff!important;font-size:10px!important;font-weight:950!important;
  line-height:1!important;letter-spacing:.3px!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer .home-highlight-sticker-face{
  background:#49336f!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance .home-highlight-sticker-face{
  background:#c62828!important;
}
@media(max-width:380px){
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer,
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance{
    width:63px!important;min-width:63px!important;max-width:63px!important;
    height:25px!important;min-height:25px!important;
  }
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer .home-highlight-sticker-face,
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance .home-highlight-sticker-face{
    font-size:9px!important;
  }
}


/* Alpha v1.0.397 — lead with the product name on Deals cards. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-content>h3{
  order:0!important;margin:0 0 2px!important;padding:0!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-content>.deal-row-topline{
  order:1!important;margin:0!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-content>.deal-row-bottomline{order:2!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-content>.deal-row-footer{order:3!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-product-title{
  display:block!important;color:#20372b!important;font-size:18px!important;font-weight:900!important;
  line-height:1.18!important;letter-spacing:-.35px!important;
}
@media(max-width:380px){
  body #feed.grid > article.card.spotworth-deal-card--list .deal-product-title{font-size:16px!important}
}


/* Alpha v1.0.398 — taller product image, unchanged card width/layout. */
@media(max-width:760px){
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{
    width:76px!important;height:112px!important;min-height:112px!important;
    max-height:112px!important;align-self:start!important;flex:0 0 76px!important;
  }
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image>img{
    width:100%!important;height:100%!important;min-height:0!important;
    object-fit:cover!important;object-position:center!important;
  }
}
@media(max-width:380px){
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{
    width:68px!important;height:102px!important;min-height:102px!important;
    max-height:102px!important;flex-basis:68px!important;
  }
}


/* Alpha v1.0.399 — align Deals signal and distance rows with Home carousel. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  justify-content:flex-start!important;gap:5px!important;width:100%!important;
  margin:0!important;padding:0!important;transform:none!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal{
  display:inline-flex!important;align-items:center!important;gap:5px!important;
  color:#59665d!important;font-size:12px!important;font-weight:800!important;line-height:1.2!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  padding:0!important;max-width:100%!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal .signal-dot{
  display:inline-block!important;width:9px!important;height:9px!important;min-width:9px!important;flex:0 0 9px!important;
  border-radius:50%!important;background:#9aa69c!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal.signal-good .signal-dot{background:#27965b!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal.signal-bad .signal-dot{background:#4d8dc5!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal.signal-warn .signal-dot,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal.signal-early .signal-dot{background:#d49a32!important}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-distance{
  display:inline-flex!important;align-items:center!important;gap:4px!important;
  color:#596c5e!important;font-size:12px!important;font-weight:800!important;line-height:1.2!important;
  white-space:nowrap!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-distance .material-symbols-rounded{
  display:inline-block!important;color:#27764d!important;font-size:15px!important;line-height:1!important;
}
/* Product-name display formatting only; stored product names are untouched. */
.home-highlight-product-name,
body #feed.grid > article.card.spotworth-deal-card--list .deal-product-title,
#dealDetailContent .deal-detail-hero-copy h2,
.spotworth-deal-card .deal-product-title{
  text-transform:uppercase!important;
}
@media(max-width:380px){
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-signal,
  body #feed.grid > article.card.spotworth-deal-card--list .deal-row-footer .home-highlight-distance{font-size:11px!important}
}


/* Alpha v1.0.400 — fill the fixed Deals image frame without changing card geometry. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{
  overflow:hidden!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image img,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .deal-product-image{
  display:block!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
  object-fit:cover!important;object-position:center center!important;
}


/* Alpha v1.0.401 — keep category badges above, not clipped by, the product photo. */
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image{
  position:relative!important;overflow:visible!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image>img,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image>.deal-product-image{
  position:relative!important;z-index:1!important;display:block!important;
  width:100%!important;height:100%!important;object-fit:cover!important;
  border-radius:15px!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-sticker-tag,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .deal-type-badge,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-highlight-saving-badge{
  z-index:20!important;
}
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-offer,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-clearance,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-price-hold,
body #feed.grid > article.card.spotworth-deal-card--list .deal-row-image .home-bookmark-yellow-sticker{
  z-index:20!important;
}


/* Alpha v1.0.402 — detailed-view product card aligned with Home and Deals. */
#dealDetailContent .deal-detail-hero{box-sizing:border-box!important;border:1.5px solid #e6c46c!important;border-radius:19px!important;background:linear-gradient(125deg,#fffaf1 0%,#fffdf8 100%)!important;box-shadow:0 5px 16px rgba(40,55,43,.09)!important;padding:12px!important;gap:13px!important}
#dealDetailContent .deal-detail-hero-image{box-sizing:border-box!important;border:1px solid rgba(32,55,43,.16)!important;border-radius:13px!important;background:#f2f1e9!important;overflow:hidden!important}
#dealDetailContent .deal-detail-hero-image .deal-detail-image,#dealDetailContent .deal-detail-hero-image .deal-detail-emoji{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important}
#dealDetailContent .deal-detail-hero-copy h2{color:#20372b!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif!important;font-size:20px!important;font-weight:900!important;letter-spacing:-.35px!important;line-height:1.16!important;margin:7px 0 6px!important}
#dealDetailContent .deal-detail-price{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;color:#20372b!important;font-size:23px!important;font-weight:900!important}
#dealDetailContent .deal-detail-price>strong:not(.aldi-30-tag){color:#20372b!important;font-size:23px!important;font-weight:950!important}
#dealDetailContent .deal-detail-price .saving{display:inline-flex!important;align-items:center!important;min-height:28px!important;padding:4px 9px!important;border-radius:9px!important;background:#e5f0e3!important;color:#35654a!important;font-size:12px!important;font-weight:850!important}
#dealDetailContent .deal-detail-price .old{font-size:13px!important;color:#8995a5!important}
#dealDetailContent .deal-detail-time{padding:6px 9px!important;border-radius:99px!important;background:#edf1f5!important;color:#68788d!important;font-size:11px!important;font-weight:800!important}
#dealDetailContent .deal-detail-retailer{min-height:30px!important;padding:5px 10px!important;border-radius:10px!important;font-size:12px!important;font-weight:850!important}
#dealDetailContent .deal-detail-signal-row{display:flex!important;align-items:center!important;gap:8px!important;margin-top:1px!important}
#dealDetailContent .deal-detail-signal{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#42684f!important;font-size:12px!important;font-weight:750!important}
#dealDetailContent .deal-detail-signal .signal-dot{width:9px!important;height:9px!important;flex:0 0 9px!important;border-radius:50%!important}
#dealDetailContent .deal-detail-signal .signal-divider{display:none!important}
#dealDetailContent .deal-detail-signal strong{font-size:12px!important;font-weight:900!important;letter-spacing:.15px!important}
#dealDetailContent .deal-detail-favourite-star{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;border:1px solid #dce5ef!important;border-radius:50%!important;background:#f4f7fb!important;color:#254d78!important}
#dealDetailContent .deal-detail-favourite-star>span{font-size:23px!important;line-height:1!important}
#dealDetailContent .deal-detail-distance-row{display:flex!important;align-items:center!important;gap:4px!important;margin-top:4px!important;color:#718477!important;font-size:11px!important;font-weight:650!important}
#dealDetailContent .deal-detail-distance-row .material-symbols-rounded{color:#26754c!important;font-size:15px!important;font-weight:700!important}
@media(max-width:560px){
#dealDetailContent .deal-detail-hero{grid-template-columns:96px minmax(0,1fr)!important;min-height:116px!important;gap:10px!important;padding:10px!important}
#dealDetailContent .deal-detail-hero-image{width:96px!important;height:108px!important;min-width:96px!important}
#dealDetailContent .deal-detail-hero-info{padding-right:30px!important}
#dealDetailContent .deal-detail-hero-copy h2{font-size:17px!important;margin:5px 0 5px!important}
#dealDetailContent .deal-detail-price,#dealDetailContent .deal-detail-price>strong:not(.aldi-30-tag){font-size:21px!important}
#dealDetailContent .deal-detail-price .saving{font-size:11px!important;min-height:26px!important}
#dealDetailContent .deal-detail-retailer{font-size:10px!important;min-height:27px!important;padding:4px 8px!important}
#dealDetailContent .deal-detail-time{font-size:10px!important}
#dealDetailContent .deal-detail-signal{font-size:11px!important}
#dealDetailContent .deal-detail-favourite-star{width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important}
}


/* Alpha v1.0.403 — punchier detail hero with full-width title, larger image and shared price badges. */
#dealDetailContent .deal-detail-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-areas:'heading heading' 'image info'!important;align-items:center!important;gap:12px 16px!important;padding:16px!important;}
#dealDetailContent .deal-detail-heading{grid-area:heading!important;min-width:0!important;padding-right:42px!important;}
#dealDetailContent .deal-detail-heading h2{margin:0 0 9px!important;color:#20372b!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif!important;font-size:clamp(22px,4vw,29px)!important;font-weight:950!important;letter-spacing:-.65px!important;line-height:1.08!important;overflow-wrap:anywhere!important;}
#dealDetailContent .deal-detail-heading .deal-detail-hero-meta{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:7px!important;margin:0!important;}
#dealDetailContent .deal-detail-hero-image{grid-area:image!important;width:100%!important;height:174px!important;min-width:0!important;max-width:none!important;min-height:0!important;overflow:hidden!important;border:1px solid rgba(32,55,43,.17)!important;border-radius:16px!important;background:#f2f1e9!important;}
#dealDetailContent .deal-detail-hero-image .deal-detail-image,#dealDetailContent .deal-detail-hero-image .deal-detail-emoji{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important;}
#dealDetailContent .deal-detail-hero-info{grid-area:info!important;display:flex!important;min-width:0!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:13px!important;padding:0!important;}
#dealDetailContent .deal-detail-price-row{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;}
#dealDetailContent .deal-detail-price-row .home-highlight-price{display:inline-flex!important;align-items:center!important;min-height:42px!important;padding:7px 12px!important;border:1px solid #24364a!important;border-radius:10px!important;background:#e5f3e7!important;color:#155b36!important;font-size:clamp(21px,4vw,27px)!important;font-weight:950!important;line-height:1!important;box-shadow:0 1px 2px rgba(24,35,48,.12),inset 0 1px 0 rgba(255,255,255,.35)!important;}
#dealDetailContent .deal-detail-price-row .home-highlight-saving-badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:7px 9px!important;border:2px solid #fff!important;border-radius:7px!important;background:#c62828!important;color:#fff!important;font-size:13px!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important;box-shadow:0 2px 5px rgba(20,20,20,.25)!important;}
#dealDetailContent .deal-detail-price-row .old{color:#8995a5!important;font-size:13px!important;text-decoration:line-through!important;}
#dealDetailContent .deal-detail-signal-row{display:flex!important;align-items:center!important;gap:7px!important;width:100%!important;margin:0!important;}
#dealDetailContent .deal-detail-signal{display:inline-flex!important;align-items:center!important;flex-wrap:wrap!important;gap:6px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#42684f!important;font-size:12px!important;font-weight:750!important;}
#dealDetailContent .deal-detail-signal .signal-dot{width:9px!important;height:9px!important;flex:0 0 9px!important;border-radius:50%!important;}
#dealDetailContent .deal-detail-signal .signal-divider{display:none!important;}
#dealDetailContent .deal-detail-signal strong{font-size:12px!important;font-weight:950!important;letter-spacing:.15px!important;}
#dealDetailContent .deal-detail-favourite-star{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border:1px solid #dce5ef!important;border-radius:50%!important;background:#f4f7fb!important;color:#254d78!important;}
#dealDetailContent .deal-detail-favourite-star>span{font-size:24px!important;line-height:1!important;}
#dealDetailContent .deal-detail-distance-row{display:flex!important;align-items:center!important;gap:4px!important;margin:0!important;color:#718477!important;font-size:12px!important;font-weight:750!important;}
#dealDetailContent .deal-detail-distance-row .material-symbols-rounded{color:#26754c!important;font-size:17px!important;font-weight:700!important;}
@media(max-width:560px){
#dealDetailContent .deal-detail-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;padding:12px!important;}
#dealDetailContent .deal-detail-heading{padding-right:34px!important;}
#dealDetailContent .deal-detail-heading h2{font-size:clamp(19px,5.2vw,24px)!important;line-height:1.08!important;margin-bottom:8px!important;}
#dealDetailContent .deal-detail-hero-image{height:150px!important;border-radius:14px!important;}
#dealDetailContent .deal-detail-hero-info{gap:11px!important;}
#dealDetailContent .deal-detail-price-row{gap:6px!important;}
#dealDetailContent .deal-detail-price-row .home-highlight-price{min-height:37px!important;padding:6px 9px!important;font-size:21px!important;}
#dealDetailContent .deal-detail-price-row .home-highlight-saving-badge{min-height:34px!important;padding:6px 7px!important;font-size:11px!important;}
#dealDetailContent .deal-detail-price-row .old{font-size:11px!important;}
#dealDetailContent .deal-detail-retailer{min-height:27px!important;padding:4px 8px!important;font-size:10px!important;}
#dealDetailContent .deal-detail-time{font-size:10px!important;}
#dealDetailContent .deal-detail-signal{font-size:10px!important;}
#dealDetailContent .deal-detail-signal strong{font-size:10px!important;}
#dealDetailContent .deal-detail-favourite-star{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;}
#dealDetailContent .deal-detail-distance-row{font-size:11px!important;}
}


/* Alpha v1.0.405 — force the detail image to fill its frame and give the frame a black outline. */
#dealDetailContent .deal-detail-hero-image{
  box-sizing:border-box!important;
  border:2px solid #111!important;
  background:#f2f1e9!important;
  overflow:hidden!important;
}
#dealDetailContent .deal-detail-hero-image img.deal-detail-image{
  display:block!important;
  width:100%!important;height:100%!important;
  min-width:100%!important;max-width:100%!important;
  min-height:100%!important;max-height:100%!important;
  flex:1 1 100%!important;
  object-fit:cover!important;object-position:center!important;
  border:0!important;border-radius:inherit!important;
}


/* Alpha v1.0.406 — image zoom affordance and full-size lightbox, detail pages only. */
#dealDetailContent .deal-detail-hero-image{position:relative!important;isolation:isolate!important}
#dealDetailContent .deal-detail-image-expand{
  position:absolute!important;right:9px!important;bottom:9px!important;z-index:5!important;
  display:grid!important;place-items:center!important;
  width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
  padding:0!important;border:1.5px solid rgba(255,255,255,.95)!important;
  border-radius:11px!important;background:rgba(20,31,27,.78)!important;
  color:#fff!important;box-shadow:0 2px 8px rgba(0,0,0,.3)!important;
  -webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:pointer!important;
}
#dealDetailContent .deal-detail-image-expand .material-symbols-rounded{font-size:21px!important;line-height:1!important}
#dealImageZoom{
  width:min(96vw,1100px)!important;height:min(94dvh,1000px)!important;
  max-width:96vw!important;max-height:94dvh!important;
  padding:0!important;border:0!important;border-radius:18px!important;
  overflow:visible!important;background:transparent!important;color:#fff!important;
}
#dealImageZoom::backdrop{background:rgba(8,13,18,.91)!important;backdrop-filter:blur(5px)}
#dealImageZoom .deal-image-zoom-panel{
  position:relative!important;display:grid!important;place-items:center!important;
  width:100%!important;height:100%!important;min-height:0!important;
  padding:12px!important;border:1px solid rgba(255,255,255,.2)!important;
  border-radius:18px!important;background:#111820!important;
}
#dealImageZoomImage{
  display:block!important;width:100%!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;object-fit:contain!important;
  border-radius:10px!important;
}
#dealImageZoomClose{
  position:absolute!important;top:12px!important;right:12px!important;z-index:3!important;
  display:grid!important;place-items:center!important;width:42px!important;height:42px!important;
  min-width:42px!important;min-height:42px!important;padding:0!important;
  border:1px solid rgba(255,255,255,.5)!important;border-radius:50%!important;
  background:rgba(15,22,29,.78)!important;color:#fff!important;
  font-size:28px!important;line-height:1!important;
}
@media(max-width:560px){
 #dealDetailContent .deal-detail-image-expand{right:7px!important;bottom:7px!important;width:33px!important;height:33px!important;min-width:33px!important;min-height:33px!important}
 #dealImageZoom{width:96vw!important;height:90dvh!important;max-width:96vw!important;max-height:90dvh!important}
 #dealImageZoom .deal-image-zoom-panel{padding:8px!important}
}


/* Alpha v1.0.407 — compact inline branch metadata below the product title. */
#dealDetailContent .deal-detail-hero-meta{
  display:flex!important;align-items:center!important;flex-wrap:wrap!important;
  gap:7px!important;margin:0!important;min-width:0!important;
}
#dealDetailContent .deal-detail-branch-inline{
  display:inline-flex!important;align-items:center!important;gap:3px!important;
  min-width:0!important;max-width:100%!important;color:#718477!important;
  font-size:12px!important;font-weight:700!important;line-height:1.25!important;
  overflow-wrap:anywhere!important;
}
#dealDetailContent .deal-detail-branch-inline .material-symbols-rounded{
  flex:0 0 auto!important;color:#28764e!important;font-size:15px!important;
}
#dealDetailContent .deal-detail-hero-meta .deal-detail-time,
#dealDetailContent .deal-detail-hero-meta .deal-detail-retailer{flex:0 0 auto!important}
#dealDetailContent .deal-detail-branch{display:none!important}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero-meta{gap:6px!important}
 #dealDetailContent .deal-detail-branch-inline{font-size:11px!important}
}


/* Alpha v1.0.408 — anchor the detail favourite to the lower-right of the info column. */
#dealDetailContent .deal-detail-hero-info{
  position:relative!important;
  padding-right:54px!important;
  padding-bottom:0!important;
}
#dealDetailContent .deal-detail-signal-row{position:static!important}
#dealDetailContent .deal-detail-favourite-star{
  position:absolute!important;
  right:0!important;
  bottom:0!important;
  top:auto!important;
  left:auto!important;
  display:grid!important;
  place-items:center!important;
  box-sizing:border-box!important;
  flex:0 0 46px!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  max-width:46px!important;
  max-height:46px!important;
  aspect-ratio:1 / 1!important;
  padding:0!important;
  margin:0!important;
  border-radius:50%!important;
  transform:none!important;
}
#dealDetailContent .deal-detail-favourite-star>span{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  line-height:1!important;
}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero-info{padding-right:44px!important}
 #dealDetailContent .deal-detail-favourite-star{
  flex-basis:40px!important;width:40px!important;height:40px!important;
  min-width:40px!important;min-height:40px!important;
  max-width:40px!important;max-height:40px!important;
 }
}


/* Alpha v1.0.409 — restore price hierarchy and place favourite at top-right. */
#dealDetailContent .deal-detail-hero-info{
  position:relative!important;
  padding:58px 0 0!important;
}
#dealDetailContent .deal-detail-favourite-star{
  position:absolute!important;
  top:0!important;right:0!important;bottom:auto!important;left:auto!important;
  display:grid!important;place-items:center!important;
  box-sizing:border-box!important;flex:none!important;
  width:46px!important;height:46px!important;
  min-width:46px!important;min-height:46px!important;
  max-width:46px!important;max-height:46px!important;
  aspect-ratio:1 / 1!important;
  margin:0!important;padding:0!important;
  border:1px solid #dce5ef!important;border-radius:50%!important;
  background:#f4f7fb!important;color:#254d78!important;
  transform:none!important;
}
#dealDetailContent .deal-detail-favourite-star>span{
  display:grid!important;place-items:center!important;
  width:100%!important;height:100%!important;line-height:1!important;
}
#dealDetailContent .deal-detail-price-row{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  grid-template-areas:"price old"!important;
  align-items:center!important;justify-content:start!important;
  gap:8px 12px!important;width:100%!important;
}
#dealDetailContent .deal-detail-price-row .home-highlight-price{grid-area:price!important}
#dealDetailContent .deal-detail-price-row .old{
  grid-area:old!important;justify-self:start!important;
  white-space:nowrap!important;font-size:clamp(13px,2vw,18px)!important;
}
#dealDetailContent .deal-detail-saving-row{
  display:flex!important;align-items:flex-start!important;
  width:100%!important;margin-top:10px!important;
}
#dealDetailContent .deal-detail-saving-row .home-highlight-saving-badge{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
#dealDetailContent .deal-detail-signal-row{
  display:flex!important;align-items:center!important;
  width:100%!important;margin-top:12px!important;
}
#dealDetailContent .deal-detail-distance-row{margin-top:12px!important}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero-info{padding-top:52px!important}
 #dealDetailContent .deal-detail-favourite-star{
  width:40px!important;height:40px!important;
  min-width:40px!important;min-height:40px!important;
  max-width:40px!important;max-height:40px!important;
 }
 #dealDetailContent .deal-detail-price-row{gap:7px 9px!important}
 #dealDetailContent .deal-detail-price-row .old{font-size:12px!important}
 #dealDetailContent .deal-detail-saving-row{margin-top:8px!important}
}


/* Alpha v1.0.410 — favourite at the card top-right; restore the red discount badge. */
#dealDetailContent .deal-detail-hero{position:relative!important}
#dealDetailContent .deal-detail-hero>.deal-detail-favourite-star{
 position:absolute!important;top:12px!important;right:12px!important;bottom:auto!important;left:auto!important;z-index:5!important;
 display:grid!important;place-items:center!important;box-sizing:border-box!important;flex:none!important;
 width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
 max-width:46px!important;max-height:46px!important;aspect-ratio:1 / 1!important;
 margin:0!important;padding:0!important;border:1px solid #dce5ef!important;border-radius:50%!important;
 background:#f4f7fb!important;color:#254d78!important;transform:none!important;
}
#dealDetailContent .deal-detail-hero>.deal-detail-favourite-star>span{
 display:grid!important;place-items:center!important;width:100%!important;height:100%!important;
 line-height:1!important;font-size:27px!important;
}
#dealDetailContent .deal-detail-heading{padding-right:58px!important}
#dealDetailContent .deal-detail-hero-info{position:static!important;padding:0!important}
#dealDetailContent .deal-detail-saving-row .home-highlight-saving-badge{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-height:38px!important;padding:7px 10px!important;border:2px solid #fff!important;
 border-radius:8px!important;background:#c62828!important;color:#fff!important;
 font-size:15px!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important;
 box-shadow:0 2px 6px rgba(20,20,20,.25)!important;
}
#dealDetailContent .deal-detail-saving-row{margin-top:10px!important}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero>.deal-detail-favourite-star{
  top:10px!important;right:10px!important;width:42px!important;height:42px!important;
  min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important;
 }
 #dealDetailContent .deal-detail-heading{padding-right:52px!important}
 #dealDetailContent .deal-detail-saving-row{margin-top:8px!important}
 #dealDetailContent .deal-detail-saving-row .home-highlight-saving-badge{
  min-height:36px!important;padding:6px 9px!important;font-size:14px!important;
 }
}


/* Alpha v1.0.411 — restore the intended compact square-image, two-column detail card. */
#dealDetailContent .deal-detail-hero{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
 grid-template-areas:"heading heading" "image info"!important;
 align-items:start!important;gap:12px!important;
 position:relative!important;padding:16px!important;
}
#dealDetailContent .deal-detail-heading{
 grid-area:heading!important;display:flex!important;align-items:flex-start!important;
 justify-content:space-between!important;gap:12px!important;
 min-width:0!important;padding:0!important;
}
#dealDetailContent .deal-detail-heading h2{
 flex:1 1 auto!important;min-width:0!important;margin:0!important;
 color:#20372b!important;font-size:clamp(22px,5.2vw,29px)!important;
 font-weight:950!important;letter-spacing:-.65px!important;line-height:1.08!important;
 overflow-wrap:anywhere!important;
}
#dealDetailContent .deal-detail-heading>.deal-detail-favourite-star{
 position:static!important;flex:0 0 42px!important;
 display:grid!important;place-items:center!important;
 box-sizing:border-box!important;width:42px!important;height:42px!important;
 min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important;
 aspect-ratio:1/1!important;margin:0!important;padding:0!important;
 border:1px solid #dce5ef!important;border-radius:50%!important;
 background:#f4f7fb!important;color:#254d78!important;
}
#dealDetailContent .deal-detail-heading>.deal-detail-favourite-star>span{
 display:grid!important;place-items:center!important;width:100%!important;height:100%!important;
 font-size:25px!important;line-height:1!important;
}
#dealDetailContent .deal-detail-hero-image{
 grid-area:image!important;position:relative!important;isolation:isolate!important;
 width:100%!important;height:auto!important;aspect-ratio:1/1!important;
 min-width:0!important;min-height:0!important;max-width:none!important;
 overflow:hidden!important;border:2px solid #171717!important;border-radius:16px!important;
 background:#f2f1e9!important;
}
#dealDetailContent .deal-detail-hero-image .deal-detail-image,
#dealDetailContent .deal-detail-hero-image .deal-detail-emoji{
 display:block!important;width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important;
}
#dealDetailContent .deal-detail-hero-info{
 grid-area:info!important;position:static!important;
 display:flex!important;min-width:0!important;flex-direction:column!important;
 align-items:flex-start!important;justify-content:flex-start!important;
 gap:12px!important;padding:0!important;
}
#dealDetailContent .deal-detail-price-row{
 display:flex!important;align-items:center!important;flex-wrap:wrap!important;
 gap:8px!important;width:100%!important;margin:0!important;
}
#dealDetailContent .deal-detail-price-row .home-highlight-price{
 min-height:42px!important;padding:7px 12px!important;font-size:clamp(21px,4.2vw,28px)!important;
}
#dealDetailContent .deal-detail-price-row .old{
 white-space:nowrap!important;font-size:clamp(13px,2.6vw,18px)!important;
}
#dealDetailContent .deal-detail-saving-row{
 display:flex!important;align-items:flex-start!important;width:100%!important;margin:0!important;
}
#dealDetailContent .deal-detail-saving-row .home-highlight-saving-badge{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-height:36px!important;padding:6px 9px!important;border:2px solid #fff!important;
 border-radius:8px!important;background:#c62828!important;color:#fff!important;
 font-size:clamp(12px,2.7vw,15px)!important;font-weight:950!important;line-height:1!important;
 white-space:nowrap!important;box-shadow:0 2px 6px rgba(20,20,20,.22)!important;
}
#dealDetailContent .deal-detail-signal-row{display:flex!important;align-items:center!important;width:100%!important;margin:0!important}
#dealDetailContent .deal-detail-signal{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:6px!important;font-size:clamp(10px,2.5vw,14px)!important}
#dealDetailContent .deal-detail-signal strong{font-size:inherit!important}
#dealDetailContent .deal-detail-signal .signal-divider{display:none!important}
#dealDetailContent .deal-detail-distance-row{
 display:flex!important;align-items:center!important;gap:7px!important;
 width:100%!important;margin:0!important;font-size:clamp(11px,2.7vw,15px)!important;
}
#dealDetailContent .deal-detail-distance-row .material-symbols-rounded{flex:0 0 auto!important}
#dealDetailContent .deal-detail-meta-strip{
 display:flex!important;align-items:center!important;flex-wrap:wrap!important;
 gap:8px 10px!important;margin:12px 0 14px!important;padding:0 4px!important;
}
#dealDetailContent .deal-detail-meta-strip .deal-detail-retailer{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 flex:0 0 auto!important;min-height:34px!important;padding:6px 12px!important;
 border-radius:999px!important;font-size:13px!important;font-weight:800!important;
}
#dealDetailContent .deal-detail-meta-strip .deal-detail-time{
 order:3!important;display:inline-flex!important;align-items:center!important;
 flex:0 0 auto!important;min-height:30px!important;padding:5px 10px!important;
 border-radius:999px!important;background:#edf2f8!important;color:#687b91!important;
 font-size:12px!important;font-weight:750!important;
}
#dealDetailContent .deal-detail-meta-address{
 display:inline-flex!important;align-items:center!important;gap:4px!important;
 min-width:0!important;color:#71847a!important;font-size:13px!important;
 font-weight:700!important;line-height:1.25!important;overflow-wrap:anywhere!important;
}
#dealDetailContent .deal-detail-meta-address .material-symbols-rounded{flex:0 0 auto!important;color:#28764e!important;font-size:16px!important}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;padding:12px!important}
 #dealDetailContent .deal-detail-heading{gap:8px!important}
 #dealDetailContent .deal-detail-heading h2{font-size:clamp(20px,5.6vw,25px)!important}
 #dealDetailContent .deal-detail-heading>.deal-detail-favourite-star{flex-basis:38px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;max-width:38px!important;max-height:38px!important}
 #dealDetailContent .deal-detail-heading>.deal-detail-favourite-star>span{font-size:23px!important}
 #dealDetailContent .deal-detail-hero-info{gap:10px!important}
 #dealDetailContent .deal-detail-price-row{gap:6px!important}
 #dealDetailContent .deal-detail-price-row .home-highlight-price{min-height:38px!important;padding:6px 9px!important;font-size:clamp(19px,5vw,23px)!important}
 #dealDetailContent .deal-detail-price-row .old{font-size:12px!important}
 #dealDetailContent .deal-detail-saving-row .home-highlight-saving-badge{min-height:33px!important;padding:5px 7px!important;font-size:12px!important}
 #dealDetailContent .deal-detail-signal{font-size:10px!important}
 #dealDetailContent .deal-detail-distance-row{font-size:11px!important}
 #dealDetailContent .deal-detail-meta-strip{gap:7px 9px!important;margin:10px 0 12px!important}
 #dealDetailContent .deal-detail-meta-strip .deal-detail-retailer{min-height:31px!important;padding:5px 10px!important;font-size:12px!important}
 #dealDetailContent .deal-detail-meta-address{font-size:12px!important}
 #dealDetailContent .deal-detail-meta-strip .deal-detail-time{font-size:11px!important}
}


/* Alpha v1.0.412 — admin-only deal removal control on the deals feed. */
#feed .deal-row{position:relative!important}
#feed .admin-deal-delete{
 position:absolute!important;top:7px!important;right:7px!important;z-index:8!important;
 display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;
 min-height:29px!important;padding:4px 8px!important;
 border:1px solid #e6b8b1!important;border-radius:999px!important;
 background:rgba(255,250,248,.97)!important;color:#a43e32!important;
 box-shadow:0 2px 7px rgba(35,35,35,.12)!important;
 font:800 11px/1 ui-sans-serif,system-ui,sans-serif!important;
 cursor:pointer!important;
}
#feed .admin-deal-delete .material-symbols-rounded{font-size:15px!important;line-height:1!important}
#feed .admin-deal-delete:active{transform:scale(.97)!important}
@media(min-width:700px){
 #feed .admin-deal-delete{top:9px!important;right:9px!important;min-height:32px!important;padding:5px 10px!important;font-size:12px!important}
}


/* Alpha v1.0.413 — tighten the product-title-to-content spacing in the deal detail card. */
#dealDetailContent .deal-detail-hero{row-gap:5px!important;}
#dealDetailContent .deal-detail-heading h2{margin-bottom:4px!important;}
@media(max-width:560px){#dealDetailContent .deal-detail-hero{row-gap:5px!important;}#dealDetailContent .deal-detail-heading h2{margin-bottom:4px!important;}}


/* Alpha v1.0.413 follow-up — remove excess title-to-content whitespace in the deal hero. */
#dealDetailContent .deal-detail-hero{row-gap:4px!important;}
#dealDetailContent .deal-detail-heading{height:auto!important;min-height:0!important;margin:0!important;padding-bottom:0!important;align-self:start!important;}
#dealDetailContent .deal-detail-heading h2{display:block!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;line-height:1.08!important;}
#dealDetailContent .deal-detail-hero-image{align-self:start!important;}
@media(max-width:560px){#dealDetailContent .deal-detail-hero{row-gap:4px!important;}#dealDetailContent .deal-detail-heading h2{margin:0!important;}}


/* Alpha 1.0.413 hotfix — the favourite control was inflating the title grid row. */
#dealDetailContent .deal-detail-hero{row-gap:5px!important;}
#dealDetailContent .deal-detail-heading{
 position:relative!important;display:block!important;grid-area:heading!important;
 height:auto!important;min-height:0!important;align-self:start!important;
 margin:0!important;padding:0 54px 0 0!important;
}
#dealDetailContent .deal-detail-heading h2{
 display:block!important;height:auto!important;min-height:0!important;
 margin:0!important;padding:0!important;line-height:1.08!important;
}
#dealDetailContent .deal-detail-heading>.deal-detail-favourite-star{
 position:absolute!important;top:0!important;right:0!important;
 width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
 max-width:42px!important;max-height:42px!important;flex:none!important;margin:0!important;
}
@media(max-width:560px){
 #dealDetailContent .deal-detail-hero{row-gap:5px!important;}
 #dealDetailContent .deal-detail-heading{padding-right:46px!important;}
 #dealDetailContent .deal-detail-heading>.deal-detail-favourite-star{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;max-width:38px!important;max-height:38px!important;}
}


/* Alpha 1.0.416 — combined deal-price entry and pence keypad. */
.price-picker-dialog{width:min(430px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow-y:auto}
.price-picker-content{gap:12px}
.price-picker-intro{margin:0;color:#64748b;font-size:13px;line-height:1.4}
.price-picker-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.price-picker-field{min-width:0;min-height:76px;padding:10px 11px;border:1.5px solid #d5dfe8;border-radius:12px;background:#f8fafc;color:#173b68;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:5px}
.price-picker-field span{font-size:11px;line-height:1.3;font-weight:700;color:#64748b}
.price-picker-field strong{font-size:20px;line-height:1.2;font-weight:850;overflow-wrap:anywhere}
.price-picker-field.is-active{border-color:#24834b;background:#eaf5ed;box-shadow:0 0 0 2px #24834b1a}
.price-picker-field.is-active span{color:#21653b}
.price-picker-active-label{font-size:12px;font-weight:800;color:#536176}
.price-picker-preview{padding:11px 13px;border-radius:11px;background:#f1f5f9;color:#536176;font-size:13px;font-weight:750;line-height:1.4}
.price-picker-preview.is-valid{background:#e3f5e8;color:#21653b}
.price-picker-keys button[data-digit="clear"]{font-size:14px}
@media(max-width:360px){.price-picker-content{padding:16px}.price-picker-fields{gap:6px}.price-picker-field{padding:9px}.price-picker-field strong{font-size:18px}}


/* Alpha 1.0.417 — one entry point for both prices. */
#dealPricingPanel .price-tiles{grid-template-columns:minmax(0,1fr)}
#dealPricingPanel .price-tile{min-height:72px;align-items:flex-start;gap:6px}
#dealPricingPanel .price-tile strong{font-size:22px}
#dealPricingPanel .price-tile span{font-size:13px}


/* Alpha 1.0.418: desktop-only Share a Deal form scrolling. Mobile/iOS rules remain unchanged. */
@media (min-width: 761px) {
  #dealDialog[open] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  #dealDialog form {
    box-sizing: border-box;
    min-height: 0;
    max-height: calc(100dvh - 64px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }
}


/* Alpha v1.0.421 — force uppercase product names consistently across product/deal cards. */
.spotworth-deal-card .home-highlight-product-name,
.spotworth-deal-card .deal-product-title,
.home-highlight-product-name,
#feed .deal-product-title,
.nearby-product-name,
.price-alert-product-name,
#dealDetailTitle,
#dealDetailContent .deal-detail-hero-copy h2{
  text-transform:uppercase!important;
}


/* Alpha v1.0.425 — aligned deal meta and mascot header.
   One authoritative detail-page layer replaces the accumulated layout overrides above. */
#dealDetailDialog{
  box-sizing:border-box!important;
  width:min(520px,calc(100vw - 20px))!important;
  max-width:calc(100vw - 20px)!important;
  max-height:calc(100dvh - 20px)!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:20px!important;
}
#dealDetailDialog .deal-detail-panel{
  box-sizing:border-box!important;
  width:100%!important;
  max-height:calc(100dvh - 20px)!important;
  padding:12px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
#dealDetailDialog .deal-detail-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:7px!important;min-height:54px!important}
#dealDetailContent{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  min-width:0!important;
}
#dealDetailContent .deal-detail-hero{
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  grid-template-areas:"heading heading" "meta meta" "image info"!important;
  position:relative!important;
  align-items:start!important;
  gap:7px 10px!important;
  box-sizing:border-box!important;
  min-width:0!important;
  padding:11px!important;
  border:1px solid #e6d8b9!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#fffaf1 0%,#fffdf9 100%)!important;
  box-shadow:0 3px 12px rgba(44,55,43,.07)!important;
}
#dealDetailContent .deal-detail-heading{
  grid-area:heading!important;
  position:relative!important;
  display:block!important;
  min-width:0!important;
  margin:0!important;
  padding:0 48px 0 0!important;
}
#dealDetailContent .deal-detail-heading h2{
  display:block!important;
  margin:0!important;
  color:#20372b!important;
  font-size:clamp(20px,5.5vw,25px)!important;
  font-weight:950!important;
  letter-spacing:-.45px!important;
  line-height:1.1!important;
  overflow-wrap:anywhere!important;
  text-transform:uppercase!important;
}
#dealDetailContent .deal-detail-heading>.deal-detail-favourite-star{
  position:absolute!important;
  top:0!important;
  right:0!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #dce5ef!important;
  border-radius:50%!important;
  background:#f4f7fb!important;
  color:#254d78!important;
}
#dealDetailContent .deal-detail-heading>.deal-detail-favourite-star>span{font-size:23px!important;line-height:1!important}
#dealDetailContent .deal-detail-hero-meta{
  grid-area:meta!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px 7px!important;
  min-width:0!important;
}
#dealDetailContent .deal-detail-hero-meta .deal-detail-retailer{
  display:inline-flex!important;
  align-items:center!important;
  min-height:27px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:850!important;
}
#dealDetailContent .deal-detail-meta-address,
#dealDetailContent .deal-detail-distance-row{
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  min-width:0!important;
  color:#64766b!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}
#dealDetailContent .deal-detail-meta-address .material-symbols-rounded,
#dealDetailContent .deal-detail-distance-row .material-symbols-rounded{flex:0 0 auto!important;font-size:14px!important;color:#28764e!important}
#dealDetailContent .deal-detail-meta-footer{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:4px 12px!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:2px!important;
}
#dealDetailContent .deal-detail-meta-footer .deal-detail-time{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  padding:3px 8px!important;
  border-radius:99px!important;
  background:#edf1f5!important;
  color:#68788d!important;
  font-size:10px!important;
  font-weight:750!important;
}
#dealDetailContent .deal-detail-hero-image{
  grid-area:image!important;
  position:relative!important;
  width:104px!important;
  height:104px!important;
  min-width:104px!important;
  min-height:104px!important;
  max-width:104px!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  border:1.5px solid #24372c!important;
  border-radius:13px!important;
  background:#f2f1e9!important;
}
#dealDetailContent .deal-detail-hero-image .deal-detail-image,
#dealDetailContent .deal-detail-hero-image .deal-detail-emoji{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
}
#dealDetailContent .deal-detail-hero-info{
  grid-area:info!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
  min-width:0!important;
  min-height:104px!important;
  padding:2px 0 0!important;
}
#dealDetailContent .deal-detail-price-row{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:6px 9px!important;
  width:100%!important;
  margin:0!important;
}
#dealDetailContent .deal-detail-price-row .home-highlight-price{
  display:inline-flex!important;
  align-items:center!important;
  min-height:36px!important;
  padding:6px 9px!important;
  border:1px solid #24364a!important;
  border-radius:9px!important;
  background:#e5f3e7!important;
  color:#155b36!important;
  font-size:clamp(26px,7vw,32px)!important;
  font-weight:950!important;
  line-height:1!important;
}
#dealDetailContent .deal-detail-price-row .old{font-size:12px!important;color:#8995a5!important;white-space:nowrap!important}
#dealDetailContent .deal-detail-saving-row{display:flex!important;align-items:flex-start!important;width:100%!important;margin:0!important}
#dealDetailContent .deal-detail-saving-row .home-highlight-saving-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:6px 10px!important;
  border:1.5px solid #fff!important;
  border-radius:7px!important;
  background:#c62828!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-shadow:0 2px 5px rgba(20,20,20,.2)!important;
}
#dealDetailContent .deal-stock-check{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:10px!important;
  border:1px solid #dce7df!important;
  border-radius:15px!important;
  background:#f7fbf7!important;
}
#dealDetailContent .deal-stock-check>strong{display:block!important;color:#20372b!important;font-size:16px!important;font-weight:900!important}
#dealDetailContent .deal-stock-check>p{margin:3px 0 7px!important;color:#65766b!important;font-size:12px!important;line-height:1.4!important}
#dealDetailContent .deal-detail-vote{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0!important;
}
#dealDetailContent .deal-detail-vote button{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  width:100%!important;
  min-width:0!important;
  min-height:54px!important;
  margin:0!important;
  padding:7px 3px!important;
  border:1px solid #d7e1dc!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#294b37!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.15!important;
  white-space:normal!important;
}
#dealDetailContent .deal-detail-vote button>span{font-size:18px!important;line-height:1!important}
#dealDetailContent .deal-detail-vote button.is-selected{border:2px solid #26734b!important;background:#eaf6ed!important;color:#155b36!important;box-shadow:0 0 0 2px rgba(38,115,75,.09)!important}
#dealDetailContent .availability-meter{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:9px 11px!important;
  border:1px solid #e1e7ed!important;
  border-radius:14px!important;
  background:#f6f8fb!important;
}
#dealDetailContent .availability-meter-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
#dealDetailContent .availability-meter-head>div{display:flex!important;flex-direction:column!important;gap:2px!important}
#dealDetailContent .availability-meter-head small{color:#718096!important;font-size:9px!important;font-weight:850!important;letter-spacing:.8px!important}
#dealDetailContent .availability-meter-head strong{color:#20372b!important;font-size:17px!important;font-weight:900!important}
#dealDetailContent .availability-meter-status{font-size:10px!important;font-weight:900!important;letter-spacing:.3px!important}
#dealDetailContent .availability-meter-track{height:6px!important;margin:6px 0!important;border-radius:99px!important;background:#e3e8ed!important;overflow:hidden!important}
#dealDetailContent .availability-meter-track>span{display:block!important;height:100%!important;border-radius:inherit!important;background:#39865a!important}
#dealDetailContent .availability-meter p{margin:0!important;color:#627184!important;font-size:11px!important;line-height:1.4!important}
#dealDetailContent .availability-meter-counts{display:flex!important;flex-wrap:wrap!important;gap:5px 12px!important;margin-top:6px!important;color:#718096!important;font-size:10px!important;font-weight:700!important}
#dealDetailContent .deal-purchase-panel{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
#dealDetailContent .deal-purchase-panel .bought-it-button{
  min-height:40px!important;
  margin:0 0 5px!important;
  border:1px solid #b9c8d8!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#284d72!important;
  font-size:14px!important;
  font-weight:850!important;
}
#dealDetailContent .deal-purchase-panel>strong{display:block!important;color:#68788d!important;font-size:11px!important;font-weight:700!important;text-align:center!important}
#dealDetailContent .deal-purchase-panel>p{margin:4px 0 0!important;font-size:11px!important;text-align:center!important}
#dealDetailContent .deal-detail-notes{margin:0!important;padding:0 2px!important;color:#647184!important;font-size:12px!important;line-height:1.45!important}
#dealDetailContent .reduction-evidence-detail{margin:0!important}
#dealDetailContent .reduction-evidence-detail img{display:block!important;width:100%!important;max-height:230px!important;object-fit:contain!important;border-radius:12px!important}
#dealDetailContent .reduction-evidence-detail figcaption{margin-top:5px!important;color:#718096!important;font-size:10px!important}
#dealDetailContent .reduction-meta{display:flex!important;flex-wrap:wrap!important;gap:7px 12px!important;margin:0!important;color:#68788d!important;font-size:11px!important}
#dealDetailContent .deal-detail-top-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  width:100%!important;
  margin:0!important;
  padding-top:7px!important;
  border-top:1px solid #e8edf2!important;
}
#dealDetailContent .deal-detail-share-main{min-height:38px!important;padding:8px 13px!important;font-size:12px!important}
#dealDetailContent .deal-detail-report-main{min-height:38px!important;padding:7px 11px!important;font-size:12px!important}
#dealDetailContent .deal-detail-top-report-form{flex:1 1 100%!important;width:100%!important}
@media(max-width:360px){
  #dealDetailDialog .deal-detail-panel{padding:10px!important}
  #dealDetailContent .deal-detail-hero{grid-template-columns:96px minmax(0,1fr)!important;gap:7px 9px!important;padding:9px!important}
  #dealDetailContent .deal-detail-hero-image{width:96px!important;height:96px!important;min-width:96px!important;min-height:96px!important;max-width:96px!important}
  #dealDetailContent .deal-detail-hero-info{min-height:96px!important;gap:6px!important}
  #dealDetailContent .deal-detail-price-row .home-highlight-price{font-size:25px!important}
  #dealDetailContent .deal-detail-meta-footer{gap:4px 8px!important}
  #dealDetailContent .deal-detail-meta-footer .deal-detail-time,#dealDetailContent .deal-detail-distance-row{font-size:10px!important}
  #dealDetailContent .deal-detail-vote{gap:5px!important}
  #dealDetailContent .deal-detail-vote button{min-height:54px!important;font-size:11px!important}
}


/* Alpha v1.0.426 — transparent SpotWorth mascot overlapping the deal card edge. */

/* Alpha v1.0.433 — clean deal-detail header without mascot artwork. */
#dealDetailDialog .deal-detail-panel{position:relative!important;padding-top:12px!important}
#dealDetailDialog .deal-detail-head{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;width:100%!important;height:auto!important;min-height:36px!important;margin:0 0 7px!important;padding:0!important;overflow:visible!important;background:transparent!important}
#dealDetailDialog .deal-detail-head #dealDetailClose.x{position:relative!important;top:auto!important;right:auto!important;z-index:2!important}


/* Alpha 1.0.434 — hybrid, three-stage Share a Deal flow. */
#dealDialog .deal-flow-intro{margin:5px 0 16px;color:#627264;font-size:13px;line-height:1.45}
#dealDialog .deal-flow-progress{margin:0 0 19px;padding:0 2px}
#dealDialog .deal-flow-progress-track{height:5px;overflow:hidden;border-radius:99px;background:#e5ebe4}
#dealDialog .deal-flow-progress-track span{display:block;width:33.333%;height:100%;border-radius:inherit;background:#26734b;transition:width .2s ease}
#dealDialog .deal-flow-progress-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px;color:#89958b;font-size:10px;font-weight:750;text-align:center}
#dealDialog .deal-flow-progress-labels span.is-active{color:#185b38}#dealDialog .deal-flow-progress-labels span.is-complete{color:#4c8a65}
#dealDialog .deal-flow-step[hidden]{display:none!important}#dealDialog .deal-flow-step{display:flex;flex-direction:column;gap:15px;min-width:0}
#dealDialog .deal-flow-step .current-store-picker,#dealDialog .deal-flow-step .deal-type-picker{margin:0}
#dealDialog .deal-product-entry-heading,#dealDialog .deal-flow-finish-heading{display:flex;flex-direction:column;gap:4px;margin:0 0 1px}
#dealDialog .deal-product-entry-heading strong,#dealDialog .deal-flow-finish-heading strong{font-size:17px;color:#1e3829}
#dealDialog .deal-product-entry-heading small,#dealDialog .deal-flow-finish-heading small{font-size:12px;line-height:1.4;color:#68766d}
#dealDialog .manual-product-entry{display:flex;flex-direction:column;gap:7px;padding:14px;border:1px solid #dce5dc;border-radius:13px;background:#f8faf7;color:#244331;font-size:13px;font-weight:800}
#dealDialog .manual-product-entry input{width:100%;min-height:50px;padding:12px;border:1px solid #cbd8cc;border-radius:10px;background:#fff;color:#21372a;font-size:16px}
#dealDialog .manual-product-entry small{color:#718074;font-size:11px;font-weight:500}
#dealDialog .deal-flow-actions{display:flex;align-items:center;gap:9px;margin:20px 0 2px;padding-top:13px;border-top:1px solid #e8eee7}
#dealDialog .deal-flow-actions #cancel{flex:0 0 auto;min-width:76px}#dealDialog .deal-flow-actions #dealFlowBack{flex:0 0 auto}
#dealDialog .deal-flow-actions #dealFlowNext,#dealDialog .deal-flow-actions #submit{flex:1 1 auto;min-height:54px;font-size:17px;font-weight:850}
@media(max-width:760px){#dealDialog .deal-flow-progress{margin-bottom:16px}#dealDialog .deal-flow-step{gap:13px}#dealDialog .deal-flow-actions{position:sticky;bottom:-16px;margin:16px -16px -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e7ede6;z-index:4}}


/* Alpha 1.0.436 — keep the complete price keypad and save action in one view. */
.price-picker-dialog{
  box-sizing:border-box;
  width:min(430px,calc(100% - 24px));
  max-height:calc(100vh - 24px);
  max-height:calc(100dvh - 24px);
  overflow:hidden;
}
.price-picker-content{
  box-sizing:border-box;
  gap:8px;
  padding:14px;
  overflow:hidden;
}
.price-picker-top{flex:0 0 auto;font-size:18px}
.price-picker-intro{flex:0 0 auto;font-size:12px;line-height:1.3}
.price-picker-fields{flex:0 0 auto;gap:7px}
.price-picker-field{min-height:58px;padding:8px 10px;gap:3px}
.price-picker-field strong{font-size:19px}
.price-picker-active-label{flex:0 0 auto;font-size:11px;line-height:1.2}
.price-picker-value{box-sizing:border-box;flex:0 0 auto;min-height:48px;padding:6px 12px;font-size:26px}
.price-picker-value input{font-size:26px!important}
.price-picker-keys{
  flex:1 1 auto;
  min-height:0;
  grid-template-rows:repeat(4,minmax(0,1fr));
  gap:6px;
}
.price-picker-keys button{min-height:0;height:100%;font-size:21px}
.price-picker-confirm{flex:0 0 auto;min-height:48px;font-size:16px}
.price-picker-preview{
  flex:0 0 auto;
  padding:8px 10px;
  font-size:12px;
  line-height:1.25;
}
.price-picker-content .error:empty{display:none}
@media(max-height:700px){
  .price-picker-content{gap:6px;padding:11px}
  .price-picker-field{min-height:52px;padding:7px 9px}
  .price-picker-field strong{font-size:18px}
  .price-picker-value{min-height:43px;padding:5px 10px;font-size:24px}
  .price-picker-value input{font-size:24px!important}
  .price-picker-keys{gap:5px}
  .price-picker-confirm{min-height:43px}
  .price-picker-preview{padding:6px 9px}
}
@media(max-height:600px){
  .price-picker-content{gap:5px;padding:9px}
  .price-picker-intro{font-size:11px}
  .price-picker-field{min-height:46px;padding:5px 8px}
  .price-picker-field span{font-size:10px}
  .price-picker-field strong{font-size:17px}
  .price-picker-active-label{font-size:10px}
  .price-picker-value{min-height:38px;font-size:22px}
  .price-picker-value input{font-size:22px!important}
  .price-picker-keys{gap:4px}
  .price-picker-keys button{font-size:19px}
  .price-picker-confirm{min-height:40px;font-size:15px}
  .price-picker-preview{font-size:11px;padding:5px 8px}
}


/* Alpha 1.0.437 — optional details are available for every deal type. */
.optional-info-panel{margin-top:12px}
.optional-info-content .product-photo-upload{margin:0}
#optionalProductPhotoPanel[hidden]{display:none!important}
