/* Calculator tab — cyan diff-theme (matches tab accent #37c0ff) */
#tab-calculator .calc-workspace-panel {
  overflow: visible;
}

.diff-cat-pill.active.diff-theme-calc,
.diff-theme-calc .diff-cat-pill.active {
  border-color: rgba(55, 192, 255, 0.55);
  color: #7dd9ff;
  background: rgba(55, 192, 255, 0.12);
  box-shadow: 0 0 18px rgba(55, 192, 255, 0.28);
}
.diff-theme-calc .diff-mode-select:focus {
  outline: none;
  border-color: rgba(55, 192, 255, 0.55);
  box-shadow: 0 0 0 2px rgba(55, 192, 255, 0.15);
}
.diff-theme-calc .diff-preset-chip:hover {
  border-color: rgba(55, 192, 255, 0.35);
}
.diff-theme-calc .diff-rail-dot.active {
  background: #37c0ff;
  box-shadow: 0 0 10px rgba(55, 192, 255, 0.6);
}

.calc-trial-badge {
  margin-bottom: 0.5rem;
}

.calc-input-glass {
  border-radius: 12px;
  padding: 0.35rem;
  background: linear-gradient(145deg, rgba(55, 192, 255, 0.04), rgba(0, 0, 0, 0.28));
  border: 1px solid rgba(55, 192, 255, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.calc-input-glass .calc-input {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.22);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.calc-input-glass .calc-input:focus {
  outline: none;
  border-color: rgba(55, 192, 255, 0.55);
  box-shadow: 0 0 0 2px rgba(55, 192, 255, 0.15);
}

#tab-calculator .key-btn:hover {
  border-color: rgba(55, 192, 255, 0.35);
  box-shadow: 0 0 12px rgba(55, 192, 255, 0.1);
}

.keypad-group[data-calc-cat-hidden='1'] {
  display: none;
}

.calc-run-btn.loading {
  pointer-events: none;
  position: relative;
}
.calc-run-btn.loading::after {
  content: '';
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  border: 2px solid transparent;
  border-top-color: #37c0ff;
  animation: diffSpin 0.8s linear infinite;
}

#calcStepsHost {
  margin-top: 0.65rem;
}
