/*
 * Partner-extra — reproduces the inline <style> blocks that the legacy partner
 * blades (vendorWelcome / partner_welcomeHeader) shipped in their <head>, so
 * the rebuilt partner pages render byte-for-byte like the legacy Bootstrap
 * theme. Loaded (via <link>) ONLY in app/(partner)/layout.tsx, AFTER
 * bootstrap.min.css + style.css, so these overrides win. This file is
 * UNLAYERED plain CSS → it beats the niwasi root globals.css Tailwind layers on
 * the partner routes, and is never loaded on the niwasi routes.
 */

/* --- vendorWelcome inline <style> --- */
.box ul li { margin-left: 25px !important; }

.step-box {
  transition: all 0.3s ease;
  border-radius: 12px;
  padding: 20px;
}
.step-box:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}
.box-bg-3 {
  background: #365B6D;
  color: #fff;
}
.step-box ul {
  list-style: none;
  padding-left: 0;
}
.step-box ul li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 10px;
  transition: 0.3s;
}
.step-box ul li::before {
  content: "\2714";
  position: absolute;
  left: 0;
  color: #00ffcc;
  font-weight: bold;
}
.step-box ul li:hover {
  transform: translateX(5px);
  color: #ffd700;
}

/* Hero banner */
.hero-section {
  position: relative;
  height: 60vh;
  overflow: hidden;
  padding: 4em;
}
.hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: float 6s ease-in-out infinite;
  transition: transform 0.5s ease;
}
.hero-section:hover .hero-img {
  transform: scale(1.1);
}
@keyframes float {
  0%, 100% { transform: scale(1.05) translateY(0); }
  50%      { transform: scale(1.05) translateY(-10px); }
}

/* --- partner_welcomeHeader inline <style> --- */
.header-bg {
  background: #F2F1EC;
  padding: 0px 0px;
}
.askme-header1 {
  background: #365B6D;
  color: #fff;
  margin-top: 12px !important;
}
.askme-header1 .nav-link { color: #fff; }
.askme-header1 .nav-link.active { background-color: #fff; color: #365B6D; }

@media only screen and (max-width: 768px) {
  .justify-content-end .nav-link {
    color: #fff;
    font-size: 14px !important;
    padding: 0px !important;
    margin-left: 0px !important;
  }
  ul.justify-content-end li {
    padding: 2px 8px 2px 2px !important;
    display: inline !important;
  }
}

/* Gradient submit button reused by the legacy auth forms
   (Materialize `gradient-45deg-purple-deep-orange`). */
.gradient-45deg-purple-deep-orange {
  background: #365B6D !important;
  color: #fff !important;
  border: none;
}
.gradient-45deg-purple-deep-orange:hover {
  filter: brightness(1.05);
  color: #fff !important;
}

/* Footer logo grid (legacy `.partner-card img { height:75px }`). */
.partner-card img { height: 75px; width: auto; }
.partner-card {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

/* ============================================================================
   Partner header — final, two-tier. Tier 1: logo + auth. Tier 2: full-width
   nav row (all links on one line). Both rows use the niwasi container
   (max-width 1440px + 16px padding). Solid teal, no gradients. The nav
   underline lives on the LABEL span, so it always sits directly under the text.
   ============================================================================ */
.pheader { position: sticky; top: 0; z-index: 1000; box-shadow: 0 2px 12px rgba(15, 40, 55, .16); }
.pheader-row { width: 100%; max-width: 1440px; margin: 0 auto; padding: 0 16px; display: flex; align-items: center; }

/* Tier 1 — logo + auth */
.pheader-top { background: #365B6D; }
.pheader-top .pheader-row { min-height: 60px; gap: 18px; }
.plogo { display: flex; align-items: center; gap: 11px; text-decoration: none; flex-shrink: 0; }
.plogo img { height: 38px; width: auto; display: block; }
.plogo .ptag { color: #fff; font-weight: 700; font-size: 12px; letter-spacing: 1.6px; text-transform: uppercase; padding-left: 11px; border-left: 1px solid rgba(255, 255, 255, .28); }
.pspacer { flex: 1 1 auto; }
.pauth { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.pauth .plink { color: #fff; font-weight: 600; font-size: 13.5px; text-decoration: none; padding: 9px 16px; border-radius: 8px; border: 1px solid rgba(255, 255, 255, .55); background: transparent; cursor: pointer; transition: background .15s ease, border-color .15s ease; }
.pauth .plink:hover { background: rgba(255, 255, 255, .12); border-color: #fff; }
.pauth .pbtn { color: #365B6D; font-weight: 700; font-size: 13.5px; text-decoration: none; padding: 9px 20px; border-radius: 8px; border: none; cursor: pointer; background: #fff; box-shadow: 0 3px 10px rgba(0, 0, 0, .16); transition: transform .12s ease, box-shadow .15s ease; }
.pauth .pbtn:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(0, 0, 0, .22); }

/* Tier 2 — nav row */
.pheader-nav { background: #2e4f5e; border-top: 1px solid rgba(255, 255, 255, .08); }
.pheader-nav .pheader-row { min-height: 48px; }
.pnav { display: flex; align-items: stretch; flex-wrap: nowrap; gap: 2px; margin: 0; padding: 0; list-style: none; }
.pnav li { display: flex; }
.pnav a, .pnav .pdisabled { display: inline-flex; align-items: center; padding: 13px 14px; font-weight: 600; font-size: 14px; white-space: nowrap; text-decoration: none; }
.pnav a { color: rgba(255, 255, 255, .82); transition: color .15s ease; }
.pnav a:hover, .pnav a.active { color: #fff; }
.pnav .pdisabled { color: rgba(255, 255, 255, .40); cursor: not-allowed; }
/* underline on the LABEL span — always directly under the text */
.pnav a .lbl { position: relative; padding-bottom: 4px; }
.pnav a .lbl::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: #fff; border-radius: 2px; transform: scaleX(0); transform-origin: center; transition: transform .18s ease; }
.pnav a:hover .lbl::after, .pnav a.active .lbl::after { transform: scaleX(1); }
.pnav li:first-child a { padding-left: 0; }   /* align "Home" with the tier-1 logo */

/* Mobile (<900px): hide tier-2 + auth, show hamburger → dropdown */
.ptoggle { display: none; margin-left: auto; background: transparent; border: 1px solid rgba(255, 255, 255, .5); border-radius: 8px; color: #fff; font-size: 20px; line-height: 1; padding: 8px 12px; cursor: pointer; }
.pmobile { display: none; background: #2e4f5e; padding: 8px 16px 16px; }
.pmobile a, .pmobile button, .pmobile .pmobile-disabled { display: block; width: 100%; text-align: left; color: #fff; font-weight: 600; font-size: 15px; padding: 13px 4px; text-decoration: none; background: transparent; border: none; border-bottom: 1px solid rgba(255, 255, 255, .09); cursor: pointer; }
.pmobile .pmobile-disabled { color: rgba(255, 255, 255, .4); cursor: not-allowed; }
.pmobile a:last-child, .pmobile button:last-child { border-bottom: none; }
@media (max-width: 900px) {
  .pheader-nav { display: none; }
  .pauth { display: none; }
  .ptoggle { display: inline-block; }
  .pmobile.open { display: block; }
}

/* Restore list bullets for partner PAGE CONTENT — Tailwind's preflight (loaded
   on partner routes too) strips `list-style`, so content lists like
   "Functionalities – Comprehensive database" rendered as plain text. Scoped to
   <main> so the header nav (.pnav) and footer lists are untouched. */
main ul { list-style: disc; padding-left: 1.5rem; margin: 0 0 1rem; }
main ol { list-style: decimal; padding-left: 1.5rem; margin: 0 0 1rem; }
main li { margin-bottom: 6px; }

/* EXTENSIONS grid — even, centered, evenly-spaced; logos NON-CLICKABLE this
   phase (no <a> wrapper). Overrides the earlier .partner-card sizing. */
.partner-ext-grid { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 18px 46px; }
.partner-card { display: flex; align-items: center; justify-content: center; padding: 6px 10px; cursor: default; opacity: .9; }
.partner-card img { height: 58px; width: auto; max-width: 160px; object-fit: contain; }
