:root {
    --bg-0: #f1f5f9;
    --bg-1: #f3f4f6;
    --bg-2: #1d4ed8;
}
.share-grid{
    color: black;
}
.share-grid th{
    font-weight: normal;
}
.share-grid td{
    font-weight: bold;
    font-size: 14px;
}
.share-grid h2{
    text-align: center;
    font-size: large;
}
.share-grid table{
   table-layout: fixed;
   width: 100%;
   border-collapse: separate;
   border-spacing: 5px;
}
.share-grid th:first-child{
    width:35px;
    padding:0;
}
.share-grid th{
    border-radius: 10px;
}
.share-grid thead tr th:not(:first-child){
    border-radius:0;
    padding-bottom: 5px;;
    text-decoration: underline;
    text-underline-offset: 5px
}
.share-grid thead tr{
    background-color: white;
}
.share-grid tbody tr th{
    padding: 6px;
}
.share-grid tbody tr td{
    height: 78px;
}
.share-grid tbody tr td{
    vertical-align: top;
}
.share-grid tbody tr td .lesson_name{
    height: 100%;
    border-radius: 10px;
    padding: 6px;
}
.share-grid tbody tr td .empty_lesson{
    background-color:  var(--bg-1);
    height: 100%;
}
.period{
    text-align: center;
}
.period div{
    border-radius: 50%;
    background-color:  var(--bg-0);
    display: inline-block;
    width: 25px;
    height: 25px;
}
.period p{
    font-size: 10px;
    color:#1E293B;
}
.week_th{
    position: sticky;
    top:0;
}
@media (max-width: 768px) {
    .share-grid table td{
        font-size: 10px;
    }
    .share-grid th:first-child{
        width:20px;
        font-size: 11px;
    }
    .period div{
        width: 17px;
        height: 17px;
        font-weight: bold;
    }
    .share-grid tbody tr td .lesson_name{
        padding: 3px;
    }
}
@media (max-width: 640px) {
    .share-grid tbody tr td .lesson_name{
        padding: 2px;
    }
}
