/* ============================================================
   MEDATLAS ULTRA REALISM HOMEPAGE V3
   Figure-8 cinematic intelligence skin
============================================================ */

:root {
  --ultra-x: 0;
  --ultra-y: 0;
  --ultra-depth: 0.52;
  --ultra-fog: 0.42;
  --ultra-bloom: 0.58;
  --ultra-particle-speed: 1;
  --ultra-orbit-speed: 0.7;
  --ultra-reactor-speed: 1;
}

/* BACKGROUND: neural city depth */
.ultra-city-depth {
  position: fixed;
  inset: 0;
  z-index: -4;
  pointer-events: none;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 20%, rgba(99,214,255,.16), transparent 42%),
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.48));
}

.ultra-city-depth:before,
.ultra-city-depth:after {
  content: "";
  position: absolute;
  inset: -8%;
  background:
    repeating-linear-gradient(
      90deg,
      transparent 0 44px,
      rgba(99,214,255,.035) 45px 46px
    ),
    repeating-linear-gradient(
      0deg,
      transparent 0 54px,
      rgba(242,200,107,.025) 55px 56px
    );
  transform:
    perspective(900px)
    rotateX(62deg)
    translateY(calc(var(--ultra-y) * 28px));
  transform-origin: bottom;
  opacity: calc(.24 + var(--ultra-fog) * .3);
}

.ultra-city-depth:after {
  inset: 18% -10% -20%;
  background:
    linear-gradient(90deg, transparent, rgba(99,214,255,.08), transparent),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.04) 0 1px,
      transparent 1px 72px
    );
  filter: blur(2px);
  opacity: .34;
}

.ultra-city-depth i {
  position: absolute;
  width: 2px;
  height: 12px;
  border-radius: 10px;
  background: rgba(99,214,255,.72);
  box-shadow: 0 0 12px rgba(99,214,255,.64);
  opacity: .45;
  animation: ultraCityFlicker ease-in-out infinite;
}

.ultra-city-depth i[data-tone="gold"] {
  background: rgba(242,200,107,.84);
  box-shadow: 0 0 14px rgba(242,200,107,.72);
}

.ultra-city-depth i[data-depth="far"] {
  opacity: .22;
  filter: blur(1.5px);
  transform: scale(.7);
}

.ultra-city-depth i[data-depth="near"] {
  opacity: .78;
  height: 22px;
  filter: none;
}

@keyframes ultraCityFlicker {
  0%,100% { opacity: .18; transform: scaleY(.7); }
  50% { opacity: .95; transform: scaleY(1.35); }
}

/* MIDGROUND: glass field */
.ultra-glass-field {
  position: fixed;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  overflow: hidden;
  mix-blend-mode: screen;
}

.ultra-glass-field i {
  position: absolute;
  width: 260px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(99,214,255,.32), transparent);
  transform:
    rotate(-18deg)
    translate3d(
      calc(var(--ultra-x) * 30px),
      calc(var(--ultra-y) * 20px),
      0
    );
  filter: blur(.4px);
  opacity: .36;
  animation: ultraGlassSweep linear infinite;
}

@keyframes ultraGlassSweep {
  from { translate: -60px 0; opacity: 0; }
  20% { opacity: .45; }
  80% { opacity: .18; }
  to { translate: 70px 0; opacity: 0; }
}

/* CENTER: Figure-8 orbital intelligence field */
.ultra-figure8-orbit {
  position: absolute;
  left: 50%;
  top: 47%;
  width: min(1120px, 76vw);
  height: min(560px, 38vw);
  transform:
    translate(-50%, -50%)
    translate3d(
      calc(var(--ultra-x) * -24px),
      calc(var(--ultra-y) * -16px),
      0
    );
  z-index: 9;
  pointer-events: none;
  perspective: 1200px;
}

.ultra-infinity-orbit {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  opacity: .72;
  filter:
    drop-shadow(0 0 18px rgba(99,214,255,.42))
    drop-shadow(0 0 22px rgba(242,200,107,.18));
}

.ultra-infinity-orbit:before,
.ultra-infinity-orbit:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 50%;
  height: 72%;
  border-radius: 50%;
  border: 1px solid rgba(99,214,255,.34);
  box-shadow:
    inset 0 0 30px rgba(99,214,255,.08),
    0 0 34px rgba(99,214,255,.12);
}

.ultra-infinity-orbit:before {
  left: 4%;
  transform: translateY(-50%) rotate(-13deg);
  border-right-color: rgba(242,200,107,.42);
}

.ultra-infinity-orbit:after {
  right: 4%;
  transform: translateY(-50%) rotate(13deg);
  border-left-color: rgba(242,200,107,.42);
}

.ultra-infinity-orbit[data-track="1"] {
  animation: ultraOrbitOne calc(16s / max(var(--ultra-orbit-speed), .35)) linear infinite;
}

.ultra-infinity-orbit[data-track="2"] {
  inset: 7%;
  opacity: .52;
  animation: ultraOrbitTwo calc(22s / max(var(--ultra-orbit-speed), .35)) linear infinite reverse;
}

.ultra-infinity-orbit[data-track="3"] {
  inset: -5%;
  opacity: .36;
  transform: rotateX(62deg);
  animation: ultraOrbitOne calc(28s / max(var(--ultra-orbit-speed), .35)) linear infinite;
}

.ultra-infinity-orbit[data-track="4"] {
  inset: 12%;
  opacity: .4;
  transform: rotateY(54deg);
  animation: ultraOrbitTwo calc(34s / max(var(--ultra-orbit-speed), .35)) linear infinite reverse;
}

@keyframes ultraOrbitOne {
  from { rotate: 0deg; }
  to { rotate: 360deg; }
}

@keyframes ultraOrbitTwo {
  from { rotate: 360deg; }
  to { rotate: 0deg; }
}

.ultra-figure8-orbit b {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(99,214,255,.95);
  box-shadow:
    0 0 10px rgba(99,214,255,.8),
    0 0 28px rgba(99,214,255,.42);
  animation: ultraSparkPath calc(7s / max(var(--ultra-particle-speed), .35)) linear infinite;
}

.ultra-figure8-orbit b[data-tone="gold"] {
  background: rgba(242,200,107,.96);
  box-shadow:
    0 0 10px rgba(242,200,107,.9),
    0 0 28px rgba(242,200,107,.45);
}

@keyframes ultraSparkPath {
  0% {
    transform: translate(-50%, -50%) translateX(-310px) translateY(0) scale(.55);
    opacity: 0;
  }
  12% { opacity: 1; }
  25% {
    transform: translate(-50%, -50%) translateX(-155px) translateY(-115px) scale(1);
  }
  50% {
    transform: translate(-50%, -50%) translateX(0) translateY(0) scale(1.25);
  }
  75% {
    transform: translate(-50%, -50%) translateX(155px) translateY(115px) scale(1);
  }
  100% {
    transform: translate(-50%, -50%) translateX(310px) translateY(0) scale(.55);
    opacity: 0;
  }
}

/* DIGITAL GLASS PANELS */
.panel,
.product,
.pulse-card,
.profile-dropdown,
.profile-trigger {
  position: relative;
  overflow: hidden;
}

.panel:after,
.product:after,
.pulse-card:after,
.profile-dropdown:after,
.profile-trigger:after {
  content: "";
  position: absolute;
  inset: -120%;
  background:
    linear-gradient(
      115deg,
      transparent 0 42%,
      rgba(255,255,255,.18) 48%,
      rgba(99,214,255,.14) 51%,
      transparent 58% 100%
    );
  transform: translateX(-60%) rotate(8deg);
  opacity: 0;
  pointer-events: none;
}

.panel:hover:after,
.product:hover:after,
.pulse-card:hover:after,
.profile-trigger:hover:after {
  animation: ultraGlassShimmer 1.15s ease;
}

@keyframes ultraGlassShimmer {
  0% { opacity: 0; transform: translateX(-60%) rotate(8deg); }
  30% { opacity: .8; }
  100% { opacity: 0; transform: translateX(60%) rotate(8deg); }
}

.product,
.profile-trigger {
  backdrop-filter: blur(22px) saturate(1.2);
}

.product:hover {
  transform:
    translateY(-8px)
    translateZ(24px)
    scale(1.025);
  border-color: rgba(242,200,107,.42);
}

/* CENTER SPHERE / BRAIN / CADUCEUS IMPROVEMENT */
.identity-core {
  transform:
    translateY(18px)
    rotateX(calc(2deg + var(--ultra-y) * 3deg))
    rotateY(calc(var(--ultra-x) * -7deg));
}

.sphere {
  outline: 1px solid rgba(180,235,255,.22);
  outline-offset: 8px;
  animation:
    sphereFloat 7s ease-in-out infinite,
    ultraSphereThink calc(5s / max(var(--ultra-reactor-speed), .45)) ease-in-out infinite;
}

@keyframes ultraSphereThink {
  0%,100% {
    filter:
      brightness(calc(.94 + var(--ultra-bloom) * .12))
      saturate(1.05);
  }
  50% {
    filter:
      brightness(calc(1.02 + var(--ultra-bloom) * .18))
      saturate(1.22);
  }
}

.med-symbol {
  background:
    radial-gradient(circle at 32% 18%, #fff 0%, #fff7d5 18%, #d7a949 42%, #6f4a16 100%);
  box-shadow:
    0 0 34px rgba(242,200,107,.52),
    0 0 70px rgba(99,214,255,.22),
    inset 0 0 22px rgba(255,255,255,.32);
}

.med-symbol:after {
  content: "";
  position: absolute;
  inset: -34px;
  border-radius: 50%;
  background:
    conic-gradient(
      from 90deg,
      transparent,
      rgba(99,214,255,.18),
      transparent,
      rgba(242,200,107,.18),
      transparent
    );
  animation: ultraCaduceusHalo 9s linear infinite;
  z-index: -1;
}

@keyframes ultraCaduceusHalo {
  to { rotate: 360deg; }
}

/* REACTOR GENERATOR */
.base-ring,
.reactor-floor {
  filter:
    drop-shadow(0 0 28px rgba(99,214,255,.34))
    drop-shadow(0 0 12px rgba(242,200,107,.18));
}

.reactor-floor:after {
  content: "";
  position: absolute;
  inset: 18%;
  border-radius: 50%;
  border: 1px dashed rgba(242,200,107,.28);
  animation: ultraFloorCounterSpin 18s linear infinite reverse;
}

@keyframes ultraFloorCounterSpin {
  to { rotate: 360deg; }
}

.beam {
  opacity: calc(.68 + var(--ultra-bloom) * .28);
  filter: blur(11px) brightness(calc(1 + var(--ultra-bloom) * .4));
}

/* WORDING / TYPE POLISH */
.brand b {
  text-shadow:
    0 0 18px rgba(242,200,107,.18),
    0 0 28px rgba(99,214,255,.12);
}

.core-heading span,
.panel-title {
  text-shadow:
    0 0 14px rgba(99,214,255,.18),
    0 0 22px rgba(255,255,255,.08);
}

.product-copy b,
.principle b,
.pulse-card b {
  letter-spacing: .02em;
}

/* PHASE-SPECIFIC ULTRA LIGHTING */
body[data-ultra-phase="receiving"] {
  --ultra-bloom: .46;
}

body[data-ultra-phase="resolving"] {
  --ultra-bloom: .58;
}

body[data-ultra-phase="rendering"] {
  --ultra-bloom: .82;
}

body[data-ultra-phase="returning"] {
  --ultra-bloom: .56;
}

body[data-ultra-phase="rendering"] .ultra-figure8-orbit {
  filter:
    drop-shadow(0 0 30px rgba(99,214,255,.38))
    drop-shadow(0 0 28px rgba(242,200,107,.22));
}

body[data-ultra-phase="rendering"] .beam {
  opacity: .92;
}

/* keep realism behind usable content */
.scene-shell,
.top,
.homepage-cinema,
.hero,
.panel,
.core-stage,
.pulse-strip,
.site-footer {
  position: relative;
  z-index: 12;
}

.ultra-figure8-orbit {
  z-index: 8;
}

.profile-menu,
.profile-dropdown {
  z-index: 250;
}

.admin-overlay {
  z-index: 10000;
}

@media (max-width: 1280px) {
  .ultra-figure8-orbit {
    width: 94vw;
    height: 44vw;
    top: 45%;
  }
}

@media (max-width: 760px) {
  .ultra-figure8-orbit,
  .ultra-glass-field {
    display: none;
  }
}

/* ============================================================
   ULTRA REALISM V4 — OBJECT LAYERS / PERFORMANCE / SEAL / TRUE FIGURE-8
============================================================ */

.object-layer-root {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 4;
  perspective: 1200px;
}

.scene-object-layer {
  position: absolute;
  inset: 0;
  opacity: 0.08;
  transform:
    translateZ(calc(var(--layer-z) * 24px))
    translate3d(
      calc(var(--ultra-x) * var(--layer-z) * -12px),
      calc(var(--ultra-y) * var(--layer-z) * -8px),
      0
    );
}

.scene-object-layer[data-layer-type="atmosphere"] {
  background:
    radial-gradient(circle at 50% 32%, rgba(99,214,255,.22), transparent 38%),
    radial-gradient(circle at 78% 70%, rgba(242,200,107,.14), transparent 32%);
  filter: blur(32px);
}

.scene-object-layer[data-layer-type="hologram"] {
  background:
    repeating-linear-gradient(
      120deg,
      transparent 0 34px,
      rgba(99,214,255,.08) 35px 36px
    );
  mix-blend-mode: screen;
  animation: objectHologramDrift 18s linear infinite;
}

.scene-object-layer[data-layer-type="reactor_core"] {
  background:
    radial-gradient(circle at 50% 48%, rgba(99,214,255,.22), transparent 22%),
    radial-gradient(circle at 50% 48%, rgba(242,200,107,.12), transparent 34%);
  filter: blur(18px);
}

.scene-object-layer[data-layer-type="interactive_ui"] {
  background:
    linear-gradient(90deg, transparent, rgba(255,255,255,.05), transparent);
  opacity: .04;
}

@keyframes objectHologramDrift {
  from { transform: translateX(-3%) rotate(0deg); }
  to { transform: translateX(3%) rotate(360deg); }
}

.performance-mode-btn {
  border: 1px solid rgba(130,210,255,.3);
  background: rgba(5,14,28,.68);
  color: rgba(245,250,255,.92);
  border-radius: 999px;
  padding: 10px 13px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 0 18px rgba(99,214,255,.12);
}

.performance-mode-btn:hover {
  border-color: rgba(242,200,107,.55);
  box-shadow: 0 0 24px rgba(242,200,107,.18);
}

body[data-performance-mode="low"] .ultra-city-depth i:nth-child(n+61),
body[data-performance-mode="low"] .ultra-figure8-orbit b:nth-child(n+20),
body[data-performance-mode="low"] .ultra-glass-field {
  display: none;
}

body[data-performance-mode="low"] .hologram-layer,
body[data-performance-mode="low"] .particle-layer {
  opacity: .35;
}

body[data-performance-mode="ultra"] {
  --ultra-bloom: .9;
}

body[data-performance-mode="ultra"] .sphere,
body[data-performance-mode="ultra"] .identity-core {
  filter:
    drop-shadow(0 0 70px rgba(99,214,255,.38))
    drop-shadow(0 0 42px rgba(242,200,107,.22));
}

.seal-symbol {
  overflow: visible;
  background: transparent !important;
  box-shadow: none !important;
}

.seal-symbol img {
  width: 124px;
  height: 124px;
  object-fit: contain;
  filter:
    drop-shadow(0 0 18px rgba(242,200,107,.55))
    drop-shadow(0 0 28px rgba(99,214,255,.22));
  animation: sealMicroFloat 5.8s ease-in-out infinite;
}

.brand-seal {
  background-image: url("/home/assets/seal/medatlas-seal.svg");
  background-size: cover;
  background-position: center;
}

.brand-seal:before {
  content: "";
}

@keyframes sealMicroFloat {
  0%,100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-3px) scale(1.015); }
}

.infinity-cross-core {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 86px;
  height: 86px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background:
    radial-gradient(circle, rgba(255,255,255,.85), rgba(99,214,255,.32) 24%, transparent 70%);
  filter:
    blur(.4px)
    drop-shadow(0 0 22px rgba(99,214,255,.55))
    drop-shadow(0 0 18px rgba(242,200,107,.35));
  animation: infinityCrossPulse calc(3.8s / max(var(--ultra-reactor-speed), .45)) ease-in-out infinite;
}

@keyframes infinityCrossPulse {
  0%,100% { opacity: .42; transform: translate(-50%, -50%) scale(.92); }
  50% { opacity: .9; transform: translate(-50%, -50%) scale(1.08); }
}

.infinity-energy-ribbon {
  position: absolute;
  inset: 4%;
  border-radius: 50%;
  pointer-events: none;
  mix-blend-mode: screen;
}

.infinity-energy-ribbon:before,
.infinity-energy-ribbon:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 48%;
  height: 58%;
  border-radius: 50%;
  border-top: 3px solid rgba(99,214,255,.72);
  border-bottom: 1px solid rgba(242,200,107,.24);
  filter:
    drop-shadow(0 0 14px rgba(99,214,255,.72))
    drop-shadow(0 0 18px rgba(242,200,107,.22));
}

.infinity-energy-ribbon:before {
  left: 6%;
  transform: translateY(-50%) rotate(18deg);
}

.infinity-energy-ribbon:after {
  right: 6%;
  transform: translateY(-50%) rotate(-18deg);
}

.infinity-energy-ribbon[data-ribbon="1"] {
  animation: ribbonBreathe calc(6s / max(var(--ultra-orbit-speed), .35)) ease-in-out infinite;
}

.infinity-energy-ribbon[data-ribbon="2"] {
  inset: 13%;
  opacity: .55;
  animation: ribbonBreathe calc(8s / max(var(--ultra-orbit-speed), .35)) ease-in-out infinite reverse;
}

@keyframes ribbonBreathe {
  0%,100% { transform: rotateX(58deg) rotateZ(0deg) scale(.98); opacity: .48; }
  50% { transform: rotateX(58deg) rotateZ(180deg) scale(1.04); opacity: .9; }
}

body[data-object-focus="ecosystem_tiles"] .product {
  border-color: rgba(242,200,107,.38);
}

body[data-object-focus="profile_entry"] .profile-trigger {
  border-color: rgba(242,200,107,.6);
}

body[data-object-focus="identity_core"] .identity-core {
  filter:
    drop-shadow(0 0 64px rgba(99,214,255,.38))
    drop-shadow(0 0 34px rgba(242,200,107,.22));
}
