.spring-card{background:radial-gradient(circle at 50% 45%,#28373d,#111f24);position:relative;overflow:hidden;touch-action:pan-y}
.spring-field{position:absolute;inset:0;pointer-events:none}
.spring-anchor{position:absolute;left:50%;top:49%;width:8px;height:8px;background:#bcebb2;border:1px solid white;border-radius:50%;transform:translate(-50%,-50%);opacity:.45}
.spring-wire{position:absolute;left:50%;top:49%;width:100px;height:1px;background:linear-gradient(90deg,#a9eaae85,#d8ffca);transform-origin:0 50%;pointer-events:none}
.spring-body{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);z-index:1;min-width:132px;min-height:63px;background:#c0ecb1;color:#152821;border:1px solid #e7ffdd;border-radius:40px;display:grid;place-items:center;cursor:grab;font:700 12px Arial,sans-serif;letter-spacing:.12em;box-shadow:0 12px 40px #03140d7d;user-select:none;touch-action:none;will-change:transform}
.spring-body:active{cursor:grabbing}.spring-body:focus-visible{outline:3px solid #fff;outline-offset:5px}
.spring-instructions{position:absolute;left:22px;top:22px;color:#a0cbb5;font:10px monospace;letter-spacing:.12em}
.spring-card .card-coordinates{color:#94b5a6}
.spring-playground[hidden]{display:none!important}
.spring-playground{position:absolute;inset:0;background:radial-gradient(circle at center,#283c3a,#102023);display:grid;place-items:center}
.spring-playground .spring-body{min-width:164px;min-height:70px}
.spring-playground .spring-instructions{left:28px;top:28px}
.spring-playground .spring-wire{background:#bbf4bca6}
@media(prefers-reduced-motion:reduce){.spring-wire{display:none}.spring-body{will-change:auto}}

.spring-studio-link{margin-top:24px;border:0;border-bottom:1px solid currentColor;background:transparent;color:#263c2f;padding:0 0 8px;font:800 10px Arial,sans-serif;letter-spacing:.1em}.spring-studio-link:hover{color:#73935f}
