:root{--paper: #f4f1ea;--paper-press: #ede9df;--ink: #1f1d1a;--warm-gray: #8b857a;--amber: #c97b2e;--hairline: rgba(139, 133, 122, .35);--sans: "Archivo", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace}*{margin:0;padding:0;box-sizing:border-box}html{background:var(--paper)}body{font-family:var(--sans);font-weight:500;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.45}#app{max-width:27rem;margin:0 auto;padding:2.25rem 1.25rem 3.5rem}.masthead h1{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.1}.masthead h1 .dot{color:var(--amber)}@media(prefers-reduced-motion:no-preference){.reveal{animation:rise .55s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--delay, 0s)}.masthead .dot{animation:settle .45s ease-out both;animation-delay:.7s}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.masthead p{margin-top:.375rem;color:var(--warm-gray);font-size:.9375rem;max-width:22rem}.section{margin-top:2rem}.section-label{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-family:var(--mono);font-size:.6875rem;font-weight:400;letter-spacing:.05em;color:var(--warm-gray);padding-bottom:.5rem;border-bottom:1px solid var(--hairline)}.section ul{list-style:none}.section li{border-bottom:1px solid var(--hairline)}.row{display:flex;gap:.875rem;align-items:flex-start;text-decoration:none;color:inherit;padding:.875rem .625rem;margin:0 -.625rem;transition:background .25s ease}.row:hover{background:var(--paper-press)}.row:focus-visible{outline:2px solid var(--amber);outline-offset:-2px}.thumb{flex:none;width:5.25rem;height:5.25rem;overflow:hidden;background:var(--paper)}.thumb img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply;transition:transform .6s cubic-bezier(.22,1,.36,1)}.row:hover .thumb img{transform:scale(1.05)}@media(prefers-reduced-motion:reduce){.thumb img{transition:none}.row:hover .thumb img{transform:none}}.row-body{flex:1;min-width:0}.row-name{font-size:.9375rem;font-weight:500;line-height:1.3}.row-brand{font-size:.8125rem;color:var(--warm-gray);margin-top:.0625rem}.row-price{margin-top:.375rem;font-family:var(--mono);font-size:.9375rem;font-weight:500;color:var(--amber)}.row-price s{margin-left:.5rem;font-size:.8125rem;font-weight:400;color:var(--warm-gray)}.row-note{margin-top:.125rem;font-size:.8125rem;color:var(--warm-gray)}.spark{display:block;margin-top:.5rem;width:8.5rem;height:1.625rem;overflow:visible}.spark path{fill:none;stroke:var(--ink);stroke-width:1.5}.spark circle{fill:var(--amber)}@media(prefers-reduced-motion:no-preference){.spark path{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:plot .9s ease-out forwards;animation-delay:var(--delay, 0s)}.spark circle{opacity:0;animation:settle .3s ease-out forwards;animation-delay:calc(var(--delay, 0s) + .85s)}}@keyframes plot{to{stroke-dashoffset:0}}@keyframes settle{0%{opacity:0}to{opacity:1}}.section.compact .thumb{width:3rem;height:3rem}.section.compact .row{padding-top:.75rem;padding-bottom:.75rem}.brand-list{display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem}.section.brands li{border-bottom:0}.brand-link{display:block;padding:.5rem 0;font-family:var(--mono);font-size:.8125rem;color:var(--warm-gray);text-decoration:none;border-bottom:1px solid var(--hairline);transition:color .2s ease}.brand-link:hover{color:var(--ink)}.brand-link:focus-visible{outline:2px solid var(--amber);outline-offset:-2px}footer{margin-top:2.5rem;font-family:var(--mono);font-size:.6875rem;letter-spacing:.05em;color:var(--warm-gray)}.empty{margin-top:2rem;color:var(--warm-gray);font-size:.9375rem}
