		:root
		{
			color-scheme: dark;

			--background: #12090a;
			--surface: rgba(39, 18, 20, 0.78);
			--surface-strong: #2b1417;
			--surface-soft: rgba(255, 255, 255, 0.045);
			--foreground: #fff8f7;
			--muted: #d6b9b8;
			--muted-strong: #edcecc;
			--accent: #ff5b57;
			--accent-strong: #e53c3a;
			--accent-soft: rgba(255, 91, 87, 0.13);
			--border: rgba(255, 255, 255, 0.11);
			--border-strong: rgba(255, 255, 255, 0.2);
		}

		*
		{
			box-sizing: border-box;
		}

		html
		{
			min-height: 100%;
			background: var(--background);
		}

		body
		{
			min-height: 100vh;
			min-height: 100svh;
			margin: 0;
			padding: clamp(1rem, 3vw, 2.5rem);

			font-family:
				Inter,
				ui-sans-serif,
				system-ui,
				-apple-system,
				BlinkMacSystemFont,
				"Segoe UI",
				sans-serif;

			background:
				radial-gradient(circle at 8% 8%, rgba(170, 38, 38, 0.3), transparent 30rem),
				radial-gradient(circle at 93% 88%, rgba(100, 18, 30, 0.26), transparent 34rem),
				linear-gradient(145deg, #1e0d0f 0%, #0d0809 58%, #17090b 100%);
			color: var(--foreground);
		}

		body::before
		{
			position: fixed;
			inset: 0;
			z-index: -1;

			background-image:
				linear-gradient(rgba(255, 255, 255, 0.018) 1px, transparent 1px),
				linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px);
			background-size: 42px 42px;

			content: "";
			mask-image: linear-gradient(to bottom, black, transparent 85%);
			pointer-events: none;
		}

		.page
		{
			display: grid;
			grid-template-columns: minmax(0, 1.08fr) minmax(330px, 0.92fr);
			position: relative;
			width: min(1180px, 100%);
			min-height: calc(100vh - clamp(2rem, 6vw, 5rem));
			min-height: calc(100svh - clamp(2rem, 6vw, 5rem));
			margin: 0 auto;
			overflow: hidden;

			border: 1px solid var(--border);
			border-radius: 32px;

			background: rgba(19, 10, 11, 0.66);
			box-shadow: 0 40px 100px rgba(0, 0, 0, 0.48);
			backdrop-filter: blur(22px);
		}

		.profile,
		.actions
		{
			min-width: 0;
			padding: clamp(2rem, 5vw, 4.75rem);
		}

		.profile
		{
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			gap: 4rem;
			position: relative;

			background:
				linear-gradient(145deg, rgba(131, 26, 31, 0.24), transparent 55%),
				linear-gradient(180deg, rgba(255, 255, 255, 0.035), transparent);
		}

		.profile::after
		{
			position: absolute;
			right: -1px;
			top: 7%;
			bottom: 7%;
			width: 1px;

			background: linear-gradient(transparent, var(--border-strong), transparent);

			content: "";
		}

		.brand
		{
			display: inline-flex;
			align-items: center;
			gap: 0.85rem;

			font-size: 0.75rem;
			font-weight: 760;
			letter-spacing: 0.16em;
			text-transform: uppercase;
		}

		.logo
		{
			display: grid;
			width: 46px;
			height: 46px;
			place-items: center;

			border: 1px solid rgba(255, 255, 255, 0.22);
			border-radius: 14px;

			background: linear-gradient(135deg, var(--accent), #8c171d);
			box-shadow: 0 10px 30px rgba(181, 36, 42, 0.28);

			font-size: 0.95rem;
			letter-spacing: -0.03em;
		}

		.intro
		{
			margin-top: clamp(4rem, 9vw, 8rem);
		}

		.eyebrow
		{
			display: flex;
			align-items: center;
			gap: 0.7rem;
			margin: 0 0 1.3rem;

			color: #ffaaa7;

			font-size: 0.78rem;
			font-weight: 760;
			letter-spacing: 0.15em;
			text-transform: uppercase;
		}

		.eyebrow::before
		{
			width: 28px;
			height: 1px;
		
			background: currentColor;
		
			content: "";
		}

		h1
		{
			max-width: 9ch;
			margin: 0;

			font-size: clamp(3rem, 7vw, 6.3rem);
			font-weight: 780;
			letter-spacing: -0.065em;
			line-height: 0.92;
		}

		.lead
		{
			max-width: 590px;
			margin: 1.75rem 0 0;

			color: var(--muted-strong);

			font-size: clamp(1.02rem, 2vw, 1.18rem);
			line-height: 1.75;
		}

		.service-grid
		{
			display: grid;
			gap: 0.65rem;
			margin: 2.25rem 0 0;
		}

		.service
		{
			display: grid;
			grid-template-columns: 32px minmax(0, 1fr);
			gap: 0 0.85rem;
			padding: 0.9rem 1rem;

			border: 1px solid var(--border);
			border-radius: 15px;

			background: rgba(255, 255, 255, 0.026);
		}

		.service-number
		{
			grid-row: 1 / 4;
			padding-top: 0.15rem;

			color: #ff8e8a;

			font-size: 0.72rem;
			font-weight: 760;
			letter-spacing: 0.08em;
		}

		.service h2
		{
			margin: 0;

			font-size: 0.9rem;
			letter-spacing: -0.01em;
		}

		.service p
		{
			margin: 0.25rem 0 0;

			color: var(--muted);

			font-size: 0.76rem;
			line-height: 1.5;
		}

		.service-tags
		{
			display: flex;
			flex-wrap: wrap;
			gap: 0.35rem;
			margin-top: 0.55rem;
		}

		.service-tags span
		{
			padding: 0.25rem 0.45rem;

			border-radius: 999px;

			background: rgba(255, 91, 87, 0.09);
			color: #e8c7c5;

			font-size: 0.65rem;
		}

		.profile-footer
		{
			display: flex;
			flex-wrap: wrap;
			gap: 0.7rem 1.25rem;

			color: #a98989;

			font-size: 0.76rem;
			letter-spacing: 0.025em;
		}

		.actions
		{
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
			gap: 1rem;
			padding-top: clamp(16rem, 25vw, 19rem);
		}

		.language-switcher
		{
			display: flex;
			position: absolute;
			right: clamp(2rem, 5vw, 4.75rem);
			top: clamp(2rem, 5vw, 4.75rem);
			z-index: 2;
			overflow: hidden;

			border: 1px solid var(--border);
			border-radius: 999px;

			background: rgba(255, 255, 255, 0.035);
		}

		.language-switcher a,
		.language-switcher span
		{
			display: grid;
			min-width: 38px;
			height: 34px;
			place-items: center;

			color: var(--muted);

			font-size: 0.7rem;
			font-weight: 760;
			text-decoration: none;
		}

		.language-switcher [aria-current="page"]
		{
			background: var(--accent-soft);
			color: var(--foreground);
		}

		.language-switcher a:hover
		{
			background: rgba(255, 255, 255, 0.07);
			color: var(--foreground);
		}

		.section-label
		{
			margin: 0 0 0.35rem;

			color: #a98f8e;

			font-size: 0.7rem;
			font-weight: 760;
			letter-spacing: 0.15em;
			text-transform: uppercase;
		}

		.card
		{
			position: relative;
			overflow: hidden;
			padding: 1.4rem;

			border: 1px solid var(--border);
			border-radius: 20px;

			background: var(--surface-soft);
		}

		.card-header
		{
			display: flex;
			align-items: flex-start;
			gap: 1rem;
			padding-top: 20px;
		}

		.card-icon
		{
			display: grid;
			flex: 0 0 44px;
			width: 44px;
			height: 44px;
			place-items: center;

			border: 1px solid rgba(255, 255, 255, 0.1);
			border-radius: 13px;

			background: var(--accent-soft);
			color: #ff9c98;
		}

		.card-icon i
		{
			font-size: 1.1rem;
		}

		.card h2
		{
			margin: 0.05rem 0 0.35rem;

			font-size: 1.05rem;
			letter-spacing: -0.015em;
		}

		.card p
		{
			margin: 0;

			color: var(--muted);

			font-size: 0.86rem;
			line-height: 1.55;
		}

		.card-actions
		{
			display: flex;
			flex-wrap: wrap;
			gap: 0.7rem;
			margin-top: 1.15rem;
		}

		.button
		{
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 0.55rem;
			min-height: 44px;
			padding: 0.7rem 1rem;

			border: 1px solid var(--border-strong);
			border-radius: 12px;

			background: rgba(255, 255, 255, 0.04);
			color: var(--foreground);

			font-size: 0.82rem;
			font-weight: 720;
			text-decoration: none;

			transition:
				border-color 160ms ease,
				background 160ms ease,
				transform 160ms ease;
		}

		.button:hover
		{
			border-color: rgba(255, 255, 255, 0.34);
			background: rgba(255, 255, 255, 0.09);
			transform: translateY(-2px);
		}

		.button-primary
		{
			border-color: transparent;
			background: linear-gradient(135deg, var(--accent), var(--accent-strong));
			box-shadow: 0 12px 26px rgba(205, 48, 49, 0.24);
		}

		.button-primary:hover
		{
			border-color: transparent;
			background: linear-gradient(135deg, #ff6b66, #ec4542);
		}

		.button i
		{
			width: 16px;

			text-align: center;
		}

		.button:focus-visible,
		a:focus-visible
		{
			outline: 3px solid #ffffff;
			outline-offset: 4px;
		}

		.contact-grid
		{
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 0.75rem;
		}

		.profile-contact
		{
			max-width: 590px;
			margin-top: 2.5rem;
		}

		.profile-contact .section-label
		{
			margin-bottom: 0.65rem;
		}

		.contact-link
		{
			display: flex;
			align-items: center;
			gap: 0.8rem;
			min-width: 0;
			padding: 1rem;

			border: 1px solid var(--border);
			border-radius: 16px;

			background: rgba(255, 255, 255, 0.025);
			color: var(--foreground);

			font-size: 0.78rem;
			text-decoration: none;
		}

		.contact-link:hover
		{
			border-color: rgba(255, 255, 255, 0.25);
			background: rgba(255, 255, 255, 0.06);
		}

		.contact-link span
		{
			overflow: hidden;

			text-overflow: ellipsis;
			white-space: nowrap;
		}

		.contact-link i
		{
			flex: 0 0 18px;
			width: 18px;

			color: #ff9793;
			text-align: center;
		}

		.not-found-page
		{
			min-height: min(720px, calc(100svh - clamp(2rem, 6vw, 5rem)));
		}

		.not-found-brand
		{
			color: var(--foreground);
			text-decoration: none;
		}

		.not-found-intro
		{
			margin-top: clamp(4rem, 12vh, 8rem);
		}

		.not-found-intro h1
		{
			max-width: 10ch;
		}

		.not-found-home
		{
			margin-top: 1.5rem;
		}

		.not-found-actions
		{
			justify-content: center;
			padding-top: clamp(2rem, 5vw, 4.75rem);
		}
		
		.shared-title[hidden]
		{
			display: none;
		}

		.shared-card
		{
			border-color: rgba(255, 91, 87, 0.35);
			background:
				linear-gradient(135deg, rgba(255, 91, 87, 0.16), rgba(119, 24, 35, 0.08)),
				var(--surface-soft);
			box-shadow: 0 20px 45px rgba(120, 20, 28, 0.16);
			margin-bottom: 20px;
		}
		
		.shared-card[hidden]
		{
			display: none;
		}

		.confidentiality
		{
			margin-top: 1rem !important;
			padding: 0.8rem 0.9rem;

			border-left: 2px solid var(--accent);
			border-radius: 0 9px 9px 0;

			background: rgba(255, 91, 87, 0.08);
			color: #e9c8c6 !important;

			font-size: 0.76rem !important;
		}

		.support-card
		{
			background:
				linear-gradient(135deg, rgba(255, 255, 255, 0.055), transparent),
				var(--surface-soft);
		}

		.support-card::after
		{
			position: absolute;
			right: -38px;
			top: -45px;
			width: 120px;
			height: 120px;

			border-radius: 50%;

			background: var(--accent-soft);
			filter: blur(2px);

			content: "";
			pointer-events: none;
		}

		@media (max-width: 860px)
		{
			.page
			{
				grid-template-columns: 1fr;
			}

			.profile
			{
				gap: 3rem;
			}

			.actions
			{
				padding-top: clamp(2rem, 5vw, 4.75rem);
			}

			.profile::after
			{
				right: 7%;
				bottom: -1px;
				left: 7%;
				top: auto;
				width: auto;
				height: 1px;
			}

			.intro
			{
				margin-top: 3.5rem;
			}

			h1
			{
				max-width: none;
			}
		}

		@media (max-width: 540px)
		{
			body
			{
				padding: 0;
			}

			.page
			{
				min-height: 100svh;
				border-right: 0;
				border-left: 0;
				border-radius: 0;
			}

			.profile,
			.actions
			{
				padding: 2rem 1.25rem;
			}

			.language-switcher
			{
				right: 1.25rem;
				top: 2rem;
			}

			.intro
			{
				margin-top: 3rem;
			}

			.contact-grid
			{
				grid-template-columns: 1fr;
			}

			.card-actions,
			.button
			{
				width: 100%;
			}
		}

		@media (prefers-reduced-motion: reduce)
		{
			*,
			*::before,
			*::after
			{
				scroll-behavior: auto !important;
				transition-duration: 0.01ms !important;
			}
		}

		.admin-body
		{
			display: grid;
			min-height: 100vh;
			min-height: 100svh;
			place-items: center;
		}

		.admin-panel
		{
			width: min(720px, 100%);
			padding: clamp(1.5rem, 5vw, 3rem);

			border: 1px solid var(--border);
			border-radius: 28px;

			background: rgba(19, 10, 11, 0.8);
			box-shadow: 0 35px 90px rgba(0, 0, 0, 0.45);
			backdrop-filter: blur(22px);
		}

		.admin-header
		{
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 1rem;
			margin-bottom: 2rem;
		}

		.admin-header h1
		{
			max-width: none;
			font-size: clamp(2rem, 7vw, 3.8rem);
			line-height: 1;
		}

		.admin-back
		{
			color: var(--muted);
			font-size: 0.8rem;
			text-decoration: none;
		}

		.admin-form
		{
			display: grid;
			gap: 1.15rem;
		}

		.form-grid
		{
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 1rem;
		}

		.form-field
		{
			display: grid;
			gap: 0.45rem;
		}

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

		.form-field label
		{
			color: var(--muted-strong);
			font-size: 0.78rem;
			font-weight: 700;
		}

		.form-field input,
		.form-field select
		{
			width: 100%;
			min-height: 48px;
			padding: 0.75rem 0.9rem;

			border: 1px solid var(--border-strong);
			border-radius: 12px;

			background: rgba(255, 255, 255, 0.045);
			color: var(--foreground);

			font: inherit;
		}

		.form-field input:focus,
		.form-field select:focus
		{
			border-color: var(--accent);
			outline: 2px solid rgba(255, 91, 87, 0.25);
		}

		.admin-submit
		{
			border: 0;
			cursor: pointer;
		}

		.admin-message
		{
			padding: 0.9rem 1rem;

			border-radius: 12px;

			font-size: 0.82rem;
			line-height: 1.5;
		}

		.admin-error
		{
			border: 1px solid rgba(255, 91, 87, 0.35);
			background: rgba(255, 91, 87, 0.1);
			color: #ffc4c1;
		}

		.generated-link
		{
			display: grid;
			gap: 0.8rem;
			margin-top: 1.5rem;
			padding: 1.2rem;

			border: 1px solid rgba(255, 91, 87, 0.28);
			border-radius: 16px;

			background: var(--accent-soft);
		}

		.generated-link[hidden]
		{
			display: none;
		}

		.generated-actions
		{
			display: flex;
			flex-wrap: wrap;
			gap: 0.65rem;
		}

		.admin-note
		{
			margin: 1.3rem 0 0;

			color: #a98f8e;
			font-size: 0.75rem;
			line-height: 1.55;
		}

		@media (max-width: 600px)
		{
			.form-grid
			{
				grid-template-columns: 1fr;
			}

			.admin-header
			{
				align-items: flex-start;
				flex-direction: column;
			}
		}


		.admin-success
		{
			border-color: rgba(92, 205, 142, 0.34);
			background: rgba(92, 205, 142, 0.1);
			color: #b9f4d1;
		}

		.input-suffix
		{
			display: flex;
			align-items: center;
			gap: 0.7rem;
		}

		.input-suffix input
		{
			width: 120px;
		}

		.input-suffix span
		{
			color: var(--muted);
		}

		.admin-links
		{
			margin-top: 2rem;
			padding-top: 2rem;
			border-top: 1px solid var(--border);
		}

		.admin-links h2
		{
			margin: 0 0 1rem;
			font-size: 1.35rem;
		}

		.admin-link-list
		{
			display: grid;
			gap: 0.75rem;
		}

		.admin-link-item
		{
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 1rem;
			padding: 1rem;
			border: 1px solid var(--border);
			border-radius: 14px;
			background: rgba(255, 255, 255, 0.025);
		}

		.admin-link-main
		{
			display: grid;
			gap: 0.35rem;
			min-width: 0;
		}

		.admin-link-main a
		{
			overflow: hidden;
			color: var(--foreground);
			text-overflow: ellipsis;
			white-space: nowrap;
		}

		.admin-link-main small
		{
			color: var(--muted);
		}

		.admin-link-type
		{
			color: #ffaaa7;
			font-size: 0.75rem;
			font-weight: 760;
			text-transform: uppercase;
		}

		.button-danger
		{
			border-color: rgba(255, 91, 87, 0.35);
			color: #ffaaa7;
		}

		@media (max-width: 640px)
		{
			.admin-link-item
			{
				align-items: stretch;
				flex-direction: column;
			}
		}

		.admin-public-link
		{
			font-weight: 700;
		}

		.admin-link-actions
		{
			display: flex;
			flex: 0 0 auto;
			gap: 0.5rem;
		}

		.admin-link-actions form
		{
			margin: 0;
		}

		@media (max-width: 720px)
		{
			.admin-link-actions
			{
				width: 100%;
			}

			.admin-link-actions .button
			{
				flex: 1;
			}
		}
