:root {
  color-scheme: dark;
  --ink: #fff7e8;
  --hot: #ff3d7f;
  --acid: #b8ff2c;
  --steel: #80d8ff;
  --paper: #231817;
  --shadow: rgba(0, 0, 0, 0.72);
}

* {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  height: 100%;
}

body {
  position: relative;
  margin: 0;
  overflow: hidden;
  color: var(--ink);
  background:
    radial-gradient(circle at 28% 34%, rgba(255, 247, 232, 0.16), transparent 28%),
    linear-gradient(132deg, transparent 0 58%, rgba(255, 61, 127, 0.24) 58% 68%, transparent 68%),
    linear-gradient(18deg, rgba(184, 255, 44, 0.12) 0 12%, transparent 12% 100%),
    var(--paper);
  font-family:
    "Arial Black", Impact, Haettenschweiler, "Segoe UI Black", system-ui,
    sans-serif;
}

body::before {
  position: fixed;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(circle, rgba(255, 247, 232, 0.18) 1px, transparent 1px),
    radial-gradient(circle, rgba(255, 61, 127, 0.16) 1px, transparent 1px);
  background-position:
    0 0,
    13px 13px;
  background-size: 26px 26px;
  content: "";
  opacity: 0.38;
  pointer-events: none;
}

body::after {
  position: fixed;
  inset: 0;
  z-index: 0;
  background:
    repeating-linear-gradient(
      -10deg,
      transparent 0 16px,
      rgba(128, 216, 255, 0.16) 16px 18px
    );
  clip-path: polygon(68% 0, 100% 0, 100% 100%, 52% 100%);
  content: "";
  pointer-events: none;
}

.message-shell {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  height: 100vh;
  height: 100svh;
  align-items: center;
  justify-items: center;
  padding: clamp(18px, 5vw, 60px);
}

.message-panel {
  width: 100%;
  transform: rotate(-1deg);
}

.message-text {
  position: relative;
  width: 100%;
  margin: 0;
  padding: clamp(12px, 2vw, 22px) clamp(14px, 2.6vw, 28px);
  border: clamp(3px, 0.6vw, 7px) solid var(--ink);
  box-shadow:
    12px 12px 0 var(--hot),
    20px 20px 0 var(--shadow);
  color: var(--ink);
  background: rgba(18, 16, 15, 0.82);
  font-size: clamp(2.3rem, 10vw, 8.5rem);
  font-weight: 900;
  line-height: 0.88;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
  text-shadow:
    3px 3px 0 var(--hot),
    -3px -2px 0 rgba(128, 216, 255, 0.85);
}

.message-text::before,
.message-text::after {
  position: absolute;
  z-index: -1;
  content: "";
}

.message-text::before {
  inset: -14px auto auto -14px;
  width: 34%;
  height: 22px;
  background: var(--acid);
  transform: skewX(-18deg);
}

.message-text::after {
  right: -18px;
  bottom: -18px;
  width: 44%;
  height: 12px;
  background: var(--steel);
  transform: skewX(-24deg);
}

@media (max-width: 560px) {
  .message-shell {
    align-items: center;
    padding: 18px;
  }

  .message-panel {
    transform: rotate(-0.6deg);
  }

  .message-text {
    box-shadow:
      8px 8px 0 var(--hot),
      14px 14px 0 var(--shadow);
    font-size: clamp(2rem, 15vw, 4.9rem);
  }
}
