.calc-container { padding: 20px; border: 1px solid #ddd; border-radius: 8px; max-width: 500px; margin: auto; }
.input-group { margin-bottom: 15px; }
.input-group label { display: block; margin-bottom: 5px; font-weight: bold; }
.input-group input, .input-group select { width: 100%; padding: 8px; box-sizing: border-box; }
button { width: 100%; padding: 10px; background: #0073aa; color: white; border: none; cursor: pointer; }
#detailTable { width: 100%; margin-top: 20px; border-collapse: collapse; font-size: 14px; }
#detailTable th, #detailTable td { border: 1px solid #eee; padding: 8px; text-align: right; }
.total-result { background: #f9f9f9; padding: 15px; margin-top: 20px; text-align: center; font-size: 1.2em; }