.boss-footer{background:#fff;color:#1c2b33;border-top:1px solid #e5ebf0;margin:0;padding:0;max-width:none;font:14px/24px Figtree,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.boss-footer *{box-sizing:border-box}.boss-footer-inner{max-width:1240px;margin:auto;padding:40px}.boss-footer a{color:inherit;text-decoration:none}.boss-footer a:hover{color:#0866ff}.boss-footer a:focus-visible{outline:3px solid #0866ff;outline-offset:4px}.boss-footer .boss-footer-brand{display:inline-flex;align-items:center;gap:12px;font-size:28px;line-height:32px;font-weight:700;letter-spacing:-1px}.boss-footer-dots{display:flex;flex-direction:column;gap:3px}.boss-footer-dots i{width:6px;height:6px;border-radius:50%;background:#0866ff}.boss-footer-dots i:nth-child(2){background:#13bcaf}.boss-footer-dots i:nth-child(3){background:#ffd035}.boss-footer-dots i:nth-child(4){background:#fa4f85}.boss-footer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;margin:32px 0}.boss-footer .boss-footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:auto;font-size:14px;line-height:24px;font-weight:400}.boss-footer-col h2{font-family:inherit;font-size:12px;line-height:20px;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin:0 0 8px;color:#596b77}.boss-footer .boss-footer-col>a{display:block;position:static;padding:0;border:0}.boss-footer .boss-footer-col>a:after{display:none}.boss-footer-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;border-top:1px solid #e5ebf0;padding-top:24px;font-size:12px;line-height:20px;color:#596b77}.boss-footer-bottom p{margin:0}.boss-footer-bottom a:first-of-type{margin-left:auto}@media(max-width:1000px){.boss-footer-inner{padding:32px 24px}.boss-footer-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.boss-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.boss-footer .boss-footer-brand{font-size:24px}.boss-footer-bottom p{width:100%}.boss-footer-bottom a:first-of-type{margin-left:0}}

/* Keep prose continuous and avoid short, stranded final lines. */
main :is(h1,h2,h3){text-wrap:balance}
main :is(p,li){text-wrap:pretty}

/* BossOS signature: a slow, reversible four-dot scan. */
:is(.brand .dots,.boss-footer-dots,.brand-signal) i{--dot:#0866ff;display:block;flex:none;background:var(--dot);color:var(--dot);animation:boss-dot-scan 3.6s ease-in-out infinite;animation-delay:0s}
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(2){--dot:#13bcaf;animation-delay:.3s}
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(3){--dot:#ffd035;animation-delay:.6s}
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(4){--dot:#fa4f85;animation-delay:.9s}
.brand-signal{display:flex;align-items:center;gap:9px;width:max-content;margin:0 0 20px;height:12px}.brand-signal i{width:8px;height:8px;border-radius:50%}
@keyframes boss-dot-scan{0%,65%,100%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}18%,36%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}}
html.dots-paused :is(.brand .dots,.boss-footer-dots,.brand-signal) i{animation:none;opacity:1;transform:none;box-shadow:none}
.dot-motion-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid #dae2ec;background:#fff;color:#596b77;border-radius:999px;padding:8px 12px;font:12px/20px inherit;cursor:pointer;margin:0 0 20px}.dot-motion-toggle:hover{border-color:#7f9fff;color:#0866ff}.dot-motion-toggle:focus-visible{outline:3px solid #0866ff;outline-offset:4px}
@media(prefers-reduced-motion:reduce){:is(.brand .dots,.boss-footer-dots,.brand-signal) i{animation:none;opacity:1;transform:none;box-shadow:none}.dot-motion-toggle{display:none}}

/* Light travels down the dots and back up without moving the layout. */
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(1){animation-name:boss-scan-1;animation-delay:0s}
@keyframes boss-scan-1{0%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}1%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}10%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}19%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}81%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}90%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}99%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}100%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}}
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(2){animation-name:boss-scan-2;animation-delay:0s}
@keyframes boss-scan-2{0%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}14%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}23%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}32%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}68%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}77%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}86%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}100%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}}
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(3){animation-name:boss-scan-3;animation-delay:0s}
@keyframes boss-scan-3{0%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}27%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}36%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}45%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}55%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}64%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}73%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}100%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}}
:is(.brand .dots,.boss-footer-dots,.brand-signal) i:nth-child(4){animation-name:boss-scan-4;animation-delay:0s}
@keyframes boss-scan-4{0%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}41%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}50%{opacity:1;transform:scale(1.18);box-shadow:0 0 9px currentColor}59%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}100%{opacity:.65;transform:scale(.9);box-shadow:0 0 0 transparent}}
.dot-motion-toggle{font-family:inherit;font-size:12px;line-height:20px}
html.dots-paused :is(.brand .dots,.boss-footer-dots,.brand-signal) i{animation:none}
@media(prefers-reduced-motion:reduce){:is(.brand .dots,.boss-footer-dots,.brand-signal) i{animation:none}}

/* Match the rounded rectangle buttons used by My Muse Connector. */
body .button,body .btn,body .view-project,body .dot-motion-toggle{border-radius:12px}
