/* MayaPDF theme — navy #293998 + gold #FAC926, professional SaaS.
   Dark sidebar + light content. Mobile-responsive, low-bandwidth friendly. */
:root {
  --mp-primary: #293998;
  --mp-primary-600: #212f7f;
  --mp-primary-700: #1a2666;
  --mp-accent: #FAC926;
  --mp-accent-600: #e0b31d;
  --mp-ink: #1f2430;
  --mp-muted: #6b7280;
  --mp-bg: #f4f6fb;
  --mp-card: #ffffff;
  --mp-border: #e4e8f0;
  --mp-sidebar: #1a2158;
  --mp-sidebar-ink: #c9d0f0;
}

body {
  background: var(--mp-bg);
  color: var(--mp-ink);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Noto Sans Devanagari", sans-serif;
  min-height: 100vh;
}

a { color: var(--mp-primary); }
a:hover { color: var(--mp-primary-700); }

.btn-primary {
  --bs-btn-bg: var(--mp-primary);
  --bs-btn-border-color: var(--mp-primary);
  --bs-btn-hover-bg: var(--mp-primary-600);
  --bs-btn-hover-border-color: var(--mp-primary-600);
  --bs-btn-active-bg: var(--mp-primary-700);
  --bs-btn-active-border-color: var(--mp-primary-700);
}
.btn-accent {
  --bs-btn-color: #1f2430;
  --bs-btn-bg: var(--mp-accent);
  --bs-btn-border-color: var(--mp-accent);
  --bs-btn-hover-bg: var(--mp-accent-600);
  --bs-btn-hover-border-color: var(--mp-accent-600);
  --bs-btn-hover-color: #1f2430;
  font-weight: 600;
}
.text-primary-mp { color: var(--mp-primary) !important; }
.bg-primary-mp { background: var(--mp-primary) !important; }
.bg-accent-mp { background: var(--mp-accent) !important; }

/* Navbar */
.mp-navbar {
  background: var(--mp-primary);
  box-shadow: 0 2px 10px rgba(26,33,88,.15);
}
.mp-navbar .navbar-brand,
.mp-navbar .nav-link { color: #fff !important; }
.mp-navbar .nav-link:hover { color: var(--mp-accent) !important; }
.mp-brand-badge {
  background: var(--mp-accent);
  color: var(--mp-primary);
  font-weight: 700;
  border-radius: .4rem;
  padding: .15rem .5rem;
  letter-spacing: .5px;
}

/* App shell with sidebar */
.mp-shell { display: flex; min-height: calc(100vh - 56px); }
.mp-sidebar {
  width: 240px;
  background: var(--mp-sidebar);
  color: var(--mp-sidebar-ink);
  flex-shrink: 0;
  padding: 1rem .5rem;
}
.mp-sidebar a {
  display: flex; align-items: center; gap: .6rem;
  color: var(--mp-sidebar-ink);
  padding: .55rem .8rem; border-radius: .5rem;
  text-decoration: none; font-size: .95rem;
}
.mp-sidebar a:hover, .mp-sidebar a.active {
  background: rgba(255,255,255,.08); color: #fff;
}
.mp-sidebar a.active { border-left: 3px solid var(--mp-accent); }
.mp-content { flex: 1; padding: 1.5rem; min-width: 0; }

@media (max-width: 768px) {
  .mp-shell { flex-direction: column; }
  .mp-sidebar { width: 100%; display: flex; overflow-x: auto; gap: .25rem; }
  .mp-sidebar a { white-space: nowrap; }
}

/* Cards */
.mp-card {
  background: var(--mp-card);
  border: 1px solid var(--mp-border);
  border-radius: .75rem;
  box-shadow: 0 1px 3px rgba(20,30,80,.05);
}
.mp-card .mp-card-head {
  padding: 1rem 1.25rem; border-bottom: 1px solid var(--mp-border);
  font-weight: 600;
}
.mp-card .mp-card-body { padding: 1.25rem; }

/* Tool grid */
.mp-tool-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 1rem; }
.mp-tool {
  background: var(--mp-card); border: 1px solid var(--mp-border);
  border-radius: .75rem; padding: 1.1rem; text-align: center;
  text-decoration: none; color: var(--mp-ink); transition: .15s;
  display: block;
}
.mp-tool:hover { border-color: var(--mp-primary); transform: translateY(-2px); box-shadow: 0 6px 18px rgba(41,57,152,.12); color: var(--mp-primary); }
.mp-tool i { font-size: 1.8rem; color: var(--mp-primary); display: block; margin-bottom: .5rem; }

/* Hero (landing) */
.mp-hero {
  background: linear-gradient(135deg, var(--mp-primary) 0%, var(--mp-primary-700) 100%);
  color: #fff; padding: 4rem 0;
}
.mp-hero .mp-accent-text { color: var(--mp-accent); }

.mp-privacy-note {
  background: #eef6ee; border: 1px solid #cfe6cf; color: #256029;
  border-radius: .5rem; padding: .5rem .75rem; font-size: .9rem;
}

.mp-auth-card { max-width: 420px; margin: 3rem auto; }
.flash-wrap { position: sticky; top: 0; z-index: 5; }
