@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=DM+Sans:wght@300;400;500&display=swap";:root{color-scheme:dark;--cream: #e9dfc4;--moss: #a7bb72;--amber: #edbd63;--deep: #07110f;--morri-pink: 255 127 190;--morri-rose: 255 185 218}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--cream);background:var(--deep);font-family:DM Sans,sans-serif}button{font:inherit}.realm,.home-scene,.room-scene{position:relative;width:100%;height:100svh;overflow:hidden}.home-scene picture,.home-scene picture img,.room-scene picture,.room-bg{position:absolute;inset:0;width:100%;height:100%}.home-scene picture img,.room-bg{object-fit:cover;object-position:center;animation:arrive 1s cubic-bezier(.2,.7,.2,1) both}.room-scene[hidden],.home-scene[hidden]{display:none}.forest-vignette{position:fixed;inset:0;z-index:5;pointer-events:none;box-shadow:inset 0 0 14vw #00000094}.moon-haze{position:absolute;inset:-10%;z-index:1;pointer-events:none;background:radial-gradient(circle at 74% 16%,rgb(124 203 236 / 8%) 0 4%,rgb(124 203 236 / 4%) 18%,transparent 43%);filter:blur(12px);animation:moon-breathe 11s ease-in-out infinite alternate}.fireflies{position:absolute;inset:8% 7%;z-index:2;pointer-events:none;background:radial-gradient(circle at 15% 36%,rgb(255 230 138 / 78%) 0 1px,rgb(255 230 138 / 20%) 3px,transparent 9px),radial-gradient(circle at 31% 19%,rgb(255 230 138 / 62%) 0 1px,rgb(255 230 138 / 16%) 3px,transparent 8px),radial-gradient(circle at 76% 33%,rgb(255 230 138 / 72%) 0 1px,rgb(255 230 138 / 18%) 4px,transparent 10px),radial-gradient(circle at 88% 52%,rgb(255 230 138 / 58%) 0 1px,rgb(255 230 138 / 14%) 3px,transparent 8px),radial-gradient(circle at 54% 67%,rgb(255 230 138 / 64%) 0 1px,rgb(255 230 138 / 15%) 3px,transparent 9px);filter:blur(.6px) drop-shadow(0 0 6px rgb(246 208 106 / 42%));-webkit-mask-image:radial-gradient(ellipse at center,#000 35%,rgb(0 0 0 / 72%) 62%,transparent 96%);mask-image:radial-gradient(ellipse at center,#000 35%,rgb(0 0 0 / 72%) 62%,transparent 96%);animation:drift 14s ease-in-out infinite alternate}.window-atmosphere{position:absolute;z-index:3;overflow:hidden;border-radius:50%;pointer-events:none;opacity:0;-webkit-mask-image:radial-gradient(ellipse at center,#000 34%,rgb(0 0 0 / 82%) 57%,rgb(0 0 0 / 24%) 78%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 34%,rgb(0 0 0 / 82%) 57%,rgb(0 0 0 / 24%) 78%,transparent 100%);transition:opacity .35s ease}#roomScene[data-scene=parlor] .window-atmosphere{left:39.5%;top:11%;width:20.5%;height:40%}#roomScene[data-scene=window] .window-atmosphere{left:33.5%;top:8%;width:36%;height:62%;z-index:6}.window-atmosphere:before{position:absolute;inset:-10%;border-radius:50%;background:radial-gradient(ellipse at 48% 30%,rgb(168 203 220 / 14%) 0 10%,rgb(103 147 170 / 8%) 34%,transparent 72%),radial-gradient(ellipse at 42% 62%,rgb(117 161 180 / 9%),transparent 67%);filter:blur(18px);content:"";animation:morri-overcast-breathe 12s ease-in-out infinite alternate}.window-atmosphere .window-rain,.window-atmosphere .window-storm{position:absolute;inset:-10%;border-radius:50%}.window-atmosphere .window-rain{background:repeating-linear-gradient(101deg,transparent 0 11px,rgb(202 226 235 / 14%) 12px,transparent 14px 29px),repeating-linear-gradient(96deg,transparent 0 22px,rgb(166 204 219 / 10%) 23px,transparent 25px 41px);filter:blur(.55px);-webkit-mask-image:radial-gradient(ellipse at center,#000 32%,rgb(0 0 0 / 72%) 64%,transparent 93%);mask-image:radial-gradient(ellipse at center,#000 32%,rgb(0 0 0 / 72%) 64%,transparent 93%);opacity:.34;animation:morri-rain-glass 8.5s linear infinite}.window-atmosphere .window-storm{background:radial-gradient(ellipse at 50% 44%,rgb(198 225 237 / 30%) 0 6%,rgb(124 175 198 / 12%) 26%,transparent 72%);filter:blur(15px);mix-blend-mode:screen;opacity:0;animation:morri-storm-flash 15.7s steps(1,end) infinite}.window-atmosphere .window-gloss{position:absolute;inset:-10%;mix-blend-mode:screen;background:radial-gradient(ellipse at 26% 35%,rgb(219 237 244 / 19%) 0 1px,rgb(170 208 222 / 6%) 3px,transparent 11px),radial-gradient(ellipse at 49% 56%,rgb(213 234 242 / 18%) 0 1px,rgb(158 198 214 / 6%) 4px,transparent 13px),radial-gradient(ellipse at 77% 43%,rgb(205 228 238 / 17%) 0 1px,rgb(147 188 205 / 5%) 4px,transparent 12px);filter:blur(.8px);opacity:.42;animation:morri-window-glint 6.4s ease-in-out infinite}.manga-window{display:none;position:absolute;inset:5%;z-index:4;pointer-events:none}#roomScene[data-scene=window] .manga-window{display:block}.manga-pane{position:absolute;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;padding:7%;color:#e6f2f5ba;background:radial-gradient(ellipse at center,rgb(223 240 245 / 17%) 0 8%,rgb(195 223 233 / 10%) 28%,rgb(167 205 219 / 4%) 53%,transparent 79%);filter:drop-shadow(0 0 8px rgb(190 224 236 / 18%));text-align:center;text-decoration:none;text-shadow:0 1px 1px rgb(10 34 45 / 75%),0 0 8px rgb(205 233 241 / 42%);opacity:.72;pointer-events:auto;transition:opacity .35s ease,filter .35s ease,background .35s ease;-webkit-tap-highlight-color:transparent}.manga-pane:before,.manga-pane:after{position:absolute;pointer-events:none;content:""}.manga-pane:before{inset:9%;border:1px solid rgb(224 241 246 / 16%);border-radius:48% 44% 52% 46%;filter:blur(1.6px);opacity:.55}.manga-pane:after{width:56%;height:1px;bottom:20%;background:linear-gradient(90deg,transparent,rgb(231 244 247 / 52%),transparent);filter:blur(.7px)}.manga-pane small,.manga-pane span{display:block;font:500 clamp(5px,.48vw,9px)/1.1 "DM Sans",sans-serif;letter-spacing:.14em}.manga-pane small{opacity:.76}.manga-pane span{margin-top:2px;opacity:0;transition:opacity .3s ease}.manga-pane b{display:block;font:600 clamp(10px,1.1vw,20px)/.9 "Cormorant Garamond",serif;letter-spacing:.045em}.manga-pane:hover,.manga-pane:focus-visible{color:#f1f9faf0;background:radial-gradient(ellipse at center,rgb(230 244 248 / 28%) 0 7%,rgb(191 222 232 / 15%) 31%,rgb(157 200 216 / 6%) 57%,transparent 82%);filter:drop-shadow(0 0 13px rgb(194 229 239 / 36%));opacity:1;outline:none}.manga-pane:hover span,.manga-pane:focus-visible span{opacity:.86}.manga-pane-top{left:34%;top:0;width:32%;height:43%;clip-path:polygon(0 0,100% 0,76% 75%,50% 100%,24% 75%);padding-bottom:16%}.manga-pane-upper-left{left:0;top:10%;width:44%;height:43%;clip-path:polygon(0 0,71% 0,100% 100%,14% 85%);padding-right:14%}.manga-pane-upper-right{right:0;top:10%;width:44%;height:43%;clip-path:polygon(29% 0,100% 0,86% 85%,0 100%);padding-left:14%}.manga-pane-lower-left{left:0;bottom:9%;width:45%;height:45%;clip-path:polygon(13% 11%,100% 0,66% 100%,0 74%);padding-right:15%}.manga-pane-lower-right{right:0;bottom:9%;width:45%;height:45%;clip-path:polygon(0 0,87% 11%,100% 74%,34% 100%);padding-left:15%}.manga-pane-bottom{left:33%;bottom:0;width:34%;height:42%;clip-path:polygon(50% 0,78% 25%,100% 100%,0 100%,22% 25%);padding-top:17%}.manga-pane-top b,.manga-pane-bottom b{font-size:clamp(9px,.96vw,18px)}.manga-pane-upper-left{transform:rotate(-4deg)}.manga-pane-upper-right{transform:rotate(4deg)}.manga-pane-lower-left{transform:rotate(3deg)}.manga-pane-lower-right{transform:rotate(-3deg)}.manga-cabinet{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:5vh 4vw;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#12181733 0 35%,#030706c2 78%,#010303e0);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.manga-cabinet[hidden]{display:none}.manga-cabinet-shell{position:relative;width:min(1120px,92vw);aspect-ratio:3 / 2;animation:manga-cabinet-drop .72s cubic-bezier(.18,.78,.2,1) both;filter:drop-shadow(0 26px 42px rgb(0 0 0 / 62%))}.manga-cabinet-shell:before{position:absolute;inset:7% 5% 2%;z-index:-1;border-radius:42% 45% 35% 38%;background:radial-gradient(ellipse,rgb(255 191 222 / 12%),transparent 68%);filter:blur(24px);content:""}.manga-cabinet-shell>img{display:block;width:100%;height:100%;object-fit:contain}.manga-cabinet-title{position:absolute;top:7.5%;left:50%;z-index:3;width:62%;color:#efe4d2;text-align:center;text-shadow:0 2px 12px #160d0a,0 0 12px rgb(241 185 215 / 22%);transform:translate(-50%)}.manga-cabinet-title small{display:block;color:#d6b6bd;font-size:clamp(6px,.7vw,10px);letter-spacing:.2em}.manga-cabinet-title h2{margin:3px 0 0;font:600 clamp(20px,2.25vw,36px)/1 "Cormorant Garamond",serif}.manga-cabinet-close{position:absolute;top:8%;right:8%;z-index:5;width:38px;height:38px;border:1px solid rgb(241 211 217 / 32%);border-radius:50%;color:#eadcd0;background:#1c110fc2;box-shadow:0 5px 18px #0000006b;cursor:pointer;font:500 24px/1 Cormorant Garamond,serif}.manga-cabinet-close:focus-visible{outline:2px solid rgb(239 193 218 / 72%);outline-offset:3px}.manga-shelf-links{position:absolute;inset:21.5% 18.2% 24.5% 19.6%;z-index:4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:2.5% 2.2%}.manga-shelf-links a{position:relative;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;padding:9%;border-radius:18% 13% 16% 12%;color:#f0e4d2;background:radial-gradient(ellipse at 50% 70%,rgb(242 190 216 / 13%),transparent 64%);text-align:center;text-decoration:none;text-shadow:0 2px 8px #160e0b;opacity:.76;transition:opacity .3s ease,background .3s ease,filter .3s ease}.manga-shelf-links a:before{position:absolute;inset:8%;border:1px solid rgb(239 202 218 / 0%);border-radius:inherit;box-shadow:inset 0 0 24px #f1c1da00;content:"";transition:border-color .3s ease,box-shadow .3s ease}.manga-shelf-links a:hover,.manga-shelf-links a:focus-visible{background:radial-gradient(ellipse at 50% 65%,rgb(242 190 216 / 25%),transparent 72%);filter:drop-shadow(0 0 10px rgb(246 203 224 / 28%));opacity:1;outline:none}.manga-shelf-links a:hover:before,.manga-shelf-links a:focus-visible:before{border-color:#efcada3d;box-shadow:inset 0 0 24px #f1c1da1c}.manga-shelf-links b{font:600 clamp(11px,1.2vw,19px)/1 "Cormorant Garamond",serif}.manga-shelf-links span{display:block;margin-top:2px;color:#d3b9b8;font-size:clamp(5px,.55vw,9px);letter-spacing:.08em;text-transform:uppercase}@keyframes manga-cabinet-drop{0%{opacity:0;transform:translateY(-28%) scale(.94);filter:blur(8px)}62%{opacity:1;transform:translateY(1.5%) scale(1.008);filter:none}to{opacity:1;transform:none;filter:none}}.window-creature{position:absolute;border-radius:50%;pointer-events:none;filter:blur(.2px) drop-shadow(0 0 5px rgb(255 219 232 / 22%))}.window-creature.dragonfly{width:16px;height:6px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#fff3ebf0,#ffadd1d1)}.window-creature.ladybug{width:9px;height:6px;border-radius:999px;background:radial-gradient(circle at 60% 48%,#ff7087,#c61d45 58%,#ff6d7f)}.window-creature.butterfly{width:12px;height:7px;border-radius:50%;background:radial-gradient(ellipse at 30% 52%,#ffd6f1 0 60%,transparent 62%),radial-gradient(ellipse at 70% 52%,#c9ecff 0 60%,transparent 62%),#f8f0cf}.window-creature:after{position:absolute;inset:0;border-radius:inherit;content:"";background:inherit;opacity:.35;transform:scale(.7) rotate(130deg)}.window-creature.i1{left:20%;top:28%;animation:morri-insect-a 11.2s linear infinite}.window-creature.i2{left:44%;top:44%;animation:morri-insect-b 9.2s linear infinite reverse}.window-creature.i3{left:64%;top:32%;animation:morri-insect-c 13.1s linear infinite}.window-creature.i4{left:70%;top:58%;animation:morri-insect-d 8.8s linear infinite reverse}.window-creature.i5{left:42%;top:68%;animation:morri-insect-e 10.6s linear infinite}#roomScene[data-scene=window] .window-atmosphere,#roomScene[data-scene=parlor] .window-atmosphere{opacity:1}#roomScene:not([data-scene=window]):not([data-scene=parlor]) .window-atmosphere{opacity:0}.home-hotspots{position:absolute;inset:0;z-index:4}.softspot{position:absolute;border:0;border-radius:48%;color:var(--cream);background:transparent;cursor:pointer;outline:none}.softspot:before{position:absolute;inset:-20%;border-radius:inherit;background:radial-gradient(ellipse,rgb(var(--morri-rose) / 32%) 0%,rgb(var(--morri-pink) / 16%) 34%,rgb(var(--morri-pink) / 5%) 62%,transparent 90%);filter:blur(29px);opacity:0;content:"";transform:scale(.76);transition:opacity .35s,transform .45s}.softspot span{position:absolute;left:50%;bottom:-40px;width:max-content;max-width:min(260px,62vw);padding:8px 12px;border:1px solid rgb(218 228 176 / 22%);border-radius:999px;color:#efe8d0;background:#0b1711d1;box-shadow:0 8px 30px #00000073;font:italic 15px Cormorant Garamond,serif;letter-spacing:.03em;opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity .25s,transform .25s}.softspot:hover:before,.softspot:focus-visible:before,.reveal-hotspots .softspot:before{opacity:.5;transform:scale(1);animation:morri-hotspot-pulse 2.6s ease-in-out infinite}.softspot:hover span,.softspot:focus-visible span{opacity:1;transform:translate(-50%)}.softspot:focus-visible{outline:none}.spot-book{left:8%;top:45%;width:28%;height:30%}.spot-door{left:38%;top:36%;width:22%;height:33%}.spot-comic{left:60%;top:56%;width:23%;height:20%}.spot-crystal{left:82%;top:58%;width:13%;height:24%}.realm-label{position:fixed;top:21px;left:26px;z-index:8;display:flex;align-items:baseline;gap:16px;text-shadow:0 2px 14px #000}.realm-label b{font:600 28px Cormorant Garamond,serif;letter-spacing:.22em}.realm-label small{color:#b8b69c;font-size:9px;letter-spacing:.25em}.note{position:fixed;left:28px;bottom:24px;z-index:8;max-width:min(520px,72vw);margin:0;color:#d2cab6;font:italic 17px/1.45 Cormorant Garamond,serif;text-shadow:0 2px 12px #000}.hint,.ledger,.return-home{position:fixed;z-index:9;border:1px solid rgb(210 199 153 / 38%);color:#d9cfaf;background:#0c1811b8;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hint{top:18px;right:20px;width:36px;height:36px;border-radius:50%;font:600 18px Cormorant Garamond}.ledger{top:18px;right:64px;width:36px;height:36px;border-radius:50%;font:600 17px Cormorant Garamond}.return-home{right:20px;bottom:20px;padding:9px 13px;border-radius:999px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}#roomHotspots{position:absolute;inset:0;z-index:4;width:100%;height:100%}#roomHotspots .hotspot-glow{fill:rgb(var(--morri-pink) / 42%);stroke:rgb(var(--morri-rose) / 24%);stroke-width:5;opacity:0;pointer-events:none;filter:blur(30px) drop-shadow(0 0 22px rgb(var(--morri-pink) / 20%));transition:opacity .3s}#roomHotspots .hotspot-hit{fill:transparent;stroke:transparent;stroke-width:3;cursor:pointer;outline:none}#roomHotspots .hotspot-group:hover .hotspot-glow,#roomHotspots .hotspot-group:focus-within .hotspot-glow,.reveal-hotspots #roomHotspots .hotspot-glow{opacity:.32;animation:morri-hotspot-pulse 2.6s ease-in-out infinite}.room-tip{position:absolute;left:50%;bottom:9%;z-index:8;width:max-content;max-width:min(300px,70vw);padding:8px 13px;border:1px solid rgb(218 228 176 / 24%);border-radius:999px;color:#efe8d0;background:#0b1711db;box-shadow:0 8px 30px #00000075;font:italic 15px Cormorant Garamond,serif;opacity:0;pointer-events:none;transform:translate(-50%,9px);transition:opacity .22s,transform .22s}.room-tip.show{opacity:1;transform:translate(-50%)}.room-scene[data-scene=crt]:after{position:absolute;left:20.5%;top:23.3%;z-index:3;width:31.2%;height:40.5%;border-radius:18%/12%;background:repeating-linear-gradient(0deg,transparent 0 5px,rgb(176 244 242 / 12%) 6px,transparent 7px 11px),radial-gradient(ellipse,rgb(123 238 224 / 9%),transparent 68%);mix-blend-mode:screen;opacity:.46;filter:blur(2px);-webkit-mask-image:radial-gradient(ellipse,#000 45%,rgb(0 0 0 / 58%) 72%,transparent 100%);mask-image:radial-gradient(ellipse,#000 45%,rgb(0 0 0 / 58%) 72%,transparent 100%);pointer-events:none;content:"";animation:morri-crt 5.8s steps(1,end) infinite}.room-scene[data-scene=parlor]:after{position:absolute;left:67.5%;top:22%;z-index:3;width:18%;height:23%;border-radius:17%;background:#a4e2f012;box-shadow:0 0 22px #71cddf1f;mix-blend-mode:screen;opacity:.38;filter:blur(4px);-webkit-mask-image:radial-gradient(ellipse,#000 42%,rgb(0 0 0 / 55%) 70%,transparent 100%);mask-image:radial-gradient(ellipse,#000 42%,rgb(0 0 0 / 55%) 70%,transparent 100%);pointer-events:none;content:"";animation:morri-crt 7.2s steps(1,end) -2s infinite}.toast{position:fixed;top:12%;left:50%;z-index:20;padding:10px 16px;border:1px solid rgb(206 196 148 / 30%);color:#e8dfc4;background:#0a140fe0;font:italic 16px Cormorant Garamond,serif;opacity:0;pointer-events:none;transform:translate(-50%,-8px);transition:opacity .3s,transform .3s}.toast.show{opacity:1;transform:translate(-50%)}.chess-game{position:fixed;inset:0;z-index:30;display:grid;padding:clamp(14px,3vw,32px);overflow:auto;place-items:center;background:radial-gradient(circle at 50% 35%,rgb(242 181 211 / 14%),transparent 42%),#040b09e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.chess-game[hidden]{display:none}.chess-panel{width:min(1120px,96vw);padding:clamp(16px,2.4vw,28px);border:1px solid rgb(238 197 216 / 32%);border-radius:28px 10px 30px 12px;color:#34231e;background:linear-gradient(#eed8c2f0,#dcbfaef5),#ddc1ad;box-shadow:0 32px 90px #000000b8,inset 0 0 45px #6f3b2a24}.chess-heading,.chess-footer{display:flex;align-items:center;justify-content:space-between;gap:18px}.chess-heading small{color:#77544f;font-size:10px;letter-spacing:.22em}.chess-heading h2{margin:2px 0 0;font:600 clamp(30px,5vw,52px)/.95 "Cormorant Garamond",serif}.chess-story{max-width:70ch;margin:10px 0 16px;font:600 clamp(15px,2vw,19px)/1.35 "Cormorant Garamond",serif}.chess-modes,.chess-puzzles,.opponent-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:-2px 0 12px}.chess-modes button,.chess-puzzles button,.opponent-choices button{border:1px solid rgb(76 43 38 / 40%);border-radius:999px;padding:7px 12px;color:#4a2c28;background:#fff4e57a;cursor:pointer;font:600 13px Cormorant Garamond,serif;letter-spacing:.03em}.chess-modes button[aria-pressed=true],.chess-puzzles button[aria-pressed=true],.opponent-choices button[aria-pressed=true]{color:#241410;background:#d297b27a;box-shadow:0 0 13px #e497bf52}.chess-modes{margin-bottom:10px}.chess-modes button{min-width:120px;text-transform:uppercase;letter-spacing:.1em;font-size:11px}.full-match-panel[hidden],.knight-puzzle-panel[hidden]{display:none}.opponent-row{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(430px,1.1fr);align-items:center;gap:12px;margin-bottom:8px}.opponent-choices{justify-content:flex-start;margin:0}.opponent-choices button{display:inline-flex;align-items:center;gap:7px;padding:5px 10px 5px 6px;text-align:left}.opponent-choices button img{width:34px;height:34px;border:1px solid rgb(80 44 38 / 34%);border-radius:50%;object-fit:cover;box-shadow:0 3px 8px #2e181238}.opponent-choices button span{display:grid;line-height:1}.opponent-choices button b{font-size:14px}.opponent-choices button small{margin-top:3px;color:#744c45;font:700 9px DM Sans,sans-serif;letter-spacing:.1em;text-transform:uppercase}.opponent-card{display:grid;align-items:center;min-height:58px;border-left:2px solid rgb(101 56 56 / 38%);padding-left:12px}.opponent-portrait{flex:0 0 auto;width:78px;height:78px;border:2px solid rgb(86 48 39 / 38%);border-radius:18px 8px 20px 9px;object-fit:cover;box-shadow:0 8px 18px #311b153d,0 0 20px #e497bf2e}.opponent-copy{display:grid}.opponent-card b{font:600 20px Cormorant Garamond,serif}.opponent-card small{color:#67453e;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.opponent-card small strong{display:inline-block;margin-right:3px;border-radius:999px;padding:2px 6px;color:#3c211c;background:#dda4bc8f}.opponent-card em{color:#49312c;font:600 13px/1.25 Cormorant Garamond,serif}.match-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:stretch;gap:clamp(12px,2vw,24px);width:min(1080px,100%);margin:0 auto 12px}.match-stage{position:relative;min-width:0;aspect-ratio:1672 / 941;overflow:hidden;border:1px solid rgb(91 54 43 / 42%);border-radius:22px 8px 24px 10px;background:#1a100b;box-shadow:0 27px 38px #391f176b,inset 0 0 0 1px #ebbd8f24}.match-scene-art{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none}.full-chess-board{position:absolute;inset:0;z-index:2;overflow:visible;margin:0;pointer-events:none}.full-chess-square{position:absolute;display:grid;min-width:0;padding:0;border:0;place-items:center;color:#24130f;cursor:pointer;background:transparent;pointer-events:auto;transition:background .16s ease,box-shadow .16s ease}.full-chess-square:hover{background:#fff2c51a}.full-chess-square.is-light,.full-chess-square.is-dark{background-color:transparent}.full-chess-square.is-selected{background:#ffe59d61;box-shadow:inset 0 0 18px #ffe8a3}.full-chess-square.is-last-from{background:#ffe49733;box-shadow:inset 0 0 18px #ffdc9761}.full-chess-square.is-last-to{z-index:1;background:#fff2b14d;box-shadow:inset 0 0 22px #ffdd939e,0 0 15px #efa8cf59}.full-chess-square.is-legal:after{width:23%;aspect-ratio:1;border-radius:50%;background:#ffefa9d1;box-shadow:0 0 14px #ffe88edb;content:""}.full-chess-square.is-capture:after{width:72%;border:4px solid rgb(255 221 145 / 78%);background:transparent}.full-chess-square:focus-visible{z-index:3;outline:3px solid #fff0a7;outline-offset:-3px}.match-pieces{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none}.match-actions{position:absolute;inset:0;z-index:4;overflow:visible;pointer-events:none}.match-piece-hit,.match-move-target{position:absolute;display:grid;padding:0;border:0;place-items:center;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent}.match-piece-hit{left:calc(var(--piece-x) * 1%);top:calc(var(--piece-y) * 1%);width:max(4.4%,42px);height:max(6.4%,42px);border-radius:50% 50% 42% 42%;background:transparent;transform:translate(-50%,-54%) scale(var(--hit-scale));transform-origin:50% 100%}.match-piece-hit:after{position:absolute;right:3%;bottom:2%;left:3%;height:24%;border-radius:50%;background:transparent;filter:blur(3px);content:"";transition:background .18s ease,box-shadow .18s ease}.match-piece-hit:hover:after,.match-piece-hit:focus-visible:after,.match-piece-hit.is-selected:after{background:radial-gradient(ellipse,rgb(255 244 198 / 58%) 0 18%,rgb(235 191 112 / 28%) 44%,transparent 76%);box-shadow:0 0 18px 8px #f1c47538}.match-piece-hit:focus-visible,.match-move-target:focus-visible{outline:2px solid rgb(255 238 184 / 88%);outline-offset:3px}.match-move-target{left:calc(var(--target-x) * 1%);top:calc(var(--target-y) * 1%);width:max(4%,40px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgb(255 246 205 / 42%) 0 10%,rgb(236 204 137 / 16%) 24%,transparent 58%),conic-gradient(from 16deg,transparent 0 8%,rgb(219 187 118 / 54%) 9% 12%,transparent 13% 30%,rgb(219 187 118 / 42%) 31% 34%,transparent 35% 58%,rgb(219 187 118 / 48%) 59% 62%,transparent 63%);filter:drop-shadow(0 0 7px rgb(255 218 142 / 48%));transform:translate(-50%,-50%) scale(var(--target-scale));animation:moveTargetBreath 1.9s ease-in-out infinite}.match-move-target:after{width:48%;aspect-ratio:1;border:1px solid rgb(255 235 180 / 58%);border-radius:50% 44% 50% 46%;box-shadow:inset 0 0 8px #ffe8ab42,0 0 10px #ffdd9447;content:""}.match-move-target.is-capture{background:radial-gradient(circle,transparent 0 28%,rgb(217 119 97 / 30%) 38%,transparent 66%),conic-gradient(from 8deg,transparent 0 7%,rgb(255 211 148 / 62%) 8% 11%,transparent 12% 25%,rgb(255 211 148 / 54%) 26% 29%,transparent 30% 55%,rgb(255 211 148 / 58%) 56% 60%,transparent 61%)}.match-piece.is-selected{filter:drop-shadow(0 0 4px rgb(255 240 193 / 72%)) drop-shadow(0 0 12px rgb(226 182 104 / 46%)) drop-shadow(2px 7px 4px rgb(12 7 4 / 72%))}@keyframes moveTargetBreath{0%,to{opacity:.62}50%{opacity:1}}.match-piece{position:absolute;left:calc(var(--piece-x) * 1%);top:calc(var(--piece-y) * 1%);width:7.6%;aspect-ratio:1 / 2;background-image:url(../scenes/chess-pieces-myst-v2.png);background-repeat:no-repeat;background-size:600% 200%;filter:drop-shadow(0 5px 4px rgb(24 12 8 / 52%));transform:translate(-50%,-94%) scale(var(--piece-scale));transform-origin:50% 100%}.match-piece.is-w{background-position-y:0%}.match-piece.is-b{background-position-y:100%}.match-piece.piece-k{background-position-x:0%}.match-piece.piece-q{background-position-x:20%}.match-piece.piece-r{background-position-x:40%}.match-piece.piece-b{background-position-x:60%}.match-piece.piece-n{background-position-x:80%}.match-piece.piece-p{background-position-x:100%}.move-ledger{display:grid;min-height:0;overflow:hidden;border:1px solid rgb(91 54 43 / 34%);border-radius:17px 7px 20px 9px;grid-template-rows:auto 1fr;color:#3c251e;background:linear-gradient(90deg,transparent 0 24px,rgb(149 71 89 / 13%) 25px 26px,transparent 27px),repeating-linear-gradient(0deg,#fff8e647 0 24px,#6e4d3a17 25px 26px),#e6cfb5d1;box-shadow:inset 0 0 24px #4c2d221a}.move-ledger header{padding:12px 13px 8px 34px;border-bottom:1px solid rgb(93 55 44 / 18%)}.move-ledger header small{display:block;color:#78554c;font-size:8px;letter-spacing:.13em}.move-ledger h3{margin:1px 0 0;font:600 24px/.95 Cormorant Garamond,serif}.move-ledger ol{min-height:0;max-height:390px;margin:0;padding:8px 8px 10px 34px;overflow:auto;list-style:none;scrollbar-color:rgb(121 76 67 / 52%) transparent;scrollbar-width:thin}.move-ledger li{display:grid;grid-template-columns:25px 1fr 1fr;gap:5px;min-height:25px;align-items:center;border-radius:7px;padding:2px 5px;font:600 13px DM Sans,sans-serif}.move-ledger li.is-current{background:#e8abc747;box-shadow:0 0 13px #e193bd2e}.move-ledger li span{color:#87655a;font-weight:500}.move-ledger li b{font-weight:600}.move-ledger .move-log-empty{display:block;padding-top:10px;color:#75554a;font:italic 600 14px Cormorant Garamond,serif}.rank-label,.file-label{position:absolute;z-index:4;color:#311b14a6;font:700 9px DM Sans,sans-serif;pointer-events:none}.rank-label{top:2px;left:3px}.file-label{right:3px;bottom:2px}.match-footer{margin-top:2px}.chess-close,.chess-reset{border:1px solid rgb(75 43 38 / 34%);color:#4e302b;background:#fff5e78c;cursor:pointer}.chess-close{flex:0 0 auto;width:42px;height:42px;border-radius:50%;font:600 24px Cormorant Garamond,serif}.chess-reset{flex:0 0 auto;padding:9px 14px;border-radius:999px;text-transform:uppercase;letter-spacing:.1em;font-size:10px}.knight-board{display:grid;width:min(56vh,560px,88vw);margin:0 auto 14px;aspect-ratio:1;grid-template-columns:repeat(8,1fr);overflow:hidden;border:8px solid #6a4538;border-radius:9px;box-shadow:0 24px 34px #391f1761,inset 0 0 0 1px #d3ad91;transform:perspective(980px) rotateX(10deg) translateY(-2px);transform-origin:center bottom}.knight-square{position:relative;display:grid;min-width:0;padding:0;border:0;place-items:center;color:#34231e}.knight-square.is-light{background:#e5c9b3}.knight-square.is-dark{background:#a67576}.knight-square:disabled{opacity:1}.knight-square.is-legal{cursor:pointer;box-shadow:inset 0 0 0 3px #fff2bd8c}.knight-square.is-legal:after{width:26%;aspect-ratio:1;border-radius:50%;background:#fff5beb8;box-shadow:0 0 15px #fff2aad1;content:""}.knight-square.is-legal:hover,.knight-square.is-legal:focus-visible{outline:3px solid #fff0a7;outline-offset:-3px;filter:brightness(1.12)}.knight-piece,.goal-leaf{position:absolute;display:grid;inset:0;place-items:center;text-shadow:0 3px 4px rgb(0 0 0 / 28%)}.knight-piece{z-index:2;color:#251713;font-size:clamp(26px,5.8vh,58px)}.goal-leaf{color:#f5df9b;font-size:clamp(22px,4.6vh,46px)}.chess-game.is-solved .knight-board{box-shadow:0 0 34px #f8de9485,0 16px 34px #391f1757}.chess-footer p{margin:0;font:italic 600 clamp(14px,1.8vw,17px) "Cormorant Garamond",serif}@keyframes arrive{0%{opacity:.2;filter:blur(8px);transform:scale(1.045)}to{opacity:1;filter:none;transform:scale(1)}}@keyframes drift{to{transform:translate(2.5%,-1.5%);opacity:.72}}@keyframes moon-breathe{to{opacity:.52;transform:scale(1.04)}}@keyframes morri-hotspot-pulse{0%,to{opacity:.24}50%{opacity:.34}}@keyframes morri-window-glint{0%,to{opacity:.25;transform:scale(.99)}50%{opacity:.46;transform:scale(1.015)}}@keyframes morri-overcast-breathe{0%{opacity:.56;transform:scale(.99)}to{opacity:.82;transform:scale(1.018)}}@keyframes morri-rain-glass{0%{background-position:0 -30px,0 -12px}to{background-position:18px 74px,-12px 92px}}@keyframes morri-storm-flash{0%,43%,45%,to{opacity:0}43.35%{opacity:.26}43.8%{opacity:.05}44.15%{opacity:.16}}@keyframes morri-insect-a{0%{transform:translate(0) translateY(0) rotate(0) scale(.78);opacity:0}20%{opacity:.68}50%{transform:translate(9vw) translateY(-1.8vh) rotate(178deg) scale(.96);opacity:.75}to{transform:translate(17vw) translateY(-4vh) rotate(356deg) scale(1);opacity:.04}}@keyframes morri-insect-b{0%{transform:translate(0) translateY(0) rotate(0) scale(.82);opacity:0}18%{opacity:.7}52%{transform:translate(-3vw) translateY(-1.4vh) rotate(-168deg) scale(.96);opacity:.74}to{transform:translate(-10vw) translateY(-3.6vh) rotate(-345deg) scale(1.01);opacity:.03}}@keyframes morri-insect-c{0%{transform:translate(0) translateY(0) rotate(0) scale(.8);opacity:0}26%{opacity:.69}53%{transform:translate(4vw) translateY(-2.4vh) rotate(172deg) scale(1.04);opacity:.76}to{transform:translate(12vw) translateY(-5.4vh) rotate(348deg) scale(.98);opacity:.03}}@keyframes morri-insect-d{0%{transform:translate(0) translateY(0) rotate(0) scale(.81);opacity:0}22%{opacity:.68}51%{transform:translate(-8vw) translateY(-1.7vh) rotate(-182deg) scale(.99);opacity:.72}to{transform:translate(-15vw) translateY(-4.3vh) rotate(-354deg) scale(1);opacity:.03}}@keyframes morri-insect-e{0%{transform:translate(0) translateY(0) rotate(0) scale(.76);opacity:0}21%{opacity:.71}55%{transform:translate(6vw) translateY(-2.1vh) rotate(165deg) scale(1.01);opacity:.73}to{transform:translate(10vw) translateY(-5.8vh) rotate(356deg) scale(1.01);opacity:.03}}@keyframes morri-crt{0%,5%,7%,67%,69%,to{opacity:.38}6%{opacity:.18}68%{opacity:.54}}.chess-game{display:block;padding:0;overflow:clip;color:#f1dfbd;background:#050706;-webkit-backdrop-filter:none;backdrop-filter:none}.chess-panel{position:relative;width:100vw;height:100svh;min-height:100vh;padding:0;overflow:clip;border:0;border-radius:0;color:inherit;background:#050706;box-shadow:none;isolation:isolate}.chess-panel:before{position:absolute;inset:-5%;z-index:-2;background:var(--match-scene) center / cover no-repeat;content:"";filter:blur(16px) brightness(.58) saturate(.88);transform:scale(1.08)}.chess-panel:after{position:absolute;inset:0;z-index:8;background:radial-gradient(ellipse at center,transparent 48%,rgb(1 4 3 / 34%) 92%),linear-gradient(180deg,rgb(2 4 3 / 22%),transparent 18%,transparent 77%,rgb(2 4 3 / 36%));content:"";pointer-events:none}.chess-heading{position:absolute;top:16px;left:20px;z-index:30;display:block;width:auto;color:#f3e4c4;text-shadow:0 3px 18px #000,0 1px 2px #000}.chess-heading small{color:#ecd8b3b8}.chess-heading h2{margin-top:4px;font-size:clamp(25px,3vw,39px)}.chess-story{display:none}.chess-close{position:fixed;top:16px;right:18px;z-index:34;width:40px;height:40px;border:1px solid rgb(230 205 157 / 45%);color:#ead7af;background:#0c0f0cb8;box-shadow:0 0 20px #0000006b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chess-modes{position:absolute;top:18px;left:50%;z-index:28;margin:0;transform:translate(-50%)}.chess-modes button,.opponent-choices button{border-color:#d3b88557;color:#dbc8a3;background:linear-gradient(180deg,#2a251cc7,#0c0f0cd6);box-shadow:inset 0 0 12px #e4c58d12,0 4px 18px #00000057;text-shadow:0 1px 2px #000;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.chess-modes button[aria-pressed=true],.opponent-choices button[aria-pressed=true]{color:#fff0c9;background:linear-gradient(180deg,#5b4930d6,#191b14e0);box-shadow:inset 0 0 15px #efcb872b,0 0 18px #e1b46a29}.full-match-panel{position:absolute;inset:0;z-index:2}.opponent-row{position:absolute;top:82px;left:20px;z-index:25;display:block;width:150px;margin:0}.opponent-choices{display:grid;gap:6px;margin:0}.opponent-choices button{width:100%;min-width:0;padding:6px 10px;border-radius:4px 13px 5px 12px}.opponent-choices button img{display:none}.opponent-choices button span{display:flex;align-items:baseline;justify-content:space-between;width:100%;gap:6px}.opponent-choices button b{color:inherit;font-size:13px;letter-spacing:.05em}.opponent-choices button small{color:#e0c99fa6;font-size:7px}.opponent-card{position:absolute;width:1px;height:1px;min-height:0;padding:0;overflow:hidden;border:0;clip-path:inset(50%)}.match-layout{position:absolute;inset:0;z-index:1;display:block;width:100%;margin:0}.match-stage{position:absolute;top:50%;left:50%;width:min(100vw,177.68svh);height:min(100svh,56.28vw);aspect-ratio:1672 / 941;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;transform:translate(-50%,-50%)}.match-scene-art{width:100%;height:100%;object-fit:fill}.full-chess-square:hover{background:#ffe2a11f}.full-chess-square.is-selected{background:radial-gradient(ellipse,rgb(255 224 153 / 42%),rgb(255 224 153 / 8%) 62%,transparent 88%);box-shadow:none}.full-chess-square.is-last-from{background:radial-gradient(ellipse,rgb(147 185 174 / 20%),transparent 80%);box-shadow:none}.full-chess-square.is-last-to{background:radial-gradient(ellipse,rgb(255 224 153 / 36%),transparent 82%);box-shadow:none}.full-chess-square.is-legal:after{width:36%;height:36%;background:radial-gradient(circle,rgb(255 238 184 / 72%),rgb(222 185 115 / 22%) 42%,transparent 74%);box-shadow:none;filter:blur(.4px)}.rank-label,.file-label{display:none}.match-piece{width:4.25%;filter:drop-shadow(-1px -1px 1px rgb(98 145 153 / 26%)) drop-shadow(2px 7px 4px rgb(12 7 4 / 72%));transform:translate(-50%,-96%) scale(var(--piece-scale))}.move-ledger{position:absolute;top:108px;right:18px;z-index:26;width:190px;max-height:230px;border:0;border-radius:7px 18px 8px 16px;color:#e9d7b3;background:linear-gradient(180deg,#11120ec7,#080a0894);box-shadow:0 12px 30px #00000047,inset 0 0 22px #d6b5780d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-mask-image:radial-gradient(ellipse at center,#000 70%,rgb(0 0 0 / 84%) 88%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 70%,rgb(0 0 0 / 84%) 88%,transparent 100%)}.move-ledger:before{opacity:.18}.move-ledger header{border-color:#dbc19324}.move-ledger header small{color:#e5cfa98a}.move-ledger h3{color:#ead9b8}.move-ledger ol{background-image:linear-gradient(rgb(230 213 179 / 10%) 1px,transparent 1px)}.move-ledger li{color:#e2cfab}.match-footer{position:absolute;right:18px;bottom:16px;left:18px;z-index:27;margin:0;color:#f0dfbd;text-shadow:0 2px 8px #000,0 1px 2px #000}.match-footer p{color:inherit}.match-command-dock{display:none}.chess-reset{border-color:#dcc2936b;color:#ead7af;background:#0a0d0ab8;box-shadow:0 4px 18px #00000059;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.knight-puzzle-panel{position:absolute;inset:72px 0 0;z-index:20;overflow:auto;padding:20px;color:#ead9b7;background:#050806d1}.collection-room,.world-collectibles{position:absolute;inset:0;z-index:5;overflow:hidden;pointer-events:none}.world-collectibles[hidden]{display:none}.world-collectible{position:absolute;left:calc(var(--wx) * 1%);top:calc(var(--wy) * 1%);width:clamp(38px,4.8vw,78px);aspect-ratio:1;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer;opacity:.56;pointer-events:auto;transform:translate(-50%,-50%) scale(var(--world-scale));transform-origin:50% 78%;filter:brightness(.73) saturate(.68) drop-shadow(0 5px 4px rgb(2 5 3 / 68%));transition:opacity .3s ease,filter .3s ease,transform .38s cubic-bezier(.2,.8,.2,1)}.world-collectible:before{position:absolute;inset:-42%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,rgb(180 217 234 / 18%) 0 12%,rgb(var(--morri-pink) / 8%) 34%,transparent 72%);content:"";opacity:0;filter:blur(12px);transition:opacity .3s ease}.world-collectible .miniature-sprite{width:100%;height:100%}.world-collectible:hover,.world-collectible:focus-visible{z-index:3;outline:none;opacity:.98;filter:brightness(.94) saturate(.88) drop-shadow(0 6px 4px rgb(2 5 3 / 72%)) drop-shadow(0 0 10px rgb(180 220 235 / 34%));transform:translate(-50%,-57%) scale(calc(var(--world-scale) * 1.14))}.world-collectible:hover:before,.world-collectible:focus-visible:before{opacity:1}.world-collectible-label{position:absolute;left:50%;bottom:-24px;width:max-content;max-width:180px;padding:4px 8px;border:1px solid rgb(202 221 206 / 18%);border-radius:999px;color:#eee6cf;background:#070e0ad1;box-shadow:0 5px 18px #00000075;font:italic 12px Cormorant Garamond,serif;opacity:0;pointer-events:none;transform:translate(-50%,5px);transition:opacity .22s ease,transform .22s ease;white-space:nowrap}.world-collectible:hover .world-collectible-label,.world-collectible:focus-visible .world-collectible-label{opacity:1;transform:translate(-50%)}.world-collectible.type-scroll,.world-collectible.type-band,.world-collectible.type-cloud{width:clamp(44px,5.8vw,92px)}.world-collectible.type-note,.world-collectible.type-trophy{width:clamp(34px,4vw,64px)}.collection-room[hidden]{display:none}.collection-displays,.collection-rewards{position:absolute;inset:0}.display-item{position:absolute;left:calc(var(--dx) * 1%);top:calc(var(--dy) * 1%);width:clamp(42px,5.2vw,84px);aspect-ratio:1;padding:0;border:0;border-radius:48% 52% 45% 55%;background:transparent;pointer-events:auto;transform:translate(-50%,-50%) rotate(var(--dr)) scale(var(--ds));transform-origin:50% 80%}.display-item.is-empty{pointer-events:none;opacity:.2}.display-item.is-empty:before,.display-item.is-empty:after{position:absolute;inset:22% 12% 8%;border:1px solid rgb(184 143 100 / 28%);border-radius:46% 52% 38% 44%;background:radial-gradient(ellipse at 48% 80%,rgb(28 19 12 / 38%),transparent 66%);box-shadow:inset 0 -3px 8px #07050357;content:"";filter:blur(.6px)}.display-item.is-empty:after{inset:auto 14% -4%;height:16%;border:0;border-radius:50%;background:#0b08057a;filter:blur(5px)}.display-item.is-collected{color:#b87c47;cursor:pointer;opacity:.86;filter:brightness(.72) saturate(.7) sepia(.1) contrast(.9) drop-shadow(0 6px 7px rgb(6 4 2 / 48%));transition:filter .28s ease,transform .36s cubic-bezier(.2,.8,.2,1);animation:collection-settle .72s cubic-bezier(.2,.9,.22,1) both}.display-item.is-collected:after{position:absolute;right:8%;bottom:1%;left:8%;height:19%;border-radius:50%;background:#05030252;content:"";filter:blur(10px);pointer-events:none}.display-item>span{position:relative;z-index:1;display:block;width:100%;height:100%}.miniature-sprite{display:block;width:100%;height:100%;background-image:url(../scenes/collection-objects-interior-v5.png);background-repeat:no-repeat;background-position:var(--sprite-x) var(--sprite-y);background-size:600% 300%;filter:drop-shadow(0 5px 5px rgb(8 5 3 / 44%))}.display-item svg{width:100%;height:100%;overflow:visible}.display-item svg .item-relief *{stroke:#362014e0;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.display-item.rarity-rare .miniature-sprite{filter:saturate(.8) drop-shadow(0 5px 5px rgb(8 5 3 / 44%))}.display-item.rarity-epic .miniature-sprite{filter:saturate(.84) drop-shadow(0 5px 5px rgb(8 5 3 / 44%))}.display-item.rarity-legendary .miniature-sprite{filter:saturate(.9) drop-shadow(0 5px 5px rgb(8 5 3 / 44%))}.display-item.is-collected:hover,.display-item.is-collected:focus-visible{z-index:3;outline:none;opacity:1;filter:brightness(.88) saturate(.8) sepia(.06) contrast(.94) drop-shadow(0 7px 7px rgb(6 4 2 / 50%)) drop-shadow(0 0 15px rgb(244 210 155 / 24%)) drop-shadow(0 0 34px rgb(255 171 216 / 9%));transform:translate(-50%,-58%) rotate(var(--dr)) scale(calc(var(--ds) * 1.18))}.display-item.type-scroll,.display-item.type-band,.display-item.type-cloud{width:clamp(48px,6vw,96px)}.display-item.type-note{width:clamp(38px,4.6vw,74px)}.display-item.type-trophy{width:clamp(35px,4.1vw,66px)}#roomScene[data-scene=secret] .collection-composite,#roomScene[data-scene=secret] .collection-displays{inset:50% auto auto 50%;width:max(100vw,177.7vh);height:max(100vh,calc(100vw / 1.777));transform:translate(-50%,-50%)}#roomScene[data-scene=secret] .collection-composite{position:absolute;z-index:1;background-image:url(../scenes/secret-collection-room-complete-v10.png);background-position:center;background-repeat:no-repeat;background-size:100% 100%;pointer-events:none;-webkit-mask-image:var(--collection-mask-desktop);mask-image:var(--collection-mask-desktop);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}#roomScene[data-scene=secret] .collection-composite[hidden]{display:none}#roomScene[data-scene=secret] .collection-displays{z-index:2}#roomScene[data-scene=secret] .display-item{left:calc(var(--dx) * 1%);top:calc(var(--dy) * 1%);width:4.5%;height:9%;aspect-ratio:auto;overflow:visible;border-radius:38%;transform:translate(-50%,-50%)}#roomScene[data-scene=secret] .display-item.type-stones,#roomScene[data-scene=secret] .display-item.type-craft{width:6%;height:10%}#roomScene[data-scene=secret] .display-item.type-scroll,#roomScene[data-scene=secret] .display-item.type-cloud{width:5%;height:10%}#roomScene[data-scene=secret] .display-item.type-band,#roomScene[data-scene=secret] .display-item.type-compass{width:2.8%;height:10%}#roomScene[data-scene=secret] .display-item.type-trophy{width:3.8%;height:9%}#roomScene[data-scene=secret] .display-item.is-collected{opacity:1;filter:none;animation:collection-hotspot-settle .72s cubic-bezier(.2,.9,.22,1) both}#roomScene[data-scene=secret] .display-item.is-collected:after{display:none}#roomScene[data-scene=secret] .display-item.is-collected:before{position:absolute;inset:8%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,rgb(245 211 165 / 12%) 0 8%,rgb(255 176 212 / 5%) 38%,transparent 76%);content:"";opacity:0;filter:blur(20px);transition:opacity .28s ease}#roomScene[data-scene=secret] .display-item.is-collected:hover,#roomScene[data-scene=secret] .display-item.is-collected:focus-visible{filter:none;transform:translate(-50%,-50%) scale(1.06)}#roomScene[data-scene=secret] .display-item.is-collected:hover:before,#roomScene[data-scene=secret] .display-item.is-collected:focus-visible:before{opacity:.72}#roomScene[data-scene=secret] .display-item>span,#roomScene[data-scene=secret] .display-item .miniature-sprite{width:100%;height:100%;opacity:0}#roomScene[data-scene=secret] .display-item.is-empty{opacity:0}#roomScene[data-scene=secret][data-collection-composite=complete] .display-item.is-collected>span,#roomScene[data-scene=secret][data-collection-composite=complete] .display-item.is-collected:after{opacity:0}.collection-progress{position:absolute;right:20px;bottom:68px;z-index:8;display:flex;min-width:146px;padding:8px 12px;border:1px solid rgb(209 178 128 / 30%);border-radius:18px 7px 16px 8px;align-items:baseline;gap:8px;color:#dbc9a5;background:#0e0d09b8;box-shadow:0 10px 28px #00000061,inset 0 0 16px #deb5740f;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.collection-progress b{color:#f4deb1;font:600 23px/1 Cormorant Garamond,serif}.collection-progress span{font-size:8px;letter-spacing:.08em;text-transform:uppercase}.room-reward{position:absolute;width:clamp(24px,2.5vw,40px);aspect-ratio:1;padding:0;border:0;border-radius:50%;background:radial-gradient(circle,rgb(244 210 148 / 26%) 0 3%,rgb(214 159 102 / 8%) 18%,rgb(214 159 102 / 3%) 42%,transparent 76%);box-shadow:0 0 28px #f0b87714;cursor:pointer;pointer-events:auto;opacity:.42;filter:blur(.8px);transition:opacity .2s ease,filter .2s ease}.room-reward:hover,.room-reward:focus-visible{opacity:.88;filter:blur(.35px) drop-shadow(0 0 15px rgb(255 219 155 / 28%));outline:none}.room-reward span{position:absolute;inset:41%;border-radius:50%;background:#d5a867ad}.room-reward.reward-0{left:24%;top:55%}.room-reward.reward-1{left:29%;top:35%}.room-reward.reward-2{left:39%;top:29%}.room-reward.reward-3{display:none}.room-reward.reward-3 span{inset:29%;border:1px solid rgb(255 228 163 / 60%);background:#ffdd8f52}.room-reward.reward-4{left:17%;top:17%}.room-reward.reward-5{left:54%;top:18%;width:clamp(36px,4vw,64px)}.room-scene[data-scene=secret][data-collection-tier=curator] .collection-room:before,.room-scene[data-scene=secret][data-collection-tier=archive] .collection-room:before,.room-scene[data-scene=secret][data-collection-tier=complete] .collection-room:before{position:absolute;left:21%;top:27%;width:19%;height:26%;border-radius:48%;background:radial-gradient(ellipse,rgb(237 194 129 / 7%) 0 14%,rgb(237 194 129 / 3%) 38%,transparent 78%);content:"";filter:blur(25px);pointer-events:none}.room-scene[data-scene=secret][data-collection-tier=complete] .collection-room:after{position:absolute;left:37%;top:13%;width:32%;height:42%;border-radius:50% 50% 42% 44%;background:radial-gradient(ellipse,transparent 34%,rgb(186 222 206 / 2%) 52%,rgb(186 222 206 / 5%) 66%,rgb(186 222 206 / 2%) 76%,transparent 92%);content:"";filter:blur(19px);pointer-events:none;animation:secret-door-breathe 5.8s ease-in-out infinite alternate}.collection-detail{width:min(520px,92vw);max-height:min(760px,88svh);padding:28px clamp(22px,5vw,42px) 34px;overflow:auto;border:1px solid rgb(224 192 139 / 46%);border-radius:36px 13px 32px 15px;color:#3a261e;background:radial-gradient(circle at 16% 18%,rgb(117 65 42 / 9%) 0 2px,transparent 3px),repeating-linear-gradient(2deg,transparent 0 31px,rgb(101 63 43 / 7%) 32px),linear-gradient(135deg,#e2c9a6,#cfae87);box-shadow:0 34px 110px #000,inset 0 0 46px #58312033}.collection-detail::backdrop{background:#020604c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collection-detail-close{position:absolute;top:12px;right:14px;width:38px;height:38px;border:1px solid rgb(76 44 34 / 35%);border-radius:50%;color:#4b3026;background:#f6e1bf8a;cursor:pointer;font-size:23px}.detail-art{display:grid;width:min(190px,46vw);margin:0 auto 13px;aspect-ratio:1;place-items:center;border-radius:50% 46% 52% 44%;background:radial-gradient(circle,rgb(255 236 188 / 48%),rgb(108 68 40 / 8%) 54%,transparent 72%);filter:drop-shadow(0 14px 8px rgb(50 29 20 / 28%))}.detail-art svg{width:78%;height:78%}.detail-art .miniature-sprite{width:88%;height:88%}.detail-art svg .item-relief *{stroke:#432b20;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.collection-detail small{display:block;color:#76503d;text-align:center;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.collection-detail h2{margin:5px 0 9px;text-align:center;font:600 clamp(30px,6vw,44px)/.95 "Cormorant Garamond",serif}.collection-detail p{margin:0 auto 18px;max-width:410px;font:italic 600 17px/1.5 Cormorant Garamond,serif}.collection-detail dl{display:grid;gap:7px;margin:0 0 18px}.collection-detail dl div{display:grid;grid-template-columns:82px 1fr;gap:8px;padding-top:7px;border-top:1px solid rgb(86 49 35 / 16%)}.collection-detail dt{color:#76503d;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.collection-detail dd{margin:0;font:600 14px Cormorant Garamond,serif}.replay-collectible{display:block;margin:0 auto;padding:10px 16px;border:1px solid rgb(76 44 34 / 38%);border-radius:18px 7px 16px 8px;color:#f0ddbc;background:linear-gradient(180deg,#5c4532,#2e261d);cursor:pointer;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.discovery-reveal{position:fixed;top:50%;left:50%;z-index:45;display:grid;width:min(290px,78vw);padding:20px 24px 22px;border:1px solid rgb(235 201 144 / 45%);border-radius:34px 12px 30px 15px;place-items:center;color:#f0dfbd;background:radial-gradient(circle at 50% 28%,#7e5330b8,#0a0f0af0 68%);box-shadow:0 24px 70px #000000b8,inset 0 0 28px #f5cf8e14;opacity:0;pointer-events:none;transform:translate(-50%,-46%) scale(.78)}.discovery-reveal.show{animation:discovery-reveal 3s cubic-bezier(.2,.8,.2,1) both}.discovery-object{width:112px;height:112px;filter:drop-shadow(0 8px 5px rgb(0 0 0 / 55%))}.discovery-object .miniature-sprite{width:100%;height:100%}.discovery-object svg{width:100%;height:100%}.discovery-object svg .item-relief *{stroke:#4e301d;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}#roomScene[data-scene=secret] #roomHotspots .hotspot-glow{fill:rgb(var(--morri-rose) / 10%);stroke:transparent;filter:blur(48px) drop-shadow(0 0 28px rgb(var(--morri-pink) / 7%))}#roomScene[data-scene=secret] #roomHotspots .hotspot-group:hover .hotspot-glow,#roomScene[data-scene=secret] #roomHotspots .hotspot-group:focus-within .hotspot-glow,.reveal-hotspots #roomScene[data-scene=secret] #roomHotspots .hotspot-glow{opacity:.11}#roomScene[data-scene=secret] #roomHotspots .hotspot-group:has(.hotspot-hit[data-id=back]) .hotspot-glow{opacity:0!important}.discovery-reveal small{color:#c8b58f;font-size:8px;letter-spacing:.2em}.discovery-reveal b{margin-top:4px;font:600 28px/1 Cormorant Garamond,serif}.discovery-reveal span{margin-top:4px;color:#c9b998;font:italic 13px Cormorant Garamond,serif}@keyframes collection-settle{0%{opacity:0;transform:translate(-50%,-90%) rotate(var(--dr)) scale(calc(var(--ds) * 1.18))}to{opacity:1}}@keyframes collection-hotspot-settle{0%{opacity:0}to{opacity:1}}@keyframes discovery-reveal{0%{opacity:0;transform:translate(-50%,-42%) scale(.72);filter:blur(8px)}12%,78%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:none}to{opacity:0;transform:translate(-50%,-60%) scale(.94);filter:blur(3px)}}@keyframes reward-jewel{0%,to{opacity:.46;filter:brightness(.9)}52%{opacity:.82;filter:brightness(1.18)}}@keyframes secret-door-breathe{to{opacity:.7;transform:scale(1.025)}}@media(max-width:760px),(orientation:portrait){.home-scene picture img{object-position:center}.forest-vignette{box-shadow:inset 0 0 20vw #00000075}.spot-door{left:27%;top:33%;width:48%;height:25%}.spot-book{left:3%;top:50%;width:37%;height:29%}.spot-comic{left:44%;top:62%;width:45%;height:18%}.spot-crystal{left:69%;top:76%;width:29%;height:22%}.softspot span{bottom:-29px;font-size:13px}.realm-label{top:15px;left:16px}.realm-label b{font-size:23px}.realm-label small{display:none}.note{left:16px;bottom:16px;max-width:64vw;font-size:15px}.return-home{right:14px;bottom:14px}.ledger{top:14px;right:58px}.room-scene[data-scene=parlor]:after{left:75%;top:19%;width:22%;height:24%}.room-scene[data-scene=crt]:after{display:none}#roomScene[data-scene=parlor] .window-atmosphere{left:27%;top:13%;width:39%;height:35%}#roomScene[data-scene=window] .window-atmosphere{left:20%;top:16%;width:60%;height:38%}.manga-pane{gap:1px;padding:6%;color:#edf6f8d6;opacity:.84}.manga-pane small,.manga-pane span{display:none}.manga-pane b{font-size:clamp(9px,2.8vw,13px);line-height:.94}.manga-pane-top b,.manga-pane-bottom b{font-size:clamp(8px,2.45vw,11px)}.manga-cabinet{padding:3vh 2vw}.manga-cabinet-shell{width:min(98vw,760px)}.manga-cabinet-title{top:7%;width:66%}.manga-cabinet-title small{display:none}.manga-cabinet-title h2{font-size:clamp(14px,4.5vw,22px)}.manga-cabinet-close{top:7%;right:6%;width:32px;height:32px;font-size:21px}.manga-shelf-links{inset:21% 17.5% 24% 19%}.manga-shelf-links a{padding:5%;opacity:.86}.manga-shelf-links b{font-size:clamp(7px,2.3vw,12px)}.manga-shelf-links span{display:none}.chess-game{padding:0}.chess-panel{width:100vw;max-width:none;height:100svh;min-height:100vh;padding:0;border-radius:0}.chess-story{margin:8px 0 12px}.chess-modes,.chess-puzzles,.opponent-choices{gap:5px;margin-bottom:8px}.chess-modes button,.chess-puzzles button,.opponent-choices button{padding:6px 9px;font-size:12px}.chess-heading{top:12px;left:12px}.chess-heading small{display:none}.chess-heading h2{font-size:22px}.chess-close{top:10px;right:10px;width:36px;height:36px}.chess-modes{top:50px;width:max-content}.chess-modes button{min-width:96px;padding-inline:9px}.opponent-row{top:88px;right:10px;left:10px;width:auto;margin:0}.opponent-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch}.opponent-choices button{min-width:0;justify-content:center;padding-inline:5px}.opponent-card{min-height:62px;margin-bottom:7px;padding-left:8px}.opponent-card em{display:none}.opponent-portrait{width:58px;height:58px;border-radius:13px 6px 15px 7px}.opponent-choices button img{width:28px;height:28px}.opponent-choices button b{font-size:12px}.opponent-choices button small{font-size:8px}.match-layout{display:block;width:100%;margin:0}.match-stage{top:49%;width:148vw;height:83.27vw;border-radius:0}.match-piece{width:4.5%}.move-ledger{top:auto;right:10px;bottom:116px;width:min(46vw,180px);max-height:104px;margin:0}.move-ledger header{padding:7px 9px 5px 28px}.move-ledger h3{font-size:19px}.move-ledger ol{max-height:74px;padding:5px 7px 7px 28px}.move-ledger li{min-height:22px;font-size:12px}.knight-board{width:min(88vw,48vh);border-width:6px;transform:perspective(780px) rotateX(8deg)}.chess-footer{right:10px;bottom:10px;left:10px;flex-wrap:nowrap;align-items:center;gap:8px}.chess-footer p{max-width:65vw;font-size:12px}.chess-reset{padding:7px 9px;font-size:8px}.match-command-dock{position:absolute;right:0;bottom:43px;left:0;display:flex;gap:5px;padding:5px 4px 7px;overflow-x:auto;border-radius:18px 8px 16px 7px;background:linear-gradient(90deg,#070a07b8,#1c140da8,#070a07b8);box-shadow:0 8px 24px #00000057,inset 0 0 18px #e7c6820d;scrollbar-width:none;-webkit-mask-image:radial-gradient(ellipse at center,#000 78%,transparent 100%);mask-image:radial-gradient(ellipse at center,#000 78%,transparent 100%)}.match-command-dock::-webkit-scrollbar{display:none}.match-command-dock button{display:grid;min-width:46px;height:46px;padding:3px 5px 4px;border:1px solid rgb(224 194 137 / 30%);border-radius:14px 6px 13px 7px;place-items:center;color:#f1ddb5;background:radial-gradient(ellipse,#5b4528b8,#0d0f0be0);box-shadow:inset 0 0 12px #f0d3980f;text-shadow:0 2px 4px #000;scroll-snap-align:center}.match-command-dock button b{font:24px/1 Georgia,serif}.match-command-dock button small{color:#efdab0d1;font:8px/1.05 Georgia,serif;letter-spacing:.08em}.match-command-dock .dock-move{min-width:64px;color:#fff0bd;background:radial-gradient(ellipse,#836534d1,#16130ceb);box-shadow:0 0 14px #e8bf6d33,inset 0 0 14px #ffe6af14}.match-command-dock .dock-move.is-capture{color:#ffd2ba;background:radial-gradient(ellipse,#824335cc,#180e0ceb)}.match-command-dock .dock-cancel{min-width:58px;opacity:.72}.display-item{left:calc(var(--mx) * 1%);top:calc(var(--my) * 1%);width:clamp(46px,12vw,78px);transform:translate(-50%,-50%) rotate(var(--mr)) scale(var(--ms))}.world-collectible{width:clamp(36px,9vw,64px);opacity:.6}.world-collectible.type-scroll,.world-collectible.type-band,.world-collectible.type-cloud{width:clamp(42px,11vw,74px)}.world-collectible-label{bottom:-21px;max-width:150px;font-size:11px}.display-item.type-scroll,.display-item.type-band,.display-item.type-cloud{width:clamp(44px,11vw,76px)}.display-item.type-note,.display-item.type-trophy{width:clamp(32px,7.8vw,54px)}#roomScene[data-scene=secret] .collection-composite,#roomScene[data-scene=secret] .collection-displays{width:max(100vw,56.3vh);height:max(100vh,calc(100vw / .563))}#roomScene[data-scene=secret] .collection-composite{background-image:url(../scenes/secret-collection-room-mobile-complete-v10.png);-webkit-mask-image:var(--collection-mask-mobile);mask-image:var(--collection-mask-mobile)}#roomScene[data-scene=secret] .display-item{left:calc(var(--mx) * 1%);top:calc(var(--my) * 1%);width:10%;height:6%;transform:translate(-50%,-50%)}#roomScene[data-scene=secret] .display-item.type-stones,#roomScene[data-scene=secret] .display-item.type-craft{width:14%;height:7%}#roomScene[data-scene=secret] .display-item.type-scroll,#roomScene[data-scene=secret] .display-item.type-cloud{width:12%;height:7%}#roomScene[data-scene=secret] .display-item.type-band,#roomScene[data-scene=secret] .display-item.type-compass{width:8%;height:7%}#roomScene[data-scene=secret] .display-item.type-trophy{width:8%;height:6%}.display-item.is-collected:hover,.display-item.is-collected:focus-visible{transform:translate(-50%,-58%) rotate(var(--mr)) scale(calc(var(--ms) * 1.15))}#roomScene[data-scene=secret] .display-item.is-collected:hover,#roomScene[data-scene=secret] .display-item.is-collected:focus-visible{transform:translate(-50%,-50%) scale(1.06)}.collection-progress{right:12px;bottom:58px;min-width:130px;padding:7px 10px}.collection-progress b{font-size:20px}.room-reward.reward-0{left:24%;top:54%}.room-reward.reward-1{left:18%;top:47%}.room-reward.reward-2{left:36%;top:43%}.room-reward.reward-3{display:none}.room-reward.reward-4{left:17%;top:17%}.room-reward.reward-5{left:52%;top:20%}.room-scene[data-scene=secret][data-collection-tier=complete] .collection-room:after{left:33%;top:16%;width:37%;height:37%}.collection-detail{max-height:84svh;padding:22px 18px 28px;border-radius:28px 9px 25px 11px}.detail-art{width:min(150px,42vw)}.collection-detail h2{font-size:31px}.collection-detail p{font-size:16px}.realm:has(#roomScene[data-scene=secret]:not([hidden])) .note{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
