*{
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}

nav{
    padding: 8px;
    background-color: maroon;
    color: floralwhite;
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: space-between;
}
nav div{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
nav div img{
    width: 25px;
    height: 25px;
}

.centerbox{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px;
    box-shadow: 0 0 5px grey;
    border-radius: 20px;
    text-align: center;
    background-color: floralwhite;
    
}
.centerbox h2{
    font-size: 2rem;
    font-weight: bold;
}
.centerbox input{
    width: 300px;
    padding: 10px;
    margin: 10px;
    border-radius: 5px;
    border: none;
    outline: none;
    box-shadow: inset 0 0 5px lightgrey;
}
.centerbox input.short{
    width: 120px;
}
.centerbox button{
    width: 150px;
    padding: 10px;
    margin: 10px;
    background-color: maroon;
    color: floralwhite;
    font-weight: bold;
    border: none;
    border-radius: 10px;
    font-size: 1rem;
}
.centerbox button:hover{
    background-color: floralwhite;
    color: maroon;
    box-shadow: 0 0 5px grey;
}
.centerbox a img{
    width: 15px;
    height: 15px;
}
.errspan{
    font-size: 0.8rem;
    color: red;
    display: block;
}

.dashboard{
   height: 94vh;
   position: relative;
}
.closedsidepanel{
    display: block;
    position: absolute;
    top: 15px;
    left: 0px;
    box-shadow: 0 0 5px grey;
    background-color: floralwhite;
    border-bottom-right-radius: 50%;
    border-top-right-radius: 50%;
    padding: 10px;
    z-index: 45;
}
.closedsidepanel button{
    background-color: transparent;
    border: none;
    border-radius: 50%;
}
.closedsidepanel button img{
    width: 25px;
    height: 25px;
}
.closedsidepanel:hover{
    opacity: 1;
}


.sidepanel{
    display: none;
    position: absolute;
    top: 15px;
    left: 5px;
    box-shadow: 0 0 5px grey;
    background-color: floralwhite;
    border-radius: 20px;
    z-index: 46;
    height: max-content;
}
.sidepanel a{
    text-decoration: none;
    color: maroon;
    display: block;
    padding: 10px;    
    display: flex;
    gap: 10px;
    align-items: center;
    min-width: 200px;
}
.sidepanel a:hover{
    font-weight: bold;
}
.sidepanel a img{
    width: 20px;
    height: 20px;
}
.sidepanel .subtabholder{
    display: none;
    position: relative;
}
.sidepanel .subtabholder div{
    position: absolute;
    top: -35px;
    left: 98%;
    background-color: floralwhite;
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
}
.sidepanel .subtabholder:hover{
    display: block;
}
.sidepanel .maintab:hover + .subtabholder{
    display: block;
}
.sidepanel .subtabholder a{
    width: max-content;
}
.mainpanel{
    padding: 10px;
    position: relative;
}


.dashboard.fixed{
    display: grid;
    grid-template-columns: 11% 88%;
    gap: 10px;
}
.closedsidepanel.fixed{
    display: none;
}
.sidepanel.fixed{
    display: block;
    position: relative;
    top: 0px;
    left: 0px;
    border-radius: 0px;
    border-bottom-right-radius: 10px;
}
.floatmsgbox{
    position: absolute;
    bottom: 25px;
    right: 25px;
    min-width: 250px;
    /* animation: disappear 20s linear forwards; */
    z-index: 8;
}
.floatmsgbox p{
    padding: 10px;
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
    background-color: yellow;
}
@keyframes disappear {
    0%{
        opacity: 1;
    }
    95%{
        opacity: 1;
    }
    100%{
        opacity: 0;
    }
}



.narrow{
    margin: 0px auto;
    padding: 20px;
    max-width: 800px;
}
.normal{
    margin: 0px auto;
    padding: 20px;
    max-width: 1200px;
}
.flexdiv{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px;
}
.flexdiv div{
    display: flex;
    align-items: center;
    gap: 10px;
}
.flexdiv div button{
    background-color: maroon;
    padding: 5px;
    border: none;
    border-radius: 5px;
    display: flex;
    gap: 10px;
    align-items: center;
    color: white;
    font-weight: bold;
}
.flexdiv div button img{
    width: 20px;
    height: 20px;
}
.flexdiv div hr{
    height: 25px;
}
.flexdiv div a{
    text-decoration: none;
    background-color: maroon;
    padding: 5px;
    border: none;
    border-radius: 5px;
    display: flex;
    gap: 10px;
    align-items: center;
    color: white;
    flex-direction: row;
    font-weight: bold;
}
.flexdiv div a img{
    width: 20px;
    height: 20px;
}
.flexdiv div input{
    padding: 10px;
    border-radius: 15px;
    box-shadow: inset 0 0 5px grey;
    border: none;
    outline: none;
    margin-right: 10px;
}


.hiddenelement{
    display: none;
}
.formpage{
    z-index: 50;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}
.formpage .float{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.formpage .float.wide{
    width: 85%;
}
.formpage .overlay{
    z-index: 52;
}
.formpage .formelement{
    box-shadow: 0 0 5px lightgrey;  
    text-align: center;  
    padding: 20px;    
    background-color: white;
    max-height: 90%;
    overflow: auto;
}
.formelement{
    padding: 10px;    
    border-radius: 10px;
    box-shadow: 0 0 5px black;
    overflow: hidden;
    background-color: white;
    height: auto;
}
.formelement td, th{
    padding: 10px; 
    padding-top: 0px;
    position: relative;
}
.formelement td:first-child{
    text-align: right;
}
.formelement label{
    color: grey;
}
.formelement label p{
    font-weight: 500;
    font-size: 0.8rem;
}
.formelement input{
    padding: 10px;    
    border-radius: 5px;
    border: none;
    width: 350px;
    box-shadow: inset 0 0 5px grey;
}
.formelement input[type=file]
{
    border: none;
    box-shadow: none;
    opacity: 1 !important;
}
.formelement input[type=checkbox]
{
    width: 25px;
    height: 25px;    
    border-radius: 5px;
    opacity: 1 !important;
}
.formelement input[type=radio]
{
    width: 20px;
    height: 20px;
    border: none;
    box-shadow: none;
    opacity: 1 !important;
}
.formelement .checkdiv{
    display: flex;
    gap: 10px;
    align-items: center;
}
.formelement .checkdiv input[type=checkbox]
{
    width: 25px;
    height: 25px;    
    border-radius: 5px;
    opacity: 1 !important;
    box-shadow: none;
}
.formelement input:focus{
    outline: none;
    box-shadow: inset 0 0 2px ;
}
.formelement input:read-only{
    opacity: 0.3;
}
.formelement select{
    padding: 8px;
    border-radius: 5px;
    border: none;
    width: 350px;
    box-shadow: inset 0 0 5px grey;
}
.formelement textarea{
    width: 350px;
    height: 150px;
    border: none;
    border-radius: 10px;
    box-shadow: inset 0 0 5px grey;
    padding: 5px;
}
.formelement button{
    padding: 5px;
    margin: 5px;
    border-radius: 5px;
    border: none;
    background-color: maroon;
    color: white;
    font-weight: bold;
    font-size: 1rem;
    outline: none;
}
.formelement button.main{
    background-color: maroon;
}
.formelement button.sub{
    background-color: coral;
}
.formelement button:hover{
    box-shadow: 0 0 5px black;
}
.formelement a{
    padding: 5px;
    margin: 5px;
    border-radius: 5px;
    border: none;
    background-color: maroon;
    color: white;
    font-weight: bold;
    text-decoration: none;
    font-size: 1rem;
}
.formelement .tip{
    font-size: 0.7rem;
}
.formelement .tip a{
    background-color: transparent;
    color: dodgerblue;
    font-size: 0.7rem;
    font-weight: 400;
    margin: 0px;
    padding: 0px;
}
.formelement .tip a:hover{
    text-decoration: underline;
}
.formelement img{
    width: 200px;
}
.formelement td img{
    width: 150px;
}
.formelement .radio{
    display: flex;
    align-items: center;
}
.formelement .errspan{
    font-size: 0.8rem;
    color: red;
    display: block;
    text-align: left;
}
.formelement .triplegrid{
    margin: 0px auto;
    display: grid;
    grid-template-columns: 30% 30% 30%;
    gap: 10px;
}
.formelement .doublegrid{
    margin: 0px auto;
    display: grid;
    grid-template-columns: 48% 48%;
    gap: 10px;
}
.formelement .imgflex{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}
.formelement .imgflex img{
    width: 60px;
}
.formelement ol{
    text-align: left;
    margin-left: 20px;
}
.formelement ol li{
    padding: 10px;
}


.contenttable{
    width: 100%;
    border-collapse: collapse;
}
.contenttable th{
    text-align: center;
    background-color: lightgrey;
}
.contenttable td input{
    width: 100px;
}

.branchholder{
    margin: 5px auto;
    padding: 10px;
    max-width: 65%;
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: space-evenly;
    height: 90vh;
    overflow: auto;
    position: relative;
    align-content: center;
}
.branchholder a{
    text-decoration: none;
    color: maroon;
    display: block;
}
.branchholder .indibra{
    text-align: center;
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
    width: 150px;
    overflow: hidden;
}
.branchholder .indibra div{
    padding: 10px;
    box-shadow: 0 0 5px grey;
}
.branchholder .indibra img{
    width: 125px;
}
.branchholder .indibra:hover{
    box-shadow: 0 0 10px grey;
}

.absbtn{
    text-decoration: none;
    display: block;
    background-color: maroon;
    position: absolute;
    border-radius: 50%;
    box-shadow: 0 0 5px grey;
}
.br{
    bottom: 10px;
    right: 10px;
}
.absbtn img{
    width: 25px;
    margin: 10px;
}


.opendcholder{
    padding: 5px;
    box-shadow: inset 0 0 5px black;
    border-radius: 5px;
    margin: 3px;
    width: 90%;
}
.opendcholder a{
    display: inline-block;
    background-color: dodgerblue;
    color: white;
    text-decoration: none;
    padding: 5px;
    margin: 3px;
    font-weight: bold;
    border-radius: 5px;
    box-shadow: 0 0 3px black;
}
.opendcholder button{
    display: inline-block;
    background-color: maroon;
    color: white;
    text-decoration: none;
    padding: 5px;
    margin: 3px;
    font-weight: bold;
    font-size: 1rem;
    border-radius: 5px;
    border: none;
    box-shadow: 0 0 3px black;
}


.datatable{
    border-radius: 5px;
    overflow: auto;
    width: 100%;
    position: relative;    
    z-index: 1;
    margin: auto;
    background-color: white;
}
.datatable table{
    width: 100%;
    border-collapse: collapse;
}
.datatable tr:nth-child(even){
    background-color: rgb(245, 245, 245);
}
.datatable tr:nth-child(odd){
    background-color: rgb(235, 235, 235);
}
.datatable tr:hover{
    background-color: lightgrey;
}
.datatable td, th{
    padding: 5px 10px;
    min-width: 100px;
    font-size: 1rem;
    border: none;
}
.datatable th:first-child{
    position: sticky;
    left: 0;
    z-index: 2;
}
.datatable thead th{
    background-color: maroon;
    color: white;
    text-align: left;
    position: sticky;
    top: 0;   
    z-index: 4;
    border: none;
    padding: 8px;
}
.datatable thead th:first-child{    
    z-index: 5;
}
.datatable tbody th{
    background-color: whitesmoke;   
    border: none; 
    padding: 5px;
}
/* .datatable tbody td:last-child{
    position: sticky;
    right: 0;
} */
.datatable td a{
    text-decoration: none;  
    background-color: maroon;
    color: white;
    padding: 3px; 
    display: inline-block;
    border-radius: 5px;
    border: none;
    position: relative;
    font-size: 0.9rem;
}
.datatable td button{    
    background-color: maroon;
    color: white;
    padding: 3px; 
    border: none;
    border-radius: 5px;
    position: relative;
    font-size: 0.9rem;
}
.datatable td a span{
    background-color: rgb(229, 229, 229);
    color: black;
    padding: 2px;
    position: absolute;
    bottom: 30px;
    left: -50%;
    border-radius: 5px;
    z-index: 2;
    visibility: hidden;
    font-size: 0.8rem;
    width: max-content;
}
.datatable td button span{
    background-color: rgb(229, 229, 229);
    color: black;
    padding: 2px;
    position: absolute;
    bottom: 30px;
    left: -50%;
    border-radius: 5px;
    z-index: 2;
    visibility: hidden;
    font-size: 0.8rem;
    width: max-content;
}
.datatable td button:hover{
    box-shadow: 0 0 5px grey;
    /* transform: translate(0px, -5px); */
}
.datatable td a:hover{
    box-shadow: 0 0 5px grey;
    /* transform: translate(0px, -5px); */
}
.datatable td a:hover span{
    visibility: visible;
}
.datatable td button:hover span{
    visibility: visible;
}
.datatable td img{
    width: 15px;
}
.datatable .acttd{
    text-align: right;
    padding-right: 20px;
    position: relative;
}
.datatable td .silentlink{
    background-color: transparent;
    color: black;
    font-weight: 500;
}
.datatable td .silentlink h3{
    font-weight: 500;
}
.datatable td .silentlink:hover{
    box-shadow: none;
}

.indicourse{
    margin-bottom: 10px;
}
.indicourse .flexdiv{
    background-color: coral;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}
.semsection{
    padding: 10px;
    display: grid;
    grid-template-columns: 32% 32% 32% ;
    gap: 10px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    box-shadow: inset 0 0 5px grey;
}
.semsection .indisem{
    padding: 10px;
    border: 0.5px solid grey;
    border-radius: 10px;
    box-shadow: 0 0 5px grey;
}
.semsection .indisem .flexdiv{
    background-color: transparent;
    position: relative;
    padding: 0px;
    background-color: white;
}
.indisem .flexdiv button{
    background-color: transparent;
    border: none;
    padding: 0px;
}
.indisem .flexdiv button img{
    width: 15px;
    height: 15px;
}
.indisem .flexdiv button:hover{
    background-color: lightgrey;
    border-radius: 15px;
}
.indisem .flexdiv .flexabs{
    position: absolute;
    top: 100%;
    right: 0px;
    display: flex;
    flex-direction: column;
    background-color: white;
    box-shadow: 0 0 5px grey;
    padding: 3px;
    border-radius: 5px;
    z-index: 3;
}
.indisem .flexdiv .flexabs button{
    padding: 3px;
    color: black;
    border-radius: 0px;
    width: 100%;
    border-radius: 3px;
}
.subjholder{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.subjholder .indisubject{
    padding-left: 10px;
}
.indisubject h3{
    font-size: 1rem;
}
.subjholder button{
    display: flex;
    gap: 10px;
    width: max-content;
}
.subjholder button img{
    width: 15px;
    height: 15px;
}
.indisubject .topichold{
    display: block;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 2px;
}
.indisubject .flexdiv{
    padding: 0px;
    padding-top: 5px;
}
.indisubject .flexdiv div{
    gap: 3px;
}
.indisubject .flexdiv div button{
    padding: 3px;
}
.topichold button{
    display: flex;
    gap: 10px;
    width: max-content;
}
.topichold button img{
    width: 15px;
    height: 15px;
}

.topicform table{
    width: 100%;
    border-collapse: collapse;
}
.topicform th{
    background-color: maroon;
    color: white;
    padding: 5px;
    border: none;
}


.batchcourseholder .semsection{
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    box-shadow: none;
}
.batchcourseholder .indsem{
    padding: 5px;
    box-shadow: 0 0 5px lightgrey;
    border-radius: 10px;
    min-height: 150px;
    width: 400px;
}
.batchcourseholder .indsem .indisubject h4{
    font-size: 0.95rem;
}
.batchcourseholder .indsem .indisubject .topichold p{
    font-size: 0.9rem;    
    font-style: italic;
}
.indsem .flexdiv button img{
    width: 15px;
    height: 15px;
}
.subjholder .flexdiv button img{
    width: 12px;
    height: 12px;
}




.chartholder{
    display: flex;
    gap: 10px;
    padding: 10px;  
    justify-content: space-between;  
}
.stuattchart{
    width: 48%;
    padding: 10px;
    border: 0.5px solid black;
    border-radius: 20px;
    min-height: 250px;
    text-align: center;
}
.chartholder a{
    display: block;
    width: 48%;
}
.chartholder a .stuattchart{
    width: 100%;
}


.planprochart{
    border: 0.5px solid grey;
    border-radius: 20px;
    min-height: 200px;
    width: 100%;
    padding: 10px;
    text-align: center;
}
.planprochart .chartholder{    
    display: flex;
    gap: 15px;
    overflow: auto;
    scrollbar-width: thin;
}

.indiprog{
    margin: 10px;
    margin-bottom: 20px;
    text-align: left;
}
.progbar{
    width: 100%;
    height: 20px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: inset 0 0 5px grey;
    position: relative;
    background-color: white;
}
.progbar .prog{
    height: 22px;
    position: absolute;
    top: 0px;
    left: 0px;
}
.progbar .prog p{
    text-indent: 10px;
    align-content: center;
    padding: 2px;
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    display: none;
}
.progbar .prog:hover p{
    display: inline-block;
}

.splitprogbar{
    width: 100%;
    height: auto;
    position: relative;
    background-color: white;
    display: flex;
    gap: 5px;
}
.splitprogbar .prog{
    border-radius: 10px;
    height: 50px;
    overflow: hidden;
    box-shadow: 0 0 5px grey;
}
.splitprogbar .prog p{
    text-indent: 10px;
    align-content: center;
    height: 100%;
    padding: 5px;
    color: white;
    display: inline-block;
    font-weight: bold;
}









.filtersection{
    margin: 20px 0px;
}

.flexform{
    display: flex;
    justify-content: flex-start;
    align-items: end;
    gap: 10px;
    flex-wrap: wrap;
}
.flexform form{
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: end;
}
.flexform form .expbtn{
    padding: 5px 15px;
    background-color: rgb(242, 242, 242);
    border-radius: 5px;
    border: none;    
    color: black;
    font-weight: bold;
    max-height: 40px;
    height: 60%;
    display: flex;
    gap: 10px;
    align-items: center;
}
.flexform form .expbtn:hover{
    background-color: lightgrey;
    border: none;
}
.expbtn img{
    width: 15px;
}
.flexform input{
    width: 100%;
    padding: 10px;
    border-radius: 15px;
    box-shadow: inset 0 0 5px lightgrey;
    border: none;
    outline: none;
    margin-right: 10px;
}
.flexform select{
    width: 100%;
    padding: 10px;
    border-radius: 15px;
    box-shadow: inset 0 0 5px lightgrey;
    border: none;
    outline: none;
    margin-right: 10px;
}
.flexform button{
    padding: 5px;
    margin: 5px;
    border-radius: 5px;
    border: none;
}
.flexform button img{
    width: 20px;
}
form .flexform{
    align-items: end;
}
.inpdiv{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0px;
    position: relative;
}
.inpdiv input{
    width: 230px;
    border-radius: 8px;
}
.inpdiv input[type='checkbox']
{
    width: 25px;
    height: 25px;
}
.inpdiv select{
    width: 230px;
    border-radius: 8px;
}
.inpdiv label{
    margin-left: 5px;
}
.dateinpdiv{
    display: flex;
}
.dateinpdiv .inpdiv input{
    width: 150px;
}
.search-container {
    position: relative;
    display: inline-block;
}
.inpdiv .search-container input {
    padding: 10px;   
    outline: none;
}
.inpdiv .search-container select {
    padding: 10px;
    outline: none;
}
.inpdiv .search-container-right input {
    padding: 10px;
    padding-right: 40px; /* Space for the icon */    
    outline: none;
}
.inpdiv .searchresult .checkboxhold{
    display: flex;
    gap: 5px;
    align-items: center;
}
.inpdiv .searchresult input[type='checkbox'] {
    padding: 10px;
    margin: 3px;
    width: 20px;
    height: 20px;
    padding-right: 40px; /* Space for the icon */    
    outline: none;
}
.search-container .search-icon {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
}
.search-container-right button{
    background-color: transparent;
    margin: 0px;
    padding: 0px;
}
.search-container-right .search-icon {
    position: absolute;
    right: 20px;
    top: 45%;
    transform: translateY(0%);
    width: 20px;
    height: 20px;
}
.search-container input:focus .search-icon{
    display: none;
}
.search-container select:focus .search-icon{
    display: none;
}
.searchresult{
    position: absolute;
    top: 100%;
    left: 0px;
    width: 250px;
    border-radius: 5px;
    background-color: rgba(250, 250, 250);
    color: black;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 0 5px grey;
    z-index: 8;
}
.searchresult button{
    background-color: maroon;
    border: none;
    font-weight: bold;
    padding: 10px;
    text-align: left;
    
}
.searchresult button:hover{
    background-color: lightgrey;
    color: black;
}
.flexdiv .filtersection{
    margin: 5px 0px;
}


.monthrep{
    text-align: center;
    width: 100%;
}
.monthrep table{
    width: 100%;
    border-collapse: collapse;
}
.monthrep tr:hover{
    background-color: darkgrey;
}
.monthrep th{
    border: 0.5px solid grey;
    padding: 5px;
    min-width: auto;
}
.monthrep td{
    border: 0.5px solid grey;
    padding: 5px;
}
.monthrep th:first-child{
    text-align: left;
}
.monthrep .blink{
    animation: blink 2s infinite linear;
}
@keyframes blink {
    0%{
        background-color: yellow;
    }
    50%{
        background-color: yellowgreen;
    }
    100%{
        background-color: yellow;
    }
}


.monthbudget{
    display: grid;
    grid-template-columns: 24% 24% 24% 24%;
    gap: 25px;
    justify-content: space-around;
}
.budgettile{
    padding: 10px;
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
    background-image: linear-gradient(180deg, white, rgb(255, 208, 208));

}
.budgettile table{
    width: 100%;
    border-collapse: collapse;
}
.budgettile td{
    padding: 5px;
}
.budgettile td:last-of-type{
    text-align: right;
    font-weight: bold;
}

.tileholder{
    display: grid;
    grid-template-columns: 24% 24% 24% 24%;
    gap: 25px;
    justify-content: space-around;
}
.tile{
    padding: 10px;
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
    background-image: linear-gradient(135deg, white, rgb(226, 208, 255));
}
.tile div{
    display: flex;
    gap: 20px;
    align-items: center;
    margin-bottom: 20px;
}
.tile div img{
    width: 40px;
    height: 40px;
}
.tile h2{
    font-size: 2.5rem;
    margin-left: 20px;
}


.dashtray{
    display: flex;
    gap: 25px;
    padding: 10px;
    box-shadow: 0 0 5px grey;
    border-radius: 20px;
    overflow: auto;
    scrollbar-width: thin;
    
}
.studentdash{
    width: 500px;
}
.dashtray .stuattchart{
    width: 500px;
}





.schedule{
    display: grid;
    grid-template-columns: 49% 49%;
    gap: 10px;    
    flex-wrap: wrap;
}
.formelement .short input{
    width: 150px;
}
.schedule .indisch{
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
    padding: 8px;
}
.schedule td:first-child{
    text-align: center;
}
.schedule .indisch td, th{
    min-width: 0px;
    border: none;
    padding: 5px;
}
.schedule input[type='checkbox']{
    width: 15px;
    height: 15px;
}
.schedule input[type='date']{
    width: 150px;
    padding: 5px;
}
.schedule .flexinp{
    display: flex;
    align-items: center;
    gap: 10px;
}
.schedule .theory{
    box-shadow: 0 0 5px grey;
    border-radius: 5px;
    padding: 5px;
}
.schedule .practical{
    box-shadow: 0 0 5px grey;
    border-radius: 5px;
    padding: 5px;
}
.schedule .regular{
    border: 0.5px solid grey;
    border-radius: 5px;
    margin: 5px;
    padding: 5px;
}
.schedule .regular table{
    width: 100%;
    border-collapse: collapse;
}
.schedule table td{
    border: 0.5px solid grey;
    padding: 5px;
    padding-top: 5px;
}
.schedule .arrear{
    border: 0.5px solid grey;
    border-radius: 5px;
    margin: 5px;
    padding: 5px;
}
.schedule .arrear table{
    width: 100%;
    border-collapse: collapse;
}
.schedule .schaddbtn{
    text-align: center;
}
.schedule .schaddbtn td{
    border: none;
}
.schedule .schaddbtn button{
    padding: 5px;
    border-radius: 5px;
    border: none;
    background-color: maroon;
    color: white;
    font-weight: bold;
}


.schview{
    display: flex;
    flex-direction: column;
}
.schview .indischview{
    margin: 10px;
}
.schview .indischview table{
    width: 100%;
    border-collapse: collapse;
}
.schview td,th{
    border: 0.5px solid grey;
    padding: 10px;
}




.splittable{
    display: grid;
    grid-template-columns: 50% 50%;
    align-items: center;
}
.splitsec{
    padding: 5px;
    height: 50vh;
}



.vertitoptd{
    vertical-align: top;
}


.profilepage{
    padding: 8px;
    border-radius: 10px;
    box-shadow: 0 0 5px grey;
}
.profilepage td{
    padding: 10px;
    
}
.profilepage td:first-of-type{
    font-weight: bold;
}
.basicdetail{
    display: flex;
    align-items: flex-start;
    gap: 25px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.basicdetail img{
    width: 250px;
}
.basicdetail div{
    text-align: left;
    height: stretch;
}
.basicdetail table{
    width: auto;
}



.addresstable tr:first-of-type{
    font-weight: bold;
}
.addresstable tr:last-of-type td{
    font-weight: 500;
}
.profilepage .attendance{
    padding: 10px;
    overflow: auto;
}










.inditt{
    margin-bottom: 20px;
}
.inditt table{
    border-collapse: collapse;
    width: 100%;
}
.inditt td{
    min-width: 150px;
    width: max-content;
    padding: 5px;
    border: 0.5px solid black;
    position: relative;
}
.inditt td button{
    padding: 3px;
    margin: 3px;
    border-radius: 5px;
    border: none;
    box-shadow: 0 0 5px black;
    background-color: maroon;
}
.inditt td button img{
    width: 15px;
}
.inditt td .ttform{
    display: none;
    width: 100%;
    text-align: right;
    position: absolute;
    top: 2px;
    right: 2px;
}
.inditt td:hover .ttform{
    display: block;
}



.studentattview{
    display: grid;
    grid-template-columns: 35% 63%;   
    gap: 20px; 
    padding: 10px;
}
.studentattview .daily{
    padding: 10px;
    border-radius: 10px;
    border: 0.5px solid grey;
    height: max-content;
}
.studentattview .datatable{
    min-height: 350px;
}
.attdata{
    margin-top: 5px;
}
.attdata table{
    width: 100%;
}
.attdata table td{
    padding: 10px;
}
.attdata table td:last-of-type{
    text-align: right;
    font-weight: bold;
}


.attendtable{
    width: 100%;
    overflow: auto;
}
.attendtable table{
    border-collapse: collapse;
    width: 100%;
}
.attendtable td, th{
    border: 0.5px solid grey;
    vertical-align: top;
}
.attendtable td table{
    height: 100%;
}
.attendtable td table td{
    padding: 5px;
}
.attendtable td table tr:last-of-type td{
    padding: 0px;
}
.attendtable td table td p{
    font-weight: bold;
    padding: 5px;
    color: white;
}
.attendtable .attval{
    text-align: center;
    vertical-align: middle;
    font-weight: bold;
}


.theohold{
    border-radius: 10px;
    border: 0.5px solid lightgrey;
    margin-bottom: 25px;
    overflow: hidden;
}
.theoheader{
    background-color: lightgrey;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.depthold{
    padding: 5px;
}



.holiday{
    text-align: center;
    align-content: center;
    gap: 10px;
    height: 200px;
}





.indiprog{
    display: grid;
    grid-template-columns: 24% 24% 24% 24%;
    gap: 10px;
}
.indicouprog{
    padding: 5px;
    margin: 5px;
    box-shadow: 0 0 5px grey;
    border-radius: 10px;
    width: 100%;
}
.couprogbar{
    width: 100%;
    height: 15px;
    box-shadow: inset 0 0 5px grey;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 10px;
}
.couprogbar.flex{
    display: flex;
    align-items: center;
}
.couprogbar div{
    padding: 5px;
    height: 20px;
}
.indisubprog .couprogbar{
    margin-bottom: 3px;
    height: 10px;
}
.indisubprog .flexdiv{
    margin-bottom: 3px;
}
