/* 큰 그림과 짧은 대사를 한 장면으로. 본문 표시를 지연하지 않는다. */
.character-scene { max-width:520px; margin:32px auto; isolation:isolate; }
.character-scene .scene-portrait { display:block; width:100%; max-width:none; height:auto; aspect-ratio:3/4; object-fit:cover; object-position:center; border-radius:24px; margin:0; }
.character-scene figcaption { position:relative; margin:-56px 16px 0; padding:20px 24px; border:1px solid #d9c9aa; border-radius:20px; background:#fffaf0; box-shadow:0 8px 24px #59451d12; }
.scene-speaker { display:block; font-size:.85rem; font-weight:700; color:#715836; }
.character-scene figcaption p { margin:10px 0 0; font-family:'Noto Serif KR',serif; font-size:clamp(1.2rem,4.8vw,1.65rem); font-weight:600; line-height:1.65; color:#342b20; word-break:keep-all; overflow-wrap:anywhere; }
.character-scene--bridge { max-width:440px; margin:40px auto; }
.character-scene--bridge .scene-portrait { aspect-ratio:4/3; object-position:center 25%; }
.conversation-host.scene-host > div { position:relative; margin:-52px 12px 0; padding:18px; background:#fffaf0; border:1px solid #d9c9aa; border-radius:18px; }
.conversation-host.scene-host p { background:transparent; padding:0; font-size:1.15rem; font-family:'Noto Serif KR',serif; }
.birth .birth-bubble-body { position:relative; margin:-50px 10px 0; border:1px solid #d9c9aa; background:#fffaf0; border-radius:18px; }
.analysis-loading .loading-portrait { width:min(56vw,220px); height:auto; max-height:30vh; object-fit:cover; object-position:center 25%; aspect-ratio:4/3; border-radius:18px; }
.analysis-loading .loading-speaker { color:#715836; margin:12px 0 0; font-size:.9rem; }
.analysis-loading .msg { max-width:420px; margin:12px auto; padding:14px 18px; background:#fffaf0; border:1px solid #d9c9aa; border-radius:16px; color:#342b20; }
.chat .character-answer .answer-speaker img { width:88px; height:112px; object-position:center 20%; }
@media(max-width:360px) { .character-scene figcaption { margin-left:8px; margin-right:8px; padding:16px; } }
@media print { .character-scene--bridge { display:none; }.character-scene--opening .scene-portrait { display:none; }.character-scene figcaption { margin:0; box-shadow:none; } }
