@import url('fonts.css');

/* Palette and type ported from docs/mockups/2026-11-11-detektivka/detektivka.html */
:root {
  --bg: #0e0f13;
  --bg-deep: #0b0c10;
  --bg-raise: #16181f;
  --panel: rgba(255, 255, 255, .06);
  --panel-line: rgba(255, 255, 255, .1);
  --text: #efe6d6;
  --text-hi: #f3e9d6;
  --muted: #a89f8f;
  --muted-2: #c9bfae;
  --dim: #6f6858;
  --amber: #f2b54a;
  --amber-ink: #2a1a00;
  --red: #e5484d;
  --red-deep: #c62b2b;
  --string: #d1222b;
  --paper: #f3ead8;
  --paper-2: #e8dcc6;
  --ink: #2a2218;
  --note: #f7e27a;
  --green-bg: #1d3a26;
  --green: #3fbf7f;
  --green-hi: #7ff0ae;
  --map-bg: #0d151d;
  --map-grid: #18283a;
  --map-room: #132233;
  --map-line: #4a7394;
  --map-text: #9fc2dd;
  --map-sub: #6f8da6;
  --cork: #7a5a3c;
  --req-bg: #1c2233;
  --req-text: #c8cfe6;

  --f-title: 'Playfair Display', Georgia, serif;
  --f-type: 'Special Elite', 'Courier New', monospace;
  --f-hand: 'Caveat', 'Bradley Hand', cursive;
  --f-ui: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;

  --shadow-card: 0 4px 10px rgba(0, 0, 0, .6);
  --ease-out: cubic-bezier(.2, .8, .2, 1);
  color-scheme: dark;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--f-ui); }
button { font: inherit; color: inherit; }
img { display: block; max-width: 100%; }

/* image with a dark fallback when the file is missing: style="--img:url(...)" */
.ph { background-color: #1a1c22; background-image: var(--img, none), radial-gradient(120% 90% at 30% 20%, #2a2c33 0%, #121318 70%); background-size: cover, cover; background-position: var(--pos, center), center; background-repeat: no-repeat; }

@keyframes rec-blink { 0%, 49% { opacity: 1; } 50%, 100% { opacity: 0; } }
.blink { animation: rec-blink 1.2s steps(1) infinite; }
