.IteractiveContent {
    position: absolute;
    z-index: 50;
    height: stretch;
    width: stretch;
    max-width: min(400px, 100%);
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
.char-status-icon {
	width: 15px;
    height: 15px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: relative;
    float: left;
    margin-right: 5px;
	pointer-events: none;
}
.charTopBarMenuLogoffIcon { background-image: url("../assets/img/icons/charLogoffMenuIcon.webp"); }
.icon-sell-items { background-image: url("../assets/img/icons/sellItems.webp"); }
.item-icon-select { background-image: url("../assets/img/icons/select.webp"); }
.npc-item-icon {
	width: 20px;
    height: 20px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: relative;
    float: left;
    margin-right: 5px;
	pointer-events: none;
	filter: drop-shadow(1px 0 0 white) drop-shadow(-1px 0 0 white) drop-shadow(0 1px 0 white) drop-shadow(0 -1px 0 white);
}
.npcConversationOption {
	display: flex;
    align-items: center;
	pointer-events: none;
	width: 100%;
}
.npcMessageContent {
	display: grid;
    grid-auto-flow: column;
}
.npcMessagePopup {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	justify-content: flex-start;
	padding: 15px;
	font-size: medium;
	background-image: url(../assets/img/background/npc/messageBoard.webp);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	min-width: 30%;
	width: 100%;
	max-height: 90%;
}
.npcMessagePopupBottomBar {
	width: 100%;
    display: flex;
    align-content: center;
    justify-content: center;
    flex-wrap: wrap;
}
.npcMessageShopContainer {
	display: flex;
	flex: 1;
	width: 100%;
	min-height: 0;
}

.npcMessageShopItemPrice {
    width: 100%;
    height: 20px;
    padding-top: 2px;
    padding-bottom: 2px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    color: wheat;
    background-image: url(../assets/img/background/npc/npcShopItemPrice.webp);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    border-radius: 0 0 5px 5px;
}
.npcMessageShopLeftPannel {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: flex-start;
    width: 20%;
	padding: 15px;
    gap: 5px;
    background-image: url(../assets/img/background/npc/npcShopPannelContainer.webp);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.npcMessageShopLeftPannelGoldText {
	text-align: center;
    margin-top: 10px;
    margin-bottom: 5px;
    display: flex;
    flex-wrap: nowrap;
    padding-left: 10px;
    padding-right: 10px;
    justify-content: center;
    height: 30px;
    align-items: center;
	background-image: url(../assets/img/background/npc/npcShopGoldContainer.webp);
	background-size: 100% 100%;
	background-repeat: no-repeat;
}
.npcMessageShopLeftPannelText {
    margin: 5px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	color: wheat;
	/*min-width: 100%;*/
}

.npcMessageShopPopup {
	display: flex;
	flex-direction: column;
	padding: 5px;
	width: 100%;
    height: stretch;
	background-image: url(../assets/img/background/npc/npcShopMainContainer.webp);
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

.npcMessageShopPopupTitle {
    height: 50px;
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
	background-image: url(../assets/img/background/npc/npcShopTopBar.webp);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	color: #f9b433;
    font-size: large;
}
.npcMessageShopRightPannel {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	flex: 1;
	align-content: flex-start;
	padding: 3%;
	width: stretch;
    background-image: url(../assets/img/background/npc/npcShopPannelContainer.webp);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    overflow: auto;
    box-sizing: border-box;
    gap: 10px;
}

.npcPortraitContainer {
	width: 100px;
    height: 100px;
    background-image: url(../assets/img/background/npc/npcDialogPortraitBackground.webp);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
}
.npcPortraitPicture {
	width: stretch;
    height: stretch;
    margin: 5px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
}
.npcShopItemBox {
	position: relative;
    display: flex;
    width: 80px;
    height: 80px;
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-image: url(../assets/img/background/npc/npcShopItemContainer.webp);
    flex-wrap: wrap;
    justify-content: center;
}
.npcShopItemBoxBG {
	width: 60px;
    height: 60px;
    background-position: center;
    background-size: 70% 70%;
    background-repeat: no-repeat;
}
.npcShopItemBoxQuantity {
	position: absolute;
    padding: 5px;
    color: white;
    font-weight: bolder;
    pointer-events: none;
    left: 5px;
    top: 5px;
}
.npcShopOptions {
	display: flex;
    align-items: center;
    border: 1px solid #615031;
    border-radius: 10px;
    width: 100%;
    padding: 5px;
    margin: 5px;
    color: wheat;
    justify-content: center;
	max-width: 160px;
	font-size: large;
}
.npcShopOptionsContainer {
	text-align: center;
    margin-top: 5px;
    margin-bottom: 5px;
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
	height: 60px;
    justify-content: center;
    align-items: center;
	background-image: url(../assets/img/background/npc/npcShopGoldContainer.webp);
	background-size: 100% 100%;
	background-repeat: no-repeat;
}
.npcShopPortraitContainer {
	width: 100px;
    height: 100px;
    background-image: url(../assets/img/background/npc/npcShopPortraitBackground.webp);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
}
.npcShopResponse {
	margin-top: 5px;
}
.npcShopSpeech {
	text-align: center;
    margin-top: 5px;
    margin-bottom: 5px;
	align-content: center;
	font-size: large;
}
.npcSpeechOption {
	min-height: 30px;
	display: flex;
    align-items: center;
	border: 1px solid #615031;
    border-radius: 10px;
    width: 100%;
    padding: 5px;
    margin: 5px;
    /*background-color: #dfa459;*/
	background-image: radial-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 4px 4px;
    background-color: #dfa459;
}
.npcTextContainer {
    margin: 0px 5px 5px 5px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
}

/* MOBILE / PORTRAIT */
@media (orientation: portrait) {
    .npcMessageShopContainer {
        flex-direction: column;
    }

    .npcMessageShopLeftPannel {
        width: stretch;
        height: auto;
        padding: 5px;
    }

    .npcMessageShopRightPannel {
        align-content: center;
		padding: 5px;
    }
	
	.npcMessageShopLeftPannelText {
		min-width: 1px;
	}
}

.npcAffinityContainer {
	position: absolute;
    bottom: 15px;
	width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
	animation: fadeInAnimation ease 0.5s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}

.npcAffinityContainer.fade-out {
    animation: fadeOutAnimation ease 0.5s;
    animation-fill-mode: forwards;
}

.npcSpeechBaloon { 
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../assets/img/icons/npcSpeechBaloonYellow.webp);
    width: 20px;
    height: 18px;
    padding-top: 3px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
}

.npcAffinityIcon {
	background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    width: 12px;
    height: 12px;
}
/* Junk sale: titleless themed confirmation, with only details and action buttons.
   Frame and buttons come from the selected WebP theme; no CSS borders. */
.lorJunkSaleOverlay{
  position:fixed;z-index:9999999;inset:0;box-sizing:border-box;padding:12px;
  display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.72)
}
#lorJunkSaleModal .lorJunkSaleDialog{
  display:flex;flex-direction:column;box-sizing:border-box;min-width:0;
  width:min(480px,96vw);max-height:min(87dvh,720px);overflow:hidden;
  padding:6px 6px 8px;border:0;border-radius:0;box-shadow:0 14px 50px #000d;
  background:#19120e url('../assets/img/themes/darkfantasy/background/pannelBG.webp') center/100% 100% no-repeat;
  color:#e9ca93;font:14px Georgia,serif
}
#lorJunkSaleModal[data-lor-theme="wood"] .lorJunkSaleDialog{background-image:url('../assets/img/themes/wood/background/pannelBG.webp')}
#lorJunkSaleModal .lorJunkSaleBody{
  min-height:0;overflow-y:auto;box-sizing:border-box;
  padding:24px clamp(12px,4vw,24px) 20px
}
#lorJunkSaleModal .lorJunkSaleDialog button{appearance:none;font:700 15px Georgia,serif;color:#f4dfb1;cursor:pointer}
#lorJunkSaleModal .lorJunkSaleHint{line-height:1.45;margin:8px 0 13px;color:#e0cba6}
#lorJunkSaleModal .lorJunkSaleList{max-height:min(33dvh,285px);overflow:auto;display:grid;gap:6px;margin:10px 0}
#lorJunkSaleModal .lorJunkSaleRow{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  box-sizing:border-box;min-width:0;padding:6px 8px;border:0;border-radius:0;
  background:rgba(19,13,10,.7) url('../assets/img/themes/darkfantasy/background/pannelSectionBG.webp') center/100% 100% no-repeat
}
#lorJunkSaleModal[data-lor-theme="wood"] .lorJunkSaleRow{background-image:url('../assets/img/themes/wood/background/pannelSectionBG.webp')}
#lorJunkSaleModal .lorJunkSaleItem{display:flex;align-items:center;gap:9px;min-width:0;flex:1}
#lorJunkSaleModal .lorJunkSaleItem strong{min-width:0;overflow-wrap:anywhere;line-height:1.3}
#lorJunkSaleModal .lorJunkSaleItemImage{display:block;flex:none;width:36px;height:36px;background-position:center;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated}
#lorJunkSaleModal .lorJunkSaleGold{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;color:#efcb70}
#lorJunkSaleModal .lorJunkSaleGold img{width:19px;height:19px;image-rendering:pixelated}
#lorJunkSaleModal .lorJunkSaleTotal{margin:8px 0 10px;padding-top:12px;border-top:1px solid #805d32;font-weight:700;color:#ffe18b;font-size:16px}
#lorJunkSaleModal .lorJunkSaleDialog footer{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0}
#lorJunkSaleModal .lorJunkSaleDialog footer button{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  box-sizing:border-box;min-width:135px;min-height:46px;padding:8px 17px;
  margin:0;border:0;border-radius:0;box-shadow:none;white-space:nowrap;
  background:transparent url('../assets/img/themes/darkfantasy/buttons/button.webp') center/100% 100% no-repeat;
  text-shadow:0 1px 2px #000
}
#lorJunkSaleModal .lorJunkSaleDialog footer .lorJunkSaleConfirm{background-image:url('../assets/img/themes/darkfantasy/buttons/buttonGreen.webp')}
#lorJunkSaleModal[data-lor-theme="wood"] .lorJunkSaleDialog footer button{background-image:url('../assets/img/themes/wood/buttons/button.webp')}
#lorJunkSaleModal[data-lor-theme="wood"] .lorJunkSaleDialog footer .lorJunkSaleConfirm{background-image:url('../assets/img/themes/wood/buttons/buttonGreen.webp')}
#lorJunkSaleModal .lorJunkSaleDialog footer button img{width:20px;height:20px;object-fit:contain;image-rendering:pixelated}
#lorJunkSaleModal .lorJunkSaleDialog button:hover:not(:disabled){filter:brightness(1.14)}
#lorJunkSaleModal .lorJunkSaleDialog button:focus-visible{outline:2px solid #d5b582;outline-offset:1px}
#lorJunkSaleModal .lorJunkSaleDialog button:disabled{opacity:.45;cursor:wait}
#lorJunkSaleModal .lorJunkSaleError{color:#f4a59b}
.lorCoinFlyer{position:fixed;z-index:10000010;width:23px;height:23px;background:url('../assets/img/icons/gold.webp') center/contain no-repeat;image-rendering:pixelated;filter:drop-shadow(0 0 3px #f9cb4b);pointer-events:none}
@media(max-width:430px){
  #lorJunkSaleModal .lorJunkSaleBody{padding:18px 14px 16px}
  #lorJunkSaleModal .lorJunkSaleDialog footer button{min-width:0;flex:1 1 128px;max-width:190px;padding:8px 9px;font-size:13px}
}

.icon-npc-shop-gold{background-image:url('../assets/img/icons/gold.webp')}
