/**
 * Buchly Dashboard – 1:1 BillMore app.billmore.com/dashboard
 */

:root {
	/* BillMore Dashboard (app.billmore.com) – Blau */
	--bm-brand: 37 99 235;
	--bm-brand-light: 59 130 246;
	--bm-brand-dark: 29 78 216;
	--bm-brand-muted: 239 246 255;
	--buchly-orange: 249 115 22;
	--buchly-orange-light: 251 146 60;
	--buchly-orange-dark: 194 65 12;
	--bm-sidebar-w: 16rem;
	--buchly-field-border: #94a3b8;
	--buchly-field-border-hover: #64748b;
	--buchly-field-bg: #ffffff;
	--buchly-field-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

html.buchly-dashboard-html,
body.billmore-dashboard-page {
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 100%;
	background: #f3f4f6;
	overflow-x: clip;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

body.billmore-dashboard-page.billmore-fullpage .entry-content,
body.billmore-dashboard-page.billmore-fullpage .wp-block-post-content,
body.billmore-dashboard-page.billmore-fullpage main.wp-block-group {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
}

body.billmore-dashboard-page .buchly-dashboard-root {
	width: 100%;
	max-width: 100%;
	margin: 0;
}

.buchly-dashboard-root {
	min-height: 100vh;
	min-height: 100dvh;
	background: #f3f4f6;
}

/* ---- Sidebar (BillMore: lg:w-64 fixed) ---- */
.bm-app-sidebar {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
	display: none;
	width: var(--bm-sidebar-w);
	height: 100vh;
	height: 100dvh;
	border-right: 1px solid #e5e7eb;
	background: #fff;
}

.bm-app-sidebar-inner {
	display: flex;
	height: 100%;
	flex-direction: column;
	gap: 0.5rem;
	overflow-y: auto;
	padding: 0 1rem 1rem;
	scrollbar-width: thin;
	scrollbar-color: #d1d5db transparent;
}

.bm-app-sidebar-inner::-webkit-scrollbar {
	width: 6px;
}

.bm-app-sidebar-inner::-webkit-scrollbar-thumb {
	background: #d1d5db;
	border-radius: 999px;
}

.bm-app-sidebar-inner::-webkit-scrollbar-track {
	background: transparent;
}

.bm-app-sidebar-logo {
	display: flex;
	height: 4rem;
	flex-shrink: 0;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 0.25rem;
}

.bm-app-sidebar-close {
	display: none;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border: 0;
	border-radius: 999px;
	background: #f3f4f6;
	color: #111827;
	cursor: pointer;
}

.bm-app-sidebar-close svg {
	width: 1.1rem;
	height: 1.1rem;
}

.bm-app-sidebar-backdrop {
	display: none;
	pointer-events: none;
}

.buchly-dashboard-root.bm-sidebar-open .bm-app-sidebar-backdrop {
	pointer-events: auto;
}

.bm-app-sidebar-logo img {
	max-width: 7.5rem;
	height: auto;
}

.bm-app-sidebar-nav {
	display: flex;
	flex-direction: column;
	gap: 0.0625rem;
}

.bm-app-sidebar-link {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
	padding: 0.5625rem 0.75rem;
	text-align: left;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.25;
	color: #374151;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}

.bm-app-sidebar-link svg {
	width: 1.125rem;
	height: 1.125rem;
	flex-shrink: 0;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.bm-app-sidebar-link:hover {
	background: #f3f4f6;
	color: #111827;
}

.bm-app-sidebar-link.is-active,
.bm-app-sidebar-link--sub.is-active {
	background: rgb(var(--bm-brand-muted));
	color: rgb(var(--bm-brand));
	font-weight: 600;
}

.bm-app-sidebar-link.is-active {
	box-shadow: inset 3px 0 0 rgb(var(--bm-brand));
}

.bm-app-sidebar-link--href {
	font-weight: 500;
}

/* ---- Main ---- */
.bm-app-main {
	min-height: 100vh;
	min-height: 100dvh;
}

.bm-app-topbar {
	position: sticky;
	top: 0;
	z-index: 40;
	display: flex;
	height: 4rem;
	flex-shrink: 0;
	align-items: center;
	gap: 1rem;
	border-bottom: 1px solid #e5e7eb;
	background: #fff;
	padding: 0 1rem;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	overflow: visible;
}

.bm-app-menu-btn {
	display: inline-flex;
	margin: -0.625rem;
	border: 0;
	background: transparent;
	padding: 0.625rem;
	color: #374151;
	cursor: pointer;
}

.bm-app-menu-btn svg {
	width: 1.5rem;
	height: 1.5rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.5;
}

.bm-app-topbar-spacer {
	flex: 1 1 auto;
}

.bm-app-topbar-actions {
	display: flex;
	align-items: center;
	gap: 1rem;
	overflow: visible;
}

.bm-app-topbar-chip {
	display: none;
	align-items: center;
	gap: 0.35rem;
	border: 0;
	border-radius: 0.75rem;
	background: transparent;
	padding: 0.35rem 0.5rem;
	font-size: 0.875rem;
	font-weight: 600;
	color: #111827;
	cursor: pointer;
}

.bm-app-topbar-chip:hover {
	background: #f3f4f6;
}

.bm-app-topbar-chevron {
	width: 1.25rem;
	height: 1.25rem;
	color: #9ca3af;
	flex-shrink: 0;
	transition: transform 0.15s ease;
}

.bm-app-topbar-chip img {
	border-radius: 999px;
}

.bm-app-topbar-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 999px;
	background: #f3f4f6;
	color: #6b7280;
}

.bm-app-topbar-icon svg {
	width: 1.25rem;
	height: 1.25rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.bm-app-topbar-divider {
	display: none;
	width: 1px;
	height: 1.5rem;
	background: #e5e7eb;
}

.bm-app-logout-form {
	margin: 0;
}

.bm-app-topbar-menu {
	position: relative;
}

.bm-app-topbar-dropdown {
	display: none;
	position: absolute;
	right: 0;
	top: calc(100% + 0.35rem);
	z-index: 100;
	min-width: 11rem;
	border: 1px solid #e5e7eb;
	border-radius: 0.75rem;
	background: #fff;
	padding: 0.35rem 0;
	box-shadow: 0 10px 25px rgba(15, 23, 42, 0.12);
}

.bm-app-topbar-dropdown--user {
	min-width: 13.5rem;
	padding: 0.45rem 0 0.35rem;
}

.bm-app-topbar-menu.is-open .bm-app-topbar-dropdown {
	display: block;
}

.bm-app-topbar-menu.is-open .bm-app-topbar-chevron {
	transform: rotate(180deg);
}

.bm-app-topbar-dropdown a,
.bm-app-topbar-dropdown button {
	display: block;
	width: 100%;
	border: 0;
	background: transparent;
	padding: 0.5rem 0.85rem;
	text-align: left;
	font-size: 0.875rem;
	font-weight: 500;
	color: #374151;
	text-decoration: none;
	cursor: pointer;
}

.bm-app-topbar-dropdown-item {
	display: flex !important;
	align-items: center;
	gap: 0.65rem;
	width: 100%;
	border: 0;
	background: transparent;
	padding: 0.55rem 0.9rem;
	text-align: left;
	font-size: 0.875rem;
	font-weight: 500;
	color: #111827;
	text-decoration: none;
	cursor: pointer;
}

.bm-app-topbar-dropdown-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.125rem;
	height: 1.125rem;
	flex-shrink: 0;
	color: #64748b;
}

.bm-app-topbar-dropdown-icon svg {
	width: 1.125rem;
	height: 1.125rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.bm-app-topbar-dropdown a:hover,
.bm-app-topbar-dropdown button:hover,
.bm-app-topbar-dropdown-item:hover {
	background: #f3f4f6;
}

.bm-app-content {
	min-height: calc(100vh - 4rem - 3.5rem);
	padding: 0.75rem;
	background: #f3f4f6;
}

@media (min-width: 640px) {
	.bm-app-content {
		padding: 2rem;
	}
}

/* ---- BillMore overview header ---- */
.bm-dash-page-title {
	margin: 0;
	font-family: Lexend, Inter, sans-serif;
	font-size: 1.875rem;
	font-weight: 600;
	line-height: 1.2;
	color: #111827;
}

.bm-dash-greeting {
	margin: 0.75rem 0 1.25rem;
	font-size: 1.25rem;
	font-weight: 500;
	color: #111827;
}

.bm-dash-welcome {
	margin-bottom: 1rem;
	border-radius: 0.375rem;
	border-top: 3px solid rgb(var(--bm-brand));
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.05);
}

.bm-dash-welcome-inner {
	padding: 1rem 1rem 1.25rem;
}

@media (min-width: 640px) {
	.bm-dash-welcome-inner {
		padding: 1rem 2rem 1.25rem;
	}
}

.bm-dash-welcome h3 {
	margin: 0.75rem 0 0;
	font-size: 1rem;
	font-weight: 600;
	color: rgb(var(--bm-brand));
}

.bm-dash-welcome .bm-dash-trial {
	margin: 0.5rem 0 0;
	font-size: 1.125rem;
	font-weight: 700;
	color: #111827;
}

.bm-dash-welcome p {
	margin: 0.5rem 0 0;
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
}

.bm-dash-welcome-cta {
	margin-top: 1rem;
}

.bm-dash-welcome-cta a,
.bm-dash-welcome-cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	border: 0;
	border-radius: 0.375rem;
	background: rgb(var(--bm-brand));
	padding: 0.5rem 0.75rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff !important;
	text-decoration: none;
	cursor: pointer;
}

.bm-dash-welcome-cta a:hover,
.bm-dash-welcome-cta-btn:hover {
	background: rgb(var(--bm-brand-dark));
}

.bm-dash-stats {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

@media (min-width: 1024px) {
	.bm-dash-stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bm-dash-stat {
	position: relative;
	overflow: hidden;
	border-radius: 0.375rem;
	background: #fff;
	padding: 1.25rem 1rem 0;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.05);
}

@media (min-width: 640px) {
	.bm-dash-stat {
		padding: 1.5rem 1.5rem 0;
	}
}

.bm-dash-stat-icon {
	position: absolute;
	border-radius: 0.375rem;
	padding: 0.75rem;
}

.bm-dash-stat-icon svg {
	width: 1.5rem;
	height: 1.5rem;
	color: #fff;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.5;
}

.bm-dash-stat-icon--dark {
	background: rgb(var(--bm-brand-dark));
}

.bm-dash-stat-icon--light {
	background: rgb(var(--bm-brand-light));
}

.bm-dash-stat-icon--green {
	background: #4ade80;
}

.bm-dash-stat-label {
	margin: 0 0 0 4rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 0.875rem;
	font-weight: 500;
	color: #6b7280;
}

.bm-dash-stat-value {
	margin: 0 0 0 4rem;
	padding: 0 0 1.5rem;
	font-size: 1.25rem;
	font-weight: 600;
	color: #111827;
}

.bm-dash-bottom {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	margin-top: 1rem;
}

@media (min-width: 1024px) {
	.bm-dash-bottom {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bm-dash-panel {
	border-radius: 0.375rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.05);
}

.bm-dash-panel--actions .bm-dash-actions {
	display: flex;
	flex-direction: column;
	height: 23rem;
	overflow: auto;
}

.bm-dash-panel-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.25rem 1rem 0;
	border-bottom: 1px solid #f3f4f6;
}

.bm-dash-panel-head h3 {
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	color: #111827;
}

.bm-dash-panel-tool {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 0.375rem;
	background: transparent;
	padding: 0.35rem;
	color: #6b7280;
	cursor: pointer;
}

.bm-dash-panel-tool:hover {
	background: #f3f4f6;
	color: #111827;
}

.bm-dash-panel-tool svg {
	width: 1.125rem;
	height: 1.125rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
}

.bm-dash-actions {
	margin: 0;
	padding: 0.5rem 0 0.25rem;
	list-style: none;
}

.bm-dash-action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	border: 0;
	border-top: 1px solid #f3f4f6;
	background: transparent;
	padding: 0.875rem 1.25rem;
	text-align: left;
	font-size: 0.875rem;
	font-weight: 500;
	color: #374151;
	cursor: pointer;
}

.bm-dash-action:first-child {
	border-top: 0;
}

.bm-dash-action:hover {
	background: #f3f4f6;
	color: #111827;
}

.bm-dash-action:active {
	background: #e5e7eb;
}

.bm-dash-action-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 0.375rem;
	background: #f3f4f6;
	color: #6b7280;
}

.bm-dash-action-icon svg {
	width: 1rem;
	height: 1rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
}

.bm-dash-action-label {
	flex: 1 1 auto;
}

.bm-dash-action-arrow {
	color: #9ca3af;
	font-size: 1rem;
}

.bm-dash-invoices {
	padding: 0 1rem 1rem;
	min-height: 23rem;
	display: flex;
	flex-direction: column;
}

.bm-dash-invoices-empty {
	margin: auto 0;
	padding: 2rem 1rem;
	text-align: center;
	font-size: 0.875rem;
	font-style: italic;
	color: #9ca3af;
}

.bm-dash-invoice-list {
	margin: 0.5rem 0 0;
	padding: 0;
	list-style: none;
}

.bm-dash-invoice-item {
	border-top: 1px solid #f3f4f6;
	font-size: 0.875rem;
}

.bm-dash-invoice-item:first-child {
	border-top: 0;
}

.bm-dash-invoice-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.65rem 0;
	color: inherit;
	text-decoration: none;
}

.bm-dash-invoice-link:hover {
	color: rgb(var(--bm-brand-dark));
}

.bm-dash-invoice-link:hover .bm-dash-invoice-meta strong {
	color: rgb(var(--bm-brand-dark));
}

.bm-dash-invoice-meta {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.bm-dash-invoice-meta strong {
	font-weight: 600;
	color: #111827;
}

.bm-dash-invoice-meta span {
	color: #6b7280;
	font-size: 0.8125rem;
}

.bm-dash-invoice-amount {
	font-weight: 600;
	color: #111827;
	white-space: nowrap;
}

.bm-dash-desktop {
	margin-top: 1rem;
}

.bm-dash-desktop-body {
	padding: 0 1rem 1.25rem;
}

.bm-dash-desktop-lead {
	margin: 0.5rem 0 0.75rem;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-dash-desktop-meta {
	margin: 0;
	padding-left: 1.1rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: #374151;
}

.bm-dash-desktop-meta li {
	margin-bottom: 0.35rem;
}

.bm-dash-desktop-locked {
	color: #b91c1c;
}

.bm-dash-activation-box {
	margin: 0.75rem 0 1rem;
	padding: 0.85rem 1rem;
	border: 1px dashed rgb(var(--buchly-orange) / 0.45);
	border-radius: 0.5rem;
	background: rgb(var(--buchly-orange) / 0.06);
}

.bm-dash-activation-label {
	margin: 0 0 0.35rem;
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #9a3412;
}

.bm-dash-activation-code code {
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: #111827;
}

.bm-dash-activation-until {
	margin: 0.35rem 0 0.65rem;
	font-size: 0.8125rem;
	color: #6b7280;
}

.bm-dash-desktop-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 1rem;
}

.bm-dash-desktop-btn {
	display: inline-flex;
	align-items: center;
	border-radius: 0.375rem;
	background: rgb(var(--buchly-orange));
	padding: 0.45rem 0.75rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #fff !important;
	text-decoration: none;
}

.bm-dash-desktop-btn:hover {
	background: rgb(var(--buchly-orange-dark));
}

.bm-dash-desktop-btn--ghost {
	background: #fff;
	border: 1px solid #e5e7eb;
	color: #374151 !important;
}

.bm-dash-desktop-btn--ghost:hover {
	background: #f9fafb;
}

.buchly-dashboard-workspace .bm-dash-desktop.acri-dash-section {
	margin-bottom: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

/* ---- ACRI content inside BillMore shell ---- */
.buchly-dashboard-workspace.acri-wrap {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.buchly-dashboard-workspace .acri-dash-section.is-hidden {
	display: none !important;
}

.buchly-dashboard-workspace .acri-dash-search-standalone:not(.is-hidden) {
	display: block !important;
}

.buchly-dashboard-workspace .acri-dash-search-standalone.is-hidden {
	display: none !important;
}

.buchly-dashboard-workspace .acri-topbar,
.buchly-dashboard-workspace #acri-splash,
.buchly-dashboard-workspace .acri-dash-sidebar,
.buchly-dashboard-workspace article.acri-dash-sidebar,
.buchly-dashboard-workspace .acri-footer-marketing,
.buchly-dashboard-workspace .acri-app-footer,
.buchly-dashboard-workspace .acri-mobile-tabs {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	max-height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.buchly-dashboard-workspace .acri-dash-grid {
	display: block !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	grid-template-columns: none !important;
}

.buchly-dashboard-workspace .acri-dash-section,
.buchly-dashboard-workspace .acri-card {
	grid-column: auto !important;
	width: 100% !important;
	max-width: none !important;
	margin-bottom: 1rem;
	border-radius: 0.375rem;
	border-color: rgba(15, 23, 42, 0.05);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
}

.buchly-dashboard-workspace .acri-dash-section.is-hidden {
	display: none !important;
}

.buchly-dashboard-workspace .acri-dash-hero {
	display: none !important;
}

.buchly-dashboard-workspace .bm-dash-overview:not(.is-hidden),
.buchly-dashboard-workspace .bm-dash-overview-panels:not(.is-hidden) {
	display: block !important;
}

.bm-dash-mobile {
	margin-top: 1rem;
}

.buchly-dashboard-workspace .bm-dash-mobile.acri-dash-section {
	margin-bottom: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.buchly-dashboard-workspace .acri-dash-legacy-overview {
	display: none !important;
}

.buchly-dashboard-workspace .billmore-auth-notice {
	margin: 0 0 1rem;
}

.buchly-dashboard-workspace .bm-dash-overview.acri-dash-section {
	margin-bottom: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.buchly-dashboard-workspace .bm-dash-overview-panels.acri-dash-section {
	margin-bottom: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.buchly-dashboard-workspace .acri-btn-primary {
	border-color: rgb(var(--bm-brand-dark));
	background: linear-gradient(135deg, rgb(var(--bm-brand-dark)), rgb(var(--bm-brand)));
	color: #fff !important;
}

/* Link-Buttons: keine lila Standard-Linkfarbe auf farbigem Hintergrund */
.buchly-dashboard-workspace a[class*="-btn"],
.buchly-dashboard-workspace a.acri-btn,
.buchly-dashboard-workspace a.bm-extensions-btn,
.buchly-dashboard-workspace a.bm-settings-import-btn,
.buchly-dashboard-workspace a.bm-dash-desktop-btn {
	text-decoration: none !important;
}

.buchly-dashboard-workspace a.bm-extensions-btn--primary,
.buchly-dashboard-workspace a.bm-extensions-btn--primary:visited,
.buchly-dashboard-workspace a.bm-extensions-btn--primary:hover,
.buchly-dashboard-workspace a.bm-settings-import-btn,
.buchly-dashboard-workspace a.bm-settings-import-btn:visited,
.buchly-dashboard-workspace a.bm-settings-import-btn:hover,
.buchly-dashboard-workspace a.acri-btn-primary,
.buchly-dashboard-workspace a.acri-btn-primary:visited,
.buchly-dashboard-workspace a.acri-btn-primary:hover,
.buchly-dashboard-workspace a.bm-dash-desktop-btn:not(.bm-dash-desktop-btn--ghost),
.buchly-dashboard-workspace a.bm-dash-desktop-btn:not(.bm-dash-desktop-btn--ghost):visited,
.buchly-dashboard-workspace a.bm-dash-desktop-btn:not(.bm-dash-desktop-btn--ghost):hover {
	color: #fff !important;
}

.buchly-dashboard-workspace a.bm-extensions-btn--outline,
.buchly-dashboard-workspace a.bm-extensions-btn--outline:visited,
.buchly-dashboard-workspace a.bm-extensions-btn--outline:hover {
	color: #334155 !important;
}

.buchly-dashboard-workspace a.acri-btn:not(.acri-btn-primary):not(.acri-btn-ghost),
.buchly-dashboard-workspace a.acri-btn:not(.acri-btn-primary):not(.acri-btn-ghost):visited,
.buchly-dashboard-workspace a.acri-btn:not(.acri-btn-primary):not(.acri-btn-ghost):hover {
	color: #1e3a8a !important;
}

.buchly-dashboard-workspace .acri-dash-tab.is-active {
	border-color: rgb(var(--bm-brand-light));
	box-shadow: inset 3px 0 0 rgb(var(--bm-brand));
}

/* Sichtbare Eingabe-Kaesten im Dashboard */
.buchly-dashboard-workspace .acri-form input,
.buchly-dashboard-workspace .acri-form textarea,
.buchly-dashboard-workspace .acri-form select,
.buchly-dashboard-workspace .acri-dash-search-card input,
.buchly-dashboard-workspace .acri-dash-search-standalone input {
	border: 1.5px solid var(--buchly-field-border) !important;
	border-radius: 0.625rem !important;
	background: var(--buchly-field-bg) !important;
	box-shadow: var(--buchly-field-shadow) !important;
	color: #111827 !important;
}

.buchly-dashboard-workspace .acri-form input:hover,
.buchly-dashboard-workspace .acri-form textarea:hover,
.buchly-dashboard-workspace .acri-form select:hover,
.buchly-dashboard-workspace .acri-dash-search-card input:hover,
.buchly-dashboard-workspace .acri-dash-search-standalone input:hover {
	border-color: var(--buchly-field-border-hover) !important;
}

.buchly-dashboard-workspace .acri-form input:focus,
.buchly-dashboard-workspace .acri-form textarea:focus,
.buchly-dashboard-workspace .acri-form select:focus,
.buchly-dashboard-workspace .acri-dash-search-card input:focus,
.buchly-dashboard-workspace .acri-dash-search-standalone input:focus {
	outline: none !important;
	border-color: rgb(var(--buchly-orange)) !important;
	box-shadow: 0 0 0 3px rgba(var(--buchly-orange), 0.22), var(--buchly-field-shadow) !important;
}

.bm-app-sidebar-link.is-locked {
	opacity: 0.72;
}

.bm-sidebar-lock {
	margin-left: auto;
	font-size: 0.75rem;
	line-height: 1;
}

.bm-upgrade-dialog {
	border: 0;
	border-radius: 0.75rem;
	padding: 0;
	max-width: 420px;
	box-shadow: 0 20px 50px rgba(15, 23, 42, 0.2);
}

.bm-upgrade-dialog::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-upgrade-dialog-inner {
	padding: 1.25rem 1.25rem 1rem;
	margin: 0;
}

.bm-upgrade-dialog-title {
	margin: 0 0 0.5rem;
	font-size: 1.125rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-upgrade-dialog-msg {
	margin: 0 0 1rem;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #64748b;
}

.bm-upgrade-dialog-actions {
	display: flex;
	justify-content: flex-end;
	gap: 0.5rem;
}

.bm-upgrade-dialog-btn {
	border: 1px solid #e5e7eb;
	background: #fff;
	border-radius: 0.375rem;
	padding: 0.45rem 0.75rem;
	font-size: 0.8125rem;
	cursor: pointer;
}

.bm-upgrade-dialog-btn--primary {
	background: rgb(var(--buchly-orange));
	border-color: rgb(var(--buchly-orange));
	color: #fff;
	font-weight: 600;
}

/* Footer */
.bm-app-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.35rem 0.75rem;
	padding: 1rem;
	background: #f3f4f6;
	font-size: 0.875rem;
	font-weight: 500;
	color: #6b7280;
}

.bm-app-footer a {
	color: rgb(var(--buchly-orange));
	text-decoration: none;
}

.bm-app-footer a:hover {
	color: rgb(var(--buchly-orange-light));
	text-decoration: underline;
}

.bm-app-footer-sep {
	display: none;
	color: #9ca3af;
	font-size: 0.75rem;
}

@media (min-width: 640px) {
	.bm-app-topbar {
		padding: 0 1.5rem;
	}

	.bm-app-topbar-chip,
	.bm-app-topbar-divider {
		display: inline-flex;
	}

	.bm-app-menu-btn {
		display: none;
	}

	.bm-app-sidebar {
		display: flex;
	}

	.bm-app-main {
		padding-left: var(--bm-sidebar-w);
	}

	.bm-app-footer-sep {
		display: inline;
	}
}

.buchly-dashboard-root.bm-sidebar-open .bm-app-sidebar {
	display: flex;
}

@media (max-width: 639px) {
	.bm-app-sidebar {
		z-index: 80;
		width: min(18.5rem, 86vw);
		box-shadow: 12px 0 40px rgba(15, 23, 42, 0.18);
		transform: translateX(-105%);
		transition: transform 0.24s ease;
		will-change: transform;
	}

	.buchly-dashboard-root.bm-sidebar-open .bm-app-sidebar {
		transform: translateX(0);
	}

	.bm-app-sidebar-close {
		display: inline-flex;
	}

	.bm-app-sidebar-backdrop {
		position: fixed;
		inset: 0;
		z-index: 70;
		display: none;
		background: rgba(15, 23, 42, 0.45);
	}

	.buchly-dashboard-root.bm-sidebar-open .bm-app-sidebar-backdrop {
		display: block;
	}

	.bm-app-menu-btn {
		min-width: 2.75rem;
		min-height: 2.75rem;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}

	.bm-app-topbar {
		padding-left: 0.75rem;
		padding-right: 0.75rem;
	}

	.bm-app-topbar-chip {
		display: inline-flex;
		max-width: 7.5rem;
		min-height: 2.5rem;
		touch-action: manipulation;
	}

	.bm-app-topbar-chip > span:nth-child(2) {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.bm-app-topbar-divider {
		display: none;
	}

	.bm-app-topbar-dropdown {
		position: fixed;
		left: 0.75rem;
		right: 0.75rem;
		top: calc(4rem + env(safe-area-inset-top, 0px));
		min-width: 0;
		max-height: calc(100dvh - 5.5rem - env(safe-area-inset-bottom, 0px));
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.bm-app-main {
		width: 100%;
		max-width: 100%;
		overflow-x: clip;
	}

	.bm-app-content {
		padding: 0.85rem 0.75rem calc(1.5rem + env(safe-area-inset-bottom, 0px));
		overflow-x: clip;
	}

	.bm-doc-toolbar {
		align-items: stretch;
	}

	.bm-doc-toolbar-actions {
		width: 100%;
		flex-wrap: wrap;
	}

	.bm-doc-tool {
		flex: 1 1 calc(50% - 0.5rem);
		justify-content: center;
		min-height: 2.75rem;
		touch-action: manipulation;
	}

	.bm-doc-tool--save {
		flex: 1 1 100%;
	}

	.bm-doc-toolbar--billmore {
		flex-direction: column;
		gap: 0.75rem;
	}

	.bm-doc-toolbar-actions--billmore {
		width: 100%;
		flex-wrap: wrap;
	}

	.bm-doc-items-actions {
		grid-template-columns: 1fr;
	}

	.bm-doc-meta-row {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	.bm-doc-meta-input--value {
		margin-left: 0;
		text-align: left;
		width: 100%;
	}

	.bm-doc-list-toolbar,
	.bm-doc-meta-grid,
	.bm-doc-top-grid {
		grid-template-columns: 1fr !important;
	}

	.bm-doc-list-table-wrap,
	.bm-euer-table,
	.bm-stats-report,
	.acri-line-item-row,
	.acri-table-wrap {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		max-width: 100%;
	}

	.bm-settings-report {
		padding: 1.25rem 1rem 1.75rem;
	}

	.bm-settings-head {
		margin-bottom: 1.25rem;
	}

	.bm-settings-kicker {
		font-size: 0.75rem;
	}

	.bm-settings-title {
		font-size: 1.45rem;
	}

	.buchly-dashboard-workspace .acri-card,
	.buchly-dashboard-workspace .acri-dash-section,
	.buchly-dashboard-workspace .bm-settings-page {
		border-radius: 0.75rem;
	}

	.bm-app-sidebar-link,
	.bm-app-sidebar-group-toggle {
		min-height: 2.75rem;
		touch-action: manipulation;
	}
}

html.bm-sidebar-lock,
body.bm-sidebar-lock {
	overflow: hidden;
}

body.bm-sidebar-lock {
	position: fixed;
	width: 100%;
	left: 0;
	right: 0;
}

/* Guest */
.buchly-dashboard-guest {
	min-height: 100vh;
	background: #f3f4f6;
	padding: 2rem 1rem;
}

.buchly-dashboard-guest-wrap {
	max-width: 42rem;
	margin: 0 auto;
}

.buchly-dashboard-guest-logo img {
	max-width: 10rem;
	height: auto;
}

/* ---- BillMore Dokument-Editor (Neues Angebot) ---- */
.acri-dash-doc-editor-wrap {
	grid-column: span 12 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-doc-editor {
	max-width: min(1080px, 100%);
	margin: 0 auto;
	padding: 0 0 2rem;
}

.bm-doc-editor.is-content-locked .bm-doc-lock-banner {
	margin-bottom: 1rem;
}

.bm-doc-editor.is-content-locked input:not([type="hidden"]),
.bm-doc-editor.is-content-locked textarea,
.bm-doc-editor.is-content-locked select,
.bm-doc-editor.is-content-locked .bm-doc-tool--save {
	pointer-events: none;
}

.bm-doc-editor.is-content-locked input:not([type="hidden"]),
.bm-doc-editor.is-content-locked textarea,
.bm-doc-editor.is-content-locked select {
	background: #f9fafb;
	color: #374151;
}

.bm-doc-editor.is-content-locked [data-bm-doc-status],
.bm-doc-editor.is-content-locked [data-bm-doc-preview],
.bm-doc-editor.is-content-locked [data-bm-doc-download],
.bm-doc-editor.is-content-locked [data-bm-doc-email],
.bm-doc-editor.is-content-locked .bm-doc-back,
.bm-doc-editor.is-content-locked .bm-doc-pdf-menu-toggle {
	pointer-events: auto;
}

.bm-doc-toolbar--billmore {
	align-items: flex-start;
	margin-bottom: 1rem;
}

.bm-doc-toolbar-start {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.65rem;
	min-width: 0;
}

.bm-doc-back {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.45rem 0.85rem;
	border: 1px solid #cbd5e1;
	border-radius: 0.5rem;
	background: #fff;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #334155;
	cursor: pointer;
}

.bm-doc-back svg {
	width: 1rem;
	height: 1rem;
}

.bm-doc-back:hover {
	border-color: #94a3b8;
	background: #f8fafc;
}

.bm-doc-toolbar-actions--billmore {
	flex-wrap: nowrap;
}

.bm-doc-pdf-menu {
	position: relative;
	display: inline-flex;
	align-items: stretch;
}

.bm-doc-tool--pdf {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-right: 0;
}

.bm-doc-pdf-menu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	padding: 0;
	border: 1px solid #cbd5e1;
	border-radius: 0 0.5rem 0.5rem 0;
	background: #fff;
	color: #334155;
	cursor: pointer;
}

.bm-doc-pdf-menu-toggle svg {
	width: 0.9rem;
	height: 0.9rem;
}

.bm-doc-pdf-menu-panel {
	position: absolute;
	top: calc(100% + 4px);
	right: 0;
	z-index: 40;
	min-width: 12rem;
	display: flex;
	flex-direction: column;
	padding: 0.35rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	background: #fff;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.bm-doc-pdf-menu-panel a,
.bm-doc-pdf-menu-panel button {
	display: block;
	width: 100%;
	padding: 0.55rem 0.7rem;
	border: 0;
	border-radius: 0.375rem;
	background: transparent;
	text-align: left;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #334155;
	cursor: pointer;
	text-decoration: none;
}

.bm-doc-pdf-menu-panel a:hover,
.bm-doc-pdf-menu-panel button:hover {
	background: #f1f5f9;
}

.bm-doc-meta-list {
	display: grid;
	gap: 0.55rem;
}

.bm-doc-meta-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.75rem;
	align-items: center;
}

.bm-doc-meta-row--full {
	grid-template-columns: 1fr;
}

.bm-doc-meta-input--value {
	width: auto;
	min-width: 8.5rem;
	max-width: 100%;
	margin-left: auto;
	padding: 0.2rem 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	font-weight: 700;
	color: #2563eb;
	text-align: right;
}

.bm-doc-meta-input--value:focus {
	box-shadow: none;
	border-color: transparent;
	outline: none;
	text-decoration: underline;
}

.bm-doc-block--general.is-editing [data-bm-general-extra] {
	display: grid !important;
}

.bm-doc-status-label.is-hidden {
	display: none;
}

.bm-doc-items-empty {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 7rem;
	margin: 0.5rem 0 1rem;
	color: #94a3b8;
	text-align: center;
}

.bm-doc-items-empty p {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 500;
}

.bm-doc-items-add {
	margin-top: 0.5rem;
}

.bm-doc-items-actions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	gap: 0.5rem;
	align-items: end;
}

.bm-doc-tool--multi {
	white-space: nowrap;
}

.bm-doc-block--full {
	margin-top: 0.875rem;
}

.bm-doc-block--layout .bm-doc-layout-preview {
	display: flex;
	justify-content: center;
	padding: 0.5rem 0;
}

.bm-articles-multi-dialog {
	width: min(480px, calc(100vw - 2rem));
	border: 0;
	border-radius: 0.875rem;
	padding: 0;
	box-shadow: 0 25px 50px rgba(15, 23, 42, 0.25);
}

.bm-articles-multi-inner {
	padding: 1rem 1.125rem 1.125rem;
}

.bm-articles-multi-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.75rem;
}

.bm-articles-multi-head h2 {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 700;
}

.bm-articles-multi-list {
	display: grid;
	gap: 0.35rem;
	max-height: 16rem;
	overflow: auto;
	margin: 0.75rem 0;
}

.bm-articles-multi-item {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	padding: 0.55rem 0.65rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	cursor: pointer;
}

.bm-articles-multi-item:hover {
	background: #f8fafc;
}

.bm-articles-multi-item strong {
	display: block;
	font-size: 0.875rem;
}

.bm-articles-multi-item small {
	color: #64748b;
	font-size: 0.75rem;
}

.bm-articles-multi-actions {
	display: flex;
	justify-content: flex-end;
	gap: 0.5rem;
}

.bm-doc-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.bm-doc-title {
	margin: 0;
	font-family: Lexend, Inter, ui-sans-serif, system-ui, sans-serif;
	font-size: 1.35rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-doc-toolbar-actions,
.bm-doc-items-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.bm-doc-tool {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.5rem 0.85rem;
	border: 1px solid #cbd5e1;
	border-radius: 0.5rem;
	background: #fff;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #334155;
	cursor: pointer;
	text-decoration: none;
	line-height: 1.2;
}

.bm-doc-tool svg {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
}

.bm-doc-tool:hover {
	border-color: #94a3b8;
	background: #f8fafc;
}

.bm-doc-tool:disabled,
.bm-doc-tool[disabled] {
	opacity: 0.45;
	cursor: not-allowed;
}

.bm-doc-tool--save,
.bm-doc-tool--primary {
	border-color: #2563eb;
	background: #2563eb;
	color: #fff;
}

.bm-doc-tool--save:hover,
.bm-doc-tool--primary:hover {
	background: #1d4ed8;
	border-color: #1d4ed8;
	color: #fff;
}

.bm-doc-tool--ghost {
	background: #fff;
}

.bm-doc-block {
	margin-bottom: 0.875rem;
	padding: 1rem 1.125rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.75rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.bm-doc-block-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.875rem;
}

.bm-doc-block-head h3 {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-doc-block-icon {
	width: 1.125rem;
	height: 1.125rem;
	color: #2563eb;
}

.bm-doc-top-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

.bm-doc-top-grid--3 {
	grid-template-columns: 1fr;
}

@media (min-width: 768px) {
	.bm-doc-top-grid {
		grid-template-columns: 1.4fr 0.8fr;
	}

	.bm-doc-top-grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bm-doc-body-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
	margin-top: 0.875rem;
}

@media (min-width: 1024px) {
	.bm-doc-body-grid {
		grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
		align-items: start;
	}
}

.bm-doc-body-main,
.bm-doc-body-aside {
	display: flex;
	flex-direction: column;
	gap: 0.875rem;
	min-width: 0;
}

.bm-doc-status-icons {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.5rem;
	padding: 0.75rem 0 0.35rem;
}

.bm-doc-status-icon {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 0.35rem 0.5rem;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
	color: #94a3b8;
	font-size: 0.75rem;
	font-weight: 600;
	cursor: pointer;
}

.bm-doc-status-icon:hover:not(:disabled) {
	background: #f8fafc;
	color: #64748b;
}

.bm-doc-status-icon:disabled {
	cursor: default;
	opacity: 0.65;
}

.bm-doc-status-icon svg {
	width: 1.75rem;
	height: 1.75rem;
}

.bm-doc-status-icon.is-active {
	color: #2563eb;
}

.bm-doc-status-label {
	margin: 0.35rem 0 0;
	text-align: center;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #64748b;
}

.bm-doc-list-row-link {
	cursor: pointer;
}

.bm-doc-list-row-link:hover {
	background: #f8fafc;
}

.bm-doc-meta-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem 1rem;
}

.bm-doc-meta-item--full {
	grid-column: 1 / -1;
}

.bm-doc-meta-label {
	display: block;
	margin-bottom: 0.25rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: #64748b;
}

.bm-doc-meta-value {
	font-size: 0.9375rem;
	font-weight: 700;
	color: #2563eb;
}

.bm-doc-meta-input,
.bm-doc-select,
.bm-doc-textarea,
.bm-doc-search {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 0.625rem 0.75rem;
	border: 1.5px solid var(--buchly-field-border);
	border-radius: 0.5rem;
	background: var(--buchly-field-bg);
	font-size: 0.875rem;
	color: #0f172a;
	box-shadow: var(--buchly-field-shadow);
}

.bm-doc-meta-input:focus,
.bm-doc-select:focus,
.bm-doc-textarea:focus,
.bm-doc-search:focus {
	outline: none;
	border-color: rgb(var(--buchly-orange));
	box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.18);
}

.bm-doc-status-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 6.5rem;
	color: #64748b;
	text-align: center;
}

.bm-doc-status-empty svg {
	width: 2rem;
	height: 2rem;
	margin-bottom: 0.5rem;
	opacity: 0.55;
}

.bm-doc-field-label {
	display: block;
	margin-bottom: 0.5rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #475569;
}

.bm-doc-search-wrap {
	position: relative;
}

.bm-doc-search-results {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	z-index: 30;
	display: flex;
	flex-direction: column;
	gap: 2px;
	max-height: 14rem;
	overflow: auto;
	padding: 0.35rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	background: #fff;
	box-shadow: 0 10px 25px rgba(15, 23, 42, 0.12);
}

.bm-doc-search-hit {
	display: block;
	width: 100%;
	padding: 0.55rem 0.65rem;
	border: 0;
	border-radius: 0.375rem;
	background: transparent;
	text-align: left;
	font-size: 0.875rem;
	font-weight: 600;
	color: #0f172a;
	cursor: pointer;
}

.bm-doc-search-hit small {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.75rem;
	font-weight: 500;
	color: #64748b;
}

.bm-doc-search-hit:hover {
	background: #f1f5f9;
}

.bm-doc-selected-customer {
	margin: 0.65rem 0 0;
	font-size: 0.8125rem;
	color: #64748b;
}

.bm-doc-selected-customer.is-set {
	color: #0f172a;
	font-weight: 600;
}

.bm-doc-empty {
	margin: 0 0 0.75rem;
	font-style: italic;
	color: #94a3b8;
	font-size: 0.875rem;
}

.bm-doc-line-head {
	margin-top: 0.25rem;
}

.bm-doc-line-items .acri-line-item-row {
	grid-template-columns: auto 2fr 0.7fr 0.9fr 0.7fr auto;
}

.bm-article-image-field {
	display: grid;
	gap: 0.75rem;
}

.bm-article-image-preview {
	width: 96px;
	height: 96px;
	border: 1px solid #e2e8f0;
	border-radius: 0.75rem;
	background: #f8fafc;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.bm-article-image-preview img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.bm-article-image-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.acri-line-item-image-cell {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}

.acri-line-item-thumb-wrap {
	width: 2.25rem;
	height: 2.25rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	overflow: hidden;
	background: #f8fafc;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.acri-line-item-thumb {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.acri-line-image-btn,
.acri-line-image-clear {
	padding: 0.35rem 0.5rem;
	min-width: 0;
	line-height: 1;
}

.bm-doc-items-actions {
	margin-top: 0.75rem;
}

.bm-doc-search--inline {
	max-width: 12rem;
	flex: 1 1 10rem;
}

.bm-doc-totals {
	display: grid;
	gap: 0.35rem;
}

.bm-doc-total-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.875rem;
	color: #475569;
}

.bm-doc-total-row strong {
	font-weight: 700;
	color: #0f172a;
}

.bm-doc-total-row--grand {
	margin-top: 0.35rem;
	padding-top: 0.65rem;
	border-top: 1px solid #e2e8f0;
	font-size: 0.9375rem;
}

.bm-doc-total-row--discount strong {
	color: #2563eb;
}

/* ---- BillMore Rabatt-Modal ---- */
.bm-discount-dialog {
	width: min(360px, calc(100vw - 2rem));
	border: 0;
	border-radius: 0.875rem;
	padding: 0;
	box-shadow: 0 25px 50px rgba(15, 23, 42, 0.25);
}

.bm-discount-dialog::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-discount-dialog-inner {
	padding: 1.5rem 1.25rem 1.25rem;
	text-align: center;
}

.bm-discount-dialog-icon {
	display: flex;
	justify-content: center;
	margin-bottom: 0.75rem;
	color: #2563eb;
}

.bm-discount-dialog-icon svg {
	width: 2.5rem;
	height: 2.5rem;
}

.bm-discount-dialog-title {
	margin: 0 0 1.25rem;
	font-size: 1.125rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-discount-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	margin-bottom: 1.25rem;
	text-align: left;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #475569;
}

.bm-discount-percent-wrap {
	position: relative;
	display: block;
}

.bm-discount-percent-input {
	width: 100%;
	padding: 0.65rem 2rem 0.65rem 1.75rem;
	border: 1px solid #cbd5e1;
	border-radius: 0.625rem;
	font-size: 1rem;
	font-weight: 600;
	color: #0f172a;
	text-align: center;
}

.bm-discount-percent-input:focus {
	outline: none;
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.bm-discount-percent-prefix,
.bm-discount-percent-suffix {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	color: #64748b;
	font-size: 0.9375rem;
	font-weight: 600;
	pointer-events: none;
}

.bm-discount-percent-prefix {
	left: 0.75rem;
}

.bm-discount-percent-suffix {
	right: 0.75rem;
}

.bm-discount-dialog-actions {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.bm-discount-btn {
	width: 100%;
	justify-content: center;
}

.bm-doc-price-toggle {
	display: flex;
	overflow: hidden;
	border: 1px solid #cbd5e1;
	border-radius: 0.5rem;
}

.bm-doc-price-toggle button {
	flex: 1;
	padding: 0.55rem 0.75rem;
	border: 0;
	background: #f8fafc;
	font-size: 0.8125rem;
	font-weight: 700;
	color: #64748b;
	cursor: pointer;
}

.bm-doc-price-toggle button.is-active {
	background: #2563eb;
	color: #fff;
}

.bm-tax-rule {
	position: relative;
}

.bm-tax-rule-trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	box-sizing: border-box;
	padding: 0.625rem 0.75rem;
	border: 1.5px solid var(--buchly-field-border);
	border-radius: 0.5rem;
	background: var(--buchly-field-bg);
	font-size: 0.875rem;
	font-weight: 600;
	color: #0f172a;
	text-align: left;
	cursor: pointer;
	box-shadow: var(--buchly-field-shadow);
}

.bm-tax-rule.is-open .bm-tax-rule-trigger,
.bm-tax-rule-trigger:focus-visible {
	outline: none;
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18);
}

.bm-tax-rule-trigger-label {
	flex: 1 1 auto;
	min-width: 0;
	line-height: 1.35;
}

.bm-tax-rule-chevron {
	flex: 0 0 auto;
	width: 1.1rem;
	height: 1.1rem;
	color: #64748b;
	transition: transform 0.15s ease;
}

.bm-tax-rule.is-open .bm-tax-rule-chevron {
	transform: rotate(180deg);
}

.bm-tax-rule-panel {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	z-index: 40;
	display: none;
	flex-direction: column;
	gap: 0.15rem;
	max-height: 22rem;
	overflow: auto;
	padding: 0.35rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.625rem;
	background: #fff;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.bm-tax-rule.is-open .bm-tax-rule-panel,
.bm-tax-rule-panel:not([hidden]) {
	display: flex;
}

.bm-tax-rule-panel[hidden] {
	display: none !important;
}

.bm-tax-rule-option {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	width: 100%;
	padding: 0.75rem 0.8rem;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
	text-align: left;
	cursor: pointer;
}

.bm-tax-rule-option:hover {
	background: #f8fafc;
}

.bm-tax-rule-option.is-selected {
	background: #eff6ff;
}

.bm-tax-rule-option-body {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	min-width: 0;
}

.bm-tax-rule-option-title {
	font-size: 0.875rem;
	font-weight: 700;
	color: #0f172a;
	line-height: 1.35;
}

.bm-tax-rule-option-desc {
	font-size: 0.8125rem;
	font-weight: 500;
	color: #64748b;
	line-height: 1.4;
}

.bm-tax-rule-option-legal {
	font-size: 0.75rem;
	font-weight: 500;
	color: #94a3b8;
	line-height: 1.35;
}

.bm-tax-rule-check {
	flex: 0 0 auto;
	width: 1.1rem;
	height: 1.1rem;
	margin-top: 0.15rem;
	color: #2563eb;
	opacity: 0;
}

.bm-tax-rule-option.is-selected .bm-tax-rule-check {
	opacity: 1;
}

.bm-doc-edit-link {
	display: inline-flex;
	color: #2563eb;
}

.bm-doc-edit-link svg {
	width: 1rem;
	height: 1rem;
}

.buchly-dashboard-workspace .acri-dash-section[data-acri-dash="erstellen"].is-hidden {
	display: none !important;
}

/* ---- Sidebar Gruppen (BillMore Dropdowns) ---- */
.bm-app-sidebar-group {
	margin: 0.125rem 0;
}

.bm-app-sidebar-group-toggle {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
	padding: 0.5625rem 0.75rem;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.25;
	color: #374151;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}

.bm-app-sidebar-group-toggle:hover {
	background: #f8fafc;
	color: #0f172a;
}

.bm-app-sidebar-chevron {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
	color: #94a3b8;
	transition: transform 0.2s ease, color 0.15s ease;
}

.bm-app-sidebar-group-head {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	min-width: 0;
}

.bm-app-sidebar-group-head svg {
	width: 1.125rem;
	height: 1.125rem;
	flex-shrink: 0;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
}

.bm-app-sidebar-group.is-open .bm-app-sidebar-chevron {
	transform: rotate(90deg);
}

.bm-app-sidebar-group.is-open > .bm-app-sidebar-group-toggle,
.bm-app-sidebar-group.has-active-child > .bm-app-sidebar-group-toggle,
.bm-app-sidebar-group.is-active-group > .bm-app-sidebar-group-toggle {
	color: rgb(var(--bm-brand));
	font-weight: 600;
}

.bm-app-sidebar-group.is-open > .bm-app-sidebar-group-toggle .bm-app-sidebar-chevron,
.bm-app-sidebar-group.has-active-child > .bm-app-sidebar-group-toggle .bm-app-sidebar-chevron,
.bm-app-sidebar-group.is-active-group > .bm-app-sidebar-group-toggle .bm-app-sidebar-chevron {
	color: rgb(var(--bm-brand));
}

.bm-app-sidebar-sub {
	display: none;
	flex-direction: column;
	gap: 0.0625rem;
	padding: 0.125rem 0 0.375rem;
}

.bm-app-sidebar-group.is-open .bm-app-sidebar-sub {
	display: flex;
}

.bm-app-sidebar-link--sub {
	position: relative;
	padding: 0.5rem 0.75rem 0.5rem 2.75rem;
	font-size: 0.875rem;
	font-weight: 500;
	border-radius: 0.5rem;
	box-shadow: none;
	color: #374151;
}

.bm-app-sidebar-link--sub:hover {
	background: #f3f4f6;
	color: #111827;
}

.bm-app-sidebar-link--sub.is-active {
	box-shadow: none;
}

.bm-app-sidebar-link--sub.is-active::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.375rem;
	bottom: 0.375rem;
	width: 3px;
	border-radius: 0 4px 4px 0;
	background: rgb(var(--bm-brand));
}

.bm-app-sidebar-group.is-active-group > .bm-app-sidebar-group-toggle,
.bm-app-sidebar-group.is-active-group .bm-app-sidebar-group-head {
	color: rgb(var(--bm-brand));
}

.bm-app-footer a {
	color: rgb(var(--bm-brand));
	text-decoration: none;
}

.bm-app-footer a:hover {
	color: rgb(var(--bm-brand-light));
	text-decoration: underline;
}

.bm-dash-action-inner {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	min-width: 0;
}

.buchly-dashboard-workspace .acri-dash-tab-registry {
	display: none !important;
}

.bm-dash-stats-wrap .bm-dash-stats {
	margin-top: 0.5rem;
}

.bm-sidebar-lock {
	display: none !important;
}

/* ---- BillMore Dokumentlisten ---- */
.bm-doc-list-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-doc-list-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
	min-width: 0;
}

.bm-doc-list-head .bm-doc-list-create {
	flex-shrink: 0;
	margin-left: auto;
}

.bm-doc-list-title {
	margin: 0;
	font-family: Lexend, Inter, ui-sans-serif, system-ui, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: #0f172a;
	letter-spacing: -0.02em;
}

.bm-doc-list-create {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.625rem 1.125rem;
	border: 0;
	border-radius: 0.5rem;
	background: #2563eb;
	color: #fff !important;
	font-family: Lexend, Inter, ui-sans-serif, system-ui, sans-serif;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.25;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: 0 1px 2px rgba(37, 99, 235, 0.2);
}

.bm-doc-list-create:hover {
	background: #1d4ed8;
	color: #fff !important;
}

.bm-doc-list-card {
	border: 1px solid #e2e8f0;
	border-radius: 0.75rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	overflow: hidden;
}

.bm-doc-list-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 1rem 1.125rem;
	border-bottom: 1px solid #e2e8f0;
}

.bm-doc-list-search-wrap {
	position: relative;
	flex: 1 1 14rem;
	max-width: 22rem;
}

.bm-doc-list-search-wrap svg {
	position: absolute;
	left: 0.75rem;
	top: 50%;
	width: 1rem;
	height: 1rem;
	transform: translateY(-50%);
	color: #94a3b8;
}

.bm-doc-list-search {
	width: 100%;
	box-sizing: border-box;
	padding: 0.55rem 0.875rem 0.55rem 2.25rem;
	border: 1px solid #e2e8f0;
	border-radius: 9999px;
	font-size: 0.875rem;
	background: #fff;
	color: #0f172a;
}

.bm-doc-list-search:focus {
	outline: none;
	border-color: #93c5fd;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.bm-doc-list-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.bm-doc-list-filter {
	padding: 0.45rem 0.875rem;
	border: 1px solid #e2e8f0;
	border-radius: 9999px;
	background: #fff;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #64748b;
	cursor: pointer;
	line-height: 1.2;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.bm-doc-list-filter:hover {
	border-color: #cbd5e1;
	color: #334155;
}

.bm-doc-list-filter.is-active {
	border-color: #2563eb;
	color: #2563eb;
	background: #eff6ff;
}

.bm-doc-list-empty {
	margin: 0;
	padding: 3rem 1rem;
	text-align: center;
	color: #94a3b8;
	font-size: 0.9375rem;
}

.bm-doc-list-table-wrap {
	overflow-x: auto;
}

.bm-doc-list-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
}

.bm-doc-list-table th,
.bm-doc-list-table td {
	padding: 0.75rem 1rem;
	border-top: 1px solid #f1f5f9;
	text-align: left;
}

.bm-doc-list-table th {
	background: #f8fafc;
	font-size: 0.75rem;
	font-weight: 700;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.bm-doc-list-link {
	font-weight: 700;
	color: #2563eb;
	text-decoration: none;
}

.bm-doc-list-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.75rem;
	white-space: nowrap;
}

.bm-doc-list-actions .bm-doc-list-link + .bm-doc-list-link {
	margin-left: 0;
}

/* ---- Layout-Dialog ---- */
.bm-doc-layout-preview {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	padding: 0.5rem 0;
}

.bm-doc-layout-thumb {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	width: 7.5rem;
	min-height: 6rem;
	padding: 0.35rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.375rem;
	background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.8);
	cursor: pointer;
	overflow: hidden;
}

.bm-doc-layout-thumb img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 5.5rem;
	object-fit: cover;
	object-position: top;
	border-radius: 0.25rem;
}

.bm-doc-layout-thumb-label {
	font-size: 0.6875rem;
	font-weight: 700;
	color: #64748b;
	text-align: center;
}

.bm-doc-layout-status {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 600;
	color: #b45309;
	text-align: center;
}

.bm-doc-tool--save.is-pending-save {
	box-shadow: 0 0 0 2px #fbbf24;
}

.bm-layout-dialog {
	width: min(760px, calc(100vw - 2rem));
	max-height: min(88vh, 560px);
	border: 0;
	border-radius: 0.75rem;
	padding: 0;
	box-shadow: 0 25px 50px rgba(15, 23, 42, 0.25);
	overflow: hidden;
}

.bm-layout-dialog::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-layout-dialog-inner {
	display: flex;
	flex-direction: column;
	max-height: min(88vh, 560px);
	padding: 1rem 1.25rem 0;
}

.bm-layout-dialog-title {
	margin: 0 0 0.35rem;
	font-size: 1.125rem;
	font-weight: 700;
}

.bm-layout-dialog-hint {
	margin: 0 0 0.75rem;
	font-size: 0.8125rem;
	line-height: 1.45;
	color: #64748b;
}

.bm-layout-dialog-scroll {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding-right: 0.15rem;
}

.bm-layout-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.45rem;
	margin-bottom: 0.75rem;
}

@media (max-width: 720px) {
	.bm-layout-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bm-layout-pick {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.25rem;
	padding: 0.3rem;
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	background: #fff;
	cursor: pointer;
}

.bm-layout-pick.is-active {
	border-color: #2563eb;
	background: #eff6ff;
	box-shadow: 0 0 0 1px #2563eb;
}

.bm-layout-pick img {
	width: 100%;
	height: 4.5rem;
	object-fit: cover;
	object-position: top;
	border-radius: 0.25rem;
}

.bm-layout-pick-fallback {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 4.5rem;
	padding: 0.25rem;
	border-radius: 0.25rem;
	background: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);
	font-size: 0.625rem;
	font-weight: 700;
	color: #475569;
	text-align: center;
}

.bm-layout-pick span {
	font-size: 0.625rem;
	font-weight: 700;
	color: #475569;
	text-align: center;
	line-height: 1.2;
}

.bm-layout-dialog-actions {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 0;
	padding: 0.85rem 0 1rem;
	border-top: 1px solid #e2e8f0;
	background: #fff;
	flex-shrink: 0;
}

.bm-layout-acc {
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	margin-bottom: 0.5rem;
	background: #fff;
}

.bm-layout-acc summary {
	padding: 0.65rem 0.85rem;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.bm-layout-acc summary::-webkit-details-marker {
	display: none;
}

.bm-layout-acc-body {
	padding: 0 0.85rem 0.85rem;
}

.bm-layout-acc-body--muted {
	color: #64748b;
	font-size: 0.8125rem;
	line-height: 1.45;
}

.bm-layout-acc-body--muted a {
	color: #2563eb;
}

.bm-layout-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 600;
	margin-top: 0.5rem;
}

.bm-layout-field select {
	padding: 0.5rem 0.75rem;
	border: 1px solid #cbd5e1;
	border-radius: 0.5rem;
	background: #fff;
}

.bm-layout-logo-preview {
	display: block;
	max-width: 8rem;
	max-height: 3rem;
	margin-bottom: 0.5rem;
	object-fit: contain;
}

.bm-layout-slider,
.bm-layout-margin-grid .bm-layout-slider {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 0.35rem 0.75rem;
	align-items: center;
	font-size: 0.75rem;
	margin-bottom: 0.5rem;
}

.bm-layout-slider span,
.bm-layout-margin-grid .bm-layout-slider > span {
	grid-column: 1 / -1;
	font-weight: 600;
	color: #475569;
}

.bm-layout-slider-row {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 0.5rem;
	align-items: center;
	grid-column: 1 / -1;
}

.bm-layout-slider-row input[type='range'] {
	width: 100%;
}

.bm-layout-slider-row input[type='number'] {
	width: 3.5rem;
	padding: 0.25rem 0.35rem;
	border: 1px solid #cbd5e1;
	border-radius: 0.375rem;
}

.bm-layout-margin-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem 0.75rem;
}

@media (max-width: 640px) {
	.bm-layout-margin-grid {
		grid-template-columns: 1fr;
	}
}

/* ---- BillMore Artikel-Modal (Dokument-Editor) ---- */
.bm-article-line-dialog {
	width: min(560px, calc(100vw - 2rem));
	border: 0;
	border-radius: 0.875rem;
	padding: 0;
	box-shadow: 0 25px 50px rgba(15, 23, 42, 0.25);
}

.bm-article-line-dialog::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-article-line-dialog-inner {
	padding: 1.25rem 1.25rem 1rem;
}

.bm-article-line-dialog-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 1rem;
}

.bm-article-line-dialog-title {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-article-line-dialog-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border: 0;
	border-radius: 0.5rem;
	background: transparent;
	color: #64748b;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
}

.bm-article-line-dialog-close:hover {
	background: #f1f5f9;
	color: #334155;
}

.bm-article-line-section-title {
	margin: 0 0 0.5rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: #475569;
}

.bm-article-line-general {
	display: flex;
	flex-direction: column;
	border: 1px solid #cbd5e1;
	border-radius: 0.625rem;
	overflow: hidden;
	background: #fff;
}

.bm-article-line-general:focus-within {
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.bm-article-line-title,
.bm-article-line-desc {
	width: 100%;
	border: 0;
	padding: 0.75rem 0.875rem;
	font: inherit;
	color: #0f172a;
	background: transparent;
	resize: vertical;
}

.bm-article-line-title {
	font-size: 0.9375rem;
	font-weight: 600;
}

.bm-article-line-desc {
	border-top: 1px solid #e2e8f0;
	font-size: 0.875rem;
	min-height: 3rem;
}

.bm-article-line-title::placeholder,
.bm-article-line-desc::placeholder {
	color: #94a3b8;
	font-weight: 400;
}

.bm-article-line-row {
	display: grid;
	gap: 0.75rem;
	margin-top: 1rem;
}

.bm-article-line-row--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bm-article-line-row--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bm-article-line-field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #475569;
}

.bm-article-line-field .bm-doc-meta-input,
.bm-article-line-field .bm-doc-select {
	width: 100%;
}

.bm-article-line-dialog-actions {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 1.25rem;
	padding-top: 1rem;
	border-top: 1px solid #e2e8f0;
}

.bm-article-line-error {
	margin: 0.75rem 0 0;
	padding: 0.625rem 0.75rem;
	border-radius: 0.5rem;
	background: #fef2f2;
	color: #b91c1c;
	font-size: 0.8125rem;
}

.bm-article-line-image-hint {
	margin: 0 0 0.5rem;
	font-size: 0.8125rem;
	color: #64748b;
}

.bm-article-line-image-field {
	display: grid;
	gap: 0.65rem;
}

.bm-article-line-image-preview {
	width: 88px;
	height: 88px;
	border: 1px dashed #cbd5e1;
	border-radius: 0.65rem;
	background: #f8fafc;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.bm-article-line-image-preview img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.bm-article-line-image-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.bm-doc-search-wrap--inline {
	position: relative;
	flex: 1 1 12rem;
	min-width: 10rem;
	max-width: 18rem;
}

.bm-doc-search-results--inline {
	top: calc(100% + 0.25rem);
	left: 0;
	right: 0;
}

@media (max-width: 640px) {
	.bm-article-line-row--3 {
		grid-template-columns: 1fr;
	}
}

.buchly-dashboard-workspace .acri-dash-section.is-hidden {
	display: none !important;
}

/* ---- BillMore Kontakt-Editor ---- */
.bm-contact-editor-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-contact-editor {
	max-width: 980px;
	margin: 0 auto;
}

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

@media (min-width: 900px) {
	.bm-contact-grid {
		grid-template-columns: 1fr 1fr;
		align-items: start;
	}
}

.bm-contact-col {
	display: grid;
	gap: 0.875rem;
}

.bm-contact-field {
	display: grid;
	gap: 0.35rem;
	margin-bottom: 0.75rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #475569;
}

.bm-contact-field:last-child {
	margin-bottom: 0;
}

.bm-contact-field > span {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.bm-contact-field .bm-doc-meta-input + .bm-doc-meta-input {
	margin-top: 0.35rem;
}

.bm-help-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1rem;
	height: 1rem;
	border-radius: 9999px;
	background: #2563eb;
	color: #fff;
	font-size: 0.625rem;
	font-weight: 800;
	line-height: 1;
	cursor: help;
}

.bm-contact-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.bm-contact-form-top {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	margin-bottom: 1rem;
}

@media (min-width: 640px) {
	.bm-contact-form-top {
		grid-template-columns: 1fr 1fr;
	}
}

.bm-contact-form-section {
	margin-bottom: 1.25rem;
}

.bm-contact-form-section-title {
	margin: 0 0 0.75rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-contact-form-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	margin-bottom: 0.75rem;
}

.bm-contact-form-row:last-child {
	margin-bottom: 0;
}

@media (min-width: 640px) {
	.bm-contact-form-row--2 {
		grid-template-columns: 1fr 1fr;
	}
}

.bm-contact-form--page {
	max-width: 760px;
}

.bm-doc-customer-create {
	display: inline-flex;
	align-items: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: #2563eb;
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
}

.bm-doc-customer-create:hover {
	text-decoration: underline;
}

.bm-doc-customer-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1rem;
	margin-top: 0.5rem;
}

.bm-doc-customer-manual {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.75rem;
	border: 1px solid #cbd5e1;
	border-radius: 0.5rem;
	background: #fff;
	color: #0f172a;
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
}

.bm-doc-customer-manual:hover {
	border-color: #94a3b8;
	background: #f8fafc;
}

.bm-customer-manual-dialog {
	width: min(520px, calc(100vw - 2rem));
	max-height: calc(100vh - 2rem);
	padding: 0;
	border: 0;
	border-radius: 0.75rem;
	box-shadow: 0 25px 50px rgba(15, 23, 42, 0.25);
}

.bm-customer-manual-dialog::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-customer-manual-dialog-inner {
	padding: 1.25rem 1.5rem 1.5rem;
	overflow: auto;
	max-height: calc(100vh - 2rem);
}

.bm-customer-manual-dialog-title {
	margin: 0 0 1rem;
	font-size: 1.125rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-customer-manual-actions {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 1.25rem;
	padding-top: 1rem;
	border-top: 1px solid #e2e8f0;
}

.bm-customer-manual-error {
	margin: 0.75rem 0 0;
	padding: 0.625rem 0.75rem;
	border-radius: 0.5rem;
	background: #fef2f2;
	color: #b91c1c;
	font-size: 0.8125rem;
}

.bm-contact-modal {
	width: min(760px, calc(100vw - 2rem));
	max-height: calc(100vh - 2rem);
	padding: 0;
	border: 0;
	border-radius: 0.75rem;
	box-shadow: 0 25px 50px rgba(15, 23, 42, 0.25);
}

.bm-contact-modal::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-contact-modal-inner {
	padding: 1.25rem 1.5rem 1.5rem;
	overflow: auto;
	max-height: calc(100vh - 2rem);
}

.bm-contact-modal-title {
	margin: 0 0 1rem;
	font-size: 1.125rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-contact-modal-actions {
	display: flex;
	justify-content: flex-end;
	gap: 0.5rem;
	margin-top: 1.25rem;
	padding-top: 1rem;
	border-top: 1px solid #e2e8f0;
}

.bm-contact-modal-error {
	margin: 0.75rem 0 0;
	padding: 0.625rem 0.75rem;
	border-radius: 0.5rem;
	background: #fef2f2;
	color: #b91c1c;
	font-size: 0.8125rem;
}

.bm-doc-search-hit--create {
	color: #2563eb;
	font-weight: 600;
}

.bm-contact-delete-form {
	display: inline;
	margin: 0;
}

.bm-doc-list-link--danger {
	color: #dc2626;
}

.bm-doc-list-link--danger:hover {
	color: #b91c1c;
}

/* ---- BillMore Artikel ---- */
.bm-article-editor-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-article-editor {
	max-width: 980px;
	margin: 0 auto;
}

.bm-article-price-wrap {
	position: relative;
	display: block;
}

.bm-article-price-input {
	width: 100%;
	padding-right: 2rem;
}

.bm-article-price-suffix {
	position: absolute;
	right: 0.75rem;
	top: 50%;
	transform: translateY(-50%);
	color: #64748b;
	font-size: 0.875rem;
	pointer-events: none;
}

.bm-article-price-input[readonly] {
	background: #f8fafc;
	color: #475569;
}

/* ---- BillMore EÜR (Einnahmenueberschussrechnung) ---- */
.buchly-dashboard-workspace .acri-dash-section[data-acri-dash="finanzen"],
.buchly-dashboard-workspace .bm-fin-legacy {
	display: none !important;
}

.bm-euer-report-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-euer-report {
	max-width: 980px;
	margin: 0 auto;
}

.bm-euer-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.bm-euer-title {
	margin: 0;
	font-family: Lexend, Inter, sans-serif;
	font-size: 1.875rem;
	font-weight: 600;
	color: #111827;
}

.bm-euer-lead {
	margin: 0.75rem 0 0;
	max-width: 42rem;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
}

.bm-euer-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.bm-euer-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	border: 1px solid #d1d5db;
	border-radius: 0.375rem;
	background: #fff;
	padding: 0.45rem 0.75rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #374151;
	text-decoration: none;
	cursor: pointer;
}

.bm-euer-btn:hover {
	background: #f9fafb;
}

.bm-euer-btn svg {
	width: 1rem;
	height: 1rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.75;
}

.bm-euer-card {
	margin-top: 1rem;
	border-radius: 0.375rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.05);
	padding: 1rem 1.25rem 1.25rem;
}

.bm-euer-card-title {
	margin: 0 0 0.75rem;
	font-size: 0.875rem;
	font-weight: 600;
	color: #111827;
}

.bm-euer-period-tabs {
	display: inline-flex;
	border: 1px solid #e5e7eb;
	border-radius: 0.375rem;
	overflow: hidden;
	margin-bottom: 0.75rem;
}

.bm-euer-period-tab {
	border: 0;
	background: #fff;
	padding: 0.45rem 0.85rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #374151;
	cursor: pointer;
}

.bm-euer-period-tab.is-active {
	background: rgb(var(--bm-brand));
	color: #fff;
}

.bm-euer-period-controls {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.bm-euer-select,
.bm-euer-input {
	border: 1px solid #d1d5db;
	border-radius: 0.375rem;
	background: #fff;
	padding: 0.45rem 0.65rem;
	font-size: 0.875rem;
	color: #111827;
}

.bm-euer-select.is-hidden,
.bm-euer-custom-range.is-hidden {
	display: none !important;
}

.bm-euer-custom-range {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.bm-euer-table {
	width: 100%;
	border-collapse: collapse;
}

.bm-euer-table thead th {
	padding: 0.35rem 0;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #9ca3af;
	text-align: right;
}

.bm-euer-table thead th:first-child {
	text-align: left;
}

.bm-euer-table tbody td {
	padding: 0.85rem 0;
	border-top: 1px solid #f3f4f6;
	font-size: 0.875rem;
	color: #111827;
	text-align: right;
}

.bm-euer-table tbody td:first-child {
	text-align: left;
	font-weight: 500;
}

.bm-euer-table-total td {
	font-weight: 700;
}

.bm-euer-muted {
	color: #9ca3af !important;
}

.bm-euer-disclaimer {
	margin: 1rem 0 0;
	font-size: 0.75rem;
	line-height: 1.55;
	color: #9ca3af;
}

@media print {
	.bm-app-sidebar,
	.bm-app-topbar,
	.bm-app-footer,
	.bm-euer-actions,
	.bm-euer-period-tabs,
	.bm-euer-period-controls {
		display: none !important;
	}

	.bm-app-main {
		padding-left: 0 !important;
	}
}

/* ---- BillMore Listen (klickbare Zeilen) ---- */
.bm-doc-list-table--clickable tbody tr.bm-doc-list-row-link {
	cursor: pointer;
}

.bm-doc-list-table--clickable tbody tr.bm-doc-list-row-link:hover td {
	background: #f8fafc;
}

.bm-doc-list-table--clickable tbody tr.is-page-hidden {
	display: none;
}

.bm-doc-list-sort {
	border: 0;
	background: transparent;
	padding: 0;
	font: inherit;
	font-weight: 600;
	color: inherit;
	cursor: pointer;
}

.bm-doc-list-pagination {
	display: flex;
	justify-content: flex-end;
	padding: 0.75rem 1rem 1rem;
	font-size: 0.8125rem;
	color: #64748b;
}

.bm-doc-list-create {
	border: 0;
	cursor: pointer;
}

.bm-doc-list-filter.is-active {
	border-color: #2563eb;
	color: #2563eb;
	background: #eff6ff;
}

/* ---- Topbar Dropdown (BillMore) ---- */
.bm-app-topbar-dropdown-label {
	margin: 0.35rem 0.9rem 0.25rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #94a3b8;
}

.bm-app-topbar-dropdown-label + .bm-app-topbar-dropdown-label {
	margin-top: 0.55rem;
	padding-top: 0.55rem;
	border-top: 1px solid #f1f5f9;
}

.bm-app-topbar-dropdown-divider {
	height: 1px;
	margin: 0.35rem 0;
	background: #f1f5f9;
}

.bm-app-topbar-dropdown-item--danger,
.bm-app-topbar-dropdown--user .bm-app-logout-btn {
	color: #dc2626;
}

.bm-app-topbar-dropdown-item--danger .bm-app-topbar-dropdown-icon,
.bm-app-topbar-dropdown--user .bm-app-logout-btn .bm-app-topbar-dropdown-icon {
	color: #dc2626;
}

.bm-app-topbar-dropdown-item--danger:hover,
.bm-app-topbar-dropdown--user .bm-app-logout-btn:hover {
	background: #fef2f2;
}

.bm-app-topbar-company {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	border: 0;
	background: #f1f5f9;
	color: #2563eb;
	font: inherit;
	font-weight: 600;
}

.bm-app-topbar-company svg {
	width: 1rem;
	height: 1rem;
	flex-shrink: 0;
}

/* ---- Aktivitaetsprotokoll ---- */
.bm-activity-log-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	overflow: hidden;
}

.bm-activity-log-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bm-activity-log-item {
	display: grid;
	grid-template-columns: 6.5rem 2rem 1fr 2fr;
	gap: 0.75rem;
	align-items: center;
	padding: 0.85rem 1rem;
	border-top: 1px solid #f1f5f9;
	font-size: 0.875rem;
}

.bm-activity-log-item:first-child {
	border-top: 0;
}

.bm-activity-log-time {
	color: #64748b;
	font-size: 0.8125rem;
}

.bm-activity-log-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	background: #e2e8f0;
	color: #475569;
	font-size: 0.75rem;
	font-weight: 700;
}

.bm-activity-log-user {
	font-weight: 600;
	color: #0f172a;
}

.bm-activity-log-text {
	color: #334155;
}

.bm-activity-log-text a {
	color: #2563eb;
	text-decoration: none;
}

.bm-activity-log-text a:hover {
	text-decoration: underline;
}

.bm-activity-log-more {
	display: block;
	width: 100%;
	border: 0;
	border-top: 1px solid #e2e8f0;
	background: #fff;
	padding: 0.85rem 1rem;
	font: inherit;
	font-weight: 600;
	color: #2563eb;
	cursor: pointer;
}

/* ---- Abonnement / Zahlungen ---- */
.bm-abonnement-wrap,
.bm-zahlungen-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-abonnement,
.bm-zahlungen {
	max-width: 980px;
	margin: 0 auto;
}

.bm-abonnement-head {
	text-align: center;
	margin-bottom: 1.5rem;
}

.bm-abonnement-kicker {
	margin: 0 0 0.35rem;
	color: #2563eb;
	font-size: 0.875rem;
	font-weight: 600;
}

.bm-abonnement-title {
	margin: 0 0 0.75rem;
	font-size: 1.75rem;
	line-height: 1.2;
	color: #0f172a;
}

.bm-abonnement-lead {
	margin: 0 auto 1rem;
	max-width: 42rem;
	color: #64748b;
}

.bm-abonnement-toggle {
	display: inline-flex;
	gap: 0.25rem;
	padding: 0.2rem;
	border-radius: 999px;
	background: #f1f5f9;
}

.bm-abonnement-toggle-btn {
	border: 0;
	background: transparent;
	border-radius: 999px;
	padding: 0.45rem 0.9rem;
	font: inherit;
	font-weight: 600;
	color: #64748b;
	cursor: pointer;
}

.bm-abonnement-toggle-btn.is-active {
	background: #2563eb;
	color: #fff;
	box-shadow: none;
}

.bm-abonnement-badge {
	display: inline-block;
	margin-left: 0.25rem;
	padding: 0.1rem 0.35rem;
	border-radius: 999px;
	background: #ef4444;
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 700;
}

.bm-abonnement-toggle-btn.is-active .bm-abonnement-badge {
	background: rgba(255, 255, 255, 0.22);
	color: #fff;
}

.bm-abonnement-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 1.5rem;
}

.bm-abonnement-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.25rem;
}

.bm-abonnement-card.is-featured {
	border-color: #93c5fd;
	box-shadow: 0 8px 24px rgba(37, 99, 235, 0.08);
}

.bm-abonnement-card.is-current {
	border-color: #2563eb;
}

.bm-abonnement-card h2 {
	margin: 0 0 0.25rem;
	font-size: 1.125rem;
	letter-spacing: 0.04em;
}

.bm-abonnement-sub {
	margin: 0 0 1rem;
	color: #64748b;
	font-size: 0.875rem;
}

.bm-abonnement-price {
	margin: 0;
	font-size: 2rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-abonnement-price-label {
	margin: 0.25rem 0 1rem;
	color: #64748b;
	font-size: 0.8125rem;
}

.bm-abonnement-form {
	margin: 0;
}

.bm-abonnement-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 2.5rem;
	border: 0;
	border-radius: 999px;
	background: #2563eb;
	color: #fff !important;
	text-decoration: none;
	font-weight: 600;
	font: inherit;
	cursor: pointer;
}

.bm-abonnement-cta:hover {
	background: #1d4ed8;
}

.bm-abonnement-cta.is-active-plan,
.bm-abonnement-cta:disabled {
	background: #94a3b8;
	cursor: default;
}

.bm-abonnement-check {
	display: inline-flex;
	flex-shrink: 0;
	color: #2563eb;
}

.bm-abonnement-features-list {
	list-style: none;
	margin: 1rem 0 0;
	padding: 0;
	color: #475569;
	font-size: 0.875rem;
}

.bm-abonnement-features-list li {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	margin-top: 0.5rem;
}

.bm-abonnement-card ul {
	margin: 1rem 0 0;
	padding-left: 1.1rem;
	color: #475569;
	font-size: 0.875rem;
}

.bm-abonnement-note {
	margin: 1rem 0 0;
	text-align: center;
	font-size: 0.75rem;
	color: #94a3b8;
}

.bm-abonnement-features {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 2rem;
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid #e2e8f0;
}

.bm-abonnement-features-grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.bm-abonnement-features-grid li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.65rem;
	align-items: start;
	font-size: 0.875rem;
	color: #475569;
}

.bm-abonnement-features-grid li strong {
	display: block;
	color: #0f172a;
	margin-bottom: 0.15rem;
}

.bm-abonnement-features-grid li span {
	display: block;
	line-height: 1.5;
}

.bm-zahlungen-lead {
	margin: 0.35rem 0 1rem;
	color: #64748b;
}

.bm-zahlungen-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	min-height: 12rem;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2rem;
}

@media (max-width: 900px) {
	.bm-abonnement-grid,
	.bm-abonnement-features {
		grid-template-columns: 1fr;
	}

	.bm-activity-log-item {
		grid-template-columns: 1fr;
		gap: 0.35rem;
	}
}

/* ---- BillMore Statistiken ---- */
.bm-stats-report-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-stats-report {
	max-width: 980px;
	margin: 0 auto;
}

.bm-stats-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.bm-stats-title {
	margin: 0;
	font-family: Lexend, Inter, sans-serif;
	font-size: 1.875rem;
	font-weight: 600;
	color: #111827;
}

.bm-stats-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.bm-stats-filter {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	border: 1px solid #d1d5db;
	border-radius: 0.375rem;
	background: #fff;
	padding: 0.35rem 0.55rem;
}

.bm-stats-filter svg {
	width: 1rem;
	height: 1rem;
	stroke: #6b7280;
	fill: none;
	stroke-width: 1.75;
	flex-shrink: 0;
}

.bm-stats-filter select {
	border: 0;
	background: transparent;
	padding: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #374151;
	cursor: pointer;
}

.bm-stats-kpis {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	margin: 0 0 1rem;
	padding: 0;
	list-style: none;
}

@media (min-width: 768px) {
	.bm-stats-kpis {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bm-stats-kpi {
	border-radius: 0.375rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.05);
	padding: 1rem 1.25rem;
}

.bm-stats-kpi-label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.875rem;
	font-weight: 500;
	color: #6b7280;
}

.bm-stats-kpi strong {
	font-size: 1.5rem;
	font-weight: 600;
	color: #111827;
}

.bm-stats-chart-card {
	border-radius: 0.375rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.05);
	padding: 1rem 1.25rem 0.75rem;
}

.bm-stats-chart-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 600;
	color: #111827;
}

.bm-stats-legend {
	display: flex;
	justify-content: center;
	gap: 1.25rem;
	margin: 0.75rem 0 0.35rem;
	font-size: 0.8125rem;
	color: #6b7280;
}

.bm-stats-legend span {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.bm-stats-legend-dot {
	display: inline-block;
	width: 0.85rem;
	height: 0.85rem;
	border-radius: 0.2rem;
}

.bm-stats-legend-dot--income {
	background: #86efac;
}

.bm-stats-legend-dot--expense {
	background: #fda4af;
}

.bm-stats-chart-shell {
	width: 100%;
	height: 280px;
}

.bm-stats-chart {
	width: 100%;
	height: 100%;
	display: block;
}

.bm-settings-grid {
	padding-top: 4px;
}

.bm-settings-page.acri-card {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	padding: 0;
	background: #fff;
}

.bm-settings-report {
	padding: 32px 36px 40px;
}

.bm-settings-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 32px;
}

.bm-settings-kicker {
	margin: 0 0 4px;
	font-size: 0.8125rem;
	font-weight: 500;
	color: #6b7280;
	line-height: 1.4;
}

.bm-settings-title {
	margin: 0 0 8px;
	font-size: 1.75rem;
	font-weight: 700;
	color: #111827;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.bm-settings-lead {
	margin: 0;
	max-width: 720px;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-settings-save {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 0;
	border-radius: 10px;
	padding: 10px 18px;
	background: rgb(var(--bm-brand));
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
}

.bm-settings-save svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.bm-settings-save:hover {
	filter: brightness(0.95);
}

.bm-settings-section + .bm-settings-section {
	margin-top: 32px;
	padding-top: 28px;
	border-top: 1px solid #eef2f7;
}

.bm-settings-section-title {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 700;
	color: #111827;
}

.bm-settings-section-text {
	margin: 0 0 18px;
	max-width: 760px;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-settings-toggle-list {
	border: 1px solid #eef2f7;
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}

.bm-settings-toggle-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 18px;
	border-bottom: 1px solid #eef2f7;
}

.bm-settings-toggle-row:last-child {
	border-bottom: 0;
}

.bm-settings-toggle-label {
	font-size: 0.9375rem;
	color: #111827;
}

.bm-settings-toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.bm-settings-toggle input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.bm-settings-toggle-track {
	width: 44px;
	height: 24px;
	border-radius: 999px;
	background: #d1d5db;
	position: relative;
	transition: background 0.2s ease;
}

.bm-settings-toggle-track::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.18);
	transition: transform 0.2s ease;
}

.bm-settings-toggle input:checked + .bm-settings-toggle-track {
	background: rgb(var(--bm-brand));
}

.bm-settings-toggle input:checked + .bm-settings-toggle-track::after {
	transform: translateX(20px);
}

.bm-settings-custom-fields {
	display: grid;
	gap: 10px;
	margin-bottom: 14px;
}

.bm-settings-custom-field {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	gap: 12px;
	align-items: center;
}

.bm-settings-input {
	width: 100%;
	border: 1px solid #d1d5db;
	border-radius: 10px;
	padding: 10px 12px;
	font-size: 0.9375rem;
	color: #111827;
	background: #fff;
}

.bm-settings-input:focus {
	outline: none;
	border-color: rgb(var(--bm-brand));
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.bm-settings-add-field {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 12px;
	align-items: center;
}

.bm-settings-add-btn {
	border: 1px solid #d1d5db;
	border-radius: 10px;
	background: #fff;
	color: #374151;
	padding: 10px 16px;
	font-size: 0.9375rem;
	font-weight: 500;
	cursor: pointer;
	white-space: nowrap;
}

.bm-settings-add-btn:hover {
	background: #f9fafb;
}

.bm-settings-add-btn:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.bm-settings-remove-field {
	border: 0;
	background: transparent;
	color: #9ca3af;
	font-size: 1.4rem;
	line-height: 1;
	cursor: pointer;
	padding: 4px 8px;
}

.bm-settings-remove-field:hover {
	color: #ef4444;
}

.bm-settings-toggle--compact {
	margin-left: auto;
}

.bm-settings-placeholder {
	padding: 18px 0 4px;
	color: #6b7280;
	font-size: 0.9375rem;
	line-height: 1.55;
}

.bm-settings-link {
	color: rgb(var(--bm-brand));
	font-weight: 600;
	text-decoration: none;
}

.bm-settings-link:hover {
	text-decoration: underline;
}

@media (max-width: 768px) {
	.bm-settings-report {
		padding: 20px 18px 28px;
	}

	.bm-settings-head {
		flex-direction: column;
		align-items: stretch;
	}

	.bm-settings-save {
		justify-content: center;
	}

	.bm-settings-custom-field,
	.bm-settings-add-field {
		grid-template-columns: 1fr;
	}

	.bm-settings-account-columns {
		grid-template-columns: 1fr;
	}

	.bm-settings-chart-grid {
		grid-template-columns: 1fr;
	}
}

.bm-settings-section--compact {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.bm-settings-chart-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 14px;
}

.bm-settings-chart-card {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 16px 18px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.bm-settings-chart-card input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.bm-settings-chart-card.is-selected,
.bm-settings-chart-card:has(input:checked) {
	border-color: rgb(var(--bm-brand));
	box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.15);
}

.bm-settings-chart-radio {
	width: 18px;
	height: 18px;
	border: 2px solid #d1d5db;
	border-radius: 50%;
	margin-top: 2px;
	flex: 0 0 auto;
	position: relative;
}

.bm-settings-chart-card.is-selected .bm-settings-chart-radio,
.bm-settings-chart-card:has(input:checked) .bm-settings-chart-radio {
	border-color: rgb(var(--bm-brand));
}

.bm-settings-chart-card.is-selected .bm-settings-chart-radio::after,
.bm-settings-chart-card:has(input:checked) .bm-settings-chart-radio::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 50%;
	background: rgb(var(--bm-brand));
}

.bm-settings-chart-content {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.bm-settings-chart-content strong {
	font-size: 0.98rem;
	color: #111827;
}

.bm-settings-chart-content span {
	font-size: 0.875rem;
	line-height: 1.45;
	color: #6b7280;
}

.bm-settings-info-box {
	border: 1px solid #eef2f7;
	border-radius: 12px;
	background: #f9fafb;
	padding: 14px 16px;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-settings-mail-limit {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.bm-settings-mail-stats {
	margin-top: 4px;
}

.bm-settings-mail-stats-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
	font-size: 0.9375rem;
	font-weight: 600;
	color: #111827;
}

.bm-settings-mail-stats-remaining {
	color: #111827;
	white-space: nowrap;
}

.bm-settings-mail-progress {
	height: 8px;
	border-radius: 999px;
	background: #eef2f7;
	overflow: hidden;
	margin-bottom: 14px;
}

.bm-settings-mail-progress > span {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: rgb(var(--bm-brand));
	transition: width 0.2s ease;
}

.bm-settings-mail-limit-line,
.bm-settings-mail-support {
	margin: 0 0 6px;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-settings-mail-support {
	margin-bottom: 0;
}

.bm-settings-mail-footnote {
	margin-top: 28px;
	padding: 14px 16px;
	border-radius: 10px;
	background: #f9fafb;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #6b7280;
	text-align: center;
}

.bm-settings-mail-hint,
.bm-abonnement-email-hint {
	margin: 0 0 24px;
}

.bm-settings-mail-smtp {
	margin-top: 28px;
	padding-top: 28px;
	border-top: 1px solid #eef2f7;
}

.bm-settings-mail-enabled {
	margin-top: 18px;
}

.bm-settings-mail-deliverability {
	margin: 18px 0 0;
	padding-left: 18px;
	color: #6b7280;
	font-size: 0.875rem;
	line-height: 1.6;
}

.bm-settings-mail-deliverability li + li {
	margin-top: 6px;
}

@media (max-width: 639px) {
	.bm-settings-mail-stats-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}
}

.bm-settings-layout-accordions {
	display: grid;
	gap: 10px;
}

.bm-settings-layout-acc {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
}

.bm-settings-layout-acc summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	font-size: 0.98rem;
	font-weight: 700;
	color: #111827;
	cursor: pointer;
	list-style: none;
}

.bm-settings-layout-acc summary::-webkit-details-marker {
	display: none;
}

.bm-settings-layout-acc summary::after {
	content: '';
	width: 8px;
	height: 8px;
	border-right: 2px solid #6b7280;
	border-bottom: 2px solid #6b7280;
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}

.bm-settings-layout-acc[open] summary::after {
	transform: rotate(-135deg);
}

.bm-settings-layout-acc-body {
	padding: 0 16px 16px;
}

.bm-settings-layout-acc-body--muted {
	color: #6b7280;
	font-size: 0.875rem;
	line-height: 1.55;
}

.bm-settings-layout-grid {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	padding-bottom: 4px;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

.bm-settings-layout-pick {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 108px;
	padding: 6px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #fff;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.bm-settings-layout-pick:hover {
	border-color: #cbd5e1;
}

.bm-settings-layout-pick.is-active {
	border-color: rgb(var(--bm-brand));
	background: rgb(var(--bm-brand));
	box-shadow: 0 8px 20px rgba(37, 99, 235, 0.18);
}

.bm-settings-layout-thumb {
	display: block;
	border-radius: 6px;
	overflow: hidden;
	background: #f8fafc;
}

.bm-settings-layout-thumb img {
	display: block;
	width: 100%;
	height: auto;
}

.bm-settings-layout-label {
	display: block;
	margin-top: 6px;
	font-size: 0.75rem;
	font-weight: 600;
	color: #6b7280;
	text-align: center;
	line-height: 1.2;
}

.bm-settings-layout-pick.is-active .bm-settings-layout-label {
	color: #fff;
}

.bm-settings-layout-margin-grid {
	display: grid;
	gap: 10px;
}

.bm-settings-layout-slider {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 1fr auto;
	gap: 10px;
	align-items: center;
	font-size: 0.875rem;
	color: #374151;
}

.bm-settings-layout-slider input[type='range'] {
	width: 100%;
}

.bm-settings-layout-slider input[type='number'] {
	width: 56px;
	padding: 6px 8px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
}

@media (min-width: 900px) {
	.bm-settings-layout-grid {
		flex-wrap: wrap;
		overflow: visible;
	}

	.bm-settings-layout-pick {
		width: calc((100% - 40px) / 6);
		min-width: 108px;
	}
}

.bm-settings-account-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-top: 28px;
}

.bm-settings-account-panel {
	border: 1px solid #eef2f7;
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
	min-width: 0;
}

.bm-settings-account-panel-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid #eef2f7;
}

.bm-settings-account-panel-head h3 {
	margin: 0;
	font-size: 0.98rem;
	font-weight: 700;
	color: #111827;
}

.bm-settings-account-add {
	border: 0;
	background: transparent;
	color: rgb(var(--bm-brand));
	font-size: 0.875rem;
	font-weight: 600;
	cursor: pointer;
	padding: 4px 0;
	white-space: nowrap;
}

.bm-settings-account-add:hover {
	text-decoration: underline;
}

.bm-settings-account-list {
	max-height: 320px;
	overflow: auto;
}

.bm-settings-account-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	gap: 12px;
	align-items: center;
	padding: 12px 16px;
	border-bottom: 1px solid #eef2f7;
}

.bm-settings-account-row:last-child {
	border-bottom: 0;
}

.bm-settings-account-name {
	font-size: 0.9rem;
	color: #111827;
	line-height: 1.4;
	min-width: 0;
}

.bm-settings-account-number {
	font-size: 0.875rem;
	color: #6b7280;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.bm-settings-account-edit {
	border: 0;
	background: transparent;
	color: #9ca3af;
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	border-radius: 8px;
}

.bm-settings-account-edit svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.bm-settings-account-edit:hover {
	color: rgb(var(--bm-brand));
	background: #eff6ff;
}

.bm-settings-footnote {
	margin: 24px 0 0;
	padding: 16px 18px;
	border: 1px solid #eef2f7;
	border-radius: 12px;
	background: #f9fafb;
	font-size: 0.875rem;
	line-height: 1.6;
	color: #6b7280;
}

.bm-settings-account-dialog {
	border: 0;
	border-radius: 14px;
	padding: 0;
	width: min(420px, calc(100vw - 32px));
	box-shadow: 0 20px 40px rgba(15, 23, 42, 0.18);
}

.bm-settings-account-dialog::backdrop {
	background: rgba(15, 23, 42, 0.35);
}

.bm-settings-account-dialog-form {
	padding: 22px 22px 18px;
}

.bm-settings-account-dialog-form h3 {
	margin: 0 0 16px;
	font-size: 1.05rem;
	color: #111827;
}

.bm-settings-dialog-field {
	display: grid;
	gap: 6px;
	margin-bottom: 12px;
}

.bm-settings-dialog-field span {
	font-size: 0.875rem;
	font-weight: 600;
	color: #374151;
}

.bm-settings-dialog-actions {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 18px;
}

.bm-settings-dialog-cancel,
.bm-settings-dialog-save {
	border-radius: 10px;
	padding: 9px 14px;
	font-size: 0.9rem;
	font-weight: 600;
	cursor: pointer;
}

.bm-settings-dialog-cancel {
	border: 1px solid #d1d5db;
	background: #fff;
	color: #374151;
}

.bm-settings-dialog-save {
	border: 0;
	background: rgb(var(--bm-brand));
	color: #fff;
}

.bm-settings-import-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-top: 8px;
}

.bm-settings-import-card {
	border: 1px solid #eef2f7;
	border-radius: 14px;
	background: #fff;
	padding: 22px 22px 20px;
	min-width: 0;
}

.bm-settings-import-title {
	margin: 0 0 8px;
	font-size: 1.05rem;
	font-weight: 700;
	color: #111827;
}

.bm-settings-import-text {
	margin: 0 0 18px;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-settings-import-actions {
	display: grid;
	gap: 10px;
}

.bm-settings-import-form {
	margin: 0;
}

.bm-settings-import-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	border: 1px solid #d1d5db;
	border-radius: 10px;
	background: #fff;
	color: #111827;
	padding: 11px 14px;
	font-size: 0.9rem;
	font-weight: 500;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.bm-settings-import-btn:hover {
	background: #f9fafb;
	border-color: #cbd5e1;
}

.bm-settings-import-btn svg {
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
}

.bm-settings-import-btn--file {
	position: relative;
	overflow: hidden;
}

.bm-settings-import-btn--file input[type="file"] {
	position: absolute;
	inset: 0;
	opacity: 0;
	cursor: pointer;
}

@media (max-width: 768px) {
	.bm-settings-import-grid {
		grid-template-columns: 1fr;
	}
}

.bm-settings-field {
	display: grid;
	gap: 6px;
	min-width: 0;
}

.bm-settings-field-label {
	font-size: 0.875rem;
	font-weight: 600;
	color: #374151;
}

.bm-settings-textarea {
	min-height: 72px;
	resize: vertical;
}

.bm-settings-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 18px;
	margin-top: 8px;
}

.bm-settings-form-grid--single {
	grid-template-columns: minmax(0, 1fr);
}

.bm-settings-form-grid--thirds {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bm-settings-company-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(260px, 0.8fr);
	gap: 18px;
}

.bm-settings-panel {
	border: 1px solid #eef2f7;
	border-radius: 14px;
	background: #fff;
	padding: 20px 22px;
	min-width: 0;
}

.bm-settings-panel--wide {
	grid-column: 1 / -1;
}

.bm-settings-panel--logo {
	align-self: start;
}

.bm-settings-logo-drop {
	border: 2px dashed #cbd5e1;
	border-radius: 12px;
	min-height: 180px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 18px;
	text-align: center;
	color: #64748b;
	background: #f8fafc;
}

.bm-settings-logo-preview {
	max-width: 100%;
	max-height: 72px;
	object-fit: contain;
}

.bm-settings-company-hero {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	margin-bottom: 28px;
	text-align: center;
}

.bm-settings-company-icon {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: #eff6ff;
	color: rgb(var(--bm-brand));
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.bm-settings-company-icon svg {
	width: 28px;
	height: 28px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.bm-settings-company-name {
	margin: 0;
	font-size: 1.35rem;
	font-weight: 700;
	color: #111827;
}

.bm-settings-section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
}

.bm-settings-subscription-table {
	border: 1px solid #e8edf3;
	border-radius: 16px;
	overflow: hidden;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.bm-settings-subscription-row {
	display: grid;
	grid-template-columns: minmax(150px, 220px) minmax(0, 1fr);
	gap: 20px;
	padding: 16px 20px;
	border-bottom: 1px solid #eef2f7;
	font-size: 0.9375rem;
	align-items: center;
}

.bm-settings-subscription-row:nth-child(even) {
	background: rgba(248, 250, 252, 0.72);
}

.bm-settings-subscription-row:last-child {
	border-bottom: 0;
}

.bm-settings-subscription-label {
	color: #6b7280;
	font-size: 0.875rem;
	font-weight: 500;
}

.bm-settings-subscription-value {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 10px;
	min-width: 0;
}

.bm-settings-subscription-value--quota {
	flex-direction: column;
	align-items: flex-end;
	gap: 8px;
}

.bm-settings-subscription-text {
	color: #111827;
	font-weight: 600;
	font-size: 0.9375rem;
}

.bm-settings-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 0 12px;
	border-radius: 999px;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.2;
	border: 1px solid transparent;
	white-space: nowrap;
}

.bm-settings-pill--success {
	background: #ecfdf5;
	color: #047857;
	border-color: #a7f3d0;
}

.bm-settings-pill--warning {
	background: #fffbeb;
	color: #b45309;
	border-color: #fde68a;
}

.bm-settings-pill--danger {
	background: #fef2f2;
	color: #b91c1c;
	border-color: #fecaca;
}

.bm-settings-pill--info {
	background: #eff6ff;
	color: #1d4ed8;
	border-color: #bfdbfe;
}

.bm-settings-pill--muted {
	background: #f3f4f6;
	color: #4b5563;
	border-color: #e5e7eb;
}

.bm-settings-pill--start {
	background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);
	color: #1d4ed8;
	border-color: #bfdbfe;
}

.bm-settings-pill--gold {
	background: linear-gradient(180deg, #fffbeb 0%, #fef3c7 100%);
	color: #b45309;
	border-color: #fde68a;
}

.bm-settings-pill--platin {
	background: linear-gradient(180deg, #f5f3ff 0%, #ede9fe 100%);
	color: #6d28d9;
	border-color: #ddd6fe;
}

.bm-settings-quota {
	color: #111827;
	font-weight: 700;
	font-size: 0.9375rem;
}

.bm-settings-quota-bar {
	width: min(220px, 100%);
	height: 8px;
	border-radius: 999px;
	background: #e5e7eb;
	overflow: hidden;
}

.bm-settings-quota-bar > span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #3b82f6 0%, #2563eb 100%);
	transition: width 0.25s ease;
}

.bm-settings-quota-bar.is-quota-warn > span {
	background: linear-gradient(90deg, #f59e0b 0%, #d97706 100%);
}

.bm-settings-quota-bar.is-quota-full > span {
	background: linear-gradient(90deg, #ef4444 0%, #dc2626 100%);
}

.bm-settings-quota.is-quota-warn {
	color: #b45309;
}

.bm-settings-quota.is-quota-full {
	color: #b91c1c;
}

.bm-settings-status.is-active {
	color: #059669;
}

.bm-settings-team-list,
.bm-settings-team-invite {
	margin-top: 12px;
}

.bm-settings-team-row {
	display: flex;
	align-items: center;
	gap: 14px;
	border: 1px solid #eef2f7;
	border-radius: 999px;
	padding: 10px 16px;
}

.bm-settings-team-avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #e5e7eb;
	color: #374151;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	flex: 0 0 auto;
}

.bm-settings-team-meta {
	display: grid;
	gap: 2px;
	min-width: 0;
}

.bm-settings-team-meta strong {
	font-size: 0.95rem;
	color: #111827;
}

.bm-settings-team-meta span,
.bm-settings-team-meta em {
	font-size: 0.875rem;
	color: #6b7280;
	font-style: normal;
}

.bm-settings-team-invite-row {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(140px, 0.8fr) auto;
	gap: 10px;
	margin-top: 10px;
}

.bm-settings-invite-btn {
	border: 0;
	border-radius: 10px;
	padding: 10px 16px;
	background: #9ca3af;
	color: #fff;
	font-weight: 600;
	cursor: not-allowed;
}

.bm-settings-tax-list {
	border: 1px solid #eef2f7;
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 14px;
}

.bm-settings-tax-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 16px;
	border-bottom: 1px solid #eef2f7;
}

.bm-settings-tax-row:last-child {
	border-bottom: 0;
}

.bm-settings-tax-standard {
	color: #059669;
	font-size: 0.875rem;
	font-weight: 600;
}

.bm-settings-tax-set {
	border: 1px solid #d1d5db;
	background: #fff;
	border-radius: 999px;
	padding: 6px 12px;
	font-size: 0.8125rem;
	cursor: pointer;
}

.bm-settings-tax-add {
	display: grid;
	grid-template-columns: minmax(0, 160px) auto;
	gap: 10px;
	align-items: center;
}

.bm-settings-segment {
	display: inline-flex;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 12px;
}

.bm-settings-segment-item {
	position: relative;
}

.bm-settings-segment-item input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.bm-settings-segment-item span {
	display: inline-flex;
	padding: 10px 16px;
	font-size: 0.875rem;
	font-weight: 600;
	color: #6b7280;
	background: #fff;
	cursor: pointer;
}

.bm-settings-segment-item.is-active span,
.bm-settings-segment-item:has(input:checked) span {
	background: rgb(var(--bm-brand));
	color: #fff;
}

.bm-settings-segment--compact {
	margin-bottom: 0;
}

.bm-settings-docnum-section + .bm-settings-docnum-section {
	margin-top: 28px;
	padding-top: 28px;
	border-top: 1px solid #eef2f7;
}

.bm-settings-docnum-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 14px;
}

.bm-settings-docnum-row-label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: #111827;
	min-width: 72px;
}

.bm-settings-docnum-banner {
	margin: 0;
	padding: 14px 16px;
	border-radius: 10px;
	background: #f3f4f6;
	color: #6b7280;
	font-size: 0.875rem;
	line-height: 1.55;
	text-align: center;
}

.bm-settings-docnum-banner--footer {
	margin-top: 16px;
}

.bm-settings-form-grid--prefix {
	margin-top: 0;
}

.bm-settings-form-grid--prefix .bm-settings-field:nth-child(4),
.bm-settings-form-grid--prefix .bm-settings-field:nth-child(5) {
	grid-column: span 1;
}

.bm-settings-docnum-custom-schema {
	max-width: 360px;
	margin-top: 14px;
}

.bm-settings-docnum-counters {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px 18px;
	margin-top: 12px;
}

.bm-settings-docnum-counter {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	border: 1px solid #eef2f7;
	border-radius: 12px;
	background: #fff;
}

.bm-settings-docnum-counter-label {
	font-size: 0.875rem;
	color: #374151;
}

.bm-settings-docnum-counter-value {
	font-size: 0.9375rem;
	font-weight: 700;
	color: #111827;
	text-align: right;
	min-width: 1.5rem;
}

.bm-settings-docnum-counter-edit {
	border: 0;
	background: transparent;
	padding: 0;
	font-size: 0.875rem;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
}

@media (max-width: 960px) {
	.bm-settings-company-grid,
	.bm-settings-form-grid,
	.bm-settings-form-grid--thirds,
	.bm-settings-team-invite-row {
		grid-template-columns: 1fr;
	}

	.bm-settings-subscription-row {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.bm-settings-subscription-value,
	.bm-settings-subscription-value--quota {
		justify-content: flex-start;
		align-items: flex-start;
	}

	.bm-settings-quota-bar {
		width: 100%;
	}

	.bm-settings-panel--wide {
		grid-column: auto;
	}

	.bm-settings-docnum-counters {
		grid-template-columns: 1fr;
	}

	.bm-settings-docnum-row {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* ---- BillMore Einnahmen / Ausgaben Editor ---- */
.bm-booking-meta-grid {
	display: grid;
	grid-template-columns: minmax(0, 10rem) minmax(0, 12rem) minmax(0, 1fr);
	gap: 1rem;
}

.bm-doc-block-head--split {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

.bm-booking-lines {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.bm-booking-line {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.9fr) minmax(0, 1.1fr) minmax(0, 7rem) auto;
	gap: 0.75rem;
	align-items: end;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid #eef2f7;
}

.bm-booking-line-remove {
	width: 2rem;
	height: 2rem;
	border: 0;
	border-radius: 999px;
	background: #f1f5f9;
	color: #64748b;
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
}

.bm-booking-add-line {
	margin-top: 0.75rem;
}

.bm-booking-payment-grid {
	display: flex;
	align-items: end;
	gap: 1.5rem;
	flex-wrap: wrap;
}

.bm-booking-payment-date.is-disabled {
	opacity: 0.45;
	pointer-events: none;
}

@media (max-width: 960px) {
	.bm-booking-meta-grid,
	.bm-booking-line {
		grid-template-columns: 1fr;
	}

	.bm-booking-footer-grid--split {
		grid-template-columns: 1fr;
	}
}


.bm-doc-list-muted {
	color: #94a3b8;
}

.bm-booking-footer-grid--split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1rem;
}

.bm-booking-receipt-drop {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 9rem;
	padding: 1.25rem;
	border: 2px dashed #93c5fd;
	border-radius: 0.75rem;
	background: #f8fbff;
	cursor: pointer;
	text-align: center;
}

.bm-booking-receipt-drop input[type="file"] {
	display: none;
}

.bm-booking-receipt-drop-text {
	font-size: 0.9375rem;
	font-weight: 600;
	color: #2563eb;
}

.bm-booking-receipt-drop.is-dragover {
	background: #eff6ff;
	border-color: #2563eb;
}

.bm-booking-receipt-current {
	margin: 0.75rem 0 0;
	font-size: 0.875rem;
	color: #475569;
}

.bm-booking-receipt-current a {
	color: #2563eb;
	font-weight: 600;
}

/* Oeffentliche Demo */
.buchly-demo-banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 1rem;
	margin: 0 0 1rem;
	padding: 0.75rem 1rem;
	border: 1px solid #bfdbfe;
	border-radius: 12px;
	background: #eff6ff;
	color: #1e3a8a;
	font-size: 0.875rem;
	line-height: 1.4;
}

.buchly-demo-banner strong {
	display: inline-flex;
	align-items: center;
	padding: 0.15rem 0.5rem;
	border-radius: 999px;
	background: #2563eb;
	color: #fff;
	font-size: 0.75rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.buchly-demo-banner a {
	margin-left: auto;
	font-weight: 600;
	color: #1d4ed8;
	text-decoration: none;
}

.buchly-demo-banner a:hover {
	text-decoration: underline;
}

.buchly-demo-toast {
	position: fixed;
	z-index: 99999;
	left: 50%;
	bottom: 1.5rem;
	transform: translateX(-50%) translateY(120%);
	max-width: min(32rem, calc(100vw - 2rem));
	padding: 0.85rem 1.1rem;
	border-radius: 12px;
	background: #0f172a;
	color: #fff;
	font-size: 0.875rem;
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.28);
	opacity: 0;
	pointer-events: none;
	transition: transform 0.2s ease, opacity 0.2s ease;
}

.buchly-demo-toast.is-visible {
	transform: translateX(-50%) translateY(0);
	opacity: 1;
}

/* ---- BillMore Lohnabrechnung ---- */
.bm-payroll-wrap {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.bm-payroll-page {
	max-width: 1080px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.bm-payroll-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.25rem;
}

.bm-payroll-kicker {
	margin: 0 0 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgb(var(--bm-brand));
}

.bm-payroll-title {
	margin: 0;
	font-family: Lexend, Inter, sans-serif;
	font-size: 1.875rem;
	font-weight: 600;
	line-height: 1.2;
	color: #111827;
}

.bm-payroll-lead {
	margin: 0.5rem 0 0;
	max-width: 42rem;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-payroll-head-action {
	margin: 0;
}

.bm-payroll-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 960px) {
	.bm-payroll-layout {
		grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.85fr);
		align-items: start;
	}
}

.bm-payroll-side {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.bm-payroll-card {
	border-radius: 0.75rem;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
	outline: 1px solid rgba(15, 23, 42, 0.06);
	padding: 1.25rem 1.35rem;
}

.bm-payroll-card--compact {
	padding: 1rem 1.15rem;
}

.bm-payroll-card-head {
	margin-bottom: 1rem;
}

.bm-payroll-card-head h2 {
	margin: 0;
	font-family: Lexend, Inter, sans-serif;
	font-size: 1.05rem;
	font-weight: 600;
	color: #111827;
}

.bm-payroll-card-head p {
	margin: 0.35rem 0 0;
	font-size: 0.8125rem;
	line-height: 1.45;
	color: #6b7280;
}

.bm-payroll-card-head--row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
}

.bm-payroll-form-section + .bm-payroll-form-section {
	margin-top: 1.15rem;
	padding-top: 1.15rem;
	border-top: 1px solid #eef2f7;
}

.bm-payroll-form-section-title {
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #64748b;
}

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

@media (min-width: 640px) {
	.bm-payroll-form-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	.bm-payroll-form-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bm-payroll-form .acri-form label,
.bm-payroll-form label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #374151;
}

.bm-payroll-form input,
.bm-payroll-form select {
	width: 100%;
}

.bm-payroll-form-actions {
	margin: 1.15rem 0 0;
}

.bm-payroll-mini-stats {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 0.75rem;
}

.bm-payroll-mini-stats li {
	padding: 0.75rem 0.85rem;
	border-radius: 0.5rem;
	background: #f8fafc;
	border: 1px solid #eef2f7;
}

.bm-payroll-mini-stats span {
	display: block;
	font-size: 0.75rem;
	font-weight: 600;
	color: #64748b;
}

.bm-payroll-mini-stats strong {
	display: block;
	margin-top: 0.2rem;
	font-size: 1.125rem;
	font-weight: 700;
	color: #111827;
}

.bm-payroll-mini-stats small {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.75rem;
	color: #94a3b8;
}

.bm-payroll-count {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem 0.65rem;
	border-radius: 999px;
	background: #eff6ff;
	color: rgb(var(--bm-brand));
	font-size: 0.75rem;
	font-weight: 700;
}

.bm-payroll-table-wrap {
	overflow-x: auto;
	margin: 0 -0.25rem;
	padding: 0 0.25rem;
}

.bm-payroll-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 760px;
}

.bm-payroll-table--yearly {
	min-width: 980px;
}

.bm-payroll-table thead th {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid #e5e7eb;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-align: left;
	color: #64748b;
	background: #f8fafc;
}

.bm-payroll-table tbody td {
	padding: 0.8rem 0.75rem;
	border-bottom: 1px solid #f1f5f9;
	font-size: 0.875rem;
	color: #374151;
	vertical-align: middle;
}

.bm-payroll-table tbody tr:last-child td {
	border-bottom: 0;
}

.bm-payroll-table tbody tr:hover td {
	background: #fafbfd;
}

.bm-payroll-period {
	display: inline-flex;
	align-items: center;
	padding: 0.15rem 0.5rem;
	border-radius: 0.375rem;
	background: #f1f5f9;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #334155;
}

.bm-payroll-num {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.bm-payroll-num--strong {
	font-weight: 700;
	color: #111827;
}

.bm-payroll-actions {
	width: 5.5rem;
	text-align: right;
}

.bm-payroll-actions form {
	margin: 0;
}

.bm-payroll-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	border: 1px solid transparent;
	border-radius: 0.5rem;
	padding: 0.55rem 0.95rem;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	text-decoration: none;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.bm-payroll-btn--primary {
	background: rgb(var(--bm-brand));
	color: #fff;
}

.bm-payroll-btn--primary:hover {
	background: rgb(var(--bm-brand-dark));
}

.bm-payroll-btn--outline {
	border-color: #cbd5e1;
	background: #fff;
	color: #334155;
}

.bm-payroll-btn--outline:hover {
	border-color: rgb(var(--bm-brand));
	color: rgb(var(--bm-brand));
	background: #eff6ff;
}

.bm-payroll-btn--ghost {
	border-color: #e5e7eb;
	background: #fff;
	color: #374151;
	padding: 0.4rem 0.7rem;
}

.bm-payroll-btn--ghost:hover {
	border-color: rgb(var(--bm-brand));
	color: rgb(var(--bm-brand));
	background: #eff6ff;
}

.bm-payroll-empty,
.bm-payroll-empty-inline {
	margin: 0;
	padding: 1.25rem 1rem;
	border-radius: 0.75rem;
	background: #fff;
	border: 1px dashed #cbd5e1;
	color: #64748b;
	text-align: center;
}

.bm-payroll-empty-hint {
	margin-top: 0.35rem;
	font-size: 0.8125rem;
	color: #94a3b8;
}

.buchly-dashboard-workspace .bm-payroll-wrap.acri-card {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Erweiterungen (BillMore 1:1) */
.bm-extensions-wrap.acri-card {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}

.bm-extensions-page {
	max-width: 920px;
	margin: 0 auto;
	padding: 0.5rem 0 2rem;
}

.bm-extensions-head {
	text-align: center;
	margin-bottom: 2.5rem;
}

.bm-extensions-head-icon {
	width: 3.5rem;
	height: 3.5rem;
	margin: 0 auto 1rem;
	border-radius: 999px;
	background: #eff6ff;
	color: rgb(var(--bm-brand));
	display: grid;
	place-items: center;
}

.bm-extensions-head-icon svg {
	width: 1.6rem;
	height: 1.6rem;
}

.bm-extensions-title {
	margin: 0 0 0.75rem;
	font-size: 2rem;
	font-weight: 800;
	color: #0f172a;
	letter-spacing: -0.02em;
}

.bm-extensions-lead {
	margin: 0 auto;
	max-width: 42rem;
	color: #64748b;
	font-size: 1rem;
	line-height: 1.6;
}

.bm-extensions-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
	margin-bottom: 1.5rem;
}

.bm-extensions-card {
	appearance: none;
	border: 1px solid #e2e8f0;
	border-radius: 0.85rem;
	background: #fff;
	padding: 1.75rem 1.5rem 1.5rem;
	text-align: center;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.65rem;
	min-height: 220px;
}

.bm-extensions-card:hover,
.bm-extensions-card.is-active {
	border-color: rgb(var(--bm-brand));
	box-shadow: 0 0 0 1px rgb(var(--bm-brand));
}

.bm-extensions-card-logo {
	display: grid;
	place-items: center;
	min-height: 3rem;
	margin-bottom: 0.25rem;
}

.bm-extensions-card-logo--datev svg {
	width: 5.5rem;
	height: auto;
}

.bm-extensions-card-logo--api {
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 0.65rem;
	background: #eff6ff;
	color: rgb(var(--bm-brand));
}

.bm-extensions-card-logo--api svg {
	width: 1.35rem;
	height: 1.35rem;
}

.bm-extensions-card-title {
	font-size: 1.05rem;
	color: #0f172a;
}

.bm-extensions-card-text {
	color: #64748b;
	font-size: 0.92rem;
	line-height: 1.55;
	max-width: 18rem;
}

.bm-extensions-card-badge {
	margin-top: auto;
	font-size: 0.75rem;
	font-weight: 700;
	color: #047857;
	background: #ecfdf5;
	border-radius: 999px;
	padding: 0.2rem 0.65rem;
}

.bm-extensions-panel {
	border: 1px solid #e2e8f0;
	border-radius: 0.85rem;
	background: #fff;
	padding: 1.5rem;
	margin-bottom: 1.5rem;
}

.bm-extensions-panel.is-hidden {
	display: none;
}

.bm-extensions-panel-head h2 {
	margin: 0 0 0.35rem;
	font-size: 1.25rem;
	color: #0f172a;
}

.bm-extensions-panel-head p {
	margin: 0 0 1.25rem;
	color: #64748b;
}

.bm-extensions-form {
	display: grid;
	gap: 1rem;
}

.bm-extensions-field-group,
.bm-extensions-field {
	display: grid;
	gap: 0.45rem;
}

.bm-extensions-field-label {
	font-size: 0.875rem;
	font-weight: 600;
	color: #334155;
}

.bm-extensions-radio-row {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	color: #475569;
	font-size: 0.92rem;
}

.bm-extensions-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
	margin: 0.5rem 0 0.25rem;
}

.bm-extensions-stats div {
	border: 1px solid #e2e8f0;
	border-radius: 0.65rem;
	padding: 0.75rem;
	background: #f8fafc;
}

.bm-extensions-stats span {
	display: block;
	font-size: 0.78rem;
	color: #64748b;
	margin-bottom: 0.25rem;
}

.bm-extensions-stats strong {
	font-size: 1.1rem;
	color: #0f172a;
}

.bm-extensions-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: center;
	margin-top: 0.5rem;
}

.bm-extensions-actions--stack {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid #e2e8f0;
}

.bm-extensions-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 0.55rem;
	border: 1px solid transparent;
	padding: 0.55rem 1rem;
	font-size: 0.875rem;
	font-weight: 700;
	cursor: pointer;
	text-decoration: none;
	background: #fff;
}

.bm-extensions-btn--primary {
	background: rgb(var(--bm-brand));
	border-color: rgb(var(--bm-brand));
	color: #fff !important;
}

.bm-extensions-btn--primary:hover {
	filter: brightness(0.95);
	color: #fff !important;
}

.bm-extensions-btn--primary:visited {
	color: #fff !important;
}

.bm-extensions-btn--outline {
	border-color: #cbd5e1;
	color: #334155;
}

.bm-extensions-btn--outline:hover {
	border-color: rgb(var(--bm-brand));
	color: rgb(var(--bm-brand));
	background: #eff6ff;
}

.bm-extensions-btn--ghost {
	border-color: #e2e8f0;
	color: #64748b;
	padding: 0.35rem 0.65rem;
	font-size: 0.8125rem;
}

.bm-extensions-hint,
.bm-extensions-empty {
	margin: 0;
	color: #64748b;
	font-size: 0.875rem;
	line-height: 1.5;
}

.bm-extensions-upgrade {
	border: 1px dashed #cbd5e1;
	border-radius: 0.75rem;
	padding: 1rem;
	background: #f8fafc;
}

.bm-extensions-upgrade p {
	margin: 0 0 0.75rem;
	color: #475569;
}

.bm-extensions-flash {
	border: 1px solid #86efac;
	background: #f0fdf4;
	border-radius: 0.75rem;
	padding: 1rem;
	margin-bottom: 1rem;
}

.bm-extensions-flash strong {
	display: block;
	color: #166534;
	margin-bottom: 0.25rem;
}

.bm-extensions-copy-row {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 0.5rem;
}

.bm-extensions-copy-row input,
.bm-extensions-field input[type="url"],
.bm-extensions-field input[type="text"] {
	width: 100%;
	border: 1px solid #cbd5e1;
	border-radius: 0.55rem;
	padding: 0.55rem 0.75rem;
	font-size: 0.875rem;
}

.bm-extensions-api-meta {
	display: grid;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.bm-extensions-api-keys {
	margin-bottom: 1.25rem;
}

.bm-extensions-api-keys-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.75rem;
}

.bm-extensions-api-keys-head h3,
.bm-extensions-endpoints h3 {
	margin: 0;
	font-size: 1rem;
	color: #0f172a;
}

.bm-extensions-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
}

.bm-extensions-table th,
.bm-extensions-table td {
	padding: 0.65rem 0.5rem;
	border-bottom: 1px solid #e2e8f0;
	text-align: left;
	vertical-align: middle;
}

.bm-extensions-table th {
	color: #64748b;
	font-weight: 600;
}

.bm-extensions-endpoints ul {
	margin: 0.5rem 0 0.75rem;
	padding-left: 1.1rem;
	color: #475569;
}

.bm-extensions-endpoints li {
	margin: 0.35rem 0;
}

.bm-extensions-endpoints code {
	font-size: 0.78rem;
	word-break: break-all;
}

.bm-extensions-link {
	color: rgb(var(--bm-brand));
	font-weight: 700;
	text-decoration: none;
}

.bm-extensions-link:hover {
	text-decoration: underline;
}

.bm-extensions-footer {
	text-align: center;
	border-radius: 0.85rem;
	background: #f1f5f9;
	color: #64748b;
	padding: 1rem 1.25rem;
	font-size: 0.92rem;
	line-height: 1.6;
}

.bm-extensions-footer a {
	color: rgb(var(--bm-brand));
	font-weight: 700;
	text-decoration: none;
}

.bm-extensions-footer a:hover {
	text-decoration: underline;
}

@media (max-width: 768px) {
	.bm-extensions-grid {
		grid-template-columns: 1fr;
	}

	.bm-extensions-stats {
		grid-template-columns: 1fr;
	}

	.bm-extensions-copy-row {
		grid-template-columns: 1fr;
	}
}

/* ---- Mobile: Legacy-ACRI-CSS vom BillMore-Dashboard fernhalten ---- */
@media (max-width: 900px) {
	body.billmore-dashboard-page .buchly-dashboard-workspace.acri-wrap {
		padding: 0 !important;
		min-height: 0 !important;
	}

	body.billmore-dashboard-page .acri-mobile-tabs,
	body.billmore-dashboard-page .acri-topbar,
	body.billmore-dashboard-page #acri-splash {
		display: none !important;
	}
}

/* ---- CSV / PDF Bericht (BillMore) ---- */
.bm-csv-report-wrap {
	padding: 0.25rem 0 1.5rem;
}

.bm-csv-report-title {
	margin: 0 0 0.5rem;
	font-size: 1.65rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-csv-report-lead {
	margin: 0 0 1.5rem;
	max-width: 52rem;
	color: #64748b;
	line-height: 1.55;
}

.bm-csv-report-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

.bm-csv-report-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 1.25rem 1.35rem;
	min-height: 12rem;
}

.bm-csv-report-card-title {
	margin: 0 0 1rem;
	font-size: 1rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-csv-toggle {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin: 0 0 0.85rem;
	font-size: 0.95rem;
	color: #334155;
	cursor: pointer;
	user-select: none;
}

.bm-csv-toggle--sub {
	margin-left: 1.35rem;
	font-size: 0.9rem;
	color: #64748b;
}

.bm-csv-toggle input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.bm-csv-toggle-ui {
	width: 2.5rem;
	height: 1.35rem;
	border-radius: 999px;
	background: #cbd5e1;
	position: relative;
	flex: 0 0 auto;
	transition: background 0.15s ease;
}

.bm-csv-toggle-ui::after {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.18);
	transition: transform 0.15s ease;
}

.bm-csv-toggle input:checked + .bm-csv-toggle-ui {
	background: #2563eb;
}

.bm-csv-toggle input:checked + .bm-csv-toggle-ui::after {
	transform: translateX(1.1rem);
}

.bm-csv-toggle input:disabled + .bm-csv-toggle-ui {
	opacity: 0.45;
}

.bm-csv-period-tabs {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin-bottom: 1rem;
	padding: 0.2rem;
	background: #f1f5f9;
	border-radius: 999px;
}

.bm-csv-period-tab {
	border: 0;
	background: transparent;
	color: #64748b;
	font-size: 0.88rem;
	font-weight: 600;
	padding: 0.4rem 0.85rem;
	border-radius: 999px;
	cursor: pointer;
}

.bm-csv-period-tab.is-active {
	background: #fff;
	color: #2563eb;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

.bm-csv-field-label {
	display: block;
	margin-bottom: 0.45rem;
	font-size: 0.82rem;
	font-weight: 600;
	color: #64748b;
}

.bm-csv-date-input,
.bm-csv-select {
	width: 100%;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 0.55rem 0.7rem;
	font-size: 0.95rem;
	color: #0f172a;
	background: #fff;
}

.bm-csv-month-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.5rem;
}

.bm-csv-custom-range {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	gap: 0.5rem;
	align-items: center;
}

.bm-csv-period-fields.is-hidden {
	display: none;
}

.bm-csv-report-card--export {
	display: flex;
	flex-direction: column;
}

.bm-csv-download-btn {
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	width: 100%;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	background: #fff;
	color: #0f172a;
	font-size: 0.95rem;
	font-weight: 600;
	padding: 0.75rem 1rem;
	cursor: pointer;
}

.bm-csv-download-btn:hover {
	border-color: #cbd5e1;
	background: #f8fafc;
}

.bm-csv-download-btn svg {
	width: 1.1rem;
	height: 1.1rem;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.6;
}

@media (max-width: 1024px) {
	.bm-csv-report-grid {
		grid-template-columns: 1fr;
	}
}

.bm-pdf-report-card--export {
	gap: 0.65rem;
}

.bm-pdf-export-btn + .bm-pdf-export-btn {
	margin-top: 0;
}

.bm-pdf-preview-modal {
	border: 0;
	padding: 0;
	width: min(920px, calc(100vw - 32px));
	max-width: calc(100vw - 32px);
	background: transparent;
	overflow: visible;
}

.bm-pdf-preview-modal::backdrop {
	background: rgba(15, 23, 42, 0.45);
}

.bm-pdf-preview-close {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.95);
	color: #0f172a;
	font-size: 1.5rem;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
}

.bm-pdf-preview-sheet {
	position: relative;
	max-width: 210mm;
	min-height: 280mm;
	margin: 24px auto;
	background: #fff;
	padding: 18mm 16mm;
	box-shadow: 0 12px 40px rgba(15, 23, 42, 0.18);
}

.bm-pdf-preview-block {
	margin-bottom: 28mm;
}

.bm-pdf-preview-heading {
	margin: 0 0 6px;
	font-size: 1.35rem;
	font-weight: 700;
	color: #0f172a;
}

.bm-pdf-preview-period {
	margin: 0 0 18px;
	color: #64748b;
	font-size: 0.95rem;
}

.bm-pdf-preview-empty {
	margin: 48px 0;
	text-align: center;
	color: #94a3b8;
	font-style: italic;
}

.bm-pdf-preview-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.bm-pdf-preview-table td {
	padding: 7px 0;
	border-bottom: 1px solid #e2e8f0;
	vertical-align: top;
}

.bm-pdf-preview-table td:last-child {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.bm-pdf-preview-footer {
	margin-top: 36mm;
	text-align: center;
	font-size: 0.82rem;
	color: #64748b;
}

.bm-pdf-preview-page {
	margin: 10px 0 0;
	text-align: center;
	font-size: 0.78rem;
	color: #94a3b8;
}

/* BillMore Dokumentenlayout (Einstellungen) 1:1 */
.bm-dl-page .acri-card,
.bm-dl-page.acri-card {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.bm-dl-card {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	border: 1px solid rgba(15, 23, 42, 0.05);
}

.bm-dl-card-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px 16px;
	padding: 16px 24px;
	border-bottom: 1px solid #f3f4f6;
}

.bm-dl-card-title {
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	color: #111827;
}

.bm-dl-card-lead {
	margin: 4px 0 0;
	font-size: 0.875rem;
	line-height: 1.5;
	color: #6b7280;
	max-width: 42rem;
}

.bm-dl-save {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border: 0;
	border-radius: 8px;
	background: #0096eb;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 600;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
	cursor: pointer;
}

.bm-dl-save:hover {
	background: #007bc2;
}

.bm-dl-save svg {
	width: 18px;
	height: 18px;
}

.bm-dl-form {
	padding: 24px;
}

.bm-dl-columns {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

@media (min-width: 1024px) {
	.bm-dl-columns {
		flex-direction: row;
		align-items: flex-start;
	}

	.bm-dl-preview-col {
		width: 50%;
		position: sticky;
		top: 0;
		align-self: flex-start;
	}

	.bm-dl-settings-col {
		width: 50%;
	}
}

.bm-dl-section-head h3 {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 500;
	color: #111827;
}

.bm-dl-section-head p {
	margin: 4px 0 0;
	font-size: 0.875rem;
	color: #4b5563;
}

.bm-dl-preview-stage {
	margin-top: 16px;
	background: #f9fafb;
	border-radius: 8px;
	padding: 16px;
	min-height: 420px;
	display: flex;
	align-items: stretch;
	justify-content: center;
}

.bm-dl-preview-frame {
	width: 100%;
	min-height: 70vh;
	border: 0;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
}

.bm-dl-panels {
	display: grid;
	gap: 24px;
	margin-top: 16px;
}

.bm-dl-panel {
	border: 1px solid #d1d5db;
	border-radius: 8px;
	padding: 16px;
}

.bm-dl-panel summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.875rem;
	font-weight: 500;
	color: #111827;
	cursor: pointer;
	list-style: none;
}

.bm-dl-panel summary::-webkit-details-marker {
	display: none;
}

.bm-dl-panel summary::after {
	content: '';
	width: 8px;
	height: 8px;
	border-right: 2px solid #6b7280;
	border-bottom: 2px solid #6b7280;
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}

.bm-dl-panel[open] summary::after {
	transform: rotate(-135deg);
}

.bm-dl-panel-body {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid #e5e7eb;
}

.bm-dl-panel-body--muted {
	font-size: 0.875rem;
	line-height: 1.55;
	color: #6b7280;
}

.bm-dl-title-hint {
	margin: 0 0 8px;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #111827;
	font-weight: 500;
}

.bm-dl-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 10px;
	font-size: 0.875rem;
	line-height: 1.45;
	color: #111827;
	cursor: pointer;
}

.bm-dl-check input[type="checkbox"] {
	margin-top: 2px;
	flex-shrink: 0;
}

.bm-dl-design-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4px;
	padding: 4px;
	background: #f3f4f6;
	border-radius: 12px;
	max-height: 380px;
	overflow-y: auto;
	overscroll-behavior: contain;
}

@media (min-width: 640px) {
	.bm-dl-design-tabs {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1536px) {
	.bm-dl-design-tabs {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}
}

.bm-dl-design-tab {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 20px 8px 10px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: #4b5563;
	font-size: 0.875rem;
	font-weight: 500;
	cursor: pointer;
}

.bm-dl-design-tab:hover {
	background: rgba(255, 255, 255, 0.5);
	color: #0096eb;
}

.bm-dl-design-tab.is-active {
	background: #0096eb;
	color: #fff;
	font-weight: 700;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}

.bm-dl-design-thumb img {
	display: block;
	width: 100px;
	height: 100px;
	object-fit: cover;
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
	border: 1px solid #e5e7eb;
}

.bm-dl-font-label {
	display: block;
	margin: 20px 0 8px;
	font-size: 0.875rem;
	font-weight: 500;
	color: #111827;
}

.bm-dl-font-picker {
	position: relative;
}

.bm-dl-font-trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 6px 36px 6px 8px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
	cursor: pointer;
}

.bm-dl-font-trigger svg {
	width: 20px;
	height: 20px;
	color: #9ca3af;
}

.bm-dl-font-img {
	height: 20px;
	width: auto;
}

.bm-dl-font-menu {
	position: absolute;
	z-index: 20;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	box-shadow: 0 10px 25px rgba(15, 23, 42, 0.12);
	padding: 4px;
}

.bm-dl-font-option {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 8px 10px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	cursor: pointer;
}

.bm-dl-font-option:hover,
.bm-dl-font-option.is-active {
	background: #f3f4f6;
}

.bm-dl-font-option img {
	height: 20px;
	width: auto;
}

.bm-dl-logo-drop {
	border: 2px dashed #d1d5db;
	border-radius: 8px;
	padding: 16px;
	text-align: center;
	margin-bottom: 16px;
}

.bm-dl-logo-preview {
	display: block;
	max-height: 64px;
	margin: 0 auto 12px;
	object-fit: contain;
}

.bm-dl-logo-upload {
	display: block;
	cursor: pointer;
}

.bm-dl-logo-upload input {
	display: none;
}

.bm-dl-logo-upload-title {
	display: block;
	font-weight: 600;
	color: #4b5563;
}

.bm-dl-logo-upload-sub {
	display: block;
	margin-top: 4px;
	font-weight: 300;
	color: #4b5563;
}

.bm-dl-field,
.bm-dl-slider {
	display: block;
	margin-top: 16px;
}

.bm-dl-field > span,
.bm-dl-slider > span {
	display: block;
	margin-bottom: 8px;
	font-size: 0.875rem;
	font-weight: 500;
	color: #111827;
}

.bm-dl-field select {
	width: 100%;
	padding: 8px 12px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	background: #fff;
	font-size: 0.875rem;
	text-align: center;
}

.bm-dl-slider-row {
	display: flex;
	align-items: center;
	gap: 12px;
}

.bm-dl-slider-row input[type='range'] {
	flex: 1;
}

.bm-dl-slider-row input[type='number'] {
	width: 72px;
	padding: 8px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	font-size: 0.875rem;
}

.bm-dl-margin-grid {
	display: grid;
	gap: 16px;
}

.bm-dc-assets-lead {
	margin: 0 0 12px;
	font-size: 0.875rem;
	line-height: 1.5;
	color: #4b5563;
}

.bm-dc-assets-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.bm-dc-asset-card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 12px 14px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #fff;
	text-decoration: none;
	color: #111827;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.bm-dc-asset-card strong {
	font-size: 0.9rem;
}

.bm-dc-asset-card span {
	font-size: 0.78rem;
	line-height: 1.4;
	color: #6b7280;
}

.bm-dc-asset-card:hover {
	border-color: #c9922e;
	box-shadow: 0 4px 14px rgba(201, 146, 46, 0.12);
}

@media (min-width: 900px) {
	.bm-dc-assets-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media print {
	.bm-app-sidebar,
	.bm-app-topbar,
	.bm-csv-report-card--export,
	.bm-csv-period-tabs,
	.acri-print-tools {
		display: none !important;
	}
}

.bm-2fa-setup-grid {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1.5rem;
	align-items: start;
	margin-top: 1rem;
}

.bm-2fa-qr {
	display: block;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #fff;
	padding: 8px;
	max-width: 216px;
}

.bm-2fa-qr svg {
	display: block;
	width: 200px;
	height: 200px;
}

.bm-2fa-recovery-box {
	padding: 16px;
	border: 1px solid #dbeafe;
	border-radius: 12px;
	background: #eff6ff;
}

.bm-2fa-recovery-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 16px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}

.bm-2fa-recovery-list code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 0.95rem;
}

.bm-2fa-cancel-form {
	margin-top: 8px;
}

.bm-settings-link-btn {
	border: 0;
	background: transparent;
	color: #4f46e5;
	font-weight: 600;
	cursor: pointer;
	padding: 0;
	text-decoration: underline;
}

.bm-2fa-secret {
	display: inline-block;
	margin-top: 0.35rem;
	padding: 0.35rem 0.55rem;
	border-radius: 8px;
	background: #f3f4f6;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	letter-spacing: 0.08em;
}

@media (max-width: 640px) {
	.bm-2fa-setup-grid {
		grid-template-columns: 1fr;
	}
}
