/* Bootstrap's existing system font is the candidate site's typography source. */
.candidate-layout { font-family: var(--bs-body-font-family, system-ui, -apple-system, "Segoe UI", sans-serif); }
.candidate-layout :where(h1,h2,h3,h4,h5,h6,button,input,select,textarea,.job-card,.job-box,.nav-link,.btn) { font-family: inherit; }
.candidate-layout .scrollchecker { position: sticky; top: 0; z-index: 1020; }
.candidate-layout .candidate-premium-nav .nav-link,
.candidate-layout .candidate-actions .candidate-premium-action { flex-direction: column; justify-content: center; gap: 0; line-height: 1.2; }
.candidate-layout .candidate-premium-nav .nav-link { display: flex; }
.career-indicator { display: block; font-size: 10px; font-weight: 600; white-space: nowrap; margin-top: 3px; }
.membership-area { max-width: 1100px; overflow-wrap: anywhere; }
.membership-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 20px; }
.membership-tabs a { flex: 1; min-width: 0; text-align: center; }
.career-offer { border: 1px solid #d6b558; background: #fffdf6; }
.career-offer .btn { white-space: normal; min-height: 44px; }
.career-offer h2 { font-size: clamp(1.3rem, 3vw, 1.8rem); }
.career-validity { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.membership-career .career-plan-grid{margin-top:0}.membership-career .career-allowance-card{border-inline-start:4px solid var(--jat-purple)}.membership-career .career-explanation{box-shadow:none}.membership-career>a[href*="premium/history"]{align-self:flex-start}
@media(max-width:575.98px) {
  .membership-area { padding: 16px 12px !important; }
  .membership-tabs { gap: 5px; }
  .membership-tabs a { font-size: 14px; padding: 10px 6px; }
  .candidate-layout .candidate-actions .candidate-premium-action { font-size: 13px; padding: 4px 7px; }
  .career-offer { padding: 16px; }
  .membership-career .career-plan-grid{display:grid;grid-template-columns:minmax(0,1fr)}.membership-career .career-plan-grid>div{width:100%}.membership-career>a[href*="premium/history"]{width:100%}
}
@media print { .candidate-layout .scrollchecker { position: static; } }
