body.light-mode{
  background-color: gainsboro;
}
body.light-mode .mode-btn{
    background-color: black;
    color: white;
    border: 1px solid white;
}
body {
  min-height: 100vh;
  background-color: black;
}
.mode-btn {
  background-color: white;
  color: black;
  border: 1px solid black;
  transition: all 0.3s ease;
}
.calc-body {
    max-width: 400px;   /* limit size on desktop */
    width: 100%;        /* responsive */
    border-radius: 5px;
    padding-top: 1px;
    display: flex;
    flex-direction: column;
}
.buttons {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* THIS fixes the gap */
}
#screen{
    font-family:monospace ;
    font-size: 35px;
    background: gray;
    height: 2.5em;
    border: ridge 2px yellow;
    border-radius: 5px;
    pointer-events: none;
    color: orange; 
}
.keysection {
    display: flex;
    justify-content: space-between;
}
.btns {
    flex: 1;
    font-size: 1.5rem;
    border-radius: 1em;
    height: 60px;
    width: 22%;   /* 4 buttons per row */
    margin: 1%;
}