@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,600&family=Cormorant+Garamond:wght@400;500;600&family=EB+Garamond:wght@400;500;600&family=Libre+Baskerville:wght@400;700&family=Lora:wght@400;500;600&family=Merriweather:wght@300;400;700&family=Montserrat:wght@300;400;500;600&family=Oswald:wght@300;400;500&family=Raleway:wght@300;400;500;600&family=Source+Sans+3:wght@300;400;500;600&family=Work+Sans:wght@300;400;500;600&display=swap');

/* V3 visual-editor and shared live-homepage presentation rules. */
.v3-preview-banner{display:none!important}
body{padding-top:0!important}
.site-header{
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border-bottom:0!important;
}
.site-footer,.archive-footer{
  background:transparent!important;
  border:0!important;
}

/* Archive: every work gets exactly the same visual footprint. */
.gallery-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;
  gap:12px!important;
  padding:12px clamp(1rem,3vw,3rem) clamp(2rem,5vw,5rem)!important;
  background:transparent!important;
  border:0!important;
}
.gallery-item,.gallery-item:nth-child(5n+1){
  grid-column:auto!important;
  aspect-ratio:1/1!important;
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
}
.gallery-frame{
  height:100%!important;
  min-height:0!important;
  background:transparent!important;
}
.gallery-frame .art-image{
  height:100%!important;
  min-height:0!important;
  filter:none!important;
  background:transparent!important;
}
.gallery-frame .art-image img{object-fit:cover!important}

/* Series: one selected photograph is large. Everything below is a uniform thumbnail. */
.series-focus{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(250px,340px)!important;
  gap:clamp(1.2rem,3vw,3rem)!important;
  width:min(1380px,calc(100% - 2rem))!important;
  margin:0 auto!important;
  padding:0 0 clamp(2rem,5vw,4rem)!important;
  min-height:0!important;
  border:0!important;
}
.series-focus__image{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
}
.series-focus__image .art-image{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.series-focus__image .art-image::after{display:none!important}
.series-focus__image .art-image img{
  position:static!important;
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:74vh!important;
  object-fit:contain!important;
  background:transparent!important;
}
.series-focus__copy{
  border:0!important;
  padding:clamp(1rem,2.5vw,2.5rem)!important;
}
.series-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;
  gap:12px!important;
  background:transparent!important;
}
.series-work,.series-collage-work{
  grid-column:auto!important;
  aspect-ratio:1/1!important;
  min-height:0!important;
  background:transparent!important;
  border:0!important;
}
.series-work .art-image{
  height:100%!important;
  background:transparent!important;
  filter:none!important;
}
.series-work .art-image img{object-fit:cover!important}
.series-grid .series-group-heading{
  grid-column:1/-1!important;
  background:transparent!important;
  border:0!important;
  padding:.65rem 0!important;
}
.series-work.is-selected{outline:2px solid currentColor;outline-offset:3px}

/* Previous / next controls sit beside the selected photograph, not in a bar. */
.series-focus-nav{
  position:absolute;
  inset:50% -8px auto -8px;
  z-index:8;
  display:flex;
  justify-content:space-between;
  transform:translateY(-50%);
  pointer-events:none;
}
.series-focus-nav a{
  pointer-events:auto;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.45);
  border-radius:50%;
  background:rgba(0,0,0,.48);
  color:#fff;
  text-decoration:none;
  font:18px/1 system-ui,sans-serif;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.series-focus-nav a[aria-disabled="true"]{visibility:hidden}

/* Freehand collage saved as percentage positions. */
.collage-tiles--freeform{
  position:relative!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:16/10!important;
  min-height:320px!important;
  background:transparent!important;
  overflow:hidden!important;
}
.collage-tiles--freeform .collage-tile{
  position:absolute!important;
  overflow:hidden!important;
  min-width:4%!important;
  min-height:4%!important;
}
.collage-tiles--freeform .collage-tile .art-image,
.collage-tiles--freeform .collage-tile img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* Visual editor: floating, never a top/bottom bar. */
.v3-editor-dock{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:10000;
  display:flex;
  gap:7px;
  align-items:center;
  padding:7px;
  border:1px solid rgba(127,127,127,.35);
  border-radius:999px;
  background:rgba(20,20,20,.82);
  box-shadow:0 10px 35px rgba(0,0,0,.25);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  color:#fff;
  font:12px/1.2 system-ui,sans-serif;
}
.v3-editor-dock button{
  border:0;
  border-radius:999px;
  background:transparent;
  color:inherit;
  padding:8px 11px;
  font:inherit;
  cursor:pointer;
}
.v3-editor-dock button.is-active{background:#fff;color:#111}
.v3-editor-dock .v3-draft-state{padding:0 6px;opacity:.72}
.v3-edit-action,.v3-edit-action *{pointer-events:auto!important}
.v3-edit-action{
  position:absolute;
  z-index:9000;
  display:none;
  gap:5px;
  top:7px;
  right:7px;
  pointer-events:auto!important;
}
.v3-edit-mode .gallery-item,
.v3-edit-mode .series-work,
.v3-edit-mode .archive-work{outline:1px dashed rgba(255,255,255,.42);outline-offset:-2px}
.v3-edit-mode .v3-edit-action{display:flex}
.v3-edit-action button{
  border:1px solid rgba(255,255,255,.5);
  border-radius:999px;
  background:rgba(0,0,0,.72);
  color:#fff;
  padding:6px 8px;
  font:10px/1.1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-editable-copy{outline:1px dashed rgba(255,255,255,.55);outline-offset:4px;cursor:text}
.v3-editable-copy:focus{outline:2px solid #fff;outline-offset:5px}
.v3-inline-inspector{
  position:fixed;
  z-index:10001;
  right:18px;
  bottom:72px;
  width:min(330px,calc(100vw - 36px));
  padding:14px;
  border-radius:12px;
  background:rgba(20,20,20,.94);
  color:#fff;
  box-shadow:0 14px 40px rgba(0,0,0,.32);
  font:12px/1.35 system-ui,sans-serif;
}
.v3-inline-inspector label{display:grid;gap:5px;margin:0 0 10px}
.v3-inline-inspector input,.v3-inline-inspector select{
  width:100%;padding:7px 8px;border:1px solid #555;background:#191919;color:#fff;border-radius:7px
}
.v3-inline-inspector__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.v3-inline-inspector__actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}
.v3-inline-inspector button{padding:7px 9px;border:1px solid #666;border-radius:7px;background:#252525;color:#fff;cursor:pointer}

@media(max-width:700px){
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:7px!important}
  .series-focus{grid-template-columns:1fr!important;width:calc(100% - 1rem)!important}
  .series-focus__copy{padding:1rem 0!important}
  .series-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .series-focus-nav{inset:50% 4px auto 4px}
}

.v3-series-edit-trigger{
  position:absolute;
  top:clamp(2.5rem,6vw,5rem);
  right:clamp(1.25rem,4vw,4rem);
  z-index:25;
  display:none;
  border:1px solid rgba(255,255,255,.45);
  border-radius:999px;
  background:rgba(0,0,0,.58);
  color:#fff;
  padding:7px 10px;
  font:11px/1.1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-edit-mode .v3-series-edit-trigger{display:block}
.v3-sub-edit-row{
  display:grid;
  grid-template-columns:1fr 1fr 32px;
  gap:6px;
  margin-bottom:6px;
}
.v3-sub-edit-row button{
  border:1px solid #666;
  background:#252525;
  color:#fff;
  border-radius:7px;
  cursor:pointer;
}

.v3-edit-mode .collage-tiles--freeform .collage-tile{
  outline:1px dashed rgba(255,255,255,.72);
  cursor:grab;
  touch-action:none;
}
.v3-edit-mode .collage-tiles--freeform .collage-tile:active{cursor:grabbing}
.v3-freeform-resize{
  display:none;
  position:absolute;
  right:-7px;
  bottom:-7px;
  z-index:9999;
  width:16px;
  height:16px;
  border:2px solid #fff;
  border-radius:50%;
  background:#111;
  cursor:nwse-resize;
  pointer-events:auto!important;
  touch-action:none;
}
.v3-edit-mode .v3-freeform-resize{display:block}
.v3-make-freeform{
  display:none;
  position:absolute;
  top:8px;
  right:8px;
  z-index:9999;
  border:1px solid rgba(255,255,255,.6);
  border-radius:999px;
  background:rgba(0,0,0,.72);
  color:#fff;
  padding:7px 10px;
  font:11px/1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-edit-mode .v3-make-freeform{display:block}

.gallery-item .collage-tiles,
.series-work .collage-tiles{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
}
.gallery-item .collage-tiles--freeform,
.series-work .collage-tiles--freeform{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:auto!important;
}

/* Selected-text formatting inside the floating text inspector. */
.v3-selection-tools{
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
  margin:10px 0 6px;
  padding:8px;
  border:1px solid #4b4b4b;
  border-radius:9px;
  background:#151515;
}
.v3-selection-tools>span{margin-right:4px;font-weight:600}
.v3-selection-tools button{
  min-width:30px;
  padding:6px 7px;
  border:1px solid #5a5a5a;
  border-radius:6px;
  background:#242424;
  color:#fff;
  cursor:pointer;
}
.v3-selection-tools label{
  display:flex;
  grid-template-columns:auto 28px;
  flex-direction:row;
  align-items:center;
  gap:4px;
  margin:0;
  padding:4px 6px;
  border:1px solid #5a5a5a;
  border-radius:6px;
  background:#242424;
}
.v3-selection-tools input[type="color"]{
  width:24px;
  height:24px;
  padding:0;
  border:0;
  background:transparent;
}
.v3-inspector-note{margin:0 0 10px;color:#c9c9c9;font-size:11px;line-height:1.35}

/* Homepage arrangement mode: static lanes and draggable cards. */
.v3-edit-mode .archive-track{
  transform:none!important;
  transition:none!important;
}
.v3-edit-mode .archive-lane{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:thin;
}
.v3-sortable-card{
  position:relative!important;
  cursor:grab!important;
  touch-action:pan-x!important;
}
.v3-sortable-card.is-dragging{
  opacity:.45!important;
  cursor:grabbing!important;
}
.v3-sort-handle{
  position:absolute;
  z-index:9500;
  top:6px;
  left:6px;
  display:block;
  padding:5px 7px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:999px;
  background:rgba(0,0,0,.7);
  color:#fff;
  font:10px/1 system-ui,sans-serif;
  letter-spacing:.02em;
  pointer-events:none;
}
.v3-edit-mode .row-arrow{opacity:.25;pointer-events:none}

/* Private preview is static: no carousel scaling, drifting or centering effects. */
.gallery-home .archive-track{transform:none!important;transition:none!important}
.gallery-home .archive-lane{overflow-x:auto!important;overflow-y:hidden!important}
.gallery-home .archive-work,
.gallery-home .archive-work.is-centre,
.gallery-home #featured-track .archive-work,
.gallery-home #featured-track .archive-work.is-centre,
.gallery-home #featured-track .archive-work.is-featured-active{
  transform:none!important;
  opacity:1!important;
  filter:none!important;
}
.gallery-home .archive-work .art-image,
.gallery-home .archive-work.is-centre .art-image,
.gallery-home #featured-track .archive-work .art-image,
.gallery-home #featured-track .archive-work.is-featured-active .art-image{
  transform:none!important;
  filter:none!important;
}
.gallery-home .row-arrow{display:none!important}

/* One canonical 16:10 freehand design surface for selected/large collages. */
.series-focus__image .collage-tiles--freeform{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/10!important;
  align-self:center!important;
}
.series-focus__image .collage-tiles--freeform .collage-tile{
  box-sizing:border-box!important;
}

/* Stable selected-photo viewport: image changes inside the frame, arrows never move. */
.series-focus__image{
  position:relative!important;
  width:100%!important;
  height:min(72svh,760px)!important;
  max-height:calc(100svh - 110px)!important;
  min-height:420px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
.series-focus__open{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  margin:0;
  padding:0;
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  background:transparent;
  color:inherit;
  cursor:zoom-in;
}
.series-focus__open>.art-image{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}
.series-focus__open>.art-image img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}
.series-focus__open>.collage-tiles{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
}
.series-focus-nav{
  position:absolute!important;
  inset:0!important;
  z-index:20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:0 12px!important;
  transform:none!important;
  pointer-events:none!important;
}
.series-focus-nav a{
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  pointer-events:auto!important;
}
.series-focus-nav a[aria-disabled="true"]{visibility:hidden!important}

/* Homepage Series cards are directly editable in visual Edit mode. */
.v3-home-series-actions{
  position:absolute;
  z-index:9600;
  top:6px;
  right:6px;
  display:none;
  pointer-events:auto!important;
}
.v3-edit-mode .v3-home-series-actions{display:flex}
.v3-home-series-actions button{
  border:1px solid rgba(255,255,255,.55);
  border-radius:999px;
  background:rgba(0,0,0,.74);
  color:#fff;
  padding:6px 9px;
  font:10px/1 system-ui,sans-serif;
  cursor:pointer;
  pointer-events:auto!important;
}
.v3-edit-mode .series-chip{outline:1px dashed rgba(255,255,255,.45);outline-offset:-2px}

/* Keep Featured edit controls above the drag indicator. */
.gallery-home #featured-track .v3-edit-action{z-index:9700}

/* The selected photo frame stays practical on smaller screens too. */
@media(max-width:700px){
  .series-focus__image{
    height:min(62svh,620px)!important;
    min-height:300px!important;
    max-height:calc(100svh - 90px)!important;
  }
  .series-focus-nav{padding:0 7px!important}
  .series-focus-nav a{width:40px!important;height:40px!important;flex-basis:40px!important}
}

/* First series view: the selected photograph is the first screen and always fits. */
body[data-page="series"] #series-page{min-height:0}
body[data-page="series"] .series-focus{
  width:100%!important;
  max-width:none!important;
  height:calc(100svh - 82px)!important;
  min-height:0!important;
  margin:0!important;
  padding:0 clamp(1rem,3vw,3rem)!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
body[data-page="series"] .series-focus__image{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}
body[data-page="series"] .series-focus__open{
  width:100%!important;
  height:100%!important;
}
body[data-page="series"] .series-focus__open>.art-image{
  width:100%!important;
  height:100%!important;
}
body[data-page="series"] .series-focus__open>.art-image img{
  max-width:100%!important;
  max-height:100%!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
body[data-page="series"] .series-focus__copy{
  height:100%!important;
  overflow:auto!important;
  align-self:stretch!important;
  padding:clamp(1rem,3vw,3rem)!important;
}
.series-top--after-focus{
  margin-top:0!important;
  padding-top:clamp(2rem,4vw,3.5rem)!important;
}

/* Freehand mosaic must use the same exact 16:10 design surface everywhere. */
body[data-page="series"] .series-focus__open>.collage-tiles--freeform{
  width:min(100%,calc((100svh - 110px) * 1.6))!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:16/10!important;
  flex:none!important;
  align-self:center!important;
  justify-self:center!important;
}
body[data-page="series"] .series-focus__open>.collage-tiles--freeform .collage-tile{
  box-sizing:border-box!important;
}

/* Font picker shows every choice in its own typeface. */
.v3-font-field{display:grid;gap:6px;margin:0 0 10px}
.v3-font-current{
  width:100%;
  text-align:left;
  padding:9px 10px!important;
  border:1px solid #555!important;
  border-radius:7px!important;
  background:#191919!important;
  color:#fff!important;
}
.v3-font-picker{
  max-height:310px;
  overflow:auto;
  display:grid;
  gap:5px;
  padding:6px;
  border:1px solid #4f4f4f;
  border-radius:8px;
  background:#111;
}
.v3-font-picker[hidden]{display:none!important}
.v3-font-picker button{
  display:grid;
  grid-template-columns:minmax(105px,.7fr) minmax(0,1.3fr);
  gap:10px;
  align-items:center;
  width:100%;
  text-align:left;
  padding:9px 10px!important;
  border:1px solid #353535!important;
  background:#1d1d1d!important;
}
.v3-font-picker button:hover{border-color:#888!important;background:#282828!important}
.v3-font-picker strong{font-size:12px;font-family:system-ui,sans-serif}
.v3-font-picker span{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Explicit graphical save is always visible and becomes active when needed. */
.v3-editor-dock [data-v3-save]{
  background:#fff;
  color:#111;
  font-weight:650;
}
.v3-editor-dock [data-v3-save]:disabled{
  opacity:.36;
  cursor:default;
}

/* Exhibition controls only appear in Edit mode. */
.v3-exhibition-edit,.v3-add-exhibition{
  display:none;
  border:1px solid rgba(255,255,255,.5);
  border-radius:999px;
  background:rgba(0,0,0,.7);
  color:#fff;
  padding:7px 10px;
  font:11px/1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-edit-mode .v3-exhibition-edit,
.v3-edit-mode .v3-add-exhibition{display:inline-flex}
.v3-exhibition-edit{
  position:absolute;
  top:12px;
  right:clamp(1rem,3vw,2rem);
  z-index:20;
}
.v3-add-exhibition{margin-top:1rem}
.v3-exhibition-editor textarea{
  width:100%;
  resize:vertical;
  min-height:86px;
  padding:8px;
  border:1px solid #555;
  border-radius:7px;
  background:#191919;
  color:#fff;
}

/* About dialog text stays visibly editable when Edit mode is active. */
.v3-edit-mode .about-dialog .v3-editable-copy{
  outline-color:rgba(255,255,255,.72);
}

@media(max-width:700px){
  body[data-page="series"] .series-focus{
    height:auto!important;
    min-height:calc(100svh - 70px)!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    padding:.5rem!important;
  }
  body[data-page="series"] .series-focus__image{
    height:62svh!important;
  }
  body[data-page="series"] .series-focus__copy{
    height:auto!important;
    overflow:visible!important;
  }
}

/* Make Edit mode obvious and usable from a normal viewing distance. */
.v3-editor-dock{
  gap:9px!important;
  padding:9px 10px!important;
}
.v3-editor-dock button{
  min-height:38px;
  padding:9px 14px!important;
  font-size:13px!important;
  font-weight:600!important;
}
body:not(.v3-edit-mode) .v3-editor-dock [data-v3-save]{display:none}
.v3-edit-mode .v3-editor-dock [data-v3-edit]{
  border:1px solid rgba(255,255,255,.45)!important;
}
.v3-edit-mode .v3-editor-dock [data-v3-save]:not(:disabled){
  background:#fff!important;
  color:#111!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.16);
}

/* Photo actions are deliberately large; these are primary editing controls. */
.v3-edit-action{
  gap:8px!important;
  top:10px!important;
  right:10px!important;
  flex-wrap:wrap;
  justify-content:flex-end;
  max-width:calc(100% - 20px);
}
.v3-edit-action button{
  min-height:38px!important;
  padding:10px 13px!important;
  border-width:1.5px!important;
  border-color:rgba(255,255,255,.78)!important;
  background:rgba(0,0,0,.86)!important;
  color:#fff!important;
  font:600 12px/1.1 system-ui,sans-serif!important;
  box-shadow:0 3px 12px rgba(0,0,0,.32);
}
.v3-home-series-actions{
  top:10px!important;
  right:10px!important;
}
.v3-home-series-actions button{
  min-height:38px!important;
  padding:10px 14px!important;
  border-color:rgba(255,255,255,.78)!important;
  background:rgba(0,0,0,.86)!important;
  font:600 12px/1.1 system-ui,sans-serif!important;
  box-shadow:0 3px 12px rgba(0,0,0,.32);
}
.v3-sort-handle{
  top:10px!important;
  left:10px!important;
  padding:9px 11px!important;
  font:600 11px/1 system-ui,sans-serif!important;
  border-color:rgba(255,255,255,.72)!important;
  background:rgba(0,0,0,.82)!important;
}

/* About gets its own obvious editing entry point. */
.v3-edit-about{
  display:none;
  position:absolute;
  z-index:100;
  top:16px;
  left:16px;
  min-height:40px;
  padding:10px 15px;
  border:1.5px solid rgba(255,255,255,.8);
  border-radius:999px;
  background:rgba(0,0,0,.86);
  color:#fff;
  font:600 13px/1 system-ui,sans-serif;
  box-shadow:0 4px 16px rgba(0,0,0,.34);
  cursor:pointer;
}
.v3-edit-mode .about-dialog[open] .v3-edit-about{display:inline-flex}
.v3-edit-mode .about-dialog .v3-editable-copy{
  outline:2px dashed rgba(255,255,255,.82)!important;
  outline-offset:5px!important;
}

/* Mosaic editing: show exactly what can be moved and resized. */
.v3-edit-mode .series-focus__image .collage-tiles--freeform{
  outline:2px dashed rgba(255,255,255,.42);
  outline-offset:5px;
}
.v3-edit-mode .collage-tiles--freeform .collage-tile{
  outline:2px solid rgba(255,255,255,.72)!important;
  outline-offset:0!important;
}
.v3-freeform-drag-label{
  display:none;
  position:absolute;
  z-index:9998;
  top:8px;
  left:8px;
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.75);
  border-radius:999px;
  background:rgba(0,0,0,.82);
  color:#fff;
  font:600 11px/1 system-ui,sans-serif;
  pointer-events:none;
}
.v3-edit-mode .v3-freeform-drag-label{display:block}
.v3-freeform-resize{
  right:-12px!important;
  bottom:-12px!important;
  width:28px!important;
  height:28px!important;
  border:3px solid #fff!important;
  background:#111!important;
  box-shadow:0 2px 10px rgba(0,0,0,.45);
}
.v3-freeform-resize::after{
  content:'↘';
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#fff;
  font:700 14px/1 system-ui,sans-serif;
}
.v3-make-freeform{
  min-height:40px!important;
  padding:10px 14px!important;
  font:600 12px/1 system-ui,sans-serif!important;
}

/* Make edit controls usable on touch / smaller displays. */
@media(max-width:700px){
  .v3-edit-action{left:8px!important;right:8px!important;justify-content:flex-start!important}
  .v3-edit-action button,.v3-home-series-actions button{font-size:11px!important;padding:9px 10px!important}
  .v3-editor-dock{left:10px;right:10px;bottom:10px;justify-content:center;flex-wrap:wrap}
  .v3-editor-dock .v3-draft-state{width:100%;text-align:center}
}

/* About: explicit edit choices, no hidden discovery step. */
.v3-about-actions{
  display:none;
  position:absolute;
  z-index:120;
  top:16px;
  left:16px;
  gap:8px;
  flex-wrap:wrap;
}
.v3-edit-mode .about-dialog[open] .v3-about-actions{display:flex}
.v3-about-actions button{
  min-height:42px;
  padding:11px 15px;
  border:1.5px solid rgba(255,255,255,.82);
  border-radius:999px;
  background:rgba(0,0,0,.88);
  color:#fff;
  font:600 13px/1 system-ui,sans-serif;
  box-shadow:0 4px 16px rgba(0,0,0,.34);
  cursor:pointer;
}
.v3-about-actions button:hover{background:#fff;color:#111}

/* Exhibitions: content and style are deliberately separated. */
.v3-exhibitions-page-actions{
  display:none;
  gap:10px;
  flex-wrap:wrap;
  margin-top:1.2rem;
}
.v3-edit-mode .v3-exhibitions-page-actions{display:flex}
.v3-exhibitions-page-actions button,
.v3-exhibition-edit{
  min-height:42px!important;
  padding:11px 15px!important;
  border:1.5px solid rgba(255,255,255,.76)!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.84)!important;
  color:#fff!important;
  font:600 13px/1 system-ui,sans-serif!important;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
  cursor:pointer;
}
.v3-exhibitions-page-actions button:hover,
.v3-exhibition-edit:hover{background:#fff!important;color:#111!important}
.v3-exhibition-edit{
  top:14px!important;
  right:14px!important;
}

.v3-style-role-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin:12px 0;
}
.v3-style-role-grid button{
  min-height:54px;
  text-align:left;
  padding:10px 12px!important;
  border:1px solid #555!important;
  background:#1b1b1b!important;
  border-radius:9px!important;
  font-weight:600!important;
}
.v3-style-role-grid button:hover{
  background:#fff!important;
  color:#111!important;
  border-color:#fff!important;
}
.v3-role-style-editor .v3-inline-inspector__grid{grid-template-columns:1fr 1fr}
.v3-role-style-editor .v3-font-picker{margin-top:6px}

/* Make the edit sequence visually obvious. */
.v3-edit-mode .v3-editor-dock{
  border-color:rgba(255,255,255,.5);
}
.v3-edit-mode .v3-editor-dock [data-v3-edit]{
  background:#222!important;
  color:#fff!important;
}
.v3-edit-mode .v3-editor-dock [data-v3-save]:disabled{
  display:inline-flex!important;
  background:#3a3a3a!important;
  color:#bdbdbd!important;
  opacity:1!important;
}

@media(max-width:700px){
  .v3-about-actions{top:10px;left:10px;right:52px}
  .v3-about-actions button{font-size:12px;min-height:38px;padding:9px 11px}
  .v3-style-role-grid{grid-template-columns:1fr}
}

/* About editor: content only, design is protected. */
.v3-about-editor{
  width:min(520px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 110px);
  overflow:auto;
}
.v3-about-editor textarea{
  width:100%;
  min-height:130px;
  resize:vertical;
  padding:9px;
  border:1px solid #555;
  border-radius:7px;
  background:#191919;
  color:#fff;
}
.v3-about-photo-editor{
  display:grid;
  grid-template-columns:112px 1fr;
  gap:12px;
  align-items:center;
  margin:12px 0 16px;
  padding:10px;
  border:1px solid #444;
  border-radius:10px;
  background:#151515;
}
.v3-about-photo-preview{
  width:112px;
  height:132px;
  overflow:hidden;
  border-radius:7px;
  background:#2a2a2a;
}
.v3-about-photo-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.v3-about-photo-pick{
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-height:42px;
  margin:0!important;
  padding:10px 13px;
  border:1px solid #666;
  border-radius:8px;
  background:#242424;
  color:#fff;
  font-weight:600;
  cursor:pointer;
}
.v3-about-photo-pick input{
  position:absolute;
  width:1px!important;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.v3-about-actions{
  gap:8px!important;
}
.v3-about-actions button[data-v3-edit-about]{
  min-width:120px;
}

/* Simplified edit mode: drag is direct, no drag badges. */
.v3-sort-handle{display:none!important}
.v3-sortable-card{
  cursor:grab!important;
  user-select:none;
  -webkit-user-select:none;
  touch-action:pan-y!important;
}
.v3-sortable-card.is-dragging{
  cursor:grabbing!important;
  opacity:.62!important;
  outline:2px solid rgba(255,255,255,.82)!important;
  outline-offset:-2px;
}

/* Only Edit photo is shown directly on photographs. */
.v3-edit-action button{
  min-width:92px;
}
.v3-edit-action button:not([data-v3-work-edit]){display:none!important}

/* Series card: drag anywhere except the Edit series button. */
.v3-home-series-actions button{
  min-width:96px;
}

/* Edit/Done and Publish are separate phases. */
.v3-editor-dock [data-v3-publish]{
  background:transparent;
  border:1px solid rgba(255,255,255,.42);
  color:#fff;
}
.v3-edit-mode .v3-editor-dock [data-v3-publish],
.v3-edit-mode .v3-editor-dock [data-v3-admin]{
  display:none!important;
}
.v3-edit-mode .v3-editor-dock [data-v3-edit]{
  background:#fff!important;
  color:#111!important;
  border-color:#fff!important;
}
.v3-editor-dock [data-v3-save]{display:none!important}

/* French inputs are intentionally absent for now. */
.v3-sub-edit-row{
  grid-template-columns:1fr 32px!important;
}

/* About has one clear content editor entry point. */
.v3-about-actions button[data-v3-edit-about]{
  min-width:132px;
}

/* Main-page interaction cleanup */
.about-dialog[open] .v3-about-actions{
  display:flex!important;
}
.v3-about-actions{
  z-index:140!important;
}
.v3-about-actions button[data-v3-edit-about]{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
}

/* Reordering uses the whole card; suppress browser-native image/link dragging. */
.v3-sortable-card,
.v3-sortable-card *{
  -webkit-user-drag:none!important;
}
.v3-sortable-card img{
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.v3-edit-mode .v3-sortable-card{
  cursor:grab!important;
}
.v3-reordering .v3-sortable-card{
  cursor:grabbing!important;
}
.v3-reordering{
  user-select:none!important;
  -webkit-user-select:none!important;
}

/* Keep the one visible card action clear and separate from dragging. */
.v3-edit-mode #featured-track .v3-edit-action,
.v3-edit-mode #series-track .v3-home-series-actions{
  pointer-events:auto!important;
}
.v3-editor-dock [data-v3-edit]:disabled{
  opacity:.65!important;
  cursor:wait!important;
}

/* V3.17: Series uses the same draggable wrapper model as Featured. */
#series-track .series-chip{
  position:relative;
  display:block;
}
#series-track .series-chip>a{
  display:block;
  width:100%;
  height:100%;
  color:inherit;
  text-decoration:none;
}
.v3-edit-mode #series-track .series-chip>a{
  pointer-events:none!important;
}
#series-track .series-chip .v3-home-series-actions{
  pointer-events:auto!important;
}
.about-dialog[open] .v3-about-actions{
  display:flex!important;
}
.v3-build{
  padding:0 4px;
  opacity:.48;
  font:10px/1 system-ui,sans-serif;
  letter-spacing:.04em;
}

/* Page-owned editing: Links and Contact edit only from their own pages. */
.v3-links-page-actions,
.v3-contact-page-actions{
  display:none;
  margin:1rem 0 1.4rem;
}
.v3-edit-mode .v3-links-page-actions,
.v3-edit-mode .v3-contact-page-actions{
  display:flex;
  gap:10px;
}
.v3-links-page-actions button,
.v3-contact-page-actions button{
  min-height:42px;
  padding:11px 15px;
  border:1.5px solid rgba(255,255,255,.76);
  border-radius:999px;
  background:rgba(0,0,0,.84);
  color:#fff;
  font:600 13px/1 system-ui,sans-serif;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
  cursor:pointer;
}
.v3-links-page-actions button:hover,
.v3-contact-page-actions button:hover{
  background:#fff;
  color:#111;
}

/* Links editor */
.v3-links-editor{
  width:min(620px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 110px);
  overflow:auto;
}
.v3-social-editor-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.v3-editor-section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:16px 0 8px;
}
.v3-editor-section-heading button{
  border:1px solid #666;
  border-radius:999px;
  background:#242424;
  color:#fff;
  padding:7px 10px;
  cursor:pointer;
}
.v3-custom-link-row{
  display:grid;
  grid-template-columns:minmax(120px,.7fr) minmax(180px,1fr) minmax(160px,1fr) 34px;
  gap:7px;
  margin-bottom:7px;
}
.v3-custom-link-row input{
  width:100%;
  min-width:0;
}
.v3-custom-link-row button{
  border:1px solid #666;
  border-radius:7px;
  background:#242424;
  color:#fff;
  cursor:pointer;
}
.links-page-socials{
  margin:1rem 0 2rem;
}

/* Contact page */
.contact-page{
  max-width:900px;
}
.contact-details{
  display:grid;
  gap:.65rem;
  margin:1.5rem 0;
}
.contact-page #contact-socials{
  margin-top:1.5rem;
}
.v3-contact-editor{
  width:min(520px,calc(100vw - 36px))!important;
}
.v3-contact-editor textarea{
  width:100%;
  min-height:110px;
  resize:vertical;
  padding:9px;
  border:1px solid #555;
  border-radius:7px;
  background:#191919;
  color:#fff;
}

@media(max-width:700px){
  .v3-social-editor-grid{grid-template-columns:1fr}
  .v3-custom-link-row{grid-template-columns:1fr 34px}
  .v3-custom-link-row input:nth-of-type(2),
  .v3-custom-link-row input:nth-of-type(3){grid-column:1/2}
  .v3-custom-link-row button{grid-column:2/3;grid-row:1}
}

/* V3.19 Series ordering controls must override the original card pointer-event lock. */
.v3-edit-mode #series-track .series-chip .v3-home-series-actions{
  display:flex!important;
  pointer-events:auto!important;
  gap:5px!important;
}
.v3-edit-mode #series-track .series-chip .v3-home-series-actions button{
  pointer-events:auto!important;
  min-width:34px;
  min-height:38px!important;
  padding:9px 10px!important;
}
.v3-edit-mode #series-track .series-chip .v3-home-series-actions button[data-v3-home-series-edit]{
  min-width:92px;
}

/* V3.20: Series reordering matches Featured — drag the photograph itself. */
.v3-edit-mode #series-track .series-chip .v3-home-series-actions{
  display:flex!important;
  top:8px!important;
  right:8px!important;
  left:auto!important;
  width:auto!important;
}
.v3-edit-mode #series-track .series-chip .v3-home-series-actions button{
  min-width:0!important;
  min-height:34px!important;
  padding:8px 10px!important;
  font-size:11px!important;
}
.v3-edit-mode #series-track .series-chip{
  cursor:grab!important;
}
.v3-edit-mode #series-track .series-chip.is-dragging{
  cursor:grabbing!important;
  opacity:.72!important;
  transform:scale(.98);
  transition:none!important;
}

/* V3.21 — direct Series photo management */
.v3-series-page-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:1rem;
}
.v3-series-page-actions button{
  min-height:40px;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.58);
  border-radius:999px;
  background:rgba(0,0,0,.72);
  color:#fff;
  font:600 12px/1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-series-page-actions button:hover{
  background:#fff;
  color:#111;
}
.v3-work-editor{
  width:min(560px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 90px);
  overflow:auto;
}
.v3-photo-file-row{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:12px;
  align-items:center;
  margin:10px 0 16px;
}
.v3-work-image-preview{
  width:150px;
  height:118px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #444;
  border-radius:9px;
  background:#171717;
  color:#aaa;
  font:12px/1.3 system-ui,sans-serif;
  text-align:center;
}
.v3-work-image-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.v3-photo-file-button{
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-height:42px;
  margin:0!important;
  padding:10px 13px;
  border:1px solid #666;
  border-radius:8px;
  background:#242424;
  color:#fff;
  font-weight:600;
  cursor:pointer;
}
.v3-photo-file-button input{
  position:absolute;
  width:1px!important;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.v3-work-editor textarea{
  width:100%;
  min-height:92px;
  resize:vertical;
  padding:9px;
  border:1px solid #555;
  border-radius:7px;
  background:#191919;
  color:#fff;
}
.v3-danger-button{
  margin-right:auto;
  border-color:#8a5555!important;
}
.v3-danger-button:hover{
  background:#8a2f2f!important;
  color:#fff!important;
}
@media(max-width:700px){
  .v3-photo-file-row{grid-template-columns:110px 1fr}
  .v3-work-image-preview{width:110px;height:100px}
  .v3-series-page-actions{margin-top:.75rem}
}

/* V3.22 — reliable Archive mosaic thumbnails */
.archive-mosaic{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:transparent;
}
.archive-mosaic__canvas{
  position:relative;
  width:100%;
  aspect-ratio:16/10;
  max-height:100%;
  background:transparent;
  overflow:hidden;
}
.archive-mosaic--freeform .archive-mosaic-tile{
  position:absolute;
  overflow:hidden;
  background:#111;
}
.archive-mosaic--grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:1fr;
  gap:2px;
}
.archive-mosaic--grid .archive-mosaic-tile{
  position:relative;
  min-width:0;
  min-height:0;
  overflow:hidden;
}
.archive-mosaic-tile img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Series mosaic creation picker */
.v3-series-mosaic-editor{
  width:min(700px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 90px);
  overflow:auto;
}
.v3-series-mosaic-picker{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(130px,1fr));
  gap:10px;
  margin:12px 0 16px;
}
.v3-series-mosaic-choice{
  display:grid!important;
  gap:6px;
  padding:8px;
  border:1px solid #444;
  border-radius:9px;
  background:#171717;
  cursor:pointer;
}
.v3-series-mosaic-choice input{
  position:absolute;
  opacity:0;
}
.v3-series-mosaic-choice span{
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  border-radius:6px;
  background:#0d0d0d;
}
.v3-series-mosaic-choice img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.v3-series-mosaic-choice b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
}
.v3-series-mosaic-choice:has(input:checked){
  outline:2px solid #fff;
  outline-offset:1px;
}

/* V3.25 — the private preview IS the editor. No separate edit mode. */
.v3-editor-dock--autosave{
  padding:6px 8px!important;
  gap:6px!important;
}
.v3-editor-dock--autosave [data-v3-admin]{
  min-height:28px!important;
  padding:6px 9px!important;
  font-size:11px!important;
}
.v3-editor-dock--autosave .v3-draft-state{
  min-width:54px;
  text-align:center;
}
.v3-direct-edit .v3-edit-action,
.v3-direct-edit .v3-home-series-actions,
.v3-direct-edit .v3-about-actions,
.v3-direct-edit .v3-exhibition-edit{
  display:none!important;
}

/* Text looks normal until the pointer tells you it is editable. */
.v3-direct-edit .v3-editable-copy,
.v3-direct-edit .v3-direct-clickable,
.v3-direct-edit [data-v3-series-title]{
  outline:none!important;
  cursor:text;
}
@media (hover:hover) and (pointer:fine){
  .v3-direct-edit .v3-editable-copy:hover,
  .v3-direct-edit .v3-direct-clickable:hover,
  .v3-direct-edit [data-v3-series-title]:hover{
    outline:1px dashed rgba(255,255,255,.5)!important;
    outline-offset:4px!important;
  }
}
.v3-direct-edit .v3-editable-copy:focus{
  outline:1px solid rgba(255,255,255,.8)!important;
  outline-offset:4px!important;
}

/* Featured and Series can always be reordered directly. */
.v3-direct-edit .v3-sortable-card{
  cursor:grab!important;
}
.v3-direct-edit .v3-sortable-card.is-dragging{
  cursor:grabbing!important;
  opacity:.7!important;
}

/* Mosaics are directly manipulable in the selected large Series view. */
.v3-direct-edit .series-focus__image .collage-tiles--freeform .collage-tile{
  cursor:move!important;
}
.v3-direct-edit .series-focus__image .collage-tiles--freeform .collage-tile:hover{
  outline:1px solid rgba(255,255,255,.65)!important;
}
.v3-direct-edit .series-focus__image .v3-freeform-resize{
  display:block!important;
}
.v3-direct-edit .v3-freeform-drag-label{
  display:none!important;
}
.v3-direct-edit .v3-make-freeform{
  display:block!important;
}

/* Autosave panels never need a Save button. */
.v3-autosave-panel .v3-autosave-note{
  display:inline-block;
  margin-left:8px;
  color:#aaa;
  font:11px/1 system-ui,sans-serif;
}

/* V3.27 — only actions that create/remove things remain as visible controls. */
.v3-direct-edit .v3-exhibitions-page-actions{
  display:flex!important;
  margin-top:1rem;
}
.v3-direct-edit .v3-exhibitions-page-actions [data-v3-style-exhibitions]{
  display:none!important;
}
.v3-direct-edit .v3-links-page-actions,
.v3-direct-edit .v3-contact-page-actions{
  display:none!important;
}
.v3-direct-edit .series-top [data-v3-series-title]{
  cursor:text!important;
}
.v3-direct-edit .series-work:not(.series-collage-work){
  cursor:pointer!important;
}
@media (hover:hover) and (pointer:fine){
  .v3-direct-edit .series-work:not(.series-collage-work):hover{
    outline:1px solid rgba(255,255,255,.55)!important;
    outline-offset:2px!important;
  }
}

/* V3.28 — one complete Series workspace */
.v3-series-workspace{
  width:min(760px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 44px)!important;
  overflow:auto!important;
  padding:16px!important;
}
.v3-workspace-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.v3-workspace-head>div{
  display:flex;
  align-items:center;
  gap:8px;
}
.v3-workspace-head>[data-close]{
  width:34px;
  height:34px;
  border:1px solid #555;
  border-radius:50%;
  background:#202020;
  color:#fff;
  font:20px/1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-workspace-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:12px 0 18px;
}
.v3-workspace-actions button{
  min-height:40px;
  padding:10px 13px;
  border:1px solid #666;
  border-radius:999px;
  background:#242424;
  color:#fff;
  font-weight:600;
  cursor:pointer;
}
.v3-workspace-actions button:hover{
  background:#fff;
  color:#111;
}
.v3-workspace-section{
  padding-top:14px;
  margin-top:14px;
  border-top:1px solid #353535;
}
.v3-workspace-photo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(145px,1fr));
  gap:9px;
}
.v3-workspace-photo{
  position:relative;
  min-width:0;
  border:1px solid #383838;
  border-radius:9px;
  overflow:hidden;
  background:#151515;
}
.v3-workspace-photo__main{
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  text-align:left;
  cursor:pointer;
}
.v3-workspace-thumb{
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#090909;
}
.v3-workspace-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.v3-workspace-photo__meta{
  display:grid;
  gap:3px;
  padding:8px 9px 10px;
}
.v3-workspace-photo__meta b,
.v3-workspace-photo__meta small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.v3-workspace-photo__meta b{font-size:12px}
.v3-workspace-photo__meta small{font-size:10px;color:#aaa}
.v3-workspace-remove{
  position:absolute;
  top:6px;
  right:6px;
  z-index:5;
  width:28px;
  height:28px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  background:rgba(0,0,0,.78);
  color:#fff;
  font:17px/1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-workspace-mosaic-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr));
  gap:9px;
}
.v3-workspace-mosaic{
  position:relative;
  border:1px solid #383838;
  border-radius:9px;
  overflow:hidden;
  background:#151515;
}
.v3-workspace-mosaic__main{
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  color:#fff;
  text-align:left;
  cursor:pointer;
}
.v3-workspace-mosaic__preview{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#090909;
}
.v3-workspace-mosaic__preview>.archive-mosaic{
  height:100%;
}
.v3-workspace-mosaic__main>span:last-child{
  display:grid;
  gap:3px;
  padding:8px 9px 10px;
}
.v3-workspace-mosaic__main small{color:#aaa;font-size:10px}
.v3-workspace-subseries{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #353535;
}
.v3-workspace-subseries summary{
  cursor:pointer;
  font-weight:600;
}
.v3-loading-copy [data-copy],
.v3-loading-copy #gallery-eyebrow,
.v3-loading-copy #gallery-title{
  visibility:hidden!important;
}
@media(max-width:700px){
  .v3-series-workspace{width:calc(100vw - 14px)!important;max-height:calc(100vh - 20px)!important;padding:12px!important}
  .v3-workspace-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v3-workspace-mosaic-grid{grid-template-columns:1fr}
}

/* V3.30 — Series page hierarchy, compact caption and clear sub-series */
.series-header{
  width:min(1380px,calc(100% - 2rem));
  margin:0 auto;
  padding:clamp(1.25rem,3vw,2.5rem) 0 1rem;
}
.series-header>.eyebrow{
  margin-top:.65rem;
}
.series-header h1{
  margin:.15rem 0 .8rem;
  font-size:clamp(2.2rem,5vw,5rem);
  line-height:1.02;
  max-width:100%;
}
.series-subseries-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:1rem;
}
.series-subseries-tabs a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  color:inherit;
  text-decoration:none;
  font-size:12px;
}
.series-subseries-tabs a span{
  opacity:.55;
  font-size:10px;
}
.series-subseries-tabs a[aria-current="page"]{
  background:#fff;
  color:#111;
  border-color:#fff;
}

body[data-page="series"] .series-focus{
  width:min(1380px,calc(100% - 2rem))!important;
  max-width:none!important;
  height:min(66svh,720px)!important;
  min-height:440px!important;
  margin:0 auto!important;
  padding:0!important;
  grid-template-columns:minmax(0,1fr) minmax(230px,300px)!important;
  gap:clamp(1rem,2vw,2rem)!important;
  align-items:stretch!important;
  overflow:visible!important;
}
body[data-page="series"] .series-focus__image{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}
body[data-page="series"] .series-focus__open,
body[data-page="series"] .series-focus__open>.art-image{
  width:100%!important;
  height:100%!important;
}
body[data-page="series"] .series-focus__open>.art-image img{
  max-width:100%!important;
  max-height:100%!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
}
body[data-page="series"] .series-focus__copy{
  height:100%!important;
  min-height:0!important;
  overflow:auto!important;
  align-self:stretch!important;
  padding:clamp(.75rem,1.8vw,1.25rem)!important;
  border-left:1px solid rgba(255,255,255,.12)!important;
  cursor:text;
}
body[data-page="series"] .series-focus__copy .eyebrow{
  margin-bottom:.5rem;
  font-size:10px;
}
body[data-page="series"] .series-focus__copy h2{
  margin:0 0 .7rem!important;
  font-size:clamp(1.15rem,2vw,1.7rem)!important;
  line-height:1.12!important;
}
body[data-page="series"] .series-focus__copy .work-info__meta{
  gap:.45rem!important;
  margin-bottom:.8rem!important;
  font-size:11px!important;
}
body[data-page="series"] .series-focus__description{
  font-size:13px!important;
  line-height:1.45!important;
}
body[data-page="series"] .series-focus__description p{
  margin:.55rem 0!important;
}

.series-grid-wrap{
  width:min(1380px,calc(100% - 2rem));
  margin:clamp(2rem,5vw,4rem) auto 0;
}
.series-group-heading{
  font-size:clamp(1.05rem,2vw,1.35rem)!important;
  margin-top:1.25rem!important;
  padding-top:1rem!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
}
.series-group-heading::before{
  content:'Sub-series · ';
  opacity:.5;
  font-size:.72em;
  font-weight:400;
}
.series-group-heading--nested::before{
  content:'Group · ';
}
.series-grid-heading p{
  opacity:.55;
  font-size:11px;
}

/* Series workspace: drag order is visible and tactile. */
.v3-workspace-photo{
  touch-action:none;
  cursor:grab;
}
.v3-workspace-photo.is-dragging{
  cursor:grabbing;
  opacity:.62;
  transform:scale(.97);
  outline:2px solid #fff;
  outline-offset:2px;
}
.v3-workspace-order{
  position:absolute;
  top:6px;
  left:6px;
  z-index:6;
  min-width:26px;
  height:26px;
  display:grid;
  place-items:center;
  padding:0 6px;
  border-radius:999px;
  background:rgba(0,0,0,.78);
  border:1px solid rgba(255,255,255,.55);
  color:#fff;
  font:600 10px/1 system-ui,sans-serif;
}

/* Direct Series text-editing cues stay subtle. */
.v3-direct-edit [data-v3-series-title],
.v3-direct-edit [data-v3-work-text]{
  cursor:text!important;
}
@media (hover:hover) and (pointer:fine){
  .v3-direct-edit [data-v3-series-title]:hover,
  .v3-direct-edit [data-v3-work-text]:hover{
    outline:1px dashed rgba(255,255,255,.5)!important;
    outline-offset:4px!important;
  }
}

@media(max-width:800px){
  .series-header{
    width:calc(100% - 1rem);
    padding-top:1rem;
  }
  body[data-page="series"] .series-focus{
    width:calc(100% - 1rem)!important;
    height:auto!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
  }
  body[data-page="series"] .series-focus__image{
    height:min(58svh,560px)!important;
  }
  body[data-page="series"] .series-focus__copy{
    height:auto!important;
    overflow:visible!important;
    border-left:0!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
  }
}

/* V3.32 — visible Series tools and dedicated mosaic section */
.series-tools{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:1rem;
}
.series-tools button{
  min-height:38px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:999px;
  background:rgba(0,0,0,.48);
  color:#fff;
  font:600 12px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-tools button:hover{
  background:#fff;
  color:#111;
}
.series-mosaics{
  width:min(1380px,calc(100% - 2rem));
  margin:clamp(1.5rem,4vw,3rem) auto 0;
  padding-top:1rem;
  border-top:1px solid rgba(255,255,255,.12);
}
.series-mosaics__heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.series-mosaics__heading h2{
  margin:0;
  font-size:clamp(1.2rem,2vw,1.6rem);
}
.series-mosaics__heading span{
  opacity:.55;
  font-size:11px;
}
.series-mosaics__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:12px;
}
.series-mosaic-card{
  display:block;
  color:inherit;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  overflow:hidden;
  background:rgba(255,255,255,.015);
}
.series-mosaic-card__preview{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#080808;
}
.series-mosaic-card__preview>.archive-mosaic{
  width:100%;
  height:100%;
}
.series-mosaic-card>span:last-child{
  display:grid;
  gap:3px;
  padding:9px 10px 11px;
}
.series-mosaic-card b{
  font-size:12px;
}
.series-mosaic-card i{
  font-style:normal;
  font-size:10px;
  opacity:.55;
}
.series-work .archive-mosaic{
  width:100%;
  height:100%;
}
.series-work .archive-mosaic__canvas{
  width:100%;
  height:100%;
  aspect-ratio:auto;
}
.series-work .archive-mosaic--grid{
  height:100%;
}
@media(max-width:700px){
  .series-tools{gap:6px}
  .series-tools button{font-size:11px;padding:8px 10px}
  .series-mosaics{width:calc(100% - 1rem)}
  .series-mosaics__grid{grid-template-columns:1fr 1fr}
}

/* V3.34 — selected mosaic is a real editable surface, not a photo button. */
.series-focus__mosaic{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:transparent;
}
.series-focus__mosaic>.collage-tiles{
  width:min(100%,calc((100svh - 150px)*1.6))!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:16/10!important;
  position:relative!important;
}
.series-focus__mosaic>.collage-tiles--freeform{
  display:block!important;
}
.series-focus__mosaic .collage-tile{
  box-sizing:border-box!important;
}
.series-mosaics__empty{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px;
  border:1px dashed rgba(255,255,255,.22);
  border-radius:10px;
  font-size:12px;
  opacity:.9;
}
.series-mosaics__empty button{
  flex:0 0 auto;
  min-height:36px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:999px;
  background:rgba(0,0,0,.45);
  color:#fff;
  font-weight:600;
  cursor:pointer;
}
.series-mosaics__empty button:hover{
  background:#fff;
  color:#111;
}

/* =========================================================
   V3.40 Dedicated Series editor
   Isolated from the generic preview editor.
   ========================================================= */
.series-editor-page{
  min-height:100vh;
}
.series-editor-page .se-loading{
  max-width:760px;
  margin:12vh auto;
  padding:2rem;
}
.series-editor-page .se-main{
  width:100%;
}
.series-editor-page .se-header{
  width:min(1380px,calc(100% - 2rem));
  margin:0 auto;
  padding:clamp(1rem,2.5vw,2.25rem) 0 1rem;
}
.series-editor-page .se-eyebrow{
  margin-top:.75rem;
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:.55;
}
.series-editor-page .se-title-row{
  display:flex;
  align-items:flex-start;
  gap:10px;
}
.series-editor-page [data-se-series-title]{
  flex:1 1 auto;
  min-width:0;
  margin:.15rem 0 .5rem;
  font-size:clamp(2.6rem,6vw,5.8rem);
  line-height:1.01;
  outline:none;
  cursor:text;
}
.series-editor-page [data-se-series-title]:hover,
.series-editor-page [data-se-series-title]:focus{
  outline:1px dashed rgba(255,255,255,.42);
  outline-offset:5px;
}
.series-editor-page .se-aa{
  flex:0 0 auto;
  margin-top:.75rem;
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.36);
  border-radius:50%;
  background:rgba(0,0,0,.3);
  color:inherit;
  font:600 12px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-aa:hover{
  background:#fff;
  color:#111;
}
.series-editor-page .se-subtabs{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:.8rem 0 0;
}
.series-editor-page .se-subtabs button{
  min-height:34px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:transparent;
  color:inherit;
  font:500 12px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-subtabs button span{
  margin-left:5px;
  opacity:.5;
  font-size:10px;
}
.series-editor-page .se-subtabs button.is-active{
  background:#fff;
  color:#111;
  border-color:#fff;
}
.series-editor-page .se-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:1rem;
}
.series-editor-page .se-toolbar button,
.series-editor-page .se-section-heading button{
  min-height:38px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.4);
  border-radius:999px;
  background:rgba(0,0,0,.26);
  color:inherit;
  font:600 12px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-toolbar button:hover,
.series-editor-page .se-section-heading button:hover{
  background:#fff;
  color:#111;
}
.series-editor-page .se-focus{
  width:min(1380px,calc(100% - 2rem));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(250px,320px);
  gap:clamp(1rem,2vw,2rem);
  min-height:440px;
  max-height:min(68svh,760px);
}
.series-editor-page .se-focus-media{
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  overflow:hidden;
}
.series-editor-page .se-focus-photo{
  width:100%;
  height:100%;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  cursor:zoom-in;
  display:grid;
  place-items:center;
}
.series-editor-page .se-img{
  display:grid;
  place-items:center;
  overflow:hidden;
  background:rgba(0,0,0,.12);
  position:relative;
}
.series-editor-page .se-img:empty::after{
  content:attr(data-label);
  max-width:80%;
  text-align:center;
  opacity:.45;
  font:12px/1.4 system-ui,sans-serif;
}
.series-editor-page .se-img img{
  display:block;
}
.series-editor-page .se-focus-image{
  width:100%;
  height:100%;
  background:transparent;
}
.series-editor-page .se-focus-image img{
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.series-editor-page .se-copy-editor{
  min-height:0;
  overflow:auto;
  padding:clamp(.75rem,1.5vw,1.15rem);
  border-left:1px solid rgba(255,255,255,.12);
}
.series-editor-page .se-copy-top{
  display:flex;
  justify-content:space-between;
  gap:8px;
  margin-bottom:.65rem;
  color:rgba(255,255,255,.6);
  font:10px/1.2 system-ui,sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.series-editor-page .se-copy-editor input,
.series-editor-page .se-copy-editor textarea,
.series-editor-page .se-copy-editor select{
  width:100%;
  border:1px solid transparent;
  border-radius:6px;
  background:transparent;
  color:inherit;
  font:inherit;
}
.series-editor-page .se-copy-editor input:focus,
.series-editor-page .se-copy-editor textarea:focus,
.series-editor-page .se-copy-editor select:focus{
  outline:none;
  border-color:rgba(255,255,255,.38);
  background:rgba(255,255,255,.035);
}
.series-editor-page .se-work-title{
  padding:2px 4px 7px;
  font-size:clamp(1.2rem,2vw,1.7rem)!important;
  line-height:1.12;
  font-weight:500;
}
.series-editor-page .se-meta-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-bottom:.55rem;
}
.series-editor-page .se-meta-row input{
  padding:6px 5px;
  font-size:11px;
}
.series-editor-page .se-copy-editor textarea{
  min-height:120px;
  padding:7px 5px;
  resize:vertical;
  font-size:13px;
  line-height:1.45;
}
.series-editor-page .se-copy-editor>label{
  display:grid;
  gap:5px;
  margin-top:.65rem;
  font:11px/1.3 system-ui,sans-serif;
  color:rgba(255,255,255,.68);
}
.series-editor-page .se-copy-editor select{
  padding:7px;
  border-color:rgba(255,255,255,.2);
}
.series-editor-page .se-checks{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:.8rem;
  font:11px/1.3 system-ui,sans-serif;
}
.series-editor-page .se-checks label{
  display:flex;
  align-items:center;
  gap:6px;
}
.series-editor-page .se-copy-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:1rem;
}
.series-editor-page .se-copy-actions button,
.series-editor-page .se-file-button{
  min-height:36px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:999px;
  background:rgba(0,0,0,.3);
  color:inherit;
  font:600 11px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-file-button{
  display:inline-flex;
  align-items:center;
}
.series-editor-page .se-file-button input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.series-editor-page .se-danger{
  border-color:rgba(190,80,80,.7)!important;
}
.series-editor-page .se-danger:hover{
  background:#8b2929!important;
  color:#fff!important;
}
.series-editor-page .se-section{
  width:min(1380px,calc(100% - 2rem));
  margin:clamp(2rem,4vw,3.5rem) auto 0;
  padding-top:1rem;
  border-top:1px solid rgba(255,255,255,.12);
}
.series-editor-page .se-section-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.series-editor-page .se-section-heading h2{
  margin:0;
  font-size:clamp(1.15rem,2vw,1.55rem);
}
.series-editor-page .se-section-heading p{
  margin:.2rem 0 0;
  opacity:.55;
  font-size:11px;
}
.series-editor-page .se-empty,
.series-editor-page .se-empty-card{
  padding:1.2rem;
  border:1px dashed rgba(255,255,255,.22);
  border-radius:10px;
}
.series-editor-page .se-empty-card{
  display:grid;
  gap:5px;
  font-size:12px;
}
.series-editor-page .se-empty-card span{
  opacity:.6;
}
.series-editor-page .se-mosaic-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:10px;
}
.series-editor-page .se-mosaic-card{
  position:relative;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  overflow:hidden;
  background:rgba(255,255,255,.015);
  cursor:pointer;
}
.series-editor-page .se-mosaic-card.is-selected{
  outline:2px solid rgba(255,255,255,.68);
  outline-offset:2px;
}
.series-editor-page .se-mosaic-card>div:last-of-type{
  display:grid;
  gap:3px;
  padding:8px 10px 10px;
}
.series-editor-page .se-mosaic-card>div:last-of-type b{
  font-size:12px;
}
.series-editor-page .se-mosaic-card>div:last-of-type span{
  font-size:10px;
  opacity:.55;
}
.series-editor-page .se-mosaic-card>button{
  position:absolute;
  top:6px;
  right:6px;
  z-index:5;
  width:28px;
  height:28px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  background:rgba(0,0,0,.72);
  color:#fff;
  cursor:pointer;
}
.series-editor-page .se-mosaic-thumb{
  aspect-ratio:16/10;
  overflow:hidden;
}
.series-editor-page .se-mosaic-canvas{
  position:relative;
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  background:rgba(0,0,0,.08);
}
.series-editor-page .se-focus-mosaic{
  width:100%;
  max-width:100%;
  display:grid;
  place-items:center;
}
.series-editor-page .se-focus-mosaic .se-mosaic-canvas{
  width:min(100%,calc((68svh - 30px)*1.6));
}
.series-editor-page .se-mosaic-tile{
  position:absolute;
  overflow:hidden;
  box-sizing:border-box;
  background:#111;
}
.series-editor-page .se-mosaic-canvas.is-editable .se-mosaic-tile{
  cursor:move;
  outline:1px solid rgba(255,255,255,.42);
  touch-action:none;
}
.series-editor-page .se-mosaic-image{
  width:100%;
  height:100%;
}
.series-editor-page .se-mosaic-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.series-editor-page .se-resize{
  position:absolute;
  right:4px;
  bottom:4px;
  z-index:3;
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border:2px solid #fff;
  border-radius:50%;
  background:#111;
  color:#fff;
  font:700 12px/1 system-ui,sans-serif;
  cursor:nwse-resize;
}
.series-editor-page .se-photo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
  gap:9px;
}
.series-editor-page .se-photo-card{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  border-radius:9px;
  background:rgba(255,255,255,.012);
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
}
.series-editor-page .se-photo-card.is-selected{
  outline:2px solid rgba(255,255,255,.7);
  outline-offset:2px;
}
.series-editor-page .se-photo-card.is-dragging{
  opacity:.55;
  cursor:grabbing;
}
.series-editor-page .se-order-badge{
  position:absolute;
  top:6px;
  left:6px;
  z-index:4;
  min-width:26px;
  height:26px;
  display:grid;
  place-items:center;
  padding:0 6px;
  border-radius:999px;
  background:rgba(0,0,0,.75);
  border:1px solid rgba(255,255,255,.45);
  color:#fff;
  font:600 10px/1 system-ui,sans-serif;
}
.series-editor-page .se-card-image{
  width:100%;
  aspect-ratio:1/1;
}
.series-editor-page .se-card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.series-editor-page .se-card-copy{
  display:grid;
  gap:3px;
  padding:8px 9px 10px;
}
.series-editor-page .se-card-copy b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
}
.series-editor-page .se-card-copy span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  opacity:.55;
  font-size:10px;
}
.series-editor-page .se-status{
  position:fixed;
  right:12px;
  bottom:12px;
  z-index:5000;
  display:flex;
  align-items:center;
  gap:7px;
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(15,15,15,.84);
  backdrop-filter:blur(12px);
  color:#fff;
  font:10px/1 system-ui,sans-serif;
}
.series-editor-page .se-status>span{
  opacity:.45;
}
.series-editor-page .se-status>b{
  min-width:44px;
  font-weight:600;
}
.series-editor-page .se-status>b.is-error{
  color:#ffb2b2;
}
.series-editor-page .se-status button{
  border:0;
  border-left:1px solid rgba(255,255,255,.2);
  padding:2px 3px 2px 8px;
  background:transparent;
  color:#fff;
  font:600 10px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(0,0,0,.68);
  backdrop-filter:blur(6px);
}
.series-editor-page .se-modal{
  width:min(680px,calc(100vw - 28px));
  max-height:calc(100vh - 36px);
  overflow:auto;
  border:1px solid #444;
  border-radius:14px;
  background:#171717;
  color:#fff;
  box-shadow:0 18px 60px rgba(0,0,0,.45);
}
.series-editor-page .se-modal>header{
  position:sticky;
  top:0;
  z-index:2;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border-bottom:1px solid #333;
  background:#171717;
}
.series-editor-page .se-modal>header h2{
  margin:0;
  font:600 16px/1.2 system-ui,sans-serif;
}
.series-editor-page .se-modal>header button{
  width:32px;
  height:32px;
  border:1px solid #555;
  border-radius:50%;
  background:#222;
  color:#fff;
  font-size:18px;
  cursor:pointer;
}
.series-editor-page .se-modal-body{
  display:grid;
  gap:11px;
  padding:14px 16px;
}
.series-editor-page .se-modal-body label{
  display:grid;
  gap:5px;
  font:11px/1.3 system-ui,sans-serif;
  color:#bbb;
}
.series-editor-page .se-modal-body input,
.series-editor-page .se-modal-body textarea,
.series-editor-page .se-modal-body select{
  width:100%;
  padding:9px;
  border:1px solid #505050;
  border-radius:7px;
  background:#202020;
  color:#fff;
  font:13px/1.3 system-ui,sans-serif;
}
.series-editor-page .se-modal>footer{
  position:sticky;
  bottom:0;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding:12px 16px;
  border-top:1px solid #333;
  background:#171717;
}
.series-editor-page .se-modal>footer button{
  min-height:38px;
  padding:9px 13px;
  border:1px solid #666;
  border-radius:999px;
  background:#242424;
  color:#fff;
  font-weight:600;
  cursor:pointer;
}
.series-editor-page .se-two{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.series-editor-page .se-pick-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(130px,1fr));
  gap:9px;
}
.series-editor-page .se-pick{
  position:relative;
  display:grid!important;
  gap:6px;
  padding:7px;
  border:1px solid #444;
  border-radius:8px;
  cursor:pointer;
}
.series-editor-page .se-pick input{
  position:absolute;
  top:8px;
  left:8px;
  width:auto!important;
  z-index:2;
}
.series-editor-page .se-pick-image{
  width:100%;
  aspect-ratio:1/1;
}
.series-editor-page .se-pick-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.series-editor-page .se-pick b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
}
.series-editor-page .se-sub-editor{
  display:grid;
  gap:7px;
}
.series-editor-page .se-sub-editor>div{
  display:grid;
  grid-template-columns:1fr 34px;
  gap:7px;
}
.series-editor-page .se-sub-editor button{
  border:1px solid #555;
  border-radius:7px;
  background:#252525;
  color:#fff;
  cursor:pointer;
}
.series-editor-page .se-font-list{
  display:grid;
  gap:6px;
  max-height:320px;
  overflow:auto;
}
.series-editor-page .se-font-list button{
  display:grid;
  gap:2px;
  padding:10px;
  border:1px solid #444;
  border-radius:8px;
  background:#1d1d1d;
  color:#fff;
  text-align:left;
  cursor:pointer;
}
.series-editor-page .se-font-list button span{
  opacity:.7;
  font-size:18px;
}
@media(max-width:820px){
  .series-editor-page .se-header,
  .series-editor-page .se-focus,
  .series-editor-page .se-section{
    width:calc(100% - 1rem);
  }
  .series-editor-page .se-focus{
    grid-template-columns:1fr;
    max-height:none;
  }
  .series-editor-page .se-focus-media{
    height:min(58svh,560px);
  }
  .series-editor-page .se-copy-editor{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.12);
  }
  .series-editor-page .se-photo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .series-editor-page .se-mosaic-grid{
    grid-template-columns:1fr 1fr;
  }
}

/* V3.44 — homepage Series management without Archive */
.v3-home-series-tools{
  display:grid;
  gap:5px;
  margin-top:8px;
}
.v3-home-series-tools button{
  min-height:30px;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:999px;
  background:rgba(0,0,0,.22);
  color:inherit;
  font:600 10px/1 system-ui,sans-serif;
  cursor:pointer;
}
.v3-home-series-tools button:hover{
  background:#fff;
  color:#111;
}
.v3-home-series-card{
  cursor:pointer!important;
}
.v3-home-series-card>a{
  display:block;
  color:inherit;
  text-decoration:none;
}
.v3-home-series-card .v3-home-series-cover{
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
}
.v3-home-series-card .v3-home-series-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.v3-home-series-cover--empty{
  padding:12px;
  border:1px dashed rgba(255,255,255,.25);
  background:rgba(255,255,255,.025);
  text-align:center;
}
.v3-home-series-cover--empty b{
  font-size:13px;
}
.v3-home-series-cover--empty small{
  margin-top:4px;
  opacity:.5;
  font-size:10px;
}
.v3-home-series-manager{
  width:min(760px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 44px)!important;
  overflow:auto!important;
}
.v3-home-series-manager__actions{
  display:flex;
  justify-content:flex-start;
  margin:10px 0 14px;
}
.v3-home-series-manager__actions button,
.v3-home-series-manager__item button{
  min-height:34px;
  padding:7px 10px;
  border:1px solid #555;
  border-radius:8px;
  background:#242424;
  color:#fff;
  cursor:pointer;
}
.v3-home-series-manager__item{
  display:grid;
  gap:10px;
  padding:12px 0;
  border-top:1px solid #343434;
}
.v3-home-series-manager__row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto auto;
  gap:8px;
  align-items:center;
}
.v3-home-series-manager__row input,
.v3-home-series-manager__sub input{
  width:100%;
  min-height:36px;
  padding:7px 9px;
  border:1px solid #4a4a4a;
  border-radius:7px;
  background:#1f1f1f;
  color:#fff;
}
.v3-home-series-manager__count{
  min-width:58px;
  text-align:right;
  color:#aaa;
  font:10px/1.2 system-ui,sans-serif;
}
.v3-home-series-manager__subs{
  display:grid;
  gap:7px;
  padding-left:12px;
}
.v3-home-series-manager__subs>strong{
  font:600 11px/1.2 system-ui,sans-serif;
  color:#aaa;
}
.v3-home-series-manager__subs [data-sub-list]{
  display:grid;
  gap:6px;
}
.v3-home-series-manager__sub{
  display:grid;
  grid-template-columns:minmax(0,1fr) 34px;
  gap:7px;
}
.v3-home-series-manager__sub button{
  width:34px;
  padding:0;
}
.v3-home-series-manager__empty{
  color:#888;
  font-size:11px;
}
.series-editor-page .se-delete-series{
  margin-left:auto;
  border-color:rgba(190,80,80,.72)!important;
}
.series-editor-page .se-delete-series:hover{
  background:#8b2929!important;
  color:#fff!important;
}
@media(max-width:700px){
  .v3-home-series-manager__row{
    grid-template-columns:1fr auto;
  }
  .v3-home-series-manager__count{
    order:3;
    text-align:left;
  }
}

/* V3.45 — stable maximum Series viewer and static Years row */
.series-editor-page .se-focus{
  max-height:none!important;
  min-height:0!important;
  align-items:start!important;
  overflow:visible!important;
}
.series-editor-page .se-focus-media{
  position:relative!important;
  width:100%!important;
  height:min(58svh,650px)!important;
  max-height:650px!important;
  min-height:360px!important;
  overflow:hidden!important;
  contain:layout paint;
}
.series-editor-page .se-focus-photo,
.series-editor-page .se-focus-mosaic{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  overflow:hidden!important;
}
.series-editor-page .se-focus-image{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  overflow:hidden!important;
  background:transparent!important;
}
.series-editor-page .se-focus-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}
.series-editor-page .se-focus-mosaic .se-mosaic-canvas{
  width:min(100%,1040px)!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:16/10!important;
}
.series-editor-page .se-copy-editor{
  height:min(58svh,650px)!important;
  max-height:650px!important;
  min-height:360px!important;
  overflow:auto!important;
}
.series-editor-page .se-focus-nav{
  position:absolute;
  left:50%;
  bottom:10px;
  z-index:25;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:8px;
  padding:5px 7px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(0,0,0,.68);
  backdrop-filter:blur(8px);
  color:#fff;
  font:600 10px/1 system-ui,sans-serif;
}
.series-editor-page .se-focus-nav button{
  width:34px;
  height:34px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:50%;
  background:rgba(20,20,20,.8);
  color:#fff;
  font:18px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-focus-nav button:hover:not(:disabled){
  background:#fff;
  color:#111;
}
.series-editor-page .se-focus-nav button:disabled{
  opacity:.25;
  cursor:default;
}
.series-editor-page .se-focus-nav span{
  min-width:42px;
  text-align:center;
}
.series-editor-page .se-photos{
  position:relative;
  z-index:1;
  clear:both;
}
.series-editor-page .se-photo-grid{
  align-items:start!important;
}
.series-editor-page .se-photo-card,
.series-editor-page .se-card-image{
  max-height:none!important;
}
.gallery-home .archive-row--years .archive-lane{
  overflow:visible!important;
}
.gallery-home .archive-row--years #years-track{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:auto!important;
  max-width:100%!important;
  transform:none!important;
}
@media(max-width:820px){
  .series-editor-page .se-focus-media{
    height:min(52svh,520px)!important;
    min-height:300px!important;
  }
  .series-editor-page .se-copy-editor{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
}

/* V3.46 — clearer Series controls, canonical sub-series, uniform Done */
.gallery-home .archive-row--series{
  position:relative;
}
.gallery-home .archive-row--series .archive-row__label{
  position:relative;
  z-index:8;
  overflow:visible;
}
.gallery-home .archive-row--series .archive-lane{
  padding-left:250px!important;
}
.gallery-home .v3-home-series-tools{
  position:absolute;
  left:calc(100% + 16px);
  top:50%;
  transform:translateY(-50%);
  display:flex!important;
  flex-direction:row!important;
  gap:10px!important;
  width:max-content;
  margin:0!important;
  z-index:12;
}
.gallery-home .v3-home-series-tools button{
  min-width:112px;
  min-height:44px!important;
  padding:11px 15px!important;
  border:1px solid rgba(255,255,255,.5)!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.7)!important;
  color:#fff!important;
  font:600 12px/1 system-ui,sans-serif!important;
  letter-spacing:0!important;
  text-transform:none!important;
  box-shadow:0 5px 18px rgba(0,0,0,.18);
}
.gallery-home .v3-home-series-tools button:hover{
  background:#fff!important;
  color:#111!important;
}
.v3-done-button,
.v3-primary-action,
.series-editor-page .se-done{
  min-height:40px!important;
  padding:9px 14px!important;
  border:1px solid #fff!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#111!important;
  font-weight:700!important;
  cursor:pointer!important;
}
.v3-done-button:hover,
.v3-primary-action:hover,
.series-editor-page .se-done:hover{
  background:#e7e7e7!important;
  color:#111!important;
}
.v3-new-series-dialog{
  width:min(430px,calc(100vw - 28px))!important;
}
.v3-new-series-dialog input{
  width:100%;
  min-height:40px;
  padding:9px 10px;
  border:1px solid #505050;
  border-radius:7px;
  background:#1f1f1f;
  color:#fff;
}
.v3-home-series-manager>.v3-inline-inspector__actions{
  position:sticky;
  bottom:-1px;
  margin:14px -1px -1px;
  padding:12px 0 2px;
  background:#171717;
}
.series-editor-page .se-sub-editor>div{
  grid-template-columns:minmax(0,1fr) auto 34px!important;
  align-items:center;
}
.series-editor-page .se-sub-count{
  min-width:54px;
  color:#999;
  text-align:right;
  font:10px/1.2 system-ui,sans-serif;
}
@media(max-width:700px){
  .gallery-home .archive-row--series .archive-lane{
    padding-left:0!important;
    padding-top:96px!important;
  }
  .gallery-home .v3-home-series-tools{
    left:0;
    top:calc(100% + 10px);
    transform:none;
    flex-direction:column!important;
    gap:6px!important;
  }
  .gallery-home .v3-home-series-tools button{
    min-width:132px;
    min-height:38px!important;
    padding:8px 10px!important;
    font-size:11px!important;
  }
}


/* V3.47 — larger visual-editor controls and final-style Years row */
.v3-editor-dock{
  font-size:14px!important;
  padding:9px!important;
  gap:9px!important;
}
.v3-editor-dock button{
  min-height:40px!important;
  padding:10px 14px!important;
  font-size:14px!important;
}
.v3-edit-action button,
.v3-series-edit-trigger{
  min-height:38px!important;
  padding:9px 12px!important;
  font-size:13px!important;
}
.v3-inline-inspector{
  width:min(390px,calc(100vw - 36px))!important;
  padding:18px!important;
  font-size:14px!important;
  line-height:1.45!important;
}
.v3-inline-inspector label,
.v3-inline-inspector strong,
.v3-inline-inspector p,
.v3-inline-inspector span{
  font-size:14px;
}
.v3-inline-inspector input,
.v3-inline-inspector select,
.v3-inline-inspector textarea{
  min-height:42px!important;
  padding:9px 10px!important;
  font-size:14px!important;
}
.v3-inline-inspector button,
.v3-home-series-manager__actions button,
.v3-home-series-manager__item button,
.v3-done-button,
.v3-primary-action,
.series-editor-page button{
  min-height:42px!important;
  padding:10px 14px!important;
  font-size:13px!important;
}
.gallery-home .v3-home-series-tools button{
  min-width:118px!important;
  min-height:46px!important;
  padding:12px 16px!important;
  font-size:13px!important;
}
.gallery-home .archive-row--years .archive-lane{
  overflow-x:hidden!important;
  overflow-y:hidden!important;
}
.gallery-home .archive-row--years #years-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:clamp(1.4rem,3vw,4rem)!important;
  width:max-content!important;
  max-width:none!important;
  transform:translateX(0)!important;
}


/* V3.48 — add photographs from Archive or multi-file external upload */
.series-editor-page .se-modal{
  width:min(920px,calc(100vw - 28px));
}
.series-editor-page .se-add-source-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding-bottom:4px;
}
.series-editor-page .se-add-source-tabs button{
  min-height:44px;
  padding:10px 16px;
  border:1px solid #5c5c5c;
  border-radius:999px;
  background:#242424;
  color:#fff;
  font:650 14px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-add-source-tabs button.is-active{
  background:#fff;
  border-color:#fff;
  color:#111;
}
.series-editor-page .se-add-help{
  margin:2px 0 10px;
  color:#c8c8c8;
  font:13px/1.5 system-ui,sans-serif;
}
.series-editor-page .se-archive-grid{
  max-height:48vh;
  overflow:auto;
  padding-right:4px;
}
.series-editor-page .se-archive-pick>span:not(.se-img){
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#aaa;
  font:11px/1.3 system-ui,sans-serif;
}
.series-editor-page .se-archive-location{
  color:#777!important;
}
.series-editor-page .se-batch-file{
  padding:14px;
  border:1px dashed #626262;
  border-radius:10px;
  background:#1d1d1d;
  font-size:13px!important;
}
.series-editor-page .se-batch-file input{
  margin-top:8px;
}
.series-editor-page .se-inline-field{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
}
.series-editor-page .se-inline-field button{
  min-height:42px;
  padding:9px 13px;
  border:1px solid #5b5b5b;
  border-radius:8px;
  background:#292929;
  color:#fff;
  font:600 13px/1 system-ui,sans-serif;
  cursor:pointer;
}
.series-editor-page .se-batch-list{
  display:grid;
  gap:9px;
  max-height:46vh;
  overflow:auto;
  padding-right:4px;
}
.series-editor-page .se-batch-item{
  display:grid;
  grid-template-columns:88px minmax(0,1fr) 36px;
  gap:10px;
  align-items:center;
  padding:8px;
  border:1px solid #3f3f3f;
  border-radius:10px;
  background:#1c1c1c;
}
.series-editor-page .se-batch-item>img{
  width:88px;
  height:72px;
  object-fit:cover;
  border-radius:6px;
}
.series-editor-page .se-batch-fields{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(90px,.55fr);
  gap:7px;
  align-items:end;
}
.series-editor-page .se-batch-fields>span{
  grid-column:1/-1;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#777;
  font:11px/1.2 system-ui,sans-serif;
}
.series-editor-page .se-batch-item>button{
  width:34px;
  height:34px;
  border:1px solid #666;
  border-radius:50%;
  background:#252525;
  color:#fff;
  font-size:18px;
  cursor:pointer;
}
.series-editor-page .se-modal-body label{
  font-size:13px;
}
.series-editor-page .se-modal-body input,
.series-editor-page .se-modal-body textarea,
.series-editor-page .se-modal-body select{
  min-height:42px;
  font-size:14px;
}
.series-editor-page .se-modal>footer button{
  min-height:44px;
  padding:10px 16px;
  font-size:14px;
}
@media(max-width:700px){
  .series-editor-page .se-two,
  .series-editor-page .se-batch-fields{
    grid-template-columns:1fr;
  }
  .series-editor-page .se-batch-item{
    grid-template-columns:70px minmax(0,1fr) 34px;
  }
  .series-editor-page .se-batch-item>img{
    width:70px;
    height:70px;
  }
}


/* V3.49 — uncropped Series photographs and navigation below the photograph.
   Applies to the private visual draft only; public site templates stay unchanged. */
.series-editor-page .se-focus-media{
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  gap:10px!important;
}
.series-editor-page .se-focus-photo,
.series-editor-page .se-focus-mosaic{
  grid-row:1!important;
  min-width:0!important;
  min-height:0!important;
  align-self:stretch!important;
}
.series-editor-page .se-focus-nav{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  grid-row:2!important;
  justify-self:center!important;
  align-self:center!important;
  margin:0 auto!important;
  flex-shrink:0!important;
  background:#202020!important;
}
.series-editor-page .se-card-image img,
.series-editor-page .se-archive-pick img,
.series-editor-page .se-batch-item>img,
body[data-page="series"] .series-work .art-image img,
body[data-page="series"] .series-grid .art-image img{
  object-fit:contain!important;
}
.series-editor-page .se-card-image,
.series-editor-page .se-archive-pick .se-img{
  background:#171717!important;
}
@media(max-width:820px){
  .series-editor-page .se-focus-media{
    grid-template-rows:minmax(0,1fr) auto!important;
  }
}


/* V3.49 — readable live typeface samples on Mac, Windows and tablets.
   Keep the font label legible in the UI, but render the sample in its own family. */
.v3-inline-inspector:has(.v3-font-picker:not([hidden])){
  width:min(560px,calc(100vw - 36px))!important;
}
.v3-font-picker button{
  grid-template-columns:minmax(110px,.55fr) minmax(0,1.45fr)!important;
  align-items:start!important;
  gap:12px!important;
}
.v3-font-picker button strong{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif!important;
  font-size:13px!important;
  line-height:1.5!important;
}
.v3-font-picker button span{
  display:block!important;
  font-size:21px!important;
  line-height:1.3!important;
  font-family:inherit!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
.series-editor-page .se-font-list button span{
  display:block!important;
  font-family:inherit!important;
  font-size:20px!important;
  line-height:1.3!important;
  white-space:normal!important;
}


/* V3.50 — unframed natural-aspect images, visible paging arrows below the rows. */
.gallery-home .home-archive,
.gallery-home .archive-row{
  border-top:0!important;
  border-bottom:0!important;
}
.gallery-home .archive-work,
.gallery-home .series-chip,
.gallery-home .v3-home-series-card{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.gallery-home #featured-track .archive-work .art-image,
.gallery-home #series-track .series-chip .art-image,
.gallery-home #series-track .v3-home-series-cover{
  background:transparent!important;
  overflow:hidden!important;
}
.gallery-home #featured-track .archive-work .art-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.gallery-home #series-track .series-chip img{
  object-fit:contain!important;
}
.gallery-home .v3-row-controls{
  position:absolute;
  z-index:18;
  right:12px;
  bottom:5px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  pointer-events:auto;
}
.gallery-home .v3-row-controls .row-arrow{
  display:grid!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  width:30px!important;
  height:30px!important;
  min-height:30px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.5)!important;
  background:rgba(20,20,20,.92)!important;
  color:#fff!important;
  cursor:pointer;
  opacity:1!important;
  pointer-events:auto!important;
}
.gallery-home .v3-row-controls .row-arrow:hover{
  background:#fff!important;
  color:#111!important;
}


/* V3.50.1 — private Series viewer follows the photograph instead of a tall letterbox. */
.series-editor-page .se-focus-media{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  contain:none!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:12px!important;
}
.series-editor-page .se-focus-photo{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  flex:0 0 auto!important;
}
.series-editor-page .se-focus-image{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
.series-editor-page .se-focus-image img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:min(68svh,740px)!important;
  object-fit:contain!important;
}
.series-editor-page .se-focus-nav{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  align-self:center!important;
  flex:0 0 auto!important;
}
.gallery-frame .art-image img{
  object-fit:contain!important;
}
.gallery-item,.gallery-frame{border:0!important;box-shadow:none!important}


/* V3.53 — fixed-size selected-photo viewport.
   A portrait or landscape photograph fits inside the SAME stationary frame;
   navigation is always visible in a dedicated row, never over the picture. */
.series-editor-page .se-focus-media{
  display:grid!important;
  grid-template-rows:minmax(0,1fr) 48px!important;
  gap:8px!important;
  width:100%!important;
  height:min(64svh,700px)!important;
  max-height:none!important;
  min-height:0!important;
  overflow:hidden!important;
  contain:none!important;
  align-items:stretch!important;
  justify-items:stretch!important;
}
.series-editor-page .se-focus-photo,
.series-editor-page .se-focus-mosaic{
  grid-row:1!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
  align-self:stretch!important;
}
.series-editor-page .se-focus-image{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
}
.series-editor-page .se-focus-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}
.series-editor-page .se-focus-nav{
  position:static!important;
  grid-row:2!important;
  inset:auto!important;
  transform:none!important;
  justify-self:center!important;
  align-self:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  z-index:25!important;
  min-height:42px!important;
}
.series-editor-page .se-focus-mosaic .se-mosaic-canvas{
  max-width:100%!important;
  max-height:100%!important;
}
@media(max-width:820px){
  .series-editor-page .se-focus-media{
    height:min(56svh,520px)!important;
    grid-template-rows:minmax(0,1fr) 48px!important;
  }
}
