/* NewKSS shared admin/security display components */

.newkss-admin-card {
    border: 0;
    border-radius: 0.85rem;
    overflow: hidden;
}

.newkss-admin-card .card-header {
    letter-spacing: -0.01em;
}

.newkss-admin-card .card-footer {
    background-color: #f8f9fa;
}

.newkss-security-dashboard .card-header {
    min-height: 42px;
    display: flex;
    align-items: center;
}

.newkss-security-dashboard .table td,
.newkss-security-dashboard .table th {
    vertical-align: middle;
}

.newkss-security-dashboard .security-path-cell,
.newkss-security-dashboard .security-reason-cell,
.newkss-security-dashboard .security-ip-cell {
    max-width: 280px;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.newkss-security-dashboard .security-table-240 {
    max-height: 240px;
}

.newkss-security-dashboard .security-table-360 {
    max-height: 360px;
}

.newkss-security-dashboard .security-table-480 {
    max-height: 480px;
}

@media (max-width: 768px) {
    .newkss-security-dashboard .card-header {
        min-height: 38px;
        font-size: 0.9rem;
    }

    .newkss-security-dashboard .card-footer {
        font-size: 0.75rem;
    }

    .newkss-security-dashboard .security-table-240,
    .newkss-security-dashboard .security-table-360,
    .newkss-security-dashboard .security-table-480 {
        max-height: 320px;
    }

    .newkss-security-dashboard .btn-sm {
        min-height: 34px;
        padding-left: 0.65rem;
        padding-right: 0.65rem;
    }
}


/* Security dashboard balanced table scroll
   - General NewKSS tables keep page-level vertical scrolling.
   - Only security dashboard tables explicitly marked .newkss-inner-scroll get bounded inner scrolling.
   This keeps the page layout balanced without clipping QR/other list screens. */
.newkss-security-dashboard .newkss-inner-scroll {
    overflow-x: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable;
}

.newkss-security-dashboard .security-table-240.newkss-inner-scroll { max-height: 220px !important; }
.newkss-security-dashboard .security-table-360.newkss-inner-scroll { max-height: 360px !important; }
.newkss-security-dashboard .security-table-480.newkss-inner-scroll { max-height: 430px !important; }

.newkss-security-dashboard .newkss-inner-scroll thead th,
.newkss-security-dashboard .newkss-inner-scroll thead td {
    position: sticky;
    top: 0;
    z-index: 3;
    background: #f8f9fa;
}

@media (max-width: 768px) {
    .newkss-security-dashboard .security-table-240.newkss-inner-scroll,
    .newkss-security-dashboard .security-table-360.newkss-inner-scroll,
    .newkss-security-dashboard .security-table-480.newkss-inner-scroll {
        max-height: 340px !important;
    }
}
