@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,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(./inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(./inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg0: #05020b;--bg1: #0b0315;--bg2: #12051f;--s1: #160d25;--s2: #1d1230;--s3: #24183a;--v: #7c3aed;--p: #a855f7;--c: #22d3ee;--b: #2563eb;--t0: #fff;--t1: #e5e7eb;--t2: #a1a1aa;--t3: #71717a;--line: #ffffff1f;--line-hi: #7c3aed99;--r1: 8px;--r2: 12px;--r3: 18px;--sp1: 4px;--sp2: 8px;--sp3: 12px;--sp4: 16px;--sp5: 24px;--sp6: 32px;--fast: .15s;--med: .25s;--sh: 0 8px 24px #0009;--f-body: "Inter Variable", Inter, system-ui, "Segoe UI", Roboto, sans-serif;--f-disp: "Space Grotesk Variable", "Space Grotesk", var(--f-body);--f-mono: ui-monospace, "Cascadia Mono", Consolas, monospace;--h1: clamp(2rem, 6vw + .5rem, 4rem);--h2: clamp(1.625rem, 3vw + .5rem, 2.5rem);--h3: clamp(1.2rem, 1.5vw + .8rem, 1.6rem);--hc: clamp(.95rem, .5vw + .85rem, 1.2rem);--body: clamp(.875rem, .3vw + .8rem, 1rem);--small: clamp(.75rem, .2vw + .7rem, .875rem)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg0);color:var(--t1);font:400 var(--body)/1.55 var(--f-body);overflow:hidden;-webkit-text-size-adjust:100%}h1,h2,h3{font-family:var(--f-disp);color:var(--t0);margin:0;line-height:1.15;letter-spacing:-.01em;text-wrap:balance}p{margin:0}.eyebrow{font:500 .75rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--c)}.btn{font:600 var(--body)/1 var(--f-body);min-height:44px;min-width:44px;padding:0 var(--sp4);border-radius:var(--r2);border:1px solid var(--line);background:var(--s2);color:var(--t0);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp2);transition:background var(--fast),border-color var(--fast),transform var(--fast);-webkit-tap-highlight-color:transparent}.btn:hover{background:var(--s3);border-color:var(--line-hi)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,var(--v),var(--b));border-color:transparent}.btn-primary:hover{background:linear-gradient(135deg,var(--p),var(--b))}.btn-ghost{background:transparent}.btn-icon{padding:0;width:44px;font-size:1.2rem}.btn-danger{background:#450a0a;border-color:#ef4444}.btn-lg{min-height:56px;padding:0 var(--sp6);font-size:1.1rem}:is(.btn,input,select,summary,.card-main):focus-visible{outline:2px solid var(--c);outline-offset:2px}input,select{font:400 var(--body) var(--f-body);min-height:44px;border-radius:var(--r2);border:1px solid var(--line);background:var(--s1);color:var(--t0);padding:0 var(--sp4);max-width:100%}.ar-host{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1}.ar-host a-scene{position:absolute!important;top:0;right:0;bottom:0;left:0}#arjs-video{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;height:100vh!important;object-fit:cover;margin:0!important;z-index:0!important}.hero{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp5);text-align:center;padding:var(--sp5);background:radial-gradient(ellipse at 50% 0,var(--bg2),var(--bg0) 70%);animation:fade var(--med) both}.hero h1{font-size:var(--h1);max-width:16ch}.hero p{max-width:46ch;color:var(--t2);font-size:var(--hc)}.logo{font:700 var(--h3) var(--f-disp);color:var(--t0)}.logo span{color:var(--c)}.explorer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;grid-template:auto auto 1fr/1fr;background:var(--bg1);animation:fade var(--med) both}.nav{display:flex;align-items:center;gap:var(--sp4);flex-wrap:wrap;padding:var(--sp3) var(--sp4);border-bottom:1px solid var(--line);background:var(--bg0)}.brand{display:flex;flex-direction:column;margin-right:auto}.brand b{font:700 var(--hc) var(--f-disp);color:var(--t0)}.brand b span{color:var(--c)}.brand small{font:500 .7rem var(--f-mono);color:var(--t2);letter-spacing:.06em;text-transform:uppercase}.nav input{flex:1 1 100%;order:3}.cats{display:flex;gap:var(--sp2);overflow-x:auto;padding:var(--sp3) var(--sp4);scrollbar-width:none;border-bottom:1px solid var(--line)}.cats::-webkit-scrollbar{display:none}.chip{flex:none;min-height:44px;padding:0 var(--sp4);border-radius:999px;border:1px solid var(--line);background:var(--s1);color:var(--t1);font:500 var(--small) var(--f-body);cursor:pointer;transition:background var(--fast),border-color var(--fast)}.chip:hover{border-color:var(--line-hi)}.chip[aria-pressed=true]{background:var(--v);border-color:var(--p);color:#fff}.chip small{opacity:.7;margin-left:6px}.explorer main{overflow-y:auto;padding:var(--sp4);overscroll-behavior:contain}.page-title{font-size:var(--h3);margin-bottom:var(--sp4);display:flex;align-items:baseline;gap:var(--sp3)}.page-title span{font:500 var(--small) var(--f-mono);color:var(--t2)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:var(--sp3);max-width:1400px}.card{display:flex;flex-direction:column;background:var(--s1);border:1px solid var(--line);border-radius:var(--r3);overflow:hidden;transition:border-color var(--fast),transform var(--fast);animation:rise var(--med) both}.card:hover,.card.on{border-color:var(--p)}.card.on{box-shadow:0 0 0 1px var(--p)}.card-main{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:var(--sp2);padding:var(--sp3);flex:1}.card-main:focus-visible{outline:2px solid var(--c);outline-offset:-2px;border-radius:var(--r3)}.thumb{aspect-ratio:4/3;display:grid;place-items:center;background:linear-gradient(160deg,var(--s3),var(--bg2));border-radius:var(--r2);position:relative;overflow:hidden;font-size:2.6rem}.thumb img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.tag{font:500 .68rem var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--c)}.card h3{font-size:var(--hc)}.card p{font-size:var(--small);color:var(--t2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card .btn{margin:0 var(--sp3) var(--sp3);min-height:44px}.empty{grid-column:1/-1;text-align:center;padding:var(--sp6) var(--sp4);color:var(--t2);border:1px dashed var(--line);border-radius:var(--r3)}.empty b{display:block;color:var(--t0);font:600 var(--hc) var(--f-disp);margin:var(--sp2) 0}.detail{position:fixed;left:0;right:0;bottom:0;z-index:30;max-height:80dvh;overflow-y:auto;background:var(--s1);border:1px solid var(--line);border-radius:var(--r3) var(--r3) 0 0;padding:var(--sp4) var(--sp4) calc(var(--sp4) + env(safe-area-inset-bottom));transform:translateY(105%);transition:transform var(--med) ease;box-shadow:var(--sh);display:flex;flex-direction:column;gap:var(--sp4)}.detail.open{transform:none}.detail .close{align-self:flex-end;position:sticky;top:0}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#000a;animation:fade var(--fast) both}.info{display:flex;flex-direction:column;gap:var(--sp3);max-width:60ch}.info h3{font-size:var(--h3)}.info .lead{color:var(--t1)}.info details{border-top:1px solid var(--line);padding-top:var(--sp3)}.info summary{cursor:pointer;font:600 var(--body) var(--f-body);color:var(--t0);list-style:none;display:flex;justify-content:space-between;min-height:32px;align-items:center}.info summary:after{content:"+";color:var(--c)}.info details[open] summary:after{content:"–"}.info details p,.info dd{margin:var(--sp2) 0 0;color:var(--t1)}.info dl{margin:var(--sp2) 0 0}.info dt{font:500 .72rem var(--f-mono);color:var(--t2);text-transform:uppercase;letter-spacing:.06em;margin-top:var(--sp2)}.info dd{margin:2px 0 0}.hud{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}.hud>*{pointer-events:auto}.topbar{position:absolute;top:calc(var(--sp3) + env(safe-area-inset-top));left:var(--sp3);right:var(--sp3);display:flex;align-items:center;justify-content:space-between;gap:var(--sp3);pointer-events:none}.topbar>*{pointer-events:auto}.topbar .btn,.pill,.note,.bar{background:#0b0315e6}.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--line);font:600 var(--small) var(--f-body);color:var(--t0)}.dot{width:8px;height:8px;border-radius:50%;background:var(--p)}.pill.found .dot{background:#34d399}.pill.lost .dot{background:#f87171}.note{position:absolute;top:calc(68px + env(safe-area-inset-top));left:var(--sp3);max-width:calc(100% - var(--sp5));padding:6px 12px;border-radius:var(--r2);font-size:var(--small);color:var(--t1);pointer-events:none}.state{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:min(92vw,440px);background:var(--s1);border:1px solid var(--line);border-radius:var(--r3);padding:var(--sp5);text-align:center;box-shadow:var(--sh);display:flex;flex-direction:column;gap:var(--sp3);align-items:center}.state h2{font-size:var(--hc)}.state p{color:var(--t2)}.state.err{border-color:#ef4444}.spinner{width:32px;height:32px;border:3px solid var(--s3);border-top-color:var(--c);border-radius:50%;animation:spin .9s linear infinite}.caption{position:absolute;top:22%;left:0;right:0;text-align:center;font:700 clamp(2rem,9vw,6.5rem)/1.05 var(--f-disp);color:#fff;text-shadow:0 2px 0 var(--v),0 0 24px #000c;padding:0 var(--sp4);pointer-events:none;animation:pop .4s ease-out}.bar{position:absolute;left:var(--sp3);right:var(--sp3);bottom:calc(var(--sp3) + env(safe-area-inset-bottom));display:flex;flex-wrap:wrap;gap:var(--sp2);justify-content:center;align-items:center;padding:var(--sp2);border:1px solid var(--line);border-radius:var(--r3)}.bar select{flex:1 1 100%}.side{position:fixed;left:0;right:0;bottom:0;z-index:30;max-height:70dvh;overflow-y:auto;background:var(--s1);border:1px solid var(--line);border-radius:var(--r3) var(--r3) 0 0;padding:var(--sp4);transform:translateY(105%);transition:transform var(--med) ease;box-shadow:var(--sh)}.side.open{transform:none}.side .close{float:right}.hide-sm{display:none}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(.7);opacity:0}to{transform:none;opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width: 480px){.grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.hide-sm{display:inline}}@media (min-width: 768px){.nav{flex-wrap:nowrap}.nav input{flex:0 1 340px;order:0}.bar select{flex:0 1 220px}.explorer main,.cats{padding-inline:var(--sp5)}}@media (min-width: 1024px){.explorer{grid-template:auto 1fr/240px 1fr 380px;grid-template-areas:"nav nav nav" "cats main detail"}.nav{grid-area:nav}.explorer main{grid-area:main}.cats{grid-area:cats;flex-direction:column;overflow-y:auto;border-bottom:0;border-right:1px solid var(--line);padding:var(--sp4)}.chip{border-radius:var(--r2);text-align:left;display:flex;justify-content:space-between;align-items:center}.detail{grid-area:detail;position:static;transform:none;max-height:none;border-radius:0;border:0;border-left:1px solid var(--line);box-shadow:none;background:var(--bg0)}.detail .close,.backdrop,.info-toggle{display:none}.side{left:auto;right:var(--sp3);top:calc(72px + env(safe-area-inset-top));bottom:calc(88px + env(safe-area-inset-bottom));width:min(380px,34vw);max-height:none;transform:none;border-radius:var(--r3);border:1px solid var(--line);background:#12051fee}.side .close{display:none}.bar{left:50%;right:auto;transform:translate(-50%);width:max-content;max-width:calc(100% - var(--sp5))}}@media (min-width: 1600px){html{font-size:18px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.footer{display:flex;flex-direction:column;align-items:center;gap:var(--sp3);text-align:center;margin-top:var(--sp6);padding:var(--sp5) var(--sp4) calc(var(--sp5) + env(safe-area-inset-bottom));border-top:1px solid var(--line);width:100%;max-width:1400px}.hero .footer{margin-top:var(--sp5);border-top:0;padding-bottom:var(--sp2)}.footer-name{font-size:var(--small);color:var(--t2)}.footer-name b{color:var(--t0);font-weight:600}.footer-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--sp2);justify-content:center}.footer-links a{display:inline-flex;align-items:center;gap:var(--sp2);min-height:44px;min-width:44px;padding:0 var(--sp3);justify-content:center;border-radius:999px;border:1px solid var(--line);background:var(--s1);color:var(--t1);text-decoration:none;font:500 var(--small) var(--f-body);transition:background var(--fast),border-color var(--fast),color var(--fast)}.footer-links a:hover{border-color:var(--line-hi);background:var(--s3);color:var(--c)}.footer-links a:focus-visible{outline:2px solid var(--c);outline-offset:2px}.footer-links a span{display:none}.footer-copy{font:500 .7rem var(--f-mono);color:var(--t3);letter-spacing:.04em}@media (min-width: 480px){.footer-links a span{display:inline}}
