:root{
	--pnj-primary: #0069C4;
	--pnj-primary-dark: #00539c;
	--pnj-bg: #f6f8fb;
	--pnj-border: #e2e6ec;
	--pnj-text: #1e2430;
	--pnj-muted: #667085;
	--pnj-success: #0a7a35;
	--pnj-error: #a41818;
	--pnj-radius: 14px;
}

.pnj-wrapper{
	font-family: inherit;
	color: var(--pnj-text);
	max-width: 1000px;
	margin: 0 auto;
}

/* -------- پیام‌ها -------- */
.pnj-notice{
	display:flex;
	align-items:flex-start;
	gap:10px;
	padding: 16px 20px;
	border-radius: var(--pnj-radius);
	margin-bottom: 22px;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.9;
	box-shadow: 0 4px 16px rgba(16,24,40,.06);
}
.pnj-notice::before{
	flex-shrink:0;
	font-weight:900;
	font-size:16px;
	width:26px; height:26px;
	border-radius:50%;
	display:flex; align-items:center; justify-content:center;
	color:#fff;
}
.pnj-notice-success{ background:#eefaf1; color: var(--pnj-success); border:1px solid #bfeccd; }
.pnj-notice-success::before{ content:"✔"; background: var(--pnj-success); }
.pnj-notice-error{ background:#fdedec; color: var(--pnj-error); border:1px solid #f4c2c2; }
.pnj-notice-error::before{ content:"!"; background: var(--pnj-error); }

/* -------- تب‌ها -------- */
.pnj-tabs{
	display:flex;
	gap:10px;
	border-bottom: 2px solid var(--pnj-border);
	margin-bottom: 24px;
}
.pnj-tab-btn{
	background:none;
	border:none;
	cursor:pointer;
	padding: 12px 22px;
	font-size:16px;
	font-weight:700;
	color: var(--pnj-muted);
	border-bottom: 3px solid transparent;
	margin-bottom:-2px;
	transition: .2s;
}
.pnj-tab-btn.active,
.pnj-tab-btn:hover{
	color: var(--pnj-primary);
	border-bottom-color: var(--pnj-primary);
}
.pnj-tab-panel{ display:none; }
.pnj-tab-panel.active{ display:block; }

.pnj-panel-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:10px;
	margin-bottom: 18px;
}
.pnj-panel-head h3{ margin:0; font-size:20px; }

/* -------- دکمه‌ها -------- */
.pnj-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	border-radius: 10px;
	padding: 10px 20px;
	font-size:14px;
	font-weight:700;
	cursor:pointer;
	border: 2px solid transparent;
	text-decoration:none;
	transition:.2s;
}
.pnj-btn-primary{ background: var(--pnj-primary); color:#fff; }
.pnj-btn-primary:hover{ background: var(--pnj-primary-dark); color:#fff; }
.pnj-btn-outline{ background:#fff; color: var(--pnj-primary); border-color: var(--pnj-primary); }
.pnj-btn-outline:hover{ background: var(--pnj-primary); color:#fff; }
.pnj-btn-block{ width:100%; }

/* -------- فرم‌ها -------- */
.pnj-form-box{
	display:none;
	background:#fff;
	border:1px solid var(--pnj-border);
	border-radius: var(--pnj-radius);
	padding: 24px;
	margin-bottom: 26px;
	box-shadow: 0 4px 18px rgba(0,105,196,.06);
}
.pnj-form-box.pnj-open{ display:block; }

.pnj-form label{
	display:flex;
	flex-direction:column;
	gap:6px;
	font-size:13px;
	font-weight:600;
	color: var(--pnj-muted);
	margin-bottom: 14px;
}
.pnj-form input[type=text],
.pnj-form input[type=email],
.pnj-form input[type=tel],
.pnj-form input[type=url],
.pnj-form input[type=file],
.pnj-form textarea{
	border: 1.5px solid var(--pnj-border);
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 14px;
	font-family: inherit;
	color: var(--pnj-text);
	background:#fbfcfe;
}
.pnj-form input:focus,
.pnj-form textarea:focus{
	outline:none;
	border-color: var(--pnj-primary);
	background:#fff;
}
.pnj-grid-2{
	display:grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 18px;
}
@media (max-width: 640px){ .pnj-grid-2{ grid-template-columns: 1fr; } }

.pnj-hint{ font-size:12px; color: var(--pnj-muted); margin-top:8px; }

/* -------- لیست آگهی‌ها -------- */
.pnj-list{
	display:grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 18px;
}
.pnj-card{
	background:#fff;
	border:1px solid var(--pnj-border);
	border-radius: var(--pnj-radius);
	padding: 20px;
	border-top: 4px solid var(--pnj-primary);
	box-shadow: 0 2px 10px rgba(16,24,40,.04);
	display:flex;
	flex-direction:column;
}
.pnj-card-title{ margin:0 0 10px; font-size:17px; color: var(--pnj-primary-dark); }
.pnj-card-meta{ list-style:none; margin:0 0 10px; padding:0; font-size:13px; color: var(--pnj-muted); display:flex; flex-direction:column; gap:4px; }
.pnj-card-desc{ font-size:13px; color: var(--pnj-text); line-height:1.9; margin-bottom:14px; }
.pnj-card-actions{ display:flex; gap:8px; margin-top:auto; flex-wrap:wrap; }
.pnj-card > .pnj-btn{ margin-top:auto; }
.pnj-empty{ color: var(--pnj-muted); padding: 20px 0; }

/* -------- مودال ارسال رزومه -------- */
.pnj-modal{
	display:none;
	position:fixed; inset:0;
	background:rgba(20,25,35,.55);
	z-index: 99999;
	align-items:center;
	justify-content:center;
	padding: 20px;
}
.pnj-modal.pnj-open{ display:flex; }
.pnj-modal-box{
	background:#fff;
	border-radius: var(--pnj-radius);
	padding: 28px;
	max-width: 460px;
	width:100%;
	max-height: 90vh;
	overflow-y:auto;
	position:relative;
}
.pnj-modal-close{
	position:absolute; top:14px; left:14px;
	background:none; border:none; font-size:22px; cursor:pointer; color: var(--pnj-muted);
}
.pnj-modal-job-title{ color: var(--pnj-primary); font-weight:700; margin-top:-6px; }
