* { box-sizing: border-box; }.admin-portal, .admin-portal * { -webkit-user-select: text !important; user-select: text !important; }::selection { color: #fff; background: #e63d3d; }img { -webkit-user-drag: none; user-drag: none; }html { scroll-behavior: smooth; scroll-padding-top: 100rem; }body {
      margin: 0;
      min-height: 100vh;
      overflow-x: hidden;
      color: var(--text);
      font-family: var(--font-body);
      font-size: 14rem;
      line-height: 1.5;
      background: var(--bg);
    }body::before {
      content: "";
      position: fixed;
      inset: -20%;
      z-index: -5;
      pointer-events: none;
      background:
        radial-gradient(circle at 15% 8%, rgba(226,59,40,.27), transparent 28%),
        radial-gradient(circle at 86% 12%, rgba(181,31,21,.21), transparent 28%),
        radial-gradient(circle at 64% 86%, rgba(255,156,94,.12), transparent 32%),
        linear-gradient(145deg, #0e0e10 8%, #18121f 48%, #0b0b0d 100%);
      animation: aurora 18s ease-in-out infinite alternate;
    }body::after {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 1000;
      pointer-events: none;
      opacity: .055;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
      mix-blend-mode: soft-light;
    }@keyframes aurora {
      0% { transform: translate3d(-2%, -1%, 0) scale(1); filter: hue-rotate(0deg); }
      100% { transform: translate3d(2%, 1.5%, 0) scale(1.06); filter: hue-rotate(10deg); }
    }.ambient-grid {
      position: fixed;
      inset: 0;
      z-index: -4;
      pointer-events: none;
      opacity: .22;
      background-image:
        linear-gradient(rgba(255,255,255,.035) 1rem, transparent 1rem),
        linear-gradient(90deg, rgba(255,255,255,.035) 1rem, transparent 1rem);
      background-size: 68rem 68rem;
      mask-image: linear-gradient(to bottom, #000, transparent 88%);
      animation: gridDrift 24s linear infinite;
    }@keyframes gridDrift { to { background-position: 68rem 68rem; } }.cursor-glow {
      position: fixed;
      left: 0;
      top: 0;
      width: 440rem;
      height: 440rem;
      z-index: -3;
      pointer-events: none;
      border-radius: 50%;
      opacity: 0;
      background: radial-gradient(circle, rgba(226,59,40,.16), rgba(181,31,21,.08) 36%, transparent 70%);
      filter: blur(10rem);
      transform: translate3d(-50%, -50%, 0);
      transition: opacity .4s ease;
    }body.pointer-active .cursor-glow { opacity: 1; }a { color: inherit; text-decoration: none; }button, input, textarea, select { font: inherit; }button { cursor: pointer; line-height: 1.2; }.shell { width: min(1280rem, calc(100% - 40rem)); margin: 0 auto; }

/* Keep button-based navigation visually identical to link-based tabs. */
button.nav-link {
  appearance: none;
  border: 0;
  background: transparent;
  text-align: inherit;
}

/* Modal controls must stay above sticky headers and scrollable workspaces. */
body :is(
  .modal-close,
  .tier-close,
  .tier-row-dialog-close,
  .auction-close,
  .feature-close,
  .gang-close,
  .admin-portal-close,
  .suggestions-close,
  .media-close
) {
  z-index: 200;
  display: grid;
  place-items: center;
  padding: 0;
  overflow: visible;
  line-height: 1;
  isolation: isolate;
}
