/* The order dialog uses document scrolling, never a nested modal scroll area. */
#order-builder-v42[hidden],#order-builder-v42 [hidden]{display:none!important}
html.order-builder-open{scroll-behavior:auto!important;scroll-padding-top:0!important;overflow-x:hidden!important;overflow-y:auto!important}
body.order-builder-open{overflow:visible!important;min-width:0!important}
body.order-builder-open>:not(#order-builder-v42):not(script):not(style):not(link){display:none!important}
.order-builder-v42{position:relative;z-index:2000;min-height:100vh;min-height:100svh;width:100%;max-width:none;max-height:none;overflow:visible;background:var(--cream,#f9f2e6);color:var(--ink,#32231b);padding:clamp(16px,3vw,36px);font-family:var(--font-body,sans-serif);line-height:1.6}
.ob-shell{width:100%;max-width:1000px;margin:0 auto;padding-bottom:max(24px,env(safe-area-inset-bottom));overflow-wrap:anywhere}
.ob-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.ob-brand{display:block;width:92px;flex-shrink:0;border:0;background:transparent;padding:0;border-radius:6px}.ob-brand img{width:92px;height:92px;object-fit:contain}
.ob-close,.ob-back,.ob-copy{min-height:48px;border:1px solid #99774e;border-radius:8px;padding:10px 18px;background:#fffaf1;color:#32231b;font-weight:700}
.ob-close{display:flex;align-items:center;gap:12px}.ob-close span{font-size:26px;line-height:1}.ob-back{margin-top:24px}
.ob-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#764723}
.order-builder-v42 h2{font-family:var(--font-display,Georgia,serif);font-size:clamp(28px,5vw,46px);line-height:1.15;margin:10px 0 18px}
.order-builder-v42 h3{font-family:var(--font-display,Georgia,serif);font-size:clamp(23px,3vw,30px);line-height:1.3;margin:8px 0 18px}
.order-builder-v42 p{margin:10px 0 18px}.order-builder-v42 label{display:block;font-size:14px;font-weight:700}
.order-builder-v42 input:not([type=checkbox]),.order-builder-v42 select,.order-builder-v42 textarea{display:block;width:100%;min-width:0;min-height:48px;padding:10px 12px;margin-top:6px;border:1px solid #947c60;border-radius:6px;background:#fffefa;color:#32231b;font-size:16px;line-height:1.5;box-sizing:border-box}
.order-builder-v42 select{padding-right:30px;white-space:normal}.order-builder-v42 textarea{resize:none;overflow:hidden;max-height:none;min-height:112px}
.order-builder-v42 input[aria-invalid=true]{border:2px solid #9c2c20}
.order-builder-v42 :focus-visible{outline:3px solid #91551e;outline-offset:3px}
.ob-note{font-size:13px;color:#66513f;line-height:1.7}
.ob-flavors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
.order-builder-v42 fieldset{min-width:0;margin:0;border:1px solid #c6ae8b;border-radius:10px;padding:16px;background:#fffaf2}
.order-builder-v42 legend{padding:0 6px;font-weight:800;font-size:18px;color:#4a2c1c}
.order-builder-v42 .ob-price{font-size:13px;color:#705137;margin-top:0;margin-bottom:14px}
.ob-quantity{display:grid;grid-template-columns:minmax(72px,.65fr) minmax(0,1.35fr);gap:12px}
.order-builder-v42 .ob-promotion,.order-builder-v42 .ob-customer{margin-top:28px;padding:20px}
.ob-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.order-builder-v42 .ob-checkbox{display:flex;gap:12px;align-items:flex-start;font-weight:500}
.ob-checkbox input{width:22px;height:22px;flex-shrink:0;margin-top:3px;accent-color:#785328}
.ob-error{padding:14px 16px;border:1px solid #b7462b;border-radius:8px;background:#fff1e9;color:#7d2919;font-weight:600}
.ob-summary{margin-top:30px;padding:clamp(18px,4vw,32px);border-radius:14px;border:2px solid #c69851;background:linear-gradient(140deg,#fff9ea,#f3e3c3)}
.ob-lines{list-style:none;margin:20px 0;padding:0}.ob-lines li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:12px 0;border-bottom:1px solid #c6ae8b}.ob-lines li strong{flex-shrink:0}
.ob-totals{margin:22px 0 0}.ob-totals>div{display:flex;justify-content:space-between;gap:20px;padding:7px 0}.ob-totals dd{margin:0;font-weight:800;text-align:right}.ob-totals .ob-grand-total{margin-top:12px;padding-top:18px;border-top:2px solid #a8793a;font-size:clamp(18px,3vw,25px)}
.ob-disclaimer{font-size:13px;line-height:1.8;color:#5d4833}
.ob-send{margin-top:32px}.ob-channels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ob-channels>a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:12px;border:1px solid #785328;border-radius:8px;background:#33241b;color:#fff6e5;text-align:center;font-weight:700;line-height:1.4}
.ob-channels>a[aria-disabled=true],.ob-copy:disabled{opacity:.5;cursor:not-allowed}
.ob-text-fallback{margin-top:18px}.ob-text-fallback summary{cursor:pointer;font-weight:700;min-height:44px;padding:8px 0}.ob-text-fallback textarea{font-size:14px;white-space:pre-wrap}
@media(max-width:600px){.ob-flavors,.ob-contact-grid,.ob-channels{grid-template-columns:minmax(0,1fr)}.ob-flavors{gap:18px}.ob-header{margin-bottom:12px}.ob-brand,.ob-brand img{width:76px;height:76px}.ob-lines li{display:block}.ob-lines li strong{display:block;margin-top:4px}.ob-totals>div{gap:12px}.order-builder-v42 .ob-promotion,.order-builder-v42 .ob-customer{padding:14px}}
@media(prefers-reduced-motion:reduce){.order-builder-v42 *{scroll-behavior:auto!important;transition:none!important}}
