/* ================================
   HIRED JOBS
================================ */

.ttj-applied-scope{
   margin-bottom: 60px;
}

.ttj-hired-jobs{
max-width:900px;
margin:40px auto;
}

.ttj-hired-jobs h2{
    font-size:26px;
    font-weight:700;
    margin-bottom:20px;
    line-height:1.2; /* 👈 prevent text pushing up */
    color:#111;
    line-height:1;        /* muhimu */
    display:flex;         /* muhimu */
    align-items:center;   /* muhimu */
}

.ttj-applied-header-top h2{
   font-size:26px;
    font-weight:700;
    margin-bottom:20px;
    line-height:1.2; /* 👈 prevent text pushing up */
    color:#111;
    line-height:1;        /* muhimu */
    display:flex;         /* muhimu */
    align-items:center;   /* muhimu */
}

/* CARD */

.ttj-hired-card{
border:1px solid #e5e7eb;
border-radius:10px;
padding:20px;
margin-bottom:16px;
background:#fff;
display:flex;
flex-direction:column;
gap:10px;
}

.ttj-hired-card h3{
font-size:18px;
margin:0;
}

/* ROW (STATUS + BUTTON) */

.ttj-hired-row{
display:flex;
align-items:center;
gap:12px;
flex-wrap: wrap;
margin-top:6px;
margin-left:0;
padding-left:0;
}

/* ================================
   STATUS BADGES
================================ */

.ttj-badge{
font-size:13px;
padding:4px 10px 6px 10px;
border-radius:999px;
font-weight:600;
white-space:nowrap;
margin-left: 0;
}

/* IN PROGRESS */

.ttj-badge-progress{
background:#e0f2fe;
color:#0369a1;
}

/* WAITING OWNER */

.ttj-badge-waiting{
background:#fef3c7;
color:#92400e;
}

/* COMPLETED */

.ttj-badge-completed{
background:#d1fae5;
color:#065f46;
}

/* ================================
   BUTTON
================================ */

.ttj-mark-completed{
padding:8px 14px;
border:none;
background:#16a34a;
color:#fff;
border-radius:6px;
cursor:pointer;
font-size:14px;
width:fit-content;
transition:background .2s ease;
}

.ttj-mark-completed:hover{
background:#15803d;
}

/* ================================
   EMPTY STATE
================================ */

.ttj-empty{
text-align:center;
color:#6b7280;
margin:40px 0;
}

/* ================================
   BUTTON LOADING
================================ */

.ttj-mark-completed.loading{
opacity:.8;
cursor:not-allowed;
}

/* SPINNER */

.ttj-spinner{
width:12px;
height:12px;
border:2px solid rgba(255,255,255,.4);
border-top:2px solid #fff;
border-radius:50%;
display:inline-block;
margin-right:4px;
animation:ttjSpin .6s linear infinite;
vertical-align:-2px;
box-sizing:border-box;
}

@keyframes ttjSpin{
to{
transform:rotate(360deg);
}
}

.ttj-confirm-completed{
padding:8px 14px;
border:none;
background:#2563eb;
color:#fff;
border-radius:6px;
cursor:pointer;
font-size:14px;
width:fit-content;
white-space: nowrap;
}

.ttj-confirm-completed:hover{
background:#1d4ed8;
}

/* LEAVE REVIEW BUTTON */

.ttj-leave-review{
display:inline-flex;
align-items:center;
justify-content:center;

padding:4px 12px;
font-size:13px;
font-weight:500;

border-radius:6px;
text-decoration:none !important;

background:#2563eb;
color:#fff;

transition:all .15s ease;
}

/* HOVER */

.ttj-leave-review:hover{
background:#1d4ed8;
color:#fff;
}

/* ACTIVE */

.ttj-leave-review:active{
transform:translateY(1px);
}

.ttj-leave-review::before{
content:"★";
margin-right:6px;
font-size:12px;
}

.ttj-hired-review{
margin-top:8px;
padding:10px;
background:#f9fafb;
border-radius:8px;
}

.ttj-hired-review .ttj-stars{
color:#f59e0b;
font-size:16px;
margin-bottom:4px;
}

.ttj-hired-review .ttj-review-text{
font-size:13px;
color:#374151;
}

.ttj-hired-user{
    display:flex;
    align-items:center;
    gap:6px;
}

