/* Arcadia Gauge — Standalone gauge components
   Usage: <link href="_content/Arcadia.Gauge/css/arcadia-gauge.css" rel="stylesheet" />
   Free forever. MIT licensed. Part of Arcadia Controls.
*/

.arcadia-gauge { display: inline-block; }

/* Editable gauge */
.arcadia-gauge--editable svg { cursor: pointer; }
.arcadia-gauge--editable svg:active { cursor: grabbing; }

/* Value arc animation — draws the arc from 0 to final value */
.arcadia-gauge__arc--animated {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  animation: arcadia-gauge-draw 1s cubic-bezier(0.25, 0.1, 0.25, 1) forwards;
}

/* Needle animation — swings from start to value */
.arcadia-gauge__needle--animated {
  transform-origin: var(--gauge-cx, 50%) var(--gauge-cy, 50%);
  animation: arcadia-gauge-needle 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes arcadia-gauge-draw {
  to { stroke-dashoffset: 0; }
}

@keyframes arcadia-gauge-needle {
  from { opacity: 0; transform: scale(0.5); }
  to { opacity: 1; transform: scale(1); }
}

/* Screen reader only */
.arcadia-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0;
  margin: -1px; overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border-width: 0;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .arcadia-gauge__arc--animated,
  .arcadia-gauge__needle--animated {
    animation: none !important;
    stroke-dashoffset: 0 !important;
  }
}
