.jd-page{max-width:760px;margin:0 auto;padding:2rem 1.25rem 4rem}.jd-back{color:var(--text-muted);align-items:center;gap:.375rem;margin-bottom:1.25rem;font-size:.8125rem;font-weight:600;text-decoration:none;transition:color .15s;display:inline-flex}.jd-back:hover{color:var(--primary)}.jd-header{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-bottom:1rem;padding:1.75rem 1.75rem 1.5rem}.jd-direct-badge{color:#1d4ed8;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;background:#dbeafe;align-items:center;gap:.375rem;margin-bottom:.875rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:700;display:inline-flex}.jd-title{color:var(--text-main);letter-spacing:-.02em;margin:0 0 .625rem;font-size:1.75rem;font-weight:800;line-height:1.2}.jd-company{color:var(--text-muted);align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:1rem;font-weight:600;display:flex}.jd-company svg{color:var(--text-light)}.jd-location{color:var(--text-muted);align-items:center;gap:.375rem;margin-bottom:.875rem;font-size:.875rem;display:flex}.jd-location svg{color:var(--text-light)}.jd-tag-row{flex-wrap:wrap;gap:.5rem;display:flex}.jd-tag{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-muted);align-items:center;gap:.3125rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.jd-tag svg{color:var(--text-light)}.jd-tag-primary{color:var(--primary);background:#f0fdf4;border-color:#bbf7d0}.jd-tag-primary svg{color:var(--primary)}.jd-expired-banner{border-radius:var(--radius-sm);color:#92400e;background:#fffbeb;border:1px solid #fde68a;align-items:flex-start;gap:.625rem;margin-bottom:1rem;padding:.875rem 1rem;font-size:.8125rem;line-height:1.5;display:flex}.jd-expired-banner svg{color:#b45309;flex-shrink:0;margin-top:1px}.jd-expired-banner-title{margin-bottom:.25rem;font-weight:700}.jd-apply-card{border-radius:var(--radius);text-align:center;background:linear-gradient(135deg,#f0fdf4 0%,#ecfdf5 100%);border:1px solid #bbf7d0;margin-bottom:1rem;padding:1.5rem}.jd-apply-title{color:var(--text-main);margin:0 0 .375rem;font-size:1rem;font-weight:700}.jd-apply-hint{color:var(--text-muted);margin:0 0 1rem;font-size:.8125rem;line-height:1.5}.jd-apply-button{background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:#fff;border-radius:var(--radius-sm);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #00962f4d}.jd-apply-button:hover{transform:translateY(-1px);box-shadow:0 6px 20px #00962f66}.jd-apply-button-disabled{opacity:.5;pointer-events:none;cursor:not-allowed;box-shadow:none}.jd-card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-bottom:1rem;padding:1.75rem}.jd-card-title{color:var(--text-main);border-bottom:1px solid var(--border);align-items:center;gap:.5rem;margin:0 0 1rem;padding-bottom:.625rem;font-size:1rem;font-weight:700;display:flex}.jd-card-title svg{color:var(--primary)}.jd-description{color:var(--text-main);white-space:pre-wrap;word-wrap:break-word;font-size:.9375rem;line-height:1.65}.jd-meta-list{grid-template-columns:1fr 1fr;gap:.75rem 1.25rem;margin:0;padding:0;list-style:none;display:grid}.jd-meta-item{align-items:flex-start;gap:.625rem;font-size:.8125rem;display:flex}.jd-meta-icon{width:32px;height:32px;color:var(--primary);background:#f0fdf4;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.jd-meta-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);margin-bottom:.125rem;font-size:.6875rem;font-weight:700;display:block}.jd-meta-value{color:var(--text-main);font-weight:600}.jd-footer{border-top:1px solid var(--border);color:var(--text-light);text-align:center;margin-top:1.5rem;padding-top:1.25rem;font-size:.75rem;line-height:1.5}.jd-footer a{color:var(--text-muted);text-decoration:underline}.jd-footer a:hover{color:var(--primary)}@media (max-width:640px){.jd-page{padding:1.25rem 1rem 3rem}.jd-header,.jd-card{padding:1.25rem}.jd-title{font-size:1.375rem}.jd-meta-list{grid-template-columns:1fr}}
