:root {
  --bg: #07111f;
  --surface: #ffffff;
  --surface-2: #f8fbff;
  --surface-3: #eef4fb;
  --text: #0f172a;
  --muted: #5f6f87;
  --line: #d9e4f1;
  --primary: #0d6efd;
  --primary-deep: #084ec0;
  --accent: #15b8a6;
  --accent-soft: #e8fffb;
  --gold: #f1b70c;
  --danger: #c53030;
  --shadow: 0 18px 50px rgba(15, 23, 42, .08);
  --shadow-soft: 0 10px 35px rgba(15, 23, 42, .05);
  --radius-xl: 28px;
  --radius-lg: 22px;
  --radius-md: 18px;
  --radius-sm: 14px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Inter', Arial, sans-serif;
  color: var(--text);
  background: #f5f8fc;
  line-height: 1.6;
}
a { color: inherit; }
img { max-width: 100%; display: block; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; border: none; }
.hidden { display: none !important; }
.container { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.9);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(217, 228, 241, .9);
}
.nav-wrap {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.brand-link,
.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-weight: 800;
  font-size: 1.1rem;
  text-decoration: none;
  color: #08111f;
}
.brand.large { font-size: 1.35rem; }
.brand-logo,
.footer-logo,
.auth-logo-img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  border-radius: 12px;
}
.footer-logo { width: 34px; height: 34px; }
.auth-logo-img { width: 42px; height: 42px; }
.main-nav { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.main-nav a { text-decoration: none; color: #102238; font-weight: 600; }
.main-nav a:hover, .main-nav a:focus, .plain-link:hover, .plain-link:focus { color: var(--primary); }
.mobile-menu-btn,
.plain-anchor-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  text-decoration: none;
  color: var(--text);
}
.mobile-menu-btn { display: none; }
.mobile-menu {
  padding: 0 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.mobile-menu a { text-decoration: none; font-weight: 600; }
.nav-btn,
.primary,
.secondary,
.danger,
.auth-btn {
  min-height: 46px;
  border-radius: 16px;
  padding: 12px 18px;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.primary:hover,
.secondary:hover,
.danger:hover,
.auth-btn:hover,
.ghost-link-btn:hover { transform: translateY(-1px); }
.primary { background: linear-gradient(135deg, var(--primary), var(--primary-deep)); color: #fff; box-shadow: 0 12px 30px rgba(13, 110, 253, .25); }
.secondary { background: #fff; color: var(--text); border: 1px solid var(--line); }
.danger { background: linear-gradient(135deg, #dc2626, #b91c1c); color: #fff; }
.full { width: 100%; }
.large { padding: 14px 22px; font-size: 1rem; }
.ghost-link-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 18px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.22);
  color: #fff;
  text-decoration: none;
  background: rgba(255,255,255,.08);
}
.hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin: 24px 0 0; }

.hero-section {
  position: relative;
  overflow: hidden;
  padding: 82px 0;
  color: #fff;
  background: linear-gradient(135deg, #07111f 0%, #0c1e36 50%, #12345f 100%);
}
.hero-pricing-section,
.hero-image-section { min-height: 560px; }
.hero-image-section::before,
.hero-pricing-section::before,
.enriched-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('https://images.unsplash.com/photo-1518770660439-4636190af475?auto=format&fit=crop&w=1800&q=80');
  background-size: cover;
  background-position: center;
  opacity: .22;
}
.hero-pricing-section::before { background-image: url('https://images.unsplash.com/photo-1551434678-e076c223a692?auto=format&fit=crop&w=1800&q=80'); }
.enriched-hero::before { background-image: url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80'); }
.hero-backdrop {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(21,184,166,.25), transparent 35%), radial-gradient(circle at bottom left, rgba(13,110,253,.25), transparent 30%);
}
.hero-grid,
.staff-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 28px;
  align-items: center;
}
.hero-grid h1,
.staff-hero-grid h1 { font-size: clamp(2.2rem, 4.5vw, 4.1rem); line-height: 1.08; margin: 0 0 16px; }
.hero-grid p,
.staff-hero-grid p { color: #d9e9fb; font-size: 1.04rem; }
.eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  font-size: .92rem;
  font-weight: 800;
  letter-spacing: .02em;
  color: #8fe7dd;
  text-transform: uppercase;
}
.eyebrow.dark { color: var(--primary-deep); }
.hero-card,
.gradient-panel,
.staff-hero,
.staff-auth-box,
.info-card,
.feature-panel,
.panel,
.contact-box,
.pricing-card,
.pricing-cta-card {
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,.97);
  color: var(--text);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: var(--radius-xl);
  padding: 24px;
  box-shadow: var(--shadow);
}
.gradient-panel {
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(243,248,255,.98));
}
.panel-badge {
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  background: var(--accent-soft);
  color: #0f766e;
  font-weight: 700;
  font-size: .88rem;
  margin-bottom: 14px;
}
.feature-list,
.pricing-features {
  margin: 0;
  padding-left: 18px;
  display: grid;
  gap: 10px;
}
.mini-metrics,
.hero-stats,
.stat-grid,
.cards-grid,
.dashboard-grid,
.summary-grid,
.pricing-grid,
.strip-grid {
  display: grid;
  gap: 18px;
}
.hero-stats { grid-template-columns: repeat(3, 1fr); margin-top: 28px; }
.hero-stats > div,
.summary-card,
.stat-box,
.strip-card,
.mini-card,
.job-card,
.application-card,
.chat-bubble,
.mini-metric,
.preview-item {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  color: #fff;
  border-radius: 18px;
  padding: 16px;
}
.mini-metrics { grid-template-columns: repeat(3, 1fr); margin-top: 18px; }
.mini-metric { color: var(--text); background: #fff; border-color: var(--line); }
.mini-metric span,
.hero-stats span { display: block; font-size: .92rem; color: inherit; opacity: .85; }
.hero-stats strong,
.mini-metric strong { display: block; font-size: 1.2rem; }

.strip-section { background: #fff; padding: 26px 0; }
.strip-grid { grid-template-columns: repeat(3, 1fr); }
.strip-card {
  color: var(--text);
  background: linear-gradient(180deg, #ffffff, #f7fbff);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-soft);
}
.strip-card h3 { margin: 0 0 8px; }
.strip-card p { margin: 0; color: var(--muted); }

.content-section { padding: 78px 0; }
.content-section.light { background: var(--surface-3); }
.dark-band { background: linear-gradient(180deg, #0b1527, #101c2f); color: #fff; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 28px; }
.section-title { margin: 0 0 10px; font-size: clamp(1.9rem, 3vw, 2.8rem); }
.section-lead { margin: 0; color: var(--muted); max-width: 760px; }
.section-row, .dashboard-header, .footer-bottom-wrap, .auth-link-row, .hero-top-row, .panel-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.section-row-wrap { flex-wrap: wrap; }
.split-grid,
.image-split-grid,
.contact-split { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.image-stack { display: grid; gap: 16px; }
.image-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.section-image { width: 100%; height: 240px; object-fit: cover; border-radius: 24px; box-shadow: var(--shadow-soft); }
.section-image.tall { height: 340px; }
.soft-panel { background: linear-gradient(180deg, #fff, #f9fcff); }
.feature-panel ol { margin: 0; padding-left: 20px; display: grid; gap: 10px; }
.cards-grid { grid-template-columns: repeat(4, 1fr); }
.jobs-grid { grid-template-columns: repeat(3, 1fr); }
.service-card-grid { align-items: stretch; }
.service-card.with-cover { padding: 0; overflow: hidden; }
.card-cover { width: 100%; height: 220px; object-fit: cover; }
.card-body { padding: 22px; }
.card-body h3 { margin-top: 0; }
.dashboard-showcase-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 24px; align-items: center; }
.dashboard-preview-card {
  background: linear-gradient(180deg, #f8fbff, #eef5ff);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 28px;
  padding: 24px;
  box-shadow: var(--shadow);
}
.preview-header, .preview-item { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.preview-header { color: var(--text); font-weight: 700; margin-bottom: 18px; }
.signal-dot { width: 12px; height: 12px; border-radius: 999px; background: #22c55e; }
.preview-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 18px; }
.preview-metrics > div,
.preview-item { background: #fff; color: var(--text); border: 1px solid var(--line); border-radius: 18px; padding: 16px; }
.preview-metrics strong { display: block; font-size: 1.45rem; margin-bottom: 5px; }
.preview-list { display: grid; gap: 12px; }
.feature-checks li { position: relative; padding-left: 0; }

.dashboard-section { background: #eff5fb; padding: 18px 0 80px; }
.modern-dashboard-header { margin-bottom: 20px; }
.summary-grid { grid-template-columns: repeat(3, 1fr); margin-bottom: 22px; }
.staff-summary-grid { grid-template-columns: repeat(4, 1fr); }
.summary-card {
  color: var(--text);
  background: #fff;
  border-color: var(--line);
  box-shadow: var(--shadow-soft);
}
.summary-card span { display: block; font-size: .92rem; color: var(--muted); }
.summary-card strong { display: block; font-size: 1.8rem; margin-top: 6px; }
.accent-card { border-top: 4px solid var(--primary); }
.soft-blue { border-top-color: #4f46e5; }
.soft-green { border-top-color: #14b8a6; }
.soft-purple { border-top-color: #9333ea; }
.advanced-dashboard-grid { grid-template-columns: repeat(2, 1fr); }
.panel { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-soft); }
.full-span { grid-column: 1 / -1; }
.panel h3 { margin-top: 0; margin-bottom: 8px; }
.panel p { color: var(--muted); }
.wallet-stat-grid { grid-template-columns: repeat(3, 1fr); }
.stat-grid { grid-template-columns: repeat(3, 1fr); }
.highlighted-box,
.stat-box,
.job-card,
.application-card,
.mini-card,
.chat-bubble {
  color: var(--text);
  background: #f8fbff;
  border: 1px solid var(--line);
}
.stat-box span { display: block; color: var(--muted); font-size: .92rem; margin-bottom: 8px; }
.stat-box strong { font-size: 1.55rem; }
.admin-wallet-grid .stat-box strong,
.wallet-stat-grid .stat-box strong { font-size: 1.4rem; }
.stack-list { display: grid; gap: 12px; }
.job-card h4, .job-card strong, .application-card strong { margin: 0 0 6px; }
.job-meta { color: var(--muted); font-size: .95rem; }
.compact-stack .mini-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.chat-panel .chat-messages { min-height: 250px; max-height: 360px; overflow: auto; }
.chat-bubble.user { background: #eef7ff; }
.chat-bubble.staff { background: #eefcf5; }
.inline-form,
.contact-box,
.auth-form,
.staff-form,
.column-form { display: grid; gap: 12px; }
.inline-form { grid-template-columns: 1fr 1fr auto; align-items: end; }
.column-form { grid-template-columns: 1fr; }
input, textarea, select {
  width: 100%;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--text);
  padding: 14px 16px;
}
textarea { resize: vertical; }
.contact-list li, .clean-list li { color: var(--text); }
.clean-list, .footer-links, .footer-contact { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.status-text { min-height: 22px; margin: 0; font-weight: 700; color: #0f766e; }

.auth-overlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  background: rgba(2, 6, 23, .68);
  display: grid;
  place-items: center;
  padding: 16px;
}
.auth-shell { position: relative; width: min(540px, 100%); }
.close-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  font-size: 1.5rem;
}
.auth-card {
  background: linear-gradient(180deg, #10325f, #0c1f39);
  color: #fff;
  padding: 70px 28px 28px;
}
.auth-logo-row,
.footer-brand-wrap,
.center-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.center-row { justify-content: center; }
.auth-logo-text { font-size: 1.5rem; font-weight: 800; }
.auth-subtitle { margin-top: 0; color: #d9e9fb; }
.auth-form input { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.16); }
.auth-form input::placeholder { color: rgba(255,255,255,.85); }
.auth-btn.red { background: linear-gradient(135deg, #ef4444, #dc2626); color: #fff; }
.auth-btn.blue { background: linear-gradient(135deg, #2563eb, #1d4ed8); color: #fff; }
.auth-separator { text-align: center; margin: 16px 0; font-weight: 700; color: rgba(255,255,255,.86); }
.text-link { background: none; padding: 0; color: #fff; font-weight: 800; border: none; }
.light-link { color: #e7f0ff; }
.auth-help-row { margin-top: 8px; }
.tip-line.center { text-align: center; }

.staff-app { background: linear-gradient(180deg, #eef5ff, #f7fbff); min-height: 100vh; }
.staff-layout { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 70px; display: grid; gap: 22px; }
.staff-hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(135deg, #091528, #0f2344 55%, #17406d);
  padding: 28px;
}
.hero-side-card {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: var(--radius-lg);
  padding: 20px;
}
.hero-side-card h3 { margin-top: 0; }
.light-plain-link { color: #cfe3ff; text-decoration: none; }
.staff-auth-box { background: #fff; }
.staff-info-box {
  background: #f8fbff;
  border: 1px dashed var(--line);
  border-radius: 16px;
  padding: 16px;
  margin-top: 16px;
}

.pricing-grid { grid-template-columns: repeat(3, 1fr); }
.pricing-card { background: #fff; border: 1px solid var(--line); }
.pricing-card h3 { margin: 10px 0; }
.pricing-label {
  display: inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  background: #eef4ff;
  color: var(--primary-deep);
  font-weight: 800;
  font-size: .86rem;
}
.price-tag { font-size: 2rem; font-weight: 900; margin: 12px 0 16px; color: #08111f; }
.featured-pricing { border: 2px solid var(--primary); transform: translateY(-4px); }
.pricing-cta-card { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.maintenance-grid .pricing-card { min-height: 100%; }

.site-footer {
  background: linear-gradient(135deg, #08111f, #101f38 60%, #162d4a);
  color: #e5eefb;
}
.staff-footer { margin-top: 12px; }
.footer-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr 1fr;
  gap: 24px;
  padding: 56px 0 32px;
}
.footer-brand { font-size: 1.4rem; font-weight: 800; color: #fff; }
.footer-brand-block p { color: #c8d6eb; margin: 12px 0 18px; }
.site-footer h4 { margin: 0 0 14px; color: #fff; }
.footer-links a { text-decoration: none; color: #d7e8ff; }
.footer-links a:hover, .footer-links a:focus { color: #fff; text-decoration: underline; }
.footer-contact li { color: #d7e8ff; }
.footer-badges { display: flex; flex-wrap: wrap; gap: 10px; }
.footer-badges span {
  border-radius: 999px;
  padding: 8px 12px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  color: #fff;
  font-weight: 700;
  font-size: .9rem;
}
.footer-bottom { border-top: 1px solid rgba(255,255,255,.12); }
.footer-bottom-wrap { min-height: 64px; flex-wrap: wrap; }
.footer-bottom-wrap p { margin: 0; color: #c8d6eb; }

@media (max-width: 1100px) {
  .cards-grid { grid-template-columns: repeat(2, 1fr); }
  .pricing-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 980px) {
  .main-nav { display: none; }
  .mobile-menu-btn { display: inline-flex; }
  .hero-grid,
  .staff-hero-grid,
  .split-grid,
  .image-split-grid,
  .contact-split,
  .dashboard-showcase-grid,
  .advanced-dashboard-grid,
  .strip-grid,
  .summary-grid,
  .staff-summary-grid,
  .wallet-stat-grid,
  .stat-grid,
  .image-row,
  .cards-grid,
  .jobs-grid,
  .preview-metrics,
  .mini-metrics,
  .pricing-cta-card,
  .footer-grid { grid-template-columns: 1fr; }
  .inline-form { grid-template-columns: 1fr; }
  .hero-grid h1, .staff-hero-grid h1 { font-size: clamp(2rem, 8vw, 3rem); }
  .hero-section { padding: 70px 0; }
  .section-row, .dashboard-header, .footer-bottom-wrap, .hero-top-row { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 640px) {
  .container { width: min(100% - 24px, 1180px); }
  .content-section { padding: 62px 0; }
  .hero-card,
  .gradient-panel,
  .staff-hero,
  .staff-auth-box,
  .info-card,
  .feature-panel,
  .panel,
  .contact-box,
  .pricing-card,
  .pricing-cta-card { padding: 20px; border-radius: 22px; }
  .summary-card strong { font-size: 1.55rem; }
}

/* SP WorldTech premium UI/UX color upgrade */
:root {
  --navy: #07111f;
  --indigo: #2f4bed;
  --cyan: #00b8d9;
  --emerald: #10b981;
  --purple: #7c3aed;
  --orange: #f97316;
  --rose: #e11d48;
  --card-gradient-blue: linear-gradient(135deg, #eff6ff, #dbeafe);
  --card-gradient-green: linear-gradient(135deg, #ecfdf5, #d1fae5);
  --card-gradient-gold: linear-gradient(135deg, #fffbeb, #fde68a);
  --card-gradient-purple: linear-gradient(135deg, #f5f3ff, #ddd6fe);
  --card-gradient-dark: linear-gradient(135deg, #0f172a, #1e3a8a);
}
body {
  background:
    radial-gradient(circle at top left, rgba(13,110,253,.08), transparent 32%),
    radial-gradient(circle at 85% 10%, rgba(16,185,129,.08), transparent 28%),
    #f6f9fd;
}
.site-header {
  box-shadow: 0 10px 40px rgba(15,23,42,.06);
}
.brand-logo,
.footer-logo,
.auth-logo-img {
  background: #fff;
  padding: 3px;
  box-shadow: 0 10px 28px rgba(13,110,253,.18);
}
.main-nav a {
  position: relative;
  padding: 8px 0;
}
.main-nav a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 3px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--primary), var(--accent));
  transition: width .2s ease;
}
.main-nav a:hover::after,
.main-nav a:focus::after { width: 100%; }
.primary {
  background: linear-gradient(135deg, #0d6efd 0%, #2f4bed 52%, #15b8a6 100%);
  box-shadow: 0 16px 35px rgba(13,110,253,.28);
}
.secondary {
  background: linear-gradient(180deg, #fff, #f8fbff);
  box-shadow: 0 10px 25px rgba(15,23,42,.06);
}
.danger {
  box-shadow: 0 12px 28px rgba(220,38,38,.2);
}
.hero-section {
  background:
    linear-gradient(135deg, rgba(7,17,31,.98), rgba(10,38,75,.94) 55%, rgba(13,110,253,.72)),
    linear-gradient(90deg, #07111f, #12345f);
}
.hero-card,
.panel,
.info-card,
.feature-panel,
.contact-box,
.pricing-card,
.staff-auth-box,
.staff-hero,
.pricing-cta-card {
  border: 1px solid rgba(191,219,254,.75);
}
.info-card,
.panel,
.pricing-card {
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.info-card:hover,
.panel:hover,
.pricing-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 22px 60px rgba(15,23,42,.10);
  border-color: rgba(13,110,253,.45);
}
.strip-card:nth-child(1), .summary-card:nth-child(1) { background: var(--card-gradient-blue); }
.strip-card:nth-child(2), .summary-card:nth-child(2) { background: var(--card-gradient-green); }
.strip-card:nth-child(3), .summary-card:nth-child(3) { background: var(--card-gradient-purple); }
.service-card:nth-child(1) { border-top: 5px solid var(--primary); }
.service-card:nth-child(2) { border-top: 5px solid var(--emerald); }
.service-card:nth-child(3) { border-top: 5px solid var(--orange); }
.service-card:nth-child(4) { border-top: 5px solid var(--purple); }
.job-card,
.application-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #ffffff, #f8fbff);
  border-left: 5px solid var(--primary);
}
.job-card::before,
.application-card::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--primary), var(--accent));
}
.job-card .primary {
  margin-top: 12px;
  width: 100%;
}
.highlighted-box:nth-child(1) {
  background: var(--card-gradient-blue);
  border-color: #bfdbfe;
}
.highlighted-box:nth-child(2) {
  background: var(--card-gradient-gold);
  border-color: #fde68a;
}
.highlighted-box:nth-child(3) {
  background: var(--card-gradient-green);
  border-color: #bbf7d0;
}
.chat-bubble.user { border-left: 5px solid var(--primary); }
.chat-bubble.staff { border-left: 5px solid var(--emerald); }
.product-stack { gap: 14px; }
.product-card {
  position: relative;
  min-height: 72px;
  overflow: hidden;
  border: 0;
  box-shadow: 0 16px 40px rgba(15,23,42,.08);
}
.product-card > div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.product-card > span:last-child {
  font-weight: 800;
  border-radius: 999px;
  background: rgba(255,255,255,.65);
  padding: 7px 10px;
}
.product-icon {
  width: 36px;
  height: 36px;
  display: inline-grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255,255,255,.72);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.4);
}
.product-blue { background: var(--card-gradient-blue); color: #0f172a; }
.product-green { background: var(--card-gradient-green); color: #064e3b; }
.product-gold { background: var(--card-gradient-gold); color: #713f12; }
.product-purple { background: var(--card-gradient-purple); color: #312e81; }
.product-dark { background: var(--card-gradient-dark); color: #fff; }
.product-dark span:last-child { color: #0f172a; }
.pricing-card:nth-child(1) { border-top: 5px solid var(--cyan); }
.pricing-card:nth-child(2) { border-top: 5px solid var(--primary); }
.pricing-card:nth-child(3) { border-top: 5px solid var(--purple); }
.maintenance-grid .pricing-card:nth-child(1) { border-top-color: var(--emerald); }
.maintenance-grid .pricing-card:nth-child(2) { border-top-color: var(--orange); }
.maintenance-grid .pricing-card:nth-child(3) { border-top-color: var(--rose); }
.dashboard-section {
  background:
    linear-gradient(180deg, #f0f7ff, #eef5fb),
    radial-gradient(circle at top right, rgba(13,110,253,.12), transparent 30%);
}
.staff-app {
  background:
    radial-gradient(circle at top right, rgba(124,58,237,.10), transparent 28%),
    radial-gradient(circle at top left, rgba(13,110,253,.10), transparent 35%),
    #f6f9fd;
}
.staff-summary-grid .summary-card:nth-child(4) { background: var(--card-gradient-gold); border-top-color: var(--gold); }
.auth-card {
  background:
    radial-gradient(circle at top right, rgba(21,184,166,.2), transparent 35%),
    linear-gradient(180deg, #0b1d35, #07111f);
}
input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: rgba(13,110,253,.65);
  box-shadow: 0 0 0 4px rgba(13,110,253,.12);
}
.footer-badges span {
  background: linear-gradient(135deg, rgba(13,110,253,.2), rgba(21,184,166,.16));
}
@media (max-width: 980px) {
  .product-card { align-items: flex-start; flex-direction: column; }
}

/* Complete platform inner pages */
.inner-page { background: #f6f9fd; }
.inner-hero {
  position: relative;
  min-height: 460px;
  display: grid;
  place-items: center;
  color: #fff;
  overflow: hidden;
  background-image: var(--hero-image);
  background-size: cover;
  background-position: center;
}
.inner-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(21,184,166,.35), transparent 34%),
    linear-gradient(135deg, rgba(7,17,31,.94), rgba(13,44,86,.82) 55%, rgba(13,110,253,.58));
}
.inner-hero-content {
  position: relative;
  z-index: 1;
  max-width: 930px;
  text-align: center;
  padding: 90px 0;
}
.inner-hero h1 {
  margin: 0 0 16px;
  font-size: clamp(2.3rem, 5vw, 4.4rem);
  line-height: 1.06;
}
.inner-hero p {
  margin: 0 auto;
  color: #dbeafe;
  font-size: 1.08rem;
  max-width: 780px;
}
.product-page-grid,
.process-grid,
.faq-grid {
  display: grid;
  gap: 18px;
}
.product-page-grid { grid-template-columns: repeat(5, 1fr); }
.process-grid { grid-template-columns: repeat(3, 1fr); }
.faq-grid { grid-template-columns: repeat(2, 1fr); }
.product-feature,
.process-card {
  border-radius: 26px;
  padding: 24px;
  min-height: 220px;
  box-shadow: 0 18px 50px rgba(15,23,42,.08);
  border: 1px solid rgba(255,255,255,.45);
}
.product-feature h3,
.process-card h3 { margin: 16px 0 8px; }
.product-feature p,
.process-card p { margin: 0; }
.process-card {
  background: linear-gradient(180deg, #fff, #f8fbff);
  border: 1px solid var(--line);
}
.process-card span {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--primary), var(--accent));
  color: #fff;
  font-weight: 900;
}
.legal-content {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 28px;
  padding: clamp(24px, 5vw, 54px);
  box-shadow: var(--shadow-soft);
}
.legal-content h2 { margin-top: 0; font-size: clamp(2rem, 3vw, 3rem); }
.legal-content p { color: var(--muted); }
code {
  background: #eaf2ff;
  color: #0f4fb9;
  border-radius: 8px;
  padding: 2px 6px;
  font-weight: 700;
}
@media (max-width: 1180px) {
  .product-page-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 980px) {
  .process-grid,
  .faq-grid,
  .product-page-grid { grid-template-columns: 1fr; }
  .inner-hero { min-height: 420px; }
}

/* Real separated user dashboard page */
.dashboard-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at top right, rgba(13,110,253,.12), transparent 30%),
    radial-gradient(circle at bottom left, rgba(16,185,129,.10), transparent 28%),
    #eef5fb;
}
.app-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 280px 1fr;
}
.dashboard-sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  background: linear-gradient(180deg, #07111f, #0d2445);
  color: #fff;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.dashboard-brand { color: #fff; }
.dashboard-nav {
  display: grid;
  gap: 10px;
}
.dashboard-nav a {
  color: #dbeafe;
  text-decoration: none;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  font-weight: 700;
}
.dashboard-nav a:hover,
.dashboard-nav a:focus {
  background: rgba(13,110,253,.35);
  color: #fff;
}
.sidebar-card {
  margin-top: auto;
  border-radius: 22px;
  padding: 18px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}
.sidebar-card p { color: #dbeafe; margin: 0; }
.dashboard-main {
  padding: clamp(20px, 4vw, 40px);
}
.dashboard-topbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 22px;
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(12px);
  border: 1px solid var(--line);
  border-radius: 30px;
  padding: 24px;
  box-shadow: var(--shadow-soft);
}
.dashboard-topbar h1 {
  margin: 0 0 8px;
  font-size: clamp(1.8rem, 3vw, 3rem);
}
.dashboard-topbar p { margin: 0; color: var(--muted); }
.dashboard-content { display: grid; gap: 22px; }
.dashboard-summary-grid { grid-template-columns: repeat(4, 1fr); }
.full-width-panel { width: 100%; }
.dashboard-two-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  align-items: start;
}
.auth-required-panel {
  max-width: 720px;
  margin: 80px auto;
  text-align: center;
}
.product-request-form { margin-top: 16px; }
@media (max-width: 1100px) {
  .app-shell { grid-template-columns: 1fr; }
  .dashboard-sidebar {
    position: relative;
    height: auto;
  }
  .dashboard-nav { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 980px) {
  .dashboard-summary-grid,
  .dashboard-two-column,
  .dashboard-nav { grid-template-columns: 1fr; }
  .dashboard-topbar { flex-direction: column; }
}

/* Banking product application flow */
.product-application-form {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 18px;
}
.product-application-form select,
.product-application-form input {
  background: #ffffff;
}
.product-submit-btn {
  grid-column: 1 / -1;
}
.product-request-history {
  border-left: 5px solid var(--accent);
  background: linear-gradient(135deg, #ffffff, #f0fdfa);
}
@media (max-width: 760px) {
  .product-application-form { grid-template-columns: 1fr; }
}

/* SP WorldTech professional hero and job-board upgrades */
.inner-hero::after,
.hero-image-section::after,
.hero-pricing-section::after,
.staff-hero::after,
.dashboard-hero-banner::after {
  content: 'SP WORLD TECH';
  position: absolute;
  right: clamp(18px, 5vw, 72px);
  bottom: clamp(18px, 4vw, 54px);
  z-index: 1;
  font-size: clamp(2.4rem, 8vw, 8rem);
  line-height: .8;
  font-weight: 900;
  letter-spacing: -.06em;
  color: rgba(255,255,255,.10);
  pointer-events: none;
  white-space: nowrap;
}
.dashboard-hero-banner {
  position: relative;
  min-height: 360px;
  color: #fff;
  overflow: hidden;
  align-items: center;
  background-image:
    linear-gradient(135deg, rgba(7,17,31,.92), rgba(11,42,84,.80) 55%, rgba(13,110,253,.52)),
    url('https://images.unsplash.com/photo-1519389950473-47ba0277781c?auto=format&fit=crop&w=1800&q=80');
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(191,219,254,.45);
  box-shadow: 0 28px 80px rgba(7,17,31,.22);
}
.dashboard-hero-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(21,184,166,.42), transparent 32%), radial-gradient(circle at bottom left, rgba(13,110,253,.38), transparent 36%);
}
.dashboard-hero-content,
.dashboard-hero-actions { position: relative; z-index: 2; }
.dashboard-hero-content { max-width: 850px; }
.dashboard-hero-banner p { color: #e0f2fe; max-width: 760px; }
.dashboard-hero-actions .secondary { background: rgba(255,255,255,.92); }
.large-jobs-grid { grid-template-columns: repeat(4, 1fr); }
.public-job-card { min-height: 310px; display: flex; flex-direction: column; }
.public-job-card p { flex: 1; }
.job-card-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 12px; }
.job-number,
.job-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: .78rem;
  font-weight: 900;
  background: #eaf2ff;
  color: #084ec0;
}
.job-chip { background: #ecfdf5; color: #047857; }
.modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 200;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(7,17,31,.72);
  backdrop-filter: blur(10px);
}
.job-preview-modal {
  position: relative;
  width: min(820px, 100%);
  max-height: 90vh;
  overflow: auto;
  border-radius: 30px;
  padding: clamp(24px, 5vw, 46px);
  background: #fff;
  box-shadow: 0 40px 100px rgba(0,0,0,.32);
}
.modal-close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: #eef4fb;
  color: #0f172a;
  font-size: 1.5rem;
}
.job-preview-modal h2 { margin: 10px 0 10px; font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.05; }
.job-preview-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 22px 0; }
.job-preview-stats div { border: 1px solid var(--line); border-radius: 18px; padding: 16px; background: #f8fbff; }
.job-preview-stats strong { display: block; font-size: 1.1rem; color: var(--primary-deep); }
.job-preview-stats span { color: var(--muted); font-size: .86rem; }
.pricing-page .pricing-grid { align-items: stretch; }
.pricing-page .pricing-card { min-height: 100%; }
@media (max-width: 1180px) { .large-jobs-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) {
  .large-jobs-grid,
  .job-preview-stats { grid-template-columns: 1fr; }
  .inner-hero::after,
  .hero-image-section::after,
  .hero-pricing-section::after,
  .staff-hero::after,
  .dashboard-hero-banner::after { white-space: normal; left: 18px; right: 18px; }
}

/* Final professional text-size and navigation corrections */
.hero-grid h1,
.staff-hero-grid h1 { font-size: clamp(1.65rem, 3.1vw, 2.85rem) !important; line-height: 1.12; }
.inner-hero h1 { font-size: clamp(1.55rem, 2.8vw, 2.65rem) !important; line-height: 1.14; max-width: 880px; margin-left: auto; margin-right: auto; }
.dashboard-topbar h1 { font-size: clamp(1.55rem, 2.8vw, 2.55rem) !important; line-height: 1.12; }
.hero-grid p,
.staff-hero-grid p,
.inner-hero p,
.dashboard-hero-banner p { font-size: .98rem !important; line-height: 1.65; }
.inner-hero-content { max-width: 900px; padding: 72px 0; }
.inner-hero::after,
.hero-image-section::after,
.hero-pricing-section::after,
.staff-hero::after,
.dashboard-hero-banner::after { font-size: clamp(1.7rem, 5.8vw, 5.6rem); opacity: .75; }
.quick-auth-actions { display: flex; gap: 10px; align-items: center; }
.dashboard-nav a.active { background: linear-gradient(135deg, var(--primary), var(--accent)); color: #fff; box-shadow: 0 12px 30px rgba(13,110,253,.24); }
.dashboard-switch-panel { animation: fadePanel .22s ease; }
@keyframes fadePanel { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.wallet-panel { background: linear-gradient(180deg, #ffffff, #f8fbff); }
.wallet-panel .panel-head h2,
#products-panel h2,
#jobs-panel h2,
#applications-panel h2,
#support-panel h2 { font-size: clamp(1.4rem, 2.4vw, 2rem); margin-top: 0; }
@media (max-width: 980px) {
  .main-nav .nav-btn { width: 100%; }
  .quick-auth-actions { width: 100%; justify-content: flex-end; }
}

/* Fix duplicated Join Free / Login buttons on desktop */
.quick-auth-actions { display: none !important; }
@media (max-width: 980px) {
  .quick-auth-actions { display: flex !important; }
}

/* Professional academy and remote jobs upgrade */
.academy-hero { background: linear-gradient(135deg, rgba(10, 33, 70, .94), rgba(0, 122, 255, .72)), url('https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=1600&q=80') center/cover; }
.academy-course-grid { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.academy-course-card { position: relative; overflow: hidden; border: 1px solid rgba(15, 23, 42, .08); }
.course-icon { width: 54px; height: 54px; border-radius: 18px; display: grid; place-items: center; font-size: 1.85rem; background: linear-gradient(135deg, rgba(37,99,235,.14), rgba(16,185,129,.16)); margin-bottom: 1rem; }
.compact-academy-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1rem; margin-top: 1rem; }
.course-actions { display: flex; gap: .65rem; flex-wrap: wrap; margin-top: 1rem; }
.course-actions button:disabled { opacity: .55; cursor: not-allowed; }
.ai-tutor-box { margin-top: 1.25rem; padding: 1rem; border-radius: 20px; background: rgba(248, 250, 252, .9); border: 1px solid rgba(15, 23, 42, .08); }
.ai-output { min-height: 160px; white-space: pre-wrap; background: #0f172a; color: #e2e8f0; border-radius: 16px; padding: 1rem; overflow: auto; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.soft-gold { background: linear-gradient(135deg, #fff7ed, #fef3c7); color: #92400e; }
.certificate-page-wrap { min-height: 100vh; display: grid; place-items: center; padding: 2rem; background: linear-gradient(135deg, #eff6ff, #f8fafc); }
.certificate-card { max-width: 760px; width: 100%; text-align: center; }
.certificate-logo-row { display: flex; align-items: center; justify-content: center; gap: .75rem; font-weight: 800; margin-bottom: 1rem; }
.valid-certificate { border: 1px solid #10b981; background: #ecfdf5; color: #064e3b; padding: 1rem; border-radius: 16px; margin: 1rem 0; }
.invalid-certificate { border: 1px solid #ef4444; background: #fef2f2; color: #991b1b; padding: 1rem; border-radius: 16px; margin: 1rem 0; }
.plain-anchor-btn { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; }
.job-card .plain-anchor-btn { width: fit-content; margin-top: .5rem; }


.footer-social {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 999px;
  font-size: 0.88rem;
  font-weight: 700;
  text-decoration: none;
  background: rgba(255,255,255,0.06);
}
.footer-social a:hover,
.footer-social a:focus {
  transform: translateY(-1px);
  background: rgba(255,255,255,0.12);
}


/* === 2026 Professional UI/UX polish === */
:focus-visible { outline: 3px solid rgba(13,110,253,.35); outline-offset: 3px; }
body::selection { background: rgba(13,110,253,.18); }
.site-header { box-shadow: 0 10px 30px rgba(15,23,42,.04); }
.panel, .info-card, .pricing-card, .summary-card, .mini-card, .job-card, .application-card {
  border: 1px solid rgba(217,228,241,.88);
  box-shadow: 0 18px 45px rgba(15,23,42,.07);
}
.panel:hover, .info-card:hover, .pricing-card:hover, .job-card:hover {
  transform: translateY(-2px);
  transition: transform .22s ease, box-shadow .22s ease;
  box-shadow: 0 24px 65px rgba(15,23,42,.11);
}
.dashboard-sidebar {
  background: linear-gradient(180deg, #06111f 0%, #0b1f38 62%, #0f355f 100%);
  border-right: 1px solid rgba(255,255,255,.08);
}
.dashboard-nav a {
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.045);
  color: rgba(255,255,255,.86);
  border-radius: 16px;
  padding: 12px 14px;
  margin-bottom: 8px;
}
.dashboard-nav a:hover, .dashboard-nav a.active {
  background: linear-gradient(135deg, rgba(13,110,253,.95), rgba(21,184,166,.95));
  color: #fff;
  box-shadow: 0 14px 35px rgba(13,110,253,.24);
}
.dashboard-main { background: linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%); }
.dashboard-hero-banner { overflow: hidden; border: 1px solid rgba(217,228,241,.25); }
.dashboard-hero-banner::after {
  content: '';
  position: absolute;
  inset: auto -10% -50% 35%;
  height: 220px;
  background: radial-gradient(circle, rgba(21,184,166,.35), transparent 62%);
  pointer-events: none;
}
.inline-form input, .inline-form select, .product-application-form input, .product-application-form select, .product-application-form textarea, .auth-form input {
  border: 1px solid rgba(148,163,184,.45);
  background: rgba(255,255,255,.96);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
}
.inline-form input:focus, .inline-form select:focus, .product-application-form input:focus, .product-application-form select:focus, .product-application-form textarea:focus, .auth-form input:focus {
  border-color: rgba(13,110,253,.75);
  box-shadow: 0 0 0 4px rgba(13,110,253,.12);
  outline: none;
}
.footer-social a {
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  padding: 8px 12px;
  background: rgba(255,255,255,.08);
  text-decoration: none;
}
.footer-social a:hover { background: rgba(13,110,253,.25); color: #fff; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.1); }
.job-meta { color: #586a83; }
.ai-output { white-space: pre-wrap; border: 1px solid var(--line); border-radius: 18px; padding: 16px; background: #07111f; color: #dff7ff; min-height: 130px; overflow:auto; }
.course-icon { width: 52px; height: 52px; display:inline-flex; align-items:center; justify-content:center; border-radius:18px; background:linear-gradient(135deg,rgba(13,110,253,.12),rgba(21,184,166,.18)); font-size:1.5rem; }
@media (max-width: 820px) {
  .app-shell { grid-template-columns: 1fr; }
  .dashboard-sidebar { position: relative; min-height: auto; }
  .dashboard-main { padding: 16px; }
  .dashboard-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .dashboard-nav a { margin-bottom: 0; }
}

/* Academy header alignment: use same professional navigation system as all pages */
.main-nav a.active,
.mobile-menu a.active {
  color: var(--primary);
  font-weight: 800;
}
.main-nav a.active::after { width: 100%; }
.main-nav .plain-anchor-btn.nav-btn {
  color: #fff;
  padding: 10px 16px;
  border-radius: 999px;
}
.main-nav .plain-anchor-btn.nav-btn::after { display: none; }
.mobile-menu .plain-anchor-btn.nav-btn {
  width: 100%;
  color: #fff;
  text-align: center;
  border-radius: 14px;
}


/* === SP WorldTech professional banking/payment upgrade === */
.service-banking-section{background:linear-gradient(180deg,#f8fbff,#eef7ff);position:relative;overflow:hidden}.service-banking-section:before{content:"";position:absolute;inset:-80px auto auto -80px;width:280px;height:280px;border-radius:50%;background:rgba(13,110,253,.11)}.banking-grid,.portfolio-grid,.payment-flow-grid,.team-hiring-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.bank-service-card,.portfolio-card,.payment-method-card,.team-hiring-card,.client-pay-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:22px;box-shadow:0 18px 45px rgba(15,23,42,.08);transition:.2s ease;position:relative;overflow:hidden}.bank-service-card:hover,.portfolio-card:hover,.payment-method-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(15,23,42,.12)}.bank-service-card .service-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-size:1.6rem;background:linear-gradient(135deg,#0d6efd,#14b8a6);color:#fff;margin-bottom:14px}.bank-service-card h3,.portfolio-card h3{margin:0 0 8px}.service-action{width:100%;margin-top:16px}.secure-paystack-zone{background:linear-gradient(135deg,#06203f,#0b5ed7 55%,#13a88e);color:#fff;border-radius:30px;padding:30px;box-shadow:0 28px 70px rgba(13,110,253,.26)}.payment-method-card{color:#0f172a}.payment-method-card.green-bold{border:2px solid rgba(22,163,74,.35);background:linear-gradient(180deg,#f0fdf4,#fff)}.payment-method-card .pay-badge{display:inline-flex;align-items:center;gap:8px;background:#16a34a;color:#fff;font-weight:900;text-transform:uppercase;border-radius:999px;padding:9px 13px;margin-bottom:12px}.client-payment-hero{background:linear-gradient(135deg,#061a34,#063a73 55%,#0f766e);color:#fff}.client-payment-form{display:grid;gap:14px}.client-payment-form input,.client-payment-form select,.client-payment-form textarea{width:100%;border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:13px 14px;font:inherit}.portfolio-cover{height:180px;border-radius:18px;background:linear-gradient(135deg,#dbeafe,#ccfbf1);display:grid;place-items:center;font-weight:900;color:#0b5ed7;margin-bottom:14px}.token-calculator{display:grid;grid-template-columns:1fr 1fr;gap:22px}.calculator-card{background:#061a34;color:#fff;border-radius:28px;padding:22px;box-shadow:0 24px 70px rgba(2,6,23,.25)}.calc-screen{background:#020617;border:1px solid rgba(255,255,255,.13);border-radius:16px;padding:18px;text-align:right;font-size:1.4rem;font-weight:900;min-height:62px;letter-spacing:.12em}.calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.calc-grid button{border:0;border-radius:16px;padding:17px;font-weight:900;background:#e2e8f0;color:#0f172a}.calc-grid .calc-action{background:#14b8a6;color:#fff}.token-box{background:#f8fafc;border:1px dashed #0d6efd;border-radius:18px;padding:14px;font-weight:800;word-break:break-all}.staff-safe-hide{display:none!important}.ai-message-box{background:#f8fafc;border-radius:18px;border:1px solid rgba(15,23,42,.08);padding:16px;white-space:pre-wrap}.map-card{border:0;width:100%;height:380px;border-radius:28px;box-shadow:0 18px 50px rgba(15,23,42,.12)}.ceo-story-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:center}.ceo-image,.founder-image,.team-placeholder{border-radius:26px;background:linear-gradient(135deg,#e0f2fe,#d1fae5);min-height:280px;display:grid;place-items:center;color:#0b5ed7;font-weight:900;text-align:center}.team-placeholder{min-height:160px}.ai-support-widget{position:fixed;right:20px;bottom:20px;z-index:9999}.ai-support-toggle{border:0;border-radius:999px;background:linear-gradient(135deg,#0d6efd,#14b8a6);color:#fff;font-weight:900;padding:14px 18px;box-shadow:0 18px 45px rgba(13,110,253,.35)}.ai-support-panel{position:absolute;right:0;bottom:58px;width:min(340px,calc(100vw - 36px));background:#fff;border-radius:24px;box-shadow:0 26px 80px rgba(2,6,23,.24);overflow:hidden;border:1px solid rgba(15,23,42,.1)}.ai-support-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#061a34;color:#fff}.ai-support-head button{background:transparent;color:#fff;border:0;font-size:1.3rem}.ai-support-body,.ai-support-actions{padding:16px}.ai-support-actions{display:grid;gap:10px}.ai-support-actions button,.ai-support-actions a{border:0;text-decoration:none;text-align:center;border-radius:14px;padding:12px;font-weight:900;background:#eff6ff;color:#0b5ed7}.small-muted{font-size:.85rem;color:#64748b}.hidden{display:none!important}@media(max-width:1000px){.banking-grid,.portfolio-grid,.payment-flow-grid,.team-hiring-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.token-calculator,.ceo-story-card{grid-template-columns:1fr}}@media(max-width:640px){.banking-grid,.portfolio-grid,.payment-flow-grid,.team-hiring-grid{grid-template-columns:1fr}}

/* Operations calculator access pages */
.calculator-access-page {
  min-height: 100vh;
  background: radial-gradient(circle at top left, rgba(37, 99, 235, 0.18), transparent 34%), linear-gradient(135deg, #f8fafc 0%, #e0f2fe 42%, #fefce8 100%);
  color: #0f172a;
}
.calculator-shell {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 42px 0;
  display: grid;
  grid-template-columns: minmax(300px, 0.9fr) minmax(320px, 1.1fr);
  gap: 28px;
  align-items: start;
}
.calculator-access-card,
.calculator-auth-card,
.calculator-gate-box {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 30px 80px rgba(15, 23, 42, 0.14);
  border-radius: 28px;
  padding: 28px;
}
.calculator-access-card h1 {
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 0.95;
  margin: 18px 0 14px;
  letter-spacing: -0.06em;
}
.calculator-device {
  margin-top: 26px;
  border-radius: 30px;
  padding: 18px;
  background: #0f172a;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08), 0 24px 45px rgba(15,23,42,0.24);
}
.calculator-screen {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 16px 18px;
  border-radius: 18px;
  background: #e2e8f0;
  color: #0f172a;
  font-size: 2.2rem;
  font-weight: 900;
  overflow: hidden;
}
.calculator-buttons {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 14px;
}
.calculator-buttons button {
  border: 0;
  border-radius: 16px;
  min-height: 56px;
  font-size: 1.08rem;
  font-weight: 900;
  background: #f8fafc;
  color: #0f172a;
  cursor: pointer;
}
.calculator-buttons button:hover { transform: translateY(-1px); }
.compact-pin-form { gap: 12px; }
.token-result-box {
  margin: 18px 0;
  padding: 22px;
  border-radius: 24px;
  background: linear-gradient(135deg, #dcfce7, #e0f2fe);
  border: 2px solid #16a34a;
  text-align: center;
}
.token-result-box span {
  display: block;
  font-weight: 900;
  color: #166534;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.85rem;
}
.token-result-box strong {
  display: block;
  margin: 8px 0 10px;
  font-size: clamp(2rem, 6vw, 4.6rem);
  line-height: 0.92;
  color: #0f172a;
  letter-spacing: 0.02em;
  word-break: break-word;
  text-shadow: 0 2px 0 rgba(255,255,255,0.8);
}
.soft-divider {
  border: 0;
  border-top: 1px solid rgba(15,23,42,0.12);
  margin: 24px 0;
}
.calc-access-note a { font-weight: 900; color: #1d4ed8; }
.status-text.error { color: #b91c1c !important; }
.calculator-gate-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 18px 0;
}
@media (max-width: 860px) {
  .calculator-shell { grid-template-columns: 1fr; }
}

/* Calculator Token ID visibility update */
.token-result-box {
  border: 3px solid #22d3ee;
  border-radius: 24px;
  padding: 22px;
  margin: 22px 0;
  background: linear-gradient(135deg, rgba(14, 165, 233, 0.16), rgba(34, 211, 238, 0.24));
  box-shadow: 0 24px 50px rgba(8, 47, 73, 0.18);
  text-align: center;
}
.token-result-box span {
  display: block;
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #075985;
  margin-bottom: 10px;
}
.token-result-box strong,
#createdTokenId {
  display: block;
  width: 100%;
  font-size: clamp(2.3rem, 7vw, 5rem) !important;
  line-height: 1.05;
  font-weight: 1000 !important;
  color: #071827 !important;
  letter-spacing: .06em;
  word-break: break-word;
  background: #ffffff;
  border: 4px dashed #0ea5e9;
  border-radius: 20px;
  padding: 20px 12px;
  margin: 8px 0 14px;
}
.calculator-gate-actions .primary,
.calculator-gate-actions .secondary {
  min-width: 220px;
  text-align: center;
}


/* === calculator exact-match theme refresh === */
.calculator-access-page {
  min-height: 100vh;
  background: #e9eef3 !important;
  color: #ffffff;
}
.ops-calc-page {
  width: min(1080px, calc(100% - 40px));
  margin: 0 auto;
  padding: 16px 0 28px;
}
.ops-calc-card {
  background: #15386d;
  border-radius: 28px;
  padding: 18px 18px 22px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.18);
}
.ops-calc-header { margin-bottom: 14px; }
.ops-calc-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
}
.ops-calc-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
  border-radius: 12px;
}
.ops-calc-brand-copy strong {
  display: block;
  color: #ffffff;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  line-height: 1.05;
}
.ops-calc-brand-copy span {
  display: block;
  margin-top: 4px;
  color: #61f4ff;
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.18em;
}
.ops-calc-display {
  width: 100%;
  min-height: 76px;
  border-radius: 24px;
  background: #021126 !important;
  color: #ffffff !important;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 10px 18px;
  font-size: clamp(2.1rem, 5vw, 3.1rem) !important;
  font-weight: 900;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,0.02);
}
.ops-calc-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.ops-key {
  min-height: 58px;
  border: 0;
  border-radius: 18px;
  background: #e7eaee;
  color: #071827;
  font-size: 1.18rem;
  font-weight: 900;
  box-shadow: none;
}
.ops-key.ops-key-action {
  background: #25b6d1;
  color: #031525;
}
.ops-key.ops-key-wide { grid-column: span 2; }
.ops-calc-helper {
  margin: 12px 0 10px;
  color: #ffffff;
  font-size: 0.92rem;
  font-weight: 800;
}
.ops-token-label {
  display: block;
  margin-bottom: 10px;
  color: #ffffff;
  font-weight: 900;
  font-size: 0.95rem;
}
.ops-token-box {
  width: 100%;
  min-height: 66px;
  border-radius: 18px;
  background: #e7eaee;
  display: flex;
  align-items: center;
  padding: 10px 16px;
  border: 0;
}
.ops-token-box strong,
#createdTokenId {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0 !important;
  background: transparent !important;
  color: #6b7280 !important;
  font-size: clamp(0.9rem, 2vw, 1.12rem) !important;
  line-height: 1.25;
  font-weight: 800 !important;
  letter-spacing: 0;
  text-align: left;
}
.ops-token-box.has-token {
  align-items: stretch;
  min-height: auto;
  background: #f7fbff;
  border: 3px solid #25b6d1;
}
.ops-token-box.has-token strong,
.ops-token-box.has-token #createdTokenId {
  color: #071827 !important;
  font-size: clamp(1.6rem, 4.7vw, 2.8rem) !important;
  line-height: 1.1;
  font-weight: 1000 !important;
  letter-spacing: 0.05em;
  word-break: break-word;
  text-align: center;
  padding: 10px 6px;
}
.ops-calc-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 14px;
}
.ops-action-primary,
.ops-action-secondary {
  min-height: 52px;
  border-radius: 18px;
  padding: 12px 18px;
  font-size: 0.95rem;
  font-weight: 900;
}
.ops-action-primary {
  background: #25b6d1;
  color: #031525;
}
.ops-action-secondary {
  background: #eef1f4;
  color: #071827;
}
.ops-status-text {
  margin-top: 10px;
  color: #d8fff3;
  font-size: 0.93rem;
}
.ops-status-text.error { color: #ffd5d5 !important; }
.calculator-gate-overlay {
  position: fixed;
  inset: 0;
  z-index: 120;
  background: rgba(2, 6, 23, 0.72);
  display: grid;
  place-items: center;
  padding: 18px;
}
.ops-gate-box {
  width: min(560px, 100%);
  background: #ffffff;
  color: #071827;
  border-radius: 28px;
  box-shadow: 0 24px 80px rgba(2, 6, 23, 0.28);
  padding: 22px;
}
.ops-gate-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.ops-gate-eyebrow {
  margin: 0 0 4px;
  color: #0f766e;
  font-size: 0.88rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.ops-gate-top h2 { margin: 0; font-size: 1.55rem; line-height: 1.15; }
.ops-gate-close {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,0.12);
  background: #f8fafc;
  color: #071827;
  font-size: 1.6rem;
}
.ops-gate-tabs {
  display: flex;
  gap: 10px;
  margin: 18px 0 16px;
}
.ops-gate-tab {
  flex: 1;
  min-height: 46px;
  border-radius: 16px;
  background: #eef2f7;
  color: #071827;
  font-weight: 900;
}
.ops-gate-tab.active {
  background: #15386d;
  color: #ffffff;
}
.ops-gate-form h3 { margin: 0 0 10px; font-size: 1.05rem; }
.ops-gate-form input,
.ops-gate-form select {
  border-radius: 16px;
  border: 1px solid rgba(15,23,42,0.1);
  background: #f8fafc;
}
.ops-success-box {
  margin-top: 8px;
  padding: 20px;
  border-radius: 22px;
  background: linear-gradient(180deg, #f0fbff, #ffffff);
  border: 2px solid #25b6d1;
  text-align: center;
}
.ops-success-box span {
  display: block;
  color: #0f766e;
  font-size: 0.88rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.ops-success-box strong {
  display: block;
  margin: 10px 0 8px;
  color: #071827;
  font-size: clamp(1.5rem, 5vw, 2.5rem);
  line-height: 1.1;
  font-weight: 1000;
  letter-spacing: 0.05em;
  word-break: break-word;
}
.ops-success-box p { margin: 0 0 14px; color: #334155; }
.ops-gate-foot {
  margin: 16px 0 0;
  color: #334155;
  font-size: 0.92rem;
}
.ops-gate-foot a { font-weight: 900; color: #15386d; }
@media (max-width: 640px) {
  .ops-calc-page { width: min(100%, calc(100% - 20px)); padding: 10px 0 20px; }
  .ops-calc-card { border-radius: 22px; padding: 14px; }
  .ops-key { min-height: 54px; font-size: 1.08rem; }
  .ops-calc-actions { flex-direction: column; }
  .ops-action-primary, .ops-action-secondary { width: 100%; }
  .ops-gate-box { padding: 18px; border-radius: 22px; }
}

/* === professional platform header cleanup === */
.site-header {
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(18px);
}
.nav-wrap {
  min-height: 74px;
  gap: 24px;
}
.brand-link,
.brand {
  flex: 0 0 auto;
}
.brand-logo {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  box-shadow: 0 12px 30px rgba(15,23,42,.10);
}
.main-nav {
  margin-left: auto;
  gap: 18px;
  flex-wrap: nowrap;
  white-space: nowrap;
}
.main-nav a:not(.nav-btn) {
  font-size: .96rem;
  font-weight: 850;
  letter-spacing: -.02em;
}
.main-nav .nav-btn {
  min-height: 44px;
  border-radius: 18px;
  padding-inline: 18px;
}
.mobile-menu a[href="./client-payments.html"],
.mobile-menu a[href="./support.html"] {
  color: #334155;
}
@media (max-width: 1120px) {
  .main-nav { gap: 12px; }
  .main-nav a:not(.nav-btn) { font-size: .9rem; }
}
@media (max-width: 980px) {
  .main-nav { display: none; }
  .mobile-menu-btn { display: inline-flex; margin-left: auto; }
}

/* === compact calculator viewport fit update === */
.calculator-access-page {
  min-height: 100vh;
  overflow-x: hidden;
}

.ops-calc-page {
  width: min(860px, calc(100% - 28px)) !important;
  padding: 10px 0 16px !important;
  min-height: 100vh;
  display: grid;
  align-items: start;
}

.ops-calc-card {
  border-radius: 22px !important;
  padding: 14px !important;
  max-height: calc(100vh - 20px);
  overflow: auto;
}

.ops-calc-header {
  margin-bottom: 10px !important;
}

.ops-calc-brand {
  gap: 10px !important;
}

.ops-calc-logo {
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
}

.ops-calc-brand-copy strong {
  font-size: clamp(1rem, 1.7vw, 1.35rem) !important;
  letter-spacing: .11em !important;
}

.ops-calc-brand-copy span {
  margin-top: 2px !important;
  font-size: clamp(.72rem, 1.3vw, .86rem) !important;
  letter-spacing: .18em !important;
}

.ops-calc-display {
  min-height: 58px !important;
  border-radius: 18px !important;
  padding: 6px 16px !important;
  font-size: clamp(1.9rem, 4vw, 2.7rem) !important;
}

.ops-calc-grid {
  gap: 8px !important;
  margin-top: 8px !important;
}

.ops-key {
  min-height: 44px !important;
  border-radius: 14px !important;
  font-size: clamp(.95rem, 1.7vw, 1.05rem) !important;
  padding: 6px 8px !important;
}

.ops-calc-helper {
  margin: 9px 0 7px !important;
  font-size: .82rem !important;
  line-height: 1.25 !important;
}

.ops-token-label {
  margin-bottom: 6px !important;
  font-size: .82rem !important;
}

.ops-token-box {
  min-height: 50px !important;
  border-radius: 14px !important;
  padding: 8px 12px !important;
}

.ops-token-box strong,
#createdTokenId {
  font-size: clamp(.78rem, 1.5vw, .95rem) !important;
  line-height: 1.15 !important;
}

.ops-token-box.has-token strong,
.ops-token-box.has-token #createdTokenId {
  font-size: clamp(1.15rem, 3.6vw, 2rem) !important;
  padding: 6px 4px !important;
}

.ops-calc-actions {
  gap: 8px !important;
  margin-top: 10px !important;
}

.ops-action-primary,
.ops-action-secondary {
  min-height: 42px !important;
  border-radius: 14px !important;
  padding: 8px 13px !important;
  font-size: .82rem !important;
}

.ops-status-text {
  margin-top: 6px !important;
  font-size: .8rem !important;
  min-height: 18px !important;
}

@media (min-width: 1000px) {
  .ops-calc-page {
    width: min(820px, calc(100% - 32px)) !important;
  }
  .ops-key {
    min-height: 42px !important;
  }
  .ops-calc-display {
    min-height: 54px !important;
  }
}

@media (max-height: 720px) {
  .ops-calc-page {
    padding: 6px 0 8px !important;
  }
  .ops-calc-card {
    padding: 10px !important;
    border-radius: 18px !important;
  }
  .ops-calc-logo {
    width: 28px !important;
    height: 28px !important;
  }
  .ops-calc-brand-copy strong {
    font-size: .95rem !important;
  }
  .ops-calc-brand-copy span {
    font-size: .66rem !important;
  }
  .ops-calc-display {
    min-height: 48px !important;
    font-size: 2rem !important;
    border-radius: 16px !important;
  }
  .ops-key {
    min-height: 38px !important;
    border-radius: 12px !important;
    font-size: .92rem !important;
  }
  .ops-calc-grid {
    gap: 6px !important;
  }
  .ops-calc-helper,
  .ops-token-label {
    font-size: .75rem !important;
  }
  .ops-token-box {
    min-height: 44px !important;
  }
  .ops-action-primary,
  .ops-action-secondary {
    min-height: 38px !important;
    font-size: .78rem !important;
  }
}

@media (max-width: 640px) {
  .ops-calc-page {
    width: min(100%, calc(100% - 14px)) !important;
    padding: 7px 0 12px !important;
  }
  .ops-calc-card {
    padding: 10px !important;
    border-radius: 18px !important;
    max-height: none;
  }
  .ops-calc-display {
    min-height: 52px !important;
  }
  .ops-key {
    min-height: 42px !important;
  }
}

/* Job module upgrade only: professional recruitment portal, dashboard applications, admin job management */
.jobs-recruitment-hero .hero-actions { margin-top: 1.4rem; }
.job-portal-section .section-heading { align-items: end; }
.job-filter-panel {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 18px 55px rgba(15,23,42,.08);
  margin-bottom: 20px;
}
.job-filter-panel input,
.job-filter-panel select,
.job-application-form input,
.job-application-form textarea,
.admin-application-card textarea,
.ai-message-box textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 12px 13px;
  font: inherit;
  background: #fff;
}
.status-row { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin: 12px 0 18px; flex-wrap: wrap; }
.jobs-board-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.professional-job-card { display: flex; flex-direction: column; gap: 12px; min-height: 440px; }
.job-company-row { display: flex; align-items: center; gap: 12px; }
.company-logo-box { width: 52px; height: 52px; border-radius: 16px; display: grid; place-items: center; background: #eef5ff; color: var(--primary-deep); font-weight: 900; overflow: hidden; flex: 0 0 auto; }
.company-logo-box img { width: 100%; height: 100%; object-fit: contain; }
.job-pill-row, .job-skill-row, .job-card-actions, .share-options { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.job-pill-row span, .job-skill-chip, .share-options a { border: 1px solid var(--line); border-radius: 999px; padding: 7px 10px; background: #f8fbff; font-size: .84rem; color: #17406e; text-decoration: none; }
.job-card-actions { margin-top: auto; }
.job-pagination { display: flex; gap: 10px; align-items: center; justify-content: center; flex-wrap: wrap; }
.skeleton-card div { height: 18px; border-radius: 999px; background: linear-gradient(90deg, #eef2f7, #f8fafc, #eef2f7); margin-bottom: 14px; animation: jobPulse 1.2s infinite ease-in-out; }
.skeleton-card div:first-child { width: 58%; height: 44px; border-radius: 16px; }
.skeleton-card div:nth-child(2) { width: 80%; }
.skeleton-card div:nth-child(3) { width: 100%; }
.skeleton-card div:nth-child(4) { width: 45%; }
@keyframes jobPulse { 0%, 100% { opacity: .65; } 50% { opacity: 1; } }
.empty-state-card { grid-column: 1 / -1; text-align: center; padding: 30px; }
.job-details-modal { max-width: 980px; }
.details-company-row { margin: 14px 0; }
.job-application-form { display: grid; gap: 10px; margin-top: 12px; }
.job-doc-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 12px 0; }
.admin-job-management-panel, .admin-client-tracking-panel, .admin-ai-message-panel, .admin-job-logs-panel { border-top: 5px solid var(--primary); }
.admin-application-card { display: grid; gap: 10px; }
.ai-message-box textarea { min-height: 180px; white-space: pre-wrap; }
@media (max-width: 1100px) { .job-filter-panel, .jobs-board-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .job-filter-panel, .jobs-board-list, .job-doc-grid { grid-template-columns: 1fr; } .status-row { align-items: flex-start; } }


/* SP WorldTech professional service-ready product, academy and support upgrades */
.course-link-card,.course-card-open,.product-card-link,.product-service-card{color:inherit;text-decoration:none;display:block}.course-link-card:hover,.product-card-link:hover,.product-service-card:hover{transform:translateY(-4px)}.academy-course-hero,.product-service-hero{background:linear-gradient(135deg,#061a34,#0d6efd 55%,#14b8a6);color:#fff}.course-hero-icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:22px;background:rgba(255,255,255,.14);margin-right:10px}.course-page-grid,.product-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.lesson-list{display:grid;gap:12px;margin:18px 0 0;padding-left:20px}.lesson-list li{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;padding:14px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;font-weight:900}.status-pill.pending{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.spw-support-widget{position:fixed;right:20px;bottom:20px;z-index:99999;font-family:Inter,system-ui,sans-serif}.spw-support-toggle{border:0;border-radius:999px;background:linear-gradient(135deg,#0d6efd,#14b8a6);color:#fff;font-weight:900;padding:14px 18px;box-shadow:0 18px 45px rgba(13,110,253,.35);cursor:pointer}.spw-support-panel{position:absolute;right:0;bottom:62px;width:min(360px,calc(100vw - 28px));background:#fff;border-radius:24px;box-shadow:0 26px 80px rgba(2,6,23,.24);overflow:hidden;border:1px solid rgba(15,23,42,.1)}.spw-support-head{display:flex;justify-content:space-between;align-items:center;background:#061a34;color:#fff;padding:14px 16px}.spw-support-close{background:transparent;color:#fff;border:0;font-size:1.35rem;cursor:pointer}.spw-support-messages{height:260px;overflow:auto;padding:14px;background:#f8fafc;display:flex;flex-direction:column;gap:10px}.spw-chat-bubble{max-width:84%;border-radius:18px;padding:10px 12px;font-weight:600;line-height:1.45}.spw-chat-bubble.staff{align-self:flex-start;background:#fff;color:#0f172a;border:1px solid rgba(15,23,42,.08)}.spw-chat-bubble.user{align-self:flex-end;background:#0d6efd;color:#fff}.spw-support-form{display:flex;gap:8px;padding:12px;background:#fff;border-top:1px solid rgba(15,23,42,.08)}.spw-support-form input{flex:1;border:1px solid rgba(15,23,42,.14);border-radius:14px;padding:11px 12px}.spw-support-form button{border:0;border-radius:14px;background:#14b8a6;color:#fff;font-weight:900;padding:0 14px}.product-card-link{display:flex!important;justify-content:space-between;align-items:center}.product-service-card .course-icon,.academy-course-card .course-icon{margin-bottom:14px}.ai-output{white-space:pre-wrap;max-height:420px;overflow:auto}.service-action.plain-anchor-btn{text-align:center;display:block}@media(max-width:900px){.course-page-grid,.product-page-grid{grid-template-columns:1fr}.course-hero-icon{width:50px;height:50px}.spw-support-widget{right:12px;bottom:12px}.spw-support-panel{bottom:58px}}


/* Banking banking dashboard */
.sp-wallet-page{margin:0;background:#f5f7fb;color:#111827;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}.sp-wallet-sidebar{position:fixed;inset:0 auto 0 0;width:280px;background:#fff;border-right:1px solid #eef1f6;z-index:10;box-shadow:2px 0 15px rgba(15,23,42,.03)}.sp-wallet-brand{height:86px;display:flex;align-items:center;gap:10px;padding:0 34px;text-decoration:none;color:#1e3a8a;font-size:24px;font-weight:800;border-bottom:1px solid #f0f3f8}.sp-wallet-brand img{width:44px;height:44px;object-fit:contain}.sp-wallet-brand strong{color:#ff6a00}.sp-wallet-nav{display:flex;flex-direction:column;padding:16px 18px;gap:5px}.sp-wallet-nav button,.sp-wallet-nav a{border:0;background:transparent;text-align:left;display:flex;align-items:center;gap:14px;padding:14px 8px;border-radius:13px;color:#465366;font-weight:800;font-size:15px;text-decoration:none;cursor:pointer}.sp-wallet-nav button:hover,.sp-wallet-nav a:hover,.sp-wallet-nav button.active{background:#fff4ec;color:#ff6a00}.sp-wallet-nav span{width:20px;text-align:center;color:#758195}.sp-wallet-main{margin-left:280px;min-height:100vh}.sp-wallet-topbar{height:86px;background:#fff;border-bottom:1px solid #eef1f6;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:8}.sp-wallet-topbar small{display:block;color:#7a8797;font-weight:600;margin-top:2px}.sp-wallet-menu{display:none}.sp-wallet-actions{display:flex;align-items:center;gap:12px}.sp-wallet-actions button,.sp-wallet-actions span{width:48px;height:48px;border-radius:50%;border:1px solid #eef1f6;background:#f8fafc;display:grid;place-items:center;font-weight:900}.sp-wallet-actions span{background:#f1f5f9}.sp-wallet-shell{padding:36px;max-width:1500px;margin:auto}.sp-wallet-view{display:none}.sp-wallet-view.active{display:block}.sp-wallet-alert{padding:14px 18px;border-radius:14px;margin-bottom:18px;font-weight:800}.sp-wallet-alert.info{background:#eff6ff;color:#1d4ed8}.sp-wallet-alert.success{background:#ecfdf5;color:#047857}.sp-wallet-alert.error{background:#fff1f2;color:#be123c}.hidden{display:none!important}.sp-wallet-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:36px}.sp-balance-card{background:linear-gradient(135deg,#ff6a00 0%,#ff7a1a 35%,#075be8 100%);border-radius:22px;color:#fff;padding:28px 32px;box-shadow:0 24px 60px rgba(6,64,172,.18);min-height:250px}.sp-balance-head{display:flex;justify-content:space-between;align-items:center}.pill{border:0;border-radius:28px;padding:12px 18px;margin-left:8px;background:rgba(255,255,255,.22);color:#fff;font-weight:900}.pill.active{background:#fff;color:#ff6a00}.sp-balance-card h1{font-size:40px;margin:30px 0 8px}.sp-balance-card p{opacity:.9;font-weight:700}.sp-balance-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:25px}.sp-balance-actions button{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.16);border-radius:16px;padding:18px 10px;color:#fff;font-weight:900;display:flex;flex-direction:column;gap:7px;align-items:center;cursor:pointer}.sp-bank-card,.sp-section-card,.sp-centered-card,.sp-bill-panel,.sp-business-list{background:#fff;border-radius:22px;padding:28px;box-shadow:0 18px 50px rgba(15,23,42,.06);border:1px solid #eef1f6}.sp-card-title,.sp-table-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.sp-card-title h2,.sp-section-card h2,.sp-centered-card h1,.sp-bill-panel h1,.sp-business-list h1{margin:0;color:#111827}.sp-card-title span{background:#f5f6f8;padding:12px 18px;border-radius:5px;font-weight:900}.sp-bank-card label,.sp-filter-row label{display:block;text-transform:uppercase;color:#7a8797;font-size:13px;font-weight:900;margin:20px 0 8px}.sp-bank-card input,.sp-row-actions input,.sp-filter-row input,.sp-modal input,.sp-modal textarea,.sp-modal select{width:100%;box-sizing:border-box;border:1px solid #e1e7ef;border-radius:12px;padding:15px 16px;font:inherit;background:#f8fafc}.sp-bank-details-empty,.sp-list-empty{margin:15px 0;padding:15px;border-radius:13px;background:#f8fafc;color:#667085;font-weight:700}.sp-orange-btn,.sp-blue-btn,.sp-outline-btn{border:0;border-radius:13px;padding:14px 22px;font-weight:900;cursor:pointer}.sp-orange-btn{background:#ff6a00;color:#fff}.sp-blue-btn{background:#095fc4;color:#fff}.sp-outline-btn{background:#fff;color:#ff6a00;border:1px solid #ff6a00}.small{padding:12px 18px}.sp-table-head p{margin:4px 0 0;color:#7a8797}.sp-row-actions{display:flex;gap:10px;align-items:center}.sp-row-actions input{max-width:230px}.sp-table-wrap{overflow:auto;margin-top:22px}.sp-table-wrap table{width:100%;border-collapse:collapse;min-width:850px}.sp-table-wrap th{background:#f8fafc;color:#718096;text-align:left;padding:16px;font-size:14px}.sp-table-wrap td{padding:18px 16px;border-bottom:1px solid #edf2f7;color:#4b5563;font-weight:700;text-align:left}.sp-table-wrap td[colspan]{text-align:center;color:#7a8797;padding:50px}.sp-centered-card{text-align:center;min-height:420px;display:flex;flex-direction:column;justify-content:center}.sp-centered-card p{color:#707987;margin-top:6px}.sp-option-grid{display:grid;gap:28px;margin:40px auto 0;max-width:850px}.sp-option-grid.two{grid-template-columns:repeat(2,1fr)}.sp-option-grid.three{grid-template-columns:repeat(3,1fr);max-width:1100px}.sp-option,.sp-card-type{height:160px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 12px 35px rgba(15,23,42,.05);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;font-size:17px;cursor:pointer}.sp-option span{font-size:45px;color:#ff6a00}.sp-card-type b{font-size:26px;color:#0f766e}.sp-bill-panel{max-width:820px;margin:60px auto;text-align:center;padding:0 0 35px;overflow:hidden}.sp-bill-panel h1{background:#ff6a00;color:#1f2937;padding:16px}.sp-bill-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:28px}.sp-bill-grid button{border:1px solid #ff6a00;background:#fff;color:#ff6a00;border-radius:9px;padding:17px;font-weight:900;font-size:16px;cursor:pointer}.sp-card-hero{background:#ff6a00;color:#fff;border-radius:24px;padding:36px 42px;margin-bottom:32px;position:relative;overflow:hidden}.sp-card-hero:after{content:"";position:absolute;right:-25px;top:-30px;width:190px;height:190px;border-radius:50%;background:rgba(255,255,255,.14)}.sp-card-hero h1{color:#172554;margin:0 0 12px;font-size:34px}.sp-card-hero p{max-width:760px;font-weight:700;line-height:1.5}.sp-card-hero.compact{margin-top:0}.sp-card-products{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.sp-card-products article{background:#fff;border-radius:22px;padding:32px;box-shadow:0 14px 40px rgba(15,23,42,.06);border:1px solid #eef1f6}.sp-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:30px;margin-bottom:20px}.sp-icon.green{background:#ecfdf5}.sp-icon.orange{background:#fff7ed}.sp-icon.blue{background:#eff6ff}.sp-card-products h2{font-size:26px;margin:0 0 16px}.sp-card-products p{color:#6b7280;line-height:1.6}.sp-card-products ul{list-style:none;padding:0;margin:24px 0}.sp-card-products li{margin:12px 0;font-weight:800;color:#374151}.sp-card-products li:before{content:'✓';display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#16a34a;color:#fff;font-size:12px;margin-right:10px}.price{font-size:24px!important;font-weight:900;color:#ff6a00!important}.sp-business-list{max-width:850px;margin:20px auto;padding:0;overflow:hidden}.sp-business-list h1{background:#ff6a00;text-align:center;padding:16px}.sp-business-list button{display:block;width:100%;border:0;background:#fff;border-bottom:1px solid #e5e7eb;padding:18px 24px;text-align:left;font-size:18px;color:#4b5563;cursor:pointer}.support-card{max-width:1100px;margin:auto}.sp-empty-state{text-align:center;border:1px solid #edf2f7;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center}.sp-empty-state p{color:#6b7280}.sp-filter-row{display:grid;grid-template-columns:1fr 1fr auto auto;gap:24px;align-items:end;background:#f8fafc;border:1px solid #e5e7eb;border-radius:20px;padding:22px;margin-top:24px}.sp-list-item,.sp-ticket-list article{border:1px solid #edf2f7;border-radius:14px;padding:16px;margin:10px 0;background:#f8fafc}.sp-list-item{display:grid;grid-template-columns:1fr auto;gap:6px}.sp-list-item span,.sp-ticket-list span,.sp-status{border-radius:999px;background:#eff6ff;color:#1d4ed8;padding:5px 10px;font-size:12px;font-weight:900}.sp-ticket-list article p{color:#4b5563}.sp-modal{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:100;display:grid;place-items:center;padding:20px}.sp-modal form{background:#fff;border-radius:22px;width:min(520px,100%);padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.25);display:grid;gap:14px}.sp-modal h2{margin:0 0 8px}.sp-modal textarea{min-height:120px}.sp-cancel{border:0;background:#f1f5f9;border-radius:12px;padding:13px;font-weight:900;cursor:pointer}.sp-wallet-footer{margin:34px auto 0;background:#fff;border:1px solid #eef1f6;box-shadow:0 15px 40px rgba(15,23,42,.05);border-radius:18px;padding:22px;text-align:center;color:#64748b;font-weight:900}.sp-status.failed{background:#fff1f2;color:#be123c}.sp-status.completed,.sp-status.approved{background:#ecfdf5;color:#047857}.sp-status.pending{background:#fff7ed;color:#c2410c}@media(max-width:1050px){.sp-wallet-sidebar{transform:translateX(-100%);transition:.2s}.sp-wallet-menu-open .sp-wallet-sidebar{transform:none}.sp-wallet-main{margin-left:0}.sp-wallet-menu{display:block;border:0;background:#ff6a00;color:#fff;border-radius:10px;padding:10px 13px}.sp-wallet-dashboard-grid,.sp-card-products,.sp-option-grid.two,.sp-option-grid.three{grid-template-columns:1fr}.sp-filter-row{grid-template-columns:1fr}.sp-row-actions{flex-wrap:wrap}.sp-wallet-shell{padding:20px}.sp-bill-grid{grid-template-columns:1fr}.sp-wallet-topbar{padding:0 15px}.sp-wallet-actions button{display:none}.sp-balance-card h1{font-size:32px}}

/* SP WorldTech AI + separate dashboard upgrades */
.sp-dashboard-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap:18px; }
.sp-dashboard-card { background:#fff; border:1px solid #e5e7eb; border-radius:24px; padding:24px; box-shadow:0 16px 40px rgba(15,23,42,.08); }
.sp-dashboard-card h3 { margin:8px 0; color:#101828; }
.sp-dashboard-card .icon { width:54px; height:54px; border-radius:16px; display:grid; place-items:center; background:#fff4eb; color:#ff6b00; font-size:26px; }
.sp-ai-card { background:#fff; border:1px solid #e5e7eb; border-radius:24px; padding:18px; box-shadow:0 16px 40px rgba(15,23,42,.08); }
.sp-ai-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.sp-ai-head p { margin:4px 0 0; color:#667085; font-size:13px; }
.sp-ai-head span { background:#ff6b00; color:#fff; width:42px; height:42px; border-radius:999px; display:grid; place-items:center; font-weight:900; }
.sp-ai-messages { min-height:120px; max-height:300px; overflow:auto; display:flex; flex-direction:column; gap:10px; padding:10px; background:#f8fafc; border-radius:16px; }
.sp-ai-bubble { padding:10px 12px; border-radius:14px; max-width:90%; white-space:pre-wrap; font-size:14px; line-height:1.5; }
.sp-ai-bubble.bot { background:#fff; border:1px solid #e5e7eb; align-self:flex-start; }
.sp-ai-bubble.user { background:#0b63ce; color:#fff; align-self:flex-end; }
.sp-ai-bubble.error { color:#b91c1c; }
.sp-ai-form { display:grid; grid-template-columns:1fr auto; gap:10px; margin-top:12px; }
.sp-ai-form textarea { min-height:54px; resize:vertical; border:1px solid #d0d5dd; border-radius:14px; padding:12px; font-family:inherit; }
.sp-ai-form button { border:0; border-radius:14px; background:#ff6b00; color:#fff; font-weight:800; padding:0 18px; }
.sp-page-shell { max-width:1180px; margin:0 auto; padding:32px 20px; }
.sp-page-hero { background:linear-gradient(135deg,#ff6b00,#0b63ce); color:#fff; border-radius:30px; padding:36px; margin-bottom:24px; box-shadow:0 24px 60px rgba(11,99,206,.18); }
.sp-page-hero h1 { margin:8px 0; font-size:clamp(30px,4vw,54px); }
.sp-page-hero p { max-width:760px; opacity:.94; }
.sp-tab-row { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0; }
.sp-tab-row a, .sp-tab-row button { border:1px solid #d0d5dd; background:#fff; border-radius:999px; padding:10px 14px; color:#101828; text-decoration:none; font-weight:700; }
@media (max-width: 720px) { .sp-ai-form { grid-template-columns:1fr; } .sp-page-hero { padding:24px; } }


/* SP WorldTech 2026 International UI/UX Upgrade */
:root {
  --bg: #061225;
  --surface: #ffffff;
  --surface-2: #f4f8ff;
  --surface-3: #eaf2ff;
  --text: #07111f;
  --muted: #40516b;
  --line: #cbd9ec;
  --primary: #0057ff;
  --primary-deep: #0037a8;
  --accent: #00b894;
  --accent-soft: #dffcf5;
  --gold: #ffb703;
  --orange: #ff5c00;
  --purple: #6d28d9;
  --danger: #dc2626;
  --shadow: 0 24px 70px rgba(6, 18, 37, .14);
  --shadow-soft: 0 12px 35px rgba(6, 18, 37, .08);
}
body { background: radial-gradient(circle at top left, rgba(0,87,255,.10), transparent 35%), #f4f8ff; color: var(--text); }
h1,h2,h3,h4,.job-title,.brand,.dashboard-nav a,.summary-card strong,.stat-box strong { letter-spacing: -.035em; color: #07111f; }
p,li,.job-meta,.status-text { color: #34445f; font-weight: 500; }
.primary, .nav-btn.primary, .auth-btn.primary { background: linear-gradient(135deg, #0057ff 0%, #0037a8 55%, #001b52 100%); color:#fff; box-shadow: 0 16px 38px rgba(0,87,255,.28); }
.secondary { border: 1px solid #b9c9e2; color:#07111f; background: linear-gradient(180deg,#fff,#f7fbff); }
.hero-section, .dashboard-hero-banner, .sp-page-hero { background: linear-gradient(135deg, #061225 0%, #063c89 48%, #0057ff 100%) !important; color:#fff; }
.hero-section h1, .hero-section p, .dashboard-hero-banner h1, .dashboard-hero-banner p, .sp-page-hero h1, .sp-page-hero p { color:#fff !important; text-shadow: 0 1px 0 rgba(0,0,0,.18); }
.eyebrow { color:#00ffc8; font-weight: 900; letter-spacing:.08em; }
.eyebrow.dark { color:#0037a8; }
.panel,.sp-dashboard-card,.info-card,.pricing-card,.contact-box,.summary-card,.stat-box,.mini-card,.job-card,.application-card,.ops-calc-card { border: 1px solid rgba(0,87,255,.12); box-shadow: var(--shadow-soft); }
.dashboard-sidebar { background: linear-gradient(180deg, #061225 0%, #0b2450 100%) !important; color:#fff; border-right:0; }
.dashboard-sidebar .brand, .dashboard-sidebar .brand span, .dashboard-sidebar a, .dashboard-sidebar p { color:#fff !important; }
.dashboard-nav a { border-radius: 14px; color:#eaf2ff !important; }
.dashboard-nav a.active, .dashboard-nav a:hover { background: linear-gradient(135deg, #0057ff, #00b894); color:#fff !important; }
.accent-card { background: linear-gradient(135deg, #ffffff, #eaf2ff) !important; border-left: 6px solid #0057ff; color:#07111f !important; }
.accent-card span,.accent-card strong { color:#07111f !important; }
.soft-green { border-left-color:#00b894 !important; }
.soft-gold { border-left-color:#ffb703 !important; }
.soft-purple { border-left-color:#6d28d9 !important; }
.product-card { background: #fff !important; border-left: 6px solid #0057ff; color:#07111f !important; }
.product-green { border-left-color:#00b894 !important; }
.product-gold { border-left-color:#ffb703 !important; }
.product-purple { border-left-color:#6d28d9 !important; }
.product-dark { border-left-color:#061225 !important; }
input,textarea,select { border:1px solid #b9c9e2 !important; border-radius: 14px; background:#fff; color:#07111f; min-height:46px; }
input:focus,textarea:focus,select:focus { outline: 3px solid rgba(0,87,255,.18); border-color:#0057ff !important; }
.platform-status-panel { width:min(1180px, calc(100% - 32px)); margin:22px auto; padding:22px; border-radius:28px; background:linear-gradient(135deg,#fff,#eef5ff); border:1px solid rgba(0,87,255,.16); box-shadow:var(--shadow-soft); }
.platform-status-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:16px; }
.platform-status-head h2 { margin:0 0 6px; font-size: clamp(1.5rem, 2.5vw, 2.2rem); }
.platform-status-head p { margin:0; max-width:850px; }
.role-chip { background:linear-gradient(135deg,#0057ff,#00b894); color:#fff; border-radius:999px; padding:10px 15px; font-weight:900; white-space:nowrap; }
.platform-status-grid { display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap:12px; }
.platform-status-card { background:#fff; border:1px solid #d8e4f5; border-radius:18px; padding:14px; display:grid; gap:5px; }
.platform-status-card strong { color:#07111f; }
.platform-status-card span { font-weight:900; }
.platform-status-card small { color:#53657e; }
.platform-status-card.ready { border-color:rgba(0,184,148,.45); box-shadow: inset 0 0 0 1px rgba(0,184,148,.18); }
.platform-status-card.ready span { color:#047857; }
.platform-status-card.waiting { border-color:rgba(255,183,3,.55); box-shadow: inset 0 0 0 1px rgba(255,183,3,.18); }
.platform-status-card.waiting span { color:#b45309; }
.product-center-strip { width:min(1180px, calc(100% - 32px)); margin: 16px auto 24px; display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:14px; }
.product-center-tile { text-decoration:none; background:linear-gradient(135deg,#061225,#063c89); color:#fff; border-radius:22px; padding:18px; display:grid; gap:5px; min-height:125px; box-shadow:0 18px 45px rgba(6,18,37,.22); }
.product-center-tile:nth-child(2) { background:linear-gradient(135deg,#0f766e,#00b894); }
.product-center-tile:nth-child(3) { background:linear-gradient(135deg,#ff5c00,#ff8a00); }
.product-center-tile:nth-child(4) { background:linear-gradient(135deg,#3b0764,#6d28d9); }
.product-center-tile span { font-weight:900; font-size:1.15rem; }
.product-center-tile strong { color:#fff; font-size:.95rem; }
.product-center-tile small { color:rgba(255,255,255,.82); font-weight:600; }
.api-waiting-box { padding:14px 16px; border-radius:16px; background:#fff7ed; border:1px solid #fed7aa; color:#9a3412; font-weight:700; }
.api-ready-box { padding:14px 16px; border-radius:16px; background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46; font-weight:700; }
.sp-tab-row a { background: rgba(255,255,255,.14); color:#fff; border:1px solid rgba(255,255,255,.24); font-weight:900; }
@media (max-width: 980px) { .platform-status-grid,.product-center-strip { grid-template-columns: repeat(2, minmax(0,1fr)); } .platform-status-head { flex-direction:column; } }
@media (max-width: 640px) { .platform-status-grid,.product-center-strip { grid-template-columns: 1fr; } .platform-status-panel { padding:16px; border-radius:22px; } h1 { font-size: clamp(2rem, 9vw, 3rem) !important; } }


/* SP WorldTech secure auth + dashboard top buttons update */

/* SEO/contact footer polish */
.footer-contact-card {
  display: grid;
  gap: 8px;
}
.footer-contact-card p {
  margin: 0;
  color: rgba(226, 232, 240, 0.82);
  line-height: 1.6;
}
.footer-contact-card a {
  color: #ffffff;
  font-weight: 800;
  text-decoration: none;
}
.footer-contact-card a:hover {
  text-decoration: underline;
}
#official-contact-details a,
#about-seo-company-summary a {
  color: var(--primary, #0b66ff);
  font-weight: 800;
}

/* Final professional navigation cleanup */
.auth-page .auth-modern-shell{padding-top:32px;}
.sp-wallet-nav a[href="./dashboard.html"]{
  background:linear-gradient(135deg,rgba(255,106,0,.10),rgba(9,95,196,.10));
  color:#062b6f;
}

/* Professional live authentication pages: clear labels, no calculator-style UI */
.sp-auth-live-page {
  margin: 0;
  min-height: 100vh;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 15% 15%, rgba(255,106,0,.20), transparent 28%),
    radial-gradient(circle at 85% 10%, rgba(20,184,166,.22), transparent 30%),
    linear-gradient(135deg, #061a34 0%, #0b3b78 45%, #0b63ce 100%);
  color: #0f172a;
}
.sp-auth-live-shell {
  width: min(1180px, calc(100% - 40px));
  min-height: 100vh;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(380px, 480px);
  gap: 34px;
  align-items: center;
  padding: 34px 0;
  box-sizing: border-box;
}
.sp-auth-live-brand {
  color: #fff;
  padding: 38px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 32px;
  background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.06));
  box-shadow: 0 30px 90px rgba(2,6,23,.26);
  backdrop-filter: blur(12px);
}
.sp-auth-brand-line {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  text-decoration: none;
  font-weight: 900;
  font-size: 1.12rem;
  margin-bottom: 28px;
}
.sp-auth-brand-line img { width: 54px; height: 54px; object-fit: contain; border-radius: 16px; background: rgba(255,255,255,.12); padding: 4px; }
.sp-auth-eyebrow { margin: 0 0 12px; color: #22f0d3; font-weight: 950; letter-spacing: .12em; text-transform: uppercase; font-size: .82rem; }
.sp-auth-eyebrow.dark { color: #0b63ce; }
.sp-auth-live-brand h1 {
  color: #fff;
  font-size: clamp(2.2rem, 5vw, 4.35rem);
  line-height: 1.02;
  margin: 0 0 18px;
  letter-spacing: -.05em;
}
.sp-auth-lead { color: #e0f2fe; font-size: 1.08rem; line-height: 1.75; margin: 0; max-width: 720px; font-weight: 650; }
.sp-auth-role-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.sp-auth-role-grid div { border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.12); border-radius: 18px; padding: 15px; }
.sp-auth-role-grid strong { display: block; font-size: 1rem; color: #fff; margin-bottom: 5px; }
.sp-auth-role-grid span { color: #dbeafe; font-size: .86rem; font-weight: 700; line-height: 1.45; }
.sp-auth-live-panel {
  background: #fff;
  border-radius: 30px;
  padding: 32px;
  box-shadow: 0 32px 90px rgba(2,6,23,.30);
  border: 1px solid rgba(255,255,255,.45);
}
.sp-live-form { display: grid; gap: 12px; }
.sp-form-header { margin-bottom: 8px; }
.sp-form-header h2 { margin: 0 0 8px; color: #061a34; font-size: 2rem; letter-spacing: -.035em; }
.sp-form-header p:not(.sp-auth-eyebrow) { margin: 0; color: #52627a; font-weight: 700; line-height: 1.55; }
.sp-live-form label { font-size: .88rem; font-weight: 900; color: #0f172a; margin-top: 3px; }
.sp-live-form input,
.sp-live-form select {
  width: 100%;
  box-sizing: border-box;
  border: 1.5px solid #c9d7ea;
  background: #f8fbff;
  border-radius: 15px;
  padding: 14px 15px;
  font: inherit;
  font-weight: 750;
  color: #0f172a;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.sp-live-form input::placeholder { color: #7b8ca6; opacity: 1; }
.sp-live-form input:focus,
.sp-live-form select:focus { border-color: #0b63ce; background: #fff; box-shadow: 0 0 0 4px rgba(11,99,206,.12); }
.sp-auth-primary,
.sp-auth-secondary {
  width: 100%;
  border: 0;
  border-radius: 15px;
  padding: 15px 18px;
  font: inherit;
  font-weight: 950;
  cursor: pointer;
  margin-top: 6px;
}
.sp-auth-primary { color: #fff; background: linear-gradient(135deg, #ff6a00 0%, #0b63ce 100%); box-shadow: 0 16px 35px rgba(11,99,206,.24); }
.sp-auth-secondary { color: #0b63ce; background: #eef6ff; }
.sp-auth-bottom-links {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 18px;
  font-weight: 850;
  color: #334155;
}
.sp-auth-bottom-links a,
.sp-auth-home-link { color: #0b63ce; font-weight: 950; text-decoration: none; }
.sp-auth-home-link { display: block; text-align: center; margin-top: 14px; }
.sp-auth-live-page .status-text { min-height: 20px; margin: 6px 0 0; font-weight: 850; color: #047857; }
.sp-auth-live-page .status-text.error { color: #b91c1c !important; }
.signup-layout { grid-template-columns: minmax(0, .92fr) minmax(420px, 530px); align-items: start; }
.signup-layout .sp-auth-live-brand,
.signup-layout .sp-auth-live-panel { margin-top: 10px; }
@media (max-width: 980px) {
  .sp-auth-live-shell,
  .signup-layout { grid-template-columns: 1fr; width: min(760px, calc(100% - 28px)); align-items: start; }
  .sp-auth-live-brand { padding: 26px; border-radius: 24px; }
  .sp-auth-live-panel { padding: 24px; border-radius: 24px; }
}
@media (max-width: 560px) {
  .sp-auth-role-grid { grid-template-columns: 1fr; }
  .sp-auth-live-brand h1 { font-size: 2.15rem; }
  .sp-form-header h2 { font-size: 1.65rem; }
}

/* Public SEO course links */
.seo-course-links{margin-top:28px}
.seo-course-links>h3{font-size:1.55rem;margin-bottom:8px;color:#0f172a}
.seo-course-links>p{max-width:820px;color:#475569;margin-bottom:18px}
.seo-course-links .info-card{text-decoration:none}

/* === SP WorldTech live-app polish: professional contrast + compact dashboards === */
/* Fix previous broad heading rules that made dark hero text appear black. */
.hero-section h1,
.hero-section h2,
.hero-section p,
.hero-section li,
.inner-hero h1,
.inner-hero h2,
.inner-hero p,
.inner-hero li,
.client-payment-hero h1,
.client-payment-hero h2,
.client-payment-hero p,
.dashboard-hero-banner h1,
.dashboard-hero-banner h2,
.dashboard-hero-banner p,
.staff-hero h1,
.staff-hero h2,
.staff-hero h3,
.staff-hero p,
.sp-page-hero h1,
.sp-page-hero h2,
.sp-page-hero p,
.banking-public-hero h1,
.banking-public-hero h2,
.banking-public-hero p {
  color: #ffffff !important;
  text-shadow: 0 2px 18px rgba(2, 6, 23, .32);
}
.inner-hero .eyebrow,
.hero-section .eyebrow,
.client-payment-hero .eyebrow,
.staff-hero .eyebrow,
.dashboard-hero-banner .eyebrow {
  color: #22f0d3 !important;
}
.hero-section .secondary,
.inner-hero .secondary,
.client-payment-hero .secondary,
.dashboard-hero-banner .secondary {
  color: #07111f !important;
  text-shadow: none;
}
.panel h1, .panel h2, .panel h3,
.info-card h1, .info-card h2, .info-card h3,
.contact-box h1, .contact-box h2, .contact-box h3,
.pricing-card h1, .pricing-card h2, .pricing-card h3,
.section-heading h1, .section-heading h2, .section-heading h3,
.section-title,
.product-feature h3,
.process-card h3,
.team-hiring-card h3 {
  color: #07111f !important;
  text-shadow: none;
}
.panel p, .info-card p, .contact-box p, .pricing-card p, .section-lead, .product-feature p, .process-card p, .team-hiring-card p {
  color: #334155 !important;
  text-shadow: none;
}
input, textarea, select {
  color: #0f172a !important;
}

/* Compact staff/admin dashboard layout. */
.staff-layout {
  width: min(1120px, calc(100% - 24px));
  padding: 16px 0 40px;
  gap: 14px;
}
.staff-hero {
  padding: 18px;
  border-radius: 22px;
}
.staff-hero-grid {
  gap: 16px;
}
.staff-hero-grid h1 {
  font-size: clamp(1.6rem, 3vw, 2.6rem) !important;
}
.hero-side-card,
.staff-auth-box,
.staff-info-box {
  padding: 14px;
  border-radius: 16px;
}

/* Compact Banking dashboard. */
.sp-wallet-sidebar {
  width: 220px;
}
.sp-wallet-brand {
  height: 64px;
  padding: 0 18px;
  font-size: 18px;
}
.sp-wallet-brand img {
  width: 34px;
  height: 34px;
}
.sp-wallet-nav {
  padding: 10px 12px;
  gap: 4px;
}
.sp-wallet-nav button,
.sp-wallet-nav a {
  padding: 10px 8px;
  border-radius: 10px;
  font-size: 13px;
  gap: 10px;
}
.sp-wallet-main {
  margin-left: 220px;
}
.sp-wallet-topbar {
  height: 64px;
  padding: 0 20px;
}
.sp-wallet-content,
.sp-card-hero,
.sp-bill-grid,
.sp-business-list,
.sp-section-card {
  padding: 18px;
}
.sp-bank-card,
.sp-section-card,
.sp-centered-card,
.sp-bill-panel,
.sp-business-list {
  padding: 18px;
  border-radius: 18px;
}
.sp-card-hero h1,
.sp-centered-card h1,
.sp-bill-panel h1,
.sp-business-list h1 {
  font-size: clamp(1.35rem, 2.2vw, 2.1rem) !important;
}

/* === CLIENT REVIEW FIX: professional public navigation, UserAccess pages, and dashboard polish === */
:root{
  --spwt-header-height: 82px;
  --spwt-ink: #07111f;
  --spwt-blue: #0057ff;
  --spwt-blue-deep: #0037a8;
  --spwt-green: #00b894;
  --spwt-soft: #f6f9fd;
}
.site-header{
  min-height: var(--spwt-header-height);
  background: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid rgba(203,217,236,.9) !important;
  box-shadow: 0 12px 34px rgba(6,18,37,.07) !important;
}
.nav-wrap{
  min-height: var(--spwt-header-height) !important;
  justify-content: flex-start !important;
  gap: 26px !important;
}
.brand-link{ flex: 0 0 auto; }
.brand-logo{
  width: 58px !important;
  height: 58px !important;
  border-radius: 16px !important;
  padding: 4px !important;
  background: #061225 !important;
  box-shadow: 0 10px 28px rgba(0,87,255,.20) !important;
}
.main-nav{
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(10px, 1.35vw, 20px) !important;
  flex-wrap: nowrap !important;
  white-space: nowrap;
}
.main-nav a{
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 4px !important;
  color: #07111f !important;
  font-size: clamp(.88rem, .92vw, 1rem) !important;
  font-weight: 850 !important;
  letter-spacing: -.025em;
  line-height: 1;
}
.main-nav a::after{
  bottom: 4px !important;
  height: 3px !important;
}
.main-nav a.active,
.main-nav a:hover,
.main-nav a:focus{ color: var(--spwt-blue) !important; }
.main-nav .nav-btn,
.main-nav .plain-anchor-btn.nav-btn{
  margin-left: 4px;
  min-height: 50px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--spwt-blue), var(--spwt-blue-deep)) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px rgba(0,87,255,.24) !important;
  border: 0 !important;
}
.main-nav .nav-btn::after{ display:none !important; }
.mobile-menu{
  padding: 12px 18px 18px !important;
  border-top: 1px solid #e5edf8;
  box-shadow: 0 18px 45px rgba(6,18,37,.10);
}
.mobile-menu a{
  padding: 12px 14px;
  border-radius: 14px;
  background: #f8fbff;
  border: 1px solid #e5edf8;
}
.mobile-menu .nav-btn{ color:#fff !important; background:linear-gradient(135deg,var(--spwt-blue),var(--spwt-green)); }

/* Professional UserAccess login/signup pages */
.sp-auth-live-page.compact-auth{
  min-height: 100vh;
  background:
    radial-gradient(circle at 10% 10%, rgba(0,87,255,.22), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(0,184,148,.20), transparent 28%),
    linear-gradient(135deg, #061225 0%, #082a5a 48%, #0057ff 100%) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 16px;
}
.sp-auth-single{
  width: min(1120px, 100%);
  margin: 0 auto;
  min-height: auto;
  display: grid;
  place-items: center;
}
.sp-auth-single::before{
  content: 'UserAccess';
  display: block;
  color: rgba(255,255,255,.92);
  font-size: clamp(2.2rem, 5vw, 4.2rem);
  font-weight: 950;
  letter-spacing: -.06em;
  line-height: .95;
  text-align: center;
  margin-bottom: 20px;
  text-shadow: 0 16px 50px rgba(0,0,0,.26);
}
.sp-auth-single::after{
  content: 'Login or create your account to access jobs, wallet, academy, banking requests, and support.';
  display: block;
  order: -1;
  max-width: 720px;
  margin: 0 auto 14px;
  color: #dbeafe;
  text-align: center;
  font-weight: 700;
  line-height: 1.55;
}
.sp-auth-single.signup-single::before{ content: 'Create UserAccess Account'; }
.sp-auth-single.signup-single::after{ content: 'Register once, then use the same account for jobs, academy, wallet, banking requests, and support.'; }
.sp-auth-live-panel{
  width: min(520px, 100%) !important;
  margin: 0 auto !important;
  padding: clamp(24px, 4vw, 34px) !important;
  border-radius: 30px !important;
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(255,255,255,.65) !important;
  box-shadow: 0 34px 100px rgba(2,6,23,.34) !important;
}
.signup-single .sp-auth-live-panel{ width: min(760px, 100%) !important; }
.sp-auth-brand-line.center{
  justify-content: center;
  width: 100%;
  margin: 0 0 18px !important;
}
.sp-auth-brand-line.center img{
  width: 70px !important;
  height: 70px !important;
  border-radius: 20px !important;
  background: #061225 !important;
  padding: 6px !important;
  box-shadow: 0 16px 40px rgba(0,87,255,.25) !important;
}
.sp-form-header.center{ text-align: center; margin-bottom: 18px !important; }
.sp-form-header.center h2{
  font-size: clamp(1.8rem, 4vw, 2.45rem) !important;
  color: #061225 !important;
  margin-bottom: 8px !important;
}
.sp-form-header.center p{
  margin: 0 auto !important;
  color: #52627a !important;
  max-width: 520px;
  font-weight: 650;
  line-height: 1.55;
}
.sp-live-form{ gap: 13px !important; }
.sp-live-form label{ color:#07111f !important; font-weight:900 !important; }
.sp-live-form input,
.sp-live-form select{
  min-height: 52px !important;
  border-radius: 16px !important;
  border: 1.5px solid #c7d6ea !important;
  background: #f8fbff !important;
}
.sp-auth-primary{
  min-height: 56px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #0057ff 0%, #0037a8 65%, #00b894 100%) !important;
  box-shadow: 0 18px 42px rgba(0,87,255,.26) !important;
}
.sp-auth-secondary{
  min-height: 52px !important;
  border-radius: 16px !important;
}
.auth-two-col{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.sp-auth-bottom-links{
  margin-top: 18px !important;
  padding-top: 18px;
  border-top: 1px solid #e5edf8;
}
.sp-auth-bottom-links a{ color: var(--spwt-blue) !important; }

/* Cleaner dashboard pages without changing roles or backend logic */
.dashboard-page .app-shell{
  grid-template-columns: 258px minmax(0, 1fr) !important;
  background: #f4f8ff;
}
.dashboard-sidebar{
  padding: 22px 18px !important;
  background: linear-gradient(180deg, #061225 0%, #081f42 60%, #0a3a75 100%) !important;
  box-shadow: 18px 0 50px rgba(6,18,37,.12);
}
.dashboard-sidebar .brand-logo{ width: 50px !important; height: 50px !important; }
.dashboard-nav{ gap: 8px !important; }
.dashboard-nav a{
  min-height: 46px;
  display: flex;
  align-items: center;
  padding: 12px 14px !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.07) !important;
  color: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  font-size: .94rem;
  letter-spacing: -.02em;
}
.dashboard-nav a.active,
.dashboard-nav a:hover{
  background: linear-gradient(135deg, #0057ff, #00b894) !important;
  color: #fff !important;
  box-shadow: 0 16px 36px rgba(0,87,255,.26);
}
.dashboard-main{ padding: clamp(18px, 2.6vw, 34px) !important; }
.dashboard-topbar{
  border-radius: 28px !important;
  padding: clamp(24px, 4vw, 42px) !important;
  min-height: 300px !important;
}
.dashboard-topbar h1{ color:#fff !important; max-width: 820px; }
.dashboard-content{ gap: 20px !important; }
.summary-card,
.panel,
.stat-box,
.mini-card,
.job-card,
.application-card{
  border-radius: 22px !important;
  border: 1px solid rgba(0,87,255,.12) !important;
  box-shadow: 0 18px 46px rgba(6,18,37,.08) !important;
}
.dashboard-summary-grid{ grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important; }
.advanced-dashboard-grid,
.dashboard-two-column{ gap: 18px !important; }
.staff-layout{
  width: min(1180px, calc(100% - 28px)) !important;
  padding: 22px 0 50px !important;
}
.staff-hero,
.staff-auth-box,
.panel{
  border-radius: 24px !important;
}
.staff-hero{ padding: 24px !important; }
.sp-wallet-main{ background: #f4f8ff !important; }
.sp-wallet-topbar{
  background: rgba(255,255,255,.94) !important;
  border-bottom: 1px solid #e5edf8 !important;
  box-shadow: 0 12px 32px rgba(6,18,37,.06) !important;
}
.sp-wallet-sidebar{ background: linear-gradient(180deg,#061225,#0a3a75) !important; }

@media (min-width: 981px) and (max-width: 1280px){
  .container{ width: min(100% - 40px, 1180px) !important; }
  .main-nav{ gap: 12px !important; }
  .main-nav a{ font-size: .88rem !important; }
  .main-nav .nav-btn{ padding: 0 18px !important; }
}
@media (max-width: 980px){
  .nav-wrap{ justify-content: space-between !important; }
  .main-nav{ display:none !important; }
  .mobile-menu-btn{ display:inline-flex !important; }
  .sp-auth-live-page.compact-auth{ padding: 22px 12px; align-items:flex-start; }
  .sp-auth-single::before{ font-size: 2.3rem; margin-top: 10px; }
  .auth-two-col{ grid-template-columns: 1fr; }
  .dashboard-page .app-shell{ grid-template-columns: 1fr !important; }
  .dashboard-sidebar{ position: relative !important; height: auto !important; }
  .dashboard-nav{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .dashboard-topbar{ min-height: auto !important; }
}
@media (max-width: 560px){
  .dashboard-nav{ grid-template-columns: 1fr !important; }
  .brand-logo{ width: 50px !important; height: 50px !important; }
  .sp-auth-live-panel{ padding: 22px 18px !important; border-radius: 24px !important; }
}

/* === CLIENT FINAL FIX: compact UserAccess screens + SP WorldTech brand text beside logo === */
:root{ --spwt-header-height: 72px; }
.site-header .nav-wrap{
  min-height: var(--spwt-header-height) !important;
  gap: 18px !important;
}
.site-header .brand-link{
  width: auto !important;
  min-width: 168px !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  text-align: left !important;
  line-height: 1 !important;
}
.site-header .brand-link::after{
  content: 'SP WorldTech';
  display: inline-block;
  color: #07111f;
  font-size: 1.02rem;
  font-weight: 950;
  letter-spacing: -.045em;
  white-space: nowrap;
}
.site-header .brand-logo{
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px !important;
  padding: 3px !important;
}
.site-header .main-nav{
  justify-content: flex-end !important;
  gap: clamp(8px, 1vw, 15px) !important;
}
.site-header .main-nav a{
  min-height: 36px !important;
  padding: 7px 2px !important;
  font-size: clamp(.82rem, .86vw, .96rem) !important;
}
.site-header .main-nav .nav-btn,
.site-header .main-nav .plain-anchor-btn.nav-btn{
  min-height: 44px !important;
  padding: 0 20px !important;
}

/* Make login/register pages small, centered and professional */
.sp-auth-live-page.compact-auth{
  min-height: 100vh !important;
  padding: 18px 12px !important;
  align-items: center !important;
  overflow-x: hidden !important;
}
.sp-auth-single{
  width: min(620px, 100%) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}
.sp-auth-single.signup-single{ width: min(720px, 100%) !important; }
.sp-auth-single::before{
  content: 'SP WorldTech UserAccess' !important;
  font-size: clamp(1.25rem, 2.4vw, 1.9rem) !important;
  line-height: 1.05 !important;
  margin: 0 0 2px !important;
  letter-spacing: -.045em !important;
  color: #fff !important;
  text-shadow: 0 10px 28px rgba(0,0,0,.24) !important;
}
.sp-auth-single.signup-single::before{ content: 'SP WorldTech Register' !important; }
.sp-auth-single::after{
  content: 'One account for jobs, academy, wallet, banking and support.' !important;
  order: 0 !important;
  font-size: .86rem !important;
  line-height: 1.35 !important;
  margin: 0 0 6px !important;
  max-width: 480px !important;
  color: #dbeafe !important;
  font-weight: 700 !important;
}
.sp-auth-single.signup-single::after{ content: 'Create one account and continue with the existing backend role system.' !important; }
.sp-auth-live-panel{
  width: min(420px, 100%) !important;
  padding: 18px 20px !important;
  border-radius: 22px !important;
  box-shadow: 0 22px 70px rgba(2,6,23,.30) !important;
}
.signup-single .sp-auth-live-panel{ width: min(590px, 100%) !important; }
.sp-auth-brand-line.center{
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 0 auto 10px !important;
  text-decoration: none !important;
}
.sp-auth-brand-line.center::after{
  content: 'SP WorldTech';
  color: #07111f;
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: -.045em;
  white-space: nowrap;
}
.sp-auth-brand-line.center img{
  width: 48px !important;
  height: 48px !important;
  border-radius: 14px !important;
  padding: 4px !important;
}
.sp-form-header.center{ margin-bottom: 10px !important; }
.sp-form-header.center h2{
  font-size: clamp(1.25rem, 2.8vw, 1.65rem) !important;
  line-height: 1.08 !important;
  margin: 0 0 5px !important;
}
.sp-form-header.center p{
  max-width: 440px !important;
  font-size: .84rem !important;
  line-height: 1.35 !important;
  font-weight: 650 !important;
}
.sp-live-form{ gap: 8px !important; }
.sp-live-form label{
  font-size: .78rem !important;
  margin-top: 0 !important;
}
.sp-live-form input,
.sp-live-form select{
  min-height: 42px !important;
  padding: 10px 13px !important;
  border-radius: 12px !important;
  font-size: .88rem !important;
}
.sp-auth-primary{
  min-height: 44px !important;
  border-radius: 14px !important;
  margin-top: 2px !important;
  font-size: .92rem !important;
}
.sp-auth-secondary{
  min-height: 42px !important;
  border-radius: 12px !important;
  font-size: .9rem !important;
}
.auth-two-col{ gap: 10px !important; }
.sp-auth-bottom-links{
  margin-top: 10px !important;
  padding-top: 10px !important;
  font-size: .88rem !important;
}
.sp-auth-live-page .status-text{ min-height: 16px !important; margin: 3px 0 0 !important; font-size: .82rem !important; }

@media (max-width: 980px){
  .site-header .brand-link{ width: auto !important; min-width: 138px !important; gap: 8px !important; }
  .site-header .brand-logo{ width: 40px !important; height: 40px !important; }
  .site-header .brand-link::after{ font-size: .88rem !important; }
  .sp-auth-live-page.compact-auth{ align-items: flex-start !important; padding-top: 14px !important; }
  .sp-auth-single::before{ margin-top: 0 !important; }
}
@media (max-width: 560px){
  .sp-auth-live-panel{ padding: 16px 14px !important; border-radius: 18px !important; }
  .signup-single .sp-auth-live-panel{ width: 100% !important; }
  .auth-two-col{ grid-template-columns: 1fr !important; }
}

/* === FINAL CLIENT POLISH: brand beside logo, stronger nav text, compact register like login === */
.site-header .nav-wrap{
  min-height: 74px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
}
.site-header .brand-link,
.site-header .brand{
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 150px !important;
  max-width: 170px !important;
  text-align: left !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}
.site-header .brand-link::after{
  content: 'SP WorldTech' !important;
  display: inline-block !important;
  font-size: 1.04rem !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: -.045em !important;
  color: #07111f !important;
  margin-left: 0 !important;
  white-space: nowrap !important;
}
.site-header .brand-logo{
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  object-fit: contain !important;
}
.site-header .main-nav{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
  margin-left: auto !important;
}
.site-header .main-nav a:not(.nav-btn){
  font-size: 1.02rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  padding: 10px 0 !important;
  white-space: nowrap !important;
}
.site-header .main-nav .nav-btn,
.site-header .main-nav .plain-anchor-btn.nav-btn{
  font-size: 1.02rem !important;
  font-weight: 900 !important;
  min-height: 46px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
}

/* Login and register must stay compact like the same professional access screen */
.sp-auth-live-page.compact-auth{
  min-height: 100vh !important;
  padding: 14px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow-x: hidden !important;
}
.sp-auth-single,
.sp-auth-single.signup-single{
  width: min(440px, 100%) !important;
  max-width: 440px !important;
  gap: 6px !important;
  margin: 0 auto !important;
}
.sp-auth-single::before,
.sp-auth-single.signup-single::before{
  content: 'SP WorldTech UserAccess' !important;
  font-size: clamp(1.05rem, 1.8vw, 1.35rem) !important;
  line-height: 1.05 !important;
  margin: 0 0 2px !important;
  letter-spacing: -.035em !important;
}
.sp-auth-single::after,
.sp-auth-single.signup-single::after{
  content: 'Secure access for jobs, academy, wallet, banking and support.' !important;
  font-size: .78rem !important;
  max-width: 380px !important;
  margin: 0 0 4px !important;
  line-height: 1.3 !important;
}
.sp-auth-live-panel,
.signup-single .sp-auth-live-panel{
  width: min(420px, 100%) !important;
  max-width: 420px !important;
  padding: 16px 18px !important;
  border-radius: 20px !important;
}
.signup-single .sp-auth-brand-line.center,
.sp-auth-brand-line.center{
  margin-bottom: 8px !important;
  gap: 8px !important;
}
.signup-single .sp-auth-brand-line.center img,
.sp-auth-brand-line.center img{
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px !important;
}
.signup-single .sp-auth-brand-line.center::after,
.sp-auth-brand-line.center::after{
  font-size: .98rem !important;
}
.signup-single .sp-form-header.center,
.sp-form-header.center{ margin-bottom: 8px !important; }
.signup-single .sp-form-header.center h2,
.sp-form-header.center h2{
  font-size: 1.35rem !important;
  line-height: 1.08 !important;
  margin-bottom: 4px !important;
}
.signup-single .sp-form-header.center p,
.sp-form-header.center p{
  font-size: .78rem !important;
  line-height: 1.3 !important;
  max-width: 360px !important;
}
.signup-single .sp-live-form,
.sp-live-form{ gap: 7px !important; }
.signup-single .auth-two-col{
  grid-template-columns: 1fr !important;
  gap: 7px !important;
}
.signup-single .sp-live-form label,
.sp-live-form label{
  font-size: .76rem !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
}
.signup-single .sp-live-form input,
.signup-single .sp-live-form select,
.sp-live-form input,
.sp-live-form select{
  min-height: 38px !important;
  padding: 8px 12px !important;
  border-radius: 12px !important;
  font-size: .84rem !important;
}
.signup-single .sp-auth-primary,
.sp-auth-primary{
  min-height: 40px !important;
  border-radius: 12px !important;
  font-size: .88rem !important;
  margin-top: 2px !important;
}
.signup-single .sp-auth-bottom-links,
.sp-auth-bottom-links{
  margin-top: 8px !important;
  padding-top: 8px !important;
  font-size: .84rem !important;
}

@media (max-width: 1180px){
  .site-header .brand-link{ min-width: 136px !important; max-width: 148px !important; gap: 7px !important; }
  .site-header .brand-logo{ width: 40px !important; height: 40px !important; flex-basis: 40px !important; }
  .site-header .brand-link::after{ font-size: .92rem !important; }
  .site-header .main-nav{ gap: 9px !important; }
  .site-header .main-nav a:not(.nav-btn){ font-size: .91rem !important; }
  .site-header .main-nav .nav-btn{ font-size: .91rem !important; padding: 0 16px !important; }
}
@media (max-width: 980px){
  .site-header .main-nav{ display: none !important; }
  .site-header .nav-wrap{ justify-content: space-between !important; }
  .site-header .brand-link{ max-width: none !important; }
}
@media (max-height: 760px){
  .sp-auth-live-page.compact-auth{ align-items: flex-start !important; padding-top: 10px !important; }
  .sp-auth-single::before,
  .sp-auth-single::after{ display: none !important; }
  .sp-auth-live-panel,
  .signup-single .sp-auth-live-panel{ padding: 14px 16px !important; }
  .signup-single .sp-auth-brand-line.center img,
  .sp-auth-brand-line.center img{ width: 38px !important; height: 38px !important; }
  .signup-single .sp-form-header.center h2,
  .sp-form-header.center h2{ font-size: 1.2rem !important; }
  .signup-single .sp-form-header.center p,
  .sp-form-header.center p{ display: none !important; }
  .signup-single .sp-live-form input,
  .signup-single .sp-live-form select,
  .sp-live-form input,
  .sp-live-form select{ min-height: 35px !important; padding-top: 7px !important; padding-bottom: 7px !important; }
}


/* === 2026-07-04 CLIENT ZIP PATCH: CEO image, founder photo, full dashboard panels === */
.ceo-story-card{
  grid-template-columns: minmax(230px, 360px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(22px, 4vw, 42px) !important;
}
.ceo-story-image-wrap{
  width: min(100%, 360px) !important;
  justify-self: center !important;
}
.ceo-story-photo{
  width: 100% !important;
  max-height: 390px !important;
  object-fit: cover !important;
  border-radius: 26px !important;
  box-shadow: 0 18px 46px rgba(6,18,37,.16) !important;
  border: 1px solid rgba(0,87,255,.12) !important;
  background: #061225 !important;
}
.founder-photo-card{
  width: min(100%, 320px) !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background: #061225 !important;
  border: 1px solid rgba(0,87,255,.16) !important;
  box-shadow: 0 18px 48px rgba(6,18,37,.14) !important;
  margin: 18px 0 22px !important;
}
.founder-photo{
  display:block !important;
  width:100% !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
}
.founder-photo-caption{
  padding: 13px 16px !important;
  color:#fff !important;
  font-weight: 900 !important;
  background: linear-gradient(135deg,#061225,#0057ff) !important;
}
.team-placeholder.team-photo{ padding:0 !important; overflow:hidden !important; background:#061225 !important; }
.team-placeholder.team-photo img{ width:100% !important; height:100% !important; object-fit:cover !important; display:block !important; }

.dashboard-page .app-shell{
  grid-template-columns: 258px minmax(0, 1fr) !important;
  width: 100% !important;
}
.dashboard-main.dashboard-full-main{
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}
.dashboard-content,
.dashboard-content > .dashboard-two-column,
.dashboard-content > #overview,
.dashboard-switch-panel,
#dashboardOverviewPanel,
#jobs-panel,
#academy-panel,
#wallet-panel,
#products-panel,
#applications-panel,
#support-panel{
  width: 100% !important;
  max-width: none !important;
}
.dashboard-two-column{
  grid-template-columns: 1fr !important;
  width: 100% !important;
}
.dashboard-two-column > .panel{
  width: 100% !important;
  max-width: none !important;
}
#products-panel .product-stack{
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)) !important;
  gap: 16px !important;
}
#products-panel .product-card{
  min-height: 92px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
.product-application-form.product-request-form{
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 13px !important;
}
.product-application-form.product-request-form .product-submit-btn{
  grid-column: 1 / -1 !important;
}
.dashboard-sidebar{
  min-height: 100vh !important;
}
.dashboard-sidebar-bottom{
  margin-top: auto !important;
  padding-top: 12px !important;
}
.dashboard-logout-link{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height: 48px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg,#dc2626,#b91c1c) !important;
  color:#fff !important;
  font-weight: 950 !important;
  text-decoration:none !important;
  box-shadow: 0 14px 32px rgba(185,28,28,.25) !important;
}
.dashboard-hero-actions{ align-items:flex-end !important; }
.dashboard-hero-actions .danger{ display:none !important; }
.sidebar-card{ margin-top: 12px !important; }
@media (max-width: 1100px){
  .ceo-story-card{ grid-template-columns: 1fr !important; }
  .ceo-story-image-wrap{ width:min(100%, 330px) !important; }
  .dashboard-page .app-shell{ grid-template-columns: 1fr !important; }
  .dashboard-sidebar{ min-height: auto !important; height:auto !important; position:relative !important; }
  .dashboard-sidebar-bottom{ margin-top: 8px !important; }
}
@media (max-width: 640px){
  .ceo-story-image-wrap,.founder-photo-card{ width:100% !important; }
  #products-panel .product-stack{ grid-template-columns: 1fr !important; }
}

/* SP WorldTech official logo update — 2026-07-08 */
.site-header .brand-logo,
.dashboard-sidebar .brand-logo {
  object-fit: contain !important;
  background: #07120a;
  border-radius: 14px !important;
  box-shadow: 0 0 0 1px rgba(172,255,0,.35), 0 6px 20px rgba(126,255,0,.18);
}
.footer-logo,
.auth-logo-img {
  object-fit: contain !important;
  background: #07120a;
  border-radius: 12px !important;
}


/* Professional homepage banking card showcase */
.bank-card-showcase{background:linear-gradient(135deg,#f7f9ff 0%,#eef5ff 100%)}
.bank-card-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.bank-feature-list{display:grid;gap:12px;margin:24px 0}.bank-feature-list>div{display:grid;gap:4px;padding:14px 16px;border:1px solid rgba(15,45,95,.1);border-radius:14px;background:#fff}.bank-feature-list span{color:#5d6b82;font-size:.94rem}
.premium-bank-card{position:relative;overflow:hidden;min-height:270px;padding:30px;border-radius:26px;color:#fff;background:linear-gradient(135deg,#071936,#164ea5 58%,#2b7cff);box-shadow:0 28px 60px rgba(8,35,82,.28);display:flex;flex-direction:column;justify-content:space-between}.premium-bank-card:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-110px;background:rgba(255,255,255,.12)}.premium-bank-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;left:-100px;bottom:-140px;background:rgba(255,200,52,.18)}
.card-top,.card-bottom{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.card-brand{font-weight:900;letter-spacing:.1em}.card-chip{width:48px;height:36px;border-radius:8px;background:linear-gradient(135deg,#f7d36a,#b88619);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}.card-number{position:relative;z-index:1;font-size:1.45rem;letter-spacing:.12em;font-weight:700}.card-bottom small{display:block;opacity:.7;font-size:.65rem;letter-spacing:.08em;margin-bottom:4px}.card-bottom strong{font-size:.82rem;letter-spacing:.04em}.card-network{font-weight:900;font-style:italic;align-self:flex-end}
@media(max-width:850px){.bank-card-grid{grid-template-columns:1fr}.premium-bank-card{min-height:230px}.card-number{font-size:1.12rem}}


/* 2026-10-09: requested single continuous public navigation bar */
.site-header .nav-wrap{
  display:flex !important;
  align-items:center !important;
  gap: clamp(10px, 1.2vw, 22px) !important;
  width:100% !important;
  box-sizing:border-box !important;
  padding-inline: clamp(16px, 2.5vw, 42px) !important;
  flex-wrap:nowrap !important;
}
.site-header .brand-link,
.site-header .brand{
  flex:0 0 auto !important;
  min-width:0 !important;
  max-width:220px !important;
}
.site-header .main-nav{
  flex:1 1 auto !important;
  min-width:0 !important;
  width:auto !important;
  margin-left:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:0 !important;
  flex-wrap:nowrap !important;
  padding:8px 10px !important;
  border-radius:18px !important;
  background:#0758b8 !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}
.site-header .main-nav a,
.site-header .main-nav a:not(.nav-btn),
.site-header .main-nav .nav-btn,
.site-header .main-nav .plain-anchor-btn.nav-btn{
  flex:0 1 auto !important;
  min-width:0 !important;
  min-height:44px !important;
  height:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px clamp(5px, .65vw, 13px) !important;
  margin:0 !important;
  border:0 !important;
  border-radius:8px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  font-size:clamp(.76rem, .92vw, 1rem) !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  text-align:center !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus,
.site-header .main-nav a.active{
  color:#fff !important;
  background:rgba(255,255,255,.16) !important;
  outline-offset:2px;
}
.site-header .main-nav a::after{display:none !important;content:none !important;}
.site-header .main-nav .nav-btn,
.site-header .main-nav .plain-anchor-btn.nav-btn{border-radius:8px !important;}
@media(max-width:1100px){
  .site-header .nav-wrap{gap:12px !important;padding-inline:16px !important;}
  .site-header .brand-link,.site-header .brand{max-width:175px !important;}
  .site-header .main-nav{gap:0 !important;padding:6px !important;}
  .site-header .main-nav a,.site-header .main-nav a:not(.nav-btn),.site-header .main-nav .nav-btn,.site-header .main-nav .plain-anchor-btn.nav-btn{font-size:.76rem !important;padding:8px 5px !important;}
}
@media(max-width:850px){
  .site-header .main-nav{display:none !important;}
}
