.editor-toolbar{display:flex;flex-wrap:wrap;gap:10px}.editor-toolbar button{width:auto;margin:0;flex:1 1 180px}.editor-toolbar .secondary{border-color:var(--line);color:var(--text)}button:disabled{opacity:.45;cursor:not-allowed}#status{font-size:14px;color:var(--muted)}.viewer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.page-card{background:rgba(9,13,22,.6);border:1px solid var(--line);border-radius:12px;padding:12px;min-width:0;display:flex;flex-direction:column;align-items:center}.page-card img{width:100%;height:240px;object-fit:contain;background:#fff;border-radius:5px}.page-info{margin:12px 0;font-size:13px;text-align:center;overflow-wrap:anywhere}.page-info small{color:var(--muted)}.card-actions{display:flex;gap:6px;width:100%;margin-top:auto}.card-btn{padding:6px;min-height:40px;border:1px solid var(--line);background:#182238;color:var(--text);font-size:13px}.card-btn.delete{color:#ffbdc6;border-color:#74424c;background:#351f25}@media(max-width:480px){.viewer-grid{grid-template-columns:1fr 1fr;gap:10px}.page-card{padding:8px}.page-card img{height:170px}.card-actions{gap:4px}.card-btn{padding:4px;font-size:12px}}@media(max-width:350px){.viewer-grid{grid-template-columns:1fr}}

.file-drop-zone{border:2px dashed #536786;border-radius:12px;padding:18px;margin-top:18px;text-align:center;color:var(--text);font-size:14px;transition:border-color .15s,background .15s}.file-drop-zone span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.file-drag-over .file-drop-zone{border-color:#53e0ba;background:rgba(83,224,186,.12)}.file-drag-over{outline:2px solid #53e0ba;outline-offset:3px}.viewer-grid{position:relative}.page-card[draggable=true]{cursor:grab}.page-card.page-dragging{opacity:.4;cursor:grabbing}.page-card img{user-select:none;-webkit-user-drag:none}.page-insertion-marker{position:absolute;z-index:5;width:4px;background:#53e0ba;border-radius:4px;pointer-events:none;box-shadow:0 0 0 2px #090d16,0 0 12px rgba(83,224,186,.6);transform:translateX(-50%)}.page-insertion-marker::before,.page-insertion-marker::after{content:"";position:absolute;left:-3px;width:10px;height:10px;border-radius:50%;background:#53e0ba}.page-insertion-marker::before{top:-3px}.page-insertion-marker::after{bottom:-3px}.page-insertion-marker span{position:absolute;top:10px;left:2px;transform:translateX(-50%);white-space:nowrap;background:#53e0ba;color:#08201b;padding:3px 6px;border-radius:5px;font-size:11px;font-weight:700}
