:root {
  --bg-color: #ffffff;
  --text-color: #000000;
}

body {
  font-family: 'Courier Prime', monospace;
  background-color: #111111;
  color: #000000;
  overflow-x: hidden;
}

.typewriter-font {
  font-family: 'Special Elite', system-ui, -apple-system, sans-serif;
}

/* Grungy Ink Text Effects */
.ink-smudge {
  text-shadow: 1px 1px 1px rgba(0,0,0,0.15), -0.5px 0.5px 1px rgba(0,0,0,0.2);
}

/* Custom brutal border definitions */
.brutal-border {
  border: 4px solid #000000;
}
.brutal-shadow {
  box-shadow: 8px 8px 0px 0px #000000;
}
.brutal-shadow-sm {
  box-shadow: 4px 4px 0px 0px #000000;
}
.brutal-btn-active:active {
  transform: translate(3px, 3px);
  box-shadow: 2px 2px 0px 0px #000000;
}

/* Custom analog tape rotation keyframe */
@keyframes spin-slow {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
.spinning-spindle {
  animation: spin-slow 4s linear infinite;
}
.spinning-spindle-fast {
  animation: spin-slow 1.5s linear infinite;
}

/* Distorted scanning lines */
.glitch-overlay {
  background: linear-gradient(
    rgba(18, 16, 16, 0) 50%, 
    rgba(0, 0, 0, 0.1) 50%
  ), linear-gradient(
    90deg, 
    rgba(255, 0, 0, 0.03), 
    rgba(0, 255, 0, 0.01), 
    rgba(0, 0, 255, 0.03)
  );
  background-size: 100% 4px, 6px 100%;
}

/* Scrollbar customized to match monochrome design */
::-webkit-scrollbar {
  width: 12px;
}
::-webkit-scrollbar-track {
  background: #ffffff;
  border-left: 4px solid #000000;
}
::-webkit-scrollbar-thumb {
  background: #000000;
  border: 2px solid #ffffff;
}

/* Dynamic Banner Transitions */
.banner-transition {
  transition: filter 0.5s ease-in-out, background-image 0.5s ease-in-out;
}

/* Playlist Active State Styling */
.track-active {
  background-color: #000000 !important;
  color: #ffffff !important;
}
.track-active .track-duration {
  color: #ffffff !important;
}

strike {
  text-decoration-line: line-through;
  text-decoration-thickness: 56%;
  text-decoration-color: currentColor;
  color: #444444;
}

.highlight {
  background-color: khaki;
}

/* Style for inline text links within posts */
article p a,
#feed p a {
  text-decoration: none; /* Strip out any default browser underlines */
  border-bottom: 2px dotted #888; /* A slightly darker gray and 2px thick for visibility */
  padding-bottom: 1px; /* Adds breathing room between text and the dots */
  transition: all 0.2s ease-in-out;
}

article p a:hover,
#feed p a:hover {
  border-bottom: 2px solid blue;
  color: blue;
}
