/* Natural photo care, with quiet materials rather than ornamental frames. */
.ls-photo-editor.ls-photo-styling { display:block; padding:25px; background:linear-gradient(125deg,#fffaf6 0%,#f9f1f2 62%,#f3eff5 100%); border:1px solid #e8dce0; border-radius:17px; }
.ls-photo-styling .ls-photo-editor-heading { display:flex; margin-bottom:21px; }
.ls-photo-styling .ls-photo-editor-heading h3 { margin:0 0 7px; color:#553541; font-size:17px; font-weight:650; letter-spacing:.5px; }
.ls-photo-styling .ls-photo-editor-heading p { margin:0; font-size:12px; color:#8b727b; }
.ls-photo-styling .ls-photo-editor-heading>span { padding:5px 9px; border:1px solid #e6d9d8; border-radius:30px; font-size:10px; white-space:nowrap; color:#917968; background:#fffaf6; }
.ls-photo-workspace { display:grid; grid-template-columns:minmax(150px,220px) minmax(0,1fr); gap:24px; }
.ls-photo-stage { min-width:0; }
.ls-photo-styling .ls-photo-editor-preview { width:100%; height:272px; grid-row:auto; grid-column:auto; border:1px solid #e9dedf; border-radius:11px; background:radial-gradient(ellipse at 22% 6%,#fffdf9 0%,transparent 65%),linear-gradient(150deg,#eadee4,#ebe2e1 60%,#e4ddeb); box-shadow:inset 0 1px 0 #ffffffa8; }
.ls-photo-styling .ls-photo-editor-preview img,.ls-photo-styling .ls-photo-editor-preview canvas { display:block; width:100%; height:100%; object-fit:contain; }
.ls-photo-styling .ls-photo-editor-preview span { text-align:center; padding:20px; line-height:1.8; color:#9a7d8b; letter-spacing:1px; font-size:12px; }
.ls-photo-styling button.ls-photo-editor-preview { padding:0; font:inherit; cursor:pointer; box-sizing:border-box; }
.ls-photo-styling button.ls-photo-editor-preview:focus-visible { outline:2px solid var(--wine,#ad5877); outline-offset:3px; }
.ls-photo-styling button.ls-photo-editor-preview:disabled { cursor:wait; }
.ls-photo-preview-label { margin:10px 0 0; color:#967e89; font-size:11px; line-height:1.6; text-align:center; }
.ls-photo-adjustments { min-width:0; padding-top:2px; }
.ls-photo-control-heading { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin:0 0 9px; font-size:12px; color:#62434f; font-weight:600; }
.ls-photo-control-heading small { color:#a28d94; font-size:10px; font-weight:400; }
.ls-photo-frame-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin-bottom:20px; }
.ls-photo-frame-option { display:flex; flex-direction:column; align-items:center; gap:6px; width:100%; padding:9px 3px 7px; border:1px solid #e8dce1; border-radius:9px; background:#ffffff7d; color:#846d77; font:inherit; font-size:10px; cursor:pointer; transition:border-color .15s,background .15s; }
.ls-photo-frame-option[aria-pressed="true"] { border-color:#b96883; background:#fff9fa; color:#84435d; box-shadow:0 0 0 1px #b968831c; }
.ls-photo-frame-swatch { display:block; position:relative; width:34px; height:42px; box-sizing:border-box; padding:4px 4px 8px; border:1px solid #e2d8d5; background:#fffaf4; box-shadow:0 2px 5px #6547560b; }
.ls-photo-frame-swatch b { display:block; width:100%; height:100%; border:1px solid #d9ceca; background:linear-gradient(135deg,#d6c6ce,#e6d8ce 53%,#c9bfcf); }
.ls-photo-frame-none { padding:0; border-color:#d6c8ce; background:none; }
.ls-photo-frame-none b { border:0; }
.ls-photo-frame-rose { background:#f5e7e8; border-color:#d9bfc6; }
.ls-photo-frame-rose b { border-color:#cfa9b3; }
.ls-photo-frame-champagne { background:#f2e6d3; border-color:#d9c4a7; }
.ls-photo-frame-champagne b { border-color:#c6ac86; }
.ls-photo-preset-options { display:flex; gap:7px; margin-bottom:17px; }
.ls-photo-preset-options button { flex:1; min-width:0; min-height:34px; border:1px solid #e3d8df; border-radius:7px; background:#ffffff82; color:#806775; font:inherit; font-size:11px; cursor:pointer; }
.ls-photo-preset-options button[aria-pressed="true"] { background:#70465e; border-color:#70465e; color:#fffafa; }
.ls-photo-brightness { display:block; color:#735769; font-size:12px; }
.ls-photo-brightness>span { display:flex; justify-content:space-between; align-items:center; }
.ls-photo-brightness output { color:#947f8b; font-size:11px; font-variant-numeric:tabular-nums; }
.ls-photo-styling input[data-photo-brightness] { display:block; width:100%; height:20px; min-height:0; margin:8px 0 1px; padding:0; border:0; background:transparent; box-shadow:none; accent-color:#ad6380; cursor:pointer; }
.ls-photo-brightness small { display:flex; justify-content:space-between; color:#ad99a2; font-size:10px; }
.ls-photo-styling .ls-photo-reset { min-height:30px; margin:8px 0 0; padding:0; color:#9a5e76; font-size:11px; text-decoration:underline; text-underline-offset:3px; }
.ls-photo-adjustment-note { margin:3px 0 0; color:#a18a96; font-size:10px; line-height:1.6; }
.ls-photo-styling .ls-photo-editor-tools { margin-top:20px; padding:0; gap:10px 14px; }
.ls-photo-styling .ls-photo-editor-tools .btn { min-height:37px; font-size:12px; padding:8px 17px; border-radius:8px; }
.ls-photo-styling .ls-photo-editor-tools .text-btn { color:#a08b96; font-size:11px; }
.ls-photo-styling .ls-photo-file-note { margin:13px 0 10px; color:#9c8791; font-size:10px; line-height:1.8; }
.ls-photo-styling .ls-photo-consent { margin:0; color:#806d78; font-size:11px; line-height:1.9; }
.ls-photo-styling .ls-photo-consent input { accent-color:#ae6480; margin-top:4px; }
.ls-photo-styling .ls-photo-feedback { margin:10px 0 0; color:#9a4f6c; font-size:11px; line-height:1.8; }
.ls-photo-styling button:disabled { opacity:.45; cursor:default; box-shadow:none; }
.ls-photo-styling button:focus-visible,.ls-photo-styling input:focus-visible { outline:2px solid #b56d88; outline-offset:3px; }
@media(max-width:620px) {
  .ls-photo-editor.ls-photo-styling { padding:19px 16px; border-radius:13px; }
  .ls-photo-styling .ls-photo-editor-heading { margin-bottom:18px; gap:7px; }
  .ls-photo-styling .ls-photo-editor-heading h3 { font-size:16px; }
  .ls-photo-styling .ls-photo-editor-heading>span { margin-left:0; }
  .ls-photo-workspace { grid-template-columns:1fr; gap:17px; }
  .ls-photo-styling .ls-photo-editor-preview { max-width:260px; height:280px; margin:0 auto; }
  .ls-photo-preview-label { margin-top:7px; }
  .ls-photo-frame-options { gap:9px; margin-bottom:17px; }
  .ls-photo-frame-option { min-height:80px; font-size:11px; }
  .ls-photo-preset-options button { min-height:38px; font-size:12px; }
  .ls-photo-styling .ls-photo-editor-tools { margin-top:17px; }
}
@media(prefers-reduced-motion:reduce) { .ls-photo-frame-option { transition:none; } }
