/* Custom loaf builder */
.mix-builder-panel { grid-column:1/-1; margin:8px 0 18px; }
.mix-builder-panel[hidden] { display:none; }
.mix-launch { width:100%; display:flex; align-items:center; gap:22px; padding:24px 28px; border:1px solid #8c7950; border-radius:14px; text-align:left; cursor:pointer; color:#342314; background:linear-gradient(110deg,#f6e9c9,#eee1b8); box-shadow:0 4px 12px #27150b22; font:inherit; }
.mix-launch:disabled { opacity:.65; cursor:default; }
.mix-launch strong { display:block; font:700 clamp(22px,3vw,30px)/1.15 Georgia,serif; margin:6px 0 8px; }
.mix-eyebrow { display:block; margin:0; color:#59633a; font:700 10px/1.5 Arial,sans-serif; text-transform:uppercase; letter-spacing:1.8px; }
.mix-tile-copy { font:15px/1.5 Georgia,serif; }
.mix-loaf-mark { display:grid; place-items:center; flex:0 0 58px; height:58px; border:1px solid #8b9565; border-radius:50%; font-size:34px; color:#59633a; }
.mix-launch-arrow { margin-left:auto; font-size:30px; color:#59633a; }
.mix-availability:empty,.mix-error:empty { display:none; }
.mix-availability { padding:0 12px; }
.mix-dialog { box-sizing:border-box; width:min(850px,calc(100% - 28px)); max-height:90dvh; padding:32px; border:1px solid #a38a59; border-radius:18px; color:#342314; background:#fcf5e6; box-shadow:0 24px 90px #160e0980; font-family:Georgia,serif; }
.mix-dialog::backdrop { background:#1e180ec9; backdrop-filter:blur(4px); }
.mix-dialog-heading { display:flex; align-items:flex-start; gap:18px; justify-content:space-between; }
.mix-dialog h2 { margin:8px 0 0; font-size:clamp(26px,4vw,36px); line-height:1.1; color:#342314; }
.mix-close { border:1px solid #c9b990; border-radius:50%; background:transparent; color:#493920; width:36px; height:36px; flex-shrink:0; cursor:pointer; font:26px/1 Arial,sans-serif; }
.mix-intro { margin:16px 0 28px; max-width:550px; font-size:15px; line-height:1.6; color:#716149; }
.mix-dialog-body { display:grid; grid-template-columns:1.25fr 1fr; gap:28px; }
.mix-ingredients h3 { margin:0; font-size:19px; }.mix-ingredients h3 span { color:#8e9a68; font:12px Arial,sans-serif; margin-right:8px; }
.mix-ingredients > p { font-size:14px; color:#716149; margin:9px 0 18px; }
.mix-options { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.mix-option { display:flex; align-items:center; gap:7px; padding:14px 10px; border:1px solid #d6c9aa; border-radius:8px; background:#fffaf0; cursor:pointer; font:14px/1.3 Georgia,serif; }
.mix-option.is-selected { border-color:#667342; background:#e9eddb; box-shadow:inset 0 0 0 1px #667342; }
.mix-option input { width:16px; height:16px; accent-color:#596838; flex-shrink:0; }.mix-option small { margin-left:auto; font:11px Arial,sans-serif; color:#697644; }
.mix-recipe { background:#f0e8d5; border-radius:12px; padding:22px; border:1px solid #ded0ae; }
.mix-recipe h3 { font-size:21px; margin:8px 0 18px; }.mix-recipe ul { padding-left:18px; margin:0 0 20px; min-height:50px; font-size:14px; line-height:1.7; }
.mix-price-row { display:flex; justify-content:space-between; gap:10px; font:13px/1.5 Arial,sans-serif; padding:5px 0; }
.mix-price-total { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #ccbd9c; padding:14px 0; margin-top:8px; font-size:17px; }.mix-price-total strong { font-size:32px; color:#526036; }
.mix-quantity { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:10px 0; font:13px Arial,sans-serif; }.mix-quantity select { background:#fffaf0; color:#342314; border:1px solid #ad9c78; border-radius:6px; padding:9px; min-width:64px; color-scheme:light; }
.mix-dialog-footer { border-top:1px solid #dacbae; padding-top:20px; margin-top:26px; display:flex; align-items:center; justify-content:space-between; gap:18px; }.mix-dialog-footer p { font-style:italic; color:#7e6e53; font-size:13px; }
.nav-tile.mix-primary {
  min-height:48px; min-width:170px; padding:8px 24px; border-color:#839365;
  background:radial-gradient(ellipse at 50% 10%,#e9f1be40,transparent 48%),linear-gradient(180deg,#5c743bb8,#213317d9),url("assets/butcher-block-texture.jpg") center 52% / 290% auto no-repeat,#50643a;
}
.nav-tile.mix-primary::before {
  border-color:#b0bd7e;
  background:linear-gradient(180deg,#a2b56c55,#1d3218a8),url("assets/butcher-block-texture.jpg") center 58% / 330% auto no-repeat,#52653a;
}
.nav-tile.mix-primary:hover,.nav-tile.mix-primary:focus-visible { border-color:#b5c68b; filter:brightness(1.1); }
.nav-tile.mix-primary:active { filter:brightness(.94); }

.mix-error { color:#8b2d1a; padding:12px; border:1px solid #b7654f; border-radius:6px; }
.mix-cart-row { display:flex; gap:14px; align-items:center; justify-content:space-between; padding:16px; border:1px solid #a99264; background:#f8efd8; border-radius:10px; margin-top:10px; color:#342314; }.mix-cart-row p { margin:5px 0 0; font-size:14px; }.mix-cart-actions { display:flex; align-items:center; gap:10px; }.mix-cart-actions button { background:none; border:0; text-decoration:underline; color:#526036; cursor:pointer; padding:8px 0; }
.mix-admin-intro { display:flex; flex-wrap:wrap; gap:16px; align-items:center; justify-content:space-between; margin:24px 0; padding:24px; background:#f4e6c4; color:#342314; border-radius:12px; }.mix-admin-price { font-size:26px; }.mix-admin-price small { display:block; font:13px Arial,sans-serif; margin-top:5px; }
.mix-admin-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.mix-admin-row { display:flex; align-items:center; gap:14px; padding:16px; border:1px solid #aa936c; border-radius:10px; background:#f4e6c4; color:#342314; }.mix-admin-row .order-field { flex:1; min-width:0; }.mix-admin-row input[type=checkbox],.mix-admin-toggle input { accent-color:#57663c; width:20px; height:20px; }.mix-admin-toggle { display:flex; align-items:center; gap:8px; font-weight:bold; }.mix-admin-row .order-field input { width:100%; box-sizing:border-box; }.mix-admin-row > label { white-space:nowrap; font:13px Arial,sans-serif; }.mix-admin-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:22px; }
.mix-launch:focus-visible,.mix-primary:focus-visible,.mix-close:focus-visible,.mix-option:focus-within { outline:3px solid #a47937; outline-offset:3px; }
@media(max-width:620px) { .mix-dialog { padding:20px; }.mix-dialog-body { grid-template-columns:1fr; gap:22px; }.mix-dialog-footer { flex-direction:column; align-items:stretch; }.mix-dialog-footer p { display:none; }.mix-loaf-mark { display:none; }.mix-launch { padding:20px 16px; gap:10px; }.mix-cart-row { align-items:flex-start; flex-direction:column; }.mix-cart-actions { width:100%; justify-content:space-between; }.mix-admin-list { grid-template-columns:1fr; }.mix-admin-row { padding:12px; }.mix-options { gap:8px; } }

.mix-dialog { color-scheme:light; }
.mix-option span,.mix-cart-row p { overflow-wrap:anywhere; }

.mix-admin-row { cursor:pointer; }
.mix-admin-row.is-selected { background:#e4ebcf; border-color:#526536; box-shadow:inset 0 0 0 2px #526536; }
.mix-admin-row:focus-visible { outline:3px solid #a47937; outline-offset:3px; }
.mix-admin-remove:disabled { opacity:.4; cursor:not-allowed; filter:grayscale(1); box-shadow:none; }

.nav-tile.mix-admin-remove {
  border-color:#b46d60;
  background:radial-gradient(ellipse at 50% 10%,#ffd2ba40,transparent 48%),linear-gradient(180deg,#983f38b8,#481b19de),url("assets/butcher-block-texture.jpg") center 52% / 290% auto no-repeat,#74352e;
}
.nav-tile.mix-admin-remove::before {
  border-color:#d29a7e;
  background:linear-gradient(180deg,#c8766055,#501b1aa8),url("assets/butcher-block-texture.jpg") center 58% / 330% auto no-repeat,#843d33;
}
.nav-tile.mix-admin-remove:not(:disabled):hover,.nav-tile.mix-admin-remove:not(:disabled):focus-visible { border-color:#e0aa92; filter:brightness(1.1); }
.nav-tile.mix-admin-remove:not(:disabled):active { filter:brightness(.94); }

.mix-admin-row .mix-admin-price-field { flex:0 0 90px; }
@media(max-width:900px) { .mix-admin-list { grid-template-columns:1fr; } }
@media(max-width:420px) { .mix-admin-row { flex-wrap:wrap; } .mix-admin-row .mix-admin-price-field { flex-basis:80px; } }

.mix-build-actions { display:flex; gap:14px; flex-wrap:wrap; justify-content:flex-end; }
.mix-build-actions > button { min-width:115px; }
.mix-build-actions .nav-tile:disabled { opacity:.38; filter:grayscale(1); cursor:not-allowed; transform:none; box-shadow:none; }
.mix-animation { margin:22px 0 0; border:1px solid #d8c8a5; border-radius:14px; background:linear-gradient(#fffaf0,#eee4ce); overflow:hidden; }
.mix-animation[hidden] { display:none; }
.mix-animation svg { display:block; width:100%; max-height:250px; }
.mix-animation svg .moving { transform-box:fill-box; transform-origin:center; }
.mix-animation p { text-align:center; font:italic 16px Georgia,serif; margin:4px 12px 14px; color:#526036; }
.mix-progress { height:4px; background:#dfd3b8; }.mix-progress span { display:block; height:100%; background:#708247; transform:scaleX(0); transform-origin:left; }
@media(max-width:620px) { .mix-build-actions { justify-content:stretch; }.mix-build-actions > button { flex:1; }.mix-animation svg { min-height:170px; } }

.mix-desk-section { margin:28px 0; padding:20px; border:1px solid #baa17b; border-radius:12px; }
.mix-desk-section .mix-admin-intro input[type=number] { width:130px; max-width:100%; box-sizing:border-box; }

/* Matching builder icons and cookie stack stay in normal menu flow. */
.mix-loaf-mark {color:#526b3c;background:none;border:0;font-family:Georgia,serif;font-size:46px;}
.order-cookie-stack {min-width:0;align-self:start;}
.order-cookie-stack > .order-panel {margin:0;}
.order-cookie-stack .mix-builder-panel {margin:16px 0 0;}
.order-cookie-stack .mix-launch {padding:20px;gap:14px;}
.order-cookie-stack .mix-launch strong {font-size:25px;}
[data-cookie-pack] {margin-bottom:18px;}
