
/* Standalone navigation, accessible demo interactions and reduced motion. */
[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:100px}
.concept-credit{font:12px/1.6 system-ui,sans-serif;text-align:center;padding:18px 20px;color:inherit}
.concept-credit a{text-decoration:underline;text-underline-offset:3px}
#concept-dialog{width:min(440px,calc(100% - 32px));margin:auto;padding:28px;border:1px solid #cbd5e1;border-radius:16px;background:#fff;color:#0f172a;font:15px/1.6 system-ui,sans-serif;box-shadow:0 24px 80px #0005}
#concept-dialog::backdrop{background:#0008}#concept-dialog h2{font:700 22px/1.3 system-ui,sans-serif;margin-bottom:12px}
#concept-dialog a{display:inline-block;margin-top:18px;text-decoration:underline}
#concept-dialog button{display:block;margin-top:20px;padding:8px 18px;border:1px solid #cbd5e1;border-radius:6px}
.concept-reveal{animation:concept-enter .65s ease both}@keyframes concept-enter{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

#concept-menu{background:hsl(var(--background));padding:20px;display:grid;gap:12px;border-top:1px solid hsl(var(--border));max-height:70dvh;overflow:auto}
#concept-menu a{display:flex;align-items:center;min-height:44px;font-size:16px}
.concept-menu-toggle{display:none}
header.concept-scrolled{background:hsl(var(--background));box-shadow:0 1px 10px #0002}
@media(max-width:767px){.concept-menu-toggle{display:block;min-width:44px;min-height:44px;border:1px solid currentColor;padding:8px}}
@media(min-width:768px){#concept-menu{display:none!important}}
