/* © 2026 Ori Roniger. Hollowport: original artwork, writing and code. All rights reserved. https://hollowport.mystery.co.il/ */
.dialogue-turn{display:flow-root}
/* A reply occupies the same space for every topic, before and after typing. */
.book-page .conversation .dialogue-reply{display:block;box-sizing:border-box;height:auto;min-height:0;padding:12px;margin:12px 0}
.dialogue-window{height:clamp(95px,calc(100dvh - 435px),175px);position:relative;overflow:hidden;overflow:clip;cursor:default;outline-offset:4px;font:20px/25px var(--pixel);text-align:left;overflow-wrap:anywhere}
.dialogue-typing .dialogue-window{cursor:pointer}
.dialogue-source{display:block;opacity:0;pointer-events:none}
.dialogue-typed{position:absolute;inset:0;white-space:normal;pointer-events:none}
.dialogue-window:focus-visible{outline:2px solid var(--acid)}
.dialogue-typing .dialogue-typed:after{content:'▌';color:var(--acid)}
.dialogue-footer{height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px}
.dialogue-footer small{font:6px/1.3 var(--mono);letter-spacing:.3px;color:var(--muted)}
.dialogue-footer nav{display:flex;align-items:center;gap:8px;visibility:hidden}
.dialogue-paged .dialogue-footer nav{visibility:visible}
.dialogue-footer button{font:18px/1 var(--pixel);padding:3px 9px;min-height:28px}
.dialogue-page-count{font:7px var(--mono);color:var(--muted);white-space:nowrap}
@media(max-width:760px),(max-height:680px){
 .book-page .conversation .dialogue-reply{padding:9px;margin:8px 0}
 .dialogue-window{height:clamp(95px,calc(100dvh - 435px),166.25px);font-size:19px;line-height:23.75px}
}
@media(max-height:500px){.dialogue-window{height:95px}}
@media(prefers-reduced-motion:reduce){.dialogue-typing .dialogue-typed:after{content:none}}

/* A conversation owns one full panel page, including its command choices. */
.book-page .conversation-page{box-sizing:border-box;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;min-height:0;overflow:hidden}
.conversation-page .dialogue-turn{display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0}
.book-page .conversation-page .dialogue-reply{display:grid;grid-template-rows:minmax(0,1fr) 30px;gap:5px;height:100%;margin:0;min-height:0}
.conversation-page .dialogue-window{height:100%;min-height:0}
.conversation-page .dialogue-footer{margin:0}
.conversation-controls{min-height:0}
.conversation-topic-nav{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:6px}
.book-page .conversation-topic-nav button{font:16px/1 var(--pixel)!important;min-height:28px;padding:5px 7px}
.conversation-topic-nav span{font:6px var(--mono);color:var(--muted);white-space:nowrap}
.conversation-page .conversation-topic-page[hidden],.conversation-topic-nav[hidden]{display:none}
@media(max-height:680px),(max-width:760px){
 .book-page .conversation-page{gap:7px}
 .conversation-page .dialogue-turn{gap:7px}
 .book-page .conversation-page .conversation-choices button{flex-basis:110px;padding:6px;min-height:32px;font-size:17px!important}
}
