/* Footer: NdovuBot crawl layer and console (assets/ndovubot.js). */
.nd-footer{position:relative;isolation:isolate}
.nd-footer>.nd-container,.nd-footer>.nd-footer-mark{position:relative;z-index:1}
.nd-bot-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}

/* Eight section columns: the brand block beside two rows of four (tablet: four under the brand; phone: two). */
.nd-footer .nd-footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 28px}
.nd-footer .nd-footer-brand{grid-column:1/-1}
.nd-footer .nd-footer-col h2{margin-bottom:16px}
.nd-footer .nd-footer-col li{margin-bottom:10px}
.nd-footer .nd-footer-col li a{font-size:13.5px;line-height:1.45}
@media(min-width:1201px){.nd-footer .nd-footer-grid{grid-template-columns:minmax(300px,1.45fr) repeat(4,minmax(0,1fr));gap:44px 36px}.nd-footer .nd-footer-brand{grid-column:auto;grid-row:span 2}}
@media(max-width:700px){.nd-footer .nd-footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}}

.nd-bot-console{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);margin:8px 0 0;border:1px solid var(--nd-night-line);border-radius:20px;overflow:hidden;
  background:#0f1115 linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/24px 24px,#0f1115 linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0/24px 24px}
.nd-bot-side{padding:26px 26px 22px;border-right:1px solid var(--nd-night-line);display:flex;flex-direction:column;gap:12px}
.nd-bot-badge{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin:0;padding:5px 11px;border-radius:999px;border:1px solid var(--nd-night-line);background:#121418;
  font:600 11px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em;color:#f5a524}
.nd-bot-led{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 8px rgba(74,222,128,.8);animation:nd-bot-led 1.6s ease-in-out infinite}
@keyframes nd-bot-led{50%{opacity:.35}}
.nd-footer .nd-bot-side h2{margin:4px 0 0;font-size:20px;line-height:1.3;letter-spacing:-.01em;text-transform:none;font-weight:650;color:#fff}
.nd-bot-status{margin:0;font-size:13.5px;color:var(--nd-night-muted);font-variant-numeric:tabular-nums;min-height:1.5em}
.nd-bot-progress{height:4px;border-radius:99px;background:#1d2027;overflow:hidden}
.nd-bot-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#f5a524,#ffc24d);transition:width .25s ease}
.nd-bot-search input{width:100%;margin-top:6px;padding:11px 14px;border-radius:12px;border:1px solid var(--nd-night-line);background:#0b0c0f;color:#fff;font:inherit;font-size:14px}
.nd-bot-search input::placeholder{color:#6f7682}
.nd-bot-search input:focus{outline:2px solid #f5a524;outline-offset:1px;border-color:transparent}
.nd-bot-results{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.nd-footer .nd-bot-results li{margin:0}
.nd-bot-results a{display:flex;flex-direction:column;padding:7px 10px;border-radius:9px;text-decoration:none}
.nd-bot-results a:hover,.nd-bot-results a:focus{background:#1a1d23;outline:none}
.nd-bot-results strong{font-size:13.5px;font-weight:600;color:#fff}
.nd-bot-results small{font:11px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#7e8794;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nd-bot-results .is-empty{padding:6px 10px;font-size:13px;color:var(--nd-night-muted)}
.nd-bot-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:6px}
.nd-bot-actions button{padding:7px 14px;border-radius:999px;border:1px solid var(--nd-night-line);background:#121418;color:#e6e8ec;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1;cursor:pointer}
.nd-bot-actions button:hover,.nd-bot-actions button:focus-visible{border-color:#f5a524;color:#fff}
.nd-bot-actions button[aria-pressed=true]{background:#f5a524;border-color:#f5a524;color:#0c0d10}
.nd-bot-hint{font-size:12px;color:#6f7682}

.nd-bot-log{list-style:none;margin:0;padding:18px 22px;height:330px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;
  font:12.5px/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;-webkit-mask:linear-gradient(transparent,#000 22%);mask:linear-gradient(transparent,#000 22%)}
.nd-footer .nd-bot-log li{display:grid;grid-template-columns:52px minmax(0,1.1fr) minmax(0,1fr);gap:12px;margin:0;white-space:nowrap}
.nd-bot-verb{font-weight:700;color:#7e8794}
.nd-bot-log .is-get .nd-bot-verb{color:#f5a524}.nd-bot-log .is-found .nd-bot-verb{color:#4ade80}
.nd-bot-log .is-find .nd-bot-verb{color:#5ad1e6}.nd-bot-log .is-miss .nd-bot-verb{color:#f87171}.nd-bot-log .is-miss .nd-bot-title{color:#fca5a5}.nd-bot-log .is-home .nd-bot-verb{color:#ffc24d}.nd-bot-log .is-home .nd-bot-title{color:#ffe2a8}.nd-bot-log .is-ping .nd-bot-verb,.nd-bot-log .is-start .nd-bot-verb{color:#e45bd3}
.nd-footer .nd-bot-log a{color:#c9ced6;text-decoration:none;font-size:12.5px;overflow:hidden;text-overflow:ellipsis}
.nd-footer .nd-bot-log a:hover{color:#fff;text-decoration:underline}
.nd-bot-title{color:#7e8794;overflow:hidden;text-overflow:ellipsis}
.nd-bot-log .is-ping .nd-bot-title,.nd-bot-log .is-start .nd-bot-title{color:#e6e8ec}

@media(max-width:900px){.nd-bot-console{grid-template-columns:1fr}.nd-bot-side{border-right:0;border-bottom:1px solid var(--nd-night-line)}.nd-bot-log{height:240px}}
@media(max-width:600px){.nd-bot-side{padding:20px}.nd-footer .nd-bot-log li{grid-template-columns:46px minmax(0,1fr)}.nd-bot-title{display:none}.nd-bot-log{padding:14px 16px}.nd-bot-hint{display:none}}
@media(prefers-reduced-motion:reduce){.nd-bot-led{animation:none}}

/* Floating extension card: bottom right, desktop Chromium only (theme.js decides), dismissible for 30 days. */
.nd-ext-promo{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;align-items:center;gap:6px;max-width:min(400px,calc(100vw - 48px));padding:14px 12px 14px 14px;border:1px solid var(--nd-line);border-radius:20px;background:var(--nd-white);box-shadow:0 24px 60px rgba(12,13,16,.16),0 2px 6px rgba(12,13,16,.06);opacity:0;transform:translateY(16px);transition:opacity .35s ease,transform .45s var(--nd-ease,cubic-bezier(.2,.8,.2,1))}
.nd-ext-promo.is-shown{opacity:1;transform:none}
.nd-ext-promo[hidden]{display:none}
.nd-ext-promo-link{display:flex;align-items:center;gap:14px;min-width:0;color:var(--nd-ink);text-decoration:none}
.nd-ext-promo-logo{flex:none;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:#fff;box-shadow:0 0 0 1px rgba(12,13,16,.08),0 2px 6px rgba(12,13,16,.06)}
.nd-ext-promo-logo img{width:30px;height:30px}
.nd-ext-promo-copy{display:grid;gap:3px;min-width:0}
.nd-ext-promo-copy strong{font-size:16px;font-weight:650;line-height:1.25;white-space:nowrap}
.nd-ext-promo-copy span{color:var(--nd-muted);font-size:14px;line-height:1.4}
.nd-ext-promo-link:hover strong{text-decoration:underline;text-underline-offset:3px}
.nd-ext-promo-link:focus-visible{outline:2px solid var(--nd-accent);outline-offset:4px;border-radius:12px}
.nd-ext-promo-close{flex:none;align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin:-4px -2px 0 6px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--nd-muted);cursor:pointer}
.nd-ext-promo-close:hover,.nd-ext-promo-close:focus-visible{background:var(--nd-paper);color:var(--nd-ink)}
:root[data-theme=dark] .nd-ext-promo{border-color:var(--nd-night-line);background:var(--nd-night-card);box-shadow:0 24px 60px rgba(0,0,0,.5)}
:root[data-theme=dark] .nd-ext-promo-close:hover,:root[data-theme=dark] .nd-ext-promo-close:focus-visible{background:#1d2026}
@media(max-width:700px){.nd-ext-promo{display:none!important}}
@media(prefers-reduced-motion:reduce){.nd-ext-promo{transition:none;transform:none}}
