:root{color:#f1ebdd;font-synthesis:none;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;--charcoal:#181715;--bone:#f1ebdd;--vermilion:#e24a35;--brass:#d6a84b;--mechanism:#5f8fa6;--ash:#a39e93;background:#0f0f0d;font-family:Inter,SF Pro Display,PingFang SC,Noto Sans CJK SC,sans-serif}*{box-sizing:border-box}html,body,#app,#experience-preview{width:100%;min-height:100%;margin:0}body{overscroll-behavior:none;background:radial-gradient(circle at 50% 22%,#5f8fa61a,#0000 34rem),#0f0f0d;min-height:100dvh;overflow:hidden}button,kbd{font:inherit}button{color:inherit}#app,#experience-preview{place-items:center;display:grid}.experience-root{isolation:isolate;width:min(100vw,390px);height:min(100dvh,844px);color:var(--bone);background:linear-gradient(90deg, transparent 49.8%, #f1ebdd08 50%, transparent 50.2%), var(--charcoal);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;border:1px solid #f1ebdd21;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 80px #0000007a}.experience-root:before{z-index:20;pointer-events:none;content:"";border:1px solid #f1ebdd12;position:absolute;inset:5px}.museum-header{z-index:3;min-height:76px;padding:max(15px, env(safe-area-inset-top)) 16px 10px;background:linear-gradient(#181715,#181715ed);border-bottom:1px solid #f1ebdd1f;justify-content:space-between;align-items:center;display:flex;overflow:hidden}.identity-block{flex:auto;min-width:0;padding-right:8px;overflow:hidden}.identity-block p,.identity-block h1{margin:0}.specimen-index{color:var(--brass);letter-spacing:.16em;text-overflow:ellipsis;white-space:nowrap;font:650 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.identity-block h1{letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-family:Songti SC,STSong,serif;font-size:20px;font-weight:700;overflow:hidden}.specimen-setting{color:#f1ebdd85;letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;max-width:244px;font:550 7px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;margin-top:3px!important}.utility-controls{flex:none;gap:4px;display:flex}.utility-button{color:#f1ebdda8;cursor:pointer;background:0 0;border:0;border-left:1px solid #f1ebdd21;place-items:center;width:46px;min-height:46px;padding:4px 3px 2px;display:grid}.utility-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:17px;height:17px}.utility-button span{letter-spacing:.08em;margin-top:3px;font-size:8px}.utility-button[aria-pressed=true]{color:var(--bone);background:#f1ebdd0d}.utility-button:focus-visible,.result-actions button:focus-visible,.experiment-stage:focus-visible{outline:2px solid var(--bone);outline-offset:-3px}.phase-ruler{z-index:3;background:#141411;border-bottom:1px solid #f1ebdd17;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:7px;height:34px;padding:0 16px;display:grid}.phase-ruler span{color:#f1ebdd85;letter-spacing:.08em;white-space:nowrap;align-items:center;gap:3px;font-size:8px;display:inline-flex}.phase-ruler span i{font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;display:none}.phase-ruler span.is-current{color:var(--bone);font-weight:700}.phase-ruler span.is-current i{color:var(--vermilion);display:inline-block}.phase-ruler b{background:#f1ebdd1f;height:1px}.experiment-stage{touch-action:none;-webkit-user-select:none;user-select:none;cursor:crosshair;background:#11110f;min-height:0;position:relative;overflow:hidden}.offline-strip{z-index:12;color:#f1ebddad;letter-spacing:.04em;opacity:0;pointer-events:none;background:#181715f0;border-bottom:1px dashed #d6a84b73;align-items:center;gap:9px;min-height:28px;margin:0;padding:6px 14px;font-size:7px;transition:opacity .16s,transform .16s;display:flex;position:absolute;top:0;left:0;right:0;transform:translateY(-100%)}.offline-strip strong{color:var(--brass);letter-spacing:.14em;flex:none;font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.experience-root[data-connectivity=offline] .offline-strip{opacity:1;transform:translateY(0)}.system-plate{z-index:14;width:min(326px,100% - 34px);color:var(--bone);opacity:0;pointer-events:none;background:repeating-linear-gradient(135deg,#f1ebdd08 0 7px,#0000 7px 14px),#181715f7;border:1px solid #5f8fa685;grid-template-columns:42px 1fr;align-items:center;gap:12px;padding:15px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(14px - 50%));box-shadow:0 14px 34px #00000061}.system-plate__mark{width:42px;height:42px;color:var(--mechanism);border:1px solid;border-radius:50%;place-items:center;font-size:22px;display:grid}.system-plate strong{letter-spacing:.08em;font-family:Songti SC,STSong,serif;font-size:14px;display:block}.system-plate p{color:#f1ebdd85;margin:5px 0 0;font-size:8px;line-height:1.45}.system-plate button{min-height:36px;color:var(--bone);letter-spacing:.08em;background:0 0;border:1px solid #f1ebdd40;grid-column:1/-1;font-size:9px;font-weight:700}.system-plate[aria-hidden=false]{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.experience-root[data-phase=error] .system-plate{border-color:#e24a35b8}.experience-root[data-phase=error] .system-plate__mark{color:var(--vermilion)}.history-drawer{z-index:16;color:var(--bone);opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000 49.7%,#f1ebdd08 50%,#0000 50.3%),#141411fa;border:1px solid #d6a84b7a;grid-template-rows:auto minmax(0,1fr) auto;padding:14px;transition:opacity .18s,transform .18s;display:grid;position:absolute;inset:10px;transform:translate(18px);box-shadow:0 18px 42px #0000008c}.history-drawer>header{border-bottom:1px solid #f1ebdd1f;justify-content:space-between;align-items:start;padding-bottom:11px;display:flex}.history-drawer>header div{gap:4px;display:grid}.history-drawer>header span{color:var(--brass);letter-spacing:.18em;font:700 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.history-drawer>header strong{letter-spacing:.08em;font-family:Songti SC,STSong,serif;font-size:15px}.history-drawer>header button{color:#f1ebdd9e;background:0 0;border:1px solid #f1ebdd2e;width:32px;height:32px;font-size:18px}.history-drawer ol{grid-row:2;align-content:start;gap:0;margin:0;padding:6px 0;list-style:none;display:grid;overflow:auto}.history-drawer li{border-bottom:1px solid #f1ebdd17}.history-drawer li:before{background:var(--mechanism);opacity:.46;content:"";width:3px;height:48px;position:absolute}.history-drawer li[data-result-kind=goal]:before{background:var(--brass);opacity:.85}.history-drawer li[data-result-kind=near_miss]:before{background:var(--vermilion);opacity:.78}.history-drawer li[data-result-kind=unplayed]:before{background:0 0;border-left:1px dashed #f1ebdd3d}.history-drawer li>button{width:100%;min-height:48px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 8px 5px 11px;display:grid}.history-drawer li>button>span:first-child{color:#f1ebdd70;letter-spacing:.08em;font:700 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.history-drawer li>button>span:nth-child(2){gap:3px;min-width:0;display:grid}.history-drawer li strong,.history-drawer li small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-drawer li strong{font-size:9px}.history-drawer li small{color:#f1ebdd61;font-size:7px}.history-drawer li b{color:var(--brass);font:700 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.history-drawer li button:disabled{opacity:.42}.history-drawer li button:focus-visible{outline:1px solid var(--bone);outline-offset:-2px}.history-empty{color:#f1ebdd6b;text-align:center;grid-row:2;align-self:center;margin:0;font-size:9px}.history-data-controls{border-top:1px solid #f1ebdd1f;grid-row:3;grid-template-columns:auto 1fr;gap:8px;padding-top:10px;display:grid}.history-data-controls>a,.history-data-controls>button{color:#f1ebdd9e;letter-spacing:.08em;background:0 0;border:1px dashed #f1ebdd3d;justify-content:center;align-items:center;min-height:38px;font-size:9px;font-weight:700;text-decoration:none;display:inline-flex}.history-reset-confirmation{z-index:2;color:var(--bone);background:#141411;border:1px solid #e24a35b8;gap:10px;padding:16px;display:grid;position:absolute;inset:50% 16px auto;transform:translateY(-50%);box-shadow:0 18px 44px #0000009e}.history-reset-confirmation[hidden]{display:none}.history-reset-confirmation strong{color:var(--vermilion);letter-spacing:.06em;font-family:Songti SC,STSong,serif;font-size:15px}.history-reset-confirmation p{color:#f1ebddad;margin:0;font-size:10px;line-height:1.6}.history-reset-confirmation div{grid-template-columns:1fr 1fr;gap:8px;display:grid}.history-reset-confirmation button{min-height:42px;color:var(--bone);background:0 0;border:1px solid #f1ebdd40;font-size:9px;font-weight:700}.history-reset-confirmation button:last-child{color:#141411;background:var(--vermilion);border-color:var(--vermilion)}.history-data-controls>a:focus-visible,.history-data-controls>button:focus-visible,.history-reset-confirmation button:focus-visible{outline:2px solid var(--bone);outline-offset:-3px}.experience-root.is-history-open .history-drawer{opacity:1;pointer-events:auto;transform:translate(0)}.specimen-backplate{z-index:0;color:var(--mechanism);pointer-events:none;background:linear-gradient(90deg,#0000 49.8%,#f1ebdd14 50%,#0000 50.2%),repeating-linear-gradient(0deg,#0000 0 47px,#f1ebdd08 47px 48px);position:absolute;inset:0;overflow:hidden}.theme-geometry{opacity:.2;border:1px solid;display:block;position:absolute}.theme-legend{color:#f1ebdd85;letter-spacing:.16em;border:1px solid #f1ebdd1c;padding:4px 7px;font:650 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute;bottom:12px;right:14px}.experience-root[data-theme=day-001] .theme-geometry--a{width:28%;height:48%;top:18%;left:12%}.experience-root[data-theme=day-001] .theme-geometry--b{border-radius:50%;width:25%;height:36%;top:26%;right:11%}.experience-root[data-theme=day-001] .theme-geometry--c{border-style:dashed;height:1px;bottom:18%;left:24%;right:25%}.experience-root[data-theme=day-002] .specimen-backplate{background:linear-gradient(90deg,#0000 50%,#e24a352e 50% 50.5%,#0000 50.5%),repeating-linear-gradient(0deg,#0000 0 19.7%,#5f8fa624 19.7% 20%)}.experience-root[data-theme=day-002] .theme-geometry--a,.experience-root[data-theme=day-002] .theme-geometry--b{border-right-width:4px;width:25%;height:16%;left:17%}.experience-root[data-theme=day-002] .theme-geometry--a{top:14%}.experience-root[data-theme=day-002] .theme-geometry--b{top:52%;left:57%}.experience-root[data-theme=day-002] .theme-geometry--c{background:repeating-linear-gradient(#0000 0 18px,#e24a355c 18px 22px);border-width:0 1px;width:24px;top:10%;bottom:10%;left:calc(50% - 12px)}.experience-root[data-theme=day-002] .theme-legend{writing-mode:vertical-rl;top:14px;bottom:auto;right:11px}.experience-root[data-theme=day-003] .specimen-backplate{background:linear-gradient(#0000 58%,#5f8fa621 58% 72%,#0000 72%),repeating-linear-gradient(90deg,#0000 0 31px,#f1ebdd0a 31px 32px)}.experience-root[data-theme=day-003] .theme-geometry{background:repeating-linear-gradient(135deg,#d6a84b21 0 7px,#0000 7px 14px);width:19%;height:14%;bottom:30%}.experience-root[data-theme=day-003] .theme-geometry--a{left:9%}.experience-root[data-theme=day-003] .theme-geometry--b{left:40%}.experience-root[data-theme=day-003] .theme-geometry--c{right:9%}.experience-root[data-theme=day-003] .theme-legend{bottom:22%;left:50%;right:auto;transform:translate(-50%)}.experience-root[data-theme=day-004] .specimen-backplate{background:radial-gradient(circle at 24% 63%,#0000 0 45px,#5f8fa629 46px 49px,#0000 50px),radial-gradient(circle at 76% 63%,#0000 0 45px,#5f8fa629 46px 49px,#0000 50px),repeating-linear-gradient(0deg,#0000 0 55px,#f1ebdd08 55px 56px)}.experience-root[data-theme=day-004] .theme-geometry--a,.experience-root[data-theme=day-004] .theme-geometry--b{border:8px double;border-radius:50%;width:70px;height:70px;bottom:calc(37% - 35px)}.experience-root[data-theme=day-004] .theme-geometry--a{left:calc(24% - 35px)}.experience-root[data-theme=day-004] .theme-geometry--b{right:calc(24% - 35px)}.experience-root[data-theme=day-004] .theme-geometry--c{background:repeating-linear-gradient(145deg,#0000 0 12px,#e24a3547 12px 15px,#0000 15px 24px);border-width:0;width:40px;height:34%;top:18%;left:calc(50% - 20px)}.experience-root[data-theme=day-005] .specimen-backplate{background:linear-gradient(172deg,#0000 49.7%,#e24a352e 50%,#0000 50.3%),repeating-linear-gradient(90deg,#0000 0 63px,#f1ebdd08 63px 64px)}.experience-root[data-theme=day-005] .theme-geometry--a{background:linear-gradient(0deg,#5f8fa621 0 45%,#0000 45%);border-width:4px 1px 1px;border-radius:50% 50% 8px 8px/22% 22% 8px 8px;width:38%;height:27%;top:18%;right:13%}.experience-root[data-theme=day-005] .theme-geometry--b{border:6px double;width:20%;height:19%;bottom:18%;left:14%}.experience-root[data-theme=day-005] .theme-geometry--c{transform-origin:50%;border-style:dashed;height:2px;top:44%;left:24%;right:25%;transform:rotate(-8deg)}.experience-root[data-theme=day-006] .specimen-backplate{background:linear-gradient(28deg,#0000 0 47%,#5f8fa62e 47.2% 47.6%,#0000 47.8%),linear-gradient(-28deg,#0000 0 47%,#d6a84b26 47.2% 47.6%,#0000 47.8%),repeating-linear-gradient(0deg,#0000 0 54px,#f1ebdd08 54px 55px)}.experience-root[data-theme=day-006] .theme-geometry--a,.experience-root[data-theme=day-006] .theme-geometry--b{background:repeating-linear-gradient(90deg,#0000 0 20px,#f1ebdd14 20px 21px);width:24%;height:18%;top:22%}.experience-root[data-theme=day-006] .theme-geometry--a{left:10%}.experience-root[data-theme=day-006] .theme-geometry--b{right:10%}.experience-root[data-theme=day-006] .theme-geometry--c{border-width:0 1px;border-color:var(--brass);height:28%;bottom:15%;left:42%;right:42%}.experience-root[data-theme=day-007] .specimen-backplate{background:repeating-linear-gradient(0deg,#0000 0 18px,#5f8fa61a 18px 20px,#0000 20px 38px),linear-gradient(90deg,#0000 15%,#f1ebdd0d 15.3%,#0000 15.6% 84.4%,#f1ebdd0d 84.7%,#0000 85%)}.experience-root[data-theme=day-007] .theme-geometry--a,.experience-root[data-theme=day-007] .theme-geometry--b,.experience-root[data-theme=day-007] .theme-geometry--c{border:5px double;border-radius:50%;width:48px;height:48px;top:46%}.experience-root[data-theme=day-007] .theme-geometry--a{left:12%}.experience-root[data-theme=day-007] .theme-geometry--b{left:calc(50% - 24px)}.experience-root[data-theme=day-007] .theme-geometry--c{right:12%}.experience-root[data-theme=day-008] .specimen-backplate{background:linear-gradient(90deg,#0000 0 68%,#5f8fa61c 68% 88%,#0000 88%),repeating-linear-gradient(0deg,#0000 0 48px,#f1ebdd08 48px 49px)}.experience-root[data-theme=day-008] .theme-geometry--a{background:var(--mechanism);border:0;width:36%;height:2px;top:48%;left:9%;transform:rotate(-13deg)}.experience-root[data-theme=day-008] .theme-geometry--b{border-width:6px 1px 1px;width:21%;height:55%;top:21%;right:11%}.experience-root[data-theme=day-008] .theme-geometry--c{border:7px double var(--brass);width:42px;height:42px;top:40%;left:45%;transform:rotate(45deg)}.experience-root[data-theme=day-009] .specimen-backplate{background:radial-gradient(circle at 50% 20%, #d6a84b24 0 4px, transparent 5px), repeating-conic-gradient(from 230deg at 50% 18%, #f1ebdd0d 0 1deg, transparent 1deg 12deg)}.experience-root[data-theme=day-009] .theme-geometry--a{background:var(--mechanism);transform-origin:top;border:0;width:2px;height:45%;top:17%;left:calc(50% - 1px);transform:rotate(16deg)}.experience-root[data-theme=day-009] .theme-geometry--b{border:8px double;border-radius:50%;width:68px;height:68px;top:55%;left:calc(50% + 48px)}.experience-root[data-theme=day-009] .theme-geometry--c{background:repeating-linear-gradient(90deg,#0000 0 31px,#f1ebdd21 31px 33px);border-width:1px 0 0;height:18%;bottom:15%;left:15%;right:15%}.experience-root[data-theme=day-010] .specimen-backplate{background:repeating-linear-gradient(168deg,#0000 0 28px,#5f8fa621 29px 31px,#0000 32px 54px),linear-gradient(90deg,#5f8fa60d,#0000 66%)}.experience-root[data-theme=day-010] .theme-geometry{border-radius:100% 0;width:30px;height:18px;transform:rotate(-18deg)}.experience-root[data-theme=day-010] .theme-geometry--a{top:24%;left:22%}.experience-root[data-theme=day-010] .theme-geometry--b{top:48%;left:55%}.experience-root[data-theme=day-010] .theme-geometry--c{bottom:22%;right:15%}.experience-root[data-theme=day-011] .specimen-backplate{background:radial-gradient(#0000 0 22%,#5f8fa617 22.4% 22.9%,#0000 23.4% 34%,#d6a84b12 34.4% 34.9%,#0000 35.4%),repeating-linear-gradient(0deg,#0000 0 58px,#f1ebdd08 58px 59px)}.experience-root[data-theme=day-011] .theme-geometry--a,.experience-root[data-theme=day-011] .theme-geometry--b{border-width:9px 1px 1px;width:18%;height:35%;top:34%}.experience-root[data-theme=day-011] .theme-geometry--a{border-top-color:var(--vermilion);left:13%}.experience-root[data-theme=day-011] .theme-geometry--b{border-top-color:var(--mechanism);right:13%}.experience-root[data-theme=day-011] .theme-geometry--c{border-style:dashed;border-color:var(--brass);height:1px;top:48%;left:31%;right:31%}.experience-root[data-theme=day-012] .specimen-backplate{background:linear-gradient(90deg,#0000 26%,#5f8fa629 26.3% 26.7%,#0000 27% 73%,#5f8fa629 73.3% 73.7%,#0000 74%),repeating-linear-gradient(0deg,#0000 0 47px,#f1ebdd08 47px 48px)}.experience-root[data-theme=day-012] .theme-geometry--a,.experience-root[data-theme=day-012] .theme-geometry--b{border:6px double;border-radius:50%;width:52px;height:52px;top:16%}.experience-root[data-theme=day-012] .theme-geometry--a{left:calc(26% - 26px)}.experience-root[data-theme=day-012] .theme-geometry--b{right:calc(26% - 26px)}.experience-root[data-theme=day-012] .theme-geometry--c{border-width:8px 1px 1px;height:20%;bottom:15%;left:18%;right:18%}.experience-root[data-theme=day-013] .specimen-backplate{background:linear-gradient(24deg,#0000 0 48%,#d6a84b24 48.2% 48.7%,#0000 48.9%),linear-gradient(-13deg,#0000 0 49%,#5f8fa621 49.2% 49.7%,#0000 49.9%)}.experience-root[data-theme=day-013] .theme-geometry--a{background:currentColor;border:0;width:27%;height:2px;top:44%;left:12%}.experience-root[data-theme=day-013] .theme-geometry--b,.experience-root[data-theme=day-013] .theme-geometry--c{width:24%;height:18%;right:12%}.experience-root[data-theme=day-013] .theme-geometry--b{border-color:var(--brass);top:20%}.experience-root[data-theme=day-013] .theme-geometry--c{bottom:20%}.experience-root[data-theme=day-014] .specimen-backplate{background:linear-gradient(90deg,#0000 49.7%,#f1ebdd17 50%,#0000 50.3%),linear-gradient(#0000 49.7%,#f1ebdd17 50%,#0000 50.3%),radial-gradient(circle,#d6a84b24 0 7%,#0000 7.5%)}.experience-root[data-theme=day-014] .theme-geometry{background:repeating-linear-gradient(135deg,#0000 0 13px,#5f8fa61a 13px 15px);width:22%;height:22%}.experience-root[data-theme=day-014] .theme-geometry--a{top:16%;left:14%}.experience-root[data-theme=day-014] .theme-geometry--b{top:16%;right:14%;transform:rotate(90deg)}.experience-root[data-theme=day-014] .theme-geometry--c{bottom:16%;right:14%;transform:rotate(45deg)}.physics-canvas-host{z-index:1;opacity:0;pointer-events:none;transition:opacity .24s;position:absolute;inset:0;overflow:hidden}.physics-canvas{width:100%;height:100%;display:block}.stage-vignette{pointer-events:none;background:linear-gradient(#18171561,#0000 14% 72%,#181715c2),radial-gradient(at 52% 51%,#0000 36%,#0505047d 100%);position:absolute;inset:0}.cancel-zone{z-index:7;height:72px;color:var(--bone);border-top:3px solid var(--vermilion);opacity:0;pointer-events:none;background:repeating-linear-gradient(135deg,#e24a3521 0 6px,#0000 6px 13px),linear-gradient(#e24a3585,#0000);justify-content:center;align-items:center;gap:8px;transition:opacity .16s,transform .16s;display:flex;position:absolute;top:0;left:0;right:0;transform:translateY(-18px)}.cancel-zone span{font-size:18px;line-height:1}.cancel-zone strong{letter-spacing:.13em;font-size:10px}.experience-root[data-phase=aiming] .cancel-zone{opacity:.5;transform:translateY(0)}.experience-root.is-cancel-armed .cancel-zone{opacity:1;background:repeating-linear-gradient(135deg, #18171524 0 6px, transparent 6px 13px), var(--vermilion)}.aim-reticle{--aim-x:230px;--aim-y:280px;z-index:6;top:var(--aim-y);left:var(--aim-x);width:54px;height:54px;color:var(--vermilion);opacity:.36;pointer-events:none;transition:opacity .18s;position:absolute;transform:translate(-50%,-50%)}.reticle-ring{border:1px solid;border-radius:50%;position:absolute;inset:9px;box-shadow:inset 0 0 0 4px #e24a351c,0 0 0 1px #1817158c}.reticle-ring:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle-cross{background:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle-cross--x{width:54px;height:1px}.reticle-cross--y{width:1px;height:54px}.aim-reticle i{color:var(--bone);background:var(--vermilion);letter-spacing:.1em;white-space:nowrap;padding:3px 5px;font:700 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute;top:57px;left:50%;transform:translate(-50%)}.experience-root[data-phase=aiming] .aim-reticle{opacity:1}.experience-root[data-phase=aiming] .reticle-ring{animation:.9s ease-in-out infinite alternate calibrate}.impulse-trace{z-index:5;opacity:0;pointer-events:none;align-items:center;gap:26px;width:78%;display:flex;position:absolute;top:49%;left:11%}.impulse-trace:before{background:linear-gradient(90deg, var(--vermilion), var(--brass));content:"";height:1px;position:absolute;left:0;right:0}.impulse-trace i{background:var(--charcoal);border:2px solid var(--bone);border-radius:50%;width:11px;height:11px;position:relative}.experience-root[data-phase=simulating] .impulse-trace{opacity:1}.experience-root[data-phase=simulating] .impulse-trace i{animation:.76s ease-in-out infinite chain-pulse}.experience-root[data-phase=simulating] .impulse-trace i:nth-child(2){animation-delay:.11s}.experience-root[data-phase=simulating] .impulse-trace i:nth-child(3){animation-delay:.22s}.experience-root[data-phase=simulating] .impulse-trace i:nth-child(4){animation-delay:.33s}.simulation-seal{z-index:8;border-top:1px solid var(--mechanism);opacity:0;pointer-events:none;background:#181715eb;border-bottom:1px solid #f1ebdd2e;grid-template-columns:auto 1fr;align-items:center;width:182px;padding:10px 12px;transition:opacity .16s,transform .16s;display:grid;position:absolute;bottom:20px;right:20px;transform:translateY(12px)}.seal-spinner{border:1px solid #5f8fa659;border-top-color:var(--mechanism);border-radius:50%;grid-row:1/3;width:30px;height:30px;margin-right:10px;animation:1.2s linear infinite rotate-seal}.seal-spinner:before{background:var(--mechanism);content:"";width:4px;height:4px;margin:12px;display:block}.simulation-seal strong{letter-spacing:.08em;font-size:11px}.simulation-seal small{color:#f1ebdd7a;margin-top:3px;font:500 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.experience-root[data-phase=simulating] .simulation-seal{opacity:1;transform:translateY(0)}.near-miss-sheet{z-index:10;color:var(--bone);opacity:0;pointer-events:none;background:linear-gradient(135deg,#d6a84b14,#0000 42%),#181715f7;border:1px solid #d6a84b73;grid-template-columns:82px 1fr;gap:12px 14px;padding:14px;transition:opacity .22s,transform .28s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;inset:auto 12px 12px;transform:translateY(24px);box-shadow:0 12px 28px #0000005c}.experience-root[data-phase=near_miss] .near-miss-sheet,.experience-root[data-phase=goal] .near-miss-sheet,.experience-root[data-phase=settled] .near-miss-sheet{opacity:1;pointer-events:auto;transform:translateY(0)}.experience-root[data-result-kind=goal] .result-stamp{border-color:var(--brass)}.experience-root[data-result-kind=goal] .result-stamp:before,.experience-root[data-result-kind=goal] .result-stamp:after{background:var(--brass)}.result-stamp{aspect-ratio:1;border:1px solid var(--vermilion);place-items:center;display:grid;position:relative}.result-stamp:before,.result-stamp:after{background:var(--vermilion);content:"";position:absolute}.result-stamp:before{width:18px;height:1px}.result-stamp:after{width:1px;height:18px}.result-stamp span{color:#f1ebdd61;letter-spacing:.2em;align-self:end;font:600 7px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.result-stamp strong{color:var(--vermilion);align-self:start;font-family:Songti SC,STSong,serif;font-size:19px}.result-score{border-bottom:1px solid #f1ebdd1f;align-content:center;display:grid}.result-score span{color:#f1ebdd7a;letter-spacing:.12em;font-size:9px}.result-score strong{color:var(--brass);letter-spacing:-.08em;margin-top:2px;font:500 38px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.result-score i{color:#f1ebdd66;letter-spacing:.08em;margin-top:3px;font:650 6px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.experience-root[data-mode=free_practice] .result-score i{color:var(--vermilion)}.chain-ledger{grid-column:1/-1;grid-template-columns:35px 1fr 35px 1fr 35px 1fr 35px;align-items:center;display:grid}.chain-ledger span{width:35px;height:35px;color:var(--bone);border:1px solid #f1ebdd57;border-radius:50%;place-items:center;font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.chain-ledger span i{color:#f1ebdd6b;margin-top:52px;font:500 7px/1 sans-serif;position:absolute}.chain-ledger .is-complete{background:var(--mechanism);border-color:var(--mechanism)}.chain-ledger .is-missed{color:var(--brass);border-style:dashed;border-color:var(--brass);background:repeating-linear-gradient(135deg,#d6a84b24 0 3px,#0000 3px 6px)}.chain-ledger b{background:var(--mechanism);height:1px}.chain-ledger b.is-broken{background:repeating-linear-gradient(90deg, var(--vermilion) 0 4px, transparent 4px 8px);height:3px}.miss-message{border-top:1px solid #f1ebdd1c;grid-column:1/-1;gap:4px;margin:8px 0 0;padding-top:10px;display:grid}.miss-message strong{color:var(--brass);font-size:12px}.miss-message>span{color:#f1ebdd8c;font-size:9px;line-height:1.45}.result-facts{color:#f1ebdd75;letter-spacing:.08em;grid-column:1/-1;margin:-4px 0 0;font:600 8px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}.result-actions{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.result-actions button{min-height:42px;color:var(--bone);letter-spacing:.06em;cursor:pointer;background:#f1ebdd0a;border:1px solid #f1ebdd38;justify-content:center;align-items:center;gap:7px;font-size:9px;font-weight:700;display:inline-flex}.result-actions button:last-child{color:var(--charcoal);background:var(--bone)}.result-actions button:disabled{color:#f1ebdd61;cursor:not-allowed;background:#f1ebdd0a;border-style:dashed}.result-actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:15px;height:15px}.control-deck{z-index:4;padding:12px 16px max(13px, env(safe-area-inset-bottom));background:linear-gradient(180deg, #f1ebdd08, transparent 32%), var(--charcoal);border-top:1px solid #f1ebdd24}.status-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.mode-switch{color:#f1ebdd85;letter-spacing:.04em;white-space:nowrap;background:0 0;border:1px dashed #f1ebdd2e;justify-content:center;align-items:center;gap:4px;min-height:26px;padding:3px 7px;font-size:7px;font-weight:700;display:inline-flex}.mode-switch svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:12px;height:12px}.mode-switch[aria-pressed=true]{color:var(--vermilion);background:#e24a3512;border-style:solid;border-color:#e24a358c}.mode-switch:disabled{opacity:.34}.mode-switch:focus-visible{outline:2px solid var(--bone);outline-offset:2px}.phase-mark{align-items:center;gap:7px;display:inline-flex}.phase-glyph{width:22px;height:22px;color:var(--vermilion);border:1px solid;border-radius:50%;place-items:center;font-size:9px;display:grid}.phase-mark strong{letter-spacing:.08em;font-family:Songti SC,STSong,serif;font-size:13px}.attempt-counter{text-align:right;grid-template-columns:auto auto;gap:2px 8px;display:grid}.attempt-counter span{color:#f1ebdd85;letter-spacing:.13em;grid-column:1/-1;font-size:7px}.attempt-counter strong{color:var(--vermilion);letter-spacing:.2em;font:600 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.attempt-counter i{color:#f1ebdd85;font:600 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.power-readout{margin-top:10px}.power-heading{justify-content:space-between;align-items:end;margin-bottom:5px;display:flex}.power-heading span{color:#f1ebdd85;letter-spacing:.12em;font-size:8px}.power-heading strong{color:var(--vermilion);font:600 17px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.power-meter{border-bottom:1px solid #f1ebdd38;grid-template-columns:repeat(16,1fr);align-items:end;gap:3px;height:28px;padding-top:2px;display:grid}.power-meter i{height:calc(5px + var(--level-step,0px));background:#f1ebdd1f;border-top:1px solid #f1ebdd40;display:block}.power-meter i:nth-child(n+5){--level-step:4px}.power-meter i:nth-child(n+9){--level-step:8px}.power-meter i:nth-child(n+13){--level-step:12px}.stage-instruction{color:#f1ebdd94;text-align:center;letter-spacing:.035em;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin:9px 0 0;font-size:9px;display:grid}.stage-instruction kbd{color:#f1ebdd85;letter-spacing:.06em;background:0 0;border:1px solid #f1ebdd26;padding:3px 5px;font-size:7px}.boot-surface{text-align:center;place-content:center;gap:.75rem;min-height:100dvh;padding:2rem;display:grid}.boot-surface h1,.boot-surface p{margin:0}.boot-surface h1{letter-spacing:-.045em;font-size:clamp(2rem,10vw,4rem);font-weight:650}.boot-surface p:last-child{color:#a39e93}.boot-kicker{color:var(--vermilion);letter-spacing:.18em;font:600 .75rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.bootstrap-failure{width:min(100vw,390px);min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 24px max(24px, env(safe-area-inset-bottom));color:var(--bone);background:linear-gradient(135deg, #e24a351a, transparent 42%), repeating-linear-gradient(0deg, transparent 0 47px, #f1ebdd08 47px 48px), var(--charcoal);border:1px solid #e24a3573;align-content:center;display:grid;box-shadow:0 28px 80px #0000007a}.bootstrap-failure p,.bootstrap-failure h1,.bootstrap-failure span{margin:0}.bootstrap-failure p{color:var(--vermilion);letter-spacing:.16em;font:700 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.bootstrap-failure h1{letter-spacing:.03em;margin-top:9px;font-family:Songti SC,STSong,serif;font-size:24px}.bootstrap-failure span{color:#f1ebddad;margin-top:8px;font-size:11px;line-height:1.6}.bootstrap-failure button,.bootstrap-failure a{color:#141411;background:var(--bone);border:1px solid var(--bone);letter-spacing:.08em;justify-content:center;align-items:center;min-height:44px;margin-top:18px;font-size:10px;font-weight:750;text-decoration:none;display:inline-flex}.bootstrap-failure a{color:#f1ebddad;background:0 0;border-style:dashed;border-color:#f1ebdd3d;margin-top:8px}.bootstrap-failure button:focus-visible,.bootstrap-failure a:focus-visible{outline:2px solid var(--vermilion);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.experience-root.is-reduced-motion *,.experience-root.is-reduced-motion :before,.experience-root.is-reduced-motion :after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.experience-root[data-performance=degraded]{box-shadow:none}.experience-root[data-performance=degraded] .specimen-backplate,.experience-root[data-performance=degraded] .stage-vignette,.experience-root[data-performance=degraded] .impulse-trace{display:none}.experience-root[data-performance=degraded] .physics-canvas-host,.experience-root[data-performance=degraded] .near-miss-sheet,.experience-root[data-performance=degraded] .system-plate,.experience-root[data-performance=degraded] .history-drawer{transition:none}.experience-root[data-phase=loading] .aim-reticle,.experience-root[data-phase=error] .aim-reticle,.experience-root.is-history-open .aim-reticle{opacity:0}@keyframes calibrate{0%{opacity:.72;transform:scale(.9)}to{opacity:1;transform:scale(1.08)}}@keyframes chain-pulse{0%,to{background:#fff8e8;transform:scale(.82)}45%{background:var(--vermilion);border-color:#fff8e8;transform:scale(1.12)}}@keyframes rotate-seal{to{transform:rotate(360deg)}}@media (max-height:720px){.museum-header{min-height:64px;padding-top:max(10px, env(safe-area-inset-top))}.phase-ruler{height:28px}.control-deck{padding-top:9px;padding-bottom:max(9px, env(safe-area-inset-bottom))}.phase-mark{display:none}.power-readout{margin-top:0}.near-miss-sheet{padding:10px}.chain-ledger{display:none}.history-drawer{inset:6px}}@media (min-width:700px){.experience-root{border-radius:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}:root{color:#4b4135;--charcoal:#4b4135;--bone:#fff8e8;--vermilion:#d8755a;--brass:#e2b85f;--mechanism:#78a8b3;--ash:#91a97f;--paper:#fff8e8;--paper-deep:#f0dec1;--ink-soft:#7b6a58;--sage:#91a97f;background:#dce7d4;font-family:SF Pro Rounded,PingFang SC,Hiragino Sans GB,system-ui,sans-serif}body{background:radial-gradient(circle at 18% 12%,#fff8e8b8 0 9rem,#0000 22rem),radial-gradient(circle at 82% 86%,#78a8b338 0 10rem,#0000 26rem),linear-gradient(145deg,#dce7d4,#c9dedf 58%,#efd7bd)}.experience-root{color:var(--charcoal);background:var(--paper);border:1px solid #5443352e;box-shadow:0 26px 70px #5443353d,0 4px 16px #5443351f}.experience-root:before{z-index:22;border-color:#ffffff8c;border-radius:22px;inset:6px}.museum-header{min-height:80px;padding:max(14px, env(safe-area-inset-top)) 14px 10px;color:var(--charcoal);background:radial-gradient(circle at 7% 24%,#e2b85f38 0 4px,#0000 5px),linear-gradient(#fffaf0,#f8ead2);border-bottom:1px solid #54433521}.specimen-index{color:#b56b50;letter-spacing:.1em;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-size:9px;font-weight:760}.identity-block h1{color:var(--charcoal);letter-spacing:-.015em;margin-top:4px;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-size:21px;font-weight:820}.specimen-setting{color:var(--ink-soft);letter-spacing:.025em;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-size:8px;font-weight:620}.utility-controls{gap:5px}.utility-button{color:#6d675b;background:#ffffff7a;border:1px solid #5443351f;border-radius:13px;width:42px;min-height:44px;padding:4px 3px;box-shadow:0 2px #54433514}.utility-button[aria-pressed=true]{color:#5d7f66;background:#e3ecd9;border-color:#5d7f6640}.phase-ruler{height:38px;color:var(--charcoal);background:#f8ead2;border-bottom:1px solid #5443351a;gap:5px;padding:4px 14px 6px}.phase-ruler span{color:#8a7966;letter-spacing:.02em;border-radius:999px;min-height:24px;padding:4px 7px;font-size:8px}.phase-ruler span.is-current{color:#fffdf7;background:var(--sage);box-shadow:0 2px #5443351f}.phase-ruler span.is-current i{color:#fff1bf}.phase-ruler b{background:#91a97f57;border-radius:999px;height:2px}.experiment-stage{cursor:crosshair;background:#e9ddc7;border:3px solid #fff8e8;border-radius:24px;margin:0 8px;box-shadow:inset 0 0 0 1px #5443351f,0 5px 14px #54433524}.environment-art{z-index:0;object-fit:cover;object-position:center;filter:saturate(.94)contrast(.96)brightness(1.03);pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.experience-root[data-theme] .specimen-backplate{z-index:1;background:radial-gradient(at 50% 52%,#fff8e80d 0 28%,#fff8e840 74%,#5443351a 100%)}.theme-geometry{display:none}.theme-legend{color:#5b5146;letter-spacing:.04em;background:#fff8e8d6;border:1px solid #54433526;border-radius:999px;padding:5px 9px;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-size:8px;font-weight:760;bottom:10px;right:10px;box-shadow:0 2px 6px #5443351a}.physics-canvas-host{z-index:2;opacity:0}.experience-root.has-live-scene .physics-canvas-host{opacity:1}.stage-vignette{z-index:3;background:linear-gradient(#fff8e833,#0000 18% 78%,#5443351f),radial-gradient(at 50% 52%,#0000 42%,#fff8e829 100%)}.offline-strip{color:var(--charcoal);background:#fff8e8f2;border-bottom:1px dashed #b56b5073}.offline-strip strong{color:#b56b50}.system-plate{color:var(--charcoal);background:#fffaeff7;border:2px solid #78a8b394;border-radius:20px;box-shadow:0 16px 38px #5443353d}.system-plate__mark{color:var(--mechanism);background:#e8f1ee;border-width:2px}.system-plate strong{font-family:SF Pro Rounded,PingFang SC,sans-serif;font-weight:780}.system-plate p{color:var(--ink-soft);font-size:9px}.system-plate button{color:var(--charcoal);background:#f2dfbd;border-color:#5443352e;border-radius:12px}.history-drawer{color:var(--charcoal);background:#fffaeffa;border:2px solid #e2b85f94;border-radius:22px;padding:15px;inset:8px;box-shadow:0 18px 42px #54433542}.history-drawer>header{border-bottom-color:#54433521}.history-drawer>header span{color:#b56b50;font-family:SF Pro Rounded,PingFang SC,sans-serif}.history-drawer>header strong{font-family:SF Pro Rounded,PingFang SC,sans-serif;font-weight:780}.history-drawer>header button{color:var(--charcoal);background:#f4e4c8;border-color:#54433524;border-radius:50%}.history-drawer li{border-bottom-color:#5443351a}.history-drawer li>button{border-radius:12px}.history-drawer li>button:hover{background:#91a97f1a}.history-drawer li>button>span:first-child,.history-drawer li small,.history-empty{color:#8a7966}.history-drawer li b{color:#b56b50}.history-data-controls{border-top-color:#5443351f}.history-data-controls>a,.history-data-controls>button{color:#6d6255;background:#fffaf0;border-color:#5443352e;border-radius:12px}.history-reset-confirmation{color:var(--charcoal);border-color:var(--vermilion);background:#fff7e8;border-radius:18px;box-shadow:0 18px 44px #54433547}.history-reset-confirmation strong{color:#b55e4b;font-family:SF Pro Rounded,PingFang SC,sans-serif}.history-reset-confirmation p{color:var(--ink-soft)}.history-reset-confirmation button{color:var(--charcoal);background:#fffaf0;border-color:#5443352e;border-radius:10px}.history-reset-confirmation button:last-child{color:#fffaf0}.cancel-zone{color:#fffaf0;border-top-color:var(--vermilion);background:linear-gradient(#d8755acc,#d8755a14)}.aim-reticle{color:#d8755a}.reticle-ring{border:3px solid;border-radius:48% 52% 46% 54%;inset:7px;transform:rotate(9deg);box-shadow:inset 0 0 0 4px #fff8e8ad,0 2px 8px #54433538}.reticle-ring:before{background:#e2b85f;border:2px solid #fff8e8;width:8px;height:8px}.reticle-cross{opacity:.5}.aim-reticle i{color:#fffaf0;letter-spacing:.03em;background:#d8755a;border-radius:999px;font-family:SF Pro Rounded,PingFang SC,sans-serif;top:58px;box-shadow:0 2px 5px #5443352e}.impulse-trace:before{background:linear-gradient(90deg, var(--vermilion), var(--brass), var(--mechanism));border-radius:999px;height:3px}.impulse-trace i{background:#fff8e8;border-color:#fff8e8;box-shadow:0 0 0 2px #54433529}.impulse-trace:after{filter:drop-shadow(0 3px 3px #5443352e);content:"";background:url(../art/v2/sprites/impact-sheet.webp) 50%/300% 100% no-repeat;width:58px;height:58px;position:absolute;right:-18px;transform:scale(.86)rotate(-7deg)}.experience-root[data-phase=simulating] .impulse-trace:after{animation:.76s ease-in-out infinite alternate impact-bloom}.simulation-seal{color:var(--charcoal);background:#fffaeff0;border:1px solid #78a8b37a;border-radius:16px;bottom:14px;right:14px;box-shadow:0 8px 20px #5443352e}.simulation-seal small{color:var(--ink-soft)}.near-miss-sheet{color:var(--charcoal);background:#fffaeff7;border:2px solid #d8755a7a;border-radius:22px;inset:auto 10px 10px;box-shadow:0 14px 34px #5443353d}.experience-root[data-result-kind=goal] .near-miss-sheet{background:#fffaeff7;border-color:#91a97fb8}.result-stamp{border:2px solid var(--vermilion);background:#fff3d0;border-radius:50%}.result-stamp span{color:#8a7966}.result-stamp strong{color:#b55e4b;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-weight:820}.experience-root[data-result-kind=goal] .result-stamp{border-color:var(--sage);background:#e3ecd9}.experience-root[data-result-kind=goal] .result-stamp strong{color:#5f7f66}.result-score{border-bottom-color:#5443351f}.result-score span,.result-score i,.miss-message>span,.result-facts{color:var(--ink-soft)}.result-score strong{color:#b56b50;font-family:SF Pro Rounded,ui-rounded,sans-serif;font-weight:820}.chain-ledger span{color:var(--charcoal);background:#fff8e8;border-color:#54433547}.chain-ledger span i{color:var(--ink-soft)}.chain-ledger .is-complete{color:#fffaf0;background:var(--sage);border-color:var(--sage)}.chain-ledger .is-missed{color:#9b7138;border-color:var(--brass);background:#fff3d0}.miss-message{border-top-color:#5443351f}.miss-message strong{color:#5f7f66}.result-actions button{color:var(--charcoal);background:#fffaf0;border-color:#54433529;border-radius:12px;box-shadow:0 2px #54433514}.result-actions button:last-child{color:#fffaf0;background:#d8755a;border-color:#d8755a}.result-actions button:disabled{color:#a09282;background:#f0e5d4}.control-deck{padding:11px 16px max(13px, env(safe-area-inset-bottom));color:var(--charcoal);background:linear-gradient(#fff8e8,#f4e2c5);border-top:1px solid #54433521}.mode-switch{color:#6d6255;background:#ffffff73;border-color:#5443352e;border-radius:999px}.mode-switch[aria-pressed=true]{color:#b55e4b;background:#f8d8c7;border-color:#b55e4b57}.phase-glyph{color:#b55e4b;background:#fff3d0;border-width:2px}.phase-mark strong{color:var(--charcoal);font-family:SF Pro Rounded,PingFang SC,sans-serif;font-weight:780}.attempt-counter span,.attempt-counter i,.power-heading span,.stage-instruction{color:var(--ink-soft)}.attempt-counter strong{color:#d8755a}.power-heading strong{color:#b55e4b;font-family:SF Pro Rounded,ui-rounded,sans-serif;font-weight:820}.power-meter{border-bottom-color:#5443352e}.power-meter i{background:#5443351f;border-top-color:#5443352e;border-radius:3px 3px 0 0}.power-meter i.is-active{background:linear-gradient(#e2b85f,#d8755a);border-top-color:#fff8e8}.stage-instruction kbd{color:#6d6255;background:#ffffff7a;border-color:#54433526;border-radius:6px}.utility-button:focus-visible,.result-actions button:focus-visible,.experiment-stage:focus-visible,.mode-switch:focus-visible,.history-data-controls>a:focus-visible,.history-data-controls>button:focus-visible,.history-reset-confirmation button:focus-visible{outline-offset:2px;outline:3px solid #5f7f66}.boot-surface,.bootstrap-failure{color:var(--charcoal);background:#fff8e8;border-color:#d8755a73;box-shadow:0 20px 54px #54433533}.bootstrap-failure p{color:#b55e4b}.bootstrap-failure span{color:var(--ink-soft)}.bootstrap-failure h1{font-family:SF Pro Rounded,PingFang SC,sans-serif}.bootstrap-failure button{color:#fffaf0;background:#d8755a;border-color:#d8755a;border-radius:12px}.bootstrap-failure a{color:#6d6255;border-color:#54433533;border-radius:12px}@keyframes impact-bloom{0%{opacity:.58;transform:scale(.76)rotate(-9deg)}to{opacity:1;transform:scale(1)rotate(4deg)}}@media (max-height:720px){.museum-header{min-height:64px}.phase-ruler{height:31px;padding-block:3px}.experiment-stage{border-radius:18px}}.guide-launch{z-index:10;min-height:46px;color:var(--charcoal);text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffaefeb;border:1px solid #54433526;border-radius:16px;grid-template-columns:34px auto;align-items:center;gap:8px;padding:5px 11px 5px 7px;display:inline-grid;position:absolute;top:10px;left:10px;box-shadow:0 5px 14px #54433529}.guide-launch svg{color:#fffaf0;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;background:#d8755a;border-radius:50%;width:34px;height:34px;padding:7px}.guide-launch span{gap:2px;display:grid}.guide-launch strong{color:#594b3f;letter-spacing:.02em;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-size:10px;font-weight:820}.guide-launch small{color:#8a7966;font-size:7px;font-weight:650}.experience-root[data-connectivity=offline] .guide-launch{top:48px}.guide-dialog{z-index:40;width:min(370px,100vw - 20px);max-height:calc(100dvh - 20px);color:var(--charcoal);opacity:0;pointer-events:none;background:radial-gradient(circle at 92% 8%,#e2b85f33 0 18px,#0000 19px),#fffaf0;border:2px solid #e2b85f9e;border-radius:24px;gap:10px;padding:13px;transition:opacity .18s,transform .18s;display:grid;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,calc(18px - 50%));box-shadow:0 22px 70px #5443356b,0 0 0 999px #54433557}.experience-root.is-guide-open .guide-dialog{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.guide-dialog>header{justify-content:space-between;align-items:start;gap:12px;display:flex}.guide-dialog>header div{gap:3px;display:grid}.guide-dialog>header span{color:#b56b50;letter-spacing:.1em;font-size:7px;font-weight:780}.guide-dialog>header strong{color:#594b3f;font-family:SF Pro Rounded,PingFang SC,sans-serif;font-size:16px;font-weight:820}.guide-dialog>header button{color:#594b3f;background:#f4e4c8;border:1px solid #54433524;border-radius:50%;flex:0 0 34px;width:34px;height:34px;font-size:18px}.guide-dialog video{aspect-ratio:9/16;object-fit:cover;background:#ead9bd;border:3px solid #fff3d9;border-radius:20px;justify-self:center;width:min(188px,52vw);box-shadow:0 9px 24px #5443352e}.guide-dialog ol{grid-template-columns:1fr 1fr;gap:7px;margin:0;padding:0;list-style:none;display:grid}.guide-dialog li{background:#f4e4c88f;border:1px solid #5443351a;border-radius:12px;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:7px;min-height:56px;padding:8px;display:grid}.guide-dialog li>b{color:#fffaf0;background:#91a97f;border-radius:48% 52% 45% 55%;place-items:center;width:26px;height:26px;font:780 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.guide-dialog li:nth-child(2)>b,.guide-dialog li:nth-child(4)>b{background:#d8755a}.guide-dialog li span{gap:3px;display:grid}.guide-dialog li strong{color:#594b3f;font-size:8px;line-height:1.3}.guide-dialog li small{color:#8a7966;font-size:7px;line-height:1.35}.guide-dialog>footer{border-top:1px dashed #54433529;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding-top:9px;display:grid}.guide-dialog>footer p{gap:3px;margin:0;display:grid}.guide-dialog>footer strong{color:#5f7f66;font-size:9px}.guide-dialog>footer span{color:#8a7966;font-size:7px;line-height:1.35}.guide-dialog>footer button{color:#fffaf0;background:#d8755a;border:1px solid #d8755a;border-radius:12px;min-height:40px;padding:0 14px;font-size:9px;font-weight:780}.guide-launch:focus-visible,.guide-dialog button:focus-visible,.guide-dialog video:focus-visible{outline-offset:2px;outline:3px solid #5f7f66}.experience-root.is-reduced-motion .guide-dialog{transition:none}@media (max-height:720px){.guide-dialog{grid-template-columns:132px minmax(0,1fr);gap:8px;width:min(370px,100vw - 12px);padding:10px}.guide-dialog>header,.guide-dialog>footer{grid-column:1/-1}.guide-dialog video{grid-area:2/1;width:132px}.guide-dialog ol{grid-area:2/2;grid-template-columns:1fr;gap:5px}.guide-dialog li{min-height:0;padding:6px}.guide-dialog li small{display:none}}
