/* =====================================================================
   Jeevan Kaushal Portal 2.0 — base styles
   ===================================================================== */

body, .jk-app {
  font-family: 'Public Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: #FAF7F0;
  color: #1A1F2E;
  margin: 0;
}

.jk-display {
  font-family: 'Fraunces', Georgia, serif;
  font-optical-sizing: auto;
  letter-spacing: -0.01em;
}

.jk-mono {
  font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
}

.jk-tnum {
  font-variant-numeric: tabular-nums;
}

/* Subtle grid behind the login page */
.jk-grid-bg {
  background-image:
    linear-gradient(rgba(27, 58, 107, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(27, 58, 107, 0.04) 1px, transparent 1px);
  background-size: 32px 32px;
}

/* Soft scrollbars */
.jk-scroll::-webkit-scrollbar { width: 8px; height: 8px; }
.jk-scroll::-webkit-scrollbar-thumb { background: #D8D2C2; border-radius: 4px; }
.jk-scroll::-webkit-scrollbar-thumb:hover { background: #BFB89F; }
.jk-scroll::-webkit-scrollbar-track { background: transparent; }

/* Fade-in on view-mount */
@keyframes jk-fade-up {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}
.jk-fade { animation: jk-fade-up 0.4s ease-out both; }

/* Hide focus rings on buttons (we have hover states) */
button:focus { outline: none; }
button:focus-visible { outline: 2px solid #1B3A6B; outline-offset: 2px; }

/* Inputs */
input, select {
  font-family: inherit;
}
input:focus, select:focus {
  outline: none;
}
