/* ============================================
   CALCULATOR-SPECIFIC STYLES
   ============================================ */

/* Desmos graph page specific */
#desmos-calculator {
  width: 100%;
  height: 600px;
  border-radius: 0 0 var(--radius-xl) var(--radius-xl);
}
.graph-wrapper {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  border: 1px solid #BFDBFE;
}
.graph-toolbar {
  background: var(--color-dark);
  padding: 12px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* Scientific calculator embed */
.sci-calc-wrapper { max-width: 500px; margin: 0 auto; }

/* Zoom wrapper */
.calc-zoom-inner {
  transform-origin: top center;
  transition: transform 0.2s ease;
}

/* Calc page hero — slimmer */
.calc-hero {
  padding: 40px 0 24px;
  background: linear-gradient(135deg, var(--color-primary-light) 0%, #fff 70%);
}
.calc-hero h1 { margin-bottom: 12px; }
.calc-hero-sub {
  font-size: 1.05rem;
  color: var(--color-gray-500);
  max-width: 720px;
  margin-bottom: 0;
}

/* Loading spinner alternate */
.calc-loading-spinner {
  width: 40px; height: 40px;
  border: 4px solid var(--color-gray-200);
  border-top-color: var(--color-primary);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}

/* Mobile graph fixes */
@media (max-width: 768px) {
  #desmos-calculator { height: 500px; }
  .calc-container, .calc-container iframe { min-height: 600px; height: 600px; }
}
