@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");@keyframes hero-shimmer{0%{transform:translateX(-120%) skewX(-18deg);opacity:0}12%{opacity:1}88%{opacity:1}to{transform:translateX(320%) skewX(-18deg);opacity:0}}@keyframes soft-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.03)}}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 0 rgba(37,207,227,.85)}55%{box-shadow:0 0 0 7px rgba(37,207,227,0)}}@keyframes orb-drift{0%,to{transform:translate(0) scale(1)}30%{transform:translate(2%,-3%) scale(1.06)}65%{transform:translate(-3%,2%) scale(.96)}}@keyframes card-glow{0%,to{box-shadow:0 0 0 1px rgba(37,207,227,.14),0 36px 90px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.09)}50%{box-shadow:0 0 0 1px rgba(37,207,227,.28),0 36px 90px rgba(0,0,0,.5),0 0 40px rgba(37,207,227,.06),inset 0 1px 0 rgba(255,255,255,.12)}}@keyframes cat-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}:root{--bg:#FAFBFD;--surface:#FFFFFF;--surface-soft:#F5F8FC;--surface-blue:#EDF5FB;--card-bg:linear-gradient(180deg,#f8fbfd,#f1f6fa);--text:#0C1118;--text-muted:#697586;--text-faint:#8A97A6;--text-inverse:#FFFFFF;--primary:#0E4F9E;--primary-hover:#083C78;--accent:#25CFE3;--accent-soft:rgba(37,207,227,0.12);--warning:#E98900;--danger:#E54848;--success:#1FB7C9;--border:#EDF2F6;--border-soft:rgba(237,242,246,0.8);--border-active:rgba(14,79,158,0.22);--shadow-card:0 16px 42px rgba(15,35,55,0.08);--shadow-soft:0 8px 24px rgba(15,35,55,0.05);--shadow-button:0 8px 18px rgba(14,79,158,0.18);--r-sm:10px;--r-md:16px;--r-lg:22px;--r-panel:28px;--r-pill:999px;--font:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--background:var(--bg);--foreground:var(--text);--muted:var(--text-faint);--page-ink:var(--text);--page-muted:var(--text-muted);--page-subtle:var(--text-faint);--panel:var(--surface);--panel-strong:var(--surface-soft);--surface-tint:var(--surface-soft);--line:var(--border);--line-strong:var(--border-active);--primary-strong:var(--primary);--primary-glow:var(--accent-soft);--accent-glow:var(--accent-soft);--gold:var(--warning);--gold-strong:var(--warning);--gold-glow:rgba(233,137,0,0.18);--danger-strong:var(--danger);--blue:var(--accent);--ink:var(--text);--shadow:var(--shadow-soft);--shadow-strong:var(--shadow-card)}html{scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;background-color:var(--bg);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.big-number,.metric strong,.price-block strong,body,h1,h2,h3,h4,h5,h6{color:var(--text);font-family:var(--font)}h1{letter-spacing:-.04em}h1,h2{font-weight:500}h2{letter-spacing:-.035em}h3{font-weight:500;letter-spacing:-.02em}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid rgba(37,207,227,.5);outline-offset:2px}.shell{width:min(1240px,calc(100% - 32px));margin:0 auto;padding:28px 0 56px}.hero-band{position:relative;overflow:hidden;background:#FFFFFF;border-bottom:1px solid rgba(231,237,243,.65)}.hero-band:before{content:"";position:absolute;inset:0;height:100%;pointer-events:none;background-image:radial-gradient(circle,rgba(14,79,158,.16) 1px,transparent 1.2px);background-size:10px 10px;opacity:.45;-webkit-mask-image:radial-gradient(ellipse at top,#000 0,transparent 68%);mask-image:radial-gradient(ellipse at top,#000 0,transparent 68%);z-index:0}.hero-band:after{display:none}.hero-band .shell{padding:0}.hero-band .topbar{position:static;top:auto;z-index:1;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid rgba(231,237,243,.65);padding:20px 0;margin:0}.hero-band .topbar h1{color:var(--text);letter-spacing:-.045em;font-weight:500}.hero-band .tagline{color:var(--text-muted)}.hero-band .hero{background:transparent;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0;padding:56px 0 68px;margin-bottom:0;min-height:unset;overflow:visible;position:relative;z-index:1}.hero-band .hero h2{font-size:clamp(2.6rem,5.5vw,5rem);font-weight:500;letter-spacing:-.065em;line-height:.97;color:var(--text);margin-bottom:6px}.hero-band .hero .eyebrow{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;background:#EDF5FB;border:1px solid #d4e8f8;color:var(--primary);font-size:.72rem;font-weight:700;letter-spacing:.04em;margin-bottom:16px;text-transform:uppercase}.hero-band .hero .eyebrow:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;box-shadow:0 0 0 0 rgba(37,207,227,.8);animation:pulse-dot 2.2s ease-in-out infinite}.hero-band .hero .hero-benefit-amount{font-size:clamp(2.8rem,5.5vw,5rem);font-weight:500;letter-spacing:-.06em;line-height:1;color:var(--warning)}.hero-band .hero .hero-benefit-label{color:var(--text-muted);font-size:.96rem}.hero-band .hero .hero-subline{color:var(--text-muted)}.hero-band .hero .hero-detail-row{color:var(--text-faint);font-size:.82rem}.hero-band .hero p{color:var(--text-muted)}.hero-band .hero .metric{background:var(--card-bg);border-color:var(--border)}.hero-band .hero .metric span{color:var(--text-muted)}.hero-band .hero .metric strong{color:var(--text)}.hero-band .hero .metric.savings{border-top:2px solid var(--accent)}.hero-band .hero .metric.savings strong{color:var(--primary)}.hero-band .hero .brand-logo-wrap{background:var(--card-bg);border-color:var(--border);box-shadow:var(--shadow-card)}.hero-band .hero .brand-logo-fallback{color:var(--primary)}.hero-band .hero .primary-button{background:var(--primary);border-color:var(--primary);color:#FFFFFF;font-weight:700;font-size:.88rem;letter-spacing:-.01em;padding:0 24px;min-height:44px;border-radius:var(--r-pill);box-shadow:0 8px 18px rgba(14,79,158,.18);transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.hero-band .hero .primary-button:hover{background:var(--primary-hover);border-color:var(--primary-hover);box-shadow:0 10px 24px rgba(14,79,158,.26);transform:translateY(-1px)}.hero-band .hero:after,.hero-band .hero:before{display:none}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:14px 0;margin-top:-14px;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(231,237,243,.65)}.brand-card h3,.brand-story-card h3,.coupon-card h3,.hero h2,.nearby-card h3,.offer-card h3,.panel h2,.recommendation h3,.snippet-card h3,.stop-card h3,.topbar h1{margin:0;letter-spacing:0;color:var(--text)}.topbar h1{color:var(--text);font-size:clamp(1.6rem,3.5vw,2.6rem);font-weight:500;letter-spacing:-.045em;line-height:1}.tagline{margin:5px 0 0;color:var(--text-muted);font-size:.88rem}.eyebrow{margin:0 0 4px;color:var(--primary);font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.badge-row span,.coupon-code,.metric,.source-pill,.tab{border:1px solid var(--border)}.source-pill{border-radius:var(--r-pill);padding:7px 14px;background:var(--surface);color:var(--text-muted);box-shadow:var(--shadow-soft);white-space:nowrap;font-size:.8rem}.topbar-catalogue-link{font-size:.82rem;font-weight:600;color:var(--primary);text-decoration:none;padding:7px 16px;border:1px solid rgba(13,79,158,.22);border-radius:var(--r-pill);background:var(--surface-blue);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;white-space:nowrap}.topbar-catalogue-link:hover{background:#d6eaff;border-color:rgba(13,79,158,.45);box-shadow:var(--shadow-soft)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,auto);grid-gap:24px;gap:24px;align-items:center;margin-bottom:16px;min-height:260px;padding:32px;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow-card);overflow:hidden;position:relative}.hero:before{inset:0;background:linear-gradient(105deg,transparent 25%,rgba(37,207,227,.04) 48%,transparent 72%);animation:hero-shimmer 9s ease-in-out infinite;z-index:0}.hero:after,.hero:before{content:"";position:absolute;pointer-events:none}.hero:after{inset:auto -70px -90px auto;width:280px;height:280px;border-radius:999px;border:1.5px solid rgba(13,79,158,.1);box-shadow:0 0 0 36px rgba(13,79,158,.025),0 0 0 72px rgba(13,79,158,.012),0 0 0 108px rgba(13,79,158,.006);animation:soft-pulse 5s ease-in-out infinite}.hero-copy,.hero-metrics,.hero-visual{position:relative;z-index:1}.hero-net-benefit{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin:16px 0 8px}.hero-benefit-amount{font-size:clamp(2.6rem,6vw,4.8rem);font-weight:800;color:var(--warning);line-height:1}.hero-benefit-label{color:var(--text-muted);font-size:.94rem;font-weight:500}.hero-subline{margin:4px 0 0;color:var(--text-muted);font-size:.9rem}.hero-detail-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:4px;color:var(--text-faint);font-size:.82rem}.hero-detail-sep{opacity:.4}.hero-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.brand-logo-wrap{display:grid;place-items:center;border-radius:var(--r-md);background:var(--surface-soft);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow-card)}.brand-logo-img{object-fit:contain}.brand-logo-fallback{font-size:1.7rem;font-weight:800;color:var(--primary);letter-spacing:-.02em}.retailer-logo-img{width:18px;height:18px;object-fit:contain;border-radius:3px;flex-shrink:0}.retailer-logo-badge{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:3px;font-size:.5rem;font-weight:700;flex-shrink:0;color:white;line-height:1}.hero h2{font-size:clamp(1.8rem,4vw,3.6rem);font-weight:500;letter-spacing:-.055em;line-height:1.02;color:var(--text)}.hero p{margin:8px 0 0;color:var(--text-muted)}.hero .eyebrow{color:var(--primary);margin-bottom:2px;display:flex;align-items:center}.hero-line{max-width:560px;font-size:.9rem}.hero-metrics,.metric-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.hero .metric{background:var(--surface-blue);border-color:rgba(13,79,158,.16);-webkit-backdrop-filter:none;backdrop-filter:none}.hero .metric span{color:var(--text-muted)}.hero .metric strong{color:var(--text)}.hero .metric.savings{border-top:2px solid var(--accent);box-shadow:0 0 0 1px rgba(37,207,227,.2)}.hero .metric.savings strong{color:var(--primary);text-shadow:none}.tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:10px;position:-webkit-sticky;position:sticky;top:0;z-index:10;padding:8px 0;background:rgba(255,255,255,.86);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.tab{min-height:44px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--card-bg);color:var(--text-muted);font-weight:600;font-size:.82rem;letter-spacing:-.01em;box-shadow:var(--shadow-soft);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.tab:hover{background:var(--surface-blue);border-color:rgba(14,79,158,.18);color:var(--primary);transform:translateY(-1px)}.tab.active{border-color:var(--primary);background:var(--primary);color:#FFFFFF;box-shadow:var(--shadow-button);letter-spacing:-.01em}.app-footer{display:grid;grid-template-columns:minmax(0,1.2fr) auto;grid-gap:16px;gap:16px;align-items:center;margin-top:22px;border-top:1px solid var(--border);padding-top:18px;color:var(--text-muted)}.app-footer strong{color:var(--text)}.app-footer p{margin:4px 0 0}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.footer-link{min-height:36px;border:1px solid var(--border);border-radius:var(--r-pill);padding:0 14px;background:var(--surface);color:var(--text-muted);font-weight:600;font-size:.82rem;transition:background .15s ease,border-color .15s ease,color .15s ease}.footer-link:hover{border-color:rgba(13,79,158,.22)}.footer-link.active,.footer-link:hover{background:var(--surface-blue);color:var(--primary)}.footer-link.active{border-color:var(--primary)}.footer-note{grid-column:1/-1;max-width:780px;font-size:.84rem;color:var(--text-faint)}.content-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.8fr);grid-gap:20px;gap:20px}.shop-filter{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:16px 16px 16px 18px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--card-bg);box-shadow:var(--shadow-soft);color:var(--text);overflow:hidden}.shop-filter-label{flex-shrink:0;min-width:120px}.shop-filter strong{display:block;color:var(--text);font-weight:600}.shop-scroll-wrap{flex:1 1;display:flex;align-items:center;gap:6px;overflow:hidden;position:relative}.shop-buttons{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;padding:4px 2px 6px;scrollbar-width:none}.shop-buttons::-webkit-scrollbar{display:none}.shop-logo-btn{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0;padding:9px 11px 7px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--card-bg);color:var(--text-muted);font-size:.66rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease;min-width:62px}.shop-logo-btn:hover{border-color:rgba(14,79,158,.2);background:var(--surface-blue);transform:translateY(-1px)}.shop-logo-btn.active{border-color:var(--primary);background:#EDF5FB;box-shadow:0 0 0 1px var(--primary),var(--shadow-soft);color:var(--primary)}.shop-logo-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:56px}.shop-all-icon,.shop-logo-btn.active .shop-all-icon{color:var(--primary)}.shop-tile-logo{object-fit:contain}.shop-tile-fallback,.shop-tile-logo{width:36px;height:36px;border-radius:6px}.shop-tile-fallback{display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff}.shop-scroll-arrow{flex-shrink:0;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--primary);cursor:pointer;transition:background .14s ease,border-color .14s ease;box-shadow:var(--shadow-soft)}.shop-scroll-arrow:hover{background:var(--surface-blue);border-color:rgba(13,79,158,.3)}.travel-assumption{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:-6px 0 16px;border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:var(--r-sm);padding:10px 14px;background:var(--surface);box-shadow:var(--shadow-soft);color:var(--text-muted);font-size:.84rem}.travel-assumption span{color:var(--warning);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.travel-assumption strong{color:var(--text);font-weight:600}.travel-assumption p{margin:0}.travel-icon{color:var(--warning);flex-shrink:0}.smart-map{position:relative;width:100%;margin:0 0 16px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-md);background:#e8eff7;box-shadow:var(--shadow-soft)}.map-scrim,.map-tiles{position:absolute;inset:0}.map-tile{position:absolute;width:256px;height:256px;filter:saturate(.65) contrast(.88) brightness(1.08);opacity:.9;-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-scrim{background:rgba(247,249,252,.18);pointer-events:none}.map-route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.map-location-status,.map-scale{position:absolute;z-index:2;border:1px solid var(--border);border-radius:var(--r-pill);background:rgba(255,255,255,.88);color:var(--text);font-size:.67rem;font-weight:700;padding:4px 8px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.map-scale{right:12px;top:12px}.map-location-status{left:12px;top:12px}.map-location-status.found{border-color:rgba(37,207,227,.5);color:var(--primary)}.map-route polyline{fill:none;stroke:var(--primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4;filter:drop-shadow(0 0 6px rgba(13,79,158,.3))}.map-marker{position:absolute;display:grid;grid-gap:2px;gap:2px;z-index:3;min-width:58px;place-items:center;border-radius:var(--r-sm);color:white;font-size:.68rem;font-weight:700;padding:6px 8px;transform:translate(-50%,-100%);box-shadow:0 8px 20px rgba(15,35,55,.18)}.map-marker small,.map-marker span{display:block}.map-marker small{color:rgba(255,255,255,.85);font-size:.56rem;font-weight:600;line-height:1;white-space:nowrap}.map-marker.user{border:2px solid white;background:var(--primary)}.map-marker.shop{border:2px solid white;background:var(--text);color:var(--accent)}.map-caption{position:absolute;inset:auto 12px 12px 12px;z-index:2;max-width:520px;margin:0;border-radius:var(--r-sm);padding:8px 10px;background:rgba(255,255,255,.9);color:var(--text-muted);font-size:.72rem;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.map-caption,.panel{border:1px solid var(--border)}.panel{padding:22px;border-radius:var(--r-lg);background:var(--card-bg);box-shadow:var(--shadow-card);color:var(--text)}.panel-header{margin-bottom:16px}.panel h2{font-size:1.2rem;font-weight:500;letter-spacing:-.03em;color:var(--text)}.panel p{margin:4px 0 0}.panel p,.policy-list p{color:var(--text-muted);font-size:.84rem}.policy-list p{margin:0;border:1px solid var(--border);border-radius:var(--r-sm);padding:11px 13px;background:var(--card-bg)}.basket-list,.brand-grid,.coupon-grid,.delivery-grid,.match-list,.nearby-grid,.offer-list,.planner-stops,.policy-list,.snippet-grid,.story-stack{display:grid;grid-gap:12px;gap:12px}.basket-row,.brand-card,.brand-rank-row,.brand-story-card,.coupon-card,.delivery-card,.event-row,.funnel-card,.insight-card,.match-row,.nearby-card,.offer-card,.poll-card,.recommendation,.snippet-card,.stop-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--card-bg);box-shadow:var(--shadow-soft);color:var(--text)}.offer-card{padding:20px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.offer-card:hover{border-color:rgba(14,79,158,.18);box-shadow:0 16px 42px rgba(15,35,55,.09);transform:translateY(-2px)}.basket-row,.brand-card,.coupon-card,.delivery-card,.match-row,.nearby-card,.offer-footer,.offer-main,.stop-header{display:flex;justify-content:space-between;gap:14px}.offer-main,.offer-title-row{align-items:flex-start}.offer-title-row{display:flex;gap:10px}.retailer-mark{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;grid-template-rows:18px 10px;grid-gap:2px;gap:2px;border-radius:var(--r-sm);border:1px solid rgba(13,79,158,.16);background:var(--surface-blue);color:var(--primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.retailer-mark svg{display:block}.retailer-mark span{color:var(--primary);font-size:.56rem;font-weight:700;line-height:1}.basket-row span,.brand-card p,.brand-story-card p,.coupon-card p,.nearby-card p,.offer-card p,.recommendation p,.snippet-card p,.stop-card p{margin:4px 0 0;color:var(--text-muted);font-size:.82rem}.price-block{display:grid;grid-gap:2px;gap:2px;justify-items:end;text-align:right}.price-block strong{color:var(--text);font-size:1.35rem;font-weight:700}.price-block span{color:var(--accent);font-size:.78rem;font-weight:600}.badge-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.badge-row span{border-radius:var(--r-pill);padding:4px 9px;color:var(--text-muted);font-size:.67rem;font-weight:700;background:#FFFFFF;border:1px solid #e8eef4}.badge-row .badge{border-color:#d4e8f8;color:var(--primary);background:#EDF5FB}.badge-row .sponsored{border-color:#fde4bb;color:#a25a00;background:#fff5e6}.offer-footer{align-items:center;margin-top:14px;color:var(--text-faint);font-size:.82rem}.basket-actions button,.offer-footer button,.primary-button{border:1px solid var(--primary);border-radius:var(--r-pill);background:var(--primary);color:#FFFFFF;font-weight:600;font-size:.82rem;box-shadow:var(--shadow-button);transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.basket-actions button:hover,.offer-footer button:hover,.primary-button:hover{background:var(--primary-hover);border-color:var(--primary-hover);box-shadow:0 10px 24px rgba(13,79,158,.26);transform:translateY(-1px)}.offer-footer button{min-width:68px;min-height:36px}.primary-button{min-height:42px;padding:0 18px}.metric{display:grid;grid-gap:2px;gap:2px;min-width:104px;border-radius:var(--r-sm);padding:10px 12px;background:var(--card-bg);border:1px solid var(--border);box-shadow:var(--shadow-soft)}.metric span{color:var(--text-muted);font-size:.72rem}.metric strong{color:var(--text);font-weight:600;letter-spacing:-.02em}.search-input{min-height:48px;padding:0 14px}.list-input,.search-input{width:100%;margin-bottom:14px;border:1px solid var(--border);border-radius:var(--r-sm);outline:none;background:var(--surface);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.list-input{min-height:180px;padding:14px;resize:vertical;line-height:1.5}.list-input:focus,.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(37,207,227,.14)}.recommendation{border-radius:var(--r-md)}.planner-summary,.recommendation{display:grid;grid-gap:14px;gap:14px;padding:18px;background:var(--card-bg);border:1px solid var(--border)}.planner-summary{margin-bottom:14px;border-radius:var(--r-md)}.planner-summary h3{margin:0;font-size:1.06rem}.stop-card{padding:14px}.stop-header{align-items:flex-start}.stop-header>strong{color:var(--primary);font-size:1.15rem;white-space:nowrap}.stop-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:12px}.stop-items button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;border:1px solid var(--border);border-radius:var(--r-sm);padding:9px 10px;background:var(--surface-soft);color:var(--text);text-align:left;transition:border-color .15s ease,background .15s ease}.stop-items button:hover{border-color:rgba(13,79,158,.22);background:var(--surface-blue)}.match-row{align-items:center;padding:11px 13px;border-radius:var(--r-sm)}.match-row span{color:var(--text-muted);text-transform:capitalize}.match-row strong{text-align:right;color:var(--text)}.missing-box{margin-top:12px;border-radius:var(--r-sm);padding:13px;background:rgba(233,137,0,.07);border:1px solid rgba(233,137,0,.22);color:var(--warning)}.missing-box p{margin:4px 0 0;color:inherit}.basket-row{align-items:center;padding:13px}.basket-row>div{display:grid;grid-gap:2px;gap:2px}.basket-actions{display:flex;align-items:center;gap:10px}.basket-actions button{min-height:34px;background:var(--surface-soft);color:var(--text);border:1px solid var(--border);border-radius:var(--r-pill);padding:0 12px}.big-number{color:var(--primary);font-size:clamp(1.8rem,5vw,3.6rem);font-weight:800}.nearby-card{align-items:flex-start;padding:14px;flex-direction:column}.coupon-card{align-items:center;padding:14px}.brand-card{align-items:flex-start;padding:16px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.brand-card:hover{transform:translateY(-2px);border-color:rgba(13,79,158,.22);box-shadow:var(--shadow-card)}.brand-card>div:last-child{flex:1 1;min-width:0}.story-stack{gap:14px}.brand-story-card{display:grid;grid-gap:16px;gap:16px;padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);color:var(--text);overflow:hidden;position:relative;box-shadow:var(--shadow-card);transition:transform .2s ease,box-shadow .2s ease}.brand-story-card:hover{transform:translateY(-3px);border-color:rgba(13,79,158,.2);box-shadow:0 24px 56px rgba(15,35,55,.1)}.brand-story-card:after{content:none}.brand-story-card>*{position:relative;z-index:1}.brand-story-card h3{max-width:720px;font-size:clamp(1.35rem,2.8vw,2.2rem);font-weight:700;line-height:1.08;color:var(--text)}.brand-story-card p{max-width:740px;color:var(--text-muted);font-size:.84rem;line-height:1.5}.story-offer-strip,.story-proof-grid,.story-topline{display:flex;gap:8px}.story-topline{align-items:center;justify-content:space-between}.story-topline span{border-radius:var(--r-pill);padding:5px 10px;background:rgba(233,137,0,.08);border:1px solid rgba(233,137,0,.22);color:var(--warning);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.story-topline strong{color:var(--text)}.story-proof-grid{flex-wrap:wrap}.story-proof-grid span{border:1px solid var(--border);border-radius:var(--r-pill);padding:6px 10px;background:var(--surface-soft);color:var(--text-muted);font-size:.8rem;font-weight:600}.story-offer-strip{align-items:center;justify-content:space-between;border-radius:var(--r-sm);padding:14px;background:var(--surface-soft);border:1px solid var(--border)}.story-offer-strip div,.story-price{display:grid;grid-gap:3px;gap:3px}.story-offer-strip span,.story-price span{color:var(--text-muted);font-size:.82rem}.story-price{justify-items:end;text-align:right}.story-price strong{color:var(--warning);font-size:1.3rem;font-weight:700}.story-action{width:-moz-fit-content;width:fit-content;min-height:38px;border:1px solid var(--primary);border-radius:var(--r-pill);padding:0 16px;background:var(--primary);color:#FFFFFF;font-weight:600;font-size:.82rem;box-shadow:var(--shadow-button);transition:background .16s ease,transform .16s ease}.story-action:hover{background:var(--primary-hover);transform:translateY(-1px)}.insights-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr)}.funnel-grid,.insight-grid{display:grid;grid-gap:10px;gap:10px}.funnel-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px}.funnel-card{display:grid;grid-gap:8px;gap:8px;padding:14px;min-width:0;background:var(--surface-soft);border-radius:var(--r-sm);border:1px solid var(--border)}.brand-rank-row span,.event-row span,.funnel-card span,.insight-card span,.poll-card>div:first-child>span{color:var(--text-faint);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.funnel-card strong{color:var(--primary);font-size:1.3rem;font-weight:700}.funnel-bar{height:6px;border-radius:var(--r-pill);background:var(--border);overflow:hidden}.funnel-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);text-transform:none;letter-spacing:0;font-size:inherit;font-weight:inherit;color:inherit}.insight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.insight-card{display:grid;grid-gap:8px;gap:8px;padding:14px;background:var(--surface-soft);border-radius:var(--r-sm);border:1px solid var(--border)}.insight-card strong{color:var(--text);font-size:1.2rem;font-weight:700}.insight-card p{margin:0;color:var(--text-muted);font-size:.82rem}.recommendation-list{display:grid;grid-gap:8px;gap:8px;margin-top:14px}.recommendation-list p{margin:0;border-radius:var(--r-sm);padding:10px 13px;background:rgba(37,207,227,.07);border:1px solid rgba(37,207,227,.2);color:var(--primary);font-weight:600;font-size:.84rem}.brand-rank-list,.event-stream,.poll-options,.poll-stack{display:grid;grid-gap:10px;gap:10px}.poll-card{display:grid;grid-gap:12px;gap:12px;padding:16px;background:var(--surface);border-radius:var(--r-md);border:1px solid var(--border)}.poll-card h3{margin:4px 0 0;color:var(--text)}.poll-options button{position:relative;display:flex;min-height:42px;align-items:center;justify-content:space-between;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-sm);padding:0 12px;background:var(--surface-soft);color:var(--text);text-align:left;transition:border-color .14s ease}.poll-options button:hover{border-color:rgba(13,79,158,.28)}.poll-options button span,.poll-options button strong{position:relative;z-index:1}.poll-options button i{position:absolute;inset:0 auto 0 0;background:rgba(37,207,227,.08)}.brand-rank-row,.event-row{align-items:center;display:flex;justify-content:space-between;gap:12px;padding:11px 13px;background:var(--surface);border-radius:var(--r-sm);border:1px solid var(--border)}.event-row{align-items:flex-start;flex-direction:column}.event-row strong{font-size:.9rem;color:var(--text)}.snippet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.snippet-card{display:grid;grid-gap:6px;gap:6px;padding:14px;background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--r-sm)}.snippet-card span{color:var(--primary);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.snippet-card h3{color:var(--text);font-size:.96rem;margin:0}.snippet-card p{color:var(--text-muted);font-size:.8rem;margin:2px 0 0}.snippet-card strong{color:var(--warning);font-weight:700}.snippet-category{display:flex;align-items:center;gap:6px}.category-dot{display:inline-block;width:7px;height:7px;border-radius:999px;flex-shrink:0}.delivery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.delivery-card{align-items:center;min-height:78px;border:1px solid var(--border);border-radius:var(--r-sm);padding:14px;background:var(--surface-soft);color:var(--text);text-align:left;transition:border-color .15s ease,background .15s ease,transform .15s ease}.delivery-card:hover{border-color:rgba(13,79,158,.22);background:var(--surface-blue);transform:translateY(-1px)}.delivery-card span{color:var(--text-faint);font-size:.8rem;font-weight:500}.delivery-card strong{color:var(--text);font-weight:600}.coupon-code{display:grid;width:54px;height:54px;flex:0 0 auto;place-items:center;border-radius:var(--r-sm);background:var(--primary);color:white;font-weight:700;border-color:var(--primary)}.empty-state,.tool-copy{margin:0;color:var(--text-muted)}.visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.mini-visual{display:grid;grid-gap:8px;gap:8px;min-width:0;border:1px solid var(--border);border-radius:var(--r-sm);padding:11px;background:var(--card-bg);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.visual-label{display:flex;align-items:center;justify-content:space-between;gap:8px}.bar-legend,.signal-preview span,.trip-verdict span,.visual-label span,.worth-badge span{color:var(--text-muted);font-size:.76rem}.visual-label strong{color:var(--text);font-size:.8rem;font-weight:600}.meter-track,.stacked-bar,.timeline-track{height:7px;border-radius:var(--r-pill);background:var(--border);overflow:hidden}.meter-track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.stacked-bar{display:flex}.stacked-bar span{display:block;height:100%}.price-segment{background:var(--primary)}.travel-segment{background:var(--danger)}.saving-segment{background:var(--warning)}.bar-legend{display:flex;justify-content:space-between}.timeline-track{position:relative;overflow:visible;background:rgba(37,207,227,.18)}.timeline-track span{position:absolute;top:50%;width:12px;height:12px;border:2px solid white;border-radius:999px;background:var(--primary);box-shadow:0 2px 8px rgba(13,79,158,.3);transform:translate(-50%,-50%)}.trip-verdict,.worth-badge{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;border-radius:var(--r-sm);border:1px solid transparent;padding:11px 14px}.worth-badge{width:100%;margin-top:2px}.trip-verdict.positive,.worth-badge.positive{border-color:rgba(37,207,227,.28);background:rgba(37,207,227,.06);color:#0B6E7A}.trip-verdict.caution,.worth-badge.caution{border-color:rgba(233,137,0,.28);background:rgba(233,137,0,.06);color:var(--warning)}.trip-verdict strong,.worth-badge strong{font-weight:700}.signal-stack{display:grid;grid-gap:10px;gap:10px}.signal-preview{display:grid;grid-gap:4px;gap:4px;border:1px solid var(--border);border-radius:var(--r-sm);padding:13px;color:var(--text-muted);background:var(--card-bg);box-shadow:var(--shadow-soft)}.signal-preview strong{color:var(--text);font-weight:600;letter-spacing:-.01em}.signal-preview.green{border-color:rgba(37,207,227,.3);background:rgba(37,207,227,.05)}.signal-preview.blue{border-color:#d4e8f8;background:#EDF5FB}.signal-preview.gold{border-color:#fde4bb;background:#fff8ee}.cat-shell{min-height:100vh;background:var(--bg);color:var(--text)}.cat-header{justify-content:space-between;padding:14px 32px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:-webkit-sticky;position:sticky;top:0;z-index:20}.cat-header,.cat-header-left,.cat-header-right{display:flex;align-items:center;gap:16px}.cat-back{display:flex;align-items:center;gap:4px;color:var(--primary);text-decoration:none;font-size:.84rem;font-weight:600;opacity:.8;transition:opacity .12s ease}.cat-back:hover{opacity:1}.cat-title-group{display:flex;flex-direction:column;gap:2px}.cat-retailer{margin:0;color:var(--text);font-size:1.1rem;font-weight:700}.cat-dates{gap:4px;color:var(--text-muted)}.cat-dates,.cat-distance-chip{display:flex;align-items:center;font-size:.76rem}.cat-distance-chip{gap:5px;border:1px solid rgba(233,137,0,.3);border-radius:var(--r-pill);padding:5px 10px;background:rgba(233,137,0,.06);color:var(--warning);font-weight:700}.cat-source-pill{border:1px solid var(--border);border-radius:var(--r-pill);padding:5px 10px;background:var(--surface-soft);color:var(--text-muted);font-size:.74rem}.cat-body{display:grid;grid-template-columns:1fr 340px;grid-gap:0;gap:0;min-height:calc(100vh - 60px)}.cat-gallery{padding:24px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:16px}.cat-image-frame{position:relative;background:#fff;border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-card);border:1px solid var(--border);min-height:500px;display:flex;align-items:center;justify-content:center}.cat-img-skeleton{position:absolute;inset:0;background:linear-gradient(90deg,#f0f4f8 25%,#e4ecf4 50%,#f0f4f8 75%);background-size:200% 100%;animation:cat-skeleton 1.4s ease infinite}.cat-page-img{width:100%;height:auto;display:block;transition:opacity .2s ease}.cat-empty-pages{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 32px;text-align:center;color:var(--text-muted)}.cat-empty-pages p{margin:0;font-weight:600}.cat-empty-pages small{font-size:.82rem;max-width:320px;line-height:1.5}.cat-nav{display:flex;align-items:center;justify-content:center;gap:16px}.cat-nav-btn{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text);transition:background .12s ease,border-color .12s ease}.cat-nav-btn:hover:not(:disabled){border-color:rgba(13,79,158,.28);color:var(--primary);background:var(--surface-blue)}.cat-nav-btn:disabled{opacity:.3;cursor:not-allowed}.cat-page-count{color:var(--text-muted);font-size:.82rem;font-weight:600}.cat-thumbs{display:flex;gap:8px;flex-wrap:wrap}.cat-thumb{width:60px;height:80px;border:2px solid transparent;border-radius:6px;overflow:hidden;padding:0;background:var(--surface-soft);transition:border-color .12s ease}.cat-thumb img{width:100%;height:100%;object-fit:cover}.cat-thumb.active{border-color:var(--primary)}.cat-thumb:hover:not(.active){border-color:rgba(13,79,158,.3)}.cat-intel{padding:24px;background:var(--surface-soft);display:flex;flex-direction:column;gap:16px;border-left:1px solid var(--border)}.cat-intel-eyebrow{display:flex;align-items:center;gap:5px;margin:0;color:var(--primary);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.cat-best-deal{display:grid;grid-gap:4px;gap:4px;padding:16px;border-radius:var(--r-sm);background:rgba(233,137,0,.06);border:1px solid rgba(233,137,0,.2)}.cat-best-label{color:var(--warning);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.cat-best-product{color:var(--text);font-size:.96rem}.cat-best-number{font-size:2.2rem;font-weight:800;color:var(--warning);line-height:1}.cat-best-sub{color:var(--text-faint);font-size:.76rem}.cat-deal-list{display:grid;grid-gap:8px;gap:8px;flex:1 1;overflow-y:auto}.cat-deal-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);transition:border-color .14s ease}.cat-deal-row:hover{border-color:rgba(13,79,158,.2)}.cat-deal-info{display:grid;grid-gap:2px;gap:2px;min-width:0}.cat-deal-info strong{color:var(--text);font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-deal-info span{color:var(--text-muted);font-size:.74rem}.cat-deal-benefit{font-weight:800;font-size:.9rem;white-space:nowrap}.cat-deal-benefit.positive{color:var(--primary)}.cat-deal-benefit.negative{color:var(--danger)}.cat-no-deals{margin:0;color:var(--text-muted);font-size:.82rem;line-height:1.5;padding:16px;border:1px dashed var(--border);border-radius:var(--r-sm);text-align:center}.cat-travel-note{display:flex;align-items:flex-start;gap:6px;color:var(--text-faint);font-size:.74rem;line-height:1.4;border-top:1px solid var(--border);padding-top:14px}@media (max-width:860px){.cat-body{grid-template-columns:1fr}.cat-intel{order:-1}.cat-header{padding:12px 16px}.cat-gallery{padding:16px}.shell{width:min(100% - 20px,720px);padding-top:14px}.coupon-card,.hero,.nearby-card,.offer-footer,.offer-main,.shop-filter,.topbar{grid-template-columns:1fr}.coupon-card,.nearby-card,.offer-footer,.offer-main,.topbar{align-items:stretch;flex-direction:column}.hero{display:grid}.hero-metrics,.hero-visual{align-items:center}.hero-net-benefit{margin:12px 0 8px}.tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.app-footer,.content-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.funnel-grid,.insight-grid{grid-template-columns:1fr}.price-block{justify-items:start;text-align:left}.visual-grid{grid-template-columns:1fr}.delivery-card,.match-row,.stop-header,.story-offer-strip,.story-topline,.trip-verdict,.worth-badge{align-items:flex-start;flex-direction:column}.delivery-grid,.snippet-grid,.stop-items{grid-template-columns:1fr}}@media (max-width:520px){.tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.metric,.primary-button{width:100%}.basket-actions,.basket-row{align-items:stretch;flex-direction:column}}