.builder-modes { display:flex; gap:12px; max-width:1200px; margin:28px auto 0; padding:0 24px; scroll-margin-top:90px; }
.builder-modes button { flex:1; min-height:60px; padding:14px 20px; background:#131313; border:1px solid #514934; border-radius:12px; color:#f8f3e8; font-size:16px; font-weight:800; cursor:pointer; }
.builder-modes button.is-active { background:#ffc400; color:#111; border-color:#ffc400; }
.grill-builder[hidden], .grill-sticky[hidden], .grill-builder [hidden] { display:none; }
body.grill-view #builder, body.grill-view #mobile-total, body.grill-view #add-ons, body.grill-view .closing-strip { display:none!important; }
body.branch-view .builder-modes,body.about-view .builder-modes,body.branch-view .grill-builder,body.about-view .grill-builder,body.branch-view .grill-sticky,body.about-view .grill-sticky { display:none!important; }
.grill-builder { max-width:1200px; margin:0 auto; padding:40px 24px 56px; color:#f8f3e8; }
.grill-heading { margin-bottom:28px; }
.grill-heading span { color:#ffc400; font-size:14px; font-weight:700; letter-spacing:2px; }
.grill-heading h2 { max-width:700px; margin:10px 0 12px; font:900 clamp(32px,4vw,54px)/1.05 'Altin Barlow Condensed',sans-serif; }
.grill-heading p { color:#c9c3b5; font-size:16px; line-height:1.5; }
.grill-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:28px; }
.grill-visual { grid-column:2; grid-row:1; padding:16px 18px 24px; border:1px solid #3b3422; border-radius:20px; background:radial-gradient(ellipse at 50% 10%,#29251a,#111 66%); position:sticky; top:24px; }
.grill-plate { width:100%; aspect-ratio:1; position:relative; margin:0 auto; }
.grill-plate-base { width:100%; height:100%; object-fit:contain; clip-path:circle(47% at 50% 50%); filter:drop-shadow(0 12px 12px #0008); }
.grill-plate-empty { position:absolute; left:25%; top:44%; width:50%; text-align:center; color:#837e71; font-size:15px; line-height:1.4; }
#grill-plate-items { position:absolute; inset:0; pointer-events:none; }
.grill-instance { position:absolute; aspect-ratio:1.5; transform:translate(-50%,-50%); transition:left .2s ease,top .2s ease; }
.grill-instance-content { width:100%; height:100%; animation:grill-drop .28s ease-out both; }
.grill-instance img { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 3px 2px #0003); }
.grill-layer-placeholder { display:flex; width:100%; height:100%; align-items:center; justify-content:center; border:1px dashed #948771; border-radius:12px; padding:3px; background:#e7e1d4; color:#554934; text-align:center; font-size:clamp(10px,1.1vw,14px); line-height:1.15; overflow-wrap:anywhere; }
.grill-instance.is-removing .grill-instance-content { animation:grill-remove .18s ease-in both; }
@keyframes grill-drop { from { opacity:0;transform:translateY(-12px) scale(.8); } 70% { opacity:1;transform:translateY(2px) scale(1.04); } to { opacity:1;transform:translateY(0) scale(1); } }
@keyframes grill-remove { to { opacity:0;transform:scale(.65); } }
.grill-visual h3 { margin:16px 0 12px; color:#ffc400; font-size:16px; }
.grill-summary { padding:0; margin:0; list-style:none; }
.grill-summary li { display:flex; gap:12px; justify-content:space-between; border-bottom:1px solid #ffffff12; padding:9px 0; font-size:15px; }
.grill-summary b { white-space:nowrap; }
.grill-summary-empty { color:#b8b1a3; }
.nutrition-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:14px 0 4px; padding:12px; border:1px solid #7e682f66; border-radius:12px; background:linear-gradient(130deg,#ffc40012,#ffffff04); }
.nutrition-summary>div { display:grid; gap:4px; min-width:0; }
.nutrition-summary>div span,.nutrition-summary>strong { color:#d5bd72; font-size:10px; font-weight:900; letter-spacing:.06em; }
.nutrition-summary>div strong { color:#ffc400; font-size:16px; line-height:1.2; }
.nutrition-summary small,.nutrition-summary .nutrition-incomplete { grid-column:1/-1; color:#b8b1a3; font-size:11px; line-height:1.4; }
.nutrition-summary .nutrition-incomplete { color:#f1d28a; }
.grill-serving-note { margin:6px 0 0; color:#a89c84; font-size:12px; line-height:1.4; }
.grill-image-notice { margin:12px 0; color:#b8b1a3; font-size:14px; line-height:1.4; }
.grill-desktop-total { display:flex; justify-content:space-between; align-items:center; margin:20px 0 14px; font-size:16px; }
.grill-desktop-total strong { font-size:28px; color:#ffc400; }
.grill-send { min-height:52px; width:100%; border:0; border-radius:10px; background:#ffc400; color:#111; font-size:16px; font-weight:900; cursor:pointer; }
.grill-send:disabled { background:#333028; color:#b6b0a4; cursor:default; }
.grill-choices { grid-column:1; grid-row:1; min-width:0; }
.grill-categories { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-bottom:18px; }
.grill-categories button { min-height:52px; padding:6px; border:1px solid #494332; border-radius:8px; background:#161614; color:#eee7d8; font-size:14px; font-weight:800; cursor:pointer; overflow-wrap:normal; }
.grill-categories button.is-active { border-color:#ffc400; background:#ffc400; color:#111; }
.grill-products { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.grill-product { min-width:0; overflow:hidden; border:1px solid #37342c; border-radius:14px; background:#181817; }
.grill-product-image { aspect-ratio:1.35; background:#22221f; display:flex; align-items:center; justify-content:center; }
.grill-product-image img { display:block; width:100%; height:100%; object-fit:contain; }
.grill-card-placeholder { text-align:center; color:#bab4a7; font-size:14px; line-height:1.5; }
.grill-product-copy { padding:14px 12px 10px; min-height:91px; }
.grill-product h3 { margin:0 0 7px; font-size:16px; font-weight:700; line-height:1.3; }
.grill-unit-price { color:#ffc400; font-size:14px; }
.grill-product-copy small { display:block; font-size:13px; color:#b6b0a4; margin-top:4px; }
.grill-quantity { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; margin:0 10px 12px; border:1px solid #494332; border-radius:8px; overflow:hidden; text-align:center; }
.grill-quantity button { width:44px; min-height:44px; border:0; font-size:24px; background:#292720; color:#ffc400; cursor:pointer; }
.grill-quantity button:disabled { color:#777268; background:#22211e; cursor:default; }
.grill-quantity output { font-size:16px; font-weight:700; }
.grill-status { font-size:15px; line-height:1.5; color:#d7caae; margin:0 0 18px; }
.grill-status:empty { display:none; }
.grill-retry { margin-bottom:16px; padding:12px; color:#111; background:#ffc400; border:0; border-radius:8px; font-size:15px; }
.grill-sticky { display:none; }
@media(max-width:640px) {
  .builder-modes { padding:0 12px; gap:8px; margin-top:20px; }
  .builder-modes button { padding:12px 8px; font-size:14px; min-height:64px; line-height:1.4; }
  .grill-builder { padding:26px 12px calc(146px + env(safe-area-inset-bottom)); }
  .grill-heading { margin-bottom:14px; }
  .grill-heading h2 { font-size:34px; max-width:340px; }
  .grill-heading p { margin-bottom:0; }
  .grill-layout { display:flex; flex-direction:column; gap:24px; }
  .grill-visual { width:100%; padding:8px 8px 16px; position:static; }
  .grill-visual h3,.grill-summary,.grill-image-notice { margin-left:8px; margin-right:8px; }
  .grill-choices { width:100%; }
  .grill-product-copy { padding:12px 10px 8px; }
  .grill-categories { gap:5px; }
  .grill-categories button { font-size:14px; padding:5px 3px; }
  .grill-products { gap:10px; }
  .grill-layer-placeholder { font-size:11px; border-radius:7px; }
  .grill-desktop-total,.grill-visual>.grill-send { display:none; }
  body.grill-view .grill-sticky { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:10px; position:fixed; z-index:45; left:0; right:0; bottom:0; padding:12px 14px calc(12px + env(safe-area-inset-bottom)); background:#151410f5; border-top:1px solid #7d6427; box-shadow:0 -8px 20px #0005; }
  .grill-sticky small { display:block; color:#c7beaa; font-size:14px; }
  .grill-sticky .grill-nutrition-compact { margin-top:3px; color:#e8c95f; font-size:10px; line-height:1.2; overflow-wrap:anywhere; }
  .grill-sticky [data-grill-nutrition-compact][hidden] { display:none; }
  .grill-sticky strong { display:block; color:#ffc400; font-size:26px; margin-top:4px; }
  .grill-sticky button { font-size:14px; line-height:1.3; min-height:56px; padding:8px; }
}
@media(prefers-reduced-motion:reduce) { .grill-instance { transition:none; } .grill-instance-content,.grill-instance.is-removing .grill-instance-content { animation:none; } }

/* Coal warmth stays behind the porcelain and never intercepts product controls. */
.grill-product-image { width:100%; padding:0; border:0; border-radius:0; font:inherit; cursor:pointer; }
.grill-product-image:disabled { cursor:default; }
.grill-product-image:focus-visible { outline:3px solid #9b6c22; outline-offset:-3px; }
.grill-product-copy { cursor:pointer; }
body.customer-theme .grill-visual { isolation:isolate; box-shadow:0 12px 28px #48382212; }
body.customer-theme .grill-plate { z-index:1; }

.builder-modes { display:flex; gap:12px; max-width:1200px; margin:28px auto 0; padding:0 24px; scroll-margin-top:90px; }
.builder-modes button { flex:1; min-height:60px; padding:14px 20px; background:#131313; border:1px solid #514934; border-radius:12px; color:#f8f3e8; font-size:16px; font-weight:800; cursor:pointer; }
.builder-modes button.is-active { background:#ffc400; color:#111; border-color:#ffc400; }
.bucket-builder[hidden], .bucket-sticky[hidden], .bucket-builder [hidden] { display:none; }
body.bucket-view #builder, body.bucket-view #mobile-total, body.bucket-view #add-ons, body.bucket-view .closing-strip { display:none!important; }
body.branch-view .builder-modes,body.about-view .builder-modes,body.branch-view .bucket-builder,body.about-view .bucket-builder,body.branch-view .bucket-sticky,body.about-view .bucket-sticky { display:none!important; }
.bucket-builder { max-width:1200px; margin:0 auto; padding:40px 24px 56px; color:#f8f3e8; }
.bucket-heading { margin-bottom:28px; }
.bucket-heading span { color:#ffc400; font-size:14px; font-weight:700; letter-spacing:2px; }
.bucket-heading h2 { max-width:700px; margin:10px 0 12px; font:900 clamp(32px,4vw,54px)/1.05 'Altin Barlow Condensed',sans-serif; }
.bucket-heading p { color:#c9c3b5; font-size:16px; line-height:1.5; }
.bucket-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:28px; }
.bucket-visual { grid-column:2; grid-row:1; padding:16px 18px 24px; border:1px solid #3b3422; border-radius:20px; background:radial-gradient(ellipse at 50% 10%,#29251a,#111 66%); position:sticky; top:24px; }
.bucket-plate { width:100%; aspect-ratio:1; position:relative; margin:0 auto; }
.bucket-plate-base { width:100%; height:100%; object-fit:contain; clip-path:circle(47% at 50% 50%); filter:drop-shadow(0 12px 12px #0008); }
.bucket-plate-empty { position:absolute; left:25%; top:44%; width:50%; text-align:center; color:#837e71; font-size:15px; line-height:1.4; }
#bucket-plate-items { position:absolute; inset:0; pointer-events:none; }
.bucket-instance { position:absolute; aspect-ratio:1.5; transform:translate(-50%,-50%); transition:left .2s ease,top .2s ease; }
.bucket-instance-content { width:100%; height:100%; animation:bucket-drop .28s ease-out both; }
.bucket-instance img { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 3px 2px #0003); }
.bucket-layer-placeholder { display:flex; width:100%; height:100%; align-items:center; justify-content:center; border:1px dashed #948771; border-radius:12px; padding:3px; background:#e7e1d4; color:#554934; text-align:center; font-size:clamp(10px,1.1vw,14px); line-height:1.15; overflow-wrap:anywhere; }
.bucket-instance.is-removing .bucket-instance-content { animation:bucket-remove .18s ease-in both; }
@keyframes bucket-drop { from { opacity:0;transform:translateY(-12px) scale(.8); } 70% { opacity:1;transform:translateY(2px) scale(1.04); } to { opacity:1;transform:translateY(0) scale(1); } }
@keyframes bucket-remove { to { opacity:0;transform:scale(.65); } }
.bucket-visual h3 { margin:16px 0 12px; color:#ffc400; font-size:16px; }
.bucket-summary { padding:0; margin:0; list-style:none; }
.bucket-summary li { display:flex; gap:12px; justify-content:space-between; border-bottom:1px solid #ffffff12; padding:9px 0; font-size:15px; }
.bucket-summary b { white-space:nowrap; }
.bucket-summary-empty { color:#b8b1a3; }
.bucket-image-notice { margin:12px 0; color:#b8b1a3; font-size:14px; line-height:1.4; }
.bucket-desktop-total { display:flex; justify-content:space-between; align-items:center; margin:20px 0 14px; font-size:16px; }
.bucket-desktop-total strong { font-size:28px; color:#ffc400; }
.bucket-send { min-height:52px; width:100%; border:0; border-radius:10px; background:#ffc400; color:#111; font-size:16px; font-weight:900; cursor:pointer; }
.bucket-send:disabled { background:#333028; color:#b6b0a4; cursor:default; }
.bucket-choices { grid-column:1; grid-row:1; min-width:0; }
.bucket-categories { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-bottom:18px; }
.bucket-categories button { min-height:52px; padding:6px; border:1px solid #494332; border-radius:8px; background:#161614; color:#eee7d8; font-size:14px; font-weight:800; cursor:pointer; overflow-wrap:normal; }
.bucket-categories button.is-active { border-color:#ffc400; background:#ffc400; color:#111; }
.bucket-products { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.bucket-product { min-width:0; overflow:hidden; border:1px solid #37342c; border-radius:14px; background:#181817; }
.bucket-product-image { aspect-ratio:1.35; background:#22221f; display:flex; align-items:center; justify-content:center; }
.bucket-product-image img { display:block; width:100%; height:100%; object-fit:contain; }
.bucket-card-placeholder { text-align:center; color:#bab4a7; font-size:14px; line-height:1.5; }
.bucket-product-copy { padding:14px 12px 10px; min-height:91px; }
.bucket-product h3 { margin:0 0 7px; font-size:16px; font-weight:700; line-height:1.3; }
.bucket-unit-price { color:#ffc400; font-size:14px; }
.bucket-product-copy small { display:block; font-size:13px; color:#b6b0a4; margin-top:4px; }
.bucket-quantity { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; margin:0 10px 12px; border:1px solid #494332; border-radius:8px; overflow:hidden; text-align:center; }
.bucket-quantity button { width:44px; min-height:44px; border:0; font-size:24px; background:#292720; color:#ffc400; cursor:pointer; }
.bucket-quantity button:disabled { color:#777268; background:#22211e; cursor:default; }
.bucket-quantity output { font-size:16px; font-weight:700; }
.bucket-status { font-size:15px; line-height:1.5; color:#d7caae; margin:0 0 18px; }
.bucket-status:empty { display:none; }
.bucket-retry { margin-bottom:16px; padding:12px; color:#111; background:#ffc400; border:0; border-radius:8px; font-size:15px; }
.bucket-sticky { display:none; }
@media(max-width:640px) {
  .builder-modes { padding:0 12px; gap:8px; margin-top:20px; }
  .builder-modes button { padding:12px 8px; font-size:14px; min-height:64px; line-height:1.4; }
  .bucket-builder { padding:26px 12px calc(146px + env(safe-area-inset-bottom)); }
  .bucket-heading { margin-bottom:14px; }
  .bucket-heading h2 { font-size:34px; max-width:340px; }
  .bucket-heading p { margin-bottom:0; }
  .bucket-layout { display:flex; flex-direction:column; gap:24px; }
  .bucket-visual { width:100%; padding:8px 8px 16px; position:static; }
  .bucket-visual h3,.bucket-summary,.bucket-image-notice { margin-left:8px; margin-right:8px; }
  .bucket-choices { width:100%; }
  .bucket-product-copy { padding:12px 10px 8px; }
  .bucket-categories { gap:5px; }
  .bucket-categories button { font-size:14px; padding:5px 3px; }
  .bucket-products { gap:10px; }
  .bucket-layer-placeholder { font-size:11px; border-radius:7px; }
  .bucket-desktop-total,.bucket-visual>.bucket-send { display:none; }
  body.bucket-view .bucket-sticky { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:10px; position:fixed; z-index:45; left:0; right:0; bottom:0; padding:12px 14px calc(12px + env(safe-area-inset-bottom)); background:#151410f5; border-top:1px solid #7d6427; box-shadow:0 -8px 20px #0005; }
  .bucket-sticky small { display:block; color:#c7beaa; font-size:14px; }
  .bucket-sticky strong { display:block; color:#ffc400; font-size:26px; margin-top:4px; }
  .bucket-sticky button { font-size:14px; line-height:1.3; min-height:56px; padding:8px; }
}
@media(prefers-reduced-motion:reduce) { .bucket-instance { transition:none; } .bucket-instance-content,.bucket-instance.is-removing .bucket-instance-content { animation:none; } }

/* Product controls remain independent of the preview layers. */
.bucket-product-image { width:100%; padding:0; border:0; border-radius:0; font:inherit; cursor:pointer; }
.bucket-product-image:disabled { cursor:default; }
.bucket-product-image:focus-visible { outline:3px solid #9b6c22; outline-offset:-3px; }
.bucket-product-copy { cursor:pointer; }
body.customer-theme .bucket-visual { isolation:isolate; box-shadow:0 12px 28px #48382212; }
body.customer-theme .bucket-plate { z-index:1; }

/* Two complementary masks split the original artwork into rear/inside and
   front/logo surfaces. Food strata are composited only between these surfaces. */
.bucket-plate { isolation:isolate; }
.bucket-plate-base { position:absolute; inset:0; z-index:0; clip-path:polygon(0 0,100% 0,100% 26.3%,96% 33.35%,93% 37%,90% 39.3%,87% 41.05%,84% 42.46%,81% 43.63%,78% 44.62%,75% 45.46%,72% 46.16%,69% 46.76%,66% 47.25%,63% 47.65%,60% 47.96%,57% 48.19%,54% 48.33%,51% 48.4%,48% 48.38%,45% 48.29%,42% 48.12%,39% 47.87%,36% 47.53%,33% 47.1%,30% 46.57%,27% 45.94%,24% 45.19%,21% 44.31%,18% 43.26%,15% 42.02%,12% 40.51%,9% 38.61%,6% 36.02%,3% 30.78%,0 26.3%); filter:none; }
#bucket-plate-items { clip-path:ellipse(46% 27% at 50% 20%); z-index:1; }
.bucket-front { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; clip-path:polygon(0 18.7200%,3% 21.9456%,6% 25.7184%,9% 27.5832%,12% 28.9512%,15% 30.0384%,18% 30.9312%,21% 31.6872%,24% 32.3208%,27% 32.8608%,30% 33.3144%,33% 33.6960%,36% 34.0056%,39% 34.2504%,42% 34.4304%,45% 34.5528%,48% 34.6400%,51% 34.6600%,54% 34.5900%,57% 34.4808%,60% 34.3152%,63% 34.0920%,66% 33.8040%,69% 33.4512%,72% 33.0192%,75% 32.5152%,78% 31.9104%,81% 31.1976%,84% 30.3552%,87% 29.3400%,90% 28.0800%,93% 26.4240%,96% 23.7960%,100% 18.7200%,100% 74.0800%,0 74.0800%); z-index:2; pointer-events:none; }
.bucket-plate-empty { left:26%; top:27%; width:48%; color:#e8d7a2; font-size:12px; z-index:3; }
.bucket-instance-content { animation:none; }
.bucket-instance { transition:none; }
body.bucket-view #grill-builder,body.grill-view #bucket-builder { display:none!important; }
.builder-modes { flex-wrap:wrap; }
.builder-modes button { min-width:0; }
@media(max-width:640px) {
  .builder-modes { display:grid; grid-template-columns:1fr 1fr; }
  .builder-modes [data-builder-mode="bucket"] { grid-column:1/-1; }
  .bucket-categories { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
body.customer-theme .bucket-visual { background:#181512; color:#f5ead3; border-color:#b39243; }
body.customer-theme .bucket-product { background:#fffaf0; border-color:#cbb99b; color:#332b23; }
body.customer-theme .bucket-product-image { background:#f2ecdf; }
body.customer-theme .bucket-unit-price { color:#805c18; }
body.customer-theme .bucket-heading h2 { color:#332b23; }
body.customer-theme .bucket-heading p { color:#706456; }
body.customer-theme .bucket-categories button { background:#fffaf0; color:#332b23; border-color:#cbb99b; }
body.customer-theme .bucket-categories button.is-active { background:#ffc400; color:#17120c; }
.bucket-product h3,.bucket-summary li span { min-width:0; overflow-wrap:anywhere; }
body.customer-theme .bucket-status,body.customer-theme .bucket-empty-products { color:#706456; }

/* Explicit two-row mobile modes, independent of label wrapping. */
.builder-modes button { background:#fffaf0; color:#332b23; line-height:1.2; overflow-wrap:anywhere; }
@media(max-width:640px) {
 .builder-modes { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:0 12px; }
 .builder-modes button { height:64px; min-height:64px; padding:8px; font-size:13px; }
 .builder-modes [data-builder-mode="burger"] { grid-column:1; grid-row:1; }
 .builder-modes [data-builder-mode="grill"] { grid-column:2; grid-row:1; }
 .builder-modes [data-builder-mode="bucket"] { grid-column:1/-1; grid-row:2; }
}
.bucket-test-note { max-width:1152px; margin:20px auto; padding:16px; background:#fff2c8; color:#332b23; border:1px solid #c5a14d; }
.bucket-test-cart { max-width:1152px; margin:24px auto 160px; padding:20px; background:#fffaf0; color:#332b23; overflow-wrap:anywhere; }

/* Contact shade sits beneath each portion, behind the original front rim. */
.bucket-instance::before { content:""; position:absolute; width:76%; height:14%; left:12%; bottom:0; border-radius:50%; background:radial-gradient(ellipse,#0008,transparent 70%); pointer-events:none; }
.bucket-potato-portion::before { display:none; }
.bucket-portion-scene { overflow:visible; pointer-events:none; filter:drop-shadow(0 1px 1px #0005); }
.bucket-food-piece { position:absolute; pointer-events:none; }
.bucket-food-piece img { filter:drop-shadow(0 1px 1px #0006); }
.bucket-instance-content { position:relative; z-index:1; }
.bucket-instance img { filter:brightness(.98) saturate(.96) drop-shadow(0 2px 1px #0007); }

/* Scale the shell and food together; keep the logo and interior coordinates aligned. */
.bucket-plate { width:88%; max-width:440px; aspect-ratio:100/74.08; margin-top:12px; }
.bucket-canvas { position:absolute; inset:0 auto auto 0; width:100%; aspect-ratio:1; }
.bucket-plate-base { transform:scaleY(.72); transform-origin:50% 0; }
.bucket-front { overflow:hidden; }
.bucket-front img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.bucket-shell-upper { clip-path:inset(0 0 52% 0); transform:scaleY(.72); transform-origin:50% 0; }
.bucket-shell-neck { clip-path:inset(48% 0 46% 0); transform:translateY(2.56%) scaleY(.66666667); transform-origin:50% 0; }
.bucket-shell-lower { clip-path:inset(54% 0 18% 0); transform:translateY(-15.44%); }
.bucket-shell-foot { clip-path:inset(82% 0 0 0); transform:translateY(32.302222%) scaleY(.41777778); transform-origin:50% 0; }
.bucket-plate-empty { top:19%; }
.bucket-art-crop { display:block; position:relative; width:100%; height:100%; overflow:hidden; filter:brightness(.98) saturate(.96) drop-shadow(0 2px 1px #0007); }
.bucket-art-crop img { position:absolute; max-width:none; object-fit:fill; filter:none; }

/* The existing shell was split into four transformed image slices. A single
   pre-compressed source image removes sub-pixel gaps between those slices. */
.bucket-plate-base { transform:none; clip-path:polygon(0 0%,100% 0%,100% 18.9360%,96% 24.0120%,93% 26.6400%,90% 28.2960%,87% 29.5560%,84% 30.5712%,81% 31.4136%,78% 32.1264%,75% 32.7312%,72% 33.2352%,69% 33.6672%,66% 34.0200%,63% 34.3080%,60% 34.5312%,57% 34.6968%,54% 34.7976%,51% 34.8480%,48% 34.8336%,45% 34.7688%,42% 34.6464%,39% 34.4664%,36% 34.2216%,33% 33.9120%,30% 33.5304%,27% 33.0768%,24% 32.5368%,21% 31.9032%,18% 31.1472%,15% 30.2544%,12% 29.1672%,9% 27.7992%,6% 25.9344%,3% 22.1616%,0 18.9360%); }
.bucket-front img.bucket-shell-front { inset:0; width:100%; height:100%; object-fit:fill; transform:none; clip-path:none; }
