@import "https://fonts.googleapis.com/css2?family=Anton&family=Caveat:wght@600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Anton&family=Caveat:wght@400;600&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";html{scroll-behavior:smooth;font-size:16px;overflow-x:clip}body{font-family:var(--font-body);background:var(--color-paper);color:var(--color-ink);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;overflow-x:clip}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;border-radius:4px}::selection{background:var(--color-leaf);color:var(--color-cream)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 clamp(1rem,4vw,2.5rem)}.btn{align-items:center;gap:var(--space-2xs);font-weight:700;font-size:var(--text-sm);letter-spacing:.01em;padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-pill);white-space:nowrap;transition:transform var(--dur-short) var(--ease-out), background var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);display:inline-flex}.btn:active{transform:translateY(1px)}.btn-gold{background:var(--color-gold);color:var(--color-forest-deep);box-shadow:var(--shadow-pill)}.btn-gold:hover{background:var(--color-gold-deep);transform:translateY(-2px)}.btn-dark{background:var(--color-forest-deep);color:var(--color-cream)}.btn-dark:hover{background:var(--color-ink);transform:translateY(-2px)}.btn-ghost{color:var(--color-cream);border:2px solid color-mix(in oklch, var(--color-cream) 55%, transparent);background:0 0}.btn-ghost:hover{background:color-mix(in oklch, var(--color-cream) 14%, transparent)}.topbar{background:var(--color-forest-deep);color:var(--color-cream)}.topbar-row{justify-content:space-between;gap:var(--space-sm);padding-block:var(--space-2xs);font-size:var(--text-xs);font-weight:500;display:flex}.topbar-wa{color:var(--color-gold);font-weight:600}.topbar span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.masthead{z-index:1000;background:color-mix(in oklch, var(--color-paper) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);border-bottom:1px solid #0000;position:sticky;top:0}.masthead.scrolled{border-bottom-color:var(--color-rule);box-shadow:0 4px 18px -12px oklch(30% .07 152/.5)}.masthead-row{justify-content:space-between;align-items:center;gap:var(--space-sm);padding-block:var(--space-xs);display:flex}.brand{align-items:center;gap:var(--space-2xs);min-width:0;display:inline-flex}.brand-emblem{width:2.5rem;height:2.5rem;color:var(--color-cream);background:var(--color-forest);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.brand-emblem svg{width:1.5rem;height:1.5rem}.brand-text{flex-direction:column;min-width:0;line-height:1.05;display:flex}.brand-name{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.03em;color:var(--color-forest)}.brand-name em{font-family:var(--font-script);color:var(--color-leaf);font-size:1.15em;font-style:normal}.brand-sub{letter-spacing:.18em;text-transform:uppercase;color:var(--color-ink-3);font-size:.6rem;font-weight:600}.cart-btn{align-items:center;gap:var(--space-2xs);font-weight:700;font-size:var(--text-sm);color:var(--color-cream);background:var(--color-forest);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);transition:background var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);flex-shrink:0;display:inline-flex;position:relative}.cart-btn:hover{background:var(--color-forest-deep);transform:translateY(-1px)}.cart-badge{font-weight:800;font-size:var(--text-xs);border-radius:var(--radius-pill);background:var(--color-gold);min-width:1.4rem;height:1.4rem;color:var(--color-forest-deep);justify-content:center;align-items:center;padding:0 .3rem;display:inline-flex}.cart-badge.bounce{animation:badgeBounce var(--dur-med) var(--ease-spring)}@keyframes badgeBounce{0%,to{transform:scale(1)}45%{transform:scale(1.35)}}.hero{color:var(--color-cream);background:radial-gradient(120% 120% at 100% 0%, oklch(56% .15 146/.55) 0%, transparent 55%), linear-gradient(160deg, var(--color-forest) 0%, var(--color-forest-deep) 100%);padding:var(--space-2xl) 0 var(--space-3xl);position:relative;overflow:hidden}.hero-grid{z-index:2;gap:var(--space-xl);grid-template-columns:1.25fr .75fr;align-items:center;display:grid;position:relative}.hero-leaf{opacity:.5;filter:saturate(1.3);z-index:1;font-size:3rem;animation:9s ease-in-out infinite drift;position:absolute}.hero-leaf--1{top:12%;right:22%}.hero-leaf--2{font-size:2.2rem;animation-delay:3s;bottom:14%;left:6%}@keyframes drift{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-14px)rotate(10deg)}}.hero-script{font-family:var(--font-script);color:var(--color-gold);margin-bottom:var(--space-2xs);font-size:clamp(1.8rem,4vw,2.75rem);font-weight:700;line-height:1}.hero-title{font-family:var(--font-display);font-size:var(--text-display);letter-spacing:.01em;text-transform:uppercase;overflow-wrap:anywhere;min-width:0;margin-bottom:var(--space-md);line-height:.95}.hero-ribbon{font-weight:700;font-size:var(--text-md);color:var(--color-forest-deep);background:var(--color-gold);padding:var(--space-3xs) var(--space-md);border-radius:var(--radius-pill);margin-bottom:var(--space-md);display:inline-block}.hero-lede{font-size:var(--text-md);color:color-mix(in oklch, var(--color-cream) 88%, var(--color-leaf-bright));max-width:46ch;margin-bottom:var(--space-lg);line-height:1.6}.hero-actions{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.data-source{font-size:var(--text-xs);color:var(--color-gold);font-weight:600;display:none}.hero-emblem{place-items:center;display:grid}.emblem-disc{aspect-ratio:1;border:6px solid var(--color-gold);width:min(78vw,19rem);box-shadow:var(--shadow-soft);background:radial-gradient(circle at 50% 38%,oklch(72% .05 150/.95),oklch(95.5% .02 150));border-radius:50%;position:relative}.emblem-veg{transform:translate(-50%, -50%) rotate(var(--a)) translateY(-6.6rem) rotate(calc(-1 * var(--a)));font-size:clamp(2.2rem,7vw,3.4rem);position:absolute;top:50%;left:50%}.emblem-veg:first-child{--a:0deg}.emblem-veg:nth-child(2){--a:60deg}.emblem-veg:nth-child(3){--a:120deg}.emblem-veg:nth-child(4){--a:180deg}.emblem-veg:nth-child(5){--a:240deg}.emblem-veg:nth-child(6){--a:300deg}.trust{margin-top:calc(-1 * var(--space-xl));z-index:5;position:relative}.trust-grid{gap:var(--space-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.trust-pill{align-items:center;gap:var(--space-xs);text-align:center;padding:var(--space-md) var(--space-sm);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.trust-icon{width:3rem;height:3rem;color:var(--color-forest);background:var(--color-paper-2);border-radius:50%;place-items:center;display:grid}.trust-icon svg{width:1.6rem;height:1.6rem}.trust-pill h3{font-size:var(--text-sm);color:var(--color-ink);font-weight:700;line-height:1.25}.mbg{padding:var(--space-2xl) 0 var(--space-xl)}.mbg-row{align-items:center;gap:var(--space-lg);background:linear-gradient(120deg, var(--color-gold) 0%, var(--color-gold-deep) 100%);padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);flex-wrap:wrap;display:flex}.mbg-badge{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:.04em;color:var(--color-forest-deep);background:var(--color-paper);padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-btn);flex-shrink:0}.mbg-text{min-width:12rem;color:var(--color-forest-deep);flex:1}.mbg-text h2{font-family:var(--font-display);font-size:var(--text-2xl);text-transform:uppercase;letter-spacing:.02em;margin-bottom:var(--space-3xs);line-height:1}.mbg-text p{font-size:var(--text-sm);max-width:48ch;font-weight:500}.catalogue{padding:var(--space-lg) 0 var(--space-3xl)}.section-head{margin-bottom:var(--space-lg)}.section-kicker{font-weight:800;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-leaf);margin-bottom:var(--space-2xs)}.section-kicker.on-dark{color:var(--color-gold)}.section-head h2{font-family:var(--font-display);font-size:var(--text-3xl);text-transform:uppercase;letter-spacing:.01em;color:var(--color-forest);overflow-wrap:anywhere;margin-bottom:var(--space-2xs);line-height:1}.section-sub{font-size:var(--text-md);color:var(--color-ink-2)}.price-disclaimer{align-items:baseline;gap:var(--space-2xs) var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-paper-2);border-radius:var(--radius-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.price-disclaimer .note-tag{font-weight:800;font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-tomato)}.price-disclaimer .text{font-size:var(--text-sm);color:var(--color-ink-2);flex:1;min-width:12ch}.price-disclaimer .date{font-size:var(--text-xs);color:var(--color-ink-3);font-weight:600}.category-filters{gap:var(--space-2xs);margin-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.filter-btn{font-weight:700;font-size:var(--text-sm);color:var(--color-forest);padding:var(--space-3xs) var(--space-md);border:2px solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper);transition:color var(--dur-short) var(--ease-out), background var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out)}.filter-btn:hover{border-color:var(--color-leaf)}.filter-btn.active{background:var(--color-forest);color:var(--color-cream);border-color:var(--color-forest)}.products-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));display:grid}.product-card{text-align:center;min-width:0;padding:var(--space-md) var(--space-sm);background:var(--color-paper);border:1px solid var(--color-rule);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);flex-direction:column;display:flex}.product-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-4px)}.product-emoji{margin-bottom:var(--space-xs);transition:transform var(--dur-short) var(--ease-spring);font-size:3rem;line-height:1}.product-card:hover .product-emoji{transform:scale(1.12)rotate(-4deg)}.product-category{letter-spacing:.1em;text-transform:uppercase;color:var(--color-leaf);background:var(--color-paper-2);padding:2px var(--space-2xs);border-radius:var(--radius-pill);margin-bottom:var(--space-sm);order:-1;align-self:center;font-size:.66rem;font-weight:700}.product-name{font-weight:700;font-size:var(--text-md);color:var(--color-ink);overflow-wrap:anywhere;margin-bottom:var(--space-3xs);line-height:1.2}.product-price{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.02em;color:var(--color-forest)}.product-unit{font-size:var(--text-xs);color:var(--color-ink-3);margin-bottom:var(--space-md)}.add-to-cart-btn{width:100%;font-weight:700;font-size:var(--text-sm);color:var(--color-cream);background:var(--color-forest);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-btn);transition:background var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);margin-top:auto}.add-to-cart-btn:hover{background:var(--color-leaf);transform:translateY(-1px)}.add-to-cart-btn:active{transform:translateY(0)}.add-to-cart-btn.added{background:var(--color-gold);color:var(--color-forest-deep)}.loading-state{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-2xl) 0;color:var(--color-ink-3);grid-column:1/-1;font-weight:600;display:flex}.loading-spinner{border:2px solid var(--color-rule);border-top-color:var(--color-leaf);border-radius:50%;width:1.2rem;height:1.2rem;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.services{background:var(--color-forest-deep)}.services-row{gap:var(--space-sm);padding:var(--space-lg) 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.service{align-items:center;gap:var(--space-2xs);font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.05em;text-transform:uppercase;color:var(--color-cream);flex-direction:column;display:flex}.service+.service{border-left:1px solid color-mix(in oklch, var(--color-cream) 16%, transparent)}.service-icon{color:var(--color-gold)}.service-icon svg{width:2rem;height:2rem}.contact{background:var(--color-forest);color:var(--color-cream);padding:var(--space-2xl) 0}.contact-grid{gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:center;display:grid}.contact-copy h2{font-family:var(--font-display);font-size:var(--text-3xl);text-transform:uppercase;margin-bottom:var(--space-sm);line-height:.98}.contact-lede{font-size:var(--text-md);color:color-mix(in oklch, var(--color-cream) 86%, var(--color-leaf-bright));max-width:44ch}.contact-cards{gap:var(--space-sm);flex-direction:column;display:flex}.contact-card{padding:var(--space-md);background:color-mix(in oklch, var(--color-cream) 10%, transparent);border:1px solid color-mix(in oklch, var(--color-cream) 24%, transparent);border-radius:var(--radius-card);transition:background var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);flex-direction:column;gap:2px;display:flex}a.contact-card:hover{background:color-mix(in oklch, var(--color-cream) 18%, transparent);transform:translateY(-2px)}.contact-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-gold);font-weight:700}.contact-value{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.02em}.cart-overlay{background:color-mix(in oklch, var(--color-forest-deep) 55%, transparent);z-index:2000;opacity:0;visibility:hidden;transition:opacity var(--dur-short) var(--ease-out), visibility var(--dur-short) var(--ease-out);position:fixed;inset:0}.cart-overlay.open{opacity:1;visibility:visible}.cart-drawer{background:var(--color-paper);z-index:2001;width:27rem;max-width:92vw;height:100%;transition:transform var(--dur-med) var(--ease-out);flex-direction:column;display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-16px 0 40px -20px oklch(30% .07 152/.5)}.cart-drawer.open{transform:translate(0)}.cart-drawer-header{padding:var(--space-md);background:var(--color-forest);color:var(--color-cream);justify-content:space-between;align-items:center;display:flex}.cart-drawer-header h3{font-family:var(--font-display);font-size:var(--text-xl);text-transform:uppercase;letter-spacing:.03em}.close-cart-btn{width:2.25rem;height:2.25rem;color:var(--color-cream);border:1px solid color-mix(in oklch, var(--color-cream) 30%, transparent);border-radius:var(--radius-btn);transition:background var(--dur-short) var(--ease-out);justify-content:center;align-items:center;font-size:1rem;display:flex}.close-cart-btn:hover{background:color-mix(in oklch, var(--color-cream) 16%, transparent)}.cart-items{padding:var(--space-2xs) var(--space-md);flex:1;overflow-y:auto}.cart-empty{justify-content:center;align-items:center;gap:var(--space-2xs);height:100%;color:var(--color-ink-3);flex-direction:column;font-weight:600;display:flex}.cart-empty .empty-icon{opacity:.7;font-size:2.5rem}.cart-item{align-items:center;gap:var(--space-sm);padding:var(--space-md) 0;border-bottom:1px solid var(--color-rule);display:flex}.cart-item-emoji{flex-shrink:0;font-size:1.9rem}.cart-item-info{flex:1;min-width:0}.cart-item-name{font-weight:700;font-size:var(--text-md);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.1rem;overflow:hidden}.cart-item-price{font-size:var(--text-xs);color:var(--color-forest);font-weight:600}.cart-item-controls{align-items:center;gap:var(--space-2xs);flex-shrink:0;display:flex}.qty-btn{width:1.9rem;height:1.9rem;font-size:var(--text-md);color:var(--color-forest);border:2px solid var(--color-rule);border-radius:var(--radius-btn);transition:background var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);justify-content:center;align-items:center;font-weight:700;display:flex}.qty-btn:hover{background:var(--color-paper-3);border-color:var(--color-leaf)}.qty-btn.remove:hover{background:var(--color-tomato);color:var(--color-cream);border-color:var(--color-tomato)}.cart-item-qty{text-align:center;min-width:1.5rem;font-weight:800;font-size:var(--text-sm)}.cart-footer{padding:var(--space-md);border-top:1px solid var(--color-rule)}.cart-total-row{margin-bottom:var(--space-md);justify-content:space-between;align-items:baseline;display:flex}.cart-total-label{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-2);font-weight:700}.cart-total-value{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-forest)}.checkout-btn{width:100%;font-weight:700;font-size:var(--text-md);color:var(--color-cream);background:var(--color-wa);padding:var(--space-sm);border-radius:var(--radius-btn);transition:background var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out)}.checkout-btn:hover{background:var(--color-wa-2);transform:translateY(-1px)}.checkout-btn:active{transform:translateY(0)}.checkout-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.footer{background:var(--color-forest-deep);color:var(--color-cream);padding:var(--space-xl) 0 var(--space-lg)}.footer-grid{gap:var(--space-lg) var(--space-xl);grid-template-columns:1.4fr 1fr;align-items:start;display:grid}.footer-brand{font-family:var(--font-display);font-size:var(--text-2xl);text-transform:uppercase;letter-spacing:.03em;color:var(--color-gold);margin-bottom:var(--space-2xs)}.footer-line{font-size:var(--text-sm);color:color-mix(in oklch, var(--color-cream) 82%, var(--color-leaf-bright));max-width:38ch}.footer-links{gap:var(--space-2xs);font-weight:700;font-size:var(--text-sm);flex-direction:column;display:flex}.footer-links a{color:color-mix(in oklch, var(--color-cream) 85%, transparent);width:fit-content;transition:color var(--dur-short) var(--ease-out)}.footer-links a:hover{color:var(--color-gold)}.footer-colophon{padding-top:var(--space-md);border-top:1px solid color-mix(in oklch, var(--color-cream) 18%, transparent);font-size:var(--text-xs);color:color-mix(in oklch, var(--color-cream) 70%, transparent);grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.footer-credit a{color:var(--color-gold);transition:color var(--dur-short) var(--ease-out);font-weight:600}.footer-credit a:hover{color:var(--color-cream)}.fade-in{opacity:0;transition:opacity var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-out);transform:translateY(16px)}.fade-in.visible{opacity:1;transform:translateY(0)}.cart-items::-webkit-scrollbar{width:6px}.cart-items::-webkit-scrollbar-track{background:0 0}.cart-items::-webkit-scrollbar-thumb{background:var(--color-rule);border-radius:3px}.toast{bottom:var(--space-lg);background:var(--color-forest-deep);color:var(--color-cream);padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-pill);font-weight:600;font-size:var(--text-sm);box-shadow:var(--shadow-soft);z-index:5000;opacity:0;transition:opacity var(--dur-short) var(--ease-out), transform var(--dur-short) var(--ease-out);align-items:center;gap:var(--space-2xs);display:flex;position:fixed;left:50%;transform:translate(-50%)translateY(120%)}@media (width<=880px){.hero-grid{grid-template-columns:1fr}.hero-emblem{display:none}.contact-grid{gap:var(--space-lg);grid-template-columns:1fr}.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.topbar-loc{display:none}.masthead-row{padding-block:var(--space-2xs)}.brand-sub{display:none}.mbg-row{padding:var(--space-md);gap:var(--space-md)}.services-row{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr))}.service:nth-child(odd){border-left:none}.service:nth-child(3),.service:nth-child(4){border-top:1px solid color-mix(in oklch, var(--color-cream) 16%, transparent);padding-top:var(--space-md)}.footer-grid{gap:var(--space-md);grid-template-columns:1fr}.products-grid{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr))}.price-disclaimer{gap:var(--space-3xs);flex-direction:column}.price-disclaimer .text{flex:none}.price-disclaimer .date{margin-top:var(--space-3xs)}.footer-links{gap:var(--space-sm);flex-direction:row}.footer-colophon{text-align:center;align-items:center;gap:var(--space-2xs);flex-direction:column}}@media (width<=360px){.trust-grid{grid-template-columns:1fr}}.chat-fab{bottom:var(--space-lg);right:var(--space-lg);z-index:1100;background:var(--color-forest);width:56px;height:56px;color:var(--color-cream);box-shadow:var(--shadow-pill);transition:transform var(--dur-short) var(--ease-spring), background var(--dur-short) var(--ease-out);border:none;border-radius:50%;place-items:center;font-size:1.5rem;display:grid;position:fixed}.chat-fab:hover{transform:scale(1.08)}.chat-fab--open{background:var(--color-ink-3);font-size:1.2rem}.chat-panel{bottom:calc(var(--space-lg) + 70px);right:var(--space-lg);z-index:1100;border-radius:var(--radius-card);width:360px;max-width:calc(100vw - 2rem);height:480px;max-height:calc(100vh - 140px);box-shadow:var(--shadow-soft);animation:slideUp var(--dur-med) var(--ease-out);background:#fff;flex-direction:column;display:flex;position:fixed;overflow:hidden}.chat-header{padding:var(--space-sm) var(--space-md);background:var(--color-forest);color:var(--color-cream);justify-content:space-between;align-items:center;display:flex}.chat-header-title{font-weight:700;font-size:var(--text-sm)}.chat-header-close{color:var(--color-cream);cursor:pointer;opacity:.8;transition:opacity var(--dur-short);background:0 0;border:none;font-size:1.2rem}.chat-header-close:hover{opacity:1}.chat-messages{padding:var(--space-sm);gap:var(--space-xs);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-welcome{background:var(--color-paper-2);color:var(--color-ink-2);font-size:var(--text-sm);padding:var(--space-sm);border-radius:var(--radius-sm);text-align:center}.chat-disclaimer{margin-top:var(--space-2xs);font-size:var(--text-xs);color:var(--color-ink-3);font-style:italic}.chat-empty{gap:var(--space-sm);flex-direction:column;display:flex}.chat-examples{gap:var(--space-2xs);flex-wrap:wrap;justify-content:center;display:flex}.chat-example-btn{padding:var(--space-2xs) var(--space-xs);border:1.5px solid var(--color-rule);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-forest);cursor:pointer;transition:all var(--dur-short) var(--ease-out);background:#fff;font-weight:600}.chat-example-btn:hover{border-color:var(--color-forest);background:var(--color-paper-2)}.chat-bubble{max-width:85%;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-btn);font-size:var(--text-sm);word-wrap:break-word;white-space:pre-wrap;line-height:1.5}.chat-bubble--user{background:var(--color-forest);color:var(--color-cream);border-bottom-right-radius:4px;align-self:flex-end}.chat-bubble--assistant{background:var(--color-paper-2);color:var(--color-ink);border-bottom-left-radius:4px;align-self:flex-start}.chat-typing{padding:var(--space-xs) var(--space-sm);gap:4px;display:flex}.chat-typing span{background:var(--color-ink-3);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite typingDot}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-input-row{gap:var(--space-2xs);padding:var(--space-xs) var(--space-sm);border-top:1px solid var(--color-rule);background:#fff;display:flex}.chat-input{border:1.5px solid var(--color-rule);border-radius:var(--radius-btn);padding:var(--space-2xs) var(--space-xs);font-size:var(--text-sm);font-family:var(--font-body);transition:border-color var(--dur-short) var(--ease-out);flex:1}.chat-input:focus{border-color:var(--color-leaf);outline:none}.chat-send{background:var(--color-forest);width:38px;height:38px;color:var(--color-cream);transition:opacity var(--dur-short);border:none;border-radius:50%;place-items:center;font-size:1rem;display:grid}.chat-send:disabled{opacity:.4;cursor:not-allowed}.chat-send:not(:disabled):hover{background:var(--color-forest-deep)}.chat-bubble--assistant h1,.chat-bubble--assistant h2,.chat-bubble--assistant h3{font-size:var(--text-sm);margin:var(--space-xs) 0 var(--space-3xs);font-weight:700}.chat-bubble--assistant h3{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;color:var(--color-forest)}.chat-bubble--assistant p{margin-bottom:var(--space-2xs)}.chat-bubble--assistant p:last-child{margin-bottom:0}.chat-bubble--assistant ul,.chat-bubble--assistant ol{margin-bottom:var(--space-2xs);padding-left:1.2em}.chat-bubble--assistant li{margin-bottom:var(--space-3xs)}.chat-bubble--assistant strong{font-weight:700}.chat-bubble--assistant code{background:oklch(0% 0 0/.06);border-radius:4px;padding:1px 4px;font-size:.9em}.chat-cart-btn{width:100%;margin-top:var(--space-xs);padding:var(--space-2xs) var(--space-sm);background:var(--color-forest);color:var(--color-cream);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:var(--text-xs);cursor:pointer;transition:background var(--dur-short) var(--ease-out);border:none;font-weight:700;display:block}.chat-cart-btn:hover{background:var(--color-forest-deep)}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.chat-fab{bottom:var(--space-md);right:var(--space-md)}.chat-panel{bottom:calc(var(--space-md) + 70px);right:var(--space-md);width:calc(100vw - 2rem);height:calc(100vh - 160px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.fade-in{opacity:1;transform:none}}.login-screen{min-height:100dvh;padding:var(--space-md);background:var(--color-paper-2);justify-content:center;align-items:center;display:flex}.login-card{border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-xl);text-align:center;background:#fff;width:100%;max-width:380px}.login-logo{margin-bottom:var(--space-xs);font-size:3rem}.login-title{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-forest);margin-bottom:var(--space-3xs)}.login-subtitle{color:var(--color-ink-2);font-size:var(--text-sm);margin-bottom:var(--space-lg)}.login-form{text-align:left}.login-form label{font-size:var(--text-sm);color:var(--color-ink-2);margin-bottom:var(--space-3xs);font-weight:600;display:block}.login-form input{width:100%;padding:var(--space-xs) var(--space-sm);border:1.5px solid var(--color-rule);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:var(--text-md);transition:border-color var(--dur-short) var(--ease-out);margin-bottom:var(--space-sm)}.login-form input:focus{border-color:var(--color-leaf);outline:none;box-shadow:0 0 0 3px oklch(56% .15 146/.15)}.login-error{margin-top:var(--space-sm);color:var(--color-tomato);font-size:var(--text-sm);font-weight:500}.btn{justify-content:center;align-items:center;gap:var(--space-3xs);font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);border-radius:var(--radius-btn);padding:var(--space-xs) var(--space-md);cursor:pointer;transition:all var(--dur-short) var(--ease-out);border:none;display:inline-flex}.btn-sm{padding:var(--space-2xs) var(--space-sm);font-size:var(--text-xs)}.btn-primary{background:var(--color-forest);color:var(--color-cream)}.btn-primary:hover{background:var(--color-forest-deep);box-shadow:var(--shadow-pill)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-full{width:100%}.btn-outline{color:var(--color-forest);border:1.5px solid var(--color-rule);background:0 0}.btn-outline:hover{border-color:var(--color-forest);background:var(--color-paper-2)}.btn-danger{background:var(--color-tomato);color:#fff}.btn-danger:hover{opacity:.85}.btn-icon{padding:var(--space-2xs);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);transition:background var(--dur-short) var(--ease-out);background:0 0;border:none;line-height:1}.btn-icon:hover{background:var(--color-paper-3)}.admin-header{background:var(--color-forest);color:var(--color-cream);padding:var(--space-sm) var(--space-md);z-index:90;position:sticky;top:0}.admin-header-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.admin-brand{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.02em}.admin-header .btn-outline{color:var(--color-cream);border-color:oklch(98% .008 150/.35)}.admin-header .btn-outline:hover{border-color:var(--color-cream);background:oklch(98% .008 150/.1)}.tabs{max-width:var(--max-width);padding:var(--space-sm) var(--space-md) 0;gap:var(--space-2xs);border-bottom:1.5px solid var(--color-rule);margin:0 auto;display:flex}.tab{font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);cursor:pointer;color:var(--color-ink-3);transition:all var(--dur-short) var(--ease-out);background:0 0;border:none;border-bottom:2.5px solid #0000;margin-bottom:-1.5px}.tab:hover{color:var(--color-forest)}.tab.active{color:var(--color-forest);border-bottom-color:var(--color-forest)}.tab-panel{max-width:var(--max-width);padding:var(--space-md);margin:0 auto}.panel-toolbar{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.panel-title{font-size:var(--text-lg);color:var(--color-forest-deep);font-weight:700}.table-wrap{border-radius:var(--radius-card);border:1.5px solid var(--color-rule);background:#fff;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th{text-align:left;padding:var(--space-xs) var(--space-sm);background:var(--color-paper-2);color:var(--color-ink-2);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:1.5px solid var(--color-rule);white-space:nowrap}.data-table td{padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--color-rule);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-paper-2)}.data-table .col-emoji{font-size:var(--text-xl);text-align:center;width:3rem}.data-table .col-actions{white-space:nowrap}.data-table .col-actions .actions-wrap{gap:var(--space-2xs);align-items:center;display:inline-flex}.toggle{cursor:pointer;align-items:center;display:inline-flex;position:relative}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background:var(--color-rule);border-radius:var(--radius-pill);width:40px;height:22px;transition:background var(--dur-short) var(--ease-out);position:relative}.toggle-track:after{content:"";width:16px;height:16px;transition:transform var(--dur-short) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px oklch(0% 0 0/.2)}.toggle input:checked+.toggle-track{background:var(--color-leaf)}.toggle input:checked+.toggle-track:after{transform:translate(18px)}.category-add-row{gap:var(--space-xs);margin-bottom:var(--space-md);display:flex}.category-add-row input{padding:var(--space-2xs) var(--space-sm);border:1.5px solid var(--color-rule);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:var(--text-sm);flex:1}.category-add-row input:focus{border-color:var(--color-leaf);outline:none}.categories-list{border-radius:var(--radius-card);border:1.5px solid var(--color-rule);background:#fff;margin:0;padding:0;list-style:none;overflow:hidden}.categories-list li{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--color-rule);display:flex}.categories-list li:last-child{border-bottom:none}.categories-list li:hover{background:var(--color-paper-2)}.category-order{font-size:var(--text-xs);color:var(--color-ink-3);text-align:center;min-width:2rem}.category-name{flex:1;font-weight:500}.category-name-input{padding:var(--space-3xs) var(--space-2xs);border:1.5px solid var(--color-leaf);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);flex:1}.modal-overlay{z-index:200;padding:var(--space-md);animation:fadeIn var(--dur-short) var(--ease-out);background:oklch(0% 0 0/.45);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-overlay[hidden]{display:none}.modal{border-radius:var(--radius-card);box-shadow:var(--shadow-soft);width:100%;max-width:520px;max-height:90dvh;animation:slideUp var(--dur-med) var(--ease-out);background:#fff;overflow-y:auto}.modal-header{padding:var(--space-md) var(--space-md) var(--space-xs);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:var(--text-lg);color:var(--color-forest-deep);font-weight:700}.modal-close{cursor:pointer;color:var(--color-ink-3);padding:var(--space-3xs);border-radius:var(--radius-sm);transition:background var(--dur-short) var(--ease-out);background:0 0;border:none;font-size:1.75rem;line-height:1}.modal-close:hover{background:var(--color-paper-3)}.product-form{padding:var(--space-sm) var(--space-md) var(--space-md)}.form-row{gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.form-group{gap:var(--space-3xs);flex-direction:column;display:flex}.form-group-grow{flex:1}.form-group label{font-size:var(--text-xs);color:var(--color-ink-2);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.form-group input,.form-group select{padding:var(--space-2xs) var(--space-xs);border:1.5px solid var(--color-rule);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:var(--text-sm);transition:border-color var(--dur-short) var(--ease-out)}.form-group input:focus,.form-group select:focus{border-color:var(--color-leaf);outline:none;box-shadow:0 0 0 3px oklch(56% .15 146/.12)}.form-actions{justify-content:flex-end;gap:var(--space-xs);margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-rule);display:flex}.toast{bottom:var(--space-lg);right:var(--space-lg);background:var(--color-forest);color:var(--color-cream);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-btn);font-size:var(--text-sm);box-shadow:var(--shadow-soft);opacity:0;transition:all var(--dur-med) var(--ease-out);z-index:300;max-width:340px;font-weight:500;position:fixed;transform:translateY(120%)}.toast.show{opacity:1;transform:translateY(0)}.toast.toast-error{background:var(--color-tomato)}.empty-state{text-align:center;padding:var(--space-xl);color:var(--color-ink-3);font-size:var(--text-sm)}.loading-state{text-align:center;padding:var(--space-xl);color:var(--color-ink-3);font-size:var(--text-sm);animation:1.2s ease-in-out infinite pulse}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (width<=640px){.form-row{gap:var(--space-xs);flex-direction:column}.data-table{font-size:var(--text-xs)}.data-table th,.data-table td{padding:var(--space-2xs) var(--space-xs)}.panel-toolbar{align-items:flex-start;gap:var(--space-xs);flex-direction:column}.toast{right:var(--space-sm);left:var(--space-sm);bottom:var(--space-sm);max-width:none}.modal{max-height:95dvh}.login-card{padding:var(--space-lg)}}:root{--color-paper:oklch(98.5% .008 150);--color-paper-2:oklch(95.5% .02 150);--color-paper-3:oklch(92.5% .03 148);--color-forest-deep:oklch(30% .07 152);--color-forest:oklch(38% .085 151);--color-leaf:oklch(56% .15 146);--color-leaf-bright:oklch(66% .17 142);--color-ink:oklch(27% .035 152);--color-ink-2:oklch(43% .03 150);--color-ink-3:oklch(52% .028 150);--color-cream:oklch(98% .008 150);--color-gold:oklch(81% .14 88);--color-gold-deep:oklch(74% .145 82);--color-tomato:oklch(60% .19 30);--color-rule:oklch(88% .02 150);--color-wa:oklch(52% .12 158);--color-wa-2:oklch(57% .12 158);--color-focus:oklch(56% .2 28);--font-display:"Anton", "Arial Narrow", sans-serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--font-script:"Caveat", "Segoe Script", cursive;--text-xs:.78rem;--text-sm:.875rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.75rem;--text-display-s:clamp(2.25rem, 6vw, 3.5rem);--text-display:clamp(2.75rem, 8.5vw, 5.75rem);--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4.5rem;--space-3xl:7rem;--radius-card:18px;--radius-btn:12px;--radius-sm:10px;--radius-pill:999px;--shadow-soft:0 12px 32px -12px oklch(38% .085 151/.32);--shadow-pill:0 8px 22px -10px oklch(38% .085 151/.4);--shadow-card:0 6px 18px -10px oklch(30% .07 152/.28);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.4, .5, 1);--dur-short:.2s;--dur-med:.36s;--max-width:1180px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-paper);-webkit-font-smoothing:antialiased;line-height:1.5}img,svg{max-width:100%;display:block}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}input,select,textarea{font:inherit}
