/* Deskrune v4c — Foundation styles (cursor REMOVED).
 *
 * Page-load reveal + View Transitions named regions + hover micro-lift.
 * No cursor follower, no wave trail. System cursor only.
 */


/* ─── Page-load reveal overlay ─────────────────────────────────────────── */

.dr-reveal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: var(--dr-paper, #faf9f5);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  transition: transform 220ms var(--dr-ease, cubic-bezier(0.45, 0, 0.55, 1)),
              opacity 200ms var(--dr-ease, cubic-bezier(0.45, 0, 0.55, 1));
}
.dr-reveal-glyph {
  width: 64px;
  height: 64px;
  color: var(--dr-clay, #c9613f);
}
.dr-reveal-rect { stroke-dasharray: 56; stroke-dashoffset: 56; }
.dr-reveal-x1   { stroke-dasharray: 12; stroke-dashoffset: 12; }
.dr-reveal-x2   { stroke-dasharray: 6;  stroke-dashoffset: 6; }
.dr-reveal-active .dr-reveal-rect { animation: dr-stroke-draw 480ms var(--dr-ease) forwards; }
.dr-reveal-active .dr-reveal-x1   { animation: dr-stroke-draw 320ms 220ms var(--dr-ease) forwards; }
.dr-reveal-active .dr-reveal-x2   { animation: dr-stroke-draw 220ms 380ms var(--dr-ease) forwards; }
@keyframes dr-stroke-draw { to { stroke-dashoffset: 0; } }
.dr-reveal.dr-reveal-done { transform: translateY(-2%); opacity: 0; }
@media (prefers-reduced-motion: reduce) { .dr-reveal { display: none !important; } }


/* ─── View Transitions named regions ──────────────────────────────────── */

:root.dr-v4 nav { view-transition-name: dr-nav; }
:root.dr-v4 .deskrune-sale-banner { view-transition-name: dr-sale-banner; }
:root.dr-v4 footer.minimal,
:root.dr-v4 footer.footer { view-transition-name: dr-footer; }
:root.dr-v4 main > section:first-child h1 { view-transition-name: dr-page-h1; }

::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 240ms;
  animation-timing-function: var(--dr-ease, cubic-bezier(0.45, 0, 0.55, 1));
}
::view-transition-old(dr-nav),
::view-transition-new(dr-nav),
::view-transition-old(dr-sale-banner),
::view-transition-new(dr-sale-banner),
::view-transition-old(dr-footer),
::view-transition-new(dr-footer) { animation-duration: 160ms; }
::view-transition-old(dr-page-h1),
::view-transition-new(dr-page-h1) { animation-duration: 320ms; }
@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(*),
  ::view-transition-new(*) { animation-duration: 0.01ms !important; }
}


/* ─── Hover micro-lift ─────────────────────────────────────────────────── */

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  :root.dr-v4 a,
  :root.dr-v4 button,
  :root.dr-v4 summary,
  :root.dr-v4 [role="button"] {
    transition: transform var(--dr-dur-short) var(--dr-ease),
                color var(--dr-dur-short) ease,
                background-color var(--dr-dur-short) ease,
                box-shadow var(--dr-dur-short) ease,
                opacity var(--dr-dur-short) ease;
  }
  :root.dr-v4 a:hover,
  :root.dr-v4 button:hover:not(:disabled),
  :root.dr-v4 summary:hover {
    transform: translateY(-0.5px);
  }
}
