/* Cabinet Toolkit for Bookly v3.3 */

/* ── Toolbar ── */
.htrc-invoices-toolbar{margin-bottom:16px;padding:12px 16px;background:#faf9f8;border:1px solid #ddd8d3;border-radius:6px}
.htrc-toolbar-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.htrc-toolbar-row+.htrc-toolbar-row{margin-top:6px;padding-top:6px;border-top:1px solid #eae6e2}
.htrc-toolbar-left{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.htrc-toolbar-label{font-size:.9em;color:#333;display:inline-flex;align-items:center;gap:5px}
.htrc-toolbar-label strong{color:#222}
.htrc-per-page-select,.htrc-status-filter,.htrc-sort-select{padding:4px 8px;border:1px solid #bbb!important;border-radius:4px;font-size:.9em;background:#fff;outline:none!important;box-shadow:none!important}
.htrc-per-page-select:focus,.htrc-status-filter:focus,.htrc-sort-select:focus{border-color:#888!important;box-shadow:none!important;outline:none!important}
.htrc-toolbar-right{font-size:.9em;color:#333;line-height:1.6}
.htrc-page-total-row span{font-size:.9em;color:#333}
@media(max-width:600px){.htrc-toolbar-row{flex-direction:column;align-items:flex-start}}

/* ── Cards ── */
.htrc-invoices-list{display:flex;flex-direction:column;gap:12px}
.htrc-invoice-card{background:#faf9f8;border:1px solid #ddd8d3;border-radius:6px;padding:16px;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s,filter .15s;cursor:default}
.htrc-invoice-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.08);filter:brightness(0.98)}

/* ── Card header ── */
.htrc-invoice-header{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}
.htrc-invoice-hdr-left{display:flex;flex-direction:column;gap:2px}
.htrc-invoice-hdr-right{display:flex;gap:20px;text-align:right}
.htrc-invoice-hdr-right>div{display:flex;flex-direction:column;gap:2px}
.htrc-invoice-label{font-size:.75em;text-transform:uppercase;letter-spacing:.04em;color:#78716c;font-weight:600;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.htrc-invoice-value{font-size:.95em;color:#212529}
.htrc-invoice-amount{font-weight:600}

/* ── Services list ── */
.htrc-svc-list{display:flex;flex-direction:column;gap:6px;padding:8px 0;border-top:1px solid rgba(0,0,0,.06)}
.htrc-svc-item{display:flex;align-items:baseline;gap:10px;font-size:.9em;padding:4px 8px;background:rgba(0,0,0,.02);border-radius:4px;flex-wrap:wrap}
.htrc-svc-ref{font-size:.78em;font-weight:600;white-space:nowrap;min-width:60px}
.htrc-svc-title{flex:1;min-width:150px}
.htrc-svc-date{font-size:.82em;color:#888;white-space:nowrap}
.htrc-svc-date i{margin-right:3px}
@media(max-width:600px){
    .htrc-invoice-header{flex-direction:column}
    .htrc-invoice-hdr-right{text-align:left;gap:16px}
    .htrc-svc-item{flex-direction:column;gap:2px;align-items:flex-start}
    .htrc-svc-ref{min-width:auto}
}
.htrc-invoice-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

/* ── Status badges ── */
.htrc-status-badge{display:inline-flex;align-items:center;gap:3px;font-size:.85em;font-weight:600;padding:1px 7px;border-radius:3px;text-transform:none;letter-spacing:0}
.htrc-status-completed{color:#2e7d32;background:rgba(46,125,50,.12)}
.htrc-status-pending{color:#c77600;background:rgba(199,118,0,.12)}

/* ── Download & View buttons ── */
.htrc-invoice-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.htrc-invoice-dl-btn,.htrc-invoice-view-btn{display:inline-block;text-align:center;white-space:nowrap;color:#fff!important;transition:background .2s;padding:6px 14px;border-radius:4px;font-size:.88em;font-weight:500;text-decoration:none}
.htrc-invoice-dl-btn{background-color:#78716c!important;border-color:#78716c!important}
.htrc-invoice-dl-btn:hover,.htrc-invoice-dl-btn:focus{background-color:#5f5955!important;border-color:#5f5955!important;color:#fff!important;text-decoration:none}
.htrc-invoice-view-btn{background-color:#a09a94!important;border-color:#a09a94!important}
.htrc-invoice-view-btn:hover,.htrc-invoice-view-btn:focus{background-color:#8a8480!important;border-color:#8a8480!important;color:#fff!important;text-decoration:none}
@media(max-width:600px){.htrc-invoice-dl-btn,.htrc-invoice-view-btn{flex:1;text-align:center}}

/* ── Proof of payment ── */
.htrc-proof-area{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid rgba(0,0,0,.07)}
.htrc-proof-file-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.88em}
.htrc-proof-upload-row{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.htrc-proof-btn{display:inline-flex!important;align-items:center!important;gap:6px!important;cursor:pointer!important;font-size:.88em!important;padding:7px 16px!important;border-radius:5px!important;background:#96908a!important;color:#fff!important;border:none!important;transition:background .2s!important;font-weight:600!important;line-height:1.4!important;text-decoration:none!important}
.htrc-proof-btn:hover{background:#78716c!important;color:#fff!important;text-decoration:none!important}
.htrc-proof-btn input[type="file"]{display:none!important}
.htrc-proof-status{font-size:.88em;font-weight:500;display:inline-flex;align-items:center;gap:4px}
.htrc-proof-pending{color:#c77600}
.htrc-proof-approved{color:#2e7d32}
.htrc-proof-rejected{color:#c62828}
.htrc-proof-uploading{color:#555;font-size:.88em}
.htrc-proof-error{color:#c62828;font-size:.88em}
.htrc-proof-view-link{font-size:.85em;color:#555;text-decoration:underline}
.htrc-proof-view-link:hover{color:#333}
.htrc-proof-remaining{font-size:.8em;color:#999;font-style:italic}
.htrc-proof-hint{font-size:.78em;color:#888;display:block;margin-top:2px}

/* ── Pagination ── */
.htrc-invoices-paging{display:flex;gap:4px;margin-top:16px;flex-wrap:wrap}
.htrc-page-btn{min-width:36px;height:36px;border:none;border-radius:4px;background:#e8e5e1;color:#212529;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s}
.htrc-page-btn:hover{background:#78716c;color:#fff}
.htrc-page-btn.active{background:#78716c;color:#fff;cursor:default}
.htrc-invoices-loading,.htrc-invoices-empty{padding:20px 0;text-align:center;color:#666}

/* ── Logout ── */
.htrc-logout-wrap{display:flex;justify-content:center;align-items:center;padding:40px 16px;min-height:200px}
.htrc-logout-box{text-align:center;max-width:360px;width:100%;padding:32px 24px;background:#faf9f8;border:1px solid #ddd8d3;border-radius:10px}
.htrc-logout-icon{font-size:2.5em;color:#78716c;margin-bottom:12px;display:block}
.htrc-logout-box h3{margin:0 0 6px;font-size:1.2em;color:#333}
.htrc-logout-box p{margin:0 0 20px;color:#666;font-size:.95em}
.htrc-logout-btn{display:inline-block;padding:10px 28px;border:none;border-radius:5px;background:#78716c;color:#fff;font-size:.95em;font-weight:600;cursor:pointer;transition:background .2s;margin-right:8px}
.htrc-logout-btn:hover{background:#5f5955}
.htrc-logout-cancel{display:inline-block;padding:10px 28px;border:1px solid #ccc;border-radius:5px;background:#fff;color:#666;font-size:.95em;cursor:pointer;transition:background .2s}
.htrc-logout-cancel:hover{background:#f5f5f5}

/* ── Bookly overrides ── */
#bookly-tbs .dtr-control::before,#bookly-tbs table.dataTable td.dtr-control::before{transition:background-color .2s}
#bookly-tbs .dataTables_paginate .paginate_button,#bookly-tbs .dt-paging-button,#bookly-tbs .dt-paging button,#bookly-tbs div.dt-container .dt-paging .dt-paging-button{background:#e8e5e1!important;color:#212529!important;border:none!important;border-radius:4px!important}
#bookly-tbs .dataTables_paginate .paginate_button:hover,#bookly-tbs .dt-paging-button:hover,#bookly-tbs .dt-paging button:hover,#bookly-tbs div.dt-container .dt-paging .dt-paging-button:hover{background:#78716c!important;color:#fff!important}
#bookly-tbs .dataTables_paginate .paginate_button.current,#bookly-tbs .dataTables_paginate .paginate_button.current:hover,#bookly-tbs .dt-paging-button.current,#bookly-tbs .dt-paging-button.current:hover,#bookly-tbs .dt-paging button.current,#bookly-tbs div.dt-container .dt-paging .dt-paging-button.current,#bookly-tbs div.dt-container .dt-paging .dt-paging-button.current:hover{background:#78716c!important;color:#fff!important;border:none!important}
#bookly-tbs .page-item .page-link,#bookly-tbs .page-item.active .page-link{border-color:#78716c!important}
#bookly-tbs .page-item.active .page-link{background-color:#78716c!important;color:#fff!important}
#bookly-tbs .page-item .page-link:hover{background-color:#78716c!important;color:#fff!important}

.bct-cabinet-wrap{display:block;width:100%}
.bct-cabinet-wrap .bct-cabinet-missing{margin:0}
