/* CSSエントリーポイント。上から順に基盤→共通UI→ページ固有→特殊演出を読み込む。 */

/* 基盤と共通コンポーネント */
@import url("./parts/foundation.css");
@import url("./parts/shared-components.css");
@import url("./parts/i18n.css");
@import url("./parts/home-interactions.css");
@import url("./parts/home-links-polish.css");
@import url("./parts/motion.css");

/* ページ・機能固有 */
@import url("./parts/downloads.css");
@import url("./parts/portfolio-modal.css");
@import url("./parts/portfolio-playlist.css");
@import url("./parts/product-cards.css");
@import url("./parts/ui-polish.css");
@import url("./parts/catalog.css");
@import url("./parts/download-catalog.css");
@import url("./parts/downloads-showcase.css");
@import url("./parts/downloads-card-polish.css");
@import url("./parts/boot.css");
@import url("./parts/responsive-fixes.css");

/* キーボード隠しコマンド */
@import url("./parts/secret-effects.css");
@import url("./parts/koala-snake.css");

/* KOALAVISUAL、LINKS、DOWNLOADS系見出しは字面より四角が下寄りに見えるため、対象マーカーだけ2px上へ補正する。 */
.site-header .brand::before,
body[data-page="home"] .home-links-section .section-label::before,
body[data-page="downloads"] .section-label::before {
  transform: translateY(-2px);
}

/* COPY PAGE LINKはトップのVIEW WORKSと同様に、面を維持したまま文字だけ赤くする。 */
body[data-page="downloads"] .btn[data-copy-link]:hover,
body[data-page="downloads"] .btn[data-copy-link]:focus-visible {
  --surface: var(--panel);
  color: var(--accent);
  background: var(--ink);
}

/* data-revealは同時表示せず、JSで上から順に開始する。 */
[data-reveal].reveal-staggered {
  transition: none !important;
  animation: kv-reveal-slow .5s cubic-bezier(.22, .72, .2, 1) both;
}

@keyframes kv-reveal-slow {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal].reveal-staggered {
    animation: none;
  }
}
