/* Stilurile paginii unui anunț: galerie, hartă, întrebări, insigna de
 * urgență. Erau scrise în corpul fiecărei pagini de anunț. */
.jd-card { background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:1rem; }
.jd-card-pad { padding:1.25rem; }
.job-detail-layout { display:flex;flex-direction:column; }
.job-detail-photos { background:#f1f5f9;padding:0.75rem;display:flex;flex-direction:column;gap:0.5rem; }
.jd-main-area { width:100%;aspect-ratio:3/3;display:flex;justify-content:center;align-items:center;background:#e2e8f0;border-radius:5px;overflow:hidden; }
.jd-main-img { width:100%;height:100%;object-fit:cover;border-radius:5px; }
.jd-main-video { width:100%;height:100%;border-radius:5px;overflow:hidden; }
.jd-thumbs { display:flex;gap:0.35rem;overflow-x:auto; }
.jd-thumb { height:52px;width:52px;object-fit:cover;border-radius:4px;cursor:pointer;border:2px solid transparent;flex-shrink:0;transition:border-color 0.15s; }
.jd-thumb:hover { border-color:var(--muted); }
.jd-thumb.active { border-color:var(--accent); }
.jd-thumb-video { background:#1e293b;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem; }
.jd-thumb-video:hover { background:#334155; }
.job-detail-content { padding:1.25rem; }
.jd-header { display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem;flex-wrap:wrap;margin-bottom:0.75rem; }
.jd-title { font-size:1.3rem;font-weight:800;line-height:1.3;margin-bottom:0.3rem; }
.jd-ref { font-size:0.7rem;color:var(--muted);font-weight:600;letter-spacing:0.5px;margin-bottom:0.25rem; }
.jd-meta { display:flex;gap:0.6rem;flex-wrap:wrap;font-size:0.8rem;color:var(--muted);align-items:center; }
.jd-meta i { margin-right:0.2rem; }
.jd-stats { display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:0.85rem; }
.jd-stat { background:#f8fafc;padding:0.55rem 0.75rem;border-radius:5px;flex:1;min-width:120px; }
.jd-stat-label { font-size:0.65rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:0.3px; }
.jd-stat-value { font-size:0.88rem;font-weight:700;color:var(--text); }
.jd-stat-value i { color:var(--accent);margin-right:0.2rem;font-size:0.8rem; }
.jd-desc-label { font-size:0.65rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:0.3px;margin-bottom:0.35rem; }
.jd-desc { background:#f8fafc;padding:0.75rem;border-radius:5px;font-size:0.9rem;line-height:1.65;color:#334155;white-space:pre-wrap; }
.jd-poster { font-size:0.82rem;color:var(--muted);display:flex;align-items:center;gap:0.4rem;margin-top:0.75rem; }
.jd-map-label { font-size:0.7rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:0.3px;margin-bottom:0.5rem; }
.jd-map-wrap { background:#f8fafc;border:1px solid var(--border);border-radius:5px;overflow:hidden; }
.map-container { position:relative;cursor:pointer; }
.map-hint { position:absolute;bottom:0.5rem;left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.55);color:#fff;font-size:0.7rem;padding:0.25rem 0.65rem;border-radius:5px;pointer-events:none;opacity:1;transition:opacity 0.3s; }
.map-container.active .map-hint { opacity:0; }
.jd-dist-bar { padding:0.6rem 0.85rem; }
.jd-dist-title { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.5rem;margin-bottom:0.5rem; }
.jd-dist-options { display:flex;gap:0.5rem;flex-wrap:wrap; }
.jd-btn-gps { background:var(--accent-light);color:var(--accent);border:1px solid #bfdbfe;padding:0.4rem 0.75rem;border-radius:5px;font-size:0.78rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:0.3rem;flex:1;justify-content:center;min-width:140px; }
.jd-dist-input { flex:1;min-width:180px;display:flex;gap:0; }
.jd-dist-input input { flex:1;padding:0.4rem 0.65rem;border:1px solid #bfdbfe;border-right:none;border-radius:5px 0 0 5px;font-size:0.78rem;outline:none; }
.jd-dist-input button { background:var(--accent);color:#fff;border:1px solid var(--accent);padding:0.4rem 0.65rem;border-radius:0 5px 5px 0;font-size:0.78rem;font-weight:600;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:0.3rem; }
.jd-craftsman { text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%; }
.jd-craftsman h2 { font-size:1.1rem;font-weight:800;margin-bottom:0.5rem; }
.jd-craftsman h2 i { color:#f59e0b;margin-right:0.4rem; }
.jd-craftsman p { font-size:0.85rem;color:var(--muted);line-height:1.5;margin-bottom:1rem; }
.jd-btn-craftsman { display:inline-flex;align-items:center;gap:0.4rem;background:#f59e0b;color:#1e293b;padding:0.7rem 1.25rem;border-radius:5px;font-size:0.88rem;font-weight:700;text-decoration:none; }
.jd-cta-post { text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%; }
.jd-cta-icon { font-size:2rem;color:#f87171;margin-bottom:0.5rem; }
.jd-cta-post h3 { font-size:1.05rem;font-weight:800;margin-bottom:0.4rem;color:var(--text); }
.jd-cta-post p { color:var(--muted);font-size:0.85rem;margin-bottom:0.75rem;line-height:1.5; }
.jd-btn-post { display:inline-flex;align-items:center;gap:0.4rem;background:var(--accent);color:#fff;padding:0.7rem 1.5rem;border-radius:5px;font-size:0.88rem;font-weight:700;text-decoration:none; }
.jd-btn-post .gratuit { color:var(--galben); }
/* Cardul își poartă singur spațierea: spre deosebire de celelalte, nu are
   învelișul `.jd-card-pad` înăuntru, iar `.jd-card` dă doar fundal și
   chenar. Fără asta, întrebările și răspunsurile stăteau lipite de margine. */
.jq-card { margin-top:1rem;padding:1.25rem; }
.jq-titlu { font-size:1.05rem;font-weight:800;color:var(--text);margin-bottom:0.3rem; }
.jq-sub { color:var(--muted);font-size:0.85rem;line-height:1.5;margin-bottom:1rem; }
.jq-gol { color:var(--muted);font-size:0.88rem;font-style:italic; }
.jq-item { border-left:3px solid #e2e8f0;padding:0.1rem 0 0.1rem 0.9rem;margin-bottom:1rem; }
.jq-cine { display:block;font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:#94a3b8;margin-bottom:0.2rem; }
.jq-q { color:var(--text);font-size:0.92rem;line-height:1.55;margin-bottom:0.6rem; }
.jq-a { background:#f0fdf4;border-radius:8px;padding:0.7rem 0.85rem;color:#166534;font-size:0.92rem;line-height:1.55; }
.jq-a .jq-cine { color:#4ade80; }
.jq-astept { color:#94a3b8;font-size:0.82rem;font-style:italic; }
.jq-form { margin-top:0.5rem; }
.jq-text { width:100%;min-height:74px;padding:0.65rem 0.8rem;border:2px solid #e2e8f0;border-radius:9px;font-family:inherit;font-size:0.9rem;resize:vertical;background:var(--card,#fff);color:var(--text); }
.jq-text:focus { outline:none;border-color:#1a56db; }
.jq-btn { margin-top:0.5rem;padding:0.6rem 1.1rem;background:#1a56db;color:#fff;border:none;border-radius:5px;font-size:0.88rem;font-weight:700;cursor:pointer;font-family:inherit; }
.jq-btn:disabled { opacity:0.6;cursor:default; }
.jq-nota { color:var(--muted);font-size:0.82rem;line-height:1.5; }
.jq-eroare { color:#dc2626;font-size:0.84rem;margin-top:0.4rem; }
.jd-resolved { text-align:center; }
.jd-resolved p { color:var(--muted);font-size:0.9rem; }
.jd-resolved i { color:#22c55e;margin-right:0.3rem; }
.jd-main-img { cursor:pointer; }
.jd-lightbox { display:none;position:fixed;inset:0;background:rgba(0,0,0,0.9);z-index:9999;align-items:center;justify-content:center;flex-direction:column;padding:1rem; }
.jd-lightbox.open { display:flex; }
.jd-lightbox img { max-width:95vw;max-height:80vh;object-fit:contain;border-radius:5px;transition:transform 0.2s;cursor:zoom-in;touch-action:manipulation; }
.jd-lightbox img.zoomed { cursor:zoom-out;transform:scale(2); }
.jd-lightbox iframe { width:90vw;max-width:900px;aspect-ratio:16/9;border:none;border-radius:5px; }
.jd-lightbox-zoom { position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);display:flex;gap:0.4rem;z-index:10000; }
.jd-lightbox-zoom button { background:rgba(255,255,255,0.15);color:#fff;border:1px solid rgba(255,255,255,0.3);border-radius:5px;padding:0.35rem 0.6rem;cursor:pointer;font-size:0.8rem;font-weight:700; }
.jd-lightbox-zoom button:hover { background:rgba(255,255,255,0.3); }
.jd-lightbox-close { position:absolute;top:1rem;right:1.5rem;color:#fff;font-size:1.8rem;cursor:pointer;background:none;border:none;z-index:10000; }
.jd-lightbox-close:hover { color:#f87171; }
.jd-lightbox-nav { position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:2rem;cursor:pointer;background:rgba(0,0,0,0.4);border:none;padding:0.5rem 0.8rem;border-radius:5px; }
.jd-lightbox-nav:hover { background:rgba(255,255,255,0.2); }
.jd-lightbox-prev { left:1rem; }
.jd-lightbox-next { right:1rem; }
.jd-lightbox-counter { color:rgba(255,255,255,0.6);font-size:0.8rem;margin-top:0.75rem; }
/* Insigna de urgență și eticheta de stare de pe pagina unui anunț.
   O clasă per valoare, cu aceleași culori ca înainte. */
.jd-urg.jd-urg { display:inline-flex; align-items:center; gap:0.35rem; font-size:0.85rem; font-weight:700; padding:0.35rem 0.75rem; border-radius:5px; }
.jd-urg-punct.jd-urg-punct { width:8px; height:8px; border-radius:50%; }
.jd-urg-urgent.jd-urg-urgent { background:#fef2f2; color:#991b1b; }
.jd-urg-urgent .jd-urg-punct { background:#dc2626; }
.jd-urg-de_comun_acord.jd-urg-de_comun_acord { background:#f8fafc; color:#475569; }
.jd-urg-de_comun_acord .jd-urg-punct { background:#94a3b8; }
.jd-urg-2_saptamani.jd-urg-2_saptamani { background:#f0fdf4; color:#166534; }
.jd-urg-2_saptamani .jd-urg-punct { background:#22c55e; }
.jd-urg-1_luna.jd-urg-1_luna { background:#eff6ff; color:#1e40af; }
.jd-urg-1_luna .jd-urg-punct { background:#3b82f6; }
.jd-urg-cateva_luni.jd-urg-cateva_luni { background:#f8fafc; color:#475569; }
.jd-urg-cateva_luni .jd-urg-punct { background:#94a3b8; }
.jd-urg-flexibil.jd-urg-flexibil { background:#f8fafc; color:#475569; }
.jd-urg-flexibil .jd-urg-punct { background:#94a3b8; }
.jd-urg-cateva_zile.jd-urg-cateva_zile { background:#eff6ff; color:#1e40af; }
.jd-urg-cateva_zile .jd-urg-punct { background:#3b82f6; }
.jd-urg-saptamana_asta.jd-urg-saptamana_asta { background:#fffbeb; color:#92400e; }
.jd-urg-saptamana_asta .jd-urg-punct { background:#f59e0b; }
.jd-status.jd-status { font-size:0.75rem; font-weight:700; padding:0.25rem 0.65rem; border-radius:5px; margin-left:0.5rem; }
.jd-status-active.jd-status-active { background:#dcfce7;color:#166534; }
.jd-status-in_progress.jd-status-in_progress { background:#eff6ff;color:#1e40af; }
.jd-status-resolved.jd-status-resolved { background:#f1f5f9;color:#64748b; }
.jd-urgency-desktop { display:none; }
.jd-bottom-row { display:flex;flex-direction:column;gap:1rem; }
@media(min-width:700px) {
  .job-detail-layout { flex-direction:row; }
  .job-detail-photos { width:45%;flex-shrink:0; }
  .job-detail-content { flex:1;min-width:0; }
  .jd-urgency-desktop { display:block; }
  .jd-stats .jd-stat-urgency { display:none; }
  .jd-bottom-row { flex-direction:row; }
  .jd-bottom-row .jd-card { flex:1;margin-bottom:0; }
}

/* Sub breadcrumbs urmează direct primul card, care n-are margine de sus: pe
   paginile de servicii spațiul vine din `.section`, aici nu venea de nicăieri
   și textul stătea lipit de firimituri. Regula stă în foaia paginii de anunț,
   nu în cea comună — acolo ar fi adăugat spațiu peste cei 40px care există deja. */
.breadcrumbs { padding-bottom:0.75rem; }

/* „Ești meșter?": înregistrarea e butonul principal (galben), logarea al doilea.
   Cine ajunge din grupuri pe un anunț n-are cont încă. */
.jd-craftsman-actiuni { display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center; }
.jd-btn-craftsman-primar { background:var(--galben);color:var(--pe-galben);border-color:var(--galben); }
.jd-btn-craftsman-primar:hover { background:#f59e0b;color:var(--pe-galben); }
.jd-btn-craftsman-secundar { background:transparent;color:var(--accent);border:1.5px solid var(--accent-mid); }
.jd-btn-craftsman-secundar:hover { background:var(--accent-light);color:var(--accent-dark); }

/* Județul, lângă localitate, mai discret. */
.jd-judet { color: var(--muted); font-weight: 500; margin-left: 0.35rem; }
