:root {
  --outer-black: #030304;
  --deep-bg: radial-gradient(circle at 45% 55%, #0c0e14, #010203 75%, #000000);
  --aether-gold: #d6b26d;
  --aether-teal: #6dd6bf;
  --aether-rose: #ff7eb9;
  --text-cream: #f1e9dd;
  --nav-bg: rgba(5, 9, 18, 0.88);
  --border-soft: rgba(214, 178, 109, 0.25);
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  width: 100%;
  background: var(--outer-black);
  font-family: 'Space Grotesk', sans-serif;
  color: var(--text-cream);
}

body.reports-overlay-locked {
  overflow: hidden;
}

.reports-shell {
  position: relative;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: var(--deep-bg);
  isolation: isolate;
}

.reports-shell__backdrop {
  position: fixed;
  inset: 0;
  background: radial-gradient(circle at 20% 20%, rgba(109, 214, 191, 0.18), transparent 45%),
    radial-gradient(circle at 80% 30%, rgba(255, 126, 185, 0.15), transparent 50%),
    radial-gradient(circle at 50% 80%, rgba(214, 178, 109, 0.18), transparent 55%),
    var(--deep-bg);
  filter: saturate(1.2);
  z-index: 0;
}

.reports-shell__panel {
  flex: 1 1 auto;
  min-height: 0;
  padding: clamp(1.25rem, 3vw, 2.5rem);
  display: flex;
  position: relative;
  z-index: 1;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable both-edges;
  transition: opacity 260ms ease, filter 260ms ease;
}

.reports-shell__panel > * {
  flex: 1 1 auto;
  min-height: 0;
}

body.reports-shell--transitioning .reports-shell__panel {
  opacity: 0.1;
  filter: blur(18px);
}
