/* Article-specific styles (prose enhancements) */

/* Additional typography for markdown content */
.article-content hr {
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin: 3rem 0;
}

.article-content strong {
  color: #fff;
  font-weight: 600;
}

.article-content em {
  font-style: italic;
}

/* Tables */
.article-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 2rem 0;
  font-size: 0.95rem;
}

.article-content th,
.article-content td {
  padding: 1rem;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.article-content th {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--brass-bright);
  background: rgba(255, 255, 255, 0.02);
}

.article-content tr:hover td {
  background: rgba(255, 255, 255, 0.02);
}

/* Inline code */
.article-content :not(pre) > code {
  background: rgba(255, 255, 255, 0.08);
  padding: 0.2em 0.4em;
  border-radius: 3px;
  font-size: 0.85em;
}

/* Footnotes */
.article-content .footnotes {
  margin-top: 4rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 0.9rem;
}

.article-content .footnotes ol {
  color: rgba(255, 255, 255, 0.6);
}

/* Definition lists */
.article-content dl {
  margin: 2rem 0;
}

.article-content dt {
  font-family: var(--font-heading);
  font-weight: 700;
  color: var(--brass-bright);
  margin-bottom: 0.5rem;
}

.article-content dd {
  margin-left: 1.5rem;
  margin-bottom: 1.5rem;
  color: rgba(255, 255, 255, 0.8);
}

/* Task lists */
.article-content input[type="checkbox"] {
  margin-right: 0.5rem;
  accent-color: var(--brass);
}

/* Keyboard shortcuts */
.article-content kbd {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 4px;
  padding: 0.1em 0.4em;
  font-family: 'SF Mono', 'Fira Code', monospace;
  font-size: 0.85em;
}

/* Callout/aside boxes */
.article-content aside,
.article-content .callout {
  background: rgba(182, 143, 64, 0.08);
  border-left: 4px solid var(--brass);
  padding: 1.5rem;
  margin: 2rem 0;
}

.article-content aside p:last-child,
.article-content .callout p:last-child {
  margin-bottom: 0;
}

/* Video embeds */
.article-content .video-embed {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin: 2rem 0;
}

.article-content .video-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
