body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#0b0b0b;color:#fff}
header{padding:16px 20px;border-bottom:1px solid #1e1e1e;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
input,button,select,label{padding:10px 12px;border-radius:10px;border:1px solid #2a2a2a;background:#121212;color:#fff}
label{display:flex;gap:10px;align-items:center}
input[type="checkbox"]{width:18px;height:18px;accent-color:#fff}
button{cursor:pointer}
button:hover{border-color:#3a3a3a}
main{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;padding:18px}
.card{background:#0f0f0f;border:1px solid #1f1f1f;border-radius:16px;padding:14px}
.muted{color:#b6b6b6;font-size:14px}.plain-label{padding:0;border:none;background:transparent}.space{height:12px}.space-lg{height:14px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.row-between{justify-content:space-between}.toggle{border-color:#252525;background:#101010}.pill{padding:8px 10px;border:1px solid #252525;border-radius:999px;background:#101010;font-size:13px}.danger{color:#ffb3b3}
.covers{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.cover{position:relative;border-radius:12px;overflow:hidden;border:1px solid #1f1f1f;background:#090909}.cover img{width:100%;display:block;aspect-ratio:1/1;object-fit:cover}.cover .chk{position:absolute;top:8px;right:8px;width:18px;height:18px;border-radius:6px;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;font-size:12px}.cover.selected{outline:2px solid rgba(255,255,255,.55)}
.grid{display:grid;gap:8px}.cell{border-radius:12px;overflow:hidden;border:1px solid #252525;background:#070707;aspect-ratio:1/1;position:relative}.cell img{width:100%;height:100%;object-fit:cover;display:block}.cell.dragover{outline:2px dashed rgba(255,255,255,.6);outline-offset:-6px}.replaceBtn{position:absolute;top:8px;left:8px;width:28px;height:28px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.45);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;cursor:pointer;user-select:none}.replaceBtn:hover{border-color:rgba(255,255,255,.55);background:rgba(0,0,0,.6)}
.preview-head{align-items:flex-start}.preview-shell{display:flex;justify-content:center}.preview-stage{width:min(100%,380px);display:flex;justify-content:center}.preview-stage.portrait{aspect-ratio:2/3}.preview-stage.landscape{aspect-ratio:3/2;width:min(100%,460px)}.preview-poster{position:relative;width:100%;height:100%;background:#000;border:1px solid #262626;border-radius:0;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.35)}.preview-cells{position:absolute;inset:5%;display:grid;gap:0;z-index:1}.preview-cell{position:relative;border-radius:0;overflow:hidden;background:#101010}.preview-cell img{width:100%;height:100%;object-fit:cover;display:block}.preview-overlay{position:absolute;inset:-6%;pointer-events:none;z-index:2}.preview-overlay::before{content:"";position:absolute;left:50%;top:50%;width:112%;height:112%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle, transparent 31%, rgba(255,255,255,.18) 31%, rgba(255,255,255,.18) 49%, transparent 49%);filter:blur(3px)}.preview-overlay::after{content:"";position:absolute;left:50%;top:50%;width:40%;height:40%;transform:translate(-50%,-50%);border-radius:50%;background:rgba(0,0,0,.18)}.hidden{display:none}.preview-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;z-index:3}
@media (max-width: 1100px){main{grid-template-columns:1fr}.covers{grid-template-columns:repeat(4,1fr)}}
@media (max-width: 700px){.covers{grid-template-columns:repeat(3,1fr)}}
