/* ---- Dividend Talk stock card. Everything is scoped under .dtc so the
   Kadence theme's styles and this card's styles can't leak into each other. */
.dtc {
  --dtc-blue:#2f7bee; --dtc-blue-2:#6fb1f7; --dtc-orange:#eb6834; --dtc-teal:#1baf7a; --dtc-amber:#eda100;
  --dtc-green:#2ca24d; --dtc-red:#e05252; --dtc-grey:#8e8e8e;
  --dtc-page:#f6f8fb; --dtc-surface:#ffffff; --dtc-soft:#f2f3f5; --dtc-tint:#eaf1fd;
  --dtc-ink:#1a1a1a; --dtc-body:#3d434b; --dtc-muted:#6b7480; --dtc-line:#e3e7ed; --dtc-track:#e2e2e2;
  --dtc-radius:10px; --dtc-sticky-top:0px;
  font-family: inherit; color: var(--dtc-body); background: var(--dtc-page);
  max-width: 1120px; margin: 0 auto; padding: 16px 20px 48px; line-height: 1.5; font-size: 16px;
}
.dtc *, .dtc *::before, .dtc *::after { box-sizing: border-box; }
.dtc a:focus-visible, .dtc button:focus-visible { outline: 2px solid var(--dtc-blue); outline-offset: 2px; }

/* nav */
.dtc-nav { position: sticky; top: var(--dtc-sticky-top); z-index: 5; background: var(--dtc-page);
  padding: 10px 0; margin-bottom: 8px; }
.dtc-nav-top { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; }
.dtc-brand { font-weight:800; font-size:1.05rem; color:var(--dtc-ink); }
.dtc-view { color:var(--dtc-muted); font-size:.8rem; }
.dtc-pills { display:flex; flex-wrap:wrap; gap:8px; }
.dtc-pills::-webkit-scrollbar { display:none; }
.dtc-pills a { text-decoration:none; color:var(--dtc-blue); background:var(--dtc-tint); padding:6px 14px;
  border-radius:16px; font-size:.82rem; font-weight:600; white-space:nowrap; transition: background .15s, color .15s; }
.dtc-pills a[aria-current="true"] { background:var(--dtc-blue); color:#fff; }

/* header */
.dtc-hero { background: linear-gradient(135deg, var(--dtc-blue) 0%, var(--dtc-blue-2) 100%); padding:20px 24px;
  border-radius:var(--dtc-radius); display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:8px; }
.dtc-hero h1 { color:#fff; font-size:clamp(1.25rem, 3vw, 1.6rem); font-weight:800; margin:0; line-height:1.2; }
.dtc-hero p { color:#dce8fd; font-size:.92rem; margin:4px 0 0; }
.dtc-avatar { width:48px; height:48px; border-radius:50%; background:rgba(255,255,255,.28); display:flex;
  align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:1.15rem; flex-shrink:0; }

/* sections */
.dtc-section { scroll-margin-top: calc(var(--dtc-sticky-top) + 96px); }
.dtc-h2 { border-bottom:2px solid var(--dtc-blue); padding-bottom:6px; margin:2rem 0 1rem; color:var(--dtc-blue);
  font-weight:700; font-size:.95rem; letter-spacing:.04em; text-transform:uppercase; }
.dtc-first { padding-top:8px; }
.dtc-card { background:var(--dtc-surface); border:1px solid var(--dtc-line); border-radius:var(--dtc-radius); padding:16px 18px; }
.dtc-card h3 { font-size:1rem; font-weight:700; color:var(--dtc-ink); margin:0 0 12px; }
.dtc-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.dtc-caption { font-size:.8rem; color:var(--dtc-muted); margin:8px 0 0; }
.dtc-prose { color:var(--dtc-body); }
.dtc-prose p { margin:0 0 .7em; } .dtc-prose p:last-child { margin-bottom:0; }
.dtc-prose ul { margin:0; padding-left:1.2em; } .dtc-prose li { margin-bottom:.35em; }

/* snapshot */
.dtc-status { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; margin-bottom:6px; }
.dtc-badge { padding:6px 14px; border-radius:14px; font-size:.82rem; font-weight:700; display:inline-block; margin:0 8px 6px 0; color:#1a1a1a; }
.dtc-meta { font-size:.8rem; color:var(--dtc-muted); }
.dtc-metrics { display:grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap:14px 18px; margin:12px 0 18px; }
.dtc-metric-label { font-size:.8rem; color:var(--dtc-muted); }
.dtc-metric-value { font-size:1.45rem; font-weight:700; color:var(--dtc-ink); line-height:1.25; font-variant-numeric: tabular-nums; }

.dtc-gauge-row { display:flex; align-items:center; gap:22px; }
.dtc-gauge { position:relative; width:130px; height:130px; border-radius:50%; flex-shrink:0; }
.dtc-gauge-inner { position:absolute; inset:12px; background:var(--dtc-surface); border-radius:50%; display:flex;
  flex-direction:column; align-items:center; justify-content:center; }
.dtc-gauge-num { font-size:2rem; font-weight:800; color:var(--dtc-ink); line-height:1; }
.dtc-gauge-of { font-size:.72rem; color:var(--dtc-muted); }
.dtc-verdict { font-size:1.1rem; font-weight:700; color:var(--dtc-ink); display:flex; align-items:center; gap:8px; }
.dtc-swatch { width:12px; height:12px; border-radius:3px; flex-shrink:0; }
.dtc-desc { font-size:.9rem; color:var(--dtc-body); }
.dtc-source { font-size:.74rem; color:var(--dtc-muted); margin-top:6px; }

.dtc-dumbbell { position:relative; height:112px; margin:6px 8px 0; }
.dtc-db-row { position:absolute; left:0; right:0; height:1px; }
.dtc-db-row span.lbl { position:absolute; left:0; top:-10px; font-size:.78rem; color:var(--dtc-muted); }
.dtc-db-track { position:absolute; left:0; right:0; top:62px; height:2px; background:var(--dtc-line); }
.dtc-db-link { position:absolute; top:61px; height:4px; border-radius:2px; opacity:.35; }
.dtc-db-dot { position:absolute; width:16px; height:16px; border-radius:50%; transform:translate(-50%,-50%); top:63px; }
.dtc-db-val { position:absolute; transform:translateX(-50%); font-weight:700; color:var(--dtc-ink); font-size:.9rem; white-space:nowrap; }
.dtc-db-key { position:absolute; transform:translateX(-50%); font-size:.74rem; color:var(--dtc-muted); white-space:nowrap; }

.dtc-chips { display:flex; flex-wrap:wrap; gap:6px; }
.dtc-chips a { text-decoration:none; background:var(--dtc-soft); color:var(--dtc-ink); padding:6px 12px; border-radius:14px;
  font-size:.8rem; font-weight:600; }
.dtc-chips a:hover { background:var(--dtc-tint); color:var(--dtc-blue); }

/* years control */
.dtc-years { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:18px 0 4px; }
.dtc-years-label { font-size:.85rem; color:var(--dtc-body); font-weight:600; }
.dtc-seg { display:inline-flex; border:1px solid var(--dtc-line); border-radius:8px; overflow:hidden; background:var(--dtc-surface); }
.dtc-seg button { font:inherit; font-size:.85rem; border:0; background:transparent; color:var(--dtc-body); padding:6px 14px; cursor:pointer; }
.dtc-seg button + button { border-left:1px solid var(--dtc-line); }
.dtc-seg button[aria-pressed="true"] { background:var(--dtc-tint); color:var(--dtc-blue); font-weight:700; }

/* charts */
.dtc-live { display:inline-flex; align-items:center; gap:4px; background:rgba(44,162,77,.14); color:var(--dtc-green);
  font-size:.75rem; font-weight:700; padding:3px 10px; border-radius:12px; letter-spacing:.03em; }
.dtc-chart-title { background:var(--dtc-tint); border-radius:6px; padding:6px 10px; margin-bottom:10px; color:var(--dtc-blue);
  font-weight:700; font-size:.8rem; letter-spacing:.03em; text-transform:uppercase; }
.dtc-canvas { position:relative; height:240px; }
.dtc-canvas.tall { height:300px; }
.dtc-empty { font-size:.85rem; color:var(--dtc-muted); padding:24px 0; }
.dtc-legend { display:flex; flex-wrap:wrap; gap:14px; font-size:.78rem; color:var(--dtc-muted); margin-top:8px; }
.dtc-legend i { display:inline-block; width:14px; height:0; border-top:2px dashed; vertical-align:middle; margin-right:5px; }
.dtc-legend i.solid { border-top-style:solid; }

.dtc-avatar-logo { background:#fff; overflow:hidden; padding:6px; }
.dtc-avatar-logo img { width:100%; height:100%; object-fit:contain; }
.dtc-quality-solo { grid-template-columns: 1fr !important; }
.dtc-quality { display:grid; grid-template-columns: 140px 1fr; gap:20px; align-items:center; margin-top:8px; }
.dtc-q-score { font-size:2rem; font-weight:800; color:var(--dtc-ink); line-height:1; }
.dtc-q-score small { font-size:.9rem; color:var(--dtc-muted); font-weight:600; }
.dtc-q-bar { margin-bottom:10px; }
.dtc-q-bar-top { display:flex; justify-content:space-between; font-size:.8rem; color:var(--dtc-body); margin-bottom:3px; }
.dtc-q-track { height:8px; border-radius:4px; background:var(--dtc-soft); overflow:hidden; }
.dtc-missing { color:var(--dtc-muted); font-style:normal; }
.dtc-q-fill { height:100%; border-radius:4px; background:var(--dtc-blue); }

.dtc-button { display:inline-block; margin-top:10px; background:var(--dtc-blue); color:#fff; text-decoration:none; font-weight:700;
  font-size:.9rem; padding:9px 18px; border-radius:8px; }
.dtc-button-quiet { background:var(--dtc-tint); color:var(--dtc-blue); }
.dtc-button:hover { filter:brightness(1.08); color:#fff; }
.dtc-button-quiet:hover { color:var(--dtc-blue); }
.dtc-tags { display:flex; flex-wrap:wrap; margin-top:12px; }
.dtc-tag { background:var(--dtc-soft); border-radius:14px; padding:5px 12px; margin:0 6px 6px 0; font-size:.82rem; color:var(--dtc-body); }
.dtc-tag b { color:var(--dtc-ink); font-weight:700; margin-right:4px; }

.admin-bar .dtc { --dtc-sticky-top: 32px; }
@media (max-width: 782px) { .admin-bar .dtc { --dtc-sticky-top: 0px; } }
@media (max-width: 760px) {
  .dtc { padding: 8px 14px 40px; }
  .dtc-grid { grid-template-columns: 1fr; }
  .dtc-quality { grid-template-columns: 1fr; }
  .dtc-gauge { width:110px; height:110px; }
}
@media (prefers-reduced-motion: reduce) { .dtc * { transition:none !important; scroll-behavior:auto !important; } }
