.srivl-tool {
	max-width: 900px;
	margin: 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: #1a1a1a;
}

.srivl-form {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

.srivl-input {
	flex: 1 1 260px;
	padding: 12px 14px;
	font-size: 16px;
	border: 1px solid #c7ccd1;
	border-radius: 6px;
}

.srivl-btn {
	padding: 12px 22px;
	font-size: 15px;
	font-weight: 600;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	color: #fff;
	transition: opacity 0.15s ease;
}

.srivl-btn:hover {
	opacity: 0.9;
}

.srivl-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.srivl-btn-primary {
	background: #1c3f94;
}

.srivl-btn-toggle {
	background: #3f7f93;
	width: 100%;
	margin-top: 12px;
}

.srivl-btn-toggle.srivl-btn-active {
	background: #e08a1e;
}

.srivl-message {
	display: none;
	padding: 12px 14px;
	border-radius: 6px;
	margin-bottom: 16px;
	font-size: 14px;
}

.srivl-message-error {
	background: #fdecea;
	color: #a33;
	border: 1px solid #f3c5c0;
}

.srivl-summary {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 20px;
}

.srivl-col {
	flex: 1 1 200px;
}

.srivl-col-wide {
	flex: 2 1 320px;
}

.srivl-label {
	font-size: 13px;
	color: #555;
	font-weight: 600;
}

.srivl-mt {
	margin-top: 16px;
}

.srivl-value-lg {
	font-size: 28px;
	font-weight: 600;
}

.srivl-total-row {
	display: flex;
	justify-content: space-between;
	border: 1px solid #c7ccd1;
	border-radius: 4px;
	padding: 10px 12px;
	font-weight: 600;
	margin: 8px 0;
}

.srivl-amount-line {
	font-size: 16px;
}

.srivl-amount-line strong {
	color: #c0392b;
}

.srivl-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.srivl-table th {
	background: #1c3f94;
	color: #fff;
	padding: 10px;
	text-align: left;
}

.srivl-table td {
	padding: 10px;
	border-bottom: 1px solid #e2e5e8;
}

.srivl-table-header th,
.srivl-table-header td {
	text-align: center;
}

.srivl-align-right {
	text-align: right;
}

.srivl-details {
	margin-top: 10px;
}

.srivl-details h3 {
	margin-bottom: 4px;
}

.srivl-subheading {
	font-weight: 600;
	margin-top: 0;
	margin-bottom: 10px;
}

.srivl-details tfoot td {
	background: #1c3f94;
	color: #fff;
	font-weight: 700;
}

.srivl-actions {
	text-align: center;
	margin-top: 20px;
}

@media (max-width: 600px) {
	.srivl-summary {
		flex-direction: column;
	}
	.srivl-table {
		font-size: 12px;
	}
}
