/*
 * Theme variables in rules that the block editor shows have defaults:
 * its iframe gets variables.css only from core's compat copy.
 */
.wp-block-rmk-client-portal {
	--rmk-client-portal-background: #f2f8f6;
	--rmk-client-portal-border: #d6e7dd;
	--rmk-client-portal-title: #262b3b;
	--rmk-client-portal-text: #4b4e62;
	--rmk-client-portal-font: var(--font-new-gothic, "News Gothic MT"), sans-serif;
}

/* The editor's wrapper has this class too: only the section draws the box. */
section.wp-block-rmk-client-portal {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	width: 100%;
	margin: 1.5rem 0;
	padding: 1.5rem;
	border: 1px solid var(--rmk-client-portal-border);
	border-radius: 0.5rem;
	background: var(--rmk-client-portal-background);
	font-family: var(--rmk-client-portal-font);
	overflow-wrap: break-word;
}

/* Root class first: the global styles' :root :where(p) weighs one class. */
.wp-block-rmk-client-portal .wp-block-rmk-client-portal__intro {
	display: flex;
	gap: 3.5rem;
	align-items: flex-end;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__text {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__title {
	margin: 0;
	padding: 0;
	color: var(--rmk-client-portal-title);
	font-family: var(--rmk-client-portal-font);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: calc(32 / 24);
	text-transform: none;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__lead {
	margin: 0;
	color: var(--rmk-client-portal-text);
	font-family: var(--rmk-client-portal-font);
	font-size: 1.125rem;
	font-weight: 400;
	line-height: calc(24 / 18);
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__link {
	box-sizing: border-box;
	display: inline-flex;
	flex: none;
	gap: 0.5rem;
	align-items: center;
	justify-content: center;
	min-width: 11.25rem;
	min-height: 2.5rem;

	/* Figma's 8 px and 18 px include the border. */
	padding: 0.4375rem 1.0625rem;
	border: 1px solid var(--rmk-green-keskmine, #008457);
	border-radius: 0.5rem;
	background: var(--rmk-green-keskmine, #008457);
	color: #fff;
	font-family: var(--rmk-client-portal-font);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	text-decoration: none;
}

/* The theme's a:hover underlines and recolours every link. */
.wp-block-rmk-client-portal .wp-block-rmk-client-portal__link:hover {
	border-color: var(--rmk-green, #006b4e);
	background: var(--rmk-green, #006b4e);
	color: #fff;
	text-decoration: none;
}

/* Solid: the theme's half-transparent focus colour is under 3:1 on the box. */
.wp-block-rmk-client-portal .wp-block-rmk-client-portal__link:focus-visible {
	outline: 0.1875rem solid var(--rmk-green, #006b4e);
	outline-offset: 0.125rem;
}

/* The high-contrast mode turns --rmk-green black and --white yellow. */
.accessibility .wp-block-rmk-client-portal {
	--rmk-client-portal-background: #fff;
	--rmk-client-portal-border: #000;
	--rmk-client-portal-title: #000;
	--rmk-client-portal-text: #000;
}

.accessibility .wp-block-rmk-client-portal .wp-block-rmk-client-portal__link {
	border-color: var(--rmk-green);
	background: var(--rmk-green);
	color: var(--white);
}

.accessibility .wp-block-rmk-client-portal .wp-block-rmk-client-portal__link:hover {
	text-decoration: underline;
}

/* A mask, not an image: the arrow takes the text colour in every mode. */
.wp-block-rmk-client-portal .wp-block-rmk-client-portal__arrow {
	display: block;
	flex: none;
	width: 1.125rem;
	height: 1.125rem;
	background-color: currentcolor;
	-webkit-mask: url(../../assets/svg/arrow-forward-white.svg) no-repeat center / contain;
	mask: url(../../assets/svg/arrow-forward-white.svg) no-repeat center / contain;
}

/* Forced colours replace the background, and the mask then paints nothing. */
@media (forced-colors: active) {

	.wp-block-rmk-client-portal .wp-block-rmk-client-portal__arrow {
		background-color: linktext;
		forced-color-adjust: none;
	}
}

/* Not .visually-hidden: globals.css gives it display: none. */
.wp-block-rmk-client-portal .wp-block-rmk-client-portal__hint {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	border: 0;
	white-space: nowrap;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__values {
	display: flex;
	gap: 1.125rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__value {
	box-sizing: border-box;
	display: flex;
	flex: 1 1 0;
	gap: 1.125rem;
	align-items: center;
	min-width: 0;
	margin: 0;
	padding: 1.125rem 1rem;
	border: 1px solid var(--rmk-client-portal-border);
	border-radius: 0.5rem;
	background: #fff;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__icon {
	display: block;
	flex: none;
	max-width: none;
	height: auto;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__value-body {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__value-title,
.wp-block-rmk-client-portal .wp-block-rmk-client-portal__value-text {
	margin: 0;
	padding: 0;
	color: var(--rmk-client-portal-title);
	font-family: var(--rmk-client-portal-font);
	font-size: 1rem;
	line-height: 1.5;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__value-title {
	font-weight: 700;
}

.wp-block-rmk-client-portal .wp-block-rmk-client-portal__value-text {
	font-weight: 400;
}

@media screen and (max-width: 920px) {

	.wp-block-rmk-client-portal .wp-block-rmk-client-portal__values {
		flex-direction: column;
		gap: 0.25rem;
	}
}

@media screen and (max-width: 767px) {

	section.wp-block-rmk-client-portal {
		padding: 1rem;
	}

	.wp-block-rmk-client-portal .wp-block-rmk-client-portal__intro {
		flex-direction: column;
		gap: 0.75rem;
		align-items: flex-start;
	}

	.wp-block-rmk-client-portal .wp-block-rmk-client-portal__lead {
		font-size: 1rem;
		line-height: 1.5;
	}

	.wp-block-rmk-client-portal .wp-block-rmk-client-portal__icon {
		width: 4rem;
	}
}
