/* AUTO-GENERATED THEME SETTINGS - START */
:root {
  --fp-accent: #111827;
  --accent: #111827;
  --accent-2: #0b1220;

  --fp-primary: #111827;
  --fp-primary-2: #0b1220;

  --fp-bg: #f5f7fb;
  --fp-bg-soft: #f8fafc;
  --fp-surface: #ffffff;
  --fp-surface-soft: #f8fafc;

  --fp-text: #060709;
  --fp-text-strong: #020617;
  --fp-muted: #64748b;

  --fp-border: rgba(215,221,229,0.8);
  --fp-border-strong: rgba(215,221,229,1);

  --fp-success: #16803c;
  --fp-warning: #a16207;
  --fp-danger: #b91c1c;

  --bs-primary: #111827;
  --bs-link-color: #111827;
  --bs-link-hover-color: #0b1220;
  --bs-focus-ring-color: rgba(17,24,39,0.16);

  --fp-radius-xs: 5px; --fp-radius-sm: 7px; --fp-radius: 9px; --fp-radius-lg: 12px; --fp-radius-xl: 14px;
  --fp-shadow-xs: 0 1px 2px rgba(15,23,42,.04); --fp-shadow-sm: 0 4px 14px rgba(15,23,42,.055); --fp-shadow: 0 10px 26px rgba(15,23,42,.075); --fp-shadow-lg: 0 18px 46px rgba(15,23,42,.11);
}

html,
body,
.app,
.frame,
.main {
  background: var(--fp-bg) !important;
  color: var(--fp-text) !important;
}

.main {
  background:
    linear-gradient(180deg, rgba(255,255,255,.42), rgba(255,255,255,0) 220px),
    var(--fp-bg) !important;
}

.header,
.footer {
  color: var(--fp-text) !important;
  background: color-mix(in srgb, var(--fp-surface) 88%, transparent) !important;
  border-color: var(--fp-border) !important;
}

.card,
.soft-card,
.list-card,
.checkout-card,
.product-card,
.portal-list-hero,
.portal-list-toolbar,
.portal-detail-hero,
.portal-detail-card,
.portal-empty-card,
.orders-hero,
.orders-toolbar,
.order-card,
.order-detail-hero,
.order-detail-card,
.dashboard-card,
.dashboard-content-card {
  color: var(--fp-text) !important;
  background: var(--fp-surface) !important;
  border-color: var(--fp-border) !important;
}

.card-header,
.card-footer {
  background: transparent !important;
  border-color: var(--fp-border) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.portal-title,
.dashboard-hero-title,
.dashboard-content-title,
.product-title,
.shop-title {
  color: var(--fp-text-strong) !important;
}

.text-secondary,
.text-muted,
.portal-kicker,
.dashboard-kpi-label,
.dashboard-kpi-subline,
.product-meta,
.shopbar-meta {
  color: var(--fp-muted) !important;
}

a {
  color: inherit;
}

a.text-decoration-none,
.table a,
.portal-link {
  color: #0b1220 !important;
}

.btn-primary,
.product-card .btn-primary,
.shop-page .product-card .btn-primary,
.dashboard-content-card .btn-primary {
  color: #ffffff !important;
  background: #111827 !important;
  border-color: #111827 !important;
  box-shadow: 0 10px 22px rgba(17,24,39,0.16) !important;
}

.btn-primary:hover,
.product-card .btn-primary:hover,
.shop-page .product-card .btn-primary:hover,
.dashboard-content-card .btn-primary:hover {
  color: #ffffff !important;
  background: #0b1220 !important;
  border-color: #0b1220 !important;
}

.btn-outline-secondary {
  color: var(--fp-text) !important;
  background: var(--fp-surface) !important;
  border-color: var(--fp-border-strong) !important;
}

.btn-outline-secondary:hover {
  color: var(--fp-text-strong) !important;
  background: var(--fp-surface-soft) !important;
  border-color: var(--fp-border-strong) !important;
}

.form-control,
.form-select,
.form-control-sm,
.form-select-sm {
  color: var(--fp-text) !important;
  background: var(--fp-surface) !important;
  border-color: var(--fp-border-strong) !important;
}

.form-control:focus,
.form-select:focus {
  border-color: #111827 !important;
  box-shadow: 0 0 0 .22rem rgba(17,24,39,0.16) !important;
}

.nav-badge,
.btn-cart-open {
  background: #0b1220 !important;
  border-color: #0b1220 !important;
}

.sidebar-brand-pill,
.brand > .brand-title:not(.h3),
.portal-status--primary,
.order-status--primary,
.order-detail-status--primary {
  color: #0b1220 !important;
  background: rgba(17,24,39,0.1) !important;
  border-color: rgba(17,24,39,0.24) !important;
}

.badge.text-bg-success,
.badge.bg-success,
.portal-status--success,
.order-status--success,
.order-detail-status--success {
  color: #126931 !important;
  background: rgba(22,128,60,0.1) !important;
  border-color: rgba(22,128,60,0.22) !important;
}

.badge.text-bg-warning,
.badge.bg-warning,
.portal-status--warning {
  color: #845006 !important;
  background: rgba(161,98,7,0.12) !important;
  border-color: rgba(161,98,7,0.24) !important;
}

.badge.text-bg-danger,
.badge.bg-danger,
.portal-status--danger,
.order-status--danger,
.order-detail-status--danger {
  color: #981717 !important;
  background: rgba(185,28,28,0.1) !important;
  border-color: rgba(185,28,28,0.22) !important;
}

.alert-success {
  color: #126931 !important;
  background: rgba(22,128,60,0.1) !important;
  border-color: rgba(22,128,60,0.22) !important;
}

.alert-warning {
  color: #845006 !important;
  background: rgba(161,98,7,0.12) !important;
  border-color: rgba(161,98,7,0.24) !important;
}

.alert-danger {
  color: #981717 !important;
  background: rgba(185,28,28,0.1) !important;
  border-color: rgba(185,28,28,0.22) !important;
}


/* Theme · Sidebar hell */
.sidebar,
.sidebar-modern,
#mobileNav {
  color: var(--fp-text) !important;
  background:
    radial-gradient(700px 300px at -20% -10%, rgba(17,24,39,0.1), transparent 58%),
    linear-gradient(180deg, #ffffff 0%, var(--fp-bg-soft) 100%) !important;
  border-right-color: var(--fp-border) !important;
}

.sidebar::before {
  opacity: .18 !important;
}

.sidebar .brand-title,
.sidebar-logo .brand-title,
.mobile-nav-title,
#mobileNav .offcanvas-title {
  color: var(--fp-text-strong) !important;
}

.sidebar-brand-pill,
.brand > .brand-title:not(.h3) {
  color: #0b1220 !important;
  background: rgba(17,24,39,0.1) !important;
  border-color: rgba(17,24,39,0.24) !important;
}

.sidebar-nav-label,
.mobile-nav-subtitle {
  color: var(--fp-muted) !important;
}

.nav-item,
#mobileNav .nav-item {
  color: var(--fp-muted) !important;
  background: transparent !important;
  border-color: transparent !important;
}

.nav-item i,
.nav-item .nav-ico,
#mobileNav .nav-item i,
#mobileNav .nav-item .nav-ico {
  color: var(--fp-muted) !important;
}

.nav-item:hover,
#mobileNav .nav-item:hover {
  color: var(--fp-text-strong) !important;
  background: var(--fp-surface-soft) !important;
  border-color: var(--fp-border) !important;
}

.nav-item.active,
#mobileNav .nav-item.active {
  color: #0b1220 !important;
  background: rgba(17,24,39,0.1) !important;
  border-color: rgba(17,24,39,0.24) !important;
  box-shadow: none !important;
}

.nav-item.active i,
.nav-item.active .nav-ico,
#mobileNav .nav-item.active i,
#mobileNav .nav-item.active .nav-ico {
  color: #0b1220 !important;
}

/* AUTO-GENERATED THEME SETTINGS - END */

/* CUSTOM CSS */

:root{
  /* neutrales Accent (kein lila/cyan) */
  --accent:#111827;         /* slate-900 */
  --accent-2:#0b1220;       /* shell dark */
  --accent-muted:#334155;   /* slate-700 */
  
  --logo-height-desktop: 28px;
  --logo-height-mobile: 20px;
  --logo-max-width-mobile: 160px;

  /* Content */
  --bg:#f5f7fb;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --border: rgba(15,23,42,.10);
  --shadow: 0 12px 30px rgba(15,23,42,.08);

  /* Shell (Sidebar/Header/Footer) – nur grauer Verlauf */
  --shell-grad: linear-gradient(180deg, #0f1115 0%, #171a22 55%, #10131a 100%);
  --shell-text:#e5e7eb;
  --shell-muted: rgba(229,231,235,.70);
  --shell-border: rgba(255,255,255,.08);

  /* UI Radii */
  --r-lg: 18px;
  --r-md: 14px;
  --r-sm: 12px;

  /* Bootstrap overrides (ruhig, nicht bunt) */
  --bs-primary: var(--accent);
  --bs-link-color: #0f172a;
  --bs-link-hover-color: #111827;
  --bs-border-radius: var(--r-md);
  --bs-border-radius-lg: var(--r-lg);
  --bs-border-radius-sm: var(--r-sm);
  --bs-focus-ring-color: rgba(17,24,39,.18);
 
}

.brand-logo-img {
  display: block;
  width: auto;
  max-width: 190px;
  height: var(--logo-height-desktop, 28px);
  object-fit: contain;
}

.brand-logo-img--header {
  height: var(--logo-height-mobile, 20px);
  max-width: var(--logo-max-width-mobile, 160px);
}

.sidebar-logo {
  min-height: 34px;
}

.header-logo {
  display: inline-flex;
  align-items: center;
}
