.shell{position:relative;min-height:100vh;min-height:100dvh;color:var(--text-primary);background:var(--black)}.skip-link{position:fixed;top:10px;left:12px;z-index:300;padding:9px 12px;color:#000;background:#fff;border-radius:var(--radius-sm);font-size:13px;font-weight:700;text-decoration:none;transform:translateY(-160%);transition:transform .16s var(--ease-out)}.skip-link:focus{transform:translateY(0)}.capture-notice{position:fixed;right:18px;bottom:18px;z-index:320;max-width:min(360px,calc(100vw - 36px));padding:11px 14px;color:#f5f5f5;background:#111;border:1px solid rgb(255 255 255 / .2);border-radius:9px;box-shadow:0 12px 36px #0000008c;font-size:13px;line-height:1.4;animation:popover-in .15s var(--ease-out) both}.welcome-backdrop{z-index:290}.welcome-backdrop.is-closing{animation:welcome-backdrop-out .34s ease both}.welcome-modal{width:min(620px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 28px));overflow-y:auto;padding:26px;transform-origin:center}.welcome-modal.is-opening{animation:welcome-expand .38s var(--ease-out) both}.welcome-modal.is-open,.welcome-backdrop.is-open{animation:none}.welcome-modal.is-closing{animation:welcome-minimize .34s cubic-bezier(.55,0,.9,.45) both}.welcome-topbar{margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:12px}.welcome-tabs{display:inline-flex;gap:3px;padding:3px;background:#080808;border:1px solid var(--border-subtle);border-radius:10px}.welcome-tabs button,.welcome-minimize{min-height:32px;padding:0 12px;color:var(--text-tertiary);background:transparent;border:0;border-radius:7px;cursor:pointer;font-size:11px;font-weight:700}.welcome-tabs button:hover,.welcome-minimize:hover{color:var(--text-primary);background:var(--surface-2)}.welcome-tabs button.active{color:#000;background:#fff}.welcome-minimize{width:34px;padding:0;border:1px solid var(--border-subtle);font-size:18px}.welcome-panel{animation:welcome-panel-in .18s var(--ease-out) both}.welcome-kicker{margin-bottom:8px;color:var(--text-tertiary);font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.welcome-modal h2{margin:0;max-width:480px;font-size:clamp(24px,4vw,34px);line-height:1.08;letter-spacing:-.04em}.welcome-summary{margin:12px 0 18px;color:var(--text-secondary);font-size:14px;line-height:1.55}.keyword-cyan{color:#67e8f9}.keyword-violet{color:#c4b5fd}.keyword-amber{color:#fbbf24}.keyword-pink{color:#f9a8d4}.keyword-lime{color:#bef264}.keyword-blue{color:#93c5fd}.welcome-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.welcome-guide>div{min-width:0;padding:12px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:9px}.welcome-guide span{width:22px;height:22px;display:grid;place-items:center;color:#000;background:#fff;border-radius:6px;font-size:11px;font-weight:800;margin-inline:auto}.welcome-guide .step-cyan{background:#67e8f9}.welcome-guide .step-violet{background:#c4b5fd}.welcome-guide .step-amber{background:#fbbf24}.welcome-guide p{margin:9px 0 0;color:var(--text-secondary);font-size:11px;line-height:1.45}.welcome-guide strong{color:var(--text-primary)}.welcome-guide em{color:#67e8f9;font-style:normal}.welcome-purpose{margin-top:10px;padding:13px 14px;display:flex;align-items:center;gap:10px;color:var(--text-secondary);background:linear-gradient(100deg,#67e8f914,#c4b5fd12);border:1px solid rgb(103 232 249 / .16);border-radius:9px;font-size:11px}.welcome-purpose .auth-btn{margin-left:auto}.feedback-modal{width:min(520px,calc(100% - 32px))}.feedback-modal textarea{width:100%;min-height:150px;resize:vertical}.welcome-purpose strong{flex:0 0 auto;color:#67e8f9}.welcome-version-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.welcome-version-row h3{margin:0;font-size:14px}.welcome-version-row h2{margin:0;font-size:clamp(22px,3.4vw,30px)}.welcome-version-row span{color:var(--text-tertiary);font-size:10px}.welcome-changelog{margin:12px 0 0;padding-left:18px;color:var(--text-primary);font-size:12px;line-height:1.6}.welcome-changelog li+li{margin-top:4px}.welcome-changelog li{padding-left:3px}.welcome-changelog strong{font-weight:750}.welcome-actions{margin-top:18px}.help-button{width:38px;height:38px;flex:0 0 38px;color:var(--text-secondary);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:9px;cursor:pointer;font-size:15px;font-weight:800;transition:color .14s ease,border-color .14s ease,background-color .14s ease,transform .14s ease}.help-button:hover{color:#000;background:#fff;border-color:#fff;transform:translateY(-1px)}@keyframes welcome-expand{0%{opacity:0;transform:translate(var(--welcome-x),var(--welcome-y)) scale(.06);filter:blur(8px)}to{opacity:1;transform:translate(0) scale(1);filter:blur(0)}}@keyframes welcome-minimize{0%{opacity:1;transform:translate(0) scale(1);filter:blur(0)}to{opacity:0;transform:translate(var(--welcome-x),var(--welcome-y)) scale(.04);filter:blur(9px)}}@keyframes welcome-backdrop-out{to{opacity:0}}@keyframes welcome-panel-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:620px){.welcome-modal{padding:20px}.welcome-guide{grid-template-columns:1fr}.welcome-guide>div{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;column-gap:10px}.welcome-guide span,.welcome-guide p{margin:0}.welcome-guide p strong{display:block;margin-bottom:5px}.welcome-purpose{padding:9px 10px;align-items:center;flex-direction:row}.welcome-purpose strong{min-width:0}.welcome-purpose .auth-btn{margin-left:auto;flex:0 0 auto}}.app-header{position:fixed;inset:0 0 auto;z-index:60;min-height:64px;padding-top:env(safe-area-inset-top,0);border-bottom:1px solid rgb(255 255 255 / .12);background:#000000db;-webkit-backdrop-filter:blur(18px) saturate(120%);backdrop-filter:blur(18px) saturate(120%);animation:header-enter .42s var(--ease-out) both}.app-nav{width:min(1480px,100%);min-height:63px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:12px}.view-switcher button,.nav-link,.user-button,.icon-button,.nav-cta{border:0;cursor:pointer}.view-switcher,.segmented-control,.auth-tabs{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--border-subtle);border-radius:9px;background:var(--surface-1)}.view-switcher button,.segmented-control button{min-height:32px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text-secondary);background:transparent;border-radius:6px;font-size:12px;font-weight:620;transition:color .14s ease,background-color .14s ease,transform .14s ease}.view-switcher button:hover,.segmented-control button:hover{color:var(--text-primary)}.view-switcher button.active,.segmented-control button.active{color:#000;background:#fff;box-shadow:0 1px #ffffff2e}.nav-tools{min-width:180px;max-width:520px;flex:1 1 360px;display:flex;align-items:center;gap:8px;margin-left:auto}.nav-search{position:relative;min-width:0;flex:1}.nav-search-icon{position:absolute;top:50%;left:11px;z-index:1;color:var(--text-tertiary);pointer-events:none;transform:translateY(-50%)}.nav-search input,.my-pages-search input,.admin-search input{width:100%;height:38px;padding:0 12px 0 34px;color:var(--text-primary);caret-color:#fff;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:9px;outline:0;font-size:13px;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.nav-search input::placeholder,.my-pages-search input::placeholder,.admin-search input::placeholder{color:var(--text-tertiary)}.nav-search input:hover,.my-pages-search input:hover,.admin-search input:hover{border-color:var(--border-strong)}.nav-search input:focus,.my-pages-search input:focus,.admin-search input:focus{border-color:#737373;background:var(--surface-2);box-shadow:0 0 0 3px #ffffff12}.nav-search-results,.filter-popover{position:absolute;top:calc(100% + 9px);z-index:80;margin:0;padding:6px;color:var(--text-primary);background:#0a0a0a;border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 20px 50px #000000b3;animation:popover-in .15s var(--ease-out) both}.nav-search-results{right:0;left:0;min-width:260px;list-style:none}.nav-search-results li+li{margin-top:2px}.nav-search-results button,.filter-option{width:100%;min-height:40px;padding:8px 10px;color:var(--text-primary);background:transparent;border:1px solid transparent;border-radius:7px;text-align:left;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.nav-search-results button:hover,.nav-search-results button:focus-visible,.filter-option:hover,.filter-option:focus-visible,.filter-option.active{background:var(--surface-3);border-color:var(--border-subtle)}.result-title,.result-url{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.result-title{font-size:13px;font-weight:680}.result-url{margin-top:2px;color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.nav-search-results.empty,.filter-empty{padding:12px;color:var(--text-secondary);font-size:12px}.nav-filter{position:relative}.filter-popover{right:0;width:230px;display:grid;gap:2px}.popover-label{padding:7px 9px 6px;color:var(--text-tertiary);font-size:10px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.filter-option{display:flex;align-items:center;justify-content:space-between;font-size:12px}.filter-option.active:after{content:"✓";color:#fff}.filter-tags-grid{max-height:55vh;margin-top:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:6px;overflow:auto}.nav-account{flex:0 0 auto;display:flex;align-items:center;gap:6px}.nav-link,.user-button,.icon-button,.nav-cta{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;font-size:12px;font-weight:640;transition:color .14s ease,background-color .14s ease,border-color .14s ease,transform .14s var(--ease-out)}.nav-link,.icon-button{padding:0 10px;color:var(--text-secondary);background:transparent;border:1px solid transparent}.icon-button{width:38px;padding:0}.nav-link:hover,.icon-button:hover,.icon-button.active{color:var(--text-primary);background:var(--surface-2);border-color:var(--border-subtle)}.user-button{width:38px;padding:0;color:#000;background:#fff;border:1px solid #fff;font-size:0}.user-button svg{display:none}.user-button span{font-size:12px;font-weight:800}.nav-cta,.feed-publish,.feed-empty button,.map-empty button{min-height:38px;padding:0 13px;color:#000;background:#fff;border:1px solid #fff}.nav-cta:hover,.feed-publish:hover,.feed-empty button:hover,.map-empty button:hover{background:#d4d4d4;border-color:#d4d4d4;transform:translateY(-1px)}.feed-shell{min-height:100vh;min-height:100dvh;padding:110px 24px 80px;background-color:#000;background-image:linear-gradient(rgb(255 255 255 / .018) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .018) 1px,transparent 1px);background-size:48px 48px}.feed-hero,.feed-toolbar,.feed-list,.feed-empty,.feed-loading,.feed-skeletons{width:min(1080px,100%);margin-right:auto;margin-left:auto}.feed-hero{padding:34px 0 36px;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;border-bottom:1px solid var(--border-subtle)}.eyebrow{display:block;margin-bottom:12px;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.feed-hero h1{max-width:700px;margin:0;color:#fff;font-size:clamp(34px,5vw,58px);font-weight:690;letter-spacing:-.055em;line-height:.98}.feed-hero p{max-width:620px;margin:17px 0 0;color:var(--text-secondary);font-size:15px;line-height:1.6}.feed-publish,.feed-empty button,.map-empty button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .15s var(--ease-out),background-color .15s ease}.feed-toolbar{position:sticky;top:64px;z-index:20;min-height:64px;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#000000e6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.feed-context{display:flex;align-items:center;gap:9px;color:var(--text-tertiary);font-size:12px}.feed-list{display:grid;gap:12px}.feed-card{min-width:0;padding:12px;display:grid;grid-template-columns:238px minmax(0,1fr);gap:18px;background:#080808f0;border:1px solid var(--border-subtle);border-radius:12px;opacity:0;transform:translateY(10px);animation:feed-card-in .42s var(--ease-out) forwards;animation-delay:calc(var(--feed-index, 0) * 38ms);transition:border-color .16s ease,background-color .16s ease,transform .18s var(--ease-out)}.feed-card:hover{background:#0b0b0b;border-color:var(--border-strong);transform:translateY(-1px)}.feed-card-preview{position:relative;min-width:0;padding:0;aspect-ratio:16 / 10;overflow:hidden;background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer}.feed-card-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgb(0 0 0 / .3));pointer-events:none}.feed-card-preview img{width:100%;height:100%;display:block;object-fit:cover;object-position:top;filter:saturate(.68) contrast(1.04);transition:transform .36s var(--ease-out),filter .22s ease}.feed-card:hover .feed-card-preview img{filter:saturate(.92) contrast(1.03);transform:scale(1.018)}.feed-card-content{min-width:0;padding:3px 4px 2px 0;display:flex;flex-direction:column}.feed-card-kicker{min-width:0;display:flex;align-items:center;gap:7px;color:var(--text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px}.featured-badge{padding:3px 6px;display:inline-flex;align-items:center;gap:4px;color:var(--text-primary);background:var(--surface-3);border:1px solid var(--border-strong);border-radius:999px;font-family:inherit;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.feed-card-title{width:fit-content;max-width:100%;margin:10px 0 0;padding:0;overflow:hidden;color:#fff;background:transparent;border:0;font-size:21px;font-weight:680;letter-spacing:-.035em;line-height:1.15;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.feed-card-title:hover{text-decoration:underline;text-underline-offset:4px}.feed-card-content>p{display:-webkit-box;margin:10px 0 0;overflow:hidden;color:var(--text-secondary);font-size:13px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.feed-card-tags{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}.feed-card-tags span,.tag-chip{padding:4px 7px;color:var(--text-secondary);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:999px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px}.feed-card-footer{margin-top:auto;padding-top:14px;display:flex;align-items:center;gap:12px;color:var(--text-tertiary);font-size:11px}.feed-vote,.feed-card-footer a{height:31px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text-secondary);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:7px;font-size:11px;font-weight:690;text-decoration:none;transition:color .14s ease,background-color .14s ease,border-color .14s ease,transform .14s ease}.feed-vote{min-width:54px;padding:0 9px;cursor:pointer}.feed-vote:hover:not(:disabled),.feed-card-footer a:hover{color:#fff;background:var(--surface-3);border-color:var(--border-strong);transform:translateY(-1px)}.feed-vote.voted{color:#000;background:#fff;border-color:#fff}.feed-vote:disabled{cursor:default}.feed-card-footer>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.feed-card-footer a{margin-left:auto;padding:0 10px}.feed-empty,.feed-loading{min-height:420px;padding:80px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.feed-empty h2,.feed-loading h2,.map-empty h1{margin:8px 0 0;font-size:22px;letter-spacing:-.035em}.feed-empty p,.feed-loading p,.map-empty p{max-width:380px;margin:9px 0 20px;color:var(--text-secondary);font-size:13px;line-height:1.55}.feed-skeletons{display:grid;gap:12px}.feed-loading+.feed-skeletons{display:none}.feed-skeleton{height:180px;border:1px solid var(--border-subtle);border-radius:12px;background:linear-gradient(90deg,#080808,#151515,#080808 90%);background-size:220% 100%;animation:skeleton-shimmer 1.5s linear infinite}.motion-mark{position:relative;width:84px;height:84px;display:inline-grid;place-items:center}.motion-mark-player{position:absolute;inset:0}.motion-mark-player svg{display:block}.motion-mark-fallback{width:42px;height:42px;border:1px solid var(--border-strong);border-top-color:#fff;border-radius:50%;animation:fallback-spin .9s linear infinite}.button-lottie{width:20px;height:20px;margin:-4px 1px -4px -2px;filter:invert(1)}.button-lottie .motion-mark-fallback{width:14px;height:14px;border-color:#00000059;border-top-color:#000}.scene{--mx: 50%;--my: 45%;position:fixed;inset:0;z-index:0;overflow:hidden;background:#000;cursor:grab;touch-action:none}.scene.is-panning{cursor:grabbing}.scene-spotlight{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(430px circle at var(--mx) var(--my),transparent 0 38%,rgb(0 0 0 / .18) 68%,rgb(0 0 0 / .82) 100%);transition:opacity .18s ease}.feed-mobile-copy,.mobile-publish-fab,.detail-floating-close{display:none}.canvas{position:absolute;inset:0;z-index:0;display:grid;place-items:center;pointer-events:none}.galaxy{position:absolute;width:200vw;height:200vh;transform-origin:center;will-change:transform}.zoom-layer{position:absolute;inset:0;transform-origin:center;will-change:transform}.starfield{position:absolute;inset:-20%;opacity:.7;background-image:radial-gradient(circle,rgb(255 255 255 / .24) 1px,transparent 1px),linear-gradient(rgb(255 255 255 / .026) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .026) 1px,transparent 1px);background-position:0 0,17px 17px,17px 17px;background-size:96px 96px,64px 64px,64px 64px}.center-marker{position:absolute;top:50%;left:50%;z-index:0;padding:6px 9px;color:#000;background:#fff;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;pointer-events:none;transform:translate(-50%,-50%)}.tile{position:absolute;top:50%;left:50%;z-index:1;pointer-events:auto;transform:translate(var(--tx),var(--ty)) translate(-50%,-50%);animation:tile-enter .42s var(--ease-out) both}.tile.ring:after{content:"";position:absolute;inset:-9px;border:1px dashed rgb(255 255 255 / .14);border-radius:14px;pointer-events:none}.card{position:relative;width:var(--planet-size);height:calc(var(--planet-size) * .6);overflow:hidden;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:11px;box-shadow:0 18px 50px #0000008c;transition:border-color .17s ease,box-shadow .17s ease,transform .2s var(--ease-out)}.card:hover,.card:focus-within{border-color:#737373;box-shadow:0 22px 60px #000000b3,0 0 0 1px #ffffff14;transform:translateY(-2px)}.card-open{position:absolute;inset:0;z-index:2;padding:0;background:transparent;border:0;border-radius:inherit;cursor:pointer}.card-open:focus-visible{outline:2px solid #fff;outline-offset:-4px}.card img{width:100%;height:100%;display:block;object-fit:cover;object-position:top;filter:saturate(.62) contrast(1.06) brightness(.88);transition:filter .22s ease,transform .36s var(--ease-out)}.card:hover img{filter:saturate(.88) contrast(1.04) brightness(.96);transform:scale(1.012)}.card:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgb(0 0 0 / .28),transparent 34%,transparent 58%,rgb(0 0 0 / .62));pointer-events:none}.card .label,.ad-badge,.vote-row{z-index:3}.card .label{position:absolute;top:9px;left:9px;max-width:calc(100% - 108px);padding:5px 8px;overflow:hidden;color:#fff;background:#000000c2;border:1px solid rgb(255 255 255 / .18);border-radius:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:11px;font-weight:680;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.ad-badge{position:absolute;top:9px;right:9px;padding:5px 7px;color:#000;background:#fff;border-radius:5px;font-size:8px;font-weight:820;letter-spacing:.06em;text-transform:uppercase;pointer-events:none}.vote-row{position:absolute;right:9px;bottom:9px}.vote-btn{min-height:32px;padding:0 9px;display:inline-flex;align-items:center;gap:6px;color:#fff;background:#000000c7;border:1px solid rgb(255 255 255 / .24);border-radius:7px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:10px;font-weight:700;cursor:pointer;transition:color .14s ease,background-color .14s ease,transform .14s var(--ease-out)}.vote-btn:hover:not(:disabled){color:#000;background:#fff;transform:translateY(-1px)}.vote-btn.voted{color:#000;background:#fff;border-color:#fff}.vote-btn:disabled{cursor:default}.vote-icon{width:16px;height:16px;display:inline-grid;place-items:center}.vote-label{white-space:nowrap}.tile.placeholder{opacity:.36}.placeholder-card{display:grid;place-items:center;background:repeating-linear-gradient(135deg,#070707,#070707 8px,#0c0c0c 8px 16px);border-style:dashed;box-shadow:none}.placeholder-card:after{display:none}.placeholder-label{color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;letter-spacing:.07em;text-transform:uppercase}.map-controls,.scene-hint{position:fixed;z-index:50;bottom:max(18px,env(safe-area-inset-bottom))}.map-controls{left:20px;height:40px;padding:3px;display:flex;align-items:center;gap:2px;color:var(--text-secondary);background:#080808e0;border:1px solid var(--border-strong);border-radius:9px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 30px #0006}.map-controls button{width:32px;height:32px;padding:0;display:grid;place-items:center;color:var(--text-secondary);background:transparent;border:0;border-radius:6px;cursor:pointer}.map-controls button:hover{color:#fff;background:var(--surface-3)}.map-controls>span:not(.map-controls-divider){min-width:42px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;text-align:center}.map-controls-divider{width:1px;height:20px;margin:0 2px;background:var(--border-subtle)}.scene-hint{right:20px;padding:8px 10px;color:var(--text-tertiary);background:#080808b8;border:1px solid var(--border-subtle);border-radius:7px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px}.map-empty{position:fixed;top:50%;left:50%;z-index:20;width:min(430px,calc(100vw - 32px));padding:30px;display:flex;flex-direction:column;align-items:center;color:var(--text-primary);background:#080808eb;border:1px solid var(--border-strong);border-radius:14px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center;transform:translate(-50%,-50%)}.controls{position:fixed;right:20px;bottom:70px;z-index:90;pointer-events:none}.modal-backdrop,.lightbox-backdrop{position:fixed;inset:0;z-index:100;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));display:grid;place-items:center;overflow:auto;background:#000c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:backdrop-in .18s ease both}.claim-backdrop{z-index:130}.modal{position:relative;z-index:1;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;overflow:auto;color:var(--text-primary);background:#080808;border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-float);scrollbar-color:#3f3f3f transparent;animation:dialog-in .24s var(--ease-out) both}.modal.wide,.my-pages-modal,.publish-modal,.edit-modal{width:min(680px,calc(100vw - 32px))}.modal.admin-modal{width:min(1080px,calc(100vw - 32px))}.modal.detail-modal{width:min(1180px,calc(100vw - 24px));max-height:calc(100dvh - 24px)}.modal h2,.modal h3,.modal h4,.my-pages-title,.detail-title,.edit-modal-title{color:#fff;letter-spacing:-.03em}.modal h2,.my-pages-title,.detail-title,.edit-modal-title{margin:0;font-size:21px;font-weight:700}.detail-title,.edit-modal-title,.my-pages-title{text-align:left}.detail-title a{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;word-break:break-word}.detail-title a:hover{text-decoration:underline;text-underline-offset:4px}.detail-link-icon{display:inline-flex}.modal>p{color:var(--text-secondary);font-size:13px;line-height:1.55}.modal-divider{width:100%;height:1px;margin:17px 0 20px;background:var(--border-subtle)}.modal form{display:grid;gap:14px}.modal label{display:grid;gap:7px;color:var(--text-secondary);font-size:12px;font-weight:600}.modal input:not([type=checkbox]),.modal textarea,.modal select,.comment-sort select{width:100%;min-height:42px;padding:9px 11px;color:var(--text-primary);caret-color:#fff;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:8px;outline:0;font-size:13px;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.modal textarea{min-height:88px;resize:vertical;line-height:1.5}.modal input:hover,.modal textarea:hover,.modal select:hover,.comment-sort select:hover{border-color:var(--border-strong)}.modal input:focus,.modal textarea:focus,.modal select:focus,.comment-sort select:focus{border-color:#737373;background:var(--surface-2);box-shadow:0 0 0 3px #ffffff12}.modal select,.comment-sort select{color-scheme:dark}.actions{margin-top:6px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.actions button,.auth-btn,.request-check,.visit-btn,.claim-btn,.view-more-btn,.comment-form button[type=submit],.gallery-nav button,.check-btn-inline,.ghost{min-height:38px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--text-primary);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:8px;font-size:12px;font-weight:660;text-decoration:none;cursor:pointer;transition:color .14s ease,background-color .14s ease,border-color .14s ease,transform .14s var(--ease-out)}.actions button:hover,.auth-btn:hover,.request-check:hover,.visit-btn:hover,.claim-btn:hover,.view-more-btn:hover,.comment-form button[type=submit]:hover:not(:disabled),.gallery-nav button:hover,.check-btn-inline:hover,.ghost:hover:not(:disabled){color:#fff;background:var(--surface-3);border-color:#737373;transform:translateY(-1px)}.actions button[type=submit],.comment-form button[type=submit]{color:#000;background:#fff;border-color:#fff}.actions button[type=submit]:hover,.comment-form button[type=submit]:hover:not(:disabled){color:#000;background:#d4d4d4;border-color:#d4d4d4}button:disabled,.disabled{opacity:.42;cursor:not-allowed}.error,.info{width:fit-content;max-width:min(480px,calc(100vw - 32px));padding:9px 11px;color:var(--text-primary);background:#111;border:1px solid var(--border-strong);border-radius:8px;font-size:12px;line-height:1.4;box-shadow:0 14px 34px #0000007a}.error:before{content:"!";width:17px;height:17px;margin-right:7px;display:inline-grid;place-items:center;color:#000;background:#fff;border-radius:50%;font-size:10px;font-weight:900}.auth-tabs{width:100%;margin-bottom:18px}.tab{min-height:34px;flex:1;padding:0 12px;color:var(--text-secondary);background:transparent;border:0;border-radius:6px;font-size:12px;font-weight:650;cursor:pointer}.tab.active{color:#000;background:#fff}.input-check-field{position:relative;margin-bottom:14px}.input-check-field input{padding-right:52px!important}.check-btn-inline{position:absolute;right:4px;bottom:4px;width:34px;min-height:34px;padding:0}.my-pages-search,.admin-search{margin-bottom:14px}.my-pages-search input,.admin-search input{padding-left:12px}.my-pages-list,.existing-links ul,.comment-list{margin:0;padding:0;display:grid;gap:8px;list-style:none}.my-page-row,.admin-row,.existing-links li,.comment-card{position:relative;padding:12px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:9px}.my-page-head,.admin-host-row{min-width:0;display:flex;align-items:center;gap:10px}.my-page-link,.admin-host,.existing-link-text{min-width:0;flex:1;overflow:hidden;color:var(--text-primary);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.my-page-link,.existing-link-text,.admin-sub{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.my-page-menu-btn,.admin-menu-btn{width:34px;height:34px;padding:0;display:grid;place-content:center;gap:3px;color:var(--text-secondary);background:transparent;border:1px solid transparent;border-radius:7px;cursor:pointer}.my-page-menu-btn:hover,.admin-menu-btn:hover{background:var(--surface-3);border-color:var(--border-subtle)}.my-page-menu-btn span,.admin-menu-btn span{width:3px;height:3px;display:block;background:currentColor;border-radius:50%}.my-page-actions,.admin-menu-actions{position:absolute;top:46px;right:8px;z-index:30;width:190px;padding:6px;display:grid;gap:3px;background:#0a0a0a;border:1px solid var(--border-strong);border-radius:9px;box-shadow:0 18px 44px #000000b3;animation:popover-in .15s var(--ease-out) both}.my-page-actions .auth-btn,.admin-menu-actions .auth-btn{width:100%;min-height:36px;justify-content:flex-start;background:transparent;border-color:transparent}.my-page-actions .auth-btn:hover,.admin-menu-actions .auth-btn:hover{background:var(--surface-3);border-color:var(--border-subtle)}.danger,.auth-btn.danger,.existing-link-delete{border-style:dashed!important}.existing-links{margin-top:8px}.existing-links li{display:flex;align-items:center;gap:6px}.existing-link-copy,.existing-link-delete{min-height:32px;padding:0 9px;color:var(--text-secondary);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:7px;font-size:11px;cursor:pointer}.existing-link-copy:hover,.existing-link-delete:hover{color:#fff;border-color:var(--border-strong)}.admin-panel-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,.9fr);gap:12px;align-items:start}.admin-section{min-width:0;padding:14px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:10px}.admin-section h3{margin:0 0 12px;font-size:14px}.featured-grid{display:grid;gap:8px}.featured-slot{display:grid;gap:5px}.featured-slot select{min-width:0}.admin-list{display:grid;gap:7px}.admin-list.scroll{max-height:54vh;padding-right:3px;overflow:auto}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-card-left,.admin-meta{min-width:0;display:grid;gap:3px}.admin-sub,.admin-stats{overflow:hidden;color:var(--text-tertiary);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.admin-actions{display:flex;flex-wrap:wrap;gap:6px}.admin-pagination{margin-top:14px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-secondary);font-size:11px}.admin-pagination button,.pager-arrow{min-width:34px;height:34px;padding:0 9px;display:inline-grid;place-items:center;color:var(--text-primary);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:7px;cursor:pointer}.admin-pagination button:hover:not(:disabled),.pager-arrow:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong)}.profile-block{margin-bottom:16px;display:grid;gap:10px}.profile-inline{display:grid;gap:7px}.profile-inline-input{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.profile-inline-input.has-verify-icon{grid-template-columns:1fr}.profile-inline-input.has-verify-icon input{padding-right:118px!important}.verify-icon{position:absolute;top:7px;right:8px;height:28px;padding:0 7px;display:inline-flex;align-items:center;gap:5px;color:#fff;background:#111;border:1px solid var(--border-strong);border-radius:999px}.verify-text{font-size:9px;font-weight:750;text-transform:uppercase}.profile-row{min-height:48px;padding:10px 12px;display:flex!important;align-items:center;justify-content:space-between;gap:14px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:9px}.profile-row span{color:var(--text-primary);font-size:12px}.profile-row input[type=checkbox]{position:relative;width:38px;height:22px;flex:0 0 38px;appearance:none;background:#1c1c1c;border:1px solid var(--border-strong);border-radius:999px;cursor:pointer;transition:background-color .15s ease}.profile-row input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:#737373;border-radius:50%;transition:transform .17s var(--ease-out),background-color .15s ease}.profile-row input[type=checkbox]:checked{background:#fff;border-color:#fff}.profile-row input[type=checkbox]:checked:after{background:#000;transform:translate(16px)}.profile-row select{width:auto;min-width:150px}.detail-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:12px;align-items:start}.detail-gallery,.detail-meta,.comments-block{min-width:0;padding:12px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:10px}.detail-gallery,.detail-meta,.comments-block{display:grid;gap:10px}.gallery-frame{min-height:270px;display:grid;place-items:center;overflow:hidden;background:#050505;border:1px solid var(--border-subtle);border-radius:8px}.gallery-zoom{width:100%;height:100%;min-height:270px;padding:0;display:grid;place-items:center;background:transparent;border:0;cursor:zoom-in}.gallery-frame img{width:100%;max-height:60vh;display:block;object-fit:contain}.gallery-nav{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px}.gallery-nav button{width:34px;min-height:34px;padding:0}.detail-header-row,.comments-header{display:flex;align-items:center;gap:10px}.detail-header-row h3,.comments-header h4{margin:0;font-size:13px}.detail-inline-actions,.comment-sort{margin-left:auto;display:inline-flex;align-items:center;gap:6px}.comment-sort{color:var(--text-tertiary);font-size:11px;font-weight:650}.comment-sort-options{display:inline-flex;gap:2px;padding:3px;background:#090909;border:1px solid var(--border-subtle);border-radius:9px}.comment-sort-options button{min-height:28px;padding:0 9px;display:inline-flex;align-items:center;gap:5px;color:var(--text-tertiary);background:transparent;border:0;border-radius:6px;cursor:pointer;font-size:10px;font-weight:650;transition:color .14s ease,background-color .14s ease}.comment-sort-options button:hover{color:var(--text-primary);background:var(--surface-2)}.comment-sort-options button.active{color:#000;background:#fff}.detail-description{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.58}.detail-tags{display:flex;flex-wrap:wrap;gap:6px}.comment-form{display:grid;gap:8px}.comments-loading{min-height:42px;display:flex;align-items:center;gap:7px;color:var(--text-tertiary);font-size:10px}.comments-lottie{width:30px;height:30px}.comments-lottie .motion-mark-fallback{width:16px;height:16px}.comment-form button[type=submit]{justify-self:end}.comment-card{display:grid;gap:8px}.comment-body{color:var(--text-primary);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.comment-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.comment-meta,.no-comments{color:var(--text-tertiary);font-size:10px}.no-comments{margin:4px 0}.like-btn{min-height:30px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:7px;font-size:10px;cursor:pointer}.like-btn:hover,.like-btn.liked{color:#fff;border-color:var(--border-strong)}.like-icon{display:inline-flex}.like-count{font-weight:700}.view-more-btn{justify-self:start}.lightbox-backdrop{z-index:160;cursor:zoom-out;background:#000000eb}.lightbox-frame{max-width:min(1200px,96vw);max-height:92vh;overflow:hidden;background:#000;border:1px solid var(--border-strong);border-radius:10px;box-shadow:var(--shadow-float)}.lightbox-frame img{max-width:100%;max-height:92vh;display:block;object-fit:contain}.hud-header{display:none}@keyframes header-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes feed-card-in{to{opacity:1;transform:translateY(0)}}@keyframes tile-enter{0%{opacity:0;transform:translate(var(--tx),var(--ty)) translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(var(--tx),var(--ty)) translate(-50%,-50%) scale(1)}}@keyframes popover-in{0%{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes skeleton-shimmer{to{background-position:-220% 0}}@keyframes fallback-spin{to{transform:rotate(360deg)}}@media(max-width:1060px){.brand-name,.nav-link .nav-label{display:none}.nav-link{width:38px;padding:0}.admin-panel-grid{grid-template-columns:1fr 1fr}.admin-section:last-child{grid-column:1 / -1}}@media(max-width:820px){.app-header{min-height:calc(108px + env(safe-area-inset-top,0px))}.app-nav{min-height:108px;padding:8px 12px;display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:40px 44px;gap:8px}.brand-button{grid-column:1}.brand-name{display:inline}.view-switcher{grid-column:1;grid-row:1}.help-button{grid-column:2;grid-row:1}.nav-account{grid-column:3;grid-row:1;justify-content:flex-end}.nav-tools{width:100%;max-width:none;grid-column:1 / -1;grid-row:2}.feed-shell{padding-top:140px}.feed-toolbar{top:calc(108px + env(safe-area-inset-top,0px))}.feed-card{grid-template-columns:190px minmax(0,1fr)}.detail-layout{grid-template-columns:1fr}.detail-gallery{position:static}.admin-panel-grid{grid-template-columns:1fr}.admin-section:last-child{grid-column:auto}.scene-hint{display:none}.map-controls{bottom:max(12px,env(safe-area-inset-bottom));left:12px}}@media(max-width:640px){.app-nav{grid-template-columns:auto auto 1fr}.brand-name,.view-switcher span,.nav-cta .nav-label{display:none}.view-switcher{width:fit-content;justify-self:start}.view-switcher button{width:34px;padding:0}.nav-account{gap:3px}.nav-account .nav-link,.nav-account .user-button,.nav-account .icon-button{width:38px;min-width:38px;padding:0}.nav-account .nav-label,.nav-account .user-button span{display:none}.nav-account .user-button svg{display:block}.nav-cta{display:none}.feed-shell{padding-top:calc(116px + env(safe-area-inset-top,0px));padding-right:12px;padding-bottom:50px;padding-left:12px}.feed-hero{padding:10px 2px 24px;display:block}.feed-desktop-copy{display:none}.feed-mobile-copy{display:inline}.feed-hero h1{max-width:360px;font-size:clamp(32px,11vw,44px);line-height:1.02}.feed-hero p{margin-top:12px;font-size:13px}.feed-publish{display:none}.feed-toolbar{min-height:58px}.feed-card{padding:9px;grid-template-columns:1fr;gap:12px}.feed-card-preview{aspect-ratio:16 / 9}.feed-card-content{padding:0 3px 3px}.feed-card-title{font-size:19px}.feed-card-footer{margin-top:14px}.feed-card-footer>span{display:none}.card{width:min(var(--planet-size),88vw);height:min(calc(var(--planet-size) * .6),53vw)}.modal-backdrop{inset:var(--visual-top, 0px) 0 auto;width:100%;height:var(--visual-height, 100dvh);padding:10px;place-items:center;overflow:auto;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;overscroll-behavior:contain}.modal-backdrop:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:#000c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.modal,.modal.wide,.my-pages-modal,.publish-modal,.edit-modal,.modal.detail-modal,.modal.admin-modal{width:100%;max-height:calc(var(--visual-height, 100dvh) - 20px);padding:20px;border-radius:14px 14px 10px 10px}.detail-modal{min-height:calc(100dvh - 16px)}.detail-header-row,.comments-header{align-items:flex-start;flex-direction:column}.detail-inline-actions,.comment-sort{width:100%;margin-left:0;justify-content:space-between}.profile-inline-input{grid-template-columns:1fr}.profile-inline-input .ghost{width:100%}.profile-row{align-items:flex-start;flex-direction:column}.profile-row:has(>input[type=checkbox]){align-items:center;flex-direction:row}.profile-row:has(>input[type=checkbox]) input[type=checkbox]{margin-left:auto}.profile-row select{width:100%}.my-page-actions,.admin-menu-actions{top:50px;right:8px;left:8px;width:auto}.filter-tags-grid{grid-template-columns:1fr}.controls{right:12px;bottom:62px}.mobile-publish-fab{position:fixed;right:12px;bottom:max(16px,env(safe-area-inset-bottom));z-index:92;width:96px;height:96px;min-width:96px;min-height:96px;display:grid;place-items:center;padding:0;color:inherit;background:transparent;border:0;border-radius:0;box-shadow:none;cursor:pointer;overflow:visible;appearance:none;-webkit-tap-highlight-color:transparent}.mobile-publish-lottie{position:absolute;inset:0;display:block!important;width:100%;height:100%;pointer-events:none;z-index:1}.mobile-publish-lottie-player,.mobile-publish-lottie-player svg{display:block;width:100%!important;height:100%!important}.mobile-publish-lottie-fallback{position:relative;z-index:2;color:#fff;font-size:44px;line-height:96px}.starfield{opacity:0;background-image:none}.detail-close-actions{display:none}.detail-floating-close{position:fixed;bottom:max(14px,env(safe-area-inset-bottom));left:50%;z-index:150;min-height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;color:#ffffffe6;background:linear-gradient(135deg,#ffffff21,#ffffff0b);border:1px solid rgb(255 255 255 / .24);border-radius:999px;backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%);box-shadow:inset 0 1px #ffffff29,0 8px 30px #0000003d;transform:translate(-50%)}}@media(max-width:390px){.brand-mark{width:28px;height:28px}.feed-context .tag-chip{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segmented-control button{padding:0 8px}}@keyframes mobile-publish-orbit{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.scene-spotlight,.motion-mark-player{display:none}.motion-mark-fallback{animation:none;border-color:#737373}.feed-card,.tile,.modal,.modal-backdrop,.app-header,.filter-popover,.nav-search-results{opacity:1;animation:none;transform:none}.tile{transform:translate(var(--tx),var(--ty)) translate(-50%,-50%)}}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;background:#000;color:#f5f5f5;--black: #000;--surface-1: #080808;--surface-2: #0f0f0f;--surface-3: #171717;--border-subtle: #242424;--border-strong: #3f3f3f;--text-primary: #f5f5f5;--text-secondary: #a3a3a3;--text-tertiary: #737373;--white: #fff;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-float: 0 24px 80px rgb(0 0 0 / .72);--ease-out: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#000;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:#000;color:var(--text-primary);overflow-x:hidden}body.modal-open{overflow:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a{color:inherit}::selection{color:#000;background:#fff}#root{min-height:100vh;min-height:100dvh}:focus-visible{outline:2px solid #fff;outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
