.preview-dropdown summary { display: flex; align-items: center; gap: 0.6rem; min-height: 44px; padding: 0.5rem 0; font-size: 0.9375rem; list-style: none; }
.preview-dropdown summary::-webkit-details-marker { display: none; }
.preview-dropdown summary span { transition: transform 180ms ease; }
.preview-dropdown[open] summary span { transform: rotate(180deg); }
.preview-dropdown.is-active-parent > summary { color: var(--color-signature-text); }
.preview-menu-panel { position: absolute; top: calc(100% + 8px); left: max(1rem, calc((100% - 1240px) / 2)); right: max(1rem, calc((100% - 1240px) / 2)); max-height: min(70dvh, calc(100dvh - 100% - 24px)); overflow-y: auto; padding: 1.5rem; border: 1px solid var(--rim-soft); border-radius: 16px; background: var(--color-background); color: var(--color-primary); box-shadow: 0 16px 32px rgb(5 15 28 / 0.18); }
.preview-menu-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem 1.5rem; }
.c-nav .preview-menu-links a { display: flex; align-items: center; min-height: 48px; padding: 0.75rem; border-radius: 8px; }
.c-nav .preview-menu-links a:hover, .c-nav .preview-menu-links a:focus-visible { background: var(--surface-elevated); }
.preview-menu-close { display: block; min-height: 44px; margin: 1rem 0 0 auto; padding: 0.5rem 1rem; border: 1px solid var(--rim-soft); border-radius: 8px; background: transparent; color: inherit; }
.preview-footer { grid-template-columns: 1.25fr 1.4fr 0.8fr 0.8fr 0.8fr; }
.preview-footer a[aria-current='page'] { font-weight: 700; text-decoration-thickness: 2px; }
.c-footer__social { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.75rem; }
.c-footer__social a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 8px; }
.c-footer__social img { display: block; width: 24px; height: 24px; }
.c-footer__social a:is(:hover, :focus-visible) img { filter: drop-shadow(0 2px 3px rgb(0 0 0 / 0.35)); }
@media (prefers-reduced-motion: no-preference) { .c-footer__social img { transition: filter 160ms ease; } }
@media (prefers-reduced-motion: no-preference) {
  .preview-dropdown[open] .preview-menu-panel { animation: preview-menu-in 180ms ease-out; }
}
@keyframes preview-menu-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 900px) {
  .preview-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .preview-menu-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .preview-menu-links { grid-template-columns: 1fr; }
  .preview-menu-panel { padding: 0.75rem; }
  .preview-footer { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .preview-dropdown summary span { transition: none; } }
@media (forced-colors: active) { .preview-menu-panel, .preview-menu-close { border-color: CanvasText; } }

@media (max-height: 800px) {
 .c-header:has(.preview-dropdown[open]) { position: relative; flex-wrap: wrap; }
 .c-header:has(.preview-dropdown[open]) .c-nav { order: 3; flex-basis: 100%; margin-left: 0; }
 .preview-dropdown[open] { flex-basis: 100%; }
 .preview-menu-panel { position: static; max-height: none; margin-top: 8px; }
}

.mobile-navigation { display: none; }
@media (max-width: 760px) {
  .c-header .c-nav, .c-header > .c-btn { display: none; }
  .c-header { flex-wrap: nowrap; }
  .mobile-navigation { display: block; margin-left: auto; }
  .mobile-navigation > summary { display: flex; align-items: center; gap: 0.5rem; min-height: 44px; padding: 0.5rem; list-style: none; cursor: pointer; }
  .mobile-navigation > summary::-webkit-details-marker { display: none; }
  .mobile-navigation[open] > summary { color: var(--color-signature-text); }
  .mobile-menu-panel { position: absolute; top: calc(100% + 8px); left: 1rem; right: 1rem; display: grid; max-height: calc(100dvh - 110px); overflow-y: auto; padding: 0.75rem; border: 1px solid var(--rim-soft); border-radius: 16px; background: var(--color-background); box-shadow: 0 16px 32px rgb(5 15 28 / 0.18); }
  .mobile-menu-panel a, .mobile-menu-panel button { display: flex; align-items: center; min-height: 48px; padding: 0.75rem; border-radius: 8px; color: var(--color-primary); text-decoration: none; }
  .mobile-menu-panel a:is(:hover, :focus-visible, [aria-current='page']) { background: var(--surface-elevated); text-decoration: underline; }
  .mobile-menu-panel button { justify-content: center; border: 1px solid var(--rim-soft); background: transparent; margin-top: 0.5rem; }
  .mobile-menu-panel button[hidden] { display: none; }
}
@media (max-width: 760px) and (prefers-reduced-motion: no-preference) { .mobile-navigation[open] .mobile-menu-panel { animation: preview-menu-in 180ms ease-out; } }
@media (forced-colors: active) { .mobile-menu-panel, .mobile-menu-panel button { border-color: CanvasText; } }
