/* ── NOCTURNE — CSS ───────────────────────────────────────────── */

@font-face {
  font-family: 'Limelight';
  src: url('../shared/fonts/limelight-400.woff2') format('woff2');
  font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('../shared/fonts/cormorant-400.woff2') format('woff2');
  font-display: swap;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  overflow: hidden;
  background: #02030a;
  font-family: 'Cormorant Garamond', serif;
  color: #e8e9ed;
  
  /* Kein Scrollen/Pinchen/Zoomen unter dem Touch-Stick-Input */
  touch-action: none;
}

#game, #hud {
  position: absolute;
  top: 0; left: 0;
}

#screens {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  pointer-events: none;   /* Buttons reaktivieren selbst (siehe .btn) */
}

.backlink {
  position: fixed;
  bottom: 2rem; right: 2rem;
  color: #6b7c93;
  text-decoration: none;
  font-family: 'Limelight', cursive;
  font-size: 1.5rem;
}
.backlink:hover { color: #c9ff4d; }

/* Screens (Noir-Deco) */
.screen {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.screen.active { display: flex; }

.screen-card {
  text-align: center;
  padding: 2rem;
  border-top: 2px solid #e8e9ed;
}

.kicker {
  font-family: 'Limelight', cursive;
  color: #c9ff4d;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
.title { 
  font-size: clamp(2.5rem, 6vw, 5rem); 
  margin-bottom: 0.5rem; 
}
.subtitle { 
  font-size: clamp(0.9rem, 2vw, 1.25rem); 
  color: #8b9bb4; 
  margin-bottom: 1.5rem; 
}

.btn {
  background: transparent;
  border: none;
  color: #e8e9ed;
  font-family: 'Limelight', cursive;
  font-size: clamp(1.2rem, 3vw, 2rem);
  cursor: pointer;
  
  /* #screens ist pointer-events:none — Button muss sich freischalten */
  pointer-events: auto;
}
.btn:hover { color: #c9ff4d; }

.error { color: #ff3131; }
.prompt { 
  margin-top: 1rem; 
  font-size: clamp(0.85rem, 2vw, 1.1rem); 
}

.highscore {
  position: absolute;
  top: 2rem; right: 3rem;
  text-align: right;
}
