/* Guest footer: navigation first; legal and software details stay secondary. */
.cv-chat > .cv-site-footer { flex:0 0 auto; display:block; margin-top:32px;
  padding-top:32px; padding-bottom:24px; color:var(--cv-muted); font-family:var(--font-body);
  font-size:0.9375rem; letter-spacing:normal; }
.cv-footer-main { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px;
  padding-block:24px; border-top:1px solid var(--cv-line); }
.cv-chat .cv-site-footer a { display:inline-flex; align-items:center; min-height:44px; padding:0;
  color:var(--cv-muted); text-decoration:none; }
.cv-chat .cv-site-footer a:hover { color:var(--cv-ink-strong); }
.cv-chat .cv-site-footer a.cv-footer-brand { color:var(--cv-ink-strong); font-family:var(--cv-font-head);
  font-size:1.625rem; font-weight:500; letter-spacing:-0.055em; }
.cv-footer-actions, .cv-footer-nav, .cv-footer-legal { display:flex; align-items:center; flex-wrap:wrap; }
.cv-footer-actions { gap:32px; }
.cv-footer-nav { gap:28px; }
.cv-footer-nav a { font-weight:500; }
.cv-site-footer .vc-theme-link { min-height:44px; padding:0 14px; border:1px solid var(--cv-line);
  border-radius:var(--cv-pill); font-family:var(--font-body); font-size:0.9375rem; text-decoration:none; }
.cv-site-footer .vc-theme-link:hover { border-color:var(--cv-line-strong); color:var(--cv-ink-strong); background:var(--cv-accent-tint); text-decoration:none; }
.cv-footer-bottom { display:flex; align-items:center; flex-wrap:wrap; gap:4px 24px;
  padding-top:12px; border-top:1px solid var(--cv-line); }
.cv-footer-copyright { font-family:var(--cv-font-mono); font-size:0.8125rem; letter-spacing:0.025em; }
.cv-footer-legal { gap:20px; font-size:0.9375rem; }
.cv-footer-bottom .vc-software-compact { display:block; margin-left:auto; min-width:0; max-width:100%; font-size:0.9375rem; }
.cv-site-footer .vc-software-compact summary { display:flex; align-items:center; justify-content:flex-end; gap:6px;
  min-height:44px; width:fit-content; margin-left:auto; cursor:pointer; list-style:none; }
.cv-site-footer .vc-software-compact summary::-webkit-details-marker { display:none; }
.cv-site-footer .vc-software-compact summary:hover { color:var(--cv-ink-strong); }
.cv-site-footer .vc-software-compact[open] { flex-basis:100%; }
.cv-site-footer .vc-software-compact[open] summary svg { transform:rotate(180deg); }
.cv-site-footer .vc-software-info { max-width:52ch; margin-left:auto; padding:12px 0 8px; line-height:1.65; overflow-wrap:anywhere; }
.cv-site-footer .vc-software-build { margin:0 0 16px; font-family:var(--cv-font-mono); font-size:0.8125rem; }
.cv-site-footer .vc-cite-label { margin:0 0 4px; color:var(--cv-ink); font-weight:500; }
.cv-site-footer .vc-cite-text { margin:0; user-select:all; }
@media (max-width:600px) {
  .cv-chat > .cv-site-footer { padding-top:20px; padding-bottom:24px; }
  .cv-footer-main { align-items:flex-start; gap:16px; flex-direction:column; padding-block:20px; }
  .cv-footer-actions { width:100%; justify-content:space-between; gap:12px; }
  .cv-footer-nav { gap:20px; }
  .cv-footer-bottom { gap:2px 24px; }
  .cv-footer-copyright { flex-basis:100%; padding-block:12px 4px; font-size:0.9375rem; }
  .cv-footer-bottom .vc-software-compact { font-size:0.9375rem; }
}
@media (max-width:359px) { .cv-footer-actions { gap:4px; } .cv-footer-nav { gap:16px; } .cv-site-footer .vc-theme-link { padding-inline:10px; } }
