.pgri-iuran {
	--pgri-accent: #b71c1c;
	--pgri-border: #d9d9d9;
	--pgri-muted: #666;
	--pgri-yes: #1b7f3b;
	--pgri-no: #c62828;
	max-width: 1100px;
	margin: 1.5em auto;
	box-sizing: border-box;
}
.pgri-iuran *, .pgri-iuran *::before, .pgri-iuran *::after { box-sizing: inherit; }

.pgri-iuran__form { position: relative; }
.pgri-iuran .pgri-iuran__form label { display: block; font-weight: 700; font-size: 1.7rem !important; line-height: 1.3; margin-bottom: .5em; color: #0d3b66; }
.pgri-iuran__row { display: flex; gap: .5em; }
.pgri-iuran .pgri-iuran__row input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	padding: .7em 1em;
	border: 2px solid #9e9e9e;
	border-radius: 6px;
	font-size: 1.8rem !important;
	line-height: 1.3;
	color: #111;
	background: #fff;
	height: auto;
}
.pgri-iuran .pgri-iuran__row input[type="search"]::placeholder { font-size: 1.6rem !important; color: #6b6b6b; opacity: 1; }
.pgri-iuran .pgri-iuran__row input[type="search"]:focus { outline: 2px solid var(--pgri-accent); outline-offset: 1px; border-color: var(--pgri-accent); }
.pgri-iuran__row button {
	flex: 0 0 auto;
	padding: .7em 1.4em;
	border: 0;
	border-radius: 6px;
	background: var(--pgri-accent);
	color: #fff;
	font-size: 1.7rem !important;
	font-weight: 700;
	cursor: pointer;
}
.pgri-iuran__row button:disabled { opacity: .6; cursor: wait; }
.pgri-iuran .pgri-iuran__hint { margin: .6em 0 0; font-size: 1.3rem !important; line-height: 1.5; color: var(--pgri-muted); }

/* honeypot */
.pgri-iuran__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }

.pgri-iuran__result { margin-top: 1.2em; }
.pgri-iuran__msg { padding: .8em 1em; border-radius: 8px; background: #f5f5f5; }
.pgri-iuran__msg--error { background: #fdecea; color: #7a1010; }
.pgri-iuran__count { margin: 0 0 .8em; font-size: 1.1rem; color: var(--pgri-muted); }
.pgri-iuran__foot { margin: .6em 0 0; font-size: 1rem; color: var(--pgri-muted); }

/* ---------- Kartu hasil ---------- */
.pgri-iuran .pgri-iuran__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 440px), 1fr));
	gap: 1rem;
}
.pgri-iuran .pgri-iuran__card {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	padding: 1.3rem 1.4rem;
	background: #fff;
	border: 1px solid #e3e3e3;
	border-top: 4px solid var(--pgri-accent);
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 14px rgba(0,0,0,.04);
	writing-mode: horizontal-tb;
	text-align: left;
	word-break: normal;
	overflow-wrap: anywhere;
	color: #222;
}
.pgri-iuran .pgri-iuran__name {
	margin: 0;
	padding: 0;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .01em;
	color: #8e1111;
	text-transform: none;
}
.pgri-iuran .pgri-iuran__head {
	padding: .75rem 1rem;
	background: linear-gradient(135deg, #fdecea 0%, #fff6f5 100%);
	border: 1px solid #f4c2bf;
	border-left: 6px solid var(--pgri-accent);
	border-radius: 8px;
}
.pgri-iuran__sub { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; margin-top: .35rem; }
.pgri-iuran__npa { font-size: 1.15rem; color: var(--pgri-muted); font-variant-numeric: tabular-nums; }
.pgri-iuran__badge {
	display: inline-block;
	padding: .15em .7em;
	border-radius: 999px;
	background: #fdecea;
	color: var(--pgri-accent);
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.5;
}

.pgri-iuran__info { display: grid; grid-template-columns: 3fr 2fr; gap: .6rem 1rem; }
.pgri-iuran__meta { display: flex; flex-direction: column; gap: .1rem; min-width: 0; }
.pgri-iuran__meta-label, .pgri-iuran__tg-label, .pgri-iuran__ket-label {
	font-size: .95rem;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--pgri-muted);
}
.pgri-iuran__meta-value { font-size: 1.15rem; line-height: 1.35; color: #555; }
.pgri-iuran__meta--key .pgri-iuran__meta-value { font-size: 1.45rem; font-weight: 700; color: #0d3b66; }
.pgri-iuran__meta--key .pgri-iuran__meta-label { color: #0d3b66; }

/* Status per bulan */
.pgri-iuran__months { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
.pgri-iuran__month {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .1rem;
	padding: .6rem .3rem;
	border-radius: 8px;
	border: 1px solid transparent;
	text-align: center;
}
.pgri-iuran__month-name { font-size: 1.1rem; font-weight: 600; }
.pgri-iuran__month-icon { font-size: 1.9rem; font-weight: 700; line-height: 1.2; }
.pgri-iuran__month-text { font-size: .95rem; line-height: 1.2; }
.pgri-iuran__month--yes  { background: #e8f5ec; border-color: #bfe0c8; color: var(--pgri-yes); }
.pgri-iuran__month--no   { background: #fdecea; border-color: #f4c2bf; color: var(--pgri-no); }
.pgri-iuran__month--none { background: #f4f4f4; border-color: #e2e2e2; color: var(--pgri-muted); }

/* Tunggakan */
.pgri-iuran__tg {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: .8rem;
	padding-top: .8rem;
	border-top: 1px dashed #dcdcdc;
}
.pgri-iuran__tg-value { font-size: 1.2rem; font-weight: 700; padding: .2em .8em; border-radius: 999px; }
.pgri-iuran__tg-value--ok   { background: #e8f5ec; color: var(--pgri-yes); }
.pgri-iuran__tg-value--warn { background: var(--pgri-no); color: #fff; }
.pgri-iuran__tg-value--none { background: #f4f4f4; color: var(--pgri-muted); }

/* Keterangan (paling penting) */
.pgri-iuran .pgri-iuran__ket {
	padding: 0;
	overflow: hidden;
	background: #fff3cd;
	border: 2px solid #e0a800;
	border-radius: 8px;
}
.pgri-iuran .pgri-iuran__ket-label {
	display: block;
	padding: .45rem 1rem;
	background: #e0a800;
	color: #3d2e00;
	font-size: 1rem;
	font-weight: 800;
	letter-spacing: .08em;
}
.pgri-iuran .pgri-iuran__ket-text {
	margin: 0;
	padding: .9rem 1rem;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.5;
	color: #3d2e00;
}
.pgri-iuran .pgri-iuran__ket--warn { background: #fdecea; border-color: var(--pgri-no); }
.pgri-iuran .pgri-iuran__ket--warn .pgri-iuran__ket-label { background: var(--pgri-no); color: #fff; }
.pgri-iuran .pgri-iuran__ket--warn .pgri-iuran__ket-text { color: #7a1010; }

/* Legenda */
.pgri-iuran__legend { display: flex; flex-wrap: wrap; gap: .4rem 1rem; margin-top: 1rem; font-size: 1rem; }
.pgri-iuran__legend-item--yes  { color: var(--pgri-yes); }
.pgri-iuran__legend-item--no   { color: var(--pgri-no); }
.pgri-iuran__legend-item--none { color: var(--pgri-muted); }

@media (max-width: 600px) {
	.pgri-iuran__row { flex-direction: column; }
	.pgri-iuran .pgri-iuran__row input[type="search"] { font-size: 1.6rem !important; }
	.pgri-iuran .pgri-iuran__row input[type="search"]::placeholder { font-size: 1.4rem !important; }
	.pgri-iuran .pgri-iuran__card { padding: 1rem; }
	.pgri-iuran__tg { flex-direction: column; align-items: flex-start; }
	.pgri-iuran__info { grid-template-columns: 1fr; }
	.pgri-iuran .pgri-iuran__name { font-size: 1.45rem; }
}
