:root{--bg:#faf7f3;--surface:#fff;--surface-alt:#f3eae1;--ink:#211a14;--ink-soft:#5b5049;--ink-faint:#948a80;--accent:#f2600c;--accent-strong:#c24700;--accent-tint:#fde6d6;--deal:#d6303f;--deal-bg:#fbe1e3;--border:#ebdfd2;--shadow:0 1px 2px #211a140f, 0 8px 20px -12px #211a1433;--tint-groente-fruit:#cfe8c6;--tint-groente-fruit-dark:#5fae52;--tint-zuivel-eieren:#f5ebc9;--tint-zuivel-eieren-dark:#c9a93a;--tint-vis:#c9e6e2;--tint-vis-dark:#3f9d90;--tint-diepvries:#cfe3ef;--tint-diepvries-dark:#4a8fc2;--tint-vega:#d9e9ce;--tint-vega-dark:#6fae57;--tint-brood-bakkerij:#ecdcb8;--tint-brood-bakkerij-dark:#ab8a3e;--tint-huishouden:#dce3d0;--tint-huishouden-dark:#7f9463;--tint-drogisterij:#dcd6e6;--tint-drogisterij-dark:#7a68b0;--tint-frisdrank:#c8e4ea;--tint-frisdrank-dark:#2f8ea3;--tint-ontbijt:#f2e2a8;--tint-ontbijt-dark:#ab9330;--tint-soepen:#dcc0bc;--tint-soepen-dark:#a15f52;--tint-bier-wijn:#cbb65e;--tint-bier-wijn-dark:#8a7521;--tint-koffie-thee:#dec6a8;--tint-koffie-thee-dark:#8a6a3d;--tint-snoep:#eacad2;--tint-snoep-dark:#b3607a;--tint-pasta:#edd7a0;--tint-pasta-dark:#ab8a2e;--tint-kaas:#f0dfa0;--tint-kaas-dark:#ab8f2e;--tint-vlees:#e3bfc2;--tint-vlees-dark:#a35a5e;--tint-overig:#dcd8cc;--tint-overig-dark:#7c765f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1b140f;--surface:#241b14;--surface-alt:#2e2119;--ink:#f5ede4;--ink-soft:#c2b3a5;--ink-faint:#8a7c70;--accent:#ff7a2e;--accent-strong:#ffb07a;--accent-tint:#3a2414;--deal:#ff6b7a;--deal-bg:#3d2024;--border:#3a2c21;--shadow:0 1px 2px #0000004d, 0 12px 26px -14px #00000080}}:root[data-theme=dark]{--bg:#1b140f;--surface:#241b14;--surface-alt:#2e2119;--ink:#f5ede4;--ink-soft:#c2b3a5;--ink-faint:#8a7c70;--accent:#ff7a2e;--accent-strong:#ffb07a;--accent-tint:#3a2414;--deal:#ff6b7a;--deal-bg:#3d2024;--border:#3a2c21;--shadow:0 1px 2px #0000004d, 0 12px 26px -14px #00000080}:root[data-theme=light]{--bg:#faf7f3;--surface:#fff;--surface-alt:#f3eae1;--ink:#211a14;--ink-soft:#5b5049;--ink-faint:#948a80;--accent:#f2600c;--accent-strong:#c24700;--accent-tint:#fde6d6;--deal:#d6303f;--deal-bg:#fbe1e3;--border:#ebdfd2;--shadow:0 1px 2px #211a140f, 0 8px 20px -12px #211a1433}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;min-height:100svh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{text-wrap:balance;margin:0;font-weight:800}p{margin:0}button{font-family:inherit}.mono{font-family:ui-monospace,SF Mono,Roboto Mono,Menlo,Consolas,monospace}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}:root{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Roboto Mono", Menlo, Consolas, monospace;--text-2xs:.625rem;--text-xs:.6875rem;--text-sm:.8125rem;--text-md:.9375rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--leading-tight:1.2;--leading-normal:1.45;--weight-medium:600;--weight-bold:700;--weight-black:800;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-pill:999px;--elev-1:0 1px 2px #211a140f, 0 2px 6px -2px #211a1414;--elev-2:0 1px 2px #211a140f, 0 10px 24px -12px #211a143d;--elev-3:0 -2px 6px #211a140a, 0 -12px 32px -16px #211a1447;--on-accent:#fff;--media-bg:#fff;--scrim:#211a1473;--chrome:color-mix(in srgb, var(--bg) 86%, transparent);--ease-out:cubic-bezier(.2, .8, .2, 1);--dur-fast:.12s;--dur-med:.22s;--shell-max:520px;--topbar-h:3.25rem;--tabbar-h:4.25rem}@media (prefers-color-scheme:dark){:root{--elev-1:0 1px 2px #0000004d, 0 2px 6px -2px #0006;--elev-2:0 1px 2px #0000004d, 0 12px 26px -14px #0009;--elev-3:0 -12px 32px -16px #000000b3;--media-bg:#f6f1eb;--scrim:#0009}}:root[data-theme=dark]{--elev-1:0 1px 2px #0000004d, 0 2px 6px -2px #0006;--elev-2:0 1px 2px #0000004d, 0 12px 26px -14px #0009;--elev-3:0 -12px 32px -16px #000000b3;--media-bg:#f6f1eb;--scrim:#0009}:root[data-theme=light]{--elev-1:0 1px 2px #211a140f, 0 2px 6px -2px #211a1414;--elev-2:0 1px 2px #211a140f, 0 10px 24px -12px #211a143d;--elev-3:0 -2px 6px #211a140a, 0 -12px 32px -16px #211a1447;--media-bg:#fff;--scrim:#211a1473}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-sm);font:var(--weight-bold) var(--text-sm) / 1 var(--font-sans);cursor:pointer;transition:background var(--dur-fast), transform var(--dur-fast);border:1px solid #0000;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-strong)}.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--ink)}.btn-ghost{color:var(--accent-strong);background:0 0}.btn-sm{min-height:34px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn-icon{border-radius:var(--radius-pill);width:36px;min-height:36px;padding:0}.btn-block{width:100%}.chip{align-items:center;gap:var(--space-2);min-height:36px;font:var(--weight-medium) var(--text-sm) / 1 var(--font-sans);padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast), border-color var(--dur-fast), color var(--dur-fast);flex:none;display:inline-flex}.chip:hover{border-color:var(--ink-faint)}.chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--elev-1);color:inherit;overflow:hidden}.card-interactive{cursor:pointer;transition:box-shadow var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-out)}@media (hover:hover){.card-interactive:hover{box-shadow:var(--elev-2);transform:translateY(-2px)}}.card-interactive:active{transform:scale(.985)}.badge{align-items:center;gap:var(--space-1);height:20px;padding:0 var(--space-2);border-radius:var(--radius-xs);font:var(--weight-black) var(--text-xs) / 1 var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-flex}.badge-deal{background:var(--deal);color:var(--on-accent)}.badge-soft{background:var(--deal-bg);color:var(--deal)}.badge-neutral{background:var(--surface-alt);color:var(--ink-soft)}.badge-accent{background:var(--accent-tint);color:var(--accent-strong)}.price-tag{align-items:baseline;column-gap:var(--space-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.price-tag-now{font-size:var(--text-xl);font-weight:var(--weight-black);letter-spacing:-.02em;color:var(--ink);line-height:1}.price-tag.is-deal .price-tag-now{color:var(--deal)}.price-tag-was{font-size:var(--text-xs);color:var(--ink-faint);text-decoration:line-through}.price-tag-sm .price-tag-now{font-size:var(--text-lg)}.store-logo{--logo-size:1.375rem;width:var(--logo-size);height:var(--logo-size);font:var(--weight-black) calc(var(--logo-size) * .38) / 1 var(--font-sans);letter-spacing:-.02em;color:#fff;background:var(--ink-faint);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.store-logo-sm{--logo-size:1rem}.logo-albert_heijn{background:#0093d0}.logo-jumbo{color:#211a14;background:#fcd200}.logo-plus{background:#e2231a}.logo-dekamarkt{background:#f39200}.logo-hoogvliet{background:#ee7c00}.logo-aldi{background:#1d4e89}.logo-lidl{color:#fff200;background:#0a5eb4}.logo-dirk{background:#e30613}.logo-ekoplaza{background:#4c7c2e}.logo-vomar{background:#c8102e}.logo-boons_markt{background:#d31144}.logo-poiesz{background:#f18700}.logo-nettorama{background:#1e9bd7}.logo-boni{background:#db0200}.logo-coop{background:#f79501}.logo-gewoon_coop{background:#f3920d}.logo-mcd{background:#05408c}.logo-dagwinkel{background:#7a4fa0}.logo-spar{background:#007a33}.chip.is-active .store-logo{box-shadow:0 0 0 2px var(--bg)}.ui-sheet-scrim{z-index:50;background:var(--scrim);animation:ui-fade var(--dur-med) ease-out;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.ui-sheet{overscroll-behavior:contain;background:var(--bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:560px;max-height:92dvh;box-shadow:var(--elev-3);padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));animation:ui-up .26s var(--ease-out);position:relative;overflow-y:auto}.ui-sheet-grab{z-index:2;border-radius:var(--radius-pill);background:var(--border);width:40px;height:4px;margin:8px auto -12px;position:sticky;top:0}@keyframes ui-up{0%{transform:translateY(40%)}}@keyframes ui-fade{0%{opacity:0}}.shell{max-width:var(--shell-max);background:var(--bg);flex-direction:column;flex:1;width:100%;margin:0 auto;display:flex}.topbar{z-index:5;height:var(--topbar-h);padding:0 var(--space-4);background:var(--chrome);-webkit-backdrop-filter:saturate(1.6)blur(14px);backdrop-filter:saturate(1.6)blur(14px);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-mark{align-items:center;gap:var(--space-2);font-weight:var(--weight-black);font-size:var(--text-lg);letter-spacing:-.02em;display:inline-flex}.app-mark .dot{color:var(--accent);margin-left:-.45rem}.app-mark-tile{background:var(--accent);width:1.6rem;height:1.6rem;color:var(--on-accent);border-radius:.4rem;justify-content:center;align-items:center;display:inline-flex}.back-link{color:var(--ink-faint);font-size:var(--text-sm);font-weight:var(--weight-medium);margin:var(--space-1) 0 var(--space-2);text-decoration:none;display:inline-block}.topbar-meta{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--ink-faint);letter-spacing:.04em}.content{min-width:0;padding:0 var(--space-4) calc(var(--tabbar-h) + var(--space-6) + env(safe-area-inset-bottom));flex:1}.tabbar{width:100%;max-width:var(--shell-max);z-index:10;background:var(--chrome);-webkit-backdrop-filter:saturate(1.6)blur(14px);backdrop-filter:saturate(1.6)blur(14px);border-top:1px solid var(--border);padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabbar-brand{display:none}.tab{align-items:center;gap:var(--space-1);padding:var(--space-1) 0;color:var(--ink-faint);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-sm);transition:color var(--dur-fast);flex-direction:column;flex:1;text-decoration:none;display:flex}.tab svg{stroke:currentColor}.tab .tab-icon{border-radius:var(--radius-pill);width:3.5rem;height:2rem;transition:background var(--dur-med) var(--ease-out);justify-content:center;align-items:center;display:flex;position:relative}.tab.is-active{color:var(--accent-strong);font-weight:var(--weight-bold)}.tab.is-active .tab-icon{background:var(--accent-tint)}.search-bar{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:.55rem;padding:.7rem .85rem;display:flex}.search-bar svg{color:var(--ink-faint);flex:none}.search-bar input{color:var(--ink);background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:.95rem}.search-bar input::placeholder{color:var(--ink-faint)}.chip-row{scrollbar-width:none;gap:.5rem;margin:.8rem 0 .2rem;padding-bottom:2px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip-dot{border-radius:50%;flex:none;width:7px;height:7px}.section-heading{justify-content:space-between;align-items:baseline;margin:1.2rem 0 .6rem;display:flex}.section-heading h2{font-size:1.05rem}.section-heading .category-title{margin:0;font-size:1.35rem;line-height:1.2}.section-heading span{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;font-family:ui-monospace,monospace;font-size:.64rem}.sticker{border-radius:50%/55%;flex:none;justify-content:center;align-items:center;width:40px;height:30px;display:flex;transform:rotate(-6deg)}.sticker span{font-family:ui-monospace,monospace;font-size:.6rem;font-weight:700;transform:rotate(6deg)}@media (prefers-color-scheme:dark){.sticker{border:1px solid var(--border);background:var(--surface-alt)!important}.sticker span{color:var(--sticker-accent,var(--accent-strong))!important}}:root[data-theme=dark] .sticker{border:1px solid var(--border);background:var(--surface-alt)!important}:root[data-theme=dark] .sticker span{color:var(--sticker-accent,var(--accent-strong))!important}.deal-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.deal-card{text-align:left;width:100%;font:inherit;flex-direction:column;padding:0;display:flex}.deal-card-media{aspect-ratio:1;background:var(--media-bg);border-bottom:1px solid var(--border);flex:none;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.deal-card-media img{object-fit:contain;width:100%;height:100%;padding:var(--space-3);position:absolute;inset:0}.deal-card-media .sticker{width:44px;height:34px}.deal-card-media .corner-sticker{bottom:var(--space-2);left:var(--space-2);width:30px;height:22px;position:absolute}.deal-card-pct{top:var(--space-2);left:var(--space-2);height:24px;font-size:var(--text-sm);box-shadow:var(--elev-1);position:absolute}.deal-card-body{gap:var(--space-2);padding:var(--space-3);flex-direction:column;flex:1;display:flex}.deal-name{font-size:var(--text-sm);line-height:var(--leading-tight);font-weight:var(--weight-medium);color:var(--ink);-webkit-line-clamp:2;min-height:calc(2em * var(--leading-tight));-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.deal-meta{align-items:center;gap:var(--space-1);min-width:0;font-size:var(--text-xs);color:var(--ink-soft);display:flex}.deal-store{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.deal-ends{align-self:flex-start}.price-row{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.price{font-weight:var(--weight-black);font-size:var(--text-lg)}.price-was{font-size:var(--text-xs);color:var(--ink-faint);text-decoration:line-through}.compare-heading{margin-top:.4rem;font-size:1.3rem;font-weight:700}.compare-note{color:var(--ink-soft);margin:.3rem 0 1rem;font-size:.76rem;line-height:1.4}.compare-row{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;margin-bottom:.65rem;position:relative}.compare-row.is-cheapest{border-color:var(--accent)}.compare-row-link{color:inherit;cursor:pointer;gap:.7rem;padding:.8rem .9rem;text-decoration:none;display:flex}.compare-thumb{object-fit:contain;background:#fff;border-radius:10px;flex:none;width:52px;height:52px;padding:.25rem}.compare-thumb-sticker{flex:none;width:52px;height:40px;margin:0}.compare-details{flex:1;min-width:0}.stamp{letter-spacing:.05em;color:#fff;background:var(--accent);border-radius:5px;padding:.2rem .45rem;font-family:ui-monospace,monospace;font-size:.56rem;font-weight:700;position:absolute;top:-9px;right:10px;transform:rotate(3deg);box-shadow:0 2px 6px #00000040}.compare-top{align-items:center;gap:.4rem;margin-bottom:.2rem;display:flex}.retailer-dot{border-radius:50%;flex:none;width:9px;height:9px}.retailer-name{font-size:.88rem;font-weight:700}.compare-pack{color:var(--ink-soft);margin:0 0 .5rem;font-size:.76rem;line-height:1.3}.compare-price-row{justify-content:space-between;align-items:baseline;margin-bottom:.4rem;display:flex}.unit-price{font-size:1.3rem;font-weight:800}.unit-price small{color:var(--ink-faint);font-family:ui-monospace,monospace;font-size:.62rem;font-weight:500}.pack-price{color:var(--ink-soft);font-size:.72rem}.unit-bar{background:var(--surface-alt);border-radius:3px;height:5px;overflow:hidden}.unit-bar span{background:var(--accent);border-radius:3px;height:100%;display:block}.compare-row:not(.is-cheapest) .unit-bar span{background:var(--ink-faint)}.savings-note{background:var(--accent-tint);border:1px solid var(--accent);color:var(--accent-strong);border-radius:12px;margin-top:.9rem;padding:.75rem .85rem;font-size:.8rem;line-height:1.45}.savings-note b{font-weight:800}.group-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:.5rem;margin:1.2rem 0 .5rem;font-family:ui-monospace,monospace;font-size:.68rem;display:flex}.group-label:after{content:"";background:var(--border);flex:1;height:1px}.cat-grid{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.cat-tile{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;border-radius:14px;align-items:center;gap:.55rem;padding:.6rem .65rem;text-decoration:none;display:flex}.cat-tile .sticker{width:34px;height:26px}.cat-tile-text p:first-child{margin:0;font-size:.78rem;font-weight:600;line-height:1.15}.cat-tile-text p:last-child{color:var(--ink-faint);margin:.1rem 0 0;font-family:ui-monospace,monospace;font-size:.62rem}.tint-groente-fruit{background:var(--tint-groente-fruit);--sticker-accent:var(--tint-groente-fruit-dark)}.tint-groente-fruit span{color:var(--tint-groente-fruit-dark)}.tint-zuivel-eieren{background:var(--tint-zuivel-eieren);--sticker-accent:var(--tint-zuivel-eieren-dark)}.tint-zuivel-eieren span{color:var(--tint-zuivel-eieren-dark)}.tint-vis{background:var(--tint-vis);--sticker-accent:var(--tint-vis-dark)}.tint-vis span{color:var(--tint-vis-dark)}.tint-diepvries{background:var(--tint-diepvries);--sticker-accent:var(--tint-diepvries-dark)}.tint-diepvries span{color:var(--tint-diepvries-dark)}.tint-vega{background:var(--tint-vega);--sticker-accent:var(--tint-vega-dark)}.tint-vega span{color:var(--tint-vega-dark)}.tint-brood-bakkerij{background:var(--tint-brood-bakkerij);--sticker-accent:var(--tint-brood-bakkerij-dark)}.tint-brood-bakkerij span{color:var(--tint-brood-bakkerij-dark)}.tint-huishouden{background:var(--tint-huishouden);--sticker-accent:var(--tint-huishouden-dark)}.tint-huishouden span{color:var(--tint-huishouden-dark)}.tint-drogisterij{background:var(--tint-drogisterij);--sticker-accent:var(--tint-drogisterij-dark)}.tint-drogisterij span{color:var(--tint-drogisterij-dark)}.tint-frisdrank{background:var(--tint-frisdrank);--sticker-accent:var(--tint-frisdrank-dark)}.tint-frisdrank span{color:var(--tint-frisdrank-dark)}.tint-ontbijt{background:var(--tint-ontbijt);--sticker-accent:var(--tint-ontbijt-dark)}.tint-ontbijt span{color:var(--tint-ontbijt-dark)}.tint-soepen{background:var(--tint-soepen);--sticker-accent:var(--tint-soepen-dark)}.tint-soepen span{color:var(--tint-soepen-dark)}.tint-bier-wijn{background:var(--tint-bier-wijn);--sticker-accent:var(--tint-bier-wijn-dark)}.tint-bier-wijn span{color:var(--tint-bier-wijn-dark)}.tint-koffie-thee{background:var(--tint-koffie-thee);--sticker-accent:var(--tint-koffie-thee-dark)}.tint-koffie-thee span{color:var(--tint-koffie-thee-dark)}.tint-snoep{background:var(--tint-snoep);--sticker-accent:var(--tint-snoep-dark)}.tint-snoep span{color:var(--tint-snoep-dark)}.tint-pasta{background:var(--tint-pasta);--sticker-accent:var(--tint-pasta-dark)}.tint-pasta span{color:var(--tint-pasta-dark)}.tint-kaas{background:var(--tint-kaas);--sticker-accent:var(--tint-kaas-dark)}.tint-kaas span{color:var(--tint-kaas-dark)}.tint-vlees{background:var(--tint-vlees);--sticker-accent:var(--tint-vlees-dark)}.tint-vlees span{color:var(--tint-vlees-dark)}.tint-overig{background:var(--tint-overig);--sticker-accent:var(--tint-overig-dark)}.tint-overig span{color:var(--tint-overig-dark)}.dot-albert_heijn{background:#0093d0}.dot-jumbo{background:#fcd200}.dot-plus{background:#e2231a}.dot-dekamarkt{background:#f39200}.dot-hoogvliet{background:#ee7c00}.dot-aldi{background:#1d4e89}.dot-lidl{background:#0a5eb4}.dot-dirk{background:#e30613}.dot-ekoplaza{background:#4c7c2e}.dot-vomar{background:#c8102e}.dot-boons_markt{background:#d31144}.dot-poiesz{background:#f18700}.dot-nettorama{background:#1e9bd7}.dot-boni{background:#db0200}.dot-coop{background:#f79501}.dot-gewoon_coop{background:#f3920d}.dot-mcd{background:#05408c}.dot-dagwinkel{background:#7a4fa0}.dot-spar{background:#007a33}.state-message{text-align:center;color:var(--ink-faint);padding:3rem 1rem;font-size:.85rem}.load-more-btn{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--accent-strong);cursor:pointer;border-radius:12px;margin:.9rem 0 .4rem;padding:.7rem 1rem;font-family:inherit;font-size:.82rem;font-weight:700;display:block}.load-more-btn:disabled{opacity:.6;cursor:default}.install-hint{background:var(--surface-alt);color:var(--ink-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:.6rem;margin:.9rem 0 0;padding:.7rem .85rem;font-size:.75rem;display:flex}.install-hint button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:none;padding:.4rem .7rem;font-size:.72rem;font-weight:700}.search-bar input[type=search]::-webkit-search-cancel-button{display:none}.search-clear{background:var(--surface-alt);color:var(--ink-soft);cursor:pointer;border:none;border-radius:50%;flex:none;width:22px;height:22px;font-size:.95rem;line-height:1}.search-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex:none;width:16px;height:16px;animation:.7s linear infinite search-spin}@keyframes search-spin{to{transform:rotate(360deg)}}.chip-select{padding:0;position:relative}.chip-select select{appearance:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:.4rem 1.6rem .4rem .75rem}.chip-select:after{content:"▾";pointer-events:none;position:absolute;right:.65rem}.chip-select select option{color:var(--ink);background:var(--surface)}.chip-wrap{flex-wrap:wrap;gap:.5rem;display:flex}.link-btn{color:var(--accent-strong);cursor:pointer;background:0 0;border:none;padding:.3rem 0;font-family:inherit;font-size:.75rem;font-weight:600}.fuzzy-note{color:var(--ink-soft)}.search-idle .state-message,.search-empty .state-message{padding:1.6rem 1rem .6rem}.chip-select select{text-overflow:ellipsis;max-width:11rem}.search-retailers{margin-top:.1rem}.deal-card-wrap{position:relative}.list-add{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--accent-strong);box-shadow:var(--shadow);cursor:pointer;z-index:2;border-radius:999px;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;line-height:1;display:flex;position:absolute;top:.45rem;right:.45rem}.list-add.is-on{background:var(--accent);border-color:var(--accent);color:#fff;font-size:1rem}.list-add.list-add-row{top:auto;bottom:.7rem;right:.7rem}.tab-badge{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.62rem;font-weight:700;display:flex;position:absolute;top:-2px;right:4px}.list-screen{padding-bottom:1rem}.screen-title{letter-spacing:-.01em;margin:.2rem 0 .8rem;font-size:1.35rem;font-weight:800}.list-empty{background:var(--surface);border:1px solid var(--border);text-align:center;color:var(--ink-soft);border-radius:14px;padding:1.4rem 1.1rem;font-size:.88rem}.list-empty-title{color:var(--ink);margin-bottom:.35rem;font-size:1rem;font-weight:800}.list-cta{background:var(--accent);color:#fff;border-radius:999px;margin-top:.9rem;padding:.6rem 1.1rem;font-weight:700;text-decoration:none;display:inline-block}.list-summary{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:1.1rem;padding:.8rem .9rem;display:flex}.list-summary>div{flex-direction:column;display:flex}.list-summary-label{color:var(--ink-faint);font-size:.7rem;font-weight:600}.list-summary-value{font-size:1.15rem;font-weight:800}.list-summary-value.is-savings{color:var(--deal)}.list-share-btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;margin-left:auto;padding:.55rem 1rem;font-size:.85rem;font-weight:700}.list-note{color:var(--ink-soft);margin-top:.5rem;font-size:.8rem}.list-warning{background:var(--deal-bg);color:var(--deal);border-radius:10px;margin-top:.6rem;padding:.5rem .7rem;font-size:.8rem;font-weight:600}.list-group{margin-top:1rem}.list-group-head{align-items:center;gap:.45rem;margin-bottom:.4rem;display:flex}.list-group-name{font-size:.95rem;font-weight:800}.list-group-meta{color:var(--ink-soft);margin-left:auto;font-size:.8rem}.list-group-meta b{color:var(--deal)}.list-row{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:center;gap:.7rem;margin-bottom:.45rem;padding:.6rem .7rem;display:flex}.list-check{border:2px solid var(--border);background:var(--surface);color:#fff;cursor:pointer;border-radius:8px;flex:none;width:26px;height:26px;font-weight:800}.list-row.is-checked .list-check{background:var(--accent);border-color:var(--accent)}.list-row-body{flex:1;min-width:0}.list-row-name{font-size:.88rem;font-weight:600}.list-row-qty{color:var(--ink-faint);font-weight:500}.list-row.is-checked .list-row-name{color:var(--ink-faint);text-decoration:line-through}.list-row-price{align-items:baseline;gap:.4rem;margin-top:.1rem;font-size:.8rem;font-weight:700;display:flex}.list-row.is-expired{opacity:.7}.list-expired-tag{background:var(--deal-bg);color:var(--deal);border-radius:6px;padding:.05rem .35rem;font-size:.65rem;font-weight:700}.list-remove{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;flex:none;padding:0 .2rem;font-size:1.3rem}button.deal-card,button.compare-row-link{font:inherit;text-align:left;width:100%}button.deal-card{padding:0}button.compare-row-link{background:0 0;border:0}.sheet-backdrop{z-index:50;background:#211a1473;justify-content:center;align-items:flex-end;animation:.18s ease-out sheet-fade;display:flex;position:fixed;inset:0}.sheet{overscroll-behavior:contain;background:var(--bg);width:100%;max-width:560px;max-height:92dvh;padding-bottom:calc(1.2rem + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:.24s cubic-bezier(.2,.8,.2,1) sheet-up;position:relative;overflow-y:auto}@keyframes sheet-up{0%{transform:translateY(40%)}}@keyframes sheet-fade{0%{opacity:0}}.sheet-grab{z-index:2;background:var(--border);border-radius:99px;width:40px;height:4px;margin:8px auto -12px;position:sticky;top:0}.sheet-close{z-index:3;border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--ink);cursor:pointer;border-radius:999px;font-size:1.3rem;line-height:1;position:absolute;top:.7rem;right:.7rem}.sheet-media{background:#fff;border-radius:20px 20px 0 0;justify-content:center;align-items:center;height:min(44dvh,320px);display:flex;position:relative}.sheet-media img{object-fit:contain;width:100%;height:100%;padding:1.6rem 1.2rem 1rem}.sheet-media .sticker{width:88px;height:66px}.sheet-media.skeleton{background:var(--surface-alt)}.sheet-badge{font-size:.9rem;position:absolute;bottom:.8rem;left:1rem}.sheet-body{padding:1rem 1.1rem 0}.sheet-title{margin:.35rem 0 .2rem;font-size:1.25rem;line-height:1.2}.sheet-price{margin-top:.7rem}.sheet-price .price{font-size:1.7rem}.sheet-unit{color:var(--ink-soft);margin:.15rem 0 0;font-size:.85rem}.sheet-facts{border-top:1px solid var(--border);margin:1rem 0 0}.sheet-facts>div{border-bottom:1px solid var(--border);gap:1rem;padding:.6rem 0;font-size:.85rem;display:flex}.sheet-facts dt{width:4.5rem;color:var(--ink-faint);flex:none}.sheet-facts dd{flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;display:flex}.sheet-tag{background:var(--accent-tint);color:var(--accent-strong);border-radius:99px;padding:.1rem .45rem;font-size:.7rem;font-weight:700}.sheet-tag.is-urgent{background:var(--deal-bg);color:var(--deal)}.sheet-actions{align-items:center;gap:.5rem;margin-top:1rem;display:flex}.list-add.sheet-list-add{flex:none;width:44px;height:44px;position:static}.sheet-btn{background:var(--accent);color:#fff;height:44px;font:inherit;cursor:pointer;border:0;border-radius:12px;flex:1;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;text-decoration:none;display:flex}.sheet-btn.is-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--border)}.sheet-subtitle{margin:1.4rem 0 .5rem;font-size:.95rem}.sheet-empty{padding:3rem 1.2rem 1rem}.sheet-similar{flex-direction:column;gap:.45rem;display:flex}.similar-row{border:1px solid var(--border);background:var(--surface);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:.7rem;padding:.55rem .7rem;display:flex}.similar-thumb{background:#fff;border-radius:8px;flex:none;width:44px;height:44px;overflow:hidden}.similar-thumb img{object-fit:contain;width:100%;height:100%}.similar-text{flex-direction:column;flex:1;min-width:0;display:flex}.similar-name{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600;overflow:hidden}.similar-price{text-align:right;flex-direction:column;font-size:.9rem;font-weight:700;display:flex}.similar-price small{color:var(--ink-faint);font-size:.65rem;font-weight:400}.home-sticky{top:var(--topbar-h);z-index:4;background:var(--bg);border-bottom:1px solid #0000;margin:0 -1rem;padding:.2rem 1rem .55rem;position:sticky}.home-sticky .chip-row{margin-bottom:0}.chip-store{padding-left:.3rem}.home-hero{margin:.9rem 0 .2rem}.home-hero h1{letter-spacing:-.02em;margin:0;font-size:1.4rem;font-weight:800}.home-hero span{color:var(--ink-faint);font-family:ui-monospace,monospace;font-size:.64rem}.home-section .section-heading{margin-top:1.1rem}.section-more{color:var(--accent);font-size:.75rem;font-weight:700;text-decoration:none}.deal-rail{scroll-snap-type:x mandatory;scrollbar-width:none;gap:.65rem;margin:0 -1rem;padding:0 1rem .3rem;scroll-padding:0 1rem;display:flex;overflow-x:auto}.deal-rail::-webkit-scrollbar{display:none}.deal-rail-item{scroll-snap-align:start;flex:0 0 42%;max-width:190px}.deal-rail-item>.deal-card-wrap,.deal-rail-item>.deal-card,.deal-rail-item .deal-card{height:100%}.home-more{margin-top:.65rem}.skeleton{background:linear-gradient(90deg, var(--surface-alt) 0%, var(--border) 50%, var(--surface-alt) 100%);background-size:200% 100%;border-radius:6px;animation:1.2s ease-in-out infinite skeleton-shimmer}.deal-card-media.skeleton{border-radius:0}.skeleton-card{pointer-events:none}.skeleton-line{height:.7rem;margin-bottom:.4rem}.skeleton-line.short{width:55%}.skeleton-line.price{width:40%;height:.95rem;margin-bottom:0}.skeleton-title{width:9rem;height:1rem}.sticker.skeleton{transform:none}.skeleton-tile-text{flex:1}.skeleton-tile-text .skeleton-line{margin-bottom:.3rem}.compare-thumb.skeleton{padding:0}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.deal-page{max-width:560px;margin:0 auto;padding-bottom:1.5rem}.deal-page .sheet-media{border-radius:20px}.deal-page .sheet-body{padding:1rem 0 0}.deal-page h1.sheet-title{font-size:1.4rem}.deal-page-expired{padding:1rem 0 0}a.similar-row{text-decoration:none}.sheet-link{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px}.store-head{align-items:center;gap:12px;margin:8px 0 4px;display:flex}.store-title{margin:0;font-size:1.35rem;line-height:1.2}.store-meta{color:var(--ink-faint);margin:2px 0 0;font-size:.9rem}.store-list{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.store-list-link{background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-weight:600;text-decoration:none;display:flex}.store-list--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-list--grid .store-list-link{overflow-wrap:anywhere;min-width:0;padding:8px 10px;font-size:.9rem}.site-footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border);gap:var(--space-4);display:grid}.site-footer-title{font-size:var(--text-2xs);color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-2)}.site-footer-links{gap:var(--space-2) var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.site-footer-links a{color:var(--ink-soft);text-decoration:none}.site-footer-links a:hover{text-decoration:underline}.home-sticky{padding-bottom:var(--space-2)}.home-hero{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin:var(--space-4) 0 var(--space-1);display:flex}.home-hero h1{font-size:var(--text-2xl);letter-spacing:-.02em;line-height:var(--leading-tight)}.home-hero span{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--ink-soft)}.store-select{font-size:var(--text-sm);font-weight:var(--weight-medium);flex:none}.store-select select{max-width:9.5rem}.home-store-link{margin-top:var(--space-2);display:inline-block}.home-section{margin-top:var(--space-6)}.home-section .section-heading{margin:0 0 var(--space-3)}.home-section .section-heading h2{font-size:var(--text-lg)}.section-more{font-size:var(--text-sm)}.deal-list{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--elev-1);overflow:hidden}.deal-list>.deal-row-wrap+.deal-row-wrap{border-top:1px solid var(--border)}.deal-row-wrap{position:relative}.deal-row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) 3.4rem var(--space-3) var(--space-3);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.deal-row-media{border-radius:var(--radius-sm);background:var(--media-bg);flex:none;justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative;overflow:hidden}.deal-row-media img{object-fit:contain;width:100%;height:100%;padding:var(--space-1)}.deal-row-noimg{font-weight:var(--weight-black);color:var(--ink-faint);font-size:var(--text-xl)}.deal-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.deal-row-name{font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--leading-tight);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.deal-row-meta{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--ink-soft);white-space:nowrap;min-width:0;display:flex}.deal-row-meta>span{text-overflow:ellipsis;overflow:hidden}.deal-row-when{color:var(--ink-faint)}.deal-row-when.is-starts{color:var(--accent-strong)}.deal-row-price{align-items:baseline;gap:var(--space-2);margin-top:2px;display:flex}.deal-row-price .now{font-size:var(--text-lg);font-weight:var(--weight-black);color:var(--ink)}.deal-row-price .was{font-size:var(--text-xs);color:var(--ink-faint);text-decoration:line-through}.deal-row-save{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--deal)}.deal-row-wrap .list-add{top:50%;right:var(--space-3);transform:translateY(-50%)}.deal-row-wrap.is-hero{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--elev-2);margin-bottom:var(--space-3);overflow:hidden}.is-hero .deal-row{flex-direction:column;align-items:stretch;gap:0;padding:0}.is-hero .deal-row-media{aspect-ratio:16/9;border-radius:0;width:100%;height:auto}.is-hero .deal-row-media img{padding:var(--space-4)}.is-hero .deal-row-body{padding:var(--space-4);gap:var(--space-1)}.is-hero .deal-row-name{font-size:var(--text-lg);font-weight:var(--weight-bold)}.is-hero .deal-row-price .now{font-size:var(--text-2xl);color:var(--deal)}.is-hero .list-add{top:var(--space-3);transform:none}.deal-row-kicker{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--accent-strong);text-transform:uppercase;letter-spacing:.06em}.deal-row-pct{top:var(--space-3);left:var(--space-3);background:var(--deal);color:var(--on-accent);font-weight:var(--weight-black);font-size:var(--text-md);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);position:absolute}.deal-row-media.skeleton{border-radius:var(--radius-sm)}.is-hero .deal-row-media.skeleton{border-radius:0}.deal-when{font-size:var(--text-xs);color:var(--ink-faint)}.deal-when.is-starts{color:var(--accent-strong);font-weight:var(--weight-medium)}.deal-card .price-tag{margin-top:auto}.cat-header{margin:var(--space-2) 0 var(--space-4)}.cat-header .back-link{margin-bottom:var(--space-3);display:inline-block}.cat-header h1{font-size:var(--text-2xl);letter-spacing:-.02em;line-height:var(--leading-tight)}.cat-header p{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--ink-soft)}.home-hero h1{font-size:var(--text-xl)}.is-hero .deal-row-media{aspect-ratio:2}.load-more-btn{margin-top:var(--space-4)}#ae-desktop-panel{display:none}@media (width>=768px){:root{--shell-max:480px}html{background-color:#2a1a10;background-image:radial-gradient(circle at 12% 18%,#f2600c47 0,#f2600c00 34%),radial-gradient(circle at 88% 85%,#ffb07a29 0,#ffb07a00 40%),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}html body{background:0 0}html body .shell{min-height:100svh;box-shadow:0 0 0 1px #ffffff14,0 24px 80px #00000073}html body .sheet-backdrop,html body .ui-sheet-scrim{width:var(--shell-max);left:50%;right:auto;transform:translate(-50%)}}@media (width>=1024px){#ae-desktop-panel{color:#fff;width:220px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:block;position:fixed;top:50%;left:calc(50% + 280px);transform:translateY(-50%)}#ae-desktop-panel h2{margin:0 0 6px;font-size:24px;font-weight:800;line-height:1.2}#ae-desktop-panel p{color:#f0dccd;margin:0 0 16px;font-size:14px;line-height:1.4}#ae-desktop-panel .ae-qr{background:#fff;border-radius:14px;width:160px;height:160px;padding:10px;display:block}#ae-desktop-panel .ae-qr-label{color:#ff9a5c;margin:8px 0 0;font-size:12px;font-weight:600}}
