:root{--bg: #d8d5cf;--ink: #23262b;--mute: #4f545c;--line: #b9b5ad;--accent: #1a4b8a;--trace: #1a4b8a;--cool: #0c625a;--node: #efede8;--sans: "Chakra Petch", "Segoe UI", system-ui, sans-serif;--mono: "IBM Plex Mono", "SFMono-Regular", Menlo, monospace;--plate-w: 42px;--plate-h: 40px;--plate-icon: 24px;--plate-mark: 16px;--grid: 120px;--frame: 14px;--margin: 30px;--t-title: 24px;--t-card: 20px;--t-body: 14px;--t-meta: 12px;--t-eyebrow: 11px;--t-label: 12px;--t-figure: 31px;--t-micro: 10px;--tt-title: -.012em;--tt-eyebrow: .14em;--tt-label: .08em;--r-chrome: 3px;--r-body: 6px;--r-group: 12px;--blur: 7px;--s1: 6px;--s2: 10px;--s3: 14px;--s4: 22px}body.t-dark{--bg: #17407a;--ink: #f0f6ff;--mute: #b0c8ee;--line: #4271b8;--accent: #ffffff;--trace: #ffd166;--cool: #7ff0d4;--node: #1d4a87;--sw-room-a: #2c3037;--sw-wall-a: #33383f;--sw-wall-b: #1a1d21}body.t-dark.v-rack.r-realistic{--ink: #f4f6f8;--bg: var(--sw-wall-b);--node: var(--sw-room-a);--line: color-mix(in srgb, var(--ink) 30%, var(--sw-room-a));--mute: color-mix(in srgb, var(--ink) 76%, var(--sw-wall-a))}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);transition:background .4s}#app{min-height:100%}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body{--plate: color-mix(in srgb, var(--bg) 86%, transparent);--plate-edge: color-mix(in srgb, var(--line) 88%, transparent);--plate-cast: 0 2px 10px -5px color-mix(in srgb, #000 68%, transparent);--rule: color-mix(in srgb, var(--accent) 55%, transparent);--rule-faint: color-mix(in srgb, var(--accent) 22%, transparent);--hair: color-mix(in srgb, var(--line) 55%, transparent);--hair-faint: color-mix(in srgb, var(--line) 22%, transparent);--wash: color-mix(in srgb, var(--accent) 12%, transparent);--mute-faint: color-mix(in srgb, var(--mute) 75%, transparent);--knock: 0 0 1px var(--bg), 0 0 2px var(--bg), 0 0 4px var(--bg), 0 0 9px var(--bg);--knock-mark: drop-shadow(0 0 1px var(--bg)) drop-shadow(0 0 2px var(--bg)) drop-shadow(0 0 5px var(--bg))}body.v-rack.r-realistic{--plate: color-mix(in srgb, var(--bg) 94%, transparent);--plate-cast: 0 3px 14px -4px color-mix(in srgb, #000 88%, transparent)}.plate,.chip{background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--r-chrome);backdrop-filter:blur(var(--blur));box-shadow:var(--plate-cast)}.mark{position:relative}.mark>.nm{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);z-index:1;white-space:nowrap;padding:5px 8px;font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--ink);background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--r-chrome);backdrop-filter:blur(var(--blur));box-shadow:var(--plate-cast);opacity:0;pointer-events:none;transition:opacity .16s ease}.mark:hover>.nm,.mark:focus-visible>.nm{opacity:1}@media(prefers-reduced-motion:reduce){.mark>.nm{transition:none}}@media(hover:none){.mark>.nm{width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%)}}#rack .rev-name em{display:none;font-style:normal;font-size:var(--t-micro);letter-spacing:var(--tt-eyebrow);color:var(--mute)}@media(hover:none){#rack .rev-name em{display:block}}.tb{display:grid;grid-auto-flow:column;grid-auto-columns:auto;border-top:1px solid var(--rule);border-left:1px solid var(--rule);background:var(--bg)}.tb>div{padding:8px 14px;border-right:1px solid var(--rule-faint)}.tb>div:last-child{border-right:0}.tb span{display:block;font:var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute);margin-bottom:2px}.tb b{font:500 var(--t-meta) var(--sans);color:var(--ink);white-space:nowrap}.tb a{color:var(--accent);text-decoration:none;box-shadow:inset 0 -1px 0 0 var(--rule)}.tb a:hover,.tb a:focus-visible{box-shadow:inset 0 -1px 0 0 var(--accent)}.tb .turn a{color:var(--ink)}.tb .turn a:hover,.tb .turn a:focus-visible{color:var(--accent)}.tb .whole-cell{padding:0;display:grid;place-items:center}.tb button.whole{width:var(--plate-w);height:100%;min-height:var(--plate-h);border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}.tb .mark>.nm{top:auto;bottom:calc(100% + 6px);left:0;transform:none}.ruler span{position:absolute;transform:translate(-50%,-50%)}.ruler.top span,.ruler.bottom span{top:50%;left:calc(var(--margin) + var(--n) * var(--grid))}.ruler.left span,.ruler.right span{left:50%;top:calc(var(--margin) + var(--n) * var(--grid))}#rack .title b,.ix .title b,.scene .paper .title b{font-weight:500;display:inline-block;opacity:var(--title-in, 1);transform:translateY(var(--title-dy, 0px));letter-spacing:calc((1 - var(--title-in, 1)) * -.05em)}.ix h3{margin:0 0 6px;display:flex;gap:8px;font:var(--t-eyebrow) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}.ix h3 i{font-style:normal;color:color-mix(in srgb,var(--mute) 70%,transparent)}.ix ol{margin:0;padding:0;list-style:none}.ix li{display:grid;grid-template-columns:1.9em 1fr;align-items:baseline;padding:3px 0;font-size:var(--t-body);line-height:1.4}.ix li[hidden]{display:none}.ix li i{font:var(--t-eyebrow) var(--mono);font-style:normal;color:color-mix(in srgb,var(--mute) 85%,transparent)}.ix a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--ink) 35%,transparent);text-underline-offset:3px}.ix a:hover,.ix a:focus-visible{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.ix-shelves section{margin:0 0 12px}.scene .edge text{font-family:var(--mono);font-size:var(--t-eyebrow);fill:var(--mute)}.scene.mapsheet .sheethead h1{margin:0 0 4px;font:600 var(--t-title) / 1.1 var(--sans);letter-spacing:var(--tt-title);color:var(--ink)}.scene.mapsheet .filter{flex:1 1 260px;max-width:420px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-chrome);background:color-mix(in srgb,var(--node) 70%,transparent);color:inherit;font:var(--t-meta) var(--mono)}.scene.mapsheet .filter:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.scene.wall figcaption{border-top:1px solid var(--line)}.panel .p-prose p{margin:0 0 10px}.panel .p-figure canvas,.panel .p-figure .minirack-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}.panel .p-figure .labels{position:absolute;inset:0;pointer-events:none}.panel .p-figure .lbl{position:absolute;transform:translate(-50%,-100%);white-space:nowrap;opacity:0;padding:2px 6px;transition:opacity .15s;font-size:var(--t-body);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;background:color-mix(in srgb,var(--bg) 80%,transparent)}.panel .p-figure .lbl.on{opacity:1}.panel .p-figure .lbl b{font-weight:600}.panel .p-figure a.ext{position:absolute;right:0;bottom:0;z-index:2;font:500 var(--t-eyebrow) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--accent);text-decoration:none;background:color-mix(in srgb,var(--bg) 85%,transparent);border-bottom:1px solid currentColor;padding:3px 0}.panel .p-swatch svg{width:44px;height:10px;overflow:visible;transform:scale(var(--board-scale, 1));transform-origin:0 50%}.panel .p-dives li button:hover,.panel .p-dives li button:focus-visible{color:var(--accent)}#rack{position:fixed;inset:0}#rack canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}#rack canvas.dragging{cursor:grabbing}.gl-lost{position:absolute;inset:auto 16px 16px;margin:0 auto;max-width:30em;padding:12px 16px;border:1px solid var(--line);background:var(--node);color:var(--ink);font:var(--t-body) / 1.5 var(--sans);text-align:center;z-index:6}.gl-lost small{display:block;margin-top:8px;color:var(--mute);font:var(--t-meta) / 1.45 var(--mono);overflow-wrap:anywhere;user-select:all}#rack .labels{position:absolute;inset:0;pointer-events:none}#rack .lbl{position:absolute;transform:translate(-50%,-100%);white-space:nowrap;opacity:0;padding:5px 9px;transition:opacity .15s;font-size:var(--t-body);letter-spacing:var(--tt-eyebrow);text-transform:uppercase}#rack .lbl.on{opacity:var(--fade, 1)}#rack .lbl.rail{transition:opacity .15s,left .3s ease,top .3s ease}#rack .labels .lbl.on{pointer-events:auto;cursor:pointer}#rack .lbl b{font-weight:600}#rack .lbl small{font:var(--t-eyebrow) var(--mono);color:var(--mute);margin-left:6px}#rack .lbl.away{transform:translateY(-50%);padding-left:12px;font-style:italic}#rack .lbl.away.left{transform:translate(-100%,-50%);padding-left:7px;padding-right:12px}#rack .railcap{position:absolute;top:68px;left:22px;margin:0;padding:7px 10px;font:var(--t-meta) var(--mono);color:var(--mute);pointer-events:none;transition:opacity .2s}#rack:has(>.panel:not(.closed)) .railcap{opacity:0}#rack svg.leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;transition:opacity .2s}#rack .stage.turning svg.leaders{opacity:0}#rack svg.leaders .leader{color:var(--mute);opacity:calc(.6 * var(--fade, 1))}#rack svg.leaders line{stroke:currentColor;stroke-width:1}#rack svg.leaders circle{fill:currentColor}body.r-blueprint #rack svg.leaders .leader{color:var(--ink);opacity:calc(.7 * var(--fade, 1))}body.r-blueprint #rack svg.leaders line{stroke-width:1.25}#rack .places{position:absolute;left:var(--margin);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;z-index:4}#rack .places button{position:relative;width:var(--plate-w);height:var(--plate-w);display:grid;place-items:center;padding:0;color:var(--ink);background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--r-chrome);backdrop-filter:blur(var(--blur));box-shadow:var(--plate-cast);cursor:pointer;transition:color .2s ease,border-color .2s ease}#rack .places button[hidden]{display:none}#rack .places button svg{display:block;width:var(--plate-icon);height:var(--plate-icon)}#rack .places button:hover,#rack .places button:focus-visible{color:var(--ink);border-color:color-mix(in srgb,var(--accent) 55%,var(--plate-edge))}#rack .places button.here{color:var(--accent);border-color:var(--rule);background:color-mix(in srgb,var(--accent) 12%,var(--plate));cursor:default}@media(pointer:coarse){#rack .places button{width:44px;height:44px}}.scene{min-height:100vh;padding-top:var(--loose-top);display:flex;flex-direction:column}.scene .paper{position:relative;flex:1 1 auto;align-self:flex-start;max-width:1400px;width:100%;padding-bottom:calc(var(--plate-h) + var(--frame) + var(--s1))}.scene .panhint{display:none;align-items:center;gap:var(--s1);margin:0 12px 6px}.scene .panhint .words{margin:0;padding:7px 11px;font:var(--t-eyebrow) / 1.3 var(--mono);color:var(--mute)}.scene .panhint .words.gone{display:none}.scene main{flex:1;display:flex;align-items:stretch;min-height:0;padding-left:16px}.scene svg.canvas{--pane: loose;flex:1 1 auto;align-self:flex-start;width:100%;max-width:1400px;height:auto;display:block;padding:0;font-family:var(--sans);cursor:zoom-in;touch-action:none;user-select:none}.scene svg.canvas.zoomed{cursor:zoom-out}.scene svg.canvas.panning{cursor:grabbing}.scene svg.canvas [role=button]{cursor:pointer}.scene svg.canvas text{fill:var(--ink)}.scene .group>rect{fill:var(--node);fill-opacity:.38;stroke:var(--line);stroke-width:1;stroke-dasharray:5 4;rx:var(--r-group)}.scene .group.inner>rect{fill-opacity:.55}.scene .group>text.glabel{font-size:var(--t-body);font-weight:600;text-transform:uppercase;letter-spacing:var(--tt-eyebrow);fill:var(--mute)}.scene .group>text.glabel.link{cursor:pointer}.scene .group>text.glabel.link:hover,.scene .group>text.glabel.link:focus-visible{fill:var(--accent)}.scene .group>text.glabel.link:focus-visible{outline:1.5px dashed var(--accent);outline-offset:3px}.scene .group>text.gsub,.scene .group>text.gnote{font-family:var(--mono);font-size:var(--t-meta);fill:var(--mute)}.scene .node{cursor:pointer;outline:none}.scene .node>rect{fill:var(--node);stroke:var(--line);stroke-width:1.2;rx:var(--r-body);transition:stroke .35s ease,stroke-width .35s ease}.scene .node.peripheral>rect{stroke-dasharray:4 3}.scene .node.board>rect{stroke:var(--accent);stroke-width:1.6}.scene .node text.lbl{font-size:var(--t-label);font-weight:600;text-transform:uppercase;letter-spacing:var(--tt-label);fill:var(--ink)}.scene .node text.sub{font-family:var(--mono);font-size:var(--t-micro);fill:var(--mute)}.scene .node.hub>rect{stroke:var(--accent);stroke-width:1.6}.scene .node.u>rect{rx:var(--r-chrome)}.scene .node.u.gone{opacity:.62}.scene .node.u.gone text.lbl{text-decoration:line-through}.scene .node:hover>rect,.scene .node:focus-visible>rect,.scene .node.sel>rect{stroke:color-mix(in srgb,var(--accent) 75%,var(--line));stroke-width:1.6}.scene .node.stat>rect{fill:transparent;stroke:none}.scene .node.stat:hover>rect,.scene .node.stat:focus-visible>rect,.scene .node.stat.sel>rect{fill:var(--node);stroke:none;stroke-width:0}.scene .node>rect.ring{fill:none;stroke:none;stroke-width:0;rx:var(--r-group);pointer-events:none}.scene .node:focus-visible>rect.ring{stroke:var(--accent);stroke-width:1.6;stroke-dasharray:5 3.5}.scene .node:focus-visible>rect:not(.ring){stroke:var(--accent);stroke-width:2}.scene .node text.fig{font-size:var(--t-figure);font-weight:600;letter-spacing:var(--tt-title);font-variant-numeric:tabular-nums;fill:var(--ink)}.scene .node text.cap{font-size:var(--t-eyebrow);fill:var(--mute)}.scene .node .ico{color:var(--ink)}.scene .node.board .ico{color:var(--accent)}.scene .node.stat .ico{color:var(--mute)}.scene .node.stat:hover .ico,.scene .node.stat.sel .ico{color:var(--accent)}.scene .node .badge rect{fill:var(--bg);stroke:var(--line);rx:var(--r-chrome)}.scene .node .badge.dive rect{stroke:var(--accent)}.scene .node .badge.dive text{fill:var(--accent)}.scene .node .badge text{font-family:var(--mono);font-size:var(--t-eyebrow);fill:var(--mute);letter-spacing:var(--tt-eyebrow)}.scene .node text.lh{font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:var(--tt-eyebrow);fill:var(--mute)}.scene .node text.lr{font-family:var(--mono);font-size:var(--t-micro);fill:var(--ink)}.scene .node text.lf{font-family:var(--mono);font-size:var(--t-micro);fill:var(--mute);font-style:italic}.scene .edge path{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:opacity .35s ease,stroke-width .35s ease,stroke .35s ease}.scene .edge rect.lbg{fill:var(--bg)}.scene .edge.hot path{stroke:color-mix(in srgb,var(--accent) 80%,var(--line));stroke-width:2}.scene .edge.hot text{fill:var(--accent)}.scene .node,.scene .edge{transition:opacity .35s ease}.scene .dim{opacity:.55}.canvas.quiet .edge{opacity:0;transition:opacity .18s ease}.canvas.quiet .edge.hot{opacity:1}.ix .sheet,.scene .paper .sheet,#rack .sheet{display:block;position:fixed;inset:var(--frame);pointer-events:none;border:1px solid var(--rule);border-top-color:transparent}body.r-blueprint #rack,body.v-index #rack{background-color:var(--bg);background-image:linear-gradient(var(--hair) 1px,transparent 1px),linear-gradient(90deg,var(--hair) 1px,transparent 1px),linear-gradient(var(--hair-faint) 1px,transparent 1px),linear-gradient(90deg,var(--hair-faint) 1px,transparent 1px);background-size:var(--grid) var(--grid),var(--grid) var(--grid),calc(var(--grid) / 5) calc(var(--grid) / 5),calc(var(--grid) / 5) calc(var(--grid) / 5);background-attachment:fixed;background-position:var(--margin) var(--margin)}.ix .sheet:before,.scene .paper .sheet:before,#rack .sheet:before{content:"";position:absolute;inset:6px;border:1px solid var(--rule-faint);border-top-color:transparent}.ix .sheet .c,.scene .paper .sheet .c,#rack .sheet .c{position:absolute;width:var(--frame);height:var(--frame);border-color:var(--accent);border-style:solid;border-width:0}.ix .sheet .tl,.scene .paper .sheet .tl,#rack .sheet .tl{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px}.ix .sheet .tr,.scene .paper .sheet .tr,#rack .sheet .tr{top:-1px;right:-1px;border-top-width:2px;border-right-width:2px}.ix .sheet .bl,.scene .paper .sheet .bl,#rack .sheet .bl{bottom:-1px;left:-1px;border-bottom-width:2px;border-left-width:2px}.ix .sheet .br,.scene .paper .sheet .br,#rack .sheet .br{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px}.ix .title,.scene .paper .title,#rack .title{position:fixed;top:var(--frame);left:var(--frame);right:var(--frame);height:8px;z-index:3;margin:0;display:flex;align-items:center;justify-content:center;gap:var(--s3);pointer-events:none;font:500 var(--t-meta) / 1 var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--ink);text-shadow:var(--knock);white-space:nowrap}.ix .title:before,.ix .title:after,.scene .paper .title:before,.scene .paper .title:after,#rack .title:before,#rack .title:after{content:"";flex:1 1 0;align-self:stretch;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule-faint)}@media(max-width:900px){#scene-view.scene:not(.mapsheet){height:100dvh;min-height:0;overflow:hidden}.scene main{display:grid;grid-template-rows:minmax(0,62fr) minmax(0,38fr);min-height:0;height:auto;overflow:hidden;padding-left:0}.scene .paper{flex:none;align-self:stretch}.scene .panhint{display:flex}.scene .paper{min-height:0;min-width:0;display:flex;padding-bottom:0}.scene svg.canvas{--pane: penned;flex:1 1 auto;width:100%;height:100%;min-height:0;max-width:none}.scene .paper .sheet{inset:6px}.scene.mapsheet main{display:block;height:auto;overflow:visible}.scene.mapsheet .paper{flex:none;display:block}}@media(max-width:700px){.scene .paper{padding-bottom:0}}#feedback[hidden],#keys[hidden]{display:none}#feedback,#keys{position:fixed;inset:0;z-index:31;display:flex;align-items:center;justify-content:center;padding:16px}#feedback .scrim,#keys .scrim{position:absolute;inset:0;background:radial-gradient(130% 100% at 50% 42%,#060a123d,#060a128c);backdrop-filter:blur(var(--blur)) saturate(.85);animation:fbFade .22s ease both}#feedback .sheet,#keys .sheet{position:relative;width:min(470px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:color-mix(in srgb,var(--node) 45%,var(--bg));color:var(--ink);border:1px solid var(--accent);border-radius:var(--r-chrome);padding:20px 22px 18px;display:grid;gap:13px;box-shadow:0 24px 60px #0000006b,0 0 0 1px var(--rule-faint);animation:fbRaise .24s cubic-bezier(.2,.8,.3,1) both}#feedback .sheet>i.c,#keys .sheet>i.c{position:absolute;width:11px;height:11px;border:0 solid var(--accent);opacity:.65;pointer-events:none}#feedback .sheet>i.tl,#keys .sheet>i.tl{top:6px;left:6px;border-top-width:1px;border-left-width:1px}#feedback .sheet>i.tr,#keys .sheet>i.tr{top:6px;right:6px;border-top-width:1px;border-right-width:1px}#feedback .sheet>i.bl,#keys .sheet>i.bl{bottom:6px;left:6px;border-bottom-width:1px;border-left-width:1px}#feedback .sheet>i.br,#keys .sheet>i.br{bottom:6px;right:6px;border-bottom-width:1px;border-right-width:1px}#feedback .top,#keys .top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding-bottom:11px}#feedback .who span,#keys .who span{display:block;font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}#feedback .who b,#keys .who b{display:block;margin-top:3px;font-size:var(--t-card);font-weight:600;letter-spacing:var(--tt-title)}#feedback .close,#keys .close{flex:none;width:26px;height:26px;border:1px solid transparent;border-radius:var(--r-chrome);background:none;color:var(--mute);font-size:var(--t-body);line-height:1;cursor:pointer}#feedback .close:hover,#keys .close:hover{border-color:var(--accent);color:var(--accent)}#feedback .about{margin:-4px 0 0;display:flex;align-items:baseline;gap:8px;font:var(--t-meta) var(--mono);color:var(--ink)}#feedback .about .k{font-size:var(--t-micro);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}#feedback .about .topic{border-bottom:1px dashed var(--line);padding-bottom:1px}#feedback .fld{display:grid;gap:var(--s1);font-size:var(--t-body)}#feedback .fld>span{font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}#feedback textarea,#feedback input,#feedback select{font:var(--t-body) var(--sans);color:var(--ink);background:color-mix(in srgb,var(--node) 70%,var(--bg));border:1px solid var(--line);border-radius:var(--r-chrome);padding:9px 11px;transition:border-color .18s ease}#feedback textarea{resize:vertical;min-height:96px;line-height:1.5}#feedback textarea::placeholder{color:var(--mute);opacity:.6}#feedback textarea:focus,#feedback input:focus,#feedback select:focus{border-color:var(--accent)}#feedback .hp{position:absolute;left:-9999px;width:1px;height:1px}#feedback .row{display:flex;align-items:center;gap:var(--s2);border-top:1px solid var(--line);padding-top:13px}#feedback .primary,#feedback .ghost{font:500 var(--t-meta) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;padding:9px 16px;border-radius:var(--r-chrome);cursor:pointer}#feedback .primary{border:1px solid var(--accent);background:var(--accent);color:var(--bg)}#feedback .primary:hover{filter:brightness(1.08)}#feedback .ghost{border:1px solid var(--line);background:none;color:var(--mute)}#feedback .ghost:hover{border-color:var(--accent);color:var(--accent)}#feedback .status{flex:1;font:var(--t-meta) var(--mono);color:var(--mute)}#feedback .fine{margin:0;font:var(--t-eyebrow) / 1.5 var(--mono);color:var(--mute);opacity:.75}@keyframes fbFade{0%{opacity:0}}@keyframes fbRaise{0%{opacity:0;transform:translateY(10px) scale(.985)}}@media(prefers-reduced-motion:reduce){#feedback .scrim,#feedback .sheet{animation:none}}@media(max-width:700px){#feedback .row{flex-wrap:wrap}#feedback .status{flex:1 0 100%}}@keyframes paneIn{0%{opacity:0;transform:translateY(4px)}}#tools .look,#tools .gh{display:inline-flex;align-items:center;justify-content:center;width:var(--plate-w);height:var(--plate-h);padding:0;background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--r-chrome);backdrop-filter:blur(var(--blur));box-shadow:var(--plate-cast);color:var(--ink);cursor:pointer;text-decoration:none;transition:border-color .18s ease,color .18s ease}#tools .look:hover,#tools .look:focus-visible,#tools .gh:hover,#tools .gh:focus-visible{border-color:var(--accent);color:var(--accent)}#tools .look .nm em{font-style:normal;color:var(--mute)}#tools .look .nm em:after{content:" \b7  "}#tools .look .nm b{font-weight:500}#tools .look .pic{display:block;flex:none;width:var(--plate-icon);height:var(--plate-icon)}#tools .gh svg{width:var(--plate-mark);height:var(--plate-mark)}#tools .look .pic svg{display:block;width:100%;height:100%}#lead .mark>.nm,#tools .mark>.nm{top:calc(100% + 6px);transform:none}#lead .mark>.nm{left:0}#tools .mark>.nm{left:auto;right:0}#lead{display:flex;align-items:center;gap:8px;flex:none}#lead .to3d,#lead .opener{display:inline-flex;align-items:center;justify-content:center;width:var(--plate-w);height:var(--plate-h);padding:0;background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--r-chrome);backdrop-filter:blur(var(--blur));box-shadow:var(--plate-cast);color:var(--ink);font:500 var(--t-body) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;text-decoration:none;cursor:pointer;transition:border-color .18s ease,color .18s ease}#lead .to3d svg,#lead .opener svg{width:var(--plate-mark);height:var(--plate-mark);flex:none;overflow:visible}#lead .to3d:hover,#lead .opener:hover{border-color:var(--accent);color:var(--accent)}#lead .to3d[aria-current=page],#lead .opener[aria-current=page]{color:var(--accent);border-color:var(--rule);background:var(--wash)}#lead .opener .nm small{font-size:var(--t-micro);margin-left:6px;opacity:.6}#lead .opener .nm em{font-style:normal;font-size:var(--t-micro);line-height:1;margin-left:6px;padding:2px 4px;border:1px solid color-mix(in srgb,currentColor 45%,transparent);border-radius:var(--r-chrome);opacity:.6}.scene.mapsheet main.sheetbody{display:block;overflow:auto;padding:20px 24px}#rack .rev{--rev-year: 96px;--rev-brk: 62px;position:absolute;right:40px;top:50%;transform:translateY(-50%);z-index:4;display:flex;flex-direction:column;gap:9px;transition:right .35s cubic-bezier(.2,.8,.2,1),opacity .3s ease,visibility .3s ease}#rack .rev-scale{position:relative;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}#rack .rev-rule{position:absolute;left:50%;margin-left:-.5px;width:1px;background:var(--line);box-shadow:0 0 2px color-mix(in srgb,var(--bg) 70%,transparent)}#rack .rev-brk{position:absolute;left:50%;margin-left:-4.5px;stroke:var(--line);filter:drop-shadow(0 0 1.5px color-mix(in srgb,var(--bg) 70%,transparent))}#rack .rev-stops{display:grid}#rack .rev-stop{grid-area:1 / 1;align-self:end;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;padding:5px 10px;background:var(--plate);border:1px solid var(--plate-edge);border-radius:var(--r-chrome);backdrop-filter:blur(var(--blur));box-shadow:var(--plate-cast);font:var(--t-meta) var(--mono);color:var(--ink);text-align:center;white-space:nowrap;cursor:pointer;transition:color .2s ease,border-color .2s ease}#rack .rev-name{position:relative}#rack .rev-name small{position:absolute;top:100%;right:0;margin-top:1px;font-size:var(--t-micro);letter-spacing:var(--tt-eyebrow);white-space:nowrap;color:var(--mute);text-shadow:var(--knock);opacity:0;transition:opacity .16s ease}#rack .rev-stop:hover .rev-name small,#rack .rev-stop:focus-visible .rev-name small,#rack .rev-stop[data-aim] .rev-name small,#rack .rev-stop[data-declined] .rev-name small{opacity:1}@media(prefers-reduced-motion:reduce){#rack .rev-name small{transition:none}}#rack .rev-stop[aria-checked=true]{color:var(--accent);border-color:var(--rule);background:color-mix(in srgb,var(--accent) 12%,var(--plate));cursor:default}#rack .rev-stop[aria-checked=true] .rev-name{font-weight:600}#rack .rev-stop:not([aria-disabled=true]):hover,#rack .rev-stop:not([aria-disabled=true]):focus-visible,#rack .rev-stop:not([aria-disabled=true])[data-aim]{border-color:var(--accent);color:var(--accent)}#rack .rev-stop:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#rack .rev-stop[aria-disabled=true]{color:color-mix(in srgb,var(--mute) 82%,transparent);border-style:dashed;background:none;box-shadow:none;cursor:default}#rack .rev-stop[aria-disabled=true][data-aim],#rack .rev-stop[data-declined]{color:var(--mute)}#rack .rev-stop[data-declined] .rev-name small,#rack .rev-stop[data-aim] .rev-name small{color:var(--ink)}#rack:has(>.panel:not(.closed)) .rev{right:calc(min(var(--panel-w),88vw) + 26px)}#rack .rev-grip{position:absolute;left:0;right:0;bottom:0;height:1px;cursor:grab;transition:transform .28s cubic-bezier(.2,.8,.2,1)}#rack .rev-grip:before,#rack .rev-grip:after{content:"";position:absolute;top:0;width:8px;height:1px;background:var(--ink);box-shadow:0 0 2px color-mix(in srgb,var(--bg) 70%,transparent);transition:width .2s ease}#rack .rev-grip:before{right:calc(100% + 4px)}#rack .rev-grip:after{left:calc(100% + 4px)}#rack .rev.dragging .rev-grip{cursor:grabbing;transition:none}#rack .rev.dragging .rev-grip:before,#rack .rev.dragging .rev-grip:after{width:13px;background:var(--accent)}@media(prefers-reduced-motion:reduce){#rack .rev-grip,#rack .rev-grip:before,#rack .rev-grip:after{transition:none}}.scene{background-color:var(--bg);background-image:linear-gradient(var(--hair) 1px,transparent 1px),linear-gradient(90deg,var(--hair) 1px,transparent 1px),linear-gradient(var(--hair-faint) 1px,transparent 1px),linear-gradient(90deg,var(--hair-faint) 1px,transparent 1px);background-size:var(--grid) var(--grid),var(--grid) var(--grid),calc(var(--grid) / 5) calc(var(--grid) / 5),calc(var(--grid) / 5) calc(var(--grid) / 5);background-attachment:fixed;background-position:var(--margin) var(--margin)}.scene .paper .sheet .tb{position:absolute;z-index:2;right:var(--panel-w);bottom:0;pointer-events:auto}#rack .sheet .tb{position:absolute;z-index:2;right:0;bottom:0;pointer-events:auto;transition:right .35s cubic-bezier(.2,.8,.2,1)}#rack:has(>.panel:not(.closed)) .sheet .tb{right:calc(min(var(--panel-w),88vw) - var(--frame))}:root{--loose-top: 52px}#lead,#tools{position:fixed;top:var(--margin);z-index:21;display:flex;align-items:center;font:500 var(--t-meta) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}#lead{left:var(--margin);gap:8px}#tools{right:var(--margin);gap:var(--s3);transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .3s ease,visibility .3s ease}.scene button.whole{display:inline-flex;align-items:center;justify-content:center;width:var(--plate-w);height:var(--plate-h);padding:0;color:var(--mute);cursor:pointer;transition:color .18s ease,border-color .18s ease}.scene button.whole:hover,.scene button.whole:focus-visible{color:var(--accent);border-color:var(--accent)}.scene button.whole svg{width:var(--plate-mark);height:var(--plate-mark);flex:none;overflow:visible}.scene button.whole .i,body.wholesheet .scene button.whole .o{display:none}body.wholesheet .scene button.whole .i{display:inline}.scene button.whole i.nm{font-style:normal}.scene button.whole i.nm,body.wholesheet .scene button.whole b.nm{display:none}body.wholesheet .scene button.whole i.nm{display:block}body.wholesheet .scene button.whole{color:var(--ink);border-color:var(--accent)}.scene .paper>button.whole{position:fixed;left:var(--frame);bottom:var(--frame);z-index:3}.scene .paper .whole-hint{position:fixed;left:var(--frame);bottom:calc(var(--frame) + var(--plate-h) + var(--s2));z-index:4;margin:0;padding:7px 11px;font:var(--t-eyebrow) / 1.3 var(--mono);letter-spacing:var(--tt-eyebrow);color:var(--mute);pointer-events:none}body.wholesheet #lead,body.wholesheet #tools,body.wholesheet .scene .panhint,body.wholesheet .scene .paper .sheet .tb{display:none}body.wholesheet #scene-view.scene:not(.mapsheet){height:100dvh;min-height:0;padding-top:0;overflow:hidden}body.wholesheet .scene main{display:block;min-height:0;height:100%;overflow:hidden;padding-left:0}body.wholesheet .scene .paper{flex:none;align-self:stretch;display:flex;min-width:0;min-height:0;height:100%;max-width:none;padding-bottom:0}body.wholesheet .scene svg.canvas{--pane: loose;flex:1 1 auto;width:100%;height:100%;min-height:0;max-width:none}body.wholesheet .scene .paper .sheet{inset:6px}@keyframes sheetTurn{0%{opacity:0;transform:translate(28px) rotate(.35deg)}60%{opacity:1}to{transform:none}}.scene.turn main{animation:sheetTurn .42s cubic-bezier(.2,.8,.2,1) both;transform-origin:0 100%}@media(prefers-reduced-motion:reduce){.scene.turn main{animation:none}}@media(max-width:720px){.scene .paper .sheet .tb{display:none}}@media(min-width:721px)and (max-width:900px){.scene .paper{padding-bottom:calc(var(--plate-h) + var(--frame) + var(--s1))}}.rulers{position:fixed;inset:0;z-index:1;pointer-events:none;font:var(--t-micro) / 1 var(--mono);color:var(--mute-faint)}.ruler{position:absolute}.ruler.top,.ruler.bottom{left:0;right:0;height:var(--frame)}.ruler.top{top:0}.ruler.bottom{bottom:0}.ruler.left,.ruler.right{top:0;bottom:0;width:var(--frame)}.ruler.left{left:0}.ruler.right{right:0}.scene.mapsheet .paper.plan{position:relative;max-width:1320px;margin:0 auto;padding:26px 30px 74px;background:color-mix(in srgb,var(--node) 40%,transparent)}.scene.mapsheet .sheethead{text-transform:none;letter-spacing:normal;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;margin:0 0 24px;padding-bottom:18px;border-bottom:1px solid var(--line)}.scene.mapsheet .sheethead p{margin:0;font:var(--t-body) / 1.5 var(--sans);color:var(--mute);max-width:58ch}.scene.mapsheet .detail h4{display:flex;align-items:baseline;gap:var(--s2);margin:0 0 14px;font:600 var(--t-body) var(--sans);color:var(--ink)}.scene.mapsheet .detail h4 span{font:var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}.scene.mapsheet .detail+.detail{margin-top:26px;padding-top:var(--s4);border-top:1px solid var(--line)}.scene.mapsheet section{margin:0 0 14px}.scene.mapsheet .detail h3{display:flex;align-items:baseline;gap:8px;margin:0 0 5px;font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}.scene.mapsheet .detail h3 i{font-style:normal;color:var(--accent)}.scene.mapsheet .apps li a{font-size:var(--t-meta);color:var(--mute)}#rack .lbl.offsheet{opacity:0}#rack .lbl.rail.left{transform:translate(-100%,-50%);text-align:right}.scene.mapsheet .detail.apps{margin-top:26px;padding-top:var(--s4);border-top:1px solid var(--line)}#feedback .fld[hidden]{display:none}@media(max-width:700px){:root{--loose-top: 50px}#lead,#tools{top:26px}#lead{left:22px}#tools{right:22px}.scene .panhint .words{font-size:var(--t-micro);padding:7px 10px}#lead{gap:var(--s1)}#tools{gap:8px}#lead .to3d,#lead .opener{width:34px;height:34px}#lead .to3d,#lead .opener,#tools .gh,#tools .look{position:relative}#lead .to3d:after,#lead .opener:after,#tools .gh:after,#tools .look:after{content:"";position:absolute;left:-3px;right:-3px;top:50%;height:44px;transform:translateY(-50%)}#tools .look,#tools .gh{width:34px;height:34px;padding:0}.scene.mapsheet main.sheetbody{padding:12px}.scene.mapsheet .paper.plan{padding:18px 14px 20px}.scene.mapsheet .sheethead{gap:var(--s3);margin-bottom:18px}#rack .lbl.rail{font-size:var(--t-micro);padding:2px 5px;letter-spacing:var(--tt-eyebrow)}#rack .lbl.rail small{font-size:var(--t-micro);margin-left:4px}#rack .places{top:auto;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);flex-direction:row;gap:8px}#rack:has(>.panel:not(.closed)) .places{opacity:0;visibility:hidden}#rack:has(>.panel.tall) .rev{opacity:0;visibility:hidden}#rack .places button{min-height:44px;justify-content:center}#rack .rev{top:112px;right:30px;transform:none}#rack:has(>.panel:not(.closed)) .rev{right:30px}#rack .labels .lbl.rail:after{content:"";position:absolute;inset:-10px}#feedback{align-items:flex-start;overflow-y:auto;padding:12px}#feedback .sheet{width:100%;max-height:calc(100dvh - 24px);overflow-y:auto}#feedback .close{padding:9px;margin:-9px;font-size:var(--t-card);line-height:1}#feedback textarea,#feedback input,#feedback select{font-size:16px;padding:10px 12px}#feedback .primary{padding:13px 20px}}#rack .lbl.rail{transform:translateY(-50%)}.scene.wall .tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:18px;padding-left:26px}.scene.wall .apps .tiles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:var(--s3);padding-left:0}.scene.wall .tile{margin:0;border:1px solid var(--line);background:var(--bg);cursor:pointer}.scene.wall .tile:hover{border-color:var(--accent)}.scene.wall .frame{display:block;min-height:0;padding:0;overflow:hidden;pointer-events:none;background:var(--bg);contain:content}.scene.wall .frame main{display:block;padding:0;background-size:26px 26px;background-attachment:scroll;background-position:0 0}.scene.wall .frame .paper{max-width:none;padding:0}.scene.wall .frame .paper .sheet,.scene.wall .frame .panhint{display:none}.scene.wall .frame svg.canvas{padding:0;max-width:none;cursor:inherit}.scene.wall figcaption a{display:flex;gap:9px;padding:8px 11px;color:var(--ink);text-decoration:none;font:var(--t-body) / 1.35 var(--sans)}.scene.wall figcaption i{font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);color:var(--accent);padding-top:3px}.scene.wall .apps figcaption a{font-size:var(--t-meta);color:var(--mute)}.scene.wall .tile:hover figcaption{border-top-color:var(--accent)}.scene.wall .tile:hover figcaption a{color:var(--accent)}@media(max-width:700px){.scene.wall .tiles,.scene.wall .apps .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2);padding-left:0}.scene.wall figcaption a{gap:var(--s1);padding:14px 9px;font-size:var(--t-meta)}.scene.wall .apps figcaption a{font-size:var(--t-eyebrow)}}@media(orientation:landscape)and (max-height:560px){.scene:not(.mapsheet):not(.wall):not(.frame){height:100dvh;min-height:0;overflow:hidden}.scene:not(.mapsheet):not(.wall):not(.frame)>main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,300px);grid-template-rows:minmax(0,1fr);min-height:0;height:auto;overflow:hidden;padding-left:0}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.paper{flex:none;align-self:stretch;display:flex;min-width:0;min-height:0;padding-bottom:0}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.paper>svg.canvas{--pane: penned;flex:1 1 auto;width:100%;height:100%;min-height:0;max-width:none}.scene .panhint .words,.scene .paper .sheet .tb{display:none}#rack .places{top:auto;bottom:16px;left:50%;transform:translate(-50%);flex-direction:row;gap:8px}#rack .rev{top:50%;right:34px;transform:translateY(-50%)}#rack:has(>.panel:not(.closed)) .rev{right:calc(var(--panel-w) + 26px);opacity:1;visibility:visible}#rack:has(>.panel.tall) .rev{right:calc(min(560px,64vw) + 26px)}#rack:has(>.panel:not(.closed)) .places{opacity:1;visibility:visible;left:calc(50% - min(170px,23vw))}body.v-rack:has(#rack>.panel:not(.closed)) #tools{transform:translate(calc(var(--panel-w) * -1))}}@media(prefers-reduced-motion:reduce){#tools{transition:none}}@media(pointer:coarse){#lead .mark,#tools .mark,.scene .panhint button.whole{width:36px;height:36px;padding:0}}@media(max-width:700px),(orientation:landscape)and (max-height:560px){#rack .railcap{display:none}:root{--loose-top: 64px}#rack .rev{--rev-year: 46px;--rev-brk: 36px}#rack .rev-stop{padding:7px}#rack .rev-grip:before,#rack .rev-grip:after{width:10px}.scene .panhint button.whole{min-height:44px;min-width:44px}.scene.mapsheet .filter{font-size:16px}}:root{--panel-w: 400px;--rest: 40dvh;--rest-tall: 65dvh}.scene:not(.mapsheet):not(.wall):not(.frame)>main{display:grid;grid-template-columns:minmax(0,1fr) var(--panel-w);grid-template-rows:minmax(0,1fr);transition:grid-template-rows .3s cubic-bezier(.2,.8,.2,1)}#rack[hidden],.panel.closed{display:none}#rack .stage{position:absolute;inset:0}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.paper{min-width:0}.panel{position:relative;min-height:0;min-width:0;box-sizing:border-box;padding:26px 26px 24px;background:var(--bg);border-left:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:4;font-size:var(--t-body);line-height:1.55}#rack>.panel{position:absolute;inset:0 0 0 auto;width:min(var(--panel-w),88vw)}#rack .panel{padding-top:calc(var(--loose-top) + 4px)}body.v-rack:has(#rack>.panel:not(.closed)) #tools{transform:translate(calc(min(var(--panel-w),88vw)*-1))}.scene.wall .frame .panel{display:none}.panel .p-body>*+*{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.panel .p-body.swap>*{animation:panelIn .28s ease both}@keyframes panelIn{0%{opacity:0}to{opacity:1}}.panel .p-eyebrow,.panel .p-key,.panel .p-facts dt{font:var(--t-eyebrow) / 1.4 var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}.panel h2{margin:4px 0 0;font-size:var(--t-title);line-height:1.15;letter-spacing:var(--tt-title);font-weight:600;text-wrap:balance}.panel.picked .p-head{padding-right:34px}.panel .p-sub{margin-top:var(--s1);font:var(--t-meta) / 1.4 var(--mono);color:var(--mute)}.panel .p-facts{margin:0;display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:16px;font:var(--t-meta) / 1.45 var(--mono)}.panel .p-facts>div{display:contents}.panel .p-facts dt,.panel .p-facts dd{margin:0;padding:5px 0;border-bottom:1px solid var(--hair)}.panel .p-facts dt{padding-top:7px;white-space:nowrap}.panel .p-facts>div:last-child>*{border-bottom:0}.panel .p-prose p:last-child{margin-bottom:0}.panel .p-figure{position:relative;height:220px;margin:14px 0 0;padding:0;border-top:0;overflow:hidden}.panel .p-figure.failed{height:auto;font:var(--t-meta) var(--mono);color:var(--mute)}.panel .p-figure .lbl small{font:var(--t-eyebrow) var(--mono);color:var(--mute);margin-left:5px}.panel .p-legend{margin:0;padding:0;list-style:none;font:var(--t-meta) / 1.4 var(--mono);color:var(--mute)}.panel .p-legend li{display:flex;align-items:center;gap:var(--s2);margin:6px 0}.panel .p-swatch{display:inline-flex;flex:0 0 44px}.panel .p-badge{font-size:var(--t-micro);border:1px solid var(--line);border-radius:var(--r-chrome);padding:1px 6px;min-width:44px;text-align:center}.panel .p-dives button{font:500 var(--t-body) var(--sans);color:var(--ink);background:none;border:0;text-align:left;cursor:pointer}.panel .p-dives button.primary{display:block;width:100%;padding:12px 14px;letter-spacing:var(--tt-eyebrow);text-transform:uppercase;border:1px solid var(--accent);color:var(--accent)}.panel .p-dives button.primary:after{content:" \25b8"}.panel .p-dives button.primary:hover,.panel .p-dives button.primary:focus-visible{background:var(--wash)}.panel .p-dives ul{margin:4px 0 0;padding:0;list-style:none}.panel .p-dives li button{display:flex;justify-content:space-between;gap:var(--s2);width:100%;padding:7px 0;font:500 var(--t-body) / 1.3 var(--mono);border-bottom:1px solid var(--hair)}.panel .p-dives li:last-child button{border-bottom:0}.panel .p-hint{margin:0;font:var(--t-meta) / 1.4 var(--mono);color:var(--mute)}.panel .p-foot{display:flex;flex-wrap:wrap;gap:0 8px;font:500 var(--t-meta) var(--mono)}.panel .p-foot>*+*:before{content:"\b7";color:var(--mute);margin-right:8px}.panel .p-foot a,.panel .p-foot button{padding:0;border:0;background:none;font:inherit;color:var(--accent);text-decoration:none;border-bottom:1px solid currentColor;cursor:pointer}.panel .p-close{position:absolute;top:14px;right:16px;z-index:3;width:30px;height:30px;font:var(--t-card) / 1 var(--mono);color:var(--mute);background:none;border:1px solid transparent;cursor:pointer}#rack .panel .p-close{top:calc(var(--loose-top) - 4px)}.panel .p-close:hover,.panel .p-close:focus-visible{color:var(--ink);border-color:var(--line)}.panel .p-grab{display:none}body.wholesheet .panel:not(.picked){display:none}body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked){display:grid;grid-template-columns:minmax(0,1fr) var(--panel-w);grid-template-rows:minmax(0,1fr)}body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked)>.paper{width:auto;min-width:0}@media(max-width:900px){:root{--panel-w: 0px}.scene:not(.mapsheet):not(.wall):not(.frame)>main,body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked){grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) var(--rest)}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.tall){grid-template-rows:minmax(0,1fr) var(--rest-tall)}#rack>.panel{top:auto;left:0;right:0;width:100%;max-height:var(--rest);border-left:0;border-top:1px solid var(--line)}#rack>.panel.tall{max-height:var(--rest-tall)}.scene:not(.mapsheet):not(.wall):not(.frame)>main{padding-left:0}.scene .paper .sheet .tb{right:0;bottom:var(--rest)}.panel,#rack .panel{padding:0 16px 28px;border-left:0;border-top:1px solid var(--line)}.panel .p-body{padding-top:4px}.panel h2{font-size:var(--t-card)}.panel .p-close,#rack .panel .p-close{top:8px;right:8px;width:44px;height:44px}.panel .p-foot{gap:0 12px;padding:4px 0}.panel .p-foot a,.panel .p-foot button{position:relative}.panel .p-foot a:after,.panel .p-foot button:after{content:"";position:absolute;left:-6px;right:-6px;top:50%;height:44px;transform:translateY(-50%)}.panel .p-dives button.primary,.panel .p-dives li button{min-height:44px}body.wholesheet .panel.picked{border-top:1px solid var(--line)}}@media(max-width:900px),(orientation:landscape)and (max-height:560px){.panel .p-grab{--bleed: 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:sticky;top:0;z-index:2;box-sizing:border-box;width:calc(100% + var(--bleed) * 2);margin:0 calc(var(--bleed) * -1) 8px;min-height:44px;padding:8px 0 7px;border:0;border-bottom:1px solid var(--line);background:var(--bg);color:var(--mute);font:500 var(--t-eyebrow) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;cursor:pointer;touch-action:none;transition:color .18s ease}.panel .p-grab i{display:block;width:44px;height:3px;border-radius:var(--r-chrome);background:currentColor;opacity:.55}.panel .p-grab b{display:inline-flex;align-items:center;gap:var(--s1);font-weight:500}.panel .p-grab svg{width:10px;height:6px;flex:0 0 10px;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.panel.tall .p-grab svg{transform:rotate(180deg)}.panel .p-grab:hover,.panel .p-grab:focus-visible{color:var(--accent)}.panel .p-grab:focus-visible{outline:1px solid var(--accent);outline-offset:-2px}.panel .p-close{z-index:3}}@media(orientation:landscape)and (max-height:560px){:root{--panel-w: min(320px, 44vw)}.scene:not(.mapsheet):not(.wall):not(.frame)>main,body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked){grid-template-columns:minmax(0,1fr) var(--panel-w);grid-template-rows:minmax(0,1fr);transition:grid-template-columns .3s cubic-bezier(.2,.8,.2,1)}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.tall),body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.tall){grid-template-columns:minmax(0,1fr) min(560px,64vw)}#rack>.panel{top:calc(var(--loose-top) + 20px);bottom:0;left:auto;right:0;width:var(--panel-w);max-height:none;border-top:0;border-left:1px solid var(--line)}#rack>.panel.tall{width:min(560px,64vw)}.panel,#rack .panel{padding:0 16px 20px;border-top:0;border-left:1px solid var(--line)}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.panel{margin-top:var(--loose-top)}#rack .panel .p-grab{margin-top:calc(var(--loose-top) + 20px)}body.wholesheet .scene>main>.panel{margin-top:0}body.wholesheet .panel.picked{border-top:0;border-left:1px solid var(--line)}body.v-rack:has(.panel.tall) #tools{opacity:0;visibility:hidden}}@media(prefers-reduced-motion:reduce){.scene>main,.panel .p-grab svg,.panel .p-body.swap>*{transition:none;animation:none}}.panel .p-dives li button:after{content:"\2197";color:var(--accent)}.title-open{pointer-events:auto;position:relative;margin:0;padding:0;border:0;background:none;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;text-shadow:inherit;cursor:pointer;border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.title-open:hover,.title-open:focus-visible{color:var(--accent);border-bottom-color:currentColor;outline:none}.title-open:after{content:"";position:absolute;inset:-14px -16px}#rack .hint{position:absolute;left:var(--margin);bottom:26px;margin:0;font:var(--t-eyebrow) / 1.35 var(--mono);letter-spacing:var(--tt-eyebrow);color:var(--mute);pointer-events:none;padding:5px 9px;transition:opacity .6s ease .3s}#rack .hint.gone{opacity:0}@media(max-width:700px){#rack .hint{left:22px;bottom:calc(max(18px,env(safe-area-inset-bottom)) + 54px)}}@media(max-width:700px){body.v-rack:has(#rack>.panel:not(.closed)) #tools{transform:none}}body.v-index #rack .places,body.v-index #rack .rev,body.v-index #rack .hint,body.v-index #rack .railcap,body.v-index #rack .title,body.v-index #rack .sheet,body.v-index #rack .panel{opacity:0;visibility:hidden}body.v-index #rack canvas{cursor:default;pointer-events:none}body.v-index #rack svg.leaders{display:none}body.v-index #rack .stage{left:calc(var(--ix-pad) + (100% - var(--ix-pad) * 2 - var(--ix-gap) * 3 - var(--ix-box)) / 3 + var(--ix-gap));right:calc(var(--ix-pad) + var(--ix-box) + var(--ix-gap));top:340px;bottom:30px;width:380px;height:min(520px,100% - 370px);margin:auto}body.v-index{--ix-pad: 70px;--ix-gap: 30px;--ix-box: 500px}.ix{position:fixed;inset:0;z-index:5;pointer-events:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,var(--ix-box));grid-template-rows:auto auto minmax(0,1fr) auto;gap:18px var(--ix-gap);padding:86px var(--ix-pad) 30px;box-sizing:border-box;overflow:hidden}body:not(.v-index) .ix{display:none}.ix-head{grid-column:1 / -1;grid-row:1;display:flex;align-items:baseline;justify-content:space-between;gap:30px;padding-bottom:10px;border-bottom:1px solid var(--line)}.ix h2{display:inline;margin:0;font-size:var(--t-title);font-weight:600;letter-spacing:var(--tt-title)}.ix-note{margin-left:10px;font:var(--t-meta) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}.ix-find{flex:0 0 auto;width:min(300px,26vw);padding:8px 12px;background:transparent;border:1px solid var(--line);border-radius:var(--r-chrome);color:var(--ink);font:var(--t-meta) var(--mono)}.ix-find:focus-visible{outline:none;border-color:var(--accent)}.ix-tour{grid-column:1 / 4;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 30px;align-items:start}.ix-side{grid-column:1;grid-row:3;align-self:start;display:grid;gap:18px;align-content:start}.ix-apps{grid-column:4;grid-row:2 / 5;align-self:stretch;display:flex;flex-direction:column;min-height:0;max-height:100%;border:1px solid var(--line);padding:12px 16px 8px;background:color-mix(in srgb,var(--bg) 70%,transparent)}.ix-apps>header{flex:none;padding-bottom:8px;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.ix-apps h2{font-size:var(--t-card)}.ix-shelves{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-content:start;gap:0 24px;padding-top:var(--s2)}.ix-shelves section[data-long]{grid-column:1 / -1;columns:190px;column-gap:24px}.ix-more .ix-shelves{mask-image:linear-gradient(to bottom,#000 calc(100% - 30px),transparent)}.ix-shelves h3{break-after:avoid}.ix-shelves li{font-size:var(--t-body);padding:2px 0}.ix-tb{grid-column:4;grid-row:4;align-self:end;justify-self:end}.ix>.ix-head,.ix>.ix-tour,.ix>.ix-side,.ix>.ix-apps,.ix>.ix-tb{pointer-events:auto}body.v-index:has(.ix-finding) #rack .stage{opacity:.25}.ix-finding .ix-apps{align-self:start;max-height:100%}@media(max-height:820px){.ix li{font-size:var(--t-body);padding:2px 0}.ix h2{font-size:var(--t-card)}body.v-index #rack .stage{top:320px;height:min(520px,100% - 350px)}}.ix-tight .ix-side{gap:12px}.ix-tight .ix-side li{padding:0}.ix-split .ix-side{grid-column:1 / 3;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}body.v-index:has(.ix-split) #rack .stage{left:calc(var(--ix-pad) + (100% - var(--ix-pad) * 2 - var(--ix-gap) * 3 - var(--ix-box)) * 2 / 3 + var(--ix-gap) * 2);width:min(380px,calc((100% - var(--ix-pad) * 2 - var(--ix-gap) * 3 - var(--ix-box)) / 3 - 8px))}.ix-lower .ix-apps{grid-row:2 / 4}.ix-lower .ix-tb{grid-column:4;justify-self:end}@media(max-width:1100px){.ix{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,300px);padding:86px 40px 30px}.ix-tour{grid-column:1 / 3;grid-template-columns:repeat(2,minmax(0,1fr))}body.v-index #rack .stage{top:auto;bottom:40px;width:240px;height:288px}.ix-apps{grid-column:3;grid-row:2 / 4}.ix-shelves,.ix-shelves section[data-long]{grid-template-columns:minmax(0,1fr);columns:1}.ix-tb{grid-column:3;justify-self:end}body.v-index #rack .stage{left:0;right:0;width:240px}}@media(max-width:900px){body.v-index #rack .stage{visibility:hidden}.ix{display:block;inset:72px 0 0;overflow-y:auto;overscroll-behavior:contain;padding:12px 24px max(30px,env(safe-area-inset-bottom))}.ix-head{flex-direction:column;align-items:stretch;gap:var(--s2)}.ix-find{width:100%;font-size:16px}.ix-tour,.ix-side{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 24px;align-items:start}.ix-tour>section,.ix-side>section{margin-bottom:18px}.ix-apps{margin-top:18px;max-height:none}.ix-shelves{overflow:visible}.ix li,.ix-shelves li{padding:11px 0;font-size:var(--t-body)}.ix-shelves,.ix-shelves section[data-long]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));columns:240px}.ix-tb{margin:20px auto 0 0;width:max-content}.ruler{display:none}}.boot{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;font:500 var(--t-eyebrow) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}#rack .stage:not(.drawn) .labels{opacity:0}.scene .lost{padding:24px;font:var(--t-body) / 1.5 var(--sans)}.scene .lost a{color:var(--accent)}.panel .p-nav{display:flex;justify-content:space-between;gap:12px;font:500 var(--t-meta) / 1.4 var(--mono)}.panel .p-nav a{color:var(--ink);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--ink) 35%,transparent)}.panel .p-nav a:hover,.panel .p-nav a:focus-visible{color:var(--accent);border-bottom-color:currentColor}.panel .p-nav a.next{margin-left:auto;text-align:right}.panel .p-nav a[aria-hidden=true]{visibility:hidden}.panel .p-eyebrow a{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--mute) 45%,transparent);text-underline-offset:3px}.panel .p-eyebrow a:hover,.panel .p-eyebrow a:focus-visible{color:var(--accent)}.panel .p-figure figcaption{position:absolute;left:0;bottom:0;z-index:2;max-width:55%;padding:3px 0;font:var(--t-eyebrow) / 1.35 var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute);background:color-mix(in srgb,var(--bg) 85%,transparent)}#rack .places .cap,#rack .rev>.cap{font:500 var(--t-micro) / 1.3 var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute);text-shadow:var(--knock);pointer-events:none}#rack .places .cap{text-align:center;margin-bottom:2px}#rack .rev>.cap{max-width:7em;margin:0 auto 2px;text-align:center}@keyframes gripReach{0%,to{width:8px}50%{width:16px;background:var(--accent)}}body.fresh #rack .rev-grip:before,body.fresh #rack .rev-grip:after{animation:gripReach 1.1s ease-in-out 1.4s 3}@media(max-width:700px){#rack .places .cap,#rack .rev>.cap{display:none}}.ix-wall{flex:0 0 auto;font:var(--t-meta) var(--mono);letter-spacing:var(--tt-eyebrow);color:var(--mute);white-space:nowrap}.ix-wall:hover,.ix-wall:focus-visible{color:var(--accent)}.ix>.ix-plate{grid-column:2 / 4;grid-row:4;align-self:end;justify-self:center;pointer-events:auto;padding:6px 10px;font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute);text-decoration:none}.ix>.ix-plate:hover,.ix>.ix-plate:focus-visible{color:var(--accent)}@media(max-width:900px){.ix>.ix-plate{display:none}}.scene.wall .sheethead a.back{font:500 var(--t-eyebrow) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--accent);text-decoration:none}.scene.wall .paper .sheet.foot{display:block;position:static;border:0;margin-top:36px}.scene.wall .paper .sheet.foot .tb{position:static;display:inline-grid;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}@media(pointer:coarse){.panel .p-close,#rack .panel .p-close{width:44px;height:44px}}#keys .sheet{width:min(520px,100%)}#keys section{display:grid;gap:var(--s1)}#keys h3{margin:0;font:500 var(--t-micro) var(--mono);letter-spacing:var(--tt-eyebrow);text-transform:uppercase;color:var(--mute)}#keys dl{margin:0;display:grid;gap:4px}#keys dl>div{display:grid;grid-template-columns:9em 1fr;gap:12px;align-items:baseline}#keys dt{font:500 var(--t-meta) var(--mono);color:var(--accent)}#keys dd{margin:0;font:var(--t-body) / 1.4 var(--sans);color:var(--ink)}@media(prefers-reduced-motion:reduce){body.fresh #rack .rev-grip:before,body.fresh #rack .rev-grip:after{animation:none}}@media(min-width:901px){body:not(.wholesheet) #scene-view.scene:not(.mapsheet) main{margin-top:calc(-1 * var(--loose-top))}body:not(.wholesheet) #scene-view.scene:not(.mapsheet) main>.paper{padding-top:var(--loose-top)}body:not(.wholesheet) #scene-view.scene:not(.mapsheet) main>.panel{padding-top:calc(26px + var(--loose-top))}body:not(.wholesheet) #scene-view.scene:not(.mapsheet) main>.panel .p-close{top:calc(var(--loose-top) - 4px)}}@media(min-width:901px){body:not(.wholesheet):has(#scene-view.scene:not(.mapsheet):not([hidden]) main>.panel:not(.closed)) #tools{transform:translate(calc(var(--panel-w) * -1))}}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.closed){grid-template-columns:minmax(0,1fr)}@media(min-width:901px){.scene:not(.mapsheet):not(.wall):not(.frame)>main{transition:grid-template-columns .3s ease}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.closed){grid-template-columns:minmax(0,1fr) 0px}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.panel{transition:opacity .2s ease,visibility 0s linear 0s}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.panel.closed{display:block;visibility:hidden;opacity:0;overflow:hidden;height:0;padding:0;border-left:0;transition:opacity .2s ease,visibility 0s linear .3s}.scene .paper .sheet .tb{transition:right .3s ease}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.closed) .sheet .tb{right:0}}@media(prefers-reduced-motion:reduce){.scene:not(.mapsheet):not(.wall):not(.frame)>main,.scene:not(.mapsheet):not(.wall):not(.frame)>main>.panel,.scene .paper .sheet .tb{transition:none}}@media(max-width:900px),(orientation:landscape)and (max-height:560px){.scene .panhint button.whole,#rack .places button{position:relative;width:34px;height:34px;min-width:0;min-height:0;padding:0}.scene .panhint button.whole:after,#rack .places button:after{content:"";position:absolute;left:-5px;right:-5px;top:50%;height:44px;transform:translateY(-50%)}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.closed){grid-template-rows:minmax(0,1fr)}}@media(max-width:700px){#rack .rev{--rev-year: 34px;--rev-brk: 28px}#rack .rev-stop{padding:4px 6px;font-size:var(--t-micro)}}#rack .rev-name em.yr{display:inline;font-size:inherit;letter-spacing:inherit;color:inherit}@media(max-width:720px){#rack .sheet .tb{display:none}}@media(max-width:700px){#rack .rev .rev-name em{display:none}}@media(max-width:900px),(orientation:landscape)and (max-height:560px){.scene .paper>button.whole{position:fixed;left:auto;right:10px;bottom:calc(var(--rest) + 10px)}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.tall) .paper>button.whole{bottom:calc(var(--rest-tall) + 10px)}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.closed) .paper>button.whole,body.wholesheet .scene .paper>button.whole{bottom:10px}body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked) .paper>button.whole{bottom:calc(var(--rest) + 10px)}body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked.tall){grid-template-rows:minmax(0,1fr) var(--rest-tall)}body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked.tall) .paper>button.whole{bottom:calc(var(--rest-tall) + 10px)}}@media(max-width:900px),(orientation:landscape)and (max-height:560px){#lead .to3d,#lead .opener,#tools .look,#tools .gh,.scene .panhint button.whole,.scene .paper>button.whole,#rack .places button{width:38px;height:38px}}@media(max-width:700px){#rack .rev{--rev-year: 40px;--rev-brk: 32px}}@media(orientation:landscape)and (max-height:560px){#rack .sheet .tb,.ix-tb,#rack .places .cap,#rack .rev .cap,#rack .rev .rev-name em{display:none}#rack .rev{--rev-year: 40px;--rev-brk: 32px}#rack .rev-stop{padding:4px 6px;font-size:var(--t-micro)}.scene .paper>button.whole,.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.tall) .paper>button.whole,body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked) .paper>button.whole,body.wholesheet .scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.picked.tall) .paper>button.whole{left:auto;right:calc(var(--panel-w) + 10px);bottom:10px}.scene:not(.mapsheet):not(.wall):not(.frame)>main:has(>.panel.closed) .paper>button.whole,body.wholesheet .scene .paper>button.whole{right:10px}}@media(orientation:landscape)and (max-height:560px){#rack>.panel{top:0}#rack .panel .p-grab{margin-top:0}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.panel{margin-top:0}body:not(.wholesheet):has(#scene-view.scene:not(.mapsheet):not([hidden]) main>.panel:not(.closed)) #tools{transform:translate(calc(var(--panel-w) * -1))}#rack .hint{display:none}}@media(orientation:landscape)and (max-height:560px){.panel .p-grab{display:none}}@media(orientation:landscape)and (max-height:560px){body:not(.wholesheet) #scene-view.scene:not(.mapsheet) main{margin-top:calc(-1 * var(--loose-top))}body:not(.wholesheet) #scene-view.scene:not(.mapsheet) main>.paper{padding-top:var(--loose-top)}.scene:not(.mapsheet):not(.wall):not(.frame)>main>.panel,#rack>.panel{padding-top:22px}}
