/* ============================================
   Workshop — Custom Styles
   ============================================ */

/* --- Prompt Recipe Blocks --- */
.prompt-recipe {
  background: linear-gradient(135deg, #f0f4ff 0%, #e8f0fe 100%);
  border-left: 5px solid #4285f4;
  border-radius: 8px;
  padding: 1.2em 1.5em;
  margin: 1.5em 0;
  font-family: 'Fira Code', 'Consolas', monospace;
  font-size: 0.92em;
  line-height: 1.7;
  position: relative;
  white-space: pre-wrap;
}

.prompt-recipe::before {
  content: "🧪 PROMPT RECIPE";
  display: block;
  font-family: system-ui, -apple-system, sans-serif;
  font-weight: 700;
  font-size: 0.78em;
  letter-spacing: 0.1em;
  color: #4285f4;
  margin-bottom: 0.8em;
  text-transform: uppercase;
}

/* Dark mode */
.quarto-dark .prompt-recipe {
  background: linear-gradient(135deg, #1e293b 0%, #1a2332 100%);
  border-left-color: #60a5fa;
}

.quarto-dark .prompt-recipe::before {
  color: #60a5fa;
}

/* --- Confidence Traffic Light --- */
.confidence-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  font-size: 0.82em;
  font-weight: 600;
  padding: 0.25em 0.8em;
  border-radius: 20px;
  margin-left: 0.5em;
  vertical-align: middle;
}

.confidence-high {
  background: #dcfce7;
  color: #166534;
}

.confidence-medium {
  background: #fef9c3;
  color: #854d0e;
}

.confidence-low {
  background: #fee2e2;
  color: #991b1b;
}

.quarto-dark .confidence-high { background: #14532d; color: #86efac; }
.quarto-dark .confidence-medium { background: #713f12; color: #fde68a; }
.quarto-dark .confidence-low { background: #7f1d1d; color: #fca5a5; }

/* --- Session Header Badges --- */
.session-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6em;
  margin: 0.5em 0 1.5em 0;
}

.session-meta .badge {
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  font-size: 0.82em;
  font-weight: 500;
  padding: 0.3em 0.9em;
  border-radius: 6px;
  background: #f1f5f9;
  color: #475569;
  border: 1px solid #e2e8f0;
}

.quarto-dark .session-meta .badge {
  background: #334155;
  color: #cbd5e1;
  border-color: #475569;
}

/* --- Instructor Note Callouts --- */
.callout-instructor {
  border-left-color: #8b5cf6 !important;
}

/* --- Tabset polish --- */
.nav-tabs .nav-link.active {
  font-weight: 600;
}

/* --- Schedule table --- */
.schedule-table td {
  vertical-align: top;
  padding: 0.7em 1em;
}

.schedule-table .break-row {
  background: #f8fafc;
  font-style: italic;
  text-align: center;
}

.quarto-dark .schedule-table .break-row {
  background: #1e293b;
}

/* --- Copy-paste friendliness --- */
.prompt-recipe .sourceCode {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}
