
/* ============================================================
   PSB UI v1.9.4 — EXACT HEADER FROM THEME MAN KOTA BLITAR v1.7.5
   ============================================================ */
:root{
    --mkb-green:#0b5d3b;
    --mkb-green-dark:#073f2b;
    --mkb-green-soft:#eaf3ee;
    --mkb-gold:#d3ad32;
    --mkb-blue:#277eb8;
    --mkb-dark:#173027;
    --mkb-text:#26332e;
    --mkb-muted:#69766f;
    --mkb-light:#f6f9f7;
    --mkb-white:#fff;
    --mkb-border:#e2e9e5;
    --mkb-radius:16px;
    --mkb-shadow:0 12px 30px rgba(18,55,40,.08);
    --mkb-container:1180px;

    /* Existing PSB variables mapped to same palette */
    --green:#0b5d3b;
    --green-dark:#073f2b;
    --green-mid:#0d7c4d;
    --green-soft:#eaf3ee;
    --gold:#d3ad32;
    --dark:#173027;
    --text:#26332e;
    --muted:#69766f;
    --border:#e2e9e5;
    --bg:#f5f8f6;
    --white:#fff;
    --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:#fff;
    color:var(--mkb-text);
    font-family:Arial,Helvetica,sans-serif;
    line-height:1.7;
}
a{color:var(--mkb-green);text-decoration:none}
a:hover{color:var(--mkb-green-dark)}
img{max-width:100%;height:auto}
.container{
    width:min(calc(100% - 36px),var(--mkb-container));
    margin-inline:auto;
}

/* PSB is current app: keep gold button, no artificial underline. */
.mkb-psb-current-v194{
    background:#d3ad32;
    color:#211b08;
}

/* Keep complaint link same as main website's visual emphasis. */
.mkb-menu-complaint-v172 > a{
    color:#9c2e22;
}

/* The PSB page has no WP admin bar, so fixed header starts at viewport top. */
body{
    padding-top:var(--mkb-fixed-header-total,150px);
}

.mkb-headbar{
    background:linear-gradient(90deg,#fff 0%,#f4f8f6 52%,#edf5f0 100%);
    border-bottom:1px solid #e2e9e5;
}

.mkb-headbar-inner{
    min-height:92px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.mkb-headbar-brand{
    display:flex;
    align-items:center;
    gap:15px;
    min-width:0;
    color:#18342a;
}

.mkb-headbar-logos{
    display:flex;
    align-items:center;
    gap:9px;
    flex:0 0 auto;
}

.mkb-head-logo{
    display:block;
    object-fit:contain;
}

.mkb-head-logo-kemenag{
    width:54px;
    height:54px;
}

.mkb-head-logo-man{
    width:56px;
    height:56px;
}

.mkb-head-logo-sep{
    width:1px;
    height:38px;
    background:#d8e2dc;
}

.mkb-headbar-copy{
    display:flex;
    flex-direction:column;
    line-height:1.15;
}

.mkb-headbar-ministry{
    color:#6b7772;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.mkb-headbar-school{
    margin-top:4px;
    color:#0b5d3b;
    font-size:23px;
    font-weight:800;
    letter-spacing:.01em;
}

.mkb-headbar-sub{
    margin-top:3px;
    color:#34463e;
    font-size:11px;
    font-weight:600;
}

.mkb-headbar-contact{
    display:flex;
    align-items:center;
    gap:24px;
}

.mkb-contact-item{
    display:flex;
    flex-direction:column;
    gap:2px;
    line-height:1.2;
}

.mkb-contact-label{
    color:#7b8881;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.mkb-contact-item strong{
    color:#43534c;
    font-size:12px;
    font-weight:700;
}

.mkb-social-links{
    display:flex;
    align-items:center;
    gap:8px;
}

.mkb-social-links a{
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#edf5f1;
    color:#0b5d3b;
    font-size:12px;
    font-weight:800;
}

.mkb-social-links a:hover{
    background:#0b5d3b;
    color:#fff;
}

/* Navigasi utama */
.mkb-main-header{
    position:sticky;
    top:0;
    z-index:1200;
    background:#fff;
    border-bottom:1px solid #e3eae6;
    box-shadow:0 5px 18px rgba(13,59,42,.06);
}

.admin-bar .mkb-main-header{
    top:32px;
}

.mkb-main-header-inner{
    min-height:58px;
    display:flex;
    align-items:center;
    gap:18px;
}

.mkb-nav{
    flex:1 1 auto;
    min-width:0;
}

.mkb-primary-menu-v050{
    display:flex;
    align-items:center;
    gap:2px;
    list-style:none;
    margin:0;
    padding:0;
}

.mkb-menu-item{
    position:relative;
}

.mkb-menu-item > a,
.mkb-submenu-toggle{
    min-height:58px;
    display:flex;
    align-items:center;
    gap:7px;
    padding:0 12px;
    border:0;
    background:transparent;
    color:#24342e;
    font:inherit;
    font-size:13px;
    font-weight:750;
    cursor:pointer;
    white-space:nowrap;
    position:relative;
}

.mkb-menu-item > a:hover,
.mkb-submenu-toggle:hover,
.mkb-has-submenu.is-submenu-open > .mkb-submenu-toggle{
    color:#0b5d3b;
    background:#f6f9f7;
}

.mkb-menu-item > a::after,
.mkb-submenu-toggle::after{
    content:"";
    position:absolute;
    left:12px;
    right:12px;
    bottom:0;
    height:3px;
    background:transparent;
    border-radius:3px 3px 0 0;
}

.mkb-menu-item > a:hover::after,
.mkb-submenu-toggle:hover::after,
.mkb-has-submenu.is-submenu-open > .mkb-submenu-toggle::after{
    background:#d3ad32;
}

.mkb-chevron{
    width:7px;
    height:7px;
    border-right:1.5px solid currentColor;
    border-bottom:1.5px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
    transition:transform .2s ease;
}

.mkb-has-submenu.is-submenu-open .mkb-chevron{
    transform:rotate(225deg) translate(-1px,-1px);
}

/* Dropdown baru */
.mkb-sub-menu{
    position:absolute;
    top:100%;
    left:0;
    z-index:1300;
    width:270px;
    display:none;
    list-style:none;
    margin:0;
    padding:9px;
    background:#fff;
    border:1px solid #e2e9e5;
    border-top:3px solid #d3ad32;
    border-radius:0 0 12px 12px;
    box-shadow:0 18px 40px rgba(18,55,40,.13);
}

.mkb-has-submenu:hover > .mkb-sub-menu,
.mkb-has-submenu:focus-within > .mkb-sub-menu,
.mkb-has-submenu.is-submenu-open > .mkb-sub-menu{
    display:block;
}

.mkb-sub-menu li + li{
    margin-top:2px;
}

.mkb-sub-menu a{
    display:block;
    padding:10px 11px;
    border-radius:8px;
    color:#31413a;
    font-size:13px;
    font-weight:650;
    line-height:1.4;
}

.mkb-sub-menu a:hover{
    color:#0b5d3b;
    background:#eef6f2;
}

/* CTA kanan */
.mkb-header-actions{
    display:flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
    margin-left:auto;
}

.mkb-action-button{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border-radius:9px;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.mkb-action-ptsp{
    background:#0b5d3b;
    color:#fff;
}

.mkb-action-ptsp:hover{
    background:#08472d;
    color:#fff;
}

.mkb-action-psb{
    background:#d3ad32;
    color:#211b08;
}

.mkb-action-psb:hover{
    background:#c49c20;
    color:#211b08;
}

.mkb-search-toggle{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border:1px solid #dce6e1;
    border-radius:9px;
    background:#fff;
    color:#0b5d3b;
    font-size:19px;
    cursor:pointer;
}

/* Mobile */
.mkb-menu-toggle{
    display:none;
}

@media(max-width:1120px){
    .mkb-headbar-contact{
        gap:15px;
    }

    .mkb-primary-menu-v050{
        gap:0;
    }

    .mkb-menu-item > a,
    .mkb-submenu-toggle{
        padding-inline:9px;
        font-size:12px;
    }

    .mkb-action-button{
        padding-inline:10px;
    }
}

@media(max-width:980px){
    .mkb-contact-item:nth-child(2){
        display:none;
    }

    .mkb-menu-item:nth-child(4){
        display:none;
    }
}

@media(max-width:900px){
    .mkb-headbar-inner{
        min-height:78px;
    }

    .mkb-headbar-contact{
        display:none;
    }

    .mkb-head-logo-kemenag,
    .mkb-head-logo-man{
        width:43px;
        height:43px;
    }

    .mkb-headbar-school{
        font-size:18px;
    }

    .mkb-headbar-ministry{
        display:none;
    }

    .mkb-main-header-inner{
        min-height:52px;
    }

    .mkb-menu-toggle{
        display:flex;
        width:40px;
        height:40px;
        align-items:center;
        justify-content:center;
        flex-direction:column;
        gap:4px;
        border:1px solid #dce6e1;
        border-radius:9px;
        background:#fff;
        cursor:pointer;
    }

    .mkb-menu-line{
        width:18px;
        height:2px;
        border-radius:99px;
        background:#0b5d3b;
    }

    .mkb-nav{
        display:none;
        position:absolute;
        left:0;
        right:0;
        top:52px;
        max-height:calc(100vh - 52px);
        overflow:auto;
        background:#fff;
        border-top:1px solid #e2e9e5;
        box-shadow:0 18px 35px rgba(20,45,35,.14);
    }

    .mkb-nav.is-open{
        display:block;
    }

    .mkb-primary-menu-v050{
        display:block;
        padding:10px 14px 16px;
    }

    .mkb-menu-item{
        display:block !important;
    }

    .mkb-menu-item > a,
    .mkb-submenu-toggle{
        width:100%;
        min-height:44px;
        padding:10px 12px;
        justify-content:space-between;
        border-radius:8px;
        font-size:14px;
        white-space:normal;
    }

    .mkb-menu-item > a::after,
    .mkb-submenu-toggle::after{
        display:none;
    }

    .mkb-sub-menu{
        position:static;
        width:auto;
        display:none;
        margin:0 0 5px 12px;
        padding:3px 0 3px 10px;
        border:0;
        border-left:2px solid #dce8e1;
        border-radius:0;
        box-shadow:none;
    }

    .mkb-has-submenu:hover > .mkb-sub-menu{
        display:none;
    }

    .mkb-has-submenu.is-submenu-open > .mkb-sub-menu{
        display:block;
    }

    .mkb-sub-menu a{
        padding:9px 10px;
    }
}

@media(max-width:560px){
    .mkb-head-logo-kemenag,
    .mkb-head-logo-sep{
        display:none;
    }

    .mkb-headbar-school{
        font-size:16px;
    }

    .mkb-headbar-sub{
        max-width:210px;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }

    .mkb-action-button{
        min-height:34px;
        padding:0 9px;
        font-size:11px;
    }

    .mkb-search-toggle{
        width:34px;
        height:34px;
    }
}



/* ============================================================
   THEME v1.5.1 — HEADER STICKY / FIXED
   ============================================================ */

:root{
    --mkb-fixed-headbar-height:92px;
    --mkb-fixed-nav-height:58px;
    --mkb-fixed-header-total:150px;
}

.mkb-headbar{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    z-index:5000;
    width:100%;
}

.mkb-main-header{
    position:fixed !important;
    top:var(--mkb-fixed-headbar-height) !important;
    left:0;
    right:0;
    z-index:4990;
    width:100%;
    overflow:visible !important;
}

body{
    padding-top:var(--mkb-fixed-header-total);
}

.admin-bar .mkb-headbar{
    top:32px;
}

.admin-bar .mkb-main-header{
    top:calc(32px + var(--mkb-fixed-headbar-height)) !important;
}

.mkb-nav,
.mkb-primary-menu-v050,
.mkb-menu-item,
.mkb-has-submenu,
.mkb-main-header .container,
.mkb-main-header-inner{
    overflow:visible !important;
}

.mkb-sub-menu{
    z-index:5200 !important;
}

.mkb-hero-v060,
.mkb-internal-hero,
.mkb-news-head-v140,
[id]{
    scroll-margin-top:calc(var(--mkb-fixed-header-total) + 20px);
}

html.mkb-lock-scroll-v151,
body.mkb-lock-scroll-v151{
    overflow:hidden !important;
}

@media(max-width:900px){
    :root{
        --mkb-fixed-headbar-height:72px;
        --mkb-fixed-nav-height:54px;
        --mkb-fixed-header-total:126px;
    }

    .mkb-main-header{
        top:var(--mkb-fixed-headbar-height) !important;
    }

    .admin-bar .mkb-headbar{
        top:46px;
    }

    .admin-bar .mkb-main-header{
        top:calc(46px + var(--mkb-fixed-headbar-height)) !important;
    }

    .mkb-nav{
        position:fixed !important;
        top:var(--mkb-fixed-header-total) !important;
        left:0;
        right:0;
        bottom:0;
        max-height:none !important;
        overflow-y:auto !important;
        overscroll-behavior:contain;
        -webkit-overflow-scrolling:touch;
        z-index:5210 !important;
        background:#fff;
    }

    .admin-bar .mkb-nav{
        top:calc(46px + var(--mkb-fixed-header-total)) !important;
    }

    .mkb-sub-menu{
        position:static !important;
        z-index:auto !important;
        max-height:none;
        overflow:visible !important;
    }

    .mkb-search-panel{
        position:absolute;
        left:0;
        right:0;
        top:100%;
        z-index:5220;
        background:#f8faf9;
    }
}

@media(max-width:782px){
    .admin-bar .mkb-headbar{
        top:46px;
    }

    .admin-bar .mkb-main-header{
        top:calc(46px + var(--mkb-fixed-headbar-height)) !important;
    }
}


/* ============================================================
   THEME v1.6.0 — MODUL AKADEMIK
   ============================================================ */

.mkb-academic-page-v160{
    background:#f7faf8;
}

.mkb-academic-heading-v160{
    max-width:850px;
    margin-bottom:30px;
}

.mkb-academic-heading-v160 > span{
    color:var(--mkb-green);
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.mkb-academic-heading-v160 h2{
    margin:6px 0 8px;
    color:var(--mkb-dark);
    font-size:36px;
    line-height:1.2;
}

.mkb-academic-heading-v160 p{
    margin:0;
    color:var(--mkb-muted);
    font-size:15px;
    line-height:1.7;
}

/* Kurikulum */
.mkb-curriculum-summary-v160{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    overflow:hidden;
    border:1px solid rgba(214,172,36,.45);
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 32px rgba(20,50,35,.06);
}

.mkb-curriculum-primary-v160{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:30px;
    background:linear-gradient(145deg,#0c5a3b,#08462f);
    color:#fff;
}

.mkb-curriculum-primary-v160 span{
    color:#f0ce45;
    font-size:10px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.mkb-curriculum-primary-v160 strong{
    margin-top:6px;
    font-size:32px;
    line-height:1.1;
}

.mkb-curriculum-content-v160{
    padding:30px;
}

.mkb-curriculum-content-v160 small{
    color:var(--mkb-green);
    font-size:9px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.mkb-curriculum-content-v160 h3{
    margin:5px 0 10px;
    color:var(--mkb-dark);
    font-size:28px;
}

.mkb-curriculum-content-v160 p{
    margin:0;
    color:var(--mkb-muted);
    line-height:1.7;
}

.mkb-academic-content-card-v160,
.mkb-academic-detail-v160{
    margin-top:28px;
    padding:30px;
    border:1px solid var(--mkb-border);
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 28px rgba(20,50,35,.05);
}

.mkb-academic-actions-v160{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:18px;
}

.mkb-academic-btn-primary-v160,
.mkb-academic-btn-secondary-v160{
    display:inline-flex;
    min-height:40px;
    align-items:center;
    justify-content:center;
    padding:0 15px;
    border-radius:9px;
    font-size:11px;
    font-weight:900;
}

.mkb-academic-btn-primary-v160{
    background:var(--mkb-green);
    color:#fff;
}

.mkb-academic-btn-primary-v160:hover{color:#fff}

.mkb-academic-btn-secondary-v160{
    border:1px solid var(--mkb-green);
    background:#fff;
    color:var(--mkb-green);
}

/* Program */
.mkb-program-grid-v160{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.mkb-program-card-v160{
    overflow:hidden;
    border:1px solid var(--mkb-border);
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 28px rgba(20,50,35,.05);
}

.mkb-program-image-v160{
    display:block;
    overflow:hidden;
    aspect-ratio:16/10;
    background:#e4ede8;
}

.mkb-program-image-v160 img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .25s ease;
}

.mkb-program-card-v160:hover .mkb-program-image-v160 img{
    transform:scale(1.035);
}

.mkb-program-body-v160{
    padding:20px;
}

.mkb-program-body-v160 small{
    color:#aa8200;
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.mkb-program-body-v160 h3{
    margin:6px 0 8px;
    font-size:21px;
    line-height:1.3;
}

.mkb-program-body-v160 h3 a{color:var(--mkb-dark)}

.mkb-program-body-v160 p{
    margin:0;
    color:var(--mkb-muted);
    font-size:12px;
    line-height:1.65;
}

.mkb-program-target-v160{
    margin-top:12px;
    padding:9px 11px;
    border-radius:8px;
    background:#edf5f1;
    color:var(--mkb-green);
    font-size:10px;
    font-weight:800;
}

.mkb-academic-readmore-v160{
    display:inline-flex;
    margin-top:14px;
    color:var(--mkb-green);
    font-size:11px;
    font-weight:900;
}

.mkb-academic-featured-v160{
    margin:0 0 26px;
    overflow:hidden;
    border-radius:15px;
}

.mkb-academic-featured-v160 img{
    width:100%;
    max-height:560px;
    display:block;
    object-fit:cover;
}

/* Kalender */
.mkb-calendar-list-v160{
    display:grid;
    gap:12px;
}

.mkb-calendar-item-v160{
    display:grid;
    grid-template-columns:105px minmax(0,1fr);
    overflow:hidden;
    border:1px solid var(--mkb-border);
    border-radius:14px;
    background:#fff;
}

.mkb-calendar-item-v160.is-past{
    opacity:.64;
}

.mkb-calendar-date-v160{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:120px;
    padding:16px;
    background:#0b5d3b;
    color:#fff;
}

.mkb-calendar-date-v160 strong{
    color:#f0ce45;
    font-size:31px;
    line-height:1;
}

.mkb-calendar-date-v160 span{
    margin-top:5px;
    font-size:10px;
    text-transform:uppercase;
}

.mkb-calendar-body-v160{
    padding:18px 20px;
}

.mkb-calendar-meta-v160{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}

.mkb-calendar-meta-v160 span{
    color:var(--mkb-green);
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
}

.mkb-calendar-meta-v160 small{
    color:var(--mkb-muted);
    font-size:9px;
}

.mkb-calendar-body-v160 h3{
    margin:5px 0 6px;
    font-size:20px;
}

.mkb-calendar-body-v160 h3 a{color:var(--mkb-dark)}

.mkb-calendar-body-v160 p{
    margin:4px 0 0;
    color:var(--mkb-muted);
    font-size:11px;
}

/* Informasi Akademik */
.mkb-academic-filter-v160{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:22px;
}

.mkb-academic-filter-v160 button{
    min-height:38px;
    padding:0 14px;
    border:1px solid var(--mkb-border);
    border-radius:999px;
    background:#fff;
    color:var(--mkb-dark);
    font:inherit;
    font-size:10px;
    font-weight:800;
    cursor:pointer;
}

.mkb-academic-filter-v160 button.is-active,
.mkb-academic-filter-v160 button:hover{
    border-color:var(--mkb-green);
    background:var(--mkb-green);
    color:#fff;
}

.mkb-info-grid-v160{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.mkb-info-card-v160{
    overflow:hidden;
    border:1px solid var(--mkb-border);
    border-radius:15px;
    background:#fff;
    box-shadow:0 10px 28px rgba(20,50,35,.05);
}

.mkb-info-card-v160[hidden]{
    display:none !important;
}

.mkb-info-image-v160{
    display:block;
    overflow:hidden;
    aspect-ratio:16/9;
}

.mkb-info-image-v160 img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.mkb-info-body-v160{
    padding:19px;
}

.mkb-info-body-v160 > small{
    color:var(--mkb-green);
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.mkb-info-body-v160 h3{
    margin:5px 0 8px;
    font-size:19px;
    line-height:1.35;
}

.mkb-info-body-v160 h3 a{color:var(--mkb-dark)}

.mkb-info-body-v160 p{
    margin:0;
    color:var(--mkb-muted);
    font-size:12px;
    line-height:1.65;
}

.mkb-info-actions-v160{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:14px;
}

.mkb-info-actions-v160 a{
    color:var(--mkb-green);
    font-size:10px;
    font-weight:900;
}

.mkb-academic-document-v160,
.mkb-academic-meta-box-v160{
    margin:28px 0;
    padding:20px;
    border:1px solid var(--mkb-border);
    border-radius:13px;
    background:#f8fbf9;
}

.mkb-academic-document-v160{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.mkb-academic-document-v160 small{
    color:var(--mkb-green);
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
}

.mkb-academic-document-v160 h3{
    margin:3px 0 0;
    color:var(--mkb-dark);
}

/* Responsive */
@media(max-width:980px){
    .mkb-program-grid-v160,
    .mkb-info-grid-v160{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:680px){
    .mkb-academic-heading-v160 h2{
        font-size:30px;
    }

    .mkb-curriculum-summary-v160{
        grid-template-columns:1fr;
    }

    .mkb-curriculum-primary-v160,
    .mkb-curriculum-content-v160{
        padding:22px;
    }

    .mkb-program-grid-v160,
    .mkb-info-grid-v160{
        grid-template-columns:1fr;
    }

    .mkb-calendar-item-v160{
        grid-template-columns:82px minmax(0,1fr);
    }

    .mkb-calendar-date-v160{
        min-height:110px;
        padding:12px;
    }

    .mkb-calendar-date-v160 strong{
        font-size:27px;
    }

    .mkb-academic-document-v160{
        align-items:flex-start;
        flex-direction:column;
    }

    .mkb-academic-content-card-v160,
    .mkb-academic-detail-v160{
        padding:21px;
    }
}



/* HERO */
.psb-hero{
  position:relative;overflow:hidden;
  width:min(calc(100% - 36px),var(--container));
  margin:28px auto 16px;padding:34px;border-radius:22px;
  background:
    radial-gradient(circle at 90% 10%,rgba(213,178,59,.2),transparent 26%),
    linear-gradient(135deg,var(--green-dark),var(--green-mid));
  color:#fff;box-shadow:var(--shadow);
}
.psb-hero:after{
  content:"";position:absolute;width:280px;height:280px;right:-100px;bottom:-165px;
  border-radius:50%;background:rgba(255,255,255,.05)
}
.psb-kicker{
  position:relative;z-index:2;display:inline-flex;align-items:center;gap:8px;
  color:#f3d969;font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase
}
.psb-kicker:before{content:"";width:23px;height:3px;border-radius:99px;background:var(--gold)}
.psb-hero h1{
  position:relative;z-index:2;margin:8px 0;
  font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.02em
}
.psb-hero p{
  position:relative;z-index:2;max-width:760px;margin:0;
  color:rgba(255,255,255,.78);font-size:13px;line-height:1.7
}
.psb-status-pill{
  position:relative;z-index:2;display:inline-flex;align-items:center;gap:7px;
  margin-top:18px;padding:9px 13px;border-radius:999px;font-size:9px;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase
}
.psb-status-pill.open{background:#e4f5ec;color:#0d6542}
.psb-status-pill.wait{background:#eef6fb;color:#275b78}
.psb-status-pill.closed{background:#fff0ed;color:#a13a2e}

/* STEPS */
.psb-steps{
  width:min(calc(100% - 36px),var(--container));
  margin:0 auto 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px
}
.psb-step{
  display:flex;align-items:center;gap:10px;min-height:68px;padding:12px 13px;
  border:1px solid var(--border);border-radius:13px;background:#fff
}
.psb-step-no{
  width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;
  border-radius:9px;background:var(--green-soft);color:var(--green);
  font-size:10px;font-weight:900
}
.psb-step strong{display:block;color:var(--dark);font-size:10px}
.psb-step small{display:block;margin-top:2px;color:var(--muted);font-size:8px}

/* MAIN */
.psb-main{
  width:min(calc(100% - 36px),var(--container));
  margin:0 auto 50px
}
.psb-status-card{
  padding:28px;border:1px solid var(--border);border-radius:18px;background:#fff;box-shadow:var(--shadow)
}
.psb-status-card.closed{border-left:5px solid #bd4a3e}
.psb-status-card.wait{border-left:5px solid #4f8bab}
.psb-status-card.open{border-left:5px solid var(--green)}
.psb-status-card h2{margin:0 0 8px;color:var(--dark);font-size:24px}
.psb-status-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.psb-status-card .psb-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}

.psb-section{
  margin-bottom:16px;padding:23px;border:1px solid var(--border);border-radius:var(--radius);
  background:#fff;box-shadow:0 8px 24px rgba(18,55,40,.045)
}
.psb-section-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #edf2ef
}
.psb-section-head span{display:block;color:var(--green);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.psb-section-head h2{margin:4px 0 0;color:var(--dark);font-size:21px}
.psb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.psb-field.full{grid-column:1/-1}
.psb-field label{display:block;margin-bottom:7px;color:var(--dark);font-size:11px;font-weight:900}
.psb-field input,.psb-field select,.psb-field textarea{
  width:100%;min-height:43px;padding:10px 12px;border:1px solid #d8e3dd;border-radius:9px;
  background:#fff;color:var(--text);font:inherit;font-size:12px;box-shadow:none
}
.psb-field textarea{min-height:105px;resize:vertical}
.psb-field input:focus,.psb-field select:focus,.psb-field textarea:focus{
  outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(11,93,59,.08)
}
.psb-field input[readonly]{background:#f7faf8;color:#4d5a54}
.psb-muted{color:var(--muted);font-size:10px;line-height:1.6}
.psb-route-box{
  margin-top:16px;padding:20px;border:1px solid #dce7e1;border-radius:14px;background:#f9fbfa
}
.psb-route-box h3{margin:0 0 14px;color:var(--green);font-size:16px}
.psb-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.psb-route-grid .full{grid-column:1/-1}
.psb-field input[type=file]{padding:7px;background:#fff}
.psb-field input[type=file]::file-selector-button{
  margin-right:10px;padding:8px 11px;border:0;border-radius:7px;background:var(--green-soft);color:var(--green);font-weight:800;cursor:pointer
}

.psb-check{
  display:flex;align-items:flex-start;gap:10px;padding:15px;border:1px solid var(--border);
  border-radius:12px;background:#fbfcfb
}
.psb-check input{width:18px;height:18px;margin-top:1px;accent-color:var(--green)}
.psb-check label{font-size:11px;line-height:1.5;color:var(--dark)}
.psb-warning{
  margin-top:14px;padding:13px 15px;border:1px solid #ead889;border-left:4px solid var(--gold);
  border-radius:10px;background:var(--gold-soft);color:#665a2d;font-size:10px;line-height:1.65
}
.psb-btn{
  min-height:43px;display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:0 16px;border:1px solid transparent;border-radius:9px;font-size:10px;font-weight:900;cursor:pointer
}
.psb-btn-primary{background:var(--green);color:#fff}
.psb-btn-primary:hover{background:var(--green-dark)}
.psb-btn-secondary{background:#fff;border-color:#cadbd2;color:var(--green)}
.psb-btn-secondary:hover{background:var(--green-soft)}
.psb-submit-row{display:flex;justify-content:flex-end;margin-top:18px}
.psb-submit-row .psb-btn{min-width:190px}

/* MOBILE */
@media(max-width:900px){
  .psb-steps{grid-template-columns:repeat(2,1fr)}
  .psb-grid,.psb-route-grid{grid-template-columns:1fr}
  .psb-field.full,.psb-route-grid .full{grid-column:auto}
}
@media(max-width:720px){
  .psb-header-inner{min-height:74px;gap:12px}
  .psb-logos img{width:40px;height:40px}
  .psb-sep{height:36px}.psb-eyebrow{display:none}.psb-title{font-size:18px}.psb-subtitle{font-size:8px}
  .psb-year{display:none}
  .psb-hero{margin-top:18px;padding:24px 20px;border-radius:18px}
  .psb-steps{grid-template-columns:1fr}
  .psb-main{width:min(calc(100% - 22px),var(--container))}
  .psb-section{padding:19px}
  .psb-footer-inner{grid-template-columns:1fr;padding:24px 0}
  .psb-footer-links{justify-content:flex-start}
}
@media(max-width:480px){
  .psb-logos img:first-child{display:none}.psb-sep{display:none}
  .psb-header-inner,.psb-hero,.psb-steps{width:min(calc(100% - 22px),var(--container))}
  .psb-home span{display:none}
  .psb-submit-row{display:block}.psb-submit-row .psb-btn{width:100%}
}


/* ============================================================
   PSB UI v1.9.3 — NAVBAR REFINEMENT
   Tujuan:
   - Kontak tidak tertutup tombol PTSP
   - Jarak menu lebih efisien
   - Active underline lebih presisi
   - Breakpoint desktop -> mobile lebih cepat bila ruang tidak cukup
   ============================================================ */

/* Navbar boleh sedikit lebih lebar daripada body content */
.site-nav-inner-v192{
    width:min(calc(100% - 26px),1380px);
    margin-left:auto;
    margin-right:auto;
    min-height:82px;
    gap:12px;
}

/* Kelompok menu utama dibuat fleksibel */
.site-main-nav-v192{
    flex:1 1 auto;
    min-width:0;
    gap:0;
}

/* Menu dibuat lebih rapat */
.site-main-nav-v192 > a,
.site-nav-link-v192{
    min-height:82px;
    padding-left:11px;
    padding-right:11px;
    font-size:13px;
    letter-spacing:0;
}

/* Area tombol kanan tidak boleh mengecil/menimpa menu */
.site-nav-actions-v192{
    flex:0 0 auto;
    gap:8px;
    margin-left:6px;
}

/* Tombol sedikit dipadatkan */
.site-action-btn-v192{
    min-width:70px;
    min-height:52px;
    padding:0 14px;
    border-radius:13px;
}

.site-search-btn-v192{
    width:52px;
    height:52px;
    border-radius:13px;
}

/* Dropdown tetap berada di atas hero/konten */
.site-dropdown-v192{
    z-index:10080;
}

/* Active state khusus PSB: underline hanya selebar tombol */
.site-action-psb-v192.is-active{
    position:relative;
    box-shadow:none;
}

.site-action-psb-v192.is-active::after{
    content:"";
    position:absolute;
    left:14px;
    right:14px;
    bottom:-1px;
    height:3px;
    border-radius:999px 999px 0 0;
    background:#9f7912;
}

/* Hilangkan kemungkinan underline panjang dari style turunan */
.site-nav-wrap-v192::after,
.site-nav-inner-v192::after,
.site-main-nav-v192::after{
    display:none!important;
    content:none!important;
}

/* Desktop menengah: makin kompak sebelum pindah mobile */
@media(max-width:1320px){
    .site-nav-inner-v192{
        width:min(calc(100% - 22px),1320px);
        gap:8px;
    }

    .site-main-nav-v192 > a,
    .site-nav-link-v192{
        padding-left:8px;
        padding-right:8px;
        font-size:12px;
    }

    .site-action-btn-v192{
        min-width:64px;
        min-height:48px;
        padding:0 12px;
        font-size:11px;
    }

    .site-search-btn-v192{
        width:48px;
        height:48px;
    }
}

/*
 * Pada <= 1120px, ubah ke mobile/hamburger lebih awal.
 * Ini mencegah menu "Kontak" bertabrakan dengan PTSP/PSB.
 */
@media(max-width:1120px){
    .site-contact-v192{
        gap:22px;
    }

    .site-mobile-toggle-v192{
        min-height:44px;
        display:inline-flex;
        align-items:center;
        gap:9px;
        padding:0 14px;
        border:1px solid var(--border);
        border-radius:10px;
        background:#fff;
        color:var(--green);
        font-family:inherit;
        font-size:11px;
        font-weight:900;
        cursor:pointer;
    }

    .site-mobile-toggle-icon-v192{
        font-size:19px;
    }

    .site-main-nav-v192{
        position:absolute;
        left:0;
        right:0;
        top:100%;
        z-index:10050;
        display:none;
        max-height:calc(100vh - 180px);
        overflow:auto;
        padding:10px;
        border:1px solid var(--border);
        border-top:3px solid var(--gold);
        border-radius:0 0 16px 16px;
        background:#fff;
        box-shadow:0 18px 36px rgba(18,55,40,.14);
    }

    .site-main-nav-v192.is-open-v192{
        display:block;
    }

    .site-main-nav-v192 > a,
    .site-nav-link-v192{
        width:100%;
        min-height:48px;
        justify-content:space-between;
        padding:0 13px;
        border-radius:8px;
        font-size:12px;
        text-align:left;
    }

    .site-nav-item-v192{
        width:100%;
    }

    .site-dropdown-v192{
        position:static;
        display:none;
        min-width:0;
        margin:3px 0 6px;
        padding:6px 8px 6px 18px;
        border-top:0;
        border-left:3px solid var(--gold);
        border-radius:8px;
        box-shadow:none;
        opacity:1;
        visibility:visible;
        transform:none;
    }

    .site-nav-item-v192.is-open-v192 > .site-dropdown-v192{
        display:block;
    }

    .site-nav-actions-v192{
        margin-left:auto;
    }
}

/* Hindari rules lama 980px mengubah kembali layout dengan cara berbeda */
@media(min-width:1121px){
    .site-mobile-toggle-v192{
        display:none!important;
    }

    .site-main-nav-v192{
        display:flex!important;
        position:static!important;
        max-height:none!important;
        overflow:visible!important;
        padding:0!important;
        border:0!important;
        border-radius:0!important;
        box-shadow:none!important;
    }
}

/* Tablet/mobile: top header dipadatkan sedikit */
@media(max-width:1120px){
    .site-topbar-inner-v192{
        min-height:104px;
    }

    .site-brand-logos-v192 img{
        width:50px;
        height:50px;
    }

    .site-brand-title-v192{
        font-size:24px;
    }

    .site-contact-item-v192 strong{
        font-size:11px;
    }
}

@media(max-width:760px){
    .site-contact-v192{
        display:none;
    }

    .site-topbar-inner-v192{
        min-height:86px;
    }
}

/* Pastikan hero tidak tertutup sticky header */
.psb-hero{
    scroll-margin-top:250px;
}


/* ============================================================
   FOOTER / HOMEPAGE v0.9.0
   EXACT MATCH FROM THEME MAN KOTA BLITAR
   ============================================================ */

.mkb-footer-v090{
    background:#0b3d2b;
    color:#fff;
}

.mkb-footer-main-v090{
    padding:58px 0 42px;
}

.mkb-footer-grid-v090{
    display:grid;
    grid-template-columns:1.65fr .75fr .75fr 1.15fr;
    gap:42px;
}

.mkb-footer-brand-head-v090{
    display:flex;
    align-items:center;
    gap:10px;
}

.mkb-footer-brand-head-v090 img{
    width:54px;
    height:54px;
    object-fit:contain;
}

.mkb-footer-brand-head-v090 div{
    display:flex;
    flex-direction:column;
}

.mkb-footer-brand-head-v090 small{
    color:#d5b436;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:9px;
    font-weight:800;
}

.mkb-footer-brand-head-v090 strong{
    margin-top:3px;
    font-size:22px;
    line-height:1.15;
}

.mkb-footer-brand-head-v090 span{
    margin-top:3px;
    color:rgba(255,255,255,.7);
    font-size:11px;
}

.mkb-footer-desc-v090{
    max-width:440px;
    margin:22px 0 0;
    color:rgba(255,255,255,.72);
    font-size:13px;
    line-height:1.8;
}

.mkb-footer-column-v090 h3,
.mkb-footer-contact-v090 h3{
    margin:0 0 18px;
    color:#fff;
    font-size:15px;
}

.mkb-footer-column-v090 nav{
    display:flex;
    flex-direction:column;
    gap:11px;
}

.mkb-footer-column-v090 a,
.mkb-footer-contact-v090 a{
    color:rgba(255,255,255,.72);
    font-size:12px;
}

.mkb-footer-column-v090 a:hover,
.mkb-footer-contact-v090 a:hover{
    color:#f0ce45;
}

.mkb-contact-item-v090{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-bottom:13px;
}

.mkb-contact-item-v090 span{
    color:#d5b436;
    text-transform:uppercase;
    letter-spacing:.09em;
    font-size:9px;
    font-weight:800;
}

.mkb-contact-item-v090 strong{
    max-width:300px;
    color:rgba(255,255,255,.78);
    font-size:12px;
    font-weight:500;
    line-height:1.6;
}

.mkb-footer-social-v090{
    display:flex;
    gap:8px;
    margin-top:18px;
}

.mkb-footer-social-v090 a{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.18);
    border-radius:9px;
    color:#fff;
    font-weight:800;
}

.mkb-footer-social-v090 a:hover{
    border-color:#d5b436;
    background:#d5b436;
    color:#17392c;
}

.mkb-footer-bottom-v090{
    border-top:1px solid rgba(255,255,255,.12);
    background:#082f22;
}

.mkb-footer-bottom-inner-v090{
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    color:rgba(255,255,255,.55);
    font-size:10px;
}

@media(max-width:1000px){
    .mkb-footer-grid-v090{
        grid-template-columns:1.5fr 1fr 1fr;
    }

    .mkb-footer-contact-v090{
        grid-column:1 / -1;
    }
}

@media(max-width:720px){
    .mkb-footer-main-v090{
        padding:42px 0 32px;
    }

    .mkb-footer-grid-v090{
        grid-template-columns:1fr 1fr;
        gap:32px 22px;
    }

    .mkb-footer-brand-v090,
    .mkb-footer-contact-v090{
        grid-column:1 / -1;
    }

    .mkb-footer-bottom-inner-v090{
        padding-top:16px;
        padding-bottom:16px;
        flex-direction:column;
        align-items:flex-start;
        justify-content:center;
        gap:4px;
    }
}

@media(max-width:480px){
    .mkb-footer-grid-v090{
        grid-template-columns:1fr;
    }

    .mkb-footer-brand-v090,
    .mkb-footer-contact-v090{
        grid-column:auto;
    }

    .mkb-footer-brand-head-v090 img{
        width:45px;
        height:45px;
    }

    .mkb-footer-brand-head-v090 strong{
        font-size:19px;
    }
}
