.pnl-page{padding:48px 20px 80px;background:#f8fafc;min-height:70vh}.pnl-container{max-width:860px;margin:0 auto}.pnl-header{text-align:center;margin-bottom:36px}.pnl-title{font-size:2rem;font-weight:700;color:#0f172a;margin:0 0 10px}.pnl-subtitle{font-size:1rem;color:#475569;margin:0;line-height:1.5}.pnl-muted{color:#64748b;font-size:0.9rem}.pnl-empty{padding:40px;text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b}.pnl-map-wrap{position:relative;margin-bottom:36px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 4px 12px rgba(15,23,42,0.04)}.pnl-map-empty-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;padding:20px;z-index:400}.pnl-map-empty-box{background:rgba(255,255,255,0.95);border:1px solid #e2e8f0;border-radius:10px;padding:14px 18px;box-shadow:0 4px 12px rgba(15,23,42,0.08);font-size:0.9rem;color:#334155;text-align:center;max-width:380px;pointer-events:auto}.pnl-map-empty-box strong{color:#0f172a}#pnl-map{width:100%;height:380px;background:#f1f5f9}@media (max-width:640px){#pnl-map{height:300px}}.pnl-map-caption{margin:0;padding:10px 16px;font-size:12px;color:#64748b;background:#f8fafc;border-top:1px solid #e2e8f0}.leaflet-popup-content{margin:10px 12px!important}.pnl-map-link{color:#2563eb;font-weight:600;text-decoration:none;font-size:12px}.pnl-map-link:hover{text-decoration:underline}.pnl-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px rgba(15,23,42,0.04);margin-bottom:20px}.pnl-filter{display:flex;flex-direction:column;gap:4px;flex:1 1 150px;min-width:140px}.pnl-filter label{font-size:0.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:0.04em}.pnl-filter input,.pnl-filter select{padding:8px 10px;border:1px solid #cbd5e1;border-radius:8px;font-size:0.9rem;background:#f8fafc;color:#0f172a;font-family:inherit;width:100%}.pnl-filter input:focus,.pnl-filter select:focus{outline:none;border-color:#2563eb;background:#fff}.pnl-filter-meta{flex:0 0 auto;flex-direction:row;align-items:center;gap:10px}.pnl-filter-meta #pnl-filter-count{font-size:0.78rem;color:#64748b;white-space:nowrap}.pnl-filter-reset{padding:7px 14px;border:1px solid #cbd5e1;background:#fff;border-radius:8px;color:#334155;font-size:0.8rem;font-weight:600;cursor:pointer}.pnl-filter-reset:hover{background:#f1f5f9}.pnl-posts{display:flex;flex-direction:column;gap:20px;margin-bottom:48px}.pnl-post{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px 26px;box-shadow:0 4px 12px rgba(15,23,42,0.04)}.pnl-post-title{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0 0 6px}.pnl-post-date{font-size:0.8rem;color:#94a3b8;text-transform:uppercase;letter-spacing:0.04em;margin:0 0 14px}.pnl-post-body{font-size:0.95rem;color:#334155;line-height:1.6;white-space:pre-wrap}.pnl-post-actions{margin-top:18px}.pnl-apply{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:32px;box-shadow:0 8px 24px rgba(15,23,42,0.05);scroll-margin-top:100px}.pnl-apply-title{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0 0 6px}.pnl-form{margin-top:20px;display:flex;flex-direction:column;gap:16px}.pnl-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width:640px){.pnl-form-row{grid-template-columns:1fr}.pnl-apply{padding:24px 18px}}.pnl-field{display:flex;flex-direction:column;gap:6px}.pnl-field>span{font-size:0.85rem;font-weight:600;color:#334155}.pnl-field>span em{color:#dc2626;font-style:normal;margin-left:2px}.pnl-field input[type="text"],.pnl-field input[type="email"],.pnl-field input[type="tel"],.pnl-field input[type="file"],.pnl-field textarea{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:0.95rem;color:#0f172a;background:#f8fafc;transition:border-color 0.15s,background 0.15s;font-family:inherit}.pnl-field input[type="text"]:focus,.pnl-field input[type="email"]:focus,.pnl-field input[type="tel"]:focus,.pnl-field textarea:focus{outline:none;border-color:#2563eb;background:#fff}.pnl-field textarea{resize:vertical;min-height:100px}.pnl-hint{font-size:0.75rem;color:#94a3b8}.hp-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.pnl-human-label{display:flex;align-items:center;gap:10px;font-size:0.9rem;color:#334155;cursor:pointer;user-select:none}.pnl-human-label input{width:16px;height:16px}.pnl-form-actions{display:flex;align-items:center;gap:14px;margin-top:8px}.pnl-status{font-size:0.85rem;color:#64748b}.pnl-status.ok{color:#059669;font-weight:600}.pnl-status.err{color:#dc2626;font-weight:600}.pnl-apply-btn{cursor:pointer}.pnl-job-card{border-left:4px solid #2563eb}.pnl-job-facts{list-style:none;padding:0;margin:14px 0 6px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.pnl-job-facts li{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.pnl-job-label{font-size:0.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:0.05em}.pnl-job-value{font-size:0.95rem;font-weight:600;color:#0f172a}.pnl-job-section{margin:18px 0 8px;font-size:0.95rem;font-weight:700;color:#0f172a;padding-bottom:4px;border-bottom:1px solid #e2e8f0}.pnl-job-text{font-size:0.95rem;color:#334155;line-height:1.6;white-space:pre-wrap}.pnl-job-list{margin:6px 0 0;padding-left:20px;color:#334155;font-size:0.95rem;line-height:1.6}.pnl-job-list li{margin-bottom:4px}
/* Single-job page back link + per-card permalink (SEO per-posting URLs) */
.pnl-backlink { margin: 0 0 10px; font-size: 14px; }
.pnl-backlink a { color: #1a5fb4; text-decoration: none; }
.pnl-backlink a:hover { text-decoration: underline; }
.pnl-post-permalink {
    display: inline-block;
    margin-left: 14px;
    font-size: 14px;
    font-weight: 600;
    color: #1a5fb4;
    text-decoration: none;
    align-self: center;
}
.pnl-post-permalink:hover { text-decoration: underline; }
/* "Near me" geolocation sort */
.pnl-near-me{display:inline-flex;align-items:center;gap:5px;padding:7px 13px;border:1px solid #2563eb;background:#fff;border-radius:8px;color:#2563eb;font-size:0.8rem;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit}
.pnl-near-me:hover{background:#eff6ff}
.pnl-near-me:disabled{opacity:0.6;cursor:default}
.pnl-near-me.is-on{background:#2563eb;color:#fff}
.pnl-near-me-icon{font-size:0.95rem;line-height:1}
.pnl-dist{display:inline-block;margin-left:10px;padding:2px 9px;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;border-radius:999px;font-size:0.72rem;font-weight:700;vertical-align:middle;white-space:nowrap}
.pnl-near-status{font-size:0.75rem;color:#64748b;white-space:nowrap}
/* City suggestions dropdown (disambiguates same-name cities) */
.pnl-suggest{position:absolute;top:100%;left:0;right:0;z-index:1000;margin-top:2px;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 20px rgba(15,23,42,0.14);max-height:240px;overflow:auto}
.pnl-suggest-item{display:block;width:100%;text-align:left;padding:9px 12px;border:none;border-bottom:1px solid #f1f5f9;background:#fff;font-size:0.9rem;color:#0f172a;cursor:pointer;font-family:inherit}
.pnl-suggest-item:last-child{border-bottom:none}
.pnl-suggest-item:hover{background:#eff6ff}
.pnl-suggest-empty{padding:9px 12px;font-size:0.85rem;color:#94a3b8}
/* Full-width hero city search */
.pnl-filter-full{flex:1 1 100%;min-width:100%}
.pnl-filter-full input{padding:13px 15px;font-size:1.05rem}
/* Browse table (city + distance) — default view until a city is chosen */
.pnl-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 4px 12px rgba(15,23,42,0.04);overflow:hidden;margin-bottom:48px}
.pnl-table-hint{margin:0;padding:14px 18px;font-size:0.85rem;color:#64748b;border-bottom:1px solid #eef2f7;background:#f8fafc}
.pnl-table{width:100%;border-collapse:collapse}
.pnl-table th{background:#fff;color:#64748b;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;text-align:left;padding:12px 18px;border-bottom:1px solid #e2e8f0}
.pnl-table td{padding:14px 18px;border-bottom:1px solid #f1f5f9;font-size:0.95rem;color:#334155;vertical-align:middle}
.pnl-table tbody tr:last-child td{border-bottom:none}
.pnl-table tbody tr:hover td{background:#f8fafc}
.pnl-td-name{font-weight:700;color:#0f172a;display:block}
.pnl-td-emp{display:block;font-size:0.78rem;color:#94a3b8;margin-top:2px}
.pnl-td-dist{font-weight:700;color:#047857;white-space:nowrap}
.pnl-td-action a{color:#2563eb;font-weight:600;text-decoration:none;white-space:nowrap}
.pnl-td-action a:hover{text-decoration:underline}
@media (max-width:600px){.pnl-table th,.pnl-table td{padding:10px 11px;font-size:0.82rem}.pnl-td-action a{font-size:0}.pnl-td-action a::after{content:"\2192";font-size:1rem}}
