/* Shared homepage / About footer. */
.main-footer{width:100%;max-width:1440px;margin:0 auto;font:16px 'Space Grotesk',system-ui,sans-serif;--pop:#c8ff00;--accent-text:#9eef35;--subtle:#a9aeaa}
.main-footer,.main-footer *{box-sizing:border-box}
.main-footer a{color:var(--accent-text)}.main-footer a:hover{color:var(--pop)}
.main-footer button,.main-footer summary{font:inherit}.main-footer button{cursor:pointer}
.main-footer :focus-visible{outline:2px solid #c8ff00;outline-offset:5px}
.main-footer .field{position:absolute;inset:-5%;z-index:0;transform-origin:50% 65%;animation:z2drift 11s ease-in-out infinite alternate}
.main-footer .field :is(img,[data-public-diagram]){width:100%;height:100%;object-fit:cover;object-position:center 59%;opacity:.88;display:block}
.main-footer .shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#080b09 0%,#080b0950 17%,transparent 65%,#080b09b3 100%),linear-gradient(90deg,#080b09cc,#080b0940 45%,transparent 70%,#080b0950)}
.main-footer .sparks{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.main-footer .sparks span{position:absolute;border-radius:50%;background:#d8ffd1;box-shadow:0 0 12px 3px #8eea8b77;opacity:0;animation:z2rise linear infinite}
@keyframes z2drift{from{transform:scale(1.04) translate3d(-2%,1%,0)}to{transform:scale(1.23) translate3d(2%,-2.5%,0)}}
@keyframes z2rise{0%{transform:translate3d(0,25px,0) scale(.4);opacity:0}20%{opacity:.9}65%{opacity:.6}100%{transform:translate3d(var(--drift),-220px,0) scale(1.5);opacity:0}}
@media (prefers-reduced-motion:reduce){.main-footer .field{animation:none}
.main-footer .sparks{display:none}}
.main-footer .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.main-footer .field,.main-footer .shade{pointer-events:none}
.main-footer .ai-provider-row{display:flex;gap:8px;flex-wrap:wrap;position:relative}
.main-footer .ai-provider summary{list-style:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #5a625b;border-radius:8px;background:#080b09b3;cursor:pointer;transition:transform .18s,border-color .18s}
.main-footer .ai-provider summary::-webkit-details-marker{display:none}
.main-footer .ai-provider summary:hover,.main-footer .ai-provider[open] summary{border-color:#c8ff00;transform:translateY(-3px)}
.main-footer .ai-provider summary :is(img,[data-public-diagram]){filter:brightness(0) invert(1)}
.main-footer .ai-provider-row:has(details[open]){padding-bottom:365px}
.main-footer .ai-prompts{position:absolute;top:60px;right:0;width:340px;max-width:100%;padding:20px;background:#141814;border:1px solid #52614d;border-radius:12px;box-shadow:0 16px 40px #0006;z-index:5}
.main-footer .ai-prompts strong{font-size:17px;color:#fff}
.main-footer .ai-question{display:flex;align-items:center;gap:8px;border-bottom:1px solid #2e352f;padding:12px 0}
.main-footer .ai-question a{font-size:14px;line-height:1.5;text-decoration:none;flex:1}
.main-footer .ai-question button{flex-shrink:0;width:36px;height:36px;color:#c3c7cb;background:transparent;border:1px solid #454c46;border-radius:5px;font-size:20px}
.main-footer .ai-prompts small{display:block;color:#a9aeaa;font-size:12px;line-height:1.5;margin-top:14px}
.main-footer .ai-prompts textarea{width:100%;height:120px;background:#080b09;color:#fff}
.main-footer .copy-feedback{font-size:12px;color:#c8ff00;min-height:16px}
.main-footer a:hover{text-decoration:underline!important;text-underline-offset:4px}
.main-footer>div:last-child{min-width:0}
@media(max-width:1300px){.main-footer>div:last-child{padding-inline:48px!important}
.main-footer>div:last-child>div:first-child{gap:28px!important}}
@media(max-width:1050px){.main-footer>div:last-child{padding-inline:32px!important}
.main-footer>div:last-child>div:first-child{grid-template-columns:1fr 1fr!important;gap:40px!important}
.main-footer .ai-provider-row:has(details[open]){padding-bottom:345px}}
@media(max-width:650px){.main-footer>div:last-child{padding:64px 24px 32px!important}
.main-footer>div:last-child>div:first-child{grid-template-columns:1fr 1fr!important;gap:32px 20px!important}
.main-footer>div:last-child>div:first-child>div:first-child,.main-footer>div:last-child>div:first-child>div:last-child{grid-column:1/-1}
.main-footer>div:last-child>div:last-child{gap:20px;flex-wrap:wrap;font-size:14px!important}
.main-footer .ai-prompts{left:0;right:auto}}
@media(prefers-reduced-motion:reduce){.main-footer .ai-provider summary{transition:none}}
.main-footer .footer-ai-column .footer-social{display:flex;align-items:center;gap:8px;margin-top:auto;min-height:44px}
.main-footer .footer-social .footer-social-icon{box-sizing:border-box;width:44px;height:44px;padding:0;border:1px solid #5a625b;border-radius:8px;background:#080b09b3;color:#e2e5e2;opacity:1}
.main-footer .footer-social .footer-social-icon :is(svg,[data-public-diagram]){width:26px;height:26px;fill:currentColor}
.main-footer .footer-social a[href]:hover{color:#c8ff00;border-color:#c8ff00;transform:translateY(-3px)}
.main-footer .footer-social [aria-disabled=true]{cursor:default}

.main-footer .footer-bottom{border-top:1px solid #2e352f;padding-top:24px;display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;font-size:16px;line-height:1.6;color:#a9aeaa}
.main-footer .footer-legal{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 28px;min-width:0}
.main-footer .footer-privacy{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 24px;font:inherit;color:inherit}
.main-footer .footer-privacy a,.main-footer .footer-privacy button{font:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer;white-space:nowrap}
.main-footer .footer-privacy a:hover,.main-footer .footer-privacy button:hover{color:var(--pop)}
