:root {
	--yp-bg: #e8f0f8;
	--yp-bg-strong: #f7fbff;
	--yp-surface: rgba(255, 255, 255, 0.84);
	--yp-surface-strong: rgba(255, 255, 255, 0.97);
	--yp-border: rgba(17, 50, 94, 0.1);
	--yp-border-strong: rgba(23, 63, 110, 0.16);
	--yp-text: #193258;
	--yp-text-soft: #5f7692;
	--yp-primary: #205fb0;
	--yp-primary-deep: #163f79;
	--yp-primary-soft: #d9e8fb;
	--yp-gold: #a57416;
	--yp-gold-soft: #f6e8bc;
	--yp-success: #1f825f;
	--yp-success-soft: #dbf4ea;
	--yp-danger: #b54e4e;
	--yp-danger-soft: #f9e4e4;
	--yp-shadow: 0 24px 70px rgba(16, 50, 91, 0.13);
	--yp-shadow-soft: 0 12px 30px rgba(18, 57, 102, 0.08);
	--yp-radius-xl: 28px;
	--yp-radius-lg: 22px;
	--yp-radius-md: 16px;
	--yp-radius-sm: 12px;
	--yp-radius-pill: 999px;
}

.yp-shell {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-height: 100vh;
	margin: 0 !important;
	padding: 24px;
	overflow-x: clip;
	color: var(--yp-text);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	background:
		radial-gradient(circle at top left, rgba(255, 255, 255, 0.95), transparent 34%),
		linear-gradient(180deg, #f9fbff 0%, #eef4fb 44%, #e6eef7 100%);
}

.yp-shell *,
.yp-shell *::before,
.yp-shell *::after {
	box-sizing: border-box;
}

.yp-login,
.yp-form,
.yp-login__preview,
.yp-overview-grid,
.yp-action-row,
.yp-client-grid,
.yp-edit-form__fields,
.yp-profile-meta,
.yp-profile-panels,
.yp-stat-list {
	display: grid;
	gap: 24px;
}

.yp-login {
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, 420px);
	min-height: 78vh;
}

.yp-login--single {
	grid-template-columns: minmax(320px, 460px);
	justify-content: center;
	justify-items: center;
	align-content: center;
	min-height: calc(100vh - 48px);
}

.yp-login-stack {
	width: min(100%, 460px);
	display: grid;
	gap: 16px;
}

.yp-login-brand {
	display: grid;
	gap: 18px;
	margin-bottom: 10px;
	justify-items: center;
	text-align: center;
}

.yp-login-brand__logo {
	display: block;
	width: min(100%, 240px);
	height: auto;
}

.yp-login-brand__copy {
	display: grid;
	gap: 8px;
	justify-items: center;
}

.yp-login-brand__lead {
	margin: 0;
	color: var(--yp-text-soft);
	font-size: 1rem;
	line-height: 1.65;
}

.yp-login__hero,
.yp-login__card,
.yp-mini-card,
.yp-dashboard__header,
.yp-card,
.yp-feature-card,
.yp-searchbar,
.yp-client-card,
.yp-profile-card,
.yp-modal__panel,
.yp-app-topbar,
.yp-tabs {
	background: var(--yp-surface);
	border: 1px solid var(--yp-border);
	backdrop-filter: blur(16px);
	box-shadow: var(--yp-shadow);
	border-radius: var(--yp-radius-xl);
}

.yp-login__hero,
.yp-login__card,
.yp-card,
.yp-feature-card,
.yp-client-card,
.yp-profile-card,
.yp-modal__panel,
.yp-app-topbar {
	padding: 28px;
}

.yp-dashboard,
.yp-profile {
	display: grid;
	gap: 24px;
}

.yp-app-topbar,
.yp-dashboard__header,
.yp-dashboard__actions,
.yp-feature-card,
.yp-searchbar,
.yp-client-card__top,
.yp-client-card__identity,
.yp-client-card__status,
.yp-section-heading,
.yp-modal__header,
.yp-modal__filters,
.yp-charter-item,
.yp-profile__header,
.yp-profile__header-main,
.yp-profile-hero,
.yp-profile-identity__chips,
.yp-panel__header,
.yp-panel__title,
.yp-panel__subhead,
.yp-charter-media,
.yp-charter-media__meta,
.yp-edit-form__footer,
.yp-edit-form__actions,
.yp-back-link,
.yp-editable,
.yp-editable-row,
.yp-stat-row,
.yp-stat-row__label {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.yp-app-topbar,
.yp-dashboard__header,
.yp-section-heading,
.yp-modal__header,
.yp-charter-item,
.yp-profile__header,
.yp-edit-form__footer {
	justify-content: space-between;
}

.yp-login__hero {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.yp-login__preview,
.yp-overview-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.yp-login--single .yp-login__card {
	width: min(100%, 460px);
}

.yp-mini-card,
.yp-card,
.yp-client-card {
	display: grid;
	gap: 16px;
}

.yp-mini-card__icon,
.yp-card__icon,
.yp-feature-card__icon,
.yp-searchbar__icon,
.yp-panel__icon,
.yp-editable-row__icon,
.yp-back-link__icon {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(32, 95, 176, 0.12), rgba(255, 255, 255, 0.94));
	color: var(--yp-primary);
	border: 1px solid rgba(32, 95, 176, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.yp-mini-card__icon svg,
.yp-card__icon svg,
.yp-feature-card__icon svg,
.yp-searchbar__icon svg,
.yp-panel__icon svg,
.yp-editable-row__icon svg,
.yp-back-link__icon svg,
.yp-editable__icon svg,
.yp-inline-edit svg,
.yp-photo-card__action svg,
.yp-profile-badge__seal svg,
.yp-stat-row__icon svg {
	width: 20px;
	height: 20px;
}

.yp-feature-card {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 240px;
	gap: 24px;
	min-height: 154px;
	padding: 28px 30px;
	align-items: center;
}

.yp-feature-card__content {
	display: grid;
	gap: 16px;
	padding: 6px 8px;
	align-content: start;
}

.yp-feature-card__head {
	display: flex;
	align-items: center;
	gap: 14px;
}

.yp-feature-card__titles {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.yp-feature-card__eyebrow {
	color: var(--yp-text-soft);
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.76rem;
	font-weight: 700;
	line-height: 1;
}

.yp-feature-card__text h2,
.yp-panel__title h2,
.yp-modal h2,
.yp-login h2,
.yp-client-card h3,
.yp-editable__value {
	margin: 0;
}

.yp-dashboard__copy,
.yp-login__lead,
.yp-card p,
.yp-feature-card p,
.yp-client-card p,
.yp-charter-item p,
.yp-empty-state p,
.yp-edit-form__status {
	color: var(--yp-text-soft);
	line-height: 1.65;
	margin: 0;
}

.yp-dashboard__copy,
.yp-login__lead {
	max-width: 760px;
}

.yp-dashboard__brand {
	display: flex;
	align-items: center;
	gap: 22px;
}

.yp-dashboard__logo {
	width: 116px;
	height: auto;
	display: block;
	flex: 0 0 auto;
}

.yp-login-as {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	border-radius: var(--yp-radius-pill);
	background: rgba(219, 234, 255, 0.72);
	color: var(--yp-primary-deep);
	font-size: 0.9rem;
	font-weight: 800;
}

.yp-button__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.yp-button__icon svg {
	width: 18px;
	height: 18px;
	display: block;
}

.yp-overview-grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.yp-card {
	min-height: 214px;
	align-content: start;
	padding: 34px 28px;
	gap: 18px;
}

.yp-card__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 2px;
	padding: 10px 14px 0;
}

.yp-card__value {
	display: block;
	font-size: 1.9rem;
	font-weight: 800;
	line-height: 1;
	padding: 8px 14px 0;
}

.yp-card p,
.yp-feature-card > .yp-button {
	margin-inline: 0;
	max-width: 100%;
	justify-content: center;
}

.yp-card p {
	width: 100%;
	text-align: left;
	line-height: 1.55;
	max-width: 28ch;
	padding: 0 14px 10px;
}

.yp-feature-card p {
	padding-left: 56px;
	min-height: 5.2em;
}

.yp-card__label,
.yp-mini-card__label,
.yp-eyebrow,
.yp-field span,
.yp-panel__eyebrow,
.yp-editable-row__label,
.yp-client-card__details span,
.yp-stat-row span {
	color: var(--yp-text-soft);
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.76rem;
	font-weight: 700;
}

.yp-action-row {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.yp-searchbar {
	grid-template-columns: 54px minmax(0, 1fr);
	padding: 18px 22px;
	column-gap: 14px;
}

.yp-searchbar__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 14px;
	width: 100%;
	align-items: center;
}

.yp-searchbar__form input,
.yp-field input,
.yp-field select,
.yp-field textarea {
	width: 100%;
	padding: 14px 16px;
	border-radius: 14px;
	border: 1px solid rgba(32, 95, 176, 0.16);
	background: rgba(255, 255, 255, 0.95);
	color: var(--yp-text);
	font-size: 1rem;
	font-family: inherit;
}

.yp-searchbar__form input {
	min-width: 0;
	padding-inline: 18px;
}

.yp-filterbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 12px;
	margin-bottom: 18px;
	padding-inline: 10px;
}

.yp-filterbar__label {
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--yp-muted-strong);
}

.yp-filterbar__form {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 220px;
}

.yp-filterbar__form select {
	width: 100%;
	max-width: 260px;
	padding: 12px 14px;
	border-radius: 14px;
	border: 1px solid rgba(32, 95, 176, 0.16);
	background: rgba(255, 255, 255, 0.95);
	color: var(--yp-text);
	font: inherit;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

.yp-field textarea {
	resize: vertical;
	min-height: 132px;
}

.yp-field {
	display: grid;
	gap: 8px;
}

.yp-field--full {
	grid-column: 1 / -1;
}

.yp-field__help {
	color: var(--yp-text-soft);
	font-size: 0.86rem;
	line-height: 1.55;
}

.yp-settings-section-form {
	display: grid;
	gap: 18px;
}

.yp-settings-section-form + .yp-settings-section-form {
	padding-top: 18px;
	border-top: 1px solid rgba(17, 50, 94, 0.08);
	margin-top: 18px;
}

.yp-settings-section {
	display: grid;
	gap: 18px;
}

.yp-settings-section__header {
	display: grid;
	gap: 8px;
}

.yp-settings-section__header h3,
.yp-settings-section__header p {
	margin: 0;
}

.yp-settings-section__header p {
	color: var(--yp-text-soft);
	line-height: 1.65;
}

.yp-toggle-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 18px 20px;
	border-radius: 18px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	background: linear-gradient(180deg, rgba(245, 250, 255, 0.9), rgba(255, 255, 255, 0.98));
}

.yp-toggle-card__copy {
	display: grid;
	gap: 4px;
}

.yp-toggle-card__copy strong,
.yp-toggle-card__copy small {
	margin: 0;
}

.yp-toggle-card__copy small {
	color: var(--yp-text-soft);
	line-height: 1.55;
}

.yp-toggle-switch {
	position: relative;
	display: inline-flex;
	flex: 0 0 auto;
}

.yp-toggle-switch input {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

.yp-toggle-switch__track {
	width: 66px;
	height: 38px;
	border-radius: 999px;
	background: rgba(209, 221, 238, 0.95);
	border: 1px solid rgba(17, 50, 94, 0.08);
	box-shadow: inset 0 2px 8px rgba(15, 38, 67, 0.08);
	transition: background 0.18s ease;
}

.yp-toggle-switch__thumb {
	position: absolute;
	top: 5px;
	left: 5px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 8px 18px rgba(19, 44, 78, 0.18);
	transition: transform 0.18s ease;
}

.yp-toggle-switch input:checked + .yp-toggle-switch__track {
	background: linear-gradient(135deg, #59d27d, #2aa45b);
}

.yp-toggle-switch input:checked ~ .yp-toggle-switch__thumb {
	transform: translateX(28px);
}

.yp-calculator-launcher[hidden] {
	display: none;
}

.yp-calculator-launcher {
	position: fixed;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 46;
	width: 40px;
	height: 84px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 0 20px 20px 0;
	background: linear-gradient(180deg, rgba(34, 93, 168, 0.95), rgba(20, 53, 104, 0.96));
	box-shadow: 0 18px 36px rgba(16, 45, 88, 0.26);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.yp-calculator-launcher__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.yp-calculator-launcher__icon svg {
	width: 18px;
	height: 18px;
}

.yp-calculator-drawer[hidden] {
	display: none;
}

.yp-calculator-drawer {
	position: fixed;
	inset: 0;
	z-index: 60;
}

.yp-calculator-drawer__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(13, 22, 35, 0.28);
	backdrop-filter: blur(18px);
}

.yp-calculator-drawer__panel {
	position: relative;
	z-index: 1;
	min-height: 100vh;
	padding: 32px;
	display: grid;
	place-items: center;
	background:
		linear-gradient(120deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0)) left / 28% 100% no-repeat,
		radial-gradient(circle at left center, rgba(255, 255, 255, 0.16), transparent 34%);
	animation: yp-calculator-drawer-in 220ms ease-out;
}

.yp-calculator-drawer__close {
	position: absolute;
	top: 28px;
	right: 28px;
}

.yp-calculator {
	width: min(100%, 420px);
	padding: 26px;
	border-radius: 34px;
	background:
		linear-gradient(180deg, rgba(52, 58, 76, 0.96), rgba(21, 25, 37, 0.98));
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow:
		0 30px 60px rgba(5, 8, 18, 0.44),
		inset 0 1px 0 rgba(255, 255, 255, 0.12);
	color: #fff;
	display: grid;
	gap: 22px;
}

.yp-calculator__header {
	display: grid;
	gap: 6px;
}

.yp-calculator__header h2,
.yp-calculator__header p,
.yp-calculator__screen p,
.yp-calculator__display {
	margin: 0;
}

.yp-calculator__header .yp-eyebrow {
	color: rgba(214, 223, 242, 0.72);
}

.yp-calculator__screen {
	padding: 18px 18px 20px;
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(245, 248, 255, 0.12), rgba(255, 255, 255, 0.04));
	border: 1px solid rgba(255, 255, 255, 0.06);
	display: grid;
	gap: 8px;
	text-align: right;
}

.yp-calculator__equation {
	color: rgba(214, 223, 242, 0.72);
	font-size: 0.92rem;
	min-height: 1.4em;
}

.yp-calculator__display {
	font-size: clamp(2.4rem, 7vw, 3.8rem);
	font-weight: 300;
	line-height: 1;
	letter-spacing: -0.04em;
	word-break: break-all;
}

.yp-calculator__keys {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.yp-calculator__key {
	border: 0;
	border-radius: 22px;
	min-height: 72px;
	background: linear-gradient(180deg, rgba(106, 112, 131, 0.46), rgba(75, 81, 101, 0.54));
	color: #fff;
	font-size: 1.55rem;
	font-weight: 600;
	cursor: pointer;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		0 10px 22px rgba(8, 11, 19, 0.18);
}

.yp-calculator__key--function {
	background: linear-gradient(180deg, rgba(143, 149, 167, 0.88), rgba(103, 109, 128, 0.92));
	color: #f6f8ff;
}

.yp-calculator__key--operator {
	background: linear-gradient(180deg, #ffb04e, #f68b19);
	color: #fff;
}

.yp-calculator__key--equals {
	background: linear-gradient(180deg, #ffb862, #ff8c1f);
}

.yp-calculator__key--wide {
	grid-column: span 2;
}

@keyframes yp-calculator-drawer-in {
	from {
		opacity: 0;
		transform: translateX(-28px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.yp-field--file input {
	padding: 12px;
}

.yp-client-grid,
.yp-profile-panels {
	grid-template-columns: 1fr;
}

.yp-client-card__identity {
	flex: 1 1 auto;
	min-width: 0;
}

.yp-client-card__identity > div {
	display: grid;
	gap: 6px;
}

.yp-client-row {
	display: grid;
	grid-template-columns: minmax(280px, 1.2fr) minmax(180px, auto) minmax(0, 2fr) auto;
	align-items: center;
	gap: 22px;
	padding-inline: 14px;
}

.yp-client-row__identity {
	display: flex;
	align-items: center;
	gap: 18px;
	min-width: 0;
}

.yp-client-row__identity > div,
.yp-client-row__identity-copy {
	display: grid;
	gap: 6px;
}

.yp-client-row__identity h3 {
	font-size: 1.8rem;
	line-height: 1.02;
	letter-spacing: -0.03em;
	margin: 0;
}

.yp-client-row__status-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 14px;
	border-radius: 999px;
	width: 188px;
	max-width: 100%;
	border: 1px solid rgba(17, 50, 94, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
	justify-content: flex-start;
	font: inherit;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.yp-client-row__status-badge:hover,
.yp-client-row__status-badge:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(32, 95, 176, 0.22);
	box-shadow: 0 16px 34px rgba(23, 62, 113, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.9);
	outline: 0;
}

.yp-client-row__status-badge strong {
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.2;
	letter-spacing: -0.01em;
	text-align: left;
}

.yp-client-row__status-icon {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.75);
	flex: 0 0 auto;
}

.yp-client-row__status-icon svg {
	width: 18px;
	height: 18px;
	display: block;
}

.yp-client-row__status-badge--vip {
	background: linear-gradient(180deg, rgba(255, 246, 221, 0.98), rgba(255, 255, 255, 0.9));
	color: #a06a08;
}

.yp-client-row__status-badge--gold {
	background: linear-gradient(180deg, rgba(251, 239, 199, 0.98), rgba(255, 255, 255, 0.9));
	color: #9a6a0f;
}

.yp-client-row__status-badge--silver {
	background: linear-gradient(180deg, rgba(234, 240, 247, 0.98), rgba(255, 255, 255, 0.9));
	color: #5c6d86;
}

.yp-client-row__status-badge--bronze {
	background: linear-gradient(180deg, rgba(247, 226, 214, 0.98), rgba(255, 255, 255, 0.9));
	color: #9f623e;
}

.yp-client-row__status-badge--explorer {
	background: linear-gradient(180deg, rgba(223, 241, 251, 0.98), rgba(255, 255, 255, 0.9));
	color: #1f6790;
}

.yp-client-row__status-badge--guest,
.yp-client-row__status-badge--pending {
	background: linear-gradient(180deg, rgba(236, 241, 248, 0.98), rgba(255, 255, 255, 0.9));
	color: #4f6485;
}

.yp-client-row__identity p {
	font-size: 1rem;
}

.yp-client-row__identity-subline {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	min-height: 24px;
}

.yp-client-row__identity-subline .yp-chip--client-type {
	align-self: flex-start;
	padding: 7px 13px;
	font-size: 0.8rem;
}

.yp-client-row__meta {
	display: grid;
	align-content: center;
	justify-items: start;
	justify-content: start;
}

.yp-client-row__details {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.yp-pagination {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	padding-top: 18px;
	flex-wrap: wrap;
}

.yp-pagination__status {
	margin: 0;
	color: var(--yp-text-soft);
	font-size: 0.95rem;
}

.yp-button--pagination {
	min-width: 118px;
	justify-content: center;
	text-align: center;
}

.yp-button--pagination.is-disabled {
	pointer-events: none;
	opacity: 0.45;
}

.yp-client-row__details div {
	display: grid;
	gap: 8px;
	padding: 15px 16px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: var(--yp-radius-md);
}

.yp-client-row__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 12px;
}

.yp-client-row__actions .yp-button--row-action {
	width: 220px;
	max-width: 100%;
	justify-content: center;
	text-align: center;
}

.yp-client-row__charter-status {
	align-content: start;
}

.yp-client-row__charter-empty {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.4;
	color: var(--yp-text-soft);
}

.yp-avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(140deg, #deebff, #fff6e1);
	color: var(--yp-primary);
	font-size: 1.06rem;
	font-weight: 800;
	border: 1px solid rgba(32, 95, 176, 0.12);
	object-fit: cover;
	flex: 0 0 auto;
}

.yp-avatar--photo {
	width: 64px;
	height: 64px;
}

.yp-chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 15px;
	border-radius: var(--yp-radius-pill);
	font-size: 0.86rem;
	font-weight: 800;
	line-height: 1.2;
}

.yp-chip--soft {
	background: rgba(219, 234, 255, 0.82);
	color: var(--yp-primary);
}

.yp-chip--gold {
	background: var(--yp-gold-soft);
	color: var(--yp-gold);
}

.yp-chip--client-type {
	background: var(--yp-type-bg, #e7eef9);
	color: var(--yp-type-text, #49608c);
}

.yp-chip--scope {
	background: rgba(232, 240, 248, 0.86);
	color: var(--yp-text-soft);
}

.yp-chip--main-skipper {
	border: 1px solid rgba(30, 89, 166, 0.22);
	background: rgba(219, 234, 255, 0.72);
	color: var(--yp-primary);
	cursor: pointer;
	font: inherit;
	font-size: 0.78rem;
	font-weight: 900;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.yp-chip--main-skipper:hover,
.yp-chip--main-skipper:focus-visible {
	background: rgba(30, 89, 166, 0.12);
	box-shadow: 0 10px 22px rgba(30, 89, 166, 0.14);
	transform: translateY(-1px);
}

.yp-chip--main-skipper-active {
	border-color: rgba(166, 105, 0, 0.24);
	background: var(--yp-gold-soft);
	color: var(--yp-gold);
	cursor: default;
}

.yp-chip--editable {
	border: 0;
	cursor: pointer;
}

.yp-chip--wide {
	align-self: flex-start;
	margin-bottom: 4px;
}

.yp-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 22px;
	border-radius: var(--yp-radius-pill);
	border: 1px solid transparent;
	text-decoration: none;
	font-weight: 800;
	font-size: 1rem;
	line-height: 1.2;
	font-family: inherit;
	cursor: pointer;
	transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.yp-button:disabled {
	opacity: 0.56;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
}

.yp-button:hover,
.yp-editable:hover,
.yp-editable-row:hover,
.yp-stat-row:hover,
.yp-photo-card:hover,
.yp-back-link:hover,
.yp-inline-edit:hover,
.yp-chip--editable:hover {
	transform: translateY(-1px);
}

.yp-button--primary {
	background: linear-gradient(135deg, var(--yp-primary), var(--yp-primary-deep));
	color: #fff;
	box-shadow: 0 16px 34px rgba(29, 95, 174, 0.28);
}

.yp-button--ghost {
	background: rgba(255, 255, 255, 0.9);
	color: var(--yp-text);
	border-color: var(--yp-border);
}

.yp-button.is-disabled,
.yp-button[aria-disabled="true"] {
	pointer-events: none;
	opacity: 0.48;
	box-shadow: none;
}

.yp-button--charter {
	background: rgba(231, 240, 255, 0.92);
	color: var(--yp-primary);
	border-color: rgba(32, 95, 176, 0.18);
}

.yp-button--preview {
	background: rgba(255, 255, 255, 0.92);
	color: #9a6a08;
	border-color: rgba(168, 117, 10, 0.22);
}

.yp-button--danger {
	color: var(--yp-danger);
	border-color: rgba(181, 78, 78, 0.18);
	background: rgba(255, 255, 255, 0.92);
}

.yp-app-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
	padding-block: 18px;
}

.yp-dashboard__header {
	padding: 30px 34px;
}

.yp-dashboard__header > div {
	padding-inline: 16px;
}

.yp-app-topbar__title {
	display: block;
	margin-top: 4px;
	font-size: 1.05rem;
}

.yp-profile__linked-client {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: fit-content;
	margin: 10px 0 8px;
	padding: 9px 14px;
	border: 1px solid var(--yp-border);
	border-radius: var(--yp-radius-pill);
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(219, 234, 255, 0.72));
	box-shadow: 0 14px 34px rgba(18, 43, 80, 0.08);
	color: var(--yp-ink);
	font-size: 0.95rem;
}

.yp-profile__linked-client span {
	color: var(--yp-muted);
	font-size: 0.74rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.yp-profile__linked-client strong {
	font-weight: 900;
}

.yp-save-indicator {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	border-radius: var(--yp-radius-pill);
	background: rgba(219, 234, 255, 0.72);
	color: var(--yp-primary);
	font-size: 0.86rem;
	font-weight: 800;
}

.yp-save-indicator[data-state="error"] {
	background: var(--yp-danger-soft);
	color: var(--yp-danger);
}

.yp-save-indicator[data-state="success"] {
	background: var(--yp-success-soft);
	color: var(--yp-success);
}

.yp-back-link {
	color: var(--yp-primary);
	text-decoration: none;
	font-weight: 800;
}

.yp-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	padding: 14px;
}

.yp-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 18px;
	border-radius: var(--yp-radius-pill);
	font-size: 0.92rem;
	font-weight: 800;
	text-decoration: none;
	border: 1px solid rgba(32, 95, 176, 0.08);
}

.yp-tab--active {
	background: linear-gradient(135deg, rgba(32, 95, 176, 0.16), rgba(255, 255, 255, 0.96));
	color: var(--yp-primary-deep);
}

.yp-tab--disabled {
	background: rgba(255, 255, 255, 0.5);
	color: rgba(95, 118, 146, 0.84);
	cursor: not-allowed;
}

.yp-profile-card {
	display: grid;
	gap: 28px;
	padding: 30px 32px;
}

.yp-guest-list {
	gap: 26px;
}

.yp-guest-list__header,
.yp-guest-row,
.yp-guest-row__identity,
.yp-guest-row__meta,
.yp-guest-row__actions,
.yp-guest-summary-card__head {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.yp-guest-list__header {
	justify-content: space-between;
}

.yp-guest-list__header > div {
	display: grid;
	gap: 10px;
}

.yp-guest-list__header h2,
.yp-guest-row h3,
.yp-guest-summary-card__value {
	margin: 0;
}

.yp-guest-summary-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.yp-guest-summary-card {
	display: grid;
	gap: 16px;
	padding: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 24px;
	box-shadow: var(--yp-shadow-soft);
}

.yp-guest-summary-card__value {
	font-size: clamp(1.8rem, 2.2vw, 2.5rem);
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.04em;
}

.yp-guest-summary-card__value--small {
	font-size: 1.24rem;
	line-height: 1.35;
	letter-spacing: -0.02em;
}

.yp-guest-summary-card p {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.55;
}

.yp-guest-summary-card__separator {
	margin-inline: 8px;
}

.yp-client-behavior {
	gap: 26px;
}

.yp-behavior-summary,
.yp-behavior-rating-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.yp-behavior-score-card,
.yp-behavior-classification-card,
.yp-behavior-section,
.yp-behavior-rating-card,
.yp-behavior-flag {
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.86));
	box-shadow: var(--yp-shadow-soft);
}

.yp-behavior-score-card,
.yp-behavior-classification-card {
	display: grid;
	gap: 14px;
	padding: 24px;
}

.yp-behavior-score-card strong,
.yp-behavior-classification-card strong {
	font-size: clamp(2rem, 3vw, 3.2rem);
	line-height: 1;
	letter-spacing: -0.05em;
	color: var(--yp-navy);
}

.yp-behavior-score-card p,
.yp-behavior-classification-card p,
.yp-behavior-section__head p,
.yp-behavior-rating-card__copy {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.55;
}

.yp-behavior-classification-card--elite-client {
	background: linear-gradient(180deg, rgba(255, 248, 219, 0.96), rgba(255, 255, 255, 0.88));
	border-color: rgba(165, 116, 22, 0.22);
}

.yp-behavior-classification-card--trusted-client {
	background: linear-gradient(180deg, rgba(229, 248, 235, 0.96), rgba(255, 255, 255, 0.88));
	border-color: rgba(44, 132, 83, 0.18);
}

.yp-behavior-classification-card--high-risk,
.yp-behavior-classification-card--do-not-charter {
	background: linear-gradient(180deg, rgba(255, 241, 238, 0.96), rgba(255, 255, 255, 0.88));
	border-color: rgba(190, 72, 57, 0.2);
}

.yp-behavior-form,
.yp-behavior-section {
	display: grid;
	gap: 20px;
}

.yp-behavior-section {
	padding: 24px;
}

.yp-behavior-section__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
}

.yp-behavior-section__head h3 {
	margin: 0;
	font-size: clamp(1.25rem, 1.8vw, 1.65rem);
}

.yp-behavior-rating-card {
	position: relative;
	display: grid;
	gap: 12px;
	padding: 20px;
}

.yp-behavior-communication-group {
	display: grid;
	gap: 18px;
	padding: 18px;
	border: 1px solid rgba(32, 95, 176, 0.18);
	border-radius: 26px;
	background:
		radial-gradient(circle at 8% 0%, rgba(217, 232, 251, 0.95), transparent 34%),
		linear-gradient(135deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.9));
	box-shadow: var(--yp-shadow-soft);
}

.yp-behavior-communication-group__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	flex-wrap: wrap;
	padding: 2px 4px 0;
}

.yp-behavior-communication-group__head p {
	max-width: 760px;
	margin: 6px 0 0;
	color: var(--yp-text-soft);
	line-height: 1.55;
}

.yp-behavior-communication-group__head strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 9px 15px;
	border-radius: var(--yp-radius-pill);
	background: rgba(217, 232, 251, 0.92);
	color: var(--yp-primary-deep);
	font-size: 0.82rem;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.yp-behavior-rating-grid--communication {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.yp-behavior-rating-card__title {
	font-weight: 900;
	color: var(--yp-navy);
}

.yp-behavior-rating-card__native {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.yp-behavior-rating-control {
	display: grid;
	gap: 12px;
	align-items: start;
	padding: 14px;
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 20px;
	background:
		radial-gradient(circle at 18% 15%, rgba(255, 230, 157, 0.42), transparent 32%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(239, 247, 255, 0.86));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.yp-behavior-rating-control__stars {
	display: flex;
	align-items: center;
	gap: 8px;
}

.yp-behavior-rating-star,
.yp-behavior-rating-control__empty {
	appearance: none;
	border: 1px solid rgba(17, 50, 94, 0.12);
	background: rgba(255, 255, 255, 0.78);
	color: rgba(96, 122, 153, 0.82);
	cursor: pointer;
	transition:
		transform 160ms ease,
		border-color 160ms ease,
		background 160ms ease,
		box-shadow 160ms ease,
		color 160ms ease;
}

.yp-behavior-rating-star {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 15px;
	font-size: 1.35rem;
	line-height: 1;
}

.yp-behavior-rating-star:hover,
.yp-behavior-rating-star:focus-visible,
.yp-behavior-rating-control__empty:hover,
.yp-behavior-rating-control__empty:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(176, 118, 0, 0.35);
	box-shadow: 0 14px 28px rgba(17, 50, 94, 0.1);
	outline: none;
}

.yp-behavior-rating-star.is-active {
	border-color: rgba(176, 118, 0, 0.3);
	background: linear-gradient(135deg, #fff6d9, #f4bd45);
	color: #9b6700;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
}

.yp-behavior-rating-control__empty {
	justify-self: start;
	min-height: 34px;
	padding: 8px 13px;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 900;
	color: var(--yp-muted);
}

.yp-behavior-rating-control__empty.is-active {
	background: rgba(225, 238, 255, 0.95);
	color: var(--yp-blue);
	border-color: rgba(30, 94, 174, 0.18);
}

.yp-behavior-rating-control__value {
	font-size: 0.76rem;
	font-weight: 900;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	color: var(--yp-muted);
}

.yp-behavior-flags {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.yp-behavior-flag {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 58px;
	padding: 14px 16px;
	font-weight: 800;
	color: var(--yp-navy);
}

.yp-behavior-flag input {
	width: 22px;
	height: 22px;
	margin: 0;
	accent-color: var(--yp-blue);
}

.yp-guest-members {
	display: grid;
	gap: 18px;
}

.yp-charter-guests__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.yp-guest-members__list {
	display: grid;
	gap: 14px;
}

.yp-guest-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	padding: 20px 22px;
	background: rgba(247, 251, 255, 0.9);
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 22px;
	box-shadow: var(--yp-shadow-soft);
}

.yp-guest-row__identity {
	min-width: 0;
}

.yp-guest-row__identity > div {
	display: grid;
	gap: 6px;
}

.yp-guest-row__identity p {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.5;
}

.yp-guest-row__meta {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	min-width: 0;
	justify-self: center;
	padding-inline: 24px;
}

.yp-guest-row__actions {
	display: flex;
	justify-content: flex-end;
	justify-self: end;
	width: 100%;
}

.yp-prefill-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.yp-prefill-card {
	display: grid;
	gap: 16px;
	padding: 22px 24px;
	background: rgba(247, 251, 255, 0.92);
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 22px;
}

.yp-prefill-card__copy {
	display: grid;
	gap: 8px;
}

.yp-prefill-card__copy h3,
.yp-prefill-card__copy p {
	margin: 0;
}

.yp-history-tab {
	display: grid;
	gap: 24px;
}

.yp-history-tab__header {
	display: grid;
	gap: 10px;
}

.yp-history-tab__header h2,
.yp-history-summary-card__value,
.yp-history-row__titles strong {
	margin: 0;
}

.yp-history-tab__toolbar {
	display: grid;
	grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
	gap: 18px;
	align-items: stretch;
}

.yp-history-summary-card {
	display: grid;
	gap: 16px;
	padding: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 24px;
	box-shadow: var(--yp-shadow-soft);
}

.yp-history-summary-card__head {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 14px;
}

.yp-history-summary-card__value {
	font-size: clamp(1.9rem, 2.2vw, 2.8rem);
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.04em;
}

.yp-history-summary-card p {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.6;
}

.yp-finance-root {
	gap: 24px;
}

.yp-finance-toolbar {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.yp-finance-summary-card {
	min-height: 188px;
}

.yp-finance-cost-form,
.yp-finance-add {
	display: grid;
	gap: 18px;
	padding: 24px 26px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 24px;
	box-shadow: var(--yp-shadow-soft);
}

.yp-finance-cost-form__actions,
.yp-finance-add__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.yp-finance-add__fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 220px;
	gap: 18px;
}

.yp-finance-grid {
	display: grid;
	gap: 14px;
}

.yp-finance-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 22px 22px 22px 20px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 24px;
	box-shadow: var(--yp-shadow-soft);
}

.yp-finance-item__main {
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
	flex: 1 1 auto;
}

.yp-finance-item__content {
	display: grid;
	gap: 8px;
	min-width: 0;
}

.yp-finance-item__content strong {
	margin: 0;
	font-size: 1.04rem;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: var(--yp-text);
}

.yp-finance-item__content span {
	color: var(--yp-text-soft);
	font-weight: 700;
}

.yp-finance-item__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.yp-history-searchbar {
	align-self: stretch;
}

.yp-history-list {
	display: grid;
	gap: 16px;
}

.yp-history-row {
	display: grid;
	grid-template-columns: minmax(240px, 1.1fr) minmax(0, 1.7fr) auto;
	align-items: center;
	gap: 22px;
	padding: 22px 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.96), rgba(255, 255, 255, 0.84));
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 24px;
	box-shadow: var(--yp-shadow-soft);
	text-decoration: none;
	color: inherit;
	transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.yp-history-row:hover,
.yp-history-row:focus-visible {
	transform: translateY(-2px);
	border-color: rgba(32, 95, 176, 0.18);
	box-shadow: 0 18px 40px rgba(18, 57, 102, 0.12);
}

.yp-history-row__identity {
	display: grid;
	grid-template-columns: 68px minmax(0, 1fr);
	align-items: center;
	gap: 16px;
	min-width: 0;
}

.yp-history-row__thumb {
	width: 68px;
	height: 68px;
	border-radius: 20px;
	overflow: hidden;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(140deg, #deebff, #fff6e1);
	border: 1px solid rgba(17, 50, 94, 0.08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.yp-history-row__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.yp-history-row__thumb-fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: var(--yp-primary);
}

.yp-history-row__thumb-fallback svg {
	width: 28px;
	height: 28px;
}

.yp-history-row__titles {
	display: grid;
	gap: 8px;
	min-width: 0;
}

.yp-history-row__heading {
	display: grid;
	grid-template-columns: minmax(0, auto) auto;
	align-items: center;
	gap: 10px;
	justify-content: start;
}

.yp-history-row__titles strong {
	font-size: 1.15rem;
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.yp-history-row__titles p {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.55;
}

.yp-history-row__details {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 14px;
}

.yp-history-row__details div {
	display: grid;
	gap: 8px;
	padding: 14px 16px;
	background: rgba(255, 255, 255, 0.74);
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: var(--yp-radius-md);
}

.yp-history-row__details span {
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #627b9d;
}

.yp-history-row__details strong {
	font-size: 0.98rem;
	line-height: 1.45;
	letter-spacing: -0.01em;
}

.yp-history-row__action {
	display: grid;
	align-items: center;
	justify-items: end;
}

.yp-history-row__action .yp-button {
	pointer-events: none;
}

.yp-history-pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 4px 4px 0;
	flex-wrap: wrap;
}

.yp-history-pagination__status {
	color: var(--yp-text-soft);
	font-size: 0.95rem;
	line-height: 1.5;
}

.yp-history-pagination__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.yp-notes-root {
	display: grid;
	gap: 24px;
}

.yp-notes-root__header {
	display: grid;
	gap: 10px;
}

.yp-notes-root__header h2,
.yp-notes-form__status {
	margin: 0;
}

.yp-notes-form {
	display: grid;
	gap: 20px;
	padding: 24px;
	border: 1px solid var(--yp-border);
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.84));
	box-shadow: var(--yp-shadow-soft);
}

.yp-notes-form__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.yp-notes-form__status {
	color: var(--yp-text-soft);
	font-size: 0.95rem;
	line-height: 1.5;
}

.yp-notes-form__status[data-state='error'] {
	color: #bf4e4e;
}

.yp-notes-form__status[data-state='success'] {
	color: #356ca8;
}

.yp-communications-root {
	position: relative;
	overflow: hidden;
}

.yp-communications-root::before {
	content: '';
	position: absolute;
	inset: 18px 18px auto auto;
	width: 220px;
	height: 220px;
	border-radius: 999px;
	background: radial-gradient(circle, rgba(30, 94, 174, 0.11), transparent 68%);
	pointer-events: none;
}

.yp-communications-root__header {
	position: relative;
	max-width: 760px;
}

.yp-communications-form {
	position: relative;
	background:
		radial-gradient(circle at 92% 8%, rgba(255, 230, 157, 0.22), transparent 32%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 251, 255, 0.88));
}

.yp-communications-form textarea {
	min-height: 320px;
	font-size: 1.04rem;
	line-height: 1.75;
}

.yp-profile-hero {
	align-items: stretch;
	gap: 24px;
	padding-bottom: 28px;
	border-bottom: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-profile-aside {
	flex: 0 0 214px;
	width: 214px;
	display: grid;
	gap: 18px;
	align-content: start;
}

.yp-photo-card {
	position: relative;
	border: 1px solid var(--yp-border);
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(228, 238, 248, 0.8));
	box-shadow: var(--yp-shadow-soft);
	cursor: pointer;
	overflow: hidden;
}

.yp-photo-card--profile {
	flex: 0 0 214px;
	width: 214px;
	height: 214px;
	border-radius: 50%;
}

.yp-photo-card--boat {
	width: min(100%, 500px);
	max-width: 500px;
	aspect-ratio: 1 / 1;
	min-height: 0;
	max-height: 500px;
	border-radius: 20px;
}

.yp-photo-card--boat-small {
	width: 300px;
	max-width: min(100%, 300px);
	aspect-ratio: 1 / 1;
	min-height: 0;
	max-height: 300px;
	border-radius: 22px;
}

.yp-photo-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.yp-photo-card__fallback {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 4.4rem;
	font-weight: 900;
	color: var(--yp-primary);
	background: linear-gradient(135deg, rgba(220, 234, 255, 0.95), rgba(255, 246, 228, 0.94));
}

.yp-photo-card__fallback--boat {
	font-size: 0;
}

.yp-photo-card__action {
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 14px;
	border-radius: var(--yp-radius-pill);
	background: rgba(16, 50, 91, 0.68);
	color: #fff;
	font-size: 0.86rem;
	font-weight: 800;
	backdrop-filter: blur(8px);
}

.yp-profile-identity {
	flex: 1 1 420px;
	display: grid;
	gap: 18px;
	align-content: center;
}

.yp-rank-card {
	width: 100%;
	display: grid;
	gap: 12px;
	justify-items: center;
	padding: 18px 16px 20px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
	box-shadow: var(--yp-shadow-soft);
	color: var(--yp-text);
	font: inherit;
	cursor: pointer;
	text-align: center;
}

.yp-rank-card__eyebrow {
	margin: 0;
	color: var(--yp-text-soft);
	text-transform: uppercase;
	letter-spacing: 0.16em;
	font-size: 0.74rem;
	font-weight: 800;
}

.yp-rank-card__icon {
	width: 88px;
	height: 88px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.yp-rank-card__icon svg {
	width: 46px;
	height: 46px;
	display: block;
}

.yp-rank-card strong {
	margin: 0;
	font-size: 1.1rem;
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.yp-rank-card--vip {
	background: linear-gradient(180deg, rgba(255, 246, 221, 0.98), rgba(255, 255, 255, 0.82));
	color: #a06a08;
}

.yp-rank-card--gold {
	background: linear-gradient(180deg, rgba(251, 239, 199, 0.98), rgba(255, 255, 255, 0.82));
	color: #9a6a0f;
}

.yp-rank-card--silver {
	background: linear-gradient(180deg, rgba(234, 240, 247, 0.98), rgba(255, 255, 255, 0.82));
	color: #5c6d86;
}

.yp-rank-card--bronze {
	background: linear-gradient(180deg, rgba(247, 226, 214, 0.98), rgba(255, 255, 255, 0.82));
	color: #9f623e;
}

.yp-rank-card--explorer {
	background: linear-gradient(180deg, rgba(223, 241, 251, 0.98), rgba(255, 255, 255, 0.82));
	color: #1f6790;
}

.yp-rank-card--guest {
	background: linear-gradient(180deg, rgba(236, 241, 248, 0.98), rgba(255, 255, 255, 0.82));
	color: #4f6485;
}

.yp-rank-card--pending {
	background: linear-gradient(180deg, rgba(239, 244, 250, 0.98), rgba(255, 255, 255, 0.82));
	color: #6a7f99;
}

.yp-profile-identity__chips {
	gap: 12px;
}

.yp-editable,
.yp-editable-row,
.yp-stat-row,
.yp-inline-edit {
	border: 1px solid transparent;
	background: rgba(255, 255, 255, 0.48);
	color: inherit;
	font: inherit;
	cursor: pointer;
}

.yp-editable {
	padding: 0;
	background: transparent;
	justify-content: flex-start;
}

.yp-editable--headline .yp-editable__value {
	font-size: clamp(2.2rem, 4vw, 3.35rem);
	line-height: 0.98;
	letter-spacing: -0.04em;
}

.yp-editable--subheadline .yp-editable__value {
	font-size: 1.56rem;
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -0.03em;
}

.yp-editable__icon {
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(217, 232, 251, 0.78);
	color: var(--yp-primary);
}

.yp-editable-row {
	width: 100%;
	padding: 14px 16px;
	justify-content: flex-start;
	border-radius: var(--yp-radius-md);
	border-color: rgba(17, 50, 94, 0.08);
}

.yp-editable-row--static {
	cursor: default;
}

.yp-editable-row--static:hover {
	transform: none;
}

.yp-editable-row > div {
	display: grid;
	gap: 6px;
	text-align: left;
}

.yp-editable-row strong {
	font-size: 1.08rem;
	line-height: 1.35;
}

.yp-social-row {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 16px;
}

.yp-social-row__content {
	display: grid;
	gap: 10px;
	text-align: left;
}

.yp-social-links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.yp-social-links__empty {
	color: var(--yp-text);
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.35;
}

.yp-social-link {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	color: #fff;
	box-shadow: 0 12px 24px rgba(17, 50, 94, 0.14);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.yp-social-link:hover {
	transform: translateY(-1px);
	box-shadow: 0 16px 30px rgba(17, 50, 94, 0.2);
}

.yp-social-link svg {
	width: 20px;
	height: 20px;
}

.yp-social-link--facebook {
	background: linear-gradient(135deg, #1877f2, #0b5fd3);
}

.yp-social-link--instagram {
	background: linear-gradient(135deg, #f58529, #dd2a7b 50%, #8134af);
}

.yp-social-link--whatsapp {
	background: linear-gradient(135deg, #25d366, #128c7e);
}

.yp-social-row__edit {
	flex: 0 0 auto;
}

.yp-profile-badge {
	margin-left: auto;
	min-width: 146px;
	padding: 18px;
	display: grid;
	gap: 12px;
	justify-items: center;
	align-content: center;
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255, 248, 222, 0.94), rgba(255, 255, 255, 0.62));
	border: 1px solid rgba(165, 116, 22, 0.18);
}

.yp-profile-badge__seal {
	width: 70px;
	height: 70px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	color: var(--yp-gold);
}

.yp-profile-badge__seal svg {
	width: 30px;
	height: 30px;
}

.yp-profile-badge span {
	font-size: 0.9rem;
	font-weight: 800;
	color: var(--yp-gold);
	text-transform: uppercase;
	letter-spacing: 0.16em;
}

.yp-profile-type {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 100%;
	padding: 12px 16px;
	border: 0;
	border-radius: var(--yp-radius-pill);
	background: var(--yp-type-bg, #e7eef9);
	color: var(--yp-type-text, #49608c);
	font: inherit;
	font-weight: 800;
	cursor: pointer;
}

.yp-panel {
	display: grid;
	gap: 22px;
	padding: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 24px;
	box-shadow: var(--yp-shadow-soft);
}

.yp-panel__title {
	align-items: center;
}

.yp-panel__title > div {
	display: grid;
	gap: 6px;
}

.yp-panel__header h2 {
	font-size: 1.45rem;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.yp-stat-list {
	gap: 0;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 18px;
	overflow: hidden;
}

.yp-stat-row {
	width: 100%;
	padding: 16px 18px;
	justify-content: space-between;
	border: 0;
	border-bottom: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 0;
	background: rgba(255, 255, 255, 0.68);
	text-align: left;
}

.yp-stat-row:last-child {
	border-bottom: 0;
}

.yp-stat-row--static {
	cursor: default;
}

.yp-stat-row--static:hover {
	transform: none;
}

.yp-stat-row--main-skipper {
	cursor: default;
	align-items: center;
	gap: 16px;
}

.yp-stat-row--main-skipper:hover {
	transform: none;
}

.yp-stat-row__main {
	display: grid;
	gap: 6px;
	min-width: 0;
}

.yp-stat-row--main-skipper .yp-stat-row__main strong {
	text-align: left;
}

.yp-button--main-skipper {
	margin-left: auto;
	white-space: normal;
	text-align: center;
	max-width: 360px;
}

.yp-stat-row strong {
	font-size: 1.05rem;
	line-height: 1.35;
	text-align: right;
}

.yp-panel__subsection {
	display: grid;
	gap: 14px;
}

.yp-sea-trial {
	position: relative;
	overflow: hidden;
	border-color: rgba(32, 95, 176, 0.13);
	background:
		linear-gradient(135deg, rgba(245, 250, 255, 0.98), rgba(255, 255, 255, 0.92)),
		linear-gradient(90deg, rgba(32, 95, 176, 0.1), rgba(47, 162, 112, 0.08));
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		background 180ms ease;
}

.yp-sea-trial.is-enabled {
	border-color: rgba(47, 162, 112, 0.24);
	box-shadow: 0 20px 48px rgba(17, 50, 94, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.yp-sea-trial.is-failed {
	border-color: rgba(193, 64, 64, 0.28);
	background:
		linear-gradient(135deg, rgba(255, 248, 248, 0.98), rgba(255, 255, 255, 0.92)),
		linear-gradient(90deg, rgba(193, 64, 64, 0.12), rgba(245, 182, 75, 0.08));
}

.yp-sea-trial.is-saving {
	opacity: 0.82;
}

.yp-sea-trial__header {
	align-items: center;
}

.yp-sea-trial__icon {
	color: #1c6d92;
	background: linear-gradient(135deg, #e4f4ff, #f5fbff);
}

.yp-sea-trial.is-enabled .yp-sea-trial__icon {
	color: #16734e;
	background: linear-gradient(135deg, #dff8ed, #ffffff);
}

.yp-sea-trial.is-failed .yp-sea-trial__icon {
	color: #b53c3c;
	background: linear-gradient(135deg, #ffe8e8, #ffffff);
}

.yp-switch {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-height: 46px;
	padding: 8px 12px 8px 8px;
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.82);
	color: var(--yp-muted);
	cursor: pointer;
	font: inherit;
	font-weight: 900;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
	transition:
		transform 160ms ease,
		border-color 160ms ease,
		box-shadow 160ms ease,
		color 160ms ease;
}

.yp-switch:hover,
.yp-switch:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(32, 95, 176, 0.24);
	box-shadow: 0 14px 30px rgba(17, 50, 94, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.95);
	outline: none;
}

.yp-switch.is-on {
	color: #176f4d;
	border-color: rgba(47, 162, 112, 0.3);
	background: linear-gradient(135deg, #eefbf5, #ffffff);
}

.yp-switch__track {
	position: relative;
	width: 58px;
	height: 32px;
	border-radius: 999px;
	background: linear-gradient(180deg, #c6d3e2, #eef4fb);
	box-shadow: inset 0 2px 8px rgba(17, 50, 94, 0.16);
	transition: background 180ms ease;
}

.yp-switch.is-on .yp-switch__track {
	background: linear-gradient(135deg, #1f9c68, #73d1a6);
}

.yp-switch__thumb {
	position: absolute;
	top: 4px;
	left: 4px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 6px 14px rgba(17, 50, 94, 0.22);
	transition: transform 180ms ease;
}

.yp-switch.is-on .yp-switch__thumb {
	transform: translateX(26px);
}

.yp-switch__text {
	min-width: 28px;
	text-align: left;
}

.yp-sea-trial__body {
	display: grid;
	gap: 16px;
	padding-top: 2px;
}

.yp-sea-trial__body[hidden],
.yp-sea-trial__fail[hidden] {
	display: none;
}

.yp-sea-trial__result {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 14px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.74);
}

.yp-sea-trial__result > span,
.yp-sea-trial__fail p {
	margin: 0;
	color: var(--yp-muted);
	font-size: 0.76rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.yp-segmented {
	display: inline-grid;
	grid-template-columns: repeat(2, minmax(86px, 1fr));
	gap: 6px;
	padding: 5px;
	border-radius: 16px;
	background: rgba(222, 232, 244, 0.7);
	border: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-segmented__option {
	min-height: 38px;
	padding: 9px 16px;
	border: 0;
	border-radius: 12px;
	background: transparent;
	color: var(--yp-muted);
	cursor: pointer;
	font: inherit;
	font-weight: 900;
	transition:
		background 160ms ease,
		box-shadow 160ms ease,
		color 160ms ease,
		transform 160ms ease;
}

.yp-segmented__option:hover,
.yp-segmented__option:focus-visible {
	transform: translateY(-1px);
	outline: none;
}

.yp-segmented__option.is-active[data-yp-sea-trial-result="pass"] {
	background: linear-gradient(135deg, #e7f8ef, #ffffff);
	color: #176f4d;
	box-shadow: 0 10px 22px rgba(47, 162, 112, 0.16);
}

.yp-segmented__option.is-active[data-yp-sea-trial-result="fail"] {
	background: linear-gradient(135deg, #ffe8e8, #ffffff);
	color: #b53c3c;
	box-shadow: 0 10px 22px rgba(193, 64, 64, 0.14);
}

.yp-sea-trial__fail {
	display: grid;
	gap: 12px;
	padding: 16px;
	border: 1px solid rgba(193, 64, 64, 0.16);
	border-radius: 20px;
	background: linear-gradient(135deg, rgba(255, 246, 246, 0.94), rgba(255, 255, 255, 0.86));
}

.yp-sea-trial__options {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.yp-sea-option {
	display: flex;
	align-items: center;
	gap: 11px;
	min-height: 54px;
	padding: 13px 14px;
	border: 1px solid rgba(17, 50, 94, 0.1);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.84);
	color: var(--yp-navy);
	cursor: pointer;
	font: inherit;
	font-weight: 850;
	text-align: left;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82);
	transition:
		transform 160ms ease,
		border-color 160ms ease,
		box-shadow 160ms ease,
		background 160ms ease;
}

.yp-sea-option:hover,
.yp-sea-option:focus-visible {
	transform: translateY(-1px);
	border-color: rgba(193, 64, 64, 0.24);
	box-shadow: 0 12px 24px rgba(17, 50, 94, 0.1);
	outline: none;
}

.yp-sea-option.is-selected {
	border-color: rgba(193, 64, 64, 0.3);
	background: linear-gradient(135deg, #fff3f3, #ffffff);
	color: #8e2f2f;
	box-shadow: 0 14px 28px rgba(193, 64, 64, 0.12);
}

.yp-sea-option__box {
	width: 22px;
	height: 22px;
	flex: 0 0 auto;
	border-radius: 7px;
	border: 2px solid rgba(96, 122, 153, 0.42);
	background: #ffffff;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.yp-sea-option.is-selected .yp-sea-option__box {
	border-color: #c14040;
	background:
		linear-gradient(135deg, transparent 0 38%, #ffffff 38% 54%, transparent 54%),
		linear-gradient(135deg, #c14040, #e16a6a);
}

.yp-sea-trial__status {
	display: flex;
	align-items: center;
	min-height: 20px;
	margin: 0;
	padding: 0 4px;
	color: var(--yp-muted);
	font-size: 0.82rem;
	font-weight: 800;
	line-height: 1.4;
}

.yp-sea-trial__status[data-state="success"] {
	color: #176f4d;
}

.yp-sea-trial__status[data-state="error"] {
	color: #b53c3c;
}

.yp-panel__subhead h3 {
	margin: 0;
	font-size: 1rem;
}

.yp-inline-edit {
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: rgba(217, 232, 251, 0.72);
	color: var(--yp-primary);
}

.yp-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.yp-tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 14px;
	border-radius: var(--yp-radius-pill);
	background: var(--yp-success-soft);
	color: var(--yp-success);
	font-size: 0.88rem;
	font-weight: 800;
}

.yp-tag--empty {
	background: rgba(219, 234, 255, 0.78);
	color: var(--yp-primary);
}

.yp-charter-media {
	display: grid;
	gap: 18px;
	justify-items: start;
	align-items: start;
}

.yp-charter-media > .yp-photo-card {
	flex: 0 0 auto;
}

.yp-charter-media__meta {
	justify-content: space-between;
	width: min(100%, 500px);
}

.yp-charter-boat-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 28px;
	align-items: start;
	width: 100%;
}

.yp-charter-boat-card__thumb {
	flex: 0 0 auto;
}

.yp-charter-boat-card__content {
	display: grid;
	gap: 14px;
	padding-top: 8px;
	max-width: 620px;
}

.yp-charter-boat-card__content h3 {
	margin: 0;
	font-size: clamp(1.45rem, 2vw, 2rem);
	line-height: 1.2;
}

.yp-charter-boat-card__meta {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.yp-charter-boat-card__meta-item {
	padding: 14px 16px;
	border: 1px solid var(--yp-border);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.8);
}

.yp-charter-boat-card__meta-item span {
	display: block;
	margin-bottom: 6px;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--yp-muted);
}

.yp-charter-boat-card__meta-item strong {
	display: block;
	color: var(--yp-navy);
	font-size: 0.98rem;
	line-height: 1.3;
	font-weight: 500;
}

.yp-charter-boat-card__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 4px;
}

.yp-boat-modal__preview {
	width: min(100%, 240px);
	aspect-ratio: 1 / 1;
	position: relative;
	border: 1px solid var(--yp-border);
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(228, 238, 248, 0.8));
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.yp-boat-modal__preview img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.yp-boat-modal__preview-fallback {
	position: absolute;
	inset: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: var(--yp-primary);
}

.yp-boat-modal__preview-fallback svg {
	width: 96px;
	height: 96px;
}

.yp-stat-row--icon .yp-stat-row__label {
	gap: 10px;
}

.yp-stat-row__icon {
	width: 30px;
	height: 30px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: rgba(217, 232, 251, 0.72);
	color: var(--yp-primary);
}

.yp-precharter-root {
	gap: 24px;
}

.yp-precharter-toolbar {
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	gap: 18px;
	align-items: stretch;
}

.yp-precharter-summary-card,
.yp-precharter-note-card {
	display: grid;
	gap: 16px;
	padding: 22px 24px;
	border: 1px solid var(--yp-border);
	border-radius: 24px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.98), rgba(255, 255, 255, 0.84));
	box-shadow: var(--yp-shadow-soft);
}

.yp-precharter-note-card p {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.65;
}

.yp-precharter-add {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: end;
	padding: 22px 24px;
	border: 1px solid var(--yp-border);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: var(--yp-shadow-soft);
}

.yp-precharter-add__fields {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(240px, 0.85fr);
	gap: 16px;
}

.yp-precharter-add__actions {
	display: flex;
	justify-content: flex-end;
}

.yp-precharter-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.yp-precharter-item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 78px;
	padding: 22px 24px;
	border: 1px solid var(--yp-border);
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.9));
	box-shadow: var(--yp-shadow-soft);
	cursor: pointer;
	transition: border-color 0.2s ease, transform 0.2s ease, background 0.2s ease;
}

.yp-precharter-item:hover {
	transform: translateY(-1px);
	border-color: rgba(35, 92, 170, 0.18);
}

.yp-precharter-item__main {
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
	flex: 1 1 auto;
}

.yp-precharter-item__check {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.yp-precharter-item__check input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.yp-precharter-item__box {
	width: 30px;
	height: 30px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(35, 92, 170, 0.2);
	border-radius: 9px;
	background: #f4f8ff;
	color: transparent;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.yp-precharter-item__box svg {
	width: 16px;
	height: 16px;
}

.yp-precharter-item__content {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.yp-precharter-item__content strong {
	margin: 0;
	font-size: 1.06rem;
	line-height: 1.45;
	font-weight: 700;
	color: var(--yp-text);
}

.yp-precharter-item__scope {
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--yp-text-soft);
}

.yp-precharter-item.is-complete {
	background: linear-gradient(180deg, rgba(236, 247, 226, 0.94), rgba(255, 255, 255, 0.88));
	border-color: rgba(78, 137, 57, 0.2);
}

.yp-precharter-item.is-complete .yp-precharter-item__box {
	background: #2e8a5d;
	border-color: #2e8a5d;
	color: #ffffff;
}

.yp-precharter-item__actions {
	display: flex;
	flex-wrap: wrap;
	flex: 0 0 auto;
	justify-content: flex-end;
	gap: 8px;
}

.yp-precharter-item__action {
	border: 1px solid var(--yp-border);
	border-radius: 999px;
	background: #ffffff;
	color: var(--yp-text);
	padding: 8px 14px;
	font-size: 0.78rem;
	line-height: 1;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.yp-precharter-item__action:hover {
	background: #eef4ff;
	border-color: rgba(35, 92, 170, 0.2);
}

.yp-precharter-item__action--global {
	color: #174e9d;
	background: #eef4ff;
}

.yp-precharter-item__action--danger {
	color: #b94a48;
	border-color: rgba(185, 74, 72, 0.24);
}

.yp-precharter-item__action--danger:hover {
	background: #fff1f1;
	border-color: rgba(185, 74, 72, 0.35);
}

.yp-precharter-modal-warning {
	display: grid;
	gap: 10px;
	padding: 18px 20px;
	border-radius: 22px;
	border: 1px solid rgba(185, 74, 72, 0.16);
	background: linear-gradient(180deg, #fff7f4, #fffdfb);
}

.yp-precharter-modal-warning__title,
.yp-precharter-modal-warning__body {
	margin: 0;
}

.yp-precharter-modal-warning__title {
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #aa5b22;
}

.yp-precharter-modal-warning__body {
	color: var(--yp-text);
	line-height: 1.65;
}

.yp-inline-confirm {
	display: grid;
	gap: 8px;
	padding: 18px 20px;
	border-radius: 18px;
	border: 1px solid rgba(185, 74, 72, 0.16);
	background: linear-gradient(180deg, #fff9f7, #fffefd);
}

.yp-inline-confirm__title,
.yp-inline-confirm__body {
	margin: 0;
}

.yp-inline-confirm__title {
	font-size: 0.95rem;
	line-height: 1.35;
	font-weight: 700;
	color: var(--yp-text);
}

.yp-inline-confirm__body {
	color: var(--yp-text-soft);
	line-height: 1.6;
}

.yp-modal[hidden] {
	display: none;
}

.yp-modal {
	position: fixed;
	inset: 0;
	z-index: 50;
}

.yp-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(10, 23, 38, 0.42);
}

.yp-modal__panel {
	position: relative;
	z-index: 1;
	width: min(920px, calc(100vw - 32px));
	max-height: calc(100vh - 48px);
	margin: 24px auto;
	overflow: auto;
	background: var(--yp-surface-strong);
}

.yp-modal__panel--edit {
	width: min(720px, calc(100vw - 32px));
}

.yp-modal__panel--compact {
	width: min(520px, calc(100vw - 32px));
}

.yp-modal__panel--preview {
	width: min(860px, calc(100vw - 32px));
}

.yp-modal__filters {
	margin: 20px 0 24px;
	display: flex;
	align-items: flex-end;
	gap: 16px;
	flex-wrap: wrap;
}

.yp-modal__filters .yp-field {
	min-width: 180px;
}

.yp-modal__close {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 1px solid var(--yp-border);
	background: rgba(255, 255, 255, 0.92);
	color: var(--yp-text);
	font-size: 1.4rem;
	cursor: pointer;
}

.yp-charter-preview {
	display: grid;
	gap: 22px;
}

.yp-charter-preview[hidden] {
	display: none;
}

.yp-charter-preview__hero {
	display: grid;
	grid-template-columns: 170px minmax(0, 1fr);
	gap: 22px;
	align-items: center;
	padding: 18px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: var(--yp-radius-lg);
	background: linear-gradient(140deg, rgba(231, 241, 255, 0.84), rgba(255, 250, 239, 0.7));
}

.yp-charter-preview__boat-media {
	width: 170px;
	height: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: var(--yp-radius-md);
	background: linear-gradient(140deg, #deebff, #fff8e5);
	border: 1px solid rgba(32, 95, 176, 0.12);
}

.yp-charter-preview__boat-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.yp-charter-preview__boat-fallback {
	width: 78px;
	height: 78px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--yp-primary);
}

.yp-charter-preview__boat-fallback svg {
	width: 100%;
	height: 100%;
}

.yp-charter-preview__hero-copy {
	display: grid;
	gap: 10px;
}

.yp-charter-preview__hero-copy h3 {
	margin: 0;
	color: var(--yp-text);
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.05;
}

.yp-charter-preview__hero-copy p {
	margin: 0;
	color: var(--yp-text-soft);
	font-size: 1.02rem;
}

.yp-charter-preview__boat-details {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.yp-charter-preview__boat-details span:empty {
	display: none;
}

.yp-charter-preview__boat-details span {
	padding: 8px 12px;
	border-radius: var(--yp-radius-pill);
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(17, 50, 94, 0.08);
	color: var(--yp-text);
	font-weight: 700;
}

.yp-charter-preview__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.yp-charter-preview__grid div,
.yp-charter-preview__guests,
.yp-charter-preview__notes {
	padding: 16px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: var(--yp-radius-md);
	background: rgba(255, 255, 255, 0.74);
}

.yp-charter-preview__grid span {
	display: block;
	margin-bottom: 8px;
	color: var(--yp-text-soft);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.yp-charter-preview__grid strong {
	color: var(--yp-text);
	font-size: 1.06rem;
	line-height: 1.35;
}

.yp-charter-preview__guests {
	display: grid;
	gap: 14px;
}

.yp-charter-preview__guests h3 {
	margin: 4px 0 0;
	color: var(--yp-text);
	font-size: 1.35rem;
}

.yp-charter-preview__guest-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.yp-charter-preview__guest-list p {
	margin: 0;
	color: var(--yp-text-soft);
}

.yp-charter-preview__notes p:last-child {
	margin: 6px 0 0;
	color: var(--yp-text);
	font-size: 1.02rem;
	line-height: 1.7;
	white-space: pre-wrap;
}

.yp-modal__panel--client-preview {
	width: min(980px, calc(100vw - 32px));
	padding: 0;
	border: 1px solid rgba(17, 50, 94, 0.12);
	border-radius: 34px;
	background:
		radial-gradient(circle at 18% 8%, rgba(255, 244, 207, 0.78), transparent 28%),
		linear-gradient(145deg, rgba(247, 250, 255, 0.98), rgba(236, 243, 251, 0.98));
	box-shadow: 0 34px 100px rgba(10, 23, 38, 0.28);
}

.yp-client-preview {
	display: grid;
	gap: 18px;
	padding: clamp(18px, 2.2vw, 28px);
}

.yp-client-preview__close {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 2;
}

.yp-client-preview__hero {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) minmax(220px, auto);
	gap: 22px;
	align-items: center;
	padding: 22px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: var(--yp-shadow-soft);
}

.yp-client-preview__avatar {
	position: relative;
	width: 112px;
	height: 112px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 34px;
	border: 1px solid rgba(17, 50, 94, 0.12);
	background: linear-gradient(140deg, #deebff, #fff6e1);
	color: var(--yp-primary);
	font-size: 3rem;
	font-weight: 900;
	box-shadow: 0 18px 40px rgba(23, 62, 113, 0.14);
}

.yp-client-preview__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.yp-client-preview__identity {
	display: grid;
	gap: 10px;
	min-width: 0;
}

.yp-client-preview__identity h2 {
	margin: 0;
	font-size: clamp(2.1rem, 4vw, 3.4rem);
	line-height: 0.98;
	letter-spacing: -0.055em;
	color: var(--yp-navy);
}

.yp-client-preview__chips {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.yp-client-preview__rank {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 96px;
	padding: 9px 14px;
	border-radius: var(--yp-radius-pill);
	background: linear-gradient(180deg, rgba(248, 237, 200, 0.98), rgba(255, 255, 255, 0.9));
	color: #9a6a0f;
	border: 1px solid rgba(154, 106, 15, 0.16);
	font-weight: 900;
}

.yp-client-preview__stars,
.yp-client-preview__behavior-row strong {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	color: #c7d3e3;
	letter-spacing: 0.02em;
}

.yp-client-preview__stars span,
.yp-client-preview__behavior-row strong span {
	color: #c7d3e3;
}

.yp-client-preview__stars .is-filled,
.yp-client-preview__behavior-row strong .is-filled {
	color: #f1ad2f;
	text-shadow: 0 4px 14px rgba(241, 173, 47, 0.22);
}

.yp-client-preview__stars {
	font-size: 1.15rem;
}

.yp-client-preview__classification {
	display: grid;
	gap: 6px;
	padding: 18px 20px;
	border-radius: 24px;
	background: linear-gradient(140deg, rgba(222, 235, 255, 0.82), rgba(255, 246, 225, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-client-preview__classification span,
.yp-client-preview__stat-strip span,
.yp-client-preview__section-head span:not(:empty) + span,
.yp-client-preview__trip small {
	color: var(--yp-text-soft);
}

.yp-client-preview__classification span,
.yp-client-preview__stat-strip span {
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.yp-client-preview__classification strong {
	color: var(--yp-navy);
	font-size: 1.15rem;
	line-height: 1.2;
}

.yp-client-preview__classification small {
	color: var(--yp-muted);
	font-size: 0.92rem;
}

.yp-client-preview__stat-strip {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-radius: 24px;
	overflow: hidden;
	border: 1px solid rgba(17, 50, 94, 0.08);
	background: rgba(255, 255, 255, 0.78);
	box-shadow: var(--yp-shadow-soft);
}

.yp-client-preview__stat-strip.has-sea-trial {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.yp-client-preview__stat-strip div {
	display: grid;
	gap: 6px;
	padding: 18px 20px;
	border-right: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-client-preview__stat-strip div[hidden] {
	display: none;
}

.yp-client-preview__stat-strip div:last-child {
	border-right: 0;
}

.yp-client-preview__stat-strip strong {
	color: var(--yp-navy);
	font-size: 1.38rem;
	line-height: 1.15;
}

.yp-client-preview__sea-trial strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 34px;
	padding: 8px 13px;
	border-radius: 999px;
	font-size: 0.98rem;
	font-weight: 950;
	letter-spacing: 0.08em;
}

.yp-client-preview__sea-trial[data-result="pass"] strong {
	color: #176f4d;
	background: linear-gradient(135deg, #e5f8ee, #ffffff);
	border: 1px solid rgba(47, 162, 112, 0.2);
}

.yp-client-preview__sea-trial[data-result="fail"] strong {
	color: #b53c3c;
	background: linear-gradient(135deg, #ffe8e8, #ffffff);
	border: 1px solid rgba(193, 64, 64, 0.22);
}

.yp-client-preview__stat-strip small {
	color: var(--yp-text-soft);
	font-size: 0.92rem;
	line-height: 1.35;
}

.yp-client-preview__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
	gap: 18px;
	align-items: start;
}

.yp-client-preview__card {
	display: grid;
	gap: 16px;
	padding: 18px;
	border: 1px solid rgba(17, 50, 94, 0.08);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: var(--yp-shadow-soft);
}

.yp-client-preview__card--timeline {
	grid-column: 1;
}

.yp-client-preview__card--behavior {
	grid-column: 2;
	grid-row: span 2;
}

.yp-client-preview__section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.yp-client-preview__section-head h3 {
	margin: 0;
	color: var(--yp-navy);
	font-size: 1.35rem;
	letter-spacing: -0.025em;
}

.yp-client-preview__section-head > span {
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	background: rgba(217, 232, 251, 0.78);
	color: var(--yp-primary);
}

.yp-client-preview__section-head svg {
	width: 20px;
	height: 20px;
}

.yp-client-preview__card--crew > strong {
	color: var(--yp-navy);
	font-size: 1.25rem;
	line-height: 1.35;
}

.yp-client-preview__crew-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.yp-client-preview__crew-meta span:not(:empty) {
	padding: 8px 12px;
	border-radius: var(--yp-radius-pill);
	background: rgba(231, 241, 255, 0.86);
	color: var(--yp-primary);
	font-weight: 800;
	font-size: 0.85rem;
}

.yp-client-preview__behavior-list {
	display: grid;
	gap: 10px;
}

.yp-client-preview__behavior-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 14px;
	align-items: center;
	padding: 10px 0;
	border-bottom: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-client-preview__behavior-row:last-child {
	border-bottom: 0;
}

.yp-client-preview__behavior-row > span {
	color: var(--yp-text);
	font-weight: 700;
	line-height: 1.35;
}

.yp-client-preview__behavior-list p,
.yp-client-preview__timeline > p {
	margin: 0;
	color: var(--yp-text-soft);
	line-height: 1.6;
}

.yp-client-preview__timeline {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.yp-client-preview__trip {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 12px;
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(247, 251, 255, 0.96), rgba(255, 255, 255, 0.82));
	border: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-client-preview__trip-media {
	width: 64px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: 18px;
	background: linear-gradient(140deg, #deebff, #fff6e1);
	color: var(--yp-primary);
}

.yp-client-preview__trip-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.yp-client-preview__trip-media svg {
	width: 34px;
	height: 34px;
}

.yp-client-preview__trip strong,
.yp-client-preview__trip span,
.yp-client-preview__trip small {
	display: block;
}

.yp-client-preview__trip strong {
	color: var(--yp-navy);
	font-size: 1rem;
}

.yp-client-preview__trip span {
	color: var(--yp-text);
	font-size: 0.92rem;
	line-height: 1.35;
}

.yp-client-preview__trip-finance {
	grid-column: 1 / -1;
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding-top: 10px;
	border-top: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-client-preview__trip-finance span {
	font-weight: 900;
	color: var(--yp-navy);
}

.yp-charter-list {
	display: grid;
	gap: 14px;
}

.yp-charter-item {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(220px, auto) auto;
	align-items: center;
	padding: 18px;
	border-radius: var(--yp-radius-md);
	background: rgba(241, 248, 255, 0.74);
	border: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-charter-item[hidden],
.yp-empty-state[hidden] {
	display: none !important;
}

.yp-charter-item h3 {
	margin: 0 0 6px;
	font-size: 1.08rem;
}

.yp-charter-item__content {
	min-width: 0;
}

.yp-charter-item__meta {
	display: grid;
	gap: 8px;
	text-align: right;
}

.yp-charter-item__actions {
	display: flex;
	justify-content: flex-end;
}

.yp-edit-form {
	margin-top: 18px;
}

.yp-edit-form__footer {
	margin-top: 8px;
	padding-top: 20px;
	border-top: 1px solid rgba(17, 50, 94, 0.08);
}

.yp-edit-form__actions {
	justify-content: flex-end;
}

[data-yp-create-charter-form] .yp-edit-form__fields {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.yp-edit-form__status[data-state="error"] {
	color: var(--yp-danger);
}

.yp-edit-form__status[data-state="success"] {
	color: var(--yp-success);
}

.yp-empty-state {
	padding: 30px;
	text-align: center;
	background: rgba(255, 255, 255, 0.74);
	border: 1px dashed rgba(17, 50, 94, 0.16);
	border-radius: var(--yp-radius-lg);
}

.yp-empty-state h3 {
	margin: 0 0 8px;
}

.yp-empty-state--modal {
	margin-top: 18px;
}

.yp-notice {
	margin-bottom: 18px;
	padding: 14px 18px;
	border-radius: 18px;
	font-weight: 700;
}

.yp-notice--login {
	margin-bottom: 0;
	width: 100%;
	text-align: center;
}

.yp-notice--error {
	background: rgba(253, 232, 232, 0.94);
	color: var(--yp-danger);
}

.yp-notice--success {
	background: var(--yp-success-soft);
	color: var(--yp-success);
}

.yp-checkbox {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--yp-text-soft);
}

@media (max-width: 1380px) {
	.yp-overview-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.yp-action-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-guest-summary-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-history-tab__toolbar {
		grid-template-columns: 1fr;
	}

	.yp-history-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.yp-history-row__details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-history-row__action {
		justify-items: start;
	}

	.yp-notes-form__footer {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 1280px) {
	.yp-action-row {
		grid-template-columns: 1fr;
	}

	.yp-feature-card {
		grid-template-columns: minmax(0, 1fr) 240px;
		align-items: center;
	}

	.yp-client-row {
		grid-template-columns: minmax(240px, 1fr) minmax(0, 1fr);
		align-items: start;
	}

	.yp-client-row__meta {
		justify-items: start;
		align-content: start;
	}

	.yp-client-row__details {
		grid-column: 1 / -1;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-client-row__actions {
		grid-column: 1 / -1;
		align-items: flex-start;
	}
}

@media (max-width: 1180px) {
	.yp-overview-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-profile-panels {
		grid-template-columns: 1fr;
	}

	.yp-charter-boat-card {
		grid-template-columns: 1fr;
	}

	.yp-charter-boat-card__meta {
		grid-template-columns: 1fr;
	}

	.yp-prefill-grid {
		grid-template-columns: 1fr;
	}

	.yp-client-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.yp-client-row__meta {
		width: 100%;
	}

	.yp-client-row__details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-client-row__actions {
		align-items: flex-start;
	}

	.yp-charter-preview__hero,
	.yp-charter-preview__grid,
	.yp-client-preview__hero,
	.yp-client-preview__grid {
		grid-template-columns: 1fr;
	}

	.yp-charter-preview__boat-media {
		width: 100%;
		max-width: 240px;
	}

	.yp-client-preview__card--timeline,
	.yp-client-preview__card--behavior {
		grid-column: auto;
		grid-row: auto;
	}

	.yp-client-preview__stat-strip {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-client-preview__stat-strip div:nth-child(2n) {
		border-right: 0;
	}

	.yp-guest-row {
		grid-template-columns: minmax(0, 1fr);
		align-items: flex-start;
	}

	.yp-guest-row__meta,
	.yp-guest-row__actions {
		width: 100%;
		justify-content: flex-start;
		justify-self: start;
	}

	.yp-precharter-toolbar,
	.yp-precharter-grid {
		grid-template-columns: 1fr;
	}

	.yp-precharter-add {
		grid-template-columns: 1fr;
	}

	.yp-precharter-add__fields {
		grid-template-columns: 1fr;
	}

	.yp-sea-trial__options {
		grid-template-columns: 1fr;
	}

	.yp-history-row__heading {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1024px) {
	.yp-login,
	.yp-searchbar__form {
		grid-template-columns: 1fr;
	}

	.yp-filterbar {
		flex-direction: column;
		align-items: flex-start;
		padding-inline: 0;
	}

	.yp-filterbar__form {
		width: 100%;
		justify-content: flex-start;
	}

	.yp-filterbar__form select {
		max-width: none;
	}

	.yp-history-row__details {
		grid-template-columns: 1fr;
	}

	.yp-behavior-flags {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.yp-feature-card {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.yp-profile-hero {
		flex-direction: column;
	}

	.yp-profile-badge {
		margin-left: 0;
		width: 100%;
	}

	.yp-profile-card {
		padding: 24px;
	}

	.yp-photo-card--profile {
		width: 180px;
		height: 180px;
	}
}

@media (max-width: 780px) {
	.yp-shell {
		padding: 14px;
	}

	.yp-calculator-launcher {
		left: 8px;
		width: 38px;
		height: 78px;
	}

	.yp-calculator-drawer__panel {
		padding: 18px;
	}

	.yp-calculator {
		padding: 20px;
		border-radius: 28px;
	}

	.yp-login__hero,
	.yp-login__card,
	.yp-card,
	.yp-feature-card,
	.yp-searchbar,
	.yp-client-card,
	.yp-profile-card,
	.yp-modal__panel,
	.yp-app-topbar,
	.yp-dashboard__header,
	.yp-tabs {
		padding: 20px;
		border-radius: var(--yp-radius-lg);
	}

	.yp-login__preview,
	.yp-overview-grid,
	.yp-client-row__details,
	.yp-client-preview__stat-strip,
	.yp-client-preview__timeline,
	.yp-profile-meta,
	.yp-behavior-summary,
	.yp-behavior-rating-grid,
	.yp-behavior-flags,
	.yp-guest-summary-grid,
	.yp-finance-toolbar,
	.yp-finance-add__fields,
	[data-yp-create-charter-form] .yp-edit-form__fields {
		grid-template-columns: 1fr;
	}

	.yp-login--single {
		grid-template-columns: 1fr;
		min-height: calc(100vh - 28px);
	}

	.yp-precharter-item {
		flex-direction: column;
		align-items: stretch;
	}

	.yp-precharter-item__box {
		margin-top: 3px;
	}

	.yp-precharter-item__actions {
		justify-content: flex-start;
		padding-left: 44px;
	}

	.yp-finance-cost-form__actions,
	.yp-finance-add__actions,
	.yp-finance-item {
		flex-direction: column;
		align-items: flex-start;
	}

	.yp-finance-item__actions {
		justify-content: flex-start;
		width: 100%;
	}

	.yp-login-stack,
	.yp-login--single .yp-login__card {
		width: 100%;
	}

	.yp-login-brand__logo {
		width: min(100%, 210px);
	}

	.yp-profile__header,
	.yp-dashboard__header,
	.yp-charter-item,
	.yp-sea-trial__header,
	.yp-sea-trial__result,
	.yp-edit-form__footer {
		flex-direction: column;
		align-items: flex-start;
	}

	.yp-segmented,
	.yp-sea-trial__result-toggle {
		width: 100%;
	}

	.yp-dashboard__brand,
	.yp-feature-card__content,
	.yp-client-row__identity {
		align-items: flex-start;
	}

	.yp-feature-card__content {
		padding: 4px 0 0;
	}

	.yp-client-preview {
		padding: 12px;
	}

	.yp-client-preview__hero {
		padding: 18px;
	}

	.yp-client-preview__avatar {
		width: 92px;
		height: 92px;
		border-radius: 28px;
	}

	.yp-client-preview__stat-strip div {
		border-right: 0;
		border-bottom: 1px solid rgba(17, 50, 94, 0.08);
	}

	.yp-client-preview__stat-strip div:last-child {
		border-bottom: 0;
	}

	.yp-feature-card p {
		padding-left: 0;
		min-height: 0;
	}

	.yp-client-row {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.yp-guest-list__header,
	.yp-guest-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.yp-client-row__meta,
	.yp-client-row__actions,
	.yp-guest-row__actions {
		justify-items: start;
		justify-content: flex-start;
	}

	.yp-history-row__identity {
		grid-template-columns: 1fr;
	}

	.yp-history-row__thumb {
		width: 60px;
		height: 60px;
	}

	.yp-photo-card--boat,
	.yp-charter-media__meta {
		width: 100%;
		max-width: 500px;
	}

	.yp-photo-card--boat-small {
		width: min(100%, 300px);
		max-width: 100%;
	}

	.yp-charter-item__meta {
		text-align: left;
	}

	.yp-charter-item {
		grid-template-columns: 1fr;
	}

	.yp-charter-item__actions {
		justify-content: flex-start;
	}

	.yp-edit-form__actions {
		width: 100%;
		justify-content: stretch;
	}

	.yp-edit-form__actions .yp-button {
		flex: 1 1 100%;
	}

	.yp-editable--headline .yp-editable__value {
		font-size: 2rem;
	}
}

@media (max-width: 560px) {
	.yp-modal__filters {
		align-items: stretch;
	}

	.yp-toggle-card {
		align-items: flex-start;
		flex-direction: column;
	}

	.yp-calculator-launcher {
		top: auto;
		left: 12px;
		bottom: 18px;
		transform: none;
		width: 46px;
		height: 46px;
		border-radius: 50%;
	}

	.yp-calculator__key {
		min-height: 64px;
		font-size: 1.35rem;
	}
}
