@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_482ce5{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_482ce5{--font-display:"Fraunces","Fraunces Fallback"}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d57a24ec54448a8e-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/bc08e10e1c60a660-s.p.woff2) format("woff2");unicode-range:u+00??,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:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7c309a1f4c99f6b1-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9816a0e0ed309b6c-s.p.woff2) format("woff2");unicode-range:u+00??,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:Atkinson Hyperlegible Fallback;src:local("Arial");ascent-override:95.60%;descent-override:29.18%;line-gap-override:0.00%;size-adjust:99.37%}.__className_de3fe8{font-family:Atkinson Hyperlegible,Atkinson Hyperlegible Fallback;font-style:normal}.__variable_de3fe8{--font-ui:"Atkinson Hyperlegible","Atkinson Hyperlegible Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,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:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_9f0762{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_9f0762{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--ink:#1c1612;--ink-soft:#3a322b;--paper:#f3ebe1;--paper-2:#faf6f0;--plaster:#e7d9c8;--line:#d9c8b4;--copper:#c4622d;--copper-2:#e07a3d;--lantern:#e6b15a;--ocean:#1f5c5a;--lunar:#7e93a6;--ok:#2f6f4e;--danger:#b42318;--scrim:rgba(28,22,18,0.72);--shadow-card:0 8px 24px rgba(28,22,18,0.12);--shadow-sheet:0 18px 50px rgba(28,22,18,0.28);--r-sm:8px;--r-md:14px;--r-lg:22px;--family-display:var(--font-display),"Iowan Old Style",Palatino,serif;--family-ui:var(--font-ui),ui-sans-serif,sans-serif;--family-mono:var(--font-mono),ui-monospace,monospace;--ease:cubic-bezier(0.2,0.8,0.2,1);--t-ui:180ms;--t-sheet:320ms;--t-travel:520ms;--ease-out:cubic-bezier(0.16,1,0.3,1);--night:#0f0c0a;--glass:rgba(18,14,11,0.72);--glass-line:rgba(243,235,225,0.18);--on-glass:#faf6f0;--on-glass-soft:rgba(250,246,240,0.72)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}html{background:var(--ink)}body{font-family:var(--family-ui);color:var(--ink);background:radial-gradient(1200px 600px at 80% -10%,rgba(230,177,90,.18),transparent 50%),radial-gradient(900px 500px at -10% 110%,rgba(196,98,45,.16),transparent 45%),var(--paper);line-height:1.5}img{max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.display,h1,h2,h3{font-family:var(--family-display);font-weight:600;letter-spacing:-.02em;line-height:1.12}.shell{min-height:100dvh;display:flex;flex-direction:column;padding:16px 16px max(16px,env(safe-area-inset-bottom))}.brand-row{display:flex;align-items:center;gap:12px}.brand-row img{width:36px;height:36px}.wordmark{font-family:var(--family-display);font-size:22px;letter-spacing:.08em}.card,.scrim-panel,.sheet{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.scrim-panel{background:color-mix(in srgb,var(--paper-2) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 16px;border:0;border-radius:999px;background:var(--ink);color:var(--paper);cursor:pointer;box-shadow:var(--shadow-card);transition:transform var(--t-ui) var(--ease),background var(--t-ui) var(--ease)}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.copper{background:var(--copper);color:#fff}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.field{display:flex;flex-direction:column;gap:6px}.field input,.field select,.field textarea{min-height:44px;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--paper);color:var(--ink)}.grid{display:grid;grid-gap:12px;gap:12px;padding-bottom:96px}@media (min-width:800px){.grid.destinations{grid-template-columns:repeat(3,1fr)}}.place-card{padding:16px;min-height:168px;display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--r-lg);background-color:var(--ink);background-size:cover;background-position:center 60%;color:var(--on-glass);box-shadow:var(--shadow-card);transition:transform var(--t-ui) var(--ease)}.place-card:active{transform:scale(.98)}.place-card h2{margin:0 0 2px;font-size:24px;text-shadow:0 1px 12px rgba(0,0,0,.5)}.place-card span{color:var(--on-glass-soft);font-size:14px}.place-card .meta{align-self:flex-start;padding:4px 10px;border-radius:999px;background:var(--glass);font-family:var(--family-mono);font-size:12px;letter-spacing:.04em}.nav{position:-webkit-sticky;position:sticky;bottom:8px;z-index:4;margin-top:auto;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;padding:8px;background:var(--ink);color:var(--paper)}.nav,.nav a{border-radius:999px}.nav a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:13px;padding:0 4px}.nav a.active{background:var(--copper)}.world-page{position:fixed;inset:0;background:#05070c;overflow:hidden}.notice{padding:12px 14px;border-radius:var(--r-md);background:#f8e7c8;border:1px solid var(--lantern)}.danger{color:var(--danger)}.ok{color:var(--ok)}.muted{color:var(--ink-soft)}.mono{font-family:var(--family-mono);font-size:12px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.grow{flex:1 1}.chip{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;background:var(--glass);color:var(--on-glass);border:1px solid var(--glass-line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:14px;white-space:nowrap}.chip-copper{background:var(--copper);border-color:transparent}.chip-dark{background:rgba(10,8,6,.7)}.btn.glass{background:var(--glass);color:var(--on-glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:none}.eyebrow{margin:0;font-family:var(--family-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--lantern)}.live-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:rgba(243,235,225,.35);vertical-align:middle}.live-dot.on{background:#5fd38a;box-shadow:0 0 0 4px rgba(95,211,138,.18)}.atlas{position:fixed;inset:0;background:var(--night);color:var(--on-glass);overflow:hidden}.atlas-backdrop{position:absolute;inset:-40px;width:calc(100% + 80px);height:calc(100% + 80px);object-fit:cover;filter:blur(22px) brightness(.45) saturate(1.1)}.atlas-stage{position:absolute;top:calc(64px + env(safe-area-inset-top));left:0;right:0;bottom:calc(268px + env(safe-area-inset-bottom));overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior:contain}.atlas-stage::-webkit-scrollbar{display:none}.atlas-placeholder{background:radial-gradient(80% 60% at 50% 40%,#2a1f17,var(--night))}.atlas-map{position:relative;height:100%;aspect-ratio:3/2;margin:0 auto;border-radius:22px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.45);animation:atlas-in var(--t-travel) var(--ease-out) both}.atlas-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s var(--ease);animation:atlas-drift 60s ease-in-out infinite alternate}.atlas-art-low{opacity:1;filter:blur(6px) saturate(1.1)}.atlas-art.is-loaded{opacity:1}.atlas-shade{position:absolute;z-index:3;top:0;left:0;right:0;height:110px;pointer-events:none;background:linear-gradient(180deg,rgba(10,8,6,.65),transparent)}.atlas-hint{margin:-6px 0 12px;font-size:13px;color:var(--on-glass-soft)}@media (min-width:900px){.atlas-hint{display:none}.atlas-stage{bottom:calc(244px + env(safe-area-inset-bottom))}}@keyframes atlas-in{0%{opacity:0;transform:scale(1.03)}to{opacity:1;transform:none}}@keyframes atlas-drift{0%{transform:scale(1.02)}to{transform:scale(1.06) translate(-.6%,-.4%)}}.atlas-top{position:absolute;z-index:5;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:max(14px,env(safe-area-inset-top)) 16px 0;pointer-events:none}.atlas-top>*{pointer-events:auto}.atlas-brand{display:flex;align-items:center;gap:10px;min-height:44px;color:var(--on-glass)}.atlas-brand .wordmark{font-size:20px;text-shadow:0 1px 12px rgba(0,0,0,.5)}.atlas-top-actions{display:flex;gap:8px}.atlas-panel{position:absolute;z-index:4;left:0;right:0;bottom:calc(76px + env(safe-area-inset-bottom));padding:0 16px;pointer-events:none}.atlas-panel>*{pointer-events:auto}.atlas-heading h1{margin:4px 0 2px;font-size:clamp(30px,7vw,52px);color:var(--on-glass);text-shadow:0 2px 24px rgba(0,0,0,.55)}.atlas-heading .eyebrow{text-shadow:0 1px 8px rgba(0,0,0,.7)}.atlas-counts{margin:0 0 12px;color:var(--on-glass-soft);font-size:15px}.atlas-counts a{color:var(--lantern);text-decoration:underline;text-underline-offset:3px}.atlas-status{max-width:420px;padding:14px 16px;border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.atlas-status p{margin:0 0 10px}.world-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.world-tabs::-webkit-scrollbar{display:none}.world-tab{flex:0 0 auto;display:flex;align-items:center;gap:8px;min-height:48px;padding:4px 14px 4px 4px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-line);color:var(--on-glass);cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background var(--t-ui) var(--ease),border-color var(--t-ui) var(--ease),transform var(--t-ui) var(--ease)}.world-tab img{width:40px;height:40px;border-radius:50%;object-fit:cover}.world-tab:active{transform:scale(.97)}.world-tab.active{background:rgba(196,98,45,.92);border-color:transparent}.chip:focus-visible,.pin:focus-visible,.world-tab:focus-visible{outline:2px solid var(--lantern);outline-offset:3px}.atlas-nav{position:absolute;z-index:6;left:16px;right:16px;bottom:max(10px,env(safe-area-inset-bottom));max-width:520px;margin:0 auto}.atlas-nav .nav{position:static;box-shadow:0 10px 30px rgba(0,0,0,.35)}.pin{position:absolute;z-index:2;display:flex;align-items:center;gap:8px;padding:0;border:0;background:none;color:var(--on-glass);cursor:pointer;transform:translate(-11px,-50%);animation:pin-in .36s var(--ease-out) both}.pin-dot{position:relative;flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--paper-2);border:5px solid var(--ink);box-shadow:0 0 0 2px rgba(250,246,240,.9),0 6px 16px rgba(0,0,0,.45);transition:transform var(--t-ui) var(--ease)}.pin-hub .pin-dot{width:28px;height:28px;background:var(--lantern);border-color:var(--copper)}.pin-live .pin-dot:after{content:"";position:absolute;inset:-9px;border-radius:50%;border:2px solid #5fd38a;animation:pin-pulse 1.8s var(--ease) infinite}.pin-label{display:flex;flex-direction:column;align-items:flex-start;padding:6px 12px 7px;border-radius:14px;background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-align:left;line-height:1.2;transition:background var(--t-ui) var(--ease),transform var(--t-ui) var(--ease)}.pin-label strong{font-size:14px;font-weight:700;white-space:nowrap}.pin-label small{font-size:12px;color:var(--on-glass-soft);white-space:nowrap}.pin-active .pin-dot,.pin:hover .pin-dot{transform:scale(1.18)}.pin-active .pin-label{background:rgba(196,98,45,.94)}.pin:active .pin-label{transform:scale(.97)}@keyframes pin-in{0%{opacity:0;transform:translate(-11px,calc(-50% + 10px))}to{opacity:1;transform:translate(-11px,-50%)}}@keyframes pin-pulse{0%{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(1.5)}}.sheet-backdrop{position:fixed;inset:0;z-index:7;border:0;background:rgba(10,8,6,.35);animation:fade-in var(--t-ui) var(--ease) both}.place-sheet{position:fixed;z-index:8;left:0;right:0;bottom:0;max-width:520px;margin:0 auto;overflow:hidden;border-radius:24px 24px 0 0;background:var(--paper-2);color:var(--ink);box-shadow:var(--shadow-sheet);padding-bottom:env(safe-area-inset-bottom);animation:sheet-in var(--t-sheet) var(--ease-out) both}@media (min-width:900px){.place-sheet{left:auto;right:24px;bottom:24px;width:400px;border-radius:24px}}.place-sheet-art{height:168px;background-size:cover;background-position:center 55%;display:flex;align-items:flex-start;padding:12px}.place-sheet-body{padding:16px 18px 20px}.place-sheet-body h2{margin:0;font-size:26px}.place-sheet-body p{margin:4px 0 0}.place-sheet .occupancy{margin:12px 0 16px}.place-sheet .live-dot{background:#b9a892}.place-sheet .live-dot.on{background:var(--ok)}.more-places{margin-top:14px}.more-places summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.more-places ul{list-style:none;padding:0;margin:0}.more-places button{width:100%;min-height:44px;text-align:left;background:none;border:0;border-top:1px solid var(--line);cursor:pointer}@keyframes sheet-in{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition-duration:80ms!important}.atlas-art{transform:none}}.world-stage{position:absolute;inset:0;overflow:hidden;background:var(--night);color:var(--on-glass)}.world-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.world-top{position:absolute;z-index:5;top:0;left:0;right:0;display:flex;align-items:center;gap:8px;padding:max(12px,env(safe-area-inset-top)) 12px 28px;background:linear-gradient(180deg,rgba(10,8,6,.62),transparent);pointer-events:none}.world-top>*{pointer-events:auto}.world-title{flex:1 1;min-width:0;display:flex;flex-direction:column;padding:0 4px;text-shadow:0 1px 10px rgba(0,0,0,.6)}.world-title strong{font-family:var(--family-display);font-size:19px;line-height:1.15}.world-title strong,.world-title>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.world-title>span{font-size:12px;color:var(--on-glass-soft)}.world-actions{display:flex;gap:6px}@media (max-width:520px){.world-top{flex-wrap:wrap}.world-title{order:3;flex-basis:100%;padding:6px 4px 0}.world-actions{margin-left:auto}}.world-failed,.world-loading{position:absolute;z-index:4;inset:0;display:grid;place-content:center;justify-items:center;grid-gap:14px;gap:14px;padding:24px;text-align:center;background:radial-gradient(60% 50% at 50% 50%,rgba(40,28,20,.85),rgba(10,8,6,.96));animation:fade-in var(--t-ui) var(--ease) both}.world-failed h2{margin:0}.world-failed p{margin:0 0 8px;color:var(--on-glass-soft);max-width:360px}.portal-ring{width:72px;height:72px;border-radius:50%;border:3px solid rgba(230,177,90,.25);border-top:3px solid var(--lantern);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.chat-toasts,.world-toast{position:absolute;z-index:5;left:50%;transform:translateX(-50%);width:min(92%,440px)}.world-toast{top:calc(max(12px, env(safe-area-inset-top)) + 96px);margin:0;padding:10px 14px;border-radius:var(--r-md);background:rgba(120,40,20,.85);font-size:14px}.chat-toasts{bottom:calc(150px + env(safe-area-inset-bottom));list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.chat-toasts li{padding:8px 12px;border-radius:14px;background:var(--glass);border:1px solid var(--glass-line);font-size:14px;animation:sheet-in var(--t-sheet) var(--ease-out) both}.world-bottom{position:absolute;z-index:5;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:24px 16px max(16px,env(safe-area-inset-bottom));background:linear-gradient(0deg,rgba(10,8,6,.5),transparent);pointer-events:none}.world-bottom>*{pointer-events:auto}.emotes{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:220px}@media (min-width:700px){.emotes{max-width:none}}.emotes .chip{min-height:44px}.emotes .chip:active{transform:scale(.95)}.joystick{position:relative;flex:0 0 auto;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,rgba(18,14,11,.35),rgba(18,14,11,.6));border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:none;cursor:-webkit-grab;cursor:grab}.joystick-knob{position:absolute;left:calc(50% - 24px);top:calc(50% - 24px);width:48px;height:48px;border-radius:50%;background:var(--paper-2);box-shadow:0 4px 14px rgba(0,0,0,.4);transition:transform 90ms var(--ease)}.editor{position:absolute;z-index:5;left:0;right:0;bottom:0;display:grid;grid-gap:10px;gap:10px;padding:0 12px max(12px,env(safe-area-inset-bottom));max-width:720px;margin:0 auto;pointer-events:none}.editor>*{pointer-events:auto}.editor-hint{margin:0;padding:8px 14px;border-radius:999px;font-size:13px}.editor-hint,.editor-selection{justify-self:center;background:var(--glass)}.editor-selection{display:grid;justify-items:center;grid-gap:6px;gap:6px;padding:8px 10px;border-radius:20px;border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:sheet-in var(--t-ui) var(--ease-out) both}.editor-selection small{color:var(--on-glass-soft);font-size:12px}.editor-selection .row{flex-wrap:nowrap;gap:6px}.editor-selection .icon-btn{width:42px;height:42px}.capacity,.save-state{white-space:nowrap}.save-state{overflow:hidden;text-overflow:ellipsis;min-width:0}.icon-btn{width:44px;height:44px;border-radius:12px;border:1px solid var(--glass-line);background:rgba(250,246,240,.08);color:var(--on-glass);font-size:18px;cursor:pointer;transition:background var(--t-ui) var(--ease),transform var(--t-ui) var(--ease)}.icon-btn:active{transform:scale(.92);background:rgba(230,177,90,.35)}.danger-btn{color:#ffb4a3}.editor-sheet{display:grid;grid-gap:10px;gap:10px;padding:12px;border-radius:22px;background:rgba(18,14,11,.86);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.editor-meta{justify-content:space-between;gap:12px;font-size:13px}.capacity,.editor-meta{display:flex;align-items:center}.capacity{gap:8px}.capacity-bar{width:96px;height:6px;border-radius:999px;background:rgba(250,246,240,.15);overflow:hidden}.capacity-bar>span{display:block;height:100%;background:var(--lantern);transition:width var(--t-sheet) var(--ease)}.capacity-bar>span.hot{background:#ff8a65}.save-state{color:var(--on-glass-soft)}.palette{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.palette::-webkit-scrollbar{display:none}.palette-item{flex:0 0 auto;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 8px;border-radius:14px;border:1px solid var(--glass-line);background:rgba(250,246,240,.06);color:var(--on-glass);cursor:pointer;white-space:nowrap}.palette-item:active{transform:scale(.96)}.swatch{width:26px;height:26px;border-radius:8px;background:var(--copper)}.swatch-furniture{background:linear-gradient(135deg,#8a5a36,#5a3620)}.swatch-lighting{background:radial-gradient(circle at 50% 40%,#ffe2a8,#c4862d)}.swatch-nature{background:linear-gradient(135deg,#5c9a4f,#2f5f2c)}.swatch-shop{background:linear-gradient(135deg,#efe5d8,#b9a892)}.swatch-textile{background:repeating-linear-gradient(90deg,#c4622d 0 6px,#e6b15a 6px 12px,#1f3f7a 12px 18px)}.swatch-event{background:linear-gradient(135deg,#3a322b,#1c1612)}.swatch-display{background:linear-gradient(135deg,#e07a3d,#7a2f12)}.editor-note{margin:0;font-size:13px;color:var(--on-glass-soft)}.danger-text{color:#ffb4a3}.landing{position:relative;min-height:100dvh;display:flex;flex-direction:column;gap:24px;padding:max(14px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));color:var(--on-glass);background:var(--night);overflow:hidden}.landing-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% 50%;animation:atlas-drift 60s ease-in-out infinite alternate}.landing-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,8,6,.55),rgba(10,8,6,.05) 30%,rgba(10,8,6,.55) 60%,rgba(10,8,6,.94))}.landing>:not(.landing-art):not(.landing-shade){position:relative}.landing-top{display:flex;justify-content:space-between;align-items:center}.landing-copy{margin-top:auto;max-width:620px}.landing-copy h1{margin:10px 0 12px;font-size:clamp(36px,8vw,68px);text-shadow:0 2px 30px rgba(0,0,0,.6)}.landing-lede{margin:0 0 22px;max-width:520px;font-size:17px;color:rgba(250,246,240,.86)}.landing-realms{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}@media (min-width:800px){.landing-realms{grid-template-columns:repeat(3,1fr)}}.landing-realms a{display:flex;align-items:center;gap:12px;padding:8px;border-radius:18px;background:var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform var(--t-ui) var(--ease)}.landing-realms a:active{transform:scale(.98)}.landing-realms img{width:64px;height:48px;border-radius:12px;object-fit:cover}.landing-realms span{display:flex;flex-direction:column;line-height:1.25}.landing-foot,.landing-realms small{color:var(--on-glass-soft)}.landing-foot{margin:0;font-size:12px}.auth{min-height:100dvh;display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:max(14px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:var(--night);overflow:hidden}.auth,.auth>:not(.landing-art):not(.landing-shade){position:relative}.auth-brand{display:flex;align-self:flex-start;align-items:center;gap:10px;min-height:44px;color:var(--on-glass)}.auth-card{display:grid;grid-gap:14px;gap:14px;width:100%;max-width:420px;margin:0 auto;padding:22px 18px;border-radius:24px;background:var(--paper-2);box-shadow:var(--shadow-sheet);animation:sheet-in var(--t-sheet) var(--ease-out) both}.auth-card h1{margin:0;font-size:30px}.auth-card p{margin:0}.small{font-size:13px}.auth-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px}.auth-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--copper);text-decoration:underline;text-underline-offset:3px}.check{display:flex;gap:12px;align-items:flex-start;min-height:44px;cursor:pointer}.check input{flex:0 0 auto;width:22px;height:22px;margin:1px 0 0;accent-color:var(--copper)}.form-page h1{margin:8px 0 4px}.form-card{width:100%;max-width:560px;padding:20px 16px}.field-row,.form-card{display:grid;grid-gap:14px;gap:14px}@media (min-width:520px){.field-row{grid-template-columns:1fr 1fr}}form.card :is(input:not([type=checkbox],[type=radio],[type=range],[type=color]),select,textarea){width:100%;min-height:44px;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--paper);color:var(--ink)}.field select:disabled{opacity:.6}.prompts{position:absolute;z-index:5;left:50%;bottom:calc(150px + env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:8px}.prompt{min-height:48px;padding:0 20px;font-size:16px;cursor:pointer;animation:sheet-in var(--t-ui) var(--ease-out) both}.drive-hint{max-width:220px;margin:0;padding:10px 12px;border-radius:14px;background:var(--glass);font-size:13px;color:var(--on-glass-soft)}.life-sheet{position:absolute;z-index:7;left:0;right:0;bottom:0;max-width:520px;max-height:72dvh;margin:0 auto;display:grid;grid-template-rows:auto auto 1fr auto;grid-gap:12px;gap:12px;padding:16px 16px max(16px,env(safe-area-inset-bottom));border-radius:24px 24px 0 0;background:#16110d;border:1px solid var(--glass-line);box-shadow:0 -12px 40px rgba(0,0,0,.45);color:var(--on-glass);animation:sheet-in var(--t-sheet) var(--ease-out) both}@media (min-width:900px){.life-sheet{left:auto;right:24px;bottom:24px;width:420px;border-radius:24px}}.life-sheet header{display:flex;justify-content:space-between;align-items:center;gap:12px}.life-sheet header div{display:flex;flex-direction:column}.life-sheet header strong{font-family:var(--family-display);font-size:22px}.life-sheet header span{font-size:13px;color:var(--on-glass-soft)}.life-sheet header em{font-style:normal;color:var(--lantern);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.life-line{margin:0;font-family:var(--family-display);font-size:19px;line-height:1.35}.life-options,.travel-list{display:grid;grid-gap:8px;gap:8px;overflow-y:auto;min-height:0}.travel-list h3{margin:6px 0 2px;font-size:13px;font-family:var(--family-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--lantern)}.travel-list section{display:grid;grid-gap:8px;gap:8px}.life-option{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border-radius:14px;border:1px solid var(--glass-line);background:rgba(250,246,240,.07);color:var(--on-glass);text-align:left;font-size:15px;cursor:pointer;transition:background var(--t-ui) var(--ease),transform var(--t-ui) var(--ease)}.life-option:hover{background:rgba(230,177,90,.18)}.life-option:active{transform:scale(.98)}.life-option small{color:var(--on-glass-soft);white-space:nowrap}.life-note{margin:0;font-size:12px;color:var(--on-glass-soft)}.travel-curtain{position:fixed;z-index:20;inset:0;display:grid;place-content:center;justify-items:center;grid-gap:14px;gap:14px;padding:24px;text-align:center;color:var(--on-glass);background:radial-gradient(60% 50% at 50% 50%,rgba(40,28,20,.9),rgba(10,8,6,.98));animation:fade-in .3s var(--ease) both}.travel-curtain p{margin:0;font-family:var(--family-display);font-size:20px}.swatch-resident{background:radial-gradient(circle at 50% 35%,#d8b48c 0 28%,#1f5c5a 30%)}.swatch-vehicle{background:linear-gradient(135deg,#e8b22e,#c4622d)}.style-page{min-height:100dvh;background:var(--night);color:var(--on-glass);padding-bottom:calc(96px + env(safe-area-inset-bottom))}.style-stage{position:relative;height:46dvh;min-height:320px;background:radial-gradient(60% 55% at 50% 60%,rgba(230,177,90,.28),transparent 70%),radial-gradient(80% 60% at 50% 100%,rgba(47,138,134,.25),transparent 70%),#120e0b}.avatar-preview{display:block;width:100%;height:100%;touch-action:pan-y;cursor:-webkit-grab;cursor:grab}.style-stage-top{position:absolute;top:max(14px,env(safe-area-inset-top));left:16px;right:16px;display:flex;justify-content:space-between;align-items:center}.style-stage-hint{position:absolute;bottom:10px;width:100%;margin:0;text-align:center;font-size:12px;color:var(--on-glass-soft)}.style-panel{display:grid;grid-gap:16px;gap:16px;padding:18px 16px;max-width:620px;margin:0 auto}.style-panel .field input,.style-panel .field select{background:rgba(250,246,240,.06);color:var(--on-glass);border-color:var(--glass-line)}.style-panel h2{margin:12px 0 0}.style-panel .muted{color:var(--on-glass-soft)}.style-panel a{color:var(--lantern)}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:999px;background:rgba(250,246,240,.08)}.segmented button{min-height:44px;border:0;border-radius:999px;background:none;color:var(--on-glass-soft);font-size:15px;cursor:pointer;transition:background var(--t-ui) var(--ease)}.segmented button.on{background:var(--copper);color:#fff}.style-groups{display:grid;grid-gap:16px;gap:16px;animation:fade-in var(--t-ui) var(--ease) both}.style-group{margin:0;padding:0;border:0}.style-group legend{margin-bottom:8px;font-family:var(--family-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--lantern)}.style-options{display:flex;flex-wrap:wrap;gap:8px}.choice{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--glass-line);background:rgba(250,246,240,.06);color:var(--on-glass);font-size:14px;text-transform:capitalize;cursor:pointer;transition:background var(--t-ui) var(--ease),transform var(--t-ui) var(--ease)}.choice.on{background:var(--copper);border-color:transparent}.choice:disabled{opacity:.35;cursor:not-allowed}.choice:active:not(:disabled),.dot:active{transform:scale(.95)}.dot{width:44px;height:44px;border-radius:50%;border:3px solid transparent;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);cursor:pointer;transition:transform var(--t-ui) var(--ease)}.dot.on{border-color:var(--paper-2);box-shadow:0 0 0 2px var(--copper)}.archetypes{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;gap:8px}.archetype{display:grid;grid-gap:2px;gap:2px;min-height:72px;padding:10px 12px;border-radius:16px;border:1px solid var(--glass-line);background:rgba(250,246,240,.05);color:var(--on-glass);text-align:left;cursor:pointer}.archetype span{font-size:12px;color:var(--on-glass-soft)}.archetype.on{background:rgba(196,98,45,.9);border-color:transparent}.archetype.on span{color:rgba(255,255,255,.85)}.style-save{position:-webkit-sticky;position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));z-index:3;margin:0 -16px;padding:10px 16px;background:linear-gradient(0deg,var(--night) 70%,transparent)}.style-save .btn{width:100%;box-shadow:0 10px 30px rgba(0,0,0,.4)}.inventory{margin:0;padding-left:18px}.style-nav{position:fixed;z-index:6;left:16px;right:16px;bottom:max(10px,env(safe-area-inset-bottom));max-width:520px;margin:0 auto}.style-nav .nav{position:static}@media (min-width:900px){.style-page{display:grid;grid-template-columns:minmax(0,1fr) 520px}.style-stage{position:-webkit-sticky;position:sticky;top:0;height:100dvh}.style-panel{margin:0;padding:32px 28px 120px;max-width:none}.style-nav{left:auto;right:28px;width:464px}}.pin-area .pin-dot{width:26px;height:26px;display:grid;place-items:center;background:var(--copper);border-color:var(--paper-2);border-width:3px}.pin-area .pin-dot em{font-style:normal;font-size:12px;font-weight:700;color:#fff;line-height:1}.pin-area.pin-empty .pin-dot{background:rgba(250,246,240,.85);border-color:var(--ink)}.pin-area.pin-empty .pin-label{background:rgba(18,14,11,.55)}.pin-quiet .pin-label{visibility:hidden}.pin-quiet:focus-visible .pin-label,.pin-quiet:hover .pin-label{visibility:visible;position:relative;z-index:3}.pin-flip{flex-direction:row-reverse;transform:translate(calc(-100% + 13px),-50%)}.pin-flip .pin-label{align-items:flex-end;text-align:right}@keyframes pin-in-flip{0%{opacity:0}to{opacity:1}}.pin-flip{animation-name:pin-in-flip}.area-places{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.area-places button{width:100%;min-height:52px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;border-radius:14px;border:1px solid var(--line);background:var(--paper);text-align:left;cursor:pointer}.area-places button span:first-child{display:flex;flex-direction:column}.area-places small{color:var(--ink-soft)}.area-empty{margin:14px 0 0;font-family:var(--family-display);font-size:18px}.area-create{width:100%;margin-top:14px}.area-note{margin:10px 0 0;font-size:12px;color:var(--ink-soft)}.place-sheet-body{max-height:52dvh;overflow-y:auto}