.skip-link { position: fixed; left: 1rem; top: 1rem; z-index: 100; transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
.menu-toggle { display: none; }
.markdown-content > :first-child { margin-top: 0; }
.markdown-content > :last-child { margin-bottom: 0; }
.profile-avatar-img { display: block; max-width: min(100%, 420px); height: auto; margin: 1rem 0; }
#skill-radar { display: block; width: min(100%, 320px); height: auto; margin: 1rem auto; }
#neo-desktop-pet { position: fixed; right: 1rem; bottom: 1rem; z-index: 20; width: 96px; height: auto; user-select: none; pointer-events: none; }
#neo-desktop-pet[hidden] { display: none; }
.gallery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.gallery-item { width: 100%; text-align: left; }
.gallery-item img { display: block; width: 100%; height: auto; }
#gallery-dialog { max-width: min(96vw, 1200px); max-height: 94vh; padding: 1rem; border: 2px solid var(--text-primary); background: var(--bg-card); overscroll-behavior: contain; }
#gallery-dialog::backdrop { background: rgb(0 0 0 / 75%); }
#gallery-dialog img { display: block; max-width: 100%; max-height: calc(94vh - 4rem); height: auto; margin-top: 1rem; }
.public-footer { padding: 2rem; text-align: center; overflow-wrap: anywhere; }
.player-status { position: fixed; right: 1rem; bottom: 1rem; z-index: 21; max-width: min(30rem, calc(100vw - 2rem)); padding: .5rem .75rem; color: var(--text-primary); background: var(--bg-card); border: 1px solid var(--primary-accent); }
.music-player-shell { position: fixed; right: 1rem; bottom: 1rem; z-index: 21; width: min(22rem, calc(100vw - 2rem)); }
.music-player-shell audio { display: block; width: 100%; }
.hero-content h1, .hero-content h2, .skills-panel h2 { text-wrap: balance; }
.markdown-content, .gallery-item, .public-footer { overflow-wrap: anywhere; }
.motion-controls { display: flex; flex: 0 0 auto; gap: .5rem; }
html[data-motion-preference="reduced"] *, html[data-motion-preference="reduced"] *::before, html[data-motion-preference="reduced"] *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }

@media (max-width: 768px) {
  .cyber-header { padding: .5rem .75rem; }
  .cyber-nav { flex-wrap: wrap; gap: .35rem; padding-inline: 0; justify-content: flex-start; }
  .logo { font-size: 1rem; letter-spacing: 1px; }
  .menu-toggle { display: none; order: 4; padding: .3rem .4rem; font-size: .8rem; }
  html.js .menu-toggle { display: inline-flex; }
  .lang-switcher { gap: .2rem; padding: 3px 6px; }
  .lang-btn { font-size: .75rem; }
  .lang-switcher { margin-left: auto; order: 2; }
  .logo { order: 1; }
  .theme-toggle { order: 3; margin-left: 0; padding: .3rem .4rem; font-size: .8rem; }
  .motion-controls { order: 4; flex-basis: 100%; }
  html.js .nav-links { display: none; width: 100%; order: 5; flex-basis: 100%; flex-direction: column; }
  html.js .nav-links[data-open="true"] { display: flex; }
  .nav-links li, .nav-links a { width: 100%; }
  .gallery-grid { grid-template-columns: 1fr; }
  #neo-desktop-pet { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
