/* WP Job Manager – Fluent Forms Bridge v2 | dashboard.css */

.wjm-ff-dashboard {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    max-width: 100%;
}

.wjm-ff-header { margin-bottom: 28px; }
.wjm-ff-main-title { font-size: 1.6rem; font-weight: 700; color: #111827; margin: 0 0 6px; }
.wjm-ff-subtitle { color: #6b7280; font-size: 0.92rem; margin: 0; }

/* Stats */
.wjm-ff-stats { display: flex; gap: 16px; margin-bottom: 28px; flex-wrap: wrap; }
.wjm-ff-stat-box { background: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 10px; padding: 16px 28px; display: flex; flex-direction: column; align-items: center; min-width: 140px; }
.wjm-ff-stat-number { font-size: 2rem; font-weight: 800; color: #15803d; line-height: 1; }
.wjm-ff-stat-label { font-size: 0.78rem; color: #6b7280; margin-top: 6px; text-transform: uppercase; letter-spacing: .05em; font-weight: 600; }

/* Table */
.wjm-ff-table-wrap { overflow-x: auto; border-radius: 12px; border: 1px solid #e5e7eb; box-shadow: 0 1px 6px rgba(0,0,0,.06); }
.wjm-ff-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; }
.wjm-ff-table thead tr { background: #f9fafb; }
.wjm-ff-table th { padding: 13px 16px; text-align: left; font-weight: 600; color: #374151; border-bottom: 1px solid #e5e7eb; white-space: nowrap; font-size: 0.82rem; text-transform: uppercase; letter-spacing: .04em; }
.wjm-ff-table td { padding: 14px 16px; border-bottom: 1px solid #f3f4f6; color: #4b5563; vertical-align: middle; }
.wjm-ff-table tbody tr:last-child td { border-bottom: none; }
.wjm-ff-table tbody tr:hover td { background: #f0fdf4; }
.wjm-ff-table a { color: #1d4ed8; text-decoration: none; font-weight: 600; }
.wjm-ff-table a:hover { text-decoration: underline; }
.wjm-ff-num { color: #9ca3af !important; font-size: 0.8rem !important; width: 32px; }

/* Badges */
.wjm-ff-badge { display: inline-flex; align-items: center; gap: 4px; padding: 4px 12px; border-radius: 999px; font-size: 0.78rem; font-weight: 700; }
.wjm-ff-badge--applied { background: #dcfce7; color: #15803d; }
.wjm-ff-type-badge { background: #eff6ff; color: #1d4ed8; padding: 3px 10px; border-radius: 999px; font-size: 0.78rem; font-weight: 600; }

/* Buttons */
.wjm-ff-btn { display: inline-block; padding: 8px 20px; border-radius: 8px; font-size: 0.88rem; font-weight: 600; text-decoration: none !important; transition: opacity .15s; }
.wjm-ff-btn:hover { opacity: .85; }
.wjm-ff-btn--primary { background: #2563eb; color: #fff !important; }

/* Empty State */
.wjm-ff-empty-state { text-align: center; padding: 60px 20px; background: #f9fafb; border-radius: 12px; border: 2px dashed #e5e7eb; }
.wjm-ff-empty-icon { font-size: 3rem; margin-bottom: 16px; }
.wjm-ff-empty-state h3 { font-size: 1.2rem; color: #111827; margin: 0 0 8px; }
.wjm-ff-empty-state p { color: #6b7280; margin: 0 0 24px; }

/* Notice */
.wjm-ff-notice { padding: 16px 20px; background: #fef9c3; border-left: 4px solid #eab308; border-radius: 6px; color: #713f12; }
.wjm-ff-notice a { color: #1d4ed8; font-weight: 600; }

@media (max-width: 640px) {
    .wjm-ff-table th, .wjm-ff-table td { padding: 10px; font-size: 0.82rem; }
    .wjm-ff-main-title { font-size: 1.2rem; }
}
