.brand{gap:9px;letter-spacing:.1em}
.brand-mark-img{display:block;width:38px;height:38px;flex:0 0 38px;object-fit:contain}
.mobile-menu-toggle{display:none}
.mobile-menu-actions{display:none}
.hero{gap:clamp(28px,5vw,68px)}
.hero-art{isolation:isolate;border-radius:18px;border-color:#3d3657;background:linear-gradient(145deg,#211f31,#141722 72%);box-shadow:0 16px 42px #07080d55,inset 0 1px #ffffff10}
.hero-art:before{opacity:.18;animation:grid-drift 38s linear infinite}
.hero-glow{opacity:.48}
.hero-cube{animation:cube-float 9s ease-in-out infinite}
.cube-b{animation-delay:-3.2s}
.cube-c{animation-delay:-6.1s}
.hero-art-label{backdrop-filter:blur(8px)}
.hero-actions{flex-wrap:wrap}
.discovery-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:6px 0 42px}
.discovery-link{min-width:0;display:flex;align-items:center;gap:14px;padding:17px;border:1px solid #ffffff14;border-radius:13px;background:linear-gradient(145deg,#191c25,#151720);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.discovery-link:hover{transform:translateY(-2px);border-color:#8677ed66;background:linear-gradient(145deg,#20202d,#171922)}
.discovery-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border:1px solid #ffffff16;border-radius:11px;background:#28243b;color:#b6a8ff;font-size:20px}
.discovery-link>span:nth-child(2){min-width:0;display:grid;gap:3px}
.discovery-link b{font-size:13px;font-weight:600}
.discovery-link small{overflow:hidden;color:#9296a5;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.discovery-arrow{margin-left:auto;color:#a89cff;font-size:16px}
.catalog-section{padding:10px 0 34px;scroll-margin-top:86px}
.catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:40px 0 21px}
.catalog-heading h1,.catalog-heading h2{font:600 clamp(24px,3vw,30px)/1.15 var(--font-display);letter-spacing:-.04em;margin:8px 0 5px}
.catalog-heading p{color:#9598a8;font-size:13px;margin:0}
.catalog-toolbar{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid #ffffff12;border-bottom:1px solid #ffffff12}
.games-toolbar{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid #ffffff12;border-bottom:1px solid #ffffff12}
.games-empty{min-height:180px}
.world-grid .world-card{min-width:0;animation:catalog-arrive .32s ease both}
.world-grid .world-cover{height:auto;aspect-ratio:16/10;overflow:hidden}
.world-grid .world-cover img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.world-grid .world-card:hover .world-cover img{transform:scale(1.035)}
.world-grid .world-info{display:grid;gap:8px}
.world-grid .world-info b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.world-grid .world-info .button{justify-self:start;padding:7px 10px;font-size:10px}
.portal-head h1{letter-spacing:-.04em}
.profile-shell{width:min(1120px,100%);margin:0 auto;padding:42px 28px}
.profile-content[hidden]{display:none}
.profile-header{display:flex;align-items:center;gap:20px;padding:24px;border:1px solid #ffffff14;border-radius:16px;background:linear-gradient(145deg,#191c25,#151720)}
.profile-avatar{position:relative;width:78px;height:78px;flex:0 0 78px;overflow:hidden;border:1px solid #ffffff20;border-radius:23px;background:radial-gradient(ellipse at 50% 80%,#8978ef38,transparent 70%),#202230}
.profile-avatar:before{content:'';position:absolute;left:25px;top:12px;width:28px;height:28px;border-radius:50%;background:var(--avatar-skin,#dca77f)}
.profile-avatar:after{content:'';position:absolute;left:15px;bottom:-12px;width:48px;height:48px;border-radius:18px 18px 9px 9px;background:var(--avatar-body,#8271db)}
.profile-identity{flex:1}
.profile-identity h1{margin:5px 0;font:600 clamp(25px,4vw,36px)/1.1 var(--font-display);letter-spacing:-.04em}
.profile-identity p{margin:0;color:#9699a8;font-size:12px}
.profile-section{margin-top:36px}
.profile-section-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:18px}
.profile-section-heading h2{margin:6px 0 0;font:600 24px var(--font-display);letter-spacing:-.03em}
.profile-place-cover{display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(140deg,#282d45,#493655);color:#e4dcff}
.profile-place-cover img{width:100%;height:100%;object-fit:cover}
.catalog-tabs{display:flex;gap:5px;flex-wrap:wrap}
.catalog-tab{min-height:36px;padding:8px 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:#a6a8b4;cursor:pointer;font-size:12px;transition:background .16s ease,color .16s ease,border-color .16s ease}
.catalog-tab:hover,.catalog-tab.active{background:#262338;color:#e3ddff;border-color:#40396a}
.catalog-tab:focus-visible,.catalog-search:focus-within,.mobile-menu-toggle:focus-visible,.catalog-more-wrap .button:focus-visible{outline:2px solid #a091ff;outline-offset:2px}
.catalog-search{height:39px;min-width:220px;margin-left:auto;padding:0 12px;display:flex;align-items:center;gap:9px;border:1px solid #30323e;border-radius:9px;background:#15171f;color:#a7a9b5}
.catalog-search:focus-within{border-color:#897aff;box-shadow:0 0 0 3px #8877ff20}
.catalog-search span{font-size:20px;line-height:1}
.catalog-search input{width:100%;border:0;outline:0;background:transparent;color:#f2f3f8;font-size:12px}
.catalog-search input::placeholder{color:#858897}
.catalog-count{min-height:17px;margin:15px 1px 12px;color:#8f93a1;font-size:11px}
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.catalog-card{min-width:0;overflow:hidden;border:1px solid #ffffff13;border-radius:13px;background:linear-gradient(155deg,#1b1e28,#151720);animation:catalog-arrive .32s ease both;animation-delay:calc(min(var(--card-order,0),8)*28ms);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.catalog-card:hover{transform:translateY(-3px);border-color:#8677ed66;box-shadow:0 12px 34px #0003}
.catalog-preview{height:164px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#25293b,#272133);color:#e5e0ff}
.image-preview img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.catalog-card:hover .image-preview img{transform:scale(1.035)}
.audio-preview{flex-direction:column;gap:12px;background:radial-gradient(ellipse at center,#5947a133,transparent 70%),linear-gradient(145deg,#25293b,#1a1b27)}
.audio-glyph{display:grid;place-items:center;width:54px;height:54px;border:1px solid #ffffff20;border-radius:50%;background:#ffffff0b;color:#b8a9ff;font-size:26px}
.audio-preview audio{width:calc(100% - 24px);height:34px}
.model-preview{background:radial-gradient(ellipse at 50% 70%,#5947a133,transparent 65%),linear-gradient(145deg,#25293b,#1a1b27)}
.model-preview model-viewer{width:100%;height:100%;background:transparent;--poster-color:transparent}
.model-fallback{position:absolute;right:10px;bottom:9px;padding:4px 7px;border:1px solid #ffffff20;border-radius:6px;background:#11121aa8;color:#e4e0ff;font-size:10px}
.model-preview model-viewer:defined+.model-fallback{display:none}
.catalog-card-info{padding:12px 13px 13px}
.catalog-card-title{display:flex;align-items:center;justify-content:space-between;gap:8px}
.catalog-card-title b{overflow:hidden;color:#f0f0f6;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.catalog-card-title>span{flex:0 0 auto;padding:3px 6px;border:1px solid #ffffff12;border-radius:5px;color:#a8aabd;font-size:9px}
.catalog-description{display:-webkit-box;overflow:hidden;min-height:17px;margin:7px 0 8px;color:#9b9eac;font-size:11px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-card-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid #ffffff0e;color:#858998;font-size:10px}
.catalog-card-meta a,.world-info a{color:#b8adff}
.catalog-card-meta a:hover,.world-info a:hover{color:#e4ddff;text-decoration:underline}
.catalog-empty{grid-column:1/-1}
.catalog-more-wrap{display:flex;justify-content:center;padding:24px 0 5px}
.catalog-more-wrap [hidden]{display:none}
.news-shell{max-width:1000px}
.news-list{display:grid;gap:14px;padding:8px 0 40px}
.news-card,.news-article{padding:clamp(20px,4vw,34px);border:1px solid #ffffff14;border-radius:14px;background:linear-gradient(145deg,#191c25,#151720)}
.news-card h2{margin:10px 0;font:600 clamp(21px,3vw,28px)/1.2 var(--font-display);letter-spacing:-.035em}
.news-card h2 a{color:#f0f0f6}
.news-card h2 a:hover{color:#c3b9ff}
.news-card>p,.news-summary{max-width:760px;color:#a6a8b5;font-size:13px;line-height:1.7}
.news-card .button{margin-top:7px}
.news-article{max-width:820px;margin:12px auto 42px}
.news-article h1{margin:12px 0;font:600 clamp(30px,6vw,48px)/1.1 var(--font-display);letter-spacing:-.045em}
.news-back{display:block;margin-bottom:26px;color:#b8adff;font-size:12px}
.news-content{margin:24px 0;color:#d0d1db;font-size:14px;line-height:1.9;overflow-wrap:anywhere}
.news-share{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:18px;border-top:1px solid #ffffff14}
#news-share-status{color:#a6a8b5}
.news-empty{min-height:140px}
.mobile-menu-toggle{width:38px;height:38px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:1px solid #ffffff18;border-radius:9px;background:#ffffff06;cursor:pointer}
.mobile-menu-toggle span{width:16px;height:1.5px;border-radius:2px;background:#d7d7e1;transition:transform .18s ease,opacity .18s ease}
.mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6.5px) rotate(45deg)}
.mobile-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-6.5px) rotate(-45deg)}
.topbar #primary-nav.mobile-open{display:flex}
@keyframes cube-float{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes grid-drift{to{background-position:34px 34px}}
@keyframes catalog-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){
  .topbar{gap:clamp(12px,2vw,24px)}
  .topbar nav{gap:clamp(10px,1.5vw,18px)}
  .top-actions{gap:5px}
  .topbar .top-actions>.button{padding-inline:9px}
  .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:850px){
  .topbar{position:sticky;gap:12px;padding-inline:20px}
  .brand-mark-img{width:35px;height:35px;flex-basis:35px}
  .mobile-menu-toggle{display:flex;margin-left:auto;order:2}
  .topbar #primary-nav{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;height:auto;max-height:calc(100dvh - 70px);overflow-y:auto;align-items:stretch;flex-direction:column;gap:3px;padding:10px 16px 14px;border-bottom:1px solid #ffffff18;background:#11131a;box-shadow:0 18px 28px #0005}
  .topbar #primary-nav a{min-height:44px;padding:0 12px;display:flex;align-items:center;justify-content:flex-start;border:0;border-radius:8px;font-size:14px}
  .topbar #primary-nav a:hover,.topbar #primary-nav .active{background:#262338;color:#eeeaff}
  .topbar #primary-nav.mobile-open{display:flex}
  .topbar #primary-nav .mobile-menu-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 4px 2px;border-top:1px solid #ffffff14}
  .mobile-menu-actions .button{width:100%;min-height:42px}
  .top-actions{display:none!important}
  .hero{grid-template-columns:1fr;padding-block:55px 38px}
  .hero-copy{max-width:640px}
  .hero-art{height:270px}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .games-toolbar{align-items:stretch;flex-direction:column;gap:10px}
  .page-shell,.portal-shell,.profile-shell{width:100%;max-width:100%;padding-inline:clamp(14px,4vw,24px)}
  .portal-head{align-items:flex-start}
  .portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portal-card{min-width:0}
  .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .creator-banner{flex-wrap:wrap}
  .creator-banner>div:nth-child(2){min-width:0}
  .profile-header{align-items:flex-start;flex-wrap:wrap}
  .profile-header #copy-profile{margin-left:82px}
}
@media(max-width:560px){
  .topbar{height:60px;padding-inline:14px}
  .brand{font-size:15px;gap:7px}
  .brand-mark-img{width:32px;height:32px;flex-basis:32px}
  .top-actions{gap:3px}
  .topbar .top-actions .button{padding:8px 9px;font-size:11px}
  .top-actions .user-chip{max-width:115px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .page-shell{padding-inline:16px}
  .hero{gap:24px;padding-top:40px}
  .hero h1{font-size:clamp(39px,12vw,55px)}
  .hero-art{height:220px;border-radius:17px}
  .hero-copy>p{font-size:13px}
  .section-heading{align-items:flex-start}
  .catalog-section{scroll-margin-top:66px}
  .catalog-heading{align-items:flex-start;margin-top:34px}
  .catalog-heading .button{padding-inline:10px;font-size:11px;white-space:nowrap}
  .discovery-links{grid-template-columns:1fr;gap:10px;margin-bottom:32px}
  .catalog-toolbar{align-items:stretch;flex-direction:column;gap:10px}
  .games-toolbar{align-items:stretch;flex-direction:column;gap:10px}
  .portal-grid,.plan-grid{grid-template-columns:1fr}
  .portal-form{grid-template-columns:1fr}
  .portal-form textarea,.portal-form .wide{grid-column:auto}
  .portal-shell{padding-inline:14px}
  .portal-head h1{font-size:clamp(26px,8vw,35px)}
  .creator-banner{align-items:flex-start;padding:18px}
  .creator-banner .button{width:100%}
  .profile-shell{padding:24px 14px}
  .profile-header{gap:14px}
  .profile-identity{min-width:0;flex:1}
  .profile-header #copy-profile{margin-left:0}
  .profile-section-heading{align-items:flex-start;flex-wrap:wrap}
  .profile-section-heading h2{font-size:20px}
  .world-grid{gap:10px}
  .world-info{padding:10px}
  .world-info b{font-size:11px}
  .catalog-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
  .catalog-tab{flex:0 0 auto;padding-inline:12px}
  .catalog-search{width:100%;min-width:0}
  .catalog-grid{gap:10px}
  .catalog-preview{height:clamp(112px,35vw,158px)}
  .catalog-card-info{padding:10px}
  .catalog-card-title{align-items:flex-start;flex-direction:column;gap:5px}
  .catalog-card-title>span{font-size:8px}
  .catalog-card-title b{max-width:100%;font-size:12px}
  .catalog-description{font-size:10px}
  .catalog-card-meta{font-size:9px}
  footer{height:auto;min-height:70px;flex-wrap:wrap;gap:12px 18px;padding:18px 0}
  footer>a:last-child{margin-left:0}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
