/*
 * AKTHost brand layer for the WHMCS client area (Castro theme). Loaded after the theme's own CSS by the
 * ClientAreaHeadOutput hook in includes/hooks/akt_theme_sync.php, together with tokens.css (built from
 * the Astro theme, so colours and fonts follow the marketing site).
 * No edits inside the paid theme: delete this file (or create akt-theme/OFF) and Castro looks as before.
 * Selectors are the Bootstrap / WHMCS ones Castro is built on. If a Castro update renames one, only
 * that rule stops applying; nothing breaks.
 */

/* ---- type + base colours ---- */
body {
  font-family: var(--akt-font-body);
  color: var(--akt-ink);
  background-color: var(--akt-base);
}
h1, h2, h3, .h1, .h2, .h3, .page-title, .header-lined h1 {
  font-family: var(--akt-font-display);
  letter-spacing: -0.02em;
  color: var(--akt-ink);
}
a { color: var(--akt-brand); }
a:hover, a:focus { color: var(--akt-brand-deep); }
::selection { background: var(--akt-brand); color: #fff; }

/* ---- buttons ---- */
.btn-primary,
.btn-primary:not(:disabled):not(.disabled) {
  background-color: var(--akt-brand);
  border-color: var(--akt-brand);
  border-radius: var(--akt-radius);
  font-weight: 600;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: var(--akt-brand-deep);
  border-color: var(--akt-brand-deep);
}

/* ---- top bar: same look as the Astro header (thin contact strip, white sticky bar, hairline border) ---- */
header.header .topbar, #header .topbar, .topbar, .top-bar, .header-top {
  background: var(--akt-base-2);
  border-bottom: 1px solid var(--akt-line-soft);
  color: var(--akt-ink-dim);
  font-size: 12px;
}
header.header, #header, .navbar-main, .main-header, header .navbar {
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid var(--akt-line);
  box-shadow: none;
}
.navbar-brand img, a.logo img, .logo img, .navbar-brand .logo-img {
  /* AkolagTech swirl, same file as the Astro header. Also set as $assetLogoPath by the hook. */
  content: url("/akt-theme/akolagtech-logo.png");
  height: 36px;
  width: auto;
  max-width: none;
}

/* ---- menu items: Astro nav style ---- */
.navbar .navbar-nav > li > a,
.navbar .navbar-nav .nav-link,
.navbar .navbar-nav > .nav-item > .nav-link {
  font-family: var(--akt-font-body);
  font-size: 14px;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
  color: var(--akt-ink-dim);
  white-space: nowrap;
}
.navbar .navbar-nav > li > a:hover,
.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .active > a,
.navbar .navbar-nav .nav-link.active {
  color: var(--akt-brand);
  background: transparent;
}
.navbar .dropdown-menu {
  border: 1px solid var(--akt-line);
  border-radius: 12px;
  box-shadow: 0 12px 28px -12px rgba(11, 23, 45, 0.18);
  padding: 8px;
  min-width: 260px;
}
.navbar .dropdown-menu > li > a,
.navbar .dropdown-menu .dropdown-item {
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 14px;
  font-weight: 500;
  color: var(--akt-ink);
  white-space: normal;
}
.navbar .dropdown-menu > li > a:hover,
.navbar .dropdown-menu .dropdown-item:hover {
  background: var(--akt-base-2);
  color: var(--akt-brand);
}
/* subtitle under "Partner portal" */
.akt-ts-sub {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;
  color: var(--akt-ink-dim);
}

/* "Get Started" (logged-out right menu) as the blue button, like the Astro header */
.navbar [menuItemName="akt-get-started"] > a,
.navbar #Secondary_Navbar-akt-get-started > a,
.navbar #Secondary_Navbar-akt-get-started .nav-link {
  background: var(--akt-brand);
  color: #fff !important;
  border-radius: var(--akt-radius);
  padding: 8px 14px;
  margin-left: 6px;
}

/* ---- footer + cards ---- */
.card, .panel, .tile {
  border-color: var(--akt-line);
  border-radius: var(--akt-radius);
}
footer.footer, #footer { border-top: 1px solid var(--akt-line); }

/* affiliates.php: "Hosting affiliate stats only" banner with the Partner portal button */
.akt-ts-partner-banner { margin: 16px 0 20px; padding: 16px 20px; border: 1px solid var(--akt-brand, #0273D4); border-left-width: 6px; border-radius: 10px; background: rgba(2, 115, 212, 0.06); color: inherit; }
.akt-ts-partner-banner p { margin: 0 0 6px; line-height: 1.5; }
.akt-ts-partner-banner .akt-ts-banner-title { font-weight: 700; font-size: 1.05rem; }
.akt-ts-partner-banner .akt-ts-banner-note { font-size: 0.95rem; }
.akt-ts-partner-banner .akt-ts-banner-steps { margin: 0.5rem 0 0.75rem 1.25rem; padding: 0; font-size: 0.95rem; }
.akt-ts-partner-banner .akt-ts-banner-steps li { margin: 0.2rem 0; }
.akt-ts-partner-banner .akt-ts-banner-link { margin-left: 0.75rem; font-weight: 600; white-space: nowrap; }
.akt-ts-partner-banner .akt-ts-banner-cta { margin: 10px 0 0; }
.akt-ts-partner-banner .akt-ts-banner-btn { display: inline-block; }
