@import"https://fonts.googleapis.com/css2?family=Merriweather&display=swap";*{padding:0;margin:0;box-sizing:border-box;font-family:Merriweather,serif;scroll-behavior:smooth}body{min-height:100vh}a{text-decoration:none;color:inherit}.app{width:80%;margin:auto}.hero{height:90vh;background-size:cover;background-position:center;position:relative;display:flex;justify-content:center;align-items:center;font-family:Merriweather,serif}.overlay{background-color:#0006;padding:50px;border-radius:16px;text-align:center;max-width:800px;color:#fff;animation:fadeIn 1.2s ease-in-out}.hero-title{font-size:3rem;font-weight:700;margin-bottom:20px;letter-spacing:1px;line-height:1.2}.hero-title span{color:#fc0;text-shadow:2px 2px 4px rgba(0,0,0,.6)}.hero-subtitle{font-size:1.4rem;font-weight:400;margin-bottom:30px;color:#f0f0f0}.hero-dropdown{position:relative;display:inline-block}.hero-button{display:inline-block;background-color:#fc0;color:#333;font-weight:700;padding:12px 24px;border-radius:8px;text-decoration:none;font-size:1rem;transition:all .3s ease;cursor:pointer}.hero-button:hover{background-color:orange;transform:scale(1.05);box-shadow:0 4px 10px #0000004d}.hero-menu{position:absolute;top:110%;left:50%;transform:translate(-50%);background-color:#fff;min-width:180px;padding:10px 0;border-radius:10px;box-shadow:0 8px 16px #0003;display:none;flex-direction:column;z-index:1000}.hero-menu li{list-style:none}.hero-menu li a{display:block;padding:10px 20px;color:#333;text-decoration:none;font-weight:600;transition:background .3s}.hero-menu li a:hover{background-color:#f7f7f7}.hero-dropdown:hover .hero-menu{display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 500px){.overlay{padding:30px 20px}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.hero-button{font-size:.9rem;padding:10px 20px}.hero-menu{min-width:160px}.hero-menu li a{font-size:.9rem;padding:8px 16px}}.notice-section{padding:40px 20px;background:linear-gradient(135deg,#f5f7fa,#e4e8f0);text-align:center}.notice-section h2{font-size:2.5rem;color:#2c3e50;margin-bottom:30px;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.1)}.notices-container{max-width:1000px;margin:0 auto}.notice-card{background:#fff;border-radius:15px;padding:20px;margin:20px auto;box-shadow:0 4px 15px #0000001a;position:relative;text-align:left;transition:transform .3s ease,box-shadow .3s ease}.notice-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.notice-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px;flex-wrap:wrap}.notice-title{flex:1;min-width:0;font-size:1.3rem;color:#2c3e50;margin:0;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word}.section-badge{padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:600;color:#fff;white-space:nowrap;flex-shrink:0}.notice-sec-a .section-badge{background:linear-gradient(135deg,#3498db,#2980b9)}.notice-sec-b .section-badge{background:linear-gradient(135deg,#2ecc71,#27ae60)}.notice-sec-all .section-badge{background:linear-gradient(135deg,#f39c12,#e67e22)}.notice-content{margin-top:10px}.extra-info{color:#7f8c8d;font-size:1rem;margin-bottom:10px;line-height:1.5}.notice-date{color:#95a5a6;font-size:.9rem;margin-bottom:15px;font-weight:500}.additional-info{margin-top:15px;padding:12px 15px;background:linear-gradient(135deg,#e8f4fd,#d6eaf8);border-left:4px solid #3498db;border-radius:8px;font-size:.95rem;color:#2c3e50;line-height:1.5}.additional-info p{margin:0}.notice-link-button{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:10px 20px;border-radius:25px;text-decoration:none;font-weight:600;font-size:.9rem;margin-top:15px;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.notice-link-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66;color:#fff}@media (max-width: 768px){.notice-section{padding:30px 15px}.notice-section h2{font-size:2rem;margin-bottom:25px}.notice-card{padding:15px;margin:15px auto;border-radius:12px}.notice-header{flex-direction:column;gap:10px;align-items:flex-start}.notice-title{font-size:1.1rem;order:1}.section-badge{order:2;align-self:flex-start}.notice-content{order:3}.extra-info{font-size:.95rem}.additional-info{padding:10px 12px;font-size:.9rem}.notice-link-button{padding:8px 16px;font-size:.85rem}}@media (max-width: 480px){.notice-section{padding:20px 10px}.notice-section h2{font-size:1.8rem}.notice-card{padding:12px;margin:12px auto}.notice-title{font-size:1rem;line-height:1.3}.section-badge{font-size:.75rem;padding:4px 10px}.extra-info{font-size:.9rem}.notice-date{font-size:.85rem}.additional-info{padding:8px 10px;font-size:.85rem}.notice-link-button{padding:8px 14px;font-size:.8rem;width:100%;text-align:center}}.notice-loading{text-align:center;padding:40px;color:#7f8c8d}.notice-error{text-align:center;padding:20px;color:#e74c3c;background:#fee;border-radius:10px;margin:20px}.schedule-section{padding:40px;background:#fff;text-align:center}.schedule-columns{display:flex;flex-wrap:wrap;justify-content:center;gap:40px}.column{flex:1;min-width:300px}table{width:100%;border-collapse:collapse;margin-top:10px}th,td{border:1px solid #ddd;padding:12px;text-align:center}th{background-color:#f2f2f2;font-weight:700}.topic-link{background:none;border:none;color:#3498db;cursor:pointer;text-decoration:underline;font-size:.95rem}.section-badges{display:inline-block;padding:5px 10px;font-size:12px;font-weight:600;border-radius:20px;color:#fff}.section-a{background-color:#1abc9c}.section-b{background-color:#9b59b6}.section-all{background-color:#e67e22}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:999}.modal{background:#fff;padding:30px;border-radius:12px;max-width:500px;width:90%;text-align:left;animation:fadeIn .3s ease-in-out}.modal h2{margin-bottom:10px;color:#333}.modal button{margin-top:20px;padding:8px 16px;background:#3498db;color:#fff;border:none;border-radius:6px;cursor:pointer}.no-data{margin-top:15px;font-size:1rem;font-weight:600;color:#555;background:#f9f9f9;padding:12px 16px;border-radius:8px;border:1px dashed #ccc}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.responsive-table-exam table{width:100%;border-collapse:collapse;table-layout:fixed}.responsive-table-exam th,.responsive-table-exam td{padding:4px;font-size:12px;word-wrap:break-word;text-align:center}.responsive-table-exam .topic-link{font-size:11px;padding:3px 5px}.responsive-table-exam .section-badges{font-size:11px;padding:2px 4px}}.responsive-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:20px}.schedule-section{padding:30px 15px;background:#fff;color:#222;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;text-align:center}.schedule-section h2{font-size:2.4rem;margin-bottom:20px;font-weight:700;color:#333}.section-buttons{margin-bottom:20px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.section-buttons button{background:transparent;border:2px solid #3f51b5;padding:8px 20px;color:#3f51b5;font-weight:700;border-radius:30px;cursor:pointer;font-size:1rem;transition:all .2s ease}.section-buttons button.active,.section-buttons button:hover{background:#3f51b5;color:#fff;box-shadow:0 0 8px #3f51b5}.routine-wrapper{max-width:100%;margin:auto;background:#f0f2ff;padding:20px;border-radius:12px;box-shadow:0 4px 12px #3f51b533;transition:opacity .3s ease}.routine-table{width:100%;border-collapse:separate;border-spacing:0 8px;color:#222;font-size:.95rem}.routine-table thead th{background:#dbe3fc;padding:10px 6px;font-weight:600;border-radius:8px;text-transform:uppercase;color:#3f51b5}.routine-table tbody tr{background:#fff;border-radius:10px;box-shadow:0 2px 6px #3f51b51a;transition:background .2s ease}.routine-table tbody tr:hover{background:#e6ecff}.routine-table td{padding:10px 6px;text-align:center;vertical-align:middle;border-radius:6px}.day-cell{font-weight:700;background:#3f51b5;color:#fff;border-top-left-radius:10px;border-bottom-left-radius:10px}.slot.filled{background:#d0dbff;color:#222}@media (max-width: 768px){.schedule-section h2{font-size:2rem}.section-buttons button{padding:6px 16px;font-size:.9rem}.routine-table thead th{font-size:.85rem;padding:8px 4px}.routine-table td{font-size:.85rem;padding:6px 4px}}@media (max-width: 480px){.schedule-section h2{font-size:1.8rem}.section-buttons{flex-direction:column;gap:8px}.section-buttons button{width:100%}.routine-wrapper{padding:12px}.routine-table thead th{font-size:.8rem;padding:6px 2px}.routine-table td{font-size:.8rem;padding:4px 2px}.day-cell{font-size:.9rem}}.calendar-section{padding:40px 20px;background:#fff;text-align:center;min-height:80vh;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.calendar-section h2{font-size:2.4rem;margin-bottom:20px;color:#3f51b5;font-weight:700}.legend{display:flex;justify-content:center;gap:20px;margin-bottom:20px;flex-wrap:wrap}.legend-item{padding:6px 14px;border-radius:25px;font-size:.95rem;font-weight:600;color:#fff}.section-a{background-color:#3498db}.section-b{background-color:#2ecc71}.section-all{background-color:#f39c12}.calendar-container{max-width:90%;margin:0 auto;background:#f7f9ff;padding:20px;border-radius:15px;box-shadow:0 4px 15px #0000000d}.fc .fc-daygrid-event{font-size:.85rem;padding:4px 6px;border-radius:5px;font-weight:700;cursor:pointer;border:none}.fc-daygrid-day-number{color:#333;font-weight:600}.fc .fc-toolbar-title{font-size:1.5rem;font-weight:700;color:#222}.calendar-header{position:relative;display:flex;flex-direction:column;align-items:center}.notify-link{position:absolute;right:20px;top:10px;font-size:.8rem;color:#555;cursor:pointer}.notify-link p u{color:#3f51b5;cursor:pointer}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;display:flex;justify-content:center;align-items:center;z-index:999}.popup-form{background:#fff;padding:25px 30px;border-radius:12px;max-width:350px;width:100%;text-align:center}.popup-form input{width:100%;padding:10px;margin:10px 0;border:1px solid #ccc;border-radius:6px}.popup-form button{margin-top:10px;padding:8px 16px;background-color:#3f51b5;color:#fff;border:none;border-radius:6px;cursor:pointer;margin-right:5px}.popup-form select{padding:8px;margin-bottom:10px;width:100%;border:1px solid #ccc;border-radius:4px}.message{margin:8px 0;font-weight:700}.message.success{color:green}.message.error{color:red}.notify-disclaimer{font-size:.85rem;color:#ff002b;background:#ffffff14;padding:.5rem;border-radius:.5rem;margin-bottom:1rem;border-left:3px solid #da1c52}.event-popup{background-color:#fff;padding:25px;border-radius:8px;width:300px;max-width:90%;box-shadow:0 4px 20px #00000040;text-align:center}.event-popup p{margin:10px 0;font-size:1rem;color:#34495e}.event-popup button{margin-top:15px;padding:8px 20px;background-color:#3498db;color:#fff;border:none;border-radius:5px;cursor:pointer;font-weight:600}.event-popup button:hover{background-color:#2980b9}.event-popup{background-color:#fff;padding:25px;border-radius:8px;width:400px;max-width:90%;box-shadow:0 4px 20px #0003}.event-popup h3{margin-top:0;color:#2c3e50}.event-popup ul{list-style:none;padding:0}.event-popup li{margin-bottom:10px;line-height:1.4}.popup-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}@media (max-width: 600px){.calendar-section{padding:20px 10px}.calendar-section h2{font-size:1.6rem}.fc .fc-toolbar-title{font-size:1rem}.legend-item{font-size:.75rem;padding:4px 8px}.calendar-container{max-width:100%;padding:10px;border-radius:10px}.fc .fc-daygrid-event{font-size:.7rem;padding:3px 4px}.fc-daygrid-day-number{font-size:.75rem}.calendar-header{flex-direction:column;align-items:center;gap:10px}.notify-link{position:static;margin-top:10px;margin-bottom:15px;font-size:.75rem}}.home-courses{margin:20px auto;padding:20px;text-align:center}.home-courses h2{font-size:1.5rem;margin-bottom:15px;color:#2c3e50}.course-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.course-btn{background-color:#2e7d32;color:#fff;font-size:14px;padding:6px 12px;border-radius:6px;text-decoration:none;transition:.2s ease-in-out}.course-btn:hover{background-color:#1b5e20}.identity-btn-wrapper{display:flex;justify-content:flex-end;margin:20px 40px}.identity-btn{background:linear-gradient(135deg,#3498db,#9b59b6);color:#fff;padding:8px 18px;font-size:.9rem;font-weight:600;border:none;border-radius:20px;cursor:pointer;box-shadow:0 4px 8px #0003;transition:all .3s ease}.identity-btn:hover{transform:translateY(-2px) scale(1.05);background:linear-gradient(135deg,#2980b9,#8e44ad);box-shadow:0 6px 12px #0000004d}.resources-container{padding:3rem 1rem;max-width:900px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.resources-title{font-size:2.5rem;font-weight:700;margin-bottom:2rem;text-align:center;color:#2c3e50}.semester-section{margin-bottom:1.5rem;border-radius:12px;background:#fff;box-shadow:0 4px 12px #0000000f;overflow:hidden;transition:all .3s ease}.semester-title{font-size:1.4rem;font-weight:600;padding:1rem;margin:0;background-color:#f1f5f9;color:#34495e;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .3s ease}.semester-title:hover{background-color:#e2e8f0}.course-list{padding:1rem 1.5rem;list-style:none;animation:fadeIn .3s ease-in-out;border-top:1px solid #e0e0e0}.course-list li{margin-bottom:.75rem;padding:.5rem 1rem;border-radius:8px;transition:background .2s ease}.course-list li:hover{background-color:#f0f8ff}.course-list li a{text-decoration:none;font-size:1.05rem;font-weight:500;color:#07c;transition:color .3s ease}.course-list li a:hover{color:#004c99;text-decoration:underline}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.main-footer{background-color:#1f1f2e;color:#f1f1f1;padding:40px 20px 20px;font-family:Segoe UI,sans-serif}.footer-container{display:flex;justify-content:space-between;flex-wrap:wrap;max-width:1200px;margin:auto;gap:30px}.footer-section{flex:1;min-width:250px}.footer-section h3,.footer-section h4{color:#ffcc70;margin-bottom:16px}.footer-section p,.footer-section li{font-size:.95rem;line-height:1.6}.footer-section ul{list-style:none;padding:0}.footer-section a{color:#f1f1f1;text-decoration:none;transition:color .3s}.footer-section a:hover{color:#ffcc70}.footer-bottom{text-align:center;border-top:1px solid #444;margin-top:30px;padding-top:15px;font-size:.85rem;color:#aaa}.contributors-link{display:flex;flex-direction:column;align-items:flex-start}.contributors-link p{margin-bottom:12px;font-size:.95rem;color:#ddd}.contributors-btn{background:linear-gradient(135deg,#2565ae,#1d4f91);color:#fff;padding:10px 18px;border-radius:30px;font-weight:600;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 10px #0000004d}.contributors-btn:hover{background:linear-gradient(135deg,#1d4f91,#163d73);transform:translateY(-2px);box-shadow:0 6px 14px #0006}@media (max-width: 768px){.footer-container{flex-direction:column;align-items:center;text-align:center;gap:40px}.footer-section{margin-bottom:0;width:100%}.contributors-link{display:flex;flex-direction:column;align-items:center}.contributors-btn{width:auto;text-align:center}}.navbar{display:flex;align-items:center;padding:1rem 2rem;background:linear-gradient(90deg,#2565ae,#4a90e2);color:#fff;position:sticky;top:0;z-index:1100;box-shadow:0 2px 10px #0000001a}.hamburger-menu{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;margin-right:1rem}.menu-container{display:flex;align-items:center;width:100%}.logo{font-weight:900;font-size:1.8rem;margin-right:auto;text-shadow:1px 1px 2px rgba(0,0,0,.2)}.logo a{color:#fff;text-decoration:none;transition:all .3s ease}.logo a:hover{color:gold}.menu{display:flex;list-style:none;gap:2rem;margin:0;padding:0;align-items:center}.menu li{position:relative}.menu li a{color:#fff;text-decoration:none;font-weight:600;font-size:1.1rem;transition:all .2s ease;padding:.5rem 0;position:relative;display:block}.menu li a:hover{color:gold}.menu li a:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:gold;transition:width .3s ease}.menu li a:hover:after{width:100%}.dropdown{position:relative}.dropdown-btn{background:none;border:none;color:#fff;font-weight:600;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;gap:.3rem;padding:.5rem 0}.dropdown-btn:hover{color:gold}.dropdown-content{position:absolute;top:100%;left:0;background:#fff;border-radius:.5rem;box-shadow:0 5px 15px #0000001a;min-width:200px;z-index:100;padding:.5rem 0;border:1px solid #E3EFF9}.semester-item{padding:0;position:relative}.semester-btn{width:100%;text-align:left;background:none;border:none;padding:.7rem 1.2rem;color:#2c3e50;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s ease}.semester-btn:hover{background:#f0f7ff;color:#2565ae}.course-list{background:#f8fafc;padding:0;border-top:1px solid #E3EFF9}.course-item{display:block;padding:0;color:#000!important;text-decoration:none;background-color:#fff!important;font-size:.95rem!important;white-space:nowrap;transition:all .2s ease;font-weight:500;text-align:center;width:100%}.course-item:hover{background:#e3eff9;color:#2565ae}.dropdown-icon{font-size:.8rem;margin-left:.3rem}.logo-icon{height:27px;margin-right:2px;width:auto;transition:transform .3s ease}.logo:hover .logo-icon{transform:scale(1.1)}@media (max-width: 768px){.navbar{padding:1rem;flex-wrap:nowrap;justify-content:space-between}.hamburger-menu{display:block;z-index:1001}.menu-container{position:fixed;top:0;left:-100%;height:100vh;width:250px;background:#4287d7;flex-direction:column;padding:2rem 1.5rem;box-shadow:4px 0 15px #0003;transition:left .3s ease;z-index:1000;overflow-y:auto}.menu-container.active{left:0}.logo{margin-top:30px;margin-bottom:2rem;width:100%;text-align:left}.logo a{font-size:1.6rem}.logo-icon{height:25px;margin-right:2px;margin-top:2px}.menu{flex-direction:column;gap:1rem;width:100%}.menu li a{font-size:1rem;padding:.6rem 0;color:#ffffffde}.dropdown-content{position:static;background:none;box-shadow:none;border:none;border-top:1px solid rgba(255,255,255,.1);color:#fff!important;border-radius:0;padding:0}.semester-btn{color:#fff;padding-left:5px}.semester-btn:hover{color:#000!important}.course-item{display:block;padding:12px 0;font-size:15px;color:#fff;text-decoration:none;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease,color .2s ease;text-align:center}.course-item:hover{background:#ffffff1a}.dropdown-btn:hover{color:gold;background-color:#030c174f!important}.dropdown-icon{color:#fff}.course-list{padding-left:.5rem}.dropdown{width:100%;border-bottom:1px solid #ddd}.dropdown-btn{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-size:16px;font-weight:500;color:#333;background-color:#f9f9f9;cursor:pointer;transition:background-color .2s ease}.dropdown-btn:hover,.dropdown-btn:active{background-color:#ececec}.dropdown-icon{font-size:14px;color:#666;margin-left:8px}.course-item:hover{background-color:#f7f7f7;color:#fff}.course-item:last-child{border-bottom:none}}.course-container{max-width:1280px;margin:2rem auto;padding:2.5rem;background:#fff;border-radius:16px;box-shadow:0 12px 40px #00000014}.course-header{margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.course-title{font-size:2.5rem;color:#1a202c;font-weight:700;margin-bottom:.5rem}.course-meta{display:flex;gap:1rem;flex-wrap:wrap;color:#4a5568}.course-code{background:#e6fffa;padding:.35rem 1rem;border-radius:20px;font-size:1rem;color:#319795;font-weight:500}.teacher-section{margin-top:3rem;padding-top:1rem;border-top:1px solid #e2e8f0}.teacher-section-title{font-size:1.75rem;font-weight:700;color:#2c5282;margin-bottom:1.5rem}.teacher-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.teacher-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;box-shadow:0 8px 24px #0000000d;transition:all .3s ease}.teacher-card:hover{transform:translateY(-5px);box-shadow:0 12px 28px #0000001a}.teacher-name{font-size:1.3rem;font-weight:600;color:#2d3748;margin-bottom:.25rem}.teacher-designation{font-size:1.05rem;font-weight:500;color:#4a5568;margin-bottom:.25rem}.teacher-department{font-size:.95rem;color:#718096;margin-bottom:.5rem}.teacher-contact{font-size:.9rem;color:#2b6cb0;display:flex;align-items:center;gap:.4rem;margin-bottom:.3rem;word-break:break-word}.teacher-contact a{color:#2b6cb0;text-decoration:none}.teacher-contact a:hover{text-decoration:underline}.drive-container{margin-top:2.5rem;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;box-shadow:0 6px 20px #0000000a}.drive-iframe{width:100%;height:620px;border:none;background:#f8fafc}.course-container.no-folder{text-align:center;padding:4rem 2rem}.no-folder-message{font-size:1.2rem;color:#718096;margin-top:1.5rem}.course-not-found{text-align:center;padding:4rem;font-size:1.2rem;color:#e53e3e;background:#fff5f5;max-width:600px;margin:2rem auto;border-radius:8px;border:1px solid #fed7d7}.video-section{margin-top:2rem}.video-section-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.video-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.video-card{background:#fff;padding:1rem;border-radius:12px;box-shadow:0 4px 12px #0000001a}.video-title{font-size:1.1rem;margin-bottom:.5rem}.video-date{font-size:.9rem;color:#555;margin-bottom:.5rem}.video-frame{width:100%;height:200px;border:none;border-radius:8px}.extra-section{margin-top:2rem}.extra-section-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.extra-grid{display:grid;gap:1rem}.extra-card{background:#fafafa;padding:1rem;border-radius:12px;box-shadow:0 4px 8px #0000000d}.extra-title{font-size:1.1rem;font-weight:600}.extra-card p{margin:.3rem 0}.extra-card a{color:#07c;text-decoration:none}.extra-card a:hover{text-decoration:underline}@media (max-width: 768px){.course-container{margin:1rem;padding:1.5rem}.course-title{font-size:1.8rem}.teacher-grid{grid-template-columns:1fr}.drive-iframe{height:400px}}@media (max-width: 480px){.course-meta{flex-direction:column;gap:.5rem}.drive-iframe{height:300px}}.resources-page{padding:2rem;max-width:1200px;margin:0 auto;font-family:Poppins,sans-serif;background:linear-gradient(135deg,#f5f7fa,#e4e8f0);min-height:100vh}.resources-header{text-align:center;margin-bottom:3rem;animation:fadeIn 1s ease}.resources-header h1{font-size:2.5rem;color:#2c3e50;margin-bottom:.5rem;background:linear-gradient(90deg,#3498db,#2ecc71);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.resources-header p{color:#7f8c8d;font-size:1.1rem}.resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding:1rem}.resource-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px #0000001a;transition:all .3s cubic-bezier(.25,.8,.25,1);text-decoration:none;color:#34495e;display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem;position:relative;z-index:1}.resource-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,#3498db,#2ecc71)}.resource-card:hover{transform:translateY(-10px);box-shadow:0 15px 35px #0003}.resource-icon{width:80px;height:80px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;background:#3498db1a;border-radius:50%;padding:1rem}.resource-icon img{width:50px;height:50px;object-fit:contain}.resource-card h3{font-size:1.2rem;text-align:center;margin:0;font-weight:600;line-height:1.4}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.resources-grid{grid-template-columns:1fr}.resources-header h1{font-size:2rem}}.resource-card:hover .resource-icon{animation:pulse 1.5s infinite}@keyframes pulse{0%{box-shadow:0 0 #3498db66}70%{box-shadow:0 0 0 15px #3498db00}to{box-shadow:0 0 #3498db00}}.more-container{padding:3rem 2rem;background:linear-gradient(135deg,#e0f7fa,#f1f8e9);min-height:100vh;display:flex;flex-direction:column;align-items:center;animation:fadeIn .8s ease-in-out}.more-title{font-size:2.8rem;font-weight:900;background:linear-gradient(90deg,#007bff,#00c853);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:2rem;letter-spacing:1px;text-align:center}.more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;width:100%;max-width:1100px}.more-card{background:#fff;padding:2rem;border-radius:1rem;box-shadow:0 8px 20px #0000001f;transition:all .3s ease;cursor:pointer;text-align:center;position:relative;overflow:hidden}.more-card h2{font-size:1.4rem;color:#2565ae;margin-bottom:.5rem}.more-card p{font-size:.95rem;color:#555}.more-card:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(37,101,174,.1) 0%,transparent 60%);transform:scale(0);transition:transform .4s ease}.more-card:hover:before{transform:scale(1)}.more-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 15px 35px #2565ae40}.more-card:hover h2{color:#ff9800}@media (max-width: 600px){.more-container{padding:2rem 1rem}.more-title{font-size:2rem}}.per123-performance-container{padding:2rem;min-height:100vh;background:linear-gradient(135deg,#0f2027,#203a43,#2c5364);color:#fff;font-family:Poppins,sans-serif}.per123-page-title{text-align:center;font-size:2.5rem;margin-bottom:2rem;background:linear-gradient(90deg,#00f2fe,#4facfe);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;text-shadow:0 0 20px rgba(0,255,255,.6)}.per123-card{background:#ffffff14;border-radius:1rem;padding:1.5rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 0 20px #0ff3;transition:transform .3s ease,box-shadow .3s ease}.per123-card:hover{transform:translateY(-5px);box-shadow:0 0 30px #0ff6}.per123-card h2{font-size:1.6rem;margin-bottom:1rem;color:#00f2fe}.per123-input-row,.per123-course-row,.per123-sem-row{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.per123-course-row .input-group,.per123-sem-row .input-group{flex:1 1 150px}.input-group{display:flex;flex-direction:column;flex:1;min-width:120px}.input-group label{font-weight:600;margin-bottom:.4rem;font-size:1rem;color:#00f2fe;-webkit-user-select:none;user-select:none}.per123-performance-container input,.pre123-slt{padding:.6rem;border:none;border-radius:.5rem;outline:none;background:#ffffff1a;color:#fff;font-size:1rem}.pre123-slt{background:#5999f7;color:#fff;cursor:pointer}.per123-performance-container input::placeholder{color:#fff9}.per123-performance-container button{background:linear-gradient(90deg,#00f2fe,#4facfe);border:none;padding:.7rem 1.5rem;border-radius:.5rem;cursor:pointer;font-weight:700;transition:background .3s ease,transform .2s ease;margin-right:.5rem;margin-top:.5rem}.per123-performance-container button:hover{background:linear-gradient(90deg,#4facfe,#00f2fe);transform:scale(1.05)}.per123-error{color:#ff6b6b;font-weight:700;margin-top:.5rem}.per123-result{white-space:pre-line;background:#0000004d;padding:.8rem;border-radius:.5rem;margin-top:.5rem;font-family:monospace;font-size:1rem;line-height:1.3}@media (max-width: 768px){.per123-performance-container{padding:1rem}.per123-page-title{font-size:2rem;margin-bottom:1.5rem}.per123-card{padding:1rem;margin-bottom:1.5rem}.per123-card h2{font-size:1.4rem}.per123-input-row,.per123-course-row,.per123-sem-row{flex-direction:column;gap:.8rem;padding:1rem;border:1px solid rgba(255,255,255,.2);border-radius:.6rem;background:#ffffff0d}.per123-course-row,.per123-sem-row{display:block;margin-bottom:20px}.per123-course-row select,input{margin-bottom:10px;margin-top:10px}.input-group{min-width:100%}.per123-performance-container button{width:100%;margin-right:0}}.memories-gallery{font-family:Poppins,Segoe UI,sans-serif;max-width:850px;margin:0 auto;padding:2rem;color:#333;position:relative;overflow:hidden}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:70vh;color:#6d6875}.spinner{width:50px;height:50px;border:5px solid rgba(109,104,117,.2);border-radius:50%;border-top-color:#6d6875;animation:spin 1s ease-in-out infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.error-state{text-align:center;padding:2rem;background:#fff5f5;border-radius:10px;max-width:500px;margin:3rem auto;box-shadow:0 4px 15px #0000001a}.error-state h3{color:#ff6b6b;margin-bottom:1rem}.error-state button{background:#ff6b6b;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:25px;cursor:pointer;font-weight:500;transition:all .3s ease;margin-top:1rem}.error-state button:hover{background:#ff5252;transform:translateY(-2px);box-shadow:0 4px 8px #ff6b6b4d}.empty-state{text-align:center;padding:4rem;color:#6d6875}.empty-state h3{font-weight:300;font-size:1.5rem}.gallery-header{text-align:center;margin-bottom:2rem;position:relative}.gallery-header h1{font-size:2.5rem;font-weight:600;color:#2b2d42;margin-bottom:1.5rem;position:relative;display:inline-block}.gallery-header h1:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:80px;height:4px;background:linear-gradient(90deg,#ff9e7d,#ff6b6b);border-radius:2px}.controls{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:1rem}.controls span{font-size:1.1rem;color:#6d6875;min-width:80px}.control-btn{background:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.2rem;cursor:pointer;color:#ff6b6b;box-shadow:0 4px 15px #0000001a;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.control-btn:hover{background:#ff6b6b;color:#fff;transform:scale(1.1);box-shadow:0 6px 20px #ff6b6b4d}.main-viewer{position:relative;margin-bottom:2rem;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px #00000026;transition:all .5s ease;height:500px}.main-viewer:hover{box-shadow:0 15px 40px #0003}.image-wrapper{position:relative;width:auto;height:100%;overflow:hidden}.main-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,opacity .5s ease;opacity:0;transform:scale(.95)}.main-image.loaded{opacity:1;transform:scale(1)}.fallback-image{object-fit:contain;background:#f8f9fa;padding:2rem}.image-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000b3);padding:2rem 1.5rem 1.5rem;color:#fff;transform:translateY(100%);transition:transform .3s ease}.image-wrapper:hover .image-caption{transform:translateY(0)}.image-caption h2{font-weight:500;font-size:1.5rem;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}.thumbnail-track{display:flex;gap:.8rem;padding:1rem 0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ff6b6b transparent;margin-top:1rem}.thumbnail-track::-webkit-scrollbar{height:6px}.thumbnail-track::-webkit-scrollbar-thumb{background-color:#ff6b6b;border-radius:3px}.thumbnail{flex:0 0 100px;height:70px;border-radius:8px;overflow:hidden;cursor:pointer;position:relative;transition:all .3s ease;box-shadow:0 3px 10px #0000001a;border:2px solid transparent}.thumbnail:hover{transform:translateY(-5px);box-shadow:0 8px 15px #00000026}.thumbnail.active{border-color:#ff6b6b;transform:translateY(-5px);box-shadow:0 8px 20px #ff6b6b66}.thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.thumbnail:hover img{transform:scale(1.05)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.main-image{animation:fadeIn .8s ease forwards}@media (max-width: 768px){.memories-gallery{padding:1rem}.gallery-header h1{font-size:2rem}.main-viewer{height:350px}.thumbnail{flex:0 0 80px;height:60px}.image-caption h2{font-size:1.2rem}}@media (max-width: 480px){.gallery-header h1{font-size:1.8rem}.main-viewer{height:250px}.controls{gap:1rem}.control-btn{width:35px;height:35px}}.achievements-container{padding:60px 20px;background:#fff;min-height:100vh}.achievements-title{text-align:center;font-size:3rem;color:#000;margin-bottom:50px;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.achievements-list{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:60px}.achievement-item{display:flex;align-items:center;gap:40px;background:#fffffff2;padding:30px;border-radius:20px;box-shadow:0 10px 30px #0003;transition:transform .3s ease}.achievement-item:hover{transform:translateY(-5px)}.achievement-item.left-image{flex-direction:row}.achievement-item.right-image{flex-direction:row-reverse}.achievement-image-carousel{flex:1;position:relative}.carousel-container{position:relative;border-radius:15px;overflow:hidden;box-shadow:0 8px 25px #00000026}.carousel-image{width:100%;height:300px;object-fit:cover;transition:transform .5s ease;display:block}.carousel-image:hover{transform:scale(1.05)}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:40px;height:40px;border-radius:50%;font-size:20px;font-weight:700;color:#333;cursor:pointer;transition:all .3s ease;z-index:10;display:flex;align-items:center;justify-content:center}.carousel-indicators{position:absolute;bottom:15px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.indicator{width:12px;height:12px;border-radius:50%;border:none;background:#fff9;cursor:pointer;transition:all .3s ease}.indicator.active{background:#fff;transform:scale(1.2)}.indicator:hover{background:#fff;transform:scale(1.1)}.image-counter{position:absolute;top:15px;right:15px;background:#000000b3;color:#fff;padding:4px 10px;border-radius:15px;font-size:.8rem;font-weight:600}.achievement-text{flex:1;padding:20px}.achievement-text h2{font-size:2rem;color:#333;margin-bottom:15px;font-weight:700}.achievement-text p{font-size:1.1rem;color:#666;line-height:1.6}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:40px;height:40px;border-radius:50%;font-size:20px;font-weight:700;color:#333;cursor:pointer;transition:all .3s ease;z-index:10;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden}.carousel-arrow.visible{opacity:1;visibility:visible}.carousel-arrow.hidden{opacity:0;visibility:hidden}.carousel-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.1);box-shadow:0 4px 15px #0003}.carousel-arrow-left{left:15px}.carousel-arrow-right{right:15px}.achievement-image-carousel:hover .carousel-arrow{opacity:1;visibility:visible}.carousel-arrow{transition:opacity .3s ease,visibility .3s ease,transform .3s ease}@media (hover: none){.carousel-arrow{opacity:1;visibility:visible;background:#fffc}}@media (max-width: 968px){.achievement-item{flex-direction:column!important;text-align:center;gap:30px}.achievement-image-carousel{width:100%}.carousel-image{height:250px}}@media (max-width: 768px){.achievements-title{font-size:2.5rem}.achievement-item{padding:20px}.achievement-text h2{font-size:1.8rem}.achievement-text p{font-size:1rem}.carousel-image{height:200px}.carousel-arrow{width:35px;height:35px;font-size:18px}}@media (max-width: 480px){.achievements-container{padding:40px 15px}.achievements-title{font-size:2rem}.achievement-item{padding:15px;gap:20px}.achievement-text h2{font-size:1.5rem}.carousel-image{height:180px}.carousel-arrow{width:30px;height:30px;font-size:16px}.indicator{width:10px;height:10px}.image-counter{font-size:.7rem;padding:3px 8px}}.feedback-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#1e3c72,#2a5298);padding:20px}.feedback-card{background:#ffffff14;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:20px;padding:30px;width:100%;max-width:450px;box-shadow:0 8px 32px #00000040;display:flex;flex-direction:column;gap:15px;animation:fadeIn .8s ease-out}.feedback-card h1{color:#fff;text-align:center;font-size:1.8rem;margin-bottom:10px}.feedback-card input,.feedback-card textarea{width:100%;padding:12px 15px;border-radius:12px;border:none;outline:none;font-size:1rem;background:#ffffff1f;color:#fff;transition:all .3s ease}.feedback-card input:focus,.feedback-card textarea:focus{background:#fff3;transform:scale(1.02)}.feedback-card button{padding:12px;border:none;border-radius:12px;background:linear-gradient(45deg,#ff7eb3,#ff758c);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s ease}.feedback-card button:hover{transform:translateY(-2px);box-shadow:0 6px 15px #ff768866}.feedback-container .status{text-align:center;font-size:.9rem;margin-top:8px;color:#fff}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.wk-container{max-width:800px;margin:0 auto;padding:2rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#2d3748}.wk-header{text-align:center;margin-bottom:3rem;animation:wk-fadeIn .8s ease-out}.wk-title{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.5rem}.wk-subtitle{font-size:1.1rem;color:#718096;font-weight:300}.wk-loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh}.wk-spinner{width:50px;height:50px;border:4px solid rgba(102,126,234,.2);border-radius:50%;border-top-color:#667eea;animation:wk-spin 1s linear infinite;margin-bottom:1rem}.wk-loading-text{color:#667eea;font-size:1.2rem}.wk-timeline{position:relative;padding-left:30px}.wk-timeline:before{content:"";position:absolute;top:0;bottom:0;left:15px;width:2px;background:linear-gradient(to bottom,#667eea,#764ba2);border-radius:2px}.wk-week-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;margin-bottom:1.5rem;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.wk-week-card:hover{transform:translateY(-3px);box-shadow:0 6px 25px #0000001f}.wk-week-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;cursor:pointer;background:linear-gradient(135deg,#f7fafc,#edf2f7);transition:all .3s ease}.wk-week-header:hover{background:linear-gradient(135deg,#edf2f7,#e2e8f0)}.wk-week-title{display:flex;align-items:center;gap:1rem}.wk-week-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.4rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem;box-shadow:0 2px 10px #667eea4d}.wk-week-date{color:#718096;font-size:.9rem}.wk-week-toggle{color:#667eea;transition:transform .3s ease}.wk-week-card.wk-expanded .wk-week-toggle{transform:rotate(180deg)}.wk-chevron{font-size:1.2rem}.wk-week-content{padding:0 1.5rem;max-height:0;overflow:hidden;transition:max-height .5s ease,padding .3s ease}.wk-week-card.wk-expanded .wk-week-content{max-height:none;padding:1.5rem;padding-top:0}.wk-no-subjects{text-align:center;color:#a0aec0;padding:1rem;font-style:italic}.wk-subject-card{background:#fff;border-radius:8px;padding:1.2rem;margin-bottom:1rem;border-left:4px solid #667eea;box-shadow:0 2px 8px #0000000d}.wk-subject-title{font-size:1.1rem;font-weight:600;color:#2d3748;margin-bottom:.8rem;display:flex;align-items:center}.wk-subject-title:before{content:"";display:inline-block;width:8px;height:8px;background:#667eea;border-radius:50%;margin-right:8px}.wk-task-list{list-style:none;padding:0;margin:0}.wk-task-item{display:flex;align-items:center;padding:.6rem 0;border-bottom:1px solid #edf2f7}.wk-task-item:last-child{border-bottom:none}.wk-task-check{color:#48bb78;margin-right:.8rem;font-size:1.1rem}.wk-task-text{flex:1;color:#4a5568}.wk-no-tasks{color:#a0aec0;font-style:italic;padding:.5rem 0}.wk-empty-state{text-align:center;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000000d}.wk-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.6}.wk-empty-title{font-size:1.3rem;color:#2d3748;margin-bottom:.5rem}.wk-empty-text{color:#718096;font-size:1rem}@keyframes wk-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes wk-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.wk-container{padding:1rem}.wk-title{font-size:2rem}.wk-week-header{padding:1rem}.wk-week-title{flex-direction:column;align-items:flex-start;gap:.5rem}}.prfcd-container{padding:20px;max-width:1400px;margin:auto;background:linear-gradient(135deg,#e6f0ff,#f0f7ff)}.prfcd-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.prfcd-title{font-size:2rem;color:#2c7be5;font-weight:700;margin:0;position:relative;display:inline-block}.prfcd-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:3px;background:linear-gradient(90deg,#2c7be5,#66a3ff);border-radius:2px}.prfcd-add-button{background:linear-gradient(135deg,#2c7be5,#66a3ff);color:#fff;border:none;padding:10px 20px;border-radius:25px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 4px 12px #2c7be54d;transition:all .3s ease;white-space:nowrap}.prfcd-add-button:hover{transform:translateY(-2px);box-shadow:0 6px 18px #2c7be566}.prfcd-info{background-color:#eaf4ff;color:#004085;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.9rem;line-height:1.5;border-left:4px solid #2c7be5}.prfcd-error{background-color:#fee;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:20px;border-left:4px solid #e53e3e}.prfcd-filters{display:flex;gap:12px;margin-bottom:25px;justify-content:center;flex-wrap:wrap}.prfcd-input,.prfcd-select{padding:10px 16px;font-size:14px;border:2px solid #e2e8f0;border-radius:25px;background:#fff;box-shadow:0 2px 8px #00000014;transition:all .3s ease;min-width:180px;max-width:200px}.prfcd-input:focus,.prfcd-select:focus{outline:none;border-color:#2c7be5;box-shadow:0 2px 12px #2c7be533}.prfcd-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;justify-content:center}.prfcd-image{width:100%;height:160px;object-fit:cover;transition:transform .3s ease}.prfcd-modal{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.prfcd-modal-content{background-color:#fff;padding:25px;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0000004d}.prfcd-modal-form{display:grid;grid-template-columns:1fr;gap:15px;margin-bottom:20px}.form-group{margin-bottom:12px}.form-group label{display:block;margin-bottom:6px;font-weight:600;color:#4a5568;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:2px solid #e2e8f0;border-radius:6px;font-size:14px;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2c7be5;outline:none;box-shadow:0 0 0 3px #2c7be51a}.form-group textarea{min-height:80px;resize:vertical;font-size:14px}.password-toggle{position:absolute;right:12px;top:38px;transform:translateY(-50%);cursor:pointer;font-size:1.1rem;color:#718096;transition:color .2s ease;background:#fff;padding:4px;border-radius:4px}.password-toggle:hover{color:#2c7be5}.social-link-group{display:flex;gap:8px;margin-bottom:8px;align-items:center}.social-link-group input{flex:1;padding:8px 12px;font-size:13px}.remove-link{background-color:#fed7d7;color:#e53e3e;border:none;padding:6px 10px;border-radius:4px;cursor:pointer;font-weight:600;font-size:12px;transition:all .2s ease}.remove-link:hover{background-color:#feb2b2}.add-link{background-color:#ebf8ff;color:#3182ce;border:none;padding:8px 14px;border-radius:5px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s ease;margin-top:5px}.add-link:hover{background-color:#bee3f8}.prfcd-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.prfcd-modal-actions button{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s ease}.prfcd-modal-actions button:first-child{background:linear-gradient(135deg,#2c7be5,#66a3ff);color:#fff;box-shadow:0 2px 8px #2c7be54d}.prfcd-modal-actions button:first-child:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2c7be566}.prfcd-modal-actions button:last-child{background-color:#fff;color:#4a5568;border:2px solid #e2e8f0}.prfcd-modal-actions button:last-child:hover{background-color:#f7fafc;border-color:#cbd5e0}.prfcd-image-container{position:relative;width:100%;height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f8f9fa;border-radius:8px 8px 0 0}.prfcd-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;display:block}.prfcd-fallback-icon{font-size:80px;color:#cbd5e0;display:none}.prfcd-image-container:has(.prfcd-image[src=""]) .prfcd-fallback-icon,.prfcd-image-container:not(:has(.prfcd-image)) .prfcd-fallback-icon{display:block}.prfcd-card:hover .prfcd-image{transform:scale(1.05)}.prfcd-image{object-fit:cover;object-position:center;width:100%;height:100%}@media (max-width: 768px){.prfcd-image-container{height:140px}.prfcd-fallback-icon{font-size:60px}}@media (max-width: 480px){.prfcd-image-container{height:120px}.prfcd-fallback-icon{font-size:50px}}.prfcd-card{background:#fff;border-radius:12px;overflow:hidden;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #2c7be51a;border:1px solid #e2e8f0;position:relative}.prfcd-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2c7be5,#66a3ff)}.prfcd-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #2c7be533}.prfcd-name{font-size:1rem;margin:12px 0 4px;color:#2d3748;font-weight:600;padding:0 12px;line-height:1.3}.prfcd-id,.prfcd-blood{font-size:.8rem;color:#718096;margin-bottom:6px;padding:0 12px}.prfcd-id{font-weight:500}.prfcd-blood{margin-bottom:12px}@media (max-width: 768px){.prfcd-container{padding:15px}.prfcd-header{flex-direction:column;text-align:center;gap:12px}.prfcd-title{font-size:1.7rem}.prfcd-title:after{left:50%;transform:translate(-50%)}.prfcd-filters{flex-direction:column;align-items:center;gap:10px}.prfcd-input,.prfcd-select{min-width:100%;max-width:300px}.prfcd-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:15px}.prfcd-card{border-radius:10px}.prfcd-image{height:140px}.prfcd-name{font-size:.95rem;padding:0 10px}.prfcd-id,.prfcd-blood{font-size:.75rem;padding:0 10px}.prfcd-modal{padding:15px}.prfcd-modal-content{padding:20px;border-radius:10px}.prfcd-modal-actions{flex-direction:column;gap:10px}.prfcd-modal-actions button{width:100%}}@media (max-width: 480px){.prfcd-list{grid-template-columns:repeat(2,1fr);gap:12px}.prfcd-card{min-width:140px}.prfcd-image{height:120px}.prfcd-name{font-size:.9rem}.prfcd-id,.prfcd-blood{font-size:.7rem}.social-link-group{flex-direction:column;gap:6px}.social-link-group input{width:100%}}@media (min-width: 1200px){.prfcd-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (min-width: 1400px){.prfcd-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media (min-width: 1600px){.prfcd-list{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px}}.profile-container{max-width:1200px;margin:0 auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.profile-loading{text-align:center;font-size:1.2rem;color:#3498db;margin-top:50px}.profile-error{background-color:#ffebee;color:#c62828;padding:15px;border-radius:5px;margin-bottom:20px;text-align:center}.profile-edit-button{text-align:right;margin-bottom:20px}.profile-edit-button button{background-color:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-weight:600;transition:background-color .3s}.profile-edit-button button:hover{background-color:#2980b9}.secret-popup{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.popup-content{background-color:#fff;padding:30px;border-radius:8px;width:400px;max-width:90%;box-shadow:0 4px 20px #00000026}.popup-content h3{margin-top:0;color:#2c3e50}.popup-content input{width:100%;padding:10px;margin:15px 0;border:1px solid #ddd;border-radius:4px;font-size:16px}.popup-buttons{display:flex;justify-content:flex-end;gap:10px}.popup-buttons button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:600}.popup-buttons button:first-child{background-color:#3498db;color:#fff}.popup-buttons button:first-child:disabled{background-color:#bdc3c7;cursor:not-allowed}.popup-buttons button:last-child{background-color:#e0e0e0;color:#333}.profile-content{display:flex;gap:30px;margin-bottom:30px}.profile-left{flex:0 0 300px}.profile-right{flex:1}.profile-image-container{background-color:#f8f9fa;border-radius:8px;padding:20px;text-align:center;box-shadow:0 2px 10px #0000000d}.profile-image{width:100%;max-width:300px;height:auto;border-radius:5px;margin-bottom:15px}.image-upload{margin-top:15px}.image-upload label{display:inline-block;background-color:#3498db;color:#fff;padding:8px 15px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.image-upload label:hover{background-color:#2980b9}.image-upload input[type=file]{display:none}.core-info{background-color:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 10px #0000000d}.profile-name{margin-top:0;color:#2c3e50;font-size:2rem;margin-bottom:20px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.info-item{margin-bottom:10px}.info-label{display:block;font-weight:600;color:#7f8c8d;font-size:.9rem;margin-bottom:5px}.info-value{display:block;color:#2c3e50;font-size:1.1rem}.edit-form{background-color:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 10px #0000000d}.form-row{display:flex;gap:20px;margin-bottom:15px}.form-group{flex:1}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#7f8c8d}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:16px}.form-group textarea{min-height:100px;resize:vertical}.profile-bottom{background-color:#e8f4fc;padding:25px;border-radius:8px;margin-top:20px}.profile-bio h3,.profile-social h3,.edit-social-links h3{margin-top:0;color:#2c3e50;font-size:1.3rem;margin-bottom:15px}.profile-social{margin-top:10px}.profile-bio p{line-height:1.6;color:#34495e}.social-links{display:flex;flex-wrap:wrap;gap:10px}.social-link{display:inline-block;background-color:#3498db;color:#fff;padding:8px 15px;border-radius:20px;text-decoration:none;font-size:14px;transition:background-color .3s}.social-link:hover{background-color:#2980b9}.edit-social-links{margin-bottom:20px}.social-link-edit{display:flex;gap:10px;margin-bottom:10px}.social-link-edit input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px}.remove-link{background-color:#e74c3c;color:#fff;border:none;border-radius:4px;padding:0 15px;cursor:pointer;transition:background-color .3s}.remove-link:hover{background-color:#c0392b}.add-link{background-color:#2ecc71;color:#fff;border:none;border-radius:4px;padding:8px 15px;cursor:pointer;margin-top:10px;transition:background-color .3s}.add-link:hover{background-color:#27ae60}.edit-actions{display:flex;justify-content:flex-end;gap:15px;margin-top:20px}.save-button{background-color:#2ecc71;color:#fff;border:none;padding:10px 25px;border-radius:5px;cursor:pointer;font-weight:600;transition:background-color .3s}.save-button:hover{background-color:#27ae60}.save-button:disabled{background-color:#95a5a6;cursor:not-allowed}.cancel-button{background-color:#e0e0e0;color:#333;border:none;padding:10px 25px;border-radius:5px;cursor:pointer;font-weight:600;transition:background-color .3s}.cancel-button:hover{background-color:#bdc3c7}@media (max-width: 992px){.profile-content{flex-direction:column;gap:20px}.profile-left{flex:1 1 100%;text-align:center}.profile-right{flex:1 1 100%}.info-grid{grid-template-columns:1fr}.form-row{flex-direction:column;gap:15px}}@media (max-width: 576px){.profile-container{padding:15px}.profile-image{max-width:100%}.popup-content{width:90%;padding:20px}.profile-edit-button{text-align:center}.popup-buttons,.edit-actions{flex-direction:column;gap:10px}.social-links{flex-direction:column;gap:8px}}.personnel-page{padding:40px;max-width:1200px;margin:auto;font-family:Arial,sans-serif}.page-title{text-align:center;font-size:2rem;margin-bottom:30px;color:#2c3e50}.psnl-section{margin-bottom:50px}.psnl-section h2{font-size:1.5rem;margin-bottom:20px;color:#34495e;border-left:5px solid #3498db;padding-left:10px}.personnel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.psnl-card{background:#fff;border-radius:15px;padding:20px;text-align:center;box-shadow:0 4px 12px #0000001a;transition:transform .2s ease-in-out}.psnl-card:hover{transform:translateY(-5px)}.psnl-card h3{font-size:1.2rem;margin:10px 0 5px;color:#2c3e50}.psnl-card .designation{font-weight:700;color:#2980b9;margin-bottom:10px}.psnl-card p{margin:5px 0;font-size:.9rem;color:#555}.psnl-card a{color:#3498db;text-decoration:none}.psnl-card a:hover{text-decoration:underline}.contributors-page{min-height:100vh;background:linear-gradient(135deg,#f0f7ff,#fff);padding:3rem 1.5rem;display:flex;flex-direction:column;align-items:center}.contributors-title{font-size:2.8rem;font-weight:800;text-align:center;color:#2565ae;margin-bottom:3rem;text-shadow:1px 1px 3px rgba(0,0,0,.08);letter-spacing:.5px}.contributors-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:1200px;width:100%}@media (min-width: 640px){.contributors-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.contributors-grid{grid-template-columns:repeat(3,1fr)}}.contributor-card{background-color:#fff;border-radius:1.2rem;padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;box-shadow:0 6px 14px #00000014;transition:transform .25s ease,box-shadow .25s ease}.contributor-card:hover{box-shadow:0 10px 24px #00000026;transform:translateY(-6px) scale(1.02)}.contributor-img,.contributor-icon{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid #2565ae;background-color:#f0f7ff;box-shadow:0 5px 12px #0000001f}.contributor-icon{font-size:120px;color:#9bbce2;display:flex;align-items:center;justify-content:center}.contributor-name{margin-top:1rem;font-size:1.3rem;font-weight:700;color:#2c3e50}.contributor-designation{font-size:1rem;font-weight:500;color:#555;margin-top:.4rem}
