/* Simple, clean, modern styles */

:root{
    --bg:#0f1724;
    --card:#0b1220;
    --accent:#7dd3fc;
    --muted:#9ca3af;
    --glass: rgba(255,255,255,0.03);
    --radius:16px;
    --maxwidth:1100px;
  }
  
  *{box-sizing:border-box}
  html,body{height:100%}
  body{
    margin:0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    background: linear-gradient(180deg,#071029 0%, #071a2a 100%);
    color:#e6eef6;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:24px;
  }
  
  .container{
    width:100%;
    max-width:var(--maxwidth);
  }
  
  /* Header */
  .site-header{
    text-align:center;
    margin-bottom:22px;
  }
  .logo{
    margin:0;
    font-size:2rem;
    letter-spacing:0.6px;
  }
  .logo span{ color:var(--accent) }
  .tagline{ color:var(--muted); margin-top:6px }
  
  /* Cards */
  .cards{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:20px;
    margin:18px 0;
  }
  .card{
    display:block;
    text-decoration:none;
    color:inherit;
    border-radius:var(--radius);
    background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
    padding:22px;
    transition:transform .22s ease, box-shadow .22s ease;
    box-shadow: 0 6px 18px rgba(2,6,23,0.6);
    border:1px solid rgba(255,255,255,0.03);
  }
  .card:hover{ transform:translateY(-6px); box-shadow:0 14px 30px rgba(2,6,23,0.7) }
  
  .card-inner h2{ margin:0 0 8px 0; font-size:1.25rem }
  .card-inner p{ margin:0; color:var(--muted) }
  
  /* How-to section */
  .howto{
    margin-top:28px;
    background:var(--glass);
    padding:16px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,0.02);
  }
  .howto h3{ margin:0 0 8px 0 }
  .howto ol{ margin:0 0 8px 18px; color:var(--muted) }
  .note{ color:var(--muted); font-size:0.95rem }
  
  /* Footer */
  .site-footer{ margin-top:28px; color:var(--muted) }
  
  /* Chapter page helpers */
  .chapter-container{
    max-width:900px;
    margin:20px auto;
    padding:18px;
  }
  .chapter-header{ display:flex; align-items:center; gap:12px; margin-bottom:12px }
  .breadcrumb{ color:var(--muted); font-size:0.95rem }
  
  /* Responsive video wrapper — maintains aspect ratio */
  .video-wrap{
    position:relative;
    width:100%;
    padding-bottom:56.25%; /* 16:9 ratio */
    background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.00));
    border-radius:8px;
    overflow:hidden;
    box-shadow: 0 8px 30px rgba(2,6,23,0.6);
    border:1px solid rgba(255,255,255,0.02);
  }
  
  /* Make any iframe inside fill the wrapper */
  .video-wrap iframe,
  .video-wrap object,
  .video-wrap embed{
    position:absolute;
    top:0; left:0;
    width:100%; height:100%;
    border:0;
  }
  
  /* small responsive tweaks */
  @media (max-width:540px){
    .logo{ font-size:1.6rem }
    .cards{ gap:12px }
  }
  