.aft-scope{
  --aft-brand:#1E6B2D;
  --aft-brand-ink:#0C3E1E;
  --aft-brand-bg:#EAF6EF;
  --aft-ink:#0f172a;
  --aft-muted:#3d4d43;
  --aft-border:#E3EEE7;
  --aft-row:#F5FBF7;
  --aft-hover:#EEF8F1;
  --aft-shadow:0 8px 20px rgba(16,24,40,.06);
}

.aft-scope #aft-jobs{
  padding:14px 16px;
  color:var(--aft-ink);
  background:#fff;
  border:1px solid var(--aft-border);
  border-radius:16px;
  box-shadow:var(--aft-shadow);
}

.aft-scope .aft-toolbar{
  display:flex; gap:.75rem; align-items:center; justify-content:space-between;
  margin-bottom:10px; flex-wrap:wrap;
}
.aft-scope .aft-title{
  margin:0; font-weight:900; letter-spacing:.2px;
  color:var(--aft-brand-ink);
  font-size:clamp(18px,2vw,22px);
}
.aft-scope .aft-select{
  border:1px solid var(--aft-border);
  border-radius:12px;
  padding:8px 12px;
  background:#fff; color:var(--aft-ink);
  font-size:14px;
}

.aft-scope .aft-table-wrap{
  width:100%;
  overflow:auto;
  border-radius:14px;
  border:1px solid var(--aft-border);
}

.aft-scope table.aft-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  min-width:620px;
  font-size:14px;
}
.aft-scope .aft-table thead th{
  position:sticky; top:0;
  background:linear-gradient(180deg, var(--aft-brand-bg), #fff);
  color:var(--aft-brand-ink);
  text-align:left;
  font-weight:800;
  padding:12px;
  border-bottom:1px solid var(--aft-border);
}
.aft-scope .aft-table tbody td{
  padding:12px;
  border-bottom:1px dashed var(--aft-border);
  vertical-align:middle;
}
.aft-scope .aft-table tbody tr:nth-child(even){ background:var(--aft-row); }
.aft-scope .aft-table tbody tr:hover{ background:var(--aft-hover); }

.aft-scope .aft-col-cat{ width:280px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.aft-scope .aft-col-title{ min-width:280px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.aft-scope .aft-titleline{
  font-weight:800; line-height:1.2;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

.aft-scope a.aft-link{
  text-decoration:none; font-weight:800; color:var(--aft-brand-ink);
}
.aft-scope a.aft-link:hover{ text-decoration:underline; }

.aft-scope .aft-btn{
  display:inline-block; text-decoration:none;
  padding:8px 12px; border-radius:10px; font-weight:800;
  border:1px solid var(--aft-brand-ink);
  background:linear-gradient(180deg, var(--aft-brand) 0%, #2A7E3C 100%);
  color:#fff; box-shadow:var(--aft-shadow);
  white-space:nowrap;
}
.aft-scope .aft-btn:hover{ filter:brightness(1.03); }
.aft-scope .aft-btn:active{ transform:translateY(1px); }

.aft-scope .aft-pager{
  display:flex; justify-content:space-between; align-items:center; gap:10px;
  margin-top:12px; flex-wrap:wrap;
}
.aft-scope .aft-count{ color:var(--aft-muted); font-size:13px; }
.aft-scope .aft-pages{ display:flex; gap:6px; list-style:none; padding:0; margin:0; }
.aft-scope .aft-pages a,
.aft-scope .aft-pages span{
  display:inline-block; padding:8px 12px; border-radius:12px;
  border:1px solid var(--aft-border); background:#fff; color:var(--aft-ink);
  font-size:14px; text-decoration:none;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.aft-scope .aft-pages a:hover{ border-color:var(--aft-brand); color:var(--aft-brand-ink); }
.aft-scope .aft-pages .disabled{ opacity:1; pointer-events:none; color:#546b5e; }
.aft-scope .aft-pages .is-current{
  background:var(--aft-brand); color:#fff; border-color:var(--aft-brand); font-weight:800;
}

.aft-scope .aft-footer{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  margin-top:14px; padding-top:10px; border-top:1px dashed var(--aft-border);
  flex-wrap:wrap;
}
.aft-scope .aft-source{ font-size:13px; color:var(--aft-muted); }
.aft-scope .aft-source a{ font-weight:800; color:var(--aft-brand-ink); text-decoration:none; }
.aft-scope .aft-source a:hover{ text-decoration:underline; }

@media (max-width:768px){
  .aft-scope .aft-table thead{ display:none; }
  .aft-scope .aft-table,
  .aft-scope .aft-table tbody,
  .aft-scope .aft-table tr,
  .aft-scope .aft-table td{ display:block; width:100%; }

  .aft-scope table.aft-table{
    min-width:0;
    font-size:14px;
  }

  .aft-scope .aft-table tr{
    background:#fff;
    border:1px solid var(--aft-border);
    border-radius:12px;
    margin:10px 0;
    box-shadow:var(--aft-shadow);
  }

  .aft-scope .aft-table tbody td{
    border:none;
    padding:10px 12px;
  }

  .aft-scope .aft-table td[data-col="category"]{
    font-weight:800; color:var(--aft-brand-ink);
    background:var(--aft-brand-bg);
    border-bottom:1px dashed var(--aft-border);
    border-top-left-radius:12px; border-top-right-radius:12px;
  }

  .aft-scope .aft-table td[data-col="title"]{
    padding-top:12px;
    min-width:0;
    white-space:normal;
    overflow:visible;
  }
  .aft-scope .aft-table td[data-col="action"]{
    text-align:center;
    padding-top:8px;
    padding-bottom:12px;
  }

  .aft-scope .aft-col-cat,
  .aft-scope .aft-col-title{
    width:100% !important;
    min-width:0 !important;
    max-width:100%;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    word-wrap:break-word;
    overflow-wrap:anywhere;
  }

  .aft-scope .aft-titleline{
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    word-wrap:break-word;
    overflow-wrap:anywhere;
    line-height:1.35;
  }

  .aft-scope a.aft-link{
    display:block;
    max-width:100%;
  }

  .aft-scope .aft-btn{
    display:block;
    width:100%;
    max-width:280px;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
  }
}
