/* DBF UP — procurement.css */
/* ---------- PROCUREMENT ---------- */
.proc-table {
    border: 1px solid var(--line-inv);
    border-radius: var(--radius);
    overflow: hidden;
    background: rgba(255, 255, 255, .04);
    backdrop-filter: blur(12px)
}

.proc-row {
    display: grid;
    grid-template-columns: 110px 1fr 170px 140px 130px 78px;
    gap: 18px;
    align-items: center;
    padding: 19px 28px;
    border-top: 1px solid var(--line-inv);
    font-size: 14px;
    transition: .3s var(--ease)
}

.proc-row:hover {
    background: rgba(98, 229, 161, .06)
}

.proc-row.head {
    border-top: 0;
    background: rgba(98, 229, 161, .08);
    font-size: 11.5px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--green-leaf);
    font-weight: 400
}

.proc-no {
    font-size: 12.5px;
    color: rgba(250, 253, 249, .5);
    font-variant-numeric: tabular-nums
}

.proc-title {
    line-height: 1.55
}

.proc-title small {
    display: block;
    font-size: 12px;
    color: rgba(250, 253, 249, .5);
    margin-top: 3px
}

.proc-amt {
    color: var(--green-leaf);
    font-weight: 400
}

.badge {
    display: inline-block;
    font-size: 11.5px;
    padding: 5px 13px;
    border-radius: 100px;
    text-align: center;
    white-space: nowrap
}

.badge.open {
    background: rgba(98, 229, 161, .14);
    color: var(--green-leaf);
    border: 1px solid rgba(98, 229, 161, .35)
}

.badge.eval {
    background: rgba(255, 255, 255, .07);
    color: rgba(250, 253, 249, .75);
    border: 1px solid rgba(255, 255, 255, .16)
}

.badge.done {
    background: rgba(163, 79, 214, .16);
    color: #E4CDFA;
    border: 1px solid rgba(163, 79, 214, .45)
}

.proc-due {
    font-size: 12.5px;
    color: rgba(250, 253, 249, .6)
}


/* ============================================================
   เพิ่มใหม่ — ต่อฐานข้อมูล procu : ปุ่มแยกประเภท · ประเภทเอกสาร · ปุ่มไฟล์
   ============================================================ */

/* ---------- ปุ่มแยกประเภท (ใช้คลาส .fpill เดิม แต่ปรับสีให้เข้ากับพื้นมืด) ---------- */
.proc-filters {
    margin-bottom: 26px
}

.skin-dark .proc-filters .fpill {
    background: rgba(255, 255, 255, .05);
    border-color: var(--line-inv);
    color: rgba(250, 253, 249, .72);
    backdrop-filter: blur(10px);
    padding: 10px 18px;
}

.skin-dark .proc-filters .fpill i {
    font-size: 12px;
    color: var(--green-leaf);
    transition: .35s var(--ease)
}

.skin-dark .proc-filters .fpill em {
    background: rgba(255, 255, 255, .09);
    color: rgba(250, 253, 249, .7)
}

.skin-dark .proc-filters .fpill:hover {
    border-color: rgba(98, 229, 161, .5);
    background: rgba(98, 229, 161, .09);
    color: #fff;
    transform: translateY(-2px);
}

.skin-dark .proc-filters .fpill.on {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
    box-shadow: 0 14px 32px -14px rgba(20, 168, 98, .8);
}

.skin-dark .proc-filters .fpill.on i {
    color: #fff
}

.skin-dark .proc-filters .fpill.on em {
    background: rgba(255, 255, 255, .24);
    color: #fff
}

.proc-filters .pl-short {
    display: none
}

/* ---------- ช่องประเภทเอกสารในตาราง ---------- */
.proc-type {
    font-size: 12.5px;
    color: rgba(250, 253, 249, .68);
    display: inline-flex;
    align-items: center;
    gap: 7px;
    line-height: 1.45;
}

.proc-type::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 2px;
    flex: none;
    background: var(--green-leaf);
    opacity: .65;
}

/* ---------- ป้ายสถานะเพิ่มเติม ---------- */
.badge.plan {
    background: rgba(97, 151, 163, .18);
    color: #9FD8E4;
    border: 1px solid rgba(97, 151, 163, .45)
}

.badge.cancel {
    background: rgba(214, 79, 79, .15);
    color: #F3B0B0;
    border: 1px solid rgba(214, 79, 79, .42)
}

/* ---------- ปุ่มเปิดไฟล์ ---------- */
.proc-file {
    text-align: right
}

.proc-file a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    letter-spacing: .04em;
    padding: 7px 12px;
    border-radius: 100px;
    border: 1px solid var(--line-inv);
    color: rgba(250, 253, 249, .8);
    background: rgba(255, 255, 255, .05);
    transition: .3s var(--ease);
    white-space: nowrap;
}

.proc-file a:hover {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
    transform: translateY(-2px)
}

.proc-file a i {
    font-size: 10px
}

.proc-file em {
    color: rgba(250, 253, 249, .3);
    font-style: normal
}

/* ---------- ไม่มีข้อมูล / หมายเหตุท้ายตาราง ---------- */
.proc-empty {
    padding: 46px 28px;
    text-align: center;
    font-size: 13.5px;
    color: rgba(250, 253, 249, .5);
    border-top: 1px solid var(--line-inv)
}

.proc-note {
    margin: 14px 2px 0;
    font-size: 12px;
    color: rgba(250, 253, 249, .45);
    text-align: right
}

/* ============================================================
   RESPONSIVE — จอเล็กเปลี่ยนจากตารางเป็นการ์ด
   ============================================================ */
@media (max-width:1100px) {
    .proc-row {
        grid-template-columns: 100px 1fr 140px 120px 78px;
        gap: 14px;
        padding: 17px 22px
    }

    .proc-row>span:nth-child(5) {
        display: none
    }

    /* ซ่อนวันที่ */
    .proc-row.head>span:nth-child(5) {
        display: none
    }
}

@media (max-width:820px) {
    .proc-filters .pl-full {
        display: none
    }

    .proc-filters .pl-short {
        display: inline
    }

    .proc-row.head {
        display: none
    }

    .proc-table {
        background: transparent;
        border: 0;
        backdrop-filter: none;
        border-radius: 0
    }

    .proc-row {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 8px 12px;
        padding: 18px 20px;
        margin-bottom: 12px;
        border: 1px solid var(--line-inv);
        border-radius: 18px;
        background: rgba(255, 255, 255, .04);
    }

    .proc-row>span:nth-child(5) {
        display: block
    }

    /* เอาวันที่กลับมา */
    .proc-no {
        grid-column: 1;
        grid-row: 1;
        font-size: 11.5px
    }

    .proc-file {
        grid-column: 2;
        grid-row: 1;
        text-align: right
    }

    .proc-title {
        grid-column: 1 / -1;
        grid-row: 2;
        font-size: 14px
    }

    .proc-type {
        grid-column: 1 / -1;
        grid-row: 3
    }

    .proc-row>span:nth-child(4) {
        grid-column: 1;
        grid-row: 4
    }

    .proc-due {
        grid-column: 2;
        grid-row: 4;
        text-align: right;
        align-self: center
    }

    .proc-empty {
        border: 1px solid var(--line-inv);
        border-radius: 18px
    }

    .proc-note {
        text-align: left
    }
}

@media (max-width:560px) {
    .proc-row {
        padding: 16px
    }

    .proc-title {
        font-size: 13.5px
    }

    .skin-dark .proc-filters .fpill {
        padding: 9px 14px;
        font-size: 12px
    }
}