.splash{text-align:center;color:var(--cream);max-width:420px;width:100%;position:relative}.splash-logo-img{display:block;max-width:240px;width:100%;height:auto;object-fit:contain;margin:0 auto 2rem}.splash-subtitle{font-size:1rem;font-weight:300;line-height:1.75;color:#f5edd8d1;margin-bottom:2.5rem;max-width:360px;margin-left:auto;margin-right:auto}.splash-error{font-size:.82rem;color:var(--amber-light);background:#c97c221a;border:1px solid rgba(201,124,34,.25);border-radius:var(--radius-sm);padding:.65rem 1rem;margin-bottom:1.25rem}.payment-element-wrap{width:100%}.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--forest-deep);position:relative;overflow:hidden}.auth-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 65% 35%,rgba(201,124,34,.09) 0%,transparent 55%);pointer-events:none}.auth-logo{display:block;max-width:180px;width:100%;height:auto;object-fit:contain;margin:0 auto 1.5rem}.form-card{position:relative;background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:2.25rem 2rem;max-width:480px;width:100%;box-shadow:var(--shadow-lg)}.form-card-header{margin-bottom:1.75rem}.form-card-header h1{font-size:1.5rem;font-weight:500;color:var(--charcoal)}.form-card-header p{font-size:.875rem;color:var(--text-muted);margin-top:.3rem;font-weight:300;line-height:1.55}.field{margin-bottom:1.1rem}.field label{display:block;font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem}.field label .required{color:var(--amber);margin-left:2px}.field input,.field select{width:100%;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.65rem .875rem;font-size:.95rem;font-weight:300;color:var(--charcoal);outline:none;background:var(--cream);transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus{border-color:var(--amber);box-shadow:0 0 0 3px #c97c2226}.field.has-error input,.field.has-error select{border-color:#c0392b}.field-error{font-size:.75rem;color:#c0392b;margin-top:.3rem;letter-spacing:.02em}.password-wrap{position:relative}.password-wrap input{padding-right:3.5rem}.toggle-pw{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;padding:.25rem;font-size:.65rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);line-height:1;cursor:pointer;transition:color .15s}.toggle-pw:hover{color:var(--amber)}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem .5rem}.checkbox-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--charcoal);cursor:pointer;font-weight:400;padding:.25rem .5rem}.checkbox-item input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--amber);cursor:pointer;flex-shrink:0;margin:0}.slot-list{display:flex;flex-direction:column;gap:.4rem}.slot-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:400;color:var(--charcoal);cursor:pointer;padding:.5rem .75rem;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);background:var(--cream);transition:border-color .12s,background .12s}.slot-item:hover{border-color:var(--amber);background:#c97c220d}.slot-item input[type=radio]{accent-color:var(--amber);cursor:pointer;flex-shrink:0}.slot-item.selected{border-color:var(--amber);background:#c97c220f}.global-error{background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.875rem;color:#8b1a1a;margin-bottom:1.1rem;line-height:1.5}.global-success{background:#1b3a2a0f;border:1px solid rgba(27,58,42,.2);border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.875rem;color:var(--forest);margin-bottom:1.1rem;font-weight:400}.btn-primary{display:inline-block;background:var(--amber);color:var(--forest-deep);font-family:var(--font-body);font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.9rem 2.5rem;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--amber-light)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-submit{width:100%;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.875rem;border:none;border-radius:var(--radius-sm);margin-top:1.25rem;cursor:pointer;transition:background .15s}.btn-submit:hover:not(:disabled){background:var(--amber-light)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.text-link{background:none;border:none;padding:0;color:var(--amber);font-size:.875rem;font-weight:500;text-decoration:underline;text-decoration-color:#c97c2259;cursor:pointer;transition:color .15s}.text-link:hover{color:var(--amber-light)}.auth-bottom-text{margin-top:1.25rem;font-size:.82rem;color:var(--text-muted);text-align:center;font-weight:300}.auth-link{color:var(--amber);font-weight:500;text-decoration:none;transition:color .15s}.auth-link:hover{color:var(--amber-light)}.forgot-wrap{text-align:right;margin-top:-.5rem;margin-bottom:.5rem}@media (max-width: 480px){.form-card{padding:1.75rem 1.25rem}}.cart-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11261980;z-index:100}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(100vw,420px);background:var(--white);z-index:101;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.cart-header{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.375rem;border-bottom:1px solid var(--cream-dark);flex-shrink:0;background:var(--forest-deep)}.cart-title{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:1.1rem;color:var(--cream);letter-spacing:.01em}.cart-close{background:none;border:1px solid rgba(245,237,216,.2);border-radius:var(--radius-sm);font-size:1rem;color:#f5edd8a6;cursor:pointer;padding:.25rem .5rem;line-height:1;transition:border-color .15s,color .15s}.cart-close:hover{color:var(--cream);border-color:#f5edd873}.cart-body{flex:1;overflow-y:auto;padding:1.125rem 1.375rem}.cart-empty{text-align:center;color:var(--text-faint);padding:3rem 0;font-size:.9rem}.cart-error{background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);color:#8b1a1a;font-size:.85rem;padding:.75rem;margin-bottom:1rem;line-height:1.5}.cart-items{display:flex;flex-direction:column}.cart-item{display:grid;grid-template-columns:1fr auto auto;column-gap:.75rem;row-gap:.35rem;padding:.925rem 0;border-bottom:1px solid var(--cream-mid);align-items:center}.cart-item:last-child{border-bottom:none}.cart-item-info{grid-column:1 / -1}.cart-item-name{font-size:.875rem;font-weight:500;color:var(--charcoal);margin:0;line-height:1.3}.cart-item-unit{font-size:.72rem;color:var(--text-faint);margin:.1rem 0 0;letter-spacing:.04em}.cart-item-controls{grid-column:1;display:flex;align-items:center;gap:.35rem}.qty-btn{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);font-size:1rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--charcoal);transition:background .12s,border-color .12s;flex-shrink:0}.qty-btn:hover:not(:disabled){background:var(--cream);border-color:var(--amber)}.qty-btn:disabled{opacity:.3;cursor:not-allowed}.qty-value{min-width:24px;text-align:center;font-size:.9rem;font-weight:600;color:var(--charcoal)}.cart-item-remove{background:none;border:none;font-size:.7rem;color:var(--cream-dark);cursor:pointer;padding:.2rem .35rem;line-height:1;transition:color .15s;margin-left:.15rem}.cart-item-remove:hover{color:#c0392b}.cart-item-subtotal{grid-column:3;font-family:var(--font-display);font-size:.925rem;font-weight:700;color:var(--charcoal);margin:0;white-space:nowrap;align-self:center;letter-spacing:-.01em}.confirm-items{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.25rem}.confirm-item{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.confirm-item-desc{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.confirm-item-name{font-size:.875rem;font-weight:500;color:var(--charcoal)}.confirm-item-qty{font-size:.78rem;color:var(--text-faint)}.confirm-item-subtotal{font-family:var(--font-display);font-size:.925rem;font-weight:700;color:var(--charcoal);white-space:nowrap;letter-spacing:-.01em}.confirm-note{font-size:.78rem;color:var(--text-muted);line-height:1.6;background:#c97c2212;border:1px solid rgba(201,124,34,.18);border-radius:var(--radius-sm);padding:.75rem}.cart-footer{flex-shrink:0;padding:1rem 1.375rem 1.25rem;border-top:1px solid var(--cream-dark);background:var(--white)}.cart-total{display:flex;justify-content:space-between;font-size:.82rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.875rem;align-items:baseline}.cart-total span:last-child{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--charcoal);letter-spacing:-.02em;text-transform:none}.btn-checkout{width:100%;padding:.85rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-checkout:hover:not(:disabled){background:var(--amber-light)}.btn-checkout:disabled{background:var(--cream-dark);color:var(--text-faint);cursor:not-allowed}.confirm-actions{display:grid;grid-template-columns:1fr 2fr;gap:.75rem}.btn-back{padding:.75rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:var(--text-muted);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s,border-color .15s}.btn-back:hover:not(:disabled){background:var(--cream);border-color:var(--amber)}.btn-back:disabled{opacity:.5;cursor:not-allowed}.btn-place-order{padding:.75rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-place-order:hover:not(:disabled){background:var(--amber-light)}.btn-place-order:disabled{opacity:.6;cursor:not-allowed}.pay-choice{border:none;margin:0 0 .875rem;padding:0;display:flex;flex-direction:column;gap:.4rem}.pay-choice-legend{font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:0;margin-bottom:.15rem}.pay-option{display:flex;align-items:center;gap:.55rem;padding:.6rem .7rem;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);font-size:.82rem;color:var(--charcoal);cursor:pointer;transition:border-color .12s,background .12s}.pay-option--active{border-color:var(--amber);background:#c97c220f}.pay-option input{accent-color:var(--amber);flex-shrink:0}.cart-new-card{margin-bottom:.875rem}.pay-preparing{font-size:.82rem;color:var(--text-muted);text-align:center;padding:.75rem 0}.donation{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--cream-mid)}.donation-label{font-size:.85rem;font-weight:500;color:var(--charcoal);margin:0 0 .6rem;line-height:1.4}.donation-presets{display:flex;flex-wrap:wrap;gap:.4rem}.donation-preset{padding:.45rem .85rem;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);background:var(--white);color:var(--charcoal);font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .12s,background .12s}.donation-preset:hover{border-color:var(--amber)}.donation-preset--active{border-color:var(--amber);background:var(--amber);color:var(--forest-deep)}.donation-clear{padding:.45rem .7rem;border:none;background:none;color:var(--text-muted);font-size:.78rem;text-decoration:underline;cursor:pointer;margin-left:auto}.donation-custom{margin-top:.55rem;width:100%;padding:.6rem .7rem;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);font-size:.9rem;color:var(--charcoal);background:var(--cream)}.donation-custom:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c97c2226}.cart-donation-line{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-muted);margin-bottom:.4rem}.ch-header{background:var(--forest-deep);border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:20}.ch-inner{display:flex;align-items:center;gap:1.5rem;height:56px;max-width:1280px;margin:0 auto;padding:0 1.25rem}.ch-logo-link{display:flex;align-items:center;flex-shrink:0}.ch-logo{max-height:36px;width:auto;display:block}.ch-nav{display:flex;align-items:center;gap:1.5rem}.ch-nav-link{position:relative;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#f5edd8a6;text-decoration:none;padding:.25rem 0;transition:color .15s}.ch-nav-link:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1.5px;background:var(--amber);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.ch-nav-link:hover{color:var(--cream)}.ch-nav-link:hover:after,.ch-nav-link--active:after{transform:scaleX(1)}.ch-nav-link--active{color:var(--cream)}.ch-right{display:flex;align-items:center;gap:.75rem;margin-left:auto}.ch-cart{position:relative;background:transparent;border:1px solid rgba(245,237,216,.25);border-radius:var(--radius-sm);padding:.45rem .6rem;cursor:pointer;color:#f5edd8cc;display:flex;align-items:center;transition:border-color .15s,color .15s,background .15s}.ch-cart:hover{border-color:var(--amber);color:var(--cream);background:#c97c221f}.ch-cart-icon{width:20px;height:20px}.ch-cart-badge{position:absolute;top:-5px;right:-5px;background:var(--amber);color:var(--forest-deep);font-size:.6rem;font-weight:700;min-width:16px;height:16px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;border:2px solid var(--forest-deep)}.ch-signin{font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#f5edd8cc;text-decoration:none;border:1px solid rgba(245,237,216,.25);border-radius:var(--radius-sm);padding:.4rem .8rem;transition:border-color .15s,color .15s}.ch-signin:hover{border-color:var(--amber);color:var(--cream)}.ch-user{position:relative}.ch-user-trigger{width:34px;height:34px;padding:0;background:transparent;border:1px solid rgba(245,237,216,.25);border-radius:var(--radius-full);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s}.ch-user-trigger:hover{border-color:var(--amber)}.ch-user-avatar{font-size:.8rem;font-weight:600;color:var(--cream);text-transform:uppercase}.ch-user-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:210px;background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:.5rem;z-index:30}.ch-user-email{font-size:.78rem;color:var(--text-muted);padding:.4rem .5rem;margin:0 0 .25rem;border-bottom:1px solid var(--cream-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-user-signout{display:block;width:100%;text-align:left;background:transparent;border:none;padding:.55rem .5rem;font-size:.82rem;color:var(--charcoal);cursor:pointer;border-radius:var(--radius-sm);transition:background .12s,color .12s}.ch-user-signout:hover{background:var(--cream);color:#c0392b}.ch-user-signout:disabled{opacity:.5;cursor:not-allowed}.ch-burger{display:none;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;background:transparent;border:1px solid rgba(245,237,216,.25);border-radius:var(--radius-sm);cursor:pointer}.ch-burger-bar{display:block;width:18px;height:2px;background:var(--cream);margin:0 auto}.ch-mobile{display:flex;flex-direction:column;background:var(--forest);border-top:1px solid rgba(255,255,255,.08);padding:.25rem 1.25rem 1rem}.ch-mobile-link{padding:.75rem 0;font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#f5edd8d1;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.06)}.ch-mobile-link.active{color:var(--amber)}.ch-mobile-divider{height:.25rem}.ch-mobile-email{font-size:.74rem;color:#f5edd880;padding:.6rem 0 .2rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-mobile-signout{text-align:left;background:transparent;border:none;color:var(--amber);padding:.6rem 0;font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.ch-mobile-signout:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 767px){.ch-nav,.ch-user,.ch-signin{display:none}.ch-burger{display:flex}}.shop-banner{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap;padding:.55rem 1.25rem;font-size:.78rem;font-weight:500;letter-spacing:.04em;text-align:center}.shop-banner--neutral{background:var(--cream-mid);color:var(--text-muted);border-bottom:1px solid var(--cream-dark)}.shop-banner--open{background:var(--forest);color:#f5edd8e6;border-bottom:1px solid var(--forest-deep)}.shop-banner--market{background:var(--charcoal);color:#f5edd8e6;border-bottom:1px solid #111}.shop-banner-badges{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.badge{display:inline-flex;align-items:center;border-radius:var(--radius-full);padding:.12rem .55rem;font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.badge--closed{background:#00000026;color:inherit;border:1px solid rgba(0,0,0,.18)}.shop-banner--open .badge--closed,.shop-banner--market .badge--closed{background:#ffffff26;border-color:#ffffff40;color:#f5edd8d9}.badge--market{background:var(--amber);color:var(--forest-deep);border:1px solid var(--amber-light)}.pm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#112619b3;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.25rem}.pm-panel{position:relative;background:var(--cream);border-radius:var(--radius-md);width:100%;max-width:720px;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden}.pm-close{position:absolute;top:.75rem;right:.75rem;z-index:2;background:#f5edd8eb;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--charcoal);cursor:pointer;transition:background .15s,border-color .15s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pm-close:hover{background:var(--cream-mid);border-color:var(--charcoal)}.pm-scroll{overflow-y:auto;flex:1;overscroll-behavior:contain}.pm-image-wrap{width:100%;aspect-ratio:16 / 9;overflow:hidden;flex-shrink:0;background:var(--cream-mid)}.pm-image{width:100%;height:100%;object-fit:cover;display:block}.pm-image-placeholder{width:100%;height:100%;background:radial-gradient(ellipse at 25% 35%,rgba(27,58,42,.1) 0%,transparent 55%),radial-gradient(ellipse at 75% 65%,rgba(201,124,34,.07) 0%,transparent 55%),linear-gradient(160deg,var(--cream-dark) 0%,var(--cream-mid) 100%)}.pm-body{padding:1.25rem 1.5rem 1.75rem;display:flex;flex-direction:column;gap:.55rem}.pm-eyebrow{display:block;color:#8a5a00}.pm-title{font-family:var(--font-display);font-size:1.55rem;font-weight:700;color:var(--forest);line-height:1.2;letter-spacing:-.02em;margin:0}.pm-stars{display:inline-flex;align-items:center;gap:.25rem;color:var(--amber);font-size:.9rem}.pm-price{font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--charcoal);letter-spacing:-.02em;margin:0}.pm-qty{font-size:.7rem;color:var(--text-faint);font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin:0}.pm-out-of-stock{font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#c0392b;margin:0}.pm-description{font-size:.9rem;color:var(--text-muted);line-height:1.65;margin:.1rem 0 0}.pm-farmer{font-size:.82rem;color:var(--text-muted);display:flex;align-items:center;flex-wrap:wrap;gap:.15rem}.pm-farmer-link{color:var(--amber);font-weight:500;text-decoration:none;transition:color .15s}.pm-farmer-link:hover{color:var(--amber-light);text-decoration:underline}.pm-reviews{border-top:1px solid var(--cream-dark);padding-top:1rem;margin-top:.25rem}.pm-reviews-heading{font-family:var(--font-body);font-size:.68rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .75rem}.pm-reviews-list{display:flex;flex-direction:column;gap:.75rem}.pm-review{background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.75rem .875rem}.pm-review-header{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem .6rem;margin-bottom:.35rem}.pm-review-author{font-size:.78rem;font-weight:600;color:var(--charcoal)}.pm-review-date{font-size:.67rem;color:var(--text-faint);margin-left:auto}.pm-review-body{font-size:.82rem;color:var(--text-muted);line-height:1.55;margin:0}.pm-show-more{margin-top:.75rem;display:block;background:none;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.45rem .875rem;font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s}.pm-show-more:hover{border-color:var(--amber);color:var(--amber)}.pm-add-btn{margin-top:.25rem;padding:.75rem 1.25rem;background:var(--amber);color:var(--forest-deep);border:none;border-radius:var(--radius-sm);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .15s;width:100%}.pm-add-btn:hover{background:var(--amber-light)}.pm-loading{font-size:.82rem;color:var(--text-faint);font-style:italic;margin:0}.pm-error{font-size:.82rem;color:#c0392b;margin:0}@media (max-width: 767px){.pm-backdrop{padding:0}.pm-panel{max-width:100%;max-height:100dvh;height:100dvh;border-radius:0}.pm-title{font-size:1.3rem}.pm-body{padding:1rem 1.25rem 2rem}}.shop-page{min-height:100dvh;background:var(--cream);display:flex;flex-direction:column}.shop-tabs{display:flex;background:var(--white);border-bottom:1px solid var(--cream-dark);padding:0 1.25rem}.shop-tab{padding:.8rem 1rem;background:none;border:none;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;position:relative;transition:color .15s}.shop-tab:hover{color:var(--charcoal)}.shop-tab--active{color:var(--charcoal);font-weight:600}.shop-tab--active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--amber)}.shop-content{flex:1;padding:1.5rem 1.25rem;width:100%;max-width:1280px;margin:0 auto}@media (min-width: 640px){.shop-content{padding:2rem 1.75rem}}@media (min-width: 1024px){.shop-content{padding:2.5rem 4rem}}.category-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem}.filter-pill{padding:.4rem .95rem;border-radius:var(--radius-full);border:1px solid var(--charcoal);background:transparent;font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--charcoal);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.filter-pill:not(.filter-pill--active):hover{border-color:var(--forest);color:var(--forest)}.filter-pill--active{background:var(--forest);color:var(--cream);border-color:var(--forest);font-weight:600}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}@media (min-width: 768px){.product-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}@media (min-width: 1024px){.product-grid{grid-template-columns:repeat(4,1fr);gap:2rem}}.product-card{background:var(--white);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--cream-dark);display:flex;flex-direction:column;transition:box-shadow .18s ease,transform .18s ease}.product-card:hover{box-shadow:0 4px 16px #0000000f;transform:translateY(-1px)}.product-card--oos{opacity:.5}.product-card-trigger{flex:1;display:flex;flex-direction:column;cursor:pointer;-webkit-tap-highlight-color:transparent}.product-card-trigger:focus-visible{outline:2px solid var(--amber);outline-offset:-2px}.product-img-wrap{position:relative;aspect-ratio:4 / 3;overflow:hidden;flex-shrink:0}.product-img{width:100%;height:100%;object-fit:cover}.product-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--forest);background:linear-gradient(160deg,var(--cream) 0%,var(--cream-dark) 100%)}.product-img-placeholder svg{width:34px;height:34px;opacity:.28}.product-tag{position:absolute;border-radius:var(--radius-sm);padding:.18rem .45rem;font-size:.6rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.product-tag--oos{top:.6rem;left:.6rem;background:#1c1c1ab8;color:var(--cream);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.product-tag--workshop{top:.6rem;right:.6rem;background:var(--amber);color:var(--forest-deep)}.product-body{padding:.875rem 1rem .5rem;display:flex;flex-direction:column;gap:.3rem}.product-category{font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;font-weight:500;color:var(--amber)}.product-name{font-family:var(--font-display);font-size:1.25rem;font-weight:500;color:var(--charcoal);line-height:1.25;margin:0}.product-farmer{font-family:var(--font-body);font-size:.85rem;font-style:italic;color:var(--text-muted);margin:0}.product-farmer-link{color:var(--amber);text-decoration:none;font-weight:500;transition:color .15s}.product-farmer-link:hover{color:var(--amber-light)}.product-rating{display:flex;align-items:center;gap:.2rem;font-size:.78rem;color:var(--amber)}.rating-val{color:var(--text-faint);font-size:.7rem;font-weight:500}.product-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:auto;padding:.4rem 1rem .95rem}.product-price-group{display:flex;flex-direction:column;gap:.15rem}.product-price{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--forest);letter-spacing:-.01em;line-height:1}.product-qty{font-size:.7rem;color:var(--text-muted);font-weight:500;letter-spacing:.1em;text-transform:uppercase}.btn-cart{flex-shrink:0;padding:.45rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--amber);background:transparent;color:var(--amber);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.btn-cart:hover{background:var(--amber);color:var(--forest-deep)}.btn-cart--workshop{border-color:var(--forest);color:var(--forest)}.btn-cart--workshop:hover{background:var(--forest);color:var(--cream)}.shop-status{text-align:center;padding:3.5rem 1rem;color:var(--text-muted);font-size:.95rem}.shop-status--error{color:#c0392b}.market-off-season{background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--radius-md);padding:2.5rem 1.5rem;color:var(--text-muted);font-size:.95rem;line-height:1.7;text-align:center;margin-top:1rem}.dashboard-page{min-height:100dvh;background:var(--cream);display:flex;flex-direction:column}.dashboard-title{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:1.75rem;color:var(--forest-deep);letter-spacing:-.01em;line-height:1;margin:0 0 1.25rem}.dashboard-content{flex:1;padding:1.25rem 1rem;max-width:720px;width:100%;margin:0 auto}@media (min-width: 640px){.dashboard-content{padding:1.5rem}}.order-placed-banner{background:#1b3a2a12;border:1px solid rgba(27,58,42,.2);border-radius:var(--radius-sm);color:var(--forest);padding:.875rem 1rem;font-size:.875rem;font-weight:500;margin-bottom:1.5rem}section+section{margin-top:2rem}.section-heading{font-family:var(--font-body);font-size:.65rem;text-transform:uppercase;letter-spacing:.2em;font-weight:500;color:#8a5a00;margin-bottom:.875rem}.section-empty{color:var(--text-faint);font-size:.9rem;padding:.5rem 0}.dashboard-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 0}.dashboard-status--error{color:#c0392b}.order-list{display:flex;flex-direction:column;gap:1rem}.order-card{background:var(--white);border-radius:var(--radius-md);padding:1rem 1.25rem;border:1px solid var(--cream-dark)}.order-card--ready{border-color:var(--amber);box-shadow:0 2px 12px #c97c221f}.order-card-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:.875rem}.order-card-meta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.order-date{font-size:.75rem;color:var(--text-faint);letter-spacing:.02em}.pickup-slot{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--amber);font-weight:500;background:#c97c2214;border:1px solid rgba(201,124,34,.2);border-radius:var(--radius-sm);padding:.3rem .65rem}.pickup-icon{width:13px;height:13px;flex-shrink:0}.status-badge{display:inline-flex;align-items:center;border-radius:var(--radius-full);padding:.15rem .55rem;font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.order-items{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--cream-mid)}.order-item-row{display:grid;grid-template-columns:1fr auto auto;gap:.5rem .75rem;align-items:baseline}.order-item-name{font-size:.875rem;color:var(--charcoal);font-weight:400}.order-item-qty{font-size:.72rem;color:var(--text-faint);text-align:right;letter-spacing:.02em}.order-item-subtotal{font-size:.875rem;color:var(--charcoal);font-weight:500;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.order-footer{display:flex;justify-content:space-between;align-items:baseline}.order-total-label{font-size:.62rem;color:var(--text-faint);font-weight:500;text-transform:uppercase;letter-spacing:.12em}.order-total{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--charcoal);letter-spacing:-.02em}.order-cancel-zone{margin-top:.875rem;padding-top:.875rem;border-top:1px solid var(--cream-mid)}.btn-cancel-request{background:none;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.35rem .85rem;font-size:.68rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);cursor:pointer;transition:border-color .15s,color .15s}.btn-cancel-request:hover{border-color:#c0392b;color:#c0392b}.cancel-form{display:flex;flex-direction:column;gap:.5rem}.cancel-label{font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.cancel-textarea{border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.6rem .75rem;font:inherit;font-size:.875rem;font-weight:300;resize:vertical;background:var(--cream);color:var(--charcoal);transition:border-color .15s,box-shadow .15s}.cancel-textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c97c2226}.cancel-actions{display:flex;gap:.5rem;justify-content:flex-end}.btn-cancel-back{background:none;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.38rem .85rem;font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:background .15s}.btn-cancel-back:hover:not(:disabled){background:var(--cream-mid)}.btn-cancel-back:disabled{opacity:.5;cursor:not-allowed}.btn-cancel-submit{border:none;border-radius:var(--radius-sm);padding:.38rem .85rem;font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;background:#c0392b;color:#fff;cursor:pointer;transition:background .15s}.btn-cancel-submit:hover:not(:disabled){background:#a93226}.btn-cancel-submit:disabled{opacity:.5;cursor:not-allowed}.cancel-error{font-size:.78rem;color:#c0392b;margin:0}.cancel-done{font-size:.82rem;color:var(--forest);font-style:italic;margin:0}.pm-section{margin-top:2.5rem}.pm-error{font-size:.82rem;color:#c0392b;margin:0 0 .75rem}.pm-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);background:var(--white)}.pm-card-info{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}.pm-brand{font-weight:600;color:var(--charcoal);text-transform:capitalize}.pm-dots{font-family:var(--font-display);letter-spacing:.08em;color:var(--charcoal)}.pm-exp{font-size:.78rem;color:var(--text-faint)}.pm-remove{padding:.5rem .9rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:#c0392b;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s,border-color .15s;flex-shrink:0}.pm-remove:hover:not(:disabled){background:#c0392b0f;border-color:#c0392b59}.pm-remove:disabled{opacity:.5;cursor:not-allowed}.admin-shell{display:flex;min-height:100dvh;background:var(--cream)}.admin-nav{width:210px;flex-shrink:0;background:var(--green-deep);display:flex;flex-direction:column;padding:0;position:sticky;top:0;height:100dvh;overflow-y:auto}.admin-nav-brand{padding:1.375rem 1.375rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.07)}.admin-logo{max-width:140px;width:100%;height:auto;object-fit:contain;display:block}.admin-nav-list{list-style:none;flex:1;padding:.625rem 0;margin:0}.admin-nav-list li{margin:0}.admin-nav-link{display:flex;align-items:center;padding:.6rem 1.375rem;font-size:.845rem;font-weight:500;color:#c8dcc5cc;text-decoration:none;border-left:2px solid transparent;transition:color .15s,background .15s,border-color .15s;letter-spacing:.01em}.admin-nav-link:hover{color:#fff;background:#ffffff12}.admin-nav-link--active{color:#fff;background:#ffffff1a;border-left-color:var(--amber);font-weight:600}.admin-nav-viewsite{margin:0 1.375rem .5rem;font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#c8dcc58c;text-decoration:none;transition:color .15s}.admin-nav-viewsite:hover{color:var(--amber)}.admin-nav-logout{margin:0 1.375rem 1.25rem;background:none;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);padding:.5rem .875rem;font-size:.8rem;font-weight:500;color:#c8dcc5b3;cursor:pointer;text-align:left;transition:background .15s,color .15s,border-color .15s;letter-spacing:.01em}.admin-nav-logout:hover:not(:disabled){background:#ffffff14;color:#fff;border-color:#fff3}.admin-nav-logout:disabled{opacity:.4;cursor:not-allowed}.admin-main{flex:1;min-width:0;overflow-x:auto}.admin-mobile-topbar,.admin-overlay{display:none}@media (max-width: 767px){.admin-shell{flex-direction:column}.admin-nav{display:none}.admin-mobile-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 1rem;height:52px;background:var(--green-deep);border-bottom:1px solid rgba(255,255,255,.07);position:sticky;top:0;z-index:20;flex-shrink:0}.admin-logo--mobile{max-width:100px}.admin-burger{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.4rem;border-radius:var(--radius-sm);transition:background .15s}.admin-burger:hover{background:#ffffff1a}.burger-bar{display:block;width:22px;height:2px;background:var(--cream);border-radius:1px}.admin-overlay{display:flex;align-items:center;justify-content:center;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:color-mix(in srgb,var(--forest-deep) 97%,transparent);cursor:pointer}.admin-overlay-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#c8dcc5b3;font-size:1.25rem;line-height:1;cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:color .15s,background .15s}.admin-overlay-close:hover{color:#fff;background:#ffffff1a}.admin-overlay-panel{display:flex;flex-direction:column;align-items:center;cursor:default}.admin-overlay-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:.1rem}.admin-overlay-link{display:block;font-family:var(--font-display);font-size:2rem;font-style:italic;font-weight:300;letter-spacing:-.01em;color:#c8dcc5cc;text-decoration:none;padding:.3rem 1.25rem;text-align:center;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.admin-overlay-link:hover{color:#fff}.admin-overlay-link--active{color:#fff;border-bottom-color:var(--amber)}.admin-overlay-viewsite{margin-top:2.5rem;font-size:.85rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#c8dcc5b3;text-decoration:none;transition:color .15s}.admin-overlay-viewsite:hover{color:var(--amber)}.admin-overlay-logout{margin-top:1rem;background:none;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-sm);padding:.6rem 2.25rem;font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#c8dcc5b3;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.admin-overlay-logout:hover:not(:disabled){background:#ffffff14;color:#fff;border-color:#ffffff4d}.admin-overlay-logout:disabled{opacity:.4;cursor:not-allowed}}.iu-root{display:flex;flex-direction:column;gap:.5rem}.iu-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;padding:1.75rem 1rem;border:1.5px dashed var(--cream-dark, #c5b99a);border-radius:var(--radius-sm, 4px);background:var(--cream, #faf7f2);color:var(--charcoal, #3d3830);cursor:pointer;transition:border-color .15s,background .15s;text-align:center;-webkit-user-select:none;user-select:none}.iu-drop:hover,.iu-drop:focus-visible{border-color:var(--amber, #c8872a);background:#fdf9f3;outline:none}.iu-drop:focus-visible{box-shadow:0 0 0 2px var(--amber, #c8872a)}.iu-drop--busy{cursor:default;pointer-events:none}.iu-drop-icon{color:var(--charcoal-light, #7a7064);line-height:1}.iu-drop-label{font-size:.875rem;font-weight:500;color:var(--charcoal, #3d3830)}.iu-drop-hint{font-size:.75rem;color:var(--charcoal-light, #7a7064)}.iu-drop-progress{display:flex;flex-direction:column;align-items:center;gap:.625rem;width:100%;padding:0 .5rem}.iu-drop-status{font-size:.8125rem;color:var(--charcoal-light, #7a7064)}.iu-bar-track{width:100%;height:4px;background:var(--cream-dark, #c5b99a);border-radius:9999px;overflow:hidden}.iu-bar-fill{height:100%;background:var(--amber, #c8872a);border-radius:9999px;transition:width .1s ease}.iu-preview{display:flex;flex-direction:column;gap:.625rem}.iu-preview-img-wrap{position:relative;border-radius:var(--radius-sm, 4px);overflow:hidden;background:var(--cream-dark, #c5b99a);max-height:220px;display:flex;align-items:center;justify-content:center}.iu-preview-img{width:100%;max-height:220px;object-fit:cover;display:block}.iu-preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#1126198c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1rem}.iu-preview-overlay .iu-bar-track{width:80%;background:#ffffff4d}.iu-preview-overlay span{font-size:.8125rem;color:#ffffffe6}.iu-preview-actions{display:flex;gap:.5rem}.iu-btn{padding:.375rem .875rem;font-size:.8125rem;font-weight:500;border-radius:var(--radius-sm, 4px);border:1.5px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,color .15s,opacity .15s}.iu-btn:disabled{opacity:.5;cursor:default}.iu-btn--replace{background:var(--amber, #c8872a);border-color:var(--amber, #c8872a);color:#fff}.iu-btn--replace:hover:not(:disabled){background:#b37624;border-color:#b37624}.iu-btn--remove{background:transparent;border-color:var(--cream-dark, #c5b99a);color:var(--charcoal, #3d3830)}.iu-btn--remove:hover:not(:disabled){border-color:#b04040;color:#b04040}.iu-error{margin:0;font-size:.8125rem;color:#b04040}.iu-hidden-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.inv-page{padding:1.5rem;min-height:100%}.inv-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.inv-title{font-size:1.6rem;font-weight:700;color:var(--charcoal)}.inv-header-actions{display:flex;gap:.6rem;flex-wrap:wrap}.btn-add{padding:.5rem 1rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-archive{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:var(--text-muted);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s,border-color .15s}.btn-archive:hover{border-color:#c0392b;color:#c0392b;background:#c0392b0a}.inv-status{color:var(--text-faint);font-size:.9rem;padding:2rem 0;text-align:center}.inv-status--error{color:#c0392b}.inv-status--success{color:#2a5c3f;font-weight:500}.inv-table-wrap{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--cream-dark)}.inv-table{width:100%;border-collapse:collapse;background:var(--white);font-size:.875rem}.inv-table thead{background:var(--cream-mid);border-bottom:1px solid var(--cream-dark)}.inv-table th{padding:.6rem .9rem;text-align:left;font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);white-space:nowrap}.inv-table td{padding:.7rem .9rem;color:var(--charcoal);border-bottom:1px solid var(--cream-mid);vertical-align:middle}.inv-table tbody tr:last-child td{border-bottom:none}.inv-table tbody tr:hover{background:var(--cream)}.row--archived td{opacity:.5}.cell-name{font-weight:500;color:var(--charcoal);min-width:140px}.cell-num{text-align:right;font-variant-numeric:tabular-nums}.cell-qty--low{color:#c0392b;font-weight:700}.inv-empty{text-align:center;color:var(--text-faint);padding:2rem;font-size:.9rem}.sort-btn{background:none;border:none;font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);cursor:pointer;padding:0;display:flex;align-items:center;gap:.25rem;white-space:nowrap}.sort-btn:hover{color:var(--charcoal)}.type-badge{display:inline-flex;align-items:center;border-radius:var(--radius-sm);padding:.12rem .45rem;font-size:.62rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.type-badge--grocery{background:#1b3a2a14;color:var(--forest)}.type-badge--market{background:#c97c221a;color:var(--amber)}.status-badge{display:inline-flex;align-items:center;border-radius:var(--radius-sm);padding:.12rem .45rem;font-size:.62rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.status-badge--active{background:#1b3a2a14;color:var(--forest)}.status-badge--archived{background:var(--cream-mid);color:var(--text-muted)}.cell-actions{white-space:nowrap;text-align:right}.btn-row-action{background:none;border:none;font-size:.75rem;font-weight:500;color:var(--amber);cursor:pointer;padding:.2rem .4rem;border-radius:var(--radius-sm);transition:background .12s}.btn-row-action:hover{background:#c97c2214}.btn-row-action--restore{color:var(--forest-deep)}.btn-row-action--restore:hover{background:#2a5c3f14}.btn-row-action--restore:disabled{opacity:.5;cursor:not-allowed}.btn-row-action--delete{color:#c0392b;margin-left:.25rem}.btn-row-action--delete:hover{background:#c0392b0f}.form-panel{position:fixed;top:0;right:0;bottom:0;width:min(100vw,460px);background:var(--white);z-index:101;display:flex;flex-direction:column;box-shadow:-4px 0 24px #11261926}.form-panel-body{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:.9rem}.form-submit-error{background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);color:#8b1a1a;font-size:.85rem;padding:.7rem;margin:0}.field label,.form-panel-body label{font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.field input,.field select,.field textarea{border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.55rem .75rem;font:inherit;font-size:.875rem;font-weight:300;color:var(--charcoal);background:var(--cream);transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c97c2226}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:#c0392b}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.field--toggle label{flex-direction:row;align-items:center;gap:.5rem;font-weight:500}.toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--charcoal);cursor:pointer}.form-panel-footer{display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem;margin-top:auto}.dialog-box{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.5rem;max-width:420px;width:100%;box-shadow:var(--shadow-lg)}.btn-dialog-cancel{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:var(--text-muted);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-dialog-cancel:hover:not(:disabled){background:var(--cream-mid)}.btn-dialog-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-dialog-confirm{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-dialog-confirm:hover:not(:disabled){background:var(--amber-light)}.btn-dialog-confirm:disabled{opacity:.5;cursor:not-allowed}.btn-dialog-confirm--danger{background:#c0392b;color:#fff}.btn-dialog-confirm--danger:hover:not(:disabled){background:#a93226}.oq-page{display:flex;flex-direction:column;height:100dvh;overflow:hidden}.oq-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--cream-mid);background:#fff;flex-shrink:0}.oq-header-left{display:flex;align-items:center;gap:.75rem}.oq-title{font-size:1.6rem;font-weight:700;color:#1a1a1a}.expiry-chip{background:#fff3cd;color:#7d5a00;border:1px solid #ffe08a;border-radius:2rem;padding:.2rem .65rem;font-size:.75rem;font-weight:700;white-space:nowrap}.oq-filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-select,.filter-date{border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.45rem .75rem;font:inherit;font-size:.85rem;color:#1a1a1a;background:#fff;cursor:pointer;transition:border-color .15s}.filter-select:focus,.filter-date:focus{outline:none;border-color:var(--amber)}.filter-week-wrap{display:flex;align-items:center;gap:.25rem}.filter-week-clear{background:none;border:none;font-size:.75rem;color:var(--text-faint);cursor:pointer;padding:.2rem .35rem;border-radius:var(--radius-sm);transition:color .15s}.filter-week-clear:hover{color:#c0392b}.filter-week-label{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.oq-body{display:flex;flex:1;overflow:hidden;position:relative}.oq-list{flex:1;overflow-y:auto;border-right:1px solid var(--cream-mid);min-width:0}.oq-body--split .oq-list{max-width:360px}@media (max-width: 768px){.oq-body--split .oq-list{display:none}}.oq-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 1rem}.oq-status--error{color:#c0392b}.order-row{display:flex;flex-direction:column;gap:.35rem;width:100%;padding:.875rem 1.25rem;background:#fff;border:none;border-bottom:1px solid var(--cream-mid);text-align:left;cursor:pointer;transition:background .12s}.order-row:hover{background:#faf9f7}.order-row--active{background:#f0f7ee;border-left:3px solid var(--green-forest);padding-left:calc(1.25rem - 3px)}.order-row--risk{border-left:3px solid #e8a020;padding-left:calc(1.25rem - 3px)}.order-row--active.order-row--risk{border-left-color:var(--green-forest)}.order-row-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.order-row-name{font-size:.9rem;font-weight:600;color:#1a1a1a}.order-row-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.order-row-date{font-size:.75rem;color:var(--text-faint)}.order-row-total{font-size:.875rem;font-weight:700;color:#1a1a1a;display:flex;align-items:baseline;gap:.4rem}.order-row-original{font-size:.75rem;font-weight:400;color:var(--text-faint);text-decoration:line-through}.order-row-risk-label{font-size:.72rem;font-weight:600;color:#b87a00}.status-badge{display:inline-flex;align-items:center;border-radius:2rem;padding:.18rem .6rem;font-size:.72rem;font-weight:700;letter-spacing:.01em;white-space:nowrap;flex-shrink:0}.status-badge--pending{background:#fef3cd;color:#7d5a00}.status-badge--approved{background:#8b7aa824;color:var(--purple)}.status-badge--ready{background:#1b3a2a14;color:var(--forest)}.status-badge--collected{background:var(--cream-mid);color:var(--text-muted)}.status-badge--cancelled{background:#c0392b14;color:#8b1a1a}.detail-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:100}@media (max-width: 768px){.detail-overlay{display:block}}.detail-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff}@media (max-width: 768px){.detail-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:101;animation:slide-in .25s ease}}@keyframes slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.detail-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--cream-mid);flex-shrink:0}.detail-header-left{display:flex;align-items:center;gap:.6rem}.detail-date{font-size:.78rem;color:var(--text-faint)}.detail-close{background:none;border:none;font-size:1rem;color:var(--text-faint);cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:color .15s,background .15s}.detail-close:hover{color:#1a1a1a;background:var(--cream-mid)}.detail-body{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.expiry-warning{background:#fff3cd;border:1px solid #ffe08a;border-radius:8px;color:#7d5a00;font-size:.875rem;font-weight:500;padding:.75rem 1rem;line-height:1.4}.detail-section{display:flex;flex-direction:column;gap:.4rem}.detail-section-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.detail-section-heading{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:var(--text-faint);margin:0}.detail-consumer-name{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0}.detail-consumer-email{font-size:.85rem;color:var(--text-muted);margin:0}.detail-pickup{font-size:.85rem;color:var(--text-muted);margin:.25rem 0 0}.detail-error{background:#fef0f0;border:1px solid #f5c6c6;border-radius:var(--radius-sm);color:#c0392b;font-size:.85rem;padding:.65rem;margin:0}.items-table{width:100%;border-collapse:collapse;font-size:.85rem}.items-table th{text-align:left;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:0 .5rem .5rem 0;border-bottom:1px solid var(--cream-mid)}.items-table td{padding:.5rem .5rem .5rem 0;color:var(--text);border-bottom:1px solid var(--earth-light);vertical-align:middle}.items-table tbody tr:last-child td{border-bottom:none}.muted{color:var(--text-faint)}.row--adjusted td{background:#fef9ec}.qty-changed{color:#b87a00;font-weight:600}.qty-input{width:60px;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.25rem .4rem;font:inherit;font-size:.85rem;text-align:right;transition:border-color .15s}.qty-input:focus{outline:none;border-color:var(--amber)}.totals-block{margin-top:.5rem;border-top:2px solid var(--cream-mid);padding-top:.75rem;display:flex;flex-direction:column;gap:.3rem}.totals-row{display:flex;justify-content:space-between;align-items:baseline;font-size:.9rem}.totals-row--original{color:var(--text-faint);font-size:.8rem}.totals-row--final{font-size:1rem;font-weight:600;color:#1a1a1a}.totals-row--donation{color:var(--text-muted);font-size:.85rem}.totals-row--charged{font-size:1rem;font-weight:600;color:#1a1a1a;border-top:1px solid var(--cream-dark);margin-top:.35rem;padding-top:.35rem}.strikethrough{text-decoration:line-through}.btn-adjust-toggle{background:none;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.3rem .75rem;font-size:.78rem;font-weight:500;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.btn-adjust-toggle:hover{background:var(--cream-mid);border-color:var(--text-faint)}.adjust-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:.5rem}.btn-adjust-cancel{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:#fff;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-adjust-cancel:hover:not(:disabled){background:var(--cream-mid)}.btn-adjust-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-adjust-save{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-adjust-save:hover:not(:disabled){background:var(--amber-light)}.btn-adjust-save:disabled{opacity:.6;cursor:not-allowed}.order-actions{display:flex;gap:.6rem;flex-wrap:wrap}.btn-cancel-order{padding:.55rem 1.1rem;border-radius:var(--radius-sm);border:1px solid #e0c8c8;background:#fff;color:#c0392b;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.btn-cancel-order:hover:not(:disabled){background:#fde8e8;border-color:#c0392b}.btn-cancel-order:disabled{opacity:.5;cursor:not-allowed}.dialog-box{background:#fff;border-radius:var(--radius-md);padding:1.5rem;max-width:440px;width:100%;box-shadow:0 8px 32px #0000002e}.dialog-title{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0 0 .875rem}.dialog-body{display:flex;flex-direction:column;gap:.6rem;font-size:.875rem;color:var(--text);line-height:1.55;margin-bottom:1.25rem}.approve-note{color:var(--text-muted);font-size:.82rem}.cancel-note-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-muted);margin-top:.25rem}.cancel-note-input{width:100%;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.55rem .75rem;font:inherit;font-size:.875rem;resize:vertical;color:#1a1a1a;transition:border-color .15s}.cancel-note-input:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c97c2226}.btn-dlg-cancel{padding:.55rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:#fff;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.tkts-page{padding:1.5rem;max-width:720px}.tkts-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.5rem}.tkts-title{font-size:1.6rem;font-weight:700;color:var(--charcoal)}.tkts-count{font-size:.82rem;color:var(--text-muted);font-weight:500}.tkts-hint{font-size:.82rem;color:var(--text-muted);line-height:1.55;background:#c97c220f;border:1px solid rgba(201,124,34,.15);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:1.25rem}.tkts-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 0}.tkts-status--error{color:#c0392b}.tkts-empty{text-align:center;padding:3rem 1rem}.tkts-empty p{color:var(--text-muted);font-size:.95rem;margin:0}.tkts-empty-sub{color:var(--text-faint);font-size:.82rem;margin-top:.4rem!important}.tkts-list{display:flex;flex-direction:column;gap:1rem}.ticket-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.ticket-card--aside{background:var(--cream-mid);border-color:var(--cream-dark);flex-direction:row;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.ticket-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.ticket-consumer{display:flex;flex-direction:column;gap:.15rem}.ticket-consumer-name{font-size:1rem;font-weight:600;color:var(--charcoal)}.ticket-consumer-email{font-size:.8rem;color:var(--text-muted)}.ticket-date{font-size:.75rem;color:var(--text-faint);white-space:nowrap;padding-top:.1rem}.ticket-order{display:flex;flex-direction:column;gap:.3rem;background:var(--cream-mid);border-radius:var(--radius-sm);padding:.75rem 1rem}.ticket-order-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.875rem;color:var(--charcoal)}.ticket-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;font-weight:500;color:var(--text-faint);white-space:nowrap}.ticket-total{display:flex;align-items:baseline;gap:.4rem;font-weight:600}.ticket-original{font-size:.78rem;font-weight:400;color:var(--text-faint);text-decoration:line-through}.ticket-reason-block{display:flex;flex-direction:column;gap:.3rem}.ticket-reason{font-size:.875rem;color:var(--charcoal);line-height:1.55;margin:0;background:var(--cream-mid);border-left:2px solid var(--cream-dark);padding:.6rem .85rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-weight:300}.ticket-reason--empty{color:var(--text-faint);font-style:italic;background:none;border-left:none;padding:0}.ticket-error{background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);color:#8b1a1a;font-size:.85rem;padding:.65rem;margin:0}.ticket-actions{display:flex;gap:.6rem;flex-wrap:wrap}.btn-approve{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:#c0392b;color:#fff;font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-approve:hover:not(:disabled){background:#a93226}.btn-set-aside{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:var(--text-muted);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-set-aside:hover:not(:disabled){background:var(--cream-mid)}.btn-set-aside:disabled{opacity:.5;cursor:not-allowed}.aside-note{font-size:.82rem;color:var(--text-muted);line-height:1.5;margin:0;flex:1}.btn-undo{background:none;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.38rem .85rem;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:background .15s;flex-shrink:0}.btn-undo:hover{background:var(--cream-mid)}.dialog-box{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.5rem;max-width:440px;width:100%;box-shadow:var(--shadow-lg)}.dialog-title{font-size:1rem;font-weight:600;color:var(--charcoal);margin:0 0 .875rem}.dialog-body{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;color:var(--charcoal);line-height:1.55;margin-bottom:1.25rem;font-weight:300}.dialog-body p{margin:0}.dialog-note{color:var(--text-muted);font-size:.82rem}.farmers-page{padding:1.5rem}.farmers-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1.5rem}.farmers-title{font-size:1.6rem;font-weight:700;color:var(--charcoal)}.btn-add{padding:.5rem 1rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-add:hover{background:var(--amber-light)}.farmers-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 0}.farmers-status--error{color:#c0392b}.farmers-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 560px){.farmers-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.farmers-grid{grid-template-columns:repeat(3,1fr)}}.farmer-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.1rem;display:flex;flex-direction:column;gap:.75rem;transition:box-shadow .15s}.farmer-card:hover{box-shadow:var(--shadow-sm)}.farmer-card--deleted{opacity:.5;box-shadow:none}.farmer-card-top{display:flex;align-items:center;gap:.75rem}.farmer-avatar{position:relative;width:52px;height:52px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#1b3a2a14}.farmer-avatar img{width:100%;height:100%;object-fit:cover;display:block}.farmer-avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:var(--forest);background:#1b3a2a14}.farmer-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.farmer-name{font-size:1rem;font-weight:600;color:var(--charcoal);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deleted-badge{display:inline-block;background:var(--cream-mid);color:var(--text-muted);font-size:.62rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-sm);padding:.1rem .4rem}.farmer-bio{font-size:.82rem;color:var(--text-muted);line-height:1.55;margin:0;font-weight:300;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.farmer-video-badge{display:flex;align-items:center;gap:.5rem;background:var(--cream-mid);border-radius:var(--radius-sm);overflow:hidden}.video-thumb{width:80px;height:45px;object-fit:cover;flex-shrink:0;display:block}.video-label{font-size:.72rem;font-weight:500;color:var(--text-muted);padding:0 .5rem;letter-spacing:.04em}.farmer-card-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.25rem}.btn-card-edit{flex:1;padding:.4rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:background .12s,border-color .12s}.btn-card-edit:hover{background:var(--cream-mid);border-color:var(--amber)}.btn-card-delete{padding:.4rem .75rem;border-radius:var(--radius-sm);border:1px solid #e8d5d5;background:var(--white);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#c0392b;cursor:pointer;transition:background .12s}.btn-card-delete:hover{background:#c0392b0f}.deleted-section{margin-top:2.5rem}.deleted-heading{font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;font-weight:500;color:var(--text-faint);margin-bottom:.75rem}.panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11261973;z-index:100}.form-panel{position:fixed;top:0;right:0;bottom:0;width:min(100vw,480px);background:var(--white);z-index:101;display:flex;flex-direction:column;box-shadow:-4px 0 24px #11261926}.form-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--cream-dark);flex-shrink:0;background:var(--forest-deep)}.form-panel-title{font-size:.95rem;font-weight:500;color:var(--cream);letter-spacing:.01em}.form-panel-close{background:none;border:1px solid rgba(245,237,216,.2);border-radius:var(--radius-sm);font-size:1rem;color:#f5edd8a6;cursor:pointer;padding:.2rem .45rem;line-height:1;transition:border-color .15s,color .15s}.form-panel-close:hover{color:var(--cream);border-color:#f5edd873}.form-panel-body{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.form-error{background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);color:#8b1a1a;font-size:.85rem;padding:.7rem;margin:0}.field{display:flex;flex-direction:column;gap:.3rem}.field label{font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.req{color:var(--amber)}.field input,.field textarea{border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.55rem .75rem;font:inherit;font-size:.875rem;font-weight:300;color:var(--charcoal);background:var(--cream);transition:border-color .15s,box-shadow .15s}.field textarea{resize:vertical}.field input:focus,.field textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c97c2226}.field.has-error input{border-color:#c0392b}.field-error{font-size:.72rem;color:#c0392b;margin:0}.field-hint{font-size:.72rem;color:var(--text-faint);margin:0}.preview-photo{margin-top:.4rem;border-radius:var(--radius-sm);overflow:hidden;background:var(--cream-mid);width:80px;height:80px}.preview-photo img{width:100%;height:100%;object-fit:cover;display:block}.preview-video{margin-top:.4rem;border-radius:var(--radius-sm);overflow:hidden;background:#000;aspect-ratio:16 / 9}.preview-video iframe{width:100%;height:100%;border:none;display:block}.preview-video-unsupported{font-size:.72rem;color:var(--text-faint);margin:.25rem 0 0;font-style:italic}.form-panel-footer{display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem}.btn-form-cancel{padding:.6rem 1.1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:var(--text-muted);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-form-cancel:hover:not(:disabled){background:var(--cream-mid)}.btn-form-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-form-save{padding:.6rem 1.25rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-form-save:hover:not(:disabled){background:var(--amber-light)}.btn-form-save:disabled{opacity:.6;cursor:not-allowed}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11261980;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.dialog-box{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.5rem;max-width:400px;width:100%;box-shadow:var(--shadow-lg)}.dialog-message{font-size:.9rem;color:var(--charcoal);line-height:1.6;margin:0 0 1.25rem;font-weight:300}.dialog-error{font-size:.82rem;color:#c0392b;margin:-.5rem 0 1rem}.dialog-actions{display:flex;gap:.75rem;justify-content:flex-end}.btn-dlg-cancel{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:var(--white);color:var(--text-muted);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-dlg-cancel:hover:not(:disabled){background:var(--cream-mid)}.btn-dlg-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-dlg-confirm{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-dlg-confirm--danger{background:#c0392b;color:#fff}.btn-dlg-confirm--danger:hover:not(:disabled){background:#a93226}.btn-dlg-confirm:hover:not(:disabled){background:var(--amber-light)}.btn-dlg-confirm:disabled{opacity:.5;cursor:not-allowed}.reviews-page{padding:1.5rem;max-width:720px}.reviews-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1.5rem}.reviews-title{font-size:1.6rem;font-weight:700;color:var(--charcoal)}.reviews-count{font-size:.82rem;color:var(--text-muted);font-weight:500}.reviews-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 0}.reviews-status--error{color:#c0392b}.reviews-empty{text-align:center;color:var(--text-muted);font-size:.95rem;padding:3rem 1rem;margin:0}.reviews-list{display:flex;flex-direction:column;gap:1rem}.review-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.25rem;display:flex;flex-direction:column;gap:.875rem}.review-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.review-meta{display:flex;flex-direction:column;gap:.2rem}.review-product{font-size:1rem;font-weight:600;color:var(--charcoal)}.review-consumer{font-size:.82rem;color:var(--text-muted)}.review-right{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem;flex-shrink:0}.star-rating{display:inline-flex;gap:.05rem}.star{font-size:1.1rem;color:var(--cream-dark)}.star--filled{color:var(--amber)}.review-date{font-size:.75rem;color:var(--text-faint)}.review-body{font-size:.875rem;color:var(--charcoal);line-height:1.6;margin:0;background:var(--cream-mid);border-left:2px solid var(--cream-dark);padding:.65rem .9rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-weight:300}.review-error{background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);color:#8b1a1a;font-size:.85rem;padding:.65rem;margin:0}.review-actions{display:flex;gap:.6rem}.btn-approve{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-approve:hover:not(:disabled){background:var(--amber-light)}.btn-approve:disabled{opacity:.5;cursor:not-allowed}.btn-delete{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid #e8d5d5;background:var(--white);color:#c0392b;font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-delete:hover:not(:disabled){background:#c0392b0f}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.fi-page{min-height:100dvh;background:var(--white)}.fi-breadcrumb{background:var(--forest-deep);border-bottom:1px solid rgba(255,255,255,.06);padding:0 1.5rem}.fi-breadcrumb-list{list-style:none;display:flex;align-items:center;gap:.4rem;height:44px;max-width:1100px;margin:0 auto}.fi-breadcrumb-link{font-size:.75rem;font-weight:500;color:#f5edd8a6;text-decoration:none;letter-spacing:.01em;transition:color .15s}.fi-breadcrumb-link:hover{color:var(--cream)}.fi-breadcrumb-sep{color:#f5edd84d;font-size:.75rem;-webkit-user-select:none;user-select:none}.fi-breadcrumb-current{font-size:.75rem;font-weight:600;color:var(--cream);letter-spacing:.01em}.fi-hero{background:var(--forest-deep);position:relative;overflow:hidden;padding:6rem 3rem 4rem}.fi-hero:before{content:"";position:absolute;top:-30%;right:-5%;width:55%;height:180%;background:radial-gradient(ellipse,rgba(201,124,34,.13) 0%,transparent 65%);pointer-events:none}.fi-hero:after{content:"";position:absolute;bottom:-20%;left:-10%;width:50%;height:120%;background:radial-gradient(ellipse,rgba(27,58,42,.5) 0%,transparent 70%);pointer-events:none}.fi-hero-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:3rem}.fi-hero-text{max-width:480px;flex-shrink:0}.fi-hero-title{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:clamp(2.5rem,5vw,4rem);color:var(--cream);line-height:1.05;letter-spacing:-.03em;margin:.6rem 0 1.25rem}.fi-hero-desc{font-size:1rem;color:#f5edd8c7;line-height:1.75;max-width:520px;margin:0}.fi-hero-collage{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;width:320px;flex-shrink:0}.fi-hero-photo{aspect-ratio:1 / 1;overflow:hidden;border-radius:var(--radius-md);border:4px solid var(--cream);box-shadow:var(--shadow-lg);transition:transform .25s var(--ease)}.fi-hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.fi-hero-photo:nth-child(1){transform:rotate(-2deg)}.fi-hero-photo:nth-child(2){transform:rotate(1.5deg)}.fi-hero-photo:nth-child(3){transform:rotate(1deg)}.fi-hero-photo:nth-child(4){transform:rotate(-1.5deg)}.fi-hero-photo:hover{transform:rotate(0) scale(1.02)}@media (max-width: 767px){.fi-hero-inner{flex-direction:column;align-items:flex-start;gap:2.5rem}.fi-hero-collage{width:100%;max-width:300px}}.fi-band{background:var(--cream);padding:2rem 1.5rem;text-align:center;border-bottom:1px solid rgba(201,124,34,.4)}.fi-band-eyebrow{display:block;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--amber);margin-bottom:.65rem}.fi-band-quote{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:clamp(1.1rem,2.2vw,1.5rem);color:var(--forest);line-height:1.5;max-width:720px;margin:0 auto}.fi-farmers{padding:4rem 1.5rem 5rem;max-width:1200px;margin:0 auto}@media (min-width: 900px){.fi-farmers{padding:5rem 2rem 6rem}}.fi-status{text-align:center;font-size:.9rem;color:var(--text-muted);padding:3rem 0}.fi-status--error{color:#b04040}.fi-status--empty{font-style:italic}.fi-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media (min-width: 768px){.fi-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (min-width: 1024px){.fi-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.fi-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--cream-dark);border-radius:var(--radius-md);overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow-xs);transition:box-shadow .18s var(--ease),transform .18s var(--ease),border-color .18s}.fi-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--cream-mid)}.fi-card:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.fi-card-photo{width:100%;aspect-ratio:4 / 3;overflow:hidden;flex-shrink:0;background:var(--cream-mid);position:relative}.fi-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s var(--ease)}.fi-card:hover .fi-card-img{transform:scale(1.03)}.fi-card-initial{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:clamp(3rem,8vw,5rem);font-weight:300;font-style:italic;color:#fff9;background:radial-gradient(ellipse at 30% 40%,rgba(201,124,34,.18) 0%,transparent 60%),linear-gradient(155deg,var(--forest-deep) 0%,var(--forest-mid) 100%);-webkit-user-select:none;user-select:none}.fi-card-body{padding:1.25rem 1.375rem 1.375rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.fi-card-rule{display:block;width:24px;height:1px;background:var(--amber)}.fi-card-name{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--forest);letter-spacing:-.02em;line-height:1.2;margin:0}.fi-card-bio{font-size:.875rem;color:var(--text-muted);line-height:1.65;margin:0;flex:1}.fi-card-footer{display:flex;flex-direction:column;gap:.25rem;margin-top:.4rem}.fi-card-cta{font-size:.72rem;font-weight:500;color:var(--amber);letter-spacing:.1em;text-transform:uppercase;transition:color .15s}.fi-card:hover .fi-card-cta{color:var(--amber-light)}.fi-card-count{font-size:.72rem;color:var(--text-muted)}@media (max-width: 599px){.fi-hero{padding:3rem 1.25rem 3.5rem}.fi-farmers{padding:2.5rem 1.25rem 4rem}}.settings-page{padding:1.5rem;max-width:560px}.settings-title{font-size:1.6rem;font-weight:700;color:var(--charcoal);margin-bottom:1.5rem}.settings-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 0}.settings-status--error{color:#c0392b}.settings-card{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--cream-dark);padding:1.25rem 1.4rem;margin-bottom:1.25rem}.settings-card-heading{font-size:1rem;font-weight:600;color:var(--charcoal);margin:0 0 .2rem}.settings-card-note{font-size:.8rem;color:var(--text-faint);margin:0 0 1rem}.settings-dl{display:flex;flex-direction:column;gap:.65rem}.settings-dl-row{display:flex;align-items:center;gap:.75rem}.settings-dl-row dt{font-size:.82rem;color:var(--text-muted);width:130px;flex-shrink:0}.settings-dl-row dd{margin:0}.phase-badge{display:inline-block;padding:.2rem .6rem;border-radius:var(--radius-full);background:var(--cream-mid);color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.status-badge{display:inline-block;padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.status-badge--open{background:#1b3a2a14;color:var(--forest)}.status-badge--closed{background:#c0392b14;color:#a93226}.toggle-row{display:flex;align-items:center;gap:.875rem;margin-bottom:1rem}.toggle-label{font-size:.9rem;font-weight:500;color:var(--charcoal);flex:1}.toggle-switch{position:relative;width:44px;height:24px;border-radius:999px;border:none;background:var(--cream-dark);cursor:pointer;padding:0;flex-shrink:0;transition:background .2s}.toggle-switch--on{background:var(--forest)}.toggle-switch:disabled{opacity:.5;cursor:not-allowed}.toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;pointer-events:none}.toggle-switch--on .toggle-thumb{transform:translate(20px)}.toggle-value{font-size:.82rem;color:var(--text-faint);font-weight:500;min-width:54px}.toggle-value--on{color:var(--forest)}.settings-save-row{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.settings-saved-msg{font-size:.82rem;color:var(--forest);font-weight:500}.settings-save-error{font-size:.82rem;color:#c0392b;background:#c0392b0f;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-sm);padding:.5rem .75rem;margin:0 0 .75rem}.btn-save{padding:.5rem 1.4rem;border-radius:var(--radius-sm);border:none;background:var(--amber);color:var(--forest-deep);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-save:hover:not(:disabled){background:var(--amber-light)}.btn-save:disabled{opacity:.5;cursor:not-allowed}.payouts-page{display:flex;flex-direction:column;height:100dvh;overflow:hidden;background:var(--cream)}.payouts-header{display:flex;align-items:center;gap:.875rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--cream-mid);background:#fff;flex-shrink:0}.payouts-title{font-size:1.6rem;font-weight:700;color:#1a1a1a;margin:0}.fee-rate-badge{background:#e8f5e4;color:var(--green-deep);border:1px solid #c3e6bb;border-radius:2rem;padding:.2rem .75rem;font-size:.78rem;font-weight:700;white-space:nowrap;letter-spacing:.01em}.payouts-tabs{display:flex;gap:0;padding:0 1.5rem;border-bottom:1px solid var(--cream-mid);background:#fff;flex-shrink:0}.payouts-tab{padding:.75rem 1.1rem;background:none;border:none;border-bottom:2px solid transparent;font:inherit;font-size:.875rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.payouts-tab:hover{color:#1a1a1a}.payouts-tab--active{color:var(--green-deep);font-weight:600;border-bottom-color:var(--green-forest)}.payouts-content{flex:1;overflow-y:auto}.payouts-tab-pane{max-width:860px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.pane-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pane-week-label{font-size:.82rem;color:var(--text-muted);white-space:nowrap}.history-pick-label{font-size:.85rem;font-weight:500;color:var(--text-muted);white-space:nowrap}.pane-date-wrap{display:flex;align-items:center;gap:.25rem}.pane-date-input{border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.4rem .65rem;font:inherit;font-size:.85rem;color:#1a1a1a;background:#fff;cursor:pointer;transition:border-color .15s}.pane-date-input:focus{outline:none;border-color:var(--green-forest)}.pane-date-clear{background:none;border:none;font-size:.75rem;color:var(--text-faint);cursor:pointer;padding:.2rem .35rem;border-radius:var(--radius-sm);transition:color .15s}.pane-date-clear:hover{color:#c0392b}.btn-refresh{margin-left:auto;padding:.4rem .9rem;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);background:#fff;font:inherit;font-size:.82rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:background .15s,border-color .15s}.btn-refresh:hover:not(:disabled){background:var(--cream-mid);border-color:var(--text-faint)}.btn-refresh:disabled{opacity:.5;cursor:not-allowed}.payouts-status{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 1rem;margin:0}.payouts-status--error{color:#c0392b}.payouts-empty{text-align:center;color:var(--text-faint);font-size:.9rem;padding:2.5rem 1rem;margin:0}.payout-report{display:flex;flex-direction:column;gap:1rem}.platform-summary{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--cream-mid);border-radius:var(--radius-md);padding:.875rem 1.25rem}.platform-summary-label{font-size:.875rem;font-weight:500;color:var(--text-muted)}.platform-summary-total{font-size:1.1rem;font-weight:700;color:var(--green-deep)}.donations-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#c97c2212;border:1px solid rgba(201,124,34,.22);border-radius:var(--radius-md);padding:.875rem 1.25rem}.donations-summary-text{display:flex;flex-direction:column;gap:.15rem}.donations-summary-label{font-size:.875rem;font-weight:600;color:#1a1a1a}.donations-summary-note{font-size:.75rem;color:var(--text-muted)}.donations-summary-total{font-size:1.1rem;font-weight:700;color:#c97c22;white-space:nowrap}.payout-cards{display:flex;flex-direction:column;gap:1rem}.payout-card{background:#fff;border:1px solid var(--cream-mid);border-radius:var(--radius-md);overflow:hidden}.payout-card--paid{border-color:#c3e6bb;background:#fafff9}.payout-card-header{padding:1rem 1.25rem .875rem;border-bottom:1px solid var(--cream-mid);display:flex;flex-direction:column;gap:.6rem}.payout-card-name-row{display:flex;align-items:center;gap:.65rem}.payout-card-name{font-size:1rem;font-weight:700;color:#1a1a1a;margin:0}.paid-badge{display:inline-flex;align-items:center;background:#d4edda;color:#1a5c28;border:1px solid #b8dacc;border-radius:2rem;padding:.15rem .6rem;font-size:.72rem;font-weight:700;letter-spacing:.01em;white-space:nowrap}.payout-card-totals{display:flex;align-items:center;gap:.875rem;flex-wrap:wrap}.totals-pair{display:flex;flex-direction:column;gap:.1rem}.totals-pair--net{margin-left:auto}.totals-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.totals-val{font-size:.9rem;font-weight:600;color:#1a1a1a;font-variant-numeric:tabular-nums}.totals-val--fee{color:var(--text-muted);font-weight:500}.totals-val--net{font-size:1rem;font-weight:700;color:var(--green-deep)}.totals-sep{font-size:.85rem;color:var(--text-faint);align-self:flex-end;padding-bottom:.15rem}.payout-items-table{width:100%;border-collapse:collapse;font-size:.85rem}.payout-items-table th{text-align:left;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:.6rem 1.25rem .5rem;border-bottom:1px solid var(--cream-mid)}.payout-items-table td{padding:.5rem 1.25rem;color:var(--text);border-bottom:1px solid var(--earth-light);vertical-align:middle}.payout-items-table tbody tr:last-child td{border-bottom:none}.col-num{text-align:right;font-variant-numeric:tabular-nums}.payout-card-footer{padding:.875rem 1.25rem;border-top:1px solid var(--cream-mid);display:flex;align-items:flex-start;flex-direction:column;gap:.6rem}.btn-mark-paid{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:var(--green-forest);color:#fff;font:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-mark-paid:hover{background:var(--green-deep)}.mark-paid-form{width:100%;display:flex;flex-direction:column;gap:.6rem}.mark-paid-textarea{width:100%;border:1px solid var(--cream-dark);border-radius:var(--radius-sm);padding:.5rem .75rem;font:inherit;font-size:.875rem;resize:vertical;color:#1a1a1a;box-sizing:border-box;transition:border-color .15s}.mark-paid-textarea:focus{outline:none;border-color:var(--green-forest);box-shadow:0 0 0 3px #2d5a271a}.mark-paid-error{background:#fef0f0;border:1px solid #f5c6c6;border-radius:var(--radius-sm);color:#c0392b;font-size:.82rem;padding:.5rem .65rem;margin:0}.mark-paid-actions{display:flex;gap:.6rem;justify-content:flex-end}.btn-payout-cancel{padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--cream-dark);background:#fff;font:inherit;font-size:.875rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:background .15s}.btn-payout-cancel:hover:not(:disabled){background:var(--cream-mid)}.btn-payout-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-confirm-paid{padding:.5rem 1.1rem;border-radius:var(--radius-sm);border:none;background:var(--green-forest);color:#fff;font:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-confirm-paid:hover:not(:disabled){background:var(--green-deep)}.btn-confirm-paid:disabled{opacity:.6;cursor:not-allowed}.paid-info{padding:.75rem 1.25rem;border-top:1px solid #c3e6bb;font-size:.82rem;color:#1a5c28;font-weight:500}.paid-notes{color:var(--text-muted);font-weight:400}@media (max-width: 640px){.payouts-tab-pane{padding:1rem}.payout-card-totals{gap:.5rem}.totals-pair--net{margin-left:0;margin-top:.25rem}.payout-items-table th,.payout-items-table td{padding-left:1rem;padding-right:1rem}}.fp-page{min-height:100dvh;background:var(--cream)}.fp-status{text-align:center;color:var(--text-muted);font-size:.9rem;padding:3rem 1rem}.fp-status--error{color:#c0392b}.fp-breadcrumb{background:var(--forest-deep);border-bottom:1px solid rgba(255,255,255,.06);padding:0 1.5rem}.fp-breadcrumb-list{list-style:none;display:flex;align-items:center;gap:.4rem;height:44px;max-width:1100px;margin:0 auto}.fp-breadcrumb-link{font-size:.75rem;font-weight:500;color:#f5edd8a6;text-decoration:none;letter-spacing:.01em;transition:color .15s}.fp-breadcrumb-link:hover{color:var(--cream)}.fp-breadcrumb-sep{color:#f5edd84d;font-size:.75rem;-webkit-user-select:none;user-select:none}.fp-breadcrumb-current{font-size:.75rem;font-weight:600;color:var(--cream);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.fp-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 1.5rem;text-align:center;gap:.875rem}.fp-not-found-title{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:var(--forest);letter-spacing:-.02em;margin:0}.fp-not-found-body{font-size:.95rem;color:var(--text-muted);margin:0;max-width:360px;line-height:1.6}.fp-not-found-link{font-size:.82rem;font-weight:600;color:var(--amber);text-decoration:none;letter-spacing:.01em;transition:color .15s}.fp-not-found-link:hover{color:var(--amber-light);text-decoration:underline}.fp-hero{background:var(--forest-deep);position:relative;overflow:hidden;padding:4.5rem 1.5rem 5rem}.fp-hero:before{content:"";position:absolute;top:-30%;right:-5%;width:55%;height:180%;background:radial-gradient(ellipse,rgba(201,124,34,.13) 0%,transparent 65%);pointer-events:none}.fp-hero:after{content:"";position:absolute;bottom:-20%;left:-10%;width:50%;height:120%;background:radial-gradient(ellipse,rgba(27,58,42,.5) 0%,transparent 70%);pointer-events:none}.fp-hero-inner{position:relative;z-index:1;max-width:900px;margin:0 auto}.fp-hero-name{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:clamp(3rem,7vw,6rem);color:var(--cream);line-height:1.05;letter-spacing:-.03em;margin:.6rem 0 1.5rem}.fp-hero-bio{font-size:1.05rem;color:#f5edd8d1;line-height:1.75;max-width:560px;margin:0}.fp-block{padding:4rem 1.5rem}@media (min-width: 900px){.fp-block{padding:5rem 2rem}}.fp-block--about{background:var(--white)}.fp-block--products{background:var(--cream)}.fp-block--video{background:var(--white)}.fp-block-inner{max-width:1100px;margin:0 auto}.fp-block-eyebrow{display:block;margin-bottom:.6rem}.fp-block-heading{font-family:var(--font-display);font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:700;color:var(--forest);letter-spacing:-.025em;line-height:1.15;margin:0 0 1.75rem}.fp-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}@media (max-width: 899px){.fp-about-grid{grid-template-columns:1fr;gap:2.5rem}}.fp-about-img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:var(--radius-md);display:block;box-shadow:var(--shadow-lg)}.fp-about-bio{font-size:1rem;color:var(--text-muted);line-height:1.75;margin:0 0 1.75rem;max-width:440px}.fp-about-back{font-size:.8rem;font-weight:600;color:var(--amber);text-decoration:none;letter-spacing:.01em;transition:color .15s}.fp-about-back:hover{color:var(--amber-light);text-decoration:underline}.fp-coming-soon{font-size:1rem;color:var(--text-muted);line-height:1.7;max-width:480px;margin:0;font-style:italic}.fp-product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media (min-width: 600px){.fp-product-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}@media (min-width: 900px){.fp-product-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.fp-product-card{background:var(--white);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--cream-dark);display:flex;flex-direction:column;transition:box-shadow .15s}.fp-product-card:hover{box-shadow:var(--shadow-md)}.fp-product-card--oos{opacity:.5}.fp-product-img-wrap{position:relative;aspect-ratio:4 / 3;overflow:hidden;flex-shrink:0}.fp-product-img{width:100%;height:100%;object-fit:cover;display:block}.fp-product-img-placeholder{width:100%;height:100%;background:radial-gradient(ellipse at 25% 35%,rgba(27,58,42,.1) 0%,transparent 55%),radial-gradient(ellipse at 75% 65%,rgba(201,124,34,.07) 0%,transparent 55%),linear-gradient(160deg,var(--cream-dark) 0%,var(--cream-mid) 100%)}.fp-product-tag{position:absolute;top:.6rem;left:.6rem;background:#1c1c1ab8;color:var(--cream);font-size:.6rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.18rem .45rem;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.fp-product-body{padding:.875rem 1rem;display:flex;flex-direction:column;gap:.25rem;flex:1}.fp-product-category{font-size:.6rem;text-transform:uppercase;letter-spacing:.18em;font-weight:500;color:#8a5a00}.fp-product-name{font-family:var(--font-display);font-size:.975rem;font-weight:500;color:var(--charcoal);line-height:1.3;margin:0}.fp-stars{display:inline-flex;align-items:center;gap:.2rem;font-size:.78rem;color:var(--amber)}.fp-product-footer{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;padding-top:.6rem}.fp-product-price{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--charcoal);letter-spacing:-.02em}.fp-product-qty{font-size:.62rem;color:var(--text-faint);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.fp-video-caption{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--forest);letter-spacing:-.02em;margin:0 0 1.25rem}.fp-video-wrap{aspect-ratio:16 / 9;background:#000;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}.fp-video-iframe{width:100%;height:100%;border:none;display:block}@media (max-width: 599px){.fp-hero{padding:3rem 1.25rem 3.5rem}.fp-block{padding:3rem 1.25rem}.fp-block-heading{margin-bottom:1.25rem}}:root{--font-display: "Fraunces", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--serif: "Fraunces", Georgia, serif;--sans: "DM Sans", system-ui, sans-serif;--forest: #1B3A2A;--forest-deep: #112619;--forest-mid: #254D38;--green-deep: #112619;--green-forest: #1B3A2A;--green-mid: #254D38;--green-light: #d4e8cc;--cream: #F5EDD8;--cream-mid: #EAE0C8;--cream-dark: #EDE0C4;--white: #FDFAF4;--amber: #C97C22;--amber-light: #E8991F;--purple: #8b7aa8;--purple-light: #b8a8d4;--earth: #7a5c3a;--earth-light: #F5EDD8;--terracotta: #c4622d;--terracotta-light: #fdf0e8;--charcoal: #1C1C1A;--text: #1C1C1A;--text-muted: #545449;--text-faint: #5C5C50;--surface: #FDFAF4;--surface-raised: #FAF5EA;--shadow-xs: 0 1px 2px rgba(17, 38, 25, .06);--shadow-sm: 0 1px 4px rgba(17, 38, 25, .08), 0 1px 2px rgba(17, 38, 25, .04);--shadow-md: 0 4px 16px rgba(17, 38, 25, .1), 0 1px 4px rgba(17, 38, 25, .06);--shadow-lg: 0 8px 32px rgba(17, 38, 25, .13), 0 2px 8px rgba(17, 38, 25, .07);--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-full: 999px;--ease: cubic-bezier(.25, .46, .45, .94)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--cream);color:var(--text);line-height:1.55;min-height:100dvh}h1,h2{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:-.02em}.eyebrow{font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#8a5a00}.eyebrow--light{color:var(--amber-light)}a{color:inherit}button{cursor:pointer;font:inherit}input,select,textarea{font:inherit}a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:0;left:0;transform:translateY(-100%);padding:.5rem 1rem;background:var(--amber);color:var(--forest-deep);font-weight:600;font-size:.875rem;text-decoration:none;border-radius:0 0 var(--radius-sm) 0;z-index:9999;transition:transform .1s}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
