/* NPC conversations stay over the live field, with the original service state. */
.nc-workspace[data-mode]>.nc-widget[data-npc-dialog=true]{position:fixed;inset:auto 30px 126px auto;width:min(500px,40vw);height:auto;max-height:70vh;min-height:0;z-index:60!important;border:16px solid transparent;border-image:url('/content/ui/npc-dialogue-frame-v1.webp') 150 fill stretch;background:#071727;box-shadow:0 18px 50px #0009,0 0 0 1px #6de2eb33;overflow:visible;animation:npc-arrive .18s ease-out}
.nc-workspace[data-mode]>.nc-widget[data-npc-dialog=true]::after{content:'';position:absolute;right:30px;bottom:-14px;width:25px;height:25px;background:#071727;border-right:1px solid #55c8d5;border-bottom:1px solid #55c8d5;transform:rotate(45deg);z-index:-1}.nc-workspace[data-mode]>.nc-widget[data-npc-dialog=true][data-npc-side=left]::after{left:30px;right:auto}
.nc-widget[data-npc-dialog=true]>.nc-widget-heading{display:none}.nc-widget[data-npc-dialog=true]>.nc-widget-content{max-height:48vh;flex:0 1 auto;padding:8px 12px 12px;background:none;scrollbar-gutter:stable}
.npc-conversation{display:grid;grid-template-columns:78px 1fr auto;gap:10px;align-items:center;padding:11px 10px 13px;border-bottom:1px solid #51d7e14d;flex-shrink:0;background:linear-gradient(120deg,#163746cc,#10202b8a 65%,transparent)}
.npc-conversation canvas{width:78px;height:98px;image-rendering:pixelated;object-fit:contain;align-self:end;background:radial-gradient(ellipse at bottom,#3acada55,transparent 70%);filter:drop-shadow(0 4px 4px #0009)}
.npc-conversation small{color:#6ae0e8;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.npc-conversation .npc-presence{display:block;width:max-content;margin:5px 0 6px;padding:2px 5px;border:1px solid #54c9b177;border-radius:9px;color:#8bf2c4;background:#0b362d}.npc-conversation .npc-presence::before{content:'●';margin-right:4px;color:#82ffc1}.npc-conversation h2{font-size:19px;color:#ffcf78;margin:3px 0 0;text-shadow:0 1px #000}.npc-conversation p{font-size:12px;color:#e1edf5;line-height:1.55;margin:0;max-width:44ch}.npc-conversation button{align-self:start;font-size:11px;white-space:nowrap;padding:5px 9px}
[data-npc-dialog=true] :is(.world-progression-panel>h2,.world-progression-panel>p:first-of-type,.world-nae-service>h2,.world-nae-service>p,.world-nae-service>button,.shop-heading,.shop-panel>p:first-of-type,.nc-collections>nav:first-child,.nc-collection-portrait,.nc-collection-note,.nc-journey-cards,.world-progression-result){display:none!important}
[data-npc-dialog=true] :is([data-collections-close],[data-collections-refresh],[data-progression-close],[data-progression-refresh],#shop-close){display:none!important}
[data-npc-dialog=true] .world-progression-panel{height:auto;overflow:visible;gap:7px}[data-npc-dialog=true] .nc-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}[data-npc-dialog=true] .nc-collection-card{padding:10px}[data-npc-dialog=true] .nc-collection-card h3{font-size:13px}[data-npc-dialog=true] .nc-collection-card p{font-size:11px;line-height:1.5}[data-npc-dialog=true] .nc-collection-card button{font-size:11px;padding:6px;width:100%}
[data-npc-dialog=true] .world-encounter-teams{grid-template-columns:1fr 1fr;gap:8px}[data-npc-dialog=true] .world-team-card{flex-wrap:wrap;padding:8px}[data-npc-dialog=true] .world-team-card canvas{width:56px;height:56px}[data-npc-dialog=true] .world-team-card small{font-size:10px}
[data-npc-dialog=true] .shop-list{grid-template-columns:1fr}[data-npc-dialog=true] .world-clinic{margin-top:0}[data-npc-dialog=true] .world-clinic h3{margin:0 0 8px}
@keyframes npc-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.nc-workspace[data-mode]>.nc-widget[data-npc-dialog=true]{animation:none}}

.nc-workspace[data-mode]>.nc-widget[data-npc-dialog=true][data-npc-side=left]{left:30px;right:auto}
