* {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

:root {
--delay: 0s;
--body-background-color: #0b5793;
--wrapper-background-color: #ececec;
--card-color: #ffffff;
--header-color: #0b5793;
--header-text: #ffffff;
--headerlinkhover:#21659c;
--svg-logo-color: #ffffff;
--leftsvg-logo: #0b5793;
--leftsvg-logohover: #ffffff;
--title-text: #234b6b;
--button: #21659c;
--button-text:  #ffffff;
--inputBackground: #ffffff;
--inputTextColor: #1a1b3c;
}
.darkmode{
--body-background-color: #03051f;
--wrapper-background-color: #0e0e23;
--card-color: radial-gradient(circle, #1a2049 0%, #13162f 100%);
--header-color: radial-gradient(circle, #141834 0%, #13162f 100%);
--headerlinkhover: #abb5ff;
--svg-logo-color: rgba(155,156,167,255);
--leftsvg-logo: #9898a0;
--leftsvg-logohover: #0b5793;
--title-text: #9b9ca7;
--button: #141530;
--button-text:  #ffffff;
--inputBackground:#1a1b3c;
--inputTextColor: #9b9ca7;
}
* {
outline: none;
box-sizing: border-box;
}

body {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  background-color: var(--body-background-color);
  color: #9b9ca7;
  cursor: default;
}

.wrapper {
max-width: 1600px;
background-color: var(--wrapper-background-color);
display: flex;
height: 100vh;
overflow: hidden;
margin: 0 auto;
}

.left-side {
display: flex;
flex-direction: column;
flex-shrink: 0;
align-items: center;
padding: 100px 0 30px;
-webkit-animation: left 1s var(--delay) both;
        animation: left 1s var(--delay) both;
}
.left-side svg {
cursor: pointer;
margin-left:6px;
}
.left-side svg + svg {
margin-top: 34px;
}
.left-side a:last-child {
margin-top: auto;
}
.left-side svg.active, .left-side svg:hover {
color: #4255d4;
}

@-webkit-keyframes left {
0% {
  transform: translateX(-30px);
  opacity: 0;
}
100% {
  opacity: 1;
  transform: none;
}
}

@keyframes left {
0% {
  transform: translateX(-30px);
  opacity: 0;
}
100% {
  opacity: 1;
  transform: none;
}
}
@-webkit-keyframes top {
0% {
  transform: translateY(-30px);
  opacity: 0;
}
100% {
  opacity: 1;
  transform: none;
}
}
@keyframes top {
0% {
  transform: translateY(-30px);
  opacity: 0;
}
100% {
  opacity: 1;
  transform: none;
}
}
.main-container {
display: flex;
flex-direction: column;
flex-grow: 1;
padding: 25px;
overflow: auto;
padding-left: 0;
}

.button {
display: flex;
align-items: center;
color: var(--primary-text);
background: #1a1b3c;
border: none;
padding: 2px 12px;
border-radius: 4px;
margin-right: 20px;
}
.button svg {
margin-left: 10px;
width: 16px;
}
.user-box {
margin-top: 25px;
display: flex;
}

.user-box + .user-box {
margin-top: 20px;
}
.user-box + .user-box .cards-wrapper {
margin-left: 0;
flex-grow: 1;
max-width: none;
}
.user-box + .user-box .today {
margin-left: 30px;
}
.user-box + .user-box .cards-header {
padding: 20px 30px;
justify-content: space-between;
}
.user-box .cards-header,
.user-box .cards-view {
display: flex;
align-items: center;
justify-content: center;
}
.user-box .cards-header svg,
.user-box .cards-view svg {
width: 24px;
}
.user-box .cards-header .title,
.user-box .cards-view .title {
margin: 0 16px;
font-size: 15px;
}
.user-box .cards-header-date svg,
.user-box .cards-view-date svg {
width: 30px;
}
.user-box .cards-header .cards-button,
.user-box .cards-view .cards-button {
padding: 10px 16px;
margin-right: 0;
}
.cards-button:hover {
background-color: rgb(28,36,68);
cursor: pointer;
}
.user-box .cards-header .cards-button svg,
.user-box .cards-view .cards-button svg {
width: 16px;
margin: 0 2px 0 0;
}
.user-box .cards-header .date-wrapper,
.user-box .cards-view .date-wrapper {
display: flex;
align-items: center;
margin: auto;
}
.user-box .cards-header .date-wrapper .title,
.user-box .cards-view .date-wrapper .title {
margin: 0 16px;
}
.centerlize{
  margin: 0 20%;
}
.card {
background: var(--card-color);
box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
padding: 40px 30px;
border-radius: 6px;
display: block;
flex-direction: column;
flex-grow: 1;
max-height: 430px;
width: 100%;

}
.card .title {
font-size: 16px;
font-weight: bold;
color: var(--title-text);

}
.card .subtitle {
font-size: 13px;
line-height: 1.6em;
}
.card + .card {
margin-left: 20px;
}

.activity-chart{
margin-top: 10px;
margin-left: 25px;
}
.totalOfStudent{
font-size: 2rem;
color: var(--title-text);
font-weight: bold;
}
/* 1st module */

.activity {
max-width: 480px;
display: flex;
flex-wrap: wrap;
}
.activity .title {
margin-bottom: 20px;
}
.activity .subtitle {
margin-bottom: 8px;
}
.activity-info {
padding-left: 10px;
}
.activity .subtitle-count {
font-size: 25px;
color: #17a98a;
font-weight: 500;

}
.activity .subtitle-count + .subtitle {
margin-top: 20px;  

}
.activity .subtitle-count.dist {
color: #e85471;
}
.activity-wrapper {
display: flex;
}

/* 3rd module - calendar */
.recentList{
max-height: 100%;
max-width: 100%;
height: 350px;
width: 100%;
}
.cards-header {
background: var(--header-color);
border-radius: 6px 6px 0 0;
padding: 20px 45px;
font-size: 14px;
font-weight: 500;
align-items:flex-start;
color: var(--header-text);
}

.cards-header-date svg {
color: #4154d1;
background: #14183c;
border-radius: 50%;
padding: 5px;
width: 30px;
}
.cards-wrapper {
margin-left: 20px;
max-width: 305px;
width: 100%;
}

.chart {
padding: 2rem;
border: 1px solid #f49131;
border-radius: 1rem;
background: #251c35;
box-shadow: 0 0 16px rgba(0, 0, 0, 0.8);
}
/* 5th module */

@-webkit-keyframes turn {
100% {
  transform: rotate(1turn);
}
}

@keyframes turn {
100% {
  transform: rotate(1turn);
}
}

table {
white-space: nowrap;
border-collapse: collapse;
margin: 0;
padding: 0;
width: 100%;
table-layout: fixed;
}

table caption {
font-size: 1.5em;
margin: .5em 0 .75em;
}

table tr {
padding: .35em;
}

table th,
table td {
padding: .625em;
text-align: center;
}

table th {
font-weight: bold;
font-size: .85em;
letter-spacing: .1em;
text-transform: uppercase;
color: var(--title-text);
}

.TableTitle{
font-size:15px;
color: var(--header-text);
font-weight: bold;

}

@media screen and (max-width: 1200px) {

table {
  border: 0;
}

table caption {
  font-size: 1.3em;
}

table thead {
  border: none;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow-y: scroll;
  padding: 0;
  position: absolute;
  width: 1px;
}

table tr {
  border: 1px solid #ddd;
  border-bottom: 3px solid #2d34ee;
  display: block;
  margin-bottom: .625em;
}

table td {
  border-bottom: 1px solid #ddd;
  display: block;
  font-size: .8em;
  text-align: left;
}

table td::before {

  content: attr(data-label);
  float: left;
  font-weight: bold;
  text-transform: uppercase;
}

table td:last-child {
  border-bottom: 0;
}
}
.recordBy{
width: 10%;
margin: 0 10px;
}
.Snumber{
width: 15%;
padding: 10px;

}
.Sname{
width: 20%;
padding: 10px;

}
.Scourse{
width: 7%;
margin: 0 10px;

}
.StypeViolation{
width: 13%;
margin: 0 10px;

}
.Scase{
width: 25%;
margin: 0 10px;

}
.Sstatus{
width: 10%;
margin:  10px;

}

/* modal */
.modal {
display: none;
position: fixed;
z-index: 1;
left: 0;
top: 0;
width: 100%;
height: 100%;
overflow: auto;
background-color: rgb(0, 0, 0);
background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
background-color: #fefefe;
margin: 15% auto;
padding: 20px;
border: 1px solid #888;
width: 80%;
max-width: 500px;
border-radius: 10px;
}

.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
}

.close:hover,
.close:focus {
color: black;
text-decoration: none;
cursor: pointer;
}

label {
display: block;
margin: 10px 0 5px;
}
.filterSearch{
  background: var(--inputBackground);
  color: var(--inputTextColor);
  width: 100px;
}

@-webkit-keyframes fly {
40% {
  transform: translate(-6px, -6px);
}
60% {
  transform: translate(-12px, -2px);
}
100% {
  transform: translate(0px, 0px);
}
}

@keyframes fly {
40% {
  transform: translate(-6px, -6px);
}
60% {
  transform: translate(-12px, -2px);
}
100% {
  transform: translate(0px, 0px);
}
}

@keyframes fadeItIn {
0% {
  background: rgb(28,36,68);
}
100% {
  background: #11132c;
}
}

.user-box > * {
-webkit-animation: top 1s var(--delay) both;
        animation: top 1s var(--delay) both;
}
@media (max-width: 768px) 
{
.recentList{
  height: 300px;
}
}