/* Praisi Brand + Theme Phase 5 - additive/scoped layer */
:root {
  color-scheme: light;
  --praisi-theme-bg: var(--praisi-bg, #f7f4ef);
  --praisi-theme-surface: var(--praisi-surface, #ffffff);
  --praisi-theme-surface-2: var(--praisi-panel, #f0ece4);
  --praisi-theme-text: var(--praisi-ink, #18292b);
  --praisi-theme-heading: var(--praisi-ink, #18292b);
  --praisi-theme-muted: var(--praisi-muted, #697879);
  --praisi-theme-border: rgba(26, 45, 48, 0.14);
  --praisi-theme-petrol: var(--praisi-petrolio, #123f46);
  --praisi-theme-carta: var(--praisi-carta-zucchero, #b8c9cc);
  --praisi-theme-tortora: var(--praisi-tortora, #d9d0c3);
  --praisi-theme-accent: var(--praisi-gold, #d4a248);
  --praisi-theme-danger: #9d2f2f;
  --praisi-theme-shadow: 0 18px 50px rgba(18, 63, 70, 0.10);
}
html[data-praisi-theme="dark"] {
  color-scheme: dark;
  --praisi-theme-bg: #0b0d0f;
  --praisi-theme-surface: #121619;
  --praisi-theme-surface-2: #171d20;
  --praisi-theme-text: #f6f3ed;
  --praisi-theme-heading: #ffffff;
  --praisi-theme-muted: #b8c9cc;
  --praisi-theme-border: rgba(255, 255, 255, 0.13);
  --praisi-theme-petrol: #9fc2c6;
  --praisi-theme-carta: #b8c9cc;
  --praisi-theme-tortora: #d9d0c3;
  --praisi-theme-accent: #d4a248;
  --praisi-theme-danger: #ff9b9b;
  --praisi-theme-shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
}
html[data-praisi-theme] body { background: var(--praisi-theme-bg) !important; color: var(--praisi-theme-text) !important; }
html[data-praisi-theme] .praisi-shell, html[data-praisi-theme] .account-shell, html[data-praisi-theme] .app-shell, html[data-praisi-theme] .praisi-main, html[data-praisi-theme] .page, html[data-praisi-theme] .page-main, html[data-praisi-theme] main {
  background: var(--praisi-theme-bg) !important; color: var(--praisi-theme-text) !important;
}
html[data-praisi-theme] .praisi-sidebar, html[data-praisi-theme] .account-sidebar, html[data-praisi-theme] .app-sidebar, html[data-praisi-theme] .sidebar, html[data-praisi-theme] .topbar, html[data-praisi-theme] .praisi-topbar, html[data-praisi-theme] .navbar, html[data-praisi-theme] header, html[data-praisi-theme] .card, html[data-praisi-theme] .panel, html[data-praisi-theme] .box, html[data-praisi-theme] .stat-card, html[data-praisi-theme] .account-card, html[data-praisi-theme] .scanner-card, html[data-praisi-theme] .dashboard-card, html[data-praisi-theme] section[class*="card"], html[data-praisi-theme] div[class*="card"] {
  background-color: var(--praisi-theme-surface) !important; color: var(--praisi-theme-text) !important; border-color: var(--praisi-theme-border) !important; box-shadow: var(--praisi-theme-shadow);
}
html[data-praisi-theme="dark"] .praisi-sidebar, html[data-praisi-theme="dark"] .account-sidebar, html[data-praisi-theme="dark"] .app-sidebar, html[data-praisi-theme="dark"] .sidebar, html[data-praisi-theme="dark"] .topbar, html[data-praisi-theme="dark"] .praisi-topbar, html[data-praisi-theme="dark"] .navbar, html[data-praisi-theme="dark"] header {
  background: linear-gradient(180deg, #0b0d0f 0%, #101518 100%) !important;
}
html[data-praisi-theme] h1, html[data-praisi-theme] h2, html[data-praisi-theme] h3, html[data-praisi-theme] h4, html[data-praisi-theme] h5, html[data-praisi-theme] h6, html[data-praisi-theme] .title, html[data-praisi-theme] .page-title, html[data-praisi-theme] .card-title, html[data-praisi-theme] strong { color: var(--praisi-theme-heading) !important; }
html[data-praisi-theme] p, html[data-praisi-theme] label, html[data-praisi-theme] li, html[data-praisi-theme] td, html[data-praisi-theme] th, html[data-praisi-theme] .field, html[data-praisi-theme] .form-grid, html[data-praisi-theme] .user-meta, html[data-praisi-theme] .activity-list { color: var(--praisi-theme-text) !important; }
html[data-praisi-theme] .muted, html[data-praisi-theme] .text-muted, html[data-praisi-theme] .subtitle, html[data-praisi-theme] .eyebrow, html[data-praisi-theme] small, html[data-praisi-theme] .helper, html[data-praisi-theme] .hint, html[data-praisi-theme] .brand-sub, html[data-praisi-theme] .sidebar-footer, html[data-praisi-theme] .user-meta span, html[data-praisi-theme] .empty { color: var(--praisi-theme-muted) !important; }
html[data-praisi-theme] a { color: var(--praisi-theme-petrol); }
html[data-praisi-theme="dark"] a { color: var(--praisi-theme-carta); }
html[data-praisi-theme] .side-nav a, html[data-praisi-theme] .bottom-nav a, html[data-praisi-theme] .logout-link { color: var(--praisi-theme-text) !important; }
html[data-praisi-theme] .side-nav a:hover, html[data-praisi-theme] .side-nav a.active, html[data-praisi-theme] .bottom-nav a.active {
  color: var(--praisi-theme-heading) !important; background-color: color-mix(in srgb, var(--praisi-theme-carta) 18%, transparent) !important;
}
html[data-praisi-theme] input, html[data-praisi-theme] textarea, html[data-praisi-theme] select {
  background-color: var(--praisi-theme-surface-2) !important; color: var(--praisi-theme-text) !important; border-color: var(--praisi-theme-border) !important;
}
html[data-praisi-theme] input::placeholder, html[data-praisi-theme] textarea::placeholder { color: var(--praisi-theme-muted) !important; }
html[data-praisi-theme] table, html[data-praisi-theme] tr, html[data-praisi-theme] td, html[data-praisi-theme] th { border-color: var(--praisi-theme-border) !important; }
html[data-praisi-theme] .btn, html[data-praisi-theme] button, html[data-praisi-theme] .button { border-color: var(--praisi-theme-border); }
html[data-praisi-theme="dark"] .btn-primary, html[data-praisi-theme="dark"] button.primary, html[data-praisi-theme="dark"] .button-primary, html[data-praisi-theme="dark"] .cta-primary {
  background: var(--praisi-theme-carta) !important; color: #0b0d0f !important; border-color: transparent !important;
}
html[data-praisi-theme="dark"] .btn-secondary, html[data-praisi-theme="dark"] button.secondary, html[data-praisi-theme="dark"] .button-secondary {
  background: transparent !important; color: var(--praisi-theme-text) !important; border-color: var(--praisi-theme-border) !important;
}
html[data-praisi-theme] .btn-danger, html[data-praisi-theme] .danger { color: var(--praisi-theme-danger) !important; }

html[data-praisi-theme] .btn-primary,
html[data-praisi-theme] a.btn-primary,
html[data-praisi-theme] button.btn-primary,
html[data-praisi-theme] .btn.primary,
html[data-praisi-theme] a.btn.primary,
html[data-praisi-theme] button.primary,
html[data-praisi-theme] .button-primary,
html[data-praisi-theme] .cta-primary,
html[data-praisi-theme] .gate-btn.primary {
  color: #fff !important;
}

html[data-praisi-theme] .btn-primary *,
html[data-praisi-theme] .btn.primary *,
html[data-praisi-theme] button.primary *,
html[data-praisi-theme] .button-primary *,
html[data-praisi-theme] .cta-primary * {
  color: #fff !important;
}
.praisi-brand-lockup { display:flex !important; align-items:center !important; min-height:54px; }
.praisi-brand-link, .praisi-mobile-brand-lockup { display:inline-flex !important; align-items:center !important; text-decoration:none !important; }
.praisi-logo-img { display:block; width:auto; max-width:100%; object-fit:contain; }
.praisi-logo-img--sidebar { height:48px; max-width:226px; }
.praisi-logo-img--mobile { height:32px; max-width:142px; }
.praisi-brand-icon-img { display:block; width:100%; height:100%; object-fit:contain; }
.praisi-brand-mark-img-wrap { display:inline-grid !important; place-items:center !important; overflow:hidden; }
.praisi-nav-icon-wrap { display:inline-grid !important; place-items:center !important; width:22px; min-width:22px; height:22px; }
.praisi-ui-icon { width:20px; height:20px; display:block; object-fit:contain; }
html[data-praisi-theme="dark"] img.praisi-ui-icon, html[data-praisi-theme="dark"] img[src*="/assets/icons/praisi/"] { filter: brightness(0) invert(1); }
html[data-praisi-theme] svg:not(.no-theme) { color: currentColor; }
html[data-praisi-theme] svg:not(.no-theme) [stroke]:not([stroke="none"]) { stroke: currentColor; }
html[data-praisi-theme] svg:not(.no-theme) [fill]:not([fill="none"]):not([fill^="url("]) { fill: currentColor; }
.praisi-theme-toggle {
  z-index:99999; display:inline-flex; align-items:center; gap:8px; min-height:38px; padding:8px 12px; border-radius:999px; border:1px solid var(--praisi-theme-border);
  background:var(--praisi-theme-surface); color:var(--praisi-theme-text); box-shadow:0 14px 34px rgba(0,0,0,.14);
  font:700 12px/1.1 var(--praisi-font-ui, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif); letter-spacing:.01em; cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.praisi-theme-toggle:not(.praisi-theme-toggle--inline) { position:fixed; right:22px; bottom:22px; }
.praisi-theme-toggle:hover { transform:translateY(-1px); }
.praisi-theme-toggle:focus-visible { outline:3px solid rgba(212,162,72,.28); outline-offset:3px; }
.praisi-theme-toggle__icon { display:inline-grid; place-items:center; width:22px; height:22px; border-radius:999px; background:color-mix(in srgb, var(--praisi-theme-carta) 25%, transparent); }
.praisi-theme-toggle__label { white-space:nowrap; }
@media (max-width: 760px) {
  .praisi-theme-toggle--inline .praisi-theme-toggle__label { display:none; }
  .praisi-logo-img--sidebar { height:42px; max-width:196px; }
  .praisi-logo-img--mobile { height:28px; max-width:128px; }
}

/* Praisi Phase 6 - logo + menu readability corrections */
:root {
  --praisi-sidebar-bg: linear-gradient(165deg,#0a2c31,#123f45 54%,#6f6456);
  --praisi-sidebar-text: rgba(255,255,255,.92);
  --praisi-sidebar-muted: rgba(255,255,255,.68);
  --praisi-sidebar-active-bg: linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,.09));
  --praisi-sidebar-active-border: rgba(255,255,255,.25);
}
html[data-praisi-theme] .praisi-sidebar,
html[data-praisi-theme] .account-sidebar,
html[data-praisi-theme] .app-sidebar,
html[data-praisi-theme] .sidebar {
  background: var(--praisi-sidebar-bg) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.12) !important;
  box-shadow: 12px 0 40px rgba(15,63,70,.15) !important;
}
html[data-praisi-theme] .praisi-sidebar .nav-section,
html[data-praisi-theme] .account-sidebar .nav-section,
html[data-praisi-theme] .app-sidebar .nav-section,
html[data-praisi-theme] .sidebar .nav-section { color: var(--praisi-sidebar-muted) !important; }
html[data-praisi-theme] .praisi-sidebar .side-nav a,
html[data-praisi-theme] .account-sidebar .side-nav a,
html[data-praisi-theme] .app-sidebar .side-nav a,
html[data-praisi-theme] .sidebar .side-nav a,
html[data-praisi-theme] .praisi-sidebar .logout-link,
html[data-praisi-theme] .account-sidebar .logout-link,
html[data-praisi-theme] .app-sidebar .logout-link,
html[data-praisi-theme] .sidebar .logout-link {
  color: var(--praisi-sidebar-text) !important;
  background: transparent !important;
  border-color: transparent !important;
}
html[data-praisi-theme] .praisi-sidebar .side-nav a:hover,
html[data-praisi-theme] .praisi-sidebar .side-nav a.active,
html[data-praisi-theme] .praisi-sidebar .logout-link:hover,
html[data-praisi-theme] .account-sidebar .side-nav a:hover,
html[data-praisi-theme] .account-sidebar .side-nav a.active,
html[data-praisi-theme] .account-sidebar .logout-link:hover,
html[data-praisi-theme] .app-sidebar .side-nav a:hover,
html[data-praisi-theme] .app-sidebar .side-nav a.active,
html[data-praisi-theme] .app-sidebar .logout-link:hover,
html[data-praisi-theme] .sidebar .side-nav a:hover,
html[data-praisi-theme] .sidebar .side-nav a.active,
html[data-praisi-theme] .sidebar .logout-link:hover {
  color: #fff !important;
  background: var(--praisi-sidebar-active-bg) !important;
  border-color: var(--praisi-sidebar-active-border) !important;
}
html[data-praisi-theme] .praisi-sidebar .sidebar-footer,
html[data-praisi-theme] .account-sidebar .sidebar-footer,
html[data-praisi-theme] .app-sidebar .sidebar-footer,
html[data-praisi-theme] .sidebar .sidebar-footer,
html[data-praisi-theme] .praisi-sidebar .brand-sub,
html[data-praisi-theme] .account-sidebar .brand-sub,
html[data-praisi-theme] .app-sidebar .brand-sub,
html[data-praisi-theme] .sidebar .brand-sub { color: var(--praisi-sidebar-muted) !important; }
html[data-praisi-theme] .praisi-sidebar .praisi-ui-icon,
html[data-praisi-theme] .account-sidebar .praisi-ui-icon,
html[data-praisi-theme] .app-sidebar .praisi-ui-icon,
html[data-praisi-theme] .sidebar .praisi-ui-icon,
html[data-praisi-theme] .praisi-sidebar img[src*="/assets/icons/praisi/"],
html[data-praisi-theme] .account-sidebar img[src*="/assets/icons/praisi/"],
html[data-praisi-theme] .app-sidebar img[src*="/assets/icons/praisi/"],
html[data-praisi-theme] .sidebar img[src*="/assets/icons/praisi/"] { filter: brightness(0) invert(1) !important; opacity: .96; }
.praisi-logo-img--sidebar { height: 54px !important; max-width: 240px !important; }
.praisi-brand-lockup { min-height: 64px !important; padding-left: 4px !important; }
.praisi-sidebar .praisi-brand-link, .account-sidebar .praisi-brand-link, .app-sidebar .praisi-brand-link, .sidebar .praisi-brand-link { min-width: 190px; }
html[data-praisi-theme] .topbar,
html[data-praisi-theme] .praisi-topbar,
html[data-praisi-theme] header.topbar { padding-left: 16px !important; padding-right: 16px !important; }
.mobile-brand, .praisi-mobile-brand-lockup { margin-left: 6px !important; }
.praisi-logo-img--mobile { height: 38px !important; max-width: 172px !important; }
html[data-praisi-theme="dark"] .top-actions,
html[data-praisi-theme="dark"] .top-actions *,
html[data-praisi-theme="dark"] .user-chip,
html[data-praisi-theme="dark"] .user-chip *,
html[data-praisi-theme="dark"] .badge,
html[data-praisi-theme="dark"] .plan-badge { color: var(--praisi-theme-text) !important; }
html[data-praisi-theme="dark"] .user-meta strong,
html[data-praisi-theme="dark"] [data-user-name] { color: #fff !important; }
html[data-praisi-theme="dark"] .user-meta span,
html[data-praisi-theme="dark"] [data-user-email] { color: var(--praisi-theme-muted) !important; }
@media (max-width: 760px) {
  .praisi-logo-img--mobile { height: 34px !important; max-width: 156px !important; }
  html[data-praisi-theme] .topbar, html[data-praisi-theme] .praisi-topbar, html[data-praisi-theme] header.topbar { padding-left: 12px !important; padding-right: 12px !important; }
}
