:root{--brand-yellow: #fdec02;--brand-yellow-deep: #e6d402;--btn-primary-text: #0a0a0a;--splash-yellow: #ffeb03;--ink: #0a0a0a;--muted: #5c5c5c;--surface: #fffef8;--card: #ffffff;--border: rgba(10, 10, 10, .08);--ios-blue: #007aff;--ios-blue-press: #0062cc;--ios-blue-soft: rgba(0, 122, 255, .1);--ios-green: #34c759;--ios-green-deep: #248a3d;--ios-red: #ff3b30;--ios-orange: #ff9500;--ios-gray6: #f2f2f7;--ios-gray: #8e8e93;--radius: 14px;--radius-card: 12px;--radius-btn: 10px;--radius-badge: 8px;--shadow: 0 8px 28px rgba(10, 10, 10, .06);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro,DM Sans,system-ui,sans-serif;line-height:1.45;font-weight:400;color:var(--ink);background:var(--surface);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100dvh}#root{min-height:100dvh}button,input{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--ios-blue);outline-offset:2px}.layout{display:flex;flex-direction:column;min-height:100dvh}.main{flex:1;max-width:960px;margin:0 auto;padding:0 1.25rem 1.5rem;width:100%}.page-brand{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:960px;margin:0 auto;padding:1.25rem 1.25rem .75rem;width:100%}.brand-link{display:inline-block;line-height:0;border-radius:var(--radius-card)}.brand-logo{display:block;height:75px;width:auto;max-width:min(290px,78vw);object-fit:contain;object-position:left center;border-radius:var(--radius-card)}@media (min-width: 480px){.brand-logo{height:88px;max-width:320px}}.panel,.results{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.35rem;box-shadow:var(--shadow)}.results{margin-top:1.25rem}.footer{max-width:960px;margin:0 auto;padding:0 1.25rem 2rem;text-align:center}.footer-quote{margin:0 0 .65rem;font-size:.82rem;color:var(--ios-gray);line-height:1.45;min-height:2.8em;transition:opacity .28s ease}.footer-quote-fade{opacity:0}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .5rem;margin-bottom:.5rem;font-size:.82rem}.footer-nav a{color:var(--ios-blue);text-decoration:none;font-weight:600}.footer-nav a:hover{text-decoration:underline}.footer-nav-sep{color:var(--ios-gray)}.footer-disclaimer{margin:0;font-size:.72rem;color:var(--muted);line-height:1.4}.legal-panel{margin-top:0}.legal-title{margin:0 0 1rem;font-size:1.35rem;font-weight:700}.legal-doc{font-size:.9rem;line-height:1.55;color:var(--ink)}.legal-doc h2{margin:1.35rem 0 .5rem;font-size:1.05rem;font-weight:700}.legal-doc h3{margin:1rem 0 .4rem;font-size:.95rem;font-weight:600}.legal-doc p,.legal-doc li{margin:.5rem 0;color:var(--ink)}.legal-doc ul{margin:.5rem 0;padding-left:1.25rem}.legal-doc a{color:var(--ios-blue)}.legal-doc strong{font-weight:700}.legal-doc hr{border:none;border-top:1px solid var(--border);margin:1.25rem 0}.theme-toggle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--ink);box-shadow:var(--shadow);transition:background .15s,border-color .15s,transform .1s}.theme-toggle:hover{background:var(--ios-gray6);border-color:#0a0a0a24}.theme-toggle:active{transform:scale(.94)}[data-theme=dark]{--brand-yellow: #fdec02;--brand-yellow-deep: #e6d402;--ink: #f5f5f7;--muted: #aeaeb2;--surface: #000000;--card: #1c1c1e;--border: rgba(255, 255, 255, .12);--ios-blue-soft: rgba(0, 122, 255, .22);--ios-gray6: #2c2c2e;--ios-gray: #8e8e93;--shadow: 0 8px 28px rgba(0, 0, 0, .45)}[data-theme=dark] .search-field,[data-theme=dark] .chip:not(.chip-on):not(.chip-disabled),[data-theme=dark] .summary-tile,[data-theme=dark] .option-card,[data-theme=dark] .store-card-head{background:var(--card)}[data-theme=dark] .summary-card,[data-theme=dark] .store-card{background:#141416}[data-theme=dark] .running-bar{background:#1c1c1ef7}[data-theme=dark] .theme-toggle:hover{border-color:#fff3}[data-theme=dark] .badge{background:#3a3a3c;color:var(--ink)}[data-theme=dark] .loading-overlay{background:#0000008c}.specials-savings{margin-top:1.25rem;padding-top:.25rem}.specials-savings-lead{margin-top:-.35rem}.chip-soon{margin-left:.35rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.85}.store-grid-toolbar{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.35rem}.store-toggle-btn{display:inline-flex;align-items:center;gap:.25rem;border:1px solid var(--border);border-radius:999px;padding:.2rem .55rem;font-size:.68rem;font-weight:600;color:var(--muted);background:var(--ios-gray6);cursor:pointer;text-decoration:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.store-toggle-btn:hover{border-color:var(--ios-blue);color:var(--ios-blue)}.specials-table-wrap{overflow-x:auto;margin-top:.75rem;border:1px solid var(--border);border-radius:12px;background:var(--card)}.specials-table{width:100%;border-collapse:collapse;font-size:.78rem;min-width:640px}.specials-table th,.specials-table td{padding:.55rem .65rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.specials-table th{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--ios-gray6)}.specials-table td.num,.specials-table th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.specials-table td.sale,.specials-table td.savings{font-weight:700;color:var(--ios-green-deep)}.specials-table td.special-cell{font-weight:600;color:var(--ios-green-deep);max-width:8rem}.specials-table tfoot td.foot-label{font-weight:700;text-align:right;color:var(--muted)}.specials-table .specials-total-row td{border-bottom:none;background:#34c7591a}.specials-table .specials-total-row td.savings{font-size:.95rem}[data-theme=dark] .specials-table th{background:#2c2c2e}[data-theme=dark] .specials-table .specials-total-row td{background:#34c75924}[data-theme=dark] .btn-primary{color:var(--btn-primary-text);border-color:#0a0a0a33}[data-theme=dark] .btn-primary:disabled{opacity:1;background:#fdec0252;color:#0a0a0ab8;border-color:#fdec0259}
