:root {
  --primary: #102045;
  --primary-2: #294878;
  --secondary: #e9eef8;
  --accent: #f4c95d;
  --accent-dark: #d6a62c;
  --bg: #f6f7f2;
  --surface: #fff;
  --text: #182238;
  --muted: #000000;
  --border: #dce4df;
  --success: #16815a;
  --warning: #b96a05;
  --error: #c63d3d;
  --radius-sm: 0.65rem;
  --radius: 1rem;
  --radius-lg: 1.5rem;
  --shadow: 0 18px 50px rgba(16, 32, 69, 0.1);
  --container: 75rem;
  --font-body: "DM Sans", sans-serif;
  --font-display: "Manrope", sans-serif;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-body);
  line-height: 1.6;
  overflow-x: hidden;
}
body.nav-open {
  overflow: hidden;
}
img,
svg {
  display: block;
  max-width: 100%;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input,
select {
  font: inherit;
}
button {
  cursor: pointer;
}
.container {
  width: min(100% - 2rem, var(--container));
  margin-inline: auto;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.skip-link {
  position: fixed;
  left: 1rem;
  top: -5rem;
  background: var(--accent);
  padding: 0.75rem 1rem;
  z-index: 1000;
}
.skip-link:focus {
  top: 1rem;
}
:focus-visible {
  outline: 3px solid var(--accent-dark);
  outline-offset: 3px;
}
.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 100;
  background: rgba(16, 32, 69, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  transition:
    background 0.25s,
    box-shadow 0.25s;
}
.site-header.is-scrolled {
  background: rgba(16, 32, 69, 0.97);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.16);
}
.nav-shell {
  min-height: 4.75rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  color: #fff;
  font-family: var(--font-display);
  font-size: 1.15rem;
  font-weight: 800;
}
.brand-logo {
  display: block;
  width: 230px;
  height: auto;
  max-height: 3.5rem;
  object-fit: contain;
  object-position: left center;
}
@media (max-width: 67.99rem) {
  .brand-logo {
    width: 180px;
  }
}
.brand > span:last-child span {
  color: var(--accent);
}
.brand-mark {
  width: 2.15rem;
  height: 2.15rem;
  display: grid;
  place-items: center;
  border-radius: 0.65rem;
  background: var(--accent);
}
.brand-mark svg {
  width: 1.25rem;
  fill: var(--primary);
}
.nav-toggle {
  width: 3rem;
  height: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 0.4rem;
  background: transparent;
  display: grid;
  place-content: center;
  gap: 5px;
}
.nav-toggle > span:not(.sr-only) {
  width: 1.2rem;
  height: 1px;
  background: white;
  transition: 0.2s;
}
.primary-nav {
  display: none;
  position: fixed;
  inset: 4.75rem 0 0;
  background: var(--primary);
  padding: 1rem;
  overflow: auto;
}
.primary-nav.is-open {
  display: flex;
  flex-direction: column;
}
.primary-nav > a,
.primary-nav > button {
  min-height: 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  background: none;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  font-weight: 600;
  text-align: left;
}
.nav-actions {
  display: grid;
  gap: 0.7rem;
  margin-top: 1rem;
}
.button {
  min-height: 2.8rem;
  padding: 0.7rem 1.1rem;
  border-radius: 0.7rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  border: 1px solid transparent;
  font-weight: 700;
  transition:
    transform 0.2s,
    background 0.2s;
}
.button:hover {
  transform: translateY(-2px);
}
.button-primary {
  background: white;
  color: var(--primary);
}
.button-ghost {
  border-color: rgba(255, 255, 255, 0.3);
  color: white;
}
.button-accent {
  background: var(--accent);
  color: var(--primary);
}
.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 8.5rem 0 4rem;
  background: var(--primary);
  color: white;
}
.hero:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 38rem;
  height: 38rem;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  right: -20rem;
  top: -11rem;
  box-shadow:
    0 0 0 5rem rgba(255, 255, 255, 0.025),
    0 0 0 10rem rgba(255, 255, 255, 0.02);
}
.hero-grid {
  display: grid;
  gap: 2.5rem;
}
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  color: #dbe5f7;
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
}
.eyebrow > span {
  width: 0.55rem;
  height: 0.55rem;
  background: var(--accent);
  border-radius: 50%;
}
.eyebrow.dark {
  color: var(--primary-2);
}
h1,
h2,
h3 {
  font-family: var(--font-display);
  line-height: 1.08;
  margin: 0;
}
h1 {
  max-width: 12ch;
  margin: 0.9rem 0 1.25rem;
  font-size: clamp(2.6rem, 10vw, 3.3rem);
  letter-spacing: -0.055em;
}
h1 em {
  color: var(--accent);
  font-style: normal;
}
.hero-copy > p {
  max-width: 38rem;
  color: #c7d4ea;
  font-size: 1.05rem;
}
.job-search {
  margin-top: 2rem;
  padding: 0.75rem;
  background: white;
  border-radius: var(--radius);
  display: grid;
  gap: 0.5rem;
  color: var(--text);
  box-shadow: 0 25px 65px rgba(0, 0, 0, 0.2);
}
.job-search label {
  display: grid;
  padding: 0.2rem 0.65rem;
  border-bottom: 1px solid var(--border);
}
.job-search label span {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
  font-weight: 700;
}
.job-search input,
.job-search select {
  width: 100%;
  padding: 0.3rem 0;
  border: 0;
  outline: 0;
  color: var(--text);
  background: white;
}
.popular {
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  font-size: 0.85rem;
  color: #bdcbe2;
}
.popular a {
  border-bottom: 1px solid #8b9bb7;
}
.hero-panel {
  display: grid;
  gap: 1rem;
  padding: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.07);
  backdrop-filter: blur(8px);
}
.signal {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.4rem;
}
.signal-dot {
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 0.35rem rgba(244, 201, 93, 0.16);
}
.signal span:last-child {
  display: grid;
}
.signal small {
  color: #afc0dc;
}
.spotlight-card {
  padding: 1.25rem;
  background: white;
  color: var(--text);
  border-radius: var(--radius);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1rem;
}
.spotlight-icon {
  width: 3rem;
  height: 3rem;
  display: grid;
  place-items: center;
  background: var(--secondary);
  border-radius: 0.8rem;
  font-size: 1.5rem;
}
.spotlight-card div {
  display: grid;
}
.spotlight-card small,
.spotlight-card span {
  color: var(--muted);
}
.spotlight-card > a {
  font-size: 1.5rem;
}
.trust-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.7rem;
}
.trust-row div {
  padding: 1rem;
  background: rgba(0, 0, 0, 0.12);
  border-radius: 0.8rem;
  display: grid;
}
.trust-row span {
  font-size: 0.75rem;
  color: #bdcbe2;
}
.proof-bar {
  background: var(--accent);
  color: var(--primary);
  padding: 1rem 0;
  font-weight: 700;
  font-size: 0.8rem;
}
.proof-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
}
.section {
  padding: 4.5rem 0;
}
.section-heading {
  display: grid;
  gap: 1rem;
  margin-bottom: 2rem;
}
.section-heading h2 {
  font-size: clamp(2rem, 7vw, 3.2rem);
  letter-spacing: -0.04em;
}
.section-heading p {
  max-width: 33rem;
  color: var(--muted);
}
.feature-grid {
  display: grid;
  gap: 1rem;
}
.feature-card {
  min-height: 15rem;
  padding: 1.5rem;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
}
.feature-card.featured {
  background: var(--primary);
  color: white;
}
.feature-card > span {
  color: var(--primary-2);
  font-weight: 800;
}
.feature-card.featured > span {
  color: var(--accent);
}
.feature-card h3 {
  font-size: 1.35rem;
  margin: 3rem 0 0.65rem;
}
.feature-card p {
  color: var(--muted);
}
.feature-card.featured p {
  color: #c1cee3;
}
.site-footer {
  padding: 3.5rem 0 1.5rem;
  background: #08142f;
  color: #bdcbe2;
}
.footer-grid {
  display: grid;
  gap: 2rem;
}
.footer-grid > div {
  display: grid;
  align-content: start;
  gap: 0.5rem;
}
.footer-grid h2 {
  font-size: 0.85rem;
  color: white;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.footer-grid a:not(.brand) {
  font-size: 0.9rem;
}
.footer-base {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 2rem;
  padding-top: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  font-size: 0.75rem;
}
@media (min-width: 48rem) {
  .container {
    width: min(100% - 3rem, var(--container));
  }
  .hero {
    padding: 10rem 0 6rem;
  }
  .hero-grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr);
    align-items: center;
  }
  .job-search {
    grid-template-columns: 1.2fr 1fr;
  }
  .job-search label {
    border-bottom: 0;
  }
  .proof-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  .section-heading {
    grid-template-columns: 1fr 1fr;
    align-items: end;
  }
  .feature-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .footer-grid {
    grid-template-columns: 2fr 1fr 1fr;
  }
}
@media (min-width: 68rem) {
  .nav-toggle {
    display: none;
  }
  .primary-nav {
    position: static;
    display: flex;
    align-items: center;
    gap: 1.35rem;
    background: transparent;
    padding: 0;
    overflow: visible;
  }
  .primary-nav > a,
  .primary-nav > button {
    min-height: auto;
    border: 0;
    font-size: 0.86rem;
  }
  .nav-actions {
    display: flex;
    margin: 0 0 0 0.5rem;
  }
  .job-search {
    grid-template-columns: 1.25fr 1fr 0.8fr auto;
  }
  .hero-panel {
    padding: 1.35rem;
  }
  .section {
    padding: 6.5rem 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Authentication */
.auth-page {
  background: var(--surface);
}
.auth-shell {
  min-height: 100svh;
  display: grid;
}
.auth-story {
  position: relative;
  overflow: hidden;
  min-height: 19rem;
  padding: 1.25rem;
  color: white;
  background: var(--primary);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.auth-story:after {
  content: "";
  position: absolute;
  width: 24rem;
  height: 24rem;
  border-radius: 50%;
  right: -13rem;
  bottom: -12rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow:
    0 0 0 4rem rgba(255, 255, 255, 0.025),
    0 0 0 8rem rgba(255, 255, 255, 0.02);
}
.auth-story h1 {
  font-size: clamp(2rem, 8vw, 4rem);
  margin: 0.8rem 0;
  max-width: 12ch;
}
.auth-story p {
  color: #c1cee3;
  max-width: 34rem;
}
.auth-benefits {
  display: none;
  list-style: none;
  padding: 0;
  margin: 0;
}
.auth-benefits span {
  color: var(--accent);
}
.auth-main {
  padding: 2rem 1rem 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.auth-card {
  width: min(100%, 34rem);
  margin: auto;
}
.auth-heading {
  margin-bottom: 1.5rem;
}
.auth-kicker {
  display: block;
  color: var(--primary-2);
  font-size: 0.74rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 800;
  margin-bottom: 0.5rem;
}
.auth-heading h2 {
  font-size: clamp(2rem, 7vw, 3rem);
  letter-spacing: -0.045em;
}
.auth-heading p {
  color: var(--muted);
  margin: 0.55rem 0 0;
}
.auth-form {
  display: grid;
  gap: 1rem;
}
.dev-verification {
  display: grid;
  gap: 0.65rem;
  margin-bottom: 1rem;
  padding: 1rem;
  border: 1px solid #d8b347;
  border-radius: 0.75rem;
  background: #fff8dc;
  color: #102045;
}
.dev-verification p { margin: 0; font-size: 0.78rem; line-height: 1.5; }
.dev-verification .button { width: 100%; justify-content: center; }
.field {
  display: grid;
  gap: 0.4rem;
  font-weight: 700;
  font-size: 0.9rem;
}
.field input {
  width: 100%;
  min-height: 3.25rem;
  padding: 0.7rem 0.85rem;
  border: 1px solid var(--border);
  border-radius: 0.7rem;
  background: #fbfcff;
  color: var(--text);
  transition:
    border-color 0.2s,
    box-shadow 0.2s;
}
.field input:focus {
  border-color: var(--primary-2);
  box-shadow: 0 0 0 4px rgba(41, 72, 120, 0.12);
  outline: 0;
}
.field small {
  font-weight: 400;
  color: var(--muted);
  font-size: 0.75rem;
}
.field-row {
  display: grid;
  gap: 1rem;
}
.password-control {
  position: relative;
  display: block;
}
.password-control input {
  padding-right: 4.2rem;
}
.password-control button {
  position: absolute;
  right: 0.45rem;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: var(--primary-2);
  font-weight: 800;
  padding: 0.55rem;
}
.check-field {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  color: var(--muted);
  font-size: 0.86rem;
}
.check-field input {
  width: 1.15rem;
  height: 1.15rem;
  accent-color: var(--primary);
  flex: none;
  margin-top: 0.15rem;
}
.check-field a,
.form-meta a,
.auth-switch a {
  color: var(--primary-2);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 700;
}
.form-meta {
  text-align: right;
  font-size: 0.85rem;
}
.button-auth {
  width: 100%;
  min-height: 3.3rem;
  background: var(--primary);
  color: white;
}
.field-error {
  color: var(--error);
  font-size: 0.78rem;
  font-weight: 600;
}
.alert {
  padding: 0.85rem 1rem;
  border-radius: 0.7rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
}
.alert-success {
  color: #07583a;
  background: #e5f7ef;
  border: 1px solid #a4dec7;
}
.alert-error {
  color: #862727;
  background: #fff0f0;
  border: 1px solid #f0b9b9;
}
.auth-switch {
  text-align: center;
  color: var(--muted);
  font-size: 0.9rem;
  margin: 1.4rem 0 0;
}
.auth-home {
  width: min(100%, 34rem);
  margin: 1.5rem auto 0;
  color: var(--muted);
  font-size: 0.82rem;
}
.strength {
  display: block;
  height: 4px;
  background: var(--border);
  border-radius: 1rem;
  overflow: hidden;
}
.strength i {
  display: block;
  width: 0;
  height: 100%;
  background: var(--error);
  transition:
    width 0.25s,
    background 0.25s;
}
.strength i[data-score="2"] {
  background: var(--warning);
}
.strength i[data-score="3"],
.strength i[data-score="4"] {
  background: var(--success);
}
.dashboard-welcome {
  padding-top: 8rem;
}
.dashboard-welcome h1 {
  color: var(--text);
  font-size: clamp(2.5rem, 8vw, 4.5rem);
  margin: 1rem 0;
}
.dashboard-welcome p {
  max-width: 42rem;
  color: var(--muted);
}
.dashboard-welcome .button-primary {
  background: var(--primary);
  color: white;
}
.nav-actions form {
  display: contents;
}
@media (min-width: 40rem) {
  .field-row {
    grid-template-columns: 1fr 1fr;
  }
  .auth-main {
    padding: 3rem;
  }
}
@media (min-width: 64rem) {
  .auth-shell {
    grid-template-columns: minmax(25rem, 0.85fr) minmax(32rem, 1.15fr);
  }
  .auth-story {
    min-height: 100svh;
    padding: 3rem 4rem;
  }
  .auth-story > div {
    margin: auto 0;
  }
  .auth-benefits {
    display: grid;
    gap: 0.65rem;
  }
  .auth-main {
    padding: 4rem;
  }
  .auth-card {
    margin: auto;
  }
  .auth-home {
    margin-inline: auto;
  }
}

/* Administration */
.admin-body {
  background: #f3f5f9;
}
.admin-shell {
  min-height: 100svh;
}
.admin-sidebar {
  position: fixed;
  z-index: 300;
  inset: 0 auto 0 0;
  width: min(18rem, 88vw);
  padding: 1.25rem;
  background: #0b1735;
  color: #c7d2e6;
  transform: translateX(-102%);
  transition: transform 0.25s ease;
  display: flex;
  flex-direction: column;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}
.admin-sidebar.is-open {
  transform: none;
}
.admin-sidebar .brand {
  margin-bottom: 2rem;
  flex: 0 0 auto;
}
.admin-label {
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #8190aa;
  margin: 0.5rem 0.75rem;
}
.admin-sidebar nav {
  display: grid;
  gap: 0.3rem;
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0 0.35rem 0.85rem 0;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.25) transparent;
}
.admin-sidebar nav::-webkit-scrollbar {
  width: 0.35rem;
}
.admin-sidebar nav::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.25);
}
.admin-sidebar nav > a {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.72rem 0.8rem;
  border-radius: 0.65rem;
  font-size: 0.9rem;
  font-weight: 600;
}
.admin-sidebar nav > a:hover,
.admin-sidebar nav > a.active {
  background: rgba(255, 255, 255, 0.09);
  color: white;
}
.admin-sidebar nav > a.active {
  box-shadow: inset 3px 0 var(--accent);
}
.admin-sidebar nav > a > span {
  width: 1.3rem;
  color: var(--accent);
  text-align: center;
}
.settings-form {
  display: grid;
  gap: 1rem;
  padding-bottom: 6rem;
}
.settings-media-grid {
  display: grid;
  gap: 1rem;
}
.settings-preview {
  min-height: 8rem;
  padding: 1rem;
  border: 1px solid var(--border);
  border-radius: 0.8rem;
  background: #f7f9fc;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 0.65rem;
}
.settings-preview > span { color: var(--muted); font-size: 0.72rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; }
.settings-logo-preview { background: #102045; color: #fff; }
.settings-logo-preview img { width: min(100%, 20rem); max-height: 5rem; object-fit: contain; object-position: left center; }
.settings-favicon-preview img { width: 3rem; height: 3rem; object-fit: contain; }
.settings-favicon-preview em { color: var(--muted); font-size: 0.85rem; }
.settings-save-bar {
  position: sticky;
  z-index: 70;
  bottom: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.8rem 1rem;
  border: 1px solid var(--border);
  border-radius: 0.85rem;
  background: rgba(255,255,255,.96);
  box-shadow: 0 15px 40px rgba(16,32,69,.14);
  backdrop-filter: blur(12px);
}
.settings-save-bar span { color: var(--muted); font-size: 0.82rem; }
.smtp-settings .panel-heading > .status { flex: 0 0 auto; }
.smtp-test-row { display: grid; gap: 1rem; align-items: end; margin-top: 0.25rem; padding-top: 1rem; border-top: 1px solid var(--border); }
.smtp-test-row .button { min-height: 2.75rem; justify-content: center; }
@media (min-width: 48rem) { .smtp-test-row { grid-template-columns: minmax(0, 1fr) auto; } }
@media (min-width: 48rem) {
  .settings-media-grid { grid-template-columns: 1fr 1fr; align-items: stretch; }
}
@media (max-width: 39.99rem) {
  .settings-save-bar { align-items: stretch; flex-direction: column; }
  .settings-save-bar .button { width: 100%; }
}
.admin-sidebar nav small {
  margin-left: auto;
  color: #8190aa;
  font-size: 0.6rem;
}
.admin-sidebar-foot {
  margin-top: auto;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 1rem;
  display: grid;
  gap: 0.55rem;
  flex: 0 0 auto;
  position: relative;
  z-index: 2;
  background: #0b1735;
}
.admin-sidebar-foot a,
.admin-sidebar-foot button {
  color: #c7d2e6;
  background: none;
  border: 0;
  text-align: left;
  padding: 0.35rem;
  font: inherit;
  font-size: 0.82rem;
}
.admin-main {
  min-width: 0;
}
.admin-topbar {
  height: 4.5rem;
  padding: 0 1rem;
  background: white;
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  gap: 1rem;
  position: sticky;
  top: 0;
  z-index: 90;
}
.admin-topbar > div {
  display: grid;
}
.admin-topbar > div span {
  font-size: 0.7rem;
  color: var(--muted);
}
.admin-menu-toggle {
  border: 1px solid var(--border);
  background: white;
  border-radius: 0.6rem;
  padding: 0.5rem 0.7rem;
}
.admin-avatar {
  margin-left: auto;
  width: 2.3rem;
  height: 2.3rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--primary);
  color: white;
  font-weight: 800;
}
.admin-content {
  padding: 1.25rem;
  max-width: 96rem;
  margin: auto;
}
.admin-page-heading {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  gap: 1rem;
  margin: 1rem 0 1.5rem;
}
.admin-page-heading h1 {
  font-size: clamp(2rem, 5vw, 3.25rem);
  color: var(--text);
  letter-spacing: -0.045em;
}
.admin-page-heading p {
  color: var(--muted);
  margin: 0.4rem 0 0;
}
.button-admin {
  background: var(--primary);
  color: white;
}
.button-muted {
  border-color: var(--border);
  background: white;
  color: var(--text);
}
.admin-stats {
  display: grid;
  gap: 0.8rem;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 1.25rem;
}
.admin-stats article {
  padding: 1rem;
  background: white;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  gap: 0.8rem;
  box-shadow: 0 8px 25px rgba(16, 32, 69, 0.05);
}
.admin-stats article > span {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.7rem;
  background: var(--secondary);
  color: var(--primary);
  display: grid;
  place-items: center;
}
.admin-stats article div {
  display: grid;
}
.admin-stats strong {
  font-family: var(--font-display);
  font-size: 1.45rem;
}
.admin-stats small {
  color: var(--muted);
}
.admin-grid {
  display: grid;
  gap: 1.25rem;
}
.admin-panel {
  background: white;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: 0 10px 30px rgba(16, 32, 69, 0.05);
  min-width: 0;
}
.panel-heading {
  padding: 1.1rem 1.2rem;
  border-bottom: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}
.panel-heading h2,
.form-panel > h2 {
  font-size: 1.05rem;
}
.panel-heading p {
  font-size: 0.78rem;
  color: var(--muted);
  margin: 0.15rem 0;
}
.panel-heading a {
  font-size: 0.8rem;
  color: var(--primary-2);
  font-weight: 700;
}
.admin-list > a {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 0.8rem;
  align-items: center;
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--border);
}
.admin-list > a:last-child {
  border: 0;
}
.admin-list span:nth-child(2) {
  display: grid;
}
.admin-list small,
.responsive-table td small {
  display: block;
  color: var(--muted);
  font-size: 0.72rem;
}
.list-icon {
  width: 2.1rem;
  height: 2.1rem;
  display: grid;
  place-items: center;
  border-radius: 0.55rem;
  background: var(--secondary);
}
.status {
  display: inline-flex;
  width: max-content;
  padding: 0.25rem 0.5rem;
  border-radius: 2rem;
  background: #eef1f6;
  color: var(--muted);
  font-size: 0.65rem;
  text-transform: capitalize;
  font-weight: 800;
}
.status-published {
  background: #e3f6ed;
  color: #08704a;
}
.status-draft {
  background: #fff5d8;
  color: #8a6200;
}
.status-closed,
.status-expired {
  background: #f9e8e8;
  color: #9a3535;
}
.status-scheduled {
  background: #e8effb;
  color: #315f9b;
}
.timeline {
  padding: 1rem 1.2rem;
}
.timeline > div {
  display: flex;
  gap: 0.8rem;
  min-height: 3.2rem;
}
.timeline i {
  width: 0.55rem;
  height: 0.55rem;
  margin-top: 0.35rem;
  border-radius: 50%;
  background: var(--accent-dark);
  box-shadow: 0 0 0 4px var(--secondary);
}
.timeline span {
  display: grid;
  align-content: start;
}
.timeline strong {
  font-size: 0.82rem;
  text-transform: capitalize;
}
.timeline small {
  font-size: 0.7rem;
  color: var(--muted);
}
.empty-state {
  padding: 1.5rem;
  color: var(--muted);
  text-align: center;
}
.admin-split {
  display: grid;
  gap: 1.25rem;
}
.form-panel {
  padding: 1.2rem;
}
.form-panel > .panel-heading {
  margin: -1.2rem -1.2rem 1.2rem;
}
.admin-form,
.job-editor-main {
  display: grid;
  gap: 1rem;
}
.field textarea,
.field select,
.admin-filters input,
.admin-filters select {
  width: 100%;
  padding: 0.72rem 0.85rem;
  border: 1px solid var(--border);
  border-radius: 0.7rem;
  background: #fbfcff;
  color: var(--text);
}
.check-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.responsive-table {
  overflow-x: auto;
}
.responsive-table table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
}
.responsive-table th,
.responsive-table td {
  padding: 0.85rem 1rem;
  border-bottom: 1px solid var(--border);
  text-align: left;
  font-size: 0.8rem;
}
.responsive-table th {
  color: var(--muted);
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  background: #fafbfe;
}
.table-actions {
  position: relative;
  display: flex;
  justify-content: flex-end;
  gap: 0.6rem;
  align-items: center;
}
.table-actions > a,
.table-actions > button,
.table-actions form > button {
  border: 0;
  background: none;
  color: var(--primary-2);
  font: inherit;
  font-weight: 700;
}
.row-menu {
  display: none;
  position: absolute;
  right: 0;
  top: 1.8rem;
  z-index: 10;
  width: 9rem;
  padding: 0.35rem;
  background: white;
  border: 1px solid var(--border);
  border-radius: 0.6rem;
  box-shadow: var(--shadow);
}
.row-menu.is-open {
  display: block;
}
.row-menu form {
  display: grid;
}
.row-menu form button {
  text-align: left;
  padding: 0.45rem;
}
.row-menu form button[data-danger] {
  color: var(--error);
}
.skill-cloud {
  padding: 1rem;
  display: grid;
  gap: 0.5rem;
}
.skill-cloud > div {
  padding: 0.7rem 0.8rem;
  border: 1px solid var(--border);
  border-radius: 0.7rem;
  display: flex;
  align-items: center;
  gap: 0.7rem;
}
.skill-cloud > div > span {
  display: grid;
  margin-right: auto;
}
.skill-cloud small {
  color: var(--muted);
}
.skill-cloud a,
.skill-cloud button {
  font: inherit;
  font-size: 0.75rem;
  border: 0;
  background: none;
  color: var(--primary-2);
}
.admin-filters {
  padding: 1rem;
  display: grid;
  gap: 0.7rem;
  border-bottom: 1px solid var(--border);
}
.admin-filters > a {
  align-self: center;
  color: var(--muted);
  font-size: 0.8rem;
}
.pagination {
  display: flex;
  gap: 0.4rem;
  padding: 1rem;
}
.pagination a {
  width: 2rem;
  height: 2rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 0.5rem;
}
.pagination a.active {
  background: var(--primary);
  color: white;
}
.job-editor {
  display: grid;
  gap: 1.25rem;
}
.job-editor-side {
  min-width: 0;
}
.sticky-panel {
  display: grid;
  gap: 1rem;
}
.field-row.three {
  grid-template-columns: 1fr;
}
.phase-note {
  padding: 0.8rem;
  border-radius: 0.65rem;
  background: #fff8df;
  color: #775b00;
  font-size: 0.78rem;
}
@media (min-width: 48rem) {
  .admin-content {
    padding: 2rem;
  }
  .admin-stats {
    grid-template-columns: repeat(4, 1fr);
  }
  .admin-filters {
    grid-template-columns: minmax(12rem, 1fr) auto auto auto auto;
  }
  .field-row.three {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 72rem) {
  .admin-sidebar {
    transform: none;
    width: 16rem;
  }
  .admin-main {
    margin-left: 16rem;
  }
  .admin-menu-toggle {
    display: none;
  }
  .admin-content {
    padding: 2.25rem;
  }
  .admin-grid {
    grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.55fr);
  }
  .admin-split {
    grid-template-columns: minmax(19rem, 0.4fr) minmax(0, 1fr);
    align-items: start;
  }
  .compact-split {
    grid-template-columns: minmax(19rem, 0.32fr) minmax(0, 1fr);
  }
  .job-editor {
    grid-template-columns: minmax(0, 1fr) 18rem;
    align-items: start;
  }
  .sticky-panel {
    position: sticky;
    top: 6.5rem;
  }
}
.insight-grid {
  margin-top: 1.25rem;
}
.bar-chart {
  padding: 1.2rem;
  display: grid;
  gap: 0.85rem;
}
.bar-chart > div {
  display: grid;
  grid-template-columns: minmax(6rem, 9rem) 1fr 2rem;
  align-items: center;
  gap: 0.7rem;
  font-size: 0.75rem;
}
.bar-chart i {
  height: 0.5rem;
  border-radius: 1rem;
  background: var(--secondary);
  overflow: hidden;
}
.bar-chart b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--primary-2);
}
.bar-chart strong {
  text-align: right;
}
.spark-bars {
  height: 13rem;
  padding: 1.3rem 1.2rem 1rem;
  display: flex;
  align-items: end;
  gap: 0.65rem;
}
.spark-bars > div {
  height: 100%;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: end;
  align-items: center;
  gap: 0.4rem;
}
.spark-bars i {
  width: min(100%, 2rem);
  min-height: 0.3rem;
  border-radius: 0.35rem 0.35rem 0.1rem 0.1rem;
  background: var(--accent-dark);
}
.spark-bars span {
  font-size: 0.65rem;
  color: var(--muted);
}

/* Category homepage image controls */
.category-image-preview{margin:0;padding:.75rem;border:1px solid var(--border);border-radius:.8rem;background:#f6f8fc}.category-image-preview img{display:block;width:100%;max-height:13rem;object-fit:cover;border-radius:.55rem}.category-image-preview figcaption{margin-top:.45rem;color:var(--muted);font-size:.75rem}.category-table-thumb{display:block;width:4rem;height:3rem;object-fit:cover;border-radius:.45rem;border:1px solid var(--border)}

/* Admin job rich-text editor */
.rich-editor{overflow:hidden;border:1px solid var(--border);border-radius:.8rem;background:#fff}.rich-editor:focus-within{border-color:var(--primary-2);box-shadow:0 0 0 3px rgba(43,85,146,.12)}.rich-editor-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.55rem;background:#eef2f8;border-bottom:1px solid var(--border)}.rich-editor-toolbar button,.rich-editor-toolbar select{min-height:2.35rem;padding:.4rem .6rem;border:1px solid #c9d2e2;border-radius:.45rem;background:#fff;color:#000;font:inherit;font-size:.78rem;cursor:pointer}.rich-editor-toolbar button:hover,.rich-editor-toolbar button:focus-visible{background:var(--primary);color:#fff}.rich-editor-content{min-height:24rem;padding:1rem;outline:0;line-height:1.7;color:#000}.rich-editor-content[data-invalid="true"]{box-shadow:inset 0 0 0 2px var(--error)}.rich-editor-content h1,.rich-editor-content h2,.rich-editor-content h3,.rich-editor-content h4,.rich-editor-content h5,.rich-editor-content h6{margin:1rem 0 .5rem}.rich-editor-content p{margin:.6rem 0}.rich-editor-content ul,.rich-editor-content ol{padding-left:1.6rem}.rich-editor-content hr{margin:1.5rem 0;border:0;border-top:1px solid var(--border)}.text-size-small{font-size:.82em}.text-size-normal{font-size:1em}.text-size-large{font-size:1.3em}
.rich-editor-content strong,.rich-editor-content b{font-weight:800}.rich-editor-content em,.rich-editor-content i{font-style:italic}.rich-editor-content u{text-decoration:underline;text-underline-offset:.12em}
.rich-editor{overflow:visible}.rich-editor-toolbar{position:sticky;top:4.5rem;z-index:85;border-radius:.8rem .8rem 0 0;box-shadow:0 6px 14px rgba(16,32,69,.08)}.rich-editor-toolbar select{width:auto;max-width:11rem}.rich-font-size{display:flex;align-items:center;border:1px solid #c9d2e2;border-radius:.45rem;background:#fff;overflow:hidden}.rich-font-size input{width:4.25rem;min-height:2.25rem;padding:.35rem .25rem .35rem .6rem;border:0;outline:0;color:#000}.rich-font-size span{font-size:.75rem;font-weight:700}.rich-font-size button{border:0;border-left:1px solid #c9d2e2;border-radius:0}.rich-editor-content h1{font-size:2.25rem}.rich-editor-content h2{font-size:1.9rem}.rich-editor-content h3{font-size:1.6rem}.rich-editor-content h4{font-size:1.35rem}.rich-editor-content h5{font-size:1.15rem}.rich-editor-content h6{font-size:1rem;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:48rem){.rich-editor-toolbar{top:4.5rem}.rich-editor-toolbar select{max-width:100%;flex:1 1 10rem}.rich-font-size{flex:1 1 12rem}}

/* Compact, consistent account and administration form controls. */
.field input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.field select,
.admin-filters input,
.admin-filters select {
  min-height: 2.75rem;
  padding: 0.55rem 0.75rem;
}
.field textarea {
  min-height: 6.5rem;
  padding: 0.65rem 0.75rem;
}

/* Quick CV admin listing and detail */
.quick-cv-native-preview{margin-top:1.25rem;padding:1.25rem;border:1px solid #d7dfeb;border-radius:.75rem;background:#f5f7fb;color:var(--primary)}.quick-cv-native-preview p{margin:.35rem 0 0;color:var(--muted);line-height:1.6}

/* Shared admin CRUD controls */
.crud-actions{display:flex;align-items:center;gap:.5rem}.crud-actions form{margin:0}.admin-delete-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.15rem;padding:.4rem .68rem;border:1px solid #e8bcbc;border-radius:.5rem;background:#fff5f5;color:#a82f2f;font:800 .7rem/1 "DM Sans",sans-serif;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.admin-delete-button:hover{border-color:#b83a3a;background:#b83a3a;color:#fff}.admin-delete-button:focus-visible{outline:3px solid rgba(184,58,58,.25);outline-offset:2px}.detail-delete-form{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.detail-delete-form .admin-delete-button{width:100%}

/* Application admin detail */
.admin-applicant-link{color:var(--primary);font-weight:800;text-decoration:underline;text-decoration-color:rgba(16,32,69,.25);text-underline-offset:.2rem}.admin-applicant-link:hover{color:var(--primary-2);text-decoration-color:currentColor}.application-review-grid{display:grid;gap:1.25rem;margin-top:1.25rem}.application-copy-card,.application-history-card{overflow:hidden}.application-copy-card>article{padding:1.1rem 1.25rem;border-top:1px solid var(--border)}.application-copy-card>article:first-of-type{border-top:0}.application-copy-card h3{margin:0 0 .55rem;color:var(--primary);font-size:.8rem}.application-copy-card article>div{color:#263750;font-size:.78rem;line-height:1.7}.application-admin-timeline{padding:1rem 1.2rem}.application-admin-timeline article{position:relative;display:flex;gap:.75rem;min-height:3.6rem}.application-admin-timeline article:not(:last-child):before{content:"";position:absolute;left:.28rem;top:.8rem;bottom:0;width:1px;background:#dce3ed}.application-admin-timeline i{position:relative;z-index:1;width:.6rem;height:.6rem;flex:0 0 auto;margin-top:.25rem;border:2px solid var(--accent);border-radius:50%;background:var(--primary)}.application-admin-timeline article>div{display:grid;align-content:start}.application-admin-timeline strong{color:var(--primary);font-size:.76rem}.application-admin-timeline small{margin-top:.15rem;color:var(--muted);font-size:.65rem}.application-admin-timeline p{margin:.3rem 0 0;color:#536176;font-size:.7rem;line-height:1.5}@media(min-width:58rem){.application-review-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.65fr)}}

/* Contact messages admin */
.message-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1.2rem}.message-stats article{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.15rem;border:1px solid var(--border);border-radius:.8rem;background:#fff;box-shadow:0 8px 22px rgba(16,32,69,.045)}.message-stats span{color:#6e7b90;font-size:.72rem;font-weight:750}.message-stats strong{color:#102045;font-size:1.35rem}.contact-inbox{display:grid}.contact-inbox-row{position:relative;display:grid;grid-template-columns:auto minmax(8rem,.7fr) minmax(12rem,1.5fr) auto auto;align-items:center;gap:.9rem;padding:1rem 1.15rem;border-bottom:1px solid var(--border);color:#344054;transition:background .2s}.contact-inbox-row:last-child{border:0}.contact-inbox-row:hover{background:#f7f9fc}.contact-inbox-row.is-unread{background:#f3f7fe}.contact-inbox-row.is-unread:before{content:"";position:absolute;left:0;inset-block:.65rem;width:3px;border-radius:0 3px 3px 0;background:#315b9b}.contact-sender-avatar{width:2.45rem;height:2.45rem;display:grid;place-items:center;border-radius:.7rem;background:#102045;color:#f4c95d;font-weight:900}.contact-sender-avatar.large{width:3.6rem;height:3.6rem;border-radius:1rem;font-size:1.1rem}.contact-inbox-person,.contact-inbox-copy{min-width:0;display:grid}.contact-inbox-row strong{overflow:hidden;color:#102045;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.contact-inbox-row small{display:block;overflow:hidden;margin-top:.18rem;color:#7d899b;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.contact-inbox-row>span:nth-last-child(2){display:grid;justify-items:start;gap:.2rem}.contact-inbox-row>i{color:#b08310;font-style:normal}.status-new{background:#fff2cd;color:#785500}.status-read{background:#e6f0ff;color:#275a9e}.status-archived{background:#eef0f3;color:#596477}.contact-message-layout{display:grid;gap:1.2rem}.contact-message-card{overflow:hidden}.contact-message-card>header{display:flex;align-items:center;gap:1rem;padding:1.35rem 1.5rem;border-bottom:1px solid var(--border);background:linear-gradient(120deg,#f4f7fc,#fff)}.contact-message-card header h2{margin:.3rem 0 0;color:#102045;font-size:1.25rem}.contact-message-card header p{margin:.15rem 0 0;color:#758195;font-size:.75rem}.contact-message-body{padding:clamp(1.25rem,3vw,2rem)}.contact-message-body>span{color:#315b9b;font-size:.65rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.contact-message-body h3{margin:.4rem 0 1.25rem;color:#102045;font-size:clamp(1.25rem,3vw,1.75rem)}.contact-message-body>div{padding-top:1.25rem;border-top:1px solid var(--border);color:#28364d;line-height:1.8;white-space:normal}.contact-message-sidebar{padding:1.25rem}.contact-message-sidebar h2{margin:0 0 1rem;color:#102045;font-size:1rem}.contact-message-sidebar dl{margin:0}.contact-message-sidebar dl>div{padding:.8rem 0;border-bottom:1px solid var(--border)}.contact-message-sidebar dt{margin-bottom:.25rem;color:#8390a3;font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.contact-message-sidebar dd{margin:0;overflow-wrap:anywhere;color:#263750;font-size:.78rem;font-weight:650;line-height:1.5}.contact-message-sidebar dd a{color:#2b5d9f;text-decoration:underline}.contact-message-actions,.contact-message-status{display:grid;gap:.65rem;margin-top:1rem}.contact-message-actions .button,.contact-message-status .button{width:100%;justify-content:center}@media(min-width:48rem){.message-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.contact-message-layout{grid-template-columns:minmax(0,1fr) 19rem;align-items:start}}@media(max-width:52rem){.contact-inbox-row{grid-template-columns:auto minmax(0,1fr) auto}.contact-inbox-copy{grid-column:2}.contact-inbox-row>span:nth-last-child(2){grid-column:2}.contact-inbox-row>i{grid-column:3;grid-row:1/4}.contact-inbox-person small{white-space:normal}}

/* Global SEO and Pages CMS */
.seo-admin-layout{display:grid;gap:1.2rem;margin-bottom:1.2rem}.seo-page-nav{overflow:hidden}.seo-page-nav nav{display:grid}.seo-page-nav nav a{display:grid;gap:.18rem;padding:.85rem 1rem;border-bottom:1px solid var(--border);color:#344054;transition:background .2s,border-color .2s}.seo-page-nav nav a:hover{background:#f5f7fb}.seo-page-nav nav a.active{border-left:3px solid #102045;background:#edf3fc;color:#102045}.seo-page-nav nav span{font-size:.78rem;font-weight:800}.seo-page-nav nav small{color:#7d899b;font-size:.64rem}.seo-coverage{margin:1rem;padding:1rem;border-radius:.7rem;background:#102045;color:#fff}.seo-coverage strong{font-size:.75rem}.seo-coverage p{margin:.35rem 0 0;color:#bdc9dc;font-size:.67rem;line-height:1.55}.seo-settings-form{display:grid;gap:1rem}.seo-settings-form>.panel-heading{margin:-1.2rem -1.2rem .2rem}.seo-social-fields{display:grid;gap:1rem;margin-top:.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.seo-social-fields h3{margin:0;color:#102045;font-size:.92rem}.seo-settings-form>.button{width:max-content}.seo-content-pages{margin-bottom:1.2rem}.page-slug-field{display:flex;align-items:center;overflow:hidden;border:1px solid var(--border);border-radius:.7rem;background:#f3f5f8}.page-slug-field>span{max-width:45%;overflow:hidden;padding:.72rem .1rem .72rem .8rem;color:#68758a;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.page-slug-field input{min-width:0;flex:1;border:0!important;background:transparent!important;box-shadow:none!important}.blog-editor-side .button-muted{width:100%;justify-content:center;margin-top:.6rem}@media(min-width:60rem){.seo-admin-layout{grid-template-columns:17rem minmax(0,1fr);align-items:start}.seo-page-nav{position:sticky;top:5.5rem}}

/* Premium admin overview */
.overview-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.2rem;padding:clamp(1.4rem,3vw,2.2rem);border-radius:1.15rem;background:linear-gradient(120deg,#102045 0%,#1a3973 68%,#244c89 100%);color:#fff;box-shadow:0 18px 42px rgba(16,32,69,.2)}.overview-hero:after{content:"";position:absolute;right:-4rem;top:-7rem;width:20rem;height:20rem;border:1px solid rgba(244,201,93,.2);border-radius:50%;box-shadow:0 0 0 3rem rgba(255,255,255,.025),0 0 0 6rem rgba(255,255,255,.018)}.overview-hero>div{position:relative;z-index:1}.overview-eyebrow,.panel-kicker{display:block;margin-bottom:.35rem;color:#b08310;font-size:.65rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.overview-hero .overview-eyebrow{color:#f4c95d}.overview-hero h2{margin:0;font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.15}.overview-hero p{margin:.4rem 0 0;color:#cbd7ea}.overview-hero-actions{display:flex;gap:.7rem;flex-wrap:wrap}.overview-hero .button{position:relative;z-index:2;min-height:3rem;justify-content:center}.overview-primary-action{background:#f4c95d;color:#102045}.overview-secondary-action{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.07);color:#fff}.overview-hero-actions .button:hover{transform:translateY(-2px)}
.overview-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-bottom:.85rem}.overview-kpi{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.8rem;padding:1.1rem;border:1px solid var(--border);border-radius:.9rem;background:#fff;box-shadow:0 8px 24px rgba(16,32,69,.055)}.overview-kpi:after{content:"";position:absolute;right:-1.2rem;bottom:-1.6rem;width:5rem;height:5rem;border-radius:50%;background:rgba(16,32,69,.025)}.overview-kpi-icon{width:2.8rem;height:2.8rem;display:grid;place-items:center;border-radius:.8rem;background:#e9eff9;color:#183d78}.overview-kpi-icon svg{width:1.25rem;fill:currentColor}.overview-kpi.attention .overview-kpi-icon{background:#fff3ce;color:#8a6200}.overview-kpi>div{display:grid}.overview-kpi strong{font:800 1.65rem/1 var(--font-display);color:#102045}.overview-kpi>div span{margin-top:.25rem;color:#344054;font-size:.76rem;font-weight:700}.overview-kpi>small{grid-column:1/-1;padding-top:.65rem;border-top:1px solid #edf0f5;color:#7b879b;font-size:.68rem}.overview-health-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-bottom:1.25rem;overflow:hidden;border:1px solid var(--border);border-radius:.85rem;background:var(--border)}.overview-health-strip>div{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.85rem 1rem;background:#fff}.overview-health-strip span{color:#68758a;font-size:.7rem}.overview-health-strip strong{color:#102045;font-size:.9rem}
.overview-primary-grid,.overview-content-grid,.overview-insight-grid{display:grid;gap:1.25rem;margin-bottom:1.25rem}.overview-pipeline .panel-heading,.overview-actions .panel-heading{background:linear-gradient(180deg,#fff,#fbfcff)}.pipeline-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--border)}.pipeline-summary>div{display:grid;grid-template-columns:1fr auto;gap:.35rem .8rem;padding:1rem 1.15rem;background:#fff}.pipeline-summary>div>span{display:flex;align-items:center;gap:.45rem;color:#4a566a;font-size:.75rem;font-weight:700}.pipeline-summary>div>strong{color:#102045}.pipeline-summary>div>small{color:#8995a8;font-size:.65rem}.pipeline-summary>div>b{grid-column:1/-1;height:.3rem;overflow:hidden;border-radius:1rem;background:#edf0f5}.pipeline-summary>div>b i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#244d8d,#e1b63d)}.pipeline-dot{width:.45rem;height:.45rem;border-radius:50%;background:#5274a7}.pipeline-shortlisted,.pipeline-selected{background:#15996a}.pipeline-interview{background:#d69f16}.pipeline-rejected{background:#c65353}.overview-action-list{display:grid}.overview-action-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.9rem 1.05rem;border-bottom:1px solid var(--border);transition:background .2s}.overview-action-list>a:last-child{border:0}.overview-action-list>a:hover{background:#f6f8fc}.overview-action-list>a>span{width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:.65rem;background:#e9eff9;color:#102045;font-size:.72rem;font-weight:900}.overview-action-list>a>div{display:grid}.overview-action-list strong{color:#102045;font-size:.8rem}.overview-action-list small{margin-top:.15rem;color:#7a879a;font-size:.67rem}.overview-action-list i{color:#b08310;font-style:normal}
.overview-applications>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.9rem 1.1rem;border-bottom:1px solid var(--border)}.overview-applications>div:last-child{border:0}.overview-person{width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:50%;background:#102045;color:#f4c95d;font-size:.75rem;font-weight:850}.overview-applications>div>span:nth-child(2){min-width:0;display:grid}.overview-applications strong,.overview-jobs strong{overflow:hidden;color:#102045;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.overview-applications small{overflow:hidden;color:#7b8799;font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}.overview-jobs .list-icon svg{width:1rem;fill:#102045}.overview-category-chart{display:grid;gap:.9rem;padding:1.15rem}.overview-category-chart>div{display:grid;grid-template-columns:minmax(6rem,.8fr) minmax(6rem,1.4fr) auto;align-items:center;gap:.7rem}.overview-category-chart span{overflow:hidden;color:#485568;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.overview-category-chart>b{height:.45rem;overflow:hidden;border-radius:1rem;background:#edf0f5}.overview-category-chart>b i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#244d8d,#f4c95d)}.overview-category-chart strong{min-width:1.5rem;color:#102045;font-size:.75rem;text-align:right}.overview-trend{height:15rem;display:flex;align-items:end;justify-content:space-around;gap:.55rem;padding:1.25rem}.overview-trend>div{height:100%;flex:1;display:grid;grid-template-rows:auto 1fr auto;justify-items:center;gap:.4rem}.overview-trend strong,.overview-trend span{font-size:.65rem;color:#718097}.overview-trend>div>i{position:relative;width:min(2.4rem,75%);height:100%;overflow:hidden;border-radius:.45rem;background:#edf1f7}.overview-trend>div>i b{position:absolute;inset:auto 0 0;border-radius:.45rem;background:linear-gradient(180deg,#f4c95d,#c99717)}.overview-activity{padding:1rem 1.1rem}.overview-activity>div{position:relative;display:flex;gap:.75rem;min-height:3rem}.overview-activity>div:not(:last-child):before{content:"";position:absolute;left:.25rem;top:.85rem;bottom:-.15rem;width:1px;background:#dfe4ec}.overview-activity>div>i{position:relative;z-index:1;width:.55rem;height:.55rem;flex:0 0 auto;margin-top:.3rem;border:2px solid #f4c95d;border-radius:50%;background:#102045}.overview-activity span{display:grid;align-content:start}.overview-activity strong{color:#344054;font-size:.75rem}.overview-activity small{color:#8490a2;font-size:.65rem}
@media(min-width:48rem){.overview-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-health-strip{grid-template-columns:repeat(5,minmax(0,1fr))}.overview-primary-grid{grid-template-columns:minmax(0,1.7fr) minmax(16rem,.75fr)}.overview-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-insight-grid>section:last-child{grid-column:1/-1}}@media(min-width:75rem){.overview-insight-grid{grid-template-columns:1fr .9fr .9fr}.overview-insight-grid>section:last-child{grid-column:auto}}@media(max-width:40rem){.overview-hero{align-items:flex-start;flex-direction:column}.overview-hero-actions,.overview-hero .button{width:100%}.overview-kpi{grid-template-columns:auto 1fr}.overview-health-strip{grid-template-columns:1fr}.pipeline-summary{grid-template-columns:1fr}.overview-applications>div{grid-template-columns:auto minmax(0,1fr)}.overview-applications .status{grid-column:2}.overview-category-chart>div{grid-template-columns:minmax(5rem,.9fr) minmax(4rem,1fr) auto}}
.quick-cv-table .quick-cv-name{color:var(--primary);font-weight:800;text-decoration:underline;text-decoration-color:rgba(16,32,69,.25);text-underline-offset:.2rem}.quick-cv-table .quick-cv-name:hover{color:var(--primary-2);text-decoration-color:currentColor}.quick-cv-view-link{display:inline-flex;padding:.45rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:#f5f7fb;color:var(--primary);font-weight:800}.quick-cv-view-link:hover{border-color:var(--primary);background:#fff}.quick-cv-detail-layout{display:grid;gap:1.25rem}.quick-cv-profile-card{padding:0;overflow:hidden}.quick-cv-profile-head{display:flex;align-items:center;gap:1rem;padding:1.4rem 1.5rem;border-bottom:1px solid var(--border);background:linear-gradient(120deg,#f5f7fb,#fff)}.quick-cv-avatar{flex:0 0 auto;width:3.5rem;height:3.5rem;display:grid;place-items:center;border-radius:1rem;background:var(--primary);color:var(--accent);font-weight:900}.quick-cv-profile-head h2{margin:.3rem 0 .1rem;color:var(--primary);font-size:1.35rem}.quick-cv-profile-head p{margin:0;color:var(--muted);font-size:.78rem}.quick-cv-detail-grid{display:grid;margin:0}.quick-cv-detail-grid>div{min-width:0;padding:1.15rem 1.5rem;border-bottom:1px solid var(--border)}.quick-cv-detail-grid dt{margin-bottom:.35rem;color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.quick-cv-detail-grid dd{margin:0;overflow-wrap:anywhere;color:#101828;font-weight:650;line-height:1.5}.quick-cv-detail-grid dd a{color:var(--primary-2);text-decoration:underline;text-underline-offset:.18rem}.quick-cv-review-card h2,.quick-cv-document h2{margin:0;color:var(--primary)}.quick-cv-status-form{display:grid;gap:1rem;margin-top:1.2rem}.quick-cv-status-form .button{width:100%;justify-content:center}.quick-cv-document{margin-top:1.25rem}.quick-cv-document-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.quick-cv-document-head p{margin:.35rem 0 0;color:var(--muted);font-size:.78rem}.quick-cv-document-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.quick-cv-preview-note{max-width:14rem;color:var(--muted);font-size:.72rem}.quick-cv-preview{margin-top:1.25rem;overflow:hidden;border:1px solid var(--border);border-radius:.75rem;background:#dfe5ee}.quick-cv-preview-bar{min-height:3rem;display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;background:var(--primary);color:#fff}.quick-cv-preview-bar a{color:var(--accent);font-size:.78rem;font-weight:800}.quick-cv-preview iframe{display:block;width:100%;height:min(72vh,56rem);border:0;background:#fff}@media(min-width:48rem){.quick-cv-detail-layout{grid-template-columns:minmax(0,1fr) 19rem;align-items:start}.quick-cv-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-cv-detail-grid>div:nth-last-child(-n+2){border-bottom:0}}@media(max-width:35rem){.quick-cv-profile-head{align-items:flex-start}.quick-cv-document-actions,.quick-cv-document-actions .button{width:100%}.quick-cv-preview iframe{height:65vh}}
