/* Takayu reference timing at 0.8x playback. Static content remains visible. */
:root {
  --bk-motion-hover:225ms;
  --bk-motion-out:cubic-bezier(.33,1,.68,1);
  --bk-motion-arrive:cubic-bezier(.65,0,.35,1);
}
html[data-page-motion] :is(button,a,[role=button]) { -webkit-tap-highlight-color:transparent; }
html[data-page-motion] :is(button,[role=button]):not(:disabled) {
  transition:background-color var(--bk-motion-hover) var(--bk-motion-out),border-color var(--bk-motion-hover) var(--bk-motion-out),box-shadow var(--bk-motion-hover) var(--bk-motion-out),color var(--bk-motion-hover) var(--bk-motion-out);
}
/* Native top-layer exit retains its own semantics and immediate focus return. */
html[data-page-motion] dialog {
  opacity:0;
  transition:opacity 275ms cubic-bezier(.5,0,.75,0),display 275ms allow-discrete,overlay 275ms allow-discrete;
}
html[data-page-motion] dialog[open] {opacity:1;}
html[data-page-motion] dialog::backdrop {
  opacity:0;
  transition:opacity 275ms cubic-bezier(.5,0,.75,0),display 275ms allow-discrete,overlay 275ms allow-discrete;
}
html[data-page-motion] dialog[open]::backdrop {opacity:1;transition:opacity 937.5ms var(--bk-motion-out),display 937.5ms allow-discrete,overlay 937.5ms allow-discrete;}
@starting-style {html[data-page-motion] dialog[open]::backdrop {opacity:0;}}
/* Base UI waits for these authored exit animations before unmounting. */
html[data-page-motion=webbook-navigation] [data-slot=dialog-overlay][data-open] {animation:bk-backdrop-in 937.5ms var(--bk-motion-out);}
html[data-page-motion=webbook-navigation] [data-slot=dialog-overlay][data-closed] {animation:bk-backdrop-out 275ms cubic-bezier(.5,0,.75,0);}
html[data-page-motion=webbook-navigation] [data-slot=dialog-content]:not(.audited-reader-dialog)[data-open] {animation:none;}
html[data-page-motion=webbook-navigation] [data-slot=dialog-content]:not(.audited-reader-dialog)[data-closed] {animation:bk-popup-out 275ms cubic-bezier(.5,0,.75,0);}
@keyframes bk-backdrop-in {from{opacity:0}to{opacity:1}}
@keyframes bk-backdrop-out {from{opacity:1}to{opacity:0}}
@keyframes bk-popup-out {from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}
html[data-page-motion=webbook-navigation] .reader-tools-panel {animation:none;}
html[data-page-motion=webbook-navigation] .reader-tools-panel[data-motion-exiting=true] {pointer-events:none;animation:bk-popup-out 275ms cubic-bezier(.5,0,.75,0) both;}
/* Disclosure exits use discrete visibility, preserving the existing layout. */
html[data-page-motion=webbook-navigation] .aero-lesson-content {
  opacity:1;
  transition:opacity 275ms cubic-bezier(.5,0,.75,0),display 275ms allow-discrete;
}
html[data-page-motion=webbook-navigation] .aero-lesson-content[hidden] {opacity:0;}
html[data-page-motion=webbook-navigation] :is(.aero-primary-button,.panel-resume,.aero-chapter-row,.aero-lesson,.aero-row-arrow,.aero-chapter-action svg,.reader-tools-face,.reader-tool-link svg) {
  transition-duration:225ms;transition-timing-function:var(--bk-motion-out);
}
@media(hover:hover) and (pointer:fine) {
  html[data-page-motion] :is(.exam-subtest-card,.package-card,.subject-card,.reference-activity,.reference-material-card,.posters>a) {
    transition:transform 225ms var(--bk-motion-out),box-shadow 225ms var(--bk-motion-out),border-color 225ms var(--bk-motion-out);
  }
  html[data-page-motion] :is(.exam-subtest-card,.package-card,.subject-card,.reference-activity,.reference-material-card,.posters>a):hover {
    transform:translateY(-3px);
  }
}
@media(prefers-reduced-motion:reduce) {
  html[data-page-motion] *,html[data-page-motion] *::before,html[data-page-motion] *::after {
    animation:none!important;transition:none!important;scroll-behavior:auto!important;
  }
}
html[data-motion=off][data-page-motion] *,html[data-motion=off][data-page-motion] *::before,html[data-motion=off][data-page-motion] *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}

/* Takayu Split Reveal: paired covers, fixed-size library artwork (720ms / .8). */
html[data-page-motion=webbook-navigation] .door-wing{transition:transform 900ms var(--bk-motion-arrive),opacity 900ms var(--bk-motion-arrive)}
html[data-page-motion=webbook-navigation] .is-opening .door-left{transform:translateX(-100%)}
html[data-page-motion=webbook-navigation] .is-opening .door-right{transform:translateX(100%)}
html[data-page-motion=webbook-navigation] :is(.portal-light,.portal-book){transition:opacity 900ms var(--bk-motion-arrive)}
html[data-page-motion=webbook-navigation] .reader-tools-launcher[data-dragging=true] .reader-tools-face,html[data-page-motion=webbook-navigation] .reader-tools-launcher:focus-visible .reader-tools-face{transition:none}
@media(prefers-reduced-motion:reduce){html[data-page-motion=webbook-navigation] :is(.door-wing,.portal-light,.portal-book){transition:none}}
html[data-motion=off][data-page-motion=webbook-navigation] :is(.door-wing,.portal-light,.portal-book){transition:none}
