/* ==========================================================
   Lawtopia — real 3D legal emblems (floating atmosphere)
   ========================================================== */
.lt-atmosphere {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  contain: strict;
}

body.lawtopia-platform .lt-nav {
  z-index: 60;
}
body.lawtopia-platform .lt-foot,
body.lawtopia-platform .hx-auth,
body.lawtopia-platform main,
body.lawtopia-platform .acc-topbar,
body.lawtopia-platform header.acc-topbar,
body.lawtopia-platform .acc-layout,
body.lawtopia-platform .acc-wrap {
  position: relative;
  z-index: 2;
}

.lt-atmosphere__wash {
  position: absolute;
  border-radius: 50%;
  filter: blur(56px);
  opacity: .55;
  animation: ltWashDrift 22s ease-in-out infinite alternate;
}
.lt-atmosphere__wash--a {
  width: min(560px, 75vw);
  height: min(560px, 75vw);
  top: -10%;
  inset-inline-end: -6%;
  background: radial-gradient(circle, rgba(226, 87, 26, 0.22), transparent 68%);
}
.lt-atmosphere__wash--b {
  width: min(520px, 70vw);
  height: min(520px, 70vw);
  bottom: -14%;
  inset-inline-start: -8%;
  background: radial-gradient(circle, rgba(184, 65, 15, 0.16), transparent 70%);
  animation-delay: -8s;
  animation-duration: 28s;
}
html[data-theme="dark"] .lt-atmosphere__wash--a {
  background: radial-gradient(circle, rgba(255, 122, 60, 0.20), transparent 68%);
}
html[data-theme="dark"] .lt-atmosphere__wash--b {
  background: radial-gradient(circle, rgba(226, 87, 26, 0.14), transparent 70%);
}

.lt-atmosphere__grid {
  position: absolute;
  inset: 0;
  opacity: 0.045;
  background-image:
    linear-gradient(rgba(226, 87, 26, 0.65) 1px, transparent 1px),
    linear-gradient(90deg, rgba(226, 87, 26, 0.65) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(ellipse 75% 65% at 50% 40%, #000 12%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 75% 65% at 50% 40%, #000 12%, transparent 78%);
}
html[data-theme="dark"] .lt-atmosphere__grid {
  opacity: 0.06;
}

/* Real photoreal emblems */
.lt-atmosphere__sym {
  position: absolute;
  left: var(--lt-ax);
  top: var(--lt-ay);
  width: var(--lt-as);
  height: var(--lt-as);
  opacity: 0.18;
  transform: translate(-50%, -50%);
  will-change: transform, opacity;
  filter: drop-shadow(0 10px 22px rgba(90, 40, 12, 0.10));
  background: transparent;
}
.lt-atmosphere__sym img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  user-select: none;
  -webkit-user-drag: none;
  background: transparent;
  mix-blend-mode: normal;
}
/* توافق قديم — الرموز الآن شفافة وخفيفة */
.lt-atmosphere__sym--screen {
  opacity: 0.16;
  filter: drop-shadow(0 10px 22px rgba(90, 40, 12, 0.10));
}
.lt-atmosphere__sym--screen img {
  mix-blend-mode: normal;
  filter: none;
}
html[data-theme="dark"] .lt-atmosphere__sym {
  opacity: 0.22;
  filter: drop-shadow(0 10px 22px rgba(0, 0, 0, 0.28));
}
html[data-theme="dark"] .lt-atmosphere__sym--screen {
  opacity: 0.20;
}
html[data-theme="dark"] .lt-atmosphere__sym--screen img {
  mix-blend-mode: normal;
  filter: brightness(1.06) saturate(1.04);
}

.lt-atmosphere__sym--a { animation: ltSymFloatA 16s ease-in-out infinite; }
.lt-atmosphere__sym--b { animation: ltSymFloatB 19s ease-in-out infinite; }
.lt-atmosphere__sym--c { animation: ltSymFloatC 22s ease-in-out infinite; }
.lt-atmosphere__sym--screen.lt-atmosphere__sym--a { animation-name: ltSymFloatScreenA; }
.lt-atmosphere__sym--screen.lt-atmosphere__sym--b { animation-name: ltSymFloatScreenB; }
.lt-atmosphere__sym--screen.lt-atmosphere__sym--c { animation-name: ltSymFloatScreenC; }

@keyframes ltWashDrift {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(-3%, 4%, 0) scale(1.08); }
}
@keyframes ltSymFloatA {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(-3deg); opacity: 0.12; }
  50% { transform: translate(-50%, -50%) translateY(-18px) rotate(4deg); opacity: 0.22; }
}
@keyframes ltSymFloatB {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(2deg); opacity: 0.13; }
  50% { transform: translate(-50%, -50%) translateY(14px) rotate(-4deg); opacity: 0.24; }
}
@keyframes ltSymFloatC {
  0%, 100% { transform: translate(-50%, -50%) translateX(0) rotate(-2deg); opacity: 0.11; }
  50% { transform: translate(-50%, -50%) translateX(12px) rotate(5deg); opacity: 0.20; }
}

html[data-theme="dark"] .lt-atmosphere__sym--a { animation-name: ltSymFloatADark; }
html[data-theme="dark"] .lt-atmosphere__sym--b { animation-name: ltSymFloatBDark; }
html[data-theme="dark"] .lt-atmosphere__sym--c { animation-name: ltSymFloatCDark; }
@keyframes ltSymFloatADark {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(-3deg); opacity: 0.16; }
  50% { transform: translate(-50%, -50%) translateY(-18px) rotate(4deg); opacity: 0.28; }
}
@keyframes ltSymFloatBDark {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(2deg); opacity: 0.17; }
  50% { transform: translate(-50%, -50%) translateY(14px) rotate(-4deg); opacity: 0.30; }
}
@keyframes ltSymFloatCDark {
  0%, 100% { transform: translate(-50%, -50%) translateX(0) rotate(-2deg); opacity: 0.15; }
  50% { transform: translate(-50%, -50%) translateX(12px) rotate(5deg); opacity: 0.26; }
}

@keyframes ltSymFloatScreenA {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(-3deg); opacity: 0.12; }
  50% { transform: translate(-50%, -50%) translateY(-18px) rotate(4deg); opacity: 0.22; }
}
@keyframes ltSymFloatScreenB {
  0%, 100% { transform: translate(-50%, -50%) translateY(0) rotate(2deg); opacity: 0.13; }
  50% { transform: translate(-50%, -50%) translateY(14px) rotate(-4deg); opacity: 0.24; }
}
@keyframes ltSymFloatScreenC {
  0%, 100% { transform: translate(-50%, -50%) translateX(0) rotate(-2deg); opacity: 0.11; }
  50% { transform: translate(-50%, -50%) translateX(12px) rotate(5deg); opacity: 0.20; }
}
html[data-theme="dark"] .lt-atmosphere__sym--screen.lt-atmosphere__sym--a { animation-name: ltSymFloatADark; }
html[data-theme="dark"] .lt-atmosphere__sym--screen.lt-atmosphere__sym--b { animation-name: ltSymFloatBDark; }
html[data-theme="dark"] .lt-atmosphere__sym--screen.lt-atmosphere__sym--c { animation-name: ltSymFloatCDark; }

@media (max-width: 720px) {
  .lt-atmosphere__sym:nth-child(n + 9) { display: none; }
  .lt-atmosphere__sym {
    width: calc(var(--lt-as) * 0.78);
    height: calc(var(--lt-as) * 0.78);
    opacity: 0.14;
  }
  .lt-atmosphere__wash { filter: blur(40px); opacity: .45; }
}

@media (prefers-reduced-motion: reduce) {
  .lt-atmosphere__wash,
  .lt-atmosphere__sym {
    animation: none !important;
  }
  .lt-atmosphere__sym { opacity: 0.16 !important; }
  .lt-atmosphere__sym--screen { opacity: 0.14 !important; }
  html[data-theme="dark"] .lt-atmosphere__sym { opacity: 0.20 !important; }
  html[data-theme="dark"] .lt-atmosphere__sym--screen { opacity: 0.18 !important; }
}
