		:root {
			--primary: #1a4d2e;
			--primary-light: #2d6a4f;
			--accent: #c7a66d;
			--accent-light: #ddc295;
			--dark: #0f1419;
			--gray: #464b52;
			--light-gray: #f5f7f9;
			--white: #ffffff;
			--shadow: rgba(15, 20, 25, 0.12);
			--shadow-lg: rgba(15, 20, 25, 0.2);
		}
		
		* {
			margin: 0;
			padding: 0;
			box-sizing: border-box;
		}
		
		body {
			font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
			line-height: 1.6;
			color: var(--dark);
			background: var(--white);
			overflow-x: hidden;
		}
		
		.container {
			max-width: 1280px;
			margin: 0 auto;
			padding: 0 2rem;
		}
		
		/* Header */
		header {
			position: fixed;
			top: 0;
			left: 0;
			right: 0;
			background: rgba(255, 255, 255, 0.95);
			backdrop-filter: blur(10px);
			z-index: 1000;
			border-bottom: 1px solid rgba(0, 0, 0, 0.05);
			animation: slideDown 0.5s ease-out;
		}
		
		@keyframes slideDown {
			from {
				transform: translateY(-100%);
				opacity: 0;
			}
			to {
				transform: translateY(0);
				opacity: 1;
			}
		}
		
		nav {
			display: flex;
			justify-content: space-between;
			align-items: center;
			padding: 1.25rem 0;
		}
		
		.nav-actions {
			display: flex;
			align-items: center;
			gap: 1.5rem;
			margin-top: 5px;
			margin-bottom: 5px;
		}
		
		.nav-link {
			color: var(--gray);
			text-decoration: none;
			font-weight: 500;
			transition: color 0.3s ease;
		}
		
		.nav-link:hover {
			color: var(--primary);
		}
		
		.logo {
			font-family: 'Crimson Pro', serif;
			font-size: 1.75rem;
			font-weight: 700;
			color: var(--primary);
			text-decoration: none;
			letter-spacing: -0.02em;
		}
		
		.cta-button {
			background: var(--primary);
			color: var(--white);
			padding: 0.875rem 2rem;
			border-radius: 6px;
			text-decoration: none;
			font-weight: 600;
			transition: all 0.3s ease;
			border: none;
			cursor: pointer;
			font-size: 1rem;
			display: inline-block;
			box-shadow: 0 2px 8px var(--shadow);
		}
		
		.cta-button:hover {
			background: var(--primary-light);
			transform: translateY(-2px);
			box-shadow: 0 4px 16px var(--shadow-lg);
		}
		
		.cta-button.secondary {
			background: white;
			color: var(--primary);
			border: 2px solid var(--primary);
			box-shadow: none;
		}
		
		.cta-button.secondary:hover {
			background: var(--primary);
			color: var(--white);
		}
		
		/* Hero Section */
		.hero {
			margin-top: 80px;
			padding: 6rem 0 4rem;
			background: linear-gradient(135deg, #f5f7f9 0%, #ffffff 100%);
			position: relative;
			overflow: hidden;
		}

		.hero-landing {
			margin-top: 55px;
			padding: 6rem 0 4rem;
			background: url(../images/closing2.jpg) no-repeat center center;
			position: relative;
			overflow: hidden;
			background-size: cover;
		}
		
		.hero::before {
			content: '';
			position: absolute;
			top: -50%;
			right: -20%;
			width: 800px;
			height: 800px;
			background: radial-gradient(circle, rgba(199, 166, 109, 0.08) 0%, transparent 70%);
			border-radius: 50%;
			animation: float 20s ease-in-out infinite;
		}
		
		.hero::after {
			content: '';
			position: absolute;
			bottom: 10%;
			left: 5%;
			width: 200px;
			height: 200px;
			background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 80 L50 60 L70 70 L90 50 L110 60 L130 40 L150 50 L170 45 L170 120 L150 130 L130 125 L110 135 L90 140 L70 135 L50 130 L30 125 Z' fill='%231a4d2e' opacity='0.03' stroke='%231a4d2e' stroke-width='0.5' opacity='0.1'/%3E%3C/svg%3E");
			background-size: contain;
			background-repeat: no-repeat;
			opacity: 0.5;
		}
		
		@keyframes float {
			0%, 100% {
				transform: translate(0, 0) scale(1);
			}
			50% {
				transform: translate(-30px, 30px) scale(1.05);
			}
		}
		
		.hero-content {
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 4rem;
			align-items: center;
			position: relative;
			z-index: 1;
		}
		
		.hero-text h1 {
			font-family: 'Crimson Pro', serif;
			font-size: 3.5rem;
			font-weight: 700;
			line-height: 1.1;
			color: white;
			text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
			margin-bottom: 1.5rem;
			animation: fadeInUp 0.8s ease-out 0.2s both;
		}
		
		@keyframes fadeInUp {
			from {
				opacity: 0;
				transform: translateY(30px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}
		
		.hero-text p {
			font-size: 1.25rem;
			color: white;
			margin-bottom: 2rem;
			line-height: 1.7;
			text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
			animation: fadeInUp 0.8s ease-out 0.4s both;
		}
		
		.hero-cta {
			display: flex;
			gap: 1rem;
			animation: fadeInUp 0.8s ease-out 0.6s both;
		}
		
		.hero-visual {
			background: var(--white);
			padding: 2.5rem;
			border-radius: 12px;
			box-shadow: 0 20px 60px var(--shadow);
			animation: fadeInUp 0.8s ease-out 0.5s both;
			position: relative;
		}
		
		.document-preview {
			background: linear-gradient(to bottom, #fafbfc 0%, #f5f7f9 100%);
			border: 2px solid #e1e4e8;
			border-radius: 8px;
			padding: 2rem;
			position: relative;
		}
		
		.doc-header {
			border-bottom: 3px solid var(--accent);
			padding-bottom: 1rem;
			margin-bottom: 1.5rem;
		}
		
		.doc-title {
			font-family: 'Crimson Pro', serif;
			font-size: 1.5rem;
			font-weight: 700;
			color: var(--dark);
			margin-bottom: 0.5rem;
		}
		
		.doc-county {
			font-size: 0.875rem;
			color: var(--gray);
			text-transform: uppercase;
			letter-spacing: 0.05em;
		}
		
		.doc-lines {
			display: flex;
			flex-direction: column;
			gap: 0.75rem;
		}
		
		.doc-line {
			height: 8px;
			background: linear-gradient(90deg, var(--primary) 0%, var(--accent-light) 100%);
			border-radius: 4px;
			opacity: 0;
			animation: fillLine 0.6s ease-out forwards;
		}
		
		.doc-line:nth-child(1) { width: 90%; animation-delay: 1s; }
		.doc-line:nth-child(2) { width: 75%; animation-delay: 1.2s; }
		.doc-line:nth-child(3) { width: 85%; animation-delay: 1.4s; }
		.doc-line:nth-child(4) { width: 60%; animation-delay: 1.6s; }
		
		@keyframes fillLine {
			from {
				width: 0;
				opacity: 0;
			}
			to {
				opacity: 1;
			}
		}
		
		.checkmark {
			position: absolute;
			top: -15px;
			right: -15px;
			width: 50px;
			height: 50px;
			background: var(--primary);
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			color: white;
			font-size: 1.5rem;
			box-shadow: 0 4px 12px var(--shadow-lg);
			animation: popIn 0.5s ease-out 1.8s both;
		}
		
		@keyframes popIn {
			0% {
				transform: scale(0);
				opacity: 0;
			}
			50% {
				transform: scale(1.2);
			}
			100% {
				transform: scale(1);
				opacity: 1;
			}
		}
		
		/* Problem Section */
		.problem-section {
			padding: 5rem 0;
			background: var(--white);
		}
		
		.section-header {
			text-align: center;
			margin-bottom: 4rem;
		}
		
		.section-label {
			font-size: 0.875rem;
			font-weight: 600;
			color: var(--accent);
			text-transform: uppercase;
			letter-spacing: 0.1em;
			margin-bottom: 1rem;
		}

		.section-label-white {
			font-size: 0.875rem;
			font-weight: 600;
			color: white;
			text-transform: uppercase;
			letter-spacing: 0.1em;
			margin-bottom: 1rem;
			text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
		}
		
		.section-title {
			font-family: 'Crimson Pro', serif;
			font-size: 2.75rem;
			font-weight: 700;
			color: var(--dark);
			margin-bottom: 1rem;
		}
		
		.section-subtitle {
			font-size: 1.25rem;
			color: var(--gray);
			max-width: 700px;
			margin: 0 auto;
		}
		
		.problem-grid {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 2rem;
		}
		
		.problem-card {
			background: var(--light-gray);
			padding: 2.5rem;
			border-radius: 12px;
			border-left: 4px solid var(--accent);
			transition: all 0.3s ease;
		}
		
		.problem-card:hover {
			transform: translateY(-5px);
			box-shadow: 0 12px 28px var(--shadow);
		}
		
		.problem-icon {
			width: 70px;
			height: 70px;
			margin-bottom: 1.5rem;
		}
		
		.problem-icon svg {
			width: 100%;
			height: 100%;
		}
		
		.problem-card h3 {
			font-family: 'Crimson Pro', serif;
			font-size: 1.5rem;
			font-weight: 600;
			margin-bottom: 1rem;
			color: var(--dark);
		}
		
		.problem-card p {
			color: var(--gray);
			line-height: 1.7;
		}
		
		/* Features Section */
		.features-section {
			padding: 5rem 0;
			background: var(--primary);
			color: var(--white);
			position: relative;
			overflow: hidden;
		}
		
		.features-section::before {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			height: 100%;
			background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
			opacity: 0.4;
		}
		
		.features-section .features-grid::before {
			content: '';
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			width: 400px;
			height: 400px;
			background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='100' cy='100' r='80' fill='none' stroke='white' stroke-width='0.5' opacity='0.1'/%3E%3Ccircle cx='100' cy='100' r='60' fill='none' stroke='white' stroke-width='0.5' opacity='0.1'/%3E%3Ccircle cx='100' cy='100' r='40' fill='none' stroke='white' stroke-width='0.5' opacity='0.1'/%3E%3C/svg%3E");
			background-size: contain;
			background-repeat: no-repeat;
			opacity: 0.3;
			pointer-events: none;
		}
		
		.features-section .section-label {
			color: var(--accent-light);
		}
		
		.features-section .section-title,
		.features-section .section-subtitle {
			color: var(--white);
		}
		
		.features-grid {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 3rem;
			position: relative;
			z-index: 1;
		}
		
		.feature-item {
			display: flex;
			gap: 1.5rem;
			align-items: start;
		}
		
		.feature-icon {
			background: rgba(255, 255, 255, 0.1);
			width: 60px;
			height: 60px;
			border-radius: 12px;
			display: flex;
			align-items: center;
			justify-content: center;
			flex-shrink: 0;
			backdrop-filter: blur(10px);
		}
		
		.feature-icon svg {
			width: 32px;
			height: 32px;
		}
		
		.feature-content h3 {
			font-family: 'Crimson Pro', serif;
			font-size: 1.5rem;
			font-weight: 600;
			margin-bottom: 0.75rem;
		}
		
		.feature-content p {
			color: rgba(255, 255, 255, 0.85);
			line-height: 1.7;
		}
		
		/* Documents Section */
		.documents-section {
			padding: 5rem 0;
			background: url(../images/accepted.jpg) no-repeat center center;
			background-size: cover;
		}

		.documents-section .section-title-documents {
			font-family: 'Crimson Pro', serif;
			font-size: 2.75rem;
			font-weight: 700;
			color: white;
			text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
		}

		.documents-section .section-subtitle {
			color: white;
			text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
		}
		
		.documents-list {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 2rem;
		}
		
		.document-type {
			background: var(--white);
			padding: 2.5rem;
			border-radius: 12px;
			box-shadow: 0 4px 16px var(--shadow);
			transition: all 0.3s ease;
			border-top: 4px solid var(--accent);
		}
		
		.document-icon {
			width: 60px;
			height: 60px;
			margin-bottom: 1.5rem;
		}
		
		.document-icon svg {
			width: 100%;
			height: 100%;
		}
		
		.document-type:hover {
			transform: translateY(-8px);
			box-shadow: 0 12px 32px var(--shadow-lg);
		}
		
		.document-type h3 {
			font-family: 'Crimson Pro', serif;
			font-size: 1.75rem;
			font-weight: 600;
			margin-bottom: 1rem;
			color: var(--primary);
		}
		
		.document-variants {
			list-style: none;
			margin: 1.5rem 0;
		}
		
		.document-variants li {
			padding: 0.75rem 0;
			border-bottom: 1px solid var(--light-gray);
			color: var(--gray);
			display: flex;
			align-items: center;
			gap: 0.75rem;
		}
		
		.document-variants li:last-child {
			border-bottom: none;
		}
		
		.document-variants li::before {
			content: '✓';
			color: var(--primary);
			font-weight: bold;
			font-size: 1.2rem;
		}
		
		/* How It Works Section */
		.how-it-works {
			padding: 5rem 0;
			background: var(--white);
		}
		
		.steps-container {
			display: grid;
			grid-template-columns: repeat(4, 1fr);
			gap: 2rem;
			margin-top: 3rem;
		}
		
		.step {
			text-align: center;
			position: relative;
		}
		
		.step::after {
			content: '→';
			position: absolute;
			top: 40px;
			right: -1.5rem;
			font-size: 2rem;
			color: var(--accent);
			font-weight: bold;
		}
		
		.step:last-child::after {
			display: none;
		}
		
		.step-number {
			width: 80px;
			height: 80px;
			background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
			color: var(--white);
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			font-family: 'Crimson Pro', serif;
			font-size: 2rem;
			font-weight: 700;
			margin: 0 auto 1.5rem;
			box-shadow: 0 8px 20px var(--shadow);
		}
		
		.step h3 {
			font-family: 'Crimson Pro', serif;
			font-size: 1.25rem;
			font-weight: 600;
			margin-bottom: 0.75rem;
			color: var(--dark);
		}
		
		.step p {
			color: var(--gray);
			line-height: 1.6;
		}
		
		/* CTA Section */
		.cta-section {
			padding: 5rem 0;
			background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);
			color: var(--white);
			text-align: center;
			position: relative;
			overflow: hidden;
		}
		
		.cta-section::before {
			content: '';
			position: absolute;
			top: -50%;
			left: -25%;
			width: 600px;
			height: 600px;
			background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
			border-radius: 50%;
		}
		
		.cta-section::after {
			content: '';
			position: absolute;
			bottom: -30%;
			right: -15%;
			width: 500px;
			height: 500px;
			background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, transparent 70%);
			border-radius: 50%;
		}
		
		.cta-content {
			position: relative;
			z-index: 1;
			max-width: 800px;
			margin: 0 auto;
		}
		
		.cta-content h2 {
			font-family: 'Crimson Pro', serif;
			font-size: 3rem;
			font-weight: 700;
			margin-bottom: 1.5rem;
			line-height: 1.2;
		}
		
		.cta-content p {
			font-size: 1.25rem;
			margin-bottom: 2.5rem;
			opacity: 0.95;
		}
		
		.cta-section .cta-button {
			background: var(--white);
			color: var(--primary);
			font-size: 1.125rem;
			padding: 1.125rem 3rem;
		}
		
		.cta-section .cta-button:hover {
			background: var(--accent-light);
			color: var(--dark);
		}
		
		.trust-indicators {
			display: flex;
			justify-content: center;
			gap: 3rem;
			margin-top: 3rem;
			padding-top: 3rem;
			border-top: 1px solid rgba(255, 255, 255, 0.2);
		}
		
		.trust-item {
			display: flex;
			align-items: center;
			gap: 1rem;
		}
		
		.trust-number {
			font-size: 1.75rem;
			font-weight: 700;
			font-family: 'Crimson Pro', serif;
			margin-bottom: 0.25rem;
		}
		
		.trust-label {
			font-size: 0.875rem;
			opacity: 0.9;
		}
		
		/* Footer */
		footer {
			background: var(--dark);
			color: rgba(255, 255, 255, 0.7);
			padding: 3rem 0 1.5rem;
		}
		
		.footer-content {
			display: grid;
			grid-template-columns: 2fr 1fr 1fr 1fr;
			gap: 3rem;
			margin-bottom: 2rem;
		}
		
		.footer-brand h3 {
			font-family: 'Crimson Pro', serif;
			font-size: 1.5rem;
			color: var(--white);
			margin-bottom: 1rem;
		}
		
		.footer-brand p {
			line-height: 1.7;
			margin-bottom: 1.5rem;
		}
		
		.footer-section h4 {
			color: var(--white);
			font-weight: 600;
			margin-bottom: 1rem;
		}
		
		.footer-links {
			list-style: none;
		}
		
		.footer-links li {
			margin-bottom: 0.75rem;
		}
		
		.footer-links a {
			color: rgba(255, 255, 255, 0.7);
			text-decoration: none;
			transition: color 0.3s ease;
		}
		
		.footer-links a:hover {
			color: var(--accent-light);
		}
		
		.footer-bottom {
			border-top: 1px solid rgba(255, 255, 255, 0.1);
			padding-top: 2rem;
			text-align: center;
			font-size: 0.875rem;
		}
		
		/* Responsive Design */
		@media (max-width: 1024px) {
			.hero-content {
				grid-template-columns: 1fr;
				gap: 3rem;
			}
			
			.hero-text h1 {
				font-size: 2.75rem;
			}
			
			.features-grid {
				grid-template-columns: 1fr;
			}
			
			.footer-content {
				grid-template-columns: 1fr 1fr;
				gap: 2rem;
			}
		}
		
		@media (max-width: 768px) {
			.container {
				padding: 0 1.5rem;
			}
			
			.hero {
				padding: 4rem 0 3rem;
			}
			
			.hero-text h1 {
				font-size: 2.25rem;
			}
			
			.hero-text p {
				font-size: 1.125rem;
			}
			
			.hero-cta {
				flex-direction: column;
			}
			
			.nav-actions {
				gap: 1rem;
			}
			
			.nav-link {
				font-size: 0.9rem;
			}
			
			.cta-button {
				padding: 0.75rem 1.5rem;
				font-size: 0.9rem;
			}
			
			.problem-grid,
			.documents-list,
			.steps-container {
				grid-template-columns: 1fr;
			}
			
			.section-title {
				font-size: 2rem;
			}
			
			.cta-content h2 {
				font-size: 2rem;
			}
			
			.step::after {
				content: '↓';
				top: auto;
				bottom: -1.5rem;
				right: 50%;
				transform: translateX(50%);
			}
			
			.footer-content {
				grid-template-columns: 1fr;
			}
			
			.trust-indicators {
				flex-direction: column;
				gap: 1.5rem;
				align-items: flex-start;
			}
		}

	/* Alerts */
	.alert {
		padding: 1rem 1.25rem;
		border-radius: 8px;
		margin-bottom: 1.5rem;
	}
	.alert-success {
		background: #d4edda;
		border: 1px solid #c3e6cb;
		color: #155724;
	}
	.alert-error {
		background: #f8d7da;
		border: 1px solid #f5c6cb;
		color: #721c24;
	}

	/* Dashboard footer */
	.dashboard-footer {
		background: var(--dark);
		color: rgba(255, 255, 255, 0.7);
		padding: 2rem 0;
		text-align: center;
	}

	/* Manage Users */
	.manage-users-section {
		min-height: 100vh;
		padding: 120px 0 60px;
		background: var(--light-gray);
	}
	.manage-users-header {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		margin-bottom: 2rem;
	}
	.manage-users-header h1 {
		font-family: 'Crimson Pro', serif;
		font-size: 2rem;
		color: var(--dark);
		margin-bottom: 0.5rem;
	}
	.manage-users-header p {
		color: var(--gray);
		margin-bottom: 1rem;
	}
	.manage-users-header-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 0.75rem;
		align-items: center;
	}
	.manage-users-header-btn {
		min-width: 10rem;
		padding: 0.875rem 2rem;
		text-align: center;
		display: inline-block;
		text-decoration: none;
		font-size: 1rem;
		font-weight: 600;
		border-radius: 6px;
		box-sizing: border-box;
		line-height: 1.25;
	}
	.manage-users-header-btn.secondary {
		background: white;
		color: var(--primary);
		border: 2px solid var(--primary);
		box-shadow: none;
	}
	.manage-users-header-btn:not(.secondary) {
		background: var(--primary);
		color: var(--white);
		border: 2px solid var(--primary);
	}
	.manage-users-table-wrap {
		background: var(--white);
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		overflow-x: auto;
	}
	.manage-users-table {
		width: 100%;
		border-collapse: collapse;
		font-size: 0.9375rem;
	}
	.manage-users-table th,
	.manage-users-table td {
		padding: 0.75rem 1rem;
		text-align: left;
		border-bottom: 1px solid var(--light-gray);
	}
	.manage-users-table th {
		background: var(--light-gray);
		font-weight: 600;
		color: var(--dark);
	}
	.manage-users-table tbody tr:hover {
		background: rgba(0, 0, 0, 0.02);
	}
	.manage-users-row {
		cursor: pointer;
	}
	.manage-users-row:focus {
		outline: 2px solid var(--primary);
		outline-offset: -2px;
	}
	.manage-users-input,
	.manage-users-select {
		width: 100%;
		min-width: 0;
		padding: 0.5rem 0.75rem;
		border: 1px solid #ccc;
		border-radius: 6px;
		font-family: inherit;
		font-size: inherit;
	}
	.manage-users-input:focus,
	.manage-users-select:focus {
		outline: none;
		border-color: var(--primary);
	}
	.manage-users-id {
		font-variant-numeric: tabular-nums;
	}
	.manage-users-empty {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		text-align: center;
		color: var(--gray);
	}

	/* Manage Users modal */
	.manage-users-modal {
		position: fixed;
		inset: 0;
		z-index: 2000;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 1rem;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.2s ease, visibility 0.2s ease;
	}
	.manage-users-modal-open {
		opacity: 1;
		visibility: visible;
	}
	.manage-users-modal-backdrop {
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.5);
	}
	.manage-users-modal-content {
		position: relative;
		background: var(--white);
		border-radius: 12px;
		box-shadow: 0 8px 32px var(--shadow-lg);
		max-width: 480px;
		width: 100%;
		max-height: 90vh;
		overflow: auto;
	}
	.manage-users-modal-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 1.25rem 1.5rem;
		border-bottom: 1px solid var(--light-gray);
	}
	.manage-users-modal-header h2 {
		font-family: 'Crimson Pro', serif;
		font-size: 1.5rem;
		color: var(--dark);
		margin: 0;
	}
	.manage-users-modal-close {
		background: none;
		border: none;
		font-size: 1.75rem;
		line-height: 1;
		color: var(--gray);
		cursor: pointer;
		padding: 0.25rem;
		margin: -0.25rem;
	}
	.manage-users-modal-close:hover {
		color: var(--dark);
	}
	.manage-users-modal-body {
		padding: 1.5rem;
	}
	.manage-users-modal-dl {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 0.5rem 1.5rem;
		align-items: baseline;
		margin: 0;
	}
	.manage-users-modal-dl dt {
		margin: 0;
		font-weight: 600;
		color: var(--dark);
	}
	.manage-users-modal-dl dd {
		margin: 0;
		color: var(--gray);
	}
	.manage-users-modal-dl dd:has(.manage-users-input),
	.manage-users-modal-dl dd:has(.manage-users-select) {
		color: inherit;
	}
	.manage-users-modal-footer {
		display: flex;
		justify-content: flex-end;
		gap: 0.75rem;
		padding: 1rem 1.5rem;
		border-top: 1px solid var(--light-gray);
	}

	.manage-users-actions-col {
		width: 3rem;
		text-align: center;
	}
	.manage-users-actions-cell {
		vertical-align: middle;
	}
	.manage-users-reset-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.25rem;
		height: 2.25rem;
		padding: 0;
		border: none;
		background: transparent;
		color: var(--primary);
		cursor: pointer;
		border-radius: 4px;
		transition: background 0.15s, color 0.15s;
	}
	.manage-users-reset-btn:hover:not(:disabled) {
		background: rgba(26, 77, 46, 0.12);
		color: var(--primary);
	}
	.manage-users-reset-btn:disabled {
		opacity: 0.6;
		cursor: not-allowed;
	}
	.manage-users-icon-email {
		width: 1.25rem;
		height: 1.25rem;
		fill: none;
		stroke: currentColor;
	}

	.manage-users-toast {
		position: fixed;
		bottom: 1.5rem;
		right: 1.5rem;
		padding: 0.75rem 1.25rem;
		border-radius: 8px;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
		font-size: 0.9375rem;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.25s, visibility 0.25s;
		z-index: 10000;
		background: var(--success-bg, #d1e7dd);
		color: var(--success-text, #0f5132);
	}
	.manage-users-toast.manage-users-toast-show {
		opacity: 1;
		visibility: visible;
	}
	.manage-users-toast.manage-users-toast-error {
		background: var(--danger-bg, #f8d7da);
		color: var(--danger-text, #842029);
	}

	/* Settings page */
	.settings-section {
		min-height: 100vh;
		padding: 120px 0 60px;
		background: var(--light-gray);
	}
	.settings-card {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		max-width: 480px;
		margin: 0 auto;
	}
	.settings-card h1 {
		font-family: 'Crimson Pro', serif;
		font-size: 2rem;
		color: var(--dark);
		margin-bottom: 0.5rem;
	}
	.settings-card > p {
		color: var(--gray);
		margin-bottom: 1rem;
	}
	.settings-back {
		display: inline-block;
		margin-bottom: 1.5rem;
	}
	.settings-form {
		margin-top: 1rem;
	}
	.settings-optional {
		font-weight: normal;
		color: var(--gray);
		font-size: 0.9em;
	}
	.settings-hint {
		display: block;
		color: var(--gray);
		font-size: 0.875rem;
		margin-top: 0.25rem;
	}

	.dashboard-section {
		min-height: 100vh;
		padding: 120px 0 60px;
		background: var(--light-gray);
	}
	
	.dashboard-header {
		background: linear-gradient(to top, rgba(255, 255, 255, 0.85) 0%, transparent 50%), url(/images/dashboard.jpg) no-repeat center center;
		background-size: cover;
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		margin-bottom: 2rem;
		min-height: 425px;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: flex-end;
	}
	
	.dashboard-header h1 {
		font-family: 'Crimson Pro', serif;
		font-size: 2.5rem;
		color: var(--dark);
		margin-bottom: 0.5rem;
	}
	
	.dashboard-header p {
		color: var(--gray);
		font-size: 1.125rem;
	}
	
	.dashboard-grid {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
		gap: 2rem;
	}
	
	.dashboard-card {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		transition: all 0.3s ease;
	}
	
	.dashboard-card:hover {
		transform: translateY(-4px);
		box-shadow: 0 8px 24px var(--shadow-lg);
	}
	
	.dashboard-card h3 {
		font-family: 'Crimson Pro', serif;
		font-size: 1.5rem;
		color: var(--primary);
		margin-bottom: 1rem;
	}
	
	.user-info {
		background: var(--light-gray);
		padding: 1rem;
		border-radius: 8px;
		margin-top: 1rem;
	}
	
	.user-info p {
		margin: 0.5rem 0;
	}

	.dashboard-create-btn {
		display: inline-block;
		margin-top: 1rem;
	}

	/* Dashboard Create Document modal */
	.dashboard-create-modal {
		position: fixed;
		inset: 0;
		z-index: 2000;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 1rem;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.2s ease, visibility 0.2s ease;
	}
	.dashboard-create-modal-open {
		opacity: 1;
		visibility: visible;
	}
	.dashboard-create-modal-backdrop {
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.5);
	}
	.dashboard-create-modal-content {
		position: relative;
		background: var(--white);
		border-radius: 12px;
		box-shadow: 0 8px 32px var(--shadow-lg);
		max-width: 400px;
		width: 100%;
	}
	.dashboard-create-modal-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 1.25rem 1.5rem;
		border-bottom: 1px solid var(--light-gray);
	}
	.dashboard-create-modal-header h2 {
		font-family: 'Crimson Pro', serif;
		font-size: 1.5rem;
		color: var(--dark);
		margin: 0;
	}
	.dashboard-create-modal-close {
		background: none;
		border: none;
		font-size: 1.75rem;
		line-height: 1;
		color: var(--gray);
		cursor: pointer;
		padding: 0.25rem;
	}
	.dashboard-create-modal-close:hover {
		color: var(--dark);
	}
	.dashboard-create-modal-body {
		padding: 1.5rem;
	}
	.dashboard-create-modal-label {
		display: block;
		font-weight: 600;
		color: var(--dark);
		margin-bottom: 0.5rem;
		margin-top: 0.75rem;
	}
	.dashboard-create-modal-label:first-child {
		margin-top: 0;
	}
	.dashboard-create-modal-select {
		width: 100%;
		padding: 0.5rem 0.75rem;
		border: 1px solid #ccc;
		border-radius: 6px;
		font-family: inherit;
		font-size: 1rem;
		background: var(--white);
	}
	.dashboard-create-modal-select:focus {
		outline: none;
		border-color: var(--primary);
	}
	.dashboard-create-modal-input,
	.dashboard-create-modal-textarea {
		width: 100%;
		padding: 0.5rem 0.75rem;
		border: 1px solid #ccc;
		border-radius: 6px;
		font-family: inherit;
		font-size: 1rem;
		background: var(--white);
	}
	.dashboard-create-modal-textarea {
		resize: vertical;
		min-height: 4rem;
	}
	.dashboard-create-modal-input:focus,
	.dashboard-create-modal-textarea:focus {
		outline: none;
		border-color: var(--primary);
	}
	.dashboard-create-optional {
		font-weight: normal;
		color: var(--gray);
		font-size: 0.9em;
	}
	.dashboard-create-modal-footer {
		display: flex;
		justify-content: flex-end;
		gap: 0.75rem;
		padding: 1rem 1.5rem;
		border-top: 1px solid var(--light-gray);
	}

	/* Create Document page */
	.create-document-section {
		min-height: 100vh;
		padding: 120px 0 60px;
		background: var(--light-gray);
	}
	.create-document-card {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		max-width: 520px;
		margin: 0 auto;
	}
	.create-document-card h1 {
		font-family: 'Crimson Pro', serif;
		font-size: 2rem;
		color: var(--dark);
		margin-bottom: 1rem;
	}
	.create-document-summary {
		color: var(--gray);
		margin-bottom: 1.5rem;
		line-height: 1.6;
	}
	.create-document-actions {
		display: flex;
		gap: 0.75rem;
		align-items: center;
	}

	/* My Documents page */
	.my-documents-section {
		min-height: 100vh;
		padding: 120px 0 60px;
		background: var(--light-gray);
	}
	.my-documents-header {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		margin-bottom: 2rem;
	}
	.my-documents-header h1 {
		font-family: 'Crimson Pro', serif;
		font-size: 2rem;
		color: var(--dark);
		margin-bottom: 0.5rem;
	}
	.my-documents-header p {
		color: var(--gray);
		margin-bottom: 1rem;
	}
	.my-documents-back {
		display: inline-block;
	}
	.my-documents-table-wrap {
		background: var(--white);
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		overflow-x: auto;
	}
	.my-documents-table {
		width: 100%;
		border-collapse: collapse;
		font-size: 0.9375rem;
	}
	.my-documents-table th,
	.my-documents-table td {
		padding: 0.75rem 1rem;
		text-align: left;
		border-bottom: 1px solid var(--light-gray);
	}
	.my-documents-table th {
		background: var(--light-gray);
		font-weight: 600;
		color: var(--dark);
	}
	.my-documents-row {
		cursor: pointer;
	}
	.my-documents-row:hover {
		background: rgba(0, 0, 0, 0.02);
	}
	.my-documents-row:focus {
		outline: 2px solid var(--primary);
		outline-offset: -2px;
	}
	.my-documents-empty {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		text-align: center;
		color: var(--gray);
		margin-top: 1rem;
	}

	/* Document view page */
	.document-view-section {
		min-height: 100vh;
		padding: 120px 0 60px;
		background: var(--light-gray);
	}
	.document-view-header {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		margin-bottom: 2rem;
	}
	.document-view-header h1 {
		font-family: 'Crimson Pro', serif;
		font-size: 2rem;
		color: var(--dark);
		margin: 0;
	}
	.document-view-header-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 0.75rem;
		align-items: center;
	}
	.document-view-card {
		background: var(--white);
		padding: 2rem;
		border-radius: 12px;
		box-shadow: 0 4px 16px var(--shadow);
		max-width: 640px;
	}
	.document-view-dl {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 0.5rem 2rem;
		align-items: baseline;
		margin: 0;
	}
	.document-view-dl dt {
		font-weight: 600;
		color: var(--dark);
		margin: 0;
	}
	.document-view-dl dd {
		margin: 0;
		color: var(--gray);
	}
	.document-view-comments {
		white-space: pre-wrap;
		word-break: break-word;
	}
	.document-edit-input,
	.document-edit-textarea {
		width: 100%;
		max-width: 480px;
		padding: 0.5rem 0.75rem;
		border: 1px solid #ccc;
		border-radius: 6px;
		font-family: inherit;
		font-size: 1rem;
		background: var(--white);
		margin-bottom: 0.25rem;
	}
	.document-edit-textarea {
		resize: vertical;
		min-height: 5rem;
		display: block;
	}
	.document-edit-input:focus,
	.document-edit-textarea:focus {
		outline: none;
		border-color: var(--primary);
	}
	.document-edit-form {
		margin-top: 0.75rem;
	}
	.document-edit-btn {
		margin-top: 0.25rem;
	}