@layer reset, base, tokens, components, utilities;

@layer reset {
	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}
}

@layer base {
	:root {
		--rodinca-color-bg: #faf9f7;
		--rodinca-color-text: #1a1a1a;
		--rodinca-color-primary: #5c3d2e;
		--rodinca-font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	}

	body.rodinca-site {
		margin: 0;
		font-family: var(--rodinca-font-body);
		background: var(--rodinca-color-bg);
		color: var(--rodinca-color-text);
		line-height: 1.6;
	}

	.rodinca-main {
		max-width: 720px;
		margin: 0 auto;
		padding: 2rem 1rem;
	}

	.rodinca-main__title {
		color: var(--rodinca-color-primary);
		font-size: 1.75rem;
		margin: 0 0 1rem;
	}
}

@layer components {
	.rodinca-header__inner,
	.rodinca-footer__inner,
	.rodinca-main {
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 1rem;
	}

	.rodinca-header {
		border-bottom: 1px solid #e8e4df;
		padding: 1rem 0;
	}

	.rodinca-header__inner {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
	}

	.rodinca-header__logo {
		font-weight: 700;
		color: var(--rodinca-color-primary);
		text-decoration: none;
	}

	.rodinca-nav__list {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.rodinca-nav__list a {
		color: inherit;
		text-decoration: none;
	}

	.rodinca-breadcrumbs {
		max-width: 1200px;
		margin: 0.75rem auto;
		padding: 0 1rem;
		font-size: 0.875rem;
	}

	.rodinca-breadcrumbs__list {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.rodinca-breadcrumbs__item + .rodinca-breadcrumbs__item::before {
		content: "›";
		margin-right: 0.5rem;
		color: #888;
	}

	.rodinca-footer {
		border-top: 1px solid #e8e4df;
		margin-top: 3rem;
		padding: 2rem 0;
		font-size: 0.875rem;
	}

	.rodinca-footer__list {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;
		list-style: none;
		margin: 0 0 1rem;
		padding: 0;
	}

	.rodinca-disclaimer {
		margin-top: 2rem;
		padding: 1rem;
		background: #fff3e8;
		border-left: 4px solid #c45c3e;
		font-size: 0.875rem;
	}
}
