:root {
  --green: #008753;
  --dark-green: #006644;
  --gray: #f3f3f3;
}

body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background: #f8f9fa;
}

.page-wrapper {
  min-height: 100vh;
  display: flex;
  justify-content: center; /* horizontal centering */
  padding: 2rem 0; /* vertical space */
}

main {
  background: #fff;
  border: 4px solid var(--green);
  border-radius: 12px;
  max-width: 420px;
  padding: 1rem;
}

nav {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

nav button[aria-selected="true"] {
  background: var(--green);
  color: white;
}

.display {
  width: 100%;
  height: 3rem;
  font-size: 1.5rem;
  text-align: right;
  margin-bottom: 0.5rem;
}

.top-controls {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}

.buttons {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.5rem;
}

.calc-btn {
  padding: 1rem;
  border: 2px solid var(--green);
  border-radius: 6px;
  background: var(--gray);
}

.calc-btn.operator {
  background: var(--green);
  color: white;
}

.hidden {
  display: none;
}

/* FIX: Only hide sections that are tab panels */
section[role="tabpanel"] {
  display: none;
}

/* Show the active tab panel */
section[role="tabpanel"].active {
  display: block;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
}