@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/heebo-hebrew.woff2) format("woff2")}:root{font-family:Heebo,Arial,sans-serif;color:#fff1cf;background:#03100f;color-scheme:dark;touch-action:manipulation}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#03100f}button{font:inherit}.mirror-app{width:100%;height:100%;height:100dvh;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:radial-gradient(circle at 50% 35%,#183a37,#03100f 75%)}.mirror-shell{position:relative;width:100%;height:100%;max-width:1600px;margin:auto;isolation:isolate;overflow:hidden;border:2px solid #a98148;border-radius:clamp(12px,2vw,24px);background:#071817;box-shadow:0 20px 70px #000c,inset 0 0 45px #0009}.mirror-room-art,.mirror-room-art img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.mirror-room-art img{object-fit:cover;object-position:center}.mirror-room-art,.mirror-selection-art{transition:opacity .2s ease-out}.mirror-art-arriving{opacity:0}.mirror-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(#04120d42,#03131110 45%,#030a0ce6),radial-gradient(ellipse at center,transparent 45%,#0209099e 100%);pointer-events:none}.mirror-heading{position:absolute;z-index:8;inset:clamp(10px,2vw,24px) clamp(12px,2vw,28px) auto;display:flex;align-items:start;justify-content:space-between;gap:10px;text-shadow:0 2px 8px #000}.mirror-heading small{display:block;color:#a9e3d2;font-size:clamp(11px,1.5vw,16px);font-weight:700;letter-spacing:.08em}.mirror-heading h1{margin:0;color:#ffe2a2;font-size:clamp(23px,3.8vw,48px);line-height:1;text-shadow:0 3px 0 #5d3b22,0 0 25px #ffe08955}.mirror-heading-actions{display:flex;align-items:center;gap:8px;direction:ltr}.mirror-heading-status{padding:5px 10px;border:1px solid #d0b26a;border-radius:999px;background:#0b201bd9;color:#f5dc9e;font-size:clamp(10px,1.2vw,13px);font-weight:700;direction:rtl}.mirror-bag-button{position:relative;display:grid;place-items:center;width:46px;height:46px;padding:5px;border:1px solid #d0b26a;border-radius:14px;background:#0b201be8;box-shadow:0 5px 13px #0008;cursor:pointer}.mirror-bag-button img{width:31px;height:31px;object-fit:contain;filter:drop-shadow(0 2px 3px #0008)}.mirror-bag-button bdi{position:absolute;right:-5px;bottom:-5px;display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border:2px solid #142820;border-radius:999px;background:#806d4a;color:#fff4cf;font-size:11px;font-weight:900;line-height:1}.mirror-bag-button.has-items{border-color:#9dece0;box-shadow:0 0 14px #64e9d980,0 5px 13px #0008}.mirror-bag-button.has-items bdi{background:#2b8f78}.mirror-bag-button:hover,.mirror-bag-button:focus-visible{filter:brightness(1.12);outline:3px solid #ffe7a6;outline-offset:2px}.mirror-progress{position:absolute;z-index:8;top:clamp(64px,9vw,95px);right:clamp(15px,2.4vw,34px);display:flex;gap:6px;direction:rtl}.mirror-progress i{width:22px;height:5px;border-radius:99px;background:#c3ae7b59;box-shadow:0 1px 4px #000}.mirror-progress i.done{background:#82d9c0}.mirror-progress i.current{background:#ffe293;box-shadow:0 0 10px #ffe18a}.mirror-portal{position:absolute;z-index:3;left:50%;top:42%;width:min(24vw,250px);aspect-ratio:.69;transform:translate(-50%,-50%);border:0;border-radius:47%;background:radial-gradient(ellipse,#ebffff4d 0 22%,#7ee9e138 45%,transparent 71%);opacity:.18;pointer-events:none;transition:opacity .8s,filter .8s,transform .8s}.mirror-portal span{position:absolute;top:7%;right:7%;bottom:7%;left:7%;border-radius:48%;background:radial-gradient(ellipse at 50% 40%,#faffffe6,#76e8e19c 34%,#1769689e 58%,transparent 72%);filter:blur(3px);animation:mirror-breathe 2.4s ease-in-out infinite}.mirror-awake .mirror-portal{opacity:.72;filter:drop-shadow(0 0 24px #88f8e5);pointer-events:auto;cursor:pointer}.mirror-awake .mirror-portal:hover,.mirror-awake .mirror-portal:focus-visible{opacity:1;transform:translate(-50%,-50%) scale(1.035);outline:3px solid #ffe69a;outline-offset:4px}.mirror-motes{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;pointer-events:none}.mirror-motes i{position:absolute;right:var(--mote-x);top:var(--mote-y);width:4px;height:4px;border-radius:50%;background:#c8fff1;box-shadow:0 0 9px #8dffe7;opacity:.1;animation:mirror-mote calc(4s + var(--mote)*.23s) ease-in-out infinite}.mirror-dialogue{position:absolute;z-index:10;right:clamp(10px,3vw,46px);left:clamp(10px,3vw,46px);bottom:clamp(10px,2.8vh,30px);min-height:clamp(150px,26vh,250px);display:grid;grid-template-columns:minmax(130px,20%) minmax(0,1fr) auto;align-items:center;gap:clamp(10px,2vw,24px);padding:clamp(10px,1.8vw,20px);border:2px solid #c6a35f;border-radius:20px 20px 6px;background:linear-gradient(118deg,#0d2723f5,#13241ff0 60%,#302317ed);box-shadow:0 13px 32px #000b,inset 0 0 28px #b6e7d110;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mirror-dialogue:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid #efd89742;border-radius:15px 15px 4px;pointer-events:none}.mirror-portrait{position:relative;z-index:1;display:grid;place-items:center;min-width:0;align-self:stretch;overflow:hidden}.mirror-portrait-image{width:100%;height:100%;max-height:210px;object-fit:contain;filter:drop-shadow(0 8px 8px #0009)}.mirror-portrait-video{position:relative;display:block;width:min(100%,220px);aspect-ratio:1;overflow:hidden;border-radius:50%;pointer-events:none;filter:drop-shadow(0 8px 10px #000a)}.mirror-portrait-video video,.mirror-portrait-video img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.mirror-portrait-video video{object-fit:cover;transform:scale(1.035)}.mirror-portrait-video img{z-index:2;object-fit:contain}.mirror-narrator-mark{display:grid;place-items:center;width:100%;height:100%;color:#ffe5a1;font-size:clamp(70px,9vw,130px);text-shadow:0 0 20px #a7fff1,0 4px #69461e;animation:mirror-breathe 2.4s ease-in-out infinite}.mirror-copy{position:relative;z-index:1;min-width:0;align-self:center}.mirror-copy strong{display:block;margin-bottom:4px;color:#9ce4d1;font-size:clamp(15px,1.6vw,21px)}.mirror-copy p{max-width:900px;margin:0;color:#fff1cf;font-size:clamp(18px,2.15vw,30px);font-weight:550;line-height:1.48;text-wrap:pretty;text-shadow:0 2px 3px #000}.mirror-copy small{display:block;min-height:1.25em;margin-top:6px;color:#b7c6b8;font-size:clamp(9px,1vw,12px);line-height:1.3}.mirror-next,.mirror-transition button{position:relative;z-index:1;min-width:clamp(128px,14vw,190px);min-height:52px;padding:8px 16px;border:2px solid #e2bd6f;border-bottom-width:5px;border-radius:13px;background:linear-gradient(#fff0bc,#d8a85e);color:#3a2819;font-weight:900;box-shadow:inset 0 0 0 2px #fff6cf80,0 5px 10px #0008;cursor:pointer}.mirror-next:hover,.mirror-next:focus-visible,.mirror-transition button:hover,.mirror-transition button:focus-visible{filter:brightness(1.09);transform:translateY(-1px);outline:3px solid #a6efdd;outline-offset:3px}.mirror-dialogue-menu{grid-template-rows:auto auto;align-content:start}.mirror-menu{position:relative;z-index:1;grid-column:1/-1;display:flex;flex-direction:column;gap:8px;width:100%}.mirror-menu-option{position:relative;min-height:48px;padding:8px 20px;border:2px solid #e2bd6f;border-bottom-width:4px;border-radius:13px;background:linear-gradient(#fff0bc,#d8a85e);color:#3a2819;font-weight:800;font-size:clamp(14px,1.5vw,18px);line-height:1.25;text-align:center;cursor:pointer}.mirror-menu-option:hover,.mirror-menu-option:focus-visible{filter:brightness(1.09);transform:translateY(-1px);outline:3px solid #a6efdd;outline-offset:2px}.mirror-restart{position:absolute;z-index:11;left:clamp(12px,2vw,25px);top:calc(clamp(10px,2vw,24px) + 56px);display:grid;place-items:center;width:42px;height:42px;border:1px solid #c5a766;border-radius:50%;background:#0b211dcc;color:#ffe5a3;font-size:23px;cursor:pointer}.mirror-room-explore .mirror-vignette{background:linear-gradient(#04120d35,#03131100 52%,#030a0c90),radial-gradient(ellipse at center,transparent 55%,#02090972 100%)}.mirror-room-hitmap{position:absolute;z-index:7;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.mirror-room-hitmap-phone{display:none}.image-hotspot-target{outline:0;cursor:pointer;pointer-events:auto}.image-hotspot-shape{fill:transparent;stroke:transparent;stroke-width:18;vector-effect:non-scaling-stroke;pointer-events:all}.image-hotspot-target:focus-visible .image-hotspot-shape{fill:#7ce9d30d;stroke:#a6efdd;stroke-width:3}.mirror-inventory-overlay{position:absolute;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:clamp(10px,3vw,36px);background:#020907c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mirror-inventory-card{width:min(560px,100%);max-height:100%;overflow:auto;padding:clamp(14px,2.5vw,24px);border:2px solid #cba85f;border-radius:22px 22px 7px;background:linear-gradient(145deg,#102a25,#14231f 62%,#342517);box-shadow:0 22px 70px #000e,inset 0 0 34px #b6e7d112}.mirror-inventory-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid #e6c77f42}.mirror-inventory-card header small{display:block;color:#9ce4d1;font-weight:750}.mirror-inventory-card h2{margin:0;color:#ffe2a2;font-size:32px;line-height:1}.mirror-inventory-card header button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #cba85f;border-radius:50%;background:#071715;color:#ffe7ae;font-size:28px;cursor:pointer}.mirror-inventory-item{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:14px;width:100%;margin:16px 0;padding:12px;border:1px solid #85d9c970;border-radius:16px;background:#0a1b18c7;color:inherit;font:inherit;text-align:right}.mirror-inventory-item:not(:disabled){cursor:pointer}.mirror-inventory-item:not(:disabled):hover,.mirror-inventory-item:not(:disabled):focus-visible{border-color:#c9fff3;box-shadow:0 0 0 3px #72e4d43b,0 8px 20px #0007;outline:0}.mirror-inventory-item.held{border-color:#d9ffff;box-shadow:inset 0 0 24px #69d8ef3b,0 0 18px #69d8ef66}.mirror-inventory-item:disabled{opacity:1}.mirror-inventory-item img{width:88px;height:76px;object-fit:contain;filter:drop-shadow(0 0 9px #5ee9e2)}.mirror-inventory-item strong,.mirror-inventory-empty strong,.mirror-installed-status strong,.mirror-future-equipment>strong{display:block;color:#ffe1a0;font-size:19px}.mirror-inventory-item p,.mirror-inventory-empty p,.mirror-installed-status p{margin:2px 0;color:#e9e4cf;line-height:1.4}.mirror-inventory-item small{color:#99dfce;font-weight:750}.mirror-inventory-empty{display:grid;justify-items:center;gap:3px;margin:16px 0;padding:18px;border:1px dashed #b9a66d66;border-radius:16px;text-align:center;background:#081713a8}.mirror-inventory-empty>span{color:#879b93;font-size:42px}.mirror-installed-status{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:13px;background:#07161399}.mirror-installed-status>span{color:#76e4da;font-size:29px}.mirror-future-equipment{margin-top:14px;padding:12px;border:1px solid #8e7a5252;border-radius:14px;opacity:.62}.mirror-future-equipment>div{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:9px}.mirror-future-equipment span{display:grid;justify-items:center;gap:2px;padding:7px 3px;border-radius:9px;background:#050e0c;color:#cbbf9d;font-size:11px}.mirror-future-equipment i{font-style:normal;font-size:23px;color:#776e58}.mirror-transition{position:absolute;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;background:radial-gradient(circle at center,#74dfd6aa,#09201be8 34%,#020808fa 75%);text-align:center;opacity:0;visibility:hidden;transform:scale(1.08);transition:opacity .75s,transform .75s,visibility 0s .75s}.mirror-transition span{color:#c8fff0;font-size:clamp(15px,2vw,22px)}.mirror-transition strong{max-width:620px;color:#ffe4a2;font-size:clamp(28px,5vw,62px);line-height:1.12;text-shadow:0 4px #5d3a20,0 0 25px #fff2a966}.mirror-entered .mirror-transition{opacity:1;visibility:visible;transform:none;transition-delay:0s}.mirror-entered .mirror-portal{opacity:1;transform:translate(-50%,-50%) scale(1.5);filter:blur(4px) drop-shadow(0 0 40px #aaffee)}.mirror-selection-art,.mirror-selection-art img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.mirror-selection-art{background:radial-gradient(ellipse at center,#17322f,#030b0b 76%)}.mirror-selection-art img{object-fit:contain;object-position:center}.mirror-selection-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(#02090a38,#02090a00 62%,#02090acc),radial-gradient(ellipse at center,transparent 52%,#0208097f);pointer-events:none}.mirror-main-surface{position:absolute;z-index:2;left:50%;top:49.5%;width:34.2%;height:70%;overflow:hidden;padding:0;transform:translate(-50%,-50%);border:0;border-radius:48%;background:#061312;box-shadow:inset 0 0 42px #000,0 0 18px #000a;cursor:pointer;isolation:isolate;transition:box-shadow .55s,filter .55s}.mirror-main-surface:focus-visible{outline:3px solid #e8fff9;outline-offset:-8px}.mirror-reflection-layer,.mirror-reflection-layer picture,.mirror-reflection-layer picture img,.mirror-world-layer,.mirror-glass-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.mirror-reflection-layer{display:block;background:#061312;transition:opacity .7s ease}.mirror-reflection-layer picture img{object-fit:cover;object-position:center;transform:scale(1.24);filter:saturate(.48) brightness(.56) contrast(.9) hue-rotate(12deg)}.mirror-reflection-layer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,#dfffff2b 0 17%,transparent 31% 69%,#071f2555),radial-gradient(ellipse at 50% 45%,transparent 20%,#02101487 86%);mix-blend-mode:screen;pointer-events:none}.mirror-world-layer{z-index:2;object-fit:cover;object-position:center;animation:mirror-world-reveal .8s ease both}.mirror-glass-layer{z-index:3;background:linear-gradient(112deg,#eaffff35 0 8%,transparent 22% 64%,#8cffff20 82%,transparent),radial-gradient(ellipse at center,transparent 52%,color-mix(in srgb,var(--active-world) 28%,#06211f) 100%);box-shadow:inset 0 0 34px #baffff45;pointer-events:none}.mirror-has-world .mirror-main-surface{box-shadow:inset 0 0 30px color-mix(in srgb,var(--active-world) 72%,transparent),0 0 30px color-mix(in srgb,var(--active-world) 58%,transparent);filter:saturate(1.12)}.mirror-has-world .mirror-reflection-layer{opacity:0}.mirror-socket{--mirror-gem-default-size:145%;--mirror-gem-default-x:0%;--mirror-gem-default-y:0%;position:absolute;z-index:7;left:var(--desktop-x);top:var(--desktop-y);display:grid;place-items:center;width:clamp(58px,5.2vw,88px);aspect-ratio:1;overflow:visible;padding:0;transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;box-shadow:none;cursor:pointer}.mirror-socket:disabled{cursor:default}.mirror-socket:not(:disabled):focus-visible{outline:3px solid #eaffff;outline-offset:3px}.mirror-socket img{width:var(--mirror-gem-size,var(--mirror-gem-default-size));height:var(--mirror-gem-size,var(--mirror-gem-default-size));object-fit:contain;transform:translate(var(--mirror-gem-x,var(--mirror-gem-default-x)),var(--mirror-gem-y,var(--mirror-gem-default-y)));filter:drop-shadow(0 0 2px #d9ffffb8) drop-shadow(0 0 6px var(--world-color));animation:mirror-gem-pulse 1.8s ease-in-out infinite}.mirror-socket.rejected{animation:mirror-socket-reject .42s ease}.mirror-held-gem{position:absolute;z-index:18;width:clamp(48px,5.3vw,82px);height:clamp(48px,5.3vw,82px);object-fit:contain;transform:translate(-50%,-50%);pointer-events:none;filter:drop-shadow(0 0 8px #fff) drop-shadow(0 0 20px #69d8ef);transition:left .04s linear,top .04s linear;animation:mirror-held-float 1.4s ease-in-out infinite}.mirror-held-gem.rejected{animation:mirror-held-reject .42s ease}.mirror-selection-panel{position:absolute;z-index:12;right:auto;left:50%;bottom:clamp(10px,2.5vh,24px);width:min(520px,calc(100% - 20px));min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:clamp(10px,1.8vw,22px);padding:clamp(10px,1.5vw,17px);transform:translate(-50%);border:2px solid #c6a35f;border-radius:18px 18px 6px;background:linear-gradient(118deg,#0b231ff5,#11231ff2 62%,#302317ed);box-shadow:0 13px 32px #000c,inset 0 0 28px #b6e7d110;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mirror-selection-blocked{width:min(460px,calc(100% - 20px))}.mirror-selection-panel strong{display:block;color:#ffe2a2;font-size:clamp(18px,2vw,28px)}.mirror-selection-shell .mirror-transition{background:radial-gradient(circle at center,color-mix(in srgb,var(--active-world) 65%,transparent),#09201be8 36%,#020808fa 75%)}@keyframes mirror-world-reveal{0%{opacity:0;transform:scale(1.08);filter:blur(8px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes mirror-gem-pulse{0%,to{transform:translate(var(--mirror-gem-x,var(--mirror-gem-default-x)),var(--mirror-gem-y,var(--mirror-gem-default-y))) scale(1)}50%{transform:translate(var(--mirror-gem-x,var(--mirror-gem-default-x)),var(--mirror-gem-y,var(--mirror-gem-default-y))) scale(1.07);filter:drop-shadow(0 0 12px #fff) drop-shadow(0 0 26px var(--world-color))}}@keyframes mirror-held-float{50%{transform:translate(-50%,-55%) scale(1.04)}}@keyframes mirror-socket-reject{25%{transform:translate(-57%,-50%)}55%{transform:translate(-43%,-50%)}75%{transform:translate(-54%,-50%)}}@keyframes mirror-held-reject{25%{transform:translate(-62%,-50%) rotate(-7deg)}60%{transform:translate(-38%,-50%) rotate(7deg)}}@keyframes mirror-breathe{50%{transform:scale(1.035);filter:brightness(1.12)}}@keyframes mirror-mote{0%,to{opacity:.08;transform:translateY(20px)}50%{opacity:.65;transform:translateY(-24px)}}@media(max-width:700px){.mirror-app{padding:0}.mirror-shell{border:0;border-radius:0}.mirror-room-art img{object-position:center top}.mirror-heading{top:max(10px,env(safe-area-inset-top));right:12px;left:12px}.mirror-heading-status{display:none}.mirror-heading h1{font-size:25px}.mirror-heading small{font-size:10px}.mirror-bag-button{width:42px;height:42px;border-radius:12px}.mirror-bag-button img{width:28px;height:28px}.mirror-progress{top:max(67px,calc(env(safe-area-inset-top) + 56px));right:14px}.mirror-progress i{width:17px;height:4px}.mirror-restart{left:12px;top:max(62px,calc(env(safe-area-inset-top) + 52px));width:36px;height:36px}.mirror-portal{top:34%;width:43vw;max-width:175px}.mirror-dialogue{right:8px;left:8px;bottom:max(8px,env(safe-area-inset-bottom));min-height:0;grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto auto;gap:7px 10px;padding:9px;border-radius:16px 16px 5px}.mirror-portrait{grid-row:1}.mirror-portrait-image{height:95px}.mirror-portrait-video{width:88px}.mirror-narrator-mark{height:86px;font-size:64px}.mirror-copy{align-self:center}.mirror-copy strong{font-size:13px}.mirror-copy p{font-size:clamp(15px,4.45vw,19px);line-height:1.36}.mirror-copy small{font-size:8px;margin-top:3px}.mirror-next{grid-column:1/-1;width:100%;min-height:45px;font-size:16px;border-bottom-width:4px}.mirror-menu-option{min-height:46px;font-size:15px}.mirror-dialogue-writer{grid-template-columns:82px minmax(0,1fr)}.mirror-dialogue-writer .mirror-portrait-video{width:80px}.mirror-dialogue-writer .mirror-copy p{font-size:clamp(13px,3.6vw,16px);line-height:1.28}.mirror-selection-art img{object-position:center}.mirror-main-surface{left:50%;top:49.5%;width:51%;height:49%}.mirror-socket{--mirror-gem-default-size:145%;--mirror-gem-default-x:0%;--mirror-gem-default-y:-1%;left:var(--phone-x);top:var(--phone-y);width:clamp(48px,13vw,60px)}.mirror-held-gem{width:58px;height:58px}.mirror-selection-panel{bottom:max(7px,env(safe-area-inset-bottom));min-height:0;gap:8px;padding:8px 10px;border-radius:15px 15px 5px}.mirror-selection-panel strong{font-size:16px}.mirror-selection-panel .mirror-next{width:auto;min-width:118px;min-height:42px;font-size:14px}.mirror-inventory-overlay{padding:8px}.mirror-inventory-card{border-radius:17px 17px 5px;padding:13px}.mirror-inventory-card h2{font-size:27px}.mirror-inventory-item{grid-template-columns:74px 1fr;gap:9px}.mirror-inventory-item img{width:72px;height:65px}.mirror-inventory-item strong,.mirror-inventory-empty strong,.mirror-installed-status strong,.mirror-future-equipment>strong{font-size:16px}}@media(max-aspect-ratio:3/4){.mirror-room-art img{object-position:center top}.mirror-room-hitmap-desktop{display:none}.mirror-room-hitmap-phone{display:block}}@media(max-height:620px)and (orientation:landscape){.mirror-heading h1{font-size:22px}.mirror-heading-status{font-size:9px}.mirror-progress{top:55px}.mirror-portal{top:40%;width:20vw;max-width:135px}.mirror-dialogue{right:12px;left:12px;bottom:7px;min-height:118px;grid-template-columns:100px minmax(0,1fr) 150px;padding:8px 11px;gap:10px}.mirror-portrait-image,.mirror-portrait-video{height:100px;width:100px}.mirror-copy p{font-size:15px;line-height:1.3}.mirror-copy small{font-size:8px}.mirror-next{min-width:140px;min-height:44px}.mirror-narrator-mark{font-size:64px}.mirror-dialogue-menu{grid-template-columns:70px minmax(0,1fr)}.mirror-dialogue-menu .mirror-portrait-image,.mirror-dialogue-menu .mirror-portrait-video{height:70px;width:70px}.mirror-menu{flex-direction:row;flex-wrap:wrap}.mirror-menu-option{min-height:34px;padding:5px 12px;font-size:12px;flex:1 1 auto}.mirror-selection-panel{bottom:6px;min-height:64px;padding:7px 10px}.mirror-selection-panel .mirror-next{min-height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.mirror-motes{display:none}}.mirror-gem-calibrator{position:fixed;z-index:2000;left:12px;bottom:96px;width:min(286px,calc(100% - 24px));padding:11px;border:2px solid #9dece0;border-radius:16px;background:#071b18f2;color:#fff1cf;box-shadow:0 12px 32px #000c;font:700 13px/1.2 Heebo,Arial,sans-serif;direction:rtl}.mirror-gem-calibrator header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.mirror-gem-calibrator strong{color:#ffe2a2;font-size:16px}.mirror-gem-calibrator [data-gem-profile]{padding:3px 7px;border:1px solid #7fdccb;border-radius:999px;color:#9dece0;font-size:11px}.mirror-gem-calibrator small{display:block;margin-bottom:8px;color:#b9d8d0;font-weight:600}.mirror-gem-calibrator label{display:grid;grid-template-columns:48px minmax(0,1fr) 50px;align-items:center;gap:7px;margin:6px 0}.mirror-gem-calibrator input{width:100%;accent-color:#5de0ca}.mirror-gem-calibrator output{direction:ltr;text-align:left;color:#9dece0;font-variant-numeric:tabular-nums}.mirror-gem-calibrator button{min-height:32px;padding:4px 10px;border:1px solid #d0b26a;border-radius:9px;background:#17332d;color:#ffe6ab;font:inherit;cursor:pointer}.mirror-gem-calibrator code{display:block;margin-top:7px;color:#86f0dc;direction:ltr;text-align:center;font-size:11px}.mirror-gem-calibration-active .mirror-socket{z-index:1000}.mirror-gem-calibration-active .mirror-socket img{animation:none;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.mirror-gem-calibration-active .mirror-socket img:active{cursor:grabbing}@media(max-width:600px){.mirror-gem-calibrator{left:50%;bottom:8px;width:min(304px,calc(100% - 16px));padding:8px;transform:translate(-50%);font-size:12px}.mirror-gem-calibrator header{margin-bottom:4px}.mirror-gem-calibrator small{margin-bottom:4px}.mirror-gem-calibrator label{margin:3px 0}}.mirror-socket.completed:before{content:"";position:absolute;top:-22%;right:-22%;bottom:-22%;left:-22%;z-index:-1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--world-color) 55%,transparent) 0,color-mix(in srgb,var(--world-color) 22%,transparent) 42%,transparent 70%);animation:mirror-world-done 3.2s ease-in-out infinite;pointer-events:none}@keyframes mirror-world-done{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.mirror-selection-quiet{justify-content:center;flex-direction:column;align-items:center;gap:4px;text-align:center}.mirror-selection-quiet p{margin:0;color:#cfe8e2;font-size:clamp(14px,1.5vw,18px);line-height:1.35}.mirror-arrival{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;pointer-events:none;background:radial-gradient(circle at 50% 48%,#f2fffbf2 0,#9fe9dccc 22%,#1d5a57a8 52%,#071817 78%);animation:mirror-arrival 1.1s ease-out forwards}@keyframes mirror-arrival{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}.mirror-dialogue:is([data-cue=look-up],[data-cue=stops-writing],[data-cue=notices-stone],[data-cue=looks-around]) .mirror-portrait-video{animation:mirror-writer-up .55s ease-out both}.mirror-dialogue:is([data-cue=back-to-page],[data-cue=frown]) .mirror-portrait-video{animation:mirror-writer-down .55s ease-out both}@keyframes mirror-writer-up{0%{transform:translateY(5px)}to{transform:none}}@keyframes mirror-writer-down{0%{transform:translateY(-4px)}to{transform:none}}@media(prefers-reduced-motion:reduce){.mirror-dialogue[data-cue] .mirror-portrait-video{animation:none}.mirror-socket.completed:before{animation:none;opacity:.8}.mirror-arrival{animation:mirror-arrival-calm .3s ease-out forwards}@keyframes mirror-arrival-calm{0%{opacity:1}to{opacity:0}}}.mirror-writer-clip{position:absolute;z-index:0;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(transparent,#000 4%,#000 96%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(transparent,#000 4%,#000 96%,transparent);mask-composite:intersect}.mirror-writer-clip video{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;object-fit:fill;opacity:0;pointer-events:none;transition:opacity .24s linear}.mirror-writer-clip video.is-on{opacity:1}.mirror-writer-clip video.is-top{z-index:2}.mirror-writer-clip video.is-cut{transition:none}.mirror-inventory-item.is-page img{height:104px;filter:drop-shadow(0 0 10px #ffcf6acc)}.mirror-selection-shell{container-type:size;--mirror-art-px:min(calc(100cqw / 1672),calc(100cqh / 940))}@media(max-aspect-ratio:3/4){.mirror-selection-shell{--mirror-art-px:min(calc(100cqw / 941),calc(100cqh / 1672))}}.mirror-socket{--mirror-gem-frame:100;--mirror-gem-default-scale:1;--mirror-gem-default-x:0%;--mirror-gem-default-y:0%}.mirror-socket picture{display:contents}.mirror-socket img{position:absolute;left:50%;top:50%;width:calc(var(--mirror-art-px) * var(--mirror-gem-frame) * var(--mirror-gem-scale,var(--mirror-gem-default-scale)));height:auto;max-width:none;aspect-ratio:1;translate:-50% -50%;transform:translate(var(--mirror-gem-x,var(--mirror-gem-default-x)),var(--mirror-gem-y,var(--mirror-gem-default-y)));filter:drop-shadow(0 0 1px color-mix(in srgb,var(--world-color) 60%,transparent));animation:mirror-gem-glow 2.6s ease-in-out infinite}@keyframes mirror-gem-glow{50%{filter:brightness(1.1) drop-shadow(0 0 4px color-mix(in srgb,var(--world-color) 80%,transparent))}}.mirror-socket.mirror-socket-set img{animation:mirror-gem-set 1.1s ease-out both,mirror-gem-glow 2.6s ease-in-out 1.1s infinite}@keyframes mirror-gem-set{0%{filter:brightness(2.1) drop-shadow(0 0 3px #fff) drop-shadow(0 0 16px var(--world-color))}45%{filter:brightness(1.45) drop-shadow(0 0 2px #fff) drop-shadow(0 0 12px var(--world-color))}to{filter:drop-shadow(0 0 1px color-mix(in srgb,var(--world-color) 60%,transparent))}}.mirror-held-gem{filter:drop-shadow(0 0 7px #fff) drop-shadow(0 0 16px #e6fff4b0)}.mirror-inventory-item img{filter:drop-shadow(0 0 8px #e6fff4a0)}.mirror-ripple-reveal{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:block;pointer-events:none}.mirror-ripple-reveal canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.mirror-main-surface .mirror-ripple-reveal .mirror-reflection-layer{opacity:1;transition:none}@media(prefers-reduced-motion:reduce){.mirror-socket img,.mirror-socket.mirror-socket-set img{animation:none}}.mirror-soon{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:max(10px,env(safe-area-inset-top)) 14px max(10px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 46%,#03100f66,#03100fcc);opacity:0;pointer-events:none;cursor:pointer;animation:mirror-soon-in .5s ease-out var(--soon-delay,.12s) forwards}.mirror-soon.is-leaving{opacity:0!important;pointer-events:none!important;transition:opacity .16s linear}.mirror-soon-card{--soon-gold:#c6a35f;position:relative;width:min(440px,100%);max-height:100%;overflow:hidden;box-sizing:border-box;cursor:default;text-align:center;padding:0 clamp(14px,4vw,26px) clamp(14px,2.4vh,22px);border:2px solid var(--soon-gold);border-radius:20px 20px 8px;background:linear-gradient(118deg,#0b231ffa,#11231ff6 62%,#302317f2);box-shadow:0 18px 44px #000d,inset 0 0 30px #b6e7d112,0 0 0 1px #0007;animation:mirror-soon-rise .55s cubic-bezier(.2,.8,.25,1) var(--soon-delay,.12s) both}.mirror-soon-banner{position:relative;height:clamp(64px,17vh,128px);margin:0 calc(clamp(14px,4vw,26px)*-1);overflow:hidden;border-bottom:1px solid #c6a35f66;background:#082030}.mirror-soon-banner img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%;opacity:.72;filter:saturate(.9) brightness(.82)}.mirror-soon-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0b231f00 38%,#0b231fe6)}.mirror-soon-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(105deg,transparent 38%,color-mix(in srgb,var(--world-color) 38%,#fff) 50%,transparent 62%);background-size:260% 100%;background-position:130% 0;mix-blend-mode:screen;opacity:.34;animation:mirror-soon-shimmer 7s ease-in-out infinite alternate}.mirror-soon-wave{display:block;width:84px;height:10px;margin:clamp(8px,1.6vh,14px) auto 0;color:var(--soon-gold)}.mirror-soon-card h2{margin:clamp(6px,1.2vh,10px) 0 clamp(4px,1vh,8px);color:#ffe2a2;font-size:clamp(21px,5.6vw,30px);line-height:1.2;font-weight:800;text-wrap:balance}.mirror-soon-card p{margin:0 0 4px;color:#e4efe9;font-size:clamp(15px,4vw,18px);line-height:1.45;text-wrap:balance}.mirror-soon-actions{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;justify-content:center;margin-top:clamp(8px,1.8vh,14px)}.mirror-soon-actions button{min-height:44px;padding:6px 14px;border:0;background:none;font:inherit;font-size:clamp(15px,4vw,17px);font-weight:700;cursor:pointer}.mirror-soon-close{color:#ffe2a2;border:1px solid #c6a35f99!important;border-radius:999px;background:#c6a35f1f!important}.mirror-soon-go{color:#bfe9dc;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#bfe9dc88}.mirror-soon-actions button:focus-visible{outline:2px solid #ffe2a2;outline-offset:2px}@keyframes mirror-soon-in{0%{opacity:0}to{opacity:1;pointer-events:auto}}@keyframes mirror-soon-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes mirror-soon-shimmer{to{background-position:-30% 0}}@media(max-height:420px){.mirror-soon-banner{height:52px}.mirror-soon-card h2{font-size:20px}.mirror-soon-card p{font-size:14px;line-height:1.35}.mirror-soon-actions button{min-height:40px}}@media(prefers-reduced-motion:reduce){.mirror-soon{animation:mirror-soon-show 0s linear var(--soon-delay,.12s) forwards}.mirror-soon-card{animation:none}.mirror-soon-shimmer{animation:none;background-position:60% 0}.mirror-soon.is-leaving{transition:none}}@keyframes mirror-soon-show{to{opacity:1;pointer-events:auto}}.fgo-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;margin:0;padding:0;border:0;width:100%;height:100dvh;max-width:none;max-height:none;background:#05070b;color:#f5f1e6;overflow:hidden;display:flex;align-items:center;justify-content:center}.fgo-stage::backdrop{background:#05070b}.fgo-tap{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;margin:0;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.fgo-skip{position:absolute;top:max(14px,env(safe-area-inset-top));inset-inline-start:max(14px,env(safe-area-inset-start));z-index:2;padding:.5em 1.1em;border-radius:999px;border:1px solid rgba(245,241,230,.35);background:#05070b8c;color:#f5f1e6;font:inherit;font-size:.95rem;line-height:1.2;cursor:pointer}.fgo-skip:focus-visible{outline:2px solid #ffd76a;outline-offset:2px}.fgo-caption-card{position:relative;z-index:1;max-width:min(94vw,30em);padding:0 1em;text-align:center;pointer-events:none}.fgo-caption-text{margin:0;font-size:clamp(1.15rem,4.6vw,1.75rem);line-height:1.55;font-weight:600;text-wrap:balance}.fgo-typed{color:#f5f1e6}.fgo-rest{opacity:0}.fgo-hint{margin:1.4em 0 0;font-size:.95rem;color:#f5f1e6b3;opacity:0;transition:opacity .3s ease}.fgo-caption.is-revealed .fgo-hint{opacity:1}.fgo-cue{--tnc-display: flex;width:fit-content;margin:1.2em auto 0 0}.fgo-book-frame{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.fgo-book-video{width:100%;height:100%;object-fit:contain;background:#000}.fgo-book-hint{position:absolute;inset-inline:0;bottom:max(18px,env(safe-area-inset-bottom));z-index:1;margin:0;text-align:center;font-size:1rem;color:#f5f1e6;pointer-events:none;text-shadow:0 1px 6px rgba(0,0,0,.6)}@media(prefers-reduced-motion:reduce){.fgo-hint{transition:none}}
