Redraw the inline card-into-reader SVG after sim.svg: a rounded card with the top-right cut corner and the 3x2 contact pad, sliding behind the reader bar. The viewBox grew to 72x48 and the resting position is 0, so the card is no longer clipped at the top; the insert slide is 20px. The currentColor/Tailwind theming and the reduced-motion fallback are unchanged. 1024 Python + 1063 frontend; simple-v472.
32 lines
959 B
CSS
32 lines
959 B
CSS
@tailwind base;
|
|
@tailwind components;
|
|
@tailwind utilities;
|
|
|
|
.dark .text-heading {
|
|
color: #f1f5f9;
|
|
}
|
|
/* RAM batch: the "insert the next card" cue (v3.36.0).
|
|
The card slides into the reader slot and back; the slot glows while the
|
|
run waits. The static transform is the reduced-motion fallback: the card
|
|
rests above the slot. */
|
|
.ram-insert-card {
|
|
/* the resting position is the card just above the slot (0); the insert
|
|
slide takes it 20px down, behind the reader front */
|
|
animation: ram-insert 2.8s ease-in-out infinite;
|
|
}
|
|
@keyframes ram-insert {
|
|
0%, 12% { transform: translateY(0); }
|
|
45%, 55% { transform: translateY(20px); }
|
|
88%, 100% { transform: translateY(0); }
|
|
}
|
|
.ram-insert-glow {
|
|
animation: ram-insert-glow 1.4s ease-in-out infinite;
|
|
}
|
|
@keyframes ram-insert-glow {
|
|
0%, 100% { opacity: 0.35; }
|
|
50% { opacity: 0.95; }
|
|
}
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.ram-insert-card, .ram-insert-glow { animation: none; }
|
|
}
|