#builder{scroll-margin-top:74px;padding-top:64px;padding-bottom:64px;--map-pink:#ae315f;--map-border:#eadce1}
#builder .builder-grid{display:block}#builder .builder-intro{margin-bottom:28px;display:flex;justify-content:space-between;align-items:end;gap:30px}#builder h2{font-size:clamp(2.6rem,5vw,4.5rem);margin-bottom:0}#builder .builder-intro>p{max-width:475px;font-size:1rem;margin:0;line-height:1.65}#builder .eyebrow{margin-bottom:12px;font-size:.78rem}
.lash-studio{background:#fff;border:1px solid var(--map-border);border-radius:12px;overflow:hidden;box-shadow:0 20px 65px #50192c0b}.mapper-presets{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--map-border)}.mapper-label{font-size:.875rem;font-weight:800}.preset-list{display:flex;gap:7px;flex-wrap:wrap}.mapper-pill{padding:9px 14px;background:#fff;border:1px solid #d8cdd1;border-radius:30px;font-size:.875rem;font-weight:600;min-height:44px}.mapper-pill[aria-pressed=true]{background:#111;color:#fff;border-color:#111}.mapper-pill:hover{border-color:#111}.mapper-workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px}.mapper-canvas{min-width:0;padding:24px;border-right:1px solid var(--map-border)}.mapper-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}.mapper-live{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mapper-link{padding:5px 0;min-height:36px;border:0;background:none;text-decoration:underline;text-underline-offset:4px;font-size:.8125rem;font-weight:600;color:#62515a}.mapper-photo{position:relative;background:#ebd0bf;border-radius:7px;overflow:hidden}.mapper-photo svg{display:block;width:100%;height:auto;aspect-ratio:1.7}.mapper-photo .lash-hit{cursor:pointer;pointer-events:stroke}.mapper-photo .lash-hit:hover{stroke:#b1336550}.mapper-photo .lash-fibre{pointer-events:none}.mapper-photo .selected-root{pointer-events:none}.mapper-photo.bare #mapperFibres,.mapper-photo.bare #mapperRoots{visibility:hidden}.mapper-direction{display:flex;justify-content:space-between;font-size:.75rem;color:#74636b;padding:9px 0 15px}.mapper-zone-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.mapper-zone{min-width:0;text-align:center;background:#fff;border:1px solid var(--map-border);border-top:3px solid #eadce1;border-radius:4px;padding:10px 3px;color:#62515a}.mapper-zone[aria-pressed=true]{border-color:#ae315f;background:#fff0f5;color:#852149}.mapper-zone strong{display:block;font-size:.875rem;font-weight:700;margin-bottom:4px}.mapper-zone span{display:block;font-size:.75rem;line-height:1.6}.mapper-caption{font-size:.8125rem;color:#66565e;line-height:1.6;margin:17px 0 0}.mapper-editor{padding:24px;background:#fffafb;min-width:0}.mapper-editor h3{font-size:1.375rem;margin:3px 0 3px;letter-spacing:-.045em}.mapper-editor .selection-context{font-size:.8125rem;color:#705d67;margin:0 0 18px}.mapper-scope{border:0;margin:0 0 20px;padding:0;min-width:0}.mapper-scope legend{font-size:.875rem;font-weight:700;padding:0;margin-bottom:8px}.mapper-scope-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.mapper-scope button{min-height:40px;background:white;border:1px solid #ddcfd5;border-radius:4px;padding:5px;font-size:.8125rem;font-weight:600}.mapper-scope button[aria-pressed=true]{background:#f4d5e0;border-color:#ab3862;color:#752346}.mapper-lash-list{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin:9px 0 22px}.mapper-lash-list button{background:#fff;border:1px solid #ddcfd5;border-radius:4px;min-height:38px;font-size:.8125rem;font-weight:700;padding:4px}.mapper-lash-list button[aria-pressed=true]{background:#111;color:white;border-color:#111}.mapper-length-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.mapper-length-head label{font-size:.875rem;font-weight:700}.mapper-length-head output{font-size:1.6rem;font-weight:800;letter-spacing:-.04em}.mapper-length-head output small{font-size:.8125rem;font-weight:600;letter-spacing:0}.mapper-range-row{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:9px}.mapper-step{border:1px solid #dbcbd2;background:white;border-radius:4px;height:34px;font-size:1.25rem}.mapper-range-row input{accent-color:#a62e5a;width:100%;min-width:0;cursor:pointer;height:36px}.mapper-range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#77626c;margin:0 43px}.mapper-curls{border:0;padding:0;margin:20px 0 0}.mapper-curls legend{font-size:.875rem;font-weight:700;margin-bottom:10px}.mapper-curl-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.mapper-curl{border:1px solid #ddcfd5;background:white;border-radius:5px;padding:8px 3px;color:#111}.mapper-curl[aria-pressed=true]{background:#f6dce6;border-color:#a92c5b}.mapper-curl svg{width:42px;height:32px;display:block;margin:auto}.mapper-curl strong{font-size:1rem;display:block}.mapper-curl span{font-size:.75rem;display:block}.mapper-curl-help{font-size:.8125rem;line-height:1.5;color:#6f5964;margin:10px 0 20px;min-height:40px}.mapper-edit-actions{display:flex;gap:18px;border-top:1px solid var(--map-border);padding-top:13px}.mapper-link:disabled,.mapper-step:disabled{opacity:.4;cursor:default}.mapper-summary{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 0}.mapper-summary span{font-size:.75rem;background:#f8eef2;border-radius:4px;padding:5px 8px;color:#6c3a4e;font-weight:600}.mapper-recommendation{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:27px;background:#fcf4f7;border-top:1px solid var(--map-border)}.mapper-recommendation h3{font-size:1.75rem;letter-spacing:-.04em;margin:0 0 8px}.mapper-recommendation p{font-size:.875rem;line-height:1.65;margin:6px 0 0;color:#604b55}.mapper-product-line{display:flex;justify-content:space-between;align-items:center;gap:10px}.mapper-product-name{font-size:1.75rem;font-weight:800;letter-spacing:-.04em}.mapper-product-price{font-size:1.125rem;font-weight:700;white-space:nowrap}.mapper-product-actions{display:flex;gap:10px;align-items:center;margin-top:14px}.mapper-product-actions .btn{flex:1;font-size:.8125rem;min-height:48px}.mapper-product-actions .mapper-link{flex-shrink:0}.mapper-alternatives{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:14px;font-size:.8125rem;color:#614d57}.mapper-alternatives button{background:none;border:0;text-decoration:underline;text-underline-offset:3px;font:inherit;min-height:32px;padding:3px}.mapper-footnote{font-size:.75rem!important;line-height:1.5!important;margin-top:12px!important;color:#78656f!important}.mapper-details{padding:0 26px;border-top:1px solid var(--map-border)}.mapper-details summary{font-size:.875rem;letter-spacing:0;text-transform:none;padding:19px 0}.mapper-map-table{display:grid;gap:8px;padding-bottom:20px}.mapper-map-row{display:grid;grid-template-columns:90px repeat(6,minmax(0,1fr));gap:7px;align-items:center}.mapper-map-row>strong{font-size:.8125rem}.mapper-map-row button{background:white;border:1px solid #e4d6dd;border-radius:4px;padding:9px 2px;font-size:.8125rem;min-height:42px}.mapper-map-row button[aria-pressed=true]{background:#f8dfE9;border-color:#a32e57}.mapper-map-row button small{display:block;font-size:.75rem;color:#79616d}.mapper-map-row button span{font-weight:700}.mapper-details .mapper-caption{margin:0 0 15px}#builder button:focus-visible,#builder input:focus-visible,#builder summary:focus-visible{outline:3px solid #ae315f;outline-offset:3px}#builder button{transition:background .15s,border-color .15s}#builder .mapper-product-actions .btn:hover{transform:none}
@media(min-width:1250px){.mapper-canvas{padding:28px}.mapper-editor{padding:28px}.mapper-workspace{grid-template-columns:minmax(0,1fr) 350px}}
@media(max-width:980px){#builder .builder-intro{display:block}#builder .builder-intro>p{max-width:680px;margin-top:16px}.mapper-presets{display:block}.preset-list{margin-top:12px}.mapper-workspace{grid-template-columns:minmax(0,1fr) 300px}.mapper-canvas{padding:18px}.mapper-editor{padding:20px}.mapper-zone strong{font-size:.75rem}.mapper-photo svg{aspect-ratio:1.25}.mapper-recommendation{gap:25px}}
@media(max-width:740px){#builder{padding:40px 16px;scroll-margin-top:70px}.mapper-workspace{grid-template-columns:1fr}.mapper-canvas{border-right:0;border-bottom:1px solid var(--map-border)}.mapper-photo svg{aspect-ratio:1.7}.mapper-toolbar{margin-bottom:10px}.mapper-recommendation{grid-template-columns:1fr;gap:20px;padding:22px}.mapper-presets{padding:20px}.mapper-pill{padding:8px 12px}.mapper-editor{padding:22px}.mapper-curl-help{min-height:0}.mapper-zone strong{font-size:.8125rem}.mapper-lash-list button{min-height:44px}.mapper-map-row{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.mapper-map-row>strong{grid-column:1/-1}.mapper-details{padding:0 20px}.mapper-map-row button{font-size:.75rem}.mapper-product-actions{flex-wrap:wrap}.mapper-product-actions .btn{flex-basis:100%}.mapper-product-actions .mapper-link{width:100%;text-align:center}.mapper-caption{margin-top:14px}.mapper-zone span{font-size:.75rem}.mapper-range-row{grid-template-columns:42px 1fr 42px}.mapper-step{height:42px}.mapper-range-labels{margin:0 50px}.mapper-scope button{min-height:44px}}
@media(prefers-reduced-motion:reduce){#builder *,#builder *:before,#builder *:after{transition:none!important;scroll-behavior:auto!important}}

/* Keep the eye and editing controls compact enough to scan together. */
#builder{padding-top:36px;padding-bottom:36px}
#builder .builder-grid{max-width:960px;margin-inline:auto}
#builder .builder-intro{margin-bottom:18px;gap:24px}
#builder h2{font-size:clamp(2rem,3.2vw,3rem)}
#builder .builder-intro>p{max-width:360px;font-size:.875rem;line-height:1.5}
#builder .eyebrow{font-size:.72rem;margin-bottom:8px}
#builder .mapper-photo{max-width:510px;margin-inline:auto}
#builder .mapper-photo svg{aspect-ratio:1050/620}
#builder .mapper-recommendation{gap:24px;padding:18px}
#builder .mapper-recommendation h3,#builder .mapper-product-name{font-size:1.35rem}
#builder .mapper-recommendation p{font-size:.8125rem;line-height:1.5}
#builder .mapper-product-actions{margin-top:10px}
#builder .mapper-product-actions .btn{min-height:40px}
#builder .mapper-alternatives{margin-top:8px}
#builder .mapper-details{padding-inline:18px}
#builder .mapper-details summary{padding-block:13px}
@media(min-width:741px){
  #builder .mapper-presets{padding:12px 16px;display:flex}
  #builder .preset-list{margin-top:0;gap:5px}
  #builder .mapper-pill{min-height:36px;padding:6px 11px;font-size:.8125rem}
  #builder .mapper-workspace{grid-template-columns:minmax(0,1fr) 300px}
  #builder .mapper-canvas,#builder .mapper-editor{padding:16px}
  #builder .mapper-toolbar{margin-bottom:8px}
  #builder .mapper-direction{padding:6px 0 10px}
  #builder .mapper-zone{padding:7px 3px}
  #builder .mapper-zone strong{font-size:.75rem;margin-bottom:2px}
  #builder .mapper-zone span{line-height:1.4}
  #builder .mapper-caption{font-size:.75rem;line-height:1.5;margin-top:10px}
  #builder .mapper-summary{margin-top:10px;gap:5px}
  #builder .mapper-summary span{padding:4px 6px}
  #builder .mapper-editor h3{font-size:1.125rem}
  #builder .selection-context{margin-bottom:12px;font-size:.75rem}
  #builder .mapper-scope{margin-bottom:12px}
  #builder .mapper-scope legend{margin-bottom:6px}
  #builder .mapper-scope button{min-height:36px;font-size:.75rem}
  #builder .mapper-label,#builder .mapper-scope legend,#builder .mapper-length-head label,#builder .mapper-curls legend{font-size:.8125rem}
  #builder .mapper-lash-list{margin:6px 0 12px}
  #builder .mapper-lash-list button{min-height:34px}
  #builder .mapper-length-head{margin-bottom:4px}
  #builder .mapper-length-head output{font-size:1.3rem}
  #builder .mapper-range-labels{margin-inline:24px;gap:8px;white-space:nowrap}
  #builder .mapper-curls{margin-top:12px}
  #builder .mapper-curls legend{margin-bottom:6px}
  #builder .mapper-curl{padding:5px 3px}
  #builder .mapper-curl svg{width:32px;height:25px}
  #builder .mapper-curl strong{font-size:.875rem}
  #builder .mapper-curl-help{font-size:.75rem;margin:7px 0 10px;min-height:36px}
  #builder .mapper-edit-actions{padding-top:7px}
}
@media(max-width:740px){
  #builder{padding:28px 16px}
  #builder .builder-intro>p{margin-top:10px;max-width:none}
  #builder .mapper-presets{padding:14px}
  #builder .mapper-canvas,#builder .mapper-editor{padding:14px}
  #builder .mapper-caption{margin-top:10px}
  #builder .mapper-summary{margin-top:12px}
}
