/* NodeClash Cosmic Reality — additive visual layer. Presentation only; no gameplay/auth/payment logic is changed. */
:root{
  --nc-cr-galaxy:url('./assets/worlds/real/world-05.jpg');
  --nc-cr-stars:url('./assets/worlds/real/world-04.jpg');
  --nc-cr-earth:url('./assets/worlds/real/world-01.jpg');
  --nc-cr-ocean:url('./assets/worlds/real/world-10.jpg');
  --nc-cr-forest:url('./assets/worlds/real/world-08.jpg');
  --nc-cr-mountain:url('./assets/worlds/real/world-09.jpg');
}
html{background:#02050b}
body.nc-cosmic-reality{background:#02050b!important;isolation:isolate}
.nc-cr-world{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden;background:#02050b}
.nc-cr-world .cr-layer{position:absolute;inset:-8%;background-position:center;background-size:cover;background-repeat:no-repeat;will-change:transform,opacity;transform:scale(1.08)}
.nc-cr-world .cr-galaxy{background-image:var(--nc-cr-galaxy);opacity:.25;filter:saturate(1.35) contrast(1.15)}
.nc-cr-world .cr-stars{background-image:var(--nc-cr-stars);opacity:.16;mix-blend-mode:screen;animation:crDrift 35s linear infinite alternate}
.nc-cr-world .cr-earth{background-image:var(--nc-cr-earth);opacity:.12;mix-blend-mode:screen;filter:saturate(1.35) contrast(1.18)}
.nc-cr-world .cr-aurora{background:radial-gradient(ellipse at 50% 10%,rgba(102,255,213,.18),transparent 28%),radial-gradient(ellipse at 15% 70%,rgba(85,130,255,.13),transparent 34%),radial-gradient(ellipse at 85% 55%,rgba(255,107,206,.10),transparent 32%);filter:blur(16px);animation:crAurora 14s ease-in-out infinite alternate}
.nc-cr-world .cr-solar{background:radial-gradient(circle at 78% 12%,rgba(255,244,201,.26),transparent 0 5%,rgba(255,176,80,.10) 9%,transparent 22%),linear-gradient(115deg,transparent 0 45%,rgba(255,255,255,.035) 50%,transparent 55%);mix-blend-mode:screen}
.nc-cr-world .cr-vignette{background:radial-gradient(ellipse at center,transparent 25%,rgba(0,0,0,.20) 58%,rgba(0,0,0,.78) 100%),linear-gradient(180deg,rgba(0,0,0,.16),transparent 30%,rgba(0,0,0,.48));}
.nc-cr-world .cr-grain{opacity:.055;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.nc-cr-loading{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:#01040a;overflow:hidden;transition:opacity .8s ease,visibility .8s ease}
.nc-cr-loading.gone{opacity:0;visibility:hidden;pointer-events:none}
.nc-cr-loading .cr-load-bg{position:absolute;inset:-7%;background:var(--nc-cr-galaxy) center/cover;filter:saturate(1.25) contrast(1.15);animation:crLoadZoom 3.8s cubic-bezier(.2,.8,.2,1) both}
.nc-cr-loading .cr-load-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 0 15%,rgba(0,0,0,.28) 42%,rgba(0,0,0,.82) 100%),linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.7))}
.nc-cr-loading .cr-load-core{position:relative;z-index:2;width:min(900px,90vw);text-align:center;color:#f6fbff}
.nc-cr-loading .cr-orb{width:108px;height:108px;margin:0 auto 22px;border-radius:50%;background:var(--nc-cr-earth) center/cover;box-shadow:0 0 0 1px rgba(255,255,255,.26),0 0 90px rgba(106,220,255,.28),0 24px 80px rgba(0,0,0,.65);animation:crOrb 3s ease-in-out infinite alternate}
.nc-cr-loading h1{margin:0;font-size:clamp(2.4rem,8vw,7.4rem);line-height:.82;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(110deg,#fff,#9feaff 28%,#fff 45%,#d9a8ff 70%,#fff);color:transparent;-webkit-background-clip:text;background-clip:text;text-shadow:0 10px 50px rgba(0,0,0,.5)}
.nc-cr-loading .cr-sub{margin:20px 0 0;font-size:clamp(.65rem,1.2vw,.95rem);letter-spacing:.32em;text-transform:uppercase;color:rgba(240,249,255,.78)}
.nc-cr-loading .cr-bar{width:min(620px,72vw);height:4px;margin:30px auto 0;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;box-shadow:0 0 25px rgba(83,214,255,.12)}
.nc-cr-loading .cr-bar i{display:block;width:0;height:100%;background:linear-gradient(90deg,#6fe8ff,#fff,#c68cff,#6fe8ff);background-size:220% 100%;animation:crLoad 2.4s cubic-bezier(.18,.78,.2,1) forwards,crShimmer 1.1s linear infinite}
.nc-cr-loading .cr-status{margin-top:12px;color:rgba(226,242,252,.58);font-size:.67rem;letter-spacing:.18em;text-transform:uppercase}
/* Photographic typography across the ecosystem. */
body.nc-cosmic-reality h1,body.nc-cosmic-reality h2,body.nc-cosmic-reality h3,body.nc-cosmic-reality h4,
body.nc-cosmic-reality .brand-title,body.nc-cosmic-reality .title,body.nc-cosmic-reality .nc-aaa-title,
body.nc-cosmic-reality .nc-splash-title,body.nc-cosmic-reality .ppt-title,body.nc-cosmic-reality .board-focus-title,
body.nc-cosmic-reality .section-title,body.nc-cosmic-reality .arena-title,body.nc-cosmic-reality .tp-hero h1{
  text-shadow:0 5px 30px rgba(0,0,0,.5),0 0 30px rgba(113,213,255,.08);
  letter-spacing:clamp(.01em,.08vw,.08em)
}
body.nc-cosmic-reality .glass-panel,body.nc-cosmic-reality .glass-soft,body.nc-cosmic-reality .panel,
body.nc-cosmic-reality .card,body.nc-cosmic-reality .feature-card,body.nc-cosmic-reality .mini-glass-card,
body.nc-cosmic-reality .intel-panel,body.nc-cosmic-reality .arena-card,body.nc-cosmic-reality .tp-card,
body.nc-cosmic-reality .ppt-card,body.nc-cosmic-reality .nc-footer-card{
  position:relative;overflow:hidden;backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);
  background:linear-gradient(145deg,rgba(5,15,28,.78),rgba(4,11,18,.58)),var(--nc-cr-stars) center/cover;
  border-color:rgba(202,238,255,.18);box-shadow:0 28px 90px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.13)
}
body.nc-cosmic-reality .glass-panel:before,body.nc-cosmic-reality .panel:before,body.nc-cosmic-reality .card:before,
body.nc-cosmic-reality .feature-card:before,body.nc-cosmic-reality .mini-glass-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 18% 78%,rgba(90,206,255,.055));opacity:.75}
body.nc-cosmic-reality button,body.nc-cosmic-reality .btn,body.nc-cosmic-reality .nav-chip,body.nc-cosmic-reality .hud-chip,
body.nc-cosmic-reality input,body.nc-cosmic-reality select,body.nc-cosmic-reality textarea{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 40px rgba(0,0,0,.25)}
body.nc-cosmic-reality button:hover,body.nc-cosmic-reality .btn:hover,body.nc-cosmic-reality .nav-chip:hover{transform:translateY(-1px);filter:saturate(1.15);box-shadow:0 18px 48px rgba(0,0,0,.32),0 0 30px rgba(96,215,255,.12)}
body.nc-cosmic-reality .leaderboard li,body.nc-cosmic-reality .leader-row,body.nc-cosmic-reality tr{background:linear-gradient(90deg,rgba(4,12,23,.78),rgba(5,18,29,.54)),var(--nc-cr-earth) center/cover;border-color:rgba(205,236,255,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 25px rgba(0,0,0,.18)}
body.nc-cosmic-reality .board,body.nc-cosmic-reality .arena-stage{background:linear-gradient(145deg,rgba(4,20,31,.48),rgba(2,7,13,.68)),var(--nc-cr-ocean) center/cover;box-shadow:0 40px 120px rgba(0,0,0,.52),inset 0 0 100px rgba(255,255,255,.07)}
body.nc-cosmic-reality .cell{background:linear-gradient(145deg,rgba(8,34,48,.66),rgba(2,12,21,.78)),var(--nc-cr-mountain) center/cover;border-color:rgba(224,246,255,.19);box-shadow:inset 0 0 30px rgba(255,255,255,.07),0 12px 25px rgba(0,0,0,.32)}
body.nc-cosmic-reality .site-footer{background:linear-gradient(180deg,rgba(3,10,18,.72),rgba(1,5,10,.9)),var(--nc-cr-galaxy) center/cover}
.nc-cr-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid rgba(215,240,255,.18);border-radius:999px;background:rgba(2,9,17,.54);box-shadow:inset 0 1px 0 rgba(255,255,255,.11),0 8px 24px rgba(0,0,0,.2);font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(239,249,255,.82)}
@keyframes crDrift{from{transform:scale(1.08) translate3d(-1.5%,0,0)}to{transform:scale(1.13) translate3d(1.5%,-1%,0)}}
@keyframes crAurora{from{transform:translate3d(-2%,1%,0) scale(1)}to{transform:translate3d(2%,-1%,0) scale(1.06)}}
@keyframes crLoadZoom{from{transform:scale(1.18)}to{transform:scale(1.02)}}
@keyframes crOrb{from{transform:translateY(0) scale(.98)}to{transform:translateY(-9px) scale(1.02)}}
@keyframes crLoad{to{width:100%}}@keyframes crShimmer{to{background-position:220% 0}}
@media(max-width:760px){.nc-cr-world .cr-galaxy{opacity:.2}.nc-cr-world .cr-earth{opacity:.08}.nc-cr-loading .cr-orb{width:78px;height:78px}.nc-cr-loading h1{letter-spacing:.06em}.nc-cr-loading .cr-sub{letter-spacing:.18em}}
@media(prefers-reduced-motion:reduce){.nc-cr-world .cr-stars,.nc-cr-world .cr-aurora,.nc-cr-loading .cr-orb,.nc-cr-loading .cr-load-bg,.nc-cr-loading .cr-bar i{animation:none}.nc-cr-loading .cr-bar i{width:100%}}
