/* Four-step lens selection; existing form validation and server prices remain authoritative. */
#lens-workflow{--lens-blue:#0866e8;--lens-ink:#172229;--lens-muted:#536272;scroll-margin-top:115px;color:var(--lens-ink)}
#lens-workflow[hidden],#lens-workflow [hidden],.mobile-purchase-bar[hidden]{display:none!important}
.lens-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:22px 0 20px;padding:0}
.lens-stepper button[data-lens-step]{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:9px;min-width:0;min-height:83px;padding:12px 5px;border:1px solid #d4dee7;border-radius:8px;background:#fff;color:#536272;font:650 12px/1.4 Manrope,Arial,sans-serif;text-align:center;overflow-wrap:anywhere;cursor:pointer;touch-action:manipulation}
.lens-stepper button[data-lens-step]:before{content:attr(data-lens-step);display:grid;place-items:center;flex:none;width:27px;height:27px;border:1px solid #c6d2df;border-radius:50%;background:#f0f4f8;color:#536272;font-size:12px;font-weight:750}
.lens-stepper button[aria-current="step"]{border-color:var(--lens-blue);background:#eef5ff;color:#0757c8;box-shadow:inset 0 0 0 1px var(--lens-blue)}
.lens-stepper button[aria-current="step"]:before{border-color:var(--lens-blue);background:var(--lens-blue);color:#fff}
.lens-stepper button:hover:not(:disabled){border-color:#6b99ce;background:#f4f8fd}.lens-stepper button:disabled{cursor:default;opacity:.5}
#lens-workflow button:focus-visible,#lens-workflow a:focus-visible,#lens-workflow summary:focus-visible,#lens-workflow input:focus-visible,#lens-workflow select:focus-visible,.mobile-purchase-bar button:focus-visible{outline:3px solid #0866e8;outline-offset:3px}
.lens-stage{min-width:0;padding:2px 0 12px}
#lens-workflow .lens-step-heading{font-family:Manrope,Arial,sans-serif;font-size:23px;line-height:1.3;letter-spacing:-.035em;color:#172229;margin:0 0 16px;font-weight:750;scroll-margin-top:115px}
.lens-stage>.helper,.lens-stage #rx-power-help{font-size:12px;line-height:1.75;margin:0 0 20px;color:#536272}
.lens-stage .option-group{margin-top:0}.lens-stage .option-group+.option-group{margin-top:24px}
.lens-stage .option-group legend,.lens-stage .field-label{font-size:14px;font-weight:700;color:#172229;margin-bottom:12px;line-height:1.5}
.lens-stage .option-card{border-radius:8px;min-height:76px;border-color:#c9d5e0;background:#fff;gap:7px;padding:14px 12px;align-items:flex-start}
.lens-stage .option-card:has(input:checked){border-color:#0866e8;background:#eef5ff;box-shadow:inset 0 0 0 1px #0866e8}
.lens-stage .option-card .option-name{font-size:14px;line-height:1.45;font-weight:700;color:#172229}
.lens-option-description{display:block;font-size:12px;line-height:1.65;font-weight:450;color:#536272;margin:5px 0 0;max-width:100%;letter-spacing:0}
.lens-stage .option-card .lens-option-description{color:#536272;font-size:12px}
.lens-stage .config-select{min-height:48px;border:1px solid #c1cedb;border-radius:7px;padding:12px;font:500 14px/1.5 Manrope,Arial,sans-serif;background:#fff;color:#172229}
.lens-stage .rx-eye{padding:15px;border:1px solid #d6e0e9;border-radius:9px;background:#fff}
.lens-stage .rx-eye legend{font-size:14px;line-height:1.5;font-weight:700;padding-inline:5px}
.lens-stage .rx-field input,.lens-stage .rx-field select,.lens-stage .rx-pd select,.lens-stage .rx-prism select{font-size:16px;min-height:46px;border-radius:6px;border-color:#becbd7;background:#fff;color:#172229}
.lens-stage .rx-field-error{font-size:12px;line-height:1.55;color:#a82722}.lens-stage .notice{font-size:12px;line-height:1.7;border-radius:7px}
.lens-step-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:20px;margin-top:20px;border-top:1px solid #dce4ec}
.lens-step-actions #lens-back,.lens-step-actions #lens-next{min-width:110px;min-height:48px;border-radius:7px;padding:12px 20px;font:650 14px/1.5 Manrope,Arial,sans-serif;touch-action:manipulation;cursor:pointer}
.lens-step-actions #lens-next{margin-left:auto;background:#0866e8;color:#fff;border:1px solid #0866e8}.lens-step-actions #lens-next:hover{background:#0757c8;border-color:#0757c8}
.lens-step-actions #lens-back{background:#fff;color:#172229;border:1px solid #aebdcb}.lens-step-actions #lens-back:hover{background:#eef3f7;border-color:#718ca6}.lens-step-actions button:disabled{cursor:default;opacity:.5}
.lens-price-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;margin:0 0 24px;border:1px solid #c9d9eb;border-radius:9px;background:#f3f7fd;color:#172229;min-width:0}
.lens-price-strip strong{flex:none;font-size:23px;font-weight:800;letter-spacing:-.035em;line-height:1.3}
.lens-price-strip>span{font-size:13px;font-weight:650;line-height:1.5;color:#172229}.lens-price-strip small{display:block;font-size:11px;font-weight:450;line-height:1.5;color:#536272;margin-top:3px}
.lens-entry-price{font-size:13px;line-height:1.7;color:#425b72;margin:16px 0;padding:12px 14px;border-radius:7px;background:#eef4fb;border:1px solid #d6e3ef}
.lens-flow-help{margin-top:18px;border-top:1px solid #dce4ec;border-bottom:1px solid #dce4ec;padding:3px 0;background:transparent}
.lens-flow-help summary{cursor:pointer;min-height:44px;padding:12px 0;line-height:1.5;font-size:12px;font-weight:650;color:#172229}
.lens-flow-help p{font-size:12px;line-height:1.75;color:#536272;margin:4px 0 14px}.lens-flow-help a{color:#0757c8;text-decoration:underline;text-underline-offset:3px}
#lens-workflow #config-price{margin:0 0 15px;padding:15px 16px;border:1px solid #d6e2ee;border-radius:8px;background:#f5f8fc;color:#172229;font-size:13px;line-height:1.65}
#config-price .price-row{font-size:13px;line-height:1.6;gap:12px}#config-price .price-row.total{margin-top:12px;padding-top:12px;border-top:1px solid #cbd9e8;font-weight:750}
#lens-review{padding-top:2px;scroll-margin-top:115px}#lens-review>h3{font-size:23px;font-weight:750;line-height:1.3;letter-spacing:-.035em;color:#172229;margin:0 0 12px}
.lens-review-block{border:1px solid #d4dee7;background:#f7f9fb;border-radius:8px;padding:15px 16px;margin:14px 0}
.lens-review-block h4{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:750;line-height:1.5;margin:0 0 10px;color:#172229}
.lens-review-block h4 button{font-size:11px;font-weight:650;line-height:1.5;min-height:36px;color:#0757c8;text-decoration:underline;text-underline-offset:3px;flex:none}
.lens-review-block p{font-size:13px;line-height:1.7;color:#465c6f;margin:6px 0}.lens-review-block .rx-saved-summary{border:0;padding:0;margin:0;background:transparent}
#lens-review .check-label{font-size:13px;line-height:1.65;color:#36495a;gap:10px;align-items:flex-start;margin-block:15px}#lens-review .check-label input{width:18px;height:18px;flex:none;accent-color:#0866e8;margin-top:2px}
#lens-review #add-reviewed-lenses{background:#0866e8;border-color:#0866e8;border-radius:7px;min-height:50px;font-size:14px}#lens-review #add-reviewed-lenses:hover:not(:disabled){background:#0757c8;border-color:#0757c8}
#lens-workflow .rx-cancel{min-height:44px;font-size:12px;line-height:1.5;color:#536272;text-underline-offset:3px}
.mobile-purchase-bar{display:none}
@media(max-width:800px){
 #lens-workflow,#lens-review,#lens-workflow .lens-step-heading{scroll-margin-top:95px}.rx-config:has(.lens-stepper){padding:20px 16px;border:1px solid #d6e0e9;border-radius:10px;background:#fff}
 .lens-stepper{gap:6px;margin:20px 0 18px}.lens-stepper button[data-lens-step]{font-size:11px;min-height:80px;padding:11px 4px;gap:8px}.lens-stepper button[data-lens-step]:before{width:25px;height:25px;font-size:11px}
 #lens-workflow .lens-step-heading{font-size:21px;margin-bottom:15px}.lens-stage .option-cards{grid-template-columns:1fr}.lens-stage .option-card{min-height:76px;padding:15px}.lens-stage .option-card .option-name{font-size:14px}.lens-stage .rx-eye-grid{gap:12px}.lens-stage .rx-eye{padding:13px}
 .lens-step-actions{padding-top:17px;margin-top:18px;gap:10px}.lens-step-actions #lens-back,.lens-step-actions #lens-next{min-width:0;padding:12px 17px;font-size:13px;min-height:48px}.lens-step-actions #lens-next{flex:1}.lens-step-actions #lens-back{flex:0 1 34%}
 .lens-price-strip{padding:14px 15px;gap:10px;margin-bottom:22px}.lens-price-strip strong{font-size:21px}.lens-price-strip>span{font-size:12px}.lens-price-strip small{font-size:10px;max-width:180px}.lens-review-block{padding:14px}.lens-review-block h4{font-size:13px}.lens-review-block h4 button{font-size:10px}
 .mobile-purchase-bar:not([hidden]){position:fixed;left:0;right:0;bottom:0;z-index:75;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:78px;padding:12px max(18px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:#fff;border-top:1px solid #c8d5e2;box-shadow:0 -6px 24px #1722290d;font-family:Manrope,Arial,sans-serif}
 .mobile-purchase-bar>span{min-width:0}.mobile-purchase-bar strong{display:block;color:#172229;font-size:19px;font-weight:800;line-height:1.3;letter-spacing:-.035em}.mobile-purchase-bar small{font-size:11px;line-height:1.5;color:#536272;margin:0 0 3px;display:block}
 .mobile-purchase-bar button[data-mobile-lenses]{min-height:48px;max-width:58%;flex:none;border:1px solid #0866e8;border-radius:7px;background:#0866e8;color:#fff;padding:12px 19px;font:650 13px/1.5 Manrope,Arial,sans-serif;cursor:pointer;touch-action:manipulation;white-space:normal}.mobile-purchase-bar button[data-mobile-lenses]:hover{background:#0757c8;border-color:#0757c8}
 body:has(.mobile-purchase-bar:not([hidden])){padding-bottom:calc(92px + env(safe-area-inset-bottom))}
}
@media(max-width:380px){.rx-config:has(.lens-stepper){padding:18px 12px}.lens-stepper{gap:4px}.lens-stepper button[data-lens-step]{font-size:10px;padding:10px 3px;min-height:78px}.lens-stage .rx-eye-grid{grid-template-columns:1fr}.mobile-purchase-bar:not([hidden]){gap:12px;padding-left:14px;padding-right:14px}.mobile-purchase-bar button[data-mobile-lenses]{padding-inline:14px;font-size:12px}.mobile-purchase-bar strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){#lens-workflow *,#lens-review *,.mobile-purchase-bar *{scroll-behavior:auto!important;transition:none!important}}

/* Keep the next action and current subtotal within reach during mobile configuration. */
.lens-footer-price{display:none}
#lens-workflow button:disabled{opacity:1}
.lens-stepper button:disabled{background:#f3f5f7;color:#5e6a75;border-color:#d6dee5;opacity:1}
.lens-stepper button:disabled:before{background:#e7edf2;color:#5e6a75;border-color:#c3ced8}
#lens-workflow #lens-next:disabled,#lens-review #add-reviewed-lenses:disabled{background:#dbe3eb;border-color:#bbc9d6;color:#4d5f6f;opacity:1;cursor:not-allowed}
@media(max-width:800px){
 body.lens-flow-open{padding-bottom:calc(108px + env(safe-area-inset-bottom))}
 body.lens-flow-open #lens-workflow{padding-bottom:calc(94px + env(safe-area-inset-bottom))}
 body.lens-flow-open #lens-form:not([hidden]) .lens-step-actions,
 body.lens-flow-open #lens-review:not([hidden]) .lens-review-actions{position:fixed;left:0;right:0;bottom:0;z-index:85;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:84px;margin:0;padding:12px max(16px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid #c8d5e2;background:#fff;box-shadow:0 -6px 24px #1722290d}
 body.lens-flow-open .lens-footer-price{display:block;flex:0 0 auto;min-width:77px;max-width:36%;margin-right:auto;text-align:left}
 .lens-footer-price small{display:block;font-size:10px;font-weight:500;line-height:1.5;color:#536272;white-space:nowrap}
 .lens-footer-price strong{display:block;font-size:20px;font-weight:800;line-height:1.35;letter-spacing:-.035em;color:#172229}
 body.lens-flow-open .lens-step-actions #lens-back{flex:0 0 auto;min-width:58px;padding-inline:13px}
 body.lens-flow-open .lens-step-actions #lens-next{flex:1 1 auto;max-width:160px;min-width:96px;margin-left:0;padding-inline:16px}
 body.lens-flow-open #lens-review .lens-review-actions #add-reviewed-lenses{flex:1 1 auto;min-width:0;max-width:66%;width:auto;min-height:48px;margin:0;padding:12px 17px;font-size:13px;line-height:1.45;white-space:normal}
 body.lens-flow-open .zuise-marketing-choice{bottom:calc(110px + env(safe-area-inset-bottom))}
}
@media(max-width:380px){
 body.lens-flow-open #lens-form:not([hidden]) .lens-step-actions,
 body.lens-flow-open #lens-review:not([hidden]) .lens-review-actions{gap:8px;padding-left:12px;padding-right:12px}
 body.lens-flow-open .lens-footer-price{min-width:73px}.lens-footer-price strong{font-size:18px}.lens-footer-price small{font-size:9px}
 body.lens-flow-open .lens-step-actions #lens-back{min-width:52px;padding-inline:10px;font-size:12px}
 body.lens-flow-open .lens-step-actions #lens-next{min-width:90px;padding-inline:12px;font-size:12px}
 body.lens-flow-open #lens-review .lens-review-actions #add-reviewed-lenses{font-size:12px;padding-inline:12px}
}

.lens-stage .rx-field select{display:block;width:100%;min-width:0;min-height:48px;padding:11px 30px 11px 11px;border:1px solid #becbd7;font:500 16px/1.5 Manrope,Arial,sans-serif;letter-spacing:0;appearance:auto}.lens-stage .rx-field select:disabled{color:#647487;background:#edf1f5;opacity:1;cursor:not-allowed}.lens-stage .rx-field select:focus-visible{outline:3px solid #0866e855;outline-offset:2px}.lens-stage .rx-field select[aria-invalid=true]{border-color:#b43a31}.lens-basic-options summary{min-height:44px;padding-block:12px;font-weight:650;cursor:pointer}

#lens-guide{scroll-margin-top:115px} @media(max-width:800px){#lens-guide{scroll-margin-top:95px}}
