/* Dreamspire — non-destructive album photo framing */
html.ds-crop-open,html.ds-crop-open body{overflow:hidden!important}

/* Studio button injected into existing kitten photo detail cards */
.ds-crop-launch-wrap{margin-top:12px;padding:12px 13px;border:1px solid rgba(31,51,81,.10);border-radius:16px;background:#faf8f4;display:flex;align-items:center;justify-content:space-between;gap:12px}
.ds-crop-launch-copy{display:grid;gap:2px;min-width:0}
.ds-crop-launch-copy strong{font-size:13px;color:#1f3351}
.ds-crop-launch-copy small{font:400 11px/1.4 system-ui,-apple-system,sans-serif;color:#757d8b}
.ds-crop-launch{flex:0 0 auto;white-space:nowrap}

/* Keep the Studio thumbnail consistent with the saved framing. */
.ds-meta-photo-preview{overflow:hidden!important}
.ds-meta-photo-preview img{width:100%!important;height:100%!important;object-fit:cover!important;will-change:transform,object-position}

.ds-crop-modal[hidden]{display:none!important}
.ds-crop-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;background:rgba(9,16,27,.76);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.ds-crop-dialog{box-sizing:border-box;width:min(760px,96vw);max-height:94dvh;overflow:auto;padding:22px;border-radius:27px;background:#fffdfa;color:#1f3351;border:1px solid rgba(255,255,255,.55);box-shadow:0 34px 110px rgba(0,0,0,.38)}
.ds-crop-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.ds-crop-head-copy{min-width:0}.ds-crop-kicker{display:block;margin-bottom:5px;font:700 9px/1.2 system-ui,-apple-system,sans-serif;letter-spacing:.16em;color:#9b814c}.ds-crop-head h2{margin:0 0 6px;font-size:30px;line-height:1;letter-spacing:-.025em}.ds-crop-head p{margin:0;max-width:54ch;font:400 13px/1.5 system-ui,-apple-system,sans-serif;color:#747d8b}
.ds-crop-close{width:42px;height:42px;min-width:42px;border:1px solid rgba(31,51,81,.12);border-radius:999px;background:#fff;color:#1f3351;font-size:25px;line-height:1;cursor:pointer}
.ds-crop-stage{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:22px;background:#ece8e1;cursor:grab;touch-action:none;user-select:none;box-shadow:inset 0 0 0 1px rgba(31,51,81,.09)}
.ds-crop-stage.is-dragging{cursor:grabbing}
.ds-crop-stage img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;will-change:transform,object-position}
.ds-crop-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,transparent 33.15%,rgba(255,255,255,.28) 33.25%,rgba(255,255,255,.28) 33.5%,transparent 33.6%,transparent 66.4%,rgba(255,255,255,.28) 66.5%,rgba(255,255,255,.28) 66.75%,transparent 66.85%),linear-gradient(to bottom,transparent 33.15%,rgba(255,255,255,.28) 33.25%,rgba(255,255,255,.28) 33.5%,transparent 33.6%,transparent 66.4%,rgba(255,255,255,.28) 66.5%,rgba(255,255,255,.28) 66.75%,transparent 66.85%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.32)}
.ds-crop-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:15px;padding:13px 15px;border-radius:16px;background:#f6f3ee}
.ds-crop-toolbar label{font:600 12px/1 system-ui,-apple-system,sans-serif;color:#1f3351}.ds-crop-toolbar input[type=range]{width:100%}.ds-crop-readout{font:600 11px/1 system-ui,-apple-system,sans-serif;color:#707887;white-space:nowrap}
.ds-crop-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px}
.ds-crop-actions button{min-height:42px}
.ds-crop-hint{margin:10px 2px 0;font:400 11px/1.45 system-ui,-apple-system,sans-serif;color:#7b8390}

@media(max-width:650px){.ds-crop-launch-wrap{align-items:stretch;flex-direction:column}.ds-crop-launch{width:100%}.ds-crop-modal{padding:8px}.ds-crop-dialog{padding:16px;border-radius:22px}.ds-crop-head h2{font-size:27px}.ds-crop-toolbar{grid-template-columns:1fr}.ds-crop-readout{text-align:center}.ds-crop-actions>*{flex:1}}


/* DREAMSPIRE_CROP_WYSIWYG_V1 */
/* Exact visual model of the current public kitten album card. */
.ds-crop-dialog{
  width:min(720px,96vw)!important;
}
.ds-crop-stage{
  width:100%!important;
  aspect-ratio:4/3!important;
  border-radius:20px!important;
  background:#151a21!important;
  box-shadow:0 18px 42px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.14)!important;
  isolation:isolate!important;
}
.ds-crop-stage>img[data-crop-image]{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  border-radius:0!important;
  z-index:0!important;
}
.ds-crop-stage .ds-crop-grid{
  z-index:5!important;
  opacity:.38!important;
}
.ds-crop-public-fade{
  position:absolute!important;
  z-index:1!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:62%!important;
  pointer-events:none!important;
  background:linear-gradient(to top,rgba(8,13,22,.90) 0%,rgba(8,13,22,.67) 34%,rgba(8,13,22,.24) 67%,rgba(8,13,22,0) 100%)!important;
}
.ds-crop-public-caption{
  position:absolute!important;
  z-index:3!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:5px!important;
  box-sizing:border-box!important;
  padding:16px 17px 17px!important;
  color:#fff!important;
  pointer-events:none!important;
  font-family:inherit!important;
}
.ds-crop-public-name{
  margin:0!important;
  color:#fff!important;
  font-family:"Cormorant Garamond",Georgia,serif!important;
  font-size:clamp(25px,4.1vw,34px)!important;
  line-height:.98!important;
  letter-spacing:-.03em!important;
  text-shadow:0 2px 14px rgba(0,0,0,.28)!important;
}
.ds-crop-public-character{
  max-width:34ch!important;
  color:rgba(255,255,255,.88)!important;
  font:500 10.5px/1.42 system-ui,-apple-system,sans-serif!important;
  text-shadow:0 1px 10px rgba(0,0,0,.26)!important;
}
.ds-crop-public-forever{
  display:inline-flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:3px 5px!important;
  max-width:100%!important;
  margin:2px 0 1px!important;
  padding:5px 8px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
  font:700 9px/1.1 system-ui,-apple-system,sans-serif!important;
}
.ds-crop-public-forever-label{
  opacity:.74!important;
  font-size:7px!important;
  letter-spacing:.11em!important;
}
.ds-crop-public-status{
  position:absolute!important;
  z-index:4!important;
  top:11px!important;
  right:11px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:27px!important;
  padding:0 10px!important;
  border:1px solid rgba(255,255,255,.35)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.82)!important;
  color:#24374f!important;
  font:800 7px/1 system-ui,-apple-system,sans-serif!important;
  letter-spacing:.13em!important;
  box-shadow:0 6px 18px rgba(0,0,0,.14)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
  pointer-events:none!important;
}
.ds-crop-public-status[hidden],
.ds-crop-public-forever[hidden]{display:none!important}
.ds-crop-size-note{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:7px;
  color:#7b8390;
  font:600 10px/1.3 system-ui,-apple-system,sans-serif;
}
.ds-crop-size-note::before{
  content:"4:3";
  display:inline-grid;
  place-items:center;
  min-width:31px;
  height:19px;
  padding:0 5px;
  border-radius:999px;
  background:#1f3351;
  color:#fff;
  font-size:8px;
  letter-spacing:.08em;
}
@media(max-width:650px){
  .ds-crop-public-caption{gap:3px!important;padding:10px 10px 11px!important}
  .ds-crop-public-name{font-size:clamp(20px,7vw,27px)!important}
  .ds-crop-public-character{max-width:none!important;font-size:8.8px!important;line-height:1.32!important}
  .ds-crop-public-forever{gap:2px 4px!important;padding:4px 6px!important}
  .ds-crop-public-forever-label{font-size:6px!important}
  .ds-crop-public-forever{font-size:7.7px!important}
  .ds-crop-public-fade{height:72%!important}
}
/* END_DREAMSPIRE_CROP_WYSIWYG_V1 */

/* DREAMSPIRE_CROP_INTEGRATED_OVERLAY_V2 */
.ds-crop-public-overlay{position:absolute;inset:0;z-index:3;pointer-events:none;color:#fff}.ds-crop-public-fade{position:absolute;left:0;right:0;bottom:0;height:72%;background:linear-gradient(180deg,transparent 0%,rgba(4,8,14,.12) 24%,rgba(4,8,14,.73) 100%)}
.ds-crop-public-caption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:clamp(14px,2.2vw,22px);text-shadow:0 2px 8px rgba(0,0,0,.45)}.ds-crop-public-name{font-family:Georgia,'Times New Roman',serif;font-size:clamp(27px,4.2vw,44px);font-weight:500;line-height:.95;letter-spacing:-.025em}.ds-crop-public-character{max-width:36ch;font:600 clamp(9px,1.2vw,12px)/1.38 system-ui,-apple-system,sans-serif}.ds-crop-public-forever{display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid rgba(255,255,255,.32);border-radius:999px;background:rgba(12,18,28,.34);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font:700 clamp(7px,.8vw,9px)/1 system-ui,-apple-system,sans-serif}.ds-crop-public-forever-label{font-size:.78em;letter-spacing:.10em;opacity:.78}.ds-crop-public-status{position:absolute;top:15px;right:15px;display:inline-grid;place-items:center;min-height:36px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.86);color:#1f3351;font:800 7px/1 system-ui,-apple-system,sans-serif;letter-spacing:.13em;box-shadow:0 6px 18px rgba(0,0,0,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ds-crop-public-status[hidden],.ds-crop-public-forever[hidden]{display:none!important}.ds-crop-size-note{display:inline-flex;align-items:center;gap:6px;margin-top:7px;color:#7b8390;font:600 10px/1.3 system-ui,-apple-system,sans-serif}.ds-crop-size-note::before{content:'4:3';display:inline-grid;place-items:center;min-width:31px;height:19px;padding:0 5px;border-radius:999px;background:#1f3351;color:#fff;font-size:8px;letter-spacing:.08em}
@media(max-width:650px){.ds-crop-launch-wrap{align-items:stretch;flex-direction:column}.ds-crop-launch{width:100%}.ds-crop-modal{padding:8px}.ds-crop-dialog{padding:16px;border-radius:22px}.ds-crop-head h2{font-size:27px}.ds-crop-toolbar{grid-template-columns:1fr}.ds-crop-readout{text-align:center}.ds-crop-actions>*{flex:1}.ds-crop-public-caption{padding:10px 10px 11px}.ds-crop-public-name{font-size:clamp(20px,7vw,27px)}.ds-crop-public-character{max-width:none;font-size:8.8px;line-height:1.32}.ds-crop-public-forever{padding:4px 6px;font-size:7.7px}.ds-crop-public-forever-label{font-size:6px}.ds-crop-public-fade{height:72%}}
/* END_DREAMSPIRE_CROP_INTEGRATED_OVERLAY_V2 */
