

/* ===== Split from inline <style> blocks ===== */

:root {
      --ink:#0b1220; --muted:#667085; --bg:#f6f8fc;
      --brand:#0a6cff; --brand-dark:#084dbd;
      --surface:#ffffff; --line:#e5e7eb;
      --footer:#0f172a;
    }
    body { background:var(--bg); color:var(--ink); }
    .navbar { box-shadow:0 1px 0 var(--line); }
    .navbar-brand { font-weight:700; }
    .nav-link { color:#334155 !important; }
    .nav-link:hover { color:var(--brand) !important; }

    .btn-brand { background:var(--brand); border-color:var(--brand); color:#fff; }
    .btn-brand:hover { background:var(--brand-dark); border-color:var(--brand-dark); color:#fff; }
    .btn-soft { background:#eef2ff; color:#1e293b; border-color:#eef2ff; }
    .btn-soft:hover { background:#e0e7ff; }

    .hero { padding:14px 0 48px; }
    .version-pill{
      display:inline-block; background:#eef2ff; color:#1e3a8a;
      padding:.25rem .6rem; border-radius:999px; font-size:.75rem;
    }
    .lead { color:#475569; }

    .feature-card {
      background:#fff; border-radius:1rem; border:1px solid var(--line);
      box-shadow:0 6px 18px rgba(2,6,23,.06); height:100%;
      transition:transform .08s ease, box-shadow .12s ease;
      text-decoration:none;
    }
    .feature-card:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgba(2,6,23,.10); }
    .card-body { padding:1.2rem; }
    .card-kicker { font-size:.75rem; color:#667085; text-transform:uppercase; letter-spacing:.08em; }

    footer { background:var(--footer); color:#e2e8f0; }
    .footer-links a { color:#cbd5e1; }
    .footer-links a:hover { color:#fff; }
    .footer-cite { color:#e2e8f0; }
    .footer-cite a { color:#93c5fd; }
    .footer-rule { border-top:1px solid rgba(148,163,184,.25); }
    .footer-bottom { padding-bottom:1rem; }

    .maintenance-alert { border-radius:0; margin-bottom:0; display:none; }
  
/* Maintenance banner close button: remove default border/box */
#maintenanceClose{
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  padding:2px !important;
  line-height:1 !important;
  border-radius:4px !important; /* keeps click target pleasant without visible border */
}
#maintenanceClose:hover{
  background:rgba(0,0,0,0.06) !important; /* subtle hover like screenshot */
}


/* Admin submenu: center submenu item text */
#adminMenu .dropdown-item { text-align: center !important; }




/* Maintenance banner polish */
#maintenanceBanner, #maintenanceBanner * { outline: none !important; }
#maintenanceBanner > div { box-shadow: none !important; }



/* Match DeCIFR hero top spacing */
#tbas-hero-wrapper { padding-top: 48px; }



/* Match DeCIFR hero typography */
.hero h1 {
  font-size: 29px;           /* ~text-3xl */
  line-height: 1.12;
  font-weight: 500;
  letter-spacing: -0.012em;
  color: #0b1220;
 }
@media (min-width: 640px) {
  .hero h1 { font-size: 36px;  }  /* ~sm:text-4xl */
}
.hero p.lead {
  font-size: 16px;           /* ~text-base */
  line-height: 1.6;
  color: #334155;            /* slate-700 */
  font-weight: 400;
}
@media (min-width: 640px) {
  .hero p.lead { font-size: 18px; } /* ~sm:text-lg */
}
.hero .version-pill {
  font-size: 13px;
  color: #475569;
  background: #eef2ff;
  border: 1px solid #e5e7eb;
  border-radius: 9999px;
  padding: 6px 10px;
  display: inline-block;
}



/* Navbar tweaks */
.navbar-nav .nav-link { margin-right: 1.25rem; }             /* spacing between items */
.nav-sep { display:inline-block; width:1px; height:20px; background:#cbd5e1; margin:0 .75rem; vertical-align:middle; }
            /* hide default caret */



/* Thin chevron for dropdowns to match DeCIFR */







/* Thinner chevron + hover-to-open + flip on open */


/* Open submenu when hovering the toggle (incl. chevron area) or the dropdown */
.navbar .dropdown:hover .dropdown-menu,
.navbar .dropdown-toggle:hover + .dropdown-menu {
  display: block;
  margin-top: 0;
}

/* Flip chevron when menu is open (Bootstrap adds .show) or on hover */
.navbar .dropdown.show .dropdown-toggle::after,
.navbar .dropdown:hover .dropdown-toggle::after {
  transform: rotate(-135deg); /* up */
}



/* Wrap hero title on small screens; keep single-line on larger viewports */
.hero h1 { white-space: normal; overflow-wrap: anywhere; word-break: normal; }
@media (min-width: 1024px) {
  .hero h1 { white-space: nowrap; }
}



/* Centered, thinner chevron that aligns with nav text */




/* Smaller, vertically-centered chevron */




/* Remove default bootstrap caret and draw a thin, centered chevron */
.navbar .dropdown-toggle::before { display: none !important; }
.navbar .dropdown-toggle::after {
  content: "";
  display: inline-block;
  width: .42em;                 /* slightly smaller */
  height: .42em;
  border: 0;                    /* nuke default triangle */
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  margin-left: .35em;
  vertical-align: middle;
  position: relative;
  top: -0.12em;                 /* nudge higher */
  background: transparent;
}



/* Ensure brand has at least the same gap as between other nav items */
.navbar .navbar-brand, .navbar a.brand { margin-right: 2rem; }


.navbar .navbar-brand, .navbar a.brand { margin-right: 2rem !important; }

.navbar .navbar-brand, .navbar a.brand { margin-right: 2rem !important; }


  .tbas-search-hit { box-shadow: 0 0 0 2px rgba(10,108,255,.25) !important; }
  .tbas-search-hit-current { box-shadow: 0 0 0 3px rgba(10,108,255,.6) !important; }
  /* Hide native WebKit search clear icon so it doesn't overlap controls */
  input[type="search"]::-webkit-search-decoration,
  input[type="search"]::-webkit-search-cancel-button,
  input[type="search"]::-webkit-search-results-button,
  input[type="search"]::-webkit-search-results-decoration { display: none; }



  /* Vertical separators between footer links (like |), without using characters */
  .footer-links a { padding: 0 .9rem; display: inline-block; }
  .footer-links a + a { border-left: 1px solid rgba(255,255,255,.8); }
  .footer-rule .small a { padding: 0 .6rem; display: inline-block; }
  .footer-rule .small a + a { border-left: 1px solid rgba(255,255,255,.8); }



  html.jobmon-hide [data-job-monitor] { display: none !important; }



/* When the root has .admin-hide, hide Admin group (like DeCIFR Job Monitor guard) */
html.admin-hide #adminMenuWrapper { display: none !important; }