/* Custom Packaging uses the shared store-page layout and design tokens. */
.gps-bulk-page { --bulk-border:var(--gps-color-border); --bulk-field:var(--gps-color-surface); }
.gps-bulk-intro .gps-lead { margin:0 0 28px; }
.gps-bulk-steps { margin-top:32px; }
.gps-bulk-steps ol { margin:0; padding-left:22px; display:grid; gap:20px; }
.gps-bulk-steps li { padding-left:6px; }
.gps-bulk-steps li::marker { color:var(--gps-color-primary); font-weight:700; }
.gps-bulk-steps strong,.gps-bulk-steps span { display:block; }
.gps-bulk-steps strong { font-size:16px; color:var(--gps-color-heading); }
.gps-bulk-steps span { margin-top:4px; font-size:15px; color:var(--gps-color-muted); line-height:1.6; }
.gps-bulk-help { margin-top:32px; padding-top:24px; border-top:1px solid var(--bulk-border); }
.gps-bulk-help p { margin:8px 0; }
.gps-bulk-help a { display:block; width:fit-content; font-weight:700; overflow-wrap:anywhere; }
.gps-bulk-panel { scroll-margin-top:140px; }
.gps-bulk-required { color:var(--gps-color-muted); font-size:13px; margin:0 0 24px; }
.gps-bulk-form { gap:24px; }
.gps-bulk-form fieldset { border:0; border-bottom:1px solid var(--bulk-border); padding:0 0 24px; margin:0; min-width:0; }
.gps-bulk-form legend { padding:0; margin-bottom:18px; width:100%; color:var(--gps-color-heading); font:700 18px/1.4 var(--gps-font-body); }
.gps-bulk-form legend > span { margin-right:10px; color:var(--gps-color-primary); }
.gps-bulk-form label { color:var(--gps-color-heading); font-weight:600; font-size:14px; }
.gps-bulk-form :where(input:not([type=checkbox]):not([type=radio]),select,textarea) { width:100%; min-height:var(--gps-control-height); margin-top:8px; padding:10px 13px; border:1px solid var(--bulk-border); border-radius:var(--gps-control-radius); background:#fff; color:var(--gps-color-heading); font:400 15px/1.5 var(--gps-font-body); }
.gps-bulk-page .gps-bulk-form select { appearance:none; -webkit-appearance:none; -moz-appearance:none; padding-right:48px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m5 7.5 5 5 5-5' fill='none' stroke='%23243d35' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center; background-size:20px 20px; cursor:pointer; }
.gps-bulk-form select::-ms-expand { display:none; }
.gps-bulk-form textarea.wpcf7-textarea { height:96px; min-height:96px; resize:vertical; }
.gps-bulk-form :is(input,select,textarea):focus { border-color:var(--gps-color-primary); }
.gps-bulk-form ::placeholder { color:var(--gps-color-muted); }
.gps-packaging-details:not([hidden]) { margin-top:22px; }
.gps-bulk-form [hidden] { display:none !important; }
.gps-bulk-wide { grid-column:1/-1; }
.gps-optional { font-weight:400; color:var(--gps-color-muted); }
.gps-bulk-form .wpcf7-form-control-wrap { display:block; }
.gps-bulk-form .wpcf7-list-item { margin:0; }
.gps-bulk-form .wpcf7-acceptance label { display:flex; align-items:flex-start; gap:10px; font-size:13px; font-weight:400; color:var(--gps-color-muted); }
.gps-bulk-form .wpcf7-acceptance input { width:19px; height:19px; margin:2px 0 0; flex-shrink:0; }
.gps-bulk-form .wpcf7-acceptance a { text-decoration:underline; text-underline-offset:3px; }
.gps-bulk-form input.wpcf7-submit { margin:0; background:var(--gps-color-primary); color:#fff; font-size:14px; font-weight:700; border:0; cursor:pointer; }
.gps-bulk-form input.wpcf7-submit:hover { background:var(--gps-color-accent-hover); }
.gps-bulk-form input.wpcf7-submit:disabled { cursor:not-allowed; opacity:.6; }
.gps-bulk-form .wpcf7-not-valid { border-color:#b42318; }
.gps-bulk-form .wpcf7-not-valid-tip { margin-top:6px; font-size:13px; }
.gps-bulk-form p { margin:0; }
.gps-bulk-form .wpcf7-spinner { display:none; }
.submitting .gps-bulk-form .wpcf7-spinner { display:block; margin:12px auto 0; }
.gps-bulk-panel .wpcf7-response-output { margin:24px 0 0; padding:16px; border-radius:var(--gps-control-radius); }
.gps-bulk-notes { display:block; margin-top:22px; }
.gps-bulk-form .gps-bulk-reassurance { text-align:center; margin-top:-10px; }
@media(max-width:767px) { .gps-bulk-steps { display:none; } }
@media(max-width:540px) { .gps-bulk-form .gps-form-grid { grid-template-columns:minmax(0,1fr); gap:18px; } }
.gps-field-full { grid-column: 1 / -1; }
.gps-configured-field { min-width: 0; }
.gps-field-half { grid-column: span 1; }
.gps-bulk-form .gps-choice-field { border: 0; margin: 0; padding: 0; }
.gps-bulk-form .gps-choice-field legend { font-size: 14px; font-weight: 500; margin-bottom: 8px; }
.gps-bulk-form .gps-choice-field .wpcf7-list-item { display: inline-block; margin: 0 18px 8px 0; }
.gps-bulk-form .gps-choice-field label { display: flex; align-items: center; gap: 8px; }
.gps-bulk-form input[type=file] { padding: 10px; font-size: 14px; }
.gps-shared-fields { margin-top: 8px; }
