/* Innenräume der Wohnhäuser (assets/js/house-interior.js) */
.base-stage { position: relative; }
.hi-overlay { position: absolute; inset: 0; z-index: 20; display: flex; align-items: center; justify-content: center; background: #1b1410; opacity: 0; transition: opacity 0.22s ease; }
.hi-overlay.in { opacity: 1; }
.hi-room { position: relative; width: min(100%, calc(100cqh * var(--cols, 8) / var(--rows, 6))); aspect-ratio: var(--cols, 8) / var(--rows, 6); overflow: hidden; border: 3px solid var(--cs-ink, #2b1a0e); border-radius: 8px; box-shadow: 0 0 0 4px #0c0806; image-rendering: pixelated; }
.hi-wall, .hi-floor { position: absolute; left: 0; width: 100%; }
.hi-wall { top: 0; height: calc(100% / var(--rows, 6)); z-index: 0; }
.hi-floor { top: calc(100% / var(--rows, 6)); height: calc(100% - 100% / var(--rows, 6)); z-index: 0; }
.hi-mat { position: absolute; left: 37.5%; top: 83.3333%; width: 25%; height: 16.6667%; z-index: 2; background: repeating-linear-gradient(90deg, #7a4a2a 0 6px, #5a3418 6px 12px); opacity: 0.85; border-top: 3px solid #3b2410; }
.hi-obj { position: absolute; pointer-events: none; }
.hi-obj.tap { pointer-events: auto; cursor: pointer; }
.hi-obj svg { display: block; width: 100%; height: 100%; }
.hi-obj.tap:hover { filter: brightness(1.12); }
.hi-obj .px-l-flame { animation: bsFlame 0.8s ease-in-out infinite alternate; transform-box: fill-box; transform-origin: 50% 100%; }
.hi-light { position: absolute; inset: 0; z-index: 900; pointer-events: none; }
.hi-room[data-phase="nacht"] .hi-light { background: rgba(14, 16, 54, 0.34); }
.hi-room[data-phase="abend"] .hi-light { background: rgba(255, 150, 60, 0.1); }
.hi-room[data-phase="morgen"] .hi-light { background: rgba(255, 230, 180, 0.07); }
.hi-st-cave .hi-room[data-phase] .hi-light, .hi-st-castle .hi-room[data-phase] .hi-light { background: radial-gradient(ellipse at 50% 55%, rgba(0,0,0,0) 35%, rgba(5,3,12,0.38) 100%); }
.hi-title { position: absolute; left: 10px; top: 8px; z-index: 1000; padding: 3px 9px; background: rgba(255, 252, 240, 0.95); border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 7px; font: 900 0.74rem/1.1 inherit; color: var(--cs-ink, #2b1a0e); pointer-events: none; }
.hi-exit { position: absolute; right: 10px; top: 8px; z-index: 1000; appearance: none; padding: 5px 10px; background: #f2c94c; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 8px; box-shadow: 2px 2px 0 var(--cs-ink, #2b1a0e); font: 900 0.78rem/1 inherit; color: var(--cs-ink, #2b1a0e); cursor: pointer; }

/* Figuren */
.hi-ent { position: absolute; }
.hi-player { pointer-events: none; }
.hi-npc { transition: none !important; cursor: pointer; }
.hi-npc .base-npc-body { display: block; width: 100%; height: 100%; position: relative; }
.hi-npc.sleeping .base-npc-body { transform: rotate(-90deg) translateX(14%); transform-origin: 50% 80%; }
.hi-bubble { position: absolute; left: 50%; bottom: 112%; transform: translateX(-50%); z-index: 5; width: max-content; max-width: 240%; padding: 3px 7px; background: #fffdf5; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 9px; font: 800 clamp(0.55rem, 2.1cqh, 0.78rem)/1.15 inherit; color: var(--cs-ink, #2b1a0e); text-align: center; pointer-events: none; }
.hi-bubble[hidden] { display: none; }

/* ── Stil: Haus ── */
.hi-st-house .hi-wall { background-color: #efe0bd; background-image: repeating-linear-gradient(90deg, rgba(180, 140, 90, 0.18) 0 3px, transparent 3px calc(100% / var(--cols, 8))), linear-gradient(0deg, #8b5e3c 0 14%, transparent 14%); border-bottom: 3px solid #5a3a1a; }
.hi-st-house .hi-floor { background-color: #c19a62; background-image: repeating-linear-gradient(90deg, rgba(60, 35, 10, 0.2) 0 1px, transparent 1px calc(100% / var(--cols, 8))), repeating-linear-gradient(0deg, rgba(60, 35, 10, 0.1) 0 1px, transparent 1px calc(100% / (var(--rows, 6) - 1))); }
/* ── Stil: Bruchbude (eigenes Haus, Stufe 0) ── */
.hi-st-shack { background: #17110c; }
.hi-st-shack .hi-wall { background-color: #7b6244; background-image: repeating-linear-gradient(90deg, rgba(0, 0, 0, 0.28) 0 2px, transparent 2px calc(100% / var(--cols, 8))), repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.07) 0 3px, transparent 3px 18px); border-bottom: 4px solid #3b2a18; }
.hi-st-shack .hi-floor { background-color: #8a6a44; background-image: repeating-linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0 1px, transparent 1px calc(100% / var(--cols, 8))), repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.12) 0 1px, transparent 1px calc(100% / (var(--rows, 6) - 1))); }
/* ── Stil: Höhle ── */
.hi-st-cave { background: #14100c; }
.hi-st-cave .hi-wall { background-color: #4f4538; background-image: radial-gradient(circle at 20% 40%, #6a5d4b 0 14%, transparent 15%), radial-gradient(circle at 60% 60%, #3d352b 0 18%, transparent 19%), radial-gradient(circle at 85% 30%, #6a5d4b 0 12%, transparent 13%); border-bottom: 4px solid #2a231b; }
.hi-st-cave .hi-floor { background-color: #6b5e4d; background-image: radial-gradient(circle, rgba(0, 0, 0, 0.22) 0 2px, transparent 3px), radial-gradient(circle, rgba(255, 255, 255, 0.07) 0 2px, transparent 3px); background-size: 22px 22px, 31px 29px; background-position: 0 0, 11px 9px; }
/* ── Stil: Schloss ── */
.hi-st-castle { background: #0e0b16; }
.hi-st-castle .hi-wall { background-color: #4b4764; background-image: repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.28) 0 2px, transparent 2px 33%), repeating-linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0 2px, transparent 2px calc(200% / var(--cols, 8))); border-bottom: 4px solid #25223a; }
.hi-st-castle .hi-floor { background-color: #34304a; background-image: conic-gradient(#3d3956 25%, #2a2740 0 50%, #3d3956 0 75%, #2a2740 0); background-size: calc(200% / var(--cols, 8)) calc(100% / (var(--rows, 6) - 1)); }
.base-stage-wrap.hi-open .base-build-btn, .base-stage-wrap.hi-open .base-cancelmove-btn { display: none !important; }
.hi-bubble.wish { background: #fff6d6; border-color: #b8860b; }

/* ── Einrichten ── */
.hi-editbtn { position: absolute; left: 10px; bottom: 8px; z-index: 1000; appearance: none; padding: 5px 10px; background: #8fd0a0; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 8px; box-shadow: 2px 2px 0 var(--cs-ink, #2b1a0e); font: 900 0.76rem/1 inherit; color: var(--cs-ink, #2b1a0e); cursor: pointer; }
.hi-bar { position: absolute; left: 6px; right: 6px; bottom: 44px; z-index: 1000; padding: 6px 8px; background: rgba(255, 252, 240, 0.96); border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 9px; font: 700 0.7rem/1.25 inherit; color: var(--cs-ink, #2b1a0e); }
.hi-bar[hidden] { display: none; }
.hi-chips { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 4px; max-height: 7.2em; overflow-y: auto; }
.hi-chip { appearance: none; padding: 3px 8px; background: #fff; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 7px; font: 800 0.72rem/1.1 inherit; color: var(--cs-ink, #2b1a0e); cursor: pointer; }
.hi-chip.on { background: #f2c94c; box-shadow: 0 0 0 2px #fff3a0 inset; }
.hi-hint, .hi-empty { opacity: 0.85; }
.hi-grid { position: absolute; inset: 0; z-index: 800; display: none; grid-template-columns: repeat(var(--cols, 8), 1fr); grid-template-rows: repeat(var(--rows, 6), 1fr); pointer-events: none; }
.hi-room.editing .hi-grid { display: grid; }
.hi-grid i { border: 1px dashed rgba(255, 255, 255, 0.28); }
.hi-grid i.ok { background: rgba(120, 230, 130, 0.32); border-color: rgba(120, 230, 130, 0.9); }
.hi-room.editing .hi-obj.placed { cursor: pointer; pointer-events: auto; outline: 2px dashed rgba(255, 220, 90, 0.9); outline-offset: -2px; }
.hi-room.editing .hi-obj.tap:not(.placed) { cursor: default; }
.hi-act { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 4px; }
.hi-act button { appearance: none; padding: 4px 10px; background: #fff; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 7px; font: 800 0.72rem/1.1 inherit; color: var(--cs-ink, #2b1a0e); cursor: pointer; }
.hi-act button[data-act="move"] { background: #cfe8ff; }
.hi-act button[data-act="pack"] { background: #ffe0a8; }
.hi-room.editing .hi-obj.picked { outline: 3px solid #2b9af0; outline-offset: -2px; animation: hiPicked 0.8s ease-in-out infinite alternate; }
@keyframes hiPicked { from { filter: brightness(1); } to { filter: brightness(1.25); } }
.hi-pick { position: fixed; inset: 0; z-index: 6000; display: flex; flex-direction: column; background: #fff6e0; color: var(--cs-ink, #2b1a0e); }
.hip-head { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px; font-size: 1.05rem; border-bottom: 3px solid var(--cs-ink, #2b1a0e); background: #f2e2b8; }
.hip-x { appearance: none; min-width: 40px; min-height: 40px; background: #fff; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 8px; font: 800 1rem inherit; cursor: pointer; }
.hip-list { flex: 1; overflow-y: auto; display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; -webkit-overflow-scrolling: touch; }
.hip-card { appearance: none; display: flex; align-items: center; gap: 14px; width: 100%; text-align: left; padding: 8px 12px; background: #fff; border: 3px solid var(--cs-ink, #2b1a0e); border-radius: 10px; font: inherit; color: inherit; cursor: pointer; }
.hip-card.on { background: #ffe9a8; box-shadow: 0 0 0 3px #2b6fd6; }
.hip-art { flex: none; width: 72px; height: 72px; display: grid; place-items: center; background: #d8c8a0; border-radius: 8px; }
.hip-art.wide { width: 120px; }
.hip-art svg { width: 100%; height: 100%; display: block; image-rendering: pixelated; }
.hip-info { display: flex; flex-direction: column; gap: 3px; }
.hip-info small { opacity: 0.8; font-size: 0.8rem; }
.hip-foot { padding: 10px 14px; border-top: 3px solid var(--cs-ink, #2b1a0e); background: #f2e2b8; }
.hip-ok { appearance: none; width: 100%; min-height: 48px; background: #8fd0a0; border: 3px solid var(--cs-ink, #2b1a0e); border-radius: 10px; font: 800 1rem inherit; color: inherit; cursor: pointer; }
.hip-ok:disabled { background: #ddd; opacity: 0.7; cursor: default; }
/* Aufwachen im Bett: Schwarz blendet blinzelnd auf, der Spieler liegt quer im Bett */
.hi-wake { position: absolute; inset: 0; z-index: 950; background: #05060a; pointer-events: none; animation: hiWake 3.4s ease-in-out 0.3s forwards; }
@keyframes hiWake { 0% { opacity: 1; } 22% { opacity: 0.4; } 34% { opacity: 0.95; } 62% { opacity: 0.25; } 100% { opacity: 0; } }
.hi-player.hi-lying .dg-player-wrap { transform: rotate(-90deg) translate(-8%, 4%); transform-origin: 50% 60%; }
.hi-comfort { margin-top: 3px; font-weight: 800; color: #1d5a2a; }
.hi-npc.sitting .base-npc-body { transform: translateY(16%); }
.hi-npc.bounce .base-npc-body { animation: hiBounce 0.34s ease-in-out infinite alternate; }
@keyframes hiBounce { from { transform: translateY(0); } to { transform: translateY(-9%); } }
.hi-art { position: absolute; left: 50%; bottom: 0; width: calc(var(--s) * 100%); height: calc(var(--s) * 100%); transform: translateX(-50%); display: block; }
.hi-art.mid { bottom: auto; top: 50%; transform: translate(-50%, -50%); }
.hi-art svg { display: block; width: 100%; height: 100%; }

/* Figuren im Raum: feste Pixelgröße, per --avs an die Kachelgröße angepasst; Füße auf der Unterkante der Kachel */
.hi-ent .dg-player-wrap, .hi-npc .dg-decor-npc-wrap { position: absolute; inset: 0; display: block; }
.hi-ent .dg-avatar-mini, .hi-ent .dg-decor-npc-avatar {
  position: absolute; left: 50%; bottom: 0; margin-left: -27px; max-width: none; max-height: none;
  scale: var(--avs, 1); transform-origin: 50% 100%;
}
.hi-ent .dg-player-wrap, .hi-npc .dg-decor-npc-wrap { transform: none; }

/* Sprechblasen über den Figuren (Avatar ist per --avs skaliert) */
.hi-ent .hi-bubble { bottom: calc(74px * var(--avs, 1) + 6px); max-width: 330%; }
.hi-pbubble { z-index: 6; }

/* ── Dialog mit dem Bewohner ── */
.hi-dlg { position: absolute; left: 6px; right: 6px; bottom: 6px; z-index: 1100; padding: 8px 10px 8px; background: rgba(255, 252, 240, 0.98); border: 3px solid var(--cs-ink, #2b1a0e); border-radius: 12px; box-shadow: 4px 4px 0 var(--cs-ink, #2b1a0e); color: var(--cs-ink, #2b1a0e); max-height: 72%; overflow-y: auto; }
.hi-dlg-head { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
.hi-dlg-head small { display: block; opacity: 0.7; font-weight: 700; font-size: 0.68rem; }
.hi-dlg-av { position: relative; display: block; width: 40px; height: 52px; overflow: hidden; flex: none; background: #efe0bd; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 8px; }
.hi-dlg-av .pixel-avatar { position: absolute; left: -7px; top: -2px; transform: scale(0.78); transform-origin: top left; animation: none; }
.hi-dlg-text { font: 700 0.84rem/1.35 inherit; min-height: 2.7em; }
.hi-dlg-card { margin: 6px 0; padding: 6px 8px; background: #fff6d6; border: 2px dashed #b8860b; border-radius: 9px; font: 700 0.74rem/1.4 inherit; }
.hi-dlg-card[hidden] { display: none; }
.hi-card-row { display: flex; align-items: center; gap: 10px; }
.hi-card-ic { font-size: 2.2rem; line-height: 1; flex: none; }
.hi-dlg-ch { display: flex; flex-direction: column; gap: 5px; margin-top: 6px; }
.hi-dlg-btn { appearance: none; text-align: left; padding: 6px 10px; background: #fff; border: 2px solid var(--cs-ink, #2b1a0e); border-radius: 8px; font: 800 0.78rem/1.2 inherit; color: var(--cs-ink, #2b1a0e); cursor: pointer; }
.hi-dlg-btn:hover, .hi-dlg-btn:focus-visible { background: #f2c94c; }

/* Spielfigur-Sprechblase im Basislager (Flavortext statt Toast) */
.base-pbubble { position: absolute; pointer-events: none; z-index: 12; }
.base-pbubble .dg-speech-bubble { max-width: 240px; font-size: 0.74rem; z-index: 12; }
.base-pbubble .dg-speech-bubble { font-size: 0.82rem; line-height: 1.3; }
.base-pbubble .dg-speech-bubble { font-size: clamp(0.8rem, calc(0.3rem + 0.45rem * var(--avs, 1)), 1.25rem); max-width: calc(130px * var(--avs, 1)); }

/* Quest-Dialog im Basislager (quest-dialog.js) */
.hi-dlg.qdlg, .hi-dlg.hi-house-dialog { position: fixed; left: 50%; right: auto; bottom: 10px; transform: translateX(-50%); width: min(560px, calc(100vw - 16px)); z-index: 3000; height: min(340px, 55vh); max-height: 55vh; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; overflow: hidden; }
.hi-dlg-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.hi-dlg-btn:disabled { opacity: 0.6; cursor: default; }
@media (max-width: 600px) {
  .hi-dlg.qdlg, .hi-dlg.hi-house-dialog { max-height: 55vh; }
}
/* „!" über dem Veteran: neue Mission */
.base-quest-mark { position: absolute; left: 50%; bottom: calc(74px * var(--avs, 1) + 4px); transform: translateX(-50%); z-index: 8; font-size: clamp(1.1rem, calc(0.4rem + 0.8rem * var(--avs, 1)), 2rem); line-height: 1; pointer-events: none; filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.6)); animation: bqmBounce 0.9s ease-in-out infinite; }
@keyframes bqmBounce { 0%, 100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-22%); } }

/* Hand-held props share the avatar's pixel scale, including in small rooms. */
.hi-npc[data-home-act] .dg-decor-npc-wrap { animation: none; transform: scaleX(var(--flip, 1)); }
.hi-npc[data-home-act] :is(.px-arm-left, .px-arm-right) { transform-origin: 50% 3px; transform: none; translate: 0 0; z-index: 7; }
.hi-npc[data-home-act] .pixel-avatar::after,
.hi-npc[data-home-act="lesen"] .px-body::after,
.hi-npc[data-home-act="lesen"] .px-body::before,
.hi-npc[data-home-act="giessen"] .px-arm-right::after {
  content: ""; position: absolute; pointer-events: none; image-rendering: pixelated;
  background-position: center; background-repeat: no-repeat; background-size: contain;
}
.hi-npc[data-home-act="lesen"] .px-arm-left { animation: none; rotate: -55deg; }
.hi-npc[data-home-act="lesen"] .px-arm-right { animation: hiTurnHand 5.6s ease-in-out infinite; }
.hi-npc[data-home-act="lesen"] .px-body { z-index: 6; }
.hi-npc[data-home-act="lesen"] .px-body::after { left: 14px; top: 49px; width: 27px; height: 18px; background-image: var(--pa-book); }
.hi-npc[data-home-act="lesen"] .px-body::before {
  left: 27px; top: 51px; width: 11px; height: 13px; z-index: 1;
  background: #fff9e9; border-bottom: 1px solid #8b5a2b; transform-origin: left center;
  animation: hiPage 5.6s ease-in-out infinite;
}
.hi-npc[data-home-act="giessen"] .px-arm-left { animation: none; rotate: -12deg; }
.hi-npc[data-home-act="giessen"] .px-arm-right { animation: hiPourHand 2.8s ease-in-out infinite; }
.hi-npc[data-home-act="giessen"] .px-arm-right::after {
  width: 27px; height: 21px; left: 3px; bottom: -12px; background-image: var(--pa-can);
  transform-origin: 0 7px; animation: hiPourCan 2.8s ease-in-out infinite;
}
.hi-npc[data-home-act="giessen"] .pixel-avatar::after {
  left: 82px; top: 61px; width: 3px; height: 4px; z-index: 8;
  background: #81d9f1; box-shadow: 5px 5px #55b9e1, -3px 10px #b5ecfa;
  animation: hiDrops 2.8s linear infinite;
}
.hi-npc[data-home-act="trommeln"] .px-arm-left { animation: hiDrumLeft 0.8s ease-in-out infinite; }
.hi-npc[data-home-act="trommeln"] .px-arm-right { animation: hiDrumRight 0.8s ease-in-out infinite; }
.hi-npc[data-home-act="trommeln"] :is(.px-arm-left, .px-arm-right)::after {
  content: ""; position: absolute; width: 3px; height: 19px; left: 2px; bottom: -14px;
  background: #ddb66c; border-bottom: 3px solid #775938; pointer-events: none;
}
.hi-npc[data-home-act="trommeln"] .pixel-avatar::after {
  content: "♪"; left: 47px; top: 15px; font-size: 14px; color: #f2cc50;
  text-shadow: 1px 1px #33233b; animation: hiNote 1.6s ease-out infinite;
}
/* Sport, Rechner und Hobbys: Arme arbeiten, Körper wippt (nutzen die Trommel-Bewegung in anderem Takt) */
.hi-npc[data-home-act="hanteln"] .px-arm-left { animation: hiDrumLeft 1.2s ease-in-out infinite; }
.hi-npc[data-home-act="hanteln"] .px-arm-right { animation: hiDrumRight 1.2s ease-in-out infinite; }
.hi-npc[data-home-act="boxen"] .px-arm-left { animation: hiDrumLeft 0.42s ease-in-out infinite; }
.hi-npc[data-home-act="boxen"] .px-arm-right { animation: hiDrumRight 0.42s ease-in-out infinite; }
.hi-npc[data-home-act="tippen"] .px-arm-left { animation: hiDrumLeft 0.3s ease-in-out infinite; }
.hi-npc[data-home-act="tippen"] .px-arm-right { animation: hiDrumRight 0.3s ease-in-out infinite; }
.hi-npc[data-home-act="radeln"] .base-npc-body, .hi-npc[data-home-act="hanteln"] .base-npc-body { animation: hiBounce 0.5s ease-in-out infinite alternate; }
.hi-npc[data-home-act="yoga"] .base-npc-body { animation: hiBounce 2.4s ease-in-out infinite alternate; }
.hi-obj[data-used="boxen"] .hi-art, .hi-obj[data-used="boxen"] svg { transform-origin: 50% 0; animation: hiSwingBag 0.5s ease-in-out infinite alternate; }
@keyframes hiSwingBag { from { transform: rotate(-3deg); } to { transform: rotate(3deg); } }
.hi-obj[data-used="trommeln"] .hi-art { transform-origin: 50% 100%; animation: hiDrumSkin 0.4s ease-out infinite; }
.hi-obj[data-used="giessen"] .hi-art { transform-origin: 50% 100%; animation: hiLeaves 2.8s ease-in-out infinite; }
@keyframes hiTurnHand { 0%, 65%, 100% { rotate: 55deg; } 76%, 86% { rotate: 80deg; } }
@keyframes hiPage { 0%, 66%, 100% { opacity: 0; transform: scaleX(1); } 70% { opacity: 1; transform: scaleX(1); } 88% { opacity: 1; transform: scaleX(-1); } 92% { opacity: 0; transform: scaleX(-1); } }
@keyframes hiPourHand { 0%, 100% { rotate: -25deg; } 25%, 72% { rotate: -65deg; } }
@keyframes hiPourCan { 0%, 100% { rotate: 25deg; } 25%, 72% { rotate: 95deg; } }
@keyframes hiDrops { 0%, 24%, 78%, 100% { opacity: 0; translate: 0 0; } 28%, 44%, 60% { opacity: 1; translate: 0 0; } 40%, 56%, 74% { opacity: 0; translate: 5px 19px; } }
@keyframes hiDrumLeft { 0%, 100% { rotate: -105deg; } 30%, 45% { rotate: -65deg; } 65% { rotate: -110deg; } }
@keyframes hiDrumRight { 0%, 100% { rotate: -55deg; } 30%, 45% { rotate: -100deg; } 65% { rotate: -50deg; } }
@keyframes hiNote { from { opacity: 0.9; translate: 0 0; } to { opacity: 0; translate: 7px -15px; } }
@keyframes hiDrumSkin { 0%, 100% { scale: 1; } 20% { scale: 1.04 0.94; } }
@keyframes hiLeaves { 0%, 100% { rotate: 0deg; } 40% { rotate: -3deg; } 65% { rotate: 3deg; } }
.hi-room.hi-paused *, .hi-room.hi-paused *::before, .hi-room.hi-paused *::after { animation-play-state: paused !important; }
.base-personality { display: block; font-size: 0.72rem; line-height: 1.4; overflow-wrap: anywhere; color: #345c49; }
@media (prefers-reduced-motion: reduce) {
  .hi-npc[data-home-act] *, .hi-npc[data-home-act] *::before, .hi-npc[data-home-act] *::after,
  .hi-obj[data-used] .hi-art { animation: none !important; }
  .hi-npc[data-home-act="lesen"] .px-arm-right { rotate: 55deg; }
  .hi-npc[data-home-act="lesen"] .px-body::before,
  .hi-npc[data-home-act] .pixel-avatar::after { opacity: 0; }
  .hi-npc[data-home-act="giessen"] .px-arm-right { rotate: -40deg; }
  .hi-npc[data-home-act="giessen"] .px-arm-right::after { rotate: 65deg; }
}
