@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-ext-wght-normal-okcGN4Nq.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-wght-normal-BS41q_Tv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-ext-wght-normal-DQgQPNk4.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-wght-normal-sS1B39LI.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-vietnamese-wght-normal-TKKdAiBA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-ext-wght-normal-B4u9PlvR.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-wght-normal-DX-nOvPD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f4f3ef;--ink:#0e0e10;--muted:#76746e;--hairline:#0e0e1017;--fill:#0e0e100b;--glass:#ffffffb8;--glass-border:#fffc;--shadow:0 1px 2px #0e0e100a, 0 12px 40px #0e0e1014;--on-ink:#fff;--label-bg:#0e0e10db;--grabber:#0e0e102e;--hero-shadow:0 30px 80px -30px #0e0e1059;--flight-shadow:0 24px 50px -24px #0e0e1066;--map-bg:#e7e6e1;--chip-bg:#ffffffdb;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--r-sm:12px;--r-md:20px;--r-lg:28px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.2, .9, .25, 1.05);--font-ui:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display:"Inter Tight Variable", "Inter Variable", "Helvetica Neue", Arial, sans-serif}:root[data-theme=dark]{--bg:#0d0d0f;--ink:#f2f1ec;--muted:#908e87;--hairline:#ffffff1a;--fill:#ffffff12;--glass:#222226b8;--glass-border:#ffffff1a;--shadow:inset 0 1px 0 #ffffff0f;--on-ink:#0d0d0f;--label-bg:#f2f1ecf0;--grabber:#ffffff3d;--hero-shadow:none;--flight-shadow:none;--map-bg:#1a1a1d;--chip-bg:#222226d1;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}*,:before,:after{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;font-size:15px;line-height:1.4}body{overscroll-behavior:none;min-height:100dvh;margin:0;overflow:hidden}h1,h2,p,ul,dl,dd{margin:0;padding:0}ul{list-style:none}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.home[data-view=canvas]{background:var(--bg);position:fixed;inset:0;overflow:hidden}.canvas-host{position:fixed;inset:0}.canvas-gl{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.home-chrome{display:contents}.home-chrome>*{transition:opacity .5s}.home-chrome[data-receded]>*{opacity:0;pointer-events:none}.home-title{width:max-content;max-width:92vw;font:700 clamp(30px, 5.4vw, 80px) / .95 var(--font-display);letter-spacing:-.025em;text-transform:uppercase;color:#fff;mix-blend-mode:difference;pointer-events:none;flex-wrap:wrap;justify-content:center;gap:0 .26em;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.home-title[data-leaving]{opacity:0;transition:opacity .35s}.home[data-phase] .canvas-host,.home[data-phase] .grid-view{pointer-events:none}.flight-layer{z-index:3;pointer-events:none;position:fixed;inset:0}.flight{box-shadow:var(--flight-shadow);will-change:transform;position:absolute;overflow:hidden}.flight img{object-fit:cover;width:100%;height:100%;display:block}.home-title .word{padding-block:.06em;display:inline-flex;overflow:hidden}.home-title .char{will-change:transform;display:inline-block}.home-hint{left:50%;bottom:calc(84px + env(safe-area-inset-bottom));letter-spacing:.02em;color:var(--muted);pointer-events:none;white-space:nowrap;font-size:12px;position:fixed;transform:translate(-50%)}.home-hint[data-hidden]{opacity:0}.view-switch{left:50%;bottom:calc(22px + env(safe-area-inset-bottom));z-index:4;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(1.5);border-radius:999px;gap:2px;padding:4px;display:flex;position:fixed;transform:translate(-50%)}.view-switch button{min-height:36px;color:var(--muted);transition:background .35s var(--ease-out), color .35s var(--ease-out);border-radius:999px;padding:0 16px;font-size:13px;font-weight:500}.view-switch button[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}.home-corner{top:calc(18px + env(safe-area-inset-top));z-index:4;position:fixed;right:18px}.theme-toggle{background:var(--glass);border:1px solid var(--glass-border);width:40px;height:40px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(1.5);transition:transform .4s var(--ease-out);border-radius:50%;place-items:center;display:grid}.theme-toggle:hover{transform:scale(1.08)}.theme-toggle:active{transform:scale(.92)}.theme-toggle svg{overflow:visible}.theme-toggle .sun,.theme-toggle .moon{transform-box:fill-box;transform-origin:50%;transition:transform .6s var(--ease-out), opacity .3s ease}.theme-toggle[data-theme-icon=light] .sun,.theme-toggle[data-theme-icon=dark] .moon{opacity:0;transform:rotate(-90deg)scale(.4)}.hover-label{z-index:5;pointer-events:none;position:fixed;top:0;left:0}.hover-label span{background:var(--label-bg);color:var(--on-ink);white-space:nowrap;opacity:0;transform-origin:0 0;transition:opacity .25s ease, transform .35s var(--ease-out);border-radius:999px;margin:18px 0 0 14px;padding:7px 12px;font-size:12px;font-weight:500;display:block;transform:scale(.9)}.hover-label[data-visible] span{opacity:1;transform:none}.grid-view{overscroll-behavior:contain;padding:clamp(16px,3vw,40px);padding-bottom:120px;transition:opacity .5s;position:fixed;inset:0;overflow-y:auto}.grid-view[data-receded]{opacity:0;pointer-events:none}.grid-head{padding:clamp(24px,6vw,72px) 0 clamp(20px,4vw,48px)}.grid-head h1{font:700 clamp(36px, 8vw, 104px) / .95 var(--font-display);letter-spacing:-.03em;text-transform:uppercase}.grid-head p{color:var(--muted);margin-top:12px}.grid{columns:2;column-gap:12px}.grid li{break-inside:avoid;margin-bottom:12px}.grid a{border-radius:14px;display:block;position:relative;overflow:hidden}.grid img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease-out);display:block;position:absolute;inset:0}.grid picture{display:contents}.grid .tile-hi{opacity:0;transition:opacity .5s ease, transform .8s var(--ease-out)}.grid .tile-hi[data-loaded]{opacity:1}.grid a:hover img{transform:scale(1.04)}@media (width>=700px){.grid{columns:3;column-gap:16px}.grid li{margin-bottom:16px}}@media (width>=1100px){.grid{columns:4}}.detail{--peek:176px;z-index:10;padding:calc(10px + env(safe-area-inset-top)) 12px calc(var(--peek) + 22px + env(safe-area-inset-bottom));flex-direction:column;gap:10px;display:flex;position:fixed;inset:0}.detail-bg{background:var(--bg);position:absolute;inset:0}.detail>:not(.detail-bg){position:relative}.detail-bar{justify-content:space-between;align-items:center;gap:14px;min-height:44px;display:flex}.pill{background:var(--glass);border:1px solid var(--glass-border);min-height:40px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(1.5);transition:transform .4s var(--ease-out);border-radius:999px;align-items:center;gap:6px;padding:0 16px 0 12px;font-size:13px;font-weight:500;display:inline-flex}.pill:hover{transform:scale(1.04)}.pill:active{transform:scale(.96)}.counter{font:500 13px var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.04em;margin-left:auto}.counter i{color:var(--muted);margin:0 2px;font-style:normal}.detail-stage{touch-action:pan-y;flex:1;order:2;justify-content:center;align-items:center;min-width:0;min-height:0;display:flex}.hero{border-radius:var(--r-md);box-shadow:var(--hero-shadow);transition:width .6s var(--ease-out), height .6s var(--ease-out), background .4s ease;will-change:transform;flex:none;position:relative;overflow:hidden}.hero img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero picture{display:contents}.hero-lo{animation:.45s both fade-in}.hero-hi{opacity:0;transition:opacity .5s}.hero-hi[data-loaded]{opacity:1}@keyframes fade-in{0%{opacity:0}}.detail-thumbs{scrollbar-width:none;flex:none;order:3;margin-inline:-12px;overflow-x:auto}.detail-thumbs::-webkit-scrollbar{display:none}.thumbs{gap:6px;width:max-content;padding:24px 12px 4px;display:flex}.thumb{transform-origin:bottom;will-change:transform, opacity;border-radius:10px;width:40px;height:52px;display:block;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease-out);display:block}.thumb:active img{transform:scale(.9)}.meta{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:2;border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--glass-border);max-height:min(82dvh,640px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(28px)saturate(1.6);transform:translateY(calc(100% - var(--peek)));transition:transform .6s var(--ease-spring);flex-direction:column;display:flex;position:fixed!important}.meta[data-expanded]{transform:none}.meta-head{text-align:left;touch-action:none;border-radius:var(--r-lg) var(--r-lg) 0 0;flex:none;width:100%;padding:0 20px 12px;display:block}.meta-grabber{background:var(--grabber);border-radius:99px;width:36px;height:5px;margin:8px auto 12px;display:block}.meta-title,.meta-sub{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.meta-title{font:600 20px/1.2 var(--font-display);letter-spacing:-.01em}.meta-sub{color:var(--muted);margin-top:3px;font-size:13px}.meta-body{overscroll-behavior:contain;flex:1;min-height:0;padding:0 14px 14px;overflow-y:hidden}.meta[data-expanded] .meta-body{overflow-y:auto}.specs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.spec{background:var(--fill);border-radius:16px;padding:10px 10px 11px}.spec dt{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:10.5px;font-weight:500}.spec dd{font:600 clamp(13px, 4.2vw, 17px) / 1.1 var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:4px}.spec small{color:var(--muted);margin-left:2px;font-size:.62em;font-weight:500}.rows{margin-top:8px;padding:0 6px}.row{justify-content:space-between;gap:16px;padding:11px 0;font-size:13px;display:flex}.row+.row{border-top:1px solid var(--hairline)}.row dt{color:var(--muted);flex:none}.row dd{text-align:right;font-weight:500}.map-card{border-radius:var(--r-md);background:var(--map-bg);isolation:isolate;height:170px;margin-top:6px;position:relative;overflow:hidden}.map-card .map{animation:.8s both fade-in;position:absolute;inset:0}.map-label{text-overflow:ellipsis;white-space:nowrap;background:var(--chip-bg);-webkit-backdrop-filter:blur(12px);border-radius:999px;max-width:calc(100% - 60px);padding:5px 10px;font-size:12px;font-weight:500;position:absolute;bottom:10px;left:10px;overflow:hidden}.map-credit{color:var(--muted);text-align:right;margin-top:6px;padding:0 6px;font-size:10px}.map-credit a{color:inherit;text-decoration:none}.map-credit a:hover{color:var(--ink)}.map-dot{background:var(--ink);border:3px solid var(--bg);border-radius:50%;width:14px;height:14px;box-shadow:0 2px 8px #0e0e1059}.map-dot:after{content:"";border:1.5px solid var(--ink);animation:pulse 2.4s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-3px}@keyframes pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}@media (width>=900px){.detail{grid-template-rows:minmax(0,1fr);grid-template-columns:104px minmax(0,1fr) 340px;gap:28px;padding:24px;display:grid}.detail-bar{z-index:3;justify-content:flex-start;top:24px;left:24px;position:absolute!important}.detail-bar .counter{margin-left:0}.detail-thumbs{grid-area:1/1;margin:60px 0 0;overflow:hidden auto;-webkit-mask-image:linear-gradient(#0000,#000 24px calc(100% - 40px),#0000);mask-image:linear-gradient(#0000,#000 24px calc(100% - 40px),#0000)}.thumbs{flex-direction:column;gap:8px;width:auto;padding:24px 0 40px}.thumb{transform-origin:0;width:48px;height:62px}.detail-stage{grid-area:1/2;margin-block:28px}.meta{grid-area:1/3;align-self:center;max-height:100%;transition:none;inset:auto;position:relative!important;transform:none!important}.meta-head{cursor:default;pointer-events:none;padding:22px 22px 16px}.meta-grabber{display:none}.meta-title{white-space:normal;font-size:24px}.meta-body{scrollbar-width:thin;padding:0 16px 16px;overflow-y:auto}.specs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.spec{padding:12px 14px 14px}.spec dd{font-size:24px}.rows{margin-top:10px}}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) *,html:not([data-motion=full]) :before,html:not([data-motion=full]) :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
