/* ============================================
   UneeQ Documentation Theme - Unified Design System
   Based on Kiosk Application styling
   Adapted for Docsify framework
   ============================================ */

/* Import Manrope font from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap');

:root {
  /* UneeQ Brand Colors (March 2023) - Official Brand Guidelines */
  --uneeq-primary: #F47C6A;         /* Orange - primary accent */
  --uneeq-blue: #5F56DA;            /* Blue - links and accents */
  --uneeq-pink: #FF1888;            /* Pink - alternative accent */
  --uneeq-yellow: #FFB648;          /* Yellow - warnings and highlights */
  --uneeq-liquorice: #232236;       /* Secondary background (dark mode) */
  --uneeq-dark-bg: #0E0B33;         /* Official dark blue gradient start */
  --uneeq-dark: #232236;            /* Liquorice - dark text color */
  --uneeq-dark-light: #34495E;      /* Lighter navy for secondary text */
  --uneeq-light: #FFFFFF;           /* Clean white */
  --uneeq-light-gray: #F8F9FA;      /* Very light gray */
  --uneeq-gray: #6C757D;            /* Medium gray */

  /* Alert Colors */
  --success-color: #28A745;
  --warning-color: #FFC107;
  --error-color: #DC3545;
  --info-color: var(--uneeq-blue);

  /* Dark Mode Colors - Official brand with adjusted brightness */
  --dark-bg-primary: #0E0B33;       /* Official dark blue gradient start */
  --dark-bg-secondary: #232236;     /* Liquorice - secondary background */
  --dark-text-primary: #FFFFFF;     /* Pure white for high contrast */
  --dark-text-secondary: #B0B7C3;   /* Light blue-gray for secondary text */
  --dark-border: #3D3A4D;           /* Subtle borders */

  /* Brightened brand colors for dark mode visibility */
  --uneeq-accent-blue-dark: #7F77E6;      /* Brightened blue for dark mode */
  --uneeq-accent-orange-dark: #FF9B8F;    /* Brightened orange for dark mode */
  --uneeq-accent-pink-dark: #FF6BA8;      /* Brightened pink for dark mode */

  /* Theme colors for Docsify */
  --theme-color: var(--uneeq-primary);
  --theme-color-dark: var(--uneeq-pink);

  /* Light mode content colors */
  --content-background: #FFFFFF;    /* Clean white background */
  --content-text: #232236;          /* Liquorice - excellent readability */
  --content-border: #e2e8f0;

  /* Sidebar colors */
  --sidebar-background: #FFFFFF;    /* Pure white sidebar */
  --background-color: var(--content-background);
}

/* Base Styles */
* {
  box-sizing: border-box;
}

html {
  background-color: var(--content-background);
}

body {
  font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  line-height: 1.6;
  color: var(--uneeq-dark);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--content-background);
  font-size: 16px;
}

#main,
.app-main,
.content {
  background-color: var(--content-background);
}

.markdown-section {
  background-color: var(--content-background);
  color: var(--content-text);
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

/* Typography - Light Mode: Orange for Main Headers, Dark for Body */
.markdown-section h1 {
  font-size: 2.5rem;
  color: var(--uneeq-primary);
  font-weight: 600;
  margin-bottom: 1rem;
  line-height: 1.3;
}

.markdown-section h2 {
  font-size: 2rem;
  color: var(--uneeq-dark);
  font-weight: 600;
  margin-bottom: 1rem;
  margin-top: 2rem;
  line-height: 1.3;
  border-bottom: 2px solid var(--uneeq-primary);
  padding-bottom: 0.5rem;
}

.markdown-section h3 {
  font-size: 1.5rem;
  color: var(--uneeq-dark);
  font-weight: 600;
  margin-bottom: 1rem;
  margin-top: 1.5rem;
  line-height: 1.3;
}

.markdown-section h4 {
  font-size: 1.25rem;
  color: var(--uneeq-dark);
  font-weight: 600;
  margin-bottom: 1rem;
  line-height: 1.3;
}

.markdown-section p {
  margin-bottom: 1.5rem;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 400;  /* Normal weight, but Manrope renders well */
}

/* Logo Sizing Constraints - WCAG and UX Best Practices */
.markdown-section img[src*="logo"],
.markdown-section img[src*="Logo"],
.markdown-section img[alt*="logo"],
.markdown-section img[alt*="Logo"] {
  max-width: 330px;
  max-height: 90px;
  height: auto;
  width: auto;
  object-fit: contain;
}

/* Smaller logo size in footers or secondary locations */
.markdown-section div[align="center"]:last-of-type img[src*="logo"],
.markdown-section div[align="center"]:last-of-type img[alt*="Logo"] {
  max-width: 270px;
  max-height: 75px;
}

/* Light/Dark Mode Logo Visibility */
/* Show dark logo in light mode, hide in dark mode */
.logo-light-mode {
  display: inline-block;
}

.dark .logo-light-mode {
  display: none;
}

/* Hide white logo in light mode, show in dark mode */
.logo-dark-mode {
  display: none;
}

.dark .logo-dark-mode {
  display: inline-block;
}

/* Links - Light Mode: Blue */
.markdown-section a {
  color: var(--uneeq-blue);
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  border-bottom: 1px solid transparent;
}

.markdown-section a:hover {
  color: var(--uneeq-primary);
  border-bottom-color: var(--uneeq-primary);
}

/* Step Container - Light Mode: Orange Border and Shadow */
.step-container {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 2rem 0 1.5rem 0;
  padding: 1.5rem;
  background: linear-gradient(135deg, var(--uneeq-light-gray) 0%, var(--uneeq-light) 100%);
  border-radius: 12px;
  border-left: 4px solid var(--uneeq-primary);
  box-shadow: 0 4px 15px rgba(244, 124, 106, 0.1);
}

/* Step Number - Light Mode: Orange/Pink Gradient */
.step-number {
  background: linear-gradient(135deg, var(--uneeq-primary), var(--uneeq-pink));
  color: var(--uneeq-light);
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.25rem;
  flex-shrink: 0;
  box-shadow: 0 4px 15px rgba(244, 124, 106, 0.3);
}

.step-content {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--uneeq-dark);
  flex: 1;
}

.step-content h2,
.step-content h3 {
  margin-top: 0;
}

/* Alert Boxes */
.alert-box {
  display: flex;
  gap: 1rem;
  padding: 1.5rem;
  margin: 1.5rem 0;
  border-radius: 12px;
  border-left: 4px solid;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  align-items: flex-start;
}

.alert-box svg {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  margin-top: 0.125rem;
}

/* Alert Info - Light Mode: Blue Background */
.alert-info {
  background: linear-gradient(135deg, rgba(95, 86, 218, 0.1) 0%, rgba(95, 86, 218, 0.05) 100%);
  border-left-color: var(--info-color);
  color: var(--uneeq-dark);
}

.alert-info svg {
  color: var(--info-color);
}

.alert-success {
  background: linear-gradient(135deg, rgba(40, 167, 69, 0.1) 0%, rgba(40, 167, 69, 0.05) 100%);
  border-left-color: var(--success-color);
  color: var(--uneeq-dark);
}

.alert-success svg {
  color: var(--success-color);
}

.alert-warning {
  background: linear-gradient(135deg, rgba(255, 193, 7, 0.1) 0%, rgba(255, 193, 7, 0.05) 100%);
  border-left-color: var(--warning-color);
  color: var(--uneeq-dark);
}

.alert-warning svg {
  color: var(--warning-color);
}

.alert-error {
  background: linear-gradient(135deg, rgba(220, 53, 69, 0.1) 0%, rgba(220, 53, 69, 0.05) 100%);
  border-left-color: var(--error-color);
  color: var(--uneeq-dark);
}

.alert-error svg {
  color: var(--error-color);
}

/* Code Blocks */
pre, code {
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 0.9rem;
}

.markdown-section code:not([class*="lang-"]):not([class*="language-"]) {
  background: var(--uneeq-light-gray);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  color: var(--uneeq-primary);
  font-weight: 500;
  font-size: 0.85em;
}

.markdown-section pre {
  background: var(--uneeq-dark);
  color: var(--uneeq-light);
  padding: 1.5rem;
  border-radius: 8px;
  overflow-x: auto;
  margin: 1.5rem 0;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  position: relative;
}

.markdown-section pre code {
  background: transparent;
  padding: 0;
  color: inherit;
  font-size: 1rem;
  line-height: 1.5;
  display: block;
  overflow-x: auto;
}

/* Enhanced Code Blocks with UneeQ Styling */
.code-block {
  background: #f7fafc;
  color: #2d3748;
  border-radius: 8px;
  padding: 1rem;
  overflow-x: auto;
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 1rem;
  line-height: 1.6;
  white-space: pre-line;
  margin: 1rem 0;
  border-left: 4px solid var(--uneeq-primary);
  border: 1px solid var(--content-border);
}

/* YAML Code Blocks */
.yaml-block {
  background: #f7fafc;
  color: #2d3748;
  border-radius: 8px;
  padding: 1rem;
  overflow-x: auto;
  font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 1rem;
  line-height: 1.6;
  white-space: pre;
  margin: 1rem 0;
  border-left: 4px solid var(--uneeq-blue);
  border: 1px solid var(--content-border);
}

/* Copy Code Button */
.docsify-copy-code-button {
  position: absolute !important;
  top: 0.5em !important;
  right: 0.5em !important;
  padding: 0.4em 0.8em !important;
  opacity: 0.8 !important;
  background: var(--theme-color) !important;
  border-radius: 4px !important;
  border: 0 !important;
  color: white !important;
  font-size: 0.8em !important;
  z-index: 1 !important;
}

.docsify-copy-code-button:hover {
  opacity: 1 !important;
}

/* Blockquotes */
.markdown-section blockquote {
  background: rgba(244, 124, 106, 0.1);
  border-left: 4px solid var(--uneeq-primary);
  border-radius: 4px;
  padding: 1rem;
  margin: 1rem 0;
  color: inherit;
}

.markdown-section blockquote p {
  margin: 0;
}

/* Tables */
.markdown-section table {
  width: 100%;
  border-collapse: collapse;
  margin: 2rem 0;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  border-radius: 8px;
  overflow: hidden;
}

.markdown-section th,
.markdown-section td {
  padding: 1rem;
  text-align: left;
  border-bottom: 1px solid rgba(244, 124, 106, 0.15);
}

.markdown-section th {
  background: linear-gradient(135deg, var(--uneeq-primary), var(--uneeq-blue));
  color: var(--uneeq-light);
  font-weight: 600;
}

.markdown-section tr:nth-child(even) {
  background: rgba(244, 124, 106, 0.05);
}

/* Lists */
.markdown-section ul,
.markdown-section ol {
  margin: 1rem 0;
  padding-left: 2rem;
}

.markdown-section li {
  margin-bottom: 0.5rem;
  line-height: 1.6;
}

/* Sidebar Styling */
.sidebar {
  background-color: var(--sidebar-background);
  border-right: 1px solid var(--content-border);
}

.sidebar .sidebar-nav li strong {
  color: var(--uneeq-secondary);
  font-weight: 600;
}

.sidebar .sidebar-nav li a {
  color: var(--uneeq-gray);
  transition: color 0.3s ease;
}

.sidebar .sidebar-nav li a:hover {
  color: var(--uneeq-primary);
}

.sidebar .sidebar-nav li.active > a {
  color: var(--uneeq-primary);
  border-right: 3px solid var(--uneeq-primary);
  font-weight: 600;
}

/* Cover Page */
.cover {
  background: var(--background-color) !important;
}

.cover.show {
  background: var(--background-color) !important;
}

.cover h1 {
  background: linear-gradient(135deg, #F47C6A 0%, #5F56DA 50%, #FF1888 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.cover h2 {
  color: var(--uneeq-gray);
}

.cover-main img {
  max-width: 420px;  /* Larger on cover page but still constrained */
  max-height: 120px;
  height: auto;
  width: auto;
  object-fit: contain;
}

/* Dark Mode Toggle Button */
.dark-mode-toggle {
  position: fixed;
  top: 1rem;
  left: 1rem;
  z-index: 1000;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--uneeq-primary), var(--uneeq-blue));
  border: none;
  color: white;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(244, 124, 106, 0.3);
  transition: transform 0.3s ease;
}

.dark-mode-toggle:hover {
  transform: scale(1.1);
}

.dark-mode-toggle svg {
  width: 20px;
  height: 20px;
}

/* Utility Classes */
.hidden {
  display: none !important;
}

.text-center { text-align: center; }
.text-right { text-align: right; }
.mb-0 { margin-bottom: 0 !important; }
.mt-2 { margin-top: 2rem; }
.mb-2 { margin-bottom: 2rem; }

/* ============================================
   MiniPrem-Specific Components
   ============================================ */

/* API Endpoint Styles */
.api-endpoint {
  margin: 1.5em 0;
  border: 1px solid var(--content-border);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.api-header {
  display: flex;
  background: var(--uneeq-light-gray);
  padding: 10px 15px;
  align-items: center;
  border-bottom: 1px solid var(--content-border);
}

.api-method {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 3px;
  font-weight: bold;
  margin-right: 10px;
  min-width: 60px;
  text-align: center;
  color: white;
}

.method-get { background: #0066BB; }
.method-post { background: #009955; }
.method-put { background: #AA7700; }
.method-delete { background: #CC3311; }

.api-url-wrapper {
  flex-grow: 1;
  display: flex;
  align-items: center;
}

.api-base-url {
  color: var(--uneeq-gray);
  margin-right: 5px;
}

.api-url-path {
  color: var(--uneeq-dark);
}

.api-try-btn {
  background: var(--uneeq-primary);
  color: white;
  border: none;
  border-radius: 4px;
  padding: 5px 15px;
  cursor: pointer;
  font-weight: bold;
  transition: all 0.3s ease;
}

.api-try-btn:hover {
  background: var(--uneeq-secondary);
  transform: translateY(-1px);
}

.api-request-body {
  background: var(--uneeq-light-gray);
  padding: 10px 15px;
  border-bottom: 1px solid var(--content-border);
}

.api-request-body textarea {
  width: 100%;
  background: white;
  color: var(--uneeq-dark);
  border: 1px solid var(--content-border);
  padding: 10px;
  font-family: monospace;
  resize: vertical;
  min-height: 100px;
  border-radius: 4px;
}

.api-response-container {
  background: white;
}

.api-response-header {
  padding: 10px 15px;
  background: var(--uneeq-light-gray);
  border-bottom: 1px solid var(--content-border);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.api-status {
  display: inline-block;
  padding: 3px 8px;
  border-radius: 3px;
  font-size: 12px;
  margin-left: 10px;
  color: white;
}

.status-success { background: var(--success-color); }
.status-error { background: var(--error-color); }

.api-response-body {
  padding: 15px;
  max-height: 400px;
  overflow: auto;
  font-family: monospace;
}

/* Terminal Container */
.terminal-container {
  margin: 1.5em 0;
  border: 1px solid var(--content-border);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.terminal-header {
  background: var(--uneeq-light-gray);
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid var(--content-border);
}

.terminal-title {
  font-weight: bold;
  color: var(--uneeq-dark);
}

.terminal-select {
  background: white;
  color: var(--uneeq-dark);
  border: 1px solid var(--content-border);
  border-radius: 3px;
  padding: 5px 10px;
}

.terminal-output {
  background: var(--uneeq-dark);
  color: var(--uneeq-light);
  font-family: monospace;
  padding: 15px;
  min-height: 200px;
  max-height: 500px;
  overflow-y: auto;
  white-space: pre-wrap;
  line-height: 1.4;
}

.terminal-line {
  margin: 0;
  padding: 2px 0;
}

.log-info { color: #4dabf7; }
.log-warn { color: #ffd93d; }
.log-error { color: #ff6b6b; }
.log-debug { color: #868e96; }

/* Logs Container */
.logs-container {
  margin: 1em 0;
  border: 1px solid var(--content-border);
  border-radius: 8px;
  background: white;
  color: var(--uneeq-dark);
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.logs-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5em;
  background: var(--uneeq-light-gray);
  border-bottom: 1px solid var(--content-border);
}

.logs-select {
  padding: 0.3em;
  background: white;
  color: var(--uneeq-dark);
  border: 1px solid var(--content-border);
  border-radius: 3px;
  min-width: 150px;
}

.logs-clear {
  padding: 0.3em 0.8em;
  background: var(--uneeq-primary);
  color: white;
  border: none;
  border-radius: 3px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.logs-clear:hover {
  background: var(--uneeq-secondary);
}

.logs-output {
  padding: 1em;
  font-family: 'Consolas', 'Monaco', monospace;
  font-size: 0.9em;
  line-height: 1.4;
  max-height: 400px;
  overflow-y: auto;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/* Swagger UI Integration */
.swagger-ui {
  margin: 1.5em 0;
  border: 1px solid var(--content-border);
  border-radius: 8px;
  overflow: hidden;
}

.swagger-container {
  margin: 1.5em 0;
  border: 1px solid var(--content-border);
  border-radius: 8px;
  overflow: hidden;
}

/* ============================================
   Dark Mode Styles
   ============================================ */

.dark {
  --content-background: var(--dark-bg-primary);
  --content-text: var(--dark-text-primary);
  --content-border: var(--dark-border);
  --sidebar-background: var(--dark-bg-secondary);
  --background-color: var(--dark-bg-primary);
}

/* Dark Mode Body Text: Ensure Proper Off-White Color */
.dark body,
.dark html,
.dark #main,
.dark .app-main {
  background-color: var(--dark-bg-primary);
  color: var(--dark-text-primary);
}

.dark .markdown-section {
  background-color: var(--dark-bg-primary);
  color: var(--dark-text-primary);
}

.dark .markdown-section p,
.dark .markdown-section li,
.dark .markdown-section td {
  color: var(--dark-text-primary) !important;
}

/* Dark Mode Typography: Heavier Weights to Reduce Halation */
.dark .markdown-section h1,
.dark .markdown-section h2,
.dark .markdown-section h3,
.dark .markdown-section h4,
.dark .markdown-section h5,
.dark .markdown-section h6 {
  color: var(--dark-text-primary);
  font-weight: 700;
  letter-spacing: 0.025em;
}

.dark .markdown-section h1 {
  color: var(--uneeq-accent-orange-dark);
}

.dark .markdown-section h2 {
  border-bottom-color: var(--uneeq-accent-orange-dark);
}

/* Dark mode links - Use brightened blue for better readability */
.dark .markdown-section a {
  color: var(--uneeq-accent-blue-dark);
}

.dark .markdown-section a:hover {
  color: var(--uneeq-accent-orange-dark);
}

.dark .step-container {
  background: linear-gradient(135deg, var(--dark-bg-secondary) 0%, var(--dark-bg-primary) 100%);
  border-left-color: var(--uneeq-accent-blue-dark);
}

.dark .step-content {
  color: var(--dark-text-primary);
}

.dark .alert-box {
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
}

.dark .alert-info {
  background: linear-gradient(135deg, rgba(95, 86, 217, 0.2) 0%, rgba(95, 86, 217, 0.1) 100%);
  color: var(--dark-text-primary);
}

.dark .alert-success {
  background: linear-gradient(135deg, rgba(40, 167, 69, 0.2) 0%, rgba(40, 167, 69, 0.1) 100%);
  color: var(--dark-text-primary);
}

.dark .alert-warning {
  background: linear-gradient(135deg, rgba(255, 193, 7, 0.2) 0%, rgba(255, 193, 7, 0.1) 100%);
  color: var(--dark-text-primary);
}

.dark .alert-error {
  background: linear-gradient(135deg, rgba(220, 53, 69, 0.2) 0%, rgba(220, 53, 69, 0.1) 100%);
  color: var(--dark-text-primary);
}

.dark .markdown-section code:not([class*="lang-"]):not([class*="language-"]) {
  background: #2a2550;
  color: var(--uneeq-accent-orange-dark);
}

.dark .markdown-section pre {
  background: #1a1530;
  box-shadow: 0 4px 15px rgba(0,0,0,0.4);
}

.dark .code-block,
.dark .yaml-block {
  background: #2a2a2a;
  color: #f8f8f2;
  border-color: var(--dark-border);
}

.dark .markdown-section table {
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}

.dark .markdown-section th,
.dark .markdown-section td {
  border-bottom-color: var(--dark-border);
}

.dark .markdown-section tr:nth-child(even) {
  background: rgba(95, 86, 217, 0.1);
}

.dark .sidebar {
  background-color: var(--dark-bg-secondary);
  border-right-color: var(--dark-border);
}

.dark .sidebar .sidebar-nav li a {
  color: var(--dark-text-secondary);
}

.dark .sidebar .sidebar-nav li a:hover {
  color: var(--uneeq-accent-blue-dark);
}

.dark .sidebar .sidebar-nav li.active > a {
  color: var(--uneeq-accent-blue-dark);
  border-right-color: var(--uneeq-accent-blue-dark);
}

/* Copyright section styling - ensure visibility in dark mode */
.markdown-section div[align="center"] strong,
.markdown-section div[align="center"] b {
  color: inherit;
}

.dark .markdown-section div[align="center"] strong,
.dark .markdown-section div[align="center"] b {
  color: var(--dark-text-primary) !important;
}

/* Dark Mode MiniPrem Components */
.dark .api-endpoint,
.dark .terminal-container,
.dark .logs-container {
  border-color: var(--dark-border);
  background: var(--dark-bg-secondary);
}

.dark .api-header,
.dark .terminal-header,
.dark .logs-header {
  background: var(--dark-bg-primary);
  border-bottom-color: var(--dark-border);
}

.dark .api-url-path,
.dark .terminal-title {
  color: var(--dark-text-primary);
}

.dark .api-request-body {
  background: var(--dark-bg-primary);
}

.dark .api-request-body textarea {
  background: var(--dark-bg-secondary);
  color: var(--dark-text-primary);
  border-color: var(--dark-border);
}

.dark .api-response-container {
  background: var(--dark-bg-secondary);
}

.dark .api-response-header {
  background: var(--dark-bg-primary);
}

.dark .terminal-select,
.dark .logs-select {
  background: var(--dark-bg-secondary);
  color: var(--dark-text-primary);
  border-color: var(--dark-border);
}

.dark .terminal-output {
  background: #1a1530;
  color: var(--dark-text-primary);
}

/* Dark mode toggle icon states */
.dark-mode-toggle .sun-icon {
  display: none;
}

.dark-mode-toggle .moon-icon {
  display: block;
}

.dark .dark-mode-toggle .sun-icon {
  display: block;
}

.dark .dark-mode-toggle .moon-icon {
  display: none;
}

/* ============================================
   Responsive Design
   ============================================ */

@media (max-width: 768px) {
  .markdown-section {
    padding: 0 1rem;
  }

  .step-container {
    flex-direction: column;
    text-align: center;
  }

  .step-number {
    width: 32px;
    height: 32px;
    font-size: 14px;
  }

  .dark-mode-toggle {
    top: 0.5rem;
    left: 0.5rem;
    width: 36px;
    height: 36px;
  }

  .code-block,
  .yaml-block {
    font-size: 0.75rem;
    padding: 0.75rem;
  }

  .markdown-section h1 {
    font-size: 2rem;
  }

  .markdown-section h2 {
    font-size: 1.5rem;
  }

  .markdown-section h3 {
    font-size: 1.25rem;
  }
}

@media (max-width: 480px) {
  .markdown-section {
    padding: 0 0.5rem;
  }

  .markdown-section h1 {
    font-size: 1.75rem;
  }

  .markdown-section h2 {
    font-size: 1.25rem;
  }

  .markdown-section h3 {
    font-size: 1.1rem;
  }
}

/* ============================================
   Print Styles
   ============================================ */

@media print {
  .page-break {
    page-break-before: always;
  }

  .no-page-break {
    page-break-inside: avoid;
  }

  body {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .step-number,
  .alert-box {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .dark-mode-toggle {
    display: none;
  }
}
