.pirem-fil {
	--fil-ink: var(--pirem-ink, #30251f);
	--fil-accent: var(--pirem-link, #873c2f);
	--fil-surface: var(--pirem-surface, #fffaf4);
	--fil-border: var(--pirem-line, #d8b9a5);
	color: var(--fil-ink);
}
.pirem-fil [hidden] { display: none !important; }
.pirem-fil fieldset,
.pirem-fil article {
	margin: 0 0 1rem;
	padding: clamp(.85rem, 3vw, 1.35rem);
	border: 1px solid var(--fil-border);
	border-radius: .85rem;
	background: var(--fil-surface);
}
.pirem-fil legend { font-weight: 650; }
.pirem-fil-types { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: .85rem; }
.pirem-fil-types label {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	min-height: 44px;
	padding: 0 .65rem;
	border: 1px solid var(--fil-border);
	border-radius: .55rem;
	cursor: pointer;
}
.pirem-fil-types label:has(input:checked) { border-color: var(--fil-accent); font-weight: 650; }
.pirem-fil input[type=radio] { accent-color: var(--fil-accent); }
.pirem-fil :is(input[type=url], textarea) {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: .25rem 0 .75rem;
	padding: .65rem;
	border: 1px solid var(--fil-border);
	border-radius: .45rem;
	background: #fff;
	color: var(--fil-ink);
	font: inherit;
}
.pirem-fil button {
	min-height: 44px;
	padding: .55rem .9rem;
	border: 0;
	border-radius: .55rem;
	background: var(--fil-accent);
	color: #fff;
	font: inherit;
	cursor: pointer;
}
.pirem-fil button:disabled { opacity: .65; cursor: wait; }
.pirem-fil :focus-visible { outline: 2px solid var(--fil-accent); outline-offset: 3px; }
.pirem-fil article h3 { margin: 0; font-size: 1.05rem; color: var(--fil-ink); }
.pirem-fil article time { display: block; font-size: .85rem; }
.pirem-fil article p { margin: .6rem 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.pirem-fil article a { display: inline-block; margin-top: .4rem; color: var(--fil-accent); overflow-wrap: anywhere; }
