/* Общие стили */
body {
  margin: 0;
  font-family: 'Georgia', serif;
  background: url('https://images.unsplash.com/photo-1501700493788-24f0b6e1fbbf') no-repeat center center fixed;
  background-size: cover;
  color: #eee;
  line-height: 1.6;
}

header {
  background: rgba(0,0,0,0.7);
  padding: 20px;
  text-align: center;
  font-size: 2em;
  font-weight: bold;
  letter-spacing: 2px;
  border-bottom: 2px solid #444;
}

nav {
  background: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  gap: 20px;
  padding: 10px;
  font-size: 1.1em;
}

nav a {
  color: #eee;
  text-decoration: none;
  transition: 0.3s;
}

nav a:hover {
  color: #a00;
}

main {
  padding: 20px;
  max-width: 900px;
  margin: auto;
  background: rgba(0,0,0,0.5);
  border-radius: 10px;
  margin-top: 20px;
}

.section-title {
  font-size: 1.8em;
  margin-bottom: 10px;
  border-bottom: 1px solid #444;
  padding-bottom: 5px;
}

.diary-entry {
  background: rgba(50,50,50,0.6);
  margin: 15px 0;
  padding: 15px;
  border-left: 4px solid #a00;
  border-radius: 5px;
  transition: 0.3s;
}

.diary-entry:hover {
  background: rgba(70,30,30,0.7);
}

.entry-date {
  font-size: 0.9em;
  color: #ccc;
  margin-bottom: 5px;
}

.forum-category {
  margin: 15px 0;
  padding: 15px;
  border: 1px solid #444;
  border-radius: 5px;
  background: rgba(30,30,30,0.6);
}

.forum-category h3 {
  margin-top: 0;
  color: #f55;
}

footer {
  text-align: center;
  padding: 20px;
  margin-top: 20px;
  border-top: 2px solid #444;
  color: #aaa;
  font-size: 0.9em;
}

/* Анимация тумана */
#fog {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: url('https://images.unsplash.com/photo-1504384308090-c894fdcc538d') repeat;
  opacity: 0.2;
  animation: moveFog 60s linear infinite;
}

@keyframes moveFog {
  from { background-position: 0 0; }
  to { background-position: 1000px 0; }
}

.read-more {
  color: #f55;
  cursor: pointer;
}

#forest-map {
  position: relative;
  width: 100%;
  max-width: 800px;
  height: 400px;
  margin: 20px auto;
  background: rgba(0,50,0,0.7);
  border: 2px solid #444;
  border-radius: 5px;
}

.map-point {
  position: absolute;
  color: #f55;
  font-size: 1.5em;
  cursor: pointer;
  transition: transform 0.2s;
}

.map-point:hover {
  transform: scale(1.5);
}

#map-tooltip {
  display: none;
  position: absolute;
  background: rgba(0,0,0,0.8);
  color: #fff;
  padding: 10px;
  border-radius: 5px;
  max-width: 250px;
  font-size: 0.9em;
  z-index: 10;
  pointer-events: none;
}

#creepy-message {
  position: fixed;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255, 255, 255, 0.8);
  font-size: 2em;
  font-family: "Courier New", monospace;
  text-shadow: 0 0 10px red, 0 0 20px black;
  opacity: 0;
  transition: opacity 1s ease-in-out;
  pointer-events: none;
  z-index: 9999;
}

.corrupt {
  color: #c00;
  text-shadow: 0 0 6px #900, 0 0 16px #000;
  animation: glitch 0.7s steps(2, jump-none) infinite alternate;
}

@keyframes glitch {
  0%   { transform: translate(0,0) skewX(0deg);   filter: blur(0); }
  25%  { transform: translate(1px,-1px) skewX(1deg); filter: blur(0.5px); }
  50%  { transform: translate(-1px,1px) skewX(-1deg); filter: blur(0); }
  75%  { transform: translate(2px,0) skewX(0.5deg);  filter: blur(0.4px); }
  100% { transform: translate(0,0) skewX(0deg);   filter: blur(0); }
}

.reply {
  background-color: rgba(255, 255, 255, 0.05);
  border-left: 2px solid rgba(255, 255, 255, 0.2);
  margin: 10px 0;
  padding: 8px 12px;
  font-style: italic;
  font-size: 0.95em;
  color: #ccc;
  transition: background-color 0.3s ease;
}

.reply:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

