/* Job Form Tracker — Premium UI */
.jft-wrap{--jft-text:#0f172a;--jft-muted:#64748b;--jft-border:#e2e8f0;--jft-soft:#f8fafc;--jft-blue:#2563eb;--jft-blue2:#1d4ed8;--jft-green:#16a34a;--jft-orange:#d97706;--jft-red:#dc2626;max-width:1180px;margin:24px auto;color:var(--jft-text);font-family:inherit}
.jft-head{position:relative;overflow:hidden;padding:30px 30px 28px;border:1px solid #dbe5f0;border-radius:24px;background:linear-gradient(135deg,#eff6ff 0%,#ffffff 58%,#f8fafc 100%);box-shadow:0 12px 35px rgba(15,23,42,.07);margin-bottom:18px}
.jft-head:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-75px;top:-95px;background:rgba(37,99,235,.08)}
.jft-head h2{position:relative;z-index:1;margin:0 0 7px;font-size:30px;letter-spacing:-.6px;font-weight:800}
.jft-head p{position:relative;z-index:1;margin:0;color:var(--jft-muted);font-size:15px}
.jft-tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:20px;padding:10px;border:1px solid var(--jft-border);border-radius:16px;background:#fff;box-shadow:0 6px 22px rgba(15,23,42,.05)}
.jft-tools input,.jft-tools select{min-height:46px;width:100%;padding:10px 13px;border:1px solid #d8e0e9;border-radius:11px;background:#fff;color:#0f172a;font-size:14px;outline:none;transition:.2s}
.jft-tools input:focus,.jft-tools select:focus{border-color:#93c5fd;box-shadow:0 0 0 3px rgba(37,99,235,.1)}
.jft-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.jft-card{position:relative;border:1px solid var(--jft-border);border-radius:19px;padding:20px;background:#fff;box-shadow:0 5px 20px rgba(15,23,42,.055);transition:transform .2s,box-shadow .2s,border-color .2s;overflow:hidden}
.jft-card:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(15,23,42,.11);border-color:#cbd5e1}
.jft-featured{border-color:#f5c451;box-shadow:0 7px 24px rgba(245,158,11,.10)}
.jft-featured:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#f59e0b,#fbbf24)}
.jft-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;min-height:26px}
.jft-badge,.jft-star{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;line-height:1}
.jft-open{background:#ecfdf3;color:#15803d}.jft-closing,.jft-today{background:#fff7ed;color:#c2410c}.jft-upcoming{background:#eff6ff;color:#1d4ed8}.jft-closed{background:#fef2f2;color:#b91c1c}.jft-unknown{background:#f1f5f9;color:#475569}.jft-star{background:#fffbeb;color:#a16207}
.jft-card h3{margin:2px 0 7px;font-size:19px;line-height:1.35;letter-spacing:-.2px;font-weight:800}
.jft-org{color:#64748b;font-size:13px;margin-bottom:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jft-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.jft-dates div{background:var(--jft-soft);border:1px solid #eef2f7;border-radius:11px;padding:10px 11px}
.jft-dates small{display:block;color:#94a3b8;font-size:10px;font-weight:700;margin-bottom:4px;text-transform:uppercase;letter-spacing:.25px}
.jft-dates strong{font-size:13px;font-weight:800}
.jft-countdown{margin:12px 0;padding:10px 11px;border-radius:11px;background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe;text-align:center;font-weight:800;font-size:12px}
.jft-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.jft-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;border:1px solid #dbe2ea;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:800;background:#fff;color:#334155;transition:.18s}
.jft-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}
.jft-primary{background:linear-gradient(135deg,var(--jft-blue),var(--jft-blue2));color:#fff!important;border-color:var(--jft-blue);box-shadow:0 5px 13px rgba(37,99,235,.2)}
.jft-primary:hover{filter:brightness(.97);color:#fff!important}
.jft-empty{padding:40px;text-align:center;border:1px dashed #cbd5e1;border-radius:16px;color:#64748b;background:#fff;grid-column:1/-1}
@media(max-width:950px){.jft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jft-tools{grid-template-columns:1fr 1fr}.jft-tools input{grid-column:1/-1}}
@media(max-width:600px){.jft-grid,.jft-tools{grid-template-columns:1fr}.jft-tools input{grid-column:auto}.jft-head{padding:23px 20px;border-radius:19px}.jft-head h2{font-size:24px}.jft-card{padding:17px}.jft-actions .jft-btn{flex:1;min-width:0}}
