/* SG Coach — стиль РК «Старый Город» (синхронизирован с партнёркой) */
:root {
  --navy: #1e1e2f;
  --navy-light: #2a2a40;
  --coral: #e86b6b;
  --coral-hover: #d45555;
  --coral-light: #f09090;
  --coral-bg: rgba(232,107,107,.06);
  --cream: #faf8f5;
  --sand: #f2efe9;
  --white: #fff;
  --text: #1e1e2f;
  --text2: #5a5a70;
  --text3: #9090a0;
  --border: rgba(0,0,0,.07);
  --shadow-s: 0 2px 8px rgba(0,0,0,.04);
  --shadow-m: 0 8px 30px rgba(0,0,0,.06);
  --shadow-coral: 0 8px 30px rgba(232,107,107,.15);
  --r: 14px;
  --r-lg: 20px;
  --tr: .3s cubic-bezier(.4,0,.2,1);
}

[x-cloak] { display: none !important; }

html, body {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  background: var(--cream);
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  font-feature-settings: 'cv02','cv03','cv04','cv11';
}

h1, h2, h3, h4 { letter-spacing: -0.015em; font-weight: 700; }

/* prose markdown — для ответов ассистента */
.prose-sg h1 { font-size: 1.2em; color: var(--navy); margin-top: 0.6em; }
.prose-sg h2 { font-size: 1.05em; color: var(--navy); margin-top: 1em; margin-bottom: 0.4em; border-bottom: 1px solid var(--border); padding-bottom: 0.25em; }
.prose-sg h3 { font-size: 0.95em; color: var(--coral); margin-top: 0.8em; margin-bottom: 0.3em; }
.prose-sg ul, .prose-sg ol { padding-left: 1.4em; margin: 0.4em 0; }
.prose-sg li { margin: 0.15em 0; }
.prose-sg code { background: var(--sand); padding: 0.1em 0.4em; border-radius: 4px; font-size: 0.9em; color: var(--coral-hover); }
.prose-sg pre { background: var(--sand); border: 1px solid var(--border); padding: 0.8em; border-radius: 8px; overflow-x: auto; margin: 0.6em 0; }
.prose-sg pre code { background: transparent; padding: 0; color: var(--text); }
.prose-sg blockquote { border-left: 3px solid var(--coral); padding-left: 1em; color: var(--text2); font-style: italic; margin: 0.6em 0; }
.prose-sg strong { color: var(--navy); font-weight: 600; }
.prose-sg table { border-collapse: collapse; margin: 0.6em 0; font-size: 0.9em; width: 100%; }
.prose-sg th, .prose-sg td { border: 1px solid var(--border); padding: 0.4em 0.6em; text-align: left; }
.prose-sg th { background: var(--sand); }
.prose-sg hr { border: 0; border-top: 1px solid var(--border); margin: 1em 0; }
.prose-sg p { margin: 0.4em 0; }

/* scrollbar (light) */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--cream); }
::-webkit-scrollbar-thumb { background: rgba(30,30,47,.15); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(30,30,47,.25); }
