/* Scoped to TPU controls; the standard builder and server pricing are unchanged. */
.tpu-shared-flows .tpu-size-choice:not([hidden]){display:flex;gap:8px;margin:0 0 20px}
.tpu-shared-flows .tpu-size-choice button{flex:1;min-width:0;padding:12px 8px;border:1px solid #d6dce3;border-radius:7px;background:#fff;color:#24344a;font-size:14px;font-weight:600;line-height:1.3;white-space:nowrap;box-shadow:none}
.tpu-shared-flows .tpu-size-choice button[aria-expanded="true"]{background:#18344c;border-color:#18344c;color:#fff;box-shadow:0 2px 5px #18344c20}
.tpu-shared-flows .tpu-size-choice button:hover{border-color:#18344c}
.tpu-shared-flows [hidden]{display:none!important}
.tpu-oversize-fields{border:0!important;padding:0!important;margin:0!important;min-width:0}
.tpu-oversize-fields p{margin:0 0 14px!important}
.tpu-oversize-fields label,.tpu-cart-actions label{display:block;color:#24344a;font-size:14px;font-weight:500}
.tpu-dimensions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.tpu-oversize-fields input[type=number],.tpu-oversize-fields select,.tpu-cart-actions input[type=number]{display:block;width:100%;min-width:0;height:44px;margin-top:6px;padding:9px 12px;border:1px solid #cbd2db;border-radius:6px;background:#fff;color:#25354a;font-size:15px;box-sizing:border-box}
.tpu-oversize-fields select{max-width:none}
.tpu-oversize-fields .tpu-live-estimate{padding:11px 12px;background:#f3f6f8;border-radius:6px;color:#18344c;font-size:14px;line-height:1.55}
.tpu-artwork{margin:4px 0 18px}
.tpu-upload-label{display:block;color:#24344a;font-size:14px;font-weight:500;margin-bottom:7px}
.tpu-oversize-fields .tpu-dropzone{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:104px;padding:18px 12px;border:1.5px dashed #a7b7c6;border-radius:8px;background:#f8fafc;text-align:center;cursor:pointer;overflow:hidden}
.tpu-dropzone:hover,.tpu-dropzone:focus-within{border-color:#18344c;background:#eef4f8}
.tpu-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.tpu-upload-icon{flex:0 0 32px;width:32px;height:32px;color:#18344c}
.tpu-upload-prompt{font-size:14px;line-height:2.5}
.tpu-browse{display:inline-block;background:#18344c;color:#fff;padding:0 10px;border-radius:5px;line-height:32px;white-space:nowrap}
.tpu-upload-help,.tpu-file-name{display:block;margin-top:6px;font-size:12px;line-height:1.5;color:#64748b;overflow-wrap:anywhere}
.tpu-file-name:empty{display:none}
.tpu-file-name{color:#18344c;font-weight:600}
.tpu-cart-actions{display:flex;align-items:flex-end;gap:12px}
.tpu-cart-actions .tpu-quantity{flex:0 0 90px;margin:0}
.tpu-cart-actions .tpu-oversize-submit{flex:1;min-height:44px;margin:0!important;border-radius:6px;font-size:14px;line-height:1.3;padding:12px!important}
.tpu-shared-flows button:focus-visible,.tpu-oversize-fields input:focus-visible,.tpu-oversize-fields select:focus-visible,.tpu-cart-actions input:focus-visible{outline:2px solid #2876ad;outline-offset:3px}
@media(max-width:380px){.tpu-dropzone{gap:8px!important}.tpu-upload-icon{font-size:30px}.tpu-cart-actions .tpu-quantity{flex-basis:76px}}
