.cover-editor{width:min(960px,calc(100% - 24px));max-height:94dvh;overflow:auto;box-sizing:border-box;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--panel,#fff);color:var(--ink);font:inherit}
.cover-editor::backdrop{background:#142b4677}
.cover-editor header,.cover-editor footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.cover-editor h2{font-size:1.5rem;margin:0}body[data-page="home"] .cover-editor-help{font-size:1rem;line-height:1.7;color:var(--muted);margin:14px 0}
.cover-preview{position:relative;width:100%;overflow:hidden;border-radius:18px;background:var(--green);touch-action:none;cursor:grab;user-select:none}.cover-preview:active{cursor:grabbing}
.cover-preview .cover-preview-card{position:absolute;top:0;left:0;margin:0!important;box-sizing:border-box;transform-origin:top left;pointer-events:none}
.cover-exposure-box{position:absolute;z-index:3;top:0;right:0;height:100%;box-sizing:border-box;border:2px dashed #ffe183;border-radius:14px;pointer-events:none}
.cover-exposure-box span{position:absolute;right:10px;bottom:12px;padding:4px 8px;background:#142b46d9;border-radius:6px;color:#fff;font:16px/1.5 system-ui,sans-serif}
.cover-margin-guide{position:absolute;inset:0 auto 0 0;z-index:2;box-sizing:border-box;border-right:1px dashed #ffffffaa;background:repeating-linear-gradient(135deg,#ffffff0f 0 8px,transparent 8px 16px);display:flex;align-items:flex-end;justify-content:center;padding-bottom:16px;color:white;font:16px/1.5 system-ui,sans-serif}
.cover-editor-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;margin:24px 0}
.cover-editor-controls label{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:1rem}.cover-editor-controls input{grid-column:1/-1;width:100%;min-width:0;accent-color:var(--green);padding:0;min-height:30px}.cover-editor-controls small{grid-column:1/-1;color:var(--muted);font-size:.875rem;line-height:1.5}.cover-editor-controls output{font-variant-numeric:tabular-nums;color:var(--green-dark)}
.cover-editor #coverEditorStatus{font-size:1rem;line-height:1.6;color:#a64130;white-space:pre-wrap}.cover-editor .cover-save{background:var(--green);color:#fff}.cover-editor button:disabled{opacity:.55;cursor:default}
@media(max-width:600px){.cover-editor{padding:16px}.cover-editor-controls{grid-template-columns:1fr;gap:16px}.cover-editor footer button{flex:1 1 auto}}
