/* Zenmail Bulwark login / shell brand overlay (edge inject). */

:root {
  --zm-brand: #4f8cff;
  --zm-brand-strong: #3a78f0;
  --zm-brand-soft: rgba(79, 140, 255, 0.16);
  --zm-violet: #7c5cff;
  --color-primary: #4f8cff !important;
  --color-ring: #4f8cff !important;
  --color-info: #4f8cff !important;
  --color-unread: #4f8cff !important;
}

.dark {
  --color-primary: #4f8cff !important;
  --color-ring: #6aa0ff !important;
  --color-info: #6aa0ff !important;
  --color-unread: #6aa0ff !important;
  --color-primary-foreground: #0b0d12 !important;
}

html:not(.dark) {
  --color-primary-foreground: #ffffff !important;
}

/* Login atmosphere — light */
html:not(.dark) body[data-zenmail-webmail-login="1"] .min-h-screen,
html:not(.dark) body[data-zenmail-webmail-login="1"] {
  background:
    radial-gradient(1100px 560px at 50% -8%, rgba(79, 140, 255, 0.2), transparent 55%),
    radial-gradient(900px 480px at 85% 110%, rgba(124, 92, 255, 0.12), transparent 52%),
    linear-gradient(180deg, #f4f7ff 0%, #eef2f8 45%, #f8fafc 100%) !important;
}

/* Login atmosphere — dark */
html.dark body[data-zenmail-webmail-login="1"] .min-h-screen,
html.dark body[data-zenmail-webmail-login="1"] {
  background:
    radial-gradient(1200px 600px at 50% -10%, rgba(79, 140, 255, 0.22), transparent 55%),
    radial-gradient(900px 500px at 80% 110%, rgba(124, 92, 255, 0.14), transparent 50%),
    #07080c !important;
}

body[data-zenmail-webmail-login="1"] [class*="max-w"] {
  max-width: 26rem !important;
}

/* Hide cramped stock logo box; hero brand replaces it.
   Do NOT hide our injected login mark (data-zm-login-mark). */
body[data-zenmail-webmail-login="1"] img[alt="Zenmail"]:not([data-zm-login-mark]),
body[data-zenmail-webmail-login="1"] img[src*="zenmail-logo"]:not([data-zm-login-mark]),
body[data-zenmail-webmail-login="1"] img[src*="zenmail-mark"]:not([data-zm-login-mark]) {
  display: none !important;
}

body[data-zenmail-webmail-login="1"] .w-16.h-16.mb-5,
body[data-zenmail-webmail-login="1"] .inline-flex.items-center.justify-center.mb-5.w-16.h-16 {
  display: none !important;
}

#zenmail-webmail-brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.7rem !important;
  width: 100% !important;
  margin: 0 0 1.25rem !important;
  text-align: center !important;
}

#zenmail-webmail-brand .zm-mark {
  width: 84px !important;
  height: 84px !important;
  border-radius: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--zm-brand-soft) !important;
  border: 1.5px solid rgba(79, 140, 255, 0.5) !important;
  box-shadow: 0 10px 28px rgba(79, 140, 255, 0.18) !important;
}

#zenmail-webmail-brand .zm-mark img,
#zenmail-webmail-brand .zm-mark svg {
  width: 48px !important;
  height: 48px !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#zenmail-webmail-brand .zm-word {
  font: 700 2.55rem/1.05 "Segoe UI", system-ui, sans-serif !important;
  letter-spacing: -0.03em !important;
  color: var(--color-foreground, #f4f4f2) !important;
}

html:not(.dark) #zenmail-webmail-brand .zm-word {
  color: #12141a !important;
}

#zenmail-webmail-brand .zm-hint {
  font: 400 0.95rem/1.4 "Segoe UI", system-ui, sans-serif !important;
  color: var(--color-muted-foreground, #a1a1aa) !important;
  max-width: 22rem !important;
}

body[data-zenmail-webmail-login="1"] [data-zenmail-hidden="1"] {
  display: none !important;
}

/* Soft-hide stock marks after rebrand (About / shell) */
[data-zenmail-hidden="1"] {
  display: none !important;
}

/* Whitelabel: never show upstream GitHub / Bulwark repo links */
a[href*="github.com"],
a[href*="bulwarkmail"],
a[href*="github.com/bulwark"] {
  display: none !important;
}

#zenmail-about-mark,
.zenmail-about-mark {
  display: inline-flex !important;
  width: 40px !important;
  height: 40px !important;
  flex-shrink: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  margin-inline-end: 0.65rem !important;
}

#zenmail-about-mark svg,
.zenmail-about-mark svg {
  width: 40px !important;
  height: 40px !important;
  display: block !important;
}

body[data-zenmail-webmail-login="1"] .rounded-2xl > h1,
body[data-zenmail-webmail-login="1"] .rounded-2xl > [class*="pt-10"],
body[data-zenmail-webmail-login="1"] .rounded-2xl > .inline-flex.w-16.h-16 {
  display: none !important;
}

#zenmail-webmail-brand {
  padding: 2.25rem 2rem 0.25rem !important;
}

body[data-zenmail-webmail-login="1"] button[type="submit"] {
  background: var(--zm-brand) !important;
  color: #0b0d12 !important;
  font-weight: 650 !important;
  border: none !important;
  box-shadow: 0 8px 22px rgba(79, 140, 255, 0.28) !important;
}

body[data-zenmail-webmail-login="1"] button[type="submit"]:hover {
  background: var(--zm-brand-strong) !important;
}

html:not(.dark) body[data-zenmail-webmail-login="1"] button[type="submit"] {
  color: #ffffff !important;
}

#zenmail-webmail-portal {
  display: block !important;
  margin: 1.1rem 0 0.35rem !important;
  text-align: center !important;
  font: 400 0.875rem/1.45 "Segoe UI", system-ui, sans-serif !important;
}

#zenmail-webmail-portal a {
  color: #9ecbff !important;
  text-decoration: none !important;
}

html:not(.dark) #zenmail-webmail-portal a {
  color: #2563eb !important;
}

#zenmail-webmail-portal a:hover {
  text-decoration: underline !important;
}

/* Hide stock Bulwark theme control on login — we provide System cycle */
body[data-zenmail-webmail-login="1"] button[aria-label^="Theme"] {
  display: none !important;
}

/* Theme cycle — login page only (JS removes bar after auth) */
#zenmail-theme-bar {
  position: fixed !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 2147483000 !important;
  display: inline-flex !important;
  gap: 2px !important;
  padding: 3px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(127, 127, 127, 0.28) !important;
  background: rgba(20, 22, 28, 0.72) !important;
  backdrop-filter: blur(10px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28) !important;
  margin: 0 !important;
}

html:not(.dark) #zenmail-theme-bar {
  background: rgba(255, 255, 255, 0.82) !important;
  border-color: rgba(15, 23, 42, 0.12) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
}

#zenmail-theme-bar button {
  appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font: 600 0.72rem/1 "Segoe UI", system-ui, sans-serif !important;
  letter-spacing: 0.02em !important;
  padding: 0.45rem 0.7rem !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  opacity: 0.72 !important;
}

#zenmail-theme-bar button[aria-pressed="true"] {
  background: var(--zm-brand) !important;
  color: #0b0d12 !important;
  opacity: 1 !important;
}

html:not(.dark) #zenmail-theme-bar button[aria-pressed="true"] {
  color: #ffffff !important;
}

body[data-zenmail-webmail-login="1"] a[href*="zenmail.cloud"]:not(#zenmail-webmail-portal a) {
  font-weight: 550 !important;
}

/* ── Post-login shell (Bulwark rail + sidebars) ── */

body[data-zenmail-shell="1"] *,
body[data-zenmail-shell="1"] *::before,
body[data-zenmail-shell="1"] *::after {
  -webkit-app-region: no-drag !important;
}

/* Desktop (≥1024): rail nad backdropem, sidebar w flow — bez nadpisywania position na tablet */
@media (min-width: 1024px) {
  body[data-zenmail-shell="1"] .w-14.bg-secondary {
    position: relative !important;
    z-index: 55 !important;
    isolation: isolate !important;
  }

  body[data-zenmail-shell="1"] .w-14.bg-secondary nav[role="navigation"] a,
  body[data-zenmail-shell="1"] .w-14.bg-secondary nav[role="navigation"] button,
  body[data-zenmail-shell="1"] .w-14.bg-secondary > div > button {
    position: relative !important;
    z-index: 2 !important;
    pointer-events: auto !important;
  }

  body[data-zenmail-shell="1"] .flex.flex-1.overflow-hidden > .flex-shrink-0.h-full.z-50,
  body[data-zenmail-shell="1"] .relative.flex.flex-1.min-h-0 > .border-e.border-border.flex.flex-col.flex-shrink-0 {
    position: relative !important;
    z-index: 52 !important;
    pointer-events: auto !important;
  }

  body[data-zenmail-shell="1"] .flex.flex-1.overflow-hidden > .flex-shrink-0.h-full.z-50 *,
  body[data-zenmail-shell="1"] .relative.flex.flex-1.min-h-0 > .border-e.border-border.flex.flex-col.flex-shrink-0 * {
    pointer-events: auto !important;
  }
}

body[data-zenmail-shell="1"] .w-14.bg-secondary img[src*="zenmail"],
body[data-zenmail-shell="1"] .w-14.bg-secondary img[data-zm-mark="1"] {
  width: 32px !important;
  height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  object-fit: contain !important;
}

/* Mobile: do NOT force folder drawer open — Bulwark owns hamburger / offcanvas.
   Previous compact overrides broke folder taps and left empty space on Calendar/Contacts. */
