.container{
  max-width:1100px;
  margin:auto;
  padding:20px;
}

h2{
  margin-bottom:20px;
}

/* Layout */
.top{
  display:flex;
  gap:30px;
  flex-wrap:wrap;
}

.card{
  background:#fff;
  border-radius:15px;
  padding:20px;
  box-shadow:0 5px 15px rgba(0,0,0,0.05);
}

.inputs{flex:1}
.chart-box{
  flex:1;
  display:flex;
  justify-content:center;
  align-items:center;
}

/* Toggle */
.switch{
  display:flex;
  background:#eee;
  border-radius:30px;
  overflow:hidden;
  margin-bottom:20px;
}

.switch button{
  flex:1;
  padding:10px;
  border:none;
  cursor:pointer;
  background:none;
  font-weight:bold;
}

.switch .active{
  background:#00b386;
  color:#fff;
}

/* Input */
.input-box{margin-bottom:18px;}

label{
  font-size:14px;
  display:block;
  margin-bottom:5px;
}

input[type=range]{
  width:100%;
}

.value{
  font-weight:bold;
  margin-top:4px;
}

/* Result */
.result{
  margin-top:15px;
}

.result div{
  display:flex;
  justify-content:space-between;
  margin-bottom:8px;
}

.result .total{
  font-size:18px;
  font-weight:bold;
}

/* Table */
table{
  width:100%;
  border-collapse:collapse;
  margin-top:20px;
}

th, td{
  padding:8px;
  border-bottom:1px solid #eee;
  text-align:center;
}

/* Chart */
canvas{
  max-width:220px;
}