/* Annual charge statement: editable source fields, browser-only document. */
[data-tool="service-charge-reconciliation"] .scr-row { min-width: 0; border: 1px solid #bdc9c2; border-radius: 8px; padding: 16px; margin: 16px 0; }
[data-tool="service-charge-reconciliation"] input, [data-tool="service-charge-reconciliation"] select { max-width: 100%; box-sizing: border-box; }
[data-tool="service-charge-reconciliation"] .scr-document { overflow-wrap: anywhere; white-space: pre-wrap; }
[data-tool="service-charge-reconciliation"] .scr-document p { margin: 0 0 12px; }
@media print {
	[data-tool="service-charge-reconciliation"] > .tool-form,
	[data-tool="service-charge-reconciliation"] .tool-main,
	[data-tool="service-charge-reconciliation"] .tool-actions { display: none !important; }
	[data-tool="service-charge-reconciliation"] .scr-document { padding: 0; background: white; color: black; box-shadow: none; }
	[data-tool="service-charge-reconciliation"] .scr-document p { break-inside: avoid; }
}

/* Friendly reminder: the editable text and print mirror share one in-memory value. */
[data-tool="unpaid-rent-reminder"] > *,
[data-tool="unpaid-rent-reminder"] .tool-field { min-width: 0; }
[data-tool="unpaid-rent-reminder"] .tool-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
[data-tool="unpaid-rent-reminder"] textarea {
	box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;
	padding: 12px; border: 1px solid #b8c5c0; border-radius: 6px;
	font: inherit; resize: vertical;
}
[data-tool="unpaid-rent-reminder"] [aria-invalid="true"] { border: 2px solid #a12622; outline: 1px solid #a12622; }
[data-tool="unpaid-rent-reminder"] .tool-message,
[data-tool="unpaid-rent-reminder"] .tool-btn { overflow-wrap: anywhere; white-space: normal; }
[data-tool="unpaid-rent-reminder"] .tool-btn:disabled { opacity: .55; cursor: default; }
.tool-reminder-print-text, .tool-reminder-print-blocked { display: none; }
@media screen and (max-width: 991px) {
	.tool-widget[data-tool="unpaid-rent-reminder"] { grid-template-columns: minmax(0, 1fr); }
	[data-tool="unpaid-rent-reminder"] .tool-fields { grid-template-columns: minmax(0, 1fr); }
}
@media print {
	.tool-reminder-page .tools-article-head, .tool-reminder-page .tools-lead,
	.tool-reminder-page .tools-body, [data-tool="unpaid-rent-reminder"] > .tool-form,
	[data-tool="unpaid-rent-reminder"] .tool-main,
	.tool-reminder-document > :not(.tool-reminder-print-text) { display: none !important; }
	.tool-reminder-page .tools-page--top { padding: 0 !important; margin: 0 !important; }
	.tool-reminder-page .container-medium { max-width: none; }
	.tool-reminder-document, [data-tool="unpaid-rent-reminder"] .tool-ok { margin: 0; background: white; break-inside: auto; }
	.tool-reminder-print-text {
		display: block; white-space: pre-wrap; overflow-wrap: anywhere;
		font: 11pt/1.5 Arial, sans-serif; color: black; orphans: 3; widows: 3;
	}
	[data-tool="unpaid-rent-reminder"]:not([data-state="ok"]) .tool-reminder-print-blocked,
	[data-tool="unpaid-rent-reminder"][data-reminder-stale="true"] .tool-reminder-print-blocked,
	[data-tool="unpaid-rent-reminder"][data-reminder-blank="true"] .tool-reminder-print-blocked { display: block; }
}

/* Tenant statement identity remains readable in both page and print output. */
[data-tool="rent-arrears"] [data-statement-identity] p {
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}
@media print {
	[data-tool="rent-arrears"] .tool-result-col,
	[data-tool="rent-arrears"] .tool-detail { break-inside: auto; }
	[data-tool="rent-arrears"] [data-statement-heading] { break-after: avoid; }
}

[data-tool="service-charge-reconciliation"] .scr-table { width:100%; table-layout:fixed; border-collapse:collapse; white-space:normal; margin:16px 0; font-size:14px; }
[data-tool="service-charge-reconciliation"] .scr-table td, [data-tool="service-charge-reconciliation"] .scr-table th { padding:8px 4px; vertical-align:top; border-bottom:1px solid #bdc9c2; overflow-wrap:anywhere; }
@media (max-width:600px) {
 [data-tool="service-charge-reconciliation"] .scr-table { font-size:12px; }
}
@media print {
 [data-tool="service-charge-reconciliation"] .scr-table { font-size:10pt; }
 [data-tool="service-charge-reconciliation"] .scr-table thead { display:table-header-group; }
 [data-tool="service-charge-reconciliation"] .scr-table tr { break-inside:avoid; }
}

[data-tool="service-charge-reconciliation"] textarea {
	box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;
	padding: 12px; border: 1px solid #b8c5c0; border-radius: 6px;
	font: inherit; resize: vertical;
}
[data-tool="service-charge-reconciliation"] .tool-btn:disabled { opacity: .55; cursor: default; }
