@font-face{font-family:'Room Sans';src:url('./fonts/room-sans.woff2?v=room-discovery-4') format('woff2');font-weight:100 900;font-style:normal;font-display:block}
@font-face{font-family:'Room Yozai';src:url('./fonts/room-yozai.woff2?v=room-discovery-4') format('woff2');font-weight:300;font-style:normal;font-display:block}
@font-face{font-family:'Room Xiaolai';src:url('./fonts/room-xiaolai.woff2?v=room-discovery-4') format('woff2');font-weight:300 400;font-style:normal;font-display:block}
body,button,select,input,textarea{font-family:'Room Sans',sans-serif;font-synthesis:none}
button:focus-visible,a:focus-visible,select:focus-visible{outline:1px solid #e6e0cd;outline-offset:5px}
#tag{padding:0;background:none;color:#eee9d6;font:300 15px/1.6 'Room Yozai';letter-spacing:.08em;text-shadow:0 2px 8px #071512,0 0 18px #071512;max-width:240px;animation:label-arrive .3s ease both}
html[data-hover-font=xiaolai] #tag{font-family:'Room Xiaolai';font-size:14px}
@keyframes label-arrive{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
#hover-font-control{position:fixed;right:24px;top:122px;z-index:3;display:flex;align-items:center;gap:10px;font-size:11px;color:#c5c9b9}
#hover-font-control select{font:inherit;background:#17201fd0;color:#e7e3d7;border:0;border-bottom:1px solid #d6d0b94d;padding:5px 2px;cursor:pointer}
.in-experience #hover-font-control,.in-experience #room-color-control,.editing #hover-font-control{visibility:hidden}
#room-grain{position:fixed;inset:0;z-index:55;pointer-events:none;opacity:.045;mix-blend-mode:soft-light;background-size:192px 192px;transition:opacity .55s ease}
.inspecting-object #room-grain{opacity:.11}
.inspecting-disc #room-grain{opacity:.025}
.cinema-active #room-grain,.room-editing #room-grain{opacity:0}
.room-arrival-pending>canvas{filter:blur(8px) brightness(.78)}
.room-entering>canvas{animation:room-arrive 2.4s ease-in-out both}
@keyframes room-arrive{0%,15%{filter:blur(8px) brightness(.78)}45%{filter:blur(4px) brightness(.9)}78%{filter:blur(1px) brightness(.98)}100%{filter:blur(0) brightness(1)}}
body>nav{background:none;border:0;backdrop-filter:none;gap:22px}
body>nav>button{border:0;border-bottom:1px solid #dfdac055;padding:7px 4px}
#garden-experience .experience-views{background:none;border:0;padding:0;gap:20px;backdrop-filter:none}
#garden-experience .experience-views button{border:0;border-bottom:1px solid transparent;background:none;padding:8px 0;font-size:12px;color:#c4cbbd}
#garden-experience .experience-views button[aria-pressed=true]{border-bottom-color:#e9e1c38c;background:none;color:#f0e9d3}
.experience-close{border:0;background:none;color:#dedbcd;padding:8px 0}
.disc-controls{background:none;padding:0;left:7vw;bottom:14vh;max-width:min(390px,86vw);text-shadow:0 2px 12px #09120ee6}
.disc-instruction{font-size:16px;line-height:1.95;font-weight:400;letter-spacing:.06em}
.disc-inspection .disc-controls{left:50%;top:83%;bottom:auto;transform:translateX(-50%);text-align:center;width:max-content;max-width:88vw}
.book-closed .disc-controls{left:72%;top:22%;bottom:auto;transform:none;width:24%;max-width:340px}
.book-inspection .disc-controls{left:57%;top:36%;right:7%;bottom:auto;transform:none;max-width:none;pointer-events:none}
.book-inspect-zone:focus-visible{outline:1px solid #d8d1b980;outline-offset:6px}
.book-inspection.awaiting-book-read .book-inspect-zone{cursor:pointer}
.tv-inspection .disc-controls{left:50%;top:auto;bottom:5%;transform:translateX(-50%);width:76%;max-width:780px;min-width:0;text-align:center}
.disc-instruction .guide-action{letter-spacing:inherit}
.book-photo-target{position:fixed;z-index:4;pointer-events:auto;cursor:zoom-in;background:none;border:0;padding:0;border-radius:0;touch-action:manipulation}
.book-photo-target:hover{background:#e7ddbd08;box-shadow:0 0 0 1px #e7ddbd30}
.book-photo-view{position:fixed;inset:0;z-index:20;pointer-events:auto;background:#080f0ba6}
.book-photo-lift{position:fixed;display:block;max-width:none;object-fit:fill;box-shadow:0 24px 65px #0007;cursor:zoom-out;user-select:none}
.book-photo-return{position:absolute;right:28px;top:24px;background:none;border:0;color:#e9e3d0;letter-spacing:.06em;font-size:13px;padding:8px 0}
.book-photo-return span{opacity:.5;font-size:10px;margin-left:12px}
.viewing-book-photo>.experience-close,.viewing-book-photo>.experience-views{visibility:hidden}
.disc-inspection .experience-shade,.book-inspection .experience-shade{background:transparent}
.resume-panel{position:absolute;left:57%;right:7%;top:19%;bottom:13%;pointer-events:auto;animation:archive-arrive .65s ease both;color:#e7e3d6}
.resume-panel[hidden]{display:none!important}
.resume-scroll{height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior:contain;touch-action:pan-y;outline:none;padding:0 24px 52px 0;line-height:1.95;font-size:15px;font-weight:400}
.resume-scroll::-webkit-scrollbar{display:none}
.resume-scroll:focus-visible{outline:1px solid #e4dec028;outline-offset:10px}
.resume-eyebrow{font-size:10px;letter-spacing:.24em;color:#b7bfad;margin:0 0 20px}
.resume-scroll h1{font-size:36px;letter-spacing:.12em;font-weight:500;line-height:1.4;margin:0 0 6px}
.resume-alias{font-size:12px;letter-spacing:.15em;color:#acb7aa;margin:0 0 22px}
.resume-details{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#c6cbbd}
.resume-details a{color:inherit;text-decoration:none;width:fit-content}
.resume-details a:hover{text-decoration:underline;text-underline-offset:4px}
.resume-section{margin-top:36px}
.resume-section h2{font-size:17px;font-weight:600;letter-spacing:.07em;margin:0 0 18px;display:flex;align-items:center;gap:15px}
.resume-section h2>span{font-size:10px;letter-spacing:.1em;color:#acb4a4;font-weight:400}
.resume-section p{margin:0 0 18px;color:#d1d6c9;overflow-wrap:anywhere}
.resume-section strong{font-weight:500;color:#eee9d9}
.resume-end{font-size:10px;letter-spacing:.23em;color:#a1aa98;margin:44px 0 0}
.resume-position{position:absolute;right:-22px;top:0;bottom:0;width:30px;cursor:ns-resize;touch-action:none;opacity:.2;transition:opacity .3s;outline:none}
.resume-position::before{content:'';position:absolute;top:0;bottom:0;left:14px;width:1px;background:#c3c7b124}
.resume-position i{position:absolute;left:9px;width:11px;height:1px;top:calc(var(--position,0)*(100% - 2px));background:#eee7cd}
.resume-panel:hover .resume-position,.resume-position:focus-visible,.resume-panel.is-scrolling .resume-position{opacity:.8}
.resume-position:focus-visible::before{background:#c3c7b15c}
@keyframes archive-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.screen-expansion{position:fixed;inset:0;width:100%;height:100%;z-index:7;pointer-events:none;max-width:none}
#garden-experience.watching .cinema-view{background:#080c0b;pointer-events:auto;animation:none;z-index:7}
#garden-experience.watching .experience-close{z-index:10;background:#111b159c;padding:8px 12px}
#garden-experience.watching .experience-views{display:none}
.cinema-canvas,.cinema-video{position:absolute;width:100%;height:100%;inset:0;object-fit:contain;filter:none}
.cinema-controls{z-index:8;bottom:30px;left:32px;right:32px;transition:opacity .3s}
.cinema-controls p{font-family:inherit;font-size:12px;color:#cbd3c8;margin:8px 0 0}
.cinema-time{font:12px 'Room Sans'}
.cinema-progress{z-index:8}
@media(max-width:700px){
 #hover-font-control{right:16px;top:124px}
 #garden-experience .experience-views{left:18px;top:69px;gap:20px;max-width:calc(100% - 36px)}
 .experience-close{top:19px;right:18px}
 .resume-panel{left:9%;right:9%;top:49%;bottom:6%}
 .resume-scroll{padding-right:18px;font-size:14px;line-height:1.95}
 .resume-scroll h1{font-size:28px}
 .resume-eyebrow{margin-bottom:12px;font-size:9px}
 .resume-alias{margin-bottom:16px}
 .resume-section{margin-top:27px}
 .resume-section h2{font-size:16px}
 .resume-position{right:-18px}
 .disc-controls{left:8%;bottom:12%;max-width:84%}
 .disc-inspection .disc-controls{left:50%;top:76%;bottom:auto;max-width:86vw}
 .book-closed .disc-controls{left:10%;top:79%;bottom:auto;width:80%;max-width:none;text-align:center}
 .book-inspection .disc-controls{left:9%;right:9%;top:55%;bottom:auto;width:auto;text-align:left}
 .tv-inspection .disc-controls{left:50%;top:auto;bottom:8%;width:86%;text-align:center}
 .book-photo-return{right:18px;top:19px}
 .disc-instruction{font-size:14px}
 .cinema-controls{left:18px;right:18px;bottom:24px}
 .cinema-controls>div{width:100%}
}
@media(prefers-reduced-motion:reduce){#room-grain,.resume-position{transition:none}.room-entering>canvas,#tag,.resume-panel{animation:none}}

/* Discovery copy has no dialogue frame. Doll lines share the hover font. */
#room-discovery-caption{position:fixed;z-index:4;margin:0;padding:0;pointer-events:none;width:max-content;max-width:min(285px,calc(100vw - 32px));color:#eee9d6;font:400 16px/1.95 'Room Sans';letter-spacing:.06em;text-shadow:0 2px 7px #071512,0 0 20px #071512,0 0 5px #071512}
#room-discovery-caption[hidden]{display:none}
#room-discovery-caption.doll-copy{font:300 15px/1.85 'Room Yozai';letter-spacing:.08em;max-width:min(230px,calc(100vw - 32px));text-wrap:balance}
html[data-hover-font=xiaolai] #room-discovery-caption.doll-copy{font-family:'Room Xiaolai';font-size:14px}
@media(max-width:700px){#room-discovery-caption{font-size:14px;max-width:240px}#room-discovery-caption.doll-copy{max-width:200px}}
