.site-header {
	position:static;
	width:100%;
	background-color:transparent;
	z-index:60;
	border-bottom:1px solid var(--line);
}

.site-header-inner {
	display:flex;
	align-items:center;
	justify-content:space-between;
	height:4.5rem;
	gap:var(--space-md);
}

.brand {
	display:inline-flex;
	align-items:center;
	text-decoration:none;
	flex-shrink:0;
	line-height:1;
}

.brand-logo {
	height:3.1rem;
	width:auto;
	max-width:38vw;
	object-fit:contain;
}

.site-nav {
	display:none;
}

@media (min-width: 960px) {
	.site-nav {
		display:flex;
		align-items:center;
		gap:var(--space-xl);
	}

	.site-nav-list {
		display:flex;
		align-items:center;
		gap:var(--space-lg);
	}

	.site-nav-link {
		display:inline-flex;
		align-items:center;
		gap:var(--space-3xs);
		font-family:var(--vuka-d6c);
		font-size:var(--fs-base);
		font-weight:500;
		color:var(--ink);
		text-decoration:none;
		padding-block:var(--space-xs);
		position:relative;
		transition:color var(--duration-fast) var(--ease-standard);
	}

	.site-nav-link::after {
		content:'';
		position:absolute;
		bottom:0;
		left:0;
		width:100%;
		height:2px;
		background-color:var(--accent);
		transform:scaleX(0);
		transform-origin:right;
		transition:transform var(--duration-fast) var(--ease-standard);
	}

	.site-nav-link:hover {
		color:var(--accent);
	}

	.site-nav-link:hover::after {
		transform:scaleX(1);
		transform-origin:left;
	}

	.site-nav-link:active {
		color:var(--ink);
	}

	.site-nav-link:focus-visible {
		outline:2px solid var(--accent);
		outline-offset:4px;
		border-radius:var(--radius-xs);
	}

	.site-nav-link[aria-current='page'] {
		color:var(--accent);
		font-weight:600;
	}

	.site-nav-link[aria-current='page']::after {
		transform:scaleX(1);
	}

	.site-header-action {
		display:inline-flex;
	}
}

.site-header-action {
	display:none;
}

.site-dock {
	position:fixed;
	inset:auto 0 0 0;
	width:100%;
	height:var(--dock-height);
	background-color:var(--surface);
	border-top:1px solid var(--line);
	box-shadow:0 -4px 16px rgba(44, 40, 33, 0.08);
	z-index:80;
	padding-bottom:env(safe-area-inset-bottom);

	display:block;
}

@media (min-width: 960px) {
	.site-dock {
		display:none;
	}
}

.dock-row {
	display:flex;
	align-items:stretch;
	justify-content:space-around;
	height:100%;
	margin:0;
	padding:0;
}

.dock-item {
	flex:1 1 0;
	display:flex;
	margin:0;
}

.dock-link,
.dock-btn {
	appearance:none;
	background:none;
	border:0;
	font:inherit;
	color:var(--ink-soft);
	text-decoration:none;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	padding-block:var(--space-2xs);
	gap:var(--space-4xs);
	transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard);
	-webkit-tap-highlight-color:transparent;
}

.dock-link .icon,
.dock-btn .icon {
	width:22px;
	height:22px;
}

.dock-label {
	font-family:var(--vuka-d6c);
	font-size:11px;
	line-height:1;
	font-weight:500;
	letter-spacing:var(--tracking-wide);
	white-space:nowrap;
}

.dock-link:hover,
.dock-btn:hover {
	color:var(--ink);
	background-color:rgba(202, 190, 171, 0.35);
}

.dock-link:active,
.dock-btn:active {
	color:var(--accent);
	background-color:var(--surface-2);
}

.dock-link:focus-visible,
.dock-btn:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:-2px;
}

.dock-link[aria-current='page'] {
	color:var(--accent);
	font-weight:600;
}

.dock-drawer {
	position:fixed;
	inset:0 0 var(--dock-height) 0;
	background-color:rgba(44, 40, 33, 0.45);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
	z-index:85;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	opacity:0;
	pointer-events:none;
	transition:opacity var(--duration-medium) var(--ease-standard);
}

.dock-drawer.is-open {
	opacity:1;
	pointer-events:auto;
}

.drawer-panel {
	background-color:var(--ground);
	border-top:2px solid var(--line);
	padding:var(--space-xl) var(--container-pad);
	max-height:80vh;
	overflow-y:auto;
	transform:translateY(100%);
	transition:transform var(--duration-slow) var(--ease-standard);
	display:flex;
	flex-direction:column;
	gap:var(--space-lg);
}

.dock-drawer.is-open .drawer-panel {
	transform:translateY(0);
}

.drawer-head {
	display:flex;
	align-items:center;
	justify-content:space-between;
	border-bottom:1px solid var(--line);
	padding-bottom:var(--space-sm);
}

.drawer-title {
	font-family:var(--vuka-d2f);
	font-size:var(--fs-lg);
	font-weight:700;
}

.drawer-close {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:44px;
	height:44px;
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	background-color:var(--surface);
	color:var(--ink);
	transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);
}

.drawer-close:hover {
	background-color:var(--surface-2);
	border-color:var(--ink);
}

.drawer-close:active {
	background-color:var(--line);
}

.drawer-close:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.drawer-nav-list {
	display:flex;
	flex-direction:column;
	gap:var(--space-2xs);
}

.drawer-nav-link {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:var(--space-sm) var(--space-md);
	background-color:var(--surface);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	font-family:var(--vuka-d2f);
	font-size:var(--fs-md);
	font-weight:600;
	text-decoration:none;
	color:var(--ink);
	transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);
}

.drawer-nav-link:hover {
	background-color:var(--surface-2);
	border-color:var(--ink);
}

.drawer-nav-link:active {

	background-color:var(--line);
}

.drawer-nav-link:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.drawer-nav-link[aria-current='page'] {
	border-left:4px solid var(--accent);
	color:var(--accent);
}

.drawer-facts {
	padding-top:var(--space-sm);
	border-top:1px solid var(--line);
	display:flex;
	flex-direction:column;
	gap:var(--space-2xs);
	font-family:var(--vuka-4c1);
	font-size:var(--fs-xs);
	color:var(--ink-soft);
}

.btn {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:var(--space-xs);
	font-family:var(--vuka-d6c);
	font-size:var(--fs-base);
	font-weight:600;
	line-height:1;
	text-decoration:none;
	padding:0.85rem 1.65rem;
	min-height:44px;
	border-radius:var(--radius-sm);
	border:1px solid transparent;

	cursor:pointer;
	transition:background-color var(--duration-fast) var(--ease-standard),
							color var(--duration-fast) var(--ease-standard),
							border-color var(--duration-fast) var(--ease-standard),
							box-shadow var(--duration-fast) var(--ease-standard),
							transform var(--duration-fast) var(--ease-standard);
	text-align:center;
	white-space:normal;
}

.btn:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:3px;
}

.btn-primary {
	background-color:var(--accent);
	color:var(--accent-ink);
	border-color:var(--accent);
	box-shadow:0 2px 4px rgba(181, 84, 43, 0.2);
}

.btn-primary:hover {
	background-color:#9e4620;
	border-color:#9e4620;
	box-shadow:0 4px 8px rgba(181, 84, 43, 0.28);
}

.btn-primary:active {
	background-color:#873b1a;
	border-color:#873b1a;
	box-shadow:0 1px 2px rgba(181, 84, 43, 0.2);
	transform:translateY(1px);
}

.btn-secondary {
	background-color:var(--surface);
	color:var(--ink);
	border-color:var(--line);
}

.btn-secondary:hover {
	background-color:var(--surface-2);
	border-color:var(--ink);
	color:var(--ink);
}

.btn-secondary:active {
	background-color:var(--line);
	color:var(--ink);
	transform:translateY(1px);
}

.btn-ghost {
	background-color:transparent;
	color:var(--ink);
	border-color:var(--line);
}

.btn-ghost:hover {
	background-color:var(--surface);
	border-color:var(--ink);
}

.btn-ghost:active {
	background-color:var(--surface-2);
	transform:translateY(1px);
}

.btn-sm {
	padding:0.55rem 1.1rem;
	font-size:var(--fs-sm);
	min-height:38px;
}

.card-item {
	background-color:var(--surface);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	display:flex;
	flex-direction:column;
	overflow:hidden;
	position:relative;
	transition:border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);
}

.card-item:hover {
	border-color:var(--ink);
	box-shadow:0 6px 16px rgba(44, 40, 33, 0.08);
}

.card-media {
	aspect-ratio:4 / 3;
	width:100%;
	overflow:hidden;
	background-color:var(--surface-2);
	border-bottom:1px solid var(--line);
}

.card-media img {
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform var(--duration-slow) var(--ease-standard);
}

.card-item:hover .card-media img {
	transform:scale(1.03);
}

.card-body {
	padding:var(--space-lg);
	display:flex;
	flex-direction:column;
	flex:1 1 auto;
	gap:var(--space-xs);
}

.card-header-row {
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	gap:var(--space-xs);
	border-bottom:1px solid var(--line);
	padding-bottom:var(--space-xs);
}

.card-title {
	font-family:var(--vuka-d2f);
	font-size:var(--fs-lg);
	font-weight:700;
	color:var(--ink);
}

.card-price {
	font-family:var(--vuka-4c1);
	font-size:var(--fs-sm);
	font-weight:500;
	color:var(--ink);
	white-space:nowrap;
}

.card-desc {
	font-size:var(--fs-base);
	color:var(--ink-soft);
	margin-top:var(--space-2xs);
}

.card-footer {
	margin-top:auto;
	padding-top:var(--space-md);
	display:flex;
	align-items:center;
	justify-content:space-between;
	border-top:1px dashed var(--line);
}

.card-meta {
	font-family:var(--vuka-4c1);
	font-size:var(--fs-xs);
	color:var(--ink-soft);
}

.spec-table-wrap {
	width:100%;
	overflow-x:auto;
	-webkit-overflow-scrolling:touch;
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	background-color:var(--ground);
}

.spec-table {
	width:100%;
	text-align:left;
	font-size:var(--fs-sm);
	border-collapse:collapse;
}

.spec-table th,
.spec-table td {
	padding:var(--space-sm) var(--space-md);
	border-bottom:1px solid var(--line);
	vertical-align:top;
}

.spec-table th {
	background-color:var(--surface);
	font-family:var(--vuka-d2f);
	font-weight:700;
	color:var(--ink);
	letter-spacing:var(--tracking-wide);
	font-size:var(--fs-xs);
	text-transform:uppercase;
}

.spec-table tr:last-child td {
	border-bottom:none;
}

.spec-table tr:hover td {
	background-color:rgba(218, 208, 191, 0.45);
}

.spec-table .num-cell {
	font-family:var(--vuka-4c1);
	white-space:nowrap;
}

.form-group {
	display:flex;
	flex-direction:column;
	gap:var(--space-3xs);
}

.form-label {
	font-family:var(--vuka-d6c);
	font-size:var(--fs-sm);
	font-weight:600;
	color:var(--ink);
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.form-label-opt {
	font-size:var(--fs-xs);
	font-weight:400;
	color:var(--ink-soft);
	font-style:italic;
}

.form-input,
.form-select,
.form-textarea {
	width:100%;
	background-color:var(--ground);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	padding:0.75rem var(--space-md);
	color:var(--ink);
	font-size:var(--fs-base);
	line-height:1.4;
	min-height:44px;
	transition:border-color var(--duration-fast) var(--ease-standard),
							background-color var(--duration-fast) var(--ease-standard),
							box-shadow var(--duration-fast) var(--ease-standard);
}

.form-textarea {
	resize:vertical;
	min-height:120px;
}

.form-input:hover,
.form-select:hover,
.form-textarea:hover {
	border-color:var(--ink);
	background-color:#fff;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
	outline:none;
	border-color:var(--accent);
	background-color:#fff;
	box-shadow:0 0 0 3px rgba(181, 84, 43, 0.18);
}

.form-input[aria-invalid="true"],
.form-select[aria-invalid="true"],
.form-textarea[aria-invalid="true"] {
	border-color:#a8241e;
	background-color:#fff8f6;
}

.form-error {
	font-size:var(--fs-xs);
	color:#a8241e;
	margin-top:var(--space-4xs);
	display:none;
	font-weight:500;
}

.form-group.has-error .form-error {
	display:block;
}

.form-check {
	display:grid;
	grid-template-columns:24px 1fr;
	gap:var(--space-sm);
	align-items:start;
	margin-top:var(--space-xs);
}

.form-check-input {
	width:20px;
	height:20px;
	margin-top:2px;
	accent-color:var(--accent);
	cursor:pointer;
}

.form-check-label {
	font-size:var(--fs-sm);
	color:var(--ink-soft);
	line-height:var(--leading-snug);
}

.form-status {
	padding:var(--space-md);
	border-radius:var(--radius-sm);
	font-size:var(--fs-base);
	display:none;
	border:1px solid var(--line);
}

.form-status.is-success {
	display:block;
	background-color:#ecf3ea;
	border-color:#688c5e;
	color:#1e3a15;
}

.form-status.is-error {
	display:block;
	background-color:#fbf0ee;
	border-color:#c95748;
	color:#5c1810;
}

.site-footer {
	background-color:var(--surface);
	border-top:1px solid var(--line);
	padding-top:var(--space-3xl);
	padding-bottom:var(--space-2xl);
	margin-top:auto;
}

.footer-main-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-2xl);
	margin-bottom:var(--space-2xl);
}

@media (min-width: 768px) {
	.footer-main-grid {
		grid-template-columns:1.4fr 1fr 1fr;
		gap:var(--space-xl);
	}
}

.footer-brand-col {
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}

.footer-logo {
	height:3.8rem;
	width:auto;
	max-width:240px;
	object-fit:contain;
}

.footer-lede {
	font-size:var(--fs-sm);
	color:var(--ink-soft);
	max-width:36ch;
}

.footer-heading {
	font-family:var(--vuka-d2f);
	font-size:var(--fs-md);
	font-weight:700;
	margin-bottom:var(--space-md);
	color:var(--ink);
	letter-spacing:var(--tracking-tight);
}

.footer-nav-list {
	display:flex;
	flex-direction:column;
	gap:var(--space-xs);
}

.footer-nav-link {
	font-size:var(--fs-base);
	color:var(--ink);
	text-decoration:none;
	transition:color var(--duration-fast) var(--ease-standard);
	display:inline-flex;
	align-items:center;
	gap:var(--space-3xs);
}

.footer-nav-link:hover {
	color:var(--accent);
}

.footer-nav-link:active {
	color:var(--ink);
}

.footer-nav-link:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
	border-radius:var(--radius-xs);
}

.footer-contact-block {
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	font-size:var(--fs-sm);
	color:var(--ink);
}

.footer-contact-item {
	display:flex;
	align-items:flex-start;
	gap:var(--space-xs);
}

.footer-contact-item .icon {
	width:18px;
	height:18px;
	color:var(--accent);
	margin-top:2px;
}

.footer-contact-link {
	color:var(--ink);
	text-decoration:underline;
	text-decoration-color:var(--line);
	transition:color var(--duration-fast) var(--ease-standard), text-decoration-color var(--duration-fast) var(--ease-standard);
}

.footer-contact-link:hover {
	color:var(--accent);
	text-decoration-color:var(--accent);
}

.footer-contact-link:active {
	color:var(--ink);
}

.footer-contact-link:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.footer-legal-bar {
	border-top:1px solid var(--line);
	padding-top:var(--space-lg);
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
	align-items:flex-start;
	font-family:var(--vuka-4c1);
	font-size:var(--fs-xs);
	color:var(--ink-soft);
}

@media (min-width: 960px) {
	.footer-legal-bar {
		flex-direction:row;
		align-items:center;
		justify-content:space-between;
	}
}

.footer-legal-links {
	display:flex;
	flex-wrap:wrap;
	gap:var(--space-sm) var(--space-md);
	align-items:center;
}

.footer-legal-link {
	color:var(--ink-soft);
	text-decoration:none;
	transition:color var(--duration-fast) var(--ease-standard);
}

.footer-legal-link:hover {
	color:var(--ink);
	text-decoration:underline;
}

.footer-legal-link:active {
	color:var(--accent);
}

.footer-legal-link:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
	border-radius:var(--radius-xs);
}

.btn-cookie-reopen {
	appearance:none;
	background:none;
	border:0;
	padding:0;
	font-family:var(--vuka-4c1);
	font-size:var(--fs-xs);
	color:var(--ink-soft);
	text-decoration:underline;
	cursor:pointer;
	transition:color var(--duration-fast) var(--ease-standard);
}

.btn-cookie-reopen:hover {
	color:var(--accent);
}

.btn-cookie-reopen:active {
	color:var(--ink);
}

.btn-cookie-reopen:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.cookie-banner {
	position:fixed;
	inset:auto 0 0 0;
	background-color:var(--surface);
	border-top:2px solid var(--ink);
	box-shadow:0 -8px 24px rgba(44, 40, 33, 0.14);
	z-index:95;
	padding:var(--space-sm) var(--container-pad);
	display:none;
}

.cookie-banner.is-visible {
	display:block;
}

@media (max-width: 959px) {
	.cookie-banner {
		inset:auto 0 var(--dock-height) 0;
		max-height:22vh;
		overflow-y:auto;
	}
}

.cookie-banner-inner {
	max-width:var(--container-max);
	margin-inline:auto;
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	align-items:flex-start;
}

@media (min-width: 768px) {
	.cookie-banner-inner {
		flex-direction:row;
		align-items:center;
		justify-content:space-between;
	}
}

.cookie-text {
	font-size:var(--fs-xs);
	line-height:var(--leading-snug);
	color:var(--ink);
	max-width:75ch;
	margin:0;
}

.cookie-text a {
	color:var(--ink);
	text-decoration:underline;
	font-weight:600;
}

.cookie-text a:hover {
	color:var(--accent);
}

.cookie-actions {
	display:flex;
	align-items:center;
	gap:var(--space-xs);
	flex-shrink:0;
}

.cookie-btn {
	padding:0.45rem 1rem;
	font-size:var(--fs-xs);
	min-height:38px;
}

.chat-launcher {
	position:fixed;
	bottom:calc(var(--dock-height) + 12px);
	right:clamp(12px, 3vw, 24px);
	width:52px;
	height:52px;
	border-radius:50%;
	background-color:var(--ink);
	color:var(--ground);
	border:1px solid var(--line);
	box-shadow:0 4px 14px rgba(44, 40, 33, 0.22);
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:82;
	cursor:pointer;
	transition:transform var(--duration-fast) var(--ease-standard),
							background-color var(--duration-fast) var(--ease-standard),
							box-shadow var(--duration-fast) var(--ease-standard);
}

@media (min-width: 960px) {
	.chat-launcher {
		bottom:24px;
		width:56px;
		height:56px;
	}
}

.chat-launcher .icon {
	width:24px;
	height:24px;
}

.chat-launcher:hover {
	background-color:var(--accent);
	transform:translateY(-2px);
	box-shadow:0 6px 18px rgba(181, 84, 43, 0.32);
}

.chat-launcher:active {
	background-color:#873b1a;
	transform:translateY(0);
}

.chat-launcher:focus-visible {
	outline:3px solid var(--accent);
	outline-offset:3px;
}

.chat-launcher-badge {
	position:absolute;
	top:-2px;
	right:-2px;
	background-color:var(--accent);
	color:var(--accent-ink);
	font-family:var(--vuka-4c1);
	font-size:11px;
	font-weight:700;
	min-width:18px;
	height:18px;
	border-radius:9px;
	display:none;
	align-items:center;
	justify-content:center;
	padding-inline:4px;
	border:2px solid var(--ground);
}

.chat-panel {
	position:fixed;
	bottom:calc(var(--dock-height) + 72px);
	right:clamp(12px, 3vw, 24px);
	width:min(380px, calc(100vw - 24px));
	height:min(520px, calc(100vh - var(--dock-height) - 90px));
	background-color:var(--ground);
	border:1px solid var(--line);
	border-radius:var(--radius-md);
	box-shadow:0 12px 36px rgba(44, 40, 33, 0.18);
	z-index:84;
	display:flex;
	flex-direction:column;
	overflow:hidden;
	opacity:0;
	pointer-events:none;
	transform:translateY(12px);
	transition:opacity var(--duration-medium) var(--ease-standard), transform var(--duration-medium) var(--ease-standard);
}

@media (min-width: 960px) {
	.chat-panel {
		bottom:90px;
		height:540px;
	}
}

.chat-panel.is-open {
	opacity:1;
	pointer-events:auto;
	transform:translateY(0);
}

.chat-head {
	background-color:var(--surface);
	border-bottom:1px solid var(--line);
	padding:var(--space-sm) var(--space-md);
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.chat-head-title {
	font-family:var(--vuka-d2f);
	font-size:var(--fs-md);
	font-weight:700;
	display:flex;
	align-items:center;
	gap:var(--space-2xs);
}

.chat-status-dot {
	width:8px;
	height:8px;
	border-radius:50%;
	background-color:#3b7c33;
}

.chat-close {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:32px;
	border-radius:var(--radius-xs);
	border:1px solid var(--line);
	background-color:var(--ground);
	color:var(--ink);
	transition:background-color var(--duration-fast) var(--ease-standard);
}

.chat-close:hover {
	background-color:var(--surface-2);
}

.chat-close:active {
	background-color:var(--line);
}

.chat-close:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}

.chat-body {
	flex:1 1 auto;
	overflow-y:auto;
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
	gap:var(--space-sm);
	background-color:var(--ground);
}

.chat-msg {
	max-width:82%;
	padding:var(--space-xs) var(--space-sm);
	border-radius:var(--radius-sm);
	font-size:var(--fs-sm);
	line-height:var(--leading-snug);
}

.chat-msg-agent {
	align-self:flex-start;
	background-color:var(--surface);
	border:1px solid var(--line);
	color:var(--ink);
}

.chat-msg-user {
	align-self:flex-end;
	background-color:var(--ink);
	color:var(--ground);
}

.chat-init-form {
	display:flex;
	flex-direction:column;
	gap:var(--space-xs);
	background-color:var(--surface);
	padding:var(--space-sm);
	border-radius:var(--radius-sm);
	border:1px solid var(--line);
}

.chat-footer {
	border-top:1px solid var(--line);
	padding:var(--space-xs) var(--space-sm);
	background-color:var(--surface);
}

.chat-input-row {
	display:flex;
	gap:var(--space-2xs);
}

.chat-input {
	flex:1 1 auto;
	background-color:var(--ground);
	border:1px solid var(--line);
	border-radius:var(--radius-sm);
	padding:var(--space-2xs) var(--space-sm);
	font-size:var(--fs-sm);
}

.chat-input:focus {
	outline:none;
	border-color:var(--accent);
}

.chat-send-btn {
	background-color:var(--accent);
	color:var(--accent-ink);
	border:1px solid var(--accent);
	border-radius:var(--radius-sm);
	padding:var(--space-2xs) var(--space-sm);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:44px;
	min-height:44px;
	transition:background-color var(--duration-fast) var(--ease-standard);
}

.chat-send-btn:hover {
	background-color:#9e4620;
}

.chat-send-btn:active {
	background-color:#873b1a;
}

.chat-send-btn:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:2px;
}
