/* Space-inspired color palette */
:root {
  --primary: #1a223f;
  --secondary: #2e3a5e;
  --accent: rgba(0, 0, 210, 0.7);
  --background: #f5f7fa;
  --text: #222;
  --heading: #1a223f;
  --link: #4fd1c5;
  --link-hover: rgba(0, 0, 210, 1);
  --btn-link-hover: #fff;
}

body {
  background: var(--background);
  color: var(--text);
  font-family: 'Segoe UI', 'Roboto', Arial, sans-serif;
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

header {
  background: var(--primary);
  color: #fff;
  padding: 2rem 0 1rem 0;
  text-align: center;
  box-shadow: 0 2px 8px rgba(26,34,63,0.08);
}

header h1 {
  margin: 0;
  font-size: 2.5rem;
  letter-spacing: 2px;
}

nav {
  margin-top: 1rem;
}

nav a {
  color: var(--accent);
  text-decoration: none;
  margin: 0 1rem;
  font-weight: 500;
  transition: color 0.2s;
}

nav a:hover {
  color: var(--link-hover);
}

main {
  max-width: 900px;
  margin: 2rem auto;
  background: #fff;
  padding: 2rem;
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(46,58,94,0.08);
}

h2, h3, h4 {
  color: var(--heading);
}

a {
  color: var(--accent);
  text-decoration: underline;
}

a:hover {
  color: var(--link-hover);
}
/* 
ul, ol {
  margin-left: 2rem;
} */

button, .btn {
  background: var(--accent);
  color: #fff;
  border: none;
  padding: 0.75rem 1.5rem;
  border-radius: 6px;
  font-size: 1rem;
  cursor: pointer;
  transition: background 0.2s;
}

button:hover, .btn:hover {
  background: var(--btn-link-hover);
}

footer {
  background: var(--secondary);
  color: #fff;
  text-align: center;
  padding: 1rem 0;
  margin-top: 3rem;
  font-size: 0.95rem;
}

/* Requirements Table */
.requirements-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  background: #f9fbfd;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(46,58,94,0.05);
}

.requirements-table th,
.requirements-table td {
  border: 1px solid #e3e8f0;
  padding: 0.75rem 1rem;
  text-align: left;
}

.requirements-table th {
  background: var(--secondary);
  color: #fff;
  font-weight: 600;
}

.requirements-table tr:nth-child(even) {
  background: #f1f5fa;
}

/* Bash code block styling */
.language-bash {
  background: #23272e;
  color: #e0e6f0;
  font-family: 'Fira Mono', 'Consolas', 'Menlo', monospace;
  font-size: 1em;
  border-radius: 6px;
  padding: 1em 1.2em;
  margin: 1.2em 0;
  overflow-x: auto;
  box-shadow: 0 2px 8px rgba(26,34,63,0.08);
  line-height: 1.5;
  display: block;
  white-space: pre;
}

blockquote {
  background: #f1f5fa;
  border-left: 4px solid var(--accent);
  margin: 1.5em 0;
  padding: 1em 1.5em;
  border-radius: 6px;
  color: #2e3a5e;
  font-style: italic;
  box-shadow: 0 2px 8px rgba(46,58,94,0.04);
}

/* Inline code styling */
code {
  background: #ececef;
  color: #1a223f;
  font-family: 'Fira Mono', 'Consolas', 'Menlo', monospace;
  font-size: 0.98em;
  border-radius: 4px;
  padding: 0.15em 0.4em;
  margin: 0 0.1em;
  word-break: break-word;
}

.language-text {
  background: #ececef;
  color: #1a223f;
  font-family: 'Fira Mono', 'Consolas', 'Menlo', monospace;
  font-size: 1em;
  border-radius: 6px;
  padding: 1em 1.2em;
  margin: 1.2em 0;
  overflow-x: auto;
  box-shadow: 0 2px 8px rgba(26,34,63,0.08);
  line-height: 1.5;
  display: block;
  white-space: pre;
}

/* Responsive */
@media (max-width: 600px) {
  main {
    padding: 1rem;
  }
  header h1 {
    font-size: 1rem;
  }
}


.video-container {
  position: relative;
  width: 100%; /* Or any desired width, e.g., 80% */
  padding-bottom: 56.25%; /* For a 16:9 aspect ratio (9 / 16 = 0.5625) */
  //height: 0;
  overflow: hidden; /* Crucial for clipping content that might overflow */
  max-width: 640px; /* Optional: set a max width for the video container */
  margin: 0 auto; /* Optional: center the container */
}

.video-container video {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  height: auto%
    display: block;
  object-fit: contain; /* Ensures the video fits within the container, adding letterboxing if aspect ratios differ */
}
