:root{--bg:#f6f6f3;--panel:#fff;--ink:#121212;--on-ink:#f6f6f3;--cobalt:#2c42f6;--accent:#d5fd52;--note:#f06a35;--ink-2:color-mix(in srgb, var(--ink) 82%, var(--panel));--muted:color-mix(in srgb, var(--ink) 50%, transparent);--line:color-mix(in srgb, var(--ink) 28%, transparent);--line-soft:color-mix(in srgb, var(--ink) 14%, transparent);--cobalt-hover:color-mix(in srgb, var(--cobalt) 82%, var(--ink));--cobalt-tint:color-mix(in srgb, var(--cobalt) 8%, transparent);--cobalt-faded:color-mix(in srgb, var(--cobalt) 40%, var(--bg));--scrim:color-mix(in srgb, var(--ink) 88%, transparent);--chip:color-mix(in srgb, var(--panel) 92%, transparent);--line-paid:var(--cobalt);--line-social:var(--ink);--line-ai:color-mix(in srgb, var(--accent) 86%, var(--ink));--line-creative:color-mix(in srgb, var(--cobalt) 45%, var(--panel));--line-career:color-mix(in srgb, var(--ink) 50%, var(--bg));--line-campus:var(--line-career);--rule:1px solid var(--line-soft);--rule-card:1px dashed var(--line);--top-h:72px;--bottom-h:56px;--proto-w:1240px;--proto-h:870px;--lbl-flip:.25s;--promo-w:1600px;--promo-h:900px;--pv-btn:34px;--pv-pad:8px 12px;--pv-gap:10px;--pv-track:4px;--pv-knob:12px;--pv-hit:20px;--pv-fade:.2s;--proto-share:92;--proto-max:960px;--proto-gap:32px;--side-max-h:1080px;--side-nav-gap:12px;--card-zoom:.9;--side-w:calc(380px * var(--card-zoom));--side-right:20px;--side-at:80vw;--page-x:40px;--filter-gap:56px;--filter-item-gap:18px;--map-inset:40px;--fs-text:14px;--fs-label:11.5px;--track-label:.05em;--fs-case-title:20px;--fs-figure:18px;--entrance-map:3s;--entrance-card:.8s;--entrance-step:100;--entrance-shift:10vw;--entrance-rise:10px;--icon-r:16px;--gutter:24px;--leaf-indent:16px;--map-min-w:260px;--map-gap:16px;--m-track:6px;--m-core:2.6px;--m-ghost:.08;--m-through:.18;--m-ahead:.3;--m-ride-min:.42s;--m-ride-max:1.1s;--m-ride-per:1.6;--m-arrive-max:.8s;--m-confetti:2.4s;--m-intro:2s;--m-board:.42s;--m-pop:.45s;--fs-nav:14.5px;--fs-ride:12.6px;--ride-w:432px;--ride-band:74px;--bar-w:468px;--bar-h:49px;--bar-btn:36px;--bar-go:122px;--m-type:1.111;--m-fs:calc(13px * var(--m-type));--m-fs-small:calc(11.5px * var(--m-type));--m-fs-line:calc(10.5px * var(--m-type));--m-fs-tag:calc(11px * var(--m-type));--m-fs-no:calc(9.5px * var(--m-type));--m-faded:.12;--m-fade:.3s;--edge-y:20px;--m-scroll:64px;--fade-node:.9s;--dur-card:.8s;--side-gap:10px;--media-h:150px;--scrollbar-linger:.9s;--spin:24s;--g-gap:12px;--g-row-x:6%;--g-row-y:56px;--g-strip-h:210px;--g-set-gap:96px;--swipe:40px;--lb-pad:40px;--lb-note-room:56px;--lb-frame-share:80;--mq-phone:(max-width: 768px);--serif:"Instrument Serif", Georgia, serif;--hand:"Nanum Pen Script", cursive;--sans:"Schibsted Grotesk", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, "PingFang SC", "Noto Sans SC", sans-serif;--ease:cubic-bezier(.16, 1, .3, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--fv-edge:24px;--fv-top-min:100px;--fv-card-gap:28px;--fv-clear:22px;--fv-near:8px;--fv-beside:14px;--fv-upper-room:90px;--fv-bottom-room:110px;--fv-ride-gap:28px;--fv-step:20px;--fv-widths:260 220 180 150;--pass-w:164px;--pass-photo:116px;--pass-rope:96px;--pass-ribbon:7px;--sp-2:2px;--sp-4:4px;--sp-5:5px;--sp-6:6px;--sp-7:7px;--sp-8:8px;--sp-10:10px;--sp-12:12px;--sp-14:14px;--sp-16:16px;--sp-20:20px;--sp-22:22px;--sp-30:30px;--sp-36:36px;--r-3:3px;--r-4:4px;--r-6:6px;--r-8:8px;--r-10:10px;--r-12:12px;--r-16:16px;--r-20:20px;--r-26:26px;--r-999:999px;--dur-200:.2s;--dur-250:.25s;--dur-300:.3s;--dur-350:.35s;--dur-400:.4s;--dur-450:.45s;--dur-500:.5s;--dur-600:.6s;--dur-700:.7s;--fs-10:10px;--fs-10-5:10.5px;--fs-11:11px;--fs-12:12px;--fs-13:13px;--fs-15:15px;--fs-16:16px;--fs-17:17px;--hair:1px;--focus-w:2px;--ul-off:3px;--halo:5px;--tc-w:440px;--tc-hi:color-mix(in srgb, var(--cobalt) 55%, var(--panel));--tc-mid:color-mix(in srgb, var(--cobalt) 85%, var(--panel));--tc-pale:color-mix(in srgb, var(--cobalt) 20%, var(--panel));--tc-stop:color-mix(in srgb, var(--cobalt) 90%, var(--panel));--tc-mute:color-mix(in srgb, var(--panel) 70%, transparent);--tc-rule:color-mix(in srgb, var(--panel) 28%, transparent);--tc-light:color-mix(in srgb, var(--panel) 34%, transparent);--tc-tilt-x:14;--tc-tilt-y:20;--tc-drag:.75;--tc-flick:160;--tc-slop:5;--tc-turn:45;--tc-peek:32;--tc-peek-at:1.3s;--tc-peek-hold:.42s;--tc-swing:.76s;--tc-spring:cubic-bezier(.2, .9, .25, 1.15);--tc-enter:translateY(60px) rotateY(-70deg) scale(.88);--tc-pulse:2.2s;--tc-blur:6px;--tc-veil:color-mix(in srgb, var(--bg) 45%, transparent);--tc-shade:color-mix(in srgb, var(--cobalt) 32%, transparent)}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-wrap:pretty;margin:0}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:var(--focus-w) solid var(--cobalt);outline-offset:var(--focus-w)}.muted{color:var(--muted)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.p-title:focus{outline:none}.p-title:focus-visible{outline:var(--focus-w) solid var(--cobalt);outline-offset:var(--focus-w)}.desk{position:fixed;inset:0;overflow:hidden}.mob{display:none}.top{z-index:5;padding:26px var(--page-x) var(--sp-30);pointer-events:none;background:linear-gradient(var(--bg) 65%, transparent);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.top>*{pointer-events:auto}.top-left{align-items:center;gap:var(--sp-20);display:flex}.brand{align-items:center;gap:var(--sp-6);text-decoration:none;display:flex}.brand-name{font-weight:400;font-size:var(--fs-17);letter-spacing:-.005em}.ix-me{text-decoration:none}.top-nav{align-items:center;gap:var(--sp-36);display:flex}.top-link{font-size:var(--fs-nav);padding:var(--sp-4) 0;gap:var(--sp-6);cursor:pointer;background:0 0;border:0;align-items:baseline;text-decoration:none;display:inline-flex}.top-link i{transition:transform var(--dur-200) var(--ease);font-style:normal;display:inline-block}.top-link:hover i{transform:translate(2px,-2px)}.top-link:hover span,.brand:hover .brand-name,.ix-me:hover{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:var(--hair)}.stage{position:absolute;inset:0}.map{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.lk{fill:none;stroke:var(--ink);stroke-width:.9px;stroke-linejoin:round;transition:stroke var(--dur-400), opacity var(--dur-600)}.lk-related{stroke-dasharray:3 4}.lk.is-far{stroke:var(--line)}.lk.entering{opacity:0}.node{cursor:pointer;transition:opacity var(--fade-node) var(--ease);outline:none}.node:focus-visible .hit{stroke:var(--cobalt);stroke-width:1.5px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.node.is-far{opacity:.55}.node.entering,.node.leaving{opacity:0}.node .hit{fill:#0000}.node .shape{transform-box:fill-box;transform-origin:50%;transition:transform .16s ease-out}.node:hover .shape,.node:focus-visible .shape{transform:scale(1.12)}.node.dragging{cursor:grabbing}.node .shp{fill:var(--panel);stroke:var(--ink);stroke-width:1.2px;vector-effect:non-scaling-stroke;transition:fill var(--dur-300), stroke var(--dur-300)}.node .shp-solid{fill:var(--ink)}.node .shp-eye{fill:var(--bg)}.node .num{fill:var(--ink);pointer-events:none}.node .dot{fill:var(--cobalt)}.node .shp-dot,.ico .shp-dot{fill:var(--ink)}.ico .shp.shp-solid{fill:var(--ink);stroke:none}.node.is-key .shp{stroke:var(--cobalt);stroke-width:1.8px}.node.is-key.is-far .shp{stroke:var(--cobalt-faded)}.lg-num{border:var(--hair) solid var(--muted);border-radius:2px;padding:0 3px;font-size:9px;font-weight:400}.node.t-branch .shp{stroke-width:1.3px}.node.is-prep .shp{stroke-dasharray:2.5 2}.node.is-current:not(.t-root) .shp{fill:var(--accent);stroke:var(--ink);stroke-width:1.4px}.node.is-far .shp{stroke:var(--muted)}.node.is-far .shp-solid,.node.is-far .num{fill:var(--muted)}.node.is-info.is-current .shp-eye{fill:var(--accent)}.node.is-info.is-current .shp-solid{fill:var(--ink)}.node .lbl,.node .lbl-halo{font-size:var(--fs-13);pointer-events:none;transition:transform var(--lbl-flip) ease}.node .lbl{fill:var(--ink);transition:fill var(--dur-300)}.node .lbl-halo{fill:none;stroke:var(--bg);stroke-width:var(--halo);stroke-linejoin:round}.node .lbl,.node .lbl-halo{pointer-events:visiblePainted}.node .lbl-halo .kick{fill:none}.node.t-branch .lbl,.node.t-branch .lbl-halo{font-weight:500}.node:not(.show-kick):not(:hover) .kick{display:none}.node .kick{letter-spacing:var(--track-label);text-transform:uppercase;font-size:9.5px}.node .lbl .kick,.node.t-case .lbl .kick{fill:var(--muted)}.node.t-case .case-date{text-transform:none;letter-spacing:normal;font-weight:400;display:none}.node.t-case:is(:hover,:focus-visible) .case-date{display:inline}.panel .p-case-meta{display:none}.node.is-far .lbl{fill:var(--muted)}.node.is-visited .lbl tspan:not(.kick),.nlink.is-visited .nlink-t,.ngroup-h.is-visited,.sec summary s{text-decoration:line-through;text-decoration-thickness:var(--hair)}.node.is-current:not(.t-root) .lbl,.node.is-current:not(.t-root) .lbl-halo{font-weight:500}.node.t-root .ast line{stroke:var(--cobalt)}.node.t-root .shape-wrap{animation:spin var(--spin) linear infinite;transform-box:fill-box;transform-origin:50%}.node.t-root .lbl,.node.t-root .lbl-halo{font-size:var(--fs-17);letter-spacing:-.01em;font-weight:400}.node.t-root:hover .shape{transform:scale(1.15)}@keyframes spin{to{transform:rotate(360deg)}}.pulse{animation:1.6s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.15}50%{opacity:1}}.node.is-current .pulse{fill:var(--ink);animation:none}.side{z-index:4;top:max(calc(var(--top-h) + var(--side-nav-gap)), calc((100dvh - var(--side-max-h)) / 2));bottom:max(calc(var(--top-h) + var(--side-nav-gap)), calc((100dvh - var(--side-max-h)) / 2));left:min(calc(var(--side-at) - var(--side-w) / 2), calc(100vw - var(--side-w) - var(--side-right)));width:var(--side-w);pointer-events:none;flex-direction:column;justify-content:center;display:flex;position:absolute}.side>*{zoom:var(--card-zoom)}.panel{background:var(--panel);border:var(--hair) solid var(--line-soft);border-radius:var(--r-10);overscroll-behavior:contain;pointer-events:auto;scrollbar-gutter:stable;min-height:0;max-height:100%;transition:height var(--dur-card) var(--ease);scrollbar-width:thin;scrollbar-color:transparent transparent;flex:0 auto;overflow:hidden auto}.panel.scrolling{scrollbar-color:var(--line) transparent}.panel::-webkit-scrollbar{width:6px}.panel::-webkit-scrollbar-thumb{border-radius:var(--r-3);background:0 0}.panel.scrolling::-webkit-scrollbar-thumb{background:var(--line)}.ixnav,.media{height:0;transition:height var(--dur-card) var(--ease);pointer-events:auto;flex:none;overflow:hidden}.panel:not(.open){display:none}.panel.tracking{transition:none}.ixbar{align-items:center;gap:var(--sp-10);pointer-events:auto;background:var(--panel);border:var(--hair) solid var(--line-soft);border-radius:var(--r-10);padding:var(--sp-12) var(--sp-22);text-decoration:none;display:flex}.ixbar i{font-style:normal;font-size:var(--fs-text);flex:0 0 var(--icon-r);text-align:center;margin-left:auto}.ixbar{scrollbar-gutter:stable;scrollbar-width:thin;overflow:hidden}.ixbar:hover .lab{text-underline-offset:var(--ul-off);text-decoration:underline}.ix-ast line{stroke:var(--cobalt)}.ix-body{padding-top:var(--sp-4)}.ix-body>.sec:first-child{border-top:0}.ix-bio{margin:0 0 var(--sp-8)}.ix-bio:last-of-type{margin-bottom:var(--sp-14)}.ix-lead{color:var(--ink);background:linear-gradient(transparent 55%, var(--accent) 55%, var(--accent) 92%, transparent 92%);font-weight:500}.ix-k{color:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:var(--ul-off);text-decoration-thickness:1.5px}.ix-k:hover,.ix-k:focus-visible{text-decoration-style:solid;-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.panel .ix-name{font-size:var(--fs-case-title);letter-spacing:-.01em}.ix-role{color:var(--muted);margin:var(--sp-2) 0 var(--sp-12)}.ix-more{margin:0 0 var(--sp-14);text-underline-offset:var(--ul-off);display:inline-block}.panel .p-body,.ixbar,.m-card{font-size:var(--fs-text);letter-spacing:-.005em;line-height:1.45}.lab{font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;line-height:1.45}.p-ico{flex:0 0 var(--gutter);width:var(--gutter);font-size:var(--fs-text);align-items:center;display:inline-flex}.p-head{padding:var(--sp-16) var(--sp-22) 0;align-items:center;display:flex}.p-path{flex:1;min-width:0}.p-up{color:inherit;text-decoration:none}.p-up:hover{text-underline-offset:var(--ul-off);text-decoration:underline}.p-actions{gap:var(--sp-4);margin-left:var(--sp-12);display:flex}.p-actions .p-btn{width:calc(var(--icon-r) + 2 * var(--sp-6));margin-right:calc(-1 * var(--sp-6));text-align:center;padding-inline:0}.p-btn{cursor:pointer;font-size:var(--fs-text);padding:var(--sp-4) var(--sp-6);border-radius:var(--r-4);background:0 0;border:0;line-height:1}.p-btn:hover{background:var(--bg)}.p-actions .p-btn:not(:last-child){margin-right:0}.p-actions a.p-btn{text-decoration:none;display:inline-block}.p-body{padding:var(--sp-14) var(--sp-22) var(--sp-10)}.p-title,.m-card h3{font-size:var(--fs-text);letter-spacing:inherit;margin:0;font-weight:400;line-height:1.45}.p-id{margin:0 0 var(--sp-14)}.p-sub,.p-meta{color:var(--muted);display:block}.p-fig{margin:0 0 var(--sp-14)}.p-fig b{color:var(--cobalt);font-variant-numeric:tabular-nums;font-weight:400;font-size:var(--fs-figure)}.p-fig>.p-fig-note{margin-top:var(--sp-4);font-size:var(--fs-text);color:var(--muted);display:block}.p-highlight{color:var(--ink);background:linear-gradient(transparent 30%, var(--accent) 30%, var(--accent) 92%, transparent 92%)}.p-tags{gap:var(--sp-8);margin-top:var(--sp-12);flex-wrap:wrap;display:flex}.p-tag{font-size:var(--fs-label);color:var(--cobalt);background:var(--panel);border:var(--hair) solid var(--cobalt);border-radius:var(--r-6);padding:1px var(--sp-5);font-weight:400}.p-kicker{font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);margin:0 0 var(--sp-10)}.p-org{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:var(--ul-off)}.p-org:hover{color:var(--ink);text-decoration-color:currentColor}.ngroup-h{font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink);margin:var(--sp-10) 0 var(--sp-6);text-decoration:none;display:block}.ngroup:first-child .ngroup-h{margin-top:var(--sp-2)}.ngroup-h:hover{text-underline-offset:var(--ul-off);text-decoration:underline}.p-sum{margin:0 0 var(--sp-14)}.p-links{margin:-6px 0 var(--sp-14);color:var(--muted)}.p-def{color:var(--ink)}.zh-note{font-size:var(--fs-12);color:var(--muted);background:var(--bg);border-radius:var(--r-6);padding:var(--sp-6) var(--sp-10);margin:var(--sp-10) 0}.sec{border-top:var(--rule-card)}.sec summary{cursor:pointer;padding:var(--sp-12) 0;align-items:center;list-style:none;display:flex}.sec summary i{flex:0 0 var(--icon-r);text-align:center;margin-left:auto}.sec summary::-webkit-details-marker{display:none}.sec summary i:after{content:"+";font-style:normal;font-size:var(--fs-text)}.sec[open] summary i:after{content:"–"}.sec.ix:not(.is-open) summary i:after{content:"+"}.sec-body{padding:0 0 var(--sp-12)}.sec.ix>.sec-body{overflow:hidden}.sec-body ul{padding-left:var(--leaf-indent);margin:0;list-style:outside}.sec-body li{margin:0 0 var(--sp-6)}.sec-body li::marker{color:var(--muted)}.m-more li::marker{color:var(--muted)}.m-card>.results li::marker{color:var(--muted)}:is(.sec-body .results:has(.result-row),.m-more .results:has(.result-row),.m-card>.results:has(.result-row)){padding-left:var(--leaf-indent);list-style:outside}.results .result-row{margin-bottom:var(--sp-12)}.result-num{color:var(--cobalt);font-size:inherit;font-variant-numeric:normal;font-weight:400;line-height:inherit}.nlist{flex-direction:column;display:flex}.p-list{margin:0 0 var(--sp-6);padding-top:var(--sp-12);border-top:var(--rule-card)}.nlink{padding:0 0 var(--sp-8);color:var(--ink);text-decoration:none;display:block}.nlink .lab{color:var(--muted);display:block}.nlink.is-leaf{padding-left:var(--leaf-indent);position:relative}.nlink.is-leaf:before{content:"•";color:var(--muted);position:absolute;left:0}.nlink:hover .nlink-t{text-underline-offset:var(--ul-off);text-decoration:underline}.ico{flex:none;overflow:visible}.ico .shp{fill:var(--panel);stroke:var(--ink);stroke-width:1.4px}.ico .ast line{stroke:var(--cobalt)}.cv-actions{margin:var(--sp-14) 0 var(--sp-6);gap:var(--sp-8);flex-wrap:wrap;display:flex}.btn{align-items:center;gap:var(--sp-6);font-size:var(--fs-13);padding:var(--sp-7) var(--sp-14);border-radius:var(--r-999);border:var(--hair) solid var(--ink);background:var(--panel);cursor:pointer;text-decoration:none;display:inline-flex}.btn:hover{background:var(--bg)}.btn-primary{background:var(--cobalt);border-color:var(--cobalt);color:var(--on-ink)}.btn-primary:hover{background:var(--cobalt-hover)}.btn-disabled{color:var(--muted);border-style:dashed;border-color:var(--line);cursor:default}.cv-h{font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);margin:var(--sp-20) 0 var(--sp-6);font-weight:400}.cv{margin:0;padding:0;list-style:none}.cv-item{gap:var(--sp-12);padding:var(--sp-10) 0;border-top:var(--rule);grid-template-columns:96px 1fr;display:grid}.cv-when{font-size:var(--fs-label);letter-spacing:.04em;color:var(--muted);padding-top:var(--sp-2);line-height:1.5}.cv-what strong{font-size:var(--fs-text);font-weight:500;display:block}.cv-what>span{color:var(--ink-2);font-size:12.5px;display:block}.cv-what p{font-size:var(--fs-13);margin:var(--sp-6) 0 var(--sp-4);color:var(--ink-2);line-height:1.5}.cv-map{font-size:var(--fs-12);color:var(--cobalt);text-decoration:none}.cv-map:hover{text-decoration:underline}.ct-h{padding:var(--sp-12) 0 var(--sp-4);align-items:center;display:flex}.ct-act{margin-left:auto;margin-right:calc(-1 * var(--sp-4));width:calc(var(--icon-r) + 2 * var(--sp-4));height:calc(var(--icon-r) + 2 * var(--sp-4));border-radius:var(--r-4);color:var(--muted);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.ct-act svg{width:var(--icon-r);height:var(--icon-r);fill:none;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round}.ct-act:hover,.ct-act:focus-visible{color:var(--ink);background:var(--bg)}.ct-act.is-done{color:var(--cobalt)}.ct-row .sec-body{padding-left:var(--gutter);overflow-wrap:anywhere}.ct-link{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.p-body>.ct-row:first-of-type{border-top:0}.p-glyph{color:var(--muted)}.media-row{height:var(--media-h);gap:var(--side-gap);flex-direction:row;display:flex;overflow-x:auto}@keyframes cardIn{0%{opacity:0;transform:scale(.94)}}.tile{border-radius:var(--r-8);background:var(--panel);cursor:zoom-in;border:0;flex:none;width:auto;min-width:200px;height:100%;padding:0;display:block;position:relative;overflow:hidden}.tile img{width:auto;height:100%;display:block}.tile>span{font-size:var(--fs-11);background:var(--chip);border-radius:var(--r-3);padding:var(--sp-2) var(--sp-6);position:absolute;bottom:8px;left:8px}.tile-empty{border:var(--hair) dashed var(--line);background:repeating-linear-gradient(135deg, transparent 0 9px, var(--line-soft) 9px 10px);padding:var(--sp-10);cursor:default;justify-content:flex-end;gap:var(--sp-2);flex-direction:column;flex:auto;display:flex}.tile-empty>span{font-size:var(--fs-12);background:0 0;padding:0;position:static}.tile-empty .tile-k{font-size:var(--fs-10);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.lightbox{z-index:50;background:var(--scrim);cursor:zoom-out;animation:fade var(--dur-300) ease;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox img{border-radius:var(--r-6);max-width:90vw;max-height:88vh}.lightbox .p-btn{color:var(--on-ink);font-size:22px;position:absolute;top:16px;right:20px}.lightbox .p-btn:hover{opacity:.75;background:0 0}.lightbox .p-btn:focus-visible{outline:var(--hair) solid var(--on-ink);outline-offset:3px}@keyframes fade{0%{opacity:0}}.legend{z-index:2;left:var(--map-inset);bottom:var(--edge-y);gap:var(--sp-14);font-size:var(--fs-10-5);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);display:flex;position:absolute}.legend>span{align-items:center;gap:var(--sp-6);display:inline-flex}.legend>.lg-hint{margin-left:var(--sp-20);display:none}.desk.away .legend>.lg-hint{display:inline-flex}.legend .ico .shp{fill:var(--bg)}.proto{z-index:2;right:var(--map-inset);bottom:var(--edge-y);font-size:var(--fs-10);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);margin:0;position:absolute}.side{animation:sideIn var(--entrance-card) var(--ease) both}@keyframes sideIn{0%{opacity:0;transform:translateY(var(--entrance-rise))}}@media (width>=1700px){:root{--pass-w:192px;--pass-photo:144px;--pass-rope:110px}}@media (width<=1180px){.legend{display:none}:root{--pass-w:144px;--pass-photo:96px;--pass-rope:64px}.media{display:none!important}}@media (width<=960px){:root{--side-w:calc(340px * var(--card-zoom))}}@media (width<=768px){.desk{display:none}.mob{padding:0 var(--sp-16) 80px;display:block}}.m-top{z-index:5;padding:var(--sp-12) 0;background:var(--bg);border-bottom:var(--hair) solid var(--line-soft);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.m-brand{align-items:center;gap:var(--sp-8);font-weight:400;font-size:var(--fs-16);text-decoration:none;display:flex}.m-brand line,.m-hero-ast line{stroke:var(--cobalt)}.m-hero{padding:var(--sp-36) 0 var(--sp-20);scroll-margin-top:var(--m-scroll)}.m-hero-ast{animation:spin var(--spin) linear infinite}.m-hero h1{letter-spacing:-.02em;margin:var(--sp-14) 0 var(--sp-4);font-size:30px;font-weight:400}.m-intro{font-size:var(--fs-15);margin:var(--sp-14) 0 0;color:var(--ink-2);line-height:1.6}.m-intro+.m-intro{margin-top:var(--sp-8)}.m-menu{background:var(--panel);border:var(--hair) solid var(--line-soft);border-radius:var(--r-10);padding:var(--sp-14) var(--sp-16);margin:var(--sp-8) 0 28px;scroll-margin-top:var(--m-scroll)}.m-menu-quick{gap:var(--sp-8);margin-bottom:var(--sp-10);display:flex}.m-menu-item{align-items:center;gap:var(--sp-10);border-top:var(--rule);font-size:var(--fs-15);padding:11px 0;font-weight:500;text-decoration:none;display:flex}.m-menu-subs{padding:0 0 var(--sp-8) 21px;flex-direction:column;display:flex}.m-menu-sub{font-size:var(--fs-text);padding:var(--sp-6) 0;color:var(--ink-2);text-decoration:none}.m-sec{padding:var(--sp-8) 0 var(--sp-20);scroll-margin-top:var(--m-scroll)}.m-sec-h{align-items:center;gap:var(--sp-10);letter-spacing:-.015em;margin:var(--sp-12) 0 var(--sp-6);font-size:20px;font-weight:500;display:flex}.m-sub{scroll-margin-top:var(--m-scroll)}.m-sub-h{align-items:center;gap:var(--sp-8);font-size:var(--fs-11);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);margin:var(--sp-20) 0 var(--sp-8);font-weight:400;display:flex}.m-card{background:var(--panel);border:var(--hair) solid var(--line-soft);border-radius:var(--r-10);padding:var(--sp-14) var(--sp-16);margin:0 0 var(--sp-10);scroll-margin-top:var(--m-scroll)}.m-card.is-prep{background:0 0;border-style:dashed}.m-card-type{align-items:center;gap:var(--sp-6);font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);display:flex}.m-card h3{font-size:var(--fs-17);letter-spacing:-.01em;margin:var(--sp-6) 0 var(--sp-4);font-weight:500;line-height:1.3}.m-media{margin:var(--sp-10) 0;aspect-ratio:16/9;border:var(--hair) dashed var(--line);border-radius:var(--r-8);padding:var(--sp-10);font-size:var(--fs-12);color:var(--muted);background:repeating-linear-gradient(135deg, transparent 0 9px, var(--line-soft) 9px 10px);align-items:flex-end;display:flex}.m-more summary{cursor:pointer;font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;padding:var(--sp-8) 0 var(--sp-2);border-top:var(--rule);margin-top:var(--sp-8);list-style:none}.m-more summary::-webkit-details-marker{display:none}.m-more summary .c,.m-more[open] summary .o{display:none}.m-more[open] summary .c{display:inline}.m-more summary:after{content:" +"}.m-more[open] summary:after{content:" –"}.m-more h4,.m-card>h4{font-size:var(--fs-10-5);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);margin:var(--sp-12) 0 var(--sp-4);font-weight:400}.m-more ul,.m-card>.results{padding-left:var(--leaf-indent);font-size:var(--fs-text);margin:0;line-height:1.55;list-style:outside}.m-more li{margin-bottom:var(--sp-5)}.m-foot{padding:var(--sp-30) 0 var(--sp-10);font-size:var(--fs-10);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.m-fab{z-index:6;background:var(--ink);color:var(--on-ink);font-size:var(--fs-13);padding:var(--sp-10) var(--sp-16);border-radius:var(--r-999);text-decoration:none;position:fixed;bottom:18px;right:16px}.mob .cv-item{grid-template-columns:84px 1fr}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.pulse{opacity:1}}.challenge-paragraph>p{margin:0 0 var(--sp-6)}.m-more .challenge-paragraph{font-size:var(--fs-text);line-height:1.55}.p-org-role{white-space:nowrap}.result-line{white-space:normal;overflow-wrap:anywhere}.result-line.has-metric{display:inline}.result-line.has-metric>.result-num{margin-right:var(--sp-6);white-space:nowrap}.p-case-id>.p-title,.m-card .p-case-id>h3{font-size:var(--fs-case-title);margin:0 0 var(--sp-6);font-weight:400;line-height:1.3}.published-highlight{background:var(--accent);color:inherit}.published-blue{color:var(--cobalt)}.published-bold{font-weight:700}.floating-visual{z-index:3;cursor:zoom-in;background:0 0;border:0;border-radius:0;padding:0;display:block;position:fixed}.floating-visual[hidden]{display:none}.floating-visual img{width:100%;height:auto;display:block}.floating-visual:focus-visible{outline:var(--focus-w) solid var(--ink);outline-offset:5px}dialog.lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;padding:var(--lb-pad);box-sizing:border-box;background:var(--ink);border:0;margin:0}dialog.lightbox img{object-fit:contain;cursor:default;border-radius:0;max-width:100%;max-height:100%}dialog.lightbox::backdrop{background:var(--ink)}.m-visual{width:100%;margin:var(--sp-20) 0;cursor:zoom-in;background:0 0;border:0;padding:0;display:block}.m-visual img{width:100%;height:auto;display:block}.m-visual.m-portrait{width:40%}.p-visual{border:var(--hair) solid var(--line-soft);border-radius:var(--r-6);background:var(--panel);cursor:zoom-in;width:100%;padding:0;display:block;overflow:hidden}.p-visual img{width:100%;height:auto;display:block}.p-visual:hover{border-color:var(--line)}.gallery{z-index:3;overscroll-behavior:contain;padding:var(--side-nav-gap) 0 var(--bottom-h);opacity:0;visibility:hidden;transition:opacity var(--dur-card) var(--ease), visibility 0s linear var(--dur-card);scrollbar-width:thin;scrollbar-color:var(--line) transparent;position:absolute;bottom:0;overflow:hidden auto}.desk.has-gallery .gallery{opacity:1;visibility:visible;transition:opacity var(--dur-card) var(--ease)}.stage,.legend{transition:opacity var(--dur-card) var(--ease), visibility 0s}.desk.has-gallery .stage,.desk.has-gallery .legend,.desk.has-gallery .floating-visual{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-card) var(--ease), visibility 0s linear var(--dur-card)}.g-back{align-items:baseline;gap:var(--sp-8);padding:var(--sp-4) 0;margin:0 0 var(--gutter);cursor:pointer;font-size:var(--fs-text);background:0 0;border:0;display:inline-flex}.g-back:hover .lab{text-underline-offset:var(--ul-off);text-decoration:underline}.g-set+.g-set{margin-top:var(--g-set-gap)}.proto-box{margin-left:auto;margin-right:var(--proto-gap);gap:var(--g-gap);display:grid}.proto-video{border-radius:var(--r-12);border:var(--hair) solid var(--line-soft);background:var(--panel);box-shadow:0 8px 24px color-mix(in srgb, var(--ink) 6%, transparent);position:relative;overflow:hidden}.proto-video video{width:100%;height:auto;display:block}.proto-still{cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:block}.proto-still img{width:100%;height:auto;display:block}.pv{position:relative}.pv video{cursor:pointer}.pv-ctl{align-items:center;gap:var(--pv-gap);padding:var(--pv-pad);background:linear-gradient(transparent, var(--scrim));color:var(--on-ink);opacity:0;transition:opacity var(--pv-fade) ease;display:flex;position:absolute;bottom:0;left:0;right:0}.pv:hover .pv-ctl,.pv:focus-within .pv-ctl,.pv.is-paused .pv-ctl,.pv.is-ended .pv-ctl,.pv.is-seeking .pv-ctl{opacity:1}.pv-btn{width:var(--pv-btn);height:var(--pv-btn);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.pv-btn:hover{background:color-mix(in srgb, var(--on-ink) 16%, transparent)}.pv-btn svg{fill:none;width:20px;height:20px;stroke:var(--on-ink);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.pv-btn .fill{fill:var(--on-ink);stroke:none}.pv-sound .fill{stroke:none}.pv-play svg,.pv-sound .on,.pv-sound.is-on .off{display:none}.pv-play svg:nth-child(2),.pv.is-paused .pv-play svg:first-child,.pv.is-ended .pv-play svg:nth-child(3),.pv-sound.is-on .on{display:block}.pv.is-paused .pv-play svg:nth-child(2),.pv.is-ended .pv-play svg:nth-child(2){display:none}.pv-bar{height:var(--pv-hit);cursor:pointer;touch-action:none;flex:1;position:relative}.pv-bar:before,.pv-fill{content:"";height:var(--pv-track);margin-top:calc(var(--pv-track) / -2);border-radius:var(--pv-track);position:absolute;top:50%;left:0;right:0}.pv-bar:before{background:color-mix(in srgb, var(--on-ink) 30%, transparent)}.pv-fill{background:var(--accent);transform-origin:0;transform:scaleX(0)}.pv-knob{width:var(--pv-knob);height:var(--pv-knob);margin:calc(var(--pv-knob) / -2) 0 0 calc(var(--pv-knob) / -2);background:var(--accent);transition:transform var(--pv-fade) ease;border-radius:50%;position:absolute;top:50%;transform:scale(0)}.pv-bar:hover .pv-knob,.pv-bar:focus-visible .pv-knob,.pv.is-seeking .pv-knob{transform:scale(1)}.pv-bar:focus-visible{outline:none}.pv-bar:focus-visible:before{box-shadow:0 0 0 2px var(--on-ink)}.pv-time{font-size:var(--fs-label);font-variant-numeric:tabular-nums;flex:none}.floating-app{z-index:3;position:fixed}.pass-rope{z-index:6;pointer-events:none;width:100%;height:100%;position:fixed;inset:0;overflow:visible}.pass-rope path{fill:none;stroke:var(--cobalt);stroke-width:var(--pass-ribbon);stroke-linecap:round}.pass{z-index:7;width:var(--pass-w);transform-origin:50% 0;background:var(--panel);border-radius:var(--r-12);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;position:fixed;top:0;left:0}.pass.grabbed{cursor:grabbing}.metro .mt-lname.under-pass{opacity:0}.pass-clip{left:50%;top:calc(-1 * var(--sp-8));width:var(--sp-22);height:var(--sp-14);margin-left:calc(-1 * var(--sp-22) / 2);border-radius:var(--r-4);background:var(--ink);position:absolute}.pass-head{padding:var(--sp-8) var(--sp-14);background:var(--cobalt);color:var(--on-ink);border-radius:var(--r-12) var(--r-12) 0 0;font-size:var(--fs-10-5);letter-spacing:var(--track-label);text-transform:uppercase;justify-content:space-between;align-items:center;font-weight:600;display:flex}.pass-ast{color:var(--accent);font-size:var(--fs-15)}.pass-body{gap:var(--sp-10);padding:var(--sp-14) var(--sp-12) var(--sp-12);text-align:center;flex-direction:column;align-items:center;display:flex}.pass-body img{width:var(--pass-photo);height:var(--pass-photo);pointer-events:none;flex:none;display:block}.pass-who{align-items:center;gap:var(--sp-2);flex-direction:column;min-width:0;display:flex}.pass-name{font-size:var(--fs-16);font-weight:600}.pass-role{font-size:var(--fs-10-5);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.pass-tags{font-size:var(--fs-13);margin-top:var(--sp-4);white-space:nowrap}.pass-foot{text-align:center;padding:var(--sp-6) var(--sp-14);background:var(--accent);border-radius:0 0 var(--r-12) var(--r-12);font-size:var(--fs-10-5);letter-spacing:var(--track-label);text-transform:uppercase;font-weight:600}.floating-app[hidden]{display:none}.app-bar{justify-self:start;align-items:center;gap:var(--sp-14);padding:var(--sp-10) var(--sp-12) var(--sp-10) var(--sp-10);border-radius:var(--r-16);background:var(--panel);white-space:nowrap;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border:0;display:flex}.app-bar:hover{background:color-mix(in srgb, var(--cobalt) 5%, var(--panel))}.app-bar:hover .btn{background:var(--bg)}.app-tile{background:var(--ink);border-radius:11px;flex:none;place-items:center;width:44px;height:44px;display:grid}.app-tile svg{width:22px;height:22px;stroke:var(--panel);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;fill:none}.app-bar-t{gap:var(--sp-2);font-size:var(--fs-text);line-height:1.3;display:grid}.app-bar-sub{font-size:var(--fs-label);color:var(--muted)}.app-bar .btn{margin-left:var(--sp-8)}dialog.lightbox.is-frame{cursor:default}.lb-tabs{gap:var(--sp-6);padding:var(--sp-4);border-radius:var(--r-20);background:color-mix(in srgb, var(--on-ink) 12%, transparent);display:flex}.lb-tab{font:inherit;font-size:var(--fs-text);border-radius:var(--r-16);padding:var(--sp-6) var(--sp-14);color:var(--on-ink);cursor:pointer;transition:background var(--dur-200), color var(--dur-200);background:0 0;border:0}.lb-tab[aria-selected=true]{background:var(--panel);color:var(--ink)}.lb-demo{border-radius:var(--r-6);overflow:hidden}.lb-demo[hidden],.lb-frame[hidden]{display:none}.lb-demo video{width:100%;height:auto;display:block}.lb-frame{border-radius:var(--r-6);background:var(--panel);border:0;flex:none;display:block}.lb-note{text-align:center;white-space:nowrap;font-size:var(--fs-text);color:var(--on-ink);opacity:.7;margin:0;line-height:1.45}.g-head{align-items:baseline;gap:var(--sp-4) var(--sp-12);margin:0 0 var(--g-gap);font-size:var(--fs-text);flex-wrap:wrap;font-weight:400;line-height:1.45;display:flex}.g-meta{color:var(--muted)}.g-book{overflow-x:hidden}.g-row{justify-content:flex-start;gap:var(--g-row-x);margin-bottom:var(--g-row-y);display:flex}.g-item{text-align:left;cursor:zoom-in;background:0 0;border:0;flex:0 auto;min-width:0;padding:0;display:block}.g-item img{background:var(--line-soft);width:100%;height:auto;transition:opacity var(--dur-300);display:block}.g-item:hover img{opacity:.88}.g-num{margin-top:var(--sp-6);font-size:var(--fs-label);color:var(--muted);font-variant-numeric:tabular-nums;display:block}.g-strip{gap:var(--side-gap);overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:var(--sp-6);scrollbar-width:thin;scrollbar-color:var(--line) transparent;display:flex;overflow:auto hidden}.g-strip>.g-item{scroll-snap-align:start;flex:none}.g-strip>.g-item img{width:auto;height:var(--g-strip-h)}.m-card .g-set{margin-top:var(--gutter)}.m-card .g-head{margin-bottom:var(--side-gap)}.g-jump{text-align:left;font:inherit;cursor:pointer;background:0 0;border:0}.g-jump:hover .nlink-t{text-underline-offset:var(--ul-off);text-decoration:underline}dialog.lightbox.is-card{cursor:grab;touch-action:none;background:var(--tc-veil);-webkit-backdrop-filter:blur(var(--tc-blur))}dialog.lightbox.is-card::backdrop{background:0 0}dialog.lightbox.is-card .p-btn{color:var(--ink)}.tc-holder{position:relative}dialog.lightbox.is-card .tc-holder>.lb-close{top:auto;bottom:calc(100% + var(--sp-10));right:0}dialog.lightbox.is-card .p-btn:focus-visible{outline-color:var(--ink)}dialog.lightbox.is-card .lb-note{color:var(--ink-2);background:var(--chip);padding:var(--sp-4) var(--sp-10);border-radius:var(--r-999)}.tc-f{box-shadow:0 3cqw 9cqw var(--tc-shade)}.tc-b{box-shadow:0 3cqw 9cqw var(--line-soft), 0 0 0 var(--hair) var(--line-soft)}dialog.lightbox.is-card:active{cursor:grabbing}dialog.lightbox.is-card .btn,dialog.lightbox.is-card .lb-close{cursor:pointer}.tc-holder{width:min(var(--tc-w), 100%);perspective:1000px}.tc-lift{transform-style:preserve-3d}.tc-flip{transform-style:preserve-3d;cursor:grab;--gx:30%;--gy:20%;--go:0;outline:none;position:relative}.tc-flip:active{cursor:grabbing}.tc-flip:focus-visible .tc-f{outline:var(--focus-w) solid var(--cobalt);outline-offset:var(--sp-4)}.tc-face{backface-visibility:hidden}.tc-back{position:absolute;inset:0;transform:rotateY(180deg)}.tc-box{container-type:inline-size}.tc{aspect-ratio:1.586;isolation:isolate;-webkit-user-select:none;user-select:none;border-radius:4.2cqw;width:100cqw;position:relative;overflow:hidden}.tc-f{color:var(--on-ink);background:radial-gradient(130% 110% at 85% 0%, var(--tc-hi) 0%, var(--tc-mid) 40%, var(--cobalt) 100%)}.tc-top{letter-spacing:.14em;text-transform:uppercase;color:var(--tc-mute);justify-content:space-between;align-items:center;font-size:2.3cqw;display:flex;position:absolute;top:6cqw;left:6cqw;right:6cqw}.tc-ast{color:var(--accent);letter-spacing:0;font-size:4.6cqw;font-weight:800;line-height:1}.tc-line{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.tc-g0{stop-color:var(--tc-pale)}.tc-g1{stop-color:var(--panel)}.tc-g2{stop-color:var(--accent)}.tc-glow,.tc-track{fill:none;stroke-linejoin:round}.tc-glow{stroke-width:20px;opacity:.55}.tc-track{stroke-width:7px;stroke-linecap:round}.tc-stop{fill:var(--tc-stop);stroke:var(--panel);stroke-width:6px}.tc-end{fill:var(--accent)}.tc-soft{opacity:.22}.tc-halo{transform-box:fill-box;transform-origin:50%;animation:tc-halo var(--tc-pulse) ease-out infinite}@keyframes tc-halo{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}.tc-name{fill:var(--on-ink);font-family:var(--sans);letter-spacing:-2px;font-size:62px;font-weight:600}.tc-goal{fill:var(--accent);font-family:var(--serif);text-anchor:end;font-size:88px;font-style:italic}.tc-foot{border-top:var(--hair) solid var(--tc-rule);letter-spacing:.08em;text-transform:uppercase;color:var(--tc-mute);gap:.6cqw;padding-top:3cqw;font-size:2.1cqw;display:grid;position:absolute;bottom:5.4cqw;left:6cqw;right:6cqw}.tc-foot b{letter-spacing:-.01em;text-transform:none;color:var(--on-ink);font-size:3.5cqw;font-weight:600}.tc-glare{pointer-events:none;background:radial-gradient(circle at var(--gx) var(--gy), var(--tc-light), transparent 48%);mix-blend-mode:soft-light;opacity:calc(.55 + var(--go) * .45);position:absolute;inset:0}.tc-b{background:var(--panel);color:var(--ink)}.tc-bh{border-bottom:.5cqw solid var(--ink);letter-spacing:.08em;text-transform:uppercase;padding-bottom:1.6cqw;font-size:3cqw;font-weight:800;position:absolute;top:4.4cqw;left:5cqw;right:5cqw}.tc-stats{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3.6cqw 4cqw;display:grid;position:absolute;top:15cqw;left:5cqw;right:27cqw}.tc-stat{align-content:start;gap:.6cqw;display:grid}.tc-stat b{letter-spacing:-.04em;font-size:8cqw;font-weight:800;line-height:1}.tc-stat b em{color:var(--cobalt);font-style:normal}.tc-stat span{color:var(--ink-2);font-size:2.55cqw;line-height:1.25}.tc-stat i{font-style:normal}.tc-stat.is-one i{white-space:nowrap}.tc-qr{justify-items:center;gap:1.2cqw;width:18cqw;display:grid;position:absolute;top:16cqw;right:5cqw}.tc-qr img{width:100%;display:block}.tc-qr span{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:center;font-size:1.9cqw}.tc-bf{border-top:var(--hair) dashed var(--line);justify-content:space-between;gap:2cqw;padding-top:1.8cqw;font-size:2.6cqw;display:flex;position:absolute;bottom:4.4cqw;left:5cqw;right:5cqw}.tc-actions{justify-items:center;gap:var(--sp-10);margin-top:var(--sp-30);display:grid}.tc-actions .lb-note{white-space:normal;font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase}@media (prefers-reduced-motion:reduce){.tc-halo{animation:none}}.lb-fig{justify-content:center;align-items:center;gap:var(--side-gap);flex-direction:column;width:100%;height:100%;margin:0;display:flex}dialog.lightbox .lb-fig img{flex:0 auto;min-height:0}dialog.lightbox.is-sequence .lb-fig img{max-height:calc(100% - 2 * var(--gutter))}.lb-cap{color:var(--on-ink);opacity:.7}.lb-nav{color:var(--on-ink);font-size:var(--fs-figure);padding:var(--gutter);cursor:pointer;opacity:.7;background:0 0;border:0;position:absolute;top:50%;transform:translateY(-50%)}.lb-nav:hover{opacity:1}.lb-nav:focus-visible{outline:var(--hair) solid var(--on-ink);outline-offset:-8px}.lb-prev{left:0}.lb-next{right:0}.map-notes{pointer-events:none}.map-notes text{font-family:var(--hand);fill:var(--note)}.map-notes path{fill:none;stroke:var(--note);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.map-notes>g{transition:opacity var(--fade-node)}.map-notes>g.is-hidden{opacity:0}.map.arranging .map-notes>g:not(.is-hidden){pointer-events:all;cursor:move}body.arranging .stage,body.arranging .side{animation:none}.map.arranging .node{cursor:move;touch-action:none}.map.arranging .map-notes>g{touch-action:none}.arrange-bar{left:var(--page-x);bottom:var(--bottom-h);z-index:5;align-items:center;gap:var(--side-gap);max-width:calc(var(--side-w) * 1.4);padding:var(--side-gap);background:var(--panel);border:var(--rule-card);font-size:var(--fs-label);color:var(--ink-2);flex-wrap:wrap;display:flex;position:absolute}.arrange-bar button{font:inherit;padding:var(--sp-4) var(--sp-10);border:var(--hair) solid var(--ink);background:var(--ink);color:var(--on-ink);cursor:pointer}.arrange-bar textarea{width:100%;font:inherit;font-size:var(--fs-label);color:var(--muted);border:var(--rule);background:var(--bg);resize:none}.fk{font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.ride{font-size:var(--fs-nav);position:relative}.rbtn{border-radius:var(--r-26);padding:var(--sp-7) 13.5px var(--sp-7) 11.5px;background:var(--panel);cursor:pointer;transition:border-radius var(--dur-350) var(--ease), background var(--dur-300);border:0;align-items:center;gap:9px;display:inline-flex}.rbtn[aria-expanded=true]{border-radius:var(--r-26) var(--r-26) 0 0}.rb-ast{transition:transform var(--dur-600) var(--ease);display:block}.rb-ast line{stroke:var(--cobalt)}.rbtn:hover .rb-ast,.rbtn[aria-expanded=true] .rb-ast{transform:rotate(45deg)}.rchev{width:9px;height:9px;transition:transform var(--dur-300) var(--ease);display:block}.rchev path{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.rbtn[aria-expanded=true] .rchev{transform:rotate(180deg)}.rsum{white-space:nowrap;opacity:0;max-width:0;transition:max-width var(--dur-450) var(--ease), opacity var(--dur-300);display:inline-block;overflow:hidden}.rsum:not(:empty){max-width:var(--ride-w);opacity:1;margin-left:-5px}.rsum:not(:empty):before{content:"· "}.rpanel{width:var(--ride-w);background:var(--panel);border-radius:0 var(--r-12) var(--r-12) var(--r-12);padding:var(--sp-16) 18px;font-size:var(--fs-ride);visibility:hidden;opacity:0;clip-path:inset(0 0 100%);transform-origin:0 0;transition:opacity var(--dur-200), transform var(--dur-350) var(--ease), clip-path var(--dur-400) var(--ease), visibility 0s var(--dur-400);gap:12.5px;display:grid;position:absolute;top:100%;left:0;transform:scaleY(.96)}.rpanel.open{visibility:visible;opacity:1;clip-path:inset(0);transition:opacity var(--dur-200), transform var(--dur-350) var(--ease), clip-path var(--dur-450) var(--ease), visibility 0s;transform:none}.rgroup{gap:var(--sp-6);flex-wrap:wrap;display:flex}.rgroup .fk{color:var(--ink);margin-bottom:var(--sp-2);flex-basis:100%}.rchip{font:inherit;white-space:nowrap;text-align:left;border-radius:var(--r-20);padding:var(--sp-5) var(--sp-12);background:color-mix(in srgb, var(--ink) 5%, transparent);cursor:pointer;transition:background var(--dur-200), color var(--dur-200);border:0}.rchip.big{justify-content:space-between;gap:var(--sp-12);border-radius:var(--r-8);padding:var(--sp-7) var(--sp-12);flex:100%;display:flex}.rchip:hover{background:color-mix(in srgb, var(--ink) 10%, transparent)}.rchip[aria-pressed=true]{background:var(--cobalt);color:var(--panel)}.rchip:disabled{color:var(--muted);background:color-mix(in srgb, var(--ink) 2%, transparent);cursor:default}.rfoot{border-top:var(--rule-card);padding-top:var(--sp-12);justify-content:space-between;align-items:center;display:flex}.rclear{font:inherit;text-underline-offset:var(--ul-off);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.rgo{font:inherit;border-radius:var(--r-20);padding:var(--sp-6) var(--sp-14);background:var(--cobalt);color:var(--panel);cursor:pointer;border:0}.rgo:hover{background:var(--cobalt-hover)}.nlink.is-off,.ngroup-h.is-off,.m-card.is-off{opacity:.35}.m-filters{gap:var(--gutter);padding:var(--sp-12) 0 var(--sp-16);border-bottom:var(--hair) solid var(--line-soft);grid-template-columns:repeat(2,1fr);display:grid}.m-fsel{gap:var(--sp-6);display:grid}.m-fsel select{font:inherit;font-size:var(--fs-16);color:var(--ink);background:var(--panel);border:var(--hair) solid var(--line);border-radius:var(--r-10);padding:var(--sp-10) var(--sp-12);width:100%}.metro{position:absolute;overflow:visible}.metro text{font-family:inherit}.mt-track{fill:none;stroke-width:var(--m-track);stroke-linecap:round;stroke-linejoin:round}.mt-track.core{stroke:var(--bg);stroke-width:var(--m-core)}.mt-hit{fill:none;stroke:#0000;stroke-width:26px;cursor:pointer}.l-paid{stroke:var(--line-paid)}.l-social{stroke:var(--line-social)}.l-ai{stroke:var(--line-ai)}.l-creative{stroke:var(--line-creative)}.l-career{stroke:var(--line-career)}.l-campus{stroke:var(--line-campus)}.mt-lbl{font-size:var(--m-fs);fill:var(--ink)}.mt-lbl,.mt-lbl.b{font-weight:600}.mt-halo{fill:none;stroke:var(--bg);stroke-width:var(--halo);stroke-linejoin:round}.mt-lname{font-size:var(--m-fs-line);letter-spacing:.09em;fill:var(--ink);text-transform:uppercase;cursor:pointer;font-weight:600}.mt-ring{fill:var(--panel);stroke:var(--ink)}.mt-inner{fill:none;stroke:var(--ink)}.mt-stn{cursor:pointer}.mt-stn:focus{outline:none}.mt-stn:focus-visible .mt-ring{stroke:var(--cobalt)}.mt-stn .mt-dot{transition:transform var(--dur-200) var(--ease);transform-box:fill-box;transform-origin:50%}.mt-stn:hover .mt-dot{transform:scale(1.25)}.mt-stn.sel .mt-ring,.mt-stn.rel .mt-ring{fill:var(--accent)}.metro .faded{opacity:var(--m-faded)}.mt-more{opacity:0;transition:opacity var(--dur-250);pointer-events:none}.mt-stn:hover .mt-more,.mt-more.on{opacity:1;pointer-events:auto}.mt-nhit{fill:#0000}.metro .faded .mt-name,.metro.started .mt-stn.on-ride:not(.cur):not(:hover) .mt-name{pointer-events:none}.mt-tag text{font-size:var(--m-fs-tag);letter-spacing:.02em;font-weight:600}.tag-paid rect{fill:var(--line-paid)}.tag-paid text{fill:var(--on-ink)}.tag-social rect{fill:var(--line-social)}.tag-social text{fill:var(--on-ink)}.tag-ai rect{fill:var(--line-ai)}.tag-ai text{fill:var(--ink)}.mt-xf{fill:none;stroke:var(--ink);stroke-width:2.4px;stroke-dasharray:1 7;stroke-linecap:round;pointer-events:none;animation:1.2s linear infinite mt-march}@keyframes mt-march{to{stroke-dashoffset:-16px}}.mt-star line{stroke:var(--cobalt);stroke-width:3.6px;stroke-linecap:round}.mt-top{cursor:pointer;outline:none}.mt-top:focus-visible .mt-ring{stroke:var(--cobalt)}.mt-q{fill:var(--cobalt);transform-box:fill-box;transform-origin:50%;transition:transform var(--dur-600) var(--ease);font-size:25px;font-weight:600}.mt-top:is(:hover,:focus-visible) .mt-q{transform:rotate(-14deg)scale(1.12)}.metro.intro .mt-stn.grown,.metro.intro .mt-lname.grown,.metro.intro .mt-top.grown{transition:opacity var(--dur-200) var(--ease)}.metro.intro .mt-stn:not(.grown),.metro.intro .mt-lname:not(.grown),.metro.intro .mt-top:not(.grown),.metro.intro .mt-xfer{opacity:0;transition:none}.metro.intro .mt-top .mt-ring{transform-box:fill-box;transform-origin:50%}.metro.intro .mt-stn.grown .mt-dot,.metro.intro .mt-top.grown .mt-ring{animation:mt-arrive var(--dur-600) cubic-bezier(.3, 1.5, .5, 1)}.mt-open{stroke-width:3px;stroke-dasharray:.1 6.3;stroke-linecap:round}.ico-line path{fill:none;stroke-linecap:round;stroke-width:var(--halo)}.ico-line path.core{stroke:var(--panel);stroke-width:2px}.ico-line circle{fill:var(--panel);stroke:var(--ink);stroke-width:1.8px}.mt-mark{flex:none;display:block;overflow:visible}.legend .mt-mark{margin-right:var(--sp-6)}.lg-campus{width:26px;height:8px;margin-right:var(--sp-6);display:inline-block;overflow:visible}.metro.riding [data-l]{filter:grayscale();opacity:var(--m-ghost)!important}.metro [data-l]{transition:opacity var(--m-fade) var(--ease), filter var(--m-fade) var(--ease)}.metro.fresh [data-l],.metro.fresh text,.metro.fresh .mt-tag{transition:none}.metro.riding .mt-stn.on-ride{filter:none;opacity:1!important}.metro.riding .mt-stn.on-route{filter:grayscale();opacity:var(--m-through)!important}.metro text,.metro .mt-tag{transition:opacity var(--dur-400)}.metro .faded text,.metro .faded .mt-tag,.metro text.faded,.metro.riding [data-l]:not(.on-ride) text,.metro.riding [data-l]:not(.on-ride) .mt-tag,.metro.riding text[data-l]{opacity:0!important}.metro.started .mt-stn.on-ride:not(.cur):not(:hover) .mt-name{opacity:0}.metro.riding .mt-stn.on-ride .mt-lbl{font-size:var(--m-fs);fill:var(--ink);font-weight:600}.metro.riding .mt-stn.on-ride .mt-halo{fill:none}.mt-ride{pointer-events:none;transition:opacity var(--dur-450)}.metro:not(.riding) .mt-ride{opacity:0}.mt-ahead{transition:opacity var(--dur-500)}.metro.started .mt-ahead{opacity:var(--m-ahead)}.mt-rmask{fill:none;stroke:var(--panel);stroke-width:calc(var(--m-track) + 4px);stroke-linecap:round;stroke-linejoin:round}.mt-route{fill:none;stroke:none;pointer-events:none}.metro.started .mt-stn.cur .mt-ring{fill:var(--accent)}.mt-no rect{fill:color-mix(in srgb, var(--cobalt) 14%, var(--bg));transition:fill var(--dur-350)}.mt-no text{font-size:var(--m-fs-no);fill:var(--cobalt);transition:fill var(--dur-350)}.mt-no.past rect{fill:var(--cobalt)}.mt-no.past text{fill:var(--panel)}.mt-no.now rect{fill:var(--ink)}.mt-no.now text{fill:var(--accent)}.mt-no.pop{animation:mt-pop var(--m-pop) var(--d,0s) cubic-bezier(.3, 1.4, .5, 1) both;transform-box:fill-box;transform-origin:50%}@keyframes mt-pop{0%{opacity:0;transform:scale(.4)}}.mt-stn.arrive .mt-dot{animation:mt-arrive var(--dur-600) cubic-bezier(.3, 1.5, .5, 1)}@keyframes mt-arrive{40%{transform:scale(1.45)}}.mt-confetti{pointer-events:none;z-index:6;width:100%;height:100%;position:absolute;inset:0}.desk.riding .legend{opacity:0;visibility:hidden}.mt-bar{z-index:5;left:var(--map-inset);bottom:var(--bottom-h);width:var(--bar-w);height:var(--bar-h);align-items:center;gap:var(--sp-8);padding:0 var(--sp-7);border-radius:calc(var(--bar-h) / 2);background:var(--ink);color:var(--on-ink);font-size:var(--fs-ride);opacity:0;pointer-events:none;transition:opacity var(--dur-300), transform var(--dur-450) var(--ease);display:flex;position:absolute;transform:translateY(16px)}.mt-bar.show{opacity:1;pointer-events:auto;transform:none}.mt-note{z-index:5;left:var(--map-inset);bottom:calc(var(--bottom-h) + var(--bar-h) + var(--sp-10));width:var(--bar-w);box-sizing:border-box;padding:var(--sp-14) var(--sp-16);border-radius:var(--r-16);background:var(--panel);color:var(--ink);font-size:var(--fs-ride);opacity:0;pointer-events:none;transition:opacity var(--dur-300), transform var(--dur-450) var(--ease);line-height:1.5;position:absolute;transform:translateY(8px)}.mt-note.show{opacity:1;transform:none}.mt-bar button{font:inherit;cursor:pointer;height:var(--bar-btn);border-radius:calc(var(--bar-btn) / 2);color:inherit;border:0;flex:none;place-items:center;padding:0;display:grid}.mt-bar .pv{width:var(--bar-btn);background:color-mix(in srgb, var(--on-ink) 14%, transparent);transition:width var(--dur-450) var(--ease), margin var(--dur-450) var(--ease), opacity var(--dur-300), visibility 0s;overflow:hidden}.mt-bar:not(.started) .pv{opacity:0;visibility:hidden;width:0;transition:width var(--dur-450) var(--ease), margin var(--dur-450) var(--ease), opacity var(--dur-200), visibility 0s var(--dur-450);margin-right:-8px}.mt-bar .pv:disabled{opacity:.3;cursor:default}.mt-bar .nx{width:var(--bar-go);background:var(--accent);color:var(--ink);transition:transform .15s, filter var(--dur-200), opacity var(--dur-300), background var(--dur-500), color var(--dur-500);position:relative;overflow:hidden}.mt-bar .nx:hover{filter:brightness(1.04)}.mt-bar .nx:active,.mt-bar .pv:active{transform:scale(.96)}.mt-bar .nx span{z-index:1;white-space:nowrap;display:block;position:relative}.mt-bar.empty .nx{opacity:.3;pointer-events:none}.mt-bar .ex{width:var(--bar-btn);color:color-mix(in srgb, var(--on-ink) 70%, transparent);font-size:var(--fs-figure);transition:background var(--dur-200), color var(--dur-200);background:0 0;margin-left:auto}.mt-bar .ex:hover{background:color-mix(in srgb, var(--on-ink) 14%, transparent);color:var(--on-ink)}.mt-bar .board{min-width:0;height:100%;margin-left:var(--sp-6);flex:1;position:relative;overflow:hidden}.mt-bar .row{flex-direction:column;justify-content:center;line-height:1.3;display:flex;position:absolute;inset:0}.mt-bar .row>*{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mt-bar.ending .nx{pointer-events:none}.mt-bar .nx:before{content:"";background:var(--note);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.mt-bar.ending .nx:before{animation:mt-fill var(--arrive,var(--dur-700)) cubic-bezier(.45, 0, .2, 1) forwards}@keyframes mt-fill{to{transform:scaleX(1)}}.mt-bar.ending .nx span{color:var(--panel);transition:color var(--arrive,var(--dur-700)) ease-in}.mt-bar.arrived .nx{color:var(--panel)}.mt-bar.arrived .nx:before{transform:scaleX(1)}.mt-bar.arrived{animation:mt-hop var(--dur-700) cubic-bezier(.3, 1.4, .5, 1)}@keyframes mt-hop{35%{transform:translateY(-6px)}}.mt-bar.arrived .nx:after{content:"";z-index:2;background:linear-gradient(105deg, transparent 30%, color-mix(in srgb, var(--panel) 55%, transparent) 50%, transparent 70%);animation:mt-shine 1.1s var(--dur-250) ease-out forwards;position:absolute;inset:0;transform:translate(-120%)}@keyframes mt-shine{to{transform:translate(120%)}}@media (prefers-reduced-motion:reduce){.mt-no.pop,.mt-stn.arrive .mt-dot,.mt-bar.arrived,.mt-bar.arrived .nx:after{animation:none}}
