/* Scoped controls: no theme-dependent text input used for a function selection. */
.bsgp-app [hidden],.bsgp-crm [hidden],.bsgp-photo-dialog [hidden]{display:none!important}
.bsgp-function-select-wrap{display:block;position:relative;width:100%;min-width:0}
.bsgp-function-select-wrap:after{content:"";position:absolute;right:17px;top:calc(50% - 5px);width:8px;height:8px;border-right:2px solid #17245b;border-bottom:2px solid #17245b;transform:rotate(45deg);pointer-events:none}
select[data-bsgp-function-select]{appearance:none!important;-webkit-appearance:none!important;display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:48px!important;padding:11px 43px 11px 12px!important;border:1px solid #b8c6d8!important;border-radius:8px!important;background:#fff!important;color:#17245b!important;font:inherit!important;font-size:16px!important;line-height:1.4!important;cursor:pointer}
select[data-bsgp-function-select]:focus-visible{outline:3px solid #9cc4ef;outline-offset:2px}
.bsgp-form-steps{list-style:none!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0 0!important;padding:0!important}
.bsgp-form-steps li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;min-width:0;color:#6c7486;line-height:1.35}
.bsgp-form-steps li:before{display:none!important}.bsgp-form-steps li span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #c5cedd;border-radius:50%;background:#fff;font-size:13px;font-weight:700}
.bsgp-form-steps li small{font-size:12px;overflow-wrap:anywhere}.bsgp-form-steps li[aria-current=step]{color:#17245b;font-weight:700}.bsgp-form-steps li[aria-current=step] span{background:#17245b;color:#fff;border-color:#17245b}.bsgp-form-steps li.is-complete span{background:#e4f1e9;border-color:#62a782;color:#205a3b}
.bsgp-progress-wrap{scroll-margin-top:24px}.bsgp-photo-help{font-size:13px;line-height:1.5}.bsgp-app .bsgp-recrop-photo{margin-top:10px}
.bsgp-photo-dialog,.bsgp-photo-dialog *{box-sizing:border-box}.bsgp-photo-dialog{position:fixed!important;inset:0!important;margin:auto!important;border:0!important;padding:0!important;width:min(900px,calc(100vw - 32px))!important;max-width:900px!important;max-height:calc(100dvh - 32px)!important;border-radius:18px!important;background:#fff!important;color:#172033!important;box-shadow:0 25px 100px #0007;font:16px/1.5 Arial,sans-serif!important;overflow:auto!important;z-index:2147483647!important}
.bsgp-photo-dialog::backdrop{background:rgba(13,22,44,.78)}
.bsgp-photo-dialog:not([open]){display:none!important}.bsgp-photo-dialog[open]{display:block!important}
.bsgp-photo-dialog h2{font:700 24px/1.25 Arial,sans-serif!important;margin:4px 0 0!important;color:#17245b!important}.bsgp-photo-dialog p{margin:0 0 14px!important;padding:0!important;line-height:1.5!important;color:#4a566b!important}
.bsgp-crop-head{padding:20px 24px;border-bottom:1px solid #e2e7ef;display:flex;justify-content:space-between;align-items:center;gap:12px}.bsgp-crop-kicker{color:#526685;font-size:11px;letter-spacing:.07em;text-transform:uppercase;font-weight:700}.bsgp-crop-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:22px 24px;gap:28px}
.bsgp-crop-preview-column{min-width:0;text-align:center}.bsgp-crop-stage{position:relative;max-width:290px;margin:auto;background:repeating-conic-gradient(#f1f3f6 0% 25%,#fff 0% 50%) 0 / 18px 18px;border:2px solid #17245b;border-radius:0;overflow:hidden}.bsgp-crop-stage canvas{display:block;width:100%!important;height:auto!important;aspect-ratio:7/9;touch-action:none;cursor:grab}.bsgp-crop-stage canvas:active{cursor:grabbing}.bsgp-crop-stage canvas:focus-visible{outline:3px solid #508bd0;outline-offset:-4px}.bsgp-crop-guide{position:absolute;inset:0;border-radius:0;pointer-events:none}.bsgp-crop-guide span{position:absolute;left:0;right:0;height:1px;border-top:1px dashed rgba(255,255,255,.65);box-shadow:0 1px 0 #0002}.bsgp-crop-guide span:first-child{top:33.333%}.bsgp-crop-guide span:last-child{top:66.666%}.bsgp-photo-dialog .bsgp-crop-caption{font-size:12px!important;margin-top:10px!important;margin-bottom:4px!important}.bsgp-photo-dialog [data-crop-resolution]{font-size:12px!important}
.bsgp-crop-controls{min-width:0}.bsgp-crop-controls>label{display:block;font-weight:700;margin:12px 0 6px}.bsgp-crop-zoom{display:flex;align-items:center;gap:12px}.bsgp-photo-dialog input[type=range]{appearance:auto!important;-webkit-appearance:auto!important;width:100%;min-width:0;padding:0!important;margin:0!important;accent-color:#17245b;height:32px!important}.bsgp-crop-tools{display:flex;gap:10px;margin:14px 0 22px;flex-wrap:wrap}
.bsgp-photo-dialog button{appearance:none!important;-webkit-appearance:none!important;display:inline-block!important;min-height:44px;border:1px solid #c2ccdc!important;border-radius:8px!important;background:#fff!important;color:#17245b!important;padding:9px 13px!important;font:600 14px/1.3 Arial,sans-serif!important;cursor:pointer;white-space:normal}.bsgp-photo-dialog button:disabled{opacity:.5;cursor:not-allowed}.bsgp-photo-dialog button:focus-visible,.bsgp-photo-dialog input:focus-visible{outline:3px solid #9cc4ef!important;outline-offset:2px}.bsgp-photo-dialog [data-crop-close]{font-size:26px!important;padding:3px 12px!important}
.bsgp-crop-message{padding:12px;background:#edf4fb;border-radius:8px;font-size:13px;overflow-wrap:anywhere}.bsgp-crop-message.is-error{background:#fff0ee;color:#9d2d24}
.bsgp-crop-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e7ef;position:sticky;bottom:0;background:#fff;z-index:2}.bsgp-photo-dialog [data-crop-save]{background:#17245b!important;color:#fff!important;border-color:#17245b!important;min-width:172px}
@media(max-width:600px){.bsgp-form-steps{gap:4px!important}.bsgp-form-steps li small{font-size:10px}.bsgp-form-steps li span{width:27px;height:27px}.bsgp-photo-dialog{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.bsgp-crop-head{padding:15px 16px}.bsgp-photo-dialog h2{font-size:21px!important}.bsgp-crop-body{grid-template-columns:1fr;padding:16px;gap:8px}.bsgp-crop-stage{width:min(56vw,245px)}.bsgp-crop-controls{font-size:14px}.bsgp-crop-footer{padding:12px 16px max(12px,env(safe-area-inset-bottom));gap:8px}.bsgp-crop-footer button{flex:1;min-width:0!important}.bsgp-function-select-wrap{max-width:100%}.bsgp-atk-row{min-width:0}}
@media(prefers-reduced-motion:reduce){.bsgp-progress>span{transition:none!important}}

/* One source of body measurements; no duplicate garment inputs. */
.bsgp-measure-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.bsgp-measure-summary>div{padding:12px 14px;border:1px solid #dfe5ee;border-radius:8px;background:#fff;min-width:0}
.bsgp-measure-summary dt{font-size:12px;color:#59677c;overflow-wrap:anywhere}
.bsgp-measure-summary dd{margin:4px 0 0;font-size:16px;font-weight:700;color:#17245b}
.bsgp-crop-specs{padding:16px;border:1px solid #dfe5ee;border-radius:10px;background:#f5f7fb;margin-top:20px;display:grid;gap:6px}
.bsgp-crop-specs strong{font-size:14px;color:#17245b}.bsgp-crop-specs span{font-size:14px}.bsgp-crop-specs small{font-size:12px;line-height:1.5;color:#59677c}
.bsgp-app .bsgp-capture-card[data-kind=passport_photo] .bsgp-capture-preview img{border-radius:0!important;object-fit:contain!important}
@media(max-width:480px){.bsgp-measure-summary{grid-template-columns:1fr}.bsgp-crop-specs{margin-top:12px}}
.bsgp-photo-dialog button{touch-action:manipulation}
.bsgp-mini-frame.portrait{border-radius:0!important}
.bsgp-app .bsgp-capture-card[data-mode=portrait] .bsgp-capture-preview{width:100%;max-width:300px;min-height:0;max-height:none;aspect-ratio:7/9;align-self:center;justify-self:center;padding:0}
