/* Сайты первой главы (k37): форум «МиниБорд» на зеркале, файлы в браузере,
   Видеоряд 2009 года, Земляки, Трель, РЕГПОРТ, Слепок, городской портал. */

/* ——— МиниБорд 2.0.21 (стиль 2006 года) ——— */
.site-mb { background: #e5e5e5; color: #000; font: 12px/1.45 Verdana, Arial, Helvetica, sans-serif; padding-bottom: 12px; }
.site-mb a { color: #006699; text-decoration: none; }
.site-mb a:hover { text-decoration: underline; color: #dd6900; }
.mb-mirror { font: 11px/1.4 Arial, sans-serif; background: #d6d6d6; color: #555; padding: 3px 8px; border-bottom: 1px solid #c4c4c4; }
.mb-wrap { background: #fff; border: 1px solid #98aab1; margin: 8px; padding: 8px 10px; }
.mb-head { width: 100%; border-collapse: collapse; }
.mb-logo { font: 700 26px/1.1 "Trebuchet MS", Arial, sans-serif; color: #1d4f8f; text-shadow: 1px 1px 0 #b9c9dd, 2px 2px 2px rgba(0,0,0,.18); }
.mb-tag { font-size: 11px; color: #555; margin-top: 2px; }
.mb-menu { font-size: 11px; padding: 8px 0 2px; }
.mb-crumbs { font-weight: 700; font-size: 11px; margin: 10px 0 4px; }
.mb-title { font: 700 18px/1.25 "Trebuchet MS", Arial, sans-serif; margin: 2px 0 6px; }
.mb-bar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 6px 12px; font-size: 11px; padding: 4px 0; }
.mb-bar-l { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.mb-locked { font-weight: 700; color: #333; }
.mb-lock { font-size: 12px; }
.mb-stats { color: #444; }
.mb-pager b { color: #000; }
.mb-posts { width: 100%; border-collapse: separate; border-spacing: 1px; background: #98aab1; table-layout: fixed; }
.mb-post > td { background: #efefef; vertical-align: top; padding: 6px; }
.mb-post:nth-child(even) > td { background: #dee3e7; }
.mb-side { width: 150px; font-size: 10px; line-height: 1.35; }
.mb-nick { font: 700 12px Verdana, sans-serif; color: #000 !important; }
.mb-rank { margin-top: 2px; }
.rc-green { color: #006600; } .rc-red { color: #aa0000; } .rc-blue { color: #0000aa; }
.mb-ava { width: 80px; height: 80px; margin: 6px 0; background: linear-gradient(135deg, #c7cbcf, #e3e5e8); border: 1px solid #aab; }
.mb-ustat { color: #333; }
.mb-ava-img { display: block; margin: 6px 0; max-width: 100px; height: auto; }
.mb-ptop { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 10px; color: #333; padding-bottom: 4px; border-bottom: 1px solid #fff; }
.mb-acts { margin-left: auto; }
.mb-qbtn { border: 1px solid #98aab1; background: #fafafa; padding: 0 5px; font-size: 10px; }
.mb-text { font-size: 12px; line-height: 18px; padding-top: 6px; overflow-wrap: anywhere; }
.mb-quote { margin: 6px 0 8px; }
.mb-quote-h { font: 700 11px Verdana, sans-serif; }
.mb-quote-b { background: #fafafa; border: 1px solid #d1d7dc; padding: 4px 6px; font-size: 11px; line-height: 1.4; }
.mb-thumb { display: inline-block; max-width: 100%; margin: 6px 0; background: linear-gradient(135deg, #a9adb3, #d1d4d8); border: 1px solid #777; overflow: hidden; vertical-align: top; }
.mb-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mb-img { display: block; max-width: 100%; margin: 6px 0; }
.mb-img-missing { width: 320px; aspect-ratio: 4/3; background: #c9c9c9 linear-gradient(135deg, transparent 49.5%, #b4b4b4 50%, transparent 50.5%); border: 1px solid #999; }
.mb-replaced { font-style: italic; color: #555; padding-top: 6px; }
.mb-note { font-size: 11px; color: #444; margin-top: 10px; }
.mb-note.it { font-style: italic; }
.mb-sig { font-size: 11px; color: #444; margin-top: 12px; }
.mb-sigline { color: #888; }
.mb-tz { font-size: 11px; text-align: right; margin: 8px 0 4px; }
.mb-box { width: 100%; border: 1px solid #98aab1; border-collapse: collapse; margin: 6px 0; }
.mb-box th { background: #006699 linear-gradient(#2e7fb0, #00557f); color: #ffa34f; font: 700 11px Verdana, sans-serif; padding: 5px 6px; text-align: left; }
.mb-box td { background: #efefef; font-size: 11px; padding: 5px 6px; }
.mb-pk { text-align: right; font-weight: 700; width: 40%; vertical-align: top; }
.mb-powered { text-align: center; font-size: 10px; color: #444; margin: 10px 0 2px; }
.mb-missing { background: #fff; margin: 8px; padding: 28px 16px; border: 1px solid #c4c4c4; font: 15px/1.5 Arial, sans-serif; }
.site-mb .clue > .pin { position: static; display: inline-grid; vertical-align: middle; }
@media (max-width: 640px) {
  .mb-wrap { margin: 4px 0; padding: 6px; border-left: 0; border-right: 0; }
  .mb-posts, .mb-posts tbody, .mb-post, .mb-post > td { display: block; width: auto; }
  .mb-posts { border-spacing: 0; background: none; }
  .mb-post { border: 1px solid #98aab1; margin-bottom: 6px; }
  .mb-side { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; border-bottom: 1px solid #c8d0d4; }
  .mb-ava, .mb-ava-img { width: 36px; height: 36px; margin: 0; order: -1; }
  .mb-ustat { display: flex; flex-wrap: wrap; gap: 0 8px; width: 100%; }
  .mb-logo { font-size: 21px; }
  .mb-text { font-size: 14px; line-height: 1.5; }
  .mb-thumb { width: 100% !important; height: auto !important; aspect-ratio: 4/3; }
  .mb-pk { width: 45%; }
}

/* ——— файлы, открытые в браузере ——— */
.site-textfile { background: #fff; color: #000; }
.tv-pre { margin: 0; padding: 8px; font: 13px/1.45 "Courier New", Courier, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.tv-line.clue { display: inline; }
.tv-pre.clue > .pin { top: 6px; right: 10px; }
/* подпись на кнопке «Закрепить» видна при наведении и фокусе */
@media (hover: hover) { .pin { width: auto; min-width: 28px; padding: 0 6px; gap: 4px; grid-auto-flow: column; white-space: nowrap; font: 12px/1 -apple-system, "Segoe UI", Roboto, Arial, sans-serif; } }
.pin::after { inset: -6px 0; }
.pin-t { display: none; }
.pin:hover .pin-t, .pin:focus-visible .pin-t { display: inline; }
@media (hover: none) { .pin-t { display: none !important; } }
.tv-line.clue > .pin { position: static; display: inline-grid; vertical-align: middle; margin-left: 4px; }
.site-imageview { background: #0e0e0e; display: grid; place-items: center; padding: 8px; }
.iv-box { position: relative; max-width: 100%; }
.iv-img { display: block; max-width: none; cursor: zoom-in; }
.iv-img.iv-fit { max-width: 100%; max-height: calc(100vh - 70px); cursor: zoom-out; }
.iv-broken, .vp-broken-msg, .ih-broken { color: #bdbdbd; font: 14px/1.4 -apple-system, "Segoe UI", Roboto, Arial, sans-serif; padding: 24px; text-align: center; }
.site-videoview { background: #000; display: flex; align-items: center; justify-content: center; }
.vp-viewer { width: min(100%, 1000px, calc((100vh - 150px) * 4 / 3)); }
.vp-viewer .vp-screen { aspect-ratio: 4/3; }
.vp-overlay { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.vp-broken .vp-screen { aspect-ratio: 4/3; cursor: default; }
.vp-2009.vp-broken .vp-screen, .vp-2009 .vp-screen { aspect-ratio: 4/3; }

/* ——— «Свойства файла» ——— */
.sh-txt { font: 700 13px/1 ui-monospace, Menlo, Consolas, monospace; }
.sh-props .sh-txt { font: italic 700 16px/1 Georgia, serif; }
@media (max-width: 719px) { .sh-src { display: none; } }
.fprops h2 { overflow-wrap: anywhere; color: var(--sh-ink); }
.fprops-pre { margin: 0 0 12px; padding: 10px; border: 1px solid var(--sh-line); border-radius: 6px; background: var(--sh-field); color: var(--sh-ink); font: 13px/1.5 ui-monospace, Menlo, Consolas, monospace; white-space: pre; overflow-x: auto; }
@media (max-width: 480px) { .fprops-pre { font-size: 11px; } }
.fprops-copy { min-height: 44px; padding: 0 16px; border: 1px solid var(--sh-line); border-radius: 6px; background: var(--sh-field); color: var(--sh-ink); cursor: pointer; }

/* ——— Видеоряд, 2009 ——— */
.site-vr { background: #f4f4f4; color: #222; font: 13px/1.45 Tahoma, Verdana, Arial, sans-serif; }
.vr-top { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 8px 12px; background: linear-gradient(#3b3b3b, #1c1c1c); border-bottom: 3px solid #c8321e; }
.vr-logo { font: 700 22px/1 Arial, sans-serif; color: #fff; letter-spacing: -.5px; }
.vr-logo::first-letter { color: #ff5a3c; }
.vr-q { display: flex; gap: 4px; margin-left: auto; }
.vr-q input { width: 160px; height: 28px; border: 1px solid #888; padding: 0 6px; font: 13px Tahoma, sans-serif; }
.vr-q button { height: 28px; border: 1px solid #888; background: #e8e8e8; font: 12px Tahoma, sans-serif; }
.vr-main { max-width: 520px; margin: 0 auto; padding: 10px 12px 24px; }
.vr-title { font: 700 17px/1.3 Arial, sans-serif; margin: 4px 0 10px; }
.vr-main .vp { max-width: 480px; border: 1px solid #000; }
.vr-info { display: flex; flex-wrap: wrap; gap: 2px 16px; padding: 8px 0; color: #444; border-bottom: 1px solid #ddd; }
.vr-author { color: #1a4fb5; }
.vr-views { font-weight: 700; color: #222; }
.vr-cms h3 { font: 700 14px Arial, sans-serif; margin: 14px 0 6px; }
.vr-cm { padding: 6px 0; border-bottom: 1px dotted #ccc; }
.vr-cm-h { color: #777; font-size: 12px; }
.vr-cm-h b { color: #1a4fb5; }

/* ——— Земляки ——— */
.pf-zemlyaki { background: #edeef0; color: #222; font: 14px/1.45 -apple-system, "Segoe UI", Roboto, Tahoma, Arial, sans-serif; }
.zm-top { display: flex; align-items: center; justify-content: space-between; height: 44px; padding: 0 14px; background: var(--accent); color: #fff; }
.zm-logo { font: 700 18px/1 Tahoma, Arial, sans-serif; }
.zm-login { font-size: 13px; opacity: .9; }
.zm { max-width: 640px; margin: 0 auto; padding: 10px 0 30px; }
.zm-post, .zm-cms, .zm-prof, .zm-feed { background: #fff; border-radius: 8px; padding: 14px; margin: 0 0 10px; box-shadow: 0 1px 0 #dce1e6; }
.zm-ph { display: flex; gap: 10px; align-items: center; }
.zm-name { font-weight: 600; color: #2a5885; text-decoration: none; }
.zm-name.big { font-size: 15px; }
a.zm-name:hover { text-decoration: underline; }
.zm-city { color: #818c99; font-size: 13px; }
.zm-meta { color: #818c99; font-size: 13px; margin: 6px 0; display: flex; gap: 8px; }
.zm-edited { color: #a0a8b2; }
.zm-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.zm-img { display: block; max-width: 100%; margin: 10px 0 0; border-radius: 4px; }
.zm-img-missing { width: 100%; aspect-ratio: 4/3; background: #dfe3e8; display: grid; place-items: end start; }
.zm-img-missing span { font-size: 11px; color: #9aa3ad; padding: 6px; }
.zm-acts { display: flex; gap: 16px; margin-top: 10px; padding-top: 8px; border-top: 1px solid #e7e8ec; color: #6b7785; font-size: 13px; }
.zm-cms h3, .zm-feed h3 { font: 600 14px/1 inherit; color: #6b7785; margin: 0 0 10px; }
.zm-cm { display: flex; gap: 10px; padding: 8px 0; border-top: 1px solid #f0f2f5; }
.zm-cm:first-of-type { border-top: 0; }
.zm-cm-b { min-width: 0; flex: 1; }
.zm-cm-t { overflow-wrap: anywhere; }
.zm-ava-img { border-radius: 50%; object-fit: cover; flex: none; }
.zm-ava-photo { display: inline-block; flex: none; border-radius: 50%; background: radial-gradient(circle at 50% 38%, #6f5a4a 0 18%, transparent 19%), linear-gradient(#9fb08a 0 55%, #6f7d52 56%); }
.zm-prof { display: flex; gap: 16px; align-items: center; }
.zm-pname { font: 600 19px/1.25 inherit; margin: 0 0 4px; }
.zm-seen { color: #818c99; font-size: 13px; }
.zm-friends { margin-top: 6px; font-size: 13px; }
.zm-empty { color: #818c99; text-align: center; padding: 16px 0; margin: 0; }
.zm-post-s { box-shadow: none; padding: 10px 0; border-top: 1px solid #e7e8ec; border-radius: 0; margin: 0; }
.pf-zemlyaki .clue > .pin { position: static; display: inline-grid; vertical-align: middle; }
@media (max-width: 660px) { .zm { padding-top: 0; } .zm-post, .zm-cms, .zm-prof, .zm-feed { border-radius: 0; } }

/* ——— Трель (веб-клиент мессенджера) ——— */
.pf-trel { background: #e6ebee; color: #111; font: 15px/1.4 -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
.tr { max-width: 720px; margin: 0 auto; min-height: calc(100vh - 48px); display: flex; flex-direction: column; background: #dfe7e3 radial-gradient(rgba(0,0,0,.035) 1px, transparent 1px) 0 0 / 14px 14px; }
.tr-brand { padding: 6px 14px; font: 600 12px/1 inherit; color: #fff; background: var(--accent); letter-spacing: .3px; }
.tr-head { display: flex; gap: 10px; align-items: center; padding: 8px 14px; background: #fff; border-bottom: 1px solid #d9dfe2; }
.tr-seen { color: #7a868c; font-size: 13px; }
.tr-log { flex: 1; padding: 12px 10px; display: flex; flex-direction: column; gap: 6px; }
.tr-day { text-align: center; margin: 6px 0; }
.tr-day span { display: inline-block; padding: 2px 10px; border-radius: 10px; background: rgba(0,0,0,.18); color: #fff; font-size: 12px; }
.tr-msg { display: flex; }
.tr-msg.out { justify-content: flex-end; }
.tr-bubble { max-width: min(86%, 520px); padding: 7px 10px 5px; border-radius: 12px; background: #fff; box-shadow: 0 1px 1px rgba(0,0,0,.12); }
.tr-msg.out .tr-bubble { background: #d7f5d0; border-bottom-right-radius: 4px; }
.tr-msg.in .tr-bubble { border-bottom-left-radius: 4px; }
.tr-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.tr-time { display: block; text-align: right; font-size: 11px; color: #7a868c; margin-top: 2px; }
.tr-ticks { margin-left: 4px; color: #3a9a6a; }
.tr-foot { display: flex; gap: 8px; align-items: center; padding: 8px 10px; background: #fff; border-top: 1px solid #d9dfe2; position: sticky; bottom: 0; }
.tr-input { flex: 1; min-width: 0; height: 40px; padding: 0 12px; border: 1px solid #d9dfe2; border-radius: 20px; background: #f4f6f7; font: 15px inherit; color: #888; }
.tr-send { width: 40px; height: 40px; border: 0; border-radius: 50%; background: #c9d3d8; color: #fff; }
.tr-blocked { justify-content: center; color: #7a868c; font-size: 14px; text-align: center; min-height: 56px; }
.tr-comp { position: static; flex-direction: column; align-items: stretch; gap: 10px; padding: 12px; }
.tr-f { display: flex; flex-direction: column; gap: 4px; border: 0; margin: 0; padding: 0; min-width: 0; }
.tr-fl { font-size: 13px; color: #56646b; padding: 0; }
.tr-f select { width: 100%; min-height: 44px; padding: 0 8px; border: 1px solid #c9d3d8; border-radius: 8px; background: #fff; font: 15px inherit; color: #111; }
.tr-evs { gap: 2px; }
.tr-ev { display: flex; gap: 8px; align-items: flex-start; min-height: 40px; padding: 8px 4px; border-radius: 6px; font-size: 14px; cursor: pointer; }
.tr-ev:hover { background: #f1f5f6; }
.tr-ev input { width: 20px; height: 20px; margin: 0; flex: none; }
.tr-none { margin: 4px 0; color: #7a868c; font-size: 14px; }
.tr-preview:empty { display: none; }
.tr-preview { display: flex; justify-content: flex-end; }
.tr-bubble.draft { background: #eaf8e6; border: 1px dashed #9fcf94; box-shadow: none; }
.tr-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.tr-status { margin: 0; color: #b3261e; font-size: 13px; }
.tr-sendbtn { min-height: 44px; padding: 0 20px; border: 0; border-radius: 22px; background: var(--accent); color: #fff; font: 600 15px inherit; cursor: pointer; }
.tr-sendbtn:disabled { background: #b9c5ca; cursor: default; }

/* ——— РЕГПОРТ (WHOIS) ——— */
.wh-pre { margin: 12px 0 0; padding: 10px; background: #f7f7f2; border: 1px solid #ddd; font: 13px/1.5 "Courier New", Courier, monospace; white-space: pre-wrap; overflow-wrap: anywhere; color: #111; }
.wh-out { position: relative; }
.wh .wh-q button { min-height: 40px; padding: 0 14px; border: 1px solid #2e5e8e; background: #2e5e8e; color: #fff; cursor: pointer; }

/* ——— Слепок: полоса снимка, сравнение ——— */
.ar-banner { display: flex; flex-wrap: wrap; gap: 2px 4px; align-items: center; padding: 6px 8px; background: #2b2a26; color: #f1e8d8; font: 13px/1.4 Arial, sans-serif; }
.ar-banner a { color: #ffd98c; }
.ar-banner .ar-nav { min-width: 0; min-height: 0; border: 0; background: none; padding: 6px 2px; color: #ffd98c; }
.ar-banner a.off { color: #8a8374; pointer-events: none; text-decoration: none; }
.ar-cmp.on { font-weight: 700; }
.ar-cmpbar { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; padding: 6px 8px; background: #efe8da; font: 13px Arial, sans-serif; }
.ar-cmpbar select { min-height: 32px; font: 13px Arial, sans-serif; }
.ar-legend .lg { padding: 0 4px; }
.ar-legend .lg.add { background: #d9f2d9; }
.ar-legend .lg.del { background: #f8dada; text-decoration: line-through; }
.ar-page { background: #fff; color: #000; padding: 10px; font: 15px/1.5 Arial, sans-serif; overflow-x: auto; }
.ar-page .site { min-height: 0; }
.ar-lines p, .ar-diff p { margin: 0 0 8px; padding: 2px 4px; }
.ar-text { margin: 0; font: 13px/1.45 "Courier New", monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.ar-diff ins.w-add { background: #c9efc9; text-decoration: none; }
.ar-diff s.w-del { background: #f6d0d0; color: #7a1a1a; }
.ar-home { text-align: center; padding: 40px 16px; }
.ar-home h1 { font: 700 34px/1 Georgia, serif; margin: 0 0 18px; }
.ar-q.big { max-width: 560px; margin: 0 auto; }
.ar-q button { min-height: 38px; padding: 0 14px; border: 1px solid #8a6a3c; background: #8a6a3c; color: #fff; cursor: pointer; }
.ar-msg { color: #6b5a40; }

/* ——— Ищейка ——— */
.sr-url { color: #0b7a2a; font-size: 13px; overflow-wrap: anywhere; }
.sr-date { color: #70757a; font-size: 12px; margin-top: 2px; }
.sq-body { max-width: 700px; padding: 0 16px 40px; }
.sq-wrap.top { padding-bottom: 8px; border-bottom: 1px solid #eee; margin-bottom: 14px; }
.sq-wrap:not(.top) { margin-top: 12vh; }
.sr h3 { margin: 0; }
.sr .clue > .pin { position: static; display: inline-grid; }

/* ——— городской портал, обзоры, парковка ——— */
.pt-head { background: #1f4e79; color: #fff; padding: 10px 14px; }
.pt-name { font: 700 20px/1.2 Arial, sans-serif; }
.pt-menu { font-size: 12px; opacity: .85; margin-top: 4px; }
.pt-main { max-width: 760px; margin: 0 auto; padding: 12px 14px 30px; font: 15px/1.55 Georgia, "Times New Roman", serif; color: #222; }
.pk { min-height: calc(100vh - 48px); display: grid; place-content: center; gap: 16px; text-align: center; background: #fff; font: 18px Arial, sans-serif; color: #333; padding: 16px; }
.pk-btn { justify-self: center; padding: 10px 22px; border-radius: 4px; background: #c9c9c9; color: #fff; font-size: 15px; }
