html.cover-concept-preview-open { overflow:hidden; }
.cover-concept-preview { box-sizing:border-box; width:min(1440px,calc(100vw - 24px)); height:calc(100dvh - 24px); max-width:none; max-height:none; padding:0; border:1px solid var(--rm-line,#ccc); border-radius:16px; background:var(--rm-paper,#fffefa); color:var(--rm-ink,#292824); box-shadow:0 24px 100px #0005; overflow:hidden; }
.cover-concept-preview[open] { display:flex; flex-direction:column; }
.cover-concept-preview::backdrop { background:#100c20c9; backdrop-filter:blur(5px); }
.cover-concept-preview-bar { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:14px 20px; border-bottom:1px solid var(--rm-line,#ccc); }
.cover-concept-preview-bar strong { font:700 1rem/1.5 var(--font-ui,sans-serif); overflow-wrap:anywhere; }
.cover-concept-preview-copy { margin:0; padding:12px 20px; color:var(--rm-ink-soft,#666); font:400 .95rem/1.6 var(--font-ui,sans-serif); }
.cover-concept-preview-stage { display:flex; align-items:flex-start; flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; padding:16px; background:color-mix(in srgb,var(--rm-ink,#292824) 7%,var(--rm-paper,#fffefa)); }
.cover-concept-preview-stage img { display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; margin:auto; flex-shrink:0; box-shadow:0 4px 24px #0003; }
.cover-concept-preview.is-actual-size .cover-concept-preview-stage img { max-width:none; max-height:none; margin:0 auto; }
.cover-concept-preview-controls { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; padding:12px; border-top:1px solid var(--rm-line,#ccc); }
.cover-concept-preview button { min-height:44px; padding:8px 16px; border:1px solid var(--rm-line,#ccc); border-radius:9px; background:var(--rm-paper,#fffefa); color:inherit; font:650 .95rem/1.4 var(--font-ui,sans-serif); cursor:pointer; }
.cover-concept-preview button[aria-pressed="true"] { background:var(--rm-purple,#6442d6); color:#fff; }
.cover-concept-preview button:disabled { opacity:.45; cursor:default; }
.cover-concept-preview :focus-visible,.cover-ai-results [data-enlarge-ai-cover]:focus-visible,.pc-variants [data-enlarge-print-cover]:focus-visible { outline:3px solid var(--rm-purple,#6442d6); outline-offset:3px; }
.cover-ai-results .cover-concept-thumbnail,.pc-variants .cover-concept-thumbnail { display:block; padding:0; border:0; border-radius:10px; background:transparent; cursor:zoom-in; position:relative; width:100%; overflow:hidden; }
.cover-concept-thumbnail span { position:absolute; right:8px; bottom:8px; padding:5px 10px; border-radius:20px; background:#181420df; color:#fff; font:600 .85rem/1.4 var(--font-ui,sans-serif); }
.cover-concept-label { margin:0; font:750 1rem/1.5 var(--font-ui,sans-serif); }
.cover-concept-description { margin:0; color:var(--rm-ink-soft,#666); font:400 .9rem/1.6 var(--font-ui,sans-serif); }
@media(max-width:550px) { .cover-concept-preview { width:calc(100vw - 12px); height:calc(100dvh - 12px); border-radius:10px; }.cover-concept-preview-bar { padding:10px 12px; }.cover-concept-preview-copy { padding:8px 12px; }.cover-concept-preview-stage { padding:8px; }.cover-concept-preview-controls { gap:6px; }.cover-concept-preview button { padding:8px 12px; } }

.cover-ai-results article.is-selected,.pc-variants article.is-selected { outline:3px solid var(--rm-purple,#6442d6); outline-offset:4px; border-radius:10px; background:color-mix(in srgb,var(--rm-purple,#6442d6) 9%,var(--rm-paper,#fffefa)); }
.cover-selected-badge { display:block; padding:8px 10px; border-radius:8px; background:var(--rm-purple,#6442d6); color:#fff; font:700 .95rem/1.5 var(--font-ui,sans-serif); }
.cover-selected-badge[hidden],.pc-adopted[hidden] { display:none; }
.pc-adopted { display:flex; align-items:center; gap:16px; padding:16px; border:2px solid var(--rm-purple,#6442d6); border-radius:12px; margin-top:16px; background:var(--rm-paper,#fffefa); color:var(--rm-ink,#222); }
.pc-adopted img { display:block; width:min(32%,180px); height:100px; object-fit:contain; border-radius:6px; background:color-mix(in srgb,var(--rm-ink,#222) 8%,transparent); }
.pc-adopted p { margin:6px 0 0; font-size:.9rem; }

.pc-photo-guide { box-sizing:border-box; width:min(480px,calc(100vw - 28px)); max-height:calc(100dvh - 28px); padding:24px; border:1px solid var(--rm-line,#ddd); border-radius:18px; background:var(--rm-paper,#fffefa); color:var(--rm-ink,#222); box-shadow:0 20px 80px #0004; }
.pc-photo-guide::backdrop { background:#17112666; }
.pc-photo-badges { display:flex; flex-wrap:wrap; gap:8px; }
.pc-photo-badges span { padding:6px 10px; border-radius:20px; background:color-mix(in srgb,var(--rm-purple,#6442d6) 10%,var(--rm-paper,#fffefa)); font:650 .9rem/1.4 var(--font-ui,sans-serif); }
.pc-photo-guide h3 { margin:18px 0 12px; font:750 1.25rem/1.5 var(--font-ui,sans-serif); }
.pc-photo-guide p { margin:0 0 22px; line-height:1.8; }
.pc-photo-guide .button { width:100%; }

.pc-photo-option { display:grid; align-content:start; gap:6px; min-width:0; }
.pc-photo-hint { justify-self:start; border:0; border-radius:20px; padding:5px 10px; background:color-mix(in srgb,var(--rm-purple,#6442d6) 9%,transparent); color:var(--rm-ink,#222); font:600 .85rem/1.5 var(--font-ui,sans-serif); cursor:pointer; }
.pc-photo-hint[hidden] { display:none; }
