/* casmie.css — minimal shared stylesheet.
   Tailwind utilities are the primary design language; this file holds ONLY
   what the Tailwind CDN cannot express: keyframe animations + print rules. */

/* ---- Skeleton shimmer (shared) ---- */
@keyframes casmie-shimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}
.casmie-shimmer {
  background: linear-gradient(90deg, rgba(226,232,240,.6) 25%, rgba(203,213,225,.4) 50%, rgba(226,232,240,.6) 75%);
  background-size: 200% 100%;
  animation: casmie-shimmer 1.5s infinite;
  border-radius: 8px;
}
.dark .casmie-shimmer {
  background: linear-gradient(90deg, rgba(51,65,85,.4) 25%, rgba(71,85,105,.3) 50%, rgba(51,65,85,.4) 75%);
  background-size: 200% 100%;
}

/* ---- Entrance motion ---- */
@keyframes casmie-fade-up {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
.casmie-fade-up { animation: casmie-fade-up .45s ease both; }
@keyframes casmie-pop {
  from { opacity: 0; transform: translateY(12px) scale(.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.casmie-pop { animation: casmie-pop .22s ease both; }

/* ---- Print: clean profile/report sheet ---- */
@media print {
  aside, nav, header.casmie-no-print, .casmie-no-print { display: none !important; }
  body { background: #fff !important; }
  .print-sheet { box-shadow: none !important; border: 1px solid #ddd !important; }
  main { overflow: visible !important; height: auto !important; }
}
