/* Components CSS for Hornstown Game */
/* Specific component styling */

/* === AVATAR COMPONENTS === */
#imgplace {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw !important;
  height: 100vh !important;
  z-index: var(--z-index-background);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

#player-avatar {
  position: relative;
  width: 100%;
  height: 100%;
}

#player-avatar img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* === UNIVERSAL AVATAR LAYERING === */
/* Applies to ALL avatar containers in the game */
#Player-avatar,
#character-options-avatar,
#player-avatar,
#playerAvatarSidebar,
#npcAvatarSidebar,
.avatar-container,
.avatar-display,
.character-portrait {
    position: relative !important;
}

/* Universal Avatar Image Layering - Works EVERYWHERE */
#Player-avatar img,
#character-options-avatar img,
#player-avatar img,
#playerAvatarSidebar img,
#npcAvatarSidebar img,
.avatar-container img,
.avatar-display img,
.character-portrait img {
    position: absolute !important;
    display: block !important;
    z-index: 1 !important;
}

/* Universal Z-Index Hierarchy for Avatar Layers */
#Player-avatar img#imgbody,
#character-options-avatar img#imgbody,
#player-avatar img#imgbody,
#playerAvatarSidebar img#imgbody,
#npcAvatarSidebar img#imgbody,
.avatar-container img#imgbody,
.avatar-display img#imgbody,
.character-portrait img#imgbody {
    z-index: 1 !important; /* Body - háttér */
}

#Player-avatar img#imgpubic,
#character-options-avatar img#imgpubic,
#player-avatar img#imgpubic,
#playerAvatarSidebar img#imgpubic,
#npcAvatarSidebar img#imgpubic,
.avatar-container img#imgpubic,
.avatar-display img#imgpubic,
.character-portrait img#imgpubic {
    z-index: 2 !important; /* Pubic hair */
}

#Player-avatar img#imgface,
#character-options-avatar img#imgface,
#player-avatar img#imgface,
#playerAvatarSidebar img#imgface,
#npcAvatarSidebar img#imgface,
.avatar-container img#imgface,
.avatar-display img#imgface,
.character-portrait img#imgface {
    z-index: 3 !important; /* Face */
}

#Player-avatar img#imgcloth,
#character-options-avatar img#imgcloth,
#player-avatar img#imgcloth,
#playerAvatarSidebar img#imgcloth,
#npcAvatarSidebar img#imgcloth,
.avatar-container img#imgcloth,
.avatar-display img#imgcloth,
.character-portrait img#imgcloth {
    z-index: 4 !important; /* Clothes */
}

#Player-avatar img#imghair,
#character-options-avatar img#imghair,
#player-avatar img#imghair,
#playerAvatarSidebar img#imghair,
#npcAvatarSidebar img#imghair,
.avatar-container img#imghair,
.avatar-display img#imghair,
.character-portrait img#imghair {
    z-index: 5 !important; /* Hair - előtt! */
}

#Player-avatar img#imgheadgear,
#character-options-avatar img#imgheadgear,
#player-avatar img#imgheadgear,
#playerAvatarSidebar img#imgheadgear,
#npcAvatarSidebar img#imgheadgear,
.avatar-container img#imgheadgear,
.avatar-display img#imgheadgear,
.character-portrait img#imgheadgear {
    z-index: 6 !important; /* Headgear - legelöl */
}

#Player-avatar img#imgcollar,
#character-options-avatar img#imgcollar,
#player-avatar img#imgcollar,
#playerAvatarSidebar img#imgcollar,
#npcAvatarSidebar img#imgcollar,
.avatar-container img#imgcollar,
.avatar-display img#imgcollar,
.character-portrait img#imgcollar {
    z-index: 7 !important; /* Collar/accessories */
}

#Player-avatar img#imghood,
#character-options-avatar img#imghood,
#player-avatar img#imghood,
#playerAvatarSidebar img#imghood,
#npcAvatarSidebar img#imghood,
.avatar-container img#imghood,
.avatar-display img#imghood,
.character-portrait img#imghood {
    z-index: 8 !important; /* Hood - legeslegelöl */
}

/* === CHARACTER SHEET === */
#csheet {
  background-color: var(--background-light);
  height: 59px;
  border: 1px solid var(--border-primary);
  box-shadow: var(--box-shadow-heavy);
  text-align: center;
  opacity: 0.8;
  border-radius: 0;
  width: 65%;
  margin: auto;
  font-family: var(--font-family-primary);
  color: var(--text-primary);
  text-shadow: none;
  font-size: 1vw;
  vertical-align: center;
  padding-top: 10px;
}

/* === IMAGE COMPONENTS === */
.otherpic {
  position: relative;
  display: inline-block;
}

.otherpicimg {
  max-width: 100%;
  height: auto;
}

#imgnpc {
  position: absolute;
  top: 5%;
  left: 0;
  z-index: var(--z-index-npc);
  width: 110%;
  border-radius: 25px 0px 0px 25px;
  border: 1px solid var(--text-dark);
  box-shadow: var(--box-shadow-heavy);
}

/* === LAYERED AVATAR SYSTEM === */
#imgbg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-bg);
}

#imgbehindhead {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-behind-head);
}

#imgface {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-face);
}

#imgbody {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-body);
}

#imggenital {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-genital);
}

#imgbreast {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-breast);
}

#imgpubic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-pubic);
}

#imgchas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-chas);
}

#imgcloth {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-cloth);
}

/* === VISIBILITY CONTROLS === */
#visiblegenitals {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-visible-genitals);
}

#visiblebodyhair {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-visible-bodyhair);
}

/* === ACCESSORIES === */
#imgapron {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-apron);
}

#imgcollar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-collar);
}

#imgbeard {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-beard);
}

#imghair {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-hair);
}

#imgcap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-cap);
}

#imghood {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-hood);
}

#imgheadgear {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-headgear);
}

/* === SPECIAL AVATAR COMPONENTS === */
#imgNewAvatar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-new-avatar);
}

#imgCoverAll {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--z-index-cover-all);
}

/* === CONTROL BUTTONS === */
#nudeButton {
  position: absolute !important;
  width: 1.5vw !important;
  height: 1.5vw !important;
  top: 5px !important;
  right: 5px !important;
  left: auto !important;
  z-index: 400 !important;
  object-fit: contain !important;
}

#avatarTypeSwitch {
  position: absolute;
  width: 2.5vw;
  height: 2.5vw;
  top: 5px;
  left: 5px;
  z-index: 400;
  cursor: pointer;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2vw;
  font-weight: bold;
  border: 2px solid;
}

/* Avatar Type Switch States */
#avatarTypeSwitch[title*="not available"] {
  cursor: not-allowed;
  background-color: #888;
  color: #ccc;
  border-color: #666;
}

#avatarTypeSwitch[title*="Switch to Classic"] {
  background-color: #954e71;
  color: white;
  border-color: #7a3f5a;
}

#avatarTypeSwitch[title*="Switch to Avatar v2"] {
  background-color: #4CAF50;
  color: white;
  border-color: #45a049;
}

/* === TEXT COMPONENTS === */
#text {
  font-size: var(--font-size-base);
  color: var(--text-primary);
}

/* === GAME MENU === */
#gameMenuButton {
  position: fixed;
  top: var(--position-top);
  right: var(--position-right);
  width: var(--button-width);
  height: var(--button-height);
  background: var(--background-button);
  border: 1px solid var(--border-primary);
  color: var(--text-primary);
  cursor: pointer;
  z-index: var(--z-index-menu-button);
}

/* === HORNYZ COVER COMPONENTS === */
#hornyzCoverImage {
  position: relative;
  width: 100%;
  height: auto;
  border-radius: var(--border-radius);
  overflow: hidden;
}

#hornyzCoverText {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(transparent, rgba(0,0,0,0.7));
  color: var(--text-white);
  padding: var(--padding-base);
  font-size: var(--font-size-small);
}

#hornyzCoverDesc {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.8);
  color: var(--text-white);
  padding: var(--padding-base);
  opacity: 0;
  transition: var(--transition-background);
}

#hornyzCoverInfo:hover #hornyzCoverDesc {
  opacity: 1;
}

/* === BUTTON COMPONENTS === */
.landingButton {
  display: inline-block;
  padding: 12px;
  background: white;
  color: var(--text-primary);
  text-decoration: none;
  border: 10px solid var(--background-button);
  border-radius: var(--border-radius);
  transition: var(--transition-background);
  cursor: pointer;
  width: 17vw;
  text-transform: uppercase;
  font-family: var(--font-family-secondary);
  font-size: 0.8vw;
  letter-spacing: 3px;
}

.initbutton:hover {
  background: var(--background-button-hover);
  transform: scale(1.05);
  transition: var(--transition-transform);
}

/* === HORNYZ BUTTON COMPONENTS === */
.hornyzButtonImg {
  position: relative;
  display: inline-block;
  width: var(--button-width);
  height: var(--button-height);
  overflow: hidden;
  border-radius: var(--border-radius);
}

.hornyzButton img:hover {
  transform: scale(1.1);
  transition: var(--transition-transform);
}

/* === LOG COMPONENTS === */
.ingamelog {
  position: fixed;
  bottom: var(--position-bottom);
  left: var(--viewport-width-left);
  width: var(--log-width);
  height: var(--log-height);
  background: var(--background-log);
  border: 1px solid var(--border-primary);
  padding: var(--padding-small);
  font-size: var(--font-size-small);
  overflow-y: auto;
  z-index: var(--z-index-log);
}

/* === CHAT COMPONENTS === */
#theChat {
  position: fixed;
  bottom: var(--position-bottom);
  right: var(--viewport-width-right);
  width: var(--chat-width);
  height: var(--chat-height);
  background: var(--background-chat);
  border: 1px solid var(--border-primary);
  padding: var(--padding-small);
  font-size: var(--font-size-small);
  overflow-y: auto;
  z-index: var(--z-index-chat);
}

/* === MODAL COMPONENTS === */
/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 198198198; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.8); /* Black w/ opacity */
}

/* Legacy theme - hide/flatten modern game-menu wrapper */
:root[data-theme="legacy"] .game-menu,
:root[data-theme="bimbo"] .game-menu,
:root[data-theme="himbo"] .game-menu,
:root[data-theme="kinktopia"] .game-menu {
    background: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    animation: none !important;
    position: static !important;
}

/* Legacy theme - hide modern menu header & close button */
:root[data-theme="legacy"] .menu-header,
:root[data-theme="bimbo"] .menu-header,
:root[data-theme="himbo"] .menu-header,
:root[data-theme="kinktopia"] .menu-header {
    display: none !important;
}

/* Legacy theme - menu items styling */
:root[data-theme="legacy"] .menu-items,
:root[data-theme="bimbo"] .menu-items,
:root[data-theme="himbo"] .menu-items,
:root[data-theme="kinktopia"] .menu-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

:root[data-theme="legacy"] .menu-item,
:root[data-theme="bimbo"] .menu-item,
:root[data-theme="himbo"] .menu-item,
:root[data-theme="kinktopia"] .menu-item {
    padding: 10px 15px !important;
    background: var(--background-card) !important;
    border: 1px solid var(--border-primary) !important;
    border-radius: var(--border-radius) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    font-size: 14px !important;
    color: var(--text-primary) !important;
    text-align: center !important;
}

:root[data-theme="legacy"] .menu-item:hover,
:root[data-theme="bimbo"] .menu-item:hover,
:root[data-theme="himbo"] .menu-item:hover,
:root[data-theme="kinktopia"] .menu-item:hover {
    background: var(--primary-hover) !important;
    color: var(--text-dark) !important;
    border-color: var(--primary-hover) !important;
}

:root[data-theme="legacy"] .menu-item.patreon,
:root[data-theme="bimbo"] .menu-item.patreon,
:root[data-theme="himbo"] .menu-item.patreon,
:root[data-theme="kinktopia"] .menu-item.patreon {
    background: #f96854 !important;
    color: white !important;
    font-weight: 600 !important;
    border-color: #f96854 !important;
}

:root[data-theme="legacy"] .menu-item.patreon:hover,
:root[data-theme="bimbo"] .menu-item.patreon:hover,
:root[data-theme="himbo"] .menu-item.patreon:hover,
:root[data-theme="kinktopia"] .menu-item.patreon:hover {
    background: #ff7865 !important;
    border-color: #ff7865 !important;
}

.modal-content-outer {
  width: 350px;
  padding: 0;
  margin: auto;
  box-shadow: var(--box-shadow-light);
  position: relative;
  animation-name: animatetop;
  animation-duration: 0.6s;
  top: 0%;
}

/* Modal Content */
.modal-content {
  margin: auto;
  width: 330px;
  padding: var(--padding-base);
  padding-top: var(--padding-base) !important;
  background-color: var(--background-light);
  border: 1px solid var(--border-primary);
  margin-top: 0;
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow-heavy);
}

/* The Close Button */
.close {
  color: var(--text-dark);
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: var(--text-primary);
  text-decoration: none;
  cursor: pointer;
}

/* Modal2 (Image Modal) */
.modal2 {
  display: none;
  position: fixed;
  z-index: 198198198;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.8);
}

/* Modal Content (Image) */
.modal2-content {
  margin: auto;
  display: block;
  height: 100%;
  margin-top: -5%;
}

/* Caption of Modal Image */
#caption {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 700px;
  text-align: center;
  color: var(--text-sidebar);
  padding: var(--padding-base);
  height: 150px;
}

/* Add Animation - Zoom in the Modal */
.modal2-content, #caption {
  animation-name: zoom;
  animation-duration: 0.6s;
}

@keyframes zoom {
  from {transform:scale(0)}
  to {transform:scale(1)}
}

/* The Close Button for Modal2 */
.close2 {
  position: absolute;
  top: 15px;
  right: 35px;
  color: var(--text-light);
  font-size: 40px;
  font-weight: bold;
  transition: var(--transition-color);
}

.close2:hover,
.close2:focus {
  color: var(--text-primary);
  text-decoration: none;
  cursor: pointer;
}

/* Character Sheet Box */
#csheetBox {
  position: fixed;
  z-index: 1000;
  padding-top: 30px;
  left: 21%;
  top: 2vh;
  width: 58%;
  height: 94vh !important;
  overflow: auto;
  background-color: rgba(205,205,205,1);
  border-radius: var(--border-radius);
  transition: color display 0.5s;
}

/* Add Animation */
@keyframes animatetop {
  from {top: -300px; opacity: 0}
  to {top: 300px; opacity: 1}
}

/* === BUTTON STYLES === */
button {
  font-family: var(--font-family-primary);
  font-size: 0.8em;
  padding: var(--padding-base);
  border: 0;
  color: #323232;
  background-color: #fff;
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-appearance: button;
  border-radius: 30px;
  border: 10px solid #dfdfdf;
}

button:hover {
  background-color: #aaa;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.initbutton:hover {
  width: 102px;
  margin-top: -6px;
  margin-left: -6px;
  -webkit-transition: width 1s, margin 1s; /* Safari */
  transition: width 0.3s, margin 0.3s;
}

.hornyzButtonImg {
  border: 2px solid #ccc;
  box-shadow: 0px 6px 10px #24221b;
  border-radius: 64px;
  margin-top: 3em;
}

/* === SHOP COMPONENTS === */
.shopBox {
  float: left;
  width: 305px;
  height: 475px;
  background-color: #ccc;
  border: 1px solid #ccc;
  box-shadow: 0px 10px 10px #aaa;
  margin-left: 24px;
  min-width: 150px !important;
  margin-top: 24px;
  position: relative;
  border-radius: 25px;
}

.starterBox {
  width: 29% !important;
  height: 300px;
  padding: 9px;
  background-color: #ddd;
  border-radius: 15px;
  box-shadow: 0px 10px 10px #aaa;
  margin-left: 1vw !important;
}

.starterBoxButton {
  position: absolute;
  bottom: 1vh;
  left: 25%;
  font-weight: bold;
  font-size: 0.9vw;
}

.headBox {
  float: left;
  width: 220px;
  height: 240px;
  background-color: #fcf5ef;
  border: 1px solid #ccc;
  box-shadow: 0px 15px 19px #24221b;
}

.shopImg {
  width: 170px;
  height: 340px;
  margin: auto;
  position: relative;
  margin-top: 20px;
}

.shopTxt {
  width: 170px;
  height: 80px;
  margin: auto;
  position: relative;
  margin-top: 20px;
  text-align: center;
  font-size: 15px;
}

/* === HORNYZ APP COMPONENTS (LEGACY) === */
:root[data-theme="legacy"] #hornyzCoverImage,
:root[data-theme="bimbo"] #hornyzCoverImage,
:root[data-theme="himbo"] #hornyzCoverImage,
:root[data-theme="kinktopia"] #hornyzCoverImage {
  border: 2px solid #ccc;
  box-shadow: 0px 6px 10px #24221b;
  border-radius: 10px;
  margin: auto;
  width: 54%;
}

:root[data-theme="legacy"] #hornyzCoverText,
:root[data-theme="bimbo"] #hornyzCoverText,
:root[data-theme="himbo"] #hornyzCoverText,
:root[data-theme="kinktopia"] #hornyzCoverText {
  color: #fff;
  font-size: 1.7em;
  margin-top: -75px;
  margin-left: 25%;
  text-align: left;
}

:root[data-theme="legacy"] .hornyzButtonImg,
:root[data-theme="bimbo"] .hornyzButtonImg,
:root[data-theme="himbo"] .hornyzButtonImg,
:root[data-theme="kinktopia"] .hornyzButtonImg {
  border: 2px solid #ccc;
  box-shadow: 0px 6px 10px #24221b;
  border-radius: 64px;
  margin-top: 3em;
  width: 5em;
}

:root[data-theme="legacy"] .hornyzButton img:hover,
:root[data-theme="bimbo"] .hornyzButton img:hover,
:root[data-theme="himbo"] .hornyzButton img:hover,
:root[data-theme="kinktopia"] .hornyzButton img:hover {
  width: 6em;
  margin-top: 2.5em;
  margin-left: -0.5em;
  transition: width 0.2s, margin 0.2s;
}

:root[data-theme="legacy"] #hornyzCoverDesc,
:root[data-theme="bimbo"] #hornyzCoverDesc,
:root[data-theme="himbo"] #hornyzCoverDesc,
:root[data-theme="kinktopia"] #hornyzCoverDesc {
  font-size: 0.8em;
  bottom: 37%;
  left: 24%;
  width: 51.5%;
  text-align: left;
  background-color: rgba(255,255,255,0.95);
  color: var(--text-dark);
  min-height: 10%;
  z-index: 9999;
  position: absolute;
  border: 2px solid #ccc;
  box-shadow: 0px 6px 10px #24221b;
  border-radius: 10px;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s;
  padding: 15px;
}

:root[data-theme="legacy"] #hornyzCoverInfo:hover #hornyzCoverDesc,
:root[data-theme="bimbo"] #hornyzCoverInfo:hover #hornyzCoverDesc,
:root[data-theme="himbo"] #hornyzCoverInfo:hover #hornyzCoverDesc,
:root[data-theme="kinktopia"] #hornyzCoverInfo:hover #hornyzCoverDesc {
  visibility: visible;
  opacity: 1;
}

/* Hide SVG icons in legacy theme */
:root[data-theme="legacy"] .hornyzButton svg,
:root[data-theme="bimbo"] .hornyzButton svg,
:root[data-theme="himbo"] .hornyzButton svg,
:root[data-theme="kinktopia"] .hornyzButton svg {
  display: none;
}

/* === HORNYZ CHAT (LEGACY) === */
:root[data-theme="legacy"] #theChat.hornyzChat,
:root[data-theme="bimbo"] #theChat.hornyzChat,
:root[data-theme="himbo"] #theChat.hornyzChat,
:root[data-theme="kinktopia"] #theChat.hornyzChat {
  border: 1px solid #ccc;
  box-shadow: 0px 6px 10px #aaa;
  border-radius: 10px;
  width: 100%;
  height: 100%;
  min-height: 600px;
  background-color: #fff;
  margin: 0;
  padding: 20px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}

/* Legacy button container */
:root[data-theme="legacy"] .hornyzButtonContainer,
:root[data-theme="bimbo"] .hornyzButtonContainer,
:root[data-theme="himbo"] .hornyzButtonContainer,
:root[data-theme="kinktopia"] .hornyzButtonContainer {
  width: 45%;
  min-height: 10%;
  margin: auto;
}

:root[data-theme="legacy"] .hornyzButton.no,
:root[data-theme="bimbo"] .hornyzButton.no,
:root[data-theme="himbo"] .hornyzButton.no,
:root[data-theme="kinktopia"] .hornyzButton.no {
  float: left;
}

:root[data-theme="legacy"] .hornyzButton.yes,
:root[data-theme="bimbo"] .hornyzButton.yes,
:root[data-theme="himbo"] .hornyzButton.yes,
:root[data-theme="kinktopia"] .hornyzButton.yes {
  float: right;
}

/* Amikor Hornyz chat aktív, a textContent magassága követje a chat-et */
:root[data-theme="legacy"] #textContent:has(#theChat.hornyzChat),
:root[data-theme="bimbo"] #textContent:has(#theChat.hornyzChat),
:root[data-theme="himbo"] #textContent:has(#theChat.hornyzChat),
:root[data-theme="kinktopia"] #textContent:has(#theChat.hornyzChat) {
  min-height: 600px;
}

#theChatContent {
  overflow-y: scroll;
  max-height: 60%;
  height: 60%;
}

#theChatAnswers {
  padding: 10px;
  border-top: 1px solid #ddd;
  margin-top: 4%;
  background-color: #f7f7f7;
  border-radius: 0px 0px 11px 11px;
}

#theChatHeader {
  padding: 10px;
  border-bottom: 1px solid #ddd;
  margin-bottom: 4%;
  text-align: center;
  height: 58px;
  font-size: 1.3em;
}

.playerChat {
  background-color: #3ca4ff;
  color: #fff;
  margin: 20px;
  width: 55%;
  margin-left: 39%;
  padding: 10px;
  border-radius: 15px 15px 5px 15px;
}

.npcChat {
  background-color: #e6e6eb;
  color: #333;
  margin: 20px;
  width: 55%;
  margin-right: 39%;
  padding: 10px;
  border-radius: 15px 15px 15px 5px;
}

/* === ALERT COMPONENTS === */
.alert {
  padding: 20px;
  background-color: #aaa;
  box-shadow: 0px 6px 10px #aaa;
  border: 1px solid #999;
  color: white;
  margin-bottom: 15px;
  min-height: 96px;
  border-radius: 25px 25px 25px 25px !important;
}
