/* Link Check — layer on top of Bootstrap 5.3 */
:root {
  --lc-danger: #c0392b;
  --lc-warning: #d68910;
  --lc-success: #1e8449;
  --lc-muted: #6c757d;
  --lc-pending: #5d6d7e;
}

body.lc { background: #f4f6f9; }
.lc-container { max-width: 760px; }
.lc-nav .navbar-brand span { font-weight: 600; letter-spacing: .01em; }
.lc-nav .nav-link { padding-left: .5rem; padding-right: .5rem; white-space: nowrap; }
.lc-nav .nav-link.btn-link { border: 0; }
@media (max-width: 380px) { .lc-nav .nav-link { padding-left: .35rem; padding-right: .35rem; font-size: .92rem; } }

.lc-intro { background: #fff; border-radius: .75rem; padding: 1rem; box-shadow: 0 1px 2px rgba(0, 0, 0, .06); }
.lc-input { font-family: SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-size: .9rem; }

.lc-card { border: 0; border-left: 6px solid var(--lc-muted); border-radius: .75rem; margin-bottom: 1rem; box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
.lc-v-malicious { border-left-color: var(--lc-danger); }
.lc-v-suspicious { border-left-color: var(--lc-warning); }
.lc-v-clean { border-left-color: var(--lc-success); }
.lc-v-pending { border-left-color: var(--lc-pending); }
.lc-badge { font-size: .95rem; padding: .45em .7em; }
.lc-badge.text-bg-light { border: 1px solid #ced4da; }

.lc-url { color: #212529; font-size: .85rem; word-break: break-all; white-space: pre-wrap; background: #f1f3f5; border-radius: .375rem; padding: .4rem .5rem; }
.lc-note { font-size: .82rem; color: #495057; margin-top: .35rem; word-break: break-word; }
.lc-privacy { color: #1f4e79; }

.lc-reasons { margin: .6rem 0 0; padding-left: 1.1rem; font-size: .88rem; color: #7b4a00; }
.lc-reasons li { margin-bottom: .15rem; }

.lc-sources { list-style: none; margin: .75rem 0 0; padding: 0; border-top: 1px solid #e9ecef; }
.lc-source { display: flex; gap: .6rem; padding: .55rem 0; border-bottom: 1px solid #f1f3f5; }
.lc-icon { flex: 0 0 1.6rem; height: 1.6rem; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: .85rem; color: #fff; background: var(--lc-muted); }
.lc-s-malicious .lc-icon { background: var(--lc-danger); }
.lc-s-suspicious .lc-icon { background: var(--lc-warning); }
.lc-s-clean .lc-icon { background: var(--lc-success); }
.lc-s-info .lc-icon { background: #2e86c1; }
.lc-s-pending .lc-icon { background: transparent; color: var(--lc-pending); }
.lc-s-skipped .lc-icon, .lc-s-unknown .lc-icon { background: #adb5bd; }
.lc-s-error .lc-icon { background: #7f8c8d; }
.lc-source-body { min-width: 0; flex: 1; }
.lc-source-label { font-weight: 600; font-size: .9rem; }
.lc-source-summary { font-size: .86rem; color: #495057; word-break: break-word; }
.lc-s-skipped .lc-source-label, .lc-s-skipped .lc-source-summary { color: #868e96; }
.lc-links { font-size: .82rem; margin-top: .2rem; display: flex; flex-wrap: wrap; gap: .75rem; }
.lc-facts { display: grid; grid-template-columns: max-content 1fr; gap: .1rem .75rem; font-size: .8rem; margin: .4rem 0 0; }
.lc-facts dt { font-weight: 500; color: #6c757d; }
.lc-facts dd { margin: 0; overflow-wrap: anywhere; }

.lc-shot { margin: .9rem 0 0; }
.lc-shot img { width: 100%; height: auto; max-height: 420px; object-fit: cover; object-position: top; border-radius: .5rem; border: 1px solid #dee2e6; }
.lc-shot figcaption { font-size: .78rem; color: #6c757d; margin-top: .25rem; }

.lc-history .list-group-item { padding: .7rem .85rem; }
.lc-history .lc-url { background: transparent; padding: 0; font-size: .8rem; color: #495057; }
.lc-login { max-width: 380px; background: #fff; border-radius: .75rem; padding: 1.25rem; box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
.lc-footer { font-size: .75rem; color: #6c757d; padding-bottom: 2rem; }
.lc-offscreen { position: fixed; top: -1000px; left: -1000px; }

@media (prefers-color-scheme: dark) {
  body.lc { background: #12161c; color: #dee2e6; }
  .lc-intro, .lc-card, .lc-login, .lc-history .list-group-item { background: #1b2129; color: #dee2e6; }
  .lc-url { background: #252c35; color: #e9ecef; }
  .lc-note, .lc-source-summary { color: #adb5bd; }
  .lc-reasons { color: #f5c26b; }
  .lc-privacy { color: #8ec5ff; }
  .lc-sources, .lc-source { border-color: #2b333d; }
  .lc-history .lc-url { color: #ced4da; }
  .form-control, .form-select { background-color: #12161c; color: #e9ecef; border-color: #39424e; }
  .text-body-secondary { color: #9aa4ae !important; }
}
