/* Lavender Lotus Studio 8.9.5 — portfolio editor modal */
.portfolio-modal-shell{
  width:min(1080px,calc(100vw - 40px));
  height:min(820px,calc(100dvh - 32px));
  max-width:calc(100vw - 40px);
  max-height:calc(100dvh - 32px);
}
.portfolio-modal-shell .modal-header{
  padding:20px 24px 16px;
}
.portfolio-modal-shell .modal-body{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding:20px 24px 24px;
}
.portfolio-modal-shell .modal-footer{
  padding:14px 24px;
}
.portfolio-modal-shell .portfolio-editor{
  display:grid!important;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr)!important;
  align-items:start!important;
  gap:24px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.portfolio-modal-shell .portfolio-editor>*{
  min-width:0!important;
  max-width:100%!important;
}
.portfolio-modal-shell .portfolio-editor-preview{
  position:sticky;
  top:0;
  width:100%!important;
  height:min(560px,calc(100dvh - 230px))!important;
  min-height:360px!important;
  max-height:560px!important;
  aspect-ratio:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  border:1px solid rgba(103,78,89,.16);
  border-radius:20px!important;
  background:linear-gradient(145deg,#eee9e5,#ddd6d1);
}
.portfolio-modal-shell .portfolio-editor-preview img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
}
.portfolio-modal-shell .portfolio-editor-preview .drop-hint{
  position:absolute!important;
  left:14px!important;
  right:14px!important;
  bottom:14px!important;
  display:block!important;
  width:auto!important;
  padding:9px 12px!important;
  border-radius:999px!important;
  background:rgba(47,35,41,.82)!important;
  color:#fff!important;
  font-size:.64rem!important;
  font-weight:750!important;
  line-height:1.25!important;
  text-align:center!important;
  backdrop-filter:blur(8px);
}
.portfolio-modal-shell .portfolio-editor>.form-grid{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:14px!important;
}
.portfolio-modal-shell .portfolio-editor .field,
.portfolio-modal-shell .portfolio-editor .field input,
.portfolio-modal-shell .portfolio-editor .field select,
.portfolio-modal-shell .portfolio-editor .field textarea{
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
}
.portfolio-modal-shell .portfolio-editor textarea{
  min-height:118px!important;
  resize:vertical;
}
.portfolio-modal-shell .built-in-photo-section{
  overflow:hidden!important;
}
.portfolio-modal-shell .built-in-photo-picker{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
.portfolio-modal-shell .built-in-photo-picker button{
  min-width:0!important;
  max-width:100%!important;
}
.portfolio-modal-shell .built-in-photo-picker img{
  width:100%!important;
  aspect-ratio:4/3!important;
  object-fit:cover!important;
}
.portfolio-modal-shell .built-in-photo-picker span{
  min-height:42px;
  overflow:hidden;
  display:-webkit-box!important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.portfolio-modal-shell .checkbox-field{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr)!important;
  align-items:start!important;
  gap:11px!important;
  width:100%!important;
  min-width:0!important;
  padding:14px!important;
}
.portfolio-modal-shell .checkbox-field input{
  width:18px!important;
  height:18px!important;
  margin:2px 0 0!important;
}
.portfolio-modal-shell .checkbox-field span{
  min-width:0!important;
}
.portfolio-modal-shell .portfolio-editor-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  width:100%!important;
  min-width:0!important;
}
.portfolio-modal-shell .portfolio-editor-actions .button{
  width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  justify-content:center!important;
  white-space:normal!important;
  line-height:1.25!important;
  text-align:center!important;
}

@media(max-width:900px){
  .portfolio-modal-shell{
    width:min(760px,calc(100vw - 24px));
    height:calc(100dvh - 20px);
    max-width:calc(100vw - 24px);
    max-height:calc(100dvh - 20px);
  }
  .portfolio-modal-shell .portfolio-editor{
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
  }
  .portfolio-modal-shell .portfolio-editor-preview{
    position:relative!important;
    height:min(48dvh,430px)!important;
    min-height:280px!important;
    max-height:430px!important;
  }
}

@media(max-width:640px){
  .portfolio-modal-shell{
    width:calc(100vw - 16px);
    height:calc(100dvh - 16px);
    max-width:calc(100vw - 16px);
    max-height:calc(100dvh - 16px);
    border-radius:18px!important;
  }
  .portfolio-modal-shell .modal-header{
    padding:17px 16px 13px!important;
  }
  .portfolio-modal-shell .modal-header h2{
    font-size:1.3rem!important;
  }
  .portfolio-modal-shell .modal-body{
    padding:14px 14px 18px!important;
  }
  .portfolio-modal-shell .modal-footer{
    padding:12px 14px!important;
  }
  .portfolio-modal-shell .portfolio-editor>.form-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .portfolio-modal-shell .portfolio-editor .span-2{
    grid-column:1!important;
  }
  .portfolio-modal-shell .portfolio-editor-preview{
    height:min(42dvh,360px)!important;
    min-height:240px!important;
  }
  .portfolio-modal-shell .built-in-photo-picker{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .portfolio-modal-shell .portfolio-editor-actions{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .portfolio-modal-shell .modal-footer-right{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
