@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@400;600;700&family=Manrope:wght@300;400;500;600;700&display=swap');

:root {
	--lily-ink: #2b231e;
	--lily-cream: #faf5ee;
	--lily-sand: #efe1cf;
	--lily-vanilla: #fffaf4;
	--lily-caramel: #b8723d;
	--lily-cocoa: #5b3b2a;
	--lily-rose: #b85f6f;
	--lily-sage: #6d7768;
	--lily-shadow: 0 18px 30px rgba(55, 37, 24, 0.12);
	--lily-soft-shadow: 0 10px 20px rgba(55, 37, 24, 0.08);
}

html,
body {
	background: #f8f2ea;
}

body.theme-lily {
	font-family: 'Manrope', 'Segoe UI', sans-serif;
	color: var(--lily-ink);
	background: radial-gradient(circle at top left, #fff7ec, transparent 52%),
		radial-gradient(circle at 30% 20%, #f6e6d3, transparent 50%),
		radial-gradient(circle at 75% 10%, #f8f0e4, transparent 55%),
		#f8f2ea;
}

.site-shell {
	min-height: 100vh;
	background: linear-gradient(180deg, rgba(250, 245, 238, 0.96) 0%, rgba(250, 245, 238, 0.9) 70%, rgba(250, 245, 238, 0.96) 100%);
}

h1, h2, h3, .title {
	font-family: 'Fraunces', 'Georgia', serif;
	color: var(--lily-cocoa);
}

.eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.2em;
	font-size: 0.7rem;
	color: var(--lily-sage);
}

.navbar.is-light {
	background: rgba(255, 250, 244, 0.85);
	backdrop-filter: blur(8px);
	border-radius: 20px;
	box-shadow: var(--lily-soft-shadow);
}

.navbar-item strong {
	font-size: 1.1rem;
	letter-spacing: 0.02em;
}

.navbar-item {
	font-weight: 600;
}

.navbar-item img.navbar-logo {
	height: 2.52rem;
	width: auto;
	max-height: 2.52rem;
}

.navbar-burger {
	color: var(--lily-caramel);
}

.navbar-burger span {
	background-color: currentColor;
}

.navbar-burger:hover {
	color: var(--lily-cocoa);
}

.navbar-item,
.navbar-link {
	color: var(--lily-ink);
}

.navbar-link:hover,
.navbar-item:hover {
	background: rgba(184, 114, 61, 0.12);
}

.navbar-item:focus,
.navbar-link:focus {
	background: rgba(184, 114, 61, 0.16);
}

.navbar-menu.is-active {
	background: rgba(255, 250, 244, 0.98);
	border-radius: 18px;
	box-shadow: var(--lily-soft-shadow);
}

.navbar-item.has-dropdown.is-active .navbar-dropdown {
	display: block;
}

body.theme-lily .navbar-item.has-dropdown .navbar-link {
	color: var(--lily-cocoa);
}

body.theme-lily .navbar-item.has-dropdown:hover .navbar-link,
body.theme-lily .navbar-item.has-dropdown .navbar-link:focus {
	background: rgba(184, 114, 61, 0.12);
	color: var(--lily-cocoa);
}

body.theme-lily .navbar-dropdown {
	background: var(--lily-vanilla);
	border: 1px solid rgba(91, 59, 42, 0.12);
	border-radius: 14px;
	box-shadow: var(--lily-shadow);
}

body.theme-lily .navbar-dropdown .navbar-item {
	background: transparent;
	color: var(--lily-ink);
}

body.theme-lily .navbar-dropdown .navbar-item:hover,
body.theme-lily .navbar-dropdown .navbar-item:focus {
	background: rgba(184, 114, 61, 0.12);
	color: var(--lily-cocoa);
}

.page-hero {
	padding: 1.5rem 1.75rem;
	margin-bottom: 1.5rem;
	border-radius: 22px;
	background: linear-gradient(135deg, rgba(255, 250, 244, 0.9), rgba(240, 225, 210, 0.6));
	box-shadow: var(--lily-soft-shadow);
	animation: float-in 0.6s ease both;
}

.page-hero--compact {
	padding: 1rem 1.5rem;
}

.card {
	border-radius: 18px;
	box-shadow: var(--lily-shadow);
	border: 1px solid rgba(115, 79, 52, 0.08);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	background: var(--lily-vanilla);
}

.card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 40px rgba(55, 37, 24, 0.18);
}

.card-image img {
	object-fit: cover;
}

.card-content {
	background: var(--lily-vanilla);
}

.box {
	border-radius: 18px;
	box-shadow: var(--lily-soft-shadow);
	background: var(--lily-vanilla);
}

.table {
	background: var(--lily-vanilla);
	border-radius: 16px;
	overflow: hidden;
}

.table th,
.table td {
	color: var(--lily-cocoa);
}

.table thead th {
	font-weight: 700;
	color: var(--lily-cocoa);
}

.table td .is-size-7 {
	color: rgba(91, 59, 42, 0.7);
}

.table td strong {
	color: var(--lily-cocoa);
}

.box strong {
	color: var(--lily-cocoa);
}

.table.is-striped tbody tr:not(.is-selected):nth-child(even) {
	background: rgba(239, 225, 207, 0.35);
}

.breadcrumb a {
	color: var(--lily-cocoa);
}

.lily-breadcrumb .is-active a {
	color: var(--lily-caramel);
}

.button.is-link {
	background-color: var(--lily-caramel);
	border-color: var(--lily-caramel);
	color: #fffaf4;
	font-weight: 600;
}

.button.is-link.is-light {
	background-color: rgba(184, 114, 61, 0.12);
	border-color: rgba(184, 114, 61, 0.22);
	color: var(--lily-cocoa);
}

.button.is-text {
	color: var(--lily-rose);
}

.tag.is-link.is-light {
	background: rgba(184, 114, 61, 0.15);
	color: var(--lily-cocoa);
}

.notification.is-warning {
	background: #fff1da;
	color: var(--lily-cocoa);
}

.notification.is-success {
	background: #edf4ec;
	color: var(--lily-sage);
}

.subtitle,
.help,
.menu-list a,
.breadcrumb a {
	color: #5a4a3e;
}

.menu-list a:hover {
	color: var(--lily-cocoa);
}

.tag.is-light {
	background: rgba(91, 59, 42, 0.08);
	color: var(--lily-cocoa);
}

.input,
.textarea,
.select select {
	border-radius: 12px;
	border-color: rgba(91, 59, 42, 0.2);
	box-shadow: none;
	background: var(--lily-vanilla);
	color: var(--lily-ink);
}

.input:focus,
.textarea:focus,
.select select:focus {
	border-color: var(--lily-caramel);
	box-shadow: 0 0 0 0.15rem rgba(184, 114, 61, 0.2);
}

.label {
	color: var(--lily-cocoa);
	font-weight: 600;
}

.input::placeholder,
.textarea::placeholder {
	color: rgba(91, 59, 42, 0.55);
}

.menu-label {
	color: var(--lily-sage);
	font-weight: 700;
}

.menu-list a.is-active {
	background: rgba(184, 114, 61, 0.15);
	color: var(--lily-cocoa);
	font-weight: 700;
}

body.theme-lily .modal-background {
	background-color: rgba(250, 245, 238, 0.85);
}

body.theme-lily .modal-card,
body.theme-lily .modal-card-head,
body.theme-lily .modal-card-body,
body.theme-lily .modal-card-foot {
	background: var(--lily-vanilla);
	color: var(--lily-ink);
}

body.theme-lily .modal-card {
	border-radius: 20px;
	box-shadow: var(--lily-shadow);
}

body.theme-lily .modal-card-head {
	border-bottom: 1px solid rgba(91, 59, 42, 0.12);
}

body.theme-lily .modal-card-foot {
	border-top: 1px solid rgba(91, 59, 42, 0.12);
}

body.theme-lily .modal-card-title {
	color: var(--lily-cocoa);
}

body.theme-lily .modal-card .delete {
	background: rgba(91, 59, 42, 0.08);
}

.content.lily-readable {
	color: var(--lily-ink);
}

.content.lily-readable p,
.content.lily-readable li {
	color: var(--lily-ink);
}

footer a {
	color: var(--lily-caramel);
	font-weight: 600;
}

footer a:hover {
	color: var(--lily-cocoa);
}

.image.is-4by3 img {
	border-radius: 14px;
}

.image .qr-code {
	aspect-ratio: 1 / 1;
	object-fit: contain;
	width: 100%;
	height: auto;
}

.level, .columns, .card, .box {
	animation: fade-up 0.6s ease both;
}

@keyframes fade-up {
	from {
		opacity: 0;
		transform: translateY(10px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes float-in {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	* {
		animation: none !important;
		transition: none !important;
	}
}
