/* Shared, scoped components: do not alter the existing theme, header or card layout. */
.tq-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.tq-source-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; padding: 0; margin: 24px 0 28px; list-style: none; counter-reset: tq-source; }
.tq-source-links > li { min-width: 0; counter-increment: tq-source; }
.tq-source-links > li[hidden] { display: none !important; counter-increment: none; }
.tq-source-links > li:only-child { grid-column: 1 / -1; }
.tq-source-links:has(> li[hidden]) > li:not([hidden]) { grid-column: 1 / -1; }
.tq-source-card { display: flex; align-items: center; gap: 16px; min-height: 104px; padding: 18px 16px; border: 1px solid var(--tb-line,#e9edf3); border-radius: 7px; background: var(--tb-surface,#f3f5f9); color: var(--tb-ink,#242b37); transition: border-color .18s ease,background .18s ease; }
.tq-source-card:hover, .tq-source-card:focus-visible { border-color: var(--tb-accent,#bd480f); background: var(--tb-hover,#fff1e7); text-decoration: none; }
.tq-source-card:focus-visible, [data-tq-site-footer] a:focus-visible { outline: 2px solid var(--tb-accent,#bd480f) !important; outline-offset: 3px; }
.tq-source-number { align-self: flex-start; min-width: 10px; padding-top: 1px; color: var(--tb-muted,#667182); font-size: 14px; line-height: 1.8; font-variant-numeric: tabular-nums; }
.tq-source-number::before { content: counter(tq-source); }
.tq-source-number[data-source-number]::before { content: attr(data-source-number); }
.tq-source-copy { flex: 1; min-width: 0; }
.tq-source-copy strong { display: block; color: var(--tb-ink,#242b37); font-size: 15px; font-weight: 600; line-height: 1.8; overflow-wrap: anywhere; }
.tq-source-copy small { display: block; margin-top: 8px; color: var(--tb-muted,#667182); font-size: 13px; line-height: 1.8; overflow-wrap: anywhere; }
.tq-source-copy small.tq-source-site { display: flex; align-items: center; gap: 7px; }
.tq-source-arrow { width: 14px; height: 14px; color: var(--tb-muted,#667182); flex: 0 0 14px; }
[data-tq-site-footer] .footer-links { line-height: 2; }
[data-tq-site-footer] .footer-links a { display: inline-block; padding: 2px 0; }
[data-tq-site-footer] .footer-copyright { overflow-wrap: anywhere; }
[data-tq-site-footer] .footer-mini-img img { height: auto; }
/* The retained comparison screen also renders the Eyou footer, without loading the
   native theme's global Bootstrap styles into that screen. All adapters stay scoped. */
.tq-legacy-shell [data-tq-site-footer] { max-width: 1900px; padding-top: 24px; padding-bottom: 12px; color: #667182; }
.tq-legacy-shell [data-tq-site-footer] .footer-inner { background: #fff; border-radius: 12px; }
.tq-legacy-shell [data-tq-site-footer] .footer-text { padding: 20px; }
.tq-legacy-shell [data-tq-site-footer] .row.my-4 { display: grid; grid-template-columns: 4fr 5fr 3fr; gap: 30px; margin: 24px 0; }
.tq-legacy-shell [data-tq-site-footer] .row .row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.tq-legacy-shell [data-tq-site-footer] .footer-logo img { display: inline-block; width: auto; height: 40px; margin-bottom: 16px; }
.tq-legacy-shell [data-tq-site-footer] .text-sm { font-size: 13px; }
.tq-legacy-shell [data-tq-site-footer] .footer-links { display: block; padding: 0; color: #667182; }
.tq-legacy-shell [data-tq-site-footer] .footer-copyright { font-size: 11px; }
.tq-legacy-shell [data-tq-site-footer] .footer-copyright .mb-2 { margin-bottom: 8px; }
.tq-legacy-shell [data-tq-site-footer] .footer-mini-img { text-align: right; font-size: 10px; }
.tq-legacy-shell [data-tq-site-footer] .footer-mini-img img { margin-left: auto; margin-bottom: 8px; padding: 4px; border-radius: 6px; background: #f3f5f9; }
.io-black-mode .tq-source-card { background: var(--tb-surface,#282d35); border-color: var(--tb-line,#39414d); color: var(--tb-ink,#e4e9ef); }
.io-black-mode .tq-source-copy strong { color: var(--tb-ink,#e4e9ef); }
.io-black-mode .tq-source-copy small, .io-black-mode .tq-source-number, .io-black-mode .tq-source-arrow { color: var(--tb-muted,#a8b1be); }
@media (max-width:575px) {
  .tq-source-links { grid-template-columns: minmax(0,1fr); gap: 12px; margin: 20px 0 24px; }
  .tq-source-card { min-height: 100px; padding: 18px 14px; }
  .tq-source-copy strong { font-size: 16px; }
  [data-tq-site-footer] .footer-links a { min-height: 44px; padding: 10px 4px; }
}
@media (max-width:767px) {
  .tq-legacy-shell [data-tq-site-footer] .row.my-4 { grid-template-columns: minmax(0,1fr); text-align: center; gap: 24px; }
  .tq-legacy-shell [data-tq-site-footer] .footer-mini-img { text-align: center; }
  .tq-legacy-shell [data-tq-site-footer] .footer-mini-img img { margin-inline: auto; }
}
@media (prefers-reduced-motion:reduce) { .tq-source-card { transition: none; } }
