.pp-disclosure{clear:both;grid-column:1/-1;width:100%;margin:24px 0;border:1px solid #d6dfd8;border-radius:18px;background:#fff;color:#17352e;overflow:hidden}
.pp-disclosure>summary{padding:18px 22px;font-weight:700;cursor:pointer;list-style-position:inside}
.pp-preview{--pp-ink:#234b40;max-width:960px;margin:0 auto;padding:20px;color:#1e3932;font-family:inherit;box-sizing:border-box;line-height:1.7;text-align:right}
[data-pastry-product-preview][hidden]{display:none!important}
.pp-preview[data-pastry-integrated]{width:100%;min-width:0;margin:16px auto 0;border:1px solid #d6dfd8;border-radius:16px;background:#fff}
.pp-preview *{box-sizing:border-box}.pp-preview [hidden]{display:none!important}
.pp-heading{display:flex;justify-content:space-between;gap:12px;font-size:14px}.pp-heading [data-pastry-state]{font-size:12px;color:#73817a}
.pp-scene{height:clamp(310px,45vw,510px);position:relative;margin:12px 0;background:#eaf0eb;border-radius:16px;overflow:hidden}
.pp-scene canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:pan-y}.pp-scene canvas:active{cursor:grabbing}
.pp-scene-hint{position:absolute;bottom:10px;inset-inline:6px;text-align:center;font-size:11px;color:#61766b;pointer-events:none}
.pp-scene [data-pastry-fallback]{position:absolute;top:40%;inset-inline:16px;text-align:center;font-size:13px}
.pp-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.pp-preview button,.pp-art>summary,.pp-lid{font:inherit;color:var(--pp-ink);border:1px solid #cddbd1;background:#f6f8f5;border-radius:10px;min-height:44px}
.pp-preview button{cursor:pointer;padding:8px}.pp-preview button:hover,.pp-art>summary:hover{background:#e9f0e9}
.pp-steps button{font-size:12px}.pp-steps button[aria-pressed=true],.pp-preview .pp-build{color:#fff;background:var(--pp-ink);border-color:var(--pp-ink)}
.pp-preview fieldset{margin:16px 0;padding:0;border:0;min-width:0}.pp-preview legend{font-size:12px;padding:0 0 5px;color:#6d7d72}
.pp-dimensions,.pp-placement{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pp-dimensions label,.pp-placement label{min-width:0;display:flex;flex-direction:column;gap:3px;font-size:12px}
.pp-preview input:not([type=file]),.pp-preview select{font:inherit;width:100%;height:43px;min-width:0;border:1px solid #cdd9d0;border-radius:9px;background:#fff;color:#234b40;padding:7px 10px}
.pp-preview input:not([type=file]){direction:ltr;text-align:center;font-size:16px}.pp-preview input[aria-invalid=true]{border-color:#a74532}
.pp-customize{position:relative}.pp-art>summary{width:calc(50% - 4px);padding:10px 6px;text-align:center;cursor:pointer;font-size:13px;list-style:none}.pp-art>summary::-webkit-details-marker{display:none}
.pp-lid{position:absolute;top:0;inset-inline-end:0;width:calc(50% - 4px);display:flex;align-items:center;gap:5px;padding-inline:10px;font-size:12px;white-space:nowrap}
.pp-lid select{border:0;background:transparent;height:43px;padding:4px 0}.pp-art-body{padding:16px;margin-top:10px;border:1px solid #dce4dc;border-radius:12px;background:#fafbf9}
.pp-part-label{display:flex;gap:12px;align-items:center;font-size:13px}.pp-part-label select{flex:1}
.pp-file{display:block;margin-top:14px;font-size:13px}.pp-file input{display:block;font:inherit;font-size:12px;max-width:100%;margin-top:5px}
.pp-art-name{font-size:12px;color:#587361;overflow-wrap:anywhere}.pp-art-body canvas{display:block;width:100%;height:auto;border-radius:10px;border:1px solid #cfdacf;touch-action:none}
.pp-zoom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 0;font-size:12px}
.pp-zoom-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}.pp-zoom-controls button{width:44px;height:44px;padding:0;font-size:24px;line-height:1}
.pp-zoom-controls output{min-width:64px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}.pp-zoom-controls button:disabled{opacity:.4;cursor:default}
.pp-preview .pp-hint{font-size:11px;line-height:1.8;color:#65776a;margin:8px 0}.pp-art-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.pp-art-actions button{font-size:12px}
.pp-preview .pp-build{width:100%;margin-top:10px;font-size:13px}.pp-message{font-size:12px;line-height:1.8;color:#885b2c;overflow-wrap:anywhere}
.pp-preview :focus-visible,.pp-disclosure>summary:focus-visible{outline:3px solid #b79456;outline-offset:3px}
.pp-preview fieldset:disabled{opacity:.55}.pp-preview .pp-order-note{margin-top:12px}
/* Core's order stylesheet loads later and styles every button/select. Keep the
   existing compact editor controls scoped when embedded in that order form. */
[data-pastry-app] .pp-preview button{font:inherit;min-height:44px;padding:8px;border:1px solid #cddbd1;border-radius:10px;background:#f6f8f5;color:var(--pp-ink);box-shadow:none;transform:none}
[data-pastry-app] .pp-preview button:not(:disabled):hover{background:#e9f0e9;box-shadow:none;transform:none}
[data-pastry-app] .pp-preview .pp-steps button,[data-pastry-app] .pp-preview .pp-art-actions button{font-size:12px}
[data-pastry-app] .pp-preview .pp-steps button[aria-pressed=true],[data-pastry-app] .pp-preview .pp-build{background:var(--pp-ink);border-color:var(--pp-ink);color:#fff}
[data-pastry-app] .pp-preview .pp-steps button[aria-pressed=true]:hover,[data-pastry-app] .pp-preview .pp-build:not(:disabled):hover{background:var(--pp-ink);color:#fff}
[data-pastry-app] .pp-preview .pp-build{font-size:13px}
[data-pastry-app] .pp-preview .pp-zoom-controls button{width:44px;height:44px;padding:0;font-size:24px;line-height:1}
[data-pastry-app] .pp-preview select{font:inherit;min-height:0;height:43px;margin-top:0;padding:7px 10px;border:1px solid #cdd9d0;border-radius:9px;background:#fff;color:#234b40;box-shadow:none}
[data-pastry-app] .pp-preview .pp-lid select{border:0;background:transparent;padding:4px 0}
[data-pastry-app] .pp-preview input[type=file]{font-size:12px}
[data-pastry-app] .pp-preview :focus-visible{outline:3px solid #b79456;outline-offset:3px}
@media(max-width:600px){.pp-preview{padding:12px}.pp-disclosure>summary{padding:15px 12px;font-size:14px}.pp-scene{height:340px}.pp-heading{font-size:12px}.pp-heading [data-pastry-state]{font-size:11px}.pp-art-body{padding:10px}.pp-art>summary{font-size:11px}.pp-placement label{font-size:10px}.pp-steps{gap:4px}.pp-steps button{padding:7px 2px}}
@media(max-width:600px){[data-pastry-app] .pp-preview .pp-steps button{padding:7px 2px}}
@media(prefers-reduced-motion:reduce){.pp-preview *{scroll-behavior:auto!important}}
