/* IBM 5151 style: green phosphor on black */

/* Monospace first */
:root, body, input, textarea, button, select {
  font-family: "IBM Plex Mono", "PxPlus IBM VGA9", "Perfect DOS VGA 437", "Courier New", monospace;
}
/* Remove modern softness */
* {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Phosphor glow */
body {
  text-shadow: 0 0 1px rgba(120, 255, 170, 0.35),
               0 0 6px rgba(60, 255, 120, 0.18);
  line-height: 1.4;
}

/* Links should not go blue or purple */
a, a:visited {
  color: inherit !important;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}

/* Subtle scanlines and vignette overlay */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.00) 0px,
      rgba(0, 0, 0, 0.00) 2px,
      rgba(0, 0, 0, 0.10) 3px
    ),
    radial-gradient(
      ellipse at center,
      rgba(0, 0, 0, 0.00) 0%,
      rgba(0, 0, 0, 0.35) 70%,
      rgba(0, 0, 0, 0.60) 100%
    );
  mix-blend-mode: multiply;
}

/* Slight “phosphor haze” in widget backgrounds */
.widget, .card, .panel {
  background: rgba(0, 0, 0, 0.92) !important;
  border: 1px solid rgba(40, 160, 80, 0.35) !important;
}

/* No motion anywhere */
* {
  transition: none !important;
  animation: none !important;
}

/* Phosphor persistence look (static): layered glow and slight haze */
body {
  text-shadow:
    0 0 0.6px rgba(120, 255, 170, 0.30),
    0 0 2.2px rgba(60, 255, 120, 0.18),
    0 0 8px  rgba(30, 200, 90, 0.10);
}

/* Slight “tube softness” without blur */

:root {
  -webkit-font-smoothing: none;
  text-rendering: geometricPrecision;
}

/* Flicker only when user allows motion */
@media (prefers-reduced-motion: no-preference) {
  body::after {
    animation: crtFlicker 7.5s steps(2, end) infinite;
  }

  /* Tiny brightness jitter, long period, not a strobe */
  @keyframes crtFlicker {
    0%   { opacity: 0.90; }
    7%   { opacity: 0.93; }
    13%  { opacity: 0.91; }
    22%  { opacity: 0.94; }
    31%  { opacity: 0.92; }
    47%  { opacity: 0.95; }
    58%  { opacity: 0.91; }
    73%  { opacity: 0.94; }
    86%  { opacity: 0.92; }
    100% { opacity: 0.90; }
  }
/* IBM-style footer bar */
footer,
.footer,
#footer,
.glance-footer {
  display: block !important;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;

  background-color: #00cc55;
  color: #000000;

  font-family: "IBM Plex Mono", "Courier New", monospace;
  font-size: 12px;
  line-height: 1.4;

  padding: 6px 12px;
  border-top: 2px solid #009944;

  text-align: center;
  z-index: 9999;
}

/* Ensure links stay black */
footer a,
.footer a,
#footer a,
.glance-footer a {
  color: #000000 !important;
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}
footer {
  box-shadow: none !important;
}
}
