/* Scoped to the configurator; the existing shop keeps its palette and layout. */
.braids-model-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-height:420px;overflow:auto;overscroll-behavior:contain;padding:2px 7px 5px 2px;scrollbar-width:thin;scrollbar-color:#8d7961 #172334}.braids-model-choice{min-width:0;display:grid;grid-template-rows:140px auto;gap:7px;align-content:start;padding:9px;border:1px solid #ffffff26;border-radius:10px;background:#182437;color:#f8f3e9;text-align:center}.braids-model-choice img{width:100%;height:140px;object-fit:contain;display:block}.braids-model-choice strong{font-size:12px;line-height:1.4;font-weight:600}.braids-model-choice[aria-pressed=true]{border-color:var(--braids-gold);background:#30303a}.braids-model-choice:focus-visible{outline-offset:-3px!important}@media(max-width:700px){.braids-model-gallery{max-height:365px}.braids-model-choice{grid-template-rows:120px auto}.braids-model-choice img{height:120px}}
.braids{background:#0c1421;color:#f8f3e9;padding:45px 0 58px;--braids-gold:#e5c49a;--braids-line:#ffffff21;--braids-muted:#b4bdc8;min-height:75vh}.braids-inner{max-width:1420px;margin:auto;padding:0 32px}.braids-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.braids-eyebrow{color:var(--braids-gold);font-size:11px;letter-spacing:.17em;font-weight:700;margin:0 0 9px}.braids-heading h1,.braids-heading h2{font:700 clamp(26px,3.3vw,42px)/1.08 Inter,Arial,sans-serif;letter-spacing:.04em;margin:0 0 11px;color:#fff7ec}.braids-heading p:last-child{font-size:15px;color:var(--braids-muted);margin:0}.braids button{font:inherit;cursor:pointer}.braids button:disabled{cursor:not-allowed;opacity:.42}.braids button:focus-visible,.braids a:focus-visible,.braids input:focus-visible,.braids select:focus-visible{outline:2px solid var(--braids-gold);outline-offset:4px}.braids-shortcuts{display:flex;gap:10px}.braids-shortcuts button,.braids-save-row button,.braids-camera button,.braids-preview-bottom button{background:transparent;border:1px solid var(--braids-line);color:#f8f3e9;border-radius:7px;padding:10px 15px;font-size:13px}.braids-configurator{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.8fr);gap:25px}.braids-preview{border:1px solid var(--braids-line);border-radius:16px;position:relative;min-width:0;background:radial-gradient(ellipse at 50% 33%,#354056 0%,#1a2334 43%,#101827 78%);overflow:hidden;display:flex;flex-direction:column;min-height:670px}.braids-canvas{position:absolute;inset:45px 0 70px}.braids-canvas canvas{width:100%;height:100%;display:block;touch-action:none;outline-offset:-5px!important}.braids-camera{position:relative;z-index:1;display:flex;justify-content:center;gap:5px;padding:14px 12px;pointer-events:none}.braids-camera button{pointer-events:auto;background:#111a2c99;padding:8px 17px}.braids-camera button[aria-pressed=true]{background:var(--braids-gold);color:#211b18;border-color:var(--braids-gold)}.braids-preview-bottom{position:relative;margin-top:auto;padding:13px 16px 8px;display:flex;justify-content:space-between;gap:10px;align-items:center;z-index:1}.braids-preview-bottom>span{font-size:11px;color:#b7c1d1;max-width:190px}.braids-preview-bottom>div{display:flex;gap:5px}.braids-preview-bottom button{padding:8px 11px;background:#111a2cbb}.braids-disclaimer{margin:0 16px 14px;color:#9cabbf;font-size:10px}.braids-render-status{position:absolute;top:53px;left:16px;right:16px;text-align:center;font-size:12px;pointer-events:none;color:var(--braids-gold)}.braids-render-status.error{background:#221b20;padding:16px;top:35%;color:#ffe1e1}.braids-controls{background:#121c2c;border:1px solid var(--braids-line);border-radius:16px;padding:25px;min-width:0}.braids fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}.braids legend{font:600 14px/1.3 Inter,Arial,sans-serif;color:#f8f3e9;margin-bottom:12px}.braids-style-options{display:grid;gap:9px}.braids-style-choice{display:flex;align-items:center;text-align:left;justify-content:space-between;gap:10px;background:#182437;color:var(--braids-muted);border:1px solid #ffffff20;border-radius:9px;padding:12px 14px;min-height:62px}.braids-style-choice strong{font-size:15px;color:#f8f3e9;display:block}.braids-style-choice small{display:block;font-size:11px;margin-top:4px}.braids-style-choice span:last-child{font-size:18px;color:var(--braids-gold)}.braids-style-choice[aria-pressed=true]{border-color:var(--braids-gold);background:#252c37}.braids-color-options{display:flex;gap:11px;flex-wrap:wrap}.braids-color-choice{border:2px solid transparent;background:transparent;color:#d7dce3;padding:4px 2px 0;display:grid;gap:6px;justify-items:center;font-size:10px;border-radius:9px;min-width:42px}.braids-color-choice>span{display:block;width:30px;height:30px;border:1px solid #ffffff5e;border-radius:50%;box-shadow:inset 0 0 0 3px #ffffff12}.braids-color-choice[aria-pressed=true]{border-color:var(--braids-gold);color:var(--braids-gold)}.braids-choice-row{display:flex;gap:7px}.braids-choice{flex:1;min-width:0;color:#d1d9e4;background:#182437;border:1px solid #ffffff25;border-radius:7px;padding:11px 6px;font-size:13px}.braids-choice[aria-pressed=true]{color:#221b18;border-color:var(--braids-gold);background:var(--braids-gold)}.braids-summary{border-top:1px solid var(--braids-line);padding:17px 0;display:grid;gap:6px}.braids-summary p{font-size:12px;margin:0;line-height:1.65;color:var(--braids-muted)}.braids-summary strong{font-size:23px;font-weight:600}.braids-summary span{font-size:12px;color:var(--braids-muted)}.braids .braids-gold{background:var(--braids-gold);color:#211b18;border:1px solid var(--braids-gold);font-weight:700;border-radius:8px;min-height:48px;padding:12px 18px;width:100%;font-size:14px}.braids-gold:hover:not(:disabled){background:#f1d7b4}.braids-save-row{display:flex;gap:8px;margin-top:10px}.braids-save-row button{flex:1;padding:10px 6px;font-size:12px}.braids-message{font-size:12px;min-height:18px;margin:10px 0 0;color:var(--braids-gold)}.braids-saved{padding:35px 0 12px}.braids-saved h3{font-size:21px;color:#fff4e7;margin:0 0 16px}.braids-saved-list{display:flex;gap:12px;overflow:auto}.braids-look-card{display:grid;gap:9px;border:1px solid var(--braids-line);background:#162133;padding:16px;border-radius:10px;flex:0 0 230px}.braids-look-card p{font-size:11px;color:var(--braids-muted);line-height:1.6;margin:0}.braids-look-card button{border:0;border-radius:5px;padding:8px;background:#e5c49a;color:#211b18;font-size:12px}.braids-look-card .braids-delete-look{background:transparent;border:1px solid #ffffff25;color:#bbc5d4}.braids-empty{color:var(--braids-muted);font-size:13px}.braids-booking{margin-top:32px;border:1px solid var(--braids-line);border-radius:16px;padding:30px;background:#121c2c;scroll-margin-top:24px}.braids-booking-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;border-bottom:1px solid var(--braids-line);padding-bottom:22px;margin-bottom:20px}.braids-booking-heading h3{color:#fff6e8;font-size:28px;line-height:1.2;margin:0 0 8px}.braids-booking-heading p:last-child{font-size:12px;color:var(--braids-muted);line-height:1.6;margin:0}.braids-booking-heading>p{max-width:300px;text-align:right}.braids-booking-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:45px}.braids-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.braids-month strong{font-size:16px;text-transform:capitalize}.braids-month button{background:#233048;color:#f4e8d6;border:1px solid var(--braids-line);border-radius:7px;padding:8px 13px}.braids-weekdays,.braids-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.braids-weekdays{color:#9eaabd;font-size:11px;text-align:center;margin-bottom:9px}.braids-days button,.braids-days>.braids-day-empty{aspect-ratio:1.12;min-width:0}.braids-days button{background:#26334a;color:#fff2df;border:1px solid #ffffff35;border-radius:7px;font-size:14px;position:relative}.braids-days button:disabled{background:#151e2d;color:#657386;border-color:#ffffff0a;opacity:1}.braids-days button[aria-pressed=true]{background:var(--braids-gold);color:#211b18}.braids-days button:not(:disabled):after{content:'';display:block;width:4px;height:4px;border-radius:50%;background:currentColor;position:absolute;bottom:5px;left:calc(50% - 2px)}.braids-timezone{font-size:11px;color:var(--braids-muted);margin:14px 0}.braids-times{display:flex;flex-wrap:wrap;gap:8px}.braids-times button{background:#1a2940;border:1px solid #ffffff30;color:#f7eddd;border-radius:7px;padding:10px 12px;font-size:12px}.braids-times button[aria-pressed=true]{background:var(--braids-gold);color:#221b18}.braids #braids-request-form{max-width:none;border-left:1px solid var(--braids-line);padding-left:35px;margin:0}.braids form h4{font-size:20px;color:#fff1df;margin:0 0 12px}.braids #braids-selected-slot{font-size:13px;color:var(--braids-gold);line-height:1.5;min-height:22px}.braids form label{display:block;font-size:13px;color:#c6d0dc;margin:14px 0}.braids form input:not([type=checkbox]){width:100%;border:1px solid #ffffff2b;background:#0d1726;border-radius:7px;color:#fff6eb;padding:12px;font:inherit;font-size:16px;margin-top:8px;min-width:0}.braids form input[type=checkbox]{accent-color:var(--braids-gold)}.braids .braids-consent{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.6}.braids-consent input{flex:0 0 auto;margin-top:3px}.braids a{color:var(--braids-gold)}.braids-confirm-note{font-size:11px;color:var(--braids-muted);text-align:center}.braids #braids-request-error{color:#ffb4b4;font-size:12px}.braids-receipt{margin-top:25px;padding:20px;border:1px solid #d2b382;border-radius:10px;background:#1e2c35}.braids-receipt h4{font-size:20px;margin:0 0 12px;color:#fff1df}.braids-receipt p{font-size:13px;line-height:1.6}.braids-receipt button{border:1px solid #d2b382;border-radius:6px;background:transparent;color:#efcd9f;padding:8px 14px}.braids #braids-booking-status{font-size:13px;color:#e8c79f;line-height:1.7}.braids-profile-booking{border:1px solid #d8d5ce;border-radius:10px;padding:18px;margin:14px 0}.braids-profile-booking p{line-height:1.6;font-size:13px}.braids-profile-booking strong{font-size:17px}.braids-profile-booking button{border:1px solid #b77d92;border-radius:7px;background:#f9edf1;color:#76314d;padding:9px 14px}
@media(max-width:1000px){.braids-configurator{grid-template-columns:minmax(0,1.05fr) minmax(320px,.9fr);gap:16px}.braids-controls{padding:20px}.braids-preview{min-height:650px}.braids-inner{padding:0 22px}.braids-booking-grid{gap:25px}.braids #braids-request-form{padding-left:24px}.braids-preview-bottom{flex-wrap:wrap}}
@media(max-width:700px){.braids{padding-top:28px}.braids-inner{padding:0 14px}.braids-heading{display:block;margin-bottom:20px}.braids-heading h1,.braids-heading h2{font-size:28px}.braids-heading p:last-child{font-size:13px}.braids-shortcuts{margin-top:17px}.braids-shortcuts button{font-size:12px;padding:9px 12px}.braids-configurator{display:flex;flex-direction:column;gap:15px}.braids-preview{min-height:470px;height:470px}.braids-canvas{inset:46px 0 74px}.braids-preview-bottom{gap:8px}.braids-preview-bottom>span{font-size:10px;max-width:135px}.braids-controls{padding:20px 18px}.braids fieldset{margin-bottom:22px}.braids-style-choice{min-height:60px}.braids-color-options{gap:8px;justify-content:space-between}.braids-color-choice{font-size:10px;min-width:39px}.braids-color-choice>span{height:28px;width:28px}.braids-booking{padding:20px 15px}.braids-booking-heading{display:block;margin-bottom:18px}.braids-booking-heading h3{font-size:24px}.braids-booking-heading>p{max-width:none;text-align:left;margin-top:12px}.braids-booking-grid{display:block}.braids #braids-request-form{border-left:0;border-top:1px solid var(--braids-line);padding:24px 0 0;margin-top:25px}.braids-days{gap:5px}.braids-days button{font-size:13px}.braids-save-row button{font-size:12px}.braids-saved{padding-top:27px}.braids-look-card{flex-basis:210px}}
@media(prefers-reduced-motion:reduce){.braids *{scroll-behavior:auto!important;transition:none!important}}

/* Override inherited light-shop paragraph colors inside the dark studio only. */
.shop-page .braids p{color:#b4bdc8}.shop-page .braids .braids-eyebrow{color:var(--braids-gold)}.shop-page .braids .braids-disclaimer,.shop-page .braids .braids-timezone,.shop-page .braids .braids-confirm-note{color:#aebbcf}.braids .braids-new-look{border:1px solid var(--braids-gold);background:transparent;color:var(--braids-gold);padding:9px 14px;border-radius:7px;font-size:12px;margin:0 0 14px}.braids .braids-render-status{color:var(--braids-gold)}

.braids-provider-label{display:block;max-width:460px;margin:0 0 20px}.braids-provider-label select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid var(--braids-line);border-radius:8px;background:#172334;color:#fff;font:inherit}.braids-days button[data-occupied="full"]{border-color:#bd6b80;background:#3c2633;color:#f4d5df}.braids-days button[data-occupied="partial"]{border-bottom:3px solid #bd6b80}.braids-busy-slot{display:block;border:1px solid #815469;color:#efcbd7;border-radius:8px;padding:10px 12px;font-size:12px}.braids-busy-slot[data-status="pending"]{border-color:#9a7c4c;color:#ead5ac}
