/* RallyChrono presentation theme
   Colors: Asphalt & Fire (racing theme)
   Primary: Racing Red, Secondary: Graphite Black, Accent: Metallic Orange
   Font: Inter (fallback system)
*/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap');

:root{
  --bg:#1C1C1E; /* graphite black (secondary) */
  --panel:#2C2C2E; /* slightly lighter graphite */
  --text:#F5F5F7; /* light gray (light) */
  --muted:#8E8E93; /* gray medium */
  --primary:#FF2D55; /* racing red */
  --accent:#FF8C42; /* metallic orange */
  --accent-alt:#64D2FF; /* sky blue info */
}

body, .reveal, .slides{
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  color:var(--text);
  background:var(--bg);
}

.reveal .slides section{
  padding:48px;
  background-color: var(--bg);
}

.reveal h1, .reveal h2, .reveal h3{
  color:var(--text);
  font-weight:700;
  letter-spacing:-0.02em;
}

.reveal h1{
  font-size:3.2rem;
  margin-bottom:.5rem;
  color:var(--primary); /* Racing red for main titles */
}

.reveal h2{
  font-size:2rem;
  color:var(--text);
  border-bottom:3px solid var(--accent);
  padding-bottom:0.5rem;
}

.reveal h3{
  color:var(--accent);
}

.reveal p{
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.6;
}

/* Card style for content sections */
.panel{
  background: linear-gradient(135deg, rgba(255,45,85,0.08), rgba(255,140,66,0.05));
  border-left:4px solid var(--primary);
  padding:1.1rem 1.6rem;
  border-radius:8px;
}

/* Small kicker */
.kicker{
  color:var(--accent);
  font-weight:700;
  letter-spacing:0.08em;
  text-transform:uppercase;
  font-size:0.85rem;
}

/* Footer */
.reveal footer{
  color:var(--muted);
  font-size:.9rem;
  margin-top:1rem;
}

/* Marp adjustments */
section{
  background:var(--bg);
}

/* Accent button style for call-to-action */
.cta{
  display:inline-block;
  padding:0.8rem 1.4rem;
  background:var(--primary);
  color:#fff;
  border-radius:6px;
  font-weight:700;
  text-decoration:none;
  transition: all 0.3s ease;
}

.cta:hover{
  background:var(--accent);
  transform:translateY(-2px);
  box-shadow: 0 8px 16px rgba(255,45,85,0.3);
}

/* Logo sizing */
.rally-logo{
  height:56px;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
}

/* Code blocks */
pre {
  background: #0F0F11;
  color: #64D2FF;
  padding: 12px;
  border-left:3px solid var(--accent);
  border-radius: 6px;
  overflow:auto;
  font-size:0.9rem;
}

code{
  color:var(--accent);
  font-weight:500;
}

/* Lists */
.reveal ul, .reveal ol{
  text-align: left;
}

.reveal li{
  margin:0.5rem 0;
  color:var(--text);
}

.reveal li strong{
  color:var(--primary);
}

/* Simple layout helpers */
.row{
  display:flex;
  gap:24px;
  align-items:center;
}

.col{
  flex:1;
}

/* Racing accent line */
.racing-line{
  height:2px;
  background: linear-gradient(90deg, var(--primary), var(--accent), transparent);
  margin:1rem 0;
}

@media (max-width:900px){
  .reveal h1{
    font-size:2.2rem;
  }
  .reveal h2{
    font-size:1.4rem;
  }
}
