::-webkit-scrollbar {width: 2px;height: 2px;}
::-webkit-scrollbar-track {background: #ffffff;border-radius: 2px;}
::-webkit-scrollbar-thumb {background: #ef606f;border-radius: 2px;}
::-webkit-scrollbar-thumb:hover {background: #d43445;}
*{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif;}
body{background:#fef8f0;}
.main-containerwp {width:99%; margin:0 auto;}
.main-container {width:87%; margin:0 auto;}
.main-container-teacher {width:93%!important;margin:0 0 0 84px!important;}
.col-sm-1 {width:8.33333333333;padding:0 10px;}
.col-sm-2 {width:16.6666666667;padding:0 10px;}
.col-sm-3 {width:25%;padding:0 10px;}
.col-sm-4 {width:33.3333%;padding:0 10px;}
.col-sm-6 {width:50%;padding:0 10px;}
.col-sm-12 {width:100%;padding:0 10px;}
.container{display:flex;width:100%;min-height:100vh;}
#bg-video {position: fixed;top: -400px;left: -600px;min-width: 100%;min-height: 100%;object-fit: contain;z-index: -1;}
.left {
    width:58%;
    position: relative;
    color: #fff;
    z-index:2;
    overflow: hidden;
    background-image: url('/images/bu-campus.jpg');
}
.left::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(122,24,82,.68),rgba(207,91,34,.45));}
.left-content{position:relative;z-index:2;padding:55px;height:100%;display:flex;flex-direction:column;}
.country{display:inline-block;width:max-content;border:1px solid rgba(255,255,255,.4);border-radius:30px;padding:5px 15px;margin-bottom:50px;backdrop-filter:blur(8px);font-size:.75rem;letter-spacing:.05em;line-height:1rem;font-weight:600;background:rgba(255,255,255,.15);}
.text-yellow {color:#f9b233;}
.connect{width:130px;padding:7px 7px 0px 7px;border-radius:10px;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);text-align:center;margin-bottom:20px;border:1px solid rgba(255,255,255,.4);}
.connect img {width:100%;}
.connect h3{color:#fff;font-size:28px;}
.connect small{font-size:10px;}
.hero{margin-top:10px;}
.hero h1{font-size:3.75rem;line-height:1;font-weight:800; letter-spacing:-.025em; color:#fff;}
.hero span{color:#f1af4e;}
.hero p{margin-top:25px;width:85%;color:#ffffffd9;line-height:1.625;font-size:1.125rem;}
.stats{display:flex;gap:18px;margin-top:auto;}
.card{flex:1;background:rgba(255,255,255,.15);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.2);border-radius:18px;padding:18px;}
.card h2{font-size: 1.5rem;line-height: 2rem;font-weight: 800;}
.card p{font-size: .75rem;line-height: 1rem;margin-top:.125rem;}
.right{width:40%;display:flex;justify-content:center;align-items:center;background:#fef8f0;}
.login-box{width:450px; margin-top:5%;margin-bottom:5%;}
.login-box h1 {font-size: 1.875rem;line-height: 2.25rem;font-weight: 600;color:rgb(43 18 32,1);}
.logo{text-align:center;margin-bottom:10px;}
.logo img {width:45%;}
.logo h2{color:#9d155d;font-size:36px;font-weight:700;}
.logo span{color:#f28c28;}
.logo p{color:#a31559;letter-spacing:5px;margin-top:5px;font-size:12px;}
h1{font-size:48px;color:#2b1b28;}
.subtitle{font-size: .875rem;line-height: 1.25rem;margin-top: .25rem;font-weight: 400;color:#7a5b6a;margin-bottom: 1.5rem;}
.txt-alrt{font-size: .875rem;line-height:0.25rem;margin-top:0px;font-weight: 500;color:#dd277a;margin-bottom:15px;}
.dashboard-hero{width:100%;border-radius:28px;padding:38px 40px;background:linear-gradient(130deg,#01afd4 0%,#c01d2e 45%,#ee7143 78%,#20b780 100%);display:flex;justify-content:space-between;align-items:center;color:#fff;overflow:hidden;position:relative;margin-bottom:10px;}
.hero-left{width:62%;}
.hero-date{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:50px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.10);font-size:11px;font-weight:600;margin-bottom:22px;}
.hero-left h1{font-size:46px;line-height:1.05;font-weight:600;margin-bottom:10px;color:#fff;}
.hero-left p{font-size:16px;color:rgba(255,255,255,.90);max-width:650px;line-height:1.6;margin-bottom:28px;}
.hero-buttons{display:flex;gap:16px;flex-wrap:wrap;}
.hero-buttons-btn{padding:8px 20px;border-radius:50px;border:1px solid rgba(255,255,255,.30);background:rgba(255,255,255,.08);color:#fff;text-decoration:none;display:flex;align-items:center;gap:12px;font-weight:600;transition:.35s;font-size:12px;}
.hero-buttons-btn:hover{background:#fff;color:#d6265b;}
.hero-right{width:330px;padding:20px;border-radius:22px;border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.08);backdrop-filter:blur(10px);}
.hero-right h4{font-size:11px;letter-spacing:.5px;margin-bottom:10px;font-weight:600;text-transform:uppercase;display:flex;align-items:center;gap:10px;}
.hero-event{display:flex;gap:16px;align-items:center;padding:14px;border-radius:18px;margin-bottom:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);}
.hero-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f08746;font-size:18px;flex-shrink:0;}
.hero-icon.pink{background:#bf1e30;}
.hero-event h3{font-size:14px;font-weight:600;margin-bottom:0px;}
.hero-event p{font-size:11px;opacity:.9;}
.calendar-container{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:10px;}
.calendar-card{background:#fff;border-radius:30px;padding:25px;box-shadow:0 8px 20px rgba(0,0,0,.05);}
.calendar-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;}
.calendar-title{display:flex;align-items:center;gap:15px;}
.calendar-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:17px;background:linear-gradient(135deg,#c01d2e,#c01d2e);}
.calendar-icon.calendar-orange{background:linear-gradient(135deg,#00b0c8,#09c6f2);}
.calendar-title h2{font-size:17px;color:#3d2432;}
.calendar-month{color:#c01d2e;font-weight:600;letter-spacing:1px;font-size:11px;}
.calendar-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.calendar-arrow{width:42px;height:42px;border-radius:50%;background:#fff6f6;display:flex;align-items:center;justify-content:center;color:#c01d2e;font-size:22px;}
.calendar-title{font-size:15px;font-weight:600;}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:18px;}
.calendar-day-name{color:#987a87;font-weight:600;font-size:11px;}
.calendar-date{height:50px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:14px;color:#31222b;}
.calendar-muted{color:#d6b8c2;}
.calendar-active{background:linear-gradient(135deg,#ec7639,#f2ae49);color:#fff;font-weight:600;box-shadow:0 12px 25px rgba(255,120,0,.3);}
.calendar-outline{border:3px solid #f3ba4f;}
.calendar-stats{display:flex;gap:15px;margin-bottom:20px;}
.calendar-stat{flex:1;border-radius:18px;padding:18px;background:#fff8f5;border:1px solid #f3dfdf;}
.calendar-stat.calendar-active{color:#fff;border:none;background:linear-gradient(135deg,#ec7639,#f2ae49);}
.calendar-stat h1{font-size:35px;line-height:35px;}
.text-white {color:#fff;}
.calendar-stat p{font-weight:600;text-transform:uppercase;font-size:14px;}
.calendar-recent{border:1px solid #f0dddd;border-radius:20px;padding:20px;}
.calendar-recent-title{color:#9b7d88;margin-bottom:5px;font-size:13px;}
.calendar-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;}
.calendar-badge{padding:8px 18px;border-radius:20px;font-size:12px;font-weight:600;}
.calendar-approved{background:#edfdf5;color:#0a9d6d;}
.calendar-pending{background:#fff7eb;color:#f3ba4f;}
.calendar-apply-btn{margin-top:25px;border:none;padding:18px;border-radius:18px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;background:linear-gradient(90deg,#ee6f46,#f3ba4f);}
.holidays-container{background:linear-gradient(135deg,#ffffff,#ffe4b2);border-radius:25px;padding:25px;margin-bottom:10px;box-shadow:0 5px 20px rgba(0,0,0,.08);}
.holidays-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;}
.holidays-heading-left{display:flex;align-items:center;gap:12px;}
.holidays-heading-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#f8673b,#f3ba4f);display:flex;align-items:center;justify-content:center;color:#fff;font-size:17px;}
.holidays-heading h2{font-size:17px;font-weight:600;color:#3d2432;}
.holidays-heading p{color:#777;font-size:12px;}
.holidays-right-text{color:#f8673b;font-weight:600;font-size:12px;}
.holidays-events{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.holidays-event-card{display:flex;align-items:center;padding:16px;border:1px solid #ffe4b2;border-radius:18px;transition:.3s;cursor:pointer;background:linear-gradient(135deg,#ffffff,#ffe4b2);}
.holidays-event-card:hover{transform:translateY(-4px);box-shadow:0 10px 18px rgba(0,0,0,.08);}
.holidays-event-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;margin-right:15px;}
.holidays-orange{background:#00b0c8;}
.holidays-pink{background:#c01d2e;}
.holidays-event-title{font-size:14px;font-weight:600;}
.holidays-event-time{color:#777;font-size:12px;}
.holiday-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
.holiday-card{border:1px solid #ffe4b2;border-radius:18px;padding:18px;transition:.3s;background:linear-gradient(135deg,#ffffff,#ffe4b2);}
.holiday-card:hover{transform:translateY(-5px);box-shadow:0 8px 16px rgba(0,0,0,.08);}
.holidays-top-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.holidays-small-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;}
.holidays-label{font-size:11px;letter-spacing:1px;font-weight:600;color:#777;}
.holiday-name{font-size:14px;font-weight:600;margin-bottom:0px;}
.holidays-date{color:#f8673b;font-weight:500;font-size:12px;}
.holidays-day{color:#777;font-size:12px;}
.spinner {display: none;width: 16px;height: 16px;border: 3px solid #ddd;border-top: 3px solid #8f1048;border-radius: 50%;position:absolute;padding:10px;animation: spin 0.8s linear infinite;background:#fff;}
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

.bt-dft:disabled {opacity: 0.7;cursor: not-allowed;}
.spinner1 {width: 16px;height: 16px;border: 2px solid rgba(255,255,255,.3);border-top: 2px solid #fff;border-radius: 50%;display: none;animation: spin1 .8s linear infinite;}
.bt-dft.loading .spinner1 {display: inline-block;}
@keyframes spin1 {
    to {
        transform: rotate(360deg);
    }
}

.text-ellipsis {width:75px;white-space:normal; text-align:center; padding:0px;}
.form-container{background:#fff;border-radius:25px;padding:25px;margin-bottom:10px;box-shadow:0 5px 20px rgba(0,0,0,.08);width:100%;}
.form-row{display:flex;gap:20px;}
.form-group-1{margin-bottom:0px;}
.form-group-1 label{display:block;font-size:13px;letter-spacing:2px;font-weight:700;color:#5c4b5d;margin-bottom:10px;text-transform:uppercase;}
.input-box-1{position:relative;}
.input-box-1 i{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#c01d2e;font-size:18px;}
.input-box-1 input, .input-box-1 select, .input-box-1 textarea{width:100%;border:1px solid #e7dce6;border-radius:12px;padding:10px 18px 10px 50px;font-size:14px;outline:none;background:#fff;}
.input-box-1 select{padding-left:10px;cursor:pointer;}
.input-box-1 textarea{resize:none;min-height:170px;padding-top:20px;}
.button-group-1{display:flex;gap:18px;margin-top:10px;}
.btn-submit-1{border:none;padding:18px 40px;border-radius:18px;color:#fff;font-size:22px;font-weight:bold;cursor:pointer;background:linear-gradient(90deg,#c01d2e,#f27f40);}
.btn-submit-1 i{margin-right:10px;}
.btn-cancel-1{border:1px solid #ddd;background:#fff;color:#666;padding:18px 38px;border-radius:18px;font-size:22px;cursor:pointer;}
  /*Login Index*/
.btn-submit-2{width:80%;text-align:left;border:none;padding:9px 20px;border-radius:18px;color:#fff;font-size:16px;font-weight:500;cursor:pointer;background:linear-gradient(90deg,#c01d2e,#f27f40);}
.btn-submit-2 i{margin-right:5px;}
/*Login Button*/
.btn-submit-Log{width:100%;text-align:center;border:none;padding:9px 20px;border-radius:18px;color:#fff;font-size:18px;font-weight:500;cursor:pointer;background:linear-gradient(90deg,#c01d2e,#f27f40);}
.btn-submit-Log i{margin-right:5px;}

.table-container{background:#fff;border-radius:5px;padding:2px;margin-bottom:2px;box-shadow:0 5px 20px rgba(0,0,0,.08);}
.table-container table{width:100%;/*border-collapse:collapse;*/}
.table-container thead{background:linear-gradient(135deg,#9b0056,#ff8a1c);color:#fff;}
.table-container thead th{padding:2px 2px;font-size:10px;font-weight:400;text-align:left;letter-spacing:.5px;}
.table-container tbody td{padding:2px 2px;font-size:11px;color:#444;border-bottom:1px solid #eee;transition:.3s;}
.table-container tbody tr:hover{background:#fff4eb;transform:scale(1.002);}
.table-container tbody tr:last-child td{border-bottom:none;}
.serial{font-weight:600;color:#9b0056;}
.code{font-weight:600;color:#ff8a1c;}
.credit{text-align:center;font-weight:bold;text-align:left;}
.check{text-align:left;font-size:22px;color:#00b15d;font-weight:bold;}
.pre-header{display:flex;align-items:center;gap:15px;margin-bottom:25px;}
.pre-back{width:48px;height:48px;border-radius:50%;display:flex;justify-content:center;align-items:center;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.08);cursor:pointer;color:#c01d2e;font-size:18px;}
.pre-title h1{font-size:32px;font-weight:700;color:#222;}
.pre-title p{font-size:15px;color:#777;}
.pre-title span{font-weight:600;color:#c01d2e;}
.btn-default-sbt {font-size:16px;}
.pt-20 {margin-top:20px!important;}

/* Responsive */

@media(max-width:992px){
.calendar-container{grid-template-columns:1fr;}
.calendar-grid{gap:10px;}
.calendar-date{font-size:18px;height:50px;}
.main-container {width:60%;margin:0 auto;}	
.dashboard-hero{flex-direction:column;gap:30px;}
.hero-left{width:100%;}
.hero-right{width:100%;}
.hero-left h1{font-size:40px;}
.container{flex-direction:column;}
.left, .right{width:100%;}
.left{min-height:600px;}
.hero h1{font-size:48px;line-height:55px;}
.hero p{width:100%;font-size:18px;line-height:30px;}
.stats{flex-direction:row;}
.login-box{width:90%;padding:50px 0;}
}

@media(max-width:1200px){
.holiday-grid{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:850px){
.holidays-events{grid-template-columns:1fr;}
.holiday-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:600px){
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-6, .col-sm-12 {width:100%;padding:0 10px;}
.form-container{width:100%;}
.pre-title h1{font-size:26px;}
.holiday-grid{grid-template-columns:1fr;}
.avatar-user h2 {font-size:14px!important;}
.avatar-badge {font-size:9px!important;}
.avatar-header {width:44px!important;height:44px!important;}
.header_logo {padding:0 10px!important;margin:0px 10px!important;}
.avatar-header{height:44px!important;}
.header-icon-right{padding:0 10px 0 0px!important;}
.header_logo {padding:0 10px 0 10px!important;margin:0 10px 0 10px!important;}
.header-notify {right:-6px!important;}
.main-container {width:69%!important;}
.user-logout {font-size:0!important;border-radius:50%!important;width:50px!important;height:50px!important;}
.user-logout i {font-size:15px!important;}
.calendar-date {font-size:13px!important;height:40px!important;}
.calendar-card {padding:15px!important;}
.left {order:1!important;}
.table-container table, thead, tbody, th, td, tr{display:block;}
.table-container thead{display:none;}
.table-container tbody tr{margin:15px;border:2px;border-radius:12px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.08);background:#fff;}
.table-container tbody td{border:2px;text-align:right;padding-left:50%;position:relative;}
.table-container tbody td::before{position:absolute;left:18px;width:45%;font-weight:bold;text-align:left;color:#9b0056;}
.table-container tbody td:nth-child(1)::before{content:"S.No";}
.table-container tbody td:nth-child(2)::before{content:"Subject Code";}
.table-container tbody td:nth-child(3)::before{content:"Subject Name";}
.table-container tbody td:nth-child(4)::before{content:"Credit";}
.table-container tbody td:nth-child(5)::before{content:"Select";}
}