*{box-sizing:border-box}body{margin:0;background:#eee7dc;color:#493629;font-family:"Noto Serif KR","Nanum Myeongjo",Georgia,serif}main{max-width:1800px;margin:auto}.scene{width:100%;aspect-ratio:1672/941;position:relative;overflow:hidden;background:#d9cab8}.scene>img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .65s,filter .5s}.scene.opening>img{transform:scale(1.035);filter:brightness(1.15)}#veil{position:absolute;inset:0;background:#fff3df;opacity:0;pointer-events:none;transition:opacity .3s}.scene.changing #veil{opacity:1}.hit{position:absolute;border:1px solid transparent;background:transparent;cursor:pointer;border-radius:12px;transition:background .2s,box-shadow .2s}.hit:hover,.hit:focus-visible{background:#fff4dc22;box-shadow:inset 0 0 0 2px #fff1c9,0 0 24px #fbd98988;outline:none}.hit .tip{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);background:#fff9ed;color:#503825;border-radius:30px;padding:9px 16px;white-space:nowrap;font:15px sans-serif;opacity:0}.hit:hover .tip,.hit:focus-visible .tip{opacity:1}.dock{padding:25px 5% 18px;background:#f8f3ea;border-top:1px solid #d9c5a8}.dock-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}.eyebrow{font:11px sans-serif;letter-spacing:.16em;color:#967859}h1{font-size:clamp(22px,2.2vw,32px);font-weight:500;margin:8px 0}p{line-height:1.7;font-family:system-ui,sans-serif;font-size:14px;color:#796451}nav{display:flex;gap:9px;flex-wrap:wrap;margin:17px 0}button{font:14px system-ui,sans-serif;cursor:pointer}nav button,.back{border:1px solid #d5bea0;background:#fffaf2;color:#5a402b;border-radius:30px;padding:11px 20px}nav button:hover,.back:hover{background:#ead6b6}nav button.active{background:#6e5139;color:white}button:focus-visible{outline:3px solid #b16d28;outline-offset:3px}.preview{font-size:12px;border-top:1px solid #e5d8c7;padding-top:13px;color:#8b7967}#status{min-height:1.5em;margin:0;font-size:13px}#back[hidden]{display:none}@media(max-width:650px){.dock{padding:23px 20px}.dock-heading{align-items:flex-start}.back{font-size:11px;padding:9px 11px;white-space:nowrap}.scene{margin-top:8vh}.hit .tip{display:none}nav button{flex:1 1 28%;padding:12px 10px}p{font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}.scene.opening>img{transform:none;filter:none}}
/* Door, light, then room: one shared entrance ritual. */
.door-transition{position:absolute;inset:0;z-index:10;overflow:hidden;pointer-events:all;--light:#fff0d4;background:transparent;transition:background .3s ease}
.door-transition.daylight{--light:#f0f8ff}.door-frame{position:absolute;perspective:1000px;border:5px solid #795238;border-radius:2px;background:var(--light);box-shadow:0 0 25px #ffe0a3aa;transition:box-shadow .65s ease}
.door-leaf{position:absolute;inset:0;transform-origin:left center;backface-visibility:hidden;background:repeating-linear-gradient(89deg,#8b582f22 0 2px,transparent 3px 15px),linear-gradient(100deg,#a66e3c,#b98350 50%,#986034);box-shadow:inset 0 0 0 7px #69452644;transition:transform .8s cubic-bezier(.22,.61,.36,1),filter .8s}
.door-leaf:after{content:'';position:absolute;right:9%;top:54%;width:15%;height:2%;border-radius:10px;background:#ddbd77;box-shadow:0 2px 3px #0005}.door-leaf span{position:absolute;top:18%;left:15%;right:15%;text-align:center;padding:8% 2%;background:#e6c58a;color:#4c3926;font-size:clamp(7px,1.2vw,20px);white-space:nowrap;box-shadow:0 1px 3px #0003}.metal .door-leaf{background:linear-gradient(100deg,#878780,#aaa99e,#797b77);box-shadow:inset 0 0 0 7px #5b5f5b55}
.door-open .door-leaf{transform:rotateY(-104deg);filter:brightness(.85)}.door-open .door-frame{box-shadow:0 0 100px 45px #ffedc5a0}.flooded{background:var(--light)}.flooded .door-frame{opacity:0;transition:opacity .28s}.revealing{background:transparent;transition:background .85s ease}.scene.arriving>img{animation:room-reveal .9s ease-out both}.travelling .dock{opacity:.12;pointer-events:none;transition:opacity .25s}.dock{transition:opacity .45s}.travelling #targets{pointer-events:none}.travelling .scene>img{will-change:filter,transform}@keyframes room-reveal{from{filter:brightness(1.12);transform:scale(1.016)}to{filter:brightness(1);transform:scale(1)}}@media(prefers-reduced-motion:reduce){.door-transition .door-frame{display:none}.scene.arriving>img{animation:none}.travelling .dock{opacity:1}}
.door-transition.gateway{background:#d9cbbb}.door-transition.gateway.flooded{background:var(--light)}.door-transition.gateway.revealing{background:transparent}
.stairs-experience{position:absolute;inset:0;z-index:2;color:#4b301e}.stairs-header{position:absolute;top:3%;left:3%;right:3%;display:flex;align-items:center;justify-content:space-between}.stairs-header>span{font-size:clamp(20px,3vw,44px)}.stairs-header button{border:0;background:transparent;color:#4b301e;font-family:inherit;font-size:clamp(12px,1.35vw,21px);padding:8px;text-decoration:underline;text-underline-offset:5px}.stairs-writing{position:absolute;left:20%;right:20%;top:10%;text-align:center}.stairs-writing h2,.stairs-after h2{font-size:clamp(25px,3.7vw,60px);font-weight:500;margin:0 0 12px}.stairs-intro{color:#60472f;font-family:inherit;font-size:clamp(12px,1.6vw,25px);margin:0 0 22px}.stairs-writing textarea{display:block;width:100%;height:clamp(110px,19vw,330px);resize:none;border:1px solid #fffbec;background:#fff7e542;box-shadow:0 5px 25px #7b562008;border-radius:17px;padding:22px;color:#513924;font:clamp(16px,1.5vw,24px)/1.65 system-ui,sans-serif;outline-offset:5px}.stairs-writing textarea::placeholder{color:#8d765c}.stairs-writing textarea:focus{outline:2px solid #bd8d52}.privacy{font-size:clamp(11px,1.15vw,17px);color:#62492f;margin:15px 0;line-height:1.65}.release,.again,.done-return{border:1px solid #ab6e23;border-radius:14px;background:#b76f1d;color:#fff9ee;padding:12px 35px;font:clamp(16px,1.7vw,25px) Georgia,serif;min-height:46px;box-shadow:0 3px 10px #9a62251c}.release:disabled{opacity:.5;cursor:default}.release:not(:disabled):hover{background:#9b5913}.stairs-helper{font-size:clamp(11px,1.1vw,16px);margin:9px 0;color:#75583c}.stairs-after{position:absolute;left:18%;right:18%;top:33%;text-align:center;animation:gentle-in 1.2s ease both}.stairs-after>p{font:clamp(16px,1.6vw,24px)/1.8 Georgia,serif;color:#705337}.stairs-after>div{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.again,.done-return{font-size:16px;padding:12px 22px}.done-return{background:#fff4de;color:#6b4c2a;border-color:#c9a77a}.quiet-line{display:block;width:40px;height:1px;background:#b18a5e;margin:0 auto 24px}.wind-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.stairs-experience [hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.in-stairs .scene{min-height:690px}.in-stairs .scene>img{height:100%;object-fit:cover;position:absolute;inset:0}.releasing .stairs-header{opacity:.5}@keyframes gentle-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@media(max-width:650px){.in-stairs .scene{margin-top:0;aspect-ratio:auto;height:auto;min-height:760px}.stairs-writing{left:8%;right:8%;top:17%}.stairs-writing h2{font-size:31px}.stairs-intro{font-size:14px;margin-bottom:24px}.stairs-writing textarea{height:270px;padding:18px;font-size:17px}.privacy{font-size:12px;margin:20px 0}.stairs-header{top:20px;left:20px;right:12px}.stairs-header>span{font-size:25px}.stairs-after{left:8%;right:8%;top:34%}.stairs-after h2{font-size:29px}.stairs-after>p{font-size:16px}.stairs-after>div{flex-direction:column;align-items:center}}@media(prefers-reduced-motion:reduce){.stairs-after{animation:none}}
/* A slow welcome for resting. */
.door-transition.unhurried{transition-duration:.55s}.unhurried .door-leaf{transition:transform 2.3s cubic-bezier(.45,0,.25,1),filter 2.3s ease}.unhurried.door-open .door-leaf{transform:rotateY(-92deg)}.unhurried .door-frame{transition:box-shadow 2.3s ease,opacity .55s ease}.unhurried.flooded .door-frame{transition:opacity .55s ease}.unhurried.revealing{transition:background 1.2s ease}.scene.unhurried-arrival.arriving>img{animation-duration:1.2s}@media(prefers-reduced-motion:reduce){.door-transition.unhurried,.unhurried .door-leaf,.unhurried.revealing{transition:none}}
/* Animate the actual two painted steel leaves; never substitute a generic door. */
.rooftop-original.door-frame{border:0;border-radius:0;box-shadow:none;perspective:1500px}.rooftop-original .rooftop-leaf{width:50%;inset:0 auto 0 0;border:0;border-radius:0;box-shadow:none;background:none;overflow:hidden;filter:none}.rooftop-original .rooftop-leaf.right{left:50%;transform-origin:right center}.rooftop-original .rooftop-leaf.left{transform-origin:left center}.rooftop-leaf:after{display:none}.rooftop-leaf>img{position:absolute;max-width:none;display:block;pointer-events:none;object-fit:fill}.door-open .rooftop-original .rooftop-leaf.left{transform:rotateY(-92deg);filter:none}.door-open .rooftop-original .rooftop-leaf.right{transform:rotateY(92deg);filter:none}.door-open .rooftop-original.door-frame{box-shadow:0 0 70px 15px #f0f8ff55}
.tea-experience{position:absolute;inset:0;z-index:2;color:#4c301c}.tea-seated-art{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;opacity:0;transition:opacity 1.7s ease,transform 1.7s ease;transform:scale(1.025)}.sitting .tea-seated-art,.seated .tea-seated-art{opacity:1;transform:scale(1)}.scene.tea-sitting>#art{transform:scale(1.06) translateY(-1%);transition:transform 1.7s ease}.tea-sit{position:absolute;left:37%;top:87.4%;width:26%;height:8.6%;border:1px solid #ba7d2e;border-radius:35px;background:#bd741d;color:#fff8e6;font:clamp(12px,1.65vw,26px) Georgia,serif}.tea-sit:hover{background:#a56115}.tea-entry-back{position:absolute;right:2%;top:2%;border:0;background:#f0d0a8;color:#4c301c;padding:9px;font-family:inherit;font-size:clamp(11px,1.5vw,24px)}.tea-seat-ui{position:absolute;inset:0;animation:gentle-in .65s ease}.tea-seat-ui header{position:absolute;left:3%;right:2%;top:3%;display:flex;justify-content:space-between;align-items:center}.tea-seat-ui header>span{font-size:clamp(21px,2.8vw,42px)}.tea-seat-ui button{color:#5c3e23}.tea-seat-ui header button,.tea-seat-ui footer button{border:1px solid #b89264;background:#fff6e6e6;border-radius:24px;padding:9px 16px;font-size:clamp(12px,1vw,17px);margin-left:8px}.tea-greeting{position:absolute;top:17%;left:20%;right:20%;text-align:center}.tea-greeting h2{font-size:clamp(20px,2.5vw,40px);font-weight:500;margin:0 0 15px}.tea-greeting p{font:clamp(14px,1.5vw,23px) Georgia,serif;color:#775230}.tea-choices{position:absolute;top:54%;left:32%;right:32%;display:flex;justify-content:space-between;gap:15px}.tea-choices button{border:1px solid #a8753c;background:#fff5e3ec;border-radius:30px;padding:10px 18px;font:clamp(12px,1.3vw,21px) Georgia,serif;white-space:nowrap;box-shadow:0 3px 12px #8c603820}.tea-choices button[aria-pressed=true]{background:#b77831;color:white}.tea-message{position:absolute;top:15%;left:27%;right:27%;text-align:center;background:#fff8e9ed;padding:18px 26px;border:1px solid #cfaa7a;border-radius:18px;box-shadow:0 8px 24px #8b62371a;animation:gentle-in .6s ease}.tea-message-date{margin:0;color:#957758;font-size:12px;letter-spacing:.12em}.tea-message h3{font-size:clamp(17px,1.5vw,24px);font-weight:500;margin:10px 0}.tea-message-copy{font-family:inherit;font-size:clamp(14px,1.4vw,22px);line-height:1.8;color:#62452e;margin:0 0 10px;word-break:keep-all}.tea-hide{border:0;background:none;text-decoration:underline;text-underline-offset:4px;padding:7px;font-size:12px}.tea-seat-ui footer{position:absolute;bottom:3%;left:3%;right:3%;display:flex;justify-content:space-between;align-items:center;gap:10px;font:12px system-ui;color:#775f49}.tea-wisps{display:none;position:absolute;inset:0;pointer-events:none;overflow:hidden}.seated .tea-wisps{display:block}.tea-wisps i{position:absolute;bottom:12%;left:8%;width:60px;height:24px;border-radius:50%;background:#fff9eb;filter:blur(9px);opacity:0;animation:cloud-wisp 8s ease-in-out infinite}.tea-wisps i:nth-child(2){left:auto;right:10%;animation-delay:3s}.tea-wisps i:nth-child(3){left:16%;animation-delay:5s}.tea-experience [hidden]{display:none!important}@keyframes cloud-wisp{0%{opacity:0;transform:translate(0,0) scale(.6)}25%{opacity:.4}100%{opacity:0;transform:translate(22px,-110px) scale(1.4)}}@media(max-width:650px){.in-tea .scene{margin-top:0;aspect-ratio:auto;min-height:760px}.in-tea #art{position:absolute;width:100%;height:100%;object-fit:cover}.tea-sit{left:15%;width:70%;top:auto;bottom:7%;height:56px;font-size:18px}.tea-entry-back{top:18px;right:12px;font-size:12px}.tea-seat-ui header{top:20px}.tea-seat-ui header button{padding:8px 10px;margin-left:4px}.tea-greeting{left:8%;right:8%;top:17%}.tea-greeting h2{font-size:25px;line-height:1.5}.tea-choices{left:8%;right:8%;top:54%;gap:9px;justify-content:center}.tea-choices button{font-size:15px;padding:12px 13px}.tea-message{left:7%;right:7%;top:15%;padding:18px 20px}.tea-message-copy{font-size:17px}.tea-seat-ui footer{bottom:24px;flex-wrap:wrap}.tea-seat-ui header>span{font-size:25px}}@media(prefers-reduced-motion:reduce){.tea-wisps i{animation:none;display:none}.tea-seated-art{transition:none}.tea-seat-ui,.tea-message{animation:none}.scene.tea-sitting>#art{transform:none;transition:none}}
.roof-experience{position:absolute;inset:0;z-index:2;color:#163f58;overflow:hidden}.roof-header{position:absolute;top:3%;left:3%;right:2%;display:flex;justify-content:space-between;align-items:center;z-index:2}.roof-header>span{font-size:clamp(23px,2.8vw,44px)}.roof-header button{font:clamp(12px,1.4vw,23px) Georgia,serif;background:#ffffff75;border:1px solid #ffffff80;color:#163f58;padding:10px 15px;border-radius:24px}.roof-welcome{position:absolute;top:27%;left:10%;right:10%;text-align:center;opacity:1;transition:opacity 2s ease;pointer-events:none}.roof-welcome h2{font-size:clamp(24px,3vw,47px);font-weight:500;line-height:1.6;margin:0;text-shadow:0 1px 12px #ffffff6b}.roof-welcome.faded{opacity:0}.roof-mobile-break{display:none}.roof-controls{position:absolute;bottom:3%;left:3%;right:3%;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px;font:13px system-ui,sans-serif;color:#25485b}.roof-controls button,.roof-controls label{border:1px solid #b8cdd4;background:#fffffff0;color:#24485e;border-radius:25px;padding:10px 15px;font-size:13px;box-shadow:0 2px 10px #33536b0a}.roof-controls label{display:flex;align-items:center;gap:8px}.roof-controls input{width:90px;accent-color:#4c849f}.roof-controls small{width:100%;text-align:right;font-size:11px;color:#4a6575}.roof-controls button[aria-pressed=true]{background:#e4f1f8}.roof-sky{position:absolute;inset:0;pointer-events:none;mask-image:linear-gradient(to bottom,#000 0%,#000 42%,transparent 53%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 42%,transparent 53%)}.roof-sky img{width:100%;height:100%;object-fit:cover;animation:roof-cloud-drift 48s linear infinite alternate;transform-origin:50% 0%;will-change:transform}.clouds-paused .roof-sky img{animation-play-state:paused}@keyframes roof-cloud-drift{from{transform:scale(1.16) translateX(-6%)}to{transform:scale(1.16) translateX(6%)}}@media(max-width:650px){.in-roof .scene{margin-top:0;aspect-ratio:auto;min-height:760px}.in-roof #art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.roof-header{top:20px;left:20px;right:12px}.roof-header>span{font-size:25px}.roof-welcome{left:7%;right:7%;top:25%}.roof-welcome h2{font-size:27px}.roof-mobile-break{display:block}.roof-controls{justify-content:center;bottom:22px;left:5%;right:5%;gap:8px}.roof-controls button,.roof-controls label{font-size:12px;padding:10px 12px}.roof-controls small{text-align:center}.roof-sky{mask-image:linear-gradient(#000 0%,#000 37%,transparent 47%);-webkit-mask-image:linear-gradient(#000 0%,#000 37%,transparent 47%)}}@media(prefers-reduced-motion:reduce){.roof-sky img{animation:none;transform:none}.roof-welcome{transition:none}}

/* Respect reduced motion initially, but honor an explicit start request. */
@media(prefers-reduced-motion:reduce){.roof-experience.clouds-explicit-motion .roof-sky img{animation:roof-cloud-drift 48s linear infinite alternate}.roof-experience.clouds-explicit-motion.clouds-paused .roof-sky img{animation-play-state:paused}}
/* Two staggered flights with one bird visible at a time. */
.roof-bird{position:absolute;z-index:2;left:17%;top:30%;width:clamp(40px,4.6vw,74px);pointer-events:none;opacity:0;animation:bird-away 16s linear infinite}
.roof-bird-next{animation-delay:8s;--bird-offset:9%}
.roof-bird svg{display:block;width:100%;height:auto;fill:#29495b;filter:drop-shadow(0 1px 1px #ffffff70)}
.bird-glide{transform-origin:36px 24px;animation:bird-bank 4s ease-in-out infinite}
.bird-wing-left,.bird-wing-right{transform-origin:36px 25px;animation:bird-left-stroke 2.4s ease-in-out infinite}
.bird-wing-right{animation-name:bird-right-stroke}
@keyframes bird-away{
 0%{left:calc(17% + var(--bird-offset,0%));top:30%;opacity:.83;transform:scale(1)}
 18%{left:calc(33% + var(--bird-offset,0%));top:23%;opacity:.85;transform:scale(.86)}
 34%{left:calc(49% + var(--bird-offset,0%));top:17%;opacity:.75;transform:scale(.57)}
 46%,100%{left:calc(59% + var(--bird-offset,0%));top:14%;opacity:0;transform:scale(.25)}
}
@keyframes bird-left-stroke{0%,30%,60%,100%{transform:rotate(0)}15%,45%{transform:rotate(-23deg) scaleY(.75)}}
@keyframes bird-right-stroke{0%,30%,60%,100%{transform:rotate(0)}15%,45%{transform:rotate(23deg) scaleY(.75)}}
@keyframes bird-bank{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
.birds-paused .roof-bird,.birds-paused .bird-glide,.birds-paused .bird-wing-left,.birds-paused .bird-wing-right{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.bird-glide,.bird-wing-left,.bird-wing-right{animation:none}}
/* Ondol nap ritual: enter, settle into the quilt, then choose a short rest. */
.rest-experience{position:absolute;inset:0;z-index:2;color:#593e2d;overflow:hidden}.rest-experience [hidden]{display:none!important}.rest-header{position:absolute;top:2%;left:3%;right:2%;display:flex;align-items:center;justify-content:space-between;z-index:3;background:#f4e3ca;border-radius:7px;padding:8px 12px}.rest-header>span{font-size:clamp(22px,2.6vw,40px)}.rest-header button{background:transparent;border:0;color:inherit;font-family:inherit;font-size:clamp(12px,1.4vw,22px);padding:9px}.rest-lie{position:absolute;left:37%;top:87%;width:26%;height:10%;background:#b87926;border:1px solid #ac742a;border-radius:60px;color:#fff6e6;font:clamp(20px,2.5vw,38px) Georgia,serif}.rest-lying-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:settle-in 1.6s ease both}.rest-panel{position:absolute;top:17%;bottom:6%;left:27%;right:27%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff9eedf;border:1px solid #fff7e6;border-radius:28px;box-shadow:0 16px 60px #613c1514;padding:25px;animation:gentle-in 1s ease both}.rest-kicker{font:11px system-ui,sans-serif;letter-spacing:.12em;color:#8a7057}.rest-heading{font-size:clamp(22px,2.4vw,35px);font-weight:500;margin:15px 0 0}.rest-copy{font-family:inherit;color:#795e47;font-size:clamp(12px,1.1vw,17px);margin:12px 0 18px}.rest-durations{display:flex;gap:12px}.rest-durations button,.rest-start{border:1px solid #c7ac85;background:#fff9ee;color:#624429;border-radius:30px;padding:12px 22px}.rest-durations button[aria-pressed=true]{background:#8b653f;color:#fff9ec}.rest-clock{font:clamp(36px,4vw,62px) Georgia,serif;font-variant-numeric:tabular-nums;letter-spacing:.04em;margin:20px 0;color:#765232}.rest-start{background:#966b40;color:#fff8ec;font-size:17px;padding:14px 26px}.rest-start:disabled{opacity:.6}.rest-sound{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:20px;font:12px system-ui,sans-serif}.rest-sound label{display:flex;align-items:center;gap:8px}.rest-sound input{width:80px;accent-color:#936a43}.rest-sound button,.rest-rise{border:0;border-bottom:1px solid #baa080;background:transparent;color:#775b41;font-size:12px;padding:5px}.rest-note{font:11px/1.6 system-ui,sans-serif;color:#8a735e;max-width:300px;margin:14px 0}.rest-message{font:12px/1.5 system-ui,sans-serif;margin:8px 0 0;color:#78583a;min-height:18px}.napping .rest-panel{background:#fff9eeb8;transition:background 3s}.napping .rest-lying-art{filter:brightness(.78);transition:filter 3s}.awakened .rest-panel{background:#fff9eef0}.in-rest .scene{min-height:680px}.in-rest #art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}@keyframes settle-in{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@media(max-width:650px){.in-rest .scene{margin-top:0;aspect-ratio:auto;min-height:800px}.rest-header{top:15px;left:12px;right:12px}.rest-header>span{font-size:25px}.rest-header button{font-size:12px}.rest-lie{left:25%;width:50%;top:85%;height:8%;font-size:24px}.rest-panel{top:17%;bottom:8%;left:6%;right:6%;padding:23px 16px}.rest-heading{font-size:25px}.rest-copy{font-size:13px}.rest-clock{font-size:54px;margin:28px 0}.rest-note{font-size:11px}.rest-durations button{padding:12px 23px}}@media(prefers-reduced-motion:reduce){.rest-lying-art,.rest-panel{animation:none}.napping .rest-panel,.napping .rest-lying-art{transition:none}}

.roof-music{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex-basis:100%}
.roof-music label{max-width:100%;flex-wrap:wrap}
.roof-tracks{max-width:100%;color:#24485e;background:#f9fdff;border:1px solid #b8cdd4;border-radius:8px;padding:6px;font:inherit}
.roof-song{display:block;width:280px;max-width:100%;height:42px}
@media(max-width:650px){.roof-music{justify-content:center}.roof-music label{justify-content:center}.roof-song{width:min(100%,300px)}}
.rest-track{font:inherit;color:inherit;background:#fff9ee;border:1px solid #c7ac89;border-radius:7px;padding:5px}

.stairs-modes{position:absolute;z-index:2;top:15%;left:8%;right:8%;display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap}
.stairs-modes button,.wall-panel button{border:1px solid #b19578;background:#fff9ee;color:#533826;border-radius:10px;padding:.55rem .7rem;font:inherit;cursor:pointer}
.stairs-modes [aria-pressed=true],.wall-post{background:#694831!important;color:#fff8e9!important}
.stairs-experience .stairs-writing{top:23%;bottom:auto}
.stairs-experience .stairs-after{top:30%}
.wall-panel{position:absolute;top:24%;left:12%;right:12%;bottom:5%;padding:1rem;overflow:auto;background:#fff4e8ed;border:1px solid #b19578;border-radius:16px;color:#49301f}
.wall-panel h2{margin:0 0 .35rem}
.wall-panel p{margin:.35rem 0 .7rem}
.wall-panel input{width:min(100%,28rem);padding:.55rem;border:1px solid #b19578;border-radius:8px;font:inherit}
.wall-notes{list-style:none;margin:.6rem 0;padding:0}
.wall-notes li{display:flex;align-items:center;justify-content:space-between;gap:.6rem;border-bottom:1px solid #d6c3ae;padding:.4rem 0;overflow-wrap:anywhere}
.wall-notes button{flex-shrink:0;font-size:.82rem}
@media(max-width:650px){.stairs-modes{top:14%}.stairs-experience .stairs-writing{top:26%}.wall-panel{top:26%;left:5%;right:5%}}

.roof-walk-panel{position:absolute;z-index:8;right:1rem;top:4rem;text-align:center;color:#443427}
.walk-open,.walk-choice button{border:1px solid #baa385;border-radius:12px;background:#fff4df;color:#443427;padding:.55rem .8rem;cursor:pointer;font:inherit}
.walk-choice{margin-top:.4rem;padding:.75rem;background:#fff4e4;border-radius:14px;box-shadow:0 6px 20px #23180c40}
.walk-choice p{margin:0 0 .5rem}
.walk-choice button{margin:.2rem}
.walk-choice img{display:block;height:clamp(65px,15vh,145px);margin:0 auto .3rem}
.walk-stage{position:absolute;inset:0;overflow:hidden}
.walk-background{position:absolute;width:100%;height:100%;object-fit:fill}
.walk-stage p{position:absolute;left:50%;top:12%;transform:translateX(-50%);background:#fff4dfde;border-radius:20px;padding:.35rem .75rem;white-space:nowrap;pointer-events:none}
.walk-avatar{position:absolute;height:var(--height);transform:translate(-50%,-100%);z-index:2;pointer-events:none}
.walk-avatar img{height:100%;width:auto}
.walk-avatar span{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);background:#fff4df;border-radius:20px;padding:.23rem .5rem;color:#443427;white-space:nowrap;font:600 clamp(10px,1vw,14px) sans-serif}
.walk-point{position:absolute;transform:translate(-50%,-50%);width:clamp(26px,5%,80px);height:10%;border:0;background:transparent;cursor:pointer;z-index:1;border-radius:50%}
.walk-point:focus-visible{outline:2px solid #fff;background:#fff3}
.walking-mode .roof-sky,.walking-mode .roof-welcome,.walking-mode .welcome-show,.walking-mode .cloud-toggle{visibility:hidden}
.walk-vending{position:absolute;left:20%;top:66%;transform:translate(-50%,-50%);z-index:3;border:1px solid #baa385;border-radius:20px;background:#fff4df;color:#443427;padding:.4rem .6rem;cursor:pointer;white-space:nowrap;font:600 clamp(10px,1vw,14px) sans-serif}
.walk-world{position:absolute;inset:0;transform-origin:top left;transition:transform 120ms linear}
.walk-stage p{z-index:4}
@media(prefers-reduced-motion:reduce){.walk-world{transform:none!important;transition:none}}
.roof-garden-link{position:absolute;top:56%;left:50%;transform:translate(-50%,-50%);z-index:8;display:grid;place-items:center;min-height:44px;padding:.65rem 1.15rem;border:1px solid #ffedcb;border-radius:24px;background:#fff4df;color:#443427;box-shadow:0 4px 18px #30251845;text-decoration:none;white-space:nowrap;font:600 clamp(14px,2vw,17px) system-ui,sans-serif}.roof-garden-link:hover,.roof-garden-link:focus-visible{background:#fffaf1;outline:2px solid #72533a;outline-offset:3px}
#feedback{padding:0 5% 1.5rem;background:#f8f3ea}
#feedback-dialog{width:min(460px,calc(100% - 2rem));padding:1.5rem;border:1px solid #c9b297;border-radius:16px;background:#fff9ef;color:#493629}
#feedback-dialog::backdrop{background:#271c1566}
#feedback-dialog h2{margin:0 0 1rem}
#feedback-form label{display:block;margin:.75rem 0}
#feedback-form select,#feedback-form textarea{display:block;width:100%;margin-top:.3rem;padding:.55rem;border:1px solid #baa58b;border-radius:8px;background:#fffefa;color:inherit;font:inherit}
#feedback-form button{border:1px solid #baa58b;background:#fff4df;border-radius:8px;padding:.5rem .8rem}
