/* Scoped public-profile surfaces. Account/site appearance is never modified. */
.public-profile-scope[data-profile-display-mode="dark"] ,
.public-profile-page[data-profile-display-mode="dark"] {
  color-scheme:dark;
  --color-background:#0b1220;
  --color-surface:#121c2e;
  --color-surface-elevated:#162137;
  --color-surface-soft:#18243a;
  --color-surface-lavender:#1d2e4b;
  --color-text:#eef4ff;
  --color-text-muted:#a8b8d1;
  --color-text-faint:#94a6c2;
  --color-ink:var(--color-text);
  --color-ink-2:#cfddf5;
  --color-ink-3:#b6c9ed;
  --color-primary-dark:#b1cbff;
  --color-primary-mid:#6b9dff;
  --color-primary-light:#b1cbff;
  --color-focus:#91b6ff;
  --color-success:#70dab1;
  --color-warning:#ffd18a;
  --color-danger:#ffaaa5;
  --color-border:#2b3a53;
  --color-border-strong:#4b607f;
  --glass:rgb(18 28 46 / 94%);
  --glass-strong:rgb(22 33 55 / 96%);
  --glass-line:var(--color-border);
  --color-input:#152239;
  --color-on-primary:#0b1220;
  --shadow-sm:0 6px 20px rgb(0 0 0 / 18%);
  --color-primary:#89b1ff;
  background:var(--color-background);
  color:var(--color-text);
}
#app[data-theme="women"].public-profile-scope[data-profile-display-mode="dark"] ,
#app[data-theme="women"] .public-profile-page[data-profile-display-mode="dark"] {--color-primary:#c5a3ff;--color-primary-dark:#dcc5ff;--color-primary-mid:#b287ef;--color-primary-light:#dcc5ff;}
.public-profile-scope[data-profile-display-mode="light"] ,
.public-profile-page[data-profile-display-mode="light"] {
  color-scheme:light;
  --color-background:#f6f8fc;
  --color-surface:#fff;
  --color-surface-elevated:#fff;
  --color-surface-soft:#eef3fb;
  --color-surface-lavender:#e8eefc;
  --color-text:#122038;
  --color-text-muted:#5c6b82;
  --color-text-faint:#64748b;
  --color-ink:#0b1c3a;
  --color-ink-2:#16315c;
  --color-ink-3:#1e4a8c;
  --color-primary-dark:#1a3f8f;
  --color-primary-mid:#4f7cff;
  --color-primary-light:#9bb7ff;
  --color-focus:#2563eb;
  --color-success:#14704d;
  --color-warning:#8a5705;
  --color-danger:#b42318;
  --color-border:rgba(22,49,92,.09);
  --color-border-strong:rgba(22,49,92,.16);
  --glass:rgb(255 255 255 / 85%);
  --glass-strong:rgb(255 255 255 / 95%);
  --glass-line:var(--color-border);
  --color-input:#fff;
  --color-on-primary:#fff;
  --color-primary:#3d6fe0;
  background:var(--color-background);
  color:var(--color-text);
}
#app[data-theme="women"].public-profile-scope[data-profile-display-mode="light"] ,
#app[data-theme="women"] .public-profile-page[data-profile-display-mode="light"] {--color-primary:#5a189a;--color-primary-dark:#240046;--color-primary-mid:#7b2cbf;--color-primary-light:#c77dff;}
/* Hover, soft accents and focus must use the locally effective profile mode,
   not the visitor's opposite global palette. */
.public-profile-scope[data-profile-display-mode="light"],
.public-profile-scope[data-profile-display-mode="dark"],
.public-profile-page[data-profile-display-mode="light"],
.public-profile-page[data-profile-display-mode="dark"] {
  --color-primary-soft:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));
  --color-primary-hover:color-mix(in srgb,var(--color-primary) 82%,var(--color-text));
  --color-accent:var(--color-primary);
  --color-focus:var(--color-primary);
}
/* Legacy preset palette or explicitly chosen color applies to this profile only. */
.public-profile-page[data-profile-custom] {--color-primary:var(--profile-primary-light);}
html[data-color-mode="dark"] .public-profile-page[data-profile-custom][data-profile-display-mode="auto"],
.public-profile-page[data-profile-custom][data-profile-display-mode="dark"] {--color-primary:var(--profile-primary-dark);}
.public-profile-page[data-profile-custom][data-profile-display-mode="light"] {--color-primary:var(--profile-primary-light);}
.public-profile-page[data-profile-custom] :is(.public-verified,.btn-primary) {background:var(--profile-chosen);color:var(--color-primary-foreground);}
.public-profile-page[data-profile-custom] :focus-visible {outline:3px solid var(--color-primary);outline-offset:3px;}

/* Professional color editor: accessible swatches, native picker and real miniature UI. */
.profile-color-editor {display:grid;gap:16px;min-width:0;padding:20px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface-soft);}
.profile-color-editor h3 {margin:0;color:var(--color-text);font-size:1.02rem;}
.profile-color-editor p {margin:0;color:var(--color-text-muted);font-size:.83rem;line-height:1.85;}
.profile-swatches {display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;}
.profile-swatch {position:relative;display:grid;place-items:center;gap:5px;min-width:0;min-height:70px;padding:9px 3px;border:1px solid var(--color-border);border-radius:13px;background:var(--color-surface);color:var(--color-text);cursor:pointer;font:inherit;}
.profile-swatch-dot {display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--swatch-color);color:#fff;}
.profile-swatch[aria-pressed="true"] {border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 17%,transparent);}
.profile-swatch[aria-pressed="true"] .profile-swatch-dot::after {content:"✓";font-size:18px;font-weight:900;color:var(--swatch-foreground,#fff);}
.profile-swatch span:last-child {font-size:.65rem;white-space:normal;text-align:center;line-height:1.5;}
.profile-swatch:focus-visible,.profile-color-controls :focus-visible {outline:3px solid var(--color-primary);outline-offset:2px;}
.profile-color-controls {display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;}
.profile-color-controls input[type="color"] {width:58px;height:48px;padding:2px;border:1px solid var(--color-border);border-radius:12px;cursor:pointer;background:var(--color-surface);}
.profile-color-controls input[data-profile-hex] {width:160px;max-width:100%;min-height:48px;padding:8px 12px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);color:var(--color-text);font-size:16px;}
.profile-color-preview {--preview-color:#2563eb;--preview-foreground:#fff;--preview-accent:#2563eb;display:grid;gap:12px;max-width:400px;margin:0;padding:12px;border-radius:18px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);}
.profile-color-preview[data-preview-mode="dark"] {--color-surface:#121c2e;--color-text:#eef4ff;--color-text-muted:#a8b8d1;--color-border:#2b3a53;background:#121c2e;color:#eef4ff;border-color:#2b3a53;}
.profile-color-preview[data-preview-mode="light"] {--color-surface:#fff;--color-text:#122038;--color-text-muted:#5c6b82;--color-border:#dce2eb;background:#fff;color:#122038;border-color:#dce2eb;}
.profile-color-preview-cover {height:64px;display:flex;align-items:center;justify-content:center;border-radius:12px;color:var(--preview-accent);background:color-mix(in srgb,var(--preview-accent) 12%,var(--color-surface));font-size:25px;}
.profile-color-preview-body {display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;align-items:center;overflow-wrap:anywhere;}
.profile-color-preview-avatar {display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--preview-accent) 13%,var(--color-surface));color:var(--preview-accent);}
.profile-color-preview-body strong {display:block;color:var(--color-text);font-size:.87rem;}
.profile-color-preview-body small {color:var(--color-text-muted);font-size:.72rem;}
.profile-color-preview-action {display:grid;place-items:center;min-height:44px;border-radius:11px;background:var(--preview-color);color:var(--preview-foreground);font-weight:800;font-size:.85rem;}
@media(max-width:680px) {.profile-swatches {grid-template-columns:repeat(4,minmax(0,1fr));}.profile-color-editor {padding:14px;}.profile-color-controls input[data-profile-hex] {flex:1;min-width:100px;}}
@media(max-width:380px) {.profile-swatches {grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;}.profile-swatch span:last-child {font-size:.6rem;}}

/* Footer inherits the effective profile mode; never override the visitor's
   site-wide preference outside this individual salon profile. */
.public-profile-scope {min-width:0;}
.public-profile-scope[data-profile-display-mode="dark"] .site-footer,
html[data-color-mode="dark"] .public-profile-scope[data-profile-display-mode="auto"] .site-footer {
  background:linear-gradient(155deg,#111b2c,#192740);
  border-color:#31415d;
}
.public-profile-scope[data-profile-display-mode="light"] .site-footer,
html[data-color-mode="light"] .public-profile-scope[data-profile-display-mode="auto"] .site-footer {
  background:linear-gradient(155deg,#f7faff,#eaf1fc);
  border-color:var(--color-border);
  color:#15243a;
}
:is(.public-profile-scope[data-profile-display-mode="light"],
    html[data-color-mode="light"] .public-profile-scope[data-profile-display-mode="auto"])
.site-footer :is(.footer-brand,.footer-column h2,.trust-heading h2,.footer-bottom) {color:#15243a;}
:is(.public-profile-scope[data-profile-display-mode="light"],
    html[data-color-mode="light"] .public-profile-scope[data-profile-display-mode="auto"])
.site-footer :is(.footer-brand-block > p,.footer-column a,.footer-contact > span,
  .trust-heading p,.trust-slot-title,.trust-slot-empty span,.trust-slot-empty small) {color:var(--color-text-muted);}
:is(.public-profile-scope[data-profile-display-mode="light"],
    html[data-color-mode="light"] .public-profile-scope[data-profile-display-mode="auto"])
.site-footer .footer-column a:hover {color:#1d4ed8;}
:is(.public-profile-scope[data-profile-display-mode="light"],
    html[data-color-mode="light"] .public-profile-scope[data-profile-display-mode="auto"])
.site-footer :is(.footer-eyebrow,.footer-contact i,.footer-contact b,.trust-slot-empty i) {color:var(--color-primary);}
.public-profile-scope[data-profile-custom] .site-footer {--color-primary:var(--profile-primary-light);}
.public-profile-scope[data-profile-custom][data-profile-display-mode="dark"] .site-footer,
html[data-color-mode="dark"] .public-profile-scope[data-profile-custom][data-profile-display-mode="auto"] .site-footer {--color-primary:var(--profile-primary-dark);}

.profile-appearance-intro {display:grid;gap:5px;padding-bottom:12px;border-bottom:1px solid var(--color-border);}
.profile-display-field {display:grid;gap:9px;min-width:0;}
.profile-display-field > label {font-weight:800;color:var(--color-text);font-size:.87rem;}
.profile-display-field select {width:100%;min-width:0;min-height:48px;}
.profile-appearance-subhead {display:grid;gap:5px;padding-top:8px;}
.profile-color-editor > div {min-width:0;}
@media(max-width:680px) {
  .profile-color-editor {width:100%;max-width:100%;box-sizing:border-box;gap:14px;padding:14px;}
  .profile-color-controls {display:grid;grid-template-columns:58px minmax(0,1fr);gap:8px;}
  .profile-color-controls input[data-profile-hex] {width:100%;min-width:0;}
  .profile-color-controls button {grid-column:1/-1;width:100%;min-height:44px;}
  .profile-color-preview {width:100%;max-width:none;}
}
