/* NightVenture — contextual NPC dialogue presentation inside the persistent Phaser overlay. */
.nv-npc-dialogue{
    width:min(100%,720px);
    margin:0 auto;
    padding:clamp(18px,3vw,30px);
    border:1px solid rgba(161,215,255,.28);
    border-radius:22px;
    background:linear-gradient(155deg,rgba(12,28,44,.98),rgba(5,13,24,.98));
    box-shadow:0 24px 70px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.04);
    color:#edf7ff;
}
.nv-npc-dialogue__header{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:18px;
}
.nv-npc-dialogue__portrait{
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    flex:0 0 auto;
    border:1px solid rgba(151,231,181,.50);
    border-radius:18px;
    background:radial-gradient(circle at 35% 25%,rgba(87,158,113,.72),rgba(24,66,43,.94));
    box-shadow:0 0 22px rgba(86,190,125,.16),inset 0 0 14px rgba(215,255,227,.08);
    color:#dfffe8;
    font:900 1rem/1 system-ui,sans-serif;
    letter-spacing:.08em;
}
.nv-npc-dialogue__identity{min-width:0}
.nv-npc-dialogue__identity h2{
    margin:3px 0 0;
    color:#fff;
    font:800 clamp(1.25rem,4vw,1.75rem)/1.15 system-ui,sans-serif;
}
.nv-npc-dialogue__eyebrow{
    margin:0;
    color:#9ed5b2;
    font:800 .72rem/1.2 system-ui,sans-serif;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.nv-npc-dialogue__speech{
    position:relative;
    padding:18px 20px;
    border:1px solid rgba(154,205,242,.18);
    border-radius:16px;
    background:rgba(17,42,63,.62);
}
.nv-npc-dialogue__speech p{
    margin:0;
    color:#eaf5ff;
    font:500 clamp(1rem,2.8vw,1.12rem)/1.65 system-ui,sans-serif;
}
.nv-npc-dialogue__options{
    display:grid;
    gap:10px;
    margin-top:16px;
}
.nv-npc-dialogue__option{
    width:100%;
    min-height:48px;
    padding:11px 15px;
    border:1px solid rgba(141,203,247,.26);
    border-radius:13px;
    background:linear-gradient(180deg,rgba(28,64,91,.90),rgba(14,37,58,.94));
    color:#eff8ff;
    text-align:left;
    font:700 .94rem/1.3 system-ui,sans-serif;
    cursor:pointer;
    transition:transform .12s ease,border-color .12s ease,background .12s ease;
}
.nv-npc-dialogue__option:hover,
.nv-npc-dialogue__option:focus-visible{
    border-color:rgba(164,226,255,.72);
    background:linear-gradient(180deg,rgba(39,87,121,.96),rgba(18,50,75,.98));
    outline:none;
}
.nv-npc-dialogue__option:active{transform:scale(.985)}
@media (max-width:560px){
    .nv-npc-dialogue{padding:17px;border-radius:18px}
    .nv-npc-dialogue__portrait{width:50px;height:50px;border-radius:15px}
    .nv-npc-dialogue__speech{padding:15px}
    .nv-npc-dialogue__option{min-height:46px}
}
