body {
    margin:0;
    font-family:'Inter', sans-serif;
    background:#F4F1F8;
    color:#333;
}

/* WRAPPER */
#wrapper { max-width:1400px; margin:auto; }

/* HEADER */
#header {
    background:url(image/bannerportal0.jpg) no-repeat center;
    height:160px;
    background-size:cover;
    border-bottom:5px solid #5A1E76;
}

/* TOP BAR */
#bar {
    background:#fff;
    padding:10px 20px;
    text-align:right;
    font-size:14px;
    color:#666;
    border-bottom:1px solid #ddd;
}

/* CONTAINER */
#container {
    display:flex;
    flex-wrap:nowrap;
    gap:20px;
    padding:20px;
}

/* SIDEBAR */
#side-a { flex:0 0 260px; }
.news {
    background:linear-gradient(180deg,#5A1E76,#7A2BA8);
    padding:20px;
    border-radius:12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.1);
}
.news h3 {
    color:#FFD700;
    font-size:20px;
    text-align:center;
    margin-bottom:15px;
    letter-spacing:1px;
}
#nav { list-style:none; padding:0; }
#nav li { margin:10px 0; position:relative; }
#nav li a {
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px;
    background:rgba(255,255,255,0.1);
    border-radius:8px;
    color:#fff;
    font-weight:500;
    text-decoration:none;
    transition:0.3s;
}
#nav li a:hover { background:#FFD700; color:#5A1E76; transform:translateX(5px);}
#nav li a.active { background:#FFD700; color:#5A1E76; font-weight:600; }
#nav li ul { padding-left:25px; margin-top:5px; }
#nav li ul li a { background:rgba(255,255,255,0.15); }

/* CONTENT */
#side-b {
    flex:1;
    background:#fff;
    border-radius:12px;
    padding:20px;
    box-shadow:0 3px 12px rgba(0,0,0,0.08);
}

/* HEADER KEPUTUSAN */
.header-keputusan {
    background:#5A1E76;
    padding:20px 25px;
    border-radius:12px;
    color:#FFD700;
    font-size:28px;
    font-weight:700;
    letter-spacing:1.5px;
    margin-bottom:25px;
    text-align:center;
    box-shadow:0 4px 14px rgba(0,0,0,0.2);
}

/* TABLE */
.table-container { overflow-x:auto; }
table {
    width:100%;
    border-collapse:collapse;
    margin-top:15px;
    min-width:600px;
    border-radius:8px;
    overflow:hidden;
}
thead { background:#5A1E76; color:#FFD700; }
thead th { padding:12px; font-size:15px; text-align:center; }
tbody td { padding:12px; border-bottom:1px solid #e5d8f3; text-align:center; font-size:14px; }
tbody tr:hover { background:linear-gradient(90deg,#FDEFF5,#F1E6FA); }

/* STATUS */
.status-open { color:#0a8a0a; font-weight:bold; }
.status-close { color:#d40000; font-weight:bold; }

/* SEMAKAN BUTTON */
.semakan-btn {
    display:inline-block;
    padding:7px 14px;
    border-radius:8px;
    font-weight:600;
    text-decoration:none;
    color:#fff;
    background:#1e88e5;
    transition:0.3s;
}
.semakan-btn:hover { background:#1565c0; }

/* RESPONSIVE */
@media(max-width:900px){
    #container { flex-direction:column; }
    #side-a, #side-b { max-width:100%; }
}

tr.level-pra td { background:#FFF0F5; }        /* Pra Diploma */
tr.level-diploma td { background:#E6F7FF; }   /* Diploma */
tr.level-ijazah td { background:#FFF8DC; }    /* Sarjana Muda */
tr.level-profesional td { background:#F0FFF0; } /* Profesional */

/* TAB MENU */
.tabs-wrapper {
    position: relative;
    margin-bottom: 25px;
    overflow-x: auto;
}
.tabs {
    display: flex;
    position: relative;
    border-bottom: 3px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
}
.tab-btn {
    flex: 1;
    text-align: center;
    padding: 12px 20px;
    cursor: pointer;
    font-weight: 600;
    color: #5A1E76; /* teks untuk tab tak aktif */
    background: #EDE0F7; /* warna lembut ungu pastel untuk tab tak aktif */
    border-right: 1px solid #D1C4E9; /* border lembut */
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
}

.tab-btn:last-child {
    border-right: none;
}

.tab-btn:hover {
    background: #D1B3F1; /* warna hover lebih terang */
    color: #5A1E76;
}

.tab-btn.active {
    color: #FFD700;
    font-weight: 700;
    background: #5A1E76; /* warna tab aktif */
}

.tab-slider {
    position: absolute;
    bottom: 0;
    height: 3px;
    background: #FFD700;
    width: 33.3333%;
    transition: left 0.3s ease;
    z-index: 1;
}
.tab-content { display: none; }
.tab-content.active { display: block; }


.sesi-header {
    display: flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(90deg, #7A2BA8, #5A1E76);
    color: #FFD700;
    font-size: 18px;
    font-weight: 700;
    padding: 10px 15px;
    border-radius: 10px;
    margin-top: 25px;
    margin-bottom: 15px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    transition: transform 0.2s, box-shadow 0.2s;
}

.sesi-header:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0,0,0,0.3);
}

.sesi-header i {
    font-size: 20px;
    color: #FFD700;
}

