.elementor-17358 .elementor-element.elementor-element-fd6461d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}/* Start custom CSS for shortcode, class: .elementor-element-19ba4bb *//* =========================================================
   MyOnlineTutor – Student My Lessons
   PREMIUM VIOLET TABLE – MATCHED WITH TUTOR BOOKINGS
   Shortcode: [student_my_lessons]

   IMPORTANT:
   Replace the ENTIRE previous Student My Lessons CSS.
========================================================= */


/* =========================================================
   Student My Lessons Design Tokens
========================================================= */

.mot-lessons-wrap{
    --mot-lessons-violet-950:#32156F;
    --mot-lessons-violet-900:#452197;
    --mot-lessons-violet-800:#5427B5;
    --mot-lessons-violet-700:#6134B7;
    --mot-lessons-violet-600:#7A3EF2;
    --mot-lessons-violet-200:#DED0FA;
    --mot-lessons-violet-100:#EEE6FF;
    --mot-lessons-violet-50:#F7F3FF;
    --mot-lessons-violet-25:#FCFAFF;

    --mot-lessons-text:#242129;
    --mot-lessons-text-soft:#625E69;
    --mot-lessons-muted:#7B7682;

    --mot-lessons-border:rgba(97,52,183,.14);
    --mot-lessons-border-soft:rgba(97,52,183,.09);
    --mot-lessons-white:#FFFFFF;

    --mot-lessons-success-bg:#ECFAF2;
    --mot-lessons-success:#16894B;
    --mot-lessons-success-border:rgba(24,169,88,.16);

    --mot-lessons-danger-bg:#FFF1F4;
    --mot-lessons-danger:#C43B5A;
    --mot-lessons-danger-border:rgba(196,59,90,.14);

    --mot-lessons-neutral-bg:#F3F4F7;
    --mot-lessons-neutral:#686472;
    --mot-lessons-neutral-border:rgba(104,100,114,.12);

    --mot-lessons-shadow:
        0 20px 54px rgba(69,33,151,.09),
        0 4px 14px rgba(28,20,48,.035);

    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:18px 14px 48px;
    box-sizing:border-box;
}


/* =========================================================
   Main Card
========================================================= */

.mot-lessons-card{
    position:relative;
    width:100%;
    overflow:hidden;
    box-sizing:border-box;

    background:
        linear-gradient(
            180deg,
            var(--mot-lessons-white) 0%,
            var(--mot-lessons-violet-25) 100%
        );

    border:1px solid var(--mot-lessons-border);
    border-radius:24px;

    box-shadow:var(--mot-lessons-shadow);
}

.mot-lessons-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    z-index:2;

    width:100%;
    height:4px;

    background:
        linear-gradient(
            90deg,
            var(--mot-lessons-violet-900) 0%,
            var(--mot-lessons-violet-700) 48%,
            var(--mot-lessons-violet-600) 100%
        );
}

.mot-lessons-card::after{
    content:"";
    position:absolute;
    top:-125px;
    right:-105px;
    z-index:0;

    width:300px;
    height:300px;
    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(122,62,242,.11) 0%,
            rgba(238,230,255,.18) 50%,
            rgba(255,255,255,0) 74%
        );

    pointer-events:none;
}


/* =========================================================
   Header
========================================================= */

.mot-lessons-head{
    position:relative;
    z-index:1;
    padding:18px 20px 10px;
}

.mot-lessons-title{
    margin:0 0 4px;

    color:var(--mot-lessons-violet-900);

    font-size:clamp(18px,1.9vw,24px);
    line-height:1.05;
    font-weight:800;
    letter-spacing:-.03em;
}

.mot-lessons-subtitle{
    max-width:760px;
    margin:0;

    color:#8B8593;

    font-size:11px;
    line-height:1.4;
    font-weight:400;
}


/* =========================================================
   Table Wrapper
========================================================= */

.mot-lessons-table-wrap{
    position:relative;
    z-index:1;

    padding:0 24px 24px;

    overflow-x:auto;
    -webkit-overflow-scrolling:touch;

    scrollbar-width:thin;
    scrollbar-color:rgba(97,52,183,.28) transparent;
}

.mot-lessons-table-wrap::-webkit-scrollbar{
    height:8px;
}

.mot-lessons-table-wrap::-webkit-scrollbar-track{
    background:transparent;
}

.mot-lessons-table-wrap::-webkit-scrollbar-thumb{
    background:rgba(97,52,183,.22);
    border-radius:999px;
}


/* =========================================================
   Table
========================================================= */

.mot-lessons-table{
    width:100%;
    min-width:860px;

    border-collapse:separate;
    border-spacing:0;

    background:#FFFFFF;

    border:1px solid var(--mot-lessons-border-soft);
    border-radius:17px;

    box-shadow:0 8px 24px rgba(69,33,151,.04);

    overflow:hidden;
}

.mot-lessons-table thead th{
    padding:13px 15px;

    background:
        linear-gradient(
            180deg,
            #FBF9FF 0%,
            #F6F1FF 100%
        );

    border-bottom:1px solid rgba(97,52,183,.12);

    color:#777080;

    font-size:11px;
    line-height:1.35;
    font-weight:800;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.065em;
    white-space:nowrap;
}

.mot-lessons-table thead th:first-child{
    border-top-left-radius:16px;
}

.mot-lessons-table thead th:last-child{
    border-top-right-radius:16px;
}

.mot-lessons-table tbody td{
    padding:14px 15px;

    background:#FFFFFF;
    border-bottom:1px solid rgba(97,52,183,.075);

    color:var(--mot-lessons-text-soft);

    font-size:13px;
    line-height:1.5;
    vertical-align:middle;

    transition:background .18s ease;
}

.mot-lessons-table tbody tr:last-child td{
    border-bottom:none;
}

.mot-lessons-table tbody tr:hover td{
    background:#FCFAFF;
}


/* =========================================================
   Table Content
========================================================= */

.mot-lessons-wrap .mot-lesson-name{
    color:var(--mot-lessons-text);

    font-size:14px;
    line-height:1.45;
    font-weight:750;

    word-break:break-word;
}

.mot-lessons-wrap .mot-tutor-link{
    color:var(--mot-lessons-violet-800);

    font-size:13px;
    line-height:1.45;
    font-weight:700;

    text-decoration:none;
    word-break:break-word;

    transition:color .18s ease;
}

.mot-lessons-wrap .mot-tutor-link:hover,
.mot-lessons-wrap .mot-tutor-link:focus{
    color:var(--mot-lessons-violet-900);
    text-decoration:underline;
}

.mot-lessons-wrap .mot-lesson-date{
    color:#5D5864;

    font-size:13px;
    line-height:1.45;
    font-weight:600;
    white-space:nowrap;
}


/* =========================================================
   Status Badges
   Scoped to Student wrapper to prevent conflicts
========================================================= */

.mot-lessons-wrap .mot-status-badge{
    min-width:80px;
    min-height:27px;
    padding:5px 10px;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    border:1px solid transparent;
    border-radius:999px;

    font-size:10px;
    line-height:1;
    font-weight:800;
    white-space:nowrap;
}

.mot-lessons-wrap .mot-status-badge::before{
    content:"";
    width:6px;
    height:6px;
    flex:0 0 6px;

    border-radius:50%;
    background:currentColor;

    opacity:.88;
}

.mot-lessons-wrap .mot-status-badge.upcoming{
    background:#F1EBFF;
    border-color:rgba(97,52,183,.13);

    color:var(--mot-lessons-violet-700);
}

.mot-lessons-wrap .mot-status-badge.ongoing{
    background:var(--mot-lessons-success-bg);
    border-color:var(--mot-lessons-success-border);

    color:var(--mot-lessons-success);
}

.mot-lessons-wrap .mot-status-badge.past,
.mot-lessons-wrap .mot-status-badge.completed{
    background:var(--mot-lessons-neutral-bg);
    border-color:var(--mot-lessons-neutral-border);

    color:var(--mot-lessons-neutral);
}

.mot-lessons-wrap .mot-status-badge.cancelled{
    background:var(--mot-lessons-danger-bg);
    border-color:var(--mot-lessons-danger-border);

    color:var(--mot-lessons-danger);
}


/* =========================================================
   Main Lesson Button
========================================================= */

.mot-lessons-wrap .mot-lesson-btn{
    min-width:126px;
    min-height:43px;
    padding:0 17px;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    border:1px solid transparent;
    border-radius:13px;

    background:
        linear-gradient(
            135deg,
            var(--mot-lessons-violet-600) 0%,
            var(--mot-lessons-violet-700) 52%,
            var(--mot-lessons-violet-900) 100%
        );

    color:#FFFFFF !important;
    text-decoration:none !important;

    font-size:13px;
    line-height:1;
    font-weight:700;
    white-space:nowrap;

    box-shadow:
        0 10px 22px rgba(69,33,151,.22),
        inset 0 1px 0 rgba(255,255,255,.20);

    cursor:pointer;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        filter .18s ease;
}

.mot-lessons-wrap .mot-lesson-btn:hover,
.mot-lessons-wrap .mot-lesson-btn:focus{
    transform:translateY(-2px);

    color:#FFFFFF !important;
    text-decoration:none !important;

    box-shadow:
        0 15px 30px rgba(69,33,151,.29),
        inset 0 1px 0 rgba(255,255,255,.23);

    filter:brightness(1.035);
}

.mot-lessons-wrap .mot-lesson-btn:focus-visible{
    outline:3px solid rgba(122,62,242,.25);
    outline-offset:3px;
}


/* =========================================================
   Student View Order Button
========================================================= */

.mot-lessons-wrap .mot-view-student-order-btn,
.mot-lessons-wrap .mot-view-student-order-link{
    min-height:31px;
    padding:0 10px !important;
    margin:0 !important;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    background:#FFFFFF !important;
    border:1px solid rgba(97,52,183,.18) !important;
    border-radius:9px !important;

    color:var(--mot-lessons-violet-700) !important;
    text-decoration:none !important;

    font-size:11px;
    line-height:1;
    font-weight:750;

    box-shadow:0 5px 12px rgba(69,33,151,.04) !important;

    cursor:pointer;

    transition:
        transform .17s ease,
        background .17s ease,
        color .17s ease,
        border-color .17s ease,
        box-shadow .17s ease;
}

.mot-lessons-wrap .mot-view-student-order-btn:hover,
.mot-lessons-wrap .mot-view-student-order-btn:focus,
.mot-lessons-wrap .mot-view-student-order-link:hover,
.mot-lessons-wrap .mot-view-student-order-link:focus{
    transform:translateY(-1px);

    background:var(--mot-lessons-violet-50) !important;
    border-color:rgba(97,52,183,.32) !important;

    color:var(--mot-lessons-violet-900) !important;
    text-decoration:none !important;

    box-shadow:0 8px 18px rgba(69,33,151,.08) !important;
}

.mot-lessons-wrap .mot-view-student-order-btn.is-active,
.mot-lessons-wrap .mot-view-student-order-link.is-active{
    background:#EEE6FF !important;
    border-color:rgba(97,52,183,.34) !important;

    color:var(--mot-lessons-violet-900) !important;
}




/* =========================================================
   Pagination
========================================================= */

.mot-lessons-pagination{
    position:relative;
    z-index:1;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-wrap:wrap;
    gap:7px !important;

    margin:4px 24px 25px !important;
}

.mot-lessons-pagination .page-numbers{
    min-width:37px !important;
    height:37px !important;
    padding:0 12px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    background:#FFFFFF !important;
    border:1px solid rgba(97,52,183,.15) !important;
    border-radius:11px !important;

    color:var(--mot-lessons-violet-700) !important;
    text-decoration:none !important;

    font-size:12px !important;
    line-height:1 !important;
    font-weight:700 !important;

    box-shadow:0 5px 13px rgba(69,33,151,.035);

    transition:
        transform .17s ease,
        background .17s ease,
        color .17s ease,
        border-color .17s ease,
        box-shadow .17s ease;
}

.mot-lessons-pagination .page-numbers:hover{
    transform:translateY(-1px);

    background:var(--mot-lessons-violet-50) !important;
    border-color:rgba(97,52,183,.30) !important;

    color:var(--mot-lessons-violet-900) !important;

    box-shadow:0 8px 18px rgba(69,33,151,.075);
}

.mot-lessons-pagination .page-numbers.current{
    background:
        linear-gradient(
            135deg,
            var(--mot-lessons-violet-600) 0%,
            var(--mot-lessons-violet-700) 52%,
            var(--mot-lessons-violet-900) 100%
        ) !important;

    border-color:transparent !important;
    color:#FFFFFF !important;

    box-shadow:0 9px 20px rgba(69,33,151,.22);
}

.mot-lessons-pagination .page-numbers:focus-visible{
    outline:3px solid rgba(122,62,242,.22);
    outline-offset:2px;
}


/* =========================================================
   Empty State
========================================================= */

.mot-empty{
    position:relative;
    overflow:hidden;

    width:min(100%,760px);
    margin:18px auto;
    padding:34px 25px;

    background:
        linear-gradient(
            180deg,
            #FFFFFF 0%,
            #FCFAFF 100%
        );

    border:1px solid var(--mot-lessons-border);
    border-radius:21px;

    color:var(--mot-lessons-muted);

    font-size:14px;
    line-height:1.7;
    font-weight:500;
    text-align:center;

    box-shadow:0 14px 34px rgba(69,33,151,.07);
}

.mot-empty::before{
    content:"";
    position:absolute;
    top:0;
    left:0;

    width:100%;
    height:4px;

    background:
        linear-gradient(
            90deg,
            var(--mot-lessons-violet-900) 0%,
            var(--mot-lessons-violet-700) 48%,
            var(--mot-lessons-violet-600) 100%
        );
}




/* =========================================================
   Student Order Details Panel
========================================================= */

.mot-student-order-details-panel{
    position:relative;
    z-index:1;

    margin:4px 24px 25px;
    padding:20px;

    background:
        linear-gradient(
            180deg,
            #FFFFFF 0%,
            #FCFAFF 100%
        );

    border:1px solid rgba(97,52,183,.12);
    border-radius:18px;

    box-shadow:
        0 12px 30px rgba(69,33,151,.065);
}

.mot-student-order-details-title{
    margin:0 0 15px;

    color:var(--mot-lessons-violet-900);

    font-size:18px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:-.02em;
}


/* =========================================================
   Student Order Frame
========================================================= */

.mot-student-order-frame-wrap{
    position:relative;
    width:100%;
    min-height:520px;

    overflow:hidden;

    background:#FFFFFF;

    border:1px solid rgba(97,52,183,.10);
    border-radius:16px;
}


/* =========================================================
   Student Order Loader
========================================================= */

.mot-student-order-loading{
    position:absolute;
    inset:0;
    z-index:20;

    min-height:520px;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;

    padding:24px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.96) 0%,
            rgba(247,243,255,.97) 100%
        );

    border-radius:16px;

    text-align:center;

    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
}


/* Decorative glow */

.mot-student-order-loading::before{
    content:"";

    position:absolute;
    top:50%;
    left:50%;

    width:190px;
    height:190px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(122,62,242,.15) 0%,
            rgba(238,230,255,.13) 48%,
            rgba(255,255,255,0) 72%
        );

    transform:translate(-50%,-50%);

    pointer-events:none;
}


/* Spinner */

.mot-student-order-loader{
    position:relative;
    z-index:1;

    width:46px;
    height:46px;

    border:4px solid rgba(97,52,183,.14);
    border-top-color:var(--mot-lessons-violet-700);
    border-right-color:var(--mot-lessons-violet-600);
    border-radius:50%;

    box-shadow:
        0 8px 22px rgba(69,33,151,.12);

    animation:
        motStudentOrderSpin .78s linear infinite;
}


/* Inner spinner circle */

.mot-student-order-loader::after{
    content:"";

    position:absolute;
    inset:7px;

    border-radius:50%;

    background:
        linear-gradient(
            135deg,
            var(--mot-lessons-violet-100),
            #FFFFFF
        );
}


/* Loading text */

.mot-student-order-loading-title{
    position:relative;
    z-index:1;

    margin-top:3px;

    color:var(--mot-lessons-violet-900);

    font-size:15px;
    line-height:1.4;
    font-weight:800;
}

.mot-student-order-loading-text{
    position:relative;
    z-index:1;

    max-width:310px;

    color:var(--mot-lessons-muted);

    font-size:12px;
    line-height:1.55;
    font-weight:500;
}


/* Subtle animated dots */

.mot-student-order-loading-text::after{
    content:"";

    display:inline-block;
    width:1.4em;

    text-align:left;

    animation:
        motStudentLoadingDots 1.4s steps(4,end) infinite;
}


@keyframes motStudentOrderSpin{
    to{
        transform:rotate(360deg);
    }
}

@keyframes motStudentLoadingDots{
    0%{
        content:"";
    }

    25%{
        content:".";
    }

    50%{
        content:"..";
    }

    75%,
    100%{
        content:"...";
    }
}


/* =========================================================
   Tablet
========================================================= */

@media (max-width:1024px){

    .mot-lessons-wrap{
        padding:14px 11px 38px;
    }

    .mot-lessons-card{
        border-radius:21px;
    }

    .mot-lessons-head{
        padding:18px 20px 10px;
    }

    .mot-lessons-table-wrap{
        padding:0 19px 21px;
    }

    .mot-lessons-table{
        min-width:760px;
    }

    .mot-lessons-table thead th{
        padding:12px 13px;
    }

    .mot-lessons-table tbody td{
        padding:13px;
    }

    .mot-lessons-pagination{
        margin:2px 19px 22px !important;
    }
}


/* =========================================================
   Small Tablet
========================================================= */

@media (max-width:820px){

    .mot-lessons-table{
        min-width:700px;
    }
}


/* =========================================================
   Mobile Cards
========================================================= */

@media (max-width:767px){

    .mot-lessons-wrap{
        padding:10px 8px 30px;
    }

    .mot-lessons-card{
        border-radius:18px;
    }

    .mot-lessons-card::after{
        top:-90px;
        right:-100px;
        width:220px;
        height:220px;
    }

    .mot-lessons-head{
        padding:16px 14px 8px;
    }

    .mot-lessons-title{
        font-size:21px;
    }

    .mot-lessons-subtitle{
        font-size:10px;
    }

    .mot-lessons-table-wrap{
        padding:0 13px 18px;
        overflow:visible;
    }

    .mot-lessons-table{
        min-width:0;
        border:0;
        border-radius:0;

        background:transparent;
        box-shadow:none;
        overflow:visible;
    }

    .mot-lessons-table thead{
        display:none;
    }

    .mot-lessons-table,
    .mot-lessons-table tbody,
    .mot-lessons-table tr,
    .mot-lessons-table td{
        display:block;
        width:100%;
    }

    .mot-lessons-table tbody tr{
        position:relative;
        overflow:hidden;

        margin:0 0 11px;

        background:#FFFFFF;
        border:1px solid rgba(97,52,183,.12);
        border-radius:15px;

        box-shadow:0 8px 20px rgba(69,33,151,.055);
    }

    .mot-lessons-table tbody tr::before{
        content:"";
        position:absolute;
        top:0;
        left:0;

        width:100%;
        height:3px;

        background:
            linear-gradient(
                90deg,
                var(--mot-lessons-violet-900) 0%,
                var(--mot-lessons-violet-700) 55%,
                var(--mot-lessons-violet-600) 100%
            );
    }

    .mot-lessons-table tbody td{
        padding:12px 13px;

        background:#FFFFFF;
        border-bottom:1px solid rgba(97,52,183,.075);

        text-align:left;
    }

    .mot-lessons-table tbody tr:hover td{
        background:#FFFFFF;
    }

    .mot-lessons-table tbody td:last-child{
        border-bottom:none;
    }

    .mot-lessons-table tbody td::before{
        content:attr(data-label);

        display:block;
        margin-bottom:5px;

        color:#8A8390;

        font-size:9px;
        line-height:1.3;
        font-weight:800;
        text-transform:uppercase;
        letter-spacing:.07em;
    }

    .mot-lessons-wrap .mot-lesson-btn,
    .mot-lessons-wrap .mot-view-student-order-btn,
    .mot-lessons-wrap .mot-view-student-order-link{
        width:100%;
        min-width:0;
    }

    .mot-lessons-wrap .mot-view-student-order-btn,
    .mot-lessons-wrap .mot-view-student-order-link{
        min-height:36px;
        margin-top:8px !important;
    }

    .mot-lessons-wrap .mot-status-badge{
        min-width:76px;
    }

    .mot-lessons-pagination{
        gap:6px !important;
        margin:0 13px 19px !important;
    }

    .mot-lessons-pagination .page-numbers{
        min-width:34px !important;
        height:34px !important;
        padding:0 10px !important;
        border-radius:10px !important;
    }

    
}


/* =========================================================
   Small Mobile
========================================================= */

@media (max-width:420px){

    .mot-lessons-wrap{
        padding-left:6px;
        padding-right:6px;
    }

    .mot-lessons-head{
        padding-left:14px;
        padding-right:14px;
    }

    .mot-lessons-table-wrap{
        padding-left:10px;
        padding-right:10px;
    }

    .mot-lessons-pagination{
        margin-left:10px !important;
        margin-right:10px !important;
    }
}


/* =========================================================
   Reduced Motion
========================================================= */

@media (prefers-reduced-motion:reduce){

    .mot-lessons-wrap .mot-lesson-btn,
    .mot-lessons-wrap .mot-view-student-order-btn,
    .mot-lessons-wrap .mot-view-student-order-link,
    .mot-lessons-pagination .page-numbers{
        transition:none;
    }

    .mot-lessons-wrap .mot-lesson-btn:hover,
    .mot-lessons-wrap .mot-view-student-order-btn:hover,
    .mot-lessons-wrap .mot-view-student-order-link:hover,
    .mot-lessons-pagination .page-numbers:hover{
        transform:none;
    }
}


@media (max-width:1024px){

    .mot-student-order-details-panel{
        margin:2px 19px 22px;
        padding:17px;
    }
}


@media (max-width:767px){

    .mot-student-order-details-panel{
        margin:0 13px 19px;
        padding:13px;

        border-radius:16px;
    }

    .mot-student-order-details-title{
        margin-bottom:12px;

        font-size:16px;
    }

    .mot-student-order-frame-wrap,
    .mot-student-order-loading{
        min-height:420px;
    }

    #mot-student-order-details-frame{
        min-height:420px !important;
        height:68vh !important;
    }

    .mot-student-order-loader{
        width:42px;
        height:42px;
    }

    .mot-student-order-loading-title{
        font-size:14px;
    }

    .mot-student-order-loading-text{
        font-size:11px;
    }
}


@media (max-width:420px){

    .mot-student-order-details-panel{
        margin-left:10px;
        margin-right:10px;
        padding:10px;
    }
}


@media (prefers-reduced-motion:reduce){

    .mot-student-order-loader{
        animation-duration:1.5s;
    }

    .mot-student-order-loading-text::after{
        animation:none;
        content:"...";
    }
}/* End custom CSS */