
/* SHELL */
.lfp-shell{
  display:flex;
  max-width:1400px;
  margin:40px auto;
  height:85vh;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 25px 60px rgba(0,0,0,.25);
  background:#000;
}

/* LEFT */
.lfp-preview-panel{
  width:50%;
  padding:20px;
  display:flex;
  flex-direction:column;
  gap:14px;
  background:#000;
}
.lfp-preview{
  flex:1;
  background:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}
#lfpText{
  font-size:86px;
  color:#fff;
  white-space:nowrap;
}
.lfp-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.3);
  opacity:0;
}
.lfp-bg-strip{
  display:flex;
  gap:10px;
  overflow-x:auto;
}
.lfp-bg-strip img{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:8px;
  cursor:pointer;
}

/* RIGHT */
.lfp-controls-panel{
  width:50%;
  background:#f7f7f7;
  overflow-y:auto;
}
.lfp-controls-inner{
  padding:30px;
}
.lfp-controls-inner input{
  width:100%;
  padding:14px;
  margin-bottom:18px;
}
.lfp-font-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}
.lfp-font-grid button,
.lfp-btn-row button{
  padding:10px;
  border-radius:8px;
  border:1px solid #ccc;
}
.lfp-btn-row{
  display:flex;
  gap:10px;
  margin-bottom:18px;
}
button.active{
  background:#000;
  color:#fff;
}

/* MOBILE */
@media(max-width:900px){
  .lfp-shell{flex-direction:column;height:auto}
  .lfp-preview-panel,.lfp-controls-panel{width:100%}
}
