*,*:before,*:after{box-sizing:border-box}:root{--glass: rgba(16, 18, 22, .58);--glass-strong: rgba(14, 16, 20, .78);--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .18);--text: rgba(244, 246, 247, .95);--muted: rgba(226, 231, 235, .62);--faint: rgba(226, 231, 235, .38);--glow: 0 0 12px color-mix(in srgb, var(--m-400) 70%, transparent)}html,body{margin:0;height:100%;overflow:hidden;background:#10141a;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}#viewport{position:fixed;top:0;right:0;bottom:0;left:0}#viewport canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#viewport canvas:active{cursor:grabbing}#viewport:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,rgba(8,10,14,.55),transparent 28%),linear-gradient(to top,rgba(8,10,14,.5),transparent 26%),radial-gradient(ellipse at center,transparent 55%,rgba(8,10,14,.35))}.labels{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;direction:ltr}.labels>.tag{top:0;left:0}#veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-content:center;justify-items:center;gap:18px;background:radial-gradient(ellipse at center,#1a2128,#0b0e12 70%);transition:opacity .9s ease .2s,visibility 0s linear 1.1s}#veil p{margin:0;font-size:30px;font-weight:600;color:var(--text)}#veil i{width:160px;height:2px;border-radius:2px;background:linear-gradient(to left,var(--m-400),transparent);background-size:200% 100%;animation:veil 1.4s ease-in-out infinite;box-shadow:var(--glow)}@keyframes veil{0%{background-position:100% 0}to{background-position:-100% 0}}.is-ready #veil{opacity:0;visibility:hidden;pointer-events:none}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr) minmax(0,420px);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"head . pills" ". . card" "dock timeline ." "note note note";gap:14px 18px;padding:max(22px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}#overlay>*{pointer-events:auto;min-width:0}.glass{background:var(--glass);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 48px #00000047}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--m-400);outline-offset:2px}.masthead{grid-area:head;align-self:start;pointer-events:none;text-shadow:0 1px 18px rgba(0,0,0,.35)}.eyebrow{margin:0;font-size:12px;font-weight:500;color:var(--m-300)}.masthead h1{margin:8px 0;font-size:40px;font-weight:600;line-height:1.1}.lede{margin:0;max-width:340px;font-size:14px;line-height:1.7;color:var(--muted)}.accent{display:flex;align-items:center;gap:8px;margin:12px 0 0;font-size:13px;font-weight:500;color:var(--m-300)}.accent:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--m-400);box-shadow:var(--glow)}.accent[hidden]{display:none}.fixture{display:inline-block;margin:14px 0 0;padding:5px 10px;border:1px dashed var(--line-strong);border-radius:8px;font-size:11px;color:var(--faint)}.pills{grid-area:pills;align-self:start;justify-self:end;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.pill{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:var(--glass);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);font-size:13.5px;font-weight:500;color:var(--muted);transition:color .2s,border-color .2s,background .2s}.pill i{width:6px;height:6px;border-radius:50%;background:var(--faint);transition:background .2s,box-shadow .2s}.pill:hover{color:var(--text);border-color:var(--line-strong)}.pill[aria-pressed=true]{color:var(--text);border-color:color-mix(in srgb,var(--m-400) 55%,transparent);background:color-mix(in srgb,var(--m-900) 55%,var(--glass))}.pill[aria-pressed=true] i{background:var(--m-400);box-shadow:var(--glow)}.timeline{grid-area:timeline;align-self:end;justify-self:center;width:min(760px,100%);padding:12px 18px 14px}.marks{display:grid;grid-template-columns:repeat(4,1fr);margin-inline-start:52px;margin-inline-end:52px}.mark{display:flex;align-items:baseline;gap:6px;padding:4px 2px;border:0;background:transparent;font-size:12px;color:var(--faint);transition:color .2s}.mark span{font-size:11px;font-variant-numeric:tabular-nums}.mark:hover,.mark.is-current{color:var(--text)}.mark.is-current span{color:var(--m-300)}.track{display:flex;align-items:center;gap:14px;margin-top:6px}.play{flex:none;position:relative;width:38px;height:38px;border:1px solid var(--line-strong);border-radius:50%;background:#ffffff0f}.play:before{content:"";position:absolute;top:50%;left:50%;border-style:solid;border-width:7px 11px 7px 0;border-color:transparent var(--text) transparent transparent;transform:translate(-60%,-50%)}.play.is-playing:before{width:10px;height:12px;border:0;border-inline:3px solid var(--text);transform:translate(-50%,-50%)}.track input,.slider input{flex:1;min-width:0;height:22px;margin:0;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none}.track input::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(to left,var(--m-400) 0 var(--fill, 100%),rgba(255,255,255,.16) var(--fill, 100%))}.track input::-moz-range-track{height:3px;border-radius:3px;background:linear-gradient(to left,var(--m-400) 0 var(--fill, 100%),rgba(255,255,255,.16) var(--fill, 100%))}.slider input::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:#ffffff29}.slider input::-moz-range-track{height:3px;border-radius:3px;background:#ffffff29}.track input::-webkit-slider-thumb,.slider input::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-6.5px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--m-400) 35%,transparent),var(--glow)}.track input::-moz-range-thumb,.slider input::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--m-400) 35%,transparent),var(--glow)}.percent{flex:none;min-width:40px;font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);text-align:left}.dock{grid-area:dock;align-self:end;display:grid;gap:12px;padding:14px}.floors{display:flex;flex-wrap:wrap;gap:6px}.chip{min-height:36px;padding:0 12px;border:1px solid transparent;border-radius:10px;background:#ffffff0f;font-size:13px;font-weight:500;color:var(--muted)}.chip:hover{color:var(--text)}.chip[aria-pressed=true]{color:var(--text);border-color:color-mix(in srgb,var(--m-400) 55%,transparent);background:color-mix(in srgb,var(--m-900) 60%,transparent)}.slider{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--muted)}.slider span{flex:none}.legend{display:flex;align-items:center;gap:16px;font-size:12.5px;color:var(--muted)}.key,.status{display:inline-flex;align-items:center;gap:7px}.key i,.status i,.unit-row i,.units h2 i{width:8px;height:8px;border-radius:50%;background:#ffffff8c}.is-available i,.units h2 i{background:var(--m-400);box-shadow:var(--glow)}.card,.units{grid-area:card;align-self:start;position:relative;padding:18px}.card[hidden]{display:none}.close{position:absolute;inset-block-start:12px;inset-inline-end:12px;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#ffffff0d;font-size:18px;line-height:1;color:var(--muted)}.close:hover{color:var(--text)}.status{margin:0;font-size:12.5px;font-weight:500;color:var(--muted)}.status.is-available{color:var(--m-300)}.card h2{margin:8px 0 0;font-size:34px;font-weight:600;letter-spacing:.02em;text-align:right}.brand{margin:2px 0 0;font-size:15px;color:var(--muted);text-align:right}.card dl{margin:16px 0;display:grid;gap:2px}.card dl>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px}.card dt{color:var(--muted)}.card dd{margin:0;font-weight:600;text-align:left}.actions{display:grid;gap:8px}.primary{width:100%;min-height:46px;border:0;border-radius:12px;background:var(--m-400);color:var(--g-900);font-size:15px;font-weight:600;box-shadow:0 8px 28px color-mix(in srgb,var(--m-400) 35%,transparent);transition:background .2s}.primary:hover{background:var(--m-300)}.secondary{width:100%;min-height:40px;border:1px solid var(--line-strong);border-radius:12px;background:transparent;font-size:13.5px;font-weight:500;color:var(--text);overflow-wrap:anywhere}.secondary:hover{background:#ffffff0d}.muted{margin:0;font-size:13px;color:var(--muted)}.card:not([hidden])+.units{display:none}.units{max-height:100%;overflow-y:auto;padding:16px}.units h2{display:flex;align-items:center;gap:9px;margin:0 0 10px;font-size:14px;font-weight:600}.units .close,.list-toggle{display:none}.unit-rows{display:grid;gap:2px}.unit-row{display:grid;grid-template-columns:10px 44px 1fr auto;align-items:center;gap:10px;min-height:40px;padding:0 10px;border:0;border-radius:10px;background:transparent;font-size:13px;text-align:right}.unit-row:hover{background:#ffffff0f}.unit-row b{font-weight:700;text-align:left}.unit-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.unit-row .area{color:var(--text);font-weight:500}.units details{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.units summary{cursor:pointer;padding:6px 10px;font-size:12.5px;color:var(--muted)}.footnote{grid-area:note;justify-self:start;margin:0;font-size:11px;color:var(--faint);text-shadow:0 1px 8px rgba(0,0,0,.4)}.failure{grid-area:card;align-self:start;margin:0;padding:16px}.tag{pointer-events:auto;transition:opacity .25s;-webkit-user-select:none;user-select:none;white-space:nowrap}.tag.is-hidden{opacity:0;pointer-events:none}.tag--unit{position:relative;padding:0 0 26px 26px;cursor:pointer}.tag--unit>i{position:absolute;left:-4px;bottom:-4px;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #fff3}.tag--unit:before{content:"";position:absolute;left:0;bottom:0;width:37px;height:1px;background:#ffffffb3;transform:rotate(-45deg);transform-origin:0 0}.tag--unit.is-available>i{background:var(--m-400);box-shadow:0 0 0 3px color-mix(in srgb,var(--m-400) 30%,transparent),var(--glow)}.tag--unit.is-available:before{background:color-mix(in srgb,var(--m-300) 85%,transparent)}.tag-pill{display:flex;align-items:baseline;gap:7px;padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:var(--glass-strong);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:12px;color:var(--text)}.tag-pill b{font-weight:700}.tag-pill span{color:var(--muted)}.is-available .tag-pill span{color:var(--m-300)}.tag--unit.is-selected .tag-pill{border-color:var(--m-400);box-shadow:var(--glow)}.tag--floor{direction:rtl;padding:5px 11px;border:1px solid var(--line);border-radius:999px;background:var(--glass-strong);font-size:12px;font-weight:600;cursor:pointer}@media(max-width:720px){#overlay{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto auto;grid-template-areas:"head" "pills" "." "timeline" "dock" "note";gap:10px;padding:max(16px,env(safe-area-inset-top)) 16px max(12px,env(safe-area-inset-bottom))}.masthead h1{margin:4px 0;font-size:28px}.lede{font-size:12.5px;line-height:1.6}.accent{margin-top:6px}.fixture{margin-top:8px}.pills{justify-self:stretch;justify-content:stretch;flex-wrap:nowrap}.pill{flex:1;justify-content:center;padding:0 8px;font-size:13px}.timeline{padding:10px 12px 12px}.marks{margin-inline:0}.mark{flex-direction:column;align-items:center;gap:0;font-size:11px}.track{gap:10px}.dock{padding:12px;gap:10px}.floors .chip{flex:1 0 auto}.card,.units{grid-area:3 / 1 / 6 / 2;align-self:end;z-index:2;padding:14px;max-height:62dvh;overflow-y:auto}.units{display:none}.units.is-open,.units .close{display:block}.units h2{padding-inline-end:44px}.card h2{font-size:26px}.card dl{grid-template-columns:1fr 1fr;gap:4px 16px;margin:12px 0}.card dl>div{flex-direction:column;gap:2px;padding:6px 0;font-size:13px}.card dd{text-align:right}.list-toggle{display:block;margin-inline-start:auto;min-height:34px;padding:0 12px;border:1px solid var(--line-strong);border-radius:10px;background:transparent;font-size:12.5px;font-weight:500}.footnote{font-size:10.5px}}@media(prefers-reduced-motion:reduce){.tag,.pill,.pill i{transition:none}}
