.sign-builder{color:var(--site-text,#161b24);font-size:14px}.sign-builder *{box-sizing:border-box}.sign-builder [hidden]{display:none!important}.sign-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sign-heading h2{font-size:27px;margin:0 0 5px;line-height:1.25}.sign-heading p{margin:0;color:#647080}.sign-chip{font-size:11px;border:1px solid #dce0e6;padding:8px;border-radius:6px;white-space:nowrap}.sign-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.sign-modes button{display:flex;align-items:center;gap:12px;text-align:left;background:#fff!important;color:#171c25!important;border:1px solid #d5dbe3!important;border-radius:9px;padding:12px;min-width:0}.sign-modes button[aria-pressed=true]{border:2px solid #171c25!important;padding:11px;background:#f7f9fc!important}.sign-modes img{width:75px;height:53px;object-fit:contain;flex:none}.sign-modes strong{display:block;font-size:16px;white-space:nowrap}.sign-modes small{display:block;color:#737d8b;font-size:11px;margin-top:4px}.sign-workspace{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sign-controls,.sign-preview-panel{padding:15px;border:1px solid #dce0e6;border-radius:9px;min-width:0;background:#fff}.sign-builder h3{font-size:15px;margin:0 0 10px}.sign-controls h3:not(:first-child){margin-top:14px}.sign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sign-builder label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#515c6c;min-width:0}.sign-builder input,.sign-builder select,.sign-builder textarea{width:100%;min-width:0;height:34px;padding:5px 7px;border:1px solid #d4d9e0;border-radius:5px;color:#171c25;background:#fff;font:inherit;font-size:13px}.sign-builder textarea{height:60px;resize:vertical;margin-bottom:8px}.sign-builder input[type=color]{padding:3px}.sign-text-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sign-text-grid label:first-child{grid-column:span 2}.sign-presets{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0 12px}.sign-presets button,.sign-builder .secondary{background:#fff!important;border:1px solid #ccd3df!important;color:#202939!important}.sign-presets button{font-size:10px;padding:5px 8px;border-radius:4px}.sign-preview-stage{display:flex;align-items:center;justify-content:center;width:100%;height:215px;background:linear-gradient(145deg,#eef0f3,#e0e4e9)!important;border:0;padding:22px;border-radius:6px;color:#596577!important}.sign-preview-stage:disabled{opacity:1;cursor:default}.sign-preview-stage canvas{max-width:100%;max-height:100%;width:auto;height:auto;box-shadow:0 3px 12px #0002}.sign-preview-stage span{font-size:13px;line-height:1.6}#sign-dimensions{font-size:11px;margin:7px 0 12px;color:#647080}.sign-builder fieldset{border:0;margin:0;padding:0}.sign-builder legend{font-size:14px;font-weight:700;margin-bottom:6px}.sign-band-shapes{display:flex;gap:6px;margin-bottom:8px}.sign-band-shapes button{flex:1;min-width:0;font-size:23px;line-height:1;background:#f9fafc!important;color:#18202c!important;border:1px solid #d6dce5!important;padding:5px;border-radius:5px}.sign-band-shapes small{display:block;font-size:10px;margin-top:4px}.sign-band-shapes [aria-pressed=true]{outline:1px solid #172033}.sign-band-shapes+.sign-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sign-builder input[type=file]{font-size:10px;padding:3px}.sign-edit-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px}.sign-edit-footer strong{font-size:19px}.sign-edit-footer button{font-size:12px;padding:10px 12px;white-space:nowrap}.sign-list-heading{display:flex;justify-content:space-between;align-items:center;margin:15px 0 8px}.sign-list-heading h3{margin:0}.sign-list-heading button{font-size:12px;padding:8px 12px}.sign-list-heading span{color:#6a7585;font-size:12px}.sign-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sign-card{display:flex;gap:12px;padding:10px;border:1px solid #d6dde6;border-radius:7px;background:#fff;min-width:0}.sign-card-thumb{width:100px;min-height:74px;flex:none;display:flex;align-items:center;justify-content:center;background:#eceff3!important;padding:7px;border:0;border-radius:4px}.sign-card-thumb img{width:auto;max-width:100%;max-height:75px;object-fit:contain;box-shadow:0 1px 4px #0002}.sign-card strong,.sign-card small,.sign-card b{display:block}.sign-card strong{font-size:12px}.sign-card small{font-size:10px;color:#6b7380;margin:3px 0}.sign-card b{font-size:13px}.sign-card-actions{display:flex;align-items:center;gap:7px;margin-top:4px;flex-wrap:wrap}.sign-card-actions input{width:50px;height:26px;font-size:11px}.sign-card-actions button{padding:2px!important;font-size:11px!important;min-height:0!important}.sign-total{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;border-top:1px solid #e2e6ec;padding-top:12px}.sign-total span{font-size:11px;color:#6b7581}.sign-total strong{font-size:18px;white-space:nowrap}.sign-builder .hint{font-size:10px;line-height:1.6;color:#6e7683;margin:8px 0}.sign-list-empty{color:#77818f;font-size:12px;grid-column:1/-1;margin:5px 0}.sign-builder .is-error{color:#b03e2d}#sign-message{font-size:12px;margin:8px 0}.sign-purchase{display:grid;gap:8px}.sign-editor #de-paper-select,.sign-editor #de-cart{display:none!important}.sign-editor{--paper-bg:#fff}.sign-purchase button{font-size:14px;white-space:nowrap;padding:14px 10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1001px) and (max-height:850px){.sign-heading{margin-bottom:10px}.sign-heading h2{font-size:23px}.sign-modes button{padding:8px}.sign-modes button[aria-pressed=true]{padding:7px}.sign-modes img{height:42px;width:60px}.sign-preview-stage{height:175px}.sign-controls,.sign-preview-panel{padding:12px}.sign-builder .hint{margin:4px 0}}
@media(max-width:1000px){.sign-purchase{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.sign-heading{align-items:start}.sign-heading h2{font-size:21px}.sign-heading p{font-size:12px}.sign-chip{font-size:9px;padding:5px;white-space:normal;max-width:92px}.sign-modes{gap:6px}.sign-modes button{flex-direction:column;text-align:center;padding:10px 4px;gap:7px}.sign-modes button[aria-pressed=true]{padding:9px 3px}.sign-modes img{width:70px;height:47px}.sign-modes strong{font-size:12px}.sign-modes small{display:none}.sign-workspace{display:flex;flex-direction:column}.sign-preview-panel{order:-1}.sign-preview-stage{height:210px}.sign-text-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sign-band-shapes+.sign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sign-cards{grid-template-columns:1fr}.sign-total{align-items:flex-end}.sign-total span{max-width:55%}.sign-total strong{font-size:16px}.sign-edit-footer{flex-wrap:wrap}.sign-edit-footer>div{display:flex;gap:6px}.sign-edit-footer button{padding:9px}.sign-builder{font-size:13px}}
/* Isolate compact controls from the storefront's full-width form defaults. */
.sign-builder label{margin:0!important;gap:3px!important;line-height:1.3!important}.sign-builder input,.sign-builder select,.sign-builder textarea{margin:0!important;min-height:0!important}.sign-builder button{width:auto;min-height:0;margin:0;line-height:1.35}.sign-modes button,.sign-preview-stage{width:100%!important}.sign-builder form{margin:0!important}.sign-builder h3{line-height:1.3}.sign-builder #sign-text{margin-bottom:8px!important}.sign-list-heading h3{white-space:nowrap}.sign-list-heading>button{flex:none;width:auto!important}.sign-edit-footer>div{display:flex;gap:6px}.sign-edit-footer button{flex:none}.sign-card-thumb{width:100px!important}.sign-controls{gap:0!important}.sign-preview-panel>h3 small{color:#7c8591;font-weight:400;font-size:10px}.sign-purchase .secondary{background:#fff!important;color:#171c25!important;border:1px solid #cdd4de}
@media(min-width:1001px){.sign-builder .sign-heading{margin-bottom:10px}.sign-builder .sign-modes{margin-bottom:10px}.sign-builder .sign-controls,.sign-builder .sign-preview-panel{padding:12px}.sign-builder .sign-preview-stage{height:180px}.sign-builder .sign-controls h3{margin:0 0 6px}.sign-builder .sign-controls h3:not(:first-child){margin-top:10px}.sign-builder .sign-presets{margin:6px 0 10px}.sign-builder #sign-text{height:48px}.sign-builder .sign-grid{gap:6px}.sign-builder .sign-list-heading{margin:10px 0 6px}.sign-builder .sign-total{margin-top:8px;padding-top:8px}.sign-builder .sign-card{padding:7px}.sign-builder .sign-card-thumb{min-height:58px}.sign-builder .sign-card-thumb img{max-height:60px}.sign-builder .sign-heading p{font-size:12px}.sign-builder .sign-edit-footer{margin-top:9px}}
@media(max-width:650px){#sign-editing>.sign-edit-footer{position:sticky;bottom:8px;z-index:5;background:#fff;border:1px solid #d6dde6;border-radius:8px;padding:10px;box-shadow:0 4px 15px #0001}.sign-card-thumb{width:85px!important}}
@media(min-width:1001px){.sign-builder .sign-band-shapes button{padding:4px}.sign-builder .sign-band-shapes small{font-size:9px}.sign-builder .sign-preview-panel legend{margin-bottom:5px}.sign-builder .sign-preview-panel h3{margin-bottom:7px}.sign-builder .sign-preview-stage{height:150px}.sign-builder #sign-dimensions{margin:5px 0 8px}.sign-builder .sign-band-shapes{margin-bottom:6px}.sign-builder .sign-preview-panel{display:flex;flex-direction:column}.sign-builder .sign-edit-footer{margin-top:auto;padding-top:8px}}
@media(min-width:1001px){.sign-builder .sign-heading h2{font-weight:700!important}.sign-builder h3,.sign-modes strong{font-weight:700!important}}

.sign-upload{position:relative}.sign-upload span{display:block;border:1px solid #ccd3df;border-radius:5px;height:34px;line-height:32px;text-align:center;background:#f7f8fa;font-size:11px;color:#172033}.sign-builder .sign-upload input{position:absolute;bottom:0;left:0;height:34px;opacity:0;cursor:pointer}.sign-upload:focus-within span{outline:2px solid #123368;outline-offset:1px}

/* v129: keep the existing product layout; editing is a modal only. */
.sign-product-page .product91-side{max-height:none!important;overflow:visible!important}
.sign-builder>.sign-heading{margin:12px 0 22px}.sign-builder>.sign-heading h2{font-size:25px}.sign-launch{display:flex!important;align-items:center;gap:18px;width:100%!important;padding:22px!important;border-radius:14px;background:#181818!important;color:#fff!important;text-align:left;margin:16px 0!important}.sign-launch img{width:64px;height:48px;object-fit:contain;border-radius:3px}.sign-launch span{flex:1}.sign-launch strong{display:block;font-size:18px}.sign-launch small{display:block;margin-top:5px;font-size:12px;color:#ddd}.sign-launch b{font-size:26px}.sign-launch[hidden]{display:none!important}
.sign-dialog{width:min(1140px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);height:auto;margin:auto;padding:20px;border:1px solid #d4dbe5;border-radius:14px;background:#fff;color:#172033;overflow:auto;overscroll-behavior:contain}.sign-dialog::backdrop{background:#18202c99;backdrop-filter:blur(2px)}body:has(#sign-dialog[open]){overflow:hidden}.sign-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.sign-dialog-heading h2{font-size:23px;margin:0}.sign-dialog-heading p{font-size:12px;margin:4px 0 0;color:#6b7582}.sign-dialog-heading>button{flex:none;padding:8px 12px;font-size:12px}.sign-dialog #sign-dialog-message{font-size:12px;margin:8px 0 0}.sign-dialog #sign-dialog-message:empty{display:none}.sign-builder>.sign-cards{grid-template-columns:1fr}.sign-purchase{grid-template-columns:1fr 1fr}
@media(max-width:650px){.sign-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px;border-radius:10px}.sign-dialog-heading h2{font-size:19px}.sign-dialog-heading p{font-size:10px}.sign-launch{gap:12px;padding:16px!important}.sign-launch strong{font-size:15px}.sign-builder>.sign-heading{flex-wrap:wrap}.sign-builder>.sign-heading h2{font-size:21px}.sign-dialog .sign-workspace{gap:10px}}
.sign-builder .sign-dialog{min-height:0!important;height:auto!important}

.sign-builder .sign-preview-stage{padding:12px!important}
.sign-builder .sign-font-trigger{height:34px;width:100%;padding:3px 8px;font-size:14px;text-align:left;border:1px solid #ccd3df;background:#fff!important;color:#172033!important;border-radius:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sign-builder .sign-font-dialog{width:min(620px,calc(100vw - 24px));height:auto!important;min-height:0!important;max-height:85dvh;padding:18px;background:#fff;color:#172033;border:1px solid #d6dce5;border-radius:12px;margin:auto}.sign-font-dialog::backdrop{background:#17203377}.sign-font-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sign-font-heading button{padding:6px 12px;font-size:12px}.sign-font-list{max-height:55dvh;overflow:auto;margin-top:10px;display:grid;gap:6px}.sign-builder .sign-font-row{display:block;width:100%;padding:12px;text-align:left;background:#fff!important;color:#172033!important;border:1px solid #dce0e6;border-radius:6px}.sign-font-row strong{display:block;font-size:18px}.sign-font-row span{display:block;font-size:24px;line-height:1.6;overflow-wrap:anywhere}.sign-font-row small{display:block;font-size:10px;color:#747d8c}.sign-font-row[aria-pressed=true]{outline:2px solid #123368;outline-offset:-2px}.sign-font-dialog p{font-size:12px}

.product91-side .sign-purchase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:stretch}.product91-side .sign-purchase>button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;min-width:0;height:48px;min-height:48px;margin:0;padding:12px 8px;line-height:1.4;font-size:15px}.sign-purchase .ui-icon,.sign-purchase svg{display:block;flex:0 0 20px;width:20px;height:20px;margin:0}
@media(max-width:1000px){body:has(.sign-purchase){padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.product91-side .sign-purchase{position:fixed;inset:auto 0 0;z-index:120;padding:12px max(16px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));box-sizing:border-box;background:var(--site-panel,#fff);border-top:1px solid var(--site-border,#ddd);box-shadow:0 -5px 20px #0000000a}}
.sign-color-picker{position:relative;margin:0!important;padding:0!important;border:0!important;min-width:0}.sign-color-picker summary{display:flex;align-items:center;gap:7px;list-style:none;height:34px;padding:5px 7px;background:#fff;border:1px solid #d4d9e0;border-radius:5px;cursor:pointer;font-size:13px;color:#171c25}.sign-color-picker summary::-webkit-details-marker{display:none}.sign-color-picker summary:after{content:'⌄';margin-left:auto}.sign-color-dot{display:inline-block;width:14px;height:14px;flex:0 0 14px;border:1px solid #0003;border-radius:50%;box-sizing:border-box}.sign-color-menu{position:absolute;top:38px;left:0;right:0;z-index:30;max-height:230px;overflow:auto;padding:4px;background:#fff;border:1px solid #d4d9e0;border-radius:7px;box-shadow:0 6px 16px #0002}.sign-color-menu button{display:flex;align-items:center;gap:8px;width:100%!important;min-height:32px!important;padding:6px 8px!important;background:#fff!important;color:#171c25!important;font-size:12px;border:0;text-align:left;border-radius:4px}.sign-color-menu button[aria-pressed=true]{background:#eef0f3!important}.sign-color-menu button:hover{background:#f4f5f6!important}
