/* NV Logistics Tools Pro – 1.6.7
 * Mobile-first, Dolap tarzı kart tasarım + Logista renkleri
 */

/* Genel layout */
.nvltp-page{
  background:#f3f4f6;
  padding:24px 0;
}
.nvltp-container{
  max-width:1100px;
  margin:0 auto;
  padding:0 16px;
  box-sizing:border-box;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:#0f172a;
}

/* Kart */
.nvltp-card{
  background:#ffffff;
  border-radius:14px;
  border:1px solid rgba(15,23,42,0.06);
  padding:18px 18px 16px;
  margin:10px 0;
  box-shadow:0 16px 40px rgba(15,23,42,0.08);
}
.nvltp-card h2,
.nvltp-card h3,
.nvltp-card h4{
  margin-top:0;
}

/* Auth (giriş / kayıt) */
.nvltp-auth-wrap{
  max-width:440px;
  margin:0 auto;
}
.nvltp-auth-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:16px;
}
.nvltp-logo{
  width:34px;
  height:34px;
  border-radius:12px;
  background:linear-gradient(135deg,#f97316,#ea580c);
  display:inline-block;
}
.nvltp-auth-title{
  font-size:1.5rem;
  font-weight:700;
}
.nvltp-auth-sub{
  margin:0 0 4px;
  color:#6b7280;
  font-size:0.9rem;
}

/* Formlar */
.nvltp-form{
  margin-top:8px;
}
.nvltp-form .row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.nvltp-form .row.full{
  grid-template-columns:1fr;
}
.nvltp-field label{
  display:block;
  font-size:0.88rem;
  font-weight:600;
  margin-bottom:4px;
  color:#111827;
}
.nvltp-field input,
.nvltp-field select,
.nvltp-field textarea{
  width:100%;
  padding:9px 11px;
  border-radius:10px;
  border:1px solid #d1d5db;
  background:#f9fafb;
  font-size:0.9rem;
  box-sizing:border-box;
  transition:all .12s ease-in-out;
}
.nvltp-field textarea{
  min-height:90px;
  resize:vertical;
}
.nvltp-field input:focus,
.nvltp-field select:focus,
.nvltp-field textarea:focus{
  outline:none;
  border-color:#f97316;
  box-shadow:0 0 0 1px rgba(249,115,22,0.3);
  background:#ffffff;
}
.nvltp-help{
  font-size:0.78rem;
  color:#6b7280;
  margin-top:3px;
}

/* KVKK */
.nvltp-kvkk{
  display:flex;
  align-items:flex-start;
  gap:6px;
  font-size:0.82rem;
  color:#374151;
  margin:6px 0 4px;
}
.nvltp-kvkk input{
  margin-top:2px;
}

/* Rol pill'leri */
.nvltp-role-pills{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.nvltp-pill{
  display:inline-flex;
  align-items:flex-start;
  gap:6px;
  border-radius:999px;
  border:1px solid #d1d5db;
  padding:7px 11px;
  background:#f9fafb;
  cursor:pointer;
  font-size:0.82rem;
}
.nvltp-pill input{
  margin-top:2px;
}
.nvltp-pill-main{
  font-weight:600;
}
.nvltp-pill-desc{
  display:block;
  font-weight:400;
  color:#6b7280;
}
.nvltp-pill input:checked + span .nvltp-pill-main,
.nvltp-pill input:checked + span .nvltp-pill-desc{
  color:#ea580c;
}

/* Butonlar */
.nvltp-actions{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.nvltp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 16px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:0.9rem;
  font-weight:600;
  cursor:pointer;
  text-decoration:none;
  white-space:nowrap;
  transition:all .13s ease-in-out;
}
.nvltp-btn-primary{
  background:linear-gradient(135deg,#f97316,#ea580c);
  border-color:#ea580c;
  color:#ffffff;
  box-shadow:0 12px 24px rgba(234,88,12,0.35);
}
.nvltp-btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 32px rgba(234,88,12,0.45);
}
.nvltp-btn-secondary{
  background:#ffffff;
  border-color:#d1d5db;
  color:#111827;
}
.nvltp-btn-secondary:hover{
  background:#f9fafb;
}
.nvltp-btn-small{
  padding:5px 10px;
  font-size:0.8rem;
}

/* Uyarılar */
.nvltp-alert{
  padding:10px 12px;
  border-radius:10px;
  margin-bottom:10px;
  font-size:0.85rem;
}
.nvltp-alert-success{
  background:#ecfdf3;
  border:1px solid #bbf7d0;
  color:#166534;
}
.nvltp-alert-error{
  background:#fef2f2;
  border:1px solid #fecaca;
  color:#b91c1c;
}

/* Job kartları & listesi */
.nvltp-job-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
}
.nvltp-job-card{
  background:#ffffff;
  border-radius:14px;
  border:1px solid rgba(15,23,42,0.06);
  padding:14px 14px 12px;
  box-shadow:0 14px 32px rgba(15,23,42,0.06);
}
.nvltp-job-card-header{
  display:flex;
  justify-content:space-between;
  gap:6px;
  align-items:flex-start;
  margin-bottom:6px;
}
.nvltp-job-card-header h3{
  font-size:1rem;
  margin:0;
}
.nvltp-job-card-header a{
  text-decoration:none;
  color:#0f172a;
}
.nvltp-job-card-header a:hover{
  color:#ea580c;
}
.nvltp-badge{
  display:inline-flex;
  align-items:center;
  padding:3px 9px;
  border-radius:999px;
  font-size:0.75rem;
  font-weight:600;
}
.nvltp-badge-gray{
  background:#f3f4f6;
  color:#4b5563;
}
.nvltp-badge-green{
  background:#ecfdf3;
  color:#166534;
}
.nvltp-badge-red{
  background:#fef2f2;
  color:#b91c1c;
}
.nvltp-job-route{
  font-weight:600;
  font-size:0.9rem;
  margin:4px 0;
}
.nvltp-job-meta{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  font-size:0.8rem;
  color:#6b7280;
}
.nvltp-job-meta span{
  display:inline-flex;
  align-items:center;
  gap:4px;
}

/* Job detay layout */
.nvltp-job-detail{
  display:grid;
  grid-template-columns:minmax(0,2.1fr) minmax(0,1.4fr);
  gap:18px;
}
.nvltp-job-head{
  margin-bottom:10px;
}
.nvltp-job-head-title{
  font-size:1.4rem;
  margin:0 0 4px;
}
.nvltp-job-owner{
  font-size:0.85rem;
  color:#6b7280;
}
.nvltp-job-body{
  font-size:0.9rem;
  color:#111827;
}
.nvltp-job-section-title{
  font-size:0.95rem;
  font-weight:700;
  margin:0 0 6px;
}

/* Teklif tablosu */
.nvltp-table-wrap{
  overflow-x:auto;
}
.nvltp-table{
  width:100%;
  border-collapse:collapse;
  font-size:0.82rem;
}
.nvltp-table th,
.nvltp-table td{
  border-bottom:1px solid #e5e7eb;
  padding:6px 8px;
  text-align:left;
}
.nvltp-table th{
  background:#f9fafb;
  font-weight:600;
}

/* Profil */
.nvltp-profile-header{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.nvltp-profile-main{
  font-size:0.9rem;
}
.nvltp-profile-meta{
  font-size:0.8rem;
  color:#6b7280;
}
.nvltp-profile-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 9px;
  border-radius:999px;
  font-size:0.75rem;
  background:#eff6ff;
  color:#1d4ed8;
}

/* Mesajlar */
.nvltp-msg-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.nvltp-msg-item{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid #e5e7eb;
  background:#f9fafb;
}
.nvltp-msg-meta{
  font-size:0.78rem;
  color:#6b7280;
  margin-bottom:4px;
}
.nvltp-msg-body{
  font-size:0.9rem;
}

/* FAB */
.nvltp-fab{
  position:fixed;
  right: 0px;
  bottom:140px;
  display:flex;
  flex-direction:column;
  gap:10px;
  z-index:9999;
}
.nvltp-fab a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
  background:#111827;
  color:#ffffff;
  text-decoration:none;
  font-size:0.82rem;
  box-shadow:0 10px 24px rgba(15,23,42,0.35);
}

/* Responsive */
@media(max-width:768px){
  .nvltp-job-detail{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .nvltp-form .row{
    grid-template-columns:1fr;
  }
  .nvltp-card{
    margin:8px 0;
    padding:16px 14px 14px;
  }
}





@media (min-width: 1024px){
  .nvltp-fab{
    right: 0px;
    bottom:140px;
  }
}


@media (min-width: 1024px){
  .nvltp-auth-wrap{
    max-width:900px;
  }
}


/* Public profil C tasarımı */
.nvltp-profile-layout{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.nvltp-profile-sidebar{
  flex:0 0 auto;
}
.nvltp-profile-main{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.nvltp-profile-card{
  display:flex;
  align-items:center;
  gap:12px;
}
.nvltp-profile-avatar{
  width:64px;
  height:64px;
  border-radius:999px;
  background:#0f172a;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#f9fafb;
  font-weight:600;
  font-size:24px;
}
.nvltp-profile-maininfo h1{
  font-size:1.25rem;
  margin:0 0 4px;
}
.nvltp-profile-role{
  font-size:0.85rem;
  color:#6b7280;
}
.nvltp-profile-company{
  font-size:0.9rem;
  color:#0f172a;
  font-weight:500;
}
.nvltp-profile-mini h3{
  margin-top:0;
}
.nvltp-profile-list{
  list-style:none;
  margin:0;
  padding:0;
}
.nvltp-profile-list li{
  font-size:0.9rem;
  padding:2px 0;
}
.nvltp-profile-vehicle-gallery{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}
.nvltp-profile-vehicle-img{
  border-radius:8px;
  max-width:180px;
  height:auto;
  display:block;
}
.nvltp-profile-jobs{
  list-style:none;
  margin:0;
  padding:0;
}
.nvltp-profile-jobs li{
  padding:4px 0;
}
.nvltp-profile-jobs a{
  text-decoration:none;
  color:#111827;
}
.nvltp-profile-jobs a:hover{
  text-decoration:underline;
}

/* Profil desktop yerleşim */
@media (min-width: 900px){
  .nvltp-profile-layout{
    flex-direction:row;
    align-items:flex-start;
  }
  .nvltp-profile-sidebar{
    width:260px;
  }
}


.nvltp-job-code{
  display:inline-block;
  font-size:11px;
  font-weight:600;
  color:#6b7280;
  margin-right:6px;
}



/* Mesaj listesi */
.nvltp-messages-page .nvltp-msg-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:12px;
}
.nvltp-msg-item{
  padding:10px 12px;
  border-radius:10px;
  background:#f9fafb;
  border:1px solid #e5e7eb;
}
.nvltp-msg-item.nvltp-msg-out{
  background:#ecfeff;
  border-color:#bae6fd;
}
.nvltp-msg-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  font-size:12px;
  color:#6b7280;
  margin-bottom:4px;
}
.nvltp-msg-body p{
  margin:0 0 4px;
  font-size:13px;
}
.nvltp-muted{
  font-size:0.9rem;
  color:#6b7280;
  margin-top:-4px;
}

/* Mesaj gönderme formu – ilan detayı */
#nv_msg_body{
  width:100%;
  min-height:120px;
}

/* FAB badge görünümleri */
.nvltp-fab a{
  position:relative;
}
.nvltp-badge-msg,
.nvltp-badge-offers{
  margin-left:6px;
  background:#ef4444;
  color:#fff;
  border-radius:999px;
  font-size:11px;
  padding:2px 6px;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Public profil – araç fotoğrafları */
.nvltp-profile-vehicle-gallery{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.nvltp-profile-vehicle-img{
  border-radius:10px;
  width:100%;
  height:180px;
  object-fit:contain;
  background:#f8fafc;
  border:1px solid #e5e7eb;
  box-shadow:0 1px 3px rgba(15,23,42,.15);
}
@media (max-width:640px){
  .nvltp-profile-vehicle-gallery{ grid-template-columns:1fr; }
  .nvltp-profile-vehicle-img{
    height:200px;
  }
}

/* Profil genel layout küçük dokunuşlar */
.nvltp-profile-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  margin-bottom:16px;
  padding-bottom:8px;
  border-bottom:1px solid #e5e7eb;
}
.nvltp-profile-meta{
  font-size:13px;
  color:#6b7280;
}



/* Mesajlar – iki kolon layout */
.nvltp-messages-layout{
  display:grid;
  grid-template-columns: minmax(0, 320px) minmax(0, 1fr);
  gap:16px;
}
@media (max-width:900px){
  .nvltp-messages-layout{
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Sol taraftaki ilan konuşma listesi */
.nvltp-messages-sidebar h2{
  margin-bottom:4px;
}
.nvltp-thread-list{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.nvltp-thread-item{
  display:block;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid #e5e7eb;
  background:#f9fafb;
  text-decoration:none;
  color:#111827;
  transition:all .15s ease;
}
.nvltp-thread-item:hover{
  border-color:#d1d5db;
  background:#f3f4f6;
}
.nvltp-thread-item.is-active{
  border-color:#0ea5e9;
  background:#e0f2fe;
}
.nvltp-thread-title{
  font-size:13px;
  font-weight:600;
  margin-bottom:4px;
}
.nvltp-thread-meta{
  display:flex;
  justify-content:space-between;
  gap:6px;
  font-size:11px;
  color:#6b7280;
  margin-bottom:2px;
}
.nvltp-thread-snippet{
  font-size:12px;
  color:#4b5563;
}

/* Sağ taraftaki sohbet alanı */
.nvltp-chat-card{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.nvltp-chat-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:4px;
}
.nvltp-chat-job{
  font-weight:600;
  font-size:14px;
}
.nvltp-chat-other{
  font-size:12px;
  color:#6b7280;
}
.nvltp-chat-messages{
  max-height:420px;
  overflow-y:auto;
  padding-right:4px;
  margin-bottom:6px;
  border-radius:10px;
  background:#f9fafb;
  padding:8px;
}
.nvltp-chat-bubble{
  max-width:80%;
  padding:8px 10px;
  border-radius:12px;
  margin-bottom:6px;
  font-size:13px;
}
.nvltp-chat-bubble.out{
  margin-left:auto;
  background:#0f766e;
  color:#ecfdf5;
}
.nvltp-chat-bubble.in{
  margin-right:auto;
  background:#1d4ed8;
  color:#eff6ff;
}
.nvltp-chat-bubble.out a,
.nvltp-chat-bubble.in a{
  color:inherit;
  text-decoration:underline;
}
.nvltp-chat-meta{
  font-size:11px;
  color:#e5e7eb;
  margin-top:2px;
  text-align:right;
}
.nvltp-chat-form{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:4px;
}
.nvltp-chat-form textarea{
  width:100%;
  min-height:90px;
}

/* Önceki mesajar listesi renklerini daha belirgin hale getir (eğer başka sayfalarda kullanılırsa) */
.nvltp-messages-page .nvltp-msg-item{
  border-radius:10px;
  padding:8px 10px;
}
.nvltp-messages-page .nvltp-msg-item.nvltp-msg-out{
  background:#0f766e;
  border-color:#0f766e;
  color:#ecfdf5;
}
.nvltp-messages-page .nvltp-msg-item.nvltp-msg-in{
  background:#1d4ed8;
  border-color:#1d4ed8;
  color:#eff6ff;
}

/* FAB badge'leri – kalsın */



/* Mesaj silme linki */
.nvltp-chat-meta .nvltp-chat-delete{
  margin-left:8px;
  font-size:11px;
  text-decoration:underline;
  cursor:pointer;
}
.nvltp-chat-bubble.out .nvltp-chat-delete{
  color:#fecaca;
}
.nvltp-chat-bubble.in .nvltp-chat-delete{
  color:#fee2e2;
}



/* İlan listesi filtreleri (Nereden / Nereye) */
.nvltp-job-filters{
  margin:12px 0 18px;
  padding:10px 12px;
  border-radius:10px;
  background:#f9fafb;
  border:1px solid #e5e7eb;
}


.nvltp-filters-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:flex-end;
}
.nvltp-field-inline{
  flex:1 1 180px;
  min-width:160px;
}

/* Desktop order: 
   Satır1: Nereden, Nereye, Aciliyet
   Satır2: Tarih Başlangıç, Tarih Bitiş, Sadece teklife açık
*/
.nvltp-field-from{ order:1; }
.nvltp-field-to{ order:2; }
.nvltp-field-acil{ order:3; }
.nvltp-field-date-from{ order:4; }
.nvltp-field-date-to{ order:5; }
.nvltp-field-open{ order:6; max-width:260px; }
.nvltp-field-btn{ order:7; width:100%; }

/* Mobil düzen: 
   1. satır: Nereden | Nereye
   2. satır: Tarih Başlangıç | Tarih Bitiş
   3. satır: Aciliyet | Sadece teklife açık
   4. satır: Butonlar (tam genişlik)
*/
@media (max-width:640px){
  .nvltp-job-filters{
    padding:8px 10px;
  }
  .nvltp-filters-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:6px;
    align-items:flex-end;
  }
  .nvltp-field-inline{
    min-width:0;
    flex:1 1 auto;
  }
  .nvltp-field-from{ order:1; }
  .nvltp-field-to{ order:2; }
  .nvltp-field-date-from{ order:3; }
  .nvltp-field-date-to{ order:4; }
  .nvltp-field-acil{ order:5; }
  .nvltp-field-open{ order:6; }
  .nvltp-field-btn{
    order:7;
    grid-column:1 / -1;
  }
}
/* Hızlı tarih aralığı butonları */
.nvltp-filters-quick{
  margin-top:8px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.nvltp-filters-quick-label{
  font-size:11px;
  color:#6b7280;
  margin-right:4px;
}
.nvltp-quick-range{
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#f9fafb;
  font-size:11px;
  padding:4px 8px;
  cursor:pointer;
}
.nvltp-quick-range:hover{
  background:#eff6ff;
  border-color:#bfdbfe;
}
@media (max-width:640px){
  .nvltp-filters-quick{
    flex-wrap:wrap;
  }
}


/* Sadece teklife açık kutusu */
.nvltp-field-inline-open label{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}
.nvltp-field-inline-open input[type="checkbox"]{
  margin-right:6px;
}
.nvltp-open-only-hint{
  font-size:11px;
  color:#6b7280;
}


/* Sadece teklife açık kutusu daha kompakt */
.nvltp-field-inline-open{
  max-width:220px;
}
.nvltp-field-inline-open label{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:6px;
  font-size:0.85rem;
  font-weight:500;
}
.nvltp-field-inline-open input[type="checkbox"]{
  margin:0;
}
.nvltp-open-only-hint{
  display:block;
  margin-top:2px;
  font-size:11px;
  color:#9ca3af;
}

/* Sadece teklife açık kutusu – daha küçük ve şık */
.nvltp-field-inline-open{
  max-width:230px;
}
.nvltp-field-inline-open label{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:6px;
  font-size:0.85rem;
  font-weight:500;
}
.nvltp-field-inline-open input[type="checkbox"]{
  width:18px;
  height:18px;
  margin:0;
}
.nvltp-open-only-hint{
  display:block;
  margin-top:2px;
  font-size:11px;
  color:#9ca3af;
}
@media (max-width:640px){
  .nvltp-field-inline-open{
    max-width:100%;
  }
}

/* Toggle input kesinlikle görünmesin */
.nvltp-filters-toggle-input{
  display:none;
}

/* Sadece teklife açık kutusu – hizalı ve küçük */
.nvltp-field-inline-open{
  max-width:260px;
}
.nvltp-field-inline-open label{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:6px;
  font-size:0.85rem;
  font-weight:500;
}
.nvltp-field-inline-open input[type="checkbox"]{
  width:18px;
  height:18px;
  margin:0;
}
.nvltp-open-only-hint{
  display:block;
  margin-top:2px;
  font-size:11px;
  color:#9ca3af;
}

/* Filtre formu inputları container dışına taşmasın */
.nvltp-job-filters input[type="text"],
.nvltp-job-filters input[type="date"],
.nvltp-job-filters select{
  width:100%;
  box-sizing:border-box;
  font-size:0.85rem;
  padding:6px 10px;
}

/* ==== NVLTP İlanlar filtre son düzen (desktop + mobil) ==== */
.nvltp-filters-block{
  margin:12px 0 12px;
}
.nvltp-filters-toggle-wrap{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.nvltp-filters-toggle-btn{
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#ffffff;
  padding:8px 14px;
  font-size:0.9rem;
  display:inline-flex;
  align-items:center;
  gap:6px;
  box-shadow:0 4px 10px rgba(15,23,42,0.06);
  cursor:pointer;
}
.nvltp-filters-toggle-btn:hover{
  background:#f9fafb;
}
.nvltp-filters-toggle-note{
  font-size:0.8rem;
  color:#6b7280;
}
.nvltp-filters-panel{
  margin-top:8px;
}

/* Desktop yerleşim: 
   1. satır: Nereden, Nereye, Aciliyet
   2. satır: Tarih Başlangıç, Tarih Bitiş, Sadece teklife açık ilanlar */
.nvltp-filters-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:flex-end;
}
.nvltp-field-inline{
  flex:1 1 200px;
  min-width:180px;
}
.nvltp-field-from{ order:1; }
.nvltp-field-to{ order:2; }
.nvltp-field-acil{ order:3; }
.nvltp-field-date-from{ order:4; }
.nvltp-field-date-to{ order:5; }
.nvltp-field-open{ order:6; max-width:260px; }
.nvltp-field-btn{ order:7; flex-basis:100%; }

/* Mobilde dikey, taşma yok */
@media (max-width:768px){
  .nvltp-job-filters{
    padding:8px 10px;
  }
  .nvltp-filters-row{
    display:flex;
    flex-direction:column;
    gap:8px;
  }
  .nvltp-field-inline{
    min-width:0;
    flex:1 1 auto;
  }
  .nvltp-field-btn{
    width:100%;
  }
}

/* Sadece teklife açık – hizalı ve küçük (override) */
.nvltp-field-inline-open label{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:6px;
  font-size:0.85rem;
  font-weight:500;
}
.nvltp-field-inline-open input[type="checkbox"]{
  width:18px;
  height:18px;
  margin:0;
}
.nvltp-open-only-hint{
  display:block;
  margin-top:2px;
  font-size:11px;
  color:#9ca3af;
}

/* Filtre inputları container içinde kalsın */
.nvltp-job-filters input[type="text"],
.nvltp-job-filters input[type="date"],
.nvltp-job-filters select{
  width:100%;
  box-sizing:border-box;
  font-size:0.85rem;
  padding:6px 10px;
}

/* JS açıkken filtre formunu aç/kapa: varsayılan kapalı */
html.nvltp-filters-js .nvltp-job-filters{
  display:none;
}
html.nvltp-filters-js .nvltp-job-filters.is-open{
  display:block;
}

/* === NVLTP FILTER LAYOUT OVERRIDE (b14) === */
/* Desktop: 3 kolon grid - 1. satır: Nereden/Nereye/Aciliyet,
   2. satır: Tarih Başlangıç/Tarih Bitiş/Sadece teklife açık */
.nvltp-filters-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);
  gap:10px;
  align-items:flex-end;
}
.nvltp-field-inline{
  min-width:0;
}

/* Mobil: 2 kolon grid
   1. satır: Nereden | Nereye
   2. satır: Tarih Başlangıç | Tarih Bitiş
   3. satır: Aciliyet | Sadece teklife açık
   4. satır: Butonlar tam genişlik */
@media (max-width:640px){
  .nvltp-job-filters{
    padding:8px 10px;
  }
  .nvltp-filters-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:6px;
  }
  .nvltp-field-btn{
    grid-column:1 / -1;
  }
}

/* Inputların taşmaması için genel kural */
.nvltp-job-filters input[type="text"],
.nvltp-job-filters input[type="date"],
.nvltp-job-filters select{
  width:100%;
  box-sizing:border-box;
  font-size:0.85rem;
  padding:6px 10px;
}

/* === MOBIL TARİH ALANLARI TAM UYUMLU (b15) === */
@media (max-width:640px){

  .nvltp-field-date-from input,
  .nvltp-field-date-to input{
    width: 85% !important;
    min-width: 0 !important;
  }

  .nvltp-field-date-from,
  .nvltp-field-date-to{
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .nvltp-field-acil select{
    width: 90% !important;
  }

  .nvltp-field-open{
    width: 100% !important;
  }

  .nvltp-filters-row{
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  }
}

/* === NVLTP – Teklif tablosu & uyarı & görsel düzenleri (b16 stable) === */
.nvltp-job-detail .nvltp-table{
  width:100%;
  border-collapse:collapse;
  table-layout:auto;
}
.nvltp-job-detail .nvltp-table th,
.nvltp-job-detail .nvltp-table td{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  padding:6px 6px;
  font-size:0.85rem;
}
.nvltp-job-detail .nvltp-offer-col-price{
  text-align:right;
  min-width:80px;
}
.nvltp-job-detail .nvltp-offer-col-note{
  max-width:220px;
  white-space:normal;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

@media (max-width:640px){
  .nvltp-job-detail .nvltp-table th,
  .nvltp-job-detail .nvltp-table td{
    padding:3px 3px;
    font-size:0.78rem;
  }
  .nvltp-job-detail .nvltp-offer-col-note{
    max-width:160px;
  }
}

/* Teklif ver uyarı kutuları */
.nvltp-alert{
  padding:10px 12px;
  border-radius:10px;
  margin:8px 0 12px;
  font-size:0.86rem;
}
.nvltp-alert-info{
  background:#eff6ff;
  border:1px solid #bfdbfe;
  color:#111827;
}
.nvltp-alert-warning{
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#92400e;
}
.nvltp-alert a{
  font-weight:600;
  color:#1d4ed8;
  text-decoration:underline;
}
.nvltp-alert a:hover{
  text-decoration:none;
}

/* İlan detay – yük fotoğrafı */
.nvltp-job-detail .nvltp-job-image img{
  width:100%;
  height:auto;
  max-height:420px;
  object-fit:cover;
  border-radius:8px;
  display:block;
}
@media (max-width:640px){
  .nvltp-job-detail .nvltp-job-image img{
    max-height:260px;
  }

}


/* Mobilde ilan detayındaki gelen teklifler tablosunda NOT sütununu gizle */
@media (max-width:640px){
  .nvltp-job-detail .nvltp-table th:nth-child(3),
  .nvltp-job-detail .nvltp-table td:nth-child(3),
  .nvltp-job-detail .nvltp-offer-col-note{
    display:none;
  }
}


/* Mobilde ilan detayındaki gelen teklifler tablosunda NOT kolonunu gizle */
@media (max-width:640px){
  .nvltp-job-detail .nvltp-table th:nth-child(3),
  .nvltp-job-detail .nvltp-table td:nth-child(3),
  .nvltp-job-detail .nvltp-offer-col-note{
    display:none !important;
  }
}

/* Mobilde FAB menüsünü daha aşağı al ki teklif tablosunu kapatmasın */
@media (max-width:640px){
  .nvltp-fab{
    bottom:70px;
    right:0px;
  }
}





/* Mobilde teklif satırında notu durum altında satır içi göster */
@media (max-width:640px){
  .nvltp-offer-note-mobile{
    margin-top:2px;
    font-size:0.72rem;
    color:#4b5563;
    line-height:1.2;
    white-space:normal;
  }
}


/* --- MOBILE TUNING: FAB + INLINE NOTE --- */
@media (max-width:640px){
  .nvltp-fab{
    bottom:90px;
    right:4px;
  }
  .nvltp-fab a{
    font-size:0.72rem;
    padding:6px 10px;
  }
  .nvltp-offer-note-mobile{
    margin-top:2px;
    font-size:0.72rem;
    color:#4b5563;
    line-height:1.2;
    white-space:normal;
  }
}


/* Public profile polish */
.nvltp-profile-logo{display:flex;justify-content:center;margin-bottom:10px}
.nvltp-company-logo{width:96px;height:96px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid #e5e7eb;padding:6px}
.nvltp-verified{display:inline-block;margin-left:8px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:800;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}
.nvltp-profile-rating{margin-top:8px;display:flex;align-items:center;gap:8px;justify-content:center}
.nvltp-stars{font-size:18px;letter-spacing:1px;color:#f59e0b}
.nvltp-profile-rating-text{font-size:13px;color:#6b7280;font-weight:700}


/* Helpers */
.nvltp-hr{height:1px;background:#e5e7eb;margin:14px 0}
.nvltp-small{font-size:13px;color:#6b7280}
.nvltp-callout{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fff7ed}
.nvltp-success{padding:10px 12px;border-radius:12px;border:1px solid #a7f3d0;background:#ecfdf5;color:#065f46;margin:10px 0}
.nvltp-error{padding:10px 12px;border-radius:12px;border:1px solid #fecaca;background:#fef2f2;color:#7f1d1d;margin:10px 0}


/* =========================================================
   Public Profile v2 (Premium) — 1.6.20
   ========================================================= */
.nvltp-ppv2{ background:#f7f8fb; }
.nvltp-ppv2 .nvltp-container{ max-width: 1100px; }

.nvltp-ppv2 [data-nvltp-animate]{
  opacity:0;
  transform: translateY(10px);
  transition: opacity .45s ease, transform .45s ease;
  will-change: opacity, transform;
}
.nvltp-ppv2 [data-nvltp-animate].is-inview{
  opacity:1;
  transform: translateY(0);
}

.nvltp-ppv2-card{
  background:#fff;
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(16,24,40,.08);
  border: 1px solid rgba(16,24,40,.06);
}
.nvltp-ppv2-hero{ margin-bottom: 16px; }
.nvltp-ppv2-grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 16px;
}
@media(max-width: 920px){
  .nvltp-ppv2-grid{ grid-template-columns: 1fr; }
}

.nvltp-ppv2-profile{ padding: 18px; }
.nvltp-ppv2-profile-top{
  display:flex;
  gap: 14px;
  align-items:center;
}
.nvltp-ppv2-logo{
  width: 86px; height: 86px;
  border-radius: 16px;
  background: rgba(0,0,0,.03);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.nvltp-ppv2-logo-img{ width:100%; height:100%; object-fit:contain; padding:10px; }
.nvltp-ppv2-name{
  font-size: 22px;
  font-weight: 800;
  line-height: 1.15;
  color:#111827;
}
.nvltp-ppv2-sub{ color:#6b7280; margin-top:4px; font-size:13px; }

.nvltp-ppv2-rating{
  margin-top: 12px;
  display:flex; align-items:center; gap:10px;
}
.nvltp-ppv2-rating-text{ font-weight:700; color:#111827; }
.nvltp-ppv2-muted{ color:#6b7280; font-weight:600; }

.nvltp-ppv2-stats{
  margin-top: 14px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.nvltp-ppv2-stat{
  background: rgba(17,24,39,.03);
  border: 1px solid rgba(17,24,39,.06);
  border-radius: 14px;
  padding: 10px 12px;
}
.nvltp-ppv2-stat-k{ color:#6b7280; font-weight:700; font-size:12px; }
.nvltp-ppv2-stat-v{ color:#111827; font-weight:900; font-size:18px; margin-top:4px; }

.nvltp-ppv2-badges{ margin-top: 14px; display:flex; flex-wrap:wrap; gap:8px; }

.nvltp-badge{
  display:inline-flex; align-items:center; gap:6px;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  border: 1px solid rgba(17,24,39,.08);
  background: rgba(17,24,39,.03);
  color:#111827;
}
.nvltp-badge-ok{ background: rgba(16,185,129,.10); border-color: rgba(16,185,129,.25); }
.nvltp-badge-warn{ background: rgba(245,158,11,.10); border-color: rgba(245,158,11,.25); }
.nvltp-badge-soft{ background: rgba(59,130,246,.08); border-color: rgba(59,130,246,.18); }

.nvltp-ppv2-cta{ overflow:hidden; padding:0; position:relative; }
.nvltp-ppv2-cta-media{
  height: 220px;
  background: radial-gradient(1200px 420px at 60% -20%, rgba(255,122,0,.22), rgba(59,130,246,.10) 45%, rgba(255,255,255,.0) 80%);
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
  overflow:hidden;
}
.nvltp-ppv2-cta-media img{
  width:100%; height:100%;
  object-fit: cover;
  transform: none;
}

/* Premium hero slider */
.nvltp-ppv2-slider{
  position:relative;
  width:100%;
  height:100%;
}
.nvltp-ppv2-slides{
  position:relative;
  width:100%;
  height:100%;
}
.nvltp-ppv2-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition: opacity .45s ease;
}
.nvltp-ppv2-slide.is-active{
  opacity:1;
}
.nvltp-ppv2-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform: none;
}
/* Nav arrows */
.nvltp-ppv2-nav{
  position:absolute;
  top:50%;
  transform: translateY(-50%);
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.32);
  background: rgba(17,24,39,.28);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.nvltp-ppv2-nav:hover{ background: rgba(17,24,39,.40); }
.nvltp-ppv2-prev{ left:12px; }
.nvltp-ppv2-next{ right:12px; }
/* Dots */
.nvltp-ppv2-dots{
  position:absolute;
  left:50%;
  bottom:10px;
  transform: translateX(-50%);
  display:flex;
  gap:8px;
  padding:6px 10px;
  border-radius:999px;
  background: rgba(17,24,39,.22);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.nvltp-ppv2-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  border:0;
  background: rgba(255,255,255,.45);
  cursor:pointer;
}
.nvltp-ppv2-dot.is-active{ background: rgba(255,255,255,.95); }

.nvltp-ppv2-cta-placeholder{
  height:100%;
  display:flex; align-items:center; justify-content:center;
  color: rgba(17,24,39,.35);
}
.nvltp-ppv2-cta-lines{ padding: 14px 18px 0 18px; }
.nvltp-ppv2-cta-line{ font-weight:800; color:#111827; margin: 6px 0; }
.nvltp-ppv2-cta-actions{ padding: 14px 18px 18px 18px; }
.nvltp-ppv2-contact{ display:flex; gap:10px; margin-top:10px; flex-wrap:wrap; }
.nvltp-ppv2-help{ margin-top:10px; color:#6b7280; font-weight:700; font-size:13px; }

.nvltp-btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius: 14px;
  padding: 12px 14px;
  font-weight: 900;
  text-decoration:none !important;
  border: 1px solid rgba(17,24,39,.10);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
  position:relative;
  overflow:hidden;
  user-select:none;
}
.nvltp-btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(16,24,40,.12);
}
.nvltp-btn-primary{
  background:#ff7a00;
  color:#fff !important;
  border-color: rgba(255,122,0,.55);
}
.nvltp-btn-primary:hover{ background:#ff6a00; }
.nvltp-btn-ghost{
  background: rgba(17,24,39,.03);
  color:#111827 !important;
}

.nvltp-ripple{
  position:absolute;
  width: 12px; height: 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.65);
  transform: translate(-50%,-50%) scale(1);
  animation: nvltpRipple .6s ease-out forwards;
  pointer-events:none;
}
.nvltp-btn-ghost .nvltp-ripple{ background: rgba(17,24,39,.18); }
@keyframes nvltpRipple{
  to { transform: translate(-50%,-50%) scale(22); opacity: 0; }
}

.nvltp-ppv2-trustbar{ margin-top: 14px; }
.nvltp-ppv2-trust{
  display:flex; gap:10px; flex-wrap:wrap;
  padding: 10px 12px;
  border-radius: 16px;
  background: rgba(255,255,255,.70);
  border: 1px solid rgba(16,24,40,.06);
  backdrop-filter: blur(8px);
}
.nvltp-ppv2-trust span{
  font-weight: 900;
  color:#111827;
  background: rgba(17,24,39,.03);
  border: 1px solid rgba(17,24,39,.06);
  border-radius: 999px;
  padding: 7px 10px;
}

.nvltp-ppv2-section{ padding: 16px; margin-top: 14px; }
.nvltp-ppv2-section-head h2{ margin:0; font-size:18px; font-weight:900; color:#111827; }
.nvltp-ppv2-text{ margin-top:10px; color:#374151; font-weight:650; line-height:1.6; }

.nvltp-ppv2-cards{
  margin-top: 12px;
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
@media(max-width: 900px){ .nvltp-ppv2-cards{ grid-template-columns: repeat(2, 1fr);} }
.nvltp-ppv2-mini{
  background: rgba(17,24,39,.03);
  border: 1px solid rgba(17,24,39,.06);
  border-radius: 14px;
  padding: 12px;
  transition: transform .15s ease, box-shadow .15s ease;
}
.nvltp-ppv2-mini:hover{ transform: translateY(-2px); box-shadow: 0 14px 28px rgba(16,24,40,.10); }
.nvltp-ppv2-mini-k{ color:#6b7280; font-weight:900; font-size:12px; }
.nvltp-ppv2-mini-v{ color:#111827; font-weight:950; margin-top:6px; }

.nvltp-ppv2-services{
  margin-top: 12px;
  display:grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
@media(max-width: 980px){ .nvltp-ppv2-services{ grid-template-columns: repeat(2, 1fr); } }
.nvltp-ppv2-service{
  padding: 12px;
  border-radius: 14px;
  background: rgba(59,130,246,.06);
  border: 1px solid rgba(59,130,246,.14);
  font-weight: 900;
  color:#111827;
  transition: transform .15s ease, box-shadow .15s ease;
}
.nvltp-ppv2-service:hover{ transform: translateY(-2px); box-shadow: 0 14px 28px rgba(16,24,40,.10); }

.nvltp-ppv2-jobs{ margin-top: 12px; display:grid; gap: 10px; }
.nvltp-ppv2-job{
  display:block;
  padding: 12px;
  border-radius: 14px;
  background: rgba(17,24,39,.03);
  border: 1px solid rgba(17,24,39,.06);
  text-decoration:none !important;
  transition: transform .15s ease, box-shadow .15s ease;
}
.nvltp-ppv2-job:hover{ transform: translateY(-2px); box-shadow: 0 14px 28px rgba(16,24,40,.10); }
.nvltp-ppv2-job-title{ font-weight: 950; color:#111827; }
.nvltp-ppv2-job-meta{ margin-top:4px; color:#6b7280; font-weight:800; font-size:12px; }

.nvltp-ppv2-empty{ margin-top: 12px; display:flex; flex-direction:column; gap: 8px; }

.nvltp-ppv2-refbox{ margin-top: 14px; padding-top: 10px; border-top: 1px solid rgba(16,24,40,.08); }
.nvltp-ppv2-refbox h3{ margin:0 0 10px 0; font-size:15px; font-weight:950; color:#111827; }
.nvltp-ppv2-refgrid{
  display:grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
}
@media(max-width: 980px){ .nvltp-ppv2-refgrid{ grid-template-columns: repeat(3, 1fr); } }
.nvltp-ppv2-refitem{
  background:#fff;
  border-radius: 14px;
  border: 1px solid rgba(16,24,40,.08);
  box-shadow: 0 10px 20px rgba(16,24,40,.06);
  padding: 10px;
  display:flex; align-items:center; justify-content:center;
}
.nvltp-ppv2-refitem img{ width:100%; height:46px; object-fit:contain; }

.nvltp-sticky-cta{
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: 12px;
  display:none;
  gap: 10px;
  align-items:center;
  z-index: 9999;
  transition: transform .2s ease, opacity .2s ease;
}
.nvltp-sticky-cta.is-hidden{ transform: translateY(110%); opacity: .0; }
@media(max-width: 820px){
  .nvltp-sticky-cta{ display:flex; }
}
.nvltp-sticky-btn{
  flex:1;
  display:flex; align-items:center; justify-content:center;
  padding: 12px 14px;
  border-radius: 16px;
  font-weight: 950;
  background:#ff7a00;
  color:#fff !important;
  text-decoration:none !important;
  border: 1px solid rgba(255,122,0,.55);
  box-shadow: 0 16px 34px rgba(16,24,40,.18);
  position:relative;
  overflow:hidden;
}
.nvltp-sticky-ghost{
  background: rgba(17,24,39,.06);
  color:#111827 !important;
  border-color: rgba(17,24,39,.12);
}
.nvltp-sticky-note{
  flex:1;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(16,24,40,.08);
  border-radius: 16px;
  padding: 12px 14px;
  font-weight: 900;
  color:#111827;
  text-align:center;
  box-shadow: 0 16px 34px rgba(16,24,40,.12);
}


/* Slider görüntü netliği */
.nvltp-ppv2-slide-img{
  image-rendering: auto;
  -ms-interpolation-mode: bicubic;
}
