.mu-ad{--green:#005a30;--dark:#063e2d;--gold:#fef201;--muted:#647b71;font-family:Poppins,sans-serif;color:var(--dark);width:100%;min-width:0}
.mu-ad *{box-sizing:border-box}
.mu-ad__toolbar{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:24px;flex-wrap:wrap}
.mu-ad__eyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;color:#007b44;display:block;margin-bottom:9px}
.mu-ad__intro h2{font:800 clamp(23px,3vw,32px)/1.3 Poppins,sans-serif;color:var(--dark);margin:0 0 7px}
.mu-ad__count{font-size:13px;color:var(--muted);margin:0}
.mu-ad__controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mu-ad__search-label,.mu-ad__sort-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.mu-ad__search-wrap{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #d6e5dc;border-radius:10px;padding:0 14px;min-width:270px;transition:border-color .2s,box-shadow .2s;color:#007b44}
.mu-ad__search-wrap:focus-within{border-color:#007b44;box-shadow:0 0 0 3px #007b441a}
.mu-ad__search{border:0!important;box-shadow:none!important;background:transparent!important;outline:none!important;min-width:0;width:100%;height:47px;font:400 13px Poppins,sans-serif;color:var(--dark);padding:0!important}
.mu-ad__sort{font:600 12px Poppins,sans-serif;border:1px solid #d6e5dc;background:#fff;border-radius:9px;padding:13px 12px;color:var(--dark);height:49px}
.mu-ad__table-wrap{border:1px solid #dfeae3;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 10px 32px #073d2910}
.mu-ad__table{width:100%;border-collapse:collapse;border-spacing:0;font:400 13px/1.6 Poppins,sans-serif;margin:0}
.mu-ad__table thead{background:#eaf5ee}
.mu-ad__table th{text-align:left;color:#084c32;font-weight:700;font-size:12px;padding:17px 16px;white-space:nowrap;border:0}
.mu-ad__table td{padding:17px 16px;border:0;border-bottom:1px solid #e8efeb;color:#506b5c;vertical-align:middle}
.mu-ad__table tbody tr:last-child td{border-bottom:0}
.mu-ad__table tbody tr:hover{background:#f4faf6}
.mu-ad__table tr[hidden]{display:none!important}
.mu-ad__name{font-weight:700;color:#075435!important;text-decoration:none!important;display:inline-flex;align-items:center;gap:8px;line-height:1.55}
.mu-ad__name span{color:#00844b;transition:transform .2s}.mu-ad__name:hover{color:#008c52!important}.mu-ad__name:hover span{transform:translate(3px,-3px)}
.mu-ad__empty{text-align:center;padding:38px 15px;background:#f5faf7;border:1px dashed #b6d2c1;border-radius:12px;margin-top:12px}
.mu-ad__empty[hidden],.mu-ad__pagination[hidden]{display:none!important}
.mu-ad__empty strong{color:#064b30}.mu-ad__empty p{font-size:13px;color:var(--muted)}
.mu-ad__pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:24px;font-size:12px;color:var(--muted)}
.mu-ad__pagination button{border:1px solid #cde1d4;border-radius:8px;background:#fff;padding:10px 15px;color:var(--green);font:600 12px Poppins,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.mu-ad__pagination button:hover:not(:disabled){background:var(--green);color:#fff}.mu-ad__pagination button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:760px){.mu-ad__toolbar{align-items:stretch}.mu-ad__controls{width:100%}.mu-ad__search-wrap{flex:1;min-width:180px}}
@media(max-width:640px){.mu-ad__search-wrap{flex-basis:100%}.mu-ad__sort{width:100%}.mu-ad__table-wrap{border:0;box-shadow:none;overflow:visible;background:transparent}.mu-ad__table,.mu-ad__table tbody,.mu-ad__table tr,.mu-ad__table td{display:block;width:100%}.mu-ad__table thead{display:none}.mu-ad__table tr{border:1px solid #dfeae3;border-radius:12px;margin-bottom:13px;background:#fff;box-shadow:0 5px 18px #063e2d0c;overflow:hidden;padding:12px}.mu-ad__table td{display:flex;align-items:start;justify-content:space-between;gap:14px;text-align:right;padding:9px 5px;border-bottom:1px solid #eff3ef}.mu-ad__table td:before{content:attr(data-label);color:#647b71;font-size:11px;font-weight:700;text-align:left;flex:0 0 34%}.mu-ad__table td:first-child{display:block;text-align:left;padding:9px 5px 14px}.mu-ad__table td:first-child:before{display:block;margin-bottom:5px}.mu-ad__table td:last-child{border-bottom:0}.mu-ad__pagination{gap:8px}}
@media(prefers-reduced-motion:reduce){.mu-ad *{transition:none!important;scroll-behavior:auto!important}}

/* ==========================================
   MOROTO UNIVERSITY PROJECT
   COMPACT ACADEMIC DIRECTORY
========================================== */

.mu-ad {
    font-family: "Poppins", sans-serif;
    width: 100%;
    max-width: 100%;
}

/* Search toolbar */
.mu-ad .mu-ad__toolbar {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

/* Programme count */
.mu-ad .mu-ad__intro {
    flex: 1 1 auto;
    min-width: 160px;
}

.mu-ad .mu-ad__count {
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #667d73;
}

/* Search controls */
.mu-ad .mu-ad__controls {
    display: block;
    flex: 0 1 360px;
    width: 100%;
    max-width: 360px;
    min-width: 0;
}

/* Accessible search label */
.mu-ad .mu-ad__search-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Search input wrapper */
.mu-ad .mu-ad__search-wrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

/* Search icon */
.mu-ad .mu-ad__search-wrap svg {
    position: absolute;
    left: 17px;
    width: 19px;
    height: 19px;
    color: #007a3d;
    pointer-events: none;
    z-index: 1;
}

/* Search field */
.mu-ad input.mu-ad__search {
    width: 100%;
    min-width: 0;
    height: 54px;
    padding: 12px 18px 12px 47px;
    margin: 0;
    border: 1px solid #d4e4da;
    border-radius: 12px;
    background: #ffffff;
    color: #06472f;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    box-sizing: border-box;
    transition:
        border-color .25s ease,
        box-shadow .25s ease;
}

.mu-ad input.mu-ad__search:focus {
    outline: none;
    border-color: #007a3d;
    box-shadow: 0 0 0 4px rgba(0, 122, 61, .08);
}

/* Remove sorting controls if cached markup remains */
.mu-ad .mu-ad__sort,
.mu-ad .mu-ad__sort-label {
    display: none !important;
}

/* Pagination hidden state */
.mu-ad .mu-ad__pagination[hidden],
.mu-ad .mu-ad__empty[hidden] {
    display: none !important;
}

/* Mobile layout */
@media (max-width: 767px) {

    .mu-ad .mu-ad__toolbar {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        margin-bottom: 20px;
    }

    .mu-ad .mu-ad__intro {
        flex: none;
        min-width: 0;
    }

    .mu-ad .mu-ad__controls {
        flex: none;
        max-width: 100%;
        width: 100%;
    }

    .mu-ad input.mu-ad__search {
        height: 50px;
        font-size: 14px;
    }

}

/* FIX: icon and input spacing, overriding theme and earlier module rules */
.mu-ad .mu-ad__search-wrap {position:relative;display:flex;align-items:center;padding:0 !important;overflow:visible;}
.mu-ad .mu-ad__search-wrap svg {position:absolute !important;left:17px !important;top:50% !important;transform:translateY(-50%);width:19px !important;height:19px !important;z-index:2;pointer-events:none;flex:none;stroke:#007a3d !important;fill:none !important;}
.mu-ad .mu-ad__search-wrap input.mu-ad__search {padding:0 42px 0 48px !important;height:54px;line-height:54px;border:0 !important;background:transparent !important;box-shadow:none !important;outline:0 !important;}
.mu-ad .mu-ad__search-wrap:focus-within {border-color:#007a3d;box-shadow:0 0 0 3px rgba(0,122,61,.12);}
.mu-ad .mu-ad__search-wrap input.mu-ad__search:focus {box-shadow:none !important;}
@media(max-width:767px){.mu-ad .mu-ad__search-wrap input.mu-ad__search{height:50px;line-height:50px;}}
