/* Shared grid treatment for reports, employees and location masters.
   Specificity keeps typography consistent even when page CSS loads later. */
body.dashboard-page table.pms-data-grid {
    width:100%;
    border-collapse:collapse;
    text-align:left;
    font-family:Poppins,Arial,sans-serif;
    font-size:12px;
    font-style:normal;
    font-weight:600;
    line-height:1.5;
    color:#35445a;
}
body.dashboard-page table.pms-data-grid th {
    height:34px;
    box-sizing:border-box;
    padding:8px 12px;
    border-top:1px solid #eee5dd;
    border-bottom:1px solid #e9dfd6;
    background:#faf7f3;
    color:#465367;
    font:600 10px/1.5 Poppins,Arial,sans-serif;
    letter-spacing:.025em;
    text-transform:uppercase;
    white-space:nowrap;
    vertical-align:middle;
}
body.dashboard-page table.pms-data-grid th button {
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    font:inherit;
    letter-spacing:inherit;
    text-transform:inherit;
    text-align:left;
    cursor:pointer;
}
body.dashboard-page table.pms-data-grid td {
    box-sizing:border-box;
    height:56px;
    padding:10px 12px;
    border-bottom:1px solid #eee6de;
    vertical-align:middle;
    font:600 12px/1.5 Poppins,Arial,sans-serif;
    color:#35445a;
}
body.dashboard-page table.pms-data-grid tbody tr {background:#fff}
body.dashboard-page table.pms-data-grid tbody tr:nth-child(odd) {background:#fffcf8}
body.dashboard-page table.pms-data-grid tbody tr:hover {background:#fff3e8}
body.dashboard-page table.pms-data-grid td strong,
body.dashboard-page table.pms-data-grid td:first-child {
    font-size:12px;
    font-weight:600;
    color:#303a49;
}
body.dashboard-page table.pms-data-grid td small,
body.dashboard-page table.pms-data-grid .report-contact-line {
    display:block;
    margin-top:2px;
    font:600 11px/1.5 Poppins,Arial,sans-serif;
    color:#465367;
}
body.dashboard-page table.pms-data-grid .report-avatar,
body.dashboard-page table.pms-data-grid .master-avatar {
    display:grid;
    place-items:center;
    flex:0 0 36px;
    width:36px;
    height:36px;
    border-radius:10px;
    border:1px solid #ffe1c5;
    background:linear-gradient(140deg,#fff0df,#ffddbd);
    color:#b65009;
    font:600 12px/1 Poppins,Arial,sans-serif;
}
body.dashboard-page table.pms-data-grid .master-code {
    font:600 11px/1.5 Poppins,Arial,sans-serif;
    color:#465367;
}
body.dashboard-page table.pms-data-grid .client-row-actions :is(button,a),
body.dashboard-page table.pms-data-grid .master-edit {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    min-height:28px;
    height:28px;
    padding:4px 7px;
    border:1px solid #f0d8c4;
    border-radius:6px;
    background:#fff;
    color:#d5620a;
    font:600 11px/1.4 Poppins,Arial,sans-serif;
    text-decoration:none;
}
body.dashboard-page table.pms-data-grid .client-row-actions :is(button,a) {
    flex:0 0 30px;
    width:30px;
    font-size:16px;
}
body.dashboard-page table.pms-data-grid .client-row-actions svg {width:15px;height:15px}
body.dashboard-page table.pms-data-grid :is(a,button):focus-visible {outline:2px solid #ef791e;outline-offset:2px}
body.dashboard-page table.pms-data-grid .client-status,
body.dashboard-page table.pms-data-grid .report-profile,
body.dashboard-page table.pms-data-grid .client-profile-pill {
    font:600 11px/1.4 Poppins,Arial,sans-serif;
}
body.dashboard-page table.pms-data-grid .master-empty {
    height:auto;
    padding:32px 16px;
    text-align:center;
    font-weight:600;
}
@media(max-width:700px) {
    body.dashboard-page table.pms-data-grid th,
    body.dashboard-page table.pms-data-grid td {padding-left:10px;padding-right:10px}
}

body.dashboard-page table.pms-data-grid .pms-date-range {display:inline-block;white-space:nowrap;font-weight:600;color:#35445a;}
