:root{--color-bg: #121212;--color-surface: #1e1e26;--color-accent: #32CD32;--color-accent-blue: #1E90FF;--color-accent-2: #FF00FF;--color-muted: #bdbdbd;--color-text: #eaeaea;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--card-min-width: 180px;--radius-sm: 6px;--shadow-hard: 4px 4px 0px #000;--ease-snappy: .16s ease;--ease-glow: .72s ease;--font-heading: "Archivo Expanded", "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;--font-body: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, "Roboto Mono", "Courier New", monospace}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-reduced-motion: reduce){:root{--ease-snappy: 0ms}*{transition-duration:0ms!important;animation-duration:0ms!important}}.site-header{display:flex;align-items:center;justify-content:space-between;padding:2px var(--space-3);background:#ffffff08;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow-hard)}.logo{font-family:var(--font-heading);letter-spacing:1px;font-size:1.25rem;flex:1 1 auto;display:flex;align-items:center;margin:0}.logo{min-width:0}.logo a{display:block;width:100%;overflow:hidden}.logo img{display:block;height:50px;max-height:50px;width:auto;max-width:100%;object-fit:contain}.logo{padding-right:4px}@media (max-width:420px){.logo img{height:40px;max-height:40px}.logo{font-size:1rem}.logo{padding-right:4px}}.cart-btn .cart-icon{vertical-align:middle;width:30px;height:30px;margin-right:6px;display:inline-block}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min-width),1fr));gap:var(--space-3);padding:var(--space-3)}.listing-controls{padding:0 var(--space-3) var(--space-2);display:flex;flex-direction:column;gap:12px}.search-row{display:flex;align-items:center}.search-row input[type=search]{width:100%;padding:10px 12px;border-radius:8px;border:2px solid rgba(255,255,255,.04);background:#ffffff05;color:var(--color-text)}.category-pills{display:flex;gap:8px;flex-wrap:wrap}.pill{padding:3px 5px;border-radius:999px;background:#ffffff03;border:2px solid rgba(255,255,255,.03);cursor:pointer;color:var(--color-text);font-size:13px;font-family:var(--font-mono);font-weight:700;text-transform:capitalize}.pill.is-active{background:var(--color-accent);color:#000;border-color:#00000040;box-shadow:4px 4px #00000073;transform:translateY(-2px)}.rarity-badge{display:inline-block;padding:6px 8px;border-radius:4px;font-size:12px;font-family:var(--font-mono);margin-left:8px;border:2px solid rgba(0,0,0,.15);transform:rotate(-3deg);box-shadow:4px 4px #000;text-transform:capitalize}.rarity-badge.rarity-common{background:#1e90ff;color:#000;border-color:#00000040}.rarity-badge.rarity-sale,.rarity-badge.rarity-sale-1,.rarity-badge.rarity-sale-2{background:#32cd32;color:#000;border-color:#00000040}.rarity-badge.rarity-get-30-percent-of-2{background:gold;color:#000;border-color:#00000040}.rarity-badge.rarity-buy-3-get-1{background:wheat;color:#000;border:2px solid #8B4666}.rarity-badge.rarity-bargain{background:#fff;color:#000;border:2px solid #000000}.rarity-badge.rarity-rare{background:red;color:#000;border-color:#00000040}.rarity-badge.rarity-uncommon{background:orange;color:#000;border-color:#00000040}.rarity-badge.rarity-for-mom{background:#fff;color:#000;border:2px solid #FFB6C1}.rarity-badge.rarity-for-her{background:#ffb6c1;color:#000;border:2px solid #FF0000}.rarity-badge.rarity-for-dad{background:#d4a574;color:#000;border:2px solid #4A6FA5}.rarity-badge.rarity-christmas{background:#32cd32;color:#000;border:2px solid #FF0000}.rarity-badge.rarity-valentines{background:#ffb6c1;color:#000;border:2px solid #FF0000}.rarity-badge.rarity-lgbtq{background:linear-gradient(90deg,red,orange,#ff0,#0f0,#00f,indigo,#8b00ff);color:#000;border-color:#00000040}.rarity-badge.rarity-limited{background:gold;color:#000;border-color:#00000040}.product-card .meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.product-card{position:relative;background:var(--color-surface);padding:var(--space-1);border:2px solid rgba(255,255,255,.04);transform-origin:center;transition:transform var(--ease-snappy),filter var(--ease-snappy);cursor:pointer;border-radius:4px}.product-card:focus{outline:3px solid var(--color-accent)}.product-card:hover{transform:scale(1.05);filter:brightness(1.1)}.product-thumb{width:100%;object-fit:cover;display:block;border-radius:2px}picture.product-image{display:block;width:100%;aspect-ratio:var(--product-image-aspect, 3/2)}.product-image img{width:100%;height:100%;object-fit:contain;border-radius:4px;display:block;margin:0 auto}.product-title{font-size:14px;margin:8px 0 4px}.product-meta{font-family:var(--font-mono);color:var(--color-muted)}.btn{display:inline-block;padding:8px 12px;border-radius:6px;border:none;cursor:pointer}.btn-primary{background:linear-gradient(180deg,var(--color-accent),color-mix(in srgb,var(--color-accent) 70%,black));color:#000;font-weight:700;padding:10px 14px;border-radius:8px;box-shadow:4px 4px #0009,inset 0 -6px 8px #0000001f;border:2px solid rgba(0,0,0,.2);transition:transform var(--ease-snappy),box-shadow var(--ease-snappy)}.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:6px 6px #0009,inset 0 -4px 6px #00000014}.btn-clear{background:linear-gradient(180deg,#ff6b6b,color-mix(in srgb,#ff6b6b 70%,black));color:#000;font-weight:700;padding:10px 14px;border-radius:8px;box-shadow:4px 4px #0009,inset 0 -6px 8px #0000001f;border:2px solid rgba(0,0,0,.2);transition:transform var(--ease-snappy),box-shadow var(--ease-snappy)}.btn-clear:hover{transform:translateY(-2px) scale(1.02);box-shadow:6px 6px #0009,inset 0 -4px 6px #00000014}.order-form .btn-clear{background:linear-gradient(180deg,#ff6b6b,color-mix(in srgb,#ff6b6b 70%,black));color:#000;border-color:#0003}.venmo-link-inline{color:var(--color-accent);font-weight:700;text-decoration:underline}.contact-email{color:#fff;font-weight:600;text-decoration:underline}.btn-clear{font-weight:700}.btn-primary-blue{background:linear-gradient(180deg,var(--color-accent-blue),color-mix(in srgb,var(--color-accent-blue) 70%,black));color:#000;font-weight:700;padding:10px 14px;border-radius:8px;box-shadow:4px 4px #0009,inset 0 -6px 8px #0000001f;border:2px solid rgba(0,0,0,.2);transition:transform var(--ease-snappy),box-shadow var(--ease-snappy)}.btn-primary-blue:hover{transform:translateY(-2px) scale(1.02);box-shadow:6px 6px #0009,inset 0 -4px 6px #00000014}.sr-only{position:absolute;left:-9999px}.site-footer{padding:var(--space-3);text-align:center;color:var(--color-muted)}.product-carousel{position:relative;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);--carousel-image-height: 340px}.carousel-track{display:flex;gap:var(--space-2);overflow:hidden;align-items:center;touch-action:pan-y;-webkit-overflow-scrolling:touch}.carousel-slide{position:relative;min-width:320px;max-width:540px;flex:0 0 auto;display:flex;flex-direction:column;background:var(--color-surface);padding:12px;border-radius:6px;border:2px solid rgba(255,255,255,.03);opacity:.3;transform:scale(.98);transition:opacity var(--ease-snappy),transform var(--ease-snappy)}.carousel-slide.is-active{opacity:1;transform:scale(1)}.carousel-slide-title{position:absolute;top:8px;left:16px;display:inline-flex;align-items:center;gap:8px;font-weight:800;background:#0009;color:var(--color-text);padding:6px 10px;border-radius:4px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-family:"Anton",var(--font-heading);text-transform:uppercase;letter-spacing:.6px}.carousel-image img,.product-image img{height:var(--carousel-image-height);width:auto;max-width:100%;object-fit:contain;border-radius:4px;display:block;margin:0 auto}picture[data-placeholder=true]{position:relative}picture[data-placeholder=true]:before{content:attr(data-title);position:absolute;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:center;padding:8px 12px;background:linear-gradient(180deg,#000000bf,#0006);color:var(--color-text);font-family:var(--font-heading);font-weight:800;text-transform:uppercase;letter-spacing:.6px;border-radius:0 0 6px 6px;pointer-events:none;z-index:2}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:transparent;border:2px solid rgba(255,255,255,.06);color:var(--color-text);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.carousel-arrow[aria-label=Previous]{left:8px}.carousel-arrow[aria-label=Next]{right:8px}.modal-overlay{position:absolute;inset:0 0 auto 0;display:flex;align-items:flex-start;justify-content:center;background:#0009;z-index:1000;padding:var(--space-3) 0}.modal-content{background:var(--color-surface);color:var(--color-text);width:min(980px,95%);border-radius:8px;padding:16px;position:relative;box-shadow:var(--shadow-hard);display:flex;flex-direction:column}.modal-close{position:absolute;right:12px;top:12px;background:transparent;border:none;color:var(--color-text);font-size:18px;cursor:pointer}.modal-body{display:flex;flex-direction:column;gap:16px;align-items:stretch;overflow:visible;flex:1 1 auto;width:100%}.modal-left,.modal-right{width:100%}.modal-image-wrap{width:100%;display:block}.modal-image{display:block;max-width:100%;margin:0 auto}.modal-title{margin:0 0 6px;font-family:var(--font-heading)}.modal-meta{color:var(--color-muted);margin-bottom:8px;font-family:var(--font-mono)}.modal-desc{margin-bottom:12px}.modal-actions{display:flex;gap:10px}.payment-instructions{color:var(--color-muted);font-size:14px;margin:8px 0 12px}.cart-body{display:flex;gap:20px;width:100%}.cart-items{flex:1 1 60%;overflow:visible;width:100%}.cart-summary{flex:0 0 320px;background:#ffffff05;padding:12px;border-radius:8px}.invoice{border-bottom:1px dashed rgba(255,255,255,.04);padding-bottom:12px;margin-bottom:12px}.invoice-row{display:flex;justify-content:space-between;padding:6px 0;font-family:var(--font-mono);color:var(--color-muted)}.invoice-total{display:flex;justify-content:space-between;padding-top:8px;font-weight:800;font-size:1.05rem}.invoice-amount{font-family:var(--font-mono)}.cart-list{display:flex;flex-direction:column;gap:8px;width:100%}.cart-row{display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.02);width:100%;gap:6px}.cart-title{font-size:14px;margin:0;display:flex;align-items:center;gap:8px}.cart-row-controls{display:flex;align-items:center;gap:8px;width:100%;justify-content:space-between}.cart-left-group,.cart-right-group{display:flex;gap:8px;align-items:center}.qty-dropdown{background:#ffffff05;border:1px solid rgba(255,255,255,.06);color:var(--color-text);padding:6px 8px;border-radius:4px;cursor:pointer;font-family:var(--font-mono);font-size:13px}.cart-item-price{font-family:var(--font-mono);color:var(--color-text);margin-left:12px}.cart-item-discount{font-size:12px;color:var(--color-accent);font-weight:600}.cart-item-total{font-weight:700;font-family:var(--font-mono);color:var(--color-text)}.remove-item{background:transparent;border:1px solid rgba(255,0,0,.18);color:#ff8080;padding:4px 8px;border-radius:6px;cursor:pointer;font-size:12px}.form-actions{display:flex;gap:8px;margin-top:12px}.order-form .btn{padding:10px 12px}.order-form .btn-primary{background:linear-gradient(180deg,var(--color-accent),color-mix(in srgb,var(--color-accent) 70%,black));color:#000}.cart-qty{color:var(--color-muted);font-size:13px}.venmo-qr img{display:block;height:auto;margin:0 auto 12px;width:140px;max-width:100%}@media (min-width:900px){.venmo-qr img{width:180px}}@media (max-width:420px){.venmo-qr img{width:120px}}.shipping-info{border:1px solid #ffffff;padding:12px;border-radius:0;background:#ffffff03;margin-bottom:12px}.shipping-info legend{font-weight:700;padding:0 6px;margin-bottom:8px}.shipping-info label{display:block;margin-bottom:8px}.shipping-info input,.shipping-info select,.shipping-info textarea{width:100%;padding:8px 10px;border-radius:6px;border:1px solid #ffffff;background:transparent;color:var(--color-text)}.city-state-zip{display:flex;gap:8px;align-items:flex-start}.city-state-zip label{flex:1}.city-state-zip label:nth-child(2){flex:0 0 120px}.city-state-zip label:nth-child(3){flex:0 0 100px}@media (max-width:600px){.city-state-zip{flex-direction:column}.city-state-zip label{flex:1}}.payment-info{margin-top:10px;border:1px solid #ffffff;padding:12px;border-radius:0;background:#ffffff03}.payment-info legend{font-weight:700;padding:0 6px;margin-bottom:8px;font-size:1rem}.payment-columns{display:flex;gap:12px;align-items:flex-start}.payment-left{flex:0 0 160px;display:flex;flex-direction:column;align-items:center}.payment-right{flex:1}@media (max-width:640px){.payment-columns{flex-direction:column}.payment-left{flex:0 0 auto}}.cart-btn{background:#3b3b3b;color:var(--color-text);border:2px solid #2d2d2d;padding:4px 6px;position:relative;border-radius:var(--radius-sm)}.cart-count{position:absolute;top:6px;left:26px;background:var(--color-accent);color:#000;min-width:18px;height:18px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;font-size:12px;line-height:1;box-shadow:0 2px #00000040;border:2px solid rgba(0,0,0,.12)}.slide-add-cart{position:absolute;right:12px;top:12px;background:var(--color-accent);color:#fff;border:2px solid #fff;width:36px;height:36px;padding:1px;border-radius:999px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--ease-snappy),box-shadow var(--ease-snappy),opacity var(--ease-snappy);z-index:4}.slide-add-cart .cart-icon{width:27px;height:27px;stroke:currentColor;color:#fff}.carousel-slide .rarity-badge{position:absolute;right:12px;bottom:12px;margin-left:0;z-index:3;transform:rotate(-3deg)}.card-add-cart{position:absolute;top:10px;right:10px;background:var(--color-accent);color:#fff;border:2px solid #fff;width:36px;height:36px;padding:1px;border-radius:999px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--ease-snappy),box-shadow var(--ease-snappy),opacity var(--ease-snappy);z-index:2}.card-add-cart .cart-icon{width:27px;height:27px;stroke:currentColor;color:#fff}.card-add-cart:active{transform:scale(.98)}.card-add-cart.flash{transform:scale(1.08);box-shadow:0 0 0 6px #ffffff0f inset}.slide-add-cart:active{transform:scale(.98)}.slide-add-cart.flash{transform:scale(1.08);box-shadow:0 0 0 6px #ffffff14 inset}.card-add-cart .icon-default,.slide-add-cart .icon-default{display:inline-block}.card-add-cart .icon-selected,.slide-add-cart .icon-selected,.product-card.in-cart .card-add-cart .icon-default,.carousel-slide.in-cart .slide-add-cart .icon-default{display:none}.product-card.in-cart .card-add-cart .icon-selected,.carousel-slide.in-cart .slide-add-cart .icon-selected{display:inline-block}.card-add-cart .cart-icon,.slide-add-cart .cart-icon{vertical-align:middle}.product-card.in-cart,.carousel-slide.in-cart{transition:box-shadow var(--ease-glow),transform var(--ease-glow),filter var(--ease-glow);transform:translateY(-2px) scale(1.02);box-shadow:0 24px 48px -18px #ff00ff73,0 8px 20px -12px #ff00ff40;filter:drop-shadow(0 18px 28px rgba(255,0,255,.18));animation:in-cart-pulse var(--ease-glow) forwards}@keyframes in-cart-pulse{0%{box-shadow:0 18px 36px -20px #ff00ff20,0 6px 16px -10px #ff00ff0f;filter:drop-shadow(0 12px 20px rgba(255,0,255,.05));transform:translateY(-2px) scale(1.02)}40%{box-shadow:0 40px 80px -8px #ff00ff6c,0 18px 36px -6px #fff3;filter:drop-shadow(0 28px 44px rgba(255,255,255,.1));transform:translateY(-3px) scale(1.03)}to{box-shadow:0 24px 48px -18px #ff00ff4b,0 8px 20px -12px #ff00ff2a;filter:drop-shadow(0 18px 28px rgba(255,0,255,.117));transform:translateY(-2px) scale(1.02)}}:focus:not(:focus-visible){outline:none}
