:root{--studio-plum:#392735;--studio-ink:#29232a;--studio-muted:#7c727b;--studio-line:#e9e1e6;--studio-paper:#fbf8f5;--studio-rose:#f1e3ea}
body{background:var(--studio-paper);color:var(--studio-ink);font-family:Arial,sans-serif;line-height:1.5;padding-bottom:24px!important}button,input,select{font:inherit}button{min-height:44px;border-radius:12px;transition:background-color .12s,border-color .12s}button:focus-visible,a:focus-visible{outline:3px solid #9d6a88;outline-offset:3px}header{background:var(--studio-paper);color:var(--studio-ink);border-bottom:1px solid var(--studio-line);padding:18px max(24px,calc((100vw - 1180px)/2));gap:12px}header .brand{font-size:18px;font-weight:700;color:var(--studio-plum);letter-spacing:-.4px}header .badge{display:none}.studio-preview-label{margin-left:auto;white-space:nowrap;font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:#89627b;border:1px solid #dfcfda;padding:5px 10px;border-radius:999px}
main{max-width:1180px;margin:auto;padding:30px 24px}.intro{margin:0 0 24px;padding:0!important;border:0!important;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 24px}.intro .eyebrow{grid-column:1;color:#977489;font-size:10px;letter-spacing:2px;margin:0}.intro h1{font-size:34px;line-height:1.15;letter-spacing:-1.1px;margin:4px 0 8px}.studio-intro-copy{max-width:580px;font-size:14px;color:var(--studio-muted);margin:0}.studio-flow{display:none}.journey-actions{grid-column:2;grid-row:1/4;margin:0;gap:8px}.journey-actions #instructions{font-size:12px;min-width:44px}.journey-actions button{background:#fff;border:1px solid var(--studio-line);font-size:12px;padding:8px 14px}
.workspace{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:28px}.workspace>.camera-column{position:sticky;top:24px;min-width:0;order:-1!important}.workspace>#look-builder{background:#fff!important;padding:22px!important;border:1px solid var(--studio-line)!important;border-radius:22px;min-width:0;box-shadow:0 6px 26px #39273504!important}.camera-stage{border-radius:22px!important;overflow:hidden!important;border:0!important;background:#eee3e7!important;min-height:400px!important;position:relative}.camera-stage #camera-empty{padding:0!important;text-align:center!important;max-width:none!important;position:relative;width:100%;min-height:400px}.studio-cover{width:100%;height:400px;object-fit:cover;display:block;filter:brightness(.8)}#camera-empty .camera-icon{display:none!important}#camera-empty h2{position:absolute;bottom:130px;left:24px;right:24px;color:#fff;font-size:30px;letter-spacing:-.7px;margin:0!important}#camera-empty>p:not(.small){position:absolute;bottom:98px;left:24px;right:24px;color:#f3e9ee;font-size:14px}body:not(.camera-active) #start{position:absolute;bottom:38px;left:24px;width:calc(100% - 48px)!important;min-height:50px;border-radius:14px;background:#fff;color:var(--studio-plum);font-weight:700;box-shadow:none}#camera-empty .small{position:absolute;bottom:6px;left:0;right:0;color:#f6eef1;font-size:10px;margin:0}#status{font-size:12px;color:var(--studio-muted);margin:12px 4px}.camera-controls,.history-controls{gap:8px}body:not(.camera-active) .camera-controls,body:not(.camera-active) .history-controls{display:none!important}
.look-tabs{background:#f7f3f6;padding:4px;border-radius:13px;margin:0 0 20px!important;gap:4px}.look-tabs button{font-size:12px!important;border:0!important;border-radius:10px;min-height:44px;padding:7px!important;color:#796876}.look-tabs [aria-selected=true]{background:#fff!important;color:var(--studio-plum)!important;box-shadow:0 2px 7px #39273509}.book-choices{display:flex!important;gap:4px;margin:14px 0!important;border-bottom:1px solid var(--studio-line);padding-bottom:12px}.book-choice{flex:1;min-height:44px;display:block!important;padding:8px!important;background:transparent;border:1px solid transparent;border-radius:10px}.book-choice img{display:none!important}.book-choice[aria-pressed=true]{background:var(--studio-rose);border-color:#e4ccd9}.section-title h2{font-size:20px;margin:0}.section-title #count{font-size:11px;color:var(--studio-muted)}.finish-picker{margin:0!important;border:0!important;padding:0!important}.finish-picker legend{font-size:11px;color:var(--studio-muted)}.finish-options{background:#f8f5f7;border-radius:11px;padding:3px}.finish-options button{font-size:12px;min-height:44px!important;padding:5px 16px;border:0!important}.finish-options [aria-pressed=true]{background:var(--studio-plum)!important;color:#fff!important}.finish-note{display:none}.catalog-search{display:block!important;margin:10px 0}.catalog-search input{background:#faf8fa;border:1px solid var(--studio-line);border-radius:12px;width:100%;min-height:44px;font-size:13px;padding:10px 14px}.studio-native-filter,.studio-native-choice{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none;overflow:hidden}.family-chips,.design-filters{display:flex!important;flex-wrap:nowrap!important;gap:7px;overflow-x:auto;scrollbar-width:none;margin:12px 0;padding:2px 0 5px}.family-chips button,.design-filters button{white-space:nowrap;flex:none;font-size:11px;min-height:44px;padding:7px 13px;border:1px solid var(--studio-line);border-radius:999px;background:#fff;color:var(--studio-muted)}.family-chips [aria-pressed=true],.design-filters [aria-pressed=true]{background:var(--studio-plum)!important;color:#fff!important;border-color:var(--studio-plum)}#search-status{font-size:11px;color:var(--studio-muted)}#swatches{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;max-height:305px!important;overflow:auto!important;padding:3px}.swatch{min-width:0;padding:6px!important;border:1px solid #eee6ec!important;border-radius:13px!important;background:#faf8fa!important;position:relative}.swatch img{height:74px!important;object-fit:contain;background:#fff;border:0!important;border-radius:9px}.swatch b{font-size:11px!important;color:#6a5967;margin-top:4px}.swatch[aria-pressed=true]{border:2px solid #926b82!important;background:#f7edf3!important;padding:5px!important}.swatch[aria-pressed=true]:after{content:'✓';position:absolute;right:3px;top:3px;width:19px;height:19px;font-size:11px;background:#392735;color:white;border-radius:999px;line-height:19px}#book-notice,.notice{font-size:11px;line-height:1.6;color:var(--studio-muted)}#browse-audit{display:none}#about{font-size:11px;margin:16px 0 0}
#panel-designs h2,#panel-shape h2{font-size:21px;letter-spacing:-.5px;margin:0 0 12px}.field-label{font-size:12px;color:var(--studio-muted);margin:12px 0 6px}#accent-shade{min-height:44px;border-radius:11px;border-color:var(--studio-line);font-size:12px}#design-detail{font-size:12px;line-height:1.5;background:#faf7f9;border:0!important;border-radius:12px;padding:12px;min-height:58px;margin:12px 0}.design-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:390px;overflow:auto;padding:3px}#designs .design-card{display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;padding:14px 8px!important;background:#faf8fa!important;border:1px solid var(--studio-line)!important;border-radius:15px;min-height:166px}#designs .design-card canvas{width:58px!important;height:90px!important}#designs .design-card strong{display:block;font-size:11px;line-height:1.35;text-align:center}#designs .design-card small{display:none}#designs .design-card[aria-pressed=true]{background:#f4e8ef!important;outline:2px solid #926b82;outline-offset:0}.choice-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 24px}.choice-tiles button{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;padding:12px 5px;min-height:88px;border:1px solid var(--studio-line);background:#faf8fa;font-size:11px}.choice-tiles svg{height:40px;width:26px;fill:#d5b6c8;stroke:#9e7d90;stroke-width:1}.choice-tiles [aria-pressed=true]{background:#f4e8ef;border:2px solid #926b82;padding:11px 4px}.upload-design{margin-top:20px;border-top:1px solid var(--studio-line);padding-top:16px}.upload-design h3{font-size:15px}.upload-design p{font-size:12px;color:var(--studio-muted)}
.look-result{display:flex!important;flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0!important;padding:18px 22px!important;border:1px solid var(--studio-line)!important;border-radius:18px;background:#fff}.look-result .selection{flex:1;min-width:200px;margin:0}.look-result .selection strong{font-size:15px}.look-result .selection p{font-size:12px;color:var(--studio-muted)}.look-result .wide{width:auto!important;min-width:140px;font-size:12px;margin:0;padding:10px 18px}.look-result #save{background:var(--studio-plum);color:white;border:0}.look-result #ticket{background:white;color:var(--studio-plum);border:1px solid #dac7d3}.look-result>.small{width:100%;font-size:11px;margin:0;color:var(--studio-muted)}footer{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:20px 0;border-top:1px solid var(--studio-line);font-size:11px;color:var(--studio-muted)}footer>span{flex:1}.studio-booking{position:static!important;min-height:44px;box-shadow:none!important;font-size:12px;padding:8px 20px}
#dialog:not(.look-picker-dialog){border:1px solid var(--studio-line);border-radius:22px;padding:24px;box-shadow:0 20px 80px #39273526}#dialog h2{font-size:25px;letter-spacing:-.7px}.technician-body{gap:14px}.technician-choices{gap:10px}.technician-choice{background:#faf8fa;border-color:var(--studio-line);padding:16px}.technician-choice p{font-size:13px}.technician-choice small{display:block;font-size:11px}.technician-booking{position:static!important;box-shadow:none!important;min-height:48px}.technician-gallery-item{background:#faf8fa;border-color:var(--studio-line)}#dialog-body:has(.saved-look){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#dialog-body:has(.saved-look)>:not(.saved-look){grid-column:1/-1}.saved-look{display:flex;flex-direction:column;align-items:stretch;padding:0!important;overflow:hidden;border-radius:17px!important;border-color:var(--studio-line)!important;background:#fff}.saved-look-snapshot{width:100%!important;height:190px!important;max-height:none!important;object-fit:cover!important;display:block;border-radius:0!important}.saved-look-info{padding:14px!important;display:flex;flex-wrap:wrap;gap:8px}.saved-look-info strong,.saved-look-info small{width:100%}.saved-look-info strong{font-size:13px}.saved-look-info small{font-size:11px;color:var(--studio-muted)}.saved-look-info button{font-size:11px;min-height:44px;padding:5px 9px;flex:1}.saved-look-info button:first-of-type{background:var(--studio-plum);color:white;border:0}.saved-look-info button:last-of-type{background:transparent;color:#8a7784;border:0;flex:none;font-size:10px}
.camera-column.preview-expanded .preview-actions{background:linear-gradient(0deg,#211721ed,#211721c2,transparent)!important;padding:24px 16px max(12px,env(safe-area-inset-bottom))!important;gap:10px!important}.camera-column.preview-expanded .quick-look-value{background:#ffffff14!important;border:1px solid #ffffff24!important;border-radius:12px!important}.camera-column.preview-expanded .quick-look-label{font-size:12px;color:#fff}.camera-column.preview-expanded .quick-look-selection{font-size:10px;color:#e1cfdc}.camera-column.preview-expanded .quick-look-arrows .quick-look-arrow{background:transparent!important;font-size:21px!important}.camera-column.preview-expanded #save-preview-look{border-radius:12px!important;background:#f5e7ef!important;color:#392735!important}.camera-column.preview-expanded #preview-finish{background:#ffffff17!important}.camera-column.preview-expanded .preview-utilities button{background:transparent!important;color:#d8c5d1!important;font-size:11px!important}.preview-is-expanded #book-now{display:none!important}#dialog.look-picker-dialog{background:#fbf8f5;border-radius:25px 25px 0 0!important}.look-picker-dialog #look-builder{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.look-picker-dialog .picker-actions{background:#fbf8f5!important}.look-picker-dialog #swatches{grid-template-columns:repeat(5,minmax(0,1fr));max-height:32dvh!important}.look-picker-dialog .design-grid{max-height:35dvh}.look-picker-dialog .picker-actions button{min-height:48px;border-radius:12px}.look-picker-dialog .picker-actions button:last-child{background:var(--studio-plum);color:#fff}
@media(max-width:760px){header{padding:15px 18px}header .brand{font-size:14px;max-width:205px}.studio-preview-label{font-size:9px;padding:4px 8px;letter-spacing:.8px}main{padding:22px 16px}.intro{display:block;margin-bottom:20px}.intro h1{font-size:30px;margin:5px 0 8px}.studio-intro-copy{font-size:12px;max-width:310px}.journey-actions{margin:14px 0 0;gap:7px}.journey-actions button{font-size:11px;padding:6px 11px}.intro #instructions{margin-left:auto;font-size:10px}.workspace{display:flex!important;flex-direction:column;gap:20px}.workspace>.camera-column{position:static;width:100%}.camera-stage,.camera-stage #camera-empty{min-height:300px!important}.studio-cover{height:300px}.camera-stage #camera-empty h2{font-size:26px;bottom:123px}.workspace>#look-builder{width:100%;padding:18px!important;border-radius:19px}.look-tabs{margin-bottom:16px!important}#swatches{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:286px!important}.swatch img{height:70px!important}.design-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:440px}#designs .design-card{min-height:154px;padding:12px 6px!important}#designs .design-card strong{font-size:10px}.look-result{padding:16px!important;gap:10px}.look-result .selection{width:100%;flex:auto}.look-result .wide{min-width:0;flex:1}.look-result>.small{font-size:10px}footer{gap:14px}footer>span{flex-basis:100%;order:2;font-size:10px}.studio-booking{font-size:12px;min-height:44px}#dialog{width:calc(100vw - 24px)!important;max-height:92dvh!important}.technician-body .technician-photo img{max-height:43dvh}.technician-body .technician-choice{gap:12px;padding:12px}.technician-swatch{width:48px;height:65px}.saved-look-snapshot{height:170px!important}.saved-look-info{padding:10px!important}.saved-look-info button{flex-basis:100%;font-size:11px}.saved-look-info button:last-of-type{flex-basis:auto;margin:auto}.look-picker-dialog #swatches{grid-template-columns:repeat(4,minmax(0,1fr))}.camera-column.preview-expanded .preview-actions{gap:6px!important;padding-left:12px!important;padding-right:12px!important}.camera-column.preview-expanded .quick-look-value{height:50px!important;min-height:50px!important}.camera-column.preview-expanded .quick-look-arrows{height:38px}.camera-column.preview-expanded .quick-look-arrows .quick-look-arrow{height:44px!important;min-height:44px!important}.camera-column.preview-expanded .preview-utilities{gap:4px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
#designs .design-card[hidden]{display:none!important}#camera-empty h2{display:block!important}.camera-column.preview-expanded .quick-look-caption{font-size:12px;color:#fff}
.workspace #designs{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Stronger salon and Studio identity on small screens and saved looks. */
header .brand{font-size:clamp(22px,2.6vw,28px);font-weight:800;line-height:1.16;letter-spacing:-.55px}
.intro .eyebrow{font-size:12px;font-weight:700;color:#72556a;letter-spacing:1.5px}
.intro h1{font-size:clamp(29px,4vw,40px);font-weight:800;letter-spacing:-.8px}
.welcome-copy .eyebrow{font-size:clamp(18px,4.8vw,22px);line-height:1.25;letter-spacing:.025em;color:#732447}
.welcome-copy h2{font-size:clamp(28px,6vw,34px)}
.first-visit-salon{font-size:18px;font-weight:800;line-height:1.3;letter-spacing:-.25px;color:#392735}
.technician-domain{font-size:18px;font-weight:700;line-height:1.3}
@media(max-width:720px){header{padding:16px 18px}header .brand{font-size:23px;max-width:calc(100% - 80px)}.studio-preview-label{font-size:9px;padding:4px 7px;letter-spacing:.6px}.intro h1{font-size:32px}.first-visit-salon{font-size:18px}}

.studio-visit-actions{display:flex;gap:8px;align-items:stretch;min-width:0}
.website-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 16px;border:1px solid #c9b7c3;border-radius:999px;background:#fff;color:#392735;font-size:14px;font-weight:600;text-decoration:none;text-align:center;line-height:1.25}
.website-cta:hover{background:#f4eaf0}
.studio-visit-actions .booking-cta{white-space:nowrap}
.studio-visit-actions--floating{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:24;max-width:calc(100vw - 36px)}
.studio-visit-actions--floating>a{box-shadow:0 4px 18px #211a182b}
body:not(.preview-is-expanded){padding-bottom:90px!important}
body:has(dialog[open]) .studio-visit-actions--floating{visibility:hidden}
.preview-is-expanded .studio-visit-actions--floating{display:none!important}
.studio-visit-actions--welcome>a,.studio-visit-actions--tech>a{flex:1;min-width:0;padding:10px 12px;font-size:14px}
.studio-visit-actions--tech{position:sticky;bottom:0;background:#fff;padding:8px 0;margin:6px 0}
@media(max-width:480px){.studio-visit-actions--floating{left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right))}.studio-visit-actions--floating>a{flex:1;min-width:0;font-size:14px;padding:10px 12px}}

.intro .studio-flow{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:10px 22px;list-style:none;padding:0;margin:16px 0 0;color:#5e4557;font-size:13px;font-weight:600}
.studio-flow li{display:flex;align-items:center;gap:7px}.studio-flow li span{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#f1e3ea;color:#64304d;font-size:12px;flex:none}
.studio-help{margin-top:14px;border-top:1px solid #e9e1e6;padding-top:12px;font-size:13px;color:#665060}.studio-help summary{cursor:pointer;min-height:32px;font-weight:600}.studio-help p{font-size:13px;line-height:1.5}
.saved-confirmation{display:grid;gap:12px}.saved-confirmation h2,.saved-confirmation p{margin:0}.saved-confirmation>.first-visit-offer{margin:0}.saved-confirmation-picture{margin:0}.saved-confirmation-picture[hidden]{display:none}.saved-confirmation-picture img{display:block;width:100%;max-height:30dvh;object-fit:contain;border-radius:14px;background:#f8f4f7}.saved-confirmation-picture figcaption{font-size:12px;color:#796876;margin-top:5px}
.saved-confirmation-choices{padding:13px 15px;border-radius:13px;background:#faf6f8;display:grid;gap:10px}.saved-confirmation-choices strong{font-size:16px}.saved-confirmation-choices p{font-size:13px;line-height:1.5}.saved-confirmation-actions{display:flex;gap:8px;flex-wrap:wrap}.saved-confirmation-actions button{flex:1;min-width:130px;font-size:13px}.saved-confirmation .saved-look-booking{width:100%;font-size:17px;min-height:50px}
@media(max-width:480px){.intro .studio-flow{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;font-size:12px}}
/* Override retired large paragraph styling now that the journey is a list. */
.choice-tiles canvas{width:54px;height:90px;object-fit:contain;display:block}.choice-tiles button{min-height:132px}
/* Matte keeps the photographed nail's slim proportions and the same tile height. */
.swatch .matte-color-chip,#selected-dot .matte-color-chip,.technician-swatch .matte-color-chip{width:auto;max-width:100%;aspect-ratio:var(--swatch-nail-ratio,.45);margin:0 auto;clip-path:none;border-radius:45% 45% 40% 40% / 18% 18% 22% 22%;box-shadow:none}
.swatch .matte-color-chip{height:74px}
#selected-dot .matte-color-chip,.technician-swatch .matte-color-chip{height:100%}
.matte-color-chip{background-image:linear-gradient(90deg,rgba(0,0,0,.06),transparent 38%,transparent 62%,rgba(0,0,0,.04))!important}
.intro .studio-flow{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));font-size:13px!important;gap:8px}
.intro .studio-flow li{padding:8px 10px;font-size:12px;line-height:1.3;font-weight:600;border:1px solid #e9e1e6;background:#fff}
.intro .studio-flow li span{padding:0!important}
@media(max-width:480px){.intro .studio-flow{grid-template-columns:1fr 1fr;font-size:12px!important}}
/* Blend the photograph's white paper into its card instead of framing a box. */
.swatch{isolation:isolate}
.swatch img{width:auto;max-width:100%;margin:0 auto;background:transparent;border-radius:0;mix-blend-mode:multiply}
@media(max-width:760px){.swatch .matte-color-chip{height:70px}}
/* Keep the manicure clear of the invitation, using the existing photograph. */
.camera-stage #camera-empty{min-height:0!important;background:#fff}
.studio-cover-frame{height:280px;overflow:hidden;background:#292628}
.studio-cover-frame .studio-cover{width:120%;max-width:none;height:100%;margin-left:-20%;object-fit:cover;object-position:center bottom;filter:none}
.studio-camera-invite{padding:18px 24px 14px;text-align:left}
.camera-stage #camera-empty .studio-camera-invite h2{position:static;font-size:26px;color:var(--studio-plum);letter-spacing:-.5px}
#camera-empty .studio-camera-invite>p:not(.small){position:static;color:#746875;font-size:14px;margin:7px 0 14px!important}
body:not(.camera-active) #camera-empty #start{position:static;width:100%!important;min-height:48px;margin:0;background:var(--studio-plum);color:#fff;border-radius:12px}
#camera-empty .studio-camera-invite .small{position:static;color:#796876;font-size:11px;text-align:center;margin:9px 0 0!important}
@media(max-width:760px){.studio-cover-frame{height:220px}.studio-camera-invite{padding:16px 18px 12px}.camera-stage #camera-empty .studio-camera-invite h2{font-size:24px}}
/* Cards show three actual companions in the selected colors. */
.design-card.coordinated-card{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px;text-align:left}
#designs .design-card.coordinated-card canvas{width:100%!important;height:auto!important;max-height:none;aspect-ratio:176/144;border-radius:12px;object-fit:contain}
.coordinated-card em{display:block;font-size:11px;font-style:normal;letter-spacing:.045em;color:#86536d;margin:4px 0}
.coordinated-card strong{font-size:15px}.coordinated-card small{line-height:1.4}
@media(max-width:760px){#designs.coordinated-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#designs .coordinated-card em{font-size:10px}#designs .coordinated-card strong{font-size:12px}}

#designs .coordinated-card .design-reference{display:block;position:relative;overflow:hidden;width:100%;border-radius:11px;background:#f7efeb}#designs .coordinated-card .design-reference img{position:absolute;max-width:none;margin:0;object-fit:fill;display:block}#designs .coordinated-card canvas[hidden]{display:none!important}

/* Single-nail photographs are picker examples; they do not enter the camera loop. */
#designs .single-photo-card .design-reference{display:block;position:relative;overflow:hidden;width:100%;max-width:90px;border-radius:11px;background:#f7efeb}
#designs .single-photo-card .design-reference img{position:absolute;max-width:none;margin:0;object-fit:fill;display:block}
#designs .design-card canvas[hidden]{display:none!important}
#designs .design-card canvas[data-preview-renderer="camera-webgl"]{width:90px!important;height:135px!important;border-radius:11px}
