/* BioHealth Kitchen - storefront additions (store bar, map picker, checkout, tracking, account) */
.store-bar{background:var(--leaf-deep);color:#fff;font-size:13.5px;padding:7px 0;text-align:center}
.store-bar a{color:var(--leaf)}
.wrap.narrow{max-width:820px}
.btn-sm{padding:8px 14px!important;font-size:13px!important}
.warn{color:#B5423E;font-weight:600}
.muted-note{color:var(--char-soft);font-size:13.5px;margin:12px 0 0}
.summary-hr{border:0;border-top:1px solid rgba(42,44,40,.1);margin:10px 0}
.section-h{font-size:20px;margin:26px 0 12px}
.pager{display:flex;gap:16px;align-items:center;justify-content:center;margin:16px 0}
.pager a{font-weight:700;color:var(--leaf-deep)}

/* checkout */
.checkout-grid-2{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:28px;align-items:start}
.checkout-grid-2 aside{position:sticky;top:20px}
.checkout-grid-2 legend{font-weight:800;font-size:18px;color:var(--leaf-deep);margin-bottom:14px}
.checkout-grid-2 textarea{width:100%;box-sizing:border-box;border:1px solid rgba(42,44,40,.18);border-radius:14px;padding:12px;font:inherit;margin-top:6px}
.saved-address-option{display:block;margin-bottom:10px;cursor:pointer}
@media (max-width:900px){.checkout-grid-2{grid-template-columns:1fr}.checkout-grid-2 aside{position:static}}

/* map picker */
.map-picker{margin-top:14px}
.map-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.map-search{flex:1 1 220px;padding:11px 14px;border:1px solid rgba(42,44,40,.18);border-radius:999px;font:inherit}
.map-tools .btn{padding:10px 16px;font-size:13.5px}
.map-canvas{height:320px;border-radius:18px;border:1px solid rgba(42,44,40,.12);overflow:hidden;z-index:0}
.map-hint{font-size:13px;color:var(--char-soft);margin:6px 0 0}

/* tracking */
.track-steps{list-style:none;display:flex;gap:0;padding:0;margin:22px 0;counter-reset:s}
.track-steps li{flex:1;text-align:center;font-size:13px;font-weight:700;color:var(--char-soft);position:relative;padding-top:34px}
.track-steps li::before{counter-increment:s;content:counter(s);position:absolute;top:0;left:50%;transform:translateX(-50%);width:26px;height:26px;border-radius:50%;background:#E8EAE4;color:var(--char-soft);line-height:26px;z-index:1}
.track-steps li::after{content:"";position:absolute;top:12px;left:-50%;width:100%;height:3px;background:#E8EAE4}
.track-steps li:first-child::after{display:none}
.track-steps li.done{color:var(--leaf-deep)}
.track-steps li.done::before{background:var(--leaf-deep);color:#fff}
.track-steps li.done::after{background:var(--leaf-deep)}
.track-map{height:380px;border-radius:20px;margin-top:18px;border:1px solid rgba(42,44,40,.1);z-index:0}
@media (max-width:600px){.track-steps li{font-size:11px}}

/* account */
.active-order{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px;border:2px solid var(--leaf)}
.admin-stats.stats-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:700px){.admin-stats.stats-3{grid-template-columns:1fr}}
.addr-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(42,44,40,.08);flex-wrap:wrap}
.addr-actions{display:flex;gap:8px;align-items:center}
.add-address{margin-top:16px}
.add-address summary{list-style:none;display:inline-block;cursor:pointer}
.add-address summary::-webkit-details-marker{display:none}
.panel-form .form-grid{margin-bottom:14px}

/* =========================================================
   Checkout & My Account forms - self-contained styles
   (match the site design; do not depend on other stylesheets)
   ========================================================= */
.checkout-form .form-grid,.account-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-bottom:6px}
.checkout-form label,.account-form label{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:14.5px;color:var(--leaf-deep)}
.checkout-form .full-row,.account-form .full-row{grid-column:1/-1}
.checkout-form input[type=text],.checkout-form input[type=email],.checkout-form input[type=tel],.checkout-form input[type=date],.checkout-form textarea,.checkout-form select,
.account-form input[type=text],.account-form input[type=email],.account-form input[type=tel],.account-form input[type=password],.account-form input:not([type]),.account-form textarea{
  width:100%;box-sizing:border-box;font-family:inherit;font-size:16px;font-weight:500;padding:14px 16px;border-radius:14px;
  border:1.5px solid rgba(42,44,40,.14);background:#fff;color:var(--char);transition:border-color .15s ease,box-shadow .15s ease}
.checkout-form textarea,.account-form textarea{resize:vertical;min-height:84px;margin-top:0}
.checkout-form input:focus,.checkout-form textarea:focus,.account-form input:focus,.account-form textarea:focus{outline:none;border-color:var(--leaf);box-shadow:0 0 0 3px rgba(62,124,79,.15)}
.checkout-form input:disabled{background:#F5F6F2;color:var(--char-soft);border-color:rgba(42,44,40,.08);cursor:not-allowed}
.checkout-form input::placeholder,.checkout-form textarea::placeholder,.account-form input::placeholder{color:rgba(42,44,40,.4)}
.checkout-form .form-section{border:0;padding:0;margin:0 0 34px;min-width:0}
.checkout-form .form-section legend{width:100%;padding:0 0 14px;margin-bottom:20px;font-weight:800;font-size:17px;color:var(--leaf-deep);border-bottom:1px solid rgba(42,44,40,.08)}
.checkout-form .consent,.account-form .consent{flex-direction:row;align-items:flex-start;gap:10px;font-weight:500;font-size:14px;color:var(--char-soft);margin:14px 0 0}
.checkout-form .consent input,.account-form .consent input{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--leaf-deep)}
.checkout-form .consent a{color:var(--leaf-deep);font-weight:700}

/* saved address / payment option cards */
.checkout-form .saved-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}
.checkout-form .saved-address-option{display:block;position:relative;cursor:pointer;margin-bottom:12px}
.checkout-form .saved-addresses .saved-address-option{margin:0}
.checkout-form .saved-address-option input{position:absolute;opacity:0;width:1px;height:1px}
.checkout-form .address-card{display:block;height:100%;box-sizing:border-box;border:1.5px solid rgba(42,44,40,.14);border-radius:16px;padding:16px 18px 16px 48px;
  font-size:14.5px;font-weight:500;line-height:1.5;color:var(--char-soft);background:#fff;position:relative;transition:border-color .15s ease,background .15s ease}
.checkout-form .address-card::before{content:"";position:absolute;left:18px;top:18px;width:16px;height:16px;border-radius:50%;border:2px solid rgba(42,44,40,.25);background:#fff}
.checkout-form .saved-address-option input:checked + .address-card{border-color:var(--leaf-deep);background:var(--mint)}
.checkout-form .saved-address-option input:checked + .address-card::before{border-color:var(--leaf-deep);box-shadow:inset 0 0 0 4px #fff;background:var(--leaf-deep)}
.checkout-form .saved-address-option input:focus-visible + .address-card{outline:3px solid var(--leaf);outline-offset:2px}
.checkout-form .address-card strong{color:var(--char)}
.checkout-form .address-card .pm-chip{display:inline-block;padding:3px 10px;font-size:11.5px;margin:0 6px 4px 0;vertical-align:middle}
.checkout-form .address-card .warn{font-size:12.5px}
#new-address-fields{margin-top:6px}

/* summary column */
.checkout-grid-2 .panel{padding:28px 30px}
.checkout-grid-2 .panel h3{font-size:20px;margin:0 0 14px}
.checkout-grid-2 .summary-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;font-size:15px}
.checkout-grid-2 .summary-total{font-weight:800;font-size:18px;color:var(--leaf-deep);border-top:1px solid rgba(42,44,40,.1);margin-top:6px;padding-top:14px}
.ck-submit{display:block;width:100%;margin-top:18px;border:none;cursor:pointer;font-family:inherit}
.ck-submit:disabled{background:#C9CCC4;box-shadow:none;cursor:not-allowed;transform:none}

/* map picker inside forms */
.checkout-form .map-picker,.account-form .map-picker{margin-top:18px}
.checkout-form .map-search,.account-form .map-search{padding:12px 16px;font-size:15px}
.checkout-form .map-tools .btn,.account-form .map-tools .btn{padding:11px 16px;font-size:13.5px;border:none;cursor:pointer;font-family:inherit}

@media (max-width:760px){
  .checkout-form .form-grid,.account-form .form-grid,.checkout-form .saved-addresses{grid-template-columns:1fr}
  .checkout-grid-2 .panel{padding:22px}
}
.checkout-form .address-card .pm-chip{background:#fff;border:1px solid rgba(44,94,59,.25)}
button.btn,button.btn-danger{border:none;cursor:pointer;font-family:inherit}
.pay-brands{font-size:12px;font-weight:600;color:var(--char-soft);margin-left:6px}
.pay-panel{max-width:460px;display:flex;flex-direction:column;gap:2px}
.pay-panel .ck-submit{margin-top:10px}
.pay-cancel{background:none;border:none;color:#B5423E;font-weight:700;font-family:inherit;cursor:pointer;margin-top:14px;padding:6px}
.forgot-link{text-align:right;margin:-6px 0 14px;font-size:14px}.forgot-link a{color:var(--leaf-deep);font-weight:700}
.test-mode-bar{background:#FFF1C8;color:#7A5B00;font-weight:700}
