:root { color-scheme: dark; --button-hover: #d4f9cc; }
:root[data-theme="light"] {
  color-scheme: light;
  --bg: #ffffff;
  --surface: #f3f6ff;
  --line: #d7e1f6;
  --text: #17264a;
  --muted: #536381;
  --mint: #2854d9;
  --button-hover: #1e40af;
}
body, header, footer, .card, .cover, form, input, textarea, .button {
  transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease;
}
.button:hover { background: var(--button-hover); }
.brand-group { display: flex; align-items: center; gap: 12px; }
.dragon-toggle {
  width: 64px; height: 64px; display: grid; place-items: center;
  padding: 4px; border: 1px solid var(--line); border-radius: 50%;
  background: var(--surface); cursor: pointer;
}
.dragon-toggle:hover { border-color: var(--mint); }
.dragon-toggle svg { width: 52px; height: 52px; }
.theme-hint { display: block; color: var(--muted); font-size: 11px; line-height: 1.4; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; }
}

.site-footer{padding:0 24px;text-align:left}.footer-inner,.footer-bottom{max-width:1232px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner{padding:40px 0 30px}.footer-brand{font-size:24px;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:-.8px}.footer-brand span{color:var(--mint)}.footer-caption{font-size:12px;margin:4px 0 0;color:var(--muted)}.footer-socials{display:flex;gap:22px}.social-placeholder{display:flex;flex-direction:column;align-items:center;gap:6px}.social-icon{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--mint);padding:11px;opacity:1}.social-icon svg{width:20px;height:20px}.social-label{font-size:10px;color:var(--muted)}.footer-bottom{padding:18px 0 24px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.5px}@media(max-width:480px){.footer-inner{gap:16px;padding:30px 0 24px}.footer-brand{font-size:21px}.footer-socials{gap:12px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:6px}}

