/* CCW Core — component styles for shortcode output (evidence cards, status
   badges, timeline preview). Mirrors the approved prototype's visual language.
   Uses the theme's CSS custom properties when present, with safe fallbacks so
   shortcodes still render acceptably under any theme. */

:root{
  --ccw-navy:#102A43; --ccw-slate:#334E68; --ccw-gold:#C99A2E;
  --ccw-amber:#D9822B; --ccw-line:#D9D2C2; --ccw-ink:#1F2933;
}

/* Status badges */
.ccw .badge,
.badge.b-fact,.badge.b-regulator,.badge.b-mal,.badge.b-appeal,.badge.b-alleg,.badge.b-ongoing{
  display:inline-flex;align-items:center;gap:6px;
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:10px;font-weight:500;
  letter-spacing:.04em;padding:3px 8px;border-radius:3px;text-transform:uppercase;
}
.badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.9}
.b-fact{background:#e4ede4;color:#3f6b46}
.b-regulator{background:#e9eef4;color:var(--ccw-slate,#334E68)}
.b-mal{background:#efe9d8;color:#8a6d18}
.b-appeal{background:#f7ece1;color:#b56a1f}
.b-alleg{background:#f3e7e7;color:#9b3a3a}
.b-ongoing{background:#eef1f5;color:#5b6b7b}

/* Evidence cards */
.ev-list{display:flex;flex-direction:column;gap:14px;margin:18px 0}
.ev-card{display:flex;gap:16px;border:1px solid var(--ccw-line,#D9D2C2);background:#fff;padding:18px 20px;border-radius:4px}
.ev-chip{flex:none;width:46px;height:46px;border-radius:4px;background:#f4efe3;display:flex;align-items:center;justify-content:center}
.ev-chip .mono{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;font-weight:600;color:var(--ccw-slate,#334E68)}
.ev-main{flex:1;min-width:0}
.ev-ref{font-size:11px;letter-spacing:.04em;color:var(--ccw-gold,#C99A2E)}
.ev-card h3{font-family:'Merriweather',Georgia,serif;font-size:18px;line-height:1.25;margin:4px 0 6px;color:var(--ccw-navy,#102A43);font-weight:700}
.ev-card h3 a{color:inherit;text-decoration:none}
.ev-card h3 a:hover{text-decoration:underline}
.ev-meta{font-size:11px;color:#8a94a0}
.ev-summary{font-size:13.5px;line-height:1.55;color:var(--ccw-slate,#334E68);margin:9px 0 12px}
.ev-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.ev-tags{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.ev-tags .tag{font-size:11.5px;font-family:'IBM Plex Mono',ui-monospace,monospace;background:#eef1f5;color:var(--ccw-slate,#334E68);border-radius:4px;padding:4px 9px}
.ev-tags .conf{font-size:10px;font-family:'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.04em;text-transform:uppercase;padding:4px 9px;border-radius:4px;background:#e4ede4;color:#3f6b46}
.ev-links{display:flex;gap:14px;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11.5px}
.ev-links a{color:var(--ccw-amber,#D9822B);text-decoration:none}
.ev-links a:hover{text-decoration:underline}
.ccw-empty{color:#8a94a0;font-style:italic}

/* Timeline preview (homepage) */
.tl{position:relative;padding-top:8px}
.tl .rail{position:absolute;left:0;right:0;top:34px;height:2px;background:var(--ccw-line,#D9D2C2)}
.tl .events{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;position:relative}
.tl .ev .dot{width:13px;height:13px;border-radius:50%;background:#fff;border:3px solid var(--ccw-gold,#C99A2E);position:relative;z-index:2;margin-bottom:18px}
.tl .ev .yr{font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:15px;color:var(--ccw-navy,#102A43)}
.tl .ev p{font-size:12.5px;color:var(--ccw-slate,#334E68);margin-top:7px;line-height:1.45}

@media (max-width:720px){
  .ev-card{flex-direction:column;gap:10px}
  .tl .events{grid-template-columns:repeat(2,1fr)}
  .tl .rail{display:none}
}
