/* Chime landing page — extracted from the Claude-Design artifact
   (Chime-Landing-Animated.dc.html). Keyframes are verbatim from the design's
   <style> block; the rest is the small amount of glue (hover states, the
   keyboard-key utility, responsive stage scaling, reduced-motion) that the
   dc-runtime used to apply inline. No build step — plain CSS. */

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; background: #ffffff; }
a { text-decoration: none; color: inherit; }

/* ---- Animations (verbatim from the design) ---- */
@keyframes cm-blink { 0%,90%,100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@keyframes caret { 0%,50% { opacity: 1; } 51%,100% { opacity: 0; } }
@keyframes ring { 0% { transform: scale(.5); opacity: .55; } 100% { transform: scale(2.3); opacity: 0; } }
@keyframes cm-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-15px); } }
@keyframes cm-spin { from { transform: rotate(0); } to { transform: rotate(360deg); } }
@keyframes cm-typing { 0%,80%,100% { opacity: .3; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-3px); } }
@keyframes cm-pulse { 0%,100% { transform: scale(1); opacity: .55; } 50% { transform: scale(1.55); opacity: .12; } }
@keyframes cm-keypress { 0% { transform: scale(1); background: #fff; box-shadow: 0 1px 0 rgba(0,0,0,.3); } 22% { transform: scale(.9); background: #9aa1ad; box-shadow: 0 0 0 rgba(0,0,0,.3); } 100% { transform: scale(1); background: #fff; box-shadow: 0 1px 0 rgba(0,0,0,.3); } }
@keyframes cm-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes cm-marquee-r { from { transform: translateX(-50%); } to { transform: translateX(0); } }

/* ---- Button hover states (design used style-hover attrs the runtime applied) ---- */
.cm-btn-primary { transition: background .2s ease; }
.cm-btn-primary:hover { background: #C23E2A !important; }
.cm-btn-ghost { transition: background .2s ease; }
.cm-btn-ghost:hover { background: #ffffff !important; }

/* ---- iOS keyboard key (was repeated inline in the design) ---- */
.cm-key {
  flex: 1;
  height: 40px;
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 1px 0 rgba(0,0,0,.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: -apple-system, system-ui, sans-serif;
  font-size: 17px;
  color: #1d1d1f;
}
.cm-key-mod { background: #aeb3bd; }

/* ---- Reduced motion: keep the page fully legible, drop looping motion ---- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }
}
