/* Buchla — Post Format Badge System & Per-Format Card Styles */

/* ── Badge Row ── */
.format-badge-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 9px;
}

.format-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  flex-shrink: 0;
}

.format-badge img {
  width: 20px;
  height: 20px;
  display: block;
}

.format-label {
  font-family: system-ui, -apple-system, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.09375rem;
  text-transform: uppercase;
}

/* ── Per-format badge backgrounds ── */
.format-badge--quote  { background: var(--wp--preset--color--primary); }
.format-badge--audio  { background: var(--wp--preset--color--tertiary); }
.format-badge--video  { background: var(--wp--preset--color--tertiary); }
.format-badge--image  { background: var(--wp--preset--color--contrast); }
.format-badge--status { background: var(--wp--preset--color--tertiary); }
.format-badge--aside  { background: var(--wp--preset--color--secondary); }
.format-badge--link   { background: var(--wp--preset--color--secondary); }

/* ── Per-format label colours ── */
.format-badge--quote  + .format-label { color: var(--wp--preset--color--primary); }
.format-badge--audio  + .format-label { color: var(--wp--preset--color--tertiary); }
.format-badge--video  + .format-label { color: var(--wp--preset--color--tertiary); }
.format-badge--image  + .format-label { color: var(--wp--preset--color--contrast); }
.format-badge--status + .format-label { color: var(--wp--preset--color--tertiary); }
.format-badge--aside  + .format-label { color: var(--wp--preset--color--secondary); }
.format-badge--link   + .format-label { color: var(--wp--preset--color--secondary); }

/* ── Quote card ── */
.post-format-quote {
  background: var(--wp--preset--color--primary);
  border: none;
}

.post-format-quote .format-label {
  color: rgba(255, 255, 255, 0.4);
}

.post-format-quote blockquote {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 0.8125rem;
  color: var(--buchla--color--on-accent);
  font-style: italic;
  line-height: 1.65;
  margin: 0;
}

.post-format-quote cite {
  font-size: 0.6875rem;
  color: rgba(255, 255, 255, 0.4);
  font-style: normal;
  display: block;
  margin-top: 7px;
  font-family: system-ui, -apple-system, sans-serif;
}

/* ── Status card ── */
.post-format-status {
  background: var(--wp--preset--color--tertiary);
  border: none;
}

.post-format-status .format-label {
  color: rgba(255, 255, 255, 0.5);
}

.post-format-status .post-card__body {
  color: var(--buchla--color--on-accent);
  font-style: italic;
}

/* ── Aside card ── */
.post-format-aside {
  background: color-mix(in srgb, var(--buchla--color--surface) 55%, transparent);
  border-style: dashed;
}

/* ── Link card ── */
.post-format-link .post-card__title a {
  color: var(--wp--preset--color--primary);
}

.post-format-link .post-card__source {
  font-size: 0.625rem;
  color: var(--buchla--color--muted);
  font-family: system-ui, -apple-system, sans-serif;
  display: block;
  margin-top: 6px;
}

/* ── Audio player ── */
.post-format-audio .wp-block-audio audio {
  display: none;
}

.post-format-audio .audio-player {
  background: var(--wp--preset--color--background);
  border-radius: 3px;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
}

.post-format-audio .audio-player__play {
  width: 22px;
  height: 22px;
  background: var(--wp--preset--color--tertiary);
  border-radius: 50%;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.post-format-audio .audio-player__play svg {
  width: 10px;
  height: 10px;
  fill: var(--buchla--color--on-accent);
  margin-left: 1px;
}

.post-format-audio .audio-player__scrubber {
  flex: 1;
  height: 2px;
  background: var(--buchla--color--border);
  border-radius: 1px;
  position: relative;
  cursor: pointer;
}

.post-format-audio .audio-player__progress {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: var(--wp--preset--color--tertiary);
  border-radius: 1px;
  pointer-events: none;
  width: 0%;
  transition: width 0.1s linear;
}

.post-format-audio .audio-player__time {
  font-size: 0.625rem;
  color: var(--buchla--color--muted);
  font-family: system-ui, -apple-system, sans-serif;
  flex-shrink: 0;
  min-width: 32px;
  text-align: right;
}

/* ── Image card ── */
.post-format-image .post-card__thumb {
  height: 80px;
  background: var(--buchla--color--surface);
}

/* ── Video card ── */
.post-format-video .post-card__thumb {
  height: 80px;
  background: var(--wp--preset--color--contrast);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Single post format wrappers */
.single-post-format-quote,
.single-post-format-status {
  padding: 24px;
  border-radius: 4px;
}

.single-post-format-quote {
  background: var(--wp--preset--color--primary);
}

.single-post-format-status {
  background: var(--wp--preset--color--tertiary);
}
