:root{--bg:#1a222b;--bg-deep:#141a21;--panel:#1f2832;--panel-band:#26303b;--well:#161d25;--line:#36424f;--line-soft:#29333e;--hi:#d6e4f00f;--shadow:#0f141a;--text:#e1e6eb;--text-2:#aab6c1;--muted:#76848f;--faint:#4b5865;--accent:#d8723c;--rail:92px;--info:clamp(320px, 27vw, 420px);--bar:40px;--gutter:clamp(20px, 2.4vw, 36px);--ease:cubic-bezier(.22, .61, .36, 1);--font-sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-label:var(--font-sans);--bracket:10px;--bracket-out:7px;--frame-air:20px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0}body{font-family:var(--font-sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:15px;line-height:1.5;overflow:hidden}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:1px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.label,.mono{font-family:var(--font-label)}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:10px;font-weight:500;line-height:12px}.group-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.group-head:after{content:"";background:var(--line-soft);flex:1;height:1px}.app{grid-template-columns:var(--rail) minmax(0, 1fr);grid-template-rows:minmax(0,1fr);height:100svh;display:grid}.rail{border-right:1px solid var(--line-soft);background:linear-gradient(90deg, var(--bg-deep), var(--bg) 70%);flex-direction:column;align-items:center;padding:22px 0 18px;display:flex;position:relative}.rail:after{content:"";background:var(--hi);width:1px;position:absolute;inset:0 0 0 auto}.mark{font-family:var(--font-label);letter-spacing:.04em;text-transform:uppercase;text-align:center;overflow-wrap:anywhere;max-width:76px;font-size:11px;font-weight:700;line-height:13px;text-decoration:none;display:block}.rail-nav{gap:18px;margin-top:40px;display:grid}.nav-item{color:var(--muted);justify-items:center;gap:7px;text-decoration:none;transition:color .2s;display:grid}.nav-item:hover,.nav-item[aria-current=true]{color:var(--text)}.disc{background:radial-gradient(circle, var(--text-2) 0 1.5px, var(--bg-deep) 1.5px 2.5px, var(--faint) 2.5px 3.5px, #2d3844 3.5px 4.5px, var(--faint) 4.5px 5.5px, #26303b 5.5px 9.5px, var(--line) 9.5px 10.5px, transparent 10.5px);width:22px;height:22px;transition:transform .6s var(--ease);border-radius:50%;position:relative}.nav-item:hover .disc{transform:rotate(90deg)}.nav-item[aria-current=true] .disc:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;top:-1px;right:-1px}.nav-item .label{color:inherit;font-size:9px}.track{flex:1;width:18px;min-height:80px;margin:40px 0 24px;position:relative}.track:before{content:"";background:var(--line-soft);width:1px;position:absolute;inset:0 auto 0 50%}.track-tick{background:var(--faint);width:6px;height:1px;margin-left:-3px;position:absolute;left:50%}.track-knob{border:1px solid var(--text-2);background:var(--bg);width:9px;height:9px;box-shadow:0 0 0 3px var(--bg);transition:top .7s var(--ease);border-radius:50%;margin:-4.5px 0 0 -4.5px;position:absolute;left:50%}.vlabel{writing-mode:vertical-rl;white-space:nowrap;color:var(--faint);font-size:9px;transform:rotate(180deg)}.dots{background:radial-gradient(circle, var(--faint) .75px, transparent 1px) 0 0 / 4px 4px;opacity:.8;width:24px;height:16px;margin-top:16px}.stage{grid-template-rows:var(--bar) minmax(0, 1fr);min-width:0;display:grid;position:relative}.topbar{padding:0 var(--gutter);border-bottom:1px solid var(--line-soft);align-items:center;gap:24px;min-width:0;display:flex}.ruler{scrollbar-width:none;gap:2px;min-width:0;display:flex;overflow-x:auto}.ruler a{font-family:var(--font-label);color:var(--faint);padding:4px 6px;font-size:10px;text-decoration:none;transition:color .2s;position:relative}.ruler a:hover{color:var(--text-2)}.ruler a[aria-current=true]{color:var(--text)}.ruler a[aria-current=true]:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:-1px;left:6px;right:6px}.topbar-meta{white-space:nowrap;gap:18px;margin-left:auto;display:flex}.topbar-meta .label{color:var(--faint)}.topbar-nav,.topbar>.mark{display:none}.slides{grid-template:minmax(0,1fr)/minmax(0,1fr);min-height:0;display:grid}.slide{grid-area:1/1;grid-template-columns:minmax(0, 1fr) var(--info);visibility:hidden;opacity:0;grid-template-rows:minmax(0,1fr);min-height:0;display:grid}.slide.is-active{visibility:visible;opacity:1}.slide-media{min-width:0;min-height:0;padding:var(--gutter) var(--gutter) 18px;flex-direction:column;display:flex}.frame-box{min-height:0;padding:var(--bracket-out) var(--bracket-out) calc(var(--bracket-out) + var(--frame-air));flex:1;place-items:center;display:grid;container-type:size}@property --ar{syntax:"<number>";inherits:true;initial-value:1.7778}.frame{width:min(100cqw, 100cqh * var(--ar));aspect-ratio:var(--ar);transition:--ar .7s var(--ease);margin:0;position:relative}.frame-inner{background:var(--well);position:absolute;inset:0;overflow:hidden}.frame:before,.frame:after,.frame-inner:before,.frame-inner:after{content:"";z-index:2;width:var(--bracket);height:var(--bracket);border:0 solid var(--muted);pointer-events:none;position:absolute}.frame:before{top:calc(-1 * var(--bracket-out));left:calc(-1 * var(--bracket-out));border-width:1px 0 0 1px}.frame:after{bottom:calc(-1 * var(--bracket-out));right:calc(-1 * var(--bracket-out));border-width:0 1px 1px 0}.frame-inner:before{border:1px solid var(--hi);width:auto;height:auto;inset:0}.frame-inner:after{display:none}.frame-corner{z-index:2;width:var(--bracket);height:var(--bracket);border:0 solid var(--muted);pointer-events:none;position:absolute}.frame-corner.tr{top:calc(-1 * var(--bracket-out));right:calc(-1 * var(--bracket-out));border-width:1px 1px 0 0}.frame-corner.bl{bottom:calc(-1 * var(--bracket-out));left:calc(-1 * var(--bracket-out));border-width:0 0 1px 1px}.media-item{visibility:hidden;opacity:0;position:absolute;inset:0}.media-item.is-active{visibility:visible;opacity:1}.media-item video,.media-item img{object-fit:cover;background:var(--tint,var(--well));width:100%;height:100%;display:block}.media-item video{cursor:pointer}.readout{font-family:var(--font-label);height:30px;color:var(--muted);white-space:nowrap;align-items:center;gap:18px;min-width:0;margin-top:14px;font-size:10px;display:flex}.readout>span{gap:6px;display:flex}.readout b{color:var(--faint);font-weight:400}.readout .tc{color:var(--text-2);font-variant-numeric:tabular-nums}.readout .play-state{color:var(--text-2);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:6px;display:inline-flex}.readout .play-state svg{fill:currentColor;shape-rendering:crispedges}.play-state[data-state=paused] .i-pause,.play-state:not([data-state=paused]) .i-play{display:none}.pager{align-items:center;gap:10px;margin-left:auto;display:flex}.progress{background:var(--line-soft);height:1px;position:relative}.progress i{background:var(--accent);transform-origin:0;width:100%;position:absolute;inset:0 auto 0 0;transform:scaleX(0)}.slide-info{border-left:1px solid var(--line-soft);flex-direction:column;min-height:0;display:flex}.slide-info-body{min-height:0;padding:var(--gutter) var(--gutter) 28px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;flex:1;gap:34px;display:flex;overflow-y:auto}.counter{font-family:var(--font-label);color:var(--muted);justify-content:space-between;align-items:baseline;font-size:11px;display:flex}.counter strong{color:var(--text);font-weight:400}.status-flag{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.title{letter-spacing:-.02em;text-wrap:balance;margin:-14px 0 0;font-size:clamp(30px,2.7vw,46px);font-weight:400;line-height:1.02}.description p{max-width:44ch;color:var(--text-2);text-wrap:pretty;margin:0}.panel{border:1px solid var(--line);background:var(--panel);box-shadow:inset 0 1px var(--hi), 2px 2px 0 var(--shadow);border-radius:3px}.panel-band{border-bottom:1px solid var(--line);background:linear-gradient(var(--panel-band), var(--panel));border-radius:2px 2px 0 0;justify-content:space-between;align-items:center;height:22px;padding:0 9px;display:flex}.panel-band .ticks{gap:2px;display:flex}.panel-band .ticks i{background:var(--faint);width:2px;height:7px}.panel-band .ticks i:nth-child(3n){background:var(--muted)}.details{margin:0;padding:4px 10px}.details div{border-top:1px dotted var(--line);grid-template-columns:7.5em minmax(0,1fr);gap:12px;padding:9px 0;display:grid}.details div:first-child{border-top:0}.details dt{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:2px;font-size:10px}.details dd{color:var(--text);margin:0;font-size:14px}.slide-nav{padding:14px var(--gutter) 22px;border-top:1px solid var(--line-soft);flex:none;align-items:center;gap:14px;display:flex}.slide-nav .next-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:13px;text-decoration:none;overflow:hidden}.slide-nav .next-label span{color:var(--text-2)}.btn-group{border:1px solid var(--line);background:var(--shadow);border-radius:2px;flex:none;gap:1px;padding:1px;display:inline-flex}.btn{background:var(--panel-band);width:34px;height:22px;fill:var(--text-2);box-shadow:inset 0 1px var(--hi);place-items:center;transition:background .15s;display:grid}.btn:hover{fill:var(--text);background:#2e3a46}.btn:active{background:var(--well)}.btn svg{shape-rendering:crispedges;width:8px;height:10px}.btn-group.small .btn{width:24px;height:16px}.btn-group.small .btn svg{width:4px;height:5px}.btn-text,.btn-group.small .btn-text{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;width:auto;color:var(--text-2);padding:0 12px;font-size:10px}.overlay{inset:var(--bar) 0 0;z-index:20;background:var(--bg);padding:var(--gutter);opacity:0;visibility:hidden;transition:opacity .35s var(--ease), visibility 0s .35s;position:absolute;overflow-y:auto}.overlay.is-open{opacity:1;visibility:visible;transition:opacity .35s var(--ease)}.overlay-head{align-items:center;gap:10px;margin-bottom:28px;display:flex}.overlay-head:after{content:"";background:var(--line-soft);flex:1;order:1;height:1px}.overlay-head .btn-group{order:2}.index-list{max-width:min(1100px,100% - min(24vw,360px) - 48px);margin:0;padding:0;list-style:none}.index-list a{border-top:1px solid var(--line-soft);color:var(--text-2);grid-template-columns:4em minmax(0,1fr) minmax(0,.7fr) 8em 4em;align-items:baseline;gap:16px;padding:14px 0;text-decoration:none;transition:color .2s;display:grid}.index-list li:last-child a{border-bottom:1px solid var(--line-soft)}.index-list a:hover,.index-list a[aria-current=true]{color:var(--text)}.index-list .n,.index-list .meta{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px}.index-list .t{letter-spacing:-.01em;font-size:clamp(20px,2vw,28px);line-height:1.1}.index-list a[aria-current=true] .n{color:var(--accent)}.index-preview{right:calc(var(--gutter) + 8px);bottom:calc(var(--gutter) + 8px);pointer-events:none;opacity:0;width:min(24vw,360px);transition:opacity .25s;position:fixed}.index-preview.is-on{opacity:1}.index-preview img{object-fit:contain;object-position:right bottom;width:100%;height:auto;max-height:60vh;display:block}.about{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:clamp(32px,6vw,96px);max-width:1100px;display:grid}.about-text p{letter-spacing:-.01em;text-wrap:pretty;max-width:34ch;margin:0 0 1em;font-size:clamp(20px,1.9vw,28px);line-height:1.3}.about-text p+p{color:var(--text-2)}.about .details a{border-bottom:1px solid var(--line);text-decoration:none}.about .details a:hover{border-color:var(--accent)}.gate{padding:var(--gutter);place-items:center;display:grid}.gate .panel{width:min(100%,420px)}.gate form{gap:18px;padding:22px 18px 18px;display:grid}.gate h1{letter-spacing:-.01em;margin:0;font-size:28px;font-weight:400}.gate p{color:var(--text-2);margin:0;font-size:14px}.gate .field{gap:8px;display:flex}.gate input{border:1px solid var(--line);background:var(--well);min-width:0;height:32px;color:var(--text);font:inherit;box-shadow:inset 1px 1px 0 var(--shadow);border-radius:2px;flex:1;padding:0 10px;font-size:14px}.gate .btn-group .btn{height:28px}.gate .error{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:10px}@media (width<=900px){:root{--gutter:16px;--bar:48px;--frame-air:16px}body{overflow:auto}.app{height:auto;display:block}.rail{display:none}.stage{display:block}.topbar{z-index:30;height:var(--bar);background:var(--bg);gap:14px;position:sticky;top:0}.topbar>.mark{text-align:left;flex:none;max-width:none;display:block}.topbar-meta{display:none}.topbar-nav{gap:16px;margin-left:auto;display:flex}.topbar-nav a{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:10px;text-decoration:none}.topbar-nav a[aria-current=true]{color:var(--text);box-shadow:0 1px 0 var(--accent)}.ruler{display:none}.slide{padding-bottom:calc(64px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);align-content:start}.slide:not(.is-active){height:0;overflow:hidden}.slide-media{padding:22px var(--gutter) 0}.frame-box{flex:none;container-type:inline-size}.frame{width:min(100cqw, 66svh * var(--ar))}.readout{gap:12px}.readout .res{display:none}.slide-info{border-left:0}.slide-info-body{gap:28px;padding-top:26px;overflow:visible}.title{margin-top:-12px;font-size:32px}.slide-nav{display:none}.mobile-bar{z-index:30;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1a222bf0;justify-content:space-between;align-items:center;display:flex;position:fixed;inset:auto 0 0}.overlay{inset:var(--bar) 0 0;position:fixed}.index-list{max-width:none}.index-list a{grid-template-columns:2.8em minmax(0,1fr) auto}.index-list .meta.client,.index-list .meta.kind,.index-preview{display:none}.about{grid-template-columns:minmax(0,1fr)}}@media (width>=901px){.mobile-bar{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}
