/* ==========================================================================
   CALCULATOR APPLICATION STYLES
   ========================================================================== */

.calc-app {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  background: var(--bg-surface-solid);
  overflow: hidden;
}

.calc-display {
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  background: rgba(0, 0, 0, 0.2);
  border-bottom: var(--glass-border-subtle);
  min-height: 90px;
}

.calc-prev-expression {
  font-size: 13px;
  color: var(--text-muted);
  min-height: 20px;
  word-break: break-all;
}

.calc-current-value {
  font-size: 32px;
  font-weight: 600;
  color: var(--text-primary);
  word-break: break-all;
  line-height: 1.2;
}

.calc-keypad {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  padding: 12px;
}

.calc-btn {
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.05);
  font-size: 16px;
  font-weight: 500;
  color: var(--text-primary);
  border: var(--glass-border-subtle);
  transition: all var(--transition-fast);
}

.calc-btn:hover {
  background: rgba(255, 255, 255, 0.12);
  transform: scale(0.98);
}

.calc-btn:active {
  transform: scale(0.94);
}

.calc-btn.operator {
  background: var(--accent-light);
  color: var(--accent);
  font-weight: 600;
}

.calc-btn.operator:hover {
  background: var(--accent);
  color: #ffffff;
}

.calc-btn.equals {
  background: var(--accent);
  color: #ffffff;
  font-weight: 600;
}

.calc-btn.equals:hover {
  background: var(--accent-hover);
}

.calc-btn.action {
  color: var(--warning);
}

/* ======================================================================
   LIGHT THEME OVERRIDES FOR CALCULATOR
   ====================================================================== */
[data-theme="light"] .calc-display {
  background: rgba(0, 0, 0, 0.04);
}

[data-theme="light"] .calc-btn {
  background: rgba(0, 0, 0, 0.05);
  border-color: rgba(0, 0, 0, 0.08);
}

[data-theme="light"] .calc-btn:hover {
  background: rgba(0, 0, 0, 0.1);
}

/* ======================================================================
   DARK THEME OPERATOR CONTRAST
   ====================================================================== */
[data-theme="dark"] .calc-btn.operator {
  background: rgba(255, 255, 255, 0.08);
  color: var(--text-primary);
}

[data-theme="dark"] .calc-btn.operator:hover {
  background: rgba(255, 255, 255, 0.16);
  color: var(--text-primary);
}
