:root{--st-bg:#f4f2ee;--st-bg-warm:#efe9e0;--st-surface:#ffffff;--st-surface-2:#faf9f6;--st-border:#e8e4dc;--st-border-2:#ded9cf;--st-ink:#1b1a17;--st-muted:#6c6960;--st-soft:#9b978c;--st-accent:#ef5a2a;--st-accent-2:#f59331;--st-accent-dark:#d6481c;--st-accent-grad:linear-gradient(135deg, #ff7a3d 0%, #ef5a2a 100%);--st-accent-soft:rgba(239, 90, 42, 0.08);--st-success:#1f9d57;--st-danger:#d6492f;--st-radius-xl:24px;--st-radius:16px;--st-radius-sm:11px;--st-shadow-sm:0 1px 2px rgba(28,26,22,.05),0 1px 3px rgba(28,26,22,.05);--st-shadow:0 6px 18px rgba(28,26,22,.07),0 2px 6px rgba(28,26,22,.05);--st-shadow-lg:0 18px 48px rgba(28,26,22,.13);--st-shadow-accent:0 8px 22px rgba(239,90,42,.30);--st-ring:0 0 0 3px rgba(239,90,42,.18)}body.dark-mode{--st-bg:#111110;--st-bg-warm:#1a1917;--st-surface:#1e1d1b;--st-surface-2:#252320;--st-border:#2e2c28;--st-border-2:#3a3830;--st-ink:#f0ece4;--st-muted:#8a8278;--st-soft:#5a5650;--st-accent-dark:#ff6b3d;--st-accent-soft:rgba(239, 90, 42, 0.12);--st-shadow-sm:0 1px 2px rgba(0,0,0,.25),0 1px 3px rgba(0,0,0,.2);--st-shadow:0 6px 18px rgba(0,0,0,.35),0 2px 6px rgba(0,0,0,.25);--st-shadow-lg:0 18px 48px rgba(0,0,0,.55)}body.store-body{background:var(--st-bg)}.store-main{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--st-ink);line-height:1.6;-webkit-font-smoothing:antialiased}.store-main *,.store-main ::after,.store-main ::before{box-sizing:border-box}.store-main h1,.store-main h2,.store-main h3,.store-main h4{font-family:Fraunces,Georgia,serif;font-weight:600;line-height:1.12;letter-spacing:-.01em;margin:0}.store-main p{margin:0}.store-main img{max-width:100%;display:block}.store-main a{text-decoration:none}.store-main button,.store-main input,.store-main select,.store-main textarea{font-family:inherit}.store-shell{width:100%;max-width:1180px;margin:0 auto;padding:0 1.5rem}.store-hero{position:relative;overflow:hidden;text-align:center;padding:4.5rem 0 3.75rem;background:radial-gradient(1200px 420px at 50% -12%,rgba(245,147,49,.18),transparent 62%),radial-gradient(760px 360px at 12% 4%,rgba(239,90,42,.09),transparent 60%),radial-gradient(760px 360px at 88% 4%,rgba(245,147,49,.09),transparent 60%),var(--st-bg)}.store-hero-inner{max-width:900px;margin:0 auto}.store-eyebrow{display:inline-flex;align-items:center;gap:.5rem;padding:.42rem .9rem;border-radius:99px;background:var(--st-surface);border:1px solid var(--st-border);box-shadow:var(--st-shadow-sm);font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--st-accent-dark);margin-bottom:1.35rem}.store-eyebrow i{font-size:.85rem}.store-hero h1{font-size:clamp(2.6rem, 6vw, 4.25rem);margin-bottom:1.1rem}.store-hero h1 .accent{color:var(--st-accent)}.store-hero p{font-size:clamp(1.05rem, 1.7vw, 1.25rem);color:var(--st-muted);max-width:620px;margin:0 auto}.store-hero-trust{display:flex;flex-wrap:wrap;gap:1.75rem;margin-top:2.25rem;justify-content:center}.trust-item{display:flex;align-items:center;gap:.55rem;font-size:.92rem;color:var(--st-muted);font-weight:500}.trust-item i{color:var(--st-accent);font-size:1.05rem}.store-section{padding:3rem 0 5rem}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.75rem;flex-wrap:wrap}.section-head h2{font-size:clamp(1.5rem, 3vw, 2rem)}.section-head p{color:var(--st-muted);font-size:.95rem}#category-filters{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:2rem}.filter-btn{padding:.55rem 1.15rem;border-radius:99px;border:1px solid var(--st-border-2);background:var(--st-surface);color:var(--st-muted);font-size:.88rem;font-weight:600;cursor:pointer;transition:.18s}.filter-btn:hover{border-color:var(--st-accent);color:var(--st-accent-dark)}.filter-btn.active{background:var(--st-ink);border-color:var(--st-ink);color:#fff}#supplies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.6rem}.product-card{position:relative;background:var(--st-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--st-shadow-sm);transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s,border-color .22s}.product-card:hover{transform:translateY(-4px);box-shadow:var(--st-shadow-lg);border-color:var(--st-border-2)}.product-card.in-cart{border-color:rgba(239,90,42,.45);box-shadow:0 0 0 1px rgba(239,90,42,.25),var(--st-shadow)}.product-image-wrap{position:relative;aspect-ratio:4/3;background:var(--st-surface-2);overflow:hidden}.product-image{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-card:hover .product-image{transform:scale(1.04)}.product-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--st-soft);font-size:3rem}.in-cart-badge{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:.35rem;background:rgba(31,157,87,.95);color:#fff;font-size:.73rem;font-weight:700;padding:.3rem .65rem;border-radius:99px;backdrop-filter:blur(4px)}.product-info{padding:1.15rem 1.2rem 1.3rem;display:flex;flex-direction:column;flex:1}.product-category{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--st-accent);margin-bottom:.45rem}.product-name{font-size:1.15rem;font-weight:600;color:var(--st-ink);margin-bottom:.4rem}.product-desc{font-size:.88rem;color:var(--st-muted);line-height:1.55;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-footer{margin-top:auto}.variation-select{width:100%;padding:.6rem 2.2rem .6rem .8rem;margin-bottom:.85rem;background:var(--st-surface-2);border:1px solid var(--st-border-2);border-radius:var(--st-radius-sm);color:var(--st-ink);font-size:.9rem;font-weight:500;cursor:pointer;transition:border-color .18s,box-shadow .18s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236c6960' stroke-width='3'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center}.variation-select:focus{outline:0;border-color:var(--st-accent);box-shadow:var(--st-ring)}.product-price-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.product-price{font-size:1.35rem;font-weight:700;color:var(--st-ink);font-family:Fraunces,serif;letter-spacing:-.01em}.add-to-cart-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.65rem 1.1rem;border:none;border-radius:99px;background:var(--st-accent-grad);color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;box-shadow:var(--st-shadow-accent);transition:transform .16s,filter .16s;white-space:nowrap}.add-to-cart-btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.add-to-cart-btn:active{transform:translateY(0)}.add-to-cart-btn.added{background:var(--st-success);box-shadow:0 8px 22px rgba(31,157,87,.3)}.skeleton{pointer-events:none}.skeleton-img{aspect-ratio:4/3}.skeleton-img,.skeleton-line{background:linear-gradient(100deg,var(--st-border) 30%,var(--st-surface-2) 50%,var(--st-border) 70%);background-size:200% 100%;animation:1.3s linear infinite st-shimmer}.skeleton .product-info{padding:1.15rem 1.2rem 1.3rem}.skeleton-line{height:13px;border-radius:6px;margin-bottom:.7rem}.skeleton-line.w60{width:55%}.skeleton-line.w80{width:78%}.skeleton-line.w100{width:100%}@keyframes st-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.store-empty{grid-column:1/-1;text-align:center;padding:5rem 2rem;color:var(--st-muted);background:var(--st-surface);border:1px dashed var(--st-border-2);border-radius:var(--st-radius)}.store-empty i{font-size:2.75rem;color:var(--st-soft);margin-bottom:1rem;display:block}.store-empty p{font-size:1rem}.store-empty a{color:var(--st-accent-dark);font-weight:600}#cart-nudge{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9000;display:flex;align-items:center;gap:.7rem;background:var(--st-ink);color:#fff;padding:.85rem 1.15rem;border-radius:99px;box-shadow:var(--st-shadow-lg);font-size:.9rem;font-weight:500;transform:translateY(150%);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s;pointer-events:none}#cart-nudge.show{transform:translateY(0);opacity:1;pointer-events:auto}#cart-nudge i{color:var(--st-accent-2)}#cart-nudge a{margin-left:.25rem;padding:.35rem .8rem;border-radius:99px;background:var(--st-accent-grad);color:#fff;font-weight:700;font-size:.82rem}.store-pageintro{padding:2.75rem 0 .5rem}.store-pageintro .crumbs{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--st-soft);margin-bottom:.65rem}.store-pageintro .crumbs a{color:var(--st-soft)}.store-pageintro .crumbs a:hover{color:var(--st-accent-dark)}.store-pageintro .crumbs i{font-size:.6rem}.store-pageintro h1{font-size:clamp(1.9rem, 4vw, 2.7rem)}.cart-layout{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start;padding-top:1.5rem}@media (max-width:860px){.cart-layout{grid-template-columns:1fr}}.cart-items-card{background:var(--st-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);box-shadow:var(--st-shadow-sm);overflow:hidden}.cart-item{display:grid;grid-template-columns:76px 1fr auto auto auto;gap:1.1rem;align-items:center;padding:1.1rem 1.3rem;border-bottom:1px solid var(--st-border)}.cart-item:last-child{border-bottom:none}@media (max-width:560px){.cart-item{grid-template-columns:64px 1fr auto;grid-template-areas:"img info remove" "img qty sub";row-gap:.8rem}.cart-item-img{grid-area:img}.cart-item-info{grid-area:info}.cart-item-qty{grid-area:qty}.cart-item-subtotal{grid-area:sub;justify-self:end}.cart-remove-btn{grid-area:remove;justify-self:end}}.cart-item-img img,.cart-item-img-placeholder{width:76px;height:76px;border-radius:var(--st-radius-sm);object-fit:cover;background:var(--st-surface-2)}.cart-item-img-placeholder{display:flex;align-items:center;justify-content:center;color:var(--st-soft);font-size:1.5rem}.cart-item-name{font-weight:600;font-size:.98rem;color:var(--st-ink)}.cart-item-var{font-weight:400;color:var(--st-muted)}.cart-item-price{font-size:.85rem;color:var(--st-soft);margin-top:.25rem}.cart-item-qty{display:inline-flex;align-items:center;gap:.25rem;background:var(--st-surface-2);border:1px solid var(--st-border-2);border-radius:99px;padding:.2rem}.qty-btn{width:30px;height:30px;border-radius:99px;border:none;background:0 0;color:var(--st-ink);font-size:1.15rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.qty-btn:hover{background:var(--st-bg-warm);color:var(--st-accent-dark)}.qty-val{min-width:26px;text-align:center;font-weight:700;font-size:.92rem}.cart-item-subtotal{font-weight:700;font-size:1rem;color:var(--st-ink);font-family:Fraunces,serif}.cart-remove-btn{background:0 0;border:none;color:var(--st-soft);font-size:1.05rem;cursor:pointer;padding:.4rem;border-radius:8px;transition:color .15s,background .15s}.cart-remove-btn:hover{color:var(--st-danger);background:rgba(214,73,47,.08)}.summary-card{background:var(--st-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);box-shadow:var(--st-shadow);padding:1.5rem;position:sticky;top:92px}.summary-card h3{font-size:1.2rem;margin-bottom:1.1rem}.summary-line{display:flex;justify-content:space-between;align-items:center;padding:.55rem 0;font-size:.92rem;color:var(--st-muted)}.summary-line span:last-child{color:var(--st-ink);font-weight:600}.summary-divider{height:1px;background:var(--st-border);margin:.6rem 0}.summary-line.total{padding-top:.9rem;font-size:1.05rem}.summary-line.total span:first-child{font-weight:700;color:var(--st-ink)}.summary-line.total span:last-child{font-size:1.5rem;font-weight:700;color:var(--st-ink);font-family:Fraunces,serif}.btn-primary{display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;padding:.95rem 1.25rem;margin-top:1.25rem;background:var(--st-accent-grad);color:#fff;border:none;border-radius:99px;cursor:pointer;font-size:1rem;font-weight:700;box-shadow:var(--st-shadow-accent);transition:transform .16s,filter .16s;text-decoration:none}.btn-primary:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.04)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{display:block;text-align:center;margin-top:.85rem;font-size:.88rem;color:var(--st-muted);font-weight:500}.btn-ghost:hover{color:var(--st-accent-dark)}.summary-note{font-size:.78rem;color:var(--st-soft);text-align:center;margin-top:.9rem;line-height:1.5}.summary-secure{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1rem;font-size:.78rem;color:var(--st-muted)}.summary-secure i{color:var(--st-success)}.cart-empty-box{text-align:center;padding:5rem 2rem;background:var(--st-surface);border:1px dashed var(--st-border-2);border-radius:var(--st-radius)}.cart-empty-box .ico{width:80px;height:80px;margin:0 auto 1.25rem;border-radius:50%;background:var(--st-accent-soft);display:flex;align-items:center;justify-content:center;color:var(--st-accent);font-size:2rem}.cart-empty-box h2{font-size:1.5rem;margin-bottom:.5rem}.cart-empty-box p{color:var(--st-muted);margin-bottom:1.75rem}.checkout-layout{display:grid;grid-template-columns:1fr 380px;gap:2rem;align-items:start;padding-top:1.5rem}@media (max-width:920px){.checkout-layout{grid-template-columns:1fr}.checkout-summary{order:-1}}.checkout-card{background:var(--st-surface);border:1px solid var(--st-border);border-radius:var(--st-radius);box-shadow:var(--st-shadow-sm);padding:1.75rem}.checkout-card+.checkout-card{margin-top:1.5rem}.checkout-step-head{display:flex;align-items:center;gap:.75rem;margin-bottom:1.35rem}.checkout-step-num{width:30px;height:30px;border-radius:50%;flex-shrink:0;background:var(--st-accent-soft);color:var(--st-accent-dark);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;font-family:Inter,sans-serif}.checkout-step-head h2{font-size:1.2rem}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}.field-grid.one{grid-template-columns:1fr}@media (max-width:520px){.field-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:.4rem}.field+.field,.field+.field-grid,.field-grid+.field,.field-grid+.field-grid{margin-top:1.1rem}.field-grid>.field+.field{margin-top:0}.field label{font-size:.82rem;font-weight:600;color:var(--st-muted)}.field-error{font-size:.78rem;color:var(--st-danger);margin-top:.35rem;min-height:1em}.field input{padding:.8rem .95rem;background:var(--st-surface-2);border:1px solid var(--st-border-2);border-radius:var(--st-radius-sm);font-size:.95rem;color:var(--st-ink);transition:border-color .18s,box-shadow .18s,background .18s}.field input::placeholder{color:var(--st-soft)}.field input:focus{outline:0;border-color:var(--st-accent);background:var(--st-surface);box-shadow:var(--st-ring)}.pay-note{font-size:.85rem;color:var(--st-muted);margin-bottom:1.1rem;display:flex;align-items:flex-start;gap:.5rem}.pay-note i{color:var(--st-success);margin-top:.15rem}#card-container{min-height:56px;background:var(--st-surface-2);border:1px solid var(--st-border-2);border-radius:var(--st-radius-sm);padding:.25rem .9rem}#checkout-error{display:none;align-items:flex-start;gap:.6rem;padding:.85rem 1.05rem;margin-bottom:1.25rem;background:rgba(214,73,47,.07);border:1px solid rgba(214,73,47,.3);border-radius:var(--st-radius-sm);color:var(--st-danger);font-size:.9rem;line-height:1.5}#checkout-error i{margin-top:.15rem}#checkout-submit{width:100%;margin-top:1.5rem;padding:1.05rem;background:var(--st-accent-grad);color:#fff;border:none;border-radius:99px;font-size:1.05rem;font-weight:700;cursor:pointer;box-shadow:var(--st-shadow-accent);display:flex;align-items:center;justify-content:center;gap:.55rem;transition:transform .16s,filter .16s}#checkout-submit:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.04)}#checkout-submit:disabled{opacity:.6;cursor:not-allowed}.checkout-summary .summary-card{top:92px}.co-line{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;font-size:.9rem;color:var(--st-muted)}.co-line em{color:var(--st-soft);font-style:normal}.co-line span:last-child{color:var(--st-ink);font-weight:600;white-space:nowrap}.co-divider{height:1px;background:var(--st-border);margin:.65rem 0}.co-total{display:flex;justify-content:space-between;align-items:center;padding-top:.8rem;font-size:1.05rem}.co-total span:first-child{font-weight:700;color:var(--st-ink)}.co-total span:last-child{font-size:1.5rem;font-weight:700;color:var(--st-ink);font-family:Fraunces,serif}.co-items-mini{margin-bottom:1rem}.co-mini-item{display:flex;gap:.8rem;align-items:center;padding:.55rem 0}.co-mini-item img,.co-mini-ph{width:48px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0;background:var(--st-surface-2)}.co-mini-ph{display:flex;align-items:center;justify-content:center;color:var(--st-soft)}.co-mini-info{flex:1;min-width:0}.co-mini-name{font-size:.86rem;font-weight:600;color:var(--st-ink);line-height:1.3}.co-mini-meta{font-size:.76rem;color:var(--st-soft)}.co-mini-price{font-size:.88rem;font-weight:700;color:var(--st-ink);white-space:nowrap}#checkout-success{display:none;text-align:center;max-width:540px;margin:1rem auto 0;background:var(--st-surface);border:1px solid var(--st-border);border-radius:var(--st-radius-xl);box-shadow:var(--st-shadow);padding:3.5rem 2rem}#checkout-success .success-ring{width:88px;height:88px;margin:0 auto 1.5rem;border-radius:50%;background:rgba(31,157,87,.1);display:flex;align-items:center;justify-content:center;color:var(--st-success);font-size:2.6rem;animation:.4s cubic-bezier(.2,.9,.3,1.3) st-pop}@keyframes st-pop{0%{transform:scale(.5);opacity:0}100%{transform:scale(1);opacity:1}}#checkout-success h2{font-size:1.9rem;margin-bottom:.6rem}#checkout-success>p{color:var(--st-muted)}#checkout-success .order-meta{margin-top:.75rem;font-size:.88rem;color:var(--st-soft)}#receipt-link{display:none;margin-top:1.5rem;padding:.8rem 1.6rem;border-radius:99px;background:var(--st-ink);color:#fff;font-weight:600}.success-actions{margin-top:1.75rem;display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.success-actions .btn-outline{padding:.8rem 1.6rem;border-radius:99px;border:1.5px solid var(--st-border-2);color:var(--st-ink);font-weight:600;transition:border-color .18s,color .18s}.success-actions .btn-outline:hover{border-color:var(--st-accent);color:var(--st-accent-dark)}