:root {
	--pr-color-ink: #16233b;
	--pr-color-navy: #183153;
	--pr-color-red: #d64045;
	--pr-color-surface: #ffffff;
	--pr-color-background: #f4f7fb;
	--pr-color-border: #e3e9f2;
	--pr-radius-card: 1.35rem;
	--pr-radius-control: 999px;
	--pr-shadow-card: 0 1rem 2.2rem rgb(24 49 83 / 9%);
	--pr-shadow-soft: 0 1.4rem 3rem rgb(24 49 83 / 11%);
	--pr-space: 1rem;
	font-family:
		-apple-system,
		BlinkMacSystemFont,
		"Segoe UI",
		sans-serif;
	color: var(--pr-color-ink);
	background: var(--pr-color-background);
}

.pr-screen {
	padding: 0.75rem max(0.5rem, env(safe-area-inset-left)) 2rem max(0.5rem, env(safe-area-inset-right));
}

.pr-card {
	max-width: 42rem;
	margin-inline: auto;
	padding: clamp(1.1rem, 4.8vw, 1.85rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: var(--pr-color-surface);
	box-shadow: var(--pr-shadow-soft);
	overflow: hidden;
}

.pr-card h1 {
	margin-block: 0 0.45rem;
	color: var(--pr-color-navy);
	font-size: clamp(1.6rem, 7vw, 2.25rem);
	line-height: 1.18;
}

.pr-screen--onboarding-start .pr-card {
	max-width: 45rem;
	padding: clamp(0.85rem, 3vw, 1.25rem);
}

.pr-home-hero {
	display: grid;
	gap: clamp(0.85rem, 3.6vw, 1.25rem);
	text-align: center;
}

.pr-home-hero__picture {
	display: block;
	width: 100%;
	margin-top: 0;
}

.pr-home-hero__image {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	border-radius: clamp(1rem, 4vw, 1.4rem);
	box-shadow: 0 1rem 2rem rgb(24 49 83 / 12%);
}

.pr-home-hero__copy {
	max-width: 34rem;
	margin: 0 auto;
	color: #3d4960;
	font-size: clamp(0.98rem, 3.9vw, 1.08rem);
	font-weight: 700;
	line-height: 1.75;
}

.pr-home-hero__simulation-copy {
	max-width: 33rem;
	margin: 0 auto;
	padding: 0.75rem 0.95rem;
	border: 1px solid #f1d9dc;
	border-radius: 0.95rem;
	background: #fffafa;
	color: var(--pr-color-navy);
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1.6;
}

.pr-home-hero__main-cta {
	width: min(100%, 26rem);
	justify-self: center;
	display: grid;
	justify-items: center;
	gap: 0.12rem;
	text-align: center;
}

.pr-home-hero__main-cta-line {
	display: block;
	white-space: nowrap;
	line-height: 1.28;
	text-align: center;
}

.pr-home-hero__main-cta-line--sub {
	font-size: clamp(0.84rem, 3.6vw, 0.96rem);
	font-weight: 700;
	letter-spacing: -0.01em;
}

.pr-home-hero__main-cta-line--main {
	font-size: clamp(1rem, 4.2vw, 1.16rem);
	font-weight: 900;
	letter-spacing: -0.015em;
}

.pr-home-hero__feature-heading {
	margin: 0;
	color: var(--pr-color-red);
	font-size: 0.9rem;
	font-weight: 900;
	letter-spacing: 0.04em;
}

.pr-home-hero__feature-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.65rem;
	max-width: 40rem;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.pr-home-hero__feature-card {
	display: grid;
	gap: 0.28rem;
	min-height: 7.2rem;
	align-content: center;
	justify-items: center;
	padding: 0.85rem 0.65rem;
	border: 1px solid #f1d9dc;
	border-radius: 1rem;
	background: linear-gradient(180deg, #fff 0%, #fff7f8 100%);
	color: var(--pr-color-navy);
	box-shadow: 0 0.65rem 1.35rem rgb(24 49 83 / 8%);
	text-align: center;
}

.pr-home-hero__feature-card--simulation {
	border-color: #efb8bd;
	background: linear-gradient(180deg, #fff8f9 0%, #fff 100%);
}

.pr-home-hero__feature-icon {
	font-size: 1.65rem;
	line-height: 1;
}

.pr-home-hero__feature-title {
	color: var(--pr-color-navy);
	font-size: 0.9rem;
	font-weight: 900;
	line-height: 1.25;
}

.pr-home-hero__feature-text {
	color: #667085;
	font-size: 0.76rem;
	font-weight: 700;
	line-height: 1.35;
}

.pr-home-hero__trust-list,
.pr-register-benefits ul,
.pr-guest-signup-card ul {
	display: grid;
	gap: 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pr-home-hero__trust-list {
	max-width: 35rem;
	margin-inline: auto;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	text-align: left;
}

.pr-home-hero__trust-list li,
.pr-register-benefits li,
.pr-guest-signup-card li {
	position: relative;
	padding: 0.7rem 0.85rem 0.7rem 2rem;
	border: 1px solid #edf1f7;
	border-radius: 0.9rem;
	background: #f8fafc;
	color: var(--pr-color-navy);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.45;
}

.pr-home-hero__trust-list li::before,
.pr-register-benefits li::before,
.pr-guest-signup-card li::before {
	position: absolute;
	top: 0.72rem;
	left: 0.78rem;
	color: var(--pr-color-red);
	content: "✓";
	font-weight: 900;
}

.pr-home-hero__sub-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.65rem;
}

.pr-home-news {
	display: grid;
	gap: 0.75rem;
	margin-top: 0.35rem;
	padding: 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1.1rem;
	background: #fff;
	text-align: left;
}

.pr-home-news h2 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1.05rem;
	text-align: center;
}

.pr-home-news .pr-payrhythm-news-list,
.pr-public-contact,
.pr-public-contact__form {
	display: grid;
	gap: 0.75rem;
}

.pr-home-news__archive {
	color: var(--pr-color-navy);
	text-decoration: none;
}

.pr-home-news__empty {
	margin: 0;
	color: #4d5a70;
	font-size: 0.88rem;
	line-height: 1.6;
}

.pr-home-news__archive {
	justify-self: center;
	color: var(--pr-color-red);
	font-weight: 800;
}

.pr-public-contact__caution {
	margin: 0;
	color: #68758c;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.65;
	text-align: left;
}

.pr-screen--contact .pr-card {
	display: grid;
	gap: 0.9rem;
}

.pr-screen--contact .pr-public-contact__form label {
	display: grid;
	gap: 0.35rem;
	font-weight: 800;
}

.pr-public-contact__feedback {
	margin: 0;
	padding: 0.8rem 0.9rem;
	border-radius: 0.85rem;
	font-weight: 800;
	line-height: 1.6;
}

.pr-public-contact__feedback--success {
	border: 1px solid #bfe5ca;
	background: #f1fff5;
	color: #246b36;
}

.pr-public-contact__feedback--error {
	border: 1px solid #f2c4c8;
	background: #fff4f5;
	color: #9b242d;
}

.pr-public-contact__honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.pr-eyebrow {
	margin: 0;
	color: var(--pr-color-red);
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pr-register-benefits,
.pr-guest-signup-card,
.pr-guest-simulation-upsell {
	display: grid;
	gap: 0.8rem;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid #f1d9dc;
	border-radius: 1rem;
	background: linear-gradient(135deg, #fffafa 0%, #fff 58%, #f8fafc 100%);
}

.pr-register-benefits h2,
.pr-guest-signup-card h2,
.pr-guest-simulation-upsell h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.05rem, 4.5vw, 1.25rem);
	line-height: 1.45;
}

.pr-guest-simulation-upsell {
	margin-top: 1rem;
	background: linear-gradient(135deg, #ffffff 0%, #fffafa 64%, #f8fafc 100%);
}

.pr-guest-simulation-upsell__actions {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pr-register-benefits ul,
.pr-guest-signup-card ul {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pr-lead {
	margin-block: 0.35rem 0.85rem;
	color: #5c667a;
	font-size: clamp(0.9rem, 3.7vw, 0.95rem);
	font-weight: 600;
	line-height: 1.6;
}

.pr-guide {
	display: flex;
	gap: 0.75rem;
	align-items: center;
	margin-block: 0.85rem 1rem;
	padding: clamp(0.75rem, 3vw, 1rem);
	border: 1px solid #f1d9dc;
	border-radius: var(--pr-radius-card);
	background:
		radial-gradient(circle at 0 0, rgb(214 64 69 / 10%) 0, transparent 12rem),
		linear-gradient(135deg, #ffffff 0%, #fff8f8 48%, #f8fafc 100%);
	box-shadow: 0 1rem 2rem rgb(24 49 83 / 8%);
}

.pr-guide__avatar {
	display: grid;
	flex: 0 0 clamp(3.4rem, 15vw, 4.5rem);
	width: clamp(3.4rem, 15vw, 4.5rem);
	height: clamp(3.4rem, 15vw, 4.5rem);
	place-items: center;
	border-radius: var(--pr-radius-control);
	background: linear-gradient(145deg, #fff 0%, #fff0f1 100%);
	color: #fff;
	font-size: 1.35rem;
	box-shadow: 0 0.75rem 1.35rem rgb(24 49 83 / 14%);
	overflow: hidden;
}

.pr-guide__avatar-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.pr-guide__body {
	display: grid;
	gap: 0.35rem;
	min-width: 0;
}

.pr-guide__body p {
	margin: 0;
	color: #5c667a;
	font-size: clamp(0.98rem, 3.8vw, 1.08rem);
	line-height: 1.55;
}

.pr-guide__body .pr-guide__title,
.pr-guide__body .pr-guide__message {
	color: var(--pr-color-navy);
	font-size: clamp(1.05rem, 4.2vw, 1.2rem);
	font-weight: 900;
}

.pr-form {
	display: grid;
	gap: 1rem;
}

.pr-status {
	margin-block: 1rem;
	padding: 0.75rem;
	border-radius: 0.5rem;
	background: #eef4ff;
}

.pr-status--success {
	background: #edf8f0;
}

.pr-status--error {
	background: #fff0f0;
	color: #8a1f24;
}

.pr-form label {
	display: grid;
	gap: 0.35rem;
	font-weight: 700;
}

.pr-form input:not([type="checkbox"]),
.pr-form select {
	width: 100%;
	min-height: 3rem;
	padding: 0.78rem 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.75rem;
	font: inherit;
	font-size: 16px;
	background: #fff;
}

.pr-form button {
	width: 100%;
	min-height: 3.15rem;
	padding: 0.9rem 1rem;
	border: 0;
	border-radius: var(--pr-radius-control);
	background: var(--pr-color-red);
	color: #fff;
	font: inherit;
	font-weight: 700;
}

.pr-screen--onboarding-start .pr-form button {
	max-width: 24rem;
	margin-inline: auto;
	box-shadow: 0 0.9rem 1.8rem rgb(214 64 69 / 22%);
}

.pr-form button:disabled {
	opacity: 0.65;
	cursor: wait;
}

.pr-helper-text {
	margin-block: 0;
	padding: 0.85rem;
	border-radius: 0.85rem;
	background: #fff7f7;
	color: #5c667a;
	font-size: 0.95rem;
	line-height: 1.65;
}

.pr-field-help {
	display: block;
	margin-top: 0.35rem;
	color: var(--pr-color-muted);
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1.55;
}

.pr-form input[type="date"] {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	text-align: left;
}

.pr-checkbox-label {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.75rem;
	align-items: start;
	padding: 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.85rem;
	background: #fff;
	line-height: 1.45;
}

.pr-checkbox-label input[type="checkbox"] {
	width: 1.35rem;
	height: 1.35rem;
	margin-block-start: 0.1rem;
	accent-color: var(--pr-color-red);
}

.pr-checkbox-label strong,
.pr-checkbox-label em {
	margin-inline-start: 0.25rem;
	color: var(--pr-color-red);
	font-size: 0.82rem;
	font-style: normal;
	white-space: nowrap;
}

.pr-choice-grid {
	display: grid;
	gap: 0.65rem;
	padding: 0;
	border: 0;
}

.pr-choice-grid--compact {
	margin-top: 0.35rem;
	gap: 0.55rem;
}

.pr-choice-grid legend {
	margin-block-end: 0.5rem;
	font-weight: 800;
}

.pr-choice-card {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.75rem;
	align-items: center;
	min-height: 3.25rem;
	padding: 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.9rem;
	background: #fff;
	box-shadow: 0 0.35rem 1rem rgb(24 49 83 / 5%);
}

.pr-choice-card input[type="radio"] {
	width: 1.2rem;
	height: 1.2rem;
	accent-color: var(--pr-color-red);
}

.pr-choice-card:has(input:checked) {
	border-color: var(--pr-color-red);
	background: #fff7f7;
	box-shadow: 0 0.5rem 1.25rem rgb(214 64 69 / 12%);
}

.pr-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.pr-screen-return-actions,
.pr-simulation-reuse-actions {
	margin-top: 1rem;
}

.pr-button-link,
.pr-link-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.75rem 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-control);
	background: #fff;
	color: var(--pr-color-navy);
	font: inherit;
	font-weight: 700;
	text-decoration: none;
	white-space: normal;
	text-align: center;
	line-height: 1.35;
	overflow-wrap: anywhere;
	cursor: pointer;
}

.pr-button-link--primary {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-button-link--compact {
	width: auto;
	min-height: 2.75rem;
	padding-inline: 1.1rem;
}

.pr-dashboard {
	display: grid;
	gap: 1rem;
}

.pr-dashboard-section {
	display: grid;
	gap: 0.8rem;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
}

.pr-dashboard-section h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-dashboard-greeting {
	display: grid;
	gap: 0.25rem;
	padding: 0.95rem 1rem;
	border: 1px solid #f4c7ca;
	border-radius: var(--pr-radius-card);
	background: #fff7f7;
}

.pr-dashboard-greeting__title,
.pr-dashboard-greeting__text {
	margin: 0;
}

.pr-dashboard-greeting__title {
	color: var(--pr-color-navy);
	font-size: clamp(1.05rem, 4.6vw, 1.35rem);
	font-weight: 800;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pr-dashboard-greeting__text {
	color: #667085;
	font-size: 0.94rem;
	line-height: 1.6;
}

.pr-dashboard-section--summary {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
}

.pr-dashboard-section--fortune {
	border-color: #f2d5d7;
	background: #fffafa;
}

.pr-dashboard-section--priority-advisor {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff9f9 0%, #fff 100%);
}

.pr-dashboard-section--priority-intro {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff9f9 0%, #fff 100%);
}

.pr-dashboard-compact-tools {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.pr-dashboard-compact-tools .pr-dashboard-section {
	align-content: start;
	gap: 0.5rem;
	min-width: 0;
	padding: clamp(0.72rem, 2.6vw, 0.9rem);
}

.pr-dashboard-compact-tools .pr-dashboard-section > h3 {
	font-size: clamp(0.78rem, 3.1vw, 0.9rem);
}

.pr-dashboard-compact-tools .pr-priority-intro__copy,
.pr-dashboard-compact-tools .pr-priority-intro__note,
.pr-dashboard-compact-tools .pr-additional-borrowing-check-intro__copy,
.pr-dashboard-compact-tools .pr-additional-borrowing-check-intro__note {
	font-size: clamp(0.72rem, 2.9vw, 0.84rem);
	line-height: 1.45;
}

.pr-dashboard-compact-tools .pr-button-link {
	min-height: 2.25rem;
	padding: 0.52rem 0.58rem;
	font-size: clamp(0.72rem, 2.9vw, 0.84rem);
}

.pr-priority-intro {
	gap: 0.75rem;
}

.pr-priority-intro__copy,
.pr-priority-intro__note {
	margin: 0;
	color: #5c667a;
	font-size: 0.92rem;
	line-height: 1.65;
}

.pr-priority-intro__note {
	padding: 0.65rem 0.75rem;
	border-radius: 0.8rem;
	background: #fff;
}

.pr-repayment-priority {
	display: grid;
	gap: 1rem;
}

.pr-repayment-priority__back {
	display: grid;
	gap: 0.5rem;
}

.pr-paid-off-celebration {
	position: relative;
	display: grid;
	gap: 0.85rem;
	padding: 1rem;
	overflow: hidden;
	border: 1px solid #f4c7ca;
	border-radius: var(--pr-radius-card);
	background: linear-gradient(135deg, #fff4f5 0%, #fff 72%);
	box-shadow: var(--pr-shadow-card);
}

.pr-paid-off-celebration__confetti {
	position: absolute;
	inset: 0.25rem 0.5rem auto;
	display: flex;
	justify-content: space-between;
	pointer-events: none;
	font-size: 1.3rem;
}

.pr-paid-off-celebration__confetti span {
	animation: pr-confetti-pop 1.4s ease-in-out both;
}

.pr-paid-off-celebration__confetti span:nth-child(2) {
	animation-delay: 0.12s;
}

.pr-paid-off-celebration__confetti span:nth-child(3) {
	animation-delay: 0.22s;
}

.pr-paid-off-celebration__body {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	align-items: center;
	padding-top: 0.55rem;
}

.pr-paid-off-celebration__payris {
	width: clamp(3.2rem, 16vw, 4.5rem);
	height: clamp(3.2rem, 16vw, 4.5rem);
	object-fit: contain;
	border: 1px solid #f4c7ca;
	border-radius: 999px;
	background: #fff;
}

.pr-paid-off-celebration__text h3,
.pr-paid-off-celebration__text p {
	margin: 0;
}

.pr-paid-off-celebration__text h3 {
	color: var(--pr-color-red);
	font-size: clamp(1.15rem, 4.6vw, 1.45rem);
	line-height: 1.35;
}

.pr-paid-off-celebration__text p {
	margin-top: 0.35rem;
	color: var(--pr-color-navy);
	font-size: 0.93rem;
	font-weight: 700;
	line-height: 1.7;
}

.pr-paid-off-celebration__actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.5rem;
}

.pr-paid-off-celebration__actions .pr-button-link {
	min-width: 0;
	text-align: center;
}

@keyframes pr-confetti-pop {
	0% {
		opacity: 0;
		transform: translateY(-0.6rem) scale(0.72) rotate(-12deg);
	}
	45% {
		opacity: 1;
		transform: translateY(0.25rem) scale(1.08) rotate(8deg);
	}
	100% {
		opacity: 1;
		transform: translateY(0) scale(1) rotate(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.pr-paid-off-celebration__confetti span {
		animation: none;
	}
}

@media (min-width: 48rem) {
	.pr-paid-off-celebration__actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.pr-priority-advisor {
	gap: 0.9rem;
}

.pr-priority-advisor__lead,
.pr-priority-advisor__top p,
.pr-priority-advisor__reason,
.pr-priority-advisor__disclaimer {
	margin: 0;
	color: #5c667a;
	font-size: 0.92rem;
	line-height: 1.65;
}

.pr-priority-advisor__top {
	display: grid;
	gap: 0.65rem;
	padding: 0.9rem;
	border: 1px solid #f2b8bd;
	border-radius: 1rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
}

.pr-priority-advisor__eyebrow,
.pr-priority-advisor__badge {
	width: fit-content;
	max-width: 100%;
	margin: 0;
	padding: 0.28rem 0.68rem;
	border-radius: 999px;
	background: #fff0f1;
	color: var(--pr-color-red);
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.35;
}

.pr-priority-advisor__top h4,
.pr-priority-advisor__item h4 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1.05rem;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

.pr-priority-advisor__next {
	font-weight: 700;
}

.pr-priority-advisor__actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.5rem;
}

@media (min-width: 48rem) {
	.pr-priority-advisor__actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.pr-priority-advisor__actions .pr-button-link {
	min-width: 0;
	white-space: normal;
	text-align: center;
}

.pr-priority-advisor__list {
	display: grid;
	gap: 0.75rem;
}

.pr-priority-advisor__item {
	display: grid;
	gap: 0.65rem;
	padding: 0.85rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.4rem 1.1rem rgb(16 24 40 / 6%);
}

.pr-start-guide {
	display: grid;
	gap: 1rem;
}

.pr-start-guide-card,
.pr-start-guide-quick,
.pr-start-guide-summary {
	display: grid;
	gap: 0.85rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1.15rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
}

.pr-start-guide-card h3,
.pr-start-guide-card h4,
.pr-start-guide-summary h3,
.pr-start-guide-quick h3,
.pr-start-guide p,
.pr-start-guide ul,
.pr-start-guide ol {
	margin: 0;
}

.pr-start-guide-card p,
.pr-start-guide-summary p,
.pr-start-guide li {
	color: #5c667a;
	font-size: 0.94rem;
	line-height: 1.7;
}

.pr-start-guide-steps {
	display: grid;
	gap: 0.85rem;
}

.pr-start-guide-card {
	padding: 1rem;
}

.pr-start-guide-card__badge {
	width: fit-content;
	padding: 0.28rem 0.72rem;
	border-radius: 999px;
	background: #fff0f1;
	color: var(--pr-color-red);
	font-size: 0.82rem;
	font-weight: 900;
	letter-spacing: 0.03em;
}

.pr-start-guide-card h3,
.pr-start-guide-summary h3,
.pr-start-guide-quick h3 {
	color: var(--pr-color-navy);
	font-size: clamp(1.08rem, 4.6vw, 1.32rem);
	line-height: 1.45;
}

.pr-start-guide-card h4 {
	color: var(--pr-color-navy);
	font-size: 0.98rem;
	line-height: 1.45;
}

.pr-start-guide ul,
.pr-start-guide ol {
	display: grid;
	gap: 0.35rem;
	padding-left: 1.25rem;
}

.pr-start-guide-note {
	padding: 0.72rem 0.8rem;
	border-radius: 0.85rem;
	background: #f8fafc;
	font-size: 0.88rem !important;
}

.pr-start-guide-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.55rem;
}

.pr-start-guide-actions .pr-button-link {
	min-width: 0;
	white-space: normal;
	text-align: center;
}

.pr-start-guide-summary__closing {
	padding: 0.8rem;
	border-radius: 0.9rem;
	background: #fff7f7;
	color: var(--pr-color-navy) !important;
	font-weight: 800;
}

@media (min-width: 48rem) {
	.pr-start-guide-actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.pr-priority-advisor__item--top {
	border-color: #f2b8bd;
}

.pr-priority-advisor__disclaimer {
	padding: 0.75rem;
	border-radius: 0.85rem;
	background: #f8fafc;
}

.pr-dashboard-summary-grid,
.pr-dashboard-loan-list,
.pr-dashboard-cta-grid {
	display: grid;
	gap: 0.75rem;
}

.pr-dashboard-summary-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.6rem;
}

.pr-dashboard-cta-grid .pr-button-link,
.pr-dashboard-cta-grid .pr-link-button {
	min-width: 0;
	white-space: normal;
	text-align: center;
	line-height: 1.35;
}

.pr-dashboard-summary-card,
.pr-dashboard-loan-card {
	min-width: 0;
	padding: 0.85rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.95rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
	overflow: hidden;
}

.pr-dashboard-summary-card {
	display: flex;
	min-height: 7rem;
	flex-direction: column;
	justify-content: center;
	overflow: visible;
}

.pr-dashboard-summary-card--balance {
	min-height: 7.6rem;
}

.pr-dashboard-summary-card__label,
.pr-dashboard-summary-card__value,
.pr-dashboard-summary-card__note,
.pr-dashboard-loan-card h4,
.pr-money-luck-rank,
.pr-money-luck-action,
.pr-money-luck-payris,
.pr-dashboard-empty {
	margin: 0;
}

.pr-dashboard-summary-card__label,
.pr-dashboard-summary-card__note {
	color: #667085;
	font-size: clamp(0.76rem, 3.1vw, 0.86rem);
	line-height: 1.45;
}

.pr-dashboard-summary-card__value {
	margin-block: 0.15rem;
	color: var(--pr-color-red);
	font-size: clamp(1.12rem, 5vw, 1.8rem);
	font-weight: 800;
	line-height: 1.2;
}

.pr-dashboard-summary-card:last-child {
	grid-column: 1 / -1;
}

.pr-dashboard-summary-card--next-payment .pr-dashboard-summary-card__value {
	display: grid;
	gap: 0.32rem;
	white-space: normal;
}

.pr-dashboard-summary-card--next-payment {
	grid-column: 1 / -1;
	justify-content: start;
}

.pr-dashboard-summary-card__line {
	display: block;
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: keep-all;
}

.pr-dashboard-summary-card__line--detail {
	color: var(--pr-color-navy);
	font-size: clamp(0.96rem, 3.7vw, 1.08rem);
	line-height: 1.45;
}

.pr-money-luck-rank {
	display: inline-flex;
	width: fit-content;
	padding: 0.25rem 0.65rem;
	border-radius: 999px;
	background: var(--pr-color-red);
	color: #fff;
	font-weight: 800;
}

.pr-money-luck-action {
	font-weight: 700;
}

.pr-money-luck-payris {
	padding: 0.75rem;
	border-radius: 0.75rem;
	background: #fff;
	color: var(--pr-color-navy);
}

.pr-dashboard-loan-card {
	display: grid;
	gap: 0.75rem;
}

.pr-dashboard-loan-card--soon,
.pr-dashboard-loan-card--urgent,
.pr-dashboard-loan-card--overdue {
	border-width: 2px;
}

.pr-dashboard-loan-card--soon {
	border-color: #ffd7a3;
	background: linear-gradient(180deg, #fff9f0 0%, #fff 42%);
}

.pr-dashboard-loan-card--urgent {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff2f3 0%, #fff 42%);
}

.pr-dashboard-loan-card--overdue {
	border-color: var(--pr-color-red);
	background: linear-gradient(180deg, #fff0f1 0%, #fff 48%);
}

.pr-dashboard-loan-card--paid {
	border-color: #b7dec4;
	background: linear-gradient(180deg, #f0fff4 0%, #fff 46%);
}

.pr-dashboard-loan-card__notice {
	width: fit-content;
	max-width: 100%;
	margin: 0;
	padding: 0.35rem 0.7rem;
	border-radius: 999px;
	background: #fff7e8;
	color: #8a4b00;
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pr-dashboard-loan-card__notice--urgent,
.pr-dashboard-loan-card__notice--overdue {
	background: #fff0f1;
	color: var(--pr-color-red);
}

.pr-dashboard-loan-card__notice--paid {
	background: #eaf8ef;
	color: #17633a;
}

.pr-dashboard-loan-card__notice-detail {
	margin: -0.35rem 0 0;
	color: #17633a;
	font-size: 0.82rem;
	font-weight: 700;
}

.pr-dashboard-loan-card__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
}

.pr-dashboard-loan-card__actions .pr-button-link {
	min-width: 0;
	padding-inline: 0.7rem;
	white-space: normal;
	text-align: center;
}

.pr-dashboard-loan-list-hint {
	margin: 0;
	color: #667085;
	font-size: 0.86rem;
	line-height: 1.5;
}

.pr-dashboard-loan-list--carousel {
	display: flex;
	gap: 0.85rem;
	margin-inline: calc(clamp(0.9rem, 4vw, 1.1rem) * -1);
	padding: 0.1rem clamp(0.9rem, 4vw, 1.1rem) 0.45rem;
	overflow-x: auto;
	overflow-y: visible;
	-webkit-overflow-scrolling: touch;
	scroll-padding-inline: clamp(0.9rem, 4vw, 1.1rem);
	scroll-snap-type: x proximity;
}

.pr-dashboard-loan-list--carousel:focus-visible {
	outline: 3px solid rgb(214 64 69 / 45%);
	outline-offset: 0.2rem;
}

.pr-dashboard-loan-list--carousel .pr-dashboard-loan-card {
	flex: 0 0 min(86vw, 21rem);
	scroll-snap-align: start;
	overflow: visible;
}

.pr-loans-page-summary {
	display: grid;
	gap: 0.35rem;
}

.pr-loans-page-summary__count {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1.08rem;
	font-weight: 800;
}

.pr-loans-page-list {
	display: grid;
	gap: 0.9rem;
}

.pr-loans-page-card {
	overflow: visible;
}

.pr-loans-page-card__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1.1rem;
	line-height: 1.45;
	overflow-wrap: break-word;
	word-break: normal;
}

.pr-loans-page-card__details {
	grid-template-columns: 1fr;
}

.pr-loan-danger-zone,
.pr-loans-page-card__delete-actions {
	margin-top: 1rem;
	padding-top: 0.9rem;
	border-top: 1px solid rgba(196, 30, 58, 0.18);
}

.pr-loan-danger-zone h3 {
	margin: 0 0 0.5rem;
	color: #8a1024;
	font-size: 1rem;
}

.pr-loan-delete-button {
	width: auto;
}

.pr-loans-page-empty {
	display: grid;
	gap: 0.7rem;
}

.pr-dashboard-loan-card h4 {
	color: var(--pr-color-navy);
	font-size: 1.08rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pr-dashboard-detail-list {
	display: grid;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pr-dashboard-detail-list li {
	display: flex;
	gap: 0.75rem;
	align-items: baseline;
	justify-content: space-between;
	padding-block: 0.35rem;
	border-bottom: 1px dashed var(--pr-color-border);
}

.pr-dashboard-detail-list li:last-child {
	border-bottom: 0;
}

.pr-dashboard-detail-list span {
	flex: 0 0 auto;
	color: #667085;
	font-size: 0.86rem;
}

.pr-dashboard-detail-list strong {
	min-width: 0;
	text-align: right;
	overflow-wrap: anywhere;
}

.pr-dashboard-loan-card .pr-button-link--compact {
	width: 100%;
}

.pr-dashboard-empty {
	padding: 0.85rem;
	border-radius: 0.85rem;
	background: #fff7f7;
	color: #5c667a;
}

.pr-dashboard-empty__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1.05rem;
	font-weight: 800;
	line-height: 1.4;
}

.pr-dashboard-section--paid-off-summary {
	border-style: dashed;
	background: #f8fafc;
	opacity: 0.9;
}

.pr-dashboard-paid-off-badge {
	width: fit-content;
	margin: 0;
	padding: 0.28rem 0.7rem;
	border: 1px solid #d8d7ff;
	border-radius: 999px;
	background: #f5f4ff;
	color: #3730a3;
	font-size: 0.84rem;
	font-weight: 800;
}

.pr-dashboard-future-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pr-dashboard-future-list li {
	padding: 0.35rem 0.65rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 999px;
	background: #fff;
	color: #667085;
	font-size: 0.9rem;
}

.pr-dashboard-future-list a {
	color: var(--pr-color-red);
	font-weight: 800;
	text-decoration: none;
}

.pr-repayment-calendar {
	display: grid;
	gap: 1rem;
}

.pr-repayment-calendar-section {
	display: grid;
	gap: 0.85rem;
	min-width: 0;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
}

.pr-repayment-calendar-section--month-grid {
	gap: 1rem;
	padding: clamp(1rem, 4.5vw, 1.35rem);
	border-color: rgba(15, 23, 42, 0.08);
	border-radius: 1.35rem;
	box-shadow: 0 0.85rem 1.8rem rgba(15, 23, 42, 0.07);
}

.pr-repayment-calendar-section h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-repayment-calendar-section--header,
.pr-repayment-calendar-section--summary {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
}

.pr-repayment-calendar-section--error {
	border-color: #f4c7ca;
	background: #fff7f7;
}

.pr-repayment-calendar-month {
	margin: 0;
	color: var(--pr-color-red);
	font-size: clamp(1.35rem, 6vw, 1.9rem);
	font-weight: 800;
	line-height: 1.25;
}

.pr-repayment-calendar-month-actions,
.pr-repayment-calendar-card__actions,
.pr-repayment-calendar-footer-actions {
	display: grid;
	gap: 0.65rem;
}

.pr-repayment-calendar-list {
	display: grid;
	gap: 0.85rem;
}

.pr-repayment-calendar-grid {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: clamp(0.26rem, 1.5vw, 0.45rem);
}

.pr-repayment-calendar-grid__weekday,
.pr-repayment-calendar-grid__day {
	display: grid;
	min-width: 0;
	align-items: center;
	justify-items: center;
	justify-content: center;
	gap: 0.12rem;
	box-sizing: border-box;
	border-radius: 1rem;
	font: inherit;
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1;
}

.pr-repayment-calendar-grid__weekday {
	aspect-ratio: auto;
	min-height: auto;
	color: #8a94a6;
	font-size: 0.78rem;
	padding-block: 0.2rem;
}

.pr-repayment-calendar-grid__weekday:first-child {
	color: var(--pr-color-red);
}

.pr-repayment-calendar-grid__weekday:nth-child(7) {
	color: var(--pr-color-navy);
}

.pr-repayment-calendar-grid__day {
	position: relative;
	width: 100%;
	aspect-ratio: 1;
	min-height: clamp(2.55rem, 11.5vw, 3.4rem);
	padding: 0.24rem;
	border: 1px solid #e8edf5;
	border-radius: clamp(0.9rem, 3vw, 1.18rem);
	background: #fff;
	color: var(--pr-color-navy);
	cursor: pointer;
	box-shadow: 0 0.25rem 0.7rem rgba(15, 23, 42, 0.04);
}

.pr-calendar-day {
	position: relative;
	border-color: #e5eaf2;
	background: #fff;
	color: var(--pr-color-navy);
}

.pr-form button.pr-calendar-day,
.pr-form button.pr-repayment-calendar-grid__day,
.pr-form button.pr-dashboard-calendar-preview__day {
	width: 100%;
	border: 1px solid #e5eaf2;
	background: #fff;
	color: var(--pr-color-navy);
	box-shadow: none;
}

.pr-form button.pr-repayment-calendar-grid__day,
.pr-form button.pr-dashboard-calendar-preview__day {
	min-height: 0;
}

.pr-repayment-calendar-grid__day--blank {
	border-color: transparent;
	background: transparent;
	pointer-events: none;
}

.pr-repayment-calendar-grid__day--today {
	border-color: var(--pr-color-red);
	color: var(--pr-color-red);
	background: #fff;
	box-shadow: inset 0 0 0 1px rgba(224, 62, 76, 0.28), 0 0.35rem 0.85rem rgba(224, 62, 76, 0.08);
}

.pr-repayment-calendar-grid__day--has-repayment,
.pr-repayment-calendar-grid__day--scheduled,
.pr-calendar-day--has-repayment {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-form button.pr-calendar-day--has-repayment,
.pr-form button.pr-repayment-calendar-grid__day--has-repayment,
.pr-form button.pr-dashboard-calendar-preview__day--has-repayment {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-repayment-calendar-grid__day--selected,
.pr-calendar-day--selected {
	box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--pr-color-red), 0 0.45rem 1rem rgba(180, 35, 24, 0.18);
}

.pr-repayment-calendar-grid__date {
	position: absolute;
	font-size: clamp(0.84rem, 3.6vw, 1.05rem);
	font-weight: 900;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.55em;
	height: 1.55em;
	line-height: 1;
	text-align: center;
}

.pr-repayment-calendar-grid__badge,
.pr-dashboard-calendar-preview__badge {
	position: absolute;
	right: 0.16rem;
	bottom: 0.14rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.12rem;
	min-height: 1rem;
	max-width: calc(100% - 0.32rem);
	padding-inline: 0.22rem;
	border-radius: 999px;
	background: var(--pr-color-red);
	color: #fff;
	font-size: clamp(0.55rem, 2.3vw, 0.66rem);
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
}

.pr-calendar-day__badge--paid {
	min-width: 1.75rem;
}

.pr-calendar-day__confirm-badge {
	position: absolute;
	top: 0.13rem;
	left: 0.13rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: calc(100% - 0.26rem);
	padding: 0.12rem 0.22rem;
	border-radius: 999px;
	background: #fff7ed;
	color: #b45309;
	font-size: clamp(0.48rem, 2vw, 0.58rem);
	font-weight: 900;
	line-height: 1;
	white-space: nowrap;
	box-shadow: 0 0.15rem 0.35rem rgba(146, 64, 14, 0.12);
}

.pr-calendar-day--has-repayment .pr-calendar-day__confirm-badge {
	background: rgba(255, 255, 255, 0.92);
	color: #b45309;
}

.pr-repayment-calendar-grid__day--has-repayment .pr-repayment-calendar-grid__badge,
.pr-repayment-calendar-grid__day--scheduled .pr-repayment-calendar-grid__badge,
.pr-dashboard-calendar-preview__day--has-repayment .pr-dashboard-calendar-preview__badge,
.pr-dashboard-calendar-preview__day--scheduled .pr-dashboard-calendar-preview__badge,
.pr-calendar-day--has-repayment .pr-calendar-day__badge {
	background: #fff;
	color: var(--pr-color-red);
}

.pr-repayment-calendar-day-detail,
.pr-dashboard-calendar-preview__detail {
	display: grid;
	gap: 0.68rem;
	padding: 0.95rem;
	border: 1px solid #eadde0;
	border-radius: 1.1rem;
	background: #fffafa;
}

.pr-calendar-caution,
.pr-calendar-date-caution {
	margin: 0;
	padding: 0.72rem 0.78rem;
	border: 1px solid #fde2e2;
	border-radius: 0.95rem;
	background: #fffafa;
	color: #667085;
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.65;
}

.pr-calendar-date-caution {
	border-color: #fed7aa;
	background: #fff7ed;
	color: #9a3412;
}

.pr-repayment-calendar-day-detail h4,
.pr-dashboard-calendar-preview__detail h4 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 0.96rem;
	font-weight: 900;
}

.pr-repayment-day-detail-list {
	display: grid;
	gap: 0;
}

.pr-repayment-day-detail-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.6rem;
	align-items: center;
	margin: 0;
	padding: 0.58rem 0;
	border-top: 1px dashed rgba(224, 62, 76, 0.18);
	color: var(--pr-color-navy);
}

.pr-repayment-day-detail-row:first-child {
	border-top: 0;
}

.pr-repayment-day-detail-row strong {
	font-weight: 900;
	text-align: right;
}

.pr-repayment-day-detail-total {
	margin: 0;
	padding-top: 0.45rem;
	border-top: 1px solid rgba(224, 62, 76, 0.18);
	color: var(--pr-color-red);
	font-weight: 900;
	text-align: right;
}

.pr-repayment-calendar-day-detail h4,
.pr-dashboard-calendar-preview__detail-title,
.pr-repayment-day-detail-row,
.pr-repayment-day-detail-total {
	margin: 0;
}

.pr-repayment-calendar-day-detail h4,
.pr-dashboard-calendar-preview__detail-title {
	color: var(--pr-color-navy);
	font-size: 0.98rem;
	font-weight: 900;
}

.pr-repayment-day-detail-list {
	display: grid;
	gap: 0.4rem;
}

.pr-repayment-day-detail-row {
	display: flex;
	gap: 0.65rem;
	align-items: baseline;
	justify-content: space-between;
	min-width: 0;
	color: #475467;
	line-height: 1.45;
}

.pr-repayment-day-detail-row span {
	min-width: 0;
	overflow-wrap: anywhere;
}

.pr-repayment-day-detail-row strong,
.pr-repayment-day-detail-total {
	color: var(--pr-color-navy);
	font-weight: 900;
	white-space: nowrap;
}

.pr-repayment-day-detail-total {
	text-align: right;
}

.pr-repayment-calendar-day-detail .pr-repayment-day-detail-list {
	gap: 0;
}

.pr-repayment-calendar-day-detail .pr-repayment-day-detail-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.6rem;
	align-items: center;
	padding: 0.58rem 0;
	border-top: 1px dashed rgba(224, 62, 76, 0.18);
}

.pr-repayment-calendar-day-detail .pr-repayment-day-detail-row:first-child {
	border-top: 0;
}

.pr-repayment-calendar-day-detail .pr-repayment-day-detail-total {
	padding-top: 0.45rem;
	border-top: 1px solid rgba(224, 62, 76, 0.18);
	color: var(--pr-color-red);
}

.pr-repayment-calendar-card {
	display: grid;
	gap: 0.75rem;
	min-width: 0;
	padding: 0.95rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.95rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
	overflow: hidden;
}

.pr-repayment-calendar-card h4,
.pr-repayment-calendar-card p {
	margin: 0;
}

.pr-repayment-calendar-card h4 {
	color: var(--pr-color-navy);
	font-size: 1.08rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pr-repayment-calendar-badge {
	justify-self: start;
	padding: 0.28rem 0.65rem;
	border-radius: 999px;
	background: #f2f4f7;
	color: #475467;
	font-size: 0.86rem;
	font-weight: 800;
}

.pr-repayment-calendar-card--recorded .pr-repayment-calendar-badge {
	background: #e8f7ee;
	color: #067647;
}

.pr-repayment-calendar-card--today .pr-repayment-calendar-badge {
	background: #fff4df;
	color: #b54708;
}

.pr-repayment-calendar-card--overdue .pr-repayment-calendar-badge {
	background: #fff1f3;
	color: #c01048;
}

.pr-repayment-calendar-card--unscheduled .pr-repayment-calendar-badge {
	background: #f2f4f7;
	color: #667085;
}

.pr-notification-settings {
	display: grid;
	gap: 0.85rem;
}

.pr-notification-settings-card {
	display: grid;
	gap: 0.55rem;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid #f4c7ca;
	border-radius: var(--pr-radius-card);
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
}

.pr-notification-settings-card h2,
.pr-notification-settings-card p {
	margin: 0;
}

.pr-notification-settings-card h2 {
	color: var(--pr-color-navy);
	font-size: 1.05rem;
	line-height: 1.35;
}

.pr-notification-settings-actions {
	display: grid;
	gap: 0.65rem;
}

.pr-simulation-result {
	display: grid;
	gap: 0.9rem;
}

.pr-result-title {
	margin-block: 0 0.25rem;
	color: var(--pr-color-navy);
	font-size: clamp(1.35rem, 6vw, 2rem);
	line-height: 1.25;
}

.pr-result-section {
	display: grid;
	gap: 0.75rem;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
}

.pr-result-section h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-result-section--metrics {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
	box-shadow: 0 1rem 2.4rem rgb(24 49 83 / 8%);
}

.pr-result-section--metrics .pr-metric-grid {
	grid-template-columns: minmax(0, 1fr);
	gap: 0.85rem;
}

.pr-result-section--unavailable {
	border-color: #f4c7ca;
	background: #fff7f7;
}

.pr-summary-list {
	display: grid;
	gap: 0.6rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pr-summary-list li {
	display: flex;
	gap: 0.75rem;
	align-items: baseline;
	justify-content: space-between;
	padding-block: 0.35rem;
	border-bottom: 1px dashed var(--pr-color-border);
}

.pr-summary-list li:last-child {
	border-bottom: 0;
}

.pr-summary-list span,
.pr-metric-card__label,
.pr-metric-card__note {
	color: #667085;
	font-size: 0.86rem;
}

.pr-summary-list strong {
	text-align: right;
	overflow-wrap: anywhere;
}

.pr-metric-grid,
.pr-comparison-grid {
	display: grid;
	gap: 0.75rem;
}

.pr-metric-card,
.pr-comparison-card {
	min-width: 0;
	padding: 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.95rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
	overflow: hidden;
}

.pr-result-section--metrics .pr-metric-card {
	display: grid;
	gap: 0.25rem;
	min-width: min(100%, 13.5rem);
	padding: clamp(1rem, 4.5vw, 1.25rem);
	border-color: #e9dadd;
	border-radius: 1.15rem;
	box-shadow: 0 0.95rem 2rem rgb(24 49 83 / 10%);
}

.pr-metric-card:first-child {
	border-color: #ef9da1;
}

.pr-result-section--metrics .pr-metric-card:first-child {
	border-color: #ef9da1;
	box-shadow: 0 1rem 2.2rem rgb(214 64 69 / 12%);
}

.pr-metric-card__label,
.pr-metric-card__value,
.pr-metric-card__note,
.pr-comparison-card h4,
.pr-comparison-card p {
	margin: 0;
}

.pr-metric-card__value {
	margin-block: 0.2rem;
	color: var(--pr-color-red);
	font-size: clamp(1.35rem, 6.2vw, 2.1rem);
	font-weight: 800;
	line-height: 1.15;
}

.pr-result-section--metrics .pr-metric-card__value {
	max-width: 100%;
	font-size: clamp(1.28rem, 6vw, 2rem);
	letter-spacing: -0.03em;
	white-space: nowrap;
	overflow-wrap: normal;
	word-break: keep-all;
}

.pr-nowrap {
	white-space: nowrap;
	overflow-wrap: normal;
}

.pr-comparison-card {
	border-color: #f1d7d9;
	background: #fffafa;
}

.pr-comparison-card h4 {
	color: var(--pr-color-red);
	font-size: 1.05rem;
}

.pr-comparison-card p {
	font-weight: 700;
}

.pr-comparison-card__value {
	color: var(--pr-color-navy);
	line-height: 1.35;
}

.pr-result-section--custom-payment,
.pr-result-section--target-payoff {
	display: grid;
	gap: 0.85rem;
	padding: clamp(0.9rem, 4vw, 1.05rem);
	border: 1px solid #eadde0;
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.8rem 1.6rem rgb(24 49 83 / 5%);
}

.pr-custom-payment-form {
	display: grid;
	gap: 0.75rem;
	padding: 1rem;
	border: 1px solid #f1d7d9;
	border-radius: 1rem;
	background: #fffafa;
}

.pr-custom-payment-form label {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-custom-payment-form input {
	width: 100%;
	min-width: 0;
	min-height: 3rem;
	padding: 0.8rem 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.8rem;
	background: #fff;
	color: var(--pr-color-navy);
	font: inherit;
}

.pr-custom-payment-result {
	display: grid;
	gap: 0.75rem;
	padding: 1rem;
	border: 1px solid #ef9da1;
	border-radius: 1rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
}

.pr-custom-payment-result h4,
.pr-custom-payment-result p,
.pr-custom-payment-result dl {
	margin: 0;
}

.pr-custom-payment-result h4 {
	color: var(--pr-color-red);
	font-size: 1.05rem;
}

.pr-custom-payment-result__list {
	display: grid;
	grid-template-columns: minmax(8rem, 1fr) minmax(0, 1.4fr);
	gap: 0.5rem 0.85rem;
	align-items: baseline;
}

.pr-custom-payment-result__list dt {
	color: #667085;
	font-size: 0.86rem;
	font-weight: 700;
}

.pr-custom-payment-result__list dd {
	margin: 0;
	color: var(--pr-color-navy);
	font-weight: 800;
	overflow-wrap: anywhere;
}

.pr-custom-payment-result__message {
	color: var(--pr-color-navy);
	font-weight: 700;
}

.pr-custom-payment-result__message--warning {
	color: var(--pr-color-red);
}

.pr-custom-payment-result-wrap {
	display: grid;
	gap: 0.75rem;
	min-width: 0;
}

.pr-unavailable-message {
	margin: 0;
	color: var(--pr-color-red);
	font-weight: 800;
}

.pr-warning {
	margin: 0;
	padding: 0.75rem;
	border-radius: 0.75rem;
	background: #fff5e8;
	color: #7a4a00;
}

.pr-revolving-calculation-note {
	display: grid;
	gap: 0.45rem;
	margin: 0;
	padding: 0.9rem 1rem;
	border: 1px solid #f4c7ca;
	border-left: 0.35rem solid var(--pr-color-red);
	border-radius: 0.95rem;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
	color: var(--pr-color-navy);
	box-shadow: 0 0.75rem 1.5rem rgb(183 29 42 / 8%);
}

.pr-revolving-calculation-note h3,
.pr-revolving-calculation-note p {
	margin: 0;
}

.pr-revolving-calculation-note h3 {
	font-size: 0.98rem;
}

.pr-revolving-calculation-note__method {
	color: var(--pr-color-red);
	font-weight: 800;
}

.pr-disclaimer,
.pr-save-note {
	margin-block: 0;
	color: #667085;
	font-size: 0.9rem;
}

.pr-loan-detail {
	display: grid;
	gap: 1rem;
}

.pr-paid-off-loans,
.pr-paid-off-loan {
	display: grid;
	gap: 1rem;
}

.pr-loan-detail-section {
	display: grid;
	gap: 0.8rem;
	min-width: 0;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
}

.pr-loan-detail-section h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-loan-detail-section--summary,
.pr-loan-detail-section--simulation {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
}

.pr-loan-detail-section--error {
	border-color: #f4c7ca;
	background: #fff7f7;
}

.pr-loan-detail-card,
.pr-transaction-preview-card {
	min-width: 0;
	padding: 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.95rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
	overflow: hidden;
}

.pr-loan-detail-card h3,
.pr-transaction-card-header,
.pr-loan-detail-meta,
.pr-transaction-preview-card__amount,
.pr-loan-detail-error {
	margin: 0;
}

.pr-loan-detail-card h3 {
	color: var(--pr-color-navy);
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pr-loan-detail-meta {
	color: #667085;
	font-weight: 700;
}

.pr-loan-detail-summary-grid,
.pr-loan-detail-action-grid,
.pr-transaction-preview {
	display: grid;
	gap: 0.75rem;
}

.pr-loan-edit-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: 1rem;
	margin: 0.25rem 0;
}

.pr-extra-repayment-section,
.pr-additional-borrowing-section {
	border-color: #f4c7ca;
	background:
		linear-gradient(180deg, rgb(214 64 69 / 5%) 0%, rgb(255 255 255 / 0%) 7rem),
		#fff;
	box-shadow: 0 1rem 2rem rgb(24 49 83 / 6%);
}

.pr-extra-repayment-section {
	border-left: 0.28rem solid var(--pr-color-red);
}

.pr-additional-borrowing-section {
	border-left: 0.28rem solid #17633a;
}

.pr-extra-repayment-fields,
.pr-additional-borrowing-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: 0.9rem;
}

.pr-tabbed-panel {
	display: grid;
	gap: 1rem;
}

.pr-tab-help {
	margin: 1rem 0 0.45rem;
	color: var(--pr-color-muted);
	font-size: 0.9rem;
	font-weight: 800;
}

.pr-tab-list {
	display: flex;
	gap: 0.45rem;
	flex-wrap: wrap;
	padding: 0.28rem;
	border: 1px solid #e8edf5;
	border-radius: 1rem;
	background: #f8fafc;
}

.pr-segment-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
	gap: 0.45rem;
	overflow-x: visible;
}

.pr-tab-button {
	width: 100%;
	min-height: 2.45rem;
	padding: 0.55rem 0.9rem;
	border: 1px solid #dbe5f2;
	border-radius: 0.85rem;
	background: #fff !important;
	color: var(--pr-color-navy) !important;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	box-shadow: 0 0.2rem 0.55rem rgb(24 49 83 / 4%);
}

.pr-segment-tab {
	min-width: 0;
	white-space: normal;
	line-height: 1.35;
}

.pr-tab-button--active,
.pr-tab-button.is-active {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red) !important;
	color: #fff !important;
	font-weight: 700;
	box-shadow: 0 0.65rem 1.25rem rgb(196 30 58 / 18%);
}

.pr-tab-panel[hidden] {
	display: none;
}

.pr-repayment-record-form {
	display: grid;
	gap: 1rem;
}

.pr-repayment-kind-selector {
	display: grid;
	gap: 0.65rem;
	margin: 0;
	padding: 0;
	border: 0;
}

.pr-repayment-kind-selector legend {
	margin-bottom: 0.2rem;
	color: var(--pr-color-navy);
	font-weight: 900;
}

.pr-repayment-kind-option {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.65rem;
	align-items: start;
	padding: 0.8rem;
	border: 1px solid #e8edf5;
	border-radius: 1rem;
	background: #fff;
}

.pr-repayment-kind-option span {
	display: grid;
	gap: 0.2rem;
}

.pr-repayment-kind-option small,
.pr-repayment-target-notice {
	color: #5d6b82;
	line-height: 1.65;
}

.pr-repayment-target-notice {
	margin: 0;
	padding: 0.75rem 0.85rem;
	border-radius: 1rem;
	background: #fff8f0;
	font-weight: 800;
}

.pr-loan-edit-fields label {
	display: grid;
	gap: 0.35rem;
	font-weight: 700;
	color: var(--pr-color-navy);
}

.pr-extra-repayment-fields label,
.pr-additional-borrowing-fields label {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-extra-repayment-fields input,
.pr-extra-repayment-fields textarea,
.pr-extra-repayment-fields select,
.pr-additional-borrowing-fields input,
.pr-additional-borrowing-fields textarea {
	width: 100%;
	min-width: 0;
	min-height: 3rem;
	padding: 0.78rem 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.75rem;
	background: #fff;
	font: inherit;
	font-size: 16px;
}

.pr-regular-repayment-target-field {
	grid-column: 1 / -1;
	min-width: 0;
	max-width: 100%;
}

.pr-regular-repayment-target-field[hidden] {
	display: none;
}

.pr-regular-repayment-target-field small {
	color: #5d6b82;
	font-size: 0.84rem;
	line-height: 1.55;
}

.pr-extra-repayment-fields textarea,
.pr-additional-borrowing-fields textarea {
	min-height: 5rem;
	resize: vertical;
}

.pr-extra-repayment-feedback,
.pr-additional-borrowing-feedback {
	margin: 0;
	padding: 0.65rem 0.75rem;
	border: 1px solid #e6edf7;
	border-radius: 0.8rem;
	background: #f8fafc;
	color: #667085;
	font-size: 0.9rem;
	line-height: 1.55;
}

.pr-extra-repayment-feedback:empty,
.pr-additional-borrowing-feedback:empty,
.pr-loan-detail-simulation__feedback:empty {
	display: none;
}

.pr-extra-repayment-feedback--error,
.pr-additional-borrowing-feedback--error {
	color: #8a1f24;
	font-weight: 800;
}

.pr-loan-detail-next-payment .pr-metric-card__value {
	white-space: normal;
}

.pr-loan-detail-simulation {
	display: grid;
	gap: 0.75rem;
	min-width: 0;
}

.pr-loan-detail-simulation .pr-result-section {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.pr-loan-detail-simulation .pr-result-section h3 {
	font-size: 0.95rem;
}

.pr-transaction-preview-card {
	display: grid;
	gap: 0.65rem;
}

.pr-transaction-card-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	min-width: 0;
}

.pr-transaction-badge {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	max-width: 100%;
	padding: 0.25rem 0.62rem;
	border: 1px solid #d9e2f1;
	border-radius: 999px;
	background: #f4f7fb;
	color: var(--pr-color-navy);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.pr-transaction-badge--extra-repayment,
.pr-transaction-badge--repayment,
.pr-transaction-badge--decrease {
	border-color: #f4c7ca;
	background: #fff2f3;
	color: var(--pr-color-red);
}

.pr-transaction-badge--additional-borrowing,
.pr-transaction-badge--increase {
	border-color: #bedac7;
	background: #f0fbf3;
	color: #17633a;
}

.pr-transaction-badge--balance-adjustment,
.pr-transaction-badge--correction,
.pr-transaction-badge--reversal {
	border-color: #d8d7ff;
	background: #f5f4ff;
	color: #3730a3;
}

.pr-transaction-amount {
	white-space: nowrap;
}

.pr-transaction-preview-card__amount {
	font-size: 1.25rem;
	font-weight: 800;
}

.pr-transaction-amount--increase {
	color: #17633a;
}

.pr-transaction-amount--decrease {
	color: var(--pr-color-red);
}

.pr-transaction-amount--neutral {
	color: var(--pr-color-navy);
}

.pr-loan-detail-action-grid .pr-button-link,
.pr-loan-detail-action-grid .pr-link-button {
	min-width: 0;
	white-space: normal;
	text-align: center;
	line-height: 1.35;
}

.pr-form .pr-loan-detail-action-grid .pr-next-action-button--secondary {
	border: 1px solid var(--pr-color-border);
	background: #fff;
	color: var(--pr-color-navy);
	font-weight: 600;
	box-shadow: 0 0.2rem 0.55rem rgb(24 49 83 / 4%);
}

.pr-form .pr-loan-detail-action-grid .pr-next-action-button--secondary:hover,
.pr-form .pr-loan-detail-action-grid .pr-next-action-button--secondary:focus-visible {
	border-color: #f4c7ca;
	background: #fff7f8;
	color: var(--pr-color-navy);
}

.pr-loan-detail-error {
	color: #8a1f24;
	font-weight: 700;
}

.pr-loan-action {
	display: grid;
	gap: 1rem;
}

.pr-loan-action-section {
	display: grid;
	gap: 0.85rem;
	min-width: 0;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
}

.pr-loan-action-section h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-loan-action-section--header,
.pr-loan-action-section--confirm,
.pr-loan-action-section--success {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
}

.pr-loan-action-section--error {
	border-color: #f4c7ca;
	background: #fff7f7;
}

.pr-loan-action-fields {
	display: grid;
	gap: 0.9rem;
}

.pr-loan-action-fields label {
	display: grid;
	gap: 0.35rem;
	min-width: 0;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-loan-action-fields input,
.pr-loan-action-fields textarea,
.pr-loan-action-fields select {
	width: 100%;
	min-height: 3rem;
	padding: 0.78rem 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.75rem;
	background: #fff;
	font: inherit;
	font-size: 16px;
}

.pr-extra-repayment-fields input[type="date"],
.pr-additional-borrowing-fields input[type="date"],
.pr-loan-action-fields input[type="date"],
.pr-loan-edit-fields input[type="date"],
.pr-form input[name="borrowed_on"][type="date"],
.pr-form input[name="adjusted_on"][type="date"],
.pr-form input[name="balance_as_of_date"],
.pr-form input[name="last_repayment_date"],
.pr-form input[name="interest_basis_date"],
.pr-form input[name="last_accrual_date"] {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
	text-align: left;
	-webkit-appearance: none;
	appearance: none;
}

.pr-form label:has(input[type="date"]),
.pr-loan-action-fields label:has(input[type="date"]),
.pr-extra-repayment-fields label:has(input[type="date"]),
.pr-additional-borrowing-fields label:has(input[type="date"]) {
	min-width: 0;
	max-width: 100%;
}

.pr-loan-action-fields textarea {
	min-height: 6rem;
	resize: vertical;
}

.pr-loan-action-buttons {
	display: grid;
	gap: 0.75rem;
}

.pr-link-button--danger {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-loan-action-error,
.pr-loan-action-success {
	margin: 0;
	font-weight: 800;
}

.pr-loan-action-error {
	color: #8a1f24;
}

.pr-loan-action-success {
	color: var(--pr-color-navy);
}

.pr-repayment-estimate {
	display: grid;
	gap: 0.75rem;
	padding: 0.9rem;
	border: 1px solid #f1d4d7;
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 10px 24px rgba(22, 35, 58, 0.08);
}

.pr-repayment-estimate h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-repayment-estimate-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
	gap: 0.65rem;
}

.pr-repayment-estimate-card {
	display: grid;
	gap: 0.25rem;
	min-width: 0;
	padding: 0.75rem;
	border-left: 4px solid var(--pr-color-red);
	border-radius: 0.85rem;
	background: #fff8f8;
}

.pr-repayment-estimate-card span {
	color: var(--pr-color-muted);
	font-size: 0.82rem;
	font-weight: 800;
}

.pr-repayment-estimate-card strong {
	color: var(--pr-color-navy);
	font-size: clamp(1rem, 5vw, 1.25rem);
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.pr-loan-action-warning {
	margin: 0;
	padding: 0.75rem;
	border-radius: 0.85rem;
	background: #fff4d6;
	color: #704700;
	font-weight: 800;
	line-height: 1.6;
}

.pr-transaction-history,
.pr-transaction-correction {
	display: grid;
	gap: 1rem;
}

.pr-transaction-history-section {
	display: grid;
	gap: 0.85rem;
	min-width: 0;
	padding: clamp(0.9rem, 4vw, 1.1rem);
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
}

.pr-transaction-history-section h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-transaction-history-section--header,
.pr-transaction-history-section--placeholder,
.pr-transaction-history-section--confirm,
.pr-transaction-history-section--success {
	border-color: #f4c7ca;
	background: linear-gradient(180deg, #fff8f8 0%, #fff 100%);
}

.pr-transaction-history-section--error {
	border-color: #f4c7ca;
	background: #fff7f7;
}

.pr-transaction-history-list {
	display: grid;
	gap: 0.85rem;
}

.pr-transaction-filter-controls {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.45rem;
	align-items: center;
	overflow-x: visible;
	padding: 0.35rem;
	border: 1px solid #e8edf5;
	border-radius: 1rem;
	background: #f8fafc;
}

.pr-chip-tabs {
	width: 100%;
}

.pr-transaction-filter-button {
	min-height: 2.75rem;
	padding: 0.55rem 0.45rem;
	border: 1px solid #dbe5f2;
	border-radius: 999px;
	background: #fff !important;
	color: var(--pr-color-navy) !important;
	font: inherit;
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1.3;
	cursor: pointer;
	box-shadow: 0 0.2rem 0.55rem rgb(24 49 83 / 4%);
}

.pr-chip-tab {
	width: 100%;
	min-width: 0;
	text-align: center;
}

.pr-transaction-filter-button--active,
.pr-transaction-filter-button.is-active {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red) !important;
	color: #fff !important;
	font-weight: 700;
	box-shadow: 0 0.55rem 1rem rgb(196 30 58 / 16%);
}

.pr-transaction-history-more-actions {
	display: grid;
	justify-items: center;
}

.pr-transaction-history-more-actions[hidden] {
	display: none;
}

.pr-transaction-history-card {
	display: grid;
	gap: 0.75rem;
	min-width: 0;
	padding: 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.95rem;
	background: #fff;
	box-shadow: var(--pr-shadow-card);
	overflow: hidden;
}

.pr-transaction-card--cancelled {
	border-style: dashed;
	background: #f8fafc;
	opacity: 0.72;
}

.pr-transaction-card--reversal {
	border-color: #d8d7ff;
	background: #fafaff;
}

.pr-transaction-history-card__title-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	min-width: 0;
}

.pr-transaction-history-card__amount {
	margin: 0;
}

.pr-transaction-history-card__amount {
	font-size: 1.2rem;
	font-weight: 800;
}

.pr-transaction-card-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.pr-transaction-history-card__cancel {
	justify-self: start;
	padding: 0.45rem 0.75rem;
	border: 1px solid #f4c7ca;
	border-radius: 999px;
	background: var(--pr-color-red);
	color: #fff;
	font: inherit;
	font-size: 0.85rem;
	font-weight: 800;
	cursor: pointer;
}

.pr-transaction-history-card__cancel:disabled {
	cursor: wait;
	opacity: 0.65;
}

.pr-transaction-history-card__correction {
	justify-self: start;
	padding: 0.45rem 0.75rem;
	border: 1px solid #f4c7ca;
	border-radius: 999px;
	background: #fff8f8;
	color: var(--pr-color-red);
	font-weight: 800;
	text-decoration: none;
}

.pr-transaction-history-actions {
	display: grid;
	gap: 0.75rem;
}

.pr-transaction-correction-label {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-transaction-correction-label textarea {
	width: 100%;
	min-height: 6rem;
	padding: 0.78rem 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.75rem;
	background: #fff;
	font: inherit;
	font-size: 16px;
	resize: vertical;
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	background:
		linear-gradient(180deg, #fff 0, #f8fafc 13rem, var(--pr-color-background) 100%);
	line-height: 1.6;
	overflow-x: hidden;
}

a {
	color: var(--pr-color-navy);
}

.site-header,
.site-main,
.site-footer {
	width: min(100% - 1rem, 68rem);
	margin-inline: auto;
}

.site-header,
.site-footer {
	padding-block: 0.65rem;
}

.site-footer {
	color: var(--pr-color-muted);
	font-size: 0.82rem;
	text-align: center;
}

.site-footer p {
	margin: 0;
}

.site-footer__legal {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.25rem 0.45rem;
	margin-top: 0.45rem;
	line-height: 1.7;
}

.site-footer__legal a {
	color: var(--pr-color-muted);
	font-weight: 700;
	text-decoration: none;
}

.site-footer__legal a:focus,
.site-footer__legal a:hover {
	color: var(--pr-color-red);
	text-decoration: underline;
}

.site-header {
	position: static;
	top: auto;
	z-index: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 0.5rem;
	padding-inline: clamp(0.75rem, 4vw, 1.1rem);
	border: 1px solid rgb(227 233 242 / 72%);
	border-radius: 1.25rem;
	background: rgb(255 255 255 / 88%);
	box-shadow: 0 0.8rem 2rem rgb(24 49 83 / 5%);
	backdrop-filter: blur(12px);
}

body.logged-in.payrhythm-app .site-header {
	position: sticky;
	top: max(0.5rem, env(safe-area-inset-top));
	z-index: 1000;
}

body.logged-in.payrhythm-app.admin-bar .site-header {
	top: calc(32px + 0.5rem);
}

.site-brand {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.site-brand__logo {
	display: block;
	width: clamp(7.75rem, 35vw, 11.25rem);
	height: auto;
	max-width: 100%;
	object-fit: contain;
}

.site-header__app-actions {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.35rem;
	min-width: 0;
}

.site-header__public-actions {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 0;
}

.site-header__login-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.35rem;
	padding: 0.45rem 0.95rem;
	border: 1px solid rgba(196, 30, 58, 0.32);
	border-radius: 999px;
	background: #fff;
	color: var(--pr-color-red);
	font-size: 0.88rem;
	font-weight: 900;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: 0 0.45rem 1rem rgba(24, 49, 83, 0.06);
}

.site-header__login-button:focus,
.site-header__login-button:hover {
	background: #fff1f2;
	color: var(--pr-color-red);
}

.site-header__icon-link {
	position: relative;
	width: 2.35rem;
	height: 2.35rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(20, 34, 62, 0.1);
	border-radius: 999px;
	background: #fff;
	color: var(--pr-color-navy);
	font-size: 1.05rem;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 0.45rem 1rem rgba(24, 49, 83, 0.06);
}

.site-header__icon-link--active,
.site-header__icon-link:focus,
.site-header__icon-link:hover {
	border-color: rgba(196, 30, 58, 0.28);
	background: #fff1f2;
	color: var(--pr-color-red);
}

.site-header__menu-wrap {
	position: relative;
	display: inline-flex;
}

.site-header__menu-toggle {
	cursor: pointer;
}

.site-header__menu {
	position: absolute;
	right: 0;
	top: calc(100% + 0.55rem);
	z-index: 1100;
	width: min(19rem, calc(100vw - 1.5rem));
	max-height: min(34rem, calc(100vh - 6rem));
	overflow: auto;
	padding: 0.65rem;
	border: 1px solid rgba(20, 34, 62, 0.12);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 1.2rem 2.4rem rgba(20, 34, 62, 0.18);
}

.site-header__menu[hidden] {
	display: none !important;
}

.site-header__menu-heading {
	margin: 0.4rem 0 0.35rem;
	color: var(--pr-color-red);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.02em;
}

.site-header__menu a,
.site-header__menu button {
	width: 100%;
	display: flex;
	align-items: center;
	min-height: 2.35rem;
	padding: 0.55rem 0.65rem;
	border: 0;
	border-radius: 0.75rem;
	background: transparent;
	color: var(--pr-color-navy);
	font: inherit;
	font-size: 0.9rem;
	font-weight: 800;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}

.site-header__menu a:focus,
.site-header__menu a:hover,
.site-header__menu button:focus,
.site-header__menu button:hover {
	background: #fff1f2;
	color: var(--pr-color-red);
}

.site-header__menu-featured {
	border: 1px solid rgba(224, 62, 76, 0.18) !important;
	background: #fff7f7 !important;
}

.site-header__badge {
	position: absolute;
	right: -0.15rem;
	top: -0.18rem;
	min-width: 1.15rem;
	height: 1.15rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 0.22rem;
	border: 2px solid #fff;
	border-radius: 999px;
	background: var(--pr-color-red);
	color: #fff;
	font-size: 0.68rem;
	font-weight: 900;
	line-height: 1;
}

.site-header__badge[hidden] {
	display: none !important;
}

.site-header__login-state {
	max-width: 5rem;
	color: var(--pr-color-muted);
	font-size: 0.72rem;
	font-weight: 800;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.pr-screen--dashboard,
.pr-screen--has-bottom-nav {
	padding-bottom: calc(5.25rem + env(safe-area-inset-bottom));
}

.pr-screen--dashboard .pr-card {
	padding: clamp(0.95rem, 4vw, 1.55rem);
}

.pr-screen--dashboard .pr-lead {
	margin-block-end: 0.65rem;
}

.pr-dashboard-section,
.pr-repayment-calendar-section,
.pr-notification-settings-card,
.pr-result-section,
.pr-loan-detail-section,
.pr-transaction-history-section {
	border-color: var(--pr-color-border);
	background: #fff;
	box-shadow: 0 1rem 2rem rgb(24 49 83 / 6%);
}

.pr-dashboard-section--summary,
.pr-dashboard-section--fortune,
.pr-dashboard-greeting,
.pr-repayment-calendar-section--header,
.pr-repayment-calendar-section--summary,
.pr-notification-settings-card,
.pr-result-section--metrics,
.pr-loan-detail-section--summary,
.pr-loan-detail-section--simulation,
.pr-transaction-history-section--header,
.pr-transaction-history-section--placeholder,
.pr-transaction-history-section--confirm,
.pr-transaction-history-section--success {
	border-color: #eadde0;
	background:
		linear-gradient(180deg, rgb(214 64 69 / 4%) 0%, rgb(255 255 255 / 0%) 7rem),
		#fff;
}

.pr-dashboard-section h3,
.pr-repayment-calendar-section h3,
.pr-result-section h3,
.pr-loan-detail-section h3,
.pr-transaction-history-section h3 {
	font-size: clamp(1.06rem, 4.4vw, 1.22rem);
	letter-spacing: 0.01em;
}

.pr-dashboard-summary-card,
.pr-dashboard-loan-card,
.pr-repayment-calendar-card,
.pr-metric-card,
.pr-comparison-card,
.pr-loan-detail-card,
.pr-transaction-preview-card,
.pr-transaction-history-card {
	border-color: #e8edf5;
	border-radius: 1.1rem;
	box-shadow: var(--pr-shadow-card);
}

.pr-dashboard-summary-card,
.pr-metric-card {
	position: relative;
}

.pr-dashboard-fv-summary {
	background:
		radial-gradient(circle at 100% 0, rgb(214 64 69 / 8%) 0, transparent 12rem),
		#fff;
	box-shadow: var(--pr-shadow-soft);
	padding: clamp(0.9rem, 3.8vw, 1.15rem);
}

.pr-dashboard-summary-card--balance {
	grid-column: 1 / -1;
	padding-block: 0.95rem;
}

.pr-dashboard-summary-card--balance .pr-dashboard-summary-card__value {
	font-size: clamp(1.7rem, 8.2vw, 2.65rem);
}

.pr-dashboard-summary-card::before,
.pr-metric-card::before {
	position: absolute;
	inset: 0 auto 0 0;
	width: 0.25rem;
	content: "";
	background: linear-gradient(180deg, var(--pr-color-red), #ff9da1);
}

.pr-dashboard-summary-card__value,
.pr-metric-card__value,
.pr-transaction-history-card__amount,
.pr-repayment-calendar-month {
	letter-spacing: -0.02em;
}

.pr-dashboard-empty,
.pr-warning,
.pr-transaction-history-card__correction {
	border: 1px solid #f0e1e3;
	background: #fffafa;
}

.pr-dashboard-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
	margin: 0.95rem 0 1rem;
}

.pr-dashboard-tab {
	display: grid;
	align-content: start;
	justify-items: start;
	gap: 0.35rem;
	min-width: 0;
	min-height: 7.2rem;
	padding: 0.85rem;
	border: 1px solid rgba(214, 64, 69, 0.18);
	border-radius: 1.1rem;
	background: linear-gradient(135deg, #ffffff 0%, #fff8f8 100%);
	color: var(--pr-color-navy);
	text-decoration: none;
	box-shadow: 0 0.75rem 1.5rem rgb(24 49 83 / 8%);
}

.pr-dashboard-tab:first-child {
	border-left: 1px solid rgba(214, 64, 69, 0.18);
}

.pr-dashboard-tab:hover,
.pr-dashboard-tab:focus-visible {
	border-color: rgba(214, 64, 69, 0.42);
	background: #fff;
	color: var(--pr-color-red);
	outline-offset: 2px;
	transform: translateY(-1px);
}

.pr-dashboard-tab--active {
	background: var(--pr-color-red);
	color: #fff;
	box-shadow: 0 0.45rem 1rem rgb(214 64 69 / 20%);
}

.pr-dashboard-action-card__icon {
	display: inline-grid;
	width: 2rem;
	height: 2rem;
	place-items: center;
	border-radius: 0.75rem;
	background: #fff0f1;
	color: var(--pr-color-red);
	font-size: 1.05rem;
	font-weight: 900;
}

.pr-dashboard-action-card__title {
	font-size: clamp(0.98rem, 4vw, 1.08rem);
	font-weight: 900;
	line-height: 1.25;
}

.pr-dashboard-action-card__copy {
	color: #5c667a;
	font-size: clamp(0.76rem, 3.2vw, 0.86rem);
	font-weight: 700;
	line-height: 1.45;
}

.pr-dashboard-schedule-list {
	display: grid;
	gap: 0.6rem;
}

.pr-dashboard-schedule-row {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 0.65rem;
	align-items: center;
	min-width: 0;
	padding: 0.75rem;
	border: 1px solid #e8edf5;
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.6rem 1.3rem rgb(24 49 83 / 5%);
}

.pr-dashboard-schedule-row__day {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.65rem;
	min-height: 2.65rem;
	padding-inline: 0.35rem;
	border-radius: 0.9rem;
	background: #fff1f2;
	color: var(--pr-color-red);
	font-weight: 900;
	white-space: nowrap;
}

.pr-dashboard-schedule-row__name {
	min-width: 0;
	color: var(--pr-color-navy);
	font-weight: 800;
	overflow-wrap: anywhere;
}

.pr-dashboard-schedule-row__amount {
	color: var(--pr-color-navy);
	font-size: 0.95rem;
	white-space: nowrap;
}

.pr-dashboard-section-link {
	justify-self: end;
	color: var(--pr-color-red);
	font-weight: 900;
	text-decoration: none;
}

.pr-dashboard-calendar-preview__month {
	margin: 0;
	color: var(--pr-color-navy);
	font-weight: 900;
}

.pr-dashboard-calendar-preview {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0.3rem;
}

.pr-dashboard-calendar-preview__weekday,
.pr-dashboard-calendar-preview__day {
	display: grid;
	align-items: center;
	justify-items: center;
	justify-content: center;
	gap: 0.12rem;
	min-width: 0;
	aspect-ratio: 1;
	box-sizing: border-box;
	border-radius: 1rem;
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1;
}

.pr-dashboard-calendar-preview__weekday {
	color: #8a94a6;
	aspect-ratio: auto;
}

.pr-dashboard-calendar-preview__day {
	position: relative;
	width: 100%;
	padding: 0.18rem;
	border: 1px solid #e5eaf2;
	border-radius: clamp(0.88rem, 2.8vw, 1.15rem);
	background: #fff;
	color: var(--pr-color-navy);
	font: inherit;
	font-size: 0.78rem;
	font-weight: 800;
	cursor: pointer;
}

.pr-dashboard-calendar-preview__day--blank {
	border-color: transparent;
	background: transparent;
	pointer-events: none;
}

.pr-dashboard-calendar-preview__day--today {
	border-color: var(--pr-color-red);
	color: var(--pr-color-red);
	background: #fff;
	box-shadow: inset 0 0 0 1px rgba(224, 62, 76, 0.28), 0 0.35rem 0.85rem rgba(224, 62, 76, 0.08);
}

.pr-dashboard-calendar-preview__day--has-repayment,
.pr-dashboard-calendar-preview__day--scheduled {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-form button.pr-calendar-day--today:not(.pr-calendar-day--has-repayment),
.pr-form button.pr-repayment-calendar-grid__day--today:not(.pr-repayment-calendar-grid__day--has-repayment),
.pr-form button.pr-dashboard-calendar-preview__day--today:not(.pr-dashboard-calendar-preview__day--has-repayment) {
	border-color: var(--pr-color-red);
	background: #fff;
	color: var(--pr-color-red);
}

.pr-dashboard-calendar-preview__day--multiple,
.pr-repayment-calendar-grid__day--multiple {
	font-weight: 900;
}

.pr-dashboard-calendar-preview__day--today.pr-dashboard-calendar-preview__day--scheduled {
	background: var(--pr-color-red);
	color: #fff;
}

.pr-dashboard-calendar-preview__date {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.45em;
	height: 1.45em;
	text-align: center;
}

.pr-loan-detail-simulation__feedback {
	margin: 0.25rem 0 0;
	color: #667085;
	font-size: 0.9rem;
	line-height: 1.55;
}

.pr-dashboard-payris {
	margin-block: 0;
}

.pr-dashboard-bottom-nav {
	position: fixed;
	z-index: 20;
	right: max(0.75rem, env(safe-area-inset-right));
	bottom: max(0.75rem, env(safe-area-inset-bottom));
	left: max(0.75rem, env(safe-area-inset-left));
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.25rem;
	max-width: 35rem;
	margin-inline: auto;
	padding: 0.45rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1.25rem;
	background: rgb(255 255 255 / 94%);
	box-shadow: 0 1rem 2.25rem rgb(24 49 83 / 18%);
	backdrop-filter: blur(10px);
}

.pr-dashboard-bottom-nav__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.55rem;
	border-radius: 0.95rem;
	color: #5c667a;
	font-size: 0.74rem;
	font-weight: 900;
	text-align: center;
	text-decoration: none;
}

.pr-dashboard-bottom-nav__item--active {
	background: #fff1f2;
	color: var(--pr-color-red);
}

.content-card {
	margin-block: var(--pr-space);
	padding: var(--pr-space);
	border: 1px solid var(--pr-color-border);
	border-radius: 0.75rem;
	background: var(--pr-color-surface);
}

.content-card__title {
	margin-top: 0;
	font-size: 1.25rem;
}

.pr-news-archive {
	width: min(100%, 56.25rem);
	margin: 0 auto;
	padding: clamp(1rem, 4vw, 2rem);
}

.pr-news-archive__header {
	margin-bottom: clamp(1rem, 3vw, 1.6rem);
	padding: clamp(1.2rem, 4vw, 2rem);
	border: 1px solid var(--pr-color-border);
	border-radius: 1.25rem;
	background: linear-gradient(135deg, #fff7f8 0%, #fff 68%);
	box-shadow: 0 1rem 2.5rem rgb(24 49 83 / 8%);
}

.pr-news-archive__eyebrow {
	margin: 0 0 0.45rem;
	color: var(--pr-color-red);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pr-news-archive__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.65rem, 6vw, 2.35rem);
	line-height: 1.25;
}

.pr-news-archive__lead {
	margin: 0.7rem 0 0;
	color: #536078;
	font-weight: 700;
	line-height: 1.75;
}

.pr-news-archive__list {
	display: grid;
	gap: 1rem;
}

.pr-news-card {
	display: grid;
	grid-template-columns: minmax(9.5rem, 32%) minmax(0, 1fr);
	overflow: hidden;
	border: 1px solid var(--pr-color-border);
	border-radius: 1.2rem;
	background: var(--pr-color-surface);
	box-shadow: 0 0.8rem 2rem rgb(24 49 83 / 8%);
}

.pr-news-card__thumb {
	display: block;
	min-height: 100%;
	background: #f7f8fb;
}

.pr-news-card__image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 11rem;
	object-fit: cover;
}

.pr-news-card__body {
	padding: clamp(1rem, 3vw, 1.45rem);
}

.pr-news-card__meta {
	margin: 0 0 0.45rem;
	color: var(--pr-color-muted);
	font-size: 0.82rem;
	font-weight: 800;
}

.pr-news-card__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.08rem, 4vw, 1.35rem);
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.pr-news-card__title a {
	color: inherit;
	text-decoration: none;
}

.pr-news-card__title a:hover,
.pr-news-card__title a:focus-visible {
	color: var(--pr-color-red);
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.pr-news-card__excerpt {
	margin-top: 0.7rem;
	color: #46546a;
	font-size: 0.94rem;
	line-height: 1.75;
}

.pr-news-card__excerpt > * {
	margin: 0;
}

.pr-news-card__link {
	display: inline-flex;
	align-items: center;
	margin-top: 0.9rem;
	color: var(--pr-color-red);
	font-size: 0.9rem;
	font-weight: 900;
	text-decoration: none;
}

.pr-news-card__link:hover,
.pr-news-card__link:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.pr-news-archive__pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: center;
	margin-top: 1.4rem;
}

.pr-news-archive__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.3rem;
	min-height: 2.3rem;
	padding: 0.35rem 0.7rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 999px;
	background: #fff;
	color: var(--pr-color-navy);
	font-weight: 800;
	text-decoration: none;
}

.pr-news-archive__pagination .page-numbers.current {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-post-single {
	width: min(100%, 56.25rem);
	margin: 0 auto;
	padding: clamp(1rem, 4vw, 2rem);
}

.pr-post-single__card {
	padding: clamp(1.25rem, 4vw, 2.25rem);
	border: 1px solid var(--pr-color-border);
	border-radius: 1.25rem;
	background: var(--pr-color-surface);
	box-shadow: 0 1rem 2.5rem rgb(24 49 83 / 10%);
	overflow: hidden;
}

.pr-post-single__header {
	margin-bottom: clamp(1.1rem, 3vw, 1.75rem);
	padding-bottom: 0.85rem;
	border-bottom: 1px solid var(--pr-color-border);
}

.pr-post-single__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.55rem, 6vw, 2.25rem);
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.pr-post-single__meta {
	margin: 0.55rem 0 0;
	color: var(--pr-color-muted);
	font-size: 0.9rem;
	font-weight: 700;
}

.pr-post-single__thumbnail {
	max-width: 45rem;
	margin: 0 auto clamp(1.2rem, 3vw, 1.8rem);
	overflow: hidden;
	border-radius: 1rem;
	background: #f7f8fb;
}

.pr-post-single__image {
	display: block;
	width: 100%;
	height: auto;
}

.pr-post-single__content {
	max-width: 45rem;
	margin-inline: auto;
	color: #344054;
	font-size: clamp(0.98rem, 3.8vw, 1.05rem);
	line-height: 1.9;
	overflow-wrap: anywhere;
}

.pr-post-single__content > *:first-child {
	margin-top: 0;
}

.pr-post-single__content > *:last-child {
	margin-bottom: 0;
}

.pr-post-single__content h2,
.pr-post-single__content h3,
.pr-post-single__content h4 {
	margin-top: 1.75em;
	margin-bottom: 0.65em;
	color: var(--pr-color-navy);
	line-height: 1.35;
}

.pr-post-single__content p {
	margin: 0 0 1em;
}

.pr-post-single__content a {
	text-underline-offset: 0.18em;
}

.pr-post-single__content ul,
.pr-post-single__content ol {
	margin: 0 0 1.1em 1.4em;
	padding: 0;
}

.pr-post-single__content li + li {
	margin-top: 0.35em;
}

.pr-post-single__content img,
.pr-post-single__content video,
.pr-post-single__content iframe {
	max-width: 100%;
}

.pr-post-single__content img,
.pr-post-single__content video {
	height: auto;
}

.pr-post-single__content figure {
	max-width: 100%;
	margin: 1.4rem 0;
}

.pr-post-single__content figcaption {
	margin-top: 0.5rem;
	color: var(--pr-color-muted);
	font-size: 0.85rem;
	text-align: center;
}

.pr-post-single__content table {
	width: 100%;
	border-collapse: collapse;
}

.pr-post-single__content th,
.pr-post-single__content td {
	padding: 0.65rem;
	border: 1px solid var(--pr-color-border);
	vertical-align: top;
}

.pr-post-single__content .wp-block-table {
	max-width: 100%;
	overflow-x: auto;
}

.pr-post-single__content blockquote {
	margin: 1.4rem 0;
	padding: 0.8rem 1rem;
	border-left: 4px solid #f0b5ba;
	background: #fff7f8;
	color: #3d4960;
}

.pr-post-single__content pre {
	max-width: 100%;
	overflow-x: auto;
	padding: 1rem;
	border-radius: 0.85rem;
	background: #102033;
	color: #f8fafc;
}

.pr-post-single__content .wp-block-button__link {
	border-radius: var(--pr-radius-control);
	background: var(--pr-color-red);
	color: #fff;
	font-weight: 800;
	text-decoration: none;
}

.pr-post-single__pagination {
	max-width: 45rem;
	margin: 1.5rem auto 0;
}

.pr-post-cta,
.pr-post-related,
.pr-post-nav {
	width: min(100%, 56.25rem);
	margin: 1rem auto 0;
}

.pr-post-cta {
	padding: clamp(1.15rem, 4vw, 1.8rem);
	border: 1px solid #f2c4ca;
	border-radius: 1.25rem;
	background: linear-gradient(135deg, #fff4f5 0%, #fff 72%);
	box-shadow: 0 1rem 2.4rem rgb(229 57 53 / 10%);
}

.pr-post-cta__eyebrow {
	margin: 0 0 0.45rem;
	color: var(--pr-color-red);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pr-post-cta__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.25rem, 5vw, 1.75rem);
	line-height: 1.35;
}

.pr-post-cta__text {
	margin: 0.65rem 0 0;
	color: #46546a;
	font-weight: 700;
	line-height: 1.75;
}

.pr-post-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	align-items: center;
	margin-top: 1rem;
}

.pr-post-cta__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0.7rem 1rem;
	border-radius: var(--pr-radius-control);
	font-weight: 900;
	text-align: center;
	text-decoration: none;
}

.pr-post-cta__button--primary {
	border: 1px solid var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
	box-shadow: 0 0.65rem 1.4rem rgb(229 57 53 / 18%);
}

.pr-post-cta__button--secondary {
	border: 1px solid #d7dde8;
	background: #fff;
	color: var(--pr-color-navy);
}

.pr-post-cta__link {
	color: var(--pr-color-navy);
	font-size: 0.9rem;
	font-weight: 900;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.pr-post-related {
	padding: clamp(1rem, 3vw, 1.5rem);
	border: 1px solid var(--pr-color-border);
	border-radius: 1.25rem;
	background: var(--pr-color-surface);
}

.pr-post-related__title {
	margin: 0 0 1rem;
	color: var(--pr-color-navy);
	font-size: 1.25rem;
}

.pr-post-related__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
}

.pr-post-related-card {
	overflow: hidden;
	border: 1px solid var(--pr-color-border);
	border-radius: 1rem;
	background: #fff;
}

.pr-post-related-card__thumb {
	display: block;
	background: #f7f8fb;
}

.pr-post-related-card__image {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	object-fit: cover;
}

.pr-post-related-card__body {
	padding: 0.85rem;
}

.pr-post-related-card__meta {
	margin: 0 0 0.35rem;
	color: var(--pr-color-muted);
	font-size: 0.78rem;
	font-weight: 800;
}

.pr-post-related-card__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 0.95rem;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.pr-post-related-card__title a {
	color: inherit;
	text-decoration: none;
}

.pr-post-related-card__title a:hover,
.pr-post-related-card__title a:focus-visible {
	color: var(--pr-color-red);
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.pr-post-nav {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.pr-post-nav__link {
	display: grid;
	gap: 0.25rem;
	padding: 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1rem;
	background: #fff;
	color: var(--pr-color-navy);
	text-decoration: none;
}

.pr-post-nav__link--next {
	text-align: right;
}

.pr-post-nav__label {
	color: var(--pr-color-muted);
	font-size: 0.78rem;
	font-weight: 900;
}

.pr-post-nav__title {
	font-weight: 900;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

@media (max-width: 47.99rem) {
	.site-footer {
		padding-bottom: calc(5.75rem + env(safe-area-inset-bottom));
	}

	.pr-loan-detail {
		gap: 0.85rem;
	}

	.pr-home-hero {
		gap: 0.8rem;
	}

	.pr-home-hero__feature-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.55rem;
		width: 100%;
	}

	.pr-home-hero__feature-card {
		min-height: 7rem;
		padding: 0.8rem 0.45rem;
	}

	.pr-home-hero__feature-title {
		font-size: 0.84rem;
	}

	.pr-home-hero__feature-text {
		font-size: 0.72rem;
	}

	.pr-home-hero__trust-list,
	.pr-register-benefits ul,
	.pr-guest-signup-card ul,
	.pr-guest-simulation-upsell__actions {
		grid-template-columns: 1fr;
	}

	.pr-home-hero__sub-actions {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.pr-home-hero__main-cta {
		width: min(100%, 23.5rem);
		padding-inline: 0.75rem;
	}

	.pr-home-hero__main-cta-line--sub {
		font-size: clamp(0.78rem, 3.9vw, 0.9rem);
		letter-spacing: -0.035em;
	}

	.pr-home-hero__main-cta-line--main {
		font-size: clamp(0.94rem, 4.45vw, 1.08rem);
		letter-spacing: -0.035em;
	}

	.pr-loan-detail-section,
	.pr-transaction-history-section {
		padding: 0.9rem;
	}

	.pr-extra-repayment-fields,
	.pr-additional-borrowing-fields,
	.pr-custom-payment-form {
		grid-template-columns: 1fr;
	}

	.pr-extra-repayment-section .pr-loan-action-buttons,
	.pr-additional-borrowing-section .pr-loan-action-buttons,
	.pr-result-section--custom-payment .pr-link-button,
	.pr-result-section--target-payoff .pr-link-button,
	.pr-transaction-history-more-actions .pr-link-button {
		width: 100%;
	}

	.pr-transaction-filter-controls {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		overflow-x: visible;
		padding-bottom: 0.35rem;
	}

	.pr-transaction-filter-button {
		min-width: 0;
	}

	.pr-transaction-history-card,
	.pr-transaction-preview-card,
	.pr-custom-payment-result {
		padding: 0.85rem;
	}

	.pr-dashboard-summary-grid {
		gap: 0.55rem;
	}

	.pr-dashboard-summary-card {
		min-height: 6.6rem;
		padding: 0.8rem;
	}

	.pr-dashboard-loan-list--carousel .pr-dashboard-loan-card {
		flex-basis: min(88vw, 22rem);
	}

	.pr-dashboard-loan-card__actions {
		grid-template-columns: 1fr;
	}

	.pr-custom-payment-result__list {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	.pr-post-single {
		padding-inline: 0.5rem;
	}

	.pr-news-archive {
		padding-inline: 0.5rem;
	}

	.pr-news-archive__header {
		padding: 1rem;
	}

	.pr-news-card {
		grid-template-columns: 1fr;
	}

	.pr-news-card__image {
		min-height: auto;
		aspect-ratio: 16 / 9;
	}

	.pr-post-single__card {
		padding: 1rem;
		border-radius: 1rem;
	}

	.pr-post-single__content {
		max-width: 100%;
	}

	.pr-post-cta,
	.pr-post-related,
	.pr-post-nav {
		width: auto;
		margin-inline: 0.5rem;
	}

	.pr-post-cta__actions,
	.pr-post-cta__button {
		width: 100%;
	}

	.pr-post-related__grid,
	.pr-post-nav {
		grid-template-columns: 1fr;
	}

	.pr-post-nav__link--next {
		text-align: left;
	}
}

.pr-static-page {
	width: min(100%, 56.25rem);
	margin: 0 auto;
	padding: clamp(1rem, 4vw, 2rem);
}

.pr-static-page__card {
	padding: clamp(1.25rem, 4vw, 2.25rem);
	border: 1px solid var(--pr-color-border);
	border-radius: 1.25rem;
	background: var(--pr-color-surface);
	box-shadow: 0 1rem 2.5rem rgb(24 49 83 / 10%);
}

.pr-static-page__header {
	margin-bottom: clamp(1.1rem, 3vw, 1.75rem);
	padding-bottom: 0.85rem;
	border-bottom: 1px solid var(--pr-color-border);
}

.pr-static-page__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.55rem, 6vw, 2.25rem);
	line-height: 1.25;
}

.pr-static-page__content {
	color: #344054;
	font-size: clamp(0.98rem, 3.8vw, 1.05rem);
	line-height: 1.9;
}

.pr-static-page__content > *:first-child {
	margin-top: 0;
}

.pr-static-page__content > *:last-child {
	margin-bottom: 0;
}

.pr-static-page__content h2,
.pr-static-page__content h3,
.pr-static-page__content h4 {
	margin-top: 1.75em;
	margin-bottom: 0.65em;
	color: var(--pr-color-navy);
	line-height: 1.35;
}

.pr-static-page__content p {
	margin: 0 0 1em;
}

.pr-static-page__content ul,
.pr-static-page__content ol {
	margin: 0 0 1.1em 1.4em;
	padding: 0;
}

.pr-static-page__content li + li {
	margin-top: 0.35em;
}

.pr-static-page__pagination {
	margin-top: 1.5rem;
}

.pr-user-notifications,
.pr-user-notification-list {
	display: grid;
	gap: 0.75rem;
}

.pr-settings-hub {
	display: grid;
	gap: 0.85rem;
}

.pr-settings-hub-card {
	padding: 0.95rem;
	border: 1px solid rgba(20, 34, 62, 0.1);
	border-radius: var(--pr-radius-card);
	background: #fff;
	box-shadow: 0 0.7rem 1.5rem rgba(20, 34, 62, 0.06);
}

.pr-settings-hub-card h2 {
	margin: 0 0 0.55rem;
	color: var(--pr-color-navy);
	font-size: clamp(1rem, 3vw, 1.15rem);
}

.pr-settings-profile-list {
	display: grid;
	gap: 0.55rem;
	margin: 0 0 0.85rem;
}

.pr-settings-profile-list div {
	display: grid;
	gap: 0.12rem;
}

.pr-settings-profile-list dt {
	color: var(--pr-color-muted);
	font-size: 0.82rem;
	font-weight: 800;
}

.pr-account-security,
.pr-account-email {
	display: grid;
	gap: 0.85rem;
}

.pr-account-security h2,
.pr-account-email h2 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.08rem, 4vw, 1.35rem);
}

.pr-account-security label,
.pr-account-email label {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-account-security input[type="password"],
.pr-account-email input[type="email"],
.pr-account-email input[type="password"] {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.pr-account-security__warning,
.pr-account-email__warning {
	margin: 0;
	padding: 0.75rem 0.85rem;
	border: 1px solid rgba(196, 41, 45, 0.18);
	border-radius: 0.85rem;
	background: rgba(196, 41, 45, 0.06);
	color: var(--pr-color-red);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.65;
}

.pr-account-security__actions,
.pr-account-email__actions {
	display: grid;
	gap: 0.55rem;
}

.pr-login-help {
	margin: 0.35rem 0 0;
	font-size: 0.92rem;
	text-align: right;
}

.pr-login-help a {
	color: var(--pr-color-navy);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.pr-password-reset-request,
.pr-password-reset-confirm {
	display: grid;
	gap: 0.85rem;
}

.pr-password-reset-login {
	margin: 0;
}

.pr-dashboard-greeting--payris {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	border-color: #f4c7ca;
	background: linear-gradient(135deg, #fff8f8 0%, #fff 100%);
}

.pr-dashboard-greeting__avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(3rem, 15vw, 4.2rem);
	height: clamp(3rem, 15vw, 4.2rem);
	overflow: hidden;
	border: 1px solid #f4c7ca;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 0.65rem 1.2rem rgb(214 64 69 / 10%);
}

.pr-dashboard-greeting__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.pr-dashboard-greeting__bubble {
	position: relative;
	min-width: 0;
	padding: 0.75rem 0.85rem;
	border: 1px solid rgba(244, 199, 202, 0.72);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.7rem 1.35rem rgb(24 49 83 / 6%);
}

.pr-dashboard-greeting__bubble::before {
	display: none;
}

.pr-dashboard-greeting__view {
	display: none;
	min-height: 6.4rem;
	align-content: center;
	gap: 0.35rem;
}

.pr-dashboard-greeting__view.is-active {
	display: grid;
}

.pr-dashboard-greeting__actions {
	display: grid;
	grid-column: 2;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	justify-items: stretch;
	gap: 0.6rem;
	margin-top: -0.15rem;
}

.pr-dashboard-greeting__action-button {
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 11.25rem;
	min-height: 3.25rem;
	padding: 0.25rem;
	border: 1px solid rgba(224, 62, 76, 0.18);
	border-radius: 0.9rem;
	background: #fff;
	cursor: pointer;
	display: inline-flex;
	box-shadow: 0 0.55rem 1rem rgba(15, 23, 42, 0.08);
}

.pr-dashboard-greeting__action-button:focus,
.pr-dashboard-greeting__action-button:hover {
	border-color: rgba(224, 62, 76, 0.44);
	background: #fff7f7;
	box-shadow: 0 0.75rem 1.25rem rgba(15, 23, 42, 0.1);
	transform: translateY(-1px);
}

.pr-dashboard-greeting__action-button img {
	display: block;
	width: 100%;
	max-width: 10.5rem;
	height: auto;
	object-fit: contain;
	border-radius: 0.65rem;
}

.pr-dashboard-image-ctas {
	display: grid;
	gap: 0.9rem;
	margin: 1.25rem 0 0;
}

.pr-dashboard-image-cta {
	display: block;
	border-radius: 1.1rem;
	overflow: hidden;
	line-height: 0;
	text-decoration: none;
}

.pr-dashboard-image-cta--framed {
	border: 1px solid rgba(15, 23, 42, 0.1);
	background: #fff;
	box-shadow: 0 0.75rem 1.5rem rgba(15, 23, 42, 0.08);
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.pr-dashboard-image-cta--framed:focus,
.pr-dashboard-image-cta--framed:hover {
	border-color: rgba(224, 62, 76, 0.24);
	box-shadow: 0 1rem 1.85rem rgba(15, 23, 42, 0.1);
	transform: translateY(-1px);
}

.pr-dashboard-image-cta:focus {
	outline: 3px solid rgba(224, 62, 76, 0.28);
	outline-offset: 3px;
}

.pr-dashboard-image-cta img {
	display: block;
	width: 100%;
	max-width: 46rem;
	height: auto;
	margin: 0 auto;
	object-fit: contain;
}

.pr-dashboard-fortune-card {
	gap: 0.32rem;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.pr-dashboard-fortune-card__label,
.pr-dashboard-fortune-card__rank,
.pr-dashboard-fortune-card__comment,
.pr-dashboard-fortune-card__action {
	margin: 0;
}

.pr-dashboard-fortune-card__label {
	color: var(--pr-color-muted);
	font-size: 0.78rem;
	font-weight: 900;
}

.pr-dashboard-fortune-card__rank {
	width: fit-content;
	padding: 0.22rem 0.65rem;
	border-radius: 999px;
	background: var(--pr-color-red);
	color: #fff;
	font-size: 0.9rem;
	font-weight: 900;
}

.pr-dashboard-fortune-card__comment,
.pr-dashboard-fortune-card__action {
	color: var(--pr-color-navy);
	font-size: 0.9rem;
	line-height: 1.55;
}

.pr-dashboard-fortune-card__action {
	color: var(--pr-color-muted);
	font-weight: 800;
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card,
.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card--balance,
.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card--next-payment,
.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card:last-child {
	grid-column: auto;
}

.pr-balance-slide-fields,
.pr-balance-slide-settings {
	display: grid;
	gap: 1rem;
}

.pr-balance-slide-fields[hidden],
[data-custom-slide-template-field][hidden] {
	display: none;
}

.pr-balance-slide-settings-card,
.pr-balance-slide-template-card,
.pr-financial-portal-link {
	display: grid;
	gap: 0.85rem;
	padding: 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1rem;
	background: #fff;
}

.pr-balance-slide-template-card h3 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
}

.pr-balance-slide-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.pr-balance-slide-table th,
.pr-balance-slide-table td {
	padding: 0.55rem 0.45rem;
	border-bottom: 1px solid var(--pr-color-border);
	text-align: left;
}

.pr-balance-slide-step-list,
.pr-balance-slide-step-row {
	display: grid;
	gap: 0.75rem;
}

.pr-balance-slide-step-row {
	grid-template-columns: minmax(0, 1fr);
	padding: 0.85rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 0.85rem;
	background: #f8fafc;
}

@media (min-width: 640px) {
	.pr-balance-slide-step-row {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
		align-items: end;
	}
}

.pr-repayment-review-intro,
.pr-repayment-review-hero,
.pr-repayment-review-selection,
.pr-repayment-review-results,
.pr-repayment-review-disclaimer,
.pr-repayment-review-expert,
.pr-repayment-review-empty {
	display: grid;
	gap: 0.85rem;
}

.pr-repayment-review-intro {
	border-color: rgba(224, 62, 76, 0.18);
	background: linear-gradient(180deg, #fff7f7 0%, #fff 100%);
}

.pr-repayment-review-intro__copy,
.pr-repayment-review__lead,
.pr-repayment-review-scope,
.pr-repayment-review-scope-note,
.pr-repayment-review-about p,
.pr-repayment-review-expert p,
.pr-repayment-review-disclaimer p {
	margin: 0;
	color: #667085;
	font-weight: 700;
	line-height: 1.7;
}

.pr-repayment-review-scope {
	padding: 0.72rem 0.82rem;
	border: 1px solid rgba(224, 62, 76, 0.16);
	border-radius: 0.9rem;
	background: #fff7f7;
	color: var(--pr-color-navy);
}

.pr-repayment-review-scope-note {
	font-size: 0.86rem;
}

.pr-repayment-review-about,
.pr-repayment-review-comparison,
.pr-repayment-review-conditions,
.pr-repayment-review-breakdown,
.pr-repayment-review-expert,
.pr-repayment-review-disclaimer {
	padding: 0.9rem;
	border: 1px solid #eadde0;
	border-radius: 1rem;
	background: #fffafa;
}

.pr-repayment-review-about h3,
.pr-repayment-review-comparison h3,
.pr-repayment-review-conditions h3,
.pr-repayment-review-breakdown h3 {
	margin: 0 0 0.45rem;
	color: var(--pr-color-navy);
	font-size: 0.96rem;
	font-weight: 900;
}

.pr-repayment-review-loans,
.pr-repayment-review-breakdown__list {
	display: grid;
	gap: 0.7rem;
}

.pr-repayment-review-loan {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0.75rem;
	align-items: flex-start;
	padding: 0.85rem;
	border: 1px solid #e8edf5;
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.45rem 1rem rgba(24, 49, 83, 0.05);
	cursor: pointer;
}

.pr-repayment-review-loan input {
	margin-top: 0.18rem;
}

.pr-repayment-review-loan__body {
	display: grid;
	gap: 0.22rem;
	color: #667085;
	font-size: 0.86rem;
	font-weight: 750;
}

.pr-repayment-review-loan__body strong {
	color: var(--pr-color-navy);
	font-size: 1rem;
	font-weight: 900;
}

.pr-repayment-review-periods {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	padding: 0.22rem;
	border: 1px solid #fee2e2;
	border-radius: 1rem;
	background: #fff7f7;
}

.pr-repayment-review-period {
	min-height: 2.15rem;
	padding: 0.35rem 0.15rem;
	border: 0;
	border-left: 1px solid rgba(224, 62, 76, 0.16);
	border-radius: 0.74rem;
	background: #fff;
	color: var(--pr-color-navy);
	font: inherit;
	font-size: clamp(0.7rem, 2.7vw, 0.82rem);
	font-weight: 900;
	white-space: nowrap;
	cursor: pointer;
}

.pr-repayment-review-period:first-child {
	border-left: 0;
}

.pr-repayment-review-period.is-active,
.pr-form button.pr-repayment-review-period.is-active {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
	box-shadow: 0 0.45rem 0.95rem rgba(224, 62, 76, 0.16);
}

.pr-form button.pr-repayment-review-period:not(.is-active) {
	background: #fff;
	color: var(--pr-color-navy);
	box-shadow: none;
}

.pr-repayment-review-main-card {
	display: grid;
	justify-items: center;
	gap: 0.2rem;
	padding: 1.1rem;
	border: 1px solid rgba(224, 62, 76, 0.22);
	border-radius: 1.15rem;
	background: #fff;
	box-shadow: 0 0.85rem 1.8rem rgba(224, 62, 76, 0.1);
	text-align: center;
}

.pr-repayment-review-main-card__label,
.pr-repayment-review-main-card__unit {
	margin: 0;
	color: #667085;
	font-weight: 800;
}

.pr-repayment-review-main-card__value {
	margin: 0;
	color: var(--pr-color-red);
	font-size: clamp(2rem, 10vw, 3.2rem);
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 1.08;
}

.pr-repayment-review-comparison {
	display: grid;
	gap: 0.42rem;
}

.pr-repayment-review-comparison p,
.pr-repayment-review-conditions li,
.pr-repayment-review-breakdown-card p {
	margin: 0;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-repayment-review-comparison__difference {
	color: var(--pr-color-red) !important;
	font-size: 1.05rem;
	font-weight: 900 !important;
}

.pr-repayment-review-conditions ul {
	display: grid;
	gap: 0.35rem;
	margin: 0;
	padding-left: 1.1rem;
}

.pr-repayment-review-breakdown-card {
	display: grid;
	gap: 0.26rem;
	padding: 0.78rem;
	border: 1px solid #e8edf5;
	border-radius: 0.95rem;
	background: #fff;
}

.pr-repayment-review-breakdown-card h4 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1rem;
	font-weight: 900;
}

.pr-repayment-review-disclaimer {
	background: #fff7ed;
	border-color: #fed7aa;
}

.pr-repayment-review-actions {
	display: flex;
	justify-content: center;
}

.pr-debt-solution-offers {
	display: grid;
	gap: 0.85rem;
	border-color: rgba(24, 49, 83, 0.12);
	background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

.pr-debt-solution-offers__copy {
	margin: 0;
	color: #667085;
	font-weight: 700;
	line-height: 1.7;
}

.pr-debt-solution-offers__list {
	display: grid;
	gap: 0.7rem;
}

.pr-debt-solution-offer-card {
	border: 1px solid #e8edf5;
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.5rem 1.2rem rgba(24, 49, 83, 0.05);
	overflow: hidden;
}

.pr-debt-solution-offer-card__summary {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.55rem;
	align-items: center;
	padding: 0.85rem;
	cursor: pointer;
	list-style: none;
}

.pr-debt-solution-offer-card__summary::-webkit-details-marker {
	display: none;
}

.pr-debt-solution-offer-card__summary-body {
	display: grid;
	gap: 0.24rem;
	min-width: 0;
}

.pr-debt-solution-offer-card__summary-body strong {
	color: var(--pr-color-navy);
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.35;
}

.pr-debt-solution-offer-card__summary-body span {
	color: #667085;
	font-size: 0.85rem;
	font-weight: 700;
	line-height: 1.55;
}

.pr-debt-solution-offer-card__toggle {
	border: 1px solid rgba(224, 62, 76, 0.2);
	border-radius: 999px;
	color: var(--pr-color-red);
	font-size: 0.78rem;
	font-weight: 900;
	padding: 0.3rem 0.55rem;
	white-space: nowrap;
}

.pr-debt-solution-offer-card[open] .pr-debt-solution-offer-card__toggle {
	background: #fff7f7;
}

.pr-debt-solution-offer-card__body {
	display: grid;
	gap: 0.72rem;
	padding: 0 0.85rem 0.9rem;
}

.pr-debt-solution-offer-card__body img {
	width: min(100%, 320px);
	height: auto;
	border-radius: 0.85rem;
	border: 1px solid #e8edf5;
	background: #fff;
	justify-self: center;
}

.pr-debt-solution-offer-card__body p {
	margin: 0;
	color: #667085;
	font-weight: 700;
	line-height: 1.7;
}

@media (max-width: 420px) {
	.pr-debt-solution-offer-card__summary {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.pr-debt-solution-offer-card__toggle {
		grid-column: 1 / -1;
		justify-self: start;
	}
}

.pr-ad-banner-slot {
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 1.25rem;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
	margin: 1.5rem 0;
	min-height: 17.5rem;
	padding: 1rem;
}

.pr-ad-banner-slot[hidden] {
	display: none;
}

.pr-ad-banner-slot__header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 0.75rem;
}

.pr-ad-banner-slot__header h3 {
	font-size: 0.95rem;
	margin: 0;
}

.pr-ad-banner-slot__label,
.pr-ad-banner-card__label {
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	color: #475569;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1;
	padding: 0.25rem 0.45rem;
}

.pr-ad-banner-carousel {
	align-items: center;
	display: grid;
	gap: 0.5rem;
	grid-template-columns: auto minmax(0, 1fr) auto;
}

.pr-ad-banner-carousel__button {
	align-items: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	color: #10223f;
	cursor: pointer;
	display: inline-flex;
	font-size: 1.4rem;
	font-weight: 800;
	height: 2.2rem;
	justify-content: center;
	line-height: 1;
	width: 2.2rem;
}

.pr-ad-banner-track {
	display: flex;
	gap: 0.75rem;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 0.1rem 0.1rem 0.55rem;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
	scrollbar-width: thin;
}

.pr-ad-banner-track--auto-sliding {
	scroll-behavior: auto;
	scroll-snap-type: none;
}

.pr-ad-banner-card {
	align-items: center;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 1rem;
	display: flex;
	flex: 0 0 200px;
	height: 200px;
	justify-content: center;
	overflow: hidden;
	position: relative;
	scroll-snap-align: start;
	width: 200px;
}

.pr-ad-banner-card:focus {
	outline-offset: 3px;
}

.pr-ad-banner-card img {
	display: block;
	height: 200px;
	object-fit: contain;
	width: 200px;
}

.pr-ad-banner-card__label {
	position: absolute;
	right: 0.45rem;
	top: 0.45rem;
}

.pr-additional-borrowing-offer-list {
	display: grid;
	gap: 0.85rem;
}

.pr-additional-borrowing-offer-list--nested {
	margin-top: 0.65rem;
}

.pr-additional-borrowing-offer-group {
	display: grid;
	gap: 0.35rem;
}

.pr-additional-borrowing-offer-group__title {
	color: #10223f;
	font-size: 0.96rem;
	margin: 0;
}

.pr-additional-borrowing-offer-card {
	background: #fff;
	border: 1px solid rgba(224, 62, 76, 0.18);
	border-radius: 1rem;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
	display: grid;
	gap: 0.65rem;
	padding: 0.95rem;
}

.pr-additional-borrowing-offer-card--fallback {
	border-color: rgba(224, 62, 76, 0.34);
}

.pr-additional-borrowing-offer-card img {
	border-radius: 0.8rem;
	display: block;
	max-height: 160px;
	object-fit: contain;
	width: 100%;
}

.pr-additional-borrowing-offer-card h4,
.pr-additional-borrowing-offer-card p {
	margin: 0;
}

.pr-payrhythm-news-list {
	display: grid;
	gap: 0.55rem;
}

.pr-payrhythm-news-ad {
	margin: 0;
}

.pr-payrhythm-news-item {
	align-items: center;
	display: grid;
	grid-template-columns: 4.2rem minmax(0, 1fr);
	gap: 0.75rem;
	min-height: 4.6rem;
	padding: 0.68rem 0.75rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.95rem;
	background: #fff;
	color: var(--pr-color-navy);
	text-decoration: none;
}

.pr-payrhythm-news-item:focus,
.pr-payrhythm-news-item:hover {
	border-color: rgba(224, 62, 76, 0.28);
	background: #fff7f7;
}

.pr-payrhythm-news-item__body {
	display: grid;
	gap: 0.25rem;
	min-width: 0;
}

.pr-payrhythm-news-item__meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.pr-payrhythm-news-item__body strong {
	display: -webkit-box;
	overflow: hidden;
	font-size: 0.92rem;
	font-weight: 900;
	line-height: 1.45;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.pr-payrhythm-news-item__body span {
	color: var(--pr-color-muted);
	font-size: 0.78rem;
	font-weight: 700;
}

.pr-payrhythm-news-item__excerpt {
	display: -webkit-box;
	overflow: hidden;
	color: #4d5a70 !important;
	font-size: 0.82rem !important;
	font-weight: 600 !important;
	line-height: 1.55;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.pr-payrhythm-news-item__link {
	color: var(--pr-color-red) !important;
	font-size: 0.78rem !important;
	font-weight: 900 !important;
}

.pr-payrhythm-news-item img {
	width: 4.2rem;
	height: 4.2rem;
	border-radius: 0.75rem;
	object-fit: cover;
	background: #f8fafc;
}

.pr-payrhythm-news-item__placeholder {
	align-items: center;
	align-self: stretch;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 0.75rem;
	color: #94a3b8;
	display: inline-flex;
	font-size: 1.35rem;
	justify-content: center;
	min-height: 4.2rem;
	width: 4.2rem;
}

.pr-payrhythm-news-item__category,
.pr-payrhythm-news-item__new {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	line-height: 1;
	padding: 0.18rem 0.42rem;
}

.pr-payrhythm-news-item__category {
	background: #f1f5f9;
	color: #475569 !important;
}

.pr-payrhythm-news-item__new {
	background: var(--pr-color-red);
	color: #fff !important;
	font-size: 0.66rem !important;
	font-weight: 900 !important;
	letter-spacing: 0.03em;
}

.pr-payrhythm-news-item--ad {
	border-color: rgba(224, 62, 76, 0.18);
	background: #fffafa;
}

.pr-payrhythm-news-item__ad-label {
	width: fit-content;
	padding: 0.16rem 0.4rem;
	border-radius: 999px;
	background: #f1f5f9;
	color: #475569 !important;
	font-size: 0.68rem !important;
	font-weight: 900 !important;
}

@media (max-width: 480px) {
	.pr-ad-banner-slot {
		margin: 1.25rem 0;
		padding: 0.85rem;
	}

	.pr-ad-banner-carousel {
		grid-template-columns: minmax(0, 1fr);
	}

	.pr-ad-banner-carousel__button {
		display: none;
	}
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card {
	min-height: 7.2rem;
	padding: clamp(0.72rem, 2.8vw, 0.95rem);
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card__value {
	font-size: clamp(1.05rem, 4.8vw, 1.65rem);
	overflow-wrap: anywhere;
	white-space: normal;
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card--balance .pr-dashboard-summary-card__value {
	font-size: clamp(1.16rem, 5.2vw, 1.75rem);
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card--balance {
	border-color: rgba(196, 30, 58, 0.28);
	background: linear-gradient(180deg, #fff3f4 0%, #fff 100%);
	box-shadow: 0 0.75rem 1.6rem rgb(196 30 58 / 10%);
}

.pr-dashboard-summary-panel {
	border-color: rgba(224, 62, 76, 0.2);
	background: linear-gradient(180deg, #fff7f7 0%, #fff 48%, #fff 100%);
}

.pr-dashboard-summary-panel > .pr-card-title-label,
.pr-dashboard-section--trends > .pr-card-title-label,
.pr-repayment-calendar-section--month-grid > .pr-card-title-label {
	width: fit-content;
	padding: 0.28rem 0.72rem;
	border-radius: 999px;
	background: #fff1f2;
	color: var(--pr-color-red);
	font-size: 0.9rem;
}

.pr-dashboard-summary-main-card {
	display: grid;
	gap: 0.72rem;
	padding: clamp(1rem, 4vw, 1.25rem);
	border: 1px solid rgba(224, 62, 76, 0.22);
	border-radius: 1.15rem;
	background: #fff;
	box-shadow: 0 0.8rem 1.7rem rgba(224, 62, 76, 0.1);
}

.pr-dashboard-summary-main-card .pr-dashboard-summary-card__value {
	font-size: clamp(1.8rem, 9vw, 3rem);
	letter-spacing: -0.04em;
}

.pr-dashboard-summary-progress {
	display: grid;
	gap: 0.32rem;
}

.pr-dashboard-summary-progress__track {
	display: block;
	height: 0.72rem;
	overflow: hidden;
	border-radius: 999px;
	background: #fee2e2;
}

.pr-dashboard-summary-progress__bar {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #e03e4c 0%, #ff8a94 100%);
}

.pr-dashboard-summary-progress__text {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 0.84rem;
	font-weight: 900;
}

.pr-dashboard-summary-two-col {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

.pr-dashboard-summary-small-card {
	display: flex;
	align-items: center;
	gap: 0.62rem;
	min-width: 0;
	padding: 0.85rem;
	border: 1px solid rgba(224, 62, 76, 0.14);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.5rem 1.1rem rgba(15, 23, 42, 0.05);
}

.pr-dashboard-summary-small-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	background: #fff1f2;
}

.pr-dashboard-summary-small-card__body {
	display: grid;
	min-width: 0;
	gap: 0.15rem;
}

.pr-dashboard-summary-small-card__label {
	color: var(--pr-color-muted);
	font-size: 0.76rem;
	font-weight: 800;
}

.pr-dashboard-summary-small-card__value {
	color: var(--pr-color-red);
	font-size: clamp(1.02rem, 4vw, 1.35rem);
	font-weight: 900;
	line-height: 1.2;
	overflow-wrap: anywhere;
}

.pr-dashboard-section--trends {
	overflow: hidden;
}

.pr-dashboard-section--trends {
	background: #fff;
	border-color: rgba(15, 23, 42, 0.08);
	box-shadow: 0 0.75rem 1.8rem rgba(15, 23, 42, 0.06);
}

.pr-dashboard-trend-lead {
	margin: -0.25rem 0 0;
	color: var(--pr-color-muted);
	font-size: 0.86rem;
	font-weight: 800;
}

.pr-dashboard-trend-controls {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	padding: 0.22rem;
	border: 1px solid #fee2e2;
	border-radius: 1rem;
	background: #fff7f7;
}

.pr-dashboard-trend-controls__button {
	min-height: 2rem;
	padding: 0.34rem 0.12rem;
	border: 0;
	border-left: 1px solid rgba(224, 62, 76, 0.16);
	border-radius: 0.72rem;
	background: #fff;
	color: var(--pr-color-navy);
	font: inherit;
	font-size: clamp(0.68rem, 2.45vw, 0.78rem);
	font-weight: 900;
	cursor: pointer;
	white-space: nowrap;
}

.pr-dashboard-trend-controls__button:first-child {
	border-left: 0;
}

.pr-dashboard-trend-controls__button:hover,
.pr-dashboard-trend-controls__button:focus-visible {
	color: var(--pr-color-red);
	outline-offset: 2px;
}

.pr-dashboard-trend-controls__button.is-active {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
	box-shadow: 0 0.45rem 0.95rem rgba(224, 62, 76, 0.16);
}

.pr-form button.pr-dashboard-trend-controls__button:not(.is-active) {
	border-color: rgba(224, 62, 76, 0.16);
	background: #fff;
	color: var(--pr-color-navy);
	box-shadow: none;
}

.pr-form button.pr-dashboard-trend-controls__button.is-active {
	border-color: var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-dashboard-trend-chart {
	display: grid;
	gap: 0.75rem;
	min-height: 15rem;
}

.pr-dashboard-trend-chart svg {
	width: 100%;
	height: auto;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 1rem;
	background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

.pr-dashboard-trend-chart__axis {
	stroke: #cbd5e1;
	stroke-width: 1;
}

.pr-dashboard-trend-chart__grid {
	stroke: #e2e8f0;
	stroke-dasharray: 3 4;
	stroke-width: 1;
}

.pr-dashboard-trend-chart__amount-label {
	fill: #64748b;
	font-size: 0.58rem;
	font-weight: 800;
}

.pr-dashboard-trend-chart__amount-label--balance {
	fill: var(--pr-color-red);
}

.pr-dashboard-trend-chart__amount-label--repayment {
	fill: #64748b;
}

.pr-dashboard-trend-chart__bar {
	fill: rgba(224, 62, 76, 0.28);
}

.pr-dashboard-trend-chart__line {
	fill: none;
	stroke: var(--pr-color-red);
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 3;
}

.pr-dashboard-trend-chart__dot {
	fill: #fff;
	stroke: var(--pr-color-red);
	stroke-width: 2;
}

.pr-dashboard-trend-chart__label {
	fill: #64748b;
	font-size: 0.68rem;
	font-weight: 800;
}

.pr-dashboard-trend-legend {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.8rem;
	color: var(--pr-color-muted);
	font-size: 0.82rem;
	font-weight: 800;
}

.pr-dashboard-trend-legend span {
	align-items: center;
	display: inline-flex;
	gap: 0.35rem;
}

.pr-dashboard-trend-legend i {
	display: inline-block;
}

.pr-dashboard-trend-legend__line {
	width: 1.2rem;
	height: 0.18rem;
	border-radius: 999px;
	background: var(--pr-color-red);
}

.pr-dashboard-trend-legend__bar {
	width: 0.7rem;
	height: 0.85rem;
	border-radius: 0.2rem;
	background: rgba(224, 62, 76, 0.34);
}

.pr-dashboard-trend-latest-card {
	display: grid;
	gap: 0.18rem;
	margin: 0;
	padding: 0.82rem 0.9rem;
	border-radius: 1rem;
	background: #fff7f7;
	color: var(--pr-color-navy);
}

.pr-dashboard-trend-latest-card__title,
.pr-dashboard-trend-latest-card__body {
	margin: 0;
}

.pr-dashboard-trend-latest-card__title {
	color: var(--pr-color-red);
	font-size: 0.82rem;
	font-weight: 900;
}

.pr-dashboard-trend-latest-card__body {
	display: grid;
	gap: 0.22rem;
	font-size: 0.92rem;
	font-weight: 900;
}

.pr-dashboard-trend-latest-card__line {
	display: block;
	white-space: nowrap;
}

.pr-additional-borrowing-check-intro,
.pr-additional-borrowing-check-hero,
.pr-additional-borrowing-check-summary,
.pr-additional-borrowing-check-form-section,
.pr-additional-borrowing-check-actions {
	display: grid;
	gap: 0.75rem;
}

.pr-card-title-label,
.pr-dashboard-section > h3,
.pr-settings-hub-card > h2,
.pr-notification-settings-card > h2,
.pr-support-contact-card > h2,
.pr-withdrawal-entry-card > h2 {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	width: fit-content;
	max-width: 100%;
	margin: 0 0 0.2rem;
	padding: 0.32rem 0.7rem;
	border: 1px solid #ffd0d0;
	border-radius: 999px;
	background: #fff1f1;
	color: #b4232a;
	font-size: clamp(0.86rem, 3.4vw, 0.96rem);
	font-weight: 900;
	line-height: 1.35;
}

.pr-additional-borrowing-check-intro__copy,
.pr-additional-borrowing-check-intro__note,
.pr-additional-borrowing-check__lead,
.pr-additional-borrowing-check__disclaimer,
.pr-additional-borrowing-check__note {
	margin: 0;
	line-height: 1.7;
}

.pr-additional-borrowing-check-intro__copy,
.pr-additional-borrowing-check__lead {
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-additional-borrowing-check-intro__note,
.pr-additional-borrowing-check__note {
	color: var(--pr-color-muted);
	font-size: 0.9rem;
}

.pr-additional-borrowing-check__disclaimer {
	padding: 0.75rem 0.85rem;
	border: 1px solid rgba(196, 30, 58, 0.16);
	border-radius: 0.9rem;
	background: #fff8f8;
	color: #6b3440;
	font-size: 0.92rem;
	font-weight: 700;
}

.pr-additional-borrowing-check-summary__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.55rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pr-additional-borrowing-check-summary__grid li {
	display: grid;
	gap: 0.18rem;
	padding: 0.75rem;
	border: 1px solid rgba(20, 34, 62, 0.09);
	border-radius: 0.9rem;
	background: #fff;
}

.pr-additional-borrowing-check-form {
	display: grid;
	gap: 0.8rem;
}

.pr-additional-borrowing-check-form label {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-additional-borrowing-check-form input,
.pr-additional-borrowing-check-form select {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.pr-additional-borrowing-check-form__feedback {
	margin: 0;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.6;
}

.pr-additional-borrowing-check-form__feedback--success {
	color: #0f7a3b;
}

.pr-additional-borrowing-check-form__feedback--error {
	color: var(--pr-color-red);
}

.pr-additional-borrowing-check-result-wrap {
	display: grid;
	gap: 0.85rem;
}

.pr-additional-borrowing-check-result {
	border-left: 0.32rem solid var(--pr-color-navy);
}

.pr-additional-borrowing-check-result--good {
	border-left-color: #0f7a3b;
	background: linear-gradient(180deg, #f5fff8 0%, #fff 100%);
}

.pr-additional-borrowing-check-result--watch {
	border-left-color: #c98512;
	background: linear-gradient(180deg, #fffaf0 0%, #fff 100%);
}

.pr-additional-borrowing-check-result--caution {
	border-left-color: var(--pr-color-red);
	background: linear-gradient(180deg, #fff5f5 0%, #fff 100%);
}

.pr-additional-borrowing-check-result h3,
.pr-additional-borrowing-check-result__message,
.pr-additional-borrowing-check-result__subhead {
	margin: 0;
}

.pr-additional-borrowing-check-result h3 {
	color: var(--pr-color-navy);
	font-size: clamp(1.08rem, 4vw, 1.35rem);
	line-height: 1.45;
}

.pr-additional-borrowing-check-result__message {
	color: var(--pr-color-text);
	line-height: 1.7;
}

.pr-additional-borrowing-check-result__subhead {
	color: var(--pr-color-navy);
	font-weight: 900;
}

.pr-additional-borrowing-check-result ul {
	display: grid;
	gap: 0.45rem;
	margin: 0;
	padding-left: 1.25rem;
	line-height: 1.65;
}

.pr-additional-borrowing-estimate {
	display: grid;
	gap: 0.85rem;
}

.pr-additional-borrowing-estimate__grid {
	display: grid;
	gap: 0.75rem;
}

.pr-additional-borrowing-estimate-card {
	display: grid;
	gap: 0.45rem;
	padding: 0.85rem;
	border: 1px solid rgba(20, 34, 62, 0.1);
	border-radius: var(--pr-radius-card);
	background: #fff;
	box-shadow: 0 0.65rem 1.25rem rgb(20 34 62 / 6%);
}

.pr-additional-borrowing-estimate-card h4,
.pr-additional-borrowing-estimate-card__value,
.pr-additional-borrowing-estimate-card__copy {
	margin: 0;
}

.pr-additional-borrowing-estimate-card h4 {
	color: var(--pr-color-navy);
	font-size: 0.96rem;
	line-height: 1.45;
}

.pr-additional-borrowing-estimate-card__value {
	color: var(--pr-color-red);
	font-size: clamp(1.12rem, 5vw, 1.5rem);
	font-weight: 900;
	line-height: 1.35;
}

.pr-additional-borrowing-estimate-card__copy {
	color: var(--pr-color-muted);
	font-size: 0.88rem;
	line-height: 1.65;
}

.pr-additional-borrowing-check-actions {
	grid-template-columns: 1fr;
}

.pr-withdrawal-entry-card,
.pr-withdrawal-flow {
	display: grid;
	gap: 0.8rem;
}

.pr-withdrawal-flow {
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px dashed rgba(20, 34, 62, 0.16);
}

.pr-withdrawal-reason-list {
	display: grid;
	gap: 0.55rem;
}

.pr-withdrawal-flow label:not(.pr-checkbox-label) {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-withdrawal-flow input[type="text"],
.pr-withdrawal-flow input[type="password"],
.pr-withdrawal-flow textarea {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.pr-withdrawal-summary-list {
	display: grid;
	gap: 0.55rem;
	margin: 0;
}

.pr-withdrawal-summary-list div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid rgba(20, 34, 62, 0.12);
	border-radius: 0.85rem;
	background: #fff;
}

.pr-withdrawal-summary-list dt {
	color: var(--pr-color-muted);
	font-size: 0.86rem;
	font-weight: 800;
}

.pr-withdrawal-summary-list dd {
	margin: 0;
	color: var(--pr-color-navy);
	font-weight: 900;
	text-align: right;
}

.pr-withdrawal-warning {
	margin: 0;
	padding: 0.75rem 0.85rem;
	border: 1px solid rgba(196, 41, 45, 0.2);
	border-radius: 0.85rem;
	background: rgba(196, 41, 45, 0.07);
	color: var(--pr-color-red);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.65;
}

.pr-withdrawal-complete {
	display: grid;
	gap: 0.9rem;
}

.pr-withdrawal-actions {
	display: grid;
	gap: 0.55rem;
}

.pr-withdrawal-feedback {
	margin: 0;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.6;
}

.pr-withdrawal-feedback:empty {
	display: none;
}

.pr-withdrawal-feedback--success {
	color: #0f7a3b;
}

.pr-withdrawal-feedback--error {
	color: var(--pr-color-red);
}

@media (min-width: 40rem) {
	.pr-additional-borrowing-check-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-additional-borrowing-check-form button,
	.pr-additional-borrowing-check-form__feedback,
	.pr-additional-borrowing-check-result-wrap {
		grid-column: 1 / -1;
	}

	.pr-additional-borrowing-check-actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pr-additional-borrowing-estimate__grid,
	.pr-withdrawal-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.pr-select-loan {
	display: grid;
	gap: 1rem;
}

.pr-select-loan h2 {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: clamp(1.1rem, 4.4vw, 1.35rem);
	line-height: 1.45;
}

.pr-select-loan-list {
	display: grid;
	gap: 0.85rem;
}

.pr-select-loan-card {
	display: grid;
	gap: 0.8rem;
	padding: 0.9rem;
	border: 1px solid var(--pr-color-border);
	border-radius: var(--pr-radius-card);
	background: #fff;
	box-shadow: var(--pr-shadow-card);
}

.pr-select-loan-card h2 {
	font-size: 1.05rem;
	overflow-wrap: anywhere;
}

.pr-support-contact-card {
	display: grid;
	gap: 0.75rem;
}

.pr-support-contact-card label {
	display: grid;
	gap: 0.35rem;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-support-contact-card input,
.pr-support-contact-card select,
.pr-support-contact-card textarea {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.pr-support-contact-card textarea {
	resize: vertical;
}

.pr-support-contact-feedback {
	margin: 0;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.55;
}

.pr-support-contact-feedback--info {
	color: #667085;
}

.pr-support-contact-feedback--success {
	color: #0f7a3b;
}

.pr-support-contact-feedback--error {
	color: var(--pr-color-red);
}

.pr-settings-profile-list dd {
	margin: 0;
	color: var(--pr-color-navy);
	font-weight: 800;
	overflow-wrap: anywhere;
}

@media (max-width: 30rem) {
	body.logged-in.payrhythm-app.admin-bar .site-header {
		top: calc(46px + 0.35rem);
	}

	.site-header {
		padding-inline: 0.65rem;
	}

	.site-header__app-actions {
		gap: 0.25rem;
	}

	.site-header__icon-link {
		width: 2.18rem;
		height: 2.18rem;
		font-size: 0.98rem;
	}

	.site-header__login-state {
		display: none;
	}
}

.pr-user-notification-card {
	padding: 0.9rem;
	border: 1px solid rgba(20, 34, 62, 0.1);
	border-radius: var(--pr-radius-card);
	background: #fff;
	box-shadow: 0 0.7rem 1.6rem rgba(20, 34, 62, 0.07);
}

.pr-user-notification-card--unread {
	background: #fffdfd;
}

.pr-user-notification-tabs {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 0.85rem;
	border-bottom: 1px solid rgba(20, 34, 62, 0.1);
}

.pr-user-notification-tab {
	min-height: 2.55rem;
	border: 0;
	border-bottom: 3px solid transparent;
	border-radius: 0;
	background: #fff;
	color: var(--pr-color-navy);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.pr-user-notification-tab.is-active {
	border-color: var(--pr-color-red);
	background: #fff;
	color: var(--pr-color-red);
	box-shadow: none;
}

.pr-user-notification-card__header {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.7rem;
	min-width: 0;
}

.pr-user-notification-card__icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 999px;
	background: #fff5f5;
	color: var(--pr-color-red);
	font-size: 1.1rem;
}

.pr-user-notification-card__unread-dot {
	position: absolute;
	right: 0.1rem;
	top: 0.1rem;
	width: 0.55rem;
	height: 0.55rem;
	border: 2px solid #fff;
	border-radius: 999px;
	background: var(--pr-color-red);
}

.pr-user-notification-card__title-button {
	display: flex;
	flex-direction: column;
	gap: 0.18rem;
	min-width: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--pr-color-navy);
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.pr-form .pr-user-notification-card__title-button {
	width: auto;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--pr-color-navy);
	box-shadow: none;
}

.pr-user-notification-card--read .pr-user-notification-card__title-button {
	color: #39445c;
}

.pr-form .pr-user-notification-card--read .pr-user-notification-card__title-button {
	color: #39445c;
}

.pr-user-notification-card__title-text {
	display: block;
	min-width: 0;
	color: inherit;
	font-size: clamp(0.98rem, 3vw, 1.08rem);
	font-weight: 800;
	line-height: 1.45;
	overflow-wrap: break-word;
	word-break: normal;
}

.pr-user-notification-card__title-meta {
	display: block;
	color: var(--pr-color-muted);
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1.35;
}

.pr-user-notification-card__side {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: flex-end;
	gap: 0.35rem;
}

.pr-user-notification-card__read-badge {
	flex: 0 0 auto;
	padding: 0.18rem 0.5rem;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 800;
}

.pr-user-notification-card__read-badge--unread {
	background: #fff1f2;
	color: var(--pr-color-red);
}

.pr-user-notification-card__read-badge--read {
	background: #eef2f7;
	color: var(--pr-color-muted);
}

.pr-user-notification-card__arrow {
	color: var(--pr-color-muted);
	font-size: 1rem;
	line-height: 1;
}

.pr-user-notification-card__delete {
	flex: 0 0 auto;
	width: auto;
	max-width: 4.5rem;
	min-height: 1.9rem;
	padding: 0.12rem 0.45rem;
	border: 0;
	border-radius: 999px;
	background: #f8fafc;
	color: #667085;
	font: inherit;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: none;
	flex-shrink: 0;
}

.pr-form .pr-user-notification-card__delete {
	width: auto;
	min-width: 0;
	max-width: 4.5rem;
	min-height: 1.9rem;
	padding: 0.12rem 0.45rem;
	border: 0;
	background: #f8fafc;
	color: #667085;
	box-shadow: none;
}

.pr-user-notification-card__delete:disabled {
	cursor: wait;
	opacity: 0.6;
}

.pr-user-notification-card__panel {
	margin-top: 0.7rem;
}

.pr-user-notification-card__panel[hidden] {
	display: none;
}

.pr-user-notification-card__message {
	margin: 0 0 0.65rem;
	color: var(--pr-color-text);
	line-height: 1.65;
}

.pr-user-notification-card__message a {
	color: var(--pr-color-red);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.16em;
	overflow-wrap: anywhere;
}

.pr-user-notification-card__details {
	display: grid;
	grid-template-columns: minmax(6rem, auto) 1fr;
	gap: 0.35rem 0.65rem;
	margin: 0;
	font-size: 0.9rem;
}

.pr-user-notification-card__details dt {
	color: var(--pr-color-muted);
	font-weight: 700;
}

.pr-user-notification-card__details dd {
	margin: 0;
	color: var(--pr-color-navy);
	overflow-wrap: anywhere;
}

.pr-user-notification-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

.pr-notification-delete-modal[hidden] {
	display: none;
}

.pr-notification-delete-modal {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: grid;
	place-items: center;
	padding: max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));
	background: rgba(20, 34, 62, 0.42);
}

.pr-notification-delete-modal__dialog {
	width: calc(100% - 32px);
	max-width: 420px;
	padding: 1.15rem;
	border: 1px solid rgba(20, 34, 62, 0.12);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 1.25rem 3rem rgba(20, 34, 62, 0.22);
}

.pr-notification-delete-modal__title {
	margin: 0;
	color: var(--pr-color-navy);
	font-size: 1.08rem;
	font-weight: 800;
	line-height: 1.45;
}

.pr-notification-delete-modal__description {
	margin: 0.55rem 0 0;
	color: var(--pr-color-text);
	font-size: 0.94rem;
	line-height: 1.65;
}

.pr-notification-delete-modal__error {
	margin: 0.75rem 0 0;
	padding: 0.65rem 0.75rem;
	border-radius: 0.75rem;
	background: #fff1f2;
	color: var(--pr-color-red);
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.55;
}

.pr-notification-delete-modal__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
	margin-top: 1rem;
}

.pr-form .pr-notification-delete-modal__cancel,
.pr-form .pr-notification-delete-modal__confirm,
.pr-notification-delete-modal__cancel,
.pr-notification-delete-modal__confirm {
	width: 100%;
	min-height: 2.65rem;
	padding: 0.58rem 0.85rem;
	border-radius: 999px;
	font: inherit;
	font-weight: 800;
	line-height: 1.35;
	cursor: pointer;
	box-shadow: none;
}

.pr-form .pr-notification-delete-modal__cancel,
.pr-notification-delete-modal__cancel {
	border: 1px solid rgba(20, 34, 62, 0.16);
	background: #fff;
	color: var(--pr-color-navy);
}

.pr-form .pr-notification-delete-modal__confirm,
.pr-notification-delete-modal__confirm {
	border: 1px solid var(--pr-color-red);
	background: var(--pr-color-red);
	color: #fff;
}

.pr-notification-delete-modal__cancel:disabled,
.pr-notification-delete-modal__confirm:disabled {
	cursor: wait;
	opacity: 0.65;
}

@media (max-width: 30rem) {
	.pr-user-notification-card {
		padding: 0.8rem;
	}

	.pr-user-notification-card__header {
		grid-template-columns: auto minmax(0, 1fr);
		align-items: start;
	}

	.pr-user-notification-card__side {
		grid-column: 2;
		justify-content: flex-start;
		max-width: 100%;
		min-width: 0;
		flex-wrap: wrap;
	}

	.pr-user-notification-card__icon {
		width: 2.15rem;
		height: 2.15rem;
	}

	.pr-user-notification-card__delete {
		min-height: 1.8rem;
		max-width: 3.8rem;
		padding-inline: 0.42rem;
		font-size: 0.68rem;
	}

	.pr-notification-delete-modal {
		padding-inline: 1rem;
	}

	.pr-notification-delete-modal__dialog {
		width: calc(100% - 32px);
		padding: 1rem;
	}
}

.pr-dashboard-user-status {
	display: grid;
	gap: 0.18rem;
	padding: 0.85rem 1rem;
	border: 1px solid var(--pr-color-border);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 0.45rem 1rem rgba(20, 34, 62, 0.05);
}

.pr-dashboard-user-status__greeting {
	margin: 0;
	color: var(--pr-color-navy);
	font-weight: 800;
}

.pr-dashboard-user-status__time {
	margin: 0;
	color: var(--pr-color-muted);
	font-size: 0.9rem;
}

.pr-notification-actions {
	margin-top: 1rem;
}

@media (min-width: 48rem) {
	:root {
		--pr-space: 1.5rem;
	}

	.pr-metric-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pr-result-section--metrics .pr-metric-grid {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
	}

	.pr-comparison-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-dashboard-summary-grid {
		grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
		gap: 0.75rem;
	}

	.pr-dashboard-summary-card--balance {
		grid-column: span 2;
	}

	.pr-dashboard-summary-card--next-payment {
		grid-column: span 2;
	}

	.pr-dashboard-summary-card:last-child {
		grid-column: auto;
	}

	.pr-screen--dashboard,
	.pr-screen--has-bottom-nav {
		padding-bottom: 2rem;
	}

	.pr-dashboard-bottom-nav {
		display: none;
	}

	.site-header__app-actions {
		gap: 0.45rem;
	}

	.pr-dashboard-cta-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pr-dashboard-loan-list--carousel .pr-dashboard-loan-card {
		flex-basis: min(31vw, 22rem);
	}

	.pr-repayment-calendar-month-actions,
	.pr-repayment-calendar-card__actions,
	.pr-repayment-calendar-footer-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-repayment-calendar-month-actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pr-notification-settings-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-loan-detail-summary-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-loan-detail-action-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-loan-action-buttons {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.pr-transaction-history-card__title-row,
	.pr-transaction-history-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: center;
	}

	.pr-transaction-history-card__amount {
		justify-self: end;
		text-align: right;
	}
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card,
.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card--balance,
.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card--next-payment,
.pr-dashboard-fv-summary .pr-dashboard-summary-grid--four .pr-dashboard-summary-card:last-child {
	grid-column: auto;
}
