/* =====================================================
   FORM.CSS – LEGACY STYLE (JANGAN DIUBAH)
===================================================== */
div.form {
	border: 1px solid #dddddd;
	background: #f9f9f9;
	color: #333333;
	padding: 6px;
	border-radius: 3px;
}

div.portlet div.form {
	border: none;
	background: transparent;
	padding: 5px;
	width: 100%;
}

div.form table.double td,
div.form table.multiple td {
	padding: 0 20px 0 0;
	vertical-align: top;
}

div.form table.double td { width: 45%; }

div.form table.linear td {
	padding: 2px 3px;
	text-align: center;
	vertical-align: middle;
}

div.form p { margin: 10px; color: #666; }

div.form p.hint { margin-left: 110px; }

div.form div.menu { text-align: right; }

div.form div.group {
	clear: left;
	padding: 5px;
	margin-bottom: 10px;
	font-weight: bold;
	background: #eeeeee;
}

div.form div.action {
	clear: left;
	margin-left: 150px;
	padding: 5px 0;
}

div.form div.simple,
div.form div.complex {
	clear: left;
	padding: 4px 0;
}

div.form div.simple label,
div.form div.complex span.label {
	float: left;
	width: 140px;
	margin-right: 10px;
	text-align: right;
}

div.form div.simple div,
div.form div.complex div.panel {
	margin-left: 150px;
}

div.form input[type=text],
div.form input[type=password],
div.form textarea,
div.form select {
	border: 1px solid #cacaca;
	border-radius: 3px;
	background: #fff;
	padding: 2px;
}

div.form input:focus,
div.form textarea:focus,
div.form select:focus {
	border-color: rgba(82,168,236,.8);
}

div.form input.error,
div.form textarea.error,
div.form select.error {
	background: #feeeee;
	border-color: #c00000;
}

span.required,
label.error,
div.errorMessage {
	color: #c00000;
}

div.errorSummary {
	border: 2px solid #c00000;
	background: #feeeee;
	padding: 10px;
	margin-bottom: 20px;
}

textarea.template { display: none; }

/* AUTOCOMPLETE */
.ui-autocomplete {
	max-height: 200px;
	overflow-y: auto;
	overflow-x: hidden;
}

/* =====================================================
   MODERN FORM OVERRIDE (STYLE BARU)
   ⚠️ SEMUA DI BAWAH INI BOLEH DIEDIT
===================================================== */

div.form {
	background: #ffffff;
	border: 1px solid #e1e6ef;
	border-radius: 6px;
	padding: 20px;
	box-shadow: 0 4px 12px rgba(0,0,0,.06);
}

/* note */
div.form p.note {
	font-size: 13px;
	color: #666;
	margin-bottom: 15px;
}

/* row */
div.form div.simple,
div.form div.complex {
	padding: 8px 0;
}

/* label */
div.form div.simple label,
div.form div.complex span.label {
	width: 150px;
	font-weight: 600;
	font-size: 13px;
	color: #444;
	padding-top: 8px;
}

/* input wrapper */
div.form div.simple div,
div.form div.complex div.panel {
	margin-left: 165px;
}

/* input */
div.form input[type=text],
div.form input[type=password],
div.form textarea,
div.form select {
	width: 320px;
	padding: 8px 10px;
	font-size: 13px;
	border-radius: 5px;
	border: 1px solid #ccd3e0;
	transition: all .2s ease;
}

div.form textarea {
	min-height: 80px;
	resize: vertical;
}

/* focus */
div.form input:focus,
div.form textarea:focus,
div.form select:focus {
	border-color: #1f3c88;
	box-shadow: 0 0 0 2px rgba(31,60,136,.15);
	outline: none;
}

/* disabled */
div.form input[disabled],
div.form textarea[disabled],
div.form select[disabled],
input.readonly {
	background: #f3f5f9;
	color: #777;
}

/* error modern */
div.form input.error,
div.form textarea.error,
div.form select.error {
	background: #fff5f5;
	border-color: #d10000;
}

div.errorMessage {
	font-size: 12px;
	margin-top: 4px;
}

/* action button */
div.form div.action {
	margin-left: 165px;
	padding-top: 15px;
}

div.form div.action input[type=submit] {
	background: #1f3c88;
	color: #fff;
	border: none;
	padding: 10px 22px;
	font-size: 13px;
	font-weight: 600;
	border-radius: 6px;
	cursor: pointer;
	transition: .25s;
}

div.form div.action input[type=submit]:hover {
	background: #16306d;
	box-shadow: 0 4px 10px rgba(31,60,136,.25);
}

/* responsive */
@media (max-width: 768px) {
	div.form div.simple label {
		float: none;
		width: auto;
		text-align: left;
		padding-bottom: 5px;
	}

	div.form div.simple div {
		margin-left: 0;
	}

	div.form input,
	div.form textarea,
	div.form select {
		width: 100%;
	}

	div.form div.action {
		margin-left: 0;
	}
}
