/*==================================================
TEACHER SIDEBAR
==================================================*/

.teacher-sidebar{

    width:270px;
    min-height:100vh;

    background:#0A2E6D;
    color:#fff;

    position:fixed;
    left:0;
    top:0;

    display:flex;
    flex-direction:column;

    z-index:1000;

    overflow-y:auto;

    transition:transform .3s ease;

}


/*==================================================
SIDEBAR LOGO
==================================================*/

.teacher-sidebar-logo{

    padding:28px 25px;

    border-bottom:1px solid rgba(255,255,255,.1);

}

.teacher-sidebar-logo a{

    display:flex;
    align-items:center;

    gap:12px;

    color:#fff;
    text-decoration:none;

    font-weight:700;
    font-size:20px;

}

.teacher-sidebar-logo img{

    width:42px;
    height:42px;

    object-fit:contain;

}


/*==================================================
TEACHER PROFILE
==================================================*/

.teacher-profile{

    text-align:center;

    padding:30px 20px;

}

.teacher-profile img{

    width:90px;
    height:90px;

    border-radius:50%;

    object-fit:cover;

    border:4px solid rgba(255,255,255,.15);

}

.teacher-profile h3{

    margin-top:15px;

    font-size:19px;

}

.teacher-profile span{

    color:#dbe6ff;

    font-size:14px;

}


/*==================================================
MENU
==================================================*/

.teacher-menu{

    list-style:none;

    margin:0;
    padding:15px 0;

}

.teacher-menu li{

    margin:5px 0;

}

.teacher-menu a{

    display:flex;

    align-items:center;

    gap:14px;

    color:#fff;

    text-decoration:none;

    padding:15px 25px;

    transition:.3s;

}

.teacher-menu a:hover{

    background:rgba(255,255,255,.1);

}

.teacher-menu a.active{

    background:#4CAF28;

    font-weight:600;

}

.teacher-menu i{

    width:22px;

    text-align:center;

}


/*==================================================
MOBILE SIDEBAR OVERLAY
==================================================*/

.teacher-sidebar-overlay{

    display:none;

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.45);

    z-index:999;

}


/*==================================================
MOBILE SIDEBAR TOGGLE
==================================================*/

.teacher-mobile-menu-btn{

    display:none;

    position:fixed;

    top:15px;
    left:15px;

    width:45px;
    height:45px;

    border:none;
    border-radius:8px;

    background:#0A2E6D;

    color:#fff;

    font-size:20px;

    cursor:pointer;

    z-index:1100;

    align-items:center;
    justify-content:center;

}


/*==================================================
TABLET
==================================================*/

@media (max-width:991px){

    .teacher-sidebar{

        width:250px;

    }

}


/*==================================================
MOBILE
==================================================*/

@media (max-width:767px){

    .teacher-sidebar{

        width:270px;

        transform:translateX(-100%);

        box-shadow:5px 0 20px rgba(0,0,0,.2);

    }


    .teacher-sidebar.mobile-open{

        transform:translateX(0);

    }


    .teacher-sidebar-overlay{

        display:block;

        opacity:0;

        visibility:hidden;

        transition:.3s ease;

    }


    .teacher-sidebar-overlay.active{

        opacity:1;

        visibility:visible;

    }


    .teacher-mobile-menu-btn{

        display:flex;

    }


    /* Make profile slightly smaller */

    .teacher-profile{

        padding:22px 15px;

    }


    .teacher-profile img{

        width:75px;
        height:75px;

    }


    .teacher-profile h3{

        font-size:17px;

    }


    .teacher-menu a{

        padding:14px 22px;

    }

}


/*==================================================
VERY SMALL PHONES
==================================================*/

@media (max-width:480px){

    .teacher-sidebar{

        width:260px;

    }

}

/*==================================================
TEACHER TOPBAR
==================================================*/

.teacher-topbar{

    margin-left:270px;

    background:#fff;

    height:80px;

    padding:0 35px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    border-bottom:1px solid #e5e7eb;

    position:sticky;

    top:0;

    z-index:999;

}

.teacher-topbar-left h2{

    margin:0;

    font-size:28px;

    color:#0A2E6D;

}

.teacher-topbar-left p{

    margin-top:5px;

    color:#6b7280;

}

.teacher-topbar-right{

    display:flex;

    align-items:center;

    gap:30px;

}

.teacher-date{

    color:#6b7280;

    font-size:15px;

    display:flex;

    align-items:center;

    gap:10px;

}

.teacher-topbar-user{

    display:flex;

    align-items:center;

    gap:15px;

}

.teacher-topbar-user img{

    width:50px;

    height:50px;

    border-radius:50%;

    object-fit:cover;

}

.teacher-topbar-user h4{

    margin:0;

    font-size:16px;

    color:#111827;

}

.teacher-topbar-user span{

    color:#6b7280;

    font-size:14px;

}

/*==================================================
TEACHER DASHBOARD
==================================================*/

.teacher-dashboard{

margin-left:270px;

padding:35px;

background:#f5f7fb;

min-height:100vh;

}

.teacher-dashboard-content{

max-width:1400px;

margin:auto;

}

/*=========================
WELCOME
=========================*/

.teacher-welcome-card{

display:flex;

justify-content:space-between;

align-items:center;

gap:40px;

background:linear-gradient(135deg,#0A2E6D,#0f55c6);

padding:45px;

border-radius:20px;

color:#fff;

margin-bottom:35px;

box-shadow:0 15px 40px rgba(0,0,0,.12);

flex-wrap:wrap;

}

.teacher-welcome-left{

flex:1;

min-width:300px;

}

.teacher-welcome-right{

flex:0 0 320px;

text-align:center;

}

.teacher-welcome-right img{

width:100%;

max-width:280px;

}

.teacher-welcome-badge{

display:inline-block;

padding:8px 18px;

background:rgba(255,255,255,.15);

border-radius:50px;

font-size:14px;

margin-bottom:20px;

}

.teacher-welcome-card h2{

margin:0;

font-size:36px;

font-weight:700;

}

.teacher-welcome-card p{

margin:18px 0 28px;

line-height:1.8;

opacity:.95;

max-width:650px;

}

.teacher-upload-btn{

display:inline-flex;

align-items:center;

gap:10px;

background:#4CAF28;

color:#fff;

padding:15px 30px;

border-radius:10px;

text-decoration:none;

font-weight:600;

transition:.3s;

}

.teacher-upload-btn:hover{

background:#3f9822;

transform:translateY(-2px);

}

/*=========================
STATISTICS
=========================*/

.teacher-stat-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

margin-bottom:35px;

}

.teacher-stat-card{

background:#fff;

padding:30px;

border-radius:18px;

display:flex;

align-items:center;

gap:22px;

box-shadow:0 10px 25px rgba(0,0,0,.05);

transition:.3s;

}

.teacher-stat-card:hover{

transform:translateY(-6px);

}

.teacher-stat-icon{

width:72px;

height:72px;

background:#eef3ff;

color:#0A2E6D;

display:flex;

justify-content:center;

align-items:center;

border-radius:16px;

font-size:28px;

}

.teacher-stat-card h2{

margin:0;

font-size:30px;

color:#111827;

}

.teacher-stat-card p{

margin-top:6px;

color:#6b7280;

}

/*=========================
UPLOAD CARD
=========================*/

.teacher-action-card{

display:flex;

justify-content:space-between;

align-items:center;

gap:35px;

background:#fff;

padding:35px;

border-radius:18px;

box-shadow:0 10px 25px rgba(0,0,0,.05);

flex-wrap:wrap;

}

.teacher-action-info{

flex:1;

min-width:300px;

}

.teacher-action-info h3{

margin-bottom:15px;

color:#0A2E6D;

font-size:28px;

}

.teacher-action-info p{

line-height:1.8;

color:#6b7280;

}

.teacher-action-button{

display:inline-flex;

align-items:center;

gap:10px;

padding:16px 34px;

background:#0A2E6D;

color:#fff;

border-radius:10px;

text-decoration:none;

font-weight:600;

transition:.3s;

}

.teacher-action-button:hover{

background:#081f52;

transform:translateY(-2px);

}

/*=========================
RESPONSIVE
=========================*/

@media(max-width:992px){

.teacher-dashboard{

margin-left:0;

padding:25px;

}

.teacher-topbar{

margin-left:0;

}

.teacher-stat-grid{

grid-template-columns:1fr;

}

.teacher-welcome-card{

padding:35px;

}

}

@media(max-width:768px){

.teacher-dashboard{

padding:18px;

}

.teacher-welcome-card{

padding:28px;

}

.teacher-welcome-card h2{

font-size:28px;

}

.teacher-action-card{

padding:28px;

}

}

/*==================================================
UPLOAD RESOURCE PAGE
==================================================*/

.teacher-page-header{

background:linear-gradient(135deg,#0A2E6D,#0E4C92);

color:#fff;

padding:35px 40px;

border-radius:20px;

margin-bottom:30px;

box-shadow:0 15px 40px rgba(10,46,109,.15);

}

.teacher-page-header h2{

margin:0;

font-size:34px;

font-weight:700;

}

.teacher-page-header p{

margin-top:10px;

font-size:16px;

color:rgba(255,255,255,.85);

line-height:1.8;

}

.teacher-form{

display:flex;

flex-direction:column;

gap:30px;

}

/*==================================================
FORM CARD
==================================================*/

.teacher-form-card{

background:#fff;

border-radius:20px;

padding:35px;

box-shadow:0 12px 35px rgba(0,0,0,.05);

border:1px solid #edf2f7;

transition:.3s;

}

.teacher-form-card:hover{

transform:translateY(-3px);

box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.teacher-form-card h3{

margin:0 0 30px;

font-size:23px;

font-weight:700;

color:#0A2E6D;

padding-bottom:15px;

border-bottom:2px solid #eef3f8;

}

/*==================================================
GRID
==================================================*/

.teacher-grid-2{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:25px;

align-items:start;

}

/*==================================================
FORM GROUP
==================================================*/

.teacher-form-group{

display:flex;

flex-direction:column;

gap:10px;

}

.teacher-form-group label{

font-size:15px;

font-weight:600;

color:#374151;

}

.teacher-form-group input,

.teacher-form-group textarea,

.teacher-form-group select{

width:100%;

padding:15px 18px;

border:1px solid #d6dce5;

border-radius:12px;

font-size:15px;

background:#fff;

transition:.3s;

font-family:inherit;

}

.teacher-form-group textarea{

resize:vertical;

min-height:180px;

}

.teacher-form-group input:focus,

.teacher-form-group textarea:focus,

.teacher-form-group select:focus{

outline:none;

border-color:#0A2E6D;

box-shadow:0 0 0 5px rgba(10,46,109,.08);

}

.teacher-form-group small{

font-size:13px;

color:#6b7280;

}

/*==================================================
UPLOAD BOX
==================================================*/

.teacher-form-group input[type=file]{

padding:20px;

border:2px dashed #cfd8e3;

background:#f8fbff;

cursor:pointer;

border-radius:15px;

}

.teacher-form-group input[type=file]:hover{

border-color:#0A2E6D;

background:#eef5ff;

}

/*==================================================
PREMIUM TOGGLE
==================================================*/

.teacher-toggle{

display:flex;

align-items:center;

gap:15px;

padding:18px;

background:#f8fbff;

border-radius:14px;

border:1px solid #e3ebf5;

}

.switch{

position:relative;

display:inline-block;

width:60px;

height:32px;

}

.switch input{

display:none;

}

.slider{

position:absolute;

top:0;

left:0;

right:0;

bottom:0;

background:#cfd8e3;

border-radius:50px;

cursor:pointer;

transition:.3s;

}

.slider:before{

content:"";

position:absolute;

height:24px;

width:24px;

left:4px;

bottom:4px;

background:#fff;

border-radius:50%;

transition:.3s;

box-shadow:0 3px 8px rgba(0,0,0,.15);

}

.switch input:checked + .slider{

background:#4CAF28;

}

.switch input:checked + .slider:before{

transform:translateX(28px);

}

/*==================================================
PRICE BOX
==================================================*/

#priceGroup{

margin-top:15px;

}

/*==================================================
SUBMIT AREA
==================================================*/

.teacher-submit-area{

display:flex;

justify-content:flex-end;

margin-top:10px;

}

.teacher-submit-btn{

display:inline-flex;

align-items:center;

justify-content:center;

gap:12px;

background:linear-gradient(135deg,#0A2E6D,#0E4C92);

color:#fff;

padding:16px 40px;

border:none;

border-radius:12px;

font-size:16px;

font-weight:600;

cursor:pointer;

transition:.3s;

box-shadow:0 10px 25px rgba(10,46,109,.20);

}

.teacher-submit-btn:hover{

transform:translateY(-2px);

box-shadow:0 16px 35px rgba(10,46,109,.28);

}

.teacher-submit-btn i{

font-size:18px;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:992px){

.teacher-page-header{

padding:30px;

}

.teacher-grid-2{

grid-template-columns:1fr;

}

.teacher-form-card{

padding:28px;

}

.teacher-submit-area{

justify-content:center;

}

.teacher-submit-btn{

width:100%;

}

}

@media(max-width:768px){

.teacher-dashboard{

padding:20px;

}

.teacher-page-header h2{

font-size:28px;

}

.teacher-page-header p{

font-size:15px;

}

.teacher-form-card{

padding:22px;

}

}

@media(max-width:576px){

.teacher-page-header{

padding:25px;

}

.teacher-page-header h2{

font-size:24px;

}

.teacher-submit-btn{

padding:15px;

font-size:15px;

}

}




