.ebm-admin-wrap,
.ebm-frontend-wrap {
    margin-top: 20px;
}

.ebm-table-wrap {
    background: #fff;
    border: 1px solid #d6e2f1;
    border-radius: 18px;
    overflow-x: auto;
    box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}

.ebm-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 1250px;
	margin-bottom: 0px;
}

.ebm-table thead th {
    background: #2f6db5;
    color: #fff;
    padding: 16px 14px;
    text-align: left;
    font-weight: 600;
    font-size: 15px;
    border-right: 2px solid rgba(255,255,255,0.25);
}

.ebm-table thead th:first-child {
    border-top-left-radius: 18px;
}

.ebm-table thead th:last-child {
    border-top-right-radius: 18px;
    border-right: 0;
}

.ebm-table tbody td {
    padding: 14px;
    border-top: 1px solid #d8e3f2;
    border-right: 1px solid #d8e3f2;
    vertical-align: middle;
    background: #fff;
}

.ebm-table tbody td:last-child {
    border-right: 0;
}

.ebm-group-row td {
    background: #edf8f8;
    color: #00a2a2;
    font-weight: 700;
    border-left: 4px solid #00b3b3;
    padding: 16px 18px;
    font-size: 16px;
}

.ebm-group-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.ebm-group-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.ebm-group-title-input {
    min-width: 260px;
    font-weight: 700 !important;
    color: #00a2a2 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    font-size: 18px !important;
}

.ebm-group-title-text {
    font-size: 18px;
    font-weight: 700;
    color: #00a2a2;
}

.ebm-table input[type="text"],
.ebm-table input[type="number"] {
    width: 100%;
    min-height: 40px;
    border: 1px solid #c7d7eb;
    border-radius: 8px;
    padding: 10px 12px;
    box-sizing: border-box;
    background: #fff;
}

.ebm-table input[readonly] {
    background: #f7fbff;
    cursor: not-allowed;
}

.ebm-checkbox-cell {
    text-align: center;
}

.ebm-check-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
}

.ebm-check-wrap input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.ebm-check-ui {
    width: 24px;
    height: 24px;
    border: 2px solid #7f8ea3;
    border-radius: 3px;
    background: #fff;
    display: inline-block;
    position: relative;
}

.ebm-check-wrap input:checked + .ebm-check-ui {
    background: #3d5afe;
    border-color: #3d5afe;
}

.ebm-check-wrap input:checked + .ebm-check-ui:after {
    content: "✓";
    position: absolute;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    left: 50%;
    top: 48%;
    transform: translate(-50%, -50%);
}

.ebm-actions {
    margin-top: 20px;
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}

.ebm-remove-row,
.ebm-delete-group {
    background: #e33444 !important;
    border-color: #e33444 !important;
    color: #fff !important;
    min-height: 40px;
    padding: 0 18px !important;
}

#ebm-response {
    margin-top: 15px;
}

/*.ebm-summary-box {
    margin-top: 28px;
    background: #fff;
    border: 1px solid #d6e2f1;
    border-radius: 14px;
    padding: 0px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}*/

.ebm-summary-item h4 {
    margin: 0 0 10px;
    font-size: 17px;
    font-weight: 700;
    color: #2364AA;
}

.ebm-summary-item p {
    margin: 0;
    font-size: 16px;
    color: #1f2d3d;
    line-height: 1.7;
}

.ebm-public-text-cell {
    text-align: center;
    font-weight: 600;
}

.ebm-public-table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 18px;
}

.ebm-public-table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 18px;
}
.ebm-total-row td {
    background: #f5f9ff;
    font-weight: 700;
}

@media (max-width: 991px) {
    .ebm-summary-box {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .ebm-summary-box {
        grid-template-columns: 1fr;
    }

    .ebm-group-bar {
        flex-direction: column;
        align-items: flex-start;
    }
}







/* ===============================
   EBM SUMMARY BOX PREMIUM DESIGN
================================== */

.ebm-summary-box{
    margin-top:30px;
    /*background: linear-gradient(135deg,#ffffff,#f8fbff);*/
     /*border:1px solid rgba(35,100,170,0.15);*/
     /*border-radius:20px;*/
     /*padding:0px;*/
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
     /*box-shadow:0 10px 35px rgba(35,100,170,0.08);*/
}

/* Card Design */
.ebm-summary-item{
    position:relative;
    background:#fff;
    border-radius:18px;
    padding:25px 20px;
    overflow:hidden;
    transition:all .35s ease;
    box-shadow:0 8px 25px rgba(0,0,0,.06);
    border:1px solid rgba(35,100,170,0.08);
}

/* Top Border Color */
.ebm-summary-item:nth-child(1){
    border-top:5px solid #2364AA;
}

.ebm-summary-item:nth-child(2){
    border-top:5px solid #ff6480;
}

.ebm-summary-item:nth-child(3){
    border-top:5px solid #00a79d;
}

.ebm-summary-item:nth-child(4){
    border-top:5px solid #2364AA;
}

/* Hover Effect */
.ebm-summary-item:hover{
    transform:translateY(-8px);
    box-shadow:0 18px 40px rgba(35,100,170,0.18);
}

/* Heading */
.ebm-summary-item h4{
    margin:0 0 14px;
    font-size:18px;
    font-weight:700;
    color:#2364AA;
    padding-left:48px;
    line-height:1.4;
}

/* Values */
.ebm-summary-item p{
    margin:0;
    font-size:17px;
    font-weight:600;
    color:#1f2d3d;
    padding-left:48px;
    line-height:1.8;
}

/* =====================
   ICONS
===================== */

.ebm-summary-item h4::before{
    position:absolute;
    left:20px;
    top:20px;
    width:42px;
    height:42px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    font-family:"Font Awesome 6 Free";
    font-weight:900;
}

/* Total Beds */
.ebm-summary-item:nth-child(1) h4::before{
    content:"\f236";
    background:rgba(35,100,170,.12);
    color:#2364AA;
}

/* Occupied Beds */
.ebm-summary-item:nth-child(2) h4::before{
    content:"\f0f8";
    background:rgba(255,100,128,.15);
    color:#ff6480;
}

/* Vacant Beds */
.ebm-summary-item:nth-child(3) h4::before{
    content:"\f479";
    background:rgba(0,167,157,.12);
    color:#00a79d;
}

/* Last Updated */
.ebm-summary-item:nth-child(4) h4::before{
    content:"\f017";
    background:rgba(35,100,170,.12);
    color:#2364AA;
}

/* Decorative Circle */
.ebm-summary-item::after{
    content:"";
    position:absolute;
    right:-35px;
    top:-35px;
    width:110px;
    height:110px;
    border-radius:50%;
    background:rgba(35,100,170,.05);
}
td.ebm-public-text-cell {
    color: #3f3fef;
}
.ebm-summary-item:nth-child(2)::after{
    background:rgba(255,100,128,.08);
}

.ebm-summary-item:nth-child(3)::after{
    background:rgba(0,167,157,.08);
}

/* Responsive */
@media(max-width:991px){
    .ebm-summary-box{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:575px){
    .ebm-summary-box{
        grid-template-columns:1fr;
    }

    .ebm-summary-item{
        padding:22px 18px;
    }

    .ebm-summary-item h4,
    .ebm-summary-item p{
        padding-left:55px;
    }
}