.house-journey{position:absolute;inset:0;z-index:9;overflow:hidden;pointer-events:none;background:#625345;mask-image:linear-gradient(transparent,#000 70px,#000 calc(100% - 65px),transparent)}
.house-journey>img{position:absolute;object-fit:cover;max-width:none;filter:saturate(.65) sepia(.12) contrast(.94);will-change:transform,opacity}
.house-journey-cloud{position:absolute;inset:-40%;opacity:0;background:radial-gradient(ellipse at 45% 48%,#dfd7cb 0 25%,#e9e0d5f5 41%,transparent 69%),radial-gradient(ellipse at 18% 64%,#eee7dc 0 23%,#e2d9cde8 42%,transparent 65%),radial-gradient(ellipse at 78% 35%,#f0e7d9 0 20%,#dcd3c5f2 43%,transparent 70%);filter:blur(35px)}
.house-journey-vignette{position:absolute;inset:0;box-shadow:inset 0 0 100px 25px #30251d66;pointer-events:none}
#yunyi-preview[data-weather="night"] .house-journey-cloud{filter:blur(30px) brightness(.35)}
#yunyi-preview[data-journey] .yy-stage{opacity:0;pointer-events:none}
#yunyi-preview .yy-stage{transition:opacity .18s ease}
#yunyi-preview .house-fog{animation-duration:19s;filter:blur(28px)}#yunyi-preview .fog-two{animation-duration:27s}
#yunyi-preview[data-screen="home"] .house-fog{height:66%;opacity:.8}#yunyi-preview[data-screen="lobby"] .house-fog{opacity:.36}
#yunyi-preview[data-screen="game"] .house-pond{opacity:.85}
.house-pond{right:auto!important;bottom:auto!important;overflow:hidden;border-radius:48%;mask-image:radial-gradient(ellipse,#000 60%,transparent 75%)}
.house-koi{offset-path:ellipse(38% 28% at 50% 50%);offset-rotate:auto;animation:house-koi-swim 24s linear infinite;left:0;top:0}
.house-koi.koi-two{animation-delay:-10s;animation-duration:31s}
@keyframes house-koi-swim{from{offset-distance:0%}to{offset-distance:100%}}
#house-version{position:fixed;right:18px;bottom:14px;z-index:12;padding:8px 12px!important;border-radius:18px;background:#51443ae6!important;color:#f4e3d0!important;border:1px solid #c7ae9455!important;font-size:10px!important;letter-spacing:1px;backdrop-filter:blur(18px);box-shadow:0 4px 20px #2b211c33}
.house-changelog{padding:42px max(6%,24px) 80px;background:#4c4037;color:#e7d6c5}.house-changelog h2{font-size:24px;letter-spacing:3px;margin-bottom:25px!important}.house-changelog article{display:grid;grid-template-columns:75px 105px minmax(0,1fr);gap:18px;padding:22px 0;border-top:1px solid #bfa38b40}.house-changelog h3{font-size:19px}.house-changelog time{font-size:12px;line-height:2;color:#cdb59f}.house-changelog ul{margin:0;padding-left:18px;font-size:13px;line-height:1.9;color:#dcc6b2}
@media(max-width:620px){.house-changelog article{grid-template-columns:70px 1fr;gap:10px}.house-changelog ul{grid-column:1/-1}.house-changelog{padding-top:32px}#house-version{right:10px;bottom:10px;font-size:9px!important}}
@media(prefers-reduced-motion:reduce){.house-journey{display:none!important}}

/* Ink impact and the three motion beats: anticipation, strike, settle. */
.house-performance{isolation:isolate;perspective:1000px;overflow:visible}
#yunyi-preview .yy-event-frame{min-height:570px;grid-template-columns:46% 54%;border:0;max-width:1150px;background:radial-gradient(ellipse at 44% 48%,#b58a493d,transparent 68%)}
#yunyi-preview .yy-event-frame:before{inset:18% -18%;background:linear-gradient(95deg,transparent,#17120fe8 18%,#624c36dd 60%,transparent);border:0;transform:rotate(-6deg);mask-image:linear-gradient(transparent,#000 13%,#000 84%,transparent)}
#yunyi-preview .yy-event-screen{overflow:hidden;min-height:max(850px,calc(100svh - 190px))}
#yunyi-preview .yy-event-character{width:min(100%,430px);max-width:430px;align-self:center;animation:none;transform-origin:50% 75%;mask-image:radial-gradient(ellipse 68% 70% at 50% 46%,#000 45%,transparent 80%);filter:drop-shadow(0 14px 30px #0009)}
#yunyi-preview .yy-event-copy{z-index:2;padding:30px 0 30px 8px}
#yunyi-preview .yy-event-title,#yunyi-preview .house-cutscene-copy h2{font-size:clamp(56px,7vw,104px);font-weight:700;letter-spacing:.06em;line-height:1.3;color:#f7e0b4;text-shadow:2px 5px 0 #6d4933,0 10px 35px #0008;white-space:nowrap}
.house-performance h2>span{display:inline-block;transform-origin:50% 60%}
#yunyi-preview .yy-event-line,#yunyi-preview .house-cutscene-copy p:not(:first-child){font-size:clamp(17px,1.8vw,23px);line-height:1.8}
#yunyi-preview .yy-event-kicker{letter-spacing:5px;font-size:12px;color:#e0bc84}
.house-impact{position:absolute;left:34%;top:22%;width:340px;height:340px;border:2px solid #e9bb6dbb;border-radius:50%;box-shadow:0 0 0 24px #dfb46b18,0 0 0 60px #dfb46b0a;opacity:0;pointer-events:none;z-index:1}
.house-impact:before,.house-impact:after{content:'';position:absolute;inset:25%;background:#ecc78a;clip-path:polygon(0 43%,75% 0,60% 40%,100% 35%,20% 100%,34% 57%)}
.house-impact:after{rotate:70deg;scale:1.4;opacity:.4}
.house-impact i{position:absolute;left:50%;top:50%;width:100px;height:3px;transform-origin:0 50%;background:linear-gradient(90deg,#f5db9d,transparent);opacity:0}
#house-event-replay{position:absolute;bottom:107px;left:50%;translate:-50% 0;padding:11px 22px;border:1px solid #b99b6e77;border-radius:22px;color:#eed8b7;background:#3f3128b8;font-size:13px;letter-spacing:2px}
.house-cutscene-character{animation:none;width:min(45vw,470px);transform-origin:50% 75%;mask-image:radial-gradient(ellipse 70% 70% at 50% 45%,#000 42%,transparent 82%)}
.house-cutscene-copy{max-width:52%;z-index:2;animation:none}.house-cutscene-wash{inset:15% -15%;background:linear-gradient(100deg,#221b16ed,#806044f0,#251c16ed);border-color:#cba36d55}
@media(max-width:620px){
 #yunyi-preview .yy-event-screen{padding:80px 20px 165px;min-height:900px}#yunyi-preview .yy-event-frame{display:flex;flex-direction:column-reverse;justify-content:center;min-height:620px}
 #yunyi-preview .yy-event-character{width:280px;max-width:80vw}#yunyi-preview .yy-event-copy{padding:0;text-align:center;width:100%}
 #yunyi-preview .yy-event-title,#yunyi-preview .house-cutscene-copy h2{font-size:44px;white-space:normal;margin:8px 0}
 #yunyi-preview .yy-event-line,#yunyi-preview .house-cutscene-copy p:not(:first-child){font-size:16px;letter-spacing:1px}.house-impact{width:240px;height:240px;left:15%;top:25%}
 .house-cutscene{flex-direction:column-reverse}.house-cutscene-character{width:260px;max-height:48svh}.house-cutscene-copy{max-width:94%;text-align:center}
 #house-event-replay{bottom:130px;white-space:nowrap}#yunyi-preview .yy-event-choice{bottom:30px}
}
@media(prefers-reduced-motion:reduce){.house-impact{display:none!important}#yunyi-preview[data-journey] .yy-stage{opacity:1}}

.house-actor-body,.house-actor-head{position:absolute;inset:0;display:block;background-image:var(--house-actor-image,var(--yy-poses));background-repeat:no-repeat;background-size:inherit;background-position:inherit;pointer-events:none}
.house-actor-body{mask-image:linear-gradient(transparent 34%,#000 42%)}
.house-actor-head{mask-image:linear-gradient(#000 34%,transparent 42%);transform-origin:55% 39%;will-change:transform}

/* Shared two-player performance controls and a dedicated version journal. */
.house-event-casting{position:absolute;right:6%;top:22px;display:flex;gap:22px;align-items:center}
#yunyi-preview .house-event-casting .yy-event-genders,.house-reaction-genders{position:static;display:flex;gap:7px;align-items:center}
.house-event-casting span{font-size:11px;color:#cfbca7;margin-right:2px}
#yunyi-preview .house-reaction-genders button{font-size:11px;padding:9px 13px;border:1px solid #9c855a;color:#e4d4ae}
#yunyi-preview .house-reaction-genders button[aria-pressed="true"]{background:#cbb39e;color:#40332b}
.house-event-playback{position:absolute;bottom:105px;left:0;right:0;display:flex;gap:18px;justify-content:center;align-items:center;flex-wrap:wrap}
#yunyi-preview .house-event-playback #house-event-replay{position:static;translate:none}
.house-event-playback small{font-size:10px;color:#c9b6a3}
.house-skip-option{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#f0ddc6;cursor:pointer;text-shadow:0 2px 6px #261a12}
.house-skip-option input{width:16px;height:16px;accent-color:#c4a98f;cursor:pointer}
.house-cutscene-sign{font-size:13px;letter-spacing:2px;color:#d6bca3;margin-top:18px}
.house-performance[data-phase="reaction"] .house-actor-body{mask-image:none}
.house-performance[data-phase="reaction"] .house-actor-head{display:none}
.house-performance[data-phase="reaction"] .house-impact{display:none}
#yunyi-preview .house-performance[data-phase="reaction"] .yy-event-kicker{color:#d9c8bf}
#yunyi-preview .house-versions{max-width:1100px;margin:auto;padding:65px 5% 90px}
.house-versions-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:35px;color:var(--yy-ink)}
.house-versions-heading h1{font-size:46px;letter-spacing:5px;margin:18px 0!important}.house-versions-heading p{font-size:14px;line-height:1.8}
#yunyi-preview .house-versions .house-changelog{padding:12px 34px 24px;background:#51443ce8;border:1px solid #dcc5ae40;border-radius:20px;backdrop-filter:blur(22px)}
.house-versions .house-changelog article:first-child{border-top:0}.house-versions .house-changelog ul{font-size:14px}
@media(max-width:800px){.house-event-casting{gap:10px;right:4%;flex-direction:column;align-items:flex-end}#yunyi-preview .yy-event-screen{padding-top:120px}.house-event-playback{gap:10px 18px}.house-event-playback small{flex-basis:100%;text-align:center}}
@media(max-width:620px){#yunyi-preview .yy-event-screen{padding-bottom:205px}.house-event-playback{bottom:130px;padding:0 15px}#yunyi-preview .house-versions{padding:40px 20px 65px}.house-versions-heading{align-items:flex-start;flex-direction:column;gap:20px}.house-versions-heading h1{font-size:34px}#yunyi-preview .house-versions .house-changelog{padding:8px 20px 24px}.house-event-casting{right:20px}.house-event-casting span{font-size:10px}#yunyi-preview .house-reaction-genders button{font-size:10px;padding:8px}}
