/* Hareketli katmanlar, ana oda görseliyle aynı koordinatları kullanır. */
.ceiling-clean,.arm-clean,.character-arm,.character-head,.fan-light{position:absolute;inset:0;background-size:100% 100%;background-repeat:no-repeat;pointer-events:none}
.ceiling-clean,.arm-clean{background-image:url('assets/room-clean-plate.png')}
.ceiling-clean{clip-path:polygon(55% 0,79% 0,79% 16%,55% 16%);z-index:1}
.ceiling-fan{position:absolute;left:56.25%;top:-7.8%;width:20%;height:26%;transform:rotateX(58deg) rotateZ(-8deg);transform-origin:center;pointer-events:none;z-index:2}
.ceiling-fan svg{display:block;width:100%;height:100%;overflow:visible}
.fan-rotor{transform-origin:100px 100px;animation:ceiling-spin 2.7s linear infinite;filter:drop-shadow(0 2px 1px #6f63334d)}
.fan-light{background-image:url('assets/room-clean-plate.png');clip-path:polygon(66.1% 0,66.7% 0,66.7% 3%,68.2% 5.6%,68.6% 8.5%,68% 11.3%,66.6% 13.8%,64.8% 11.5%,64% 9%,64.3% 6%,65.8% 3%);z-index:3}
.arm-clean{clip-path:polygon(43.6% 60.8%,47.4% 63%,50.4% 61.8%,51% 60.2%,52% 59.4%,53.4% 60%,53.7% 61.8%,52.7% 63.4%,51.6% 64%,51.2% 66%,49% 68.3%,46% 69%,43.6% 65%);z-index:1}
.character-arm{background-image:url('assets/room-wide.png');clip-path:polygon(43.6% 60.8%,47.4% 63%,50.4% 61.8%,51% 60.2%,52% 59.4%,53.4% 60%,53.7% 61.8%,52.7% 63.4%,51.6% 64%,51.2% 66%,49% 68.3%,46% 69%,43.6% 65%);transform-origin:44.7% 63.1%;animation:mouse-work 4.8s ease-in-out infinite;z-index:2}
.character-head{background-image:url('assets/room-wide.png');clip-path:polygon(35.5% 49%,38% 48.5%,40.5% 49.6%,41.5% 52%,41.2% 55.2%,40.4% 58.6%,38.8% 60%,36% 59%,34.5% 56%,34.3% 52%);transform-origin:38% 59%;animation:character-idle 6.5s ease-in-out infinite;z-index:2}
.monitor-live{z-index:3;background:#111815}
.desktop-wallpaper{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.91);image-rendering:auto}
.desktop-taskbar{position:absolute;bottom:0;left:0;right:0;height:11%;background:#16211bce;display:flex;align-items:center;gap:5%;padding:0 4%;font:7px var(--mono);color:#e4eddf}
.desktop-taskbar i{font-style:normal;margin-left:auto;font-size:5px}
.desk-player{left:29.4%;top:60.2%;width:3.4%;height:2.6%;z-index:7}
.desk-player::before{content:'';position:absolute;inset:-8px}
.desk-player::after{content:'MÜZİK ÇALAR ↗';position:absolute;left:0;bottom:calc(100% + 8px);white-space:nowrap;font:7px var(--mono);padding:5px 7px;background:#182418ed;border:1px solid #c8dc9255;opacity:0;transition:opacity .2s;pointer-events:none}
.desk-player:hover::after,.desk-player:focus-visible::after{opacity:1}
.room-cat{position:absolute;left:24%;top:79%;width:6%;aspect-ratio:543/724;z-index:8;pointer-events:none;animation:cat-wander 38s linear infinite;will-change:left,top}
.cat-shadow{position:absolute;left:20%;right:15%;height:13%;bottom:9%;background:#1820186e;border-radius:50%;transform:scaleY(.45)}
.cat-facing,.cat-sprite{position:absolute;inset:0;display:block}
.cat-facing{animation:cat-direction 38s steps(1,end) infinite}
.cat-sprite{background:url('assets/white-cat-walk.png') 0 0/400% 100% no-repeat;image-rendering:pixelated;animation:cat-step .65s steps(4,end) infinite,cat-bob .65s ease-in-out infinite}
@keyframes ceiling-spin{to{transform:rotate(360deg)}}
@keyframes mouse-work{0%,100%{transform:rotate(0)}18%{transform:rotate(-1deg) translate(1px,-1px)}30%{transform:rotate(-.7deg)}42%{transform:rotate(-1.25deg) translate(2px,0)}58%{transform:rotate(.65deg)}70%{transform:rotate(.65deg)}82%{transform:rotate(-.4deg)}}
@keyframes character-idle{0%,100%{transform:translateY(0) rotate(0)}45%{transform:translateY(-1px) rotate(.3deg)}75%{transform:translateY(0) rotate(-.2deg)}}
@keyframes cat-step{to{background-position:133.333% 0}}
@keyframes cat-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-1px)}}
@keyframes cat-wander{0%,100%{left:24%;top:79%}25%,75%{left:36%;top:87%}50%{left:54%;top:87%}}
@keyframes cat-direction{0%{transform:scaleX(1)}50%{transform:scaleX(-1)}100%{transform:scaleX(1)}}
body[data-mode=door] .room-cat,body[data-mode=entering] .room-cat,body[data-mode=project] .room-cat,body[data-mode=returning] .room-cat{animation-play-state:paused}
body[data-mode=door] .cat-sprite,body[data-mode=entering] .cat-sprite,body[data-mode=project] .cat-sprite,body[data-mode=returning] .cat-sprite{animation-play-state:paused}
.motion-reduced .cat-sprite{background-position:0 0!important}
body[data-mode=room] .room-hint{animation:hint-dismiss 9s ease forwards}
@keyframes hint-dismiss{0%,70%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.fan-rotor,.character-arm,.character-head,.room-cat,.cat-facing,.cat-sprite{animation:none}.cat-sprite{background-position:0 0}}
